* Moves the utility functions which will be needed for building CDK schematics to the CDK (`cdk/schematics`).
* Updates package tools to properly build schematics for CDK and Material (shared logic for building schematics; Material schematics depend on CDK schematics)
* Update to `ng-add`: The Angular CLI only installs `@angular/material` if someone runs `ng add @angular/material`. But since we need access to the utility functions from the CDK, we need to install the dependencies first, and then setup the project.
* feat(virtual-scroll): fixed size virtual scroll (#9316)
* feat(virtual-scroll): fixed size virtual scroll
* address some comments
* change VirtualScrollStrategy interface a bit
* address some more comments
* fix lint & build
* chore: move virtual-scroll to cdk-experimental (#9974)
* virtual-scroll: simplify scroll listener logic (#10102)
* virtual-scroll: only move views that need to be moved (#10099)
* virtual-scroll: only move views that need to be moved
* address comments
* virtual-scroll: switch `throttleTime` to `sampleTime` (#10179)
* virtual-scroll: switch throttleTime to sampleTime
* add comment
* virtual-scroll: allow user to pass `Observable<T[]>` (#10158)
* virtual-scroll: rename `Range` to `ListRange` to avoid confusion with native `Range` (#10220)
* virtual-scroll: add autosize scroll strategy (#10219)
* rename fixed size virtual scroll directive
* add autosize virtual scroll strategy
* add item size estimator class
* add logic for jumping rendered content based on scroll position
* address comments
* virtual-scroll: add `onContentRendered` hook to `VirtualScrollStrategy` (#10290)
* virtual-scroll: add `onContentRendered` hook to `VirtualScrollStrategy`
* address comemnts
* virtual-scroll: add incremental scroll logic in `AutosizeVirtualScrollStrategy` (#10504)
* virtual-scroll: add incremental scroll logic in `AutosizeVirtualScrollStrategy`.
This still has a couple issues that need to be ironed out and it doesn't
have the code for correcting the error between the predicted and actual
scroll position. (See various TODOs for additional things that need
work).
* fix lint
* address comments
* address comments
* fix bazel
* fix devapp
* fix lint
* cleanup
* virtual-scroll: rewrite offset in terms of "to-top" and fix a bug where items were removed too soon (#10986)
* rewrite offsets to the end of the rendered content as offsets to the
start
* add some more autosize demos for testing
* make sure not to remove too many items
* address comments
* virtual-scroll: address amcdnl's feedback (#10988)
* rewrite offsets to the end of the rendered content as offsets to the
start
* add some more autosize demos for testing
* make sure not to remove too many items
* virtual-scroll: address amcdnl's feedback
* virtual-scroll: fix updating when data changes and add trackBy demos (#11085)
* virtual-scroll: add logic to correct the scroll position as user move… (#11137)
* virtual-scroll: add logic to correct the scroll position as user moves toward the top
* address comments
* fix(scrolling): adds right to fix pushed content (#11192)
* fix(scrolling): adds right to fix pushed content
* chore: address feedback
* chore: address pr feedback
* virtual-scroll: add tests for fixed size items (#11255)
* virtual-scroll: add tests for fixed size items
* address comments
* fix bug in fixed size strategy
* fix bazel build
* virtual-scroll: add tests for `cdkVirtualFor` logic (#11275)
* merge fixed size test components into one
* add tests for cdkVirtualFor logic
* allow undefined to be explicitly passed as trackBy
* fix bazel build
* address comments
* add some basic tests (#11295)
* fix lint
* virtual-scroll: add e2e tests for autosize scroll strategy (#11345)
* set up virtual scroll page in e2e app
* add gulp task for e2e:watch
* add e2e tests for autosize
* address comments
* address comments
* fix lint and tests
* fix bad rebase
* fix(scrolling): scrollbar jump when data change on scroll (#11193)
* fix(scrolling): data change not updating size
* chore: remove todo
* chore: more performant fix for jump
In order to make this work, this includes:
* Move schematics under src/lib
* Change sass rules to omit sourcemaps
* Add cdk/text-field and lib/tree to packages list
* Add bazel rules for prebuilt themes
* Add html assets to all ng_module rules
* Point all ng_module rules to a package common tsconfig
* Add missing index.ts for src/lib
* Add bazel rules for schematics
* Fix incorrect module_name for hyphenated lib ng_module rules
* Add NgModules to `imports` of the example module (formerly were just
exports)
* Adds the `FlexibleConnectedPositionStrategy` that builds on top of the `ConnectedPositionStrategy` adds the following:
* The ability to have overlays with flexible sizing.
* Being able to push overlays into the viewport if they don't fit.
* Having a margin between the overlay and the viewport edge.
* Being able to assign weights to the overlay positions.
* Refactors the `ConnectedPositionStrategy` to use the `FlexibleConnectedPositionStrategy` in order to avoid breaking API changes.
* Switches all of the components to the new position strategy.
* Adds an API to the `OverlayRef` that allows for the consumer to wrap the pane in a div. This is a common requirement between the `GlobalPositionStrategy` and the `FlexibleConnectedPositionStrategy`, and it's easier to keep track of the elements when the attaching and detaching is done in the `OverlayRef`.
Fixes#6534.
Fixes#2725.
Fixes#5267.
* move autofill to cdk
* move textarea autosize into cdk
* fix bazel build
* rename input to text-field
* set resize back to none for autosize in input css
* fix tsconfig
* Adds an initial implementation of the new `MatBottomSheet` service that allows users to display component-based or template-based bottom sheets.
* Sets up the various boilerplate and infrastructure necessary for a new component.
Note: this is an initial implementation that has the necessary functionality, styles and accessibility. More docs, examples and touch gestures will be added in a follow-up.
* feat(form-field): add support for separate label and placeholder
* Adds the ability for the user to specify both a label and placeholder text for a form field.
* Renames all of the "floating placeholder" related terminology to refer to a "floating label" instead.
* Aligns the input placeholder color with the Material spec.
Fixes#6194.
* fix: add transition to placeholder text
Bumps the required RxJS version to 5.5.0 and gets rid of our RxChain in favor of using the lettable Rx operators. Refactors all the usages and updates the configs.
Fixes#7275.
Since the switch to the `mat-` prefix, the compatibility mode is no longer necessary. These changes remove anything that was left.
BREAKING CHANGE:
The `MATERIAL_COMPATIBILITY_MODE`, `CompatibilityModule`, `NoConflictStyleCompatibilityMode`, `MatPrefixRejector`, `MdPrefixRejector` symbols have been removed.
The GitHub code owners feature does not work properly right now because the different paths/globs to the folders (like the `input`) are not matching at all.
This is because the paths are not absolute nor relative paths but still include a directory name. This does not work properly and can be confirmed by playing with the `.gitignore` (which has the same pattern matching)