Currently the `CdkDropList` makes some assumptions about the items not having a margin between each other. It also won't lay out and animate items with varying heights, in some cases. The following changes rework the directive to allow it to handle both varying heights and different margins.
Fixes#13483.
Currently we always have a `role` of `alert` on the snack bar container which has an implicit politeness of `assertive` and which can override the message announced by the live announcer. These changes set the role to `status` if it's set to `polite` or remove the role completely if the politeness is turned off.
Fixes#13493.
Currently when detaching a view, we check whether it would fit in the cache, and if it doesn't, we destroy it. Since we destroy the view on it's own, the `ViewContainerRef` still has a reference to it, which means that we'll trigger change detection on it the next time the data changes. These changes switch to destroying the view through the view container.
Fixes#13901.
* Due to the fact that we try to run `git config --global` before
CircleCI set up the global Git configuration, the publish task is still
broken. This _should_ fix it.
* Running `ng update` doesn't necessarily mean that the `typescript` version is updated automatically. Therefore we need to avoid using the `isStringLiteralLike` method which has been added in `2.8`. Note that this does not mean that we cannot _compile_ with a higher TypeScript version.. we should just ensure that _at runtime_, imports from `typescript` are working for TypeScript@2.x.x
* Currently the `ng update` could potentially fail if the version of `@schematics/angular` is outdated on the given project. We should avoid to depend on `@schematics/angular` for the `ng-update` schematic.
* No longer fails if the workspace configuration could not be found. It's very uncommon that someone tries to update a CLI project that still uses `.angular-cli.json` because:
1) The CLI version for the project doesn't support `ng update` with custom downstream migrations
2) In case the developer runs a different CLI version for _that_ outdated project, the CLI technically does run for an invalid project.
Even though, this is a rare case, it doesn't hurt not throwing if the workspace configuration couldn't be found when running `ng update`.
Since we have the ability to only build specific parts of Material with Bazel, the `material-moment-adapter` should just depend on it's *actual* dependencies and not on the _whole set_ of Material entry-points.
Since we hide overflow for stroked buttons in order to properly handle the `border-radius` for the child ripple container and focus overlay, badges which are applied on the button will be clipped.
In order to fix this bug, we just remove the `overflow: hidden` and go back to the initial implemenation where the border radius is inherited for the child elements. Just to keep https://github.com/angular/material2/issues/13738 resolved, we ensure that the child elements fully cover the actual button element for the _correct_ border radius.
Fixes#13909
In order to make the "failure" or "warning" messages with `ng-add` look more friendly and structured, we manually wrap the messages. Additionally `chalk` is being used more often in order to make it clear if something failed/passed or is just a warning.
This reverts commit a22a9fa3d7.
This change caused a new issue where Closure Compiler was not able to do
dead-code elimination due to the function call with unknown side
effects.
* Expands the decorator validation rule to allow us to run a regex against all the arguments of a decorator. This allows us to guard against cases like #13792.
* Fixes a similar issue as #13792 in the `LayoutModule` which was caught after the new changes to the rule.
* Updates `dgeni-packages` to the most recent version that includes an improvement for parameter types in the docs (148bc949e5880357817b21f1da09ac056ca9c0b0)
* Fixes that the `@angular/bazel` dependency is not being inserted at the proper position (alphabetically)
Along the same lines as #13790. Doesn't handle the prevent the default action for ENTER and SPACE when one of the modifier keys is pressed, in order to avoid interefering with the native keyboard shortcuts.
Since the inherited `ctorParameters` can be either a static array or a function that returns an array, the workaround that landed with e9103a6 does not fully solve the issue, which developers experience when using Angular Material with ES2015. This improves the workaround and ensures that it handles both scenarios properly.
Also the workaround has been moved into a separate function in order to remove code duplication. This should also make it easier to delete the workaround if we need to.
Since we copy the schematics after the version placeholders have been inlined, the version range that uses the NG version placeholder is not replaced properly.
This is not problematic because by default we determine the NG version based on the installed `@angular/core` version.
```
addPackageToPackageJson(host, '@angular/animations',
ngCoreVersionTag || requiredAngularVersionRange);
```
Since the overview for `cdk/platform` is pretty bare on the docs site at the moment, these changes add an example that illustrates how the utilities can be used.
* Suppress Bazel warnings when compiling the unit tests. This is necessary for the test tsconfig because TypeScript does not inherit third-party `tsconfig` options.
On touch devices `:hover` styling persists after the user has tapped. These changes hide the persistent ripple if the user isn't able to hover, in order to avoid confusion with the other ripples.
Related to #13675.
* Adds the `CdkStepHeader` directive which is the equivalent of `MatStepHeader` and can be used by consumers when building custom steppers.
* Fixes an error that was being thrown on init when using a `cdkStepper` directly.
Fixes#10611.
* feat(drag-utils): add utility function for cloning array items from one array to another
creates a utility helper for cloning an array item into the array of the drop container
compliments moveItemInArray and transferArrayItem
partially closes#13100
* feat(drag-utils): add utility function for cloning array items from one array to another
resolves issues surfaced from code review
* feat(drag-utils): add utility function for cloning array items from one array to another
cuts extra space between parens
* removes link in comments, and clarifies function definition as recommended in review
* resolves nits
Unlike other components that we use Hammer on, the tooltip won't show up at all on a touch device if Hammer isn't loaded. These changes add a fallback to using a `touchstart` event to trigger the tooltip.
Also fixes the `_manualListeners` not being cleared on Android.
Fixes#13536.
* Similarly to the CDK schematics, schematics that can be (ng-)`generated` should be grouped into its own directory. This cleans up the schematics folder and makes it clear where each schematic lives.
* Removes a tslint ignore comment in a schematic test.
* build: test material with bazel
* Supports testing `src/lib` with Bazel.
* Add prebuilt theme to all Material tests
* Always include prebuilt theme. Rebase changes for paginator spec