@angular/material 14.0.0-next.1 → 14.0.0-next.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/button-toggle/_button-toggle-theme.scss +4 -2
- package/chips/chip-input.d.ts +2 -5
- package/chips/chip-list.d.ts +18 -5
- package/core/common-behaviors/error-state.d.ts +1 -2
- package/core/datetime/index.d.ts +1 -2
- package/core/ripple/index.d.ts +1 -2
- package/core/ripple/ripple-ref.d.ts +2 -1
- package/core/ripple/ripple-renderer.d.ts +9 -2
- package/datepicker/calendar-body.d.ts +12 -3
- package/datepicker/date-range-input-parts.d.ts +4 -1
- package/datepicker/datepicker-base.d.ts +2 -0
- package/datepicker/month-view.d.ts +18 -0
- package/datepicker/multi-year-view.d.ts +18 -0
- package/datepicker/year-view.d.ts +18 -0
- package/dialog/dialog-content-directives.d.ts +5 -1
- package/esm2020/autocomplete/autocomplete-trigger.mjs +8 -3
- package/esm2020/button-toggle/button-toggle.mjs +2 -2
- package/esm2020/checkbox/checkbox.mjs +4 -2
- package/esm2020/chips/chip-input.mjs +1 -1
- package/esm2020/chips/chip-list.mjs +23 -6
- package/esm2020/core/common-behaviors/error-state.mjs +1 -8
- package/esm2020/core/datetime/index.mjs +3 -5
- package/esm2020/core/ripple/index.mjs +4 -5
- package/esm2020/core/ripple/ripple-ref.mjs +5 -2
- package/esm2020/core/ripple/ripple-renderer.mjs +72 -37
- package/esm2020/core/version.mjs +1 -1
- package/esm2020/datepicker/calendar-body.mjs +25 -3
- package/esm2020/datepicker/calendar.mjs +2 -2
- package/esm2020/datepicker/date-range-input-parts.mjs +1 -1
- package/esm2020/datepicker/datepicker-base.mjs +4 -12
- package/esm2020/datepicker/month-view.mjs +34 -7
- package/esm2020/datepicker/multi-year-view.mjs +40 -8
- package/esm2020/datepicker/year-view.mjs +39 -8
- package/esm2020/dialog/dialog-container.mjs +3 -3
- package/esm2020/dialog/dialog-content-directives.mjs +16 -4
- package/esm2020/form-field/form-field.mjs +14 -9
- package/esm2020/input/input.mjs +13 -3
- package/esm2020/menu/menu-trigger.mjs +15 -6
- package/esm2020/menu/menu.mjs +14 -9
- package/esm2020/progress-spinner/progress-spinner.mjs +4 -1
- package/esm2020/radio/radio.mjs +3 -3
- package/esm2020/select/select.mjs +16 -4
- package/esm2020/sidenav/drawer.mjs +3 -3
- package/esm2020/sidenav/sidenav-module.mjs +4 -5
- package/esm2020/sidenav/sidenav.mjs +3 -3
- package/esm2020/sort/sort-header.mjs +14 -6
- package/esm2020/sort/sort.mjs +1 -1
- package/esm2020/stepper/stepper-module.mjs +3 -7
- package/esm2020/stepper/stepper.mjs +8 -58
- package/esm2020/tabs/paginated-tab-header.mjs +13 -7
- package/esm2020/tabs/tab-group.mjs +25 -1
- package/esm2020/tabs/tab-header.mjs +3 -3
- package/fesm2015/autocomplete.mjs +7 -2
- package/fesm2015/autocomplete.mjs.map +1 -1
- package/fesm2015/button-toggle.mjs +2 -2
- package/fesm2015/checkbox.mjs +3 -1
- package/fesm2015/checkbox.mjs.map +1 -1
- package/fesm2015/chips.mjs +22 -5
- package/fesm2015/chips.mjs.map +1 -1
- package/fesm2015/core.mjs +83 -52
- package/fesm2015/core.mjs.map +1 -1
- package/fesm2015/datepicker.mjs +139 -35
- package/fesm2015/datepicker.mjs.map +1 -1
- package/fesm2015/dialog.mjs +17 -5
- package/fesm2015/dialog.mjs.map +1 -1
- package/fesm2015/form-field.mjs +14 -8
- package/fesm2015/form-field.mjs.map +1 -1
- package/fesm2015/input.mjs +12 -2
- package/fesm2015/input.mjs.map +1 -1
- package/fesm2015/menu.mjs +26 -11
- package/fesm2015/menu.mjs.map +1 -1
- package/fesm2015/progress-spinner.mjs +3 -0
- package/fesm2015/progress-spinner.mjs.map +1 -1
- package/fesm2015/radio.mjs +2 -2
- package/fesm2015/radio.mjs.map +1 -1
- package/fesm2015/select.mjs +15 -3
- package/fesm2015/select.mjs.map +1 -1
- package/fesm2015/sidenav.mjs +8 -9
- package/fesm2015/sidenav.mjs.map +1 -1
- package/fesm2015/sort.mjs +119 -111
- package/fesm2015/sort.mjs.map +1 -1
- package/fesm2015/stepper.mjs +9 -62
- package/fesm2015/stepper.mjs.map +1 -1
- package/fesm2015/tabs.mjs +38 -8
- package/fesm2015/tabs.mjs.map +1 -1
- package/fesm2020/autocomplete.mjs +7 -2
- package/fesm2020/autocomplete.mjs.map +1 -1
- package/fesm2020/button-toggle.mjs +2 -2
- package/fesm2020/checkbox.mjs +3 -1
- package/fesm2020/checkbox.mjs.map +1 -1
- package/fesm2020/chips.mjs +22 -5
- package/fesm2020/chips.mjs.map +1 -1
- package/fesm2020/core.mjs +83 -52
- package/fesm2020/core.mjs.map +1 -1
- package/fesm2020/datepicker.mjs +139 -35
- package/fesm2020/datepicker.mjs.map +1 -1
- package/fesm2020/dialog.mjs +17 -5
- package/fesm2020/dialog.mjs.map +1 -1
- package/fesm2020/form-field.mjs +13 -8
- package/fesm2020/form-field.mjs.map +1 -1
- package/fesm2020/input.mjs +12 -2
- package/fesm2020/input.mjs.map +1 -1
- package/fesm2020/menu.mjs +25 -11
- package/fesm2020/menu.mjs.map +1 -1
- package/fesm2020/progress-spinner.mjs +3 -0
- package/fesm2020/progress-spinner.mjs.map +1 -1
- package/fesm2020/radio.mjs +2 -2
- package/fesm2020/radio.mjs.map +1 -1
- package/fesm2020/select.mjs +15 -3
- package/fesm2020/select.mjs.map +1 -1
- package/fesm2020/sidenav.mjs +8 -9
- package/fesm2020/sidenav.mjs.map +1 -1
- package/fesm2020/sort.mjs +12 -4
- package/fesm2020/sort.mjs.map +1 -1
- package/fesm2020/stepper.mjs +9 -62
- package/fesm2020/stepper.mjs.map +1 -1
- package/fesm2020/tabs.mjs +38 -8
- package/fesm2020/tabs.mjs.map +1 -1
- package/form-field/form-field.d.ts +9 -5
- package/input/input.d.ts +11 -1
- package/menu/menu-trigger.d.ts +7 -1
- package/menu/menu.d.ts +7 -2
- package/package.json +7 -7
- package/prebuilt-themes/deeppurple-amber.css +1 -1
- package/prebuilt-themes/indigo-pink.css +1 -1
- package/prebuilt-themes/pink-bluegrey.css +1 -1
- package/prebuilt-themes/purple-green.css +1 -1
- package/progress-spinner/progress-spinner.d.ts +3 -1
- package/schematics/ng-add/index.js +2 -2
- package/schematics/ng-add/index.mjs +2 -2
- package/schematics/ng-add/schema.json +17 -5
- package/schematics/ng-generate/address-form/schema.json +1 -1
- package/schematics/ng-generate/dashboard/schema.json +1 -1
- package/schematics/ng-generate/navigation/schema.json +1 -1
- package/schematics/ng-generate/table/schema.json +1 -1
- package/schematics/ng-generate/tree/schema.json +1 -1
- package/schematics/ng-update/data/constructor-checks.js +5 -1
- package/schematics/ng-update/data/constructor-checks.mjs +5 -1
- package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.js +4 -4
- package/schematics/ng-update/migrations/hammer-gestures-v9/hammer-gestures-migration.mjs +4 -4
- package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.js +13 -13
- package/schematics/ng-update/migrations/hammer-gestures-v9/import-manager.mjs +13 -13
- package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.js +2 -13
- package/schematics/ng-update/migrations/package-imports-v8/secondary-entry-points-migration.mjs +2 -13
- package/schematics/tsconfig.json +1 -4
- package/select/select.d.ts +11 -0
- package/sidenav/sidenav-module.d.ts +2 -3
- package/sort/sort-header.d.ts +4 -4
- package/sort/sort.d.ts +4 -0
- package/stepper/stepper-module.d.ts +1 -1
- package/stepper/stepper.d.ts +2 -35
- package/tabs/paginated-tab-header.d.ts +4 -2
- package/tabs/tab-group.d.ts +6 -2
package/fesm2015/core.mjs
CHANGED
|
@@ -5,11 +5,11 @@ import { VERSION as VERSION$1 } from '@angular/cdk';
|
|
|
5
5
|
import * as i3 from '@angular/common';
|
|
6
6
|
import { DOCUMENT, CommonModule } from '@angular/common';
|
|
7
7
|
import * as i1$1 from '@angular/cdk/platform';
|
|
8
|
-
import { _isTestEnvironment,
|
|
8
|
+
import { _isTestEnvironment, normalizePassiveListenerOptions } from '@angular/cdk/platform';
|
|
9
9
|
import * as i1 from '@angular/cdk/a11y';
|
|
10
10
|
import { isFakeMousedownFromScreenReader, isFakeTouchstartFromScreenReader } from '@angular/cdk/a11y';
|
|
11
11
|
import { coerceBooleanProperty, coerceNumberProperty, coerceElement } from '@angular/cdk/coercion';
|
|
12
|
-
import {
|
|
12
|
+
import { Observable, Subject } from 'rxjs';
|
|
13
13
|
import { startWith } from 'rxjs/operators';
|
|
14
14
|
import { ANIMATION_MODULE_TYPE } from '@angular/platform-browser/animations';
|
|
15
15
|
import { ENTER, SPACE, hasModifierKey } from '@angular/cdk/keycodes';
|
|
@@ -22,7 +22,7 @@ import { ENTER, SPACE, hasModifierKey } from '@angular/cdk/keycodes';
|
|
|
22
22
|
* found in the LICENSE file at https://angular.io/license
|
|
23
23
|
*/
|
|
24
24
|
/** Current version of Angular Material. */
|
|
25
|
-
const VERSION = new Version('14.0.0-next.
|
|
25
|
+
const VERSION = new Version('14.0.0-next.4');
|
|
26
26
|
|
|
27
27
|
/**
|
|
28
28
|
* @license
|
|
@@ -269,12 +269,6 @@ function mixinErrorState(base) {
|
|
|
269
269
|
return class extends base {
|
|
270
270
|
constructor(...args) {
|
|
271
271
|
super(...args);
|
|
272
|
-
// This class member exists as an interop with `MatFormFieldControl` which expects
|
|
273
|
-
// a public `stateChanges` observable to emit whenever the form field should be updated.
|
|
274
|
-
// The description is not specifically mentioning the error state, as classes using this
|
|
275
|
-
// mixin can/should emit an event in other cases too.
|
|
276
|
-
/** Emits whenever the component state changes. */
|
|
277
|
-
this.stateChanges = new Subject();
|
|
278
272
|
/** Whether the component is in an error state. */
|
|
279
273
|
this.errorState = false;
|
|
280
274
|
}
|
|
@@ -711,12 +705,11 @@ const MAT_NATIVE_DATE_FORMATS = {
|
|
|
711
705
|
class NativeDateModule {
|
|
712
706
|
}
|
|
713
707
|
NativeDateModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
714
|
-
NativeDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateModule
|
|
715
|
-
NativeDateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateModule, providers: [{ provide: DateAdapter, useClass: NativeDateAdapter }]
|
|
708
|
+
NativeDateModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateModule });
|
|
709
|
+
NativeDateModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateModule, providers: [{ provide: DateAdapter, useClass: NativeDateAdapter }] });
|
|
716
710
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: NativeDateModule, decorators: [{
|
|
717
711
|
type: NgModule,
|
|
718
712
|
args: [{
|
|
719
|
-
imports: [PlatformModule],
|
|
720
713
|
providers: [{ provide: DateAdapter, useClass: NativeDateAdapter }],
|
|
721
714
|
}]
|
|
722
715
|
}] });
|
|
@@ -839,10 +832,13 @@ class RippleRef {
|
|
|
839
832
|
/** Reference to the ripple HTML element. */
|
|
840
833
|
element,
|
|
841
834
|
/** Ripple configuration used for the ripple. */
|
|
842
|
-
config
|
|
835
|
+
config,
|
|
836
|
+
/* Whether animations are forcibly disabled for ripples through CSS. */
|
|
837
|
+
_animationForciblyDisabledThroughCss = false) {
|
|
843
838
|
this._renderer = _renderer;
|
|
844
839
|
this.element = element;
|
|
845
840
|
this.config = config;
|
|
841
|
+
this._animationForciblyDisabledThroughCss = _animationForciblyDisabledThroughCss;
|
|
846
842
|
/** Current state of the ripple. */
|
|
847
843
|
this.state = 3 /* HIDDEN */;
|
|
848
844
|
}
|
|
@@ -911,7 +907,7 @@ class RippleRenderer {
|
|
|
911
907
|
const radius = config.radius || distanceToFurthestCorner(x, y, containerRect);
|
|
912
908
|
const offsetX = x - containerRect.left;
|
|
913
909
|
const offsetY = y - containerRect.top;
|
|
914
|
-
const
|
|
910
|
+
const enterDuration = animationConfig.enterDuration;
|
|
915
911
|
const ripple = document.createElement('div');
|
|
916
912
|
ripple.classList.add('mat-ripple-element');
|
|
917
913
|
ripple.style.left = `${offsetX - radius}px`;
|
|
@@ -923,35 +919,49 @@ class RippleRenderer {
|
|
|
923
919
|
if (config.color != null) {
|
|
924
920
|
ripple.style.backgroundColor = config.color;
|
|
925
921
|
}
|
|
926
|
-
ripple.style.transitionDuration = `${
|
|
922
|
+
ripple.style.transitionDuration = `${enterDuration}ms`;
|
|
927
923
|
this._containerElement.appendChild(ripple);
|
|
928
924
|
// By default the browser does not recalculate the styles of dynamically created
|
|
929
|
-
// ripple elements. This is critical
|
|
930
|
-
|
|
931
|
-
//
|
|
925
|
+
// ripple elements. This is critical to ensure that the `scale` animates properly.
|
|
926
|
+
// We enforce a style recalculation by calling `getComputedStyle` and *accessing* a property.
|
|
927
|
+
// See: https://gist.github.com/paulirish/5d52fb081b3570c81e3a
|
|
928
|
+
const computedStyles = window.getComputedStyle(ripple);
|
|
929
|
+
const userTransitionProperty = computedStyles.transitionProperty;
|
|
930
|
+
const userTransitionDuration = computedStyles.transitionDuration;
|
|
931
|
+
// Note: We detect whether animation is forcibly disabled through CSS by the use of
|
|
932
|
+
// `transition: none`. This is technically unexpected since animations are controlled
|
|
933
|
+
// through the animation config, but this exists for backwards compatibility. This logic does
|
|
934
|
+
// not need to be super accurate since it covers some edge cases which can be easily avoided by users.
|
|
935
|
+
const animationForciblyDisabledThroughCss = userTransitionProperty === 'none' ||
|
|
936
|
+
// Note: The canonical unit for serialized CSS `<time>` properties is seconds. Additionally
|
|
937
|
+
// some browsers expand the duration for every property (in our case `opacity` and `transform`).
|
|
938
|
+
userTransitionDuration === '0s' ||
|
|
939
|
+
userTransitionDuration === '0s, 0s';
|
|
940
|
+
// Exposed reference to the ripple that will be returned.
|
|
941
|
+
const rippleRef = new RippleRef(this, ripple, config, animationForciblyDisabledThroughCss);
|
|
942
|
+
// Start the enter animation by setting the transform/scale to 100%. The animation will
|
|
943
|
+
// execute as part of this statement because we forced a style recalculation before.
|
|
944
|
+
// Note: We use a 3d transform here in order to avoid an issue in Safari where
|
|
932
945
|
// the ripples aren't clipped when inside the shadow DOM (see #24028).
|
|
933
946
|
ripple.style.transform = 'scale3d(1, 1, 1)';
|
|
934
|
-
// Exposed reference to the ripple that will be returned.
|
|
935
|
-
const rippleRef = new RippleRef(this, ripple, config);
|
|
936
947
|
rippleRef.state = 0 /* FADING_IN */;
|
|
937
948
|
// Add the ripple reference to the list of all active ripples.
|
|
938
949
|
this._activeRipples.add(rippleRef);
|
|
939
950
|
if (!config.persistent) {
|
|
940
951
|
this._mostRecentTransientRipple = rippleRef;
|
|
941
952
|
}
|
|
942
|
-
//
|
|
943
|
-
//
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
}, duration);
|
|
953
|
+
// Do not register the `transition` event listener if fade-in and fade-out duration
|
|
954
|
+
// are set to zero. The events won't fire anyway and we can save resources here.
|
|
955
|
+
if (!animationForciblyDisabledThroughCss && (enterDuration || animationConfig.exitDuration)) {
|
|
956
|
+
this._ngZone.runOutsideAngular(() => {
|
|
957
|
+
ripple.addEventListener('transitionend', () => this._finishRippleTransition(rippleRef));
|
|
958
|
+
});
|
|
959
|
+
}
|
|
960
|
+
// In case there is no fade-in transition duration, we need to manually call the transition
|
|
961
|
+
// end listener because `transitionend` doesn't fire if there is no transition.
|
|
962
|
+
if (animationForciblyDisabledThroughCss || !enterDuration) {
|
|
963
|
+
this._finishRippleTransition(rippleRef);
|
|
964
|
+
}
|
|
955
965
|
return rippleRef;
|
|
956
966
|
}
|
|
957
967
|
/** Fades out a ripple reference. */
|
|
@@ -970,14 +980,16 @@ class RippleRenderer {
|
|
|
970
980
|
}
|
|
971
981
|
const rippleEl = rippleRef.element;
|
|
972
982
|
const animationConfig = Object.assign(Object.assign({}, defaultRippleAnimationConfig), rippleRef.config.animation);
|
|
983
|
+
// This starts the fade-out transition and will fire the transition end listener that
|
|
984
|
+
// removes the ripple element from the DOM.
|
|
973
985
|
rippleEl.style.transitionDuration = `${animationConfig.exitDuration}ms`;
|
|
974
986
|
rippleEl.style.opacity = '0';
|
|
975
987
|
rippleRef.state = 2 /* FADING_OUT */;
|
|
976
|
-
//
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
}
|
|
988
|
+
// In case there is no fade-out transition duration, we need to manually call the
|
|
989
|
+
// transition end listener because `transitionend` doesn't fire if there is no transition.
|
|
990
|
+
if (rippleRef._animationForciblyDisabledThroughCss || !animationConfig.exitDuration) {
|
|
991
|
+
this._finishRippleTransition(rippleRef);
|
|
992
|
+
}
|
|
981
993
|
}
|
|
982
994
|
/** Fades out all currently active ripples. */
|
|
983
995
|
fadeOutAll() {
|
|
@@ -1024,6 +1036,36 @@ class RippleRenderer {
|
|
|
1024
1036
|
this._pointerUpEventsRegistered = true;
|
|
1025
1037
|
}
|
|
1026
1038
|
}
|
|
1039
|
+
/** Method that will be called if the fade-in or fade-in transition completed. */
|
|
1040
|
+
_finishRippleTransition(rippleRef) {
|
|
1041
|
+
if (rippleRef.state === 0 /* FADING_IN */) {
|
|
1042
|
+
this._startFadeOutTransition(rippleRef);
|
|
1043
|
+
}
|
|
1044
|
+
else if (rippleRef.state === 2 /* FADING_OUT */) {
|
|
1045
|
+
this._destroyRipple(rippleRef);
|
|
1046
|
+
}
|
|
1047
|
+
}
|
|
1048
|
+
/**
|
|
1049
|
+
* Starts the fade-out transition of the given ripple if it's not persistent and the pointer
|
|
1050
|
+
* is not held down anymore.
|
|
1051
|
+
*/
|
|
1052
|
+
_startFadeOutTransition(rippleRef) {
|
|
1053
|
+
const isMostRecentTransientRipple = rippleRef === this._mostRecentTransientRipple;
|
|
1054
|
+
const { persistent } = rippleRef.config;
|
|
1055
|
+
rippleRef.state = 1 /* VISIBLE */;
|
|
1056
|
+
// When the timer runs out while the user has kept their pointer down, we want to
|
|
1057
|
+
// keep only the persistent ripples and the latest transient ripple. We do this,
|
|
1058
|
+
// because we don't want stacked transient ripples to appear after their enter
|
|
1059
|
+
// animation has finished.
|
|
1060
|
+
if (!persistent && (!isMostRecentTransientRipple || !this._isPointerDown)) {
|
|
1061
|
+
rippleRef.fadeOut();
|
|
1062
|
+
}
|
|
1063
|
+
}
|
|
1064
|
+
/** Destroys the given ripple by removing it from the DOM and updating its state. */
|
|
1065
|
+
_destroyRipple(rippleRef) {
|
|
1066
|
+
rippleRef.state = 3 /* HIDDEN */;
|
|
1067
|
+
rippleRef.element.remove();
|
|
1068
|
+
}
|
|
1027
1069
|
/** Function being called whenever the trigger is being pressed using mouse. */
|
|
1028
1070
|
_onMousedown(event) {
|
|
1029
1071
|
// Screen readers will fire fake mouse events for space/enter. Skip launching a
|
|
@@ -1069,10 +1111,6 @@ class RippleRenderer {
|
|
|
1069
1111
|
}
|
|
1070
1112
|
});
|
|
1071
1113
|
}
|
|
1072
|
-
/** Runs a timeout outside of the Angular zone to avoid triggering the change detection. */
|
|
1073
|
-
_runTimeoutOutsideZone(fn, delay = 0) {
|
|
1074
|
-
this._ngZone.runOutsideAngular(() => setTimeout(fn, delay));
|
|
1075
|
-
}
|
|
1076
1114
|
/** Registers event listeners for a given list of events. */
|
|
1077
1115
|
_registerEvents(eventTypes) {
|
|
1078
1116
|
this._ngZone.runOutsideAngular(() => {
|
|
@@ -1095,13 +1133,6 @@ class RippleRenderer {
|
|
|
1095
1133
|
}
|
|
1096
1134
|
}
|
|
1097
1135
|
}
|
|
1098
|
-
/** Enforces a style recalculation of a DOM element by computing its styles. */
|
|
1099
|
-
function enforceStyleRecalculation(element) {
|
|
1100
|
-
// Enforce a style recalculation by calling `getComputedStyle` and accessing any property.
|
|
1101
|
-
// Calling `getPropertyValue` is important to let optimizers know that this is not a noop.
|
|
1102
|
-
// See: https://gist.github.com/paulirish/5d52fb081b3570c81e3a
|
|
1103
|
-
window.getComputedStyle(element).getPropertyValue('opacity');
|
|
1104
|
-
}
|
|
1105
1136
|
/**
|
|
1106
1137
|
* Returns the distance from the point (x, y) to the furthest corner of a rectangle.
|
|
1107
1138
|
*/
|
|
@@ -1262,12 +1293,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImpor
|
|
|
1262
1293
|
class MatRippleModule {
|
|
1263
1294
|
}
|
|
1264
1295
|
MatRippleModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRippleModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
1265
|
-
MatRippleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRippleModule, declarations: [MatRipple], imports: [MatCommonModule
|
|
1266
|
-
MatRippleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRippleModule, imports: [[MatCommonModule
|
|
1296
|
+
MatRippleModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRippleModule, declarations: [MatRipple], imports: [MatCommonModule], exports: [MatRipple, MatCommonModule] });
|
|
1297
|
+
MatRippleModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRippleModule, imports: [[MatCommonModule], MatCommonModule] });
|
|
1267
1298
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: MatRippleModule, decorators: [{
|
|
1268
1299
|
type: NgModule,
|
|
1269
1300
|
args: [{
|
|
1270
|
-
imports: [MatCommonModule
|
|
1301
|
+
imports: [MatCommonModule],
|
|
1271
1302
|
exports: [MatRipple, MatCommonModule],
|
|
1272
1303
|
declarations: [MatRipple],
|
|
1273
1304
|
}]
|