@angular/material 19.1.0-next.1 → 19.1.0-next.3
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/autocomplete/index.d.ts +5 -5
- package/button/index.d.ts +2 -0
- package/core/index.d.ts +1 -0
- package/core/theming/_theming.scss +1 -1
- package/datepicker/index.d.ts +1 -0
- package/expansion/index.d.ts +11 -8
- package/fesm2022/autocomplete.mjs +54 -50
- package/fesm2022/autocomplete.mjs.map +1 -1
- package/fesm2022/badge.mjs +10 -10
- package/fesm2022/badge.mjs.map +1 -1
- package/fesm2022/bottom-sheet.mjs +10 -10
- package/fesm2022/bottom-sheet.mjs.map +1 -1
- package/fesm2022/button-toggle.mjs +10 -10
- package/fesm2022/button-toggle.mjs.map +1 -1
- package/fesm2022/button.mjs +39 -37
- package/fesm2022/button.mjs.map +1 -1
- package/fesm2022/card.mjs +46 -46
- package/fesm2022/card.mjs.map +1 -1
- package/fesm2022/checkbox.mjs +14 -14
- package/fesm2022/checkbox.mjs.map +1 -1
- package/fesm2022/chips.mjs +40 -40
- package/fesm2022/chips.mjs.map +1 -1
- package/fesm2022/core.mjs +73 -75
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/datepicker.mjs +104 -111
- package/fesm2022/datepicker.mjs.map +1 -1
- package/fesm2022/dialog.mjs +25 -25
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/divider.mjs +7 -7
- package/fesm2022/divider.mjs.map +1 -1
- package/fesm2022/expansion.mjs +114 -105
- package/fesm2022/expansion.mjs.map +1 -1
- package/fesm2022/form-field.mjs +39 -37
- package/fesm2022/form-field.mjs.map +1 -1
- package/fesm2022/grid-list.mjs +22 -22
- package/fesm2022/grid-list.mjs.map +1 -1
- package/fesm2022/icon/testing.mjs +7 -7
- package/fesm2022/icon/testing.mjs.map +1 -1
- package/fesm2022/icon.mjs +10 -10
- package/fesm2022/icon.mjs.map +1 -1
- package/fesm2022/input.mjs +26 -32
- package/fesm2022/input.mjs.map +1 -1
- package/fesm2022/list.mjs +58 -55
- package/fesm2022/list.mjs.map +1 -1
- package/fesm2022/menu.mjs +219 -192
- package/fesm2022/menu.mjs.map +1 -1
- package/fesm2022/paginator.mjs +40 -31
- package/fesm2022/paginator.mjs.map +1 -1
- package/fesm2022/progress-bar.mjs +12 -10
- package/fesm2022/progress-bar.mjs.map +1 -1
- package/fesm2022/progress-spinner.mjs +7 -7
- package/fesm2022/progress-spinner.mjs.map +1 -1
- package/fesm2022/radio.mjs +15 -14
- package/fesm2022/radio.mjs.map +1 -1
- package/fesm2022/select.mjs +24 -13
- package/fesm2022/select.mjs.map +1 -1
- package/fesm2022/sidenav.mjs +28 -27
- package/fesm2022/sidenav.mjs.map +1 -1
- package/fesm2022/slide-toggle.mjs +14 -14
- package/fesm2022/slide-toggle.mjs.map +1 -1
- package/fesm2022/slider.mjs +38 -39
- package/fesm2022/slider.mjs.map +1 -1
- package/fesm2022/snack-bar.mjs +22 -22
- package/fesm2022/snack-bar.mjs.map +1 -1
- package/fesm2022/sort.mjs +13 -13
- package/fesm2022/sort.mjs.map +1 -1
- package/fesm2022/stepper.mjs +31 -31
- package/fesm2022/stepper.mjs.map +1 -1
- package/fesm2022/table.mjs +59 -70
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/tabs.mjs +58 -66
- package/fesm2022/tabs.mjs.map +1 -1
- package/fesm2022/timepicker.mjs +58 -41
- package/fesm2022/timepicker.mjs.map +1 -1
- package/fesm2022/toolbar.mjs +10 -10
- package/fesm2022/toolbar.mjs.map +1 -1
- package/fesm2022/tooltip.mjs +54 -76
- package/fesm2022/tooltip.mjs.map +1 -1
- package/fesm2022/tree.mjs +25 -25
- package/fesm2022/tree.mjs.map +1 -1
- package/form-field/index.d.ts +1 -0
- package/input/index.d.ts +8 -5
- package/list/index.d.ts +2 -0
- package/menu/index.d.ts +20 -19
- package/package.json +2 -2
- package/paginator/index.d.ts +8 -0
- package/progress-bar/index.d.ts +2 -0
- package/radio/index.d.ts +4 -2
- package/schematics/ng-add/index.js +1 -1
- package/schematics/ng-add/index.mjs +1 -1
- package/schematics/ng-generate/theme-color/index_bundled.js +2 -2
- package/schematics/ng-update/index_bundled.js +31 -31
- package/select/index.d.ts +15 -2
- package/sidenav/index.d.ts +1 -0
- package/slider/index.d.ts +4 -1
- package/tabs/index.d.ts +4 -2
- package/timepicker/index.d.ts +4 -0
- package/tooltip/index.d.ts +4 -5
package/fesm2022/expansion.mjs
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { CdkAccordionItem, CdkAccordion, CdkAccordionModule } from '@angular/cdk/accordion';
|
|
2
2
|
import { TemplatePortal, CdkPortalOutlet, PortalModule } from '@angular/cdk/portal';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
|
-
import { InjectionToken, inject, TemplateRef, Directive, ViewContainerRef, ANIMATION_MODULE_TYPE, EventEmitter, booleanAttribute, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, ContentChild, ViewChild,
|
|
4
|
+
import { InjectionToken, inject, TemplateRef, Directive, ViewContainerRef, ANIMATION_MODULE_TYPE, NgZone, ElementRef, Renderer2, EventEmitter, booleanAttribute, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, Output, ContentChild, ViewChild, ChangeDetectorRef, HostAttributeToken, numberAttribute, QueryList, ContentChildren, NgModule } from '@angular/core';
|
|
5
5
|
import { _StructuralStylesLoader, MatCommonModule } from '@angular/material/core';
|
|
6
6
|
import { _IdGenerator, FocusMonitor, FocusKeyManager } from '@angular/cdk/a11y';
|
|
7
7
|
import { startWith, filter, take } from 'rxjs/operators';
|
|
8
8
|
import { ENTER, hasModifierKey, SPACE } from '@angular/cdk/keycodes';
|
|
9
9
|
import { Subject, Subscription, EMPTY, merge } from 'rxjs';
|
|
10
|
-
import { trigger, state, style, transition, animate } from '@angular/animations';
|
|
11
10
|
import { UniqueSelectionDispatcher } from '@angular/cdk/collections';
|
|
12
11
|
import { DOCUMENT } from '@angular/common';
|
|
13
12
|
import { _CdkPrivateStyleLoader } from '@angular/cdk/private';
|
|
13
|
+
import { trigger, state, style, transition, animate } from '@angular/animations';
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
16
|
* Token used to provide a `MatAccordion` to `MatExpansionPanel`.
|
|
@@ -18,49 +18,6 @@ import { _CdkPrivateStyleLoader } from '@angular/cdk/private';
|
|
|
18
18
|
*/
|
|
19
19
|
const MAT_ACCORDION = new InjectionToken('MAT_ACCORDION');
|
|
20
20
|
|
|
21
|
-
/** Time and timing curve for expansion panel animations. */
|
|
22
|
-
// Note: Keep this in sync with the Sass variable for the panel header animation.
|
|
23
|
-
const EXPANSION_PANEL_ANIMATION_TIMING = '225ms cubic-bezier(0.4,0.0,0.2,1)';
|
|
24
|
-
/**
|
|
25
|
-
* Animations used by the Material expansion panel.
|
|
26
|
-
*
|
|
27
|
-
* A bug in angular animation's `state` when ViewContainers are moved using ViewContainerRef.move()
|
|
28
|
-
* causes the animation state of moved components to become `void` upon exit, and not update again
|
|
29
|
-
* upon reentry into the DOM. This can lead a to situation for the expansion panel where the state
|
|
30
|
-
* of the panel is `expanded` or `collapsed` but the animation state is `void`.
|
|
31
|
-
*
|
|
32
|
-
* To correctly handle animating to the next state, we animate between `void` and `collapsed` which
|
|
33
|
-
* are defined to have the same styles. Since angular animates from the current styles to the
|
|
34
|
-
* destination state's style definition, in situations where we are moving from `void`'s styles to
|
|
35
|
-
* `collapsed` this acts a noop since no style values change.
|
|
36
|
-
*
|
|
37
|
-
* In the case where angular's animation state is out of sync with the expansion panel's state, the
|
|
38
|
-
* expansion panel being `expanded` and angular animations being `void`, the animation from the
|
|
39
|
-
* `expanded`'s effective styles (though in a `void` animation state) to the collapsed state will
|
|
40
|
-
* occur as expected.
|
|
41
|
-
*
|
|
42
|
-
* Angular Bug: https://github.com/angular/angular/issues/18847
|
|
43
|
-
*
|
|
44
|
-
* @docs-private
|
|
45
|
-
*/
|
|
46
|
-
const matExpansionAnimations = {
|
|
47
|
-
/** Animation that rotates the indicator arrow. */
|
|
48
|
-
indicatorRotate: trigger('indicatorRotate', [
|
|
49
|
-
state('collapsed, void', style({ transform: 'rotate(0deg)' })),
|
|
50
|
-
state('expanded', style({ transform: 'rotate(180deg)' })),
|
|
51
|
-
transition('expanded <=> collapsed, void => collapsed', animate(EXPANSION_PANEL_ANIMATION_TIMING)),
|
|
52
|
-
]),
|
|
53
|
-
/** Animation that expands and collapses the panel content. */
|
|
54
|
-
bodyExpansion: trigger('bodyExpansion', [
|
|
55
|
-
state('collapsed, void', style({ height: '0px', visibility: 'hidden' })),
|
|
56
|
-
// Clear the `visibility` while open, otherwise the content will be visible when placed in
|
|
57
|
-
// a parent that's `visibility: hidden`, because `visibility` doesn't apply to descendants
|
|
58
|
-
// that have a `visibility` of their own (see #27436).
|
|
59
|
-
state('expanded', style({ height: '*', visibility: '' })),
|
|
60
|
-
transition('expanded <=> collapsed, void => collapsed', animate(EXPANSION_PANEL_ANIMATION_TIMING)),
|
|
61
|
-
]),
|
|
62
|
-
};
|
|
63
|
-
|
|
64
21
|
/**
|
|
65
22
|
* Token used to provide a `MatExpansionPanel` to `MatExpansionPanelContent`.
|
|
66
23
|
* Used to avoid circular imports between `MatExpansionPanel` and `MatExpansionPanelContent`.
|
|
@@ -75,10 +32,10 @@ class MatExpansionPanelContent {
|
|
|
75
32
|
_template = inject(TemplateRef);
|
|
76
33
|
_expansionPanel = inject(MAT_EXPANSION_PANEL, { optional: true });
|
|
77
34
|
constructor() { }
|
|
78
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.
|
|
79
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.
|
|
35
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionPanelContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
36
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: MatExpansionPanelContent, isStandalone: true, selector: "ng-template[matExpansionPanelContent]", ngImport: i0 });
|
|
80
37
|
}
|
|
81
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionPanelContent, decorators: [{
|
|
82
39
|
type: Directive,
|
|
83
40
|
args: [{
|
|
84
41
|
selector: 'ng-template[matExpansionPanelContent]',
|
|
@@ -96,9 +53,12 @@ const MAT_EXPANSION_PANEL_DEFAULT_OPTIONS = new InjectionToken('MAT_EXPANSION_PA
|
|
|
96
53
|
*/
|
|
97
54
|
class MatExpansionPanel extends CdkAccordionItem {
|
|
98
55
|
_viewContainerRef = inject(ViewContainerRef);
|
|
99
|
-
|
|
100
|
-
_animationsDisabled;
|
|
56
|
+
_animationsDisabled = inject(ANIMATION_MODULE_TYPE, { optional: true }) === 'NoopAnimations';
|
|
101
57
|
_document = inject(DOCUMENT);
|
|
58
|
+
_ngZone = inject(NgZone);
|
|
59
|
+
_elementRef = inject(ElementRef);
|
|
60
|
+
_renderer = inject(Renderer2);
|
|
61
|
+
_cleanupTransitionEnd;
|
|
102
62
|
/** Whether the toggle indicator should be hidden. */
|
|
103
63
|
get hideToggle() {
|
|
104
64
|
return this._hideToggle || (this.accordion && this.accordion.hideToggle);
|
|
@@ -127,6 +87,8 @@ class MatExpansionPanel extends CdkAccordionItem {
|
|
|
127
87
|
_lazyContent;
|
|
128
88
|
/** Element containing the panel's user-provided content. */
|
|
129
89
|
_body;
|
|
90
|
+
/** Element wrapping the panel body. */
|
|
91
|
+
_bodyWrapper;
|
|
130
92
|
/** Portal holding the user's content. */
|
|
131
93
|
_portal;
|
|
132
94
|
/** ID for the associated header element. Used for a11y labelling. */
|
|
@@ -135,7 +97,6 @@ class MatExpansionPanel extends CdkAccordionItem {
|
|
|
135
97
|
super();
|
|
136
98
|
const defaultOptions = inject(MAT_EXPANSION_PANEL_DEFAULT_OPTIONS, { optional: true });
|
|
137
99
|
this._expansionDispatcher = inject(UniqueSelectionDispatcher);
|
|
138
|
-
this._animationsDisabled = this._animationMode === 'NoopAnimations';
|
|
139
100
|
if (defaultOptions) {
|
|
140
101
|
this.hideToggle = defaultOptions.hideToggle;
|
|
141
102
|
}
|
|
@@ -172,12 +133,14 @@ class MatExpansionPanel extends CdkAccordionItem {
|
|
|
172
133
|
this._portal = new TemplatePortal(this._lazyContent._template, this._viewContainerRef);
|
|
173
134
|
});
|
|
174
135
|
}
|
|
136
|
+
this._setupAnimationEvents();
|
|
175
137
|
}
|
|
176
138
|
ngOnChanges(changes) {
|
|
177
139
|
this._inputChanges.next(changes);
|
|
178
140
|
}
|
|
179
141
|
ngOnDestroy() {
|
|
180
142
|
super.ngOnDestroy();
|
|
143
|
+
this._cleanupTransitionEnd?.();
|
|
181
144
|
this._inputChanges.complete();
|
|
182
145
|
}
|
|
183
146
|
/** Checks whether the expansion panel's content contains the currently-focused element. */
|
|
@@ -189,41 +152,46 @@ class MatExpansionPanel extends CdkAccordionItem {
|
|
|
189
152
|
}
|
|
190
153
|
return false;
|
|
191
154
|
}
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
155
|
+
_transitionEndListener = ({ target, propertyName }) => {
|
|
156
|
+
if (target === this._bodyWrapper?.nativeElement && propertyName === 'grid-template-rows') {
|
|
157
|
+
this._ngZone.run(() => {
|
|
158
|
+
if (this.expanded) {
|
|
159
|
+
this.afterExpand.emit();
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
this.afterCollapse.emit();
|
|
163
|
+
}
|
|
164
|
+
});
|
|
199
165
|
}
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
166
|
+
};
|
|
167
|
+
_setupAnimationEvents() {
|
|
168
|
+
// This method is defined separately, because we need to
|
|
169
|
+
// disable this logic in some internal components.
|
|
170
|
+
this._ngZone.runOutsideAngular(() => {
|
|
171
|
+
if (this._animationsDisabled) {
|
|
172
|
+
this.opened.subscribe(() => this._ngZone.run(() => this.afterExpand.emit()));
|
|
173
|
+
this.closed.subscribe(() => this._ngZone.run(() => this.afterCollapse.emit()));
|
|
206
174
|
}
|
|
207
|
-
else
|
|
208
|
-
|
|
175
|
+
else {
|
|
176
|
+
setTimeout(() => {
|
|
177
|
+
const element = this._elementRef.nativeElement;
|
|
178
|
+
this._cleanupTransitionEnd = this._renderer.listen(element, 'transitionend', this._transitionEndListener);
|
|
179
|
+
element.classList.add('mat-expansion-panel-animations-enabled');
|
|
180
|
+
}, 200);
|
|
209
181
|
}
|
|
210
|
-
|
|
211
|
-
if (!this._animationsDisabled && this._body) {
|
|
212
|
-
this._body.nativeElement.removeAttribute('inert');
|
|
213
|
-
}
|
|
214
|
-
}
|
|
182
|
+
});
|
|
215
183
|
}
|
|
216
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.
|
|
217
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.0.
|
|
184
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionPanel, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
185
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "19.1.0-next.3", type: MatExpansionPanel, isStandalone: true, selector: "mat-expansion-panel", inputs: { hideToggle: ["hideToggle", "hideToggle", booleanAttribute], togglePosition: "togglePosition" }, outputs: { afterExpand: "afterExpand", afterCollapse: "afterCollapse" }, host: { properties: { "class.mat-expanded": "expanded", "class.mat-expansion-panel-spacing": "_hasSpacing()" }, classAttribute: "mat-expansion-panel" }, providers: [
|
|
218
186
|
// Provide MatAccordion as undefined to prevent nested expansion panels from registering
|
|
219
187
|
// to the same accordion.
|
|
220
188
|
{ provide: MAT_ACCORDION, useValue: undefined },
|
|
221
189
|
{ provide: MAT_EXPANSION_PANEL, useExisting: MatExpansionPanel },
|
|
222
|
-
], queries: [{ propertyName: "_lazyContent", first: true, predicate: MatExpansionPanelContent, descendants: true }], viewQueries: [{ propertyName: "_body", first: true, predicate: ["body"], descendants: true }], exportAs: ["matExpansionPanel"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-content select=\"mat-expansion-panel-header\"></ng-content>\n<div class=\"mat-expansion-panel-content\"
|
|
190
|
+
], queries: [{ propertyName: "_lazyContent", first: true, predicate: MatExpansionPanelContent, descendants: true }], viewQueries: [{ propertyName: "_body", first: true, predicate: ["body"], descendants: true }, { propertyName: "_bodyWrapper", first: true, predicate: ["bodyWrapper"], descendants: true }], exportAs: ["matExpansionPanel"], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-content select=\"mat-expansion-panel-header\"></ng-content>\n<div class=\"mat-expansion-panel-content-wrapper\" [attr.inert]=\"expanded ? null : ''\" #bodyWrapper>\n <div class=\"mat-expansion-panel-content\"\n role=\"region\"\n [attr.aria-labelledby]=\"_headerId\"\n [id]=\"id\"\n #body>\n <div class=\"mat-expansion-panel-body\">\n <ng-content></ng-content>\n <ng-template [cdkPortalOutlet]=\"_portal\"></ng-template>\n </div>\n <ng-content select=\"mat-action-row\"></ng-content>\n </div>\n</div>\n", styles: [".mat-expansion-panel{box-sizing:content-box;display:block;margin:0;overflow:hidden;position:relative;background:var(--mat-expansion-container-background-color, var(--mat-sys-surface));color:var(--mat-expansion-container-text-color, var(--mat-sys-on-surface));border-radius:var(--mat-expansion-container-shape, 12px)}.mat-expansion-panel.mat-expansion-panel-animations-enabled{transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:var(--mat-expansion-container-shape, 12px);border-top-left-radius:var(--mat-expansion-container-shape, 12px)}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:var(--mat-expansion-container-shape, 12px);border-bottom-left-radius:var(--mat-expansion-container-shape, 12px)}@media(forced-colors: active){.mat-expansion-panel{outline:solid 1px}}.mat-expansion-panel-content-wrapper{display:grid;grid-template-rows:0fr;grid-template-columns:100%}.mat-expansion-panel-animations-enabled .mat-expansion-panel-content-wrapper{transition:grid-template-rows 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper{grid-template-rows:1fr}@supports not (grid-template-rows: 0fr){.mat-expansion-panel-content-wrapper{height:0}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper{height:auto}}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible;min-height:0;visibility:hidden;font-family:var(--mat-expansion-container-text-font, var(--mat-sys-body-large-font));font-size:var(--mat-expansion-container-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-expansion-container-text-weight, var(--mat-sys-body-large-weight));line-height:var(--mat-expansion-container-text-line-height, var(--mat-sys-body-large-line-height));letter-spacing:var(--mat-expansion-container-text-tracking, var(--mat-sys-body-large-tracking))}.mat-expansion-panel-animations-enabled .mat-expansion-panel-content{transition:visibility 190ms linear}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper>.mat-expansion-panel-content{visibility:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px;border-top-color:var(--mat-expansion-actions-divider-color, var(--mat-sys-outline))}.mat-action-row .mat-button-base,.mat-action-row .mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row .mat-button-base,[dir=rtl] .mat-action-row .mat-mdc-button-base{margin-left:0;margin-right:8px}"], dependencies: [{ kind: "directive", type: CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
223
191
|
}
|
|
224
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.
|
|
192
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionPanel, decorators: [{
|
|
225
193
|
type: Component,
|
|
226
|
-
args: [{ selector: 'mat-expansion-panel', exportAs: 'matExpansionPanel', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush,
|
|
194
|
+
args: [{ selector: 'mat-expansion-panel', exportAs: 'matExpansionPanel', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
227
195
|
// Provide MatAccordion as undefined to prevent nested expansion panels from registering
|
|
228
196
|
// to the same accordion.
|
|
229
197
|
{ provide: MAT_ACCORDION, useValue: undefined },
|
|
@@ -231,9 +199,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImpor
|
|
|
231
199
|
], host: {
|
|
232
200
|
'class': 'mat-expansion-panel',
|
|
233
201
|
'[class.mat-expanded]': 'expanded',
|
|
234
|
-
'[class._mat-animation-noopable]': '_animationsDisabled',
|
|
235
202
|
'[class.mat-expansion-panel-spacing]': '_hasSpacing()',
|
|
236
|
-
}, imports: [CdkPortalOutlet], template: "<ng-content select=\"mat-expansion-panel-header\"></ng-content>\n<div class=\"mat-expansion-panel-content\"
|
|
203
|
+
}, imports: [CdkPortalOutlet], template: "<ng-content select=\"mat-expansion-panel-header\"></ng-content>\n<div class=\"mat-expansion-panel-content-wrapper\" [attr.inert]=\"expanded ? null : ''\" #bodyWrapper>\n <div class=\"mat-expansion-panel-content\"\n role=\"region\"\n [attr.aria-labelledby]=\"_headerId\"\n [id]=\"id\"\n #body>\n <div class=\"mat-expansion-panel-body\">\n <ng-content></ng-content>\n <ng-template [cdkPortalOutlet]=\"_portal\"></ng-template>\n </div>\n <ng-content select=\"mat-action-row\"></ng-content>\n </div>\n</div>\n", styles: [".mat-expansion-panel{box-sizing:content-box;display:block;margin:0;overflow:hidden;position:relative;background:var(--mat-expansion-container-background-color, var(--mat-sys-surface));color:var(--mat-expansion-container-text-color, var(--mat-sys-on-surface));border-radius:var(--mat-expansion-container-shape, 12px)}.mat-expansion-panel.mat-expansion-panel-animations-enabled{transition:margin 225ms cubic-bezier(0.4, 0, 0.2, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}.mat-accordion .mat-expansion-panel:not(.mat-expanded),.mat-accordion .mat-expansion-panel:not(.mat-expansion-panel-spacing){border-radius:0}.mat-accordion .mat-expansion-panel:first-of-type{border-top-right-radius:var(--mat-expansion-container-shape, 12px);border-top-left-radius:var(--mat-expansion-container-shape, 12px)}.mat-accordion .mat-expansion-panel:last-of-type{border-bottom-right-radius:var(--mat-expansion-container-shape, 12px);border-bottom-left-radius:var(--mat-expansion-container-shape, 12px)}@media(forced-colors: active){.mat-expansion-panel{outline:solid 1px}}.mat-expansion-panel-content-wrapper{display:grid;grid-template-rows:0fr;grid-template-columns:100%}.mat-expansion-panel-animations-enabled .mat-expansion-panel-content-wrapper{transition:grid-template-rows 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper{grid-template-rows:1fr}@supports not (grid-template-rows: 0fr){.mat-expansion-panel-content-wrapper{height:0}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper{height:auto}}.mat-expansion-panel-content{display:flex;flex-direction:column;overflow:visible;min-height:0;visibility:hidden;font-family:var(--mat-expansion-container-text-font, var(--mat-sys-body-large-font));font-size:var(--mat-expansion-container-text-size, var(--mat-sys-body-large-size));font-weight:var(--mat-expansion-container-text-weight, var(--mat-sys-body-large-weight));line-height:var(--mat-expansion-container-text-line-height, var(--mat-sys-body-large-line-height));letter-spacing:var(--mat-expansion-container-text-tracking, var(--mat-sys-body-large-tracking))}.mat-expansion-panel-animations-enabled .mat-expansion-panel-content{transition:visibility 190ms linear}.mat-expansion-panel.mat-expanded>.mat-expansion-panel-content-wrapper>.mat-expansion-panel-content{visibility:visible}.mat-expansion-panel-body{padding:0 24px 16px}.mat-expansion-panel-spacing{margin:16px 0}.mat-accordion>.mat-expansion-panel-spacing:first-child,.mat-accordion>*:first-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-top:0}.mat-accordion>.mat-expansion-panel-spacing:last-child,.mat-accordion>*:last-child:not(.mat-expansion-panel) .mat-expansion-panel-spacing{margin-bottom:0}.mat-action-row{border-top-style:solid;border-top-width:1px;display:flex;flex-direction:row;justify-content:flex-end;padding:16px 8px 16px 24px;border-top-color:var(--mat-expansion-actions-divider-color, var(--mat-sys-outline))}.mat-action-row .mat-button-base,.mat-action-row .mat-mdc-button-base{margin-left:8px}[dir=rtl] .mat-action-row .mat-button-base,[dir=rtl] .mat-action-row .mat-mdc-button-base{margin-left:0;margin-right:8px}"] }]
|
|
237
204
|
}], ctorParameters: () => [], propDecorators: { hideToggle: [{
|
|
238
205
|
type: Input,
|
|
239
206
|
args: [{ transform: booleanAttribute }]
|
|
@@ -249,19 +216,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImpor
|
|
|
249
216
|
}], _body: [{
|
|
250
217
|
type: ViewChild,
|
|
251
218
|
args: ['body']
|
|
219
|
+
}], _bodyWrapper: [{
|
|
220
|
+
type: ViewChild,
|
|
221
|
+
args: ['bodyWrapper']
|
|
252
222
|
}] } });
|
|
253
|
-
/** Checks whether an animation is the initial setup animation. */
|
|
254
|
-
function isInitialAnimation(event) {
|
|
255
|
-
return event.fromState === 'void';
|
|
256
|
-
}
|
|
257
223
|
/**
|
|
258
224
|
* Actions of a `<mat-expansion-panel>`.
|
|
259
225
|
*/
|
|
260
226
|
class MatExpansionPanelActionRow {
|
|
261
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.
|
|
262
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.
|
|
227
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionPanelActionRow, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
228
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: MatExpansionPanelActionRow, isStandalone: true, selector: "mat-action-row", host: { classAttribute: "mat-action-row" }, ngImport: i0 });
|
|
263
229
|
}
|
|
264
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.
|
|
230
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionPanelActionRow, decorators: [{
|
|
265
231
|
type: Directive,
|
|
266
232
|
args: [{
|
|
267
233
|
selector: 'mat-action-row',
|
|
@@ -279,7 +245,6 @@ class MatExpansionPanelHeader {
|
|
|
279
245
|
_element = inject(ElementRef);
|
|
280
246
|
_focusMonitor = inject(FocusMonitor);
|
|
281
247
|
_changeDetectorRef = inject(ChangeDetectorRef);
|
|
282
|
-
_animationMode = inject(ANIMATION_MODULE_TYPE, { optional: true });
|
|
283
248
|
_parentChangeSubscription = Subscription.EMPTY;
|
|
284
249
|
constructor() {
|
|
285
250
|
inject(_CdkPrivateStyleLoader).load(_StructuralStylesLoader);
|
|
@@ -399,12 +364,12 @@ class MatExpansionPanelHeader {
|
|
|
399
364
|
this._parentChangeSubscription.unsubscribe();
|
|
400
365
|
this._focusMonitor.stopMonitoring(this._element);
|
|
401
366
|
}
|
|
402
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.
|
|
403
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.
|
|
367
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionPanelHeader, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
368
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.1.0-next.3", type: MatExpansionPanelHeader, isStandalone: true, selector: "mat-expansion-panel-header", inputs: { expandedHeight: "expandedHeight", collapsedHeight: "collapsedHeight", tabIndex: ["tabIndex", "tabIndex", (value) => (value == null ? 0 : numberAttribute(value))] }, host: { attributes: { "role": "button" }, listeners: { "click": "_toggle()", "keydown": "_keydown($event)" }, properties: { "attr.id": "panel._headerId", "attr.tabindex": "disabled ? -1 : tabIndex", "attr.aria-controls": "_getPanelId()", "attr.aria-expanded": "_isExpanded()", "attr.aria-disabled": "panel.disabled", "class.mat-expanded": "_isExpanded()", "class.mat-expansion-toggle-indicator-after": "_getTogglePosition() === 'after'", "class.mat-expansion-toggle-indicator-before": "_getTogglePosition() === 'before'", "style.height": "_getHeaderHeight()" }, classAttribute: "mat-expansion-panel-header mat-focus-indicator" }, ngImport: i0, template: "<span class=\"mat-content\" [class.mat-content-hide-toggle]=\"!_showToggle()\">\n <ng-content select=\"mat-panel-title\"></ng-content>\n <ng-content select=\"mat-panel-description\"></ng-content>\n <ng-content></ng-content>\n</span>\n\n@if (_showToggle()) {\n <span class=\"mat-expansion-indicator\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 -960 960 960\"\n aria-hidden=\"true\"\n focusable=\"false\">\n <path d=\"M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z\"/>\n </svg>\n </span>\n}\n", styles: [".mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;height:var(--mat-expansion-header-collapsed-state-height, 48px);font-family:var(--mat-expansion-header-text-font, var(--mat-sys-title-medium-font));font-size:var(--mat-expansion-header-text-size, var(--mat-sys-title-medium-size));font-weight:var(--mat-expansion-header-text-weight, var(--mat-sys-title-medium-weight));line-height:var(--mat-expansion-header-text-line-height, var(--mat-sys-title-medium-line-height));letter-spacing:var(--mat-expansion-header-text-tracking, var(--mat-sys-title-medium-tracking))}.mat-expansion-panel-animations-enabled .mat-expansion-panel-header{transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header.mat-expanded{height:var(--mat-expansion-header-expanded-state-height, 64px)}.mat-expansion-panel-header[aria-disabled=true]{color:var(--mat-expansion-header-disabled-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover{background:var(--mat-expansion-header-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}@media(hover: none){.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover{background:var(--mat-expansion-container-background-color, var(--mat-sys-surface))}}.mat-expansion-panel .mat-expansion-panel-header:not([aria-disabled=true]).cdk-keyboard-focused,.mat-expansion-panel .mat-expansion-panel-header:not([aria-disabled=true]).cdk-program-focused{background:var(--mat-expansion-header-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent))}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-content.mat-content-hide-toggle{margin-right:8px}[dir=rtl] .mat-content.mat-content-hide-toggle{margin-right:0;margin-left:8px}.mat-expansion-toggle-indicator-before .mat-content.mat-content-hide-toggle{margin-left:24px;margin-right:0}[dir=rtl] .mat-expansion-toggle-indicator-before .mat-content.mat-content-hide-toggle{margin-right:24px;margin-left:0}.mat-expansion-panel-header-title{color:var(--mat-expansion-header-text-color, var(--mat-sys-on-surface))}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;flex-basis:0;margin-right:16px;align-items:center}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title,.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description{color:inherit}.mat-expansion-panel-header-description{flex-grow:2;color:var(--mat-expansion-header-description-color, var(--mat-sys-on-surface-variant))}.mat-expansion-panel-animations-enabled .mat-expansion-indicator{transition:transform 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header.mat-expanded .mat-expansion-indicator{transform:rotate(180deg)}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:\"\";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle;color:var(--mat-expansion-header-indicator-color, var(--mat-sys-on-surface-variant));display:var(--mat-expansion-legacy-header-indicator-display, none)}.mat-expansion-indicator svg{width:24px;height:24px;margin:0 -8px;vertical-align:middle;fill:var(--mat-expansion-header-indicator-color, var(--mat-sys-on-surface-variant));display:var(--mat-expansion-header-indicator-display, inline-block)}@media(forced-colors: active){.mat-expansion-panel-content{border-top:1px solid;border-top-left-radius:0;border-top-right-radius:0}}"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
404
369
|
}
|
|
405
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.
|
|
370
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionPanelHeader, decorators: [{
|
|
406
371
|
type: Component,
|
|
407
|
-
args: [{ selector: 'mat-expansion-panel-header', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush,
|
|
372
|
+
args: [{ selector: 'mat-expansion-panel-header', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
408
373
|
'class': 'mat-expansion-panel-header mat-focus-indicator',
|
|
409
374
|
'role': 'button',
|
|
410
375
|
'[attr.id]': 'panel._headerId',
|
|
@@ -415,11 +380,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImpor
|
|
|
415
380
|
'[class.mat-expanded]': '_isExpanded()',
|
|
416
381
|
'[class.mat-expansion-toggle-indicator-after]': `_getTogglePosition() === 'after'`,
|
|
417
382
|
'[class.mat-expansion-toggle-indicator-before]': `_getTogglePosition() === 'before'`,
|
|
418
|
-
'[class._mat-animation-noopable]': '_animationMode === "NoopAnimations"',
|
|
419
383
|
'[style.height]': '_getHeaderHeight()',
|
|
420
384
|
'(click)': '_toggle()',
|
|
421
385
|
'(keydown)': '_keydown($event)',
|
|
422
|
-
}, template: "<span class=\"mat-content\" [class.mat-content-hide-toggle]=\"!_showToggle()\">\n <ng-content select=\"mat-panel-title\"></ng-content>\n <ng-content select=\"mat-panel-description\"></ng-content>\n <ng-content></ng-content>\n</span>\n\n@if (_showToggle()) {\n <span
|
|
386
|
+
}, template: "<span class=\"mat-content\" [class.mat-content-hide-toggle]=\"!_showToggle()\">\n <ng-content select=\"mat-panel-title\"></ng-content>\n <ng-content select=\"mat-panel-description\"></ng-content>\n <ng-content></ng-content>\n</span>\n\n@if (_showToggle()) {\n <span class=\"mat-expansion-indicator\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 -960 960 960\"\n aria-hidden=\"true\"\n focusable=\"false\">\n <path d=\"M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z\"/>\n </svg>\n </span>\n}\n", styles: [".mat-expansion-panel-header{display:flex;flex-direction:row;align-items:center;padding:0 24px;border-radius:inherit;height:var(--mat-expansion-header-collapsed-state-height, 48px);font-family:var(--mat-expansion-header-text-font, var(--mat-sys-title-medium-font));font-size:var(--mat-expansion-header-text-size, var(--mat-sys-title-medium-size));font-weight:var(--mat-expansion-header-text-weight, var(--mat-sys-title-medium-weight));line-height:var(--mat-expansion-header-text-line-height, var(--mat-sys-title-medium-line-height));letter-spacing:var(--mat-expansion-header-text-tracking, var(--mat-sys-title-medium-tracking))}.mat-expansion-panel-animations-enabled .mat-expansion-panel-header{transition:height 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header.mat-expanded{height:var(--mat-expansion-header-expanded-state-height, 64px)}.mat-expansion-panel-header[aria-disabled=true]{color:var(--mat-expansion-header-disabled-state-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mat-expansion-panel-header:not([aria-disabled=true]){cursor:pointer}.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover{background:var(--mat-expansion-header-hover-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-hover-state-layer-opacity) * 100%), transparent))}@media(hover: none){.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled=true]):hover{background:var(--mat-expansion-container-background-color, var(--mat-sys-surface))}}.mat-expansion-panel .mat-expansion-panel-header:not([aria-disabled=true]).cdk-keyboard-focused,.mat-expansion-panel .mat-expansion-panel-header:not([aria-disabled=true]).cdk-program-focused{background:var(--mat-expansion-header-focus-state-layer-color, color-mix(in srgb, var(--mat-sys-on-surface) calc(var(--mat-sys-focus-state-layer-opacity) * 100%), transparent))}.mat-expansion-panel-header._mat-animation-noopable{transition:none}.mat-expansion-panel-header:focus,.mat-expansion-panel-header:hover{outline:none}.mat-expansion-panel-header.mat-expanded:focus,.mat-expansion-panel-header.mat-expanded:hover{background:inherit}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before{flex-direction:row-reverse}.mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 16px 0 0}[dir=rtl] .mat-expansion-panel-header.mat-expansion-toggle-indicator-before .mat-expansion-indicator{margin:0 0 0 16px}.mat-content{display:flex;flex:1;flex-direction:row;overflow:hidden}.mat-content.mat-content-hide-toggle{margin-right:8px}[dir=rtl] .mat-content.mat-content-hide-toggle{margin-right:0;margin-left:8px}.mat-expansion-toggle-indicator-before .mat-content.mat-content-hide-toggle{margin-left:24px;margin-right:0}[dir=rtl] .mat-expansion-toggle-indicator-before .mat-content.mat-content-hide-toggle{margin-right:24px;margin-left:0}.mat-expansion-panel-header-title{color:var(--mat-expansion-header-text-color, var(--mat-sys-on-surface))}.mat-expansion-panel-header-title,.mat-expansion-panel-header-description{display:flex;flex-grow:1;flex-basis:0;margin-right:16px;align-items:center}[dir=rtl] .mat-expansion-panel-header-title,[dir=rtl] .mat-expansion-panel-header-description{margin-right:0;margin-left:16px}.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-title,.mat-expansion-panel-header[aria-disabled=true] .mat-expansion-panel-header-description{color:inherit}.mat-expansion-panel-header-description{flex-grow:2;color:var(--mat-expansion-header-description-color, var(--mat-sys-on-surface-variant))}.mat-expansion-panel-animations-enabled .mat-expansion-indicator{transition:transform 225ms cubic-bezier(0.4, 0, 0.2, 1)}.mat-expansion-panel-header.mat-expanded .mat-expansion-indicator{transform:rotate(180deg)}.mat-expansion-indicator::after{border-style:solid;border-width:0 2px 2px 0;content:\"\";display:inline-block;padding:3px;transform:rotate(45deg);vertical-align:middle;color:var(--mat-expansion-header-indicator-color, var(--mat-sys-on-surface-variant));display:var(--mat-expansion-legacy-header-indicator-display, none)}.mat-expansion-indicator svg{width:24px;height:24px;margin:0 -8px;vertical-align:middle;fill:var(--mat-expansion-header-indicator-color, var(--mat-sys-on-surface-variant));display:var(--mat-expansion-header-indicator-display, inline-block)}@media(forced-colors: active){.mat-expansion-panel-content{border-top:1px solid;border-top-left-radius:0;border-top-right-radius:0}}"] }]
|
|
423
387
|
}], ctorParameters: () => [], propDecorators: { expandedHeight: [{
|
|
424
388
|
type: Input
|
|
425
389
|
}], collapsedHeight: [{
|
|
@@ -434,10 +398,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImpor
|
|
|
434
398
|
* Description element of a `<mat-expansion-panel-header>`.
|
|
435
399
|
*/
|
|
436
400
|
class MatExpansionPanelDescription {
|
|
437
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.
|
|
438
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.
|
|
401
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionPanelDescription, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
402
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: MatExpansionPanelDescription, isStandalone: true, selector: "mat-panel-description", host: { classAttribute: "mat-expansion-panel-header-description" }, ngImport: i0 });
|
|
439
403
|
}
|
|
440
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.
|
|
404
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionPanelDescription, decorators: [{
|
|
441
405
|
type: Directive,
|
|
442
406
|
args: [{
|
|
443
407
|
selector: 'mat-panel-description',
|
|
@@ -450,10 +414,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImpor
|
|
|
450
414
|
* Title element of a `<mat-expansion-panel-header>`.
|
|
451
415
|
*/
|
|
452
416
|
class MatExpansionPanelTitle {
|
|
453
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.
|
|
454
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.0.
|
|
417
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionPanelTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
418
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.0-next.3", type: MatExpansionPanelTitle, isStandalone: true, selector: "mat-panel-title", host: { classAttribute: "mat-expansion-panel-header-title" }, ngImport: i0 });
|
|
455
419
|
}
|
|
456
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.
|
|
420
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionPanelTitle, decorators: [{
|
|
457
421
|
type: Directive,
|
|
458
422
|
args: [{
|
|
459
423
|
selector: 'mat-panel-title',
|
|
@@ -506,15 +470,15 @@ class MatAccordion extends CdkAccordion {
|
|
|
506
470
|
this._keyManager?.destroy();
|
|
507
471
|
this._ownHeaders.destroy();
|
|
508
472
|
}
|
|
509
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.
|
|
510
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.0.
|
|
473
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatAccordion, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
474
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "19.1.0-next.3", type: MatAccordion, isStandalone: true, selector: "mat-accordion", inputs: { hideToggle: ["hideToggle", "hideToggle", booleanAttribute], displayMode: "displayMode", togglePosition: "togglePosition" }, host: { properties: { "class.mat-accordion-multi": "this.multi" }, classAttribute: "mat-accordion" }, providers: [
|
|
511
475
|
{
|
|
512
476
|
provide: MAT_ACCORDION,
|
|
513
477
|
useExisting: MatAccordion,
|
|
514
478
|
},
|
|
515
479
|
], queries: [{ propertyName: "_headers", predicate: MatExpansionPanelHeader, descendants: true }], exportAs: ["matAccordion"], usesInheritance: true, ngImport: i0 });
|
|
516
480
|
}
|
|
517
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.
|
|
481
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatAccordion, decorators: [{
|
|
518
482
|
type: Directive,
|
|
519
483
|
args: [{
|
|
520
484
|
selector: 'mat-accordion',
|
|
@@ -545,8 +509,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImpor
|
|
|
545
509
|
}] } });
|
|
546
510
|
|
|
547
511
|
class MatExpansionModule {
|
|
548
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.
|
|
549
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.
|
|
512
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
513
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionModule, imports: [MatCommonModule,
|
|
550
514
|
CdkAccordionModule,
|
|
551
515
|
PortalModule,
|
|
552
516
|
MatAccordion,
|
|
@@ -562,11 +526,11 @@ class MatExpansionModule {
|
|
|
562
526
|
MatExpansionPanelTitle,
|
|
563
527
|
MatExpansionPanelDescription,
|
|
564
528
|
MatExpansionPanelContent] });
|
|
565
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.
|
|
529
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionModule, imports: [MatCommonModule,
|
|
566
530
|
CdkAccordionModule,
|
|
567
531
|
PortalModule] });
|
|
568
532
|
}
|
|
569
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.
|
|
533
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.0-next.3", ngImport: i0, type: MatExpansionModule, decorators: [{
|
|
570
534
|
type: NgModule,
|
|
571
535
|
args: [{
|
|
572
536
|
imports: [
|
|
@@ -593,6 +557,51 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.0", ngImpor
|
|
|
593
557
|
}]
|
|
594
558
|
}] });
|
|
595
559
|
|
|
560
|
+
/** Time and timing curve for expansion panel animations. */
|
|
561
|
+
// Note: Keep this in sync with the Sass variable for the panel header animation.
|
|
562
|
+
const EXPANSION_PANEL_ANIMATION_TIMING = '225ms cubic-bezier(0.4,0.0,0.2,1)';
|
|
563
|
+
/**
|
|
564
|
+
* Animations used by the Material expansion panel.
|
|
565
|
+
*
|
|
566
|
+
* A bug in angular animation's `state` when ViewContainers are moved using ViewContainerRef.move()
|
|
567
|
+
* causes the animation state of moved components to become `void` upon exit, and not update again
|
|
568
|
+
* upon reentry into the DOM. This can lead a to situation for the expansion panel where the state
|
|
569
|
+
* of the panel is `expanded` or `collapsed` but the animation state is `void`.
|
|
570
|
+
*
|
|
571
|
+
* To correctly handle animating to the next state, we animate between `void` and `collapsed` which
|
|
572
|
+
* are defined to have the same styles. Since angular animates from the current styles to the
|
|
573
|
+
* destination state's style definition, in situations where we are moving from `void`'s styles to
|
|
574
|
+
* `collapsed` this acts a noop since no style values change.
|
|
575
|
+
*
|
|
576
|
+
* In the case where angular's animation state is out of sync with the expansion panel's state, the
|
|
577
|
+
* expansion panel being `expanded` and angular animations being `void`, the animation from the
|
|
578
|
+
* `expanded`'s effective styles (though in a `void` animation state) to the collapsed state will
|
|
579
|
+
* occur as expected.
|
|
580
|
+
*
|
|
581
|
+
* Angular Bug: https://github.com/angular/angular/issues/18847
|
|
582
|
+
*
|
|
583
|
+
* @docs-private
|
|
584
|
+
* @deprecated No longer being used, to be removed.
|
|
585
|
+
* @breaking-change 21.0.0
|
|
586
|
+
*/
|
|
587
|
+
const matExpansionAnimations = {
|
|
588
|
+
/** Animation that rotates the indicator arrow. */
|
|
589
|
+
indicatorRotate: trigger('indicatorRotate', [
|
|
590
|
+
state('collapsed, void', style({ transform: 'rotate(0deg)' })),
|
|
591
|
+
state('expanded', style({ transform: 'rotate(180deg)' })),
|
|
592
|
+
transition('expanded <=> collapsed, void => collapsed', animate(EXPANSION_PANEL_ANIMATION_TIMING)),
|
|
593
|
+
]),
|
|
594
|
+
/** Animation that expands and collapses the panel content. */
|
|
595
|
+
bodyExpansion: trigger('bodyExpansion', [
|
|
596
|
+
state('collapsed, void', style({ height: '0px', visibility: 'hidden' })),
|
|
597
|
+
// Clear the `visibility` while open, otherwise the content will be visible when placed in
|
|
598
|
+
// a parent that's `visibility: hidden`, because `visibility` doesn't apply to descendants
|
|
599
|
+
// that have a `visibility` of their own (see #27436).
|
|
600
|
+
state('expanded', style({ height: '*', visibility: '' })),
|
|
601
|
+
transition('expanded <=> collapsed, void => collapsed', animate(EXPANSION_PANEL_ANIMATION_TIMING)),
|
|
602
|
+
]),
|
|
603
|
+
};
|
|
604
|
+
|
|
596
605
|
/**
|
|
597
606
|
* Generated bundle index. Do not edit.
|
|
598
607
|
*/
|