@angular/material 21.0.0-next.1 → 21.0.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 +4 -27
- package/badge/index.d.ts +2 -3
- package/bottom-sheet/index.d.ts +4 -13
- package/button/index.d.ts +3 -10
- package/button-toggle/index.d.ts +3 -4
- package/button-toggle.d.d.ts +1 -7
- package/card/index.d.ts +2 -3
- package/checkbox/index.d.ts +3 -10
- package/chips/_m3-chip.scss +2 -5
- package/chips/index.d.ts +2 -3
- package/core/index.d.ts +1 -2
- package/core/tokens/_classes.scss +20 -16
- package/date-adapter.d.d.ts +1 -7
- package/datepicker/index.d.ts +6 -59
- package/dialog/index.d.ts +7 -30
- package/divider/index.d.ts +2 -3
- package/expansion/index.d.ts +5 -41
- package/fesm2022/autocomplete.mjs +10 -42
- package/fesm2022/autocomplete.mjs.map +1 -1
- package/fesm2022/badge.mjs +5 -6
- package/fesm2022/badge.mjs.map +1 -1
- package/fesm2022/bottom-sheet.mjs +6 -89
- package/fesm2022/bottom-sheet.mjs.map +1 -1
- package/fesm2022/button-toggle.mjs +10 -19
- package/fesm2022/button-toggle.mjs.map +1 -1
- package/fesm2022/button.mjs +11 -33
- package/fesm2022/button.mjs.map +1 -1
- package/fesm2022/card.mjs +6 -8
- package/fesm2022/card.mjs.map +1 -1
- package/fesm2022/checkbox.mjs +15 -25
- package/fesm2022/checkbox.mjs.map +1 -1
- package/fesm2022/chips.mjs +12 -13
- package/fesm2022/chips.mjs.map +1 -1
- package/fesm2022/core.mjs +3 -5
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/date-formats.mjs +2 -10
- package/fesm2022/date-formats.mjs.map +1 -1
- package/fesm2022/datepicker.mjs +32 -185
- package/fesm2022/datepicker.mjs.map +1 -1
- package/fesm2022/dialog/testing.mjs +5 -6
- package/fesm2022/dialog/testing.mjs.map +1 -1
- package/fesm2022/dialog.mjs +882 -115
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/divider.mjs +5 -7
- package/fesm2022/divider.mjs.map +1 -1
- package/fesm2022/expansion.mjs +8 -112
- package/fesm2022/expansion.mjs.map +1 -1
- package/fesm2022/form-field.mjs +19 -50
- package/fesm2022/form-field.mjs.map +1 -1
- package/fesm2022/grid-list.mjs +6 -11
- package/fesm2022/grid-list.mjs.map +1 -1
- package/fesm2022/icon-registry.mjs +2 -29
- package/fesm2022/icon-registry.mjs.map +1 -1
- package/fesm2022/icon.mjs +16 -24
- package/fesm2022/icon.mjs.map +1 -1
- package/fesm2022/input.mjs +6 -7
- package/fesm2022/input.mjs.map +1 -1
- package/fesm2022/line.mjs +5 -5
- package/fesm2022/line.mjs.map +1 -1
- package/fesm2022/list.mjs +6 -7
- package/fesm2022/list.mjs.map +1 -1
- package/fesm2022/menu.mjs +11 -162
- package/fesm2022/menu.mjs.map +1 -1
- package/fesm2022/option-module.mjs +5 -5
- package/fesm2022/option-module.mjs.map +1 -1
- package/fesm2022/option.mjs +2 -2
- package/fesm2022/option.mjs.map +1 -1
- package/fesm2022/paginator.mjs +7 -28
- package/fesm2022/paginator.mjs.map +1 -1
- package/fesm2022/progress-bar.mjs +19 -24
- package/fesm2022/progress-bar.mjs.map +1 -1
- package/fesm2022/progress-spinner.mjs +6 -16
- package/fesm2022/progress-spinner.mjs.map +1 -1
- package/fesm2022/pseudo-checkbox-module.mjs +5 -5
- package/fesm2022/pseudo-checkbox-module.mjs.map +1 -1
- package/fesm2022/radio.mjs +9 -18
- package/fesm2022/radio.mjs.map +1 -1
- package/fesm2022/ripple-module.mjs +5 -5
- package/fesm2022/ripple-module.mjs.map +1 -1
- package/fesm2022/ripple.mjs +2 -2
- package/fesm2022/ripple.mjs.map +1 -1
- package/fesm2022/select.mjs +1292 -90
- package/fesm2022/select.mjs.map +1 -1
- package/fesm2022/sidenav.mjs +9 -99
- package/fesm2022/sidenav.mjs.map +1 -1
- package/fesm2022/slide-toggle.mjs +5 -6
- package/fesm2022/slide-toggle.mjs.map +1 -1
- package/fesm2022/slider.mjs +7 -21
- package/fesm2022/slider.mjs.map +1 -1
- package/fesm2022/snack-bar.mjs +7 -101
- package/fesm2022/snack-bar.mjs.map +1 -1
- package/fesm2022/sort.mjs +7 -334
- package/fesm2022/sort.mjs.map +1 -1
- package/fesm2022/stepper.mjs +9 -180
- package/fesm2022/stepper.mjs.map +1 -1
- package/fesm2022/table.mjs +6 -8
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/tabs.mjs +13 -175
- package/fesm2022/tabs.mjs.map +1 -1
- package/fesm2022/toolbar.mjs +5 -7
- package/fesm2022/toolbar.mjs.map +1 -1
- package/fesm2022/tooltip.mjs +21 -54
- package/fesm2022/tooltip.mjs.map +1 -1
- package/fesm2022/tooltip2.mjs +6 -33
- package/fesm2022/tooltip2.mjs.map +1 -1
- package/fesm2022/tree.mjs +6 -8
- package/fesm2022/tree.mjs.map +1 -1
- package/form-field/index.d.ts +2 -13
- package/form-field-module.d.d.ts +3 -3
- package/grid-list/index.d.ts +2 -3
- package/icon/index.d.ts +3 -4
- package/icon-module.d.d.ts +3 -9
- package/icon-registry.d.d.ts +2 -18
- package/input/index.d.ts +3 -4
- package/line.d.d.ts +2 -2
- package/list/index.d.ts +3 -4
- package/menu/index.d.ts +4 -45
- package/option-module.d.d.ts +2 -2
- package/package.json +2 -2
- package/paginator/index.d.ts +4 -5
- package/paginator.d.d.ts +2 -18
- 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-bar/index.d.ts +3 -10
- package/progress-spinner/index.d.ts +3 -4
- package/progress-spinner.d.d.ts +3 -9
- package/pseudo-checkbox-module.d.d.ts +2 -2
- package/radio/index.d.ts +3 -10
- package/ripple-module.d.d.ts +2 -2
- package/ripple.d.d.ts +3 -3
- package/schematics/ng-add/index.js +1 -1
- package/select/index.d.ts +438 -27
- package/sidenav/index.d.ts +4 -21
- package/slide-toggle/index.d.ts +2 -3
- package/slider/_m2-slider.scss +1 -0
- package/slider/_m3-slider.scss +5 -2
- package/slider/index.d.ts +2 -2
- package/snack-bar/index.d.ts +4 -20
- package/sort/index.d.ts +4 -36
- package/stepper/index.d.ts +6 -34
- package/table/index.d.ts +3 -4
- package/tabs/index.d.ts +3 -20
- package/timepicker/index.d.ts +2 -2
- package/toolbar/index.d.ts +2 -3
- package/tooltip/index.d.ts +302 -16
- package/tree/index.d.ts +2 -3
- package/common-module.d.d.ts +0 -44
- package/fesm2022/common-module.mjs +0 -42
- package/fesm2022/common-module.mjs.map +0 -1
- package/fesm2022/dialog-module.mjs +0 -891
- package/fesm2022/dialog-module.mjs.map +0 -1
- package/fesm2022/form-field-module.mjs +0 -39
- package/fesm2022/form-field-module.mjs.map +0 -1
- package/fesm2022/select-module.mjs +0 -1318
- package/fesm2022/select-module.mjs.map +0 -1
- package/fesm2022/tooltip-module.mjs +0 -24
- package/fesm2022/tooltip-module.mjs.map +0 -1
- package/select-module.d.d.ts +0 -456
- package/tooltip-module.d.d.ts +0 -329
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expansion.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/accordion-base.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-panel-base.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-panel-content.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-panel.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-panel.html","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-panel-header.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-panel-header.html","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/accordion.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-module.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-animations.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {InjectionToken} from '@angular/core';\nimport {CdkAccordion} from '@angular/cdk/accordion';\n\n/** MatAccordion's display modes. */\nexport type MatAccordionDisplayMode = 'default' | 'flat';\n\n/** MatAccordion's toggle positions. */\nexport type MatAccordionTogglePosition = 'before' | 'after';\n\n/**\n * Base interface for a `MatAccordion`.\n * @docs-private\n */\nexport interface MatAccordionBase extends CdkAccordion {\n /** Whether the expansion indicator should be hidden. */\n hideToggle: boolean;\n\n /** Display mode used for all expansion panels in the accordion. */\n displayMode: MatAccordionDisplayMode;\n\n /** The position of the expansion indicator. */\n togglePosition: MatAccordionTogglePosition;\n\n /** Handles keyboard events coming in from the panel headers. */\n _handleHeaderKeydown: (event: KeyboardEvent) => void;\n\n /** Handles focus events on the panel headers. */\n _handleHeaderFocus: (header: any) => void;\n}\n\n/**\n * Token used to provide a `MatAccordion` to `MatExpansionPanel`.\n * Used primarily to avoid circular imports between `MatAccordion` and `MatExpansionPanel`.\n */\nexport const MAT_ACCORDION = new InjectionToken<MatAccordionBase>('MAT_ACCORDION');\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {InjectionToken} from '@angular/core';\nimport {CdkAccordionItem} from '@angular/cdk/accordion';\n\n/**\n * Base interface for a `MatExpansionPanel`.\n * @docs-private\n */\nexport interface MatExpansionPanelBase extends CdkAccordionItem {\n /** Whether the toggle indicator should be hidden. */\n hideToggle: boolean;\n}\n\n/**\n * Token used to provide a `MatExpansionPanel` to `MatExpansionPanelContent`.\n * Used to avoid circular imports between `MatExpansionPanel` and `MatExpansionPanelContent`.\n */\nexport const MAT_EXPANSION_PANEL = new InjectionToken<MatExpansionPanelBase>('MAT_EXPANSION_PANEL');\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {Directive, TemplateRef, inject} from '@angular/core';\nimport {MAT_EXPANSION_PANEL, MatExpansionPanelBase} from './expansion-panel-base';\n\n/**\n * Expansion panel content that will be rendered lazily\n * after the panel is opened for the first time.\n */\n@Directive({\n selector: 'ng-template[matExpansionPanelContent]',\n})\nexport class MatExpansionPanelContent {\n _template = inject<TemplateRef<any>>(TemplateRef);\n _expansionPanel = inject<MatExpansionPanelBase>(MAT_EXPANSION_PANEL, {optional: true});\n\n constructor(...args: unknown[]);\n constructor() {}\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {CdkAccordionItem} from '@angular/cdk/accordion';\nimport {UniqueSelectionDispatcher} from '@angular/cdk/collections';\nimport {CdkPortalOutlet, TemplatePortal} from '@angular/cdk/portal';\n\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n Directive,\n ElementRef,\n EventEmitter,\n InjectionToken,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n SimpleChanges,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n NgZone,\n Renderer2,\n DOCUMENT,\n} from '@angular/core';\nimport {_IdGenerator} from '@angular/cdk/a11y';\nimport {Subject} from 'rxjs';\nimport {filter, startWith, take} from 'rxjs/operators';\nimport {MatAccordionBase, MatAccordionTogglePosition, MAT_ACCORDION} from './accordion-base';\nimport {MAT_EXPANSION_PANEL} from './expansion-panel-base';\nimport {MatExpansionPanelContent} from './expansion-panel-content';\nimport {_animationsDisabled} from '../core';\n\n/** MatExpansionPanel's states. */\nexport type MatExpansionPanelState = 'expanded' | 'collapsed';\n\n/**\n * Object that can be used to override the default options\n * for all of the expansion panels in a module.\n */\nexport interface MatExpansionPanelDefaultOptions {\n /** Height of the header while the panel is expanded. */\n expandedHeight: string;\n\n /** Height of the header while the panel is collapsed. */\n collapsedHeight: string;\n\n /** Whether the toggle indicator should be hidden. */\n hideToggle: boolean;\n}\n\n/**\n * Injection token that can be used to configure the default\n * options for the expansion panel component.\n */\nexport const MAT_EXPANSION_PANEL_DEFAULT_OPTIONS =\n new InjectionToken<MatExpansionPanelDefaultOptions>('MAT_EXPANSION_PANEL_DEFAULT_OPTIONS');\n\n/**\n * This component can be used as a single element to show expandable content, or as one of\n * multiple children of an element with the MatAccordion directive attached.\n */\n@Component({\n styleUrl: 'expansion-panel.css',\n selector: 'mat-expansion-panel',\n exportAs: 'matExpansionPanel',\n templateUrl: 'expansion-panel.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n // Provide MatAccordion as undefined to prevent nested expansion panels from registering\n // to the same accordion.\n {provide: MAT_ACCORDION, useValue: undefined},\n {provide: MAT_EXPANSION_PANEL, useExisting: MatExpansionPanel},\n ],\n host: {\n 'class': 'mat-expansion-panel',\n '[class.mat-expanded]': 'expanded',\n '[class.mat-expansion-panel-spacing]': '_hasSpacing()',\n },\n imports: [CdkPortalOutlet],\n})\nexport class MatExpansionPanel\n extends CdkAccordionItem\n implements AfterContentInit, OnChanges, OnDestroy\n{\n private _viewContainerRef = inject(ViewContainerRef);\n private readonly _animationsDisabled = _animationsDisabled();\n private _document = inject(DOCUMENT);\n private _ngZone = inject(NgZone);\n private _elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private _renderer = inject(Renderer2);\n private _cleanupTransitionEnd: (() => void) | undefined;\n\n /** Whether the toggle indicator should be hidden. */\n @Input({transform: booleanAttribute})\n get hideToggle(): boolean {\n return this._hideToggle || (this.accordion && this.accordion.hideToggle);\n }\n set hideToggle(value: boolean) {\n this._hideToggle = value;\n }\n private _hideToggle = false;\n\n /** The position of the expansion indicator. */\n @Input()\n get togglePosition(): MatAccordionTogglePosition {\n return this._togglePosition || (this.accordion && this.accordion.togglePosition);\n }\n set togglePosition(value: MatAccordionTogglePosition) {\n this._togglePosition = value;\n }\n private _togglePosition: MatAccordionTogglePosition;\n\n /** An event emitted after the body's expansion animation happens. */\n @Output() readonly afterExpand = new EventEmitter<void>();\n\n /** An event emitted after the body's collapse animation happens. */\n @Output() readonly afterCollapse = new EventEmitter<void>();\n\n /** Stream that emits for changes in `@Input` properties. */\n readonly _inputChanges = new Subject<SimpleChanges>();\n\n /** Optionally defined accordion the expansion panel belongs to. */\n override accordion = inject<MatAccordionBase>(MAT_ACCORDION, {optional: true, skipSelf: true})!;\n\n /** Content that will be rendered lazily. */\n @ContentChild(MatExpansionPanelContent) _lazyContent: MatExpansionPanelContent;\n\n /** Element containing the panel's user-provided content. */\n @ViewChild('body') _body: ElementRef<HTMLElement>;\n\n /** Element wrapping the panel body. */\n @ViewChild('bodyWrapper')\n protected _bodyWrapper: ElementRef<HTMLElement> | undefined;\n\n /** Portal holding the user's content. */\n _portal: TemplatePortal;\n\n /** ID for the associated header element. Used for a11y labelling. */\n _headerId: string = inject(_IdGenerator).getId('mat-expansion-panel-header-');\n\n constructor(...args: unknown[]);\n\n constructor() {\n super();\n\n const defaultOptions = inject<MatExpansionPanelDefaultOptions>(\n MAT_EXPANSION_PANEL_DEFAULT_OPTIONS,\n {optional: true},\n );\n\n this._expansionDispatcher = inject(UniqueSelectionDispatcher);\n\n if (defaultOptions) {\n this.hideToggle = defaultOptions.hideToggle;\n }\n }\n\n /** Determines whether the expansion panel should have spacing between it and its siblings. */\n _hasSpacing(): boolean {\n if (this.accordion) {\n return this.expanded && this.accordion.displayMode === 'default';\n }\n return false;\n }\n\n /** Gets the expanded state string. */\n _getExpandedState(): MatExpansionPanelState {\n return this.expanded ? 'expanded' : 'collapsed';\n }\n\n /** Toggles the expanded state of the expansion panel. */\n override toggle(): void {\n this.expanded = !this.expanded;\n }\n\n /** Sets the expanded state of the expansion panel to false. */\n override close(): void {\n this.expanded = false;\n }\n\n /** Sets the expanded state of the expansion panel to true. */\n override open(): void {\n this.expanded = true;\n }\n\n ngAfterContentInit() {\n if (this._lazyContent && this._lazyContent._expansionPanel === this) {\n // Render the content as soon as the panel becomes open.\n this.opened\n .pipe(\n startWith(null),\n filter(() => this.expanded && !this._portal),\n take(1),\n )\n .subscribe(() => {\n this._portal = new TemplatePortal(this._lazyContent._template, this._viewContainerRef);\n });\n }\n\n this._setupAnimationEvents();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this._inputChanges.next(changes);\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n this._cleanupTransitionEnd?.();\n this._inputChanges.complete();\n }\n\n /** Checks whether the expansion panel's content contains the currently-focused element. */\n _containsFocus(): boolean {\n if (this._body) {\n const focusedElement = this._document.activeElement;\n const bodyElement = this._body.nativeElement;\n return focusedElement === bodyElement || bodyElement.contains(focusedElement);\n }\n\n return false;\n }\n\n private _transitionEndListener = ({target, propertyName}: TransitionEvent) => {\n if (target === this._bodyWrapper?.nativeElement && propertyName === 'grid-template-rows') {\n this._ngZone.run(() => {\n if (this.expanded) {\n this.afterExpand.emit();\n } else {\n this.afterCollapse.emit();\n }\n });\n }\n };\n\n protected _setupAnimationEvents() {\n // This method is defined separately, because we need to\n // disable this logic in some internal components.\n this._ngZone.runOutsideAngular(() => {\n if (this._animationsDisabled) {\n this.opened.subscribe(() => this._ngZone.run(() => this.afterExpand.emit()));\n this.closed.subscribe(() => this._ngZone.run(() => this.afterCollapse.emit()));\n } else {\n setTimeout(() => {\n const element = this._elementRef.nativeElement;\n this._cleanupTransitionEnd = this._renderer.listen(\n element,\n 'transitionend',\n this._transitionEndListener,\n );\n element.classList.add('mat-expansion-panel-animations-enabled');\n }, 200);\n }\n });\n }\n}\n\n/**\n * Actions of a `<mat-expansion-panel>`.\n */\n@Directive({\n selector: 'mat-action-row',\n host: {\n class: 'mat-action-row',\n },\n})\nexport class MatExpansionPanelActionRow {}\n","<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","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {FocusableOption, FocusMonitor, FocusOrigin} from '@angular/cdk/a11y';\nimport {ENTER, hasModifierKey, SPACE} from '@angular/cdk/keycodes';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n Input,\n numberAttribute,\n OnDestroy,\n ViewEncapsulation,\n inject,\n HostAttributeToken,\n} from '@angular/core';\nimport {EMPTY, merge, Subscription} from 'rxjs';\nimport {filter} from 'rxjs/operators';\nimport {MatAccordionTogglePosition} from './accordion-base';\nimport {\n MatExpansionPanel,\n MatExpansionPanelDefaultOptions,\n MAT_EXPANSION_PANEL_DEFAULT_OPTIONS,\n} from './expansion-panel';\nimport {_CdkPrivateStyleLoader} from '@angular/cdk/private';\nimport {_StructuralStylesLoader} from '../core';\n\n/**\n * Header element of a `<mat-expansion-panel>`.\n */\n@Component({\n selector: 'mat-expansion-panel-header',\n styleUrl: 'expansion-panel-header.css',\n templateUrl: 'expansion-panel-header.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'class': 'mat-expansion-panel-header mat-focus-indicator',\n 'role': 'button',\n '[attr.id]': 'panel._headerId',\n '[attr.tabindex]': 'disabled ? -1 : tabIndex',\n '[attr.aria-controls]': '_getPanelId()',\n '[attr.aria-expanded]': '_isExpanded()',\n '[attr.aria-disabled]': 'panel.disabled',\n '[class.mat-expanded]': '_isExpanded()',\n '[class.mat-expansion-toggle-indicator-after]': `_getTogglePosition() === 'after'`,\n '[class.mat-expansion-toggle-indicator-before]': `_getTogglePosition() === 'before'`,\n '[style.height]': '_getHeaderHeight()',\n '(click)': '_toggle()',\n '(keydown)': '_keydown($event)',\n },\n})\nexport class MatExpansionPanelHeader implements AfterViewInit, OnDestroy, FocusableOption {\n panel = inject(MatExpansionPanel, {host: true});\n private _element = inject(ElementRef);\n private _focusMonitor = inject(FocusMonitor);\n private _changeDetectorRef = inject(ChangeDetectorRef);\n\n private _parentChangeSubscription = Subscription.EMPTY;\n\n constructor(...args: unknown[]);\n\n constructor() {\n inject(_CdkPrivateStyleLoader).load(_StructuralStylesLoader);\n const panel = this.panel;\n const defaultOptions = inject<MatExpansionPanelDefaultOptions>(\n MAT_EXPANSION_PANEL_DEFAULT_OPTIONS,\n {optional: true},\n );\n const tabIndex = inject(new HostAttributeToken('tabindex'), {optional: true});\n\n const accordionHideToggleChange = panel.accordion\n ? panel.accordion._stateChanges.pipe(\n filter(changes => !!(changes['hideToggle'] || changes['togglePosition'])),\n )\n : EMPTY;\n this.tabIndex = parseInt(tabIndex || '') || 0;\n\n // Since the toggle state depends on an @Input on the panel, we\n // need to subscribe and trigger change detection manually.\n this._parentChangeSubscription = merge(\n panel.opened,\n panel.closed,\n accordionHideToggleChange,\n panel._inputChanges.pipe(\n filter(changes => {\n return !!(changes['hideToggle'] || changes['disabled'] || changes['togglePosition']);\n }),\n ),\n ).subscribe(() => this._changeDetectorRef.markForCheck());\n\n // Avoids focus being lost if the panel contained the focused element and was closed.\n panel.closed\n .pipe(filter(() => panel._containsFocus()))\n .subscribe(() => this._focusMonitor.focusVia(this._element, 'program'));\n\n if (defaultOptions) {\n this.expandedHeight = defaultOptions.expandedHeight;\n this.collapsedHeight = defaultOptions.collapsedHeight;\n }\n }\n\n /** Height of the header while the panel is expanded. */\n @Input() expandedHeight: string;\n\n /** Height of the header while the panel is collapsed. */\n @Input() collapsedHeight: string;\n\n /** Tab index of the header. */\n @Input({\n transform: (value: unknown) => (value == null ? 0 : numberAttribute(value)),\n })\n tabIndex: number = 0;\n\n /**\n * Whether the associated panel is disabled. Implemented as a part of `FocusableOption`.\n * @docs-private\n */\n get disabled(): boolean {\n return this.panel.disabled;\n }\n\n /** Toggles the expanded state of the panel. */\n _toggle(): void {\n if (!this.disabled) {\n this.panel.toggle();\n }\n }\n\n /** Gets whether the panel is expanded. */\n _isExpanded(): boolean {\n return this.panel.expanded;\n }\n\n /** Gets the expanded state string of the panel. */\n _getExpandedState(): string {\n return this.panel._getExpandedState();\n }\n\n /** Gets the panel id. */\n _getPanelId(): string {\n return this.panel.id;\n }\n\n /** Gets the toggle position for the header. */\n _getTogglePosition(): MatAccordionTogglePosition {\n return this.panel.togglePosition;\n }\n\n /** Gets whether the expand indicator should be shown. */\n _showToggle(): boolean {\n return !this.panel.hideToggle && !this.panel.disabled;\n }\n\n /**\n * Gets the current height of the header. Null if no custom height has been\n * specified, and if the default height from the stylesheet should be used.\n */\n _getHeaderHeight(): string | null {\n const isExpanded = this._isExpanded();\n if (isExpanded && this.expandedHeight) {\n return this.expandedHeight;\n } else if (!isExpanded && this.collapsedHeight) {\n return this.collapsedHeight;\n }\n return null;\n }\n\n /** Handle keydown event calling to toggle() if appropriate. */\n _keydown(event: KeyboardEvent) {\n switch (event.keyCode) {\n // Toggle for space and enter keys.\n case SPACE:\n case ENTER:\n if (!hasModifierKey(event)) {\n event.preventDefault();\n this._toggle();\n }\n\n break;\n default:\n if (this.panel.accordion) {\n this.panel.accordion._handleHeaderKeydown(event);\n }\n\n return;\n }\n }\n\n /**\n * Focuses the panel header. Implemented as a part of `FocusableOption`.\n * @param origin Origin of the action that triggered the focus.\n * @docs-private\n */\n focus(origin?: FocusOrigin, options?: FocusOptions) {\n if (origin) {\n this._focusMonitor.focusVia(this._element, origin, options);\n } else {\n this._element.nativeElement.focus(options);\n }\n }\n\n ngAfterViewInit() {\n this._focusMonitor.monitor(this._element).subscribe(origin => {\n if (origin && this.panel.accordion) {\n this.panel.accordion._handleHeaderFocus(this);\n }\n });\n }\n\n ngOnDestroy() {\n this._parentChangeSubscription.unsubscribe();\n this._focusMonitor.stopMonitoring(this._element);\n }\n}\n\n/**\n * Description element of a `<mat-expansion-panel-header>`.\n */\n@Directive({\n selector: 'mat-panel-description',\n host: {\n class: 'mat-expansion-panel-header-description',\n },\n})\nexport class MatExpansionPanelDescription {}\n\n/**\n * Title element of a `<mat-expansion-panel-header>`.\n */\n@Directive({\n selector: 'mat-panel-title',\n host: {\n class: 'mat-expansion-panel-header-title',\n },\n})\nexport class MatExpansionPanelTitle {}\n","<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","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n Directive,\n Input,\n ContentChildren,\n QueryList,\n AfterContentInit,\n OnDestroy,\n booleanAttribute,\n} from '@angular/core';\nimport {CdkAccordion} from '@angular/cdk/accordion';\nimport {FocusKeyManager} from '@angular/cdk/a11y';\nimport {startWith} from 'rxjs/operators';\nimport {\n MAT_ACCORDION,\n MatAccordionBase,\n MatAccordionDisplayMode,\n MatAccordionTogglePosition,\n} from './accordion-base';\nimport {MatExpansionPanelHeader} from './expansion-panel-header';\n\n/**\n * Directive for a Material Design Accordion.\n */\n@Directive({\n selector: 'mat-accordion',\n exportAs: 'matAccordion',\n providers: [\n {\n provide: MAT_ACCORDION,\n useExisting: MatAccordion,\n },\n ],\n host: {\n class: 'mat-accordion',\n // Class binding which is only used by the test harness as there is no other\n // way for the harness to detect if multiple panel support is enabled.\n '[class.mat-accordion-multi]': 'this.multi',\n },\n})\nexport class MatAccordion\n extends CdkAccordion\n implements MatAccordionBase, AfterContentInit, OnDestroy\n{\n private _keyManager: FocusKeyManager<MatExpansionPanelHeader>;\n\n /** Headers belonging to this accordion. */\n private _ownHeaders = new QueryList<MatExpansionPanelHeader>();\n\n /** All headers inside the accordion. Includes headers inside nested accordions. */\n @ContentChildren(MatExpansionPanelHeader, {descendants: true})\n _headers: QueryList<MatExpansionPanelHeader>;\n\n /** Whether the expansion indicator should be hidden. */\n @Input({transform: booleanAttribute})\n hideToggle: boolean = false;\n\n /**\n * Display mode used for all expansion panels in the accordion. Currently two display\n * modes exist:\n * default - a gutter-like spacing is placed around any expanded panel, placing the expanded\n * panel at a different elevation from the rest of the accordion.\n * flat - no spacing is placed around expanded panels, showing all panels at the same\n * elevation.\n */\n @Input() displayMode: MatAccordionDisplayMode = 'default';\n\n /** The position of the expansion indicator. */\n @Input() togglePosition: MatAccordionTogglePosition = 'after';\n\n ngAfterContentInit() {\n this._headers.changes\n .pipe(startWith(this._headers))\n .subscribe((headers: QueryList<MatExpansionPanelHeader>) => {\n this._ownHeaders.reset(headers.filter(header => header.panel.accordion === this));\n this._ownHeaders.notifyOnChanges();\n });\n\n this._keyManager = new FocusKeyManager(this._ownHeaders).withWrap().withHomeAndEnd();\n }\n\n /** Handles keyboard events coming in from the panel headers. */\n _handleHeaderKeydown(event: KeyboardEvent) {\n this._keyManager.onKeydown(event);\n }\n\n _handleHeaderFocus(header: MatExpansionPanelHeader) {\n this._keyManager.updateActiveItem(header);\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n this._keyManager?.destroy();\n this._ownHeaders.destroy();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {CdkAccordionModule} from '@angular/cdk/accordion';\nimport {PortalModule} from '@angular/cdk/portal';\nimport {NgModule} from '@angular/core';\nimport {MatCommonModule} from '../core';\nimport {MatAccordion} from './accordion';\nimport {MatExpansionPanel, MatExpansionPanelActionRow} from './expansion-panel';\nimport {MatExpansionPanelContent} from './expansion-panel-content';\nimport {\n MatExpansionPanelDescription,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n} from './expansion-panel-header';\n\n@NgModule({\n imports: [\n MatCommonModule,\n CdkAccordionModule,\n PortalModule,\n MatAccordion,\n MatExpansionPanel,\n MatExpansionPanelActionRow,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n MatExpansionPanelDescription,\n MatExpansionPanelContent,\n ],\n exports: [\n MatAccordion,\n MatExpansionPanel,\n MatExpansionPanelActionRow,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n MatExpansionPanelDescription,\n MatExpansionPanelContent,\n ],\n})\nexport class MatExpansionModule {}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\n/**\n * Time and timing curve for expansion panel animations.\n * @deprecated No longer used. Will be removed.\n * @breaking-change 21.0.0\n */\nexport const EXPANSION_PANEL_ANIMATION_TIMING = '225ms cubic-bezier(0.4,0.0,0.2,1)';\n\n/**\n * Animations used by the Material expansion panel.\n *\n * A bug in angular animation's `state` when ViewContainers are moved using ViewContainerRef.move()\n * causes the animation state of moved components to become `void` upon exit, and not update again\n * upon reentry into the DOM. This can lead a to situation for the expansion panel where the state\n * of the panel is `expanded` or `collapsed` but the animation state is `void`.\n *\n * To correctly handle animating to the next state, we animate between `void` and `collapsed` which\n * are defined to have the same styles. Since angular animates from the current styles to the\n * destination state's style definition, in situations where we are moving from `void`'s styles to\n * `collapsed` this acts a noop since no style values change.\n *\n * In the case where angular's animation state is out of sync with the expansion panel's state, the\n * expansion panel being `expanded` and angular animations being `void`, the animation from the\n * `expanded`'s effective styles (though in a `void` animation state) to the collapsed state will\n * occur as expected.\n *\n * Angular Bug: https://github.com/angular/angular/issues/18847\n *\n * @docs-private\n * @deprecated No longer being used, to be removed.\n * @breaking-change 21.0.0\n */\nexport const matExpansionAnimations: {\n readonly indicatorRotate: any;\n readonly bodyExpansion: any;\n} = {\n // Represents:\n // trigger('indicatorRotate', [\n // state('collapsed, void', style({transform: 'rotate(0deg)'})),\n // state('expanded', style({transform: 'rotate(180deg)'})),\n // transition(\n // 'expanded <=> collapsed, void => collapsed',\n // animate(EXPANSION_PANEL_ANIMATION_TIMING),\n // ),\n // ])\n\n /** Animation that rotates the indicator arrow. */\n indicatorRotate: {\n type: 7,\n name: 'indicatorRotate',\n definitions: [\n {\n type: 0,\n name: 'collapsed, void',\n styles: {type: 6, styles: {transform: 'rotate(0deg)'}, offset: null},\n },\n {\n type: 0,\n name: 'expanded',\n styles: {type: 6, styles: {transform: 'rotate(180deg)'}, offset: null},\n },\n {\n type: 1,\n expr: 'expanded <=> collapsed, void => collapsed',\n animation: {type: 4, styles: null, timings: '225ms cubic-bezier(0.4,0.0,0.2,1)'},\n options: null,\n },\n ],\n options: {},\n },\n\n // Represents:\n // trigger('bodyExpansion', [\n // state('collapsed, void', style({height: '0px', visibility: 'hidden'})),\n // // Clear the `visibility` while open, otherwise the content will be visible when placed in\n // // a parent that's `visibility: hidden`, because `visibility` doesn't apply to descendants\n // // that have a `visibility` of their own (see #27436).\n // state('expanded', style({height: '*', visibility: ''})),\n // transition(\n // 'expanded <=> collapsed, void => collapsed',\n // animate(EXPANSION_PANEL_ANIMATION_TIMING),\n // ),\n // ])\n\n /** Animation that expands and collapses the panel content. */\n bodyExpansion: {\n type: 7,\n name: 'bodyExpansion',\n definitions: [\n {\n type: 0,\n name: 'collapsed, void',\n styles: {type: 6, styles: {'height': '0px', 'visibility': 'hidden'}, offset: null},\n },\n {\n type: 0,\n name: 'expanded',\n styles: {type: 6, styles: {'height': '*', 'visibility': ''}, offset: null},\n },\n {\n type: 1,\n expr: 'expanded <=> collapsed, void => collapsed',\n animation: {type: 4, styles: null, timings: '225ms cubic-bezier(0.4,0.0,0.2,1)'},\n options: null,\n },\n ],\n options: {},\n },\n};\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"expansion.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/accordion-base.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-panel-base.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-panel-content.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-panel.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-panel.html","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-panel-header.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-panel-header.html","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/accordion.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/expansion/expansion-module.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {InjectionToken} from '@angular/core';\nimport {CdkAccordion} from '@angular/cdk/accordion';\n\n/** MatAccordion's display modes. */\nexport type MatAccordionDisplayMode = 'default' | 'flat';\n\n/** MatAccordion's toggle positions. */\nexport type MatAccordionTogglePosition = 'before' | 'after';\n\n/**\n * Base interface for a `MatAccordion`.\n * @docs-private\n */\nexport interface MatAccordionBase extends CdkAccordion {\n /** Whether the expansion indicator should be hidden. */\n hideToggle: boolean;\n\n /** Display mode used for all expansion panels in the accordion. */\n displayMode: MatAccordionDisplayMode;\n\n /** The position of the expansion indicator. */\n togglePosition: MatAccordionTogglePosition;\n\n /** Handles keyboard events coming in from the panel headers. */\n _handleHeaderKeydown: (event: KeyboardEvent) => void;\n\n /** Handles focus events on the panel headers. */\n _handleHeaderFocus: (header: any) => void;\n}\n\n/**\n * Token used to provide a `MatAccordion` to `MatExpansionPanel`.\n * Used primarily to avoid circular imports between `MatAccordion` and `MatExpansionPanel`.\n */\nexport const MAT_ACCORDION = new InjectionToken<MatAccordionBase>('MAT_ACCORDION');\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {InjectionToken} from '@angular/core';\nimport {CdkAccordionItem} from '@angular/cdk/accordion';\n\n/**\n * Base interface for a `MatExpansionPanel`.\n * @docs-private\n */\nexport interface MatExpansionPanelBase extends CdkAccordionItem {\n /** Whether the toggle indicator should be hidden. */\n hideToggle: boolean;\n}\n\n/**\n * Token used to provide a `MatExpansionPanel` to `MatExpansionPanelContent`.\n * Used to avoid circular imports between `MatExpansionPanel` and `MatExpansionPanelContent`.\n */\nexport const MAT_EXPANSION_PANEL = new InjectionToken<MatExpansionPanelBase>('MAT_EXPANSION_PANEL');\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {Directive, TemplateRef, inject} from '@angular/core';\nimport {MAT_EXPANSION_PANEL, MatExpansionPanelBase} from './expansion-panel-base';\n\n/**\n * Expansion panel content that will be rendered lazily\n * after the panel is opened for the first time.\n */\n@Directive({\n selector: 'ng-template[matExpansionPanelContent]',\n})\nexport class MatExpansionPanelContent {\n _template = inject<TemplateRef<any>>(TemplateRef);\n _expansionPanel = inject<MatExpansionPanelBase>(MAT_EXPANSION_PANEL, {optional: true});\n\n constructor(...args: unknown[]);\n constructor() {}\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {CdkAccordionItem} from '@angular/cdk/accordion';\nimport {UniqueSelectionDispatcher} from '@angular/cdk/collections';\nimport {CdkPortalOutlet, TemplatePortal} from '@angular/cdk/portal';\n\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n Directive,\n ElementRef,\n EventEmitter,\n InjectionToken,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n SimpleChanges,\n ViewChild,\n ViewContainerRef,\n ViewEncapsulation,\n booleanAttribute,\n inject,\n NgZone,\n Renderer2,\n DOCUMENT,\n} from '@angular/core';\nimport {_IdGenerator} from '@angular/cdk/a11y';\nimport {Subject} from 'rxjs';\nimport {filter, startWith, take} from 'rxjs/operators';\nimport {MatAccordionBase, MatAccordionTogglePosition, MAT_ACCORDION} from './accordion-base';\nimport {MAT_EXPANSION_PANEL} from './expansion-panel-base';\nimport {MatExpansionPanelContent} from './expansion-panel-content';\nimport {_animationsDisabled} from '../core';\n\n/** MatExpansionPanel's states. */\nexport type MatExpansionPanelState = 'expanded' | 'collapsed';\n\n/**\n * Object that can be used to override the default options\n * for all of the expansion panels in a module.\n */\nexport interface MatExpansionPanelDefaultOptions {\n /** Height of the header while the panel is expanded. */\n expandedHeight: string;\n\n /** Height of the header while the panel is collapsed. */\n collapsedHeight: string;\n\n /** Whether the toggle indicator should be hidden. */\n hideToggle: boolean;\n}\n\n/**\n * Injection token that can be used to configure the default\n * options for the expansion panel component.\n */\nexport const MAT_EXPANSION_PANEL_DEFAULT_OPTIONS =\n new InjectionToken<MatExpansionPanelDefaultOptions>('MAT_EXPANSION_PANEL_DEFAULT_OPTIONS');\n\n/**\n * This component can be used as a single element to show expandable content, or as one of\n * multiple children of an element with the MatAccordion directive attached.\n */\n@Component({\n styleUrl: 'expansion-panel.css',\n selector: 'mat-expansion-panel',\n exportAs: 'matExpansionPanel',\n templateUrl: 'expansion-panel.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n // Provide MatAccordion as undefined to prevent nested expansion panels from registering\n // to the same accordion.\n {provide: MAT_ACCORDION, useValue: undefined},\n {provide: MAT_EXPANSION_PANEL, useExisting: MatExpansionPanel},\n ],\n host: {\n 'class': 'mat-expansion-panel',\n '[class.mat-expanded]': 'expanded',\n '[class.mat-expansion-panel-spacing]': '_hasSpacing()',\n },\n imports: [CdkPortalOutlet],\n})\nexport class MatExpansionPanel\n extends CdkAccordionItem\n implements AfterContentInit, OnChanges, OnDestroy\n{\n private _viewContainerRef = inject(ViewContainerRef);\n private readonly _animationsDisabled = _animationsDisabled();\n private _document = inject(DOCUMENT);\n private _ngZone = inject(NgZone);\n private _elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private _renderer = inject(Renderer2);\n private _cleanupTransitionEnd: (() => void) | undefined;\n\n /** Whether the toggle indicator should be hidden. */\n @Input({transform: booleanAttribute})\n get hideToggle(): boolean {\n return this._hideToggle || (this.accordion && this.accordion.hideToggle);\n }\n set hideToggle(value: boolean) {\n this._hideToggle = value;\n }\n private _hideToggle = false;\n\n /** The position of the expansion indicator. */\n @Input()\n get togglePosition(): MatAccordionTogglePosition {\n return this._togglePosition || (this.accordion && this.accordion.togglePosition);\n }\n set togglePosition(value: MatAccordionTogglePosition) {\n this._togglePosition = value;\n }\n private _togglePosition: MatAccordionTogglePosition;\n\n /** An event emitted after the body's expansion animation happens. */\n @Output() readonly afterExpand = new EventEmitter<void>();\n\n /** An event emitted after the body's collapse animation happens. */\n @Output() readonly afterCollapse = new EventEmitter<void>();\n\n /** Stream that emits for changes in `@Input` properties. */\n readonly _inputChanges = new Subject<SimpleChanges>();\n\n /** Optionally defined accordion the expansion panel belongs to. */\n override accordion = inject<MatAccordionBase>(MAT_ACCORDION, {optional: true, skipSelf: true})!;\n\n /** Content that will be rendered lazily. */\n @ContentChild(MatExpansionPanelContent) _lazyContent: MatExpansionPanelContent;\n\n /** Element containing the panel's user-provided content. */\n @ViewChild('body') _body: ElementRef<HTMLElement>;\n\n /** Element wrapping the panel body. */\n @ViewChild('bodyWrapper')\n protected _bodyWrapper: ElementRef<HTMLElement> | undefined;\n\n /** Portal holding the user's content. */\n _portal: TemplatePortal;\n\n /** ID for the associated header element. Used for a11y labelling. */\n _headerId: string = inject(_IdGenerator).getId('mat-expansion-panel-header-');\n\n constructor(...args: unknown[]);\n\n constructor() {\n super();\n\n const defaultOptions = inject<MatExpansionPanelDefaultOptions>(\n MAT_EXPANSION_PANEL_DEFAULT_OPTIONS,\n {optional: true},\n );\n\n this._expansionDispatcher = inject(UniqueSelectionDispatcher);\n\n if (defaultOptions) {\n this.hideToggle = defaultOptions.hideToggle;\n }\n }\n\n /** Determines whether the expansion panel should have spacing between it and its siblings. */\n _hasSpacing(): boolean {\n if (this.accordion) {\n return this.expanded && this.accordion.displayMode === 'default';\n }\n return false;\n }\n\n /** Gets the expanded state string. */\n _getExpandedState(): MatExpansionPanelState {\n return this.expanded ? 'expanded' : 'collapsed';\n }\n\n /** Toggles the expanded state of the expansion panel. */\n override toggle(): void {\n this.expanded = !this.expanded;\n }\n\n /** Sets the expanded state of the expansion panel to false. */\n override close(): void {\n this.expanded = false;\n }\n\n /** Sets the expanded state of the expansion panel to true. */\n override open(): void {\n this.expanded = true;\n }\n\n ngAfterContentInit() {\n if (this._lazyContent && this._lazyContent._expansionPanel === this) {\n // Render the content as soon as the panel becomes open.\n this.opened\n .pipe(\n startWith(null),\n filter(() => this.expanded && !this._portal),\n take(1),\n )\n .subscribe(() => {\n this._portal = new TemplatePortal(this._lazyContent._template, this._viewContainerRef);\n });\n }\n\n this._setupAnimationEvents();\n }\n\n ngOnChanges(changes: SimpleChanges) {\n this._inputChanges.next(changes);\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n this._cleanupTransitionEnd?.();\n this._inputChanges.complete();\n }\n\n /** Checks whether the expansion panel's content contains the currently-focused element. */\n _containsFocus(): boolean {\n if (this._body) {\n const focusedElement = this._document.activeElement;\n const bodyElement = this._body.nativeElement;\n return focusedElement === bodyElement || bodyElement.contains(focusedElement);\n }\n\n return false;\n }\n\n private _transitionEndListener = ({target, propertyName}: TransitionEvent) => {\n if (target === this._bodyWrapper?.nativeElement && propertyName === 'grid-template-rows') {\n this._ngZone.run(() => {\n if (this.expanded) {\n this.afterExpand.emit();\n } else {\n this.afterCollapse.emit();\n }\n });\n }\n };\n\n protected _setupAnimationEvents() {\n // This method is defined separately, because we need to\n // disable this logic in some internal components.\n this._ngZone.runOutsideAngular(() => {\n if (this._animationsDisabled) {\n this.opened.subscribe(() => this._ngZone.run(() => this.afterExpand.emit()));\n this.closed.subscribe(() => this._ngZone.run(() => this.afterCollapse.emit()));\n } else {\n setTimeout(() => {\n const element = this._elementRef.nativeElement;\n this._cleanupTransitionEnd = this._renderer.listen(\n element,\n 'transitionend',\n this._transitionEndListener,\n );\n element.classList.add('mat-expansion-panel-animations-enabled');\n }, 200);\n }\n });\n }\n}\n\n/**\n * Actions of a `<mat-expansion-panel>`.\n */\n@Directive({\n selector: 'mat-action-row',\n host: {\n class: 'mat-action-row',\n },\n})\nexport class MatExpansionPanelActionRow {}\n","<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","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {FocusableOption, FocusMonitor, FocusOrigin} from '@angular/cdk/a11y';\nimport {ENTER, hasModifierKey, SPACE} from '@angular/cdk/keycodes';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n Directive,\n ElementRef,\n Input,\n numberAttribute,\n OnDestroy,\n ViewEncapsulation,\n inject,\n HostAttributeToken,\n} from '@angular/core';\nimport {EMPTY, merge, Subscription} from 'rxjs';\nimport {filter} from 'rxjs/operators';\nimport {MatAccordionTogglePosition} from './accordion-base';\nimport {\n MatExpansionPanel,\n MatExpansionPanelDefaultOptions,\n MAT_EXPANSION_PANEL_DEFAULT_OPTIONS,\n} from './expansion-panel';\nimport {_CdkPrivateStyleLoader} from '@angular/cdk/private';\nimport {_StructuralStylesLoader} from '../core';\n\n/**\n * Header element of a `<mat-expansion-panel>`.\n */\n@Component({\n selector: 'mat-expansion-panel-header',\n styleUrl: 'expansion-panel-header.css',\n templateUrl: 'expansion-panel-header.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'class': 'mat-expansion-panel-header mat-focus-indicator',\n 'role': 'button',\n '[attr.id]': 'panel._headerId',\n '[attr.tabindex]': 'disabled ? -1 : tabIndex',\n '[attr.aria-controls]': '_getPanelId()',\n '[attr.aria-expanded]': '_isExpanded()',\n '[attr.aria-disabled]': 'panel.disabled',\n '[class.mat-expanded]': '_isExpanded()',\n '[class.mat-expansion-toggle-indicator-after]': `_getTogglePosition() === 'after'`,\n '[class.mat-expansion-toggle-indicator-before]': `_getTogglePosition() === 'before'`,\n '[style.height]': '_getHeaderHeight()',\n '(click)': '_toggle()',\n '(keydown)': '_keydown($event)',\n },\n})\nexport class MatExpansionPanelHeader implements AfterViewInit, OnDestroy, FocusableOption {\n panel = inject(MatExpansionPanel, {host: true});\n private _element = inject(ElementRef);\n private _focusMonitor = inject(FocusMonitor);\n private _changeDetectorRef = inject(ChangeDetectorRef);\n\n private _parentChangeSubscription = Subscription.EMPTY;\n\n constructor(...args: unknown[]);\n\n constructor() {\n inject(_CdkPrivateStyleLoader).load(_StructuralStylesLoader);\n const panel = this.panel;\n const defaultOptions = inject<MatExpansionPanelDefaultOptions>(\n MAT_EXPANSION_PANEL_DEFAULT_OPTIONS,\n {optional: true},\n );\n const tabIndex = inject(new HostAttributeToken('tabindex'), {optional: true});\n\n const accordionHideToggleChange = panel.accordion\n ? panel.accordion._stateChanges.pipe(\n filter(changes => !!(changes['hideToggle'] || changes['togglePosition'])),\n )\n : EMPTY;\n this.tabIndex = parseInt(tabIndex || '') || 0;\n\n // Since the toggle state depends on an @Input on the panel, we\n // need to subscribe and trigger change detection manually.\n this._parentChangeSubscription = merge(\n panel.opened,\n panel.closed,\n accordionHideToggleChange,\n panel._inputChanges.pipe(\n filter(changes => {\n return !!(changes['hideToggle'] || changes['disabled'] || changes['togglePosition']);\n }),\n ),\n ).subscribe(() => this._changeDetectorRef.markForCheck());\n\n // Avoids focus being lost if the panel contained the focused element and was closed.\n panel.closed\n .pipe(filter(() => panel._containsFocus()))\n .subscribe(() => this._focusMonitor.focusVia(this._element, 'program'));\n\n if (defaultOptions) {\n this.expandedHeight = defaultOptions.expandedHeight;\n this.collapsedHeight = defaultOptions.collapsedHeight;\n }\n }\n\n /** Height of the header while the panel is expanded. */\n @Input() expandedHeight: string;\n\n /** Height of the header while the panel is collapsed. */\n @Input() collapsedHeight: string;\n\n /** Tab index of the header. */\n @Input({\n transform: (value: unknown) => (value == null ? 0 : numberAttribute(value)),\n })\n tabIndex: number = 0;\n\n /**\n * Whether the associated panel is disabled. Implemented as a part of `FocusableOption`.\n * @docs-private\n */\n get disabled(): boolean {\n return this.panel.disabled;\n }\n\n /** Toggles the expanded state of the panel. */\n _toggle(): void {\n if (!this.disabled) {\n this.panel.toggle();\n }\n }\n\n /** Gets whether the panel is expanded. */\n _isExpanded(): boolean {\n return this.panel.expanded;\n }\n\n /** Gets the expanded state string of the panel. */\n _getExpandedState(): string {\n return this.panel._getExpandedState();\n }\n\n /** Gets the panel id. */\n _getPanelId(): string {\n return this.panel.id;\n }\n\n /** Gets the toggle position for the header. */\n _getTogglePosition(): MatAccordionTogglePosition {\n return this.panel.togglePosition;\n }\n\n /** Gets whether the expand indicator should be shown. */\n _showToggle(): boolean {\n return !this.panel.hideToggle && !this.panel.disabled;\n }\n\n /**\n * Gets the current height of the header. Null if no custom height has been\n * specified, and if the default height from the stylesheet should be used.\n */\n _getHeaderHeight(): string | null {\n const isExpanded = this._isExpanded();\n if (isExpanded && this.expandedHeight) {\n return this.expandedHeight;\n } else if (!isExpanded && this.collapsedHeight) {\n return this.collapsedHeight;\n }\n return null;\n }\n\n /** Handle keydown event calling to toggle() if appropriate. */\n _keydown(event: KeyboardEvent) {\n switch (event.keyCode) {\n // Toggle for space and enter keys.\n case SPACE:\n case ENTER:\n if (!hasModifierKey(event)) {\n event.preventDefault();\n this._toggle();\n }\n\n break;\n default:\n if (this.panel.accordion) {\n this.panel.accordion._handleHeaderKeydown(event);\n }\n\n return;\n }\n }\n\n /**\n * Focuses the panel header. Implemented as a part of `FocusableOption`.\n * @param origin Origin of the action that triggered the focus.\n * @docs-private\n */\n focus(origin?: FocusOrigin, options?: FocusOptions) {\n if (origin) {\n this._focusMonitor.focusVia(this._element, origin, options);\n } else {\n this._element.nativeElement.focus(options);\n }\n }\n\n ngAfterViewInit() {\n this._focusMonitor.monitor(this._element).subscribe(origin => {\n if (origin && this.panel.accordion) {\n this.panel.accordion._handleHeaderFocus(this);\n }\n });\n }\n\n ngOnDestroy() {\n this._parentChangeSubscription.unsubscribe();\n this._focusMonitor.stopMonitoring(this._element);\n }\n}\n\n/**\n * Description element of a `<mat-expansion-panel-header>`.\n */\n@Directive({\n selector: 'mat-panel-description',\n host: {\n class: 'mat-expansion-panel-header-description',\n },\n})\nexport class MatExpansionPanelDescription {}\n\n/**\n * Title element of a `<mat-expansion-panel-header>`.\n */\n@Directive({\n selector: 'mat-panel-title',\n host: {\n class: 'mat-expansion-panel-header-title',\n },\n})\nexport class MatExpansionPanelTitle {}\n","<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","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n Directive,\n Input,\n ContentChildren,\n QueryList,\n AfterContentInit,\n OnDestroy,\n booleanAttribute,\n} from '@angular/core';\nimport {CdkAccordion} from '@angular/cdk/accordion';\nimport {FocusKeyManager} from '@angular/cdk/a11y';\nimport {startWith} from 'rxjs/operators';\nimport {\n MAT_ACCORDION,\n MatAccordionBase,\n MatAccordionDisplayMode,\n MatAccordionTogglePosition,\n} from './accordion-base';\nimport {MatExpansionPanelHeader} from './expansion-panel-header';\n\n/**\n * Directive for a Material Design Accordion.\n */\n@Directive({\n selector: 'mat-accordion',\n exportAs: 'matAccordion',\n providers: [\n {\n provide: MAT_ACCORDION,\n useExisting: MatAccordion,\n },\n ],\n host: {\n class: 'mat-accordion',\n // Class binding which is only used by the test harness as there is no other\n // way for the harness to detect if multiple panel support is enabled.\n '[class.mat-accordion-multi]': 'this.multi',\n },\n})\nexport class MatAccordion\n extends CdkAccordion\n implements MatAccordionBase, AfterContentInit, OnDestroy\n{\n private _keyManager: FocusKeyManager<MatExpansionPanelHeader>;\n\n /** Headers belonging to this accordion. */\n private _ownHeaders = new QueryList<MatExpansionPanelHeader>();\n\n /** All headers inside the accordion. Includes headers inside nested accordions. */\n @ContentChildren(MatExpansionPanelHeader, {descendants: true})\n _headers: QueryList<MatExpansionPanelHeader>;\n\n /** Whether the expansion indicator should be hidden. */\n @Input({transform: booleanAttribute})\n hideToggle: boolean = false;\n\n /**\n * Display mode used for all expansion panels in the accordion. Currently two display\n * modes exist:\n * default - a gutter-like spacing is placed around any expanded panel, placing the expanded\n * panel at a different elevation from the rest of the accordion.\n * flat - no spacing is placed around expanded panels, showing all panels at the same\n * elevation.\n */\n @Input() displayMode: MatAccordionDisplayMode = 'default';\n\n /** The position of the expansion indicator. */\n @Input() togglePosition: MatAccordionTogglePosition = 'after';\n\n ngAfterContentInit() {\n this._headers.changes\n .pipe(startWith(this._headers))\n .subscribe((headers: QueryList<MatExpansionPanelHeader>) => {\n this._ownHeaders.reset(headers.filter(header => header.panel.accordion === this));\n this._ownHeaders.notifyOnChanges();\n });\n\n this._keyManager = new FocusKeyManager(this._ownHeaders).withWrap().withHomeAndEnd();\n }\n\n /** Handles keyboard events coming in from the panel headers. */\n _handleHeaderKeydown(event: KeyboardEvent) {\n this._keyManager.onKeydown(event);\n }\n\n _handleHeaderFocus(header: MatExpansionPanelHeader) {\n this._keyManager.updateActiveItem(header);\n }\n\n override ngOnDestroy() {\n super.ngOnDestroy();\n this._keyManager?.destroy();\n this._ownHeaders.destroy();\n }\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {BidiModule} from '@angular/cdk/bidi';\nimport {CdkAccordionModule} from '@angular/cdk/accordion';\nimport {PortalModule} from '@angular/cdk/portal';\nimport {NgModule} from '@angular/core';\nimport {MatAccordion} from './accordion';\nimport {MatExpansionPanel, MatExpansionPanelActionRow} from './expansion-panel';\nimport {MatExpansionPanelContent} from './expansion-panel-content';\nimport {\n MatExpansionPanelDescription,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n} from './expansion-panel-header';\n\n@NgModule({\n imports: [\n CdkAccordionModule,\n PortalModule,\n MatAccordion,\n MatExpansionPanel,\n MatExpansionPanelActionRow,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n MatExpansionPanelDescription,\n MatExpansionPanelContent,\n ],\n exports: [\n BidiModule,\n MatAccordion,\n MatExpansionPanel,\n MatExpansionPanelActionRow,\n MatExpansionPanelHeader,\n MatExpansionPanelTitle,\n MatExpansionPanelDescription,\n MatExpansionPanelContent,\n ],\n})\nexport class MatExpansionModule {}\n"],"names":[],"mappings":"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"}
|
package/fesm2022/form-field.mjs
CHANGED
|
@@ -1,62 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
export {
|
|
1
|
+
import { MatFormField, MatLabel, MatError, MatHint, MatPrefix, MatSuffix } from './form-field2.mjs';
|
|
2
|
+
export { MAT_ERROR, MAT_FORM_FIELD, MAT_FORM_FIELD_DEFAULT_OPTIONS, MAT_PREFIX, MAT_SUFFIX, MatFormFieldControl, getMatFormFieldDuplicatedHintError, getMatFormFieldMissingControlError, getMatFormFieldPlaceholderConflictError } from './form-field2.mjs';
|
|
3
|
+
import { BidiModule } from '@angular/cdk/bidi';
|
|
4
|
+
import { ObserversModule } from '@angular/cdk/observers';
|
|
5
|
+
import * as i0 from '@angular/core';
|
|
6
|
+
import { NgModule } from '@angular/core';
|
|
3
7
|
import '@angular/cdk/a11y';
|
|
4
|
-
import '@angular/cdk/bidi';
|
|
5
8
|
import '@angular/cdk/coercion';
|
|
6
9
|
import '@angular/cdk/platform';
|
|
7
10
|
import '@angular/common';
|
|
8
|
-
import '@angular/core';
|
|
9
11
|
import 'rxjs';
|
|
10
12
|
import 'rxjs/operators';
|
|
11
13
|
import '@angular/cdk/observers/private';
|
|
12
14
|
import './animation.mjs';
|
|
13
15
|
import '@angular/cdk/layout';
|
|
14
|
-
import '@angular/cdk/observers';
|
|
15
|
-
import './common-module.mjs';
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
// style({opacity: 0, transform: 'translateY(-5px)'}),
|
|
30
|
-
// animate('300ms cubic-bezier(0.55, 0, 0.55, 0.2)'),
|
|
31
|
-
// ]),
|
|
32
|
-
// ])
|
|
33
|
-
/** Animation that transitions the form field's error and hint messages. */
|
|
34
|
-
transitionMessages: {
|
|
35
|
-
type: 7,
|
|
36
|
-
name: 'transitionMessages',
|
|
37
|
-
definitions: [
|
|
38
|
-
{
|
|
39
|
-
type: 0,
|
|
40
|
-
name: 'enter',
|
|
41
|
-
styles: {
|
|
42
|
-
type: 6,
|
|
43
|
-
styles: { opacity: 1, transform: 'translateY(0%)' },
|
|
44
|
-
offset: null,
|
|
45
|
-
},
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
type: 1,
|
|
49
|
-
expr: 'void => enter',
|
|
50
|
-
animation: [
|
|
51
|
-
{ type: 6, styles: { opacity: 0, transform: 'translateY(-5px)' }, offset: null },
|
|
52
|
-
{ type: 4, styles: null, timings: '300ms cubic-bezier(0.55, 0, 0.55, 0.2)' },
|
|
53
|
-
],
|
|
54
|
-
options: null,
|
|
55
|
-
},
|
|
56
|
-
],
|
|
57
|
-
options: {},
|
|
58
|
-
},
|
|
59
|
-
};
|
|
17
|
+
class MatFormFieldModule {
|
|
18
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatFormFieldModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
19
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatFormFieldModule, imports: [ObserversModule, MatFormField, MatLabel, MatError, MatHint, MatPrefix, MatSuffix], exports: [MatFormField, MatLabel, MatHint, MatError, MatPrefix, MatSuffix, BidiModule] });
|
|
20
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatFormFieldModule, imports: [ObserversModule, MatFormField, BidiModule] });
|
|
21
|
+
}
|
|
22
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatFormFieldModule, decorators: [{
|
|
23
|
+
type: NgModule,
|
|
24
|
+
args: [{
|
|
25
|
+
imports: [ObserversModule, MatFormField, MatLabel, MatError, MatHint, MatPrefix, MatSuffix],
|
|
26
|
+
exports: [MatFormField, MatLabel, MatHint, MatError, MatPrefix, MatSuffix, BidiModule],
|
|
27
|
+
}]
|
|
28
|
+
}] });
|
|
60
29
|
|
|
61
|
-
export {
|
|
30
|
+
export { MatError, MatFormField, MatFormFieldModule, MatHint, MatLabel, MatPrefix, MatSuffix };
|
|
62
31
|
//# sourceMappingURL=form-field.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-field.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/form-field/form-field-
|
|
1
|
+
{"version":3,"file":"form-field.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/form-field/form-field-module.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {BidiModule} from '@angular/cdk/bidi';\nimport {ObserversModule} from '@angular/cdk/observers';\nimport {NgModule} from '@angular/core';\nimport {MatError} from './directives/error';\nimport {MatHint} from './directives/hint';\nimport {MatLabel} from './directives/label';\nimport {MatPrefix} from './directives/prefix';\nimport {MatSuffix} from './directives/suffix';\nimport {MatFormField} from './form-field';\n\n@NgModule({\n imports: [ObserversModule, MatFormField, MatLabel, MatError, MatHint, MatPrefix, MatSuffix],\n exports: [MatFormField, MatLabel, MatHint, MatError, MatPrefix, MatSuffix, BidiModule],\n})\nexport class MatFormFieldModule {}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;MAsBa,kBAAkB,CAAA;8GAAlB,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;+GAAlB,kBAAkB,EAAA,OAAA,EAAA,CAHnB,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,CAAA,EAAA,OAAA,EAAA,CAChF,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAA,EAAA,CAAA;AAE1E,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,eAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,kBAAkB,EAHnB,OAAA,EAAA,CAAA,eAAe,EAAE,YAAY,EACoC,UAAU,CAAA,EAAA,CAAA;;kGAE1E,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAJ9B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC;AAC3F,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC;AACvF,iBAAA;;;;;"}
|
package/fesm2022/grid-list.mjs
CHANGED
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { TileCoordinator } from './public-api.mjs';
|
|
2
2
|
export { ɵTileCoordinator } from './public-api.mjs';
|
|
3
3
|
import { setLines, MatLine, MatLineModule } from './line.mjs';
|
|
4
|
+
import { Directionality, BidiModule } from '@angular/cdk/bidi';
|
|
4
5
|
import * as i0 from '@angular/core';
|
|
5
6
|
import { InjectionToken, inject, ElementRef, Component, ViewEncapsulation, ChangeDetectionStrategy, Input, ContentChildren, Directive, NgModule } from '@angular/core';
|
|
6
7
|
import { coerceNumberProperty } from '@angular/cdk/coercion';
|
|
7
|
-
import { Directionality } from '@angular/cdk/bidi';
|
|
8
|
-
import { MatCommonModule } from './common-module.mjs';
|
|
9
8
|
import 'rxjs/operators';
|
|
10
|
-
import '@angular/cdk/a11y';
|
|
11
9
|
|
|
12
10
|
/**
|
|
13
11
|
* Injection token used to provide a grid list to a tile and to avoid circular imports.
|
|
@@ -496,30 +494,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2",
|
|
|
496
494
|
class MatGridListModule {
|
|
497
495
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatGridListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
498
496
|
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatGridListModule, imports: [MatLineModule,
|
|
499
|
-
MatCommonModule,
|
|
500
497
|
MatGridList,
|
|
501
498
|
MatGridTile,
|
|
502
499
|
MatGridTileText,
|
|
503
500
|
MatGridTileHeaderCssMatStyler,
|
|
504
501
|
MatGridTileFooterCssMatStyler,
|
|
505
|
-
MatGridAvatarCssMatStyler], exports: [
|
|
502
|
+
MatGridAvatarCssMatStyler], exports: [BidiModule,
|
|
503
|
+
MatGridList,
|
|
506
504
|
MatGridTile,
|
|
507
505
|
MatGridTileText,
|
|
508
506
|
MatLineModule,
|
|
509
|
-
MatCommonModule,
|
|
510
507
|
MatGridTileHeaderCssMatStyler,
|
|
511
508
|
MatGridTileFooterCssMatStyler,
|
|
512
509
|
MatGridAvatarCssMatStyler] });
|
|
513
|
-
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatGridListModule, imports: [MatLineModule,
|
|
514
|
-
|
|
515
|
-
MatCommonModule] });
|
|
510
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatGridListModule, imports: [MatLineModule, BidiModule,
|
|
511
|
+
MatLineModule] });
|
|
516
512
|
}
|
|
517
513
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2", ngImport: i0, type: MatGridListModule, decorators: [{
|
|
518
514
|
type: NgModule,
|
|
519
515
|
args: [{
|
|
520
516
|
imports: [
|
|
521
517
|
MatLineModule,
|
|
522
|
-
MatCommonModule,
|
|
523
518
|
MatGridList,
|
|
524
519
|
MatGridTile,
|
|
525
520
|
MatGridTileText,
|
|
@@ -528,11 +523,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.0-next.2",
|
|
|
528
523
|
MatGridAvatarCssMatStyler,
|
|
529
524
|
],
|
|
530
525
|
exports: [
|
|
526
|
+
BidiModule,
|
|
531
527
|
MatGridList,
|
|
532
528
|
MatGridTile,
|
|
533
529
|
MatGridTileText,
|
|
534
530
|
MatLineModule,
|
|
535
|
-
MatCommonModule,
|
|
536
531
|
MatGridTileHeaderCssMatStyler,
|
|
537
532
|
MatGridTileFooterCssMatStyler,
|
|
538
533
|
MatGridAvatarCssMatStyler,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid-list.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-list-base.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-tile.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-tile.html","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-tile-text.html","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/tile-styler.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-list.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-list.html","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-list-module.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {InjectionToken} from '@angular/core';\n\n/**\n * Injection token used to provide a grid list to a tile and to avoid circular imports.\n * @docs-private\n */\nexport const MAT_GRID_LIST = new InjectionToken<MatGridListBase>('MAT_GRID_LIST');\n\n/**\n * Base interface for a `MatGridList`.\n * @docs-private\n */\nexport interface MatGridListBase {\n cols: number;\n gutterSize: string;\n rowHeight: number | string;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n Component,\n ViewEncapsulation,\n ElementRef,\n Input,\n ContentChildren,\n QueryList,\n AfterContentInit,\n Directive,\n ChangeDetectionStrategy,\n inject,\n} from '@angular/core';\nimport {MatLine, setLines} from '../core';\nimport {coerceNumberProperty, NumberInput} from '@angular/cdk/coercion';\nimport {MAT_GRID_LIST, MatGridListBase} from './grid-list-base';\n\n@Component({\n selector: 'mat-grid-tile',\n exportAs: 'matGridTile',\n host: {\n 'class': 'mat-grid-tile',\n // Ensures that the \"rowspan\" and \"colspan\" input value is reflected in\n // the DOM. This is needed for the grid-tile harness.\n '[attr.rowspan]': 'rowspan',\n '[attr.colspan]': 'colspan',\n },\n templateUrl: 'grid-tile.html',\n styleUrl: 'grid-list.css',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MatGridTile {\n private _element = inject<ElementRef<HTMLElement>>(ElementRef);\n _gridList? = inject<MatGridListBase>(MAT_GRID_LIST, {optional: true});\n\n _rowspan: number = 1;\n _colspan: number = 1;\n\n constructor(...args: unknown[]);\n constructor() {}\n\n /** Amount of rows that the grid tile takes up. */\n @Input()\n get rowspan(): number {\n return this._rowspan;\n }\n set rowspan(value: NumberInput) {\n this._rowspan = Math.round(coerceNumberProperty(value));\n }\n\n /** Amount of columns that the grid tile takes up. */\n @Input()\n get colspan(): number {\n return this._colspan;\n }\n set colspan(value: NumberInput) {\n this._colspan = Math.round(coerceNumberProperty(value));\n }\n\n /**\n * Sets the style of the grid-tile element. Needs to be set manually to avoid\n * \"Changed after checked\" errors that would occur with HostBinding.\n */\n _setStyle(property: string, value: any): void {\n (this._element.nativeElement.style as any)[property] = value;\n }\n}\n\n@Component({\n selector: 'mat-grid-tile-header, mat-grid-tile-footer',\n templateUrl: 'grid-tile-text.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatGridTileText implements AfterContentInit {\n private _element = inject<ElementRef<HTMLElement>>(ElementRef);\n\n @ContentChildren(MatLine, {descendants: true}) _lines: QueryList<MatLine>;\n\n constructor(...args: unknown[]);\n constructor() {}\n\n ngAfterContentInit() {\n setLines(this._lines, this._element);\n }\n}\n\n/**\n * Directive whose purpose is to add the mat- CSS styling to this selector.\n * @docs-private\n */\n@Directive({\n selector: '[mat-grid-avatar], [matGridAvatar]',\n host: {'class': 'mat-grid-avatar'},\n})\nexport class MatGridAvatarCssMatStyler {}\n\n/**\n * Directive whose purpose is to add the mat- CSS styling to this selector.\n * @docs-private\n */\n@Directive({\n selector: 'mat-grid-tile-header',\n host: {'class': 'mat-grid-tile-header'},\n})\nexport class MatGridTileHeaderCssMatStyler {}\n\n/**\n * Directive whose purpose is to add the mat- CSS styling to this selector.\n * @docs-private\n */\n@Directive({\n selector: 'mat-grid-tile-footer',\n host: {'class': 'mat-grid-tile-footer'},\n})\nexport class MatGridTileFooterCssMatStyler {}\n","<div class=\"mat-grid-tile-content\">\n <ng-content></ng-content>\n</div>\n","<ng-content select=\"[mat-grid-avatar], [matGridAvatar]\"></ng-content>\n<div class=\"mat-grid-list-text\"><ng-content select=\"[mat-line], [matLine]\"></ng-content></div>\n<ng-content></ng-content>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {QueryList} from '@angular/core';\nimport {MatGridTile} from './grid-tile';\nimport {TileCoordinator} from './tile-coordinator';\n\n/**\n * RegExp that can be used to check whether a value will\n * be allowed inside a CSS `calc()` expression.\n */\nconst cssCalcAllowedValue = /^-?\\d+((\\.\\d+)?[A-Za-z%$]?)+$/;\n\n/** Object that can be styled by the `TileStyler`. */\nexport interface TileStyleTarget {\n _setListStyle(style: [string, string | null] | null): void;\n _tiles: QueryList<MatGridTile>;\n}\n\n/**\n * Sets the style properties for an individual tile, given the position calculated by the\n * Tile Coordinator.\n * @docs-private\n */\nexport abstract class TileStyler {\n _gutterSize: string;\n _rows: number = 0;\n _rowspan: number = 0;\n _cols: number;\n _direction: string;\n\n /**\n * Adds grid-list layout info once it is available. Cannot be processed in the constructor\n * because these properties haven't been calculated by that point.\n *\n * @param gutterSize Size of the grid's gutter.\n * @param tracker Instance of the TileCoordinator.\n * @param cols Amount of columns in the grid.\n * @param direction Layout direction of the grid.\n */\n init(gutterSize: string, tracker: TileCoordinator, cols: number, direction: string): void {\n this._gutterSize = normalizeUnits(gutterSize);\n this._rows = tracker.rowCount;\n this._rowspan = tracker.rowspan;\n this._cols = cols;\n this._direction = direction;\n }\n\n /**\n * Computes the amount of space a single 1x1 tile would take up (width or height).\n * Used as a basis for other calculations.\n * @param sizePercent Percent of the total grid-list space that one 1x1 tile would take up.\n * @param gutterFraction Fraction of the gutter size taken up by one 1x1 tile.\n * @return The size of a 1x1 tile as an expression that can be evaluated via CSS calc().\n */\n getBaseTileSize(sizePercent: number, gutterFraction: number): string {\n // Take the base size percent (as would be if evenly dividing the size between cells),\n // and then subtracting the size of one gutter. However, since there are no gutters on the\n // edges, each tile only uses a fraction (gutterShare = numGutters / numCells) of the gutter\n // size. (Imagine having one gutter per tile, and then breaking up the extra gutter on the\n // edge evenly among the cells).\n return `(${sizePercent}% - (${this._gutterSize} * ${gutterFraction}))`;\n }\n\n /**\n * Gets The horizontal or vertical position of a tile, e.g., the 'top' or 'left' property value.\n * @param offset Number of tiles that have already been rendered in the row/column.\n * @param baseSize Base size of a 1x1 tile (as computed in getBaseTileSize).\n * @return Position of the tile as a CSS calc() expression.\n */\n getTilePosition(baseSize: string, offset: number): string {\n // The position comes the size of a 1x1 tile plus gutter for each previous tile in the\n // row/column (offset).\n return offset === 0 ? '0' : calc(`(${baseSize} + ${this._gutterSize}) * ${offset}`);\n }\n\n /**\n * Gets the actual size of a tile, e.g., width or height, taking rowspan or colspan into account.\n * @param baseSize Base size of a 1x1 tile (as computed in getBaseTileSize).\n * @param span The tile's rowspan or colspan.\n * @return Size of the tile as a CSS calc() expression.\n */\n getTileSize(baseSize: string, span: number): string {\n return `(${baseSize} * ${span}) + (${span - 1} * ${this._gutterSize})`;\n }\n\n /**\n * Sets the style properties to be applied to a tile for the given row and column index.\n * @param tile Tile to which to apply the styling.\n * @param rowIndex Index of the tile's row.\n * @param colIndex Index of the tile's column.\n */\n setStyle(tile: MatGridTile, rowIndex: number, colIndex: number): void {\n // Percent of the available horizontal space that one column takes up.\n let percentWidthPerTile = 100 / this._cols;\n\n // Fraction of the vertical gutter size that each column takes up.\n // For example, if there are 5 columns, each column uses 4/5 = 0.8 times the gutter width.\n let gutterWidthFractionPerTile = (this._cols - 1) / this._cols;\n\n this.setColStyles(tile, colIndex, percentWidthPerTile, gutterWidthFractionPerTile);\n this.setRowStyles(tile, rowIndex, percentWidthPerTile, gutterWidthFractionPerTile);\n }\n\n /** Sets the horizontal placement of the tile in the list. */\n setColStyles(tile: MatGridTile, colIndex: number, percentWidth: number, gutterWidth: number) {\n // Base horizontal size of a column.\n let baseTileWidth = this.getBaseTileSize(percentWidth, gutterWidth);\n\n // The width and horizontal position of each tile is always calculated the same way, but the\n // height and vertical position depends on the rowMode.\n let side = this._direction === 'rtl' ? 'right' : 'left';\n tile._setStyle(side, this.getTilePosition(baseTileWidth, colIndex));\n tile._setStyle('width', calc(this.getTileSize(baseTileWidth, tile.colspan)));\n }\n\n /**\n * Calculates the total size taken up by gutters across one axis of a list.\n */\n getGutterSpan(): string {\n return `${this._gutterSize} * (${this._rowspan} - 1)`;\n }\n\n /**\n * Calculates the total size taken up by tiles across one axis of a list.\n * @param tileHeight Height of the tile.\n */\n getTileSpan(tileHeight: string): string {\n return `${this._rowspan} * ${this.getTileSize(tileHeight, 1)}`;\n }\n\n /**\n * Sets the vertical placement of the tile in the list.\n * This method will be implemented by each type of TileStyler.\n * @docs-private\n */\n abstract setRowStyles(\n tile: MatGridTile,\n rowIndex: number,\n percentWidth: number,\n gutterWidth: number,\n ): void;\n\n /**\n * Calculates the computed height and returns the correct style property to set.\n * This method can be implemented by each type of TileStyler.\n * @docs-private\n */\n getComputedHeight(): [string, string] | null {\n return null;\n }\n\n /**\n * Called when the tile styler is swapped out with a different one. To be used for cleanup.\n * @param list Grid list that the styler was attached to.\n * @docs-private\n */\n abstract reset(list: TileStyleTarget): void;\n}\n\n/**\n * This type of styler is instantiated when the user passes in a fixed row height.\n * Example `<mat-grid-list cols=\"3\" rowHeight=\"100px\">`\n * @docs-private\n */\nexport class FixedTileStyler extends TileStyler {\n constructor(public fixedRowHeight: string) {\n super();\n }\n\n override init(gutterSize: string, tracker: TileCoordinator, cols: number, direction: string) {\n super.init(gutterSize, tracker, cols, direction);\n this.fixedRowHeight = normalizeUnits(this.fixedRowHeight);\n\n if (\n !cssCalcAllowedValue.test(this.fixedRowHeight) &&\n (typeof ngDevMode === 'undefined' || ngDevMode)\n ) {\n throw Error(`Invalid value \"${this.fixedRowHeight}\" set as rowHeight.`);\n }\n }\n\n override setRowStyles(tile: MatGridTile, rowIndex: number): void {\n tile._setStyle('top', this.getTilePosition(this.fixedRowHeight, rowIndex));\n tile._setStyle('height', calc(this.getTileSize(this.fixedRowHeight, tile.rowspan)));\n }\n\n override getComputedHeight(): [string, string] {\n return ['height', calc(`${this.getTileSpan(this.fixedRowHeight)} + ${this.getGutterSpan()}`)];\n }\n\n override reset(list: TileStyleTarget) {\n list._setListStyle(['height', null]);\n\n if (list._tiles) {\n list._tiles.forEach(tile => {\n tile._setStyle('top', null);\n tile._setStyle('height', null);\n });\n }\n }\n}\n\n/**\n * This type of styler is instantiated when the user passes in a width:height ratio\n * for the row height. Example `<mat-grid-list cols=\"3\" rowHeight=\"3:1\">`\n * @docs-private\n */\nexport class RatioTileStyler extends TileStyler {\n /** Ratio width:height given by user to determine row height. */\n rowHeightRatio: number;\n baseTileHeight: string;\n\n constructor(value: string) {\n super();\n this._parseRatio(value);\n }\n\n setRowStyles(\n tile: MatGridTile,\n rowIndex: number,\n percentWidth: number,\n gutterWidth: number,\n ): void {\n let percentHeightPerTile = percentWidth / this.rowHeightRatio;\n this.baseTileHeight = this.getBaseTileSize(percentHeightPerTile, gutterWidth);\n\n // Use padding-top and margin-top to maintain the given aspect ratio, as\n // a percentage-based value for these properties is applied versus the *width* of the\n // containing block. See http://www.w3.org/TR/CSS2/box.html#margin-properties\n tile._setStyle('marginTop', this.getTilePosition(this.baseTileHeight, rowIndex));\n tile._setStyle('paddingTop', calc(this.getTileSize(this.baseTileHeight, tile.rowspan)));\n }\n\n override getComputedHeight(): [string, string] {\n return [\n 'paddingBottom',\n calc(`${this.getTileSpan(this.baseTileHeight)} + ${this.getGutterSpan()}`),\n ];\n }\n\n reset(list: TileStyleTarget) {\n list._setListStyle(['paddingBottom', null]);\n\n list._tiles.forEach(tile => {\n tile._setStyle('marginTop', null);\n tile._setStyle('paddingTop', null);\n });\n }\n\n private _parseRatio(value: string): void {\n const ratioParts = value.split(':');\n\n if (ratioParts.length !== 2 && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error(`mat-grid-list: invalid ratio given for row-height: \"${value}\"`);\n }\n\n this.rowHeightRatio = parseFloat(ratioParts[0]) / parseFloat(ratioParts[1]);\n }\n}\n\n/**\n * This type of styler is instantiated when the user selects a \"fit\" row height mode.\n * In other words, the row height will reflect the total height of the container divided\n * by the number of rows. Example `<mat-grid-list cols=\"3\" rowHeight=\"fit\">`\n *\n * @docs-private\n */\nexport class FitTileStyler extends TileStyler {\n setRowStyles(tile: MatGridTile, rowIndex: number): void {\n // Percent of the available vertical space that one row takes up.\n let percentHeightPerTile = 100 / this._rowspan;\n\n // Fraction of the horizontal gutter size that each column takes up.\n let gutterHeightPerTile = (this._rows - 1) / this._rows;\n\n // Base vertical size of a column.\n let baseTileHeight = this.getBaseTileSize(percentHeightPerTile, gutterHeightPerTile);\n\n tile._setStyle('top', this.getTilePosition(baseTileHeight, rowIndex));\n tile._setStyle('height', calc(this.getTileSize(baseTileHeight, tile.rowspan)));\n }\n\n reset(list: TileStyleTarget) {\n if (list._tiles) {\n list._tiles.forEach(tile => {\n tile._setStyle('top', null);\n tile._setStyle('height', null);\n });\n }\n }\n}\n\n/** Wraps a CSS string in a calc function */\nfunction calc(exp: string): string {\n return `calc(${exp})`;\n}\n\n/** Appends pixels to a CSS string if no units are given. */\nfunction normalizeUnits(value: string): string {\n return value.match(/([A-Za-z%]+)$/) ? value : `${value}px`;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n Component,\n ViewEncapsulation,\n AfterContentChecked,\n OnInit,\n Input,\n ContentChildren,\n QueryList,\n ElementRef,\n ChangeDetectionStrategy,\n inject,\n} from '@angular/core';\nimport {MatGridTile} from './grid-tile';\nimport {TileCoordinator} from './tile-coordinator';\nimport {\n TileStyler,\n FitTileStyler,\n RatioTileStyler,\n FixedTileStyler,\n TileStyleTarget,\n} from './tile-styler';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {coerceNumberProperty, NumberInput} from '@angular/cdk/coercion';\nimport {MAT_GRID_LIST, MatGridListBase} from './grid-list-base';\n\n// TODO(kara): Conditional (responsive) column count / row size.\n// TODO(kara): Re-layout on window resize / media change (debounced).\n// TODO(kara): gridTileHeader and gridTileFooter.\n\nconst MAT_FIT_MODE = 'fit';\n\n@Component({\n selector: 'mat-grid-list',\n exportAs: 'matGridList',\n templateUrl: 'grid-list.html',\n styleUrl: 'grid-list.css',\n host: {\n 'class': 'mat-grid-list',\n // Ensures that the \"cols\" input value is reflected in the DOM. This is\n // needed for the grid-list harness.\n '[attr.cols]': 'cols',\n },\n providers: [\n {\n provide: MAT_GRID_LIST,\n useExisting: MatGridList,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatGridList implements MatGridListBase, OnInit, AfterContentChecked, TileStyleTarget {\n private _element = inject<ElementRef<HTMLElement>>(ElementRef);\n private _dir = inject(Directionality, {optional: true});\n\n /** Number of columns being rendered. */\n private _cols: number;\n\n /** Used for determining the position of each tile in the grid. */\n private _tileCoordinator: TileCoordinator;\n\n /**\n * Row height value passed in by user. This can be one of three types:\n * - Number value (ex: \"100px\"): sets a fixed row height to that value\n * - Ratio value (ex: \"4:3\"): sets the row height based on width:height ratio\n * - \"Fit\" mode (ex: \"fit\"): sets the row height to total height divided by number of rows\n */\n private _rowHeight: string;\n\n /** The amount of space between tiles. This will be something like '5px' or '2em'. */\n private _gutter: string = '1px';\n\n /** Sets position and size styles for a tile */\n private _tileStyler: TileStyler;\n\n /** Query list of tiles that are being rendered. */\n @ContentChildren(MatGridTile, {descendants: true}) _tiles: QueryList<MatGridTile>;\n\n constructor(...args: unknown[]);\n constructor() {}\n\n /** Amount of columns in the grid list. */\n @Input()\n get cols(): number {\n return this._cols;\n }\n set cols(value: NumberInput) {\n this._cols = Math.max(1, Math.round(coerceNumberProperty(value)));\n }\n\n /** Size of the grid list's gutter in pixels. */\n @Input()\n get gutterSize(): string {\n return this._gutter;\n }\n set gutterSize(value: string) {\n this._gutter = `${value == null ? '' : value}`;\n }\n\n /** Set internal representation of row height from the user-provided value. */\n @Input()\n get rowHeight(): string | number {\n return this._rowHeight;\n }\n set rowHeight(value: string | number) {\n const newValue = `${value == null ? '' : value}`;\n\n if (newValue !== this._rowHeight) {\n this._rowHeight = newValue;\n this._setTileStyler(this._rowHeight);\n }\n }\n\n ngOnInit() {\n this._checkCols();\n this._checkRowHeight();\n }\n\n /**\n * The layout calculation is fairly cheap if nothing changes, so there's little cost\n * to run it frequently.\n */\n ngAfterContentChecked() {\n this._layoutTiles();\n }\n\n /** Throw a friendly error if cols property is missing */\n private _checkCols() {\n if (!this.cols && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error(\n `mat-grid-list: must pass in number of columns. ` + `Example: <mat-grid-list cols=\"3\">`,\n );\n }\n }\n\n /** Default to equal width:height if rowHeight property is missing */\n private _checkRowHeight(): void {\n if (!this._rowHeight) {\n this._setTileStyler('1:1');\n }\n }\n\n /** Creates correct Tile Styler subtype based on rowHeight passed in by user */\n private _setTileStyler(rowHeight: string): void {\n if (this._tileStyler) {\n this._tileStyler.reset(this);\n }\n\n if (rowHeight === MAT_FIT_MODE) {\n this._tileStyler = new FitTileStyler();\n } else if (rowHeight && rowHeight.indexOf(':') > -1) {\n this._tileStyler = new RatioTileStyler(rowHeight);\n } else {\n this._tileStyler = new FixedTileStyler(rowHeight);\n }\n }\n\n /** Computes and applies the size and position for all children grid tiles. */\n private _layoutTiles(): void {\n if (!this._tileCoordinator) {\n this._tileCoordinator = new TileCoordinator();\n }\n\n const tracker = this._tileCoordinator;\n const tiles = this._tiles.filter(tile => !tile._gridList || tile._gridList === this);\n const direction = this._dir ? this._dir.value : 'ltr';\n\n this._tileCoordinator.update(this.cols, tiles);\n this._tileStyler.init(this.gutterSize, tracker, this.cols, direction);\n\n tiles.forEach((tile, index) => {\n const pos = tracker.positions[index];\n this._tileStyler.setStyle(tile, pos.row, pos.col);\n });\n\n this._setListStyle(this._tileStyler.getComputedHeight());\n }\n\n /** Sets style on the main grid-list element, given the style name and value. */\n _setListStyle(style: [string, string | null] | null): void {\n if (style) {\n (this._element.nativeElement.style as any)[style[0]] = style[1];\n }\n }\n}\n","<div>\n <ng-content></ng-content>\n</div>","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {NgModule} from '@angular/core';\nimport {MatLineModule, MatCommonModule} from '../core';\nimport {\n MatGridTile,\n MatGridTileText,\n MatGridTileFooterCssMatStyler,\n MatGridTileHeaderCssMatStyler,\n MatGridAvatarCssMatStyler,\n} from './grid-tile';\nimport {MatGridList} from './grid-list';\n\n// Export required to fix compiler confusion about import module paths\nexport {MatLine} from '../core';\n\n@NgModule({\n imports: [\n MatLineModule,\n MatCommonModule,\n MatGridList,\n MatGridTile,\n MatGridTileText,\n MatGridTileHeaderCssMatStyler,\n MatGridTileFooterCssMatStyler,\n MatGridAvatarCssMatStyler,\n ],\n exports: [\n MatGridList,\n MatGridTile,\n MatGridTileText,\n MatLineModule,\n MatCommonModule,\n MatGridTileHeaderCssMatStyler,\n MatGridTileFooterCssMatStyler,\n MatGridAvatarCssMatStyler,\n ],\n})\nexport class MatGridListModule {}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"grid-list.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-list-base.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-tile.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-tile.html","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-tile-text.html","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/tile-styler.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-list.ts","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-list.html","../../../../../darwin_arm64-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/grid-list-module.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {InjectionToken} from '@angular/core';\n\n/**\n * Injection token used to provide a grid list to a tile and to avoid circular imports.\n * @docs-private\n */\nexport const MAT_GRID_LIST = new InjectionToken<MatGridListBase>('MAT_GRID_LIST');\n\n/**\n * Base interface for a `MatGridList`.\n * @docs-private\n */\nexport interface MatGridListBase {\n cols: number;\n gutterSize: string;\n rowHeight: number | string;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n Component,\n ViewEncapsulation,\n ElementRef,\n Input,\n ContentChildren,\n QueryList,\n AfterContentInit,\n Directive,\n ChangeDetectionStrategy,\n inject,\n} from '@angular/core';\nimport {MatLine, setLines} from '../core';\nimport {coerceNumberProperty, NumberInput} from '@angular/cdk/coercion';\nimport {MAT_GRID_LIST, MatGridListBase} from './grid-list-base';\n\n@Component({\n selector: 'mat-grid-tile',\n exportAs: 'matGridTile',\n host: {\n 'class': 'mat-grid-tile',\n // Ensures that the \"rowspan\" and \"colspan\" input value is reflected in\n // the DOM. This is needed for the grid-tile harness.\n '[attr.rowspan]': 'rowspan',\n '[attr.colspan]': 'colspan',\n },\n templateUrl: 'grid-tile.html',\n styleUrl: 'grid-list.css',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class MatGridTile {\n private _element = inject<ElementRef<HTMLElement>>(ElementRef);\n _gridList? = inject<MatGridListBase>(MAT_GRID_LIST, {optional: true});\n\n _rowspan: number = 1;\n _colspan: number = 1;\n\n constructor(...args: unknown[]);\n constructor() {}\n\n /** Amount of rows that the grid tile takes up. */\n @Input()\n get rowspan(): number {\n return this._rowspan;\n }\n set rowspan(value: NumberInput) {\n this._rowspan = Math.round(coerceNumberProperty(value));\n }\n\n /** Amount of columns that the grid tile takes up. */\n @Input()\n get colspan(): number {\n return this._colspan;\n }\n set colspan(value: NumberInput) {\n this._colspan = Math.round(coerceNumberProperty(value));\n }\n\n /**\n * Sets the style of the grid-tile element. Needs to be set manually to avoid\n * \"Changed after checked\" errors that would occur with HostBinding.\n */\n _setStyle(property: string, value: any): void {\n (this._element.nativeElement.style as any)[property] = value;\n }\n}\n\n@Component({\n selector: 'mat-grid-tile-header, mat-grid-tile-footer',\n templateUrl: 'grid-tile-text.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatGridTileText implements AfterContentInit {\n private _element = inject<ElementRef<HTMLElement>>(ElementRef);\n\n @ContentChildren(MatLine, {descendants: true}) _lines: QueryList<MatLine>;\n\n constructor(...args: unknown[]);\n constructor() {}\n\n ngAfterContentInit() {\n setLines(this._lines, this._element);\n }\n}\n\n/**\n * Directive whose purpose is to add the mat- CSS styling to this selector.\n * @docs-private\n */\n@Directive({\n selector: '[mat-grid-avatar], [matGridAvatar]',\n host: {'class': 'mat-grid-avatar'},\n})\nexport class MatGridAvatarCssMatStyler {}\n\n/**\n * Directive whose purpose is to add the mat- CSS styling to this selector.\n * @docs-private\n */\n@Directive({\n selector: 'mat-grid-tile-header',\n host: {'class': 'mat-grid-tile-header'},\n})\nexport class MatGridTileHeaderCssMatStyler {}\n\n/**\n * Directive whose purpose is to add the mat- CSS styling to this selector.\n * @docs-private\n */\n@Directive({\n selector: 'mat-grid-tile-footer',\n host: {'class': 'mat-grid-tile-footer'},\n})\nexport class MatGridTileFooterCssMatStyler {}\n","<div class=\"mat-grid-tile-content\">\n <ng-content></ng-content>\n</div>\n","<ng-content select=\"[mat-grid-avatar], [matGridAvatar]\"></ng-content>\n<div class=\"mat-grid-list-text\"><ng-content select=\"[mat-line], [matLine]\"></ng-content></div>\n<ng-content></ng-content>\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {QueryList} from '@angular/core';\nimport {MatGridTile} from './grid-tile';\nimport {TileCoordinator} from './tile-coordinator';\n\n/**\n * RegExp that can be used to check whether a value will\n * be allowed inside a CSS `calc()` expression.\n */\nconst cssCalcAllowedValue = /^-?\\d+((\\.\\d+)?[A-Za-z%$]?)+$/;\n\n/** Object that can be styled by the `TileStyler`. */\nexport interface TileStyleTarget {\n _setListStyle(style: [string, string | null] | null): void;\n _tiles: QueryList<MatGridTile>;\n}\n\n/**\n * Sets the style properties for an individual tile, given the position calculated by the\n * Tile Coordinator.\n * @docs-private\n */\nexport abstract class TileStyler {\n _gutterSize: string;\n _rows: number = 0;\n _rowspan: number = 0;\n _cols: number;\n _direction: string;\n\n /**\n * Adds grid-list layout info once it is available. Cannot be processed in the constructor\n * because these properties haven't been calculated by that point.\n *\n * @param gutterSize Size of the grid's gutter.\n * @param tracker Instance of the TileCoordinator.\n * @param cols Amount of columns in the grid.\n * @param direction Layout direction of the grid.\n */\n init(gutterSize: string, tracker: TileCoordinator, cols: number, direction: string): void {\n this._gutterSize = normalizeUnits(gutterSize);\n this._rows = tracker.rowCount;\n this._rowspan = tracker.rowspan;\n this._cols = cols;\n this._direction = direction;\n }\n\n /**\n * Computes the amount of space a single 1x1 tile would take up (width or height).\n * Used as a basis for other calculations.\n * @param sizePercent Percent of the total grid-list space that one 1x1 tile would take up.\n * @param gutterFraction Fraction of the gutter size taken up by one 1x1 tile.\n * @return The size of a 1x1 tile as an expression that can be evaluated via CSS calc().\n */\n getBaseTileSize(sizePercent: number, gutterFraction: number): string {\n // Take the base size percent (as would be if evenly dividing the size between cells),\n // and then subtracting the size of one gutter. However, since there are no gutters on the\n // edges, each tile only uses a fraction (gutterShare = numGutters / numCells) of the gutter\n // size. (Imagine having one gutter per tile, and then breaking up the extra gutter on the\n // edge evenly among the cells).\n return `(${sizePercent}% - (${this._gutterSize} * ${gutterFraction}))`;\n }\n\n /**\n * Gets The horizontal or vertical position of a tile, e.g., the 'top' or 'left' property value.\n * @param offset Number of tiles that have already been rendered in the row/column.\n * @param baseSize Base size of a 1x1 tile (as computed in getBaseTileSize).\n * @return Position of the tile as a CSS calc() expression.\n */\n getTilePosition(baseSize: string, offset: number): string {\n // The position comes the size of a 1x1 tile plus gutter for each previous tile in the\n // row/column (offset).\n return offset === 0 ? '0' : calc(`(${baseSize} + ${this._gutterSize}) * ${offset}`);\n }\n\n /**\n * Gets the actual size of a tile, e.g., width or height, taking rowspan or colspan into account.\n * @param baseSize Base size of a 1x1 tile (as computed in getBaseTileSize).\n * @param span The tile's rowspan or colspan.\n * @return Size of the tile as a CSS calc() expression.\n */\n getTileSize(baseSize: string, span: number): string {\n return `(${baseSize} * ${span}) + (${span - 1} * ${this._gutterSize})`;\n }\n\n /**\n * Sets the style properties to be applied to a tile for the given row and column index.\n * @param tile Tile to which to apply the styling.\n * @param rowIndex Index of the tile's row.\n * @param colIndex Index of the tile's column.\n */\n setStyle(tile: MatGridTile, rowIndex: number, colIndex: number): void {\n // Percent of the available horizontal space that one column takes up.\n let percentWidthPerTile = 100 / this._cols;\n\n // Fraction of the vertical gutter size that each column takes up.\n // For example, if there are 5 columns, each column uses 4/5 = 0.8 times the gutter width.\n let gutterWidthFractionPerTile = (this._cols - 1) / this._cols;\n\n this.setColStyles(tile, colIndex, percentWidthPerTile, gutterWidthFractionPerTile);\n this.setRowStyles(tile, rowIndex, percentWidthPerTile, gutterWidthFractionPerTile);\n }\n\n /** Sets the horizontal placement of the tile in the list. */\n setColStyles(tile: MatGridTile, colIndex: number, percentWidth: number, gutterWidth: number) {\n // Base horizontal size of a column.\n let baseTileWidth = this.getBaseTileSize(percentWidth, gutterWidth);\n\n // The width and horizontal position of each tile is always calculated the same way, but the\n // height and vertical position depends on the rowMode.\n let side = this._direction === 'rtl' ? 'right' : 'left';\n tile._setStyle(side, this.getTilePosition(baseTileWidth, colIndex));\n tile._setStyle('width', calc(this.getTileSize(baseTileWidth, tile.colspan)));\n }\n\n /**\n * Calculates the total size taken up by gutters across one axis of a list.\n */\n getGutterSpan(): string {\n return `${this._gutterSize} * (${this._rowspan} - 1)`;\n }\n\n /**\n * Calculates the total size taken up by tiles across one axis of a list.\n * @param tileHeight Height of the tile.\n */\n getTileSpan(tileHeight: string): string {\n return `${this._rowspan} * ${this.getTileSize(tileHeight, 1)}`;\n }\n\n /**\n * Sets the vertical placement of the tile in the list.\n * This method will be implemented by each type of TileStyler.\n * @docs-private\n */\n abstract setRowStyles(\n tile: MatGridTile,\n rowIndex: number,\n percentWidth: number,\n gutterWidth: number,\n ): void;\n\n /**\n * Calculates the computed height and returns the correct style property to set.\n * This method can be implemented by each type of TileStyler.\n * @docs-private\n */\n getComputedHeight(): [string, string] | null {\n return null;\n }\n\n /**\n * Called when the tile styler is swapped out with a different one. To be used for cleanup.\n * @param list Grid list that the styler was attached to.\n * @docs-private\n */\n abstract reset(list: TileStyleTarget): void;\n}\n\n/**\n * This type of styler is instantiated when the user passes in a fixed row height.\n * Example `<mat-grid-list cols=\"3\" rowHeight=\"100px\">`\n * @docs-private\n */\nexport class FixedTileStyler extends TileStyler {\n constructor(public fixedRowHeight: string) {\n super();\n }\n\n override init(gutterSize: string, tracker: TileCoordinator, cols: number, direction: string) {\n super.init(gutterSize, tracker, cols, direction);\n this.fixedRowHeight = normalizeUnits(this.fixedRowHeight);\n\n if (\n !cssCalcAllowedValue.test(this.fixedRowHeight) &&\n (typeof ngDevMode === 'undefined' || ngDevMode)\n ) {\n throw Error(`Invalid value \"${this.fixedRowHeight}\" set as rowHeight.`);\n }\n }\n\n override setRowStyles(tile: MatGridTile, rowIndex: number): void {\n tile._setStyle('top', this.getTilePosition(this.fixedRowHeight, rowIndex));\n tile._setStyle('height', calc(this.getTileSize(this.fixedRowHeight, tile.rowspan)));\n }\n\n override getComputedHeight(): [string, string] {\n return ['height', calc(`${this.getTileSpan(this.fixedRowHeight)} + ${this.getGutterSpan()}`)];\n }\n\n override reset(list: TileStyleTarget) {\n list._setListStyle(['height', null]);\n\n if (list._tiles) {\n list._tiles.forEach(tile => {\n tile._setStyle('top', null);\n tile._setStyle('height', null);\n });\n }\n }\n}\n\n/**\n * This type of styler is instantiated when the user passes in a width:height ratio\n * for the row height. Example `<mat-grid-list cols=\"3\" rowHeight=\"3:1\">`\n * @docs-private\n */\nexport class RatioTileStyler extends TileStyler {\n /** Ratio width:height given by user to determine row height. */\n rowHeightRatio: number;\n baseTileHeight: string;\n\n constructor(value: string) {\n super();\n this._parseRatio(value);\n }\n\n setRowStyles(\n tile: MatGridTile,\n rowIndex: number,\n percentWidth: number,\n gutterWidth: number,\n ): void {\n let percentHeightPerTile = percentWidth / this.rowHeightRatio;\n this.baseTileHeight = this.getBaseTileSize(percentHeightPerTile, gutterWidth);\n\n // Use padding-top and margin-top to maintain the given aspect ratio, as\n // a percentage-based value for these properties is applied versus the *width* of the\n // containing block. See http://www.w3.org/TR/CSS2/box.html#margin-properties\n tile._setStyle('marginTop', this.getTilePosition(this.baseTileHeight, rowIndex));\n tile._setStyle('paddingTop', calc(this.getTileSize(this.baseTileHeight, tile.rowspan)));\n }\n\n override getComputedHeight(): [string, string] {\n return [\n 'paddingBottom',\n calc(`${this.getTileSpan(this.baseTileHeight)} + ${this.getGutterSpan()}`),\n ];\n }\n\n reset(list: TileStyleTarget) {\n list._setListStyle(['paddingBottom', null]);\n\n list._tiles.forEach(tile => {\n tile._setStyle('marginTop', null);\n tile._setStyle('paddingTop', null);\n });\n }\n\n private _parseRatio(value: string): void {\n const ratioParts = value.split(':');\n\n if (ratioParts.length !== 2 && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error(`mat-grid-list: invalid ratio given for row-height: \"${value}\"`);\n }\n\n this.rowHeightRatio = parseFloat(ratioParts[0]) / parseFloat(ratioParts[1]);\n }\n}\n\n/**\n * This type of styler is instantiated when the user selects a \"fit\" row height mode.\n * In other words, the row height will reflect the total height of the container divided\n * by the number of rows. Example `<mat-grid-list cols=\"3\" rowHeight=\"fit\">`\n *\n * @docs-private\n */\nexport class FitTileStyler extends TileStyler {\n setRowStyles(tile: MatGridTile, rowIndex: number): void {\n // Percent of the available vertical space that one row takes up.\n let percentHeightPerTile = 100 / this._rowspan;\n\n // Fraction of the horizontal gutter size that each column takes up.\n let gutterHeightPerTile = (this._rows - 1) / this._rows;\n\n // Base vertical size of a column.\n let baseTileHeight = this.getBaseTileSize(percentHeightPerTile, gutterHeightPerTile);\n\n tile._setStyle('top', this.getTilePosition(baseTileHeight, rowIndex));\n tile._setStyle('height', calc(this.getTileSize(baseTileHeight, tile.rowspan)));\n }\n\n reset(list: TileStyleTarget) {\n if (list._tiles) {\n list._tiles.forEach(tile => {\n tile._setStyle('top', null);\n tile._setStyle('height', null);\n });\n }\n }\n}\n\n/** Wraps a CSS string in a calc function */\nfunction calc(exp: string): string {\n return `calc(${exp})`;\n}\n\n/** Appends pixels to a CSS string if no units are given. */\nfunction normalizeUnits(value: string): string {\n return value.match(/([A-Za-z%]+)$/) ? value : `${value}px`;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n Component,\n ViewEncapsulation,\n AfterContentChecked,\n OnInit,\n Input,\n ContentChildren,\n QueryList,\n ElementRef,\n ChangeDetectionStrategy,\n inject,\n} from '@angular/core';\nimport {MatGridTile} from './grid-tile';\nimport {TileCoordinator} from './tile-coordinator';\nimport {\n TileStyler,\n FitTileStyler,\n RatioTileStyler,\n FixedTileStyler,\n TileStyleTarget,\n} from './tile-styler';\nimport {Directionality} from '@angular/cdk/bidi';\nimport {coerceNumberProperty, NumberInput} from '@angular/cdk/coercion';\nimport {MAT_GRID_LIST, MatGridListBase} from './grid-list-base';\n\n// TODO(kara): Conditional (responsive) column count / row size.\n// TODO(kara): Re-layout on window resize / media change (debounced).\n// TODO(kara): gridTileHeader and gridTileFooter.\n\nconst MAT_FIT_MODE = 'fit';\n\n@Component({\n selector: 'mat-grid-list',\n exportAs: 'matGridList',\n templateUrl: 'grid-list.html',\n styleUrl: 'grid-list.css',\n host: {\n 'class': 'mat-grid-list',\n // Ensures that the \"cols\" input value is reflected in the DOM. This is\n // needed for the grid-list harness.\n '[attr.cols]': 'cols',\n },\n providers: [\n {\n provide: MAT_GRID_LIST,\n useExisting: MatGridList,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n})\nexport class MatGridList implements MatGridListBase, OnInit, AfterContentChecked, TileStyleTarget {\n private _element = inject<ElementRef<HTMLElement>>(ElementRef);\n private _dir = inject(Directionality, {optional: true});\n\n /** Number of columns being rendered. */\n private _cols: number;\n\n /** Used for determining the position of each tile in the grid. */\n private _tileCoordinator: TileCoordinator;\n\n /**\n * Row height value passed in by user. This can be one of three types:\n * - Number value (ex: \"100px\"): sets a fixed row height to that value\n * - Ratio value (ex: \"4:3\"): sets the row height based on width:height ratio\n * - \"Fit\" mode (ex: \"fit\"): sets the row height to total height divided by number of rows\n */\n private _rowHeight: string;\n\n /** The amount of space between tiles. This will be something like '5px' or '2em'. */\n private _gutter: string = '1px';\n\n /** Sets position and size styles for a tile */\n private _tileStyler: TileStyler;\n\n /** Query list of tiles that are being rendered. */\n @ContentChildren(MatGridTile, {descendants: true}) _tiles: QueryList<MatGridTile>;\n\n constructor(...args: unknown[]);\n constructor() {}\n\n /** Amount of columns in the grid list. */\n @Input()\n get cols(): number {\n return this._cols;\n }\n set cols(value: NumberInput) {\n this._cols = Math.max(1, Math.round(coerceNumberProperty(value)));\n }\n\n /** Size of the grid list's gutter in pixels. */\n @Input()\n get gutterSize(): string {\n return this._gutter;\n }\n set gutterSize(value: string) {\n this._gutter = `${value == null ? '' : value}`;\n }\n\n /** Set internal representation of row height from the user-provided value. */\n @Input()\n get rowHeight(): string | number {\n return this._rowHeight;\n }\n set rowHeight(value: string | number) {\n const newValue = `${value == null ? '' : value}`;\n\n if (newValue !== this._rowHeight) {\n this._rowHeight = newValue;\n this._setTileStyler(this._rowHeight);\n }\n }\n\n ngOnInit() {\n this._checkCols();\n this._checkRowHeight();\n }\n\n /**\n * The layout calculation is fairly cheap if nothing changes, so there's little cost\n * to run it frequently.\n */\n ngAfterContentChecked() {\n this._layoutTiles();\n }\n\n /** Throw a friendly error if cols property is missing */\n private _checkCols() {\n if (!this.cols && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error(\n `mat-grid-list: must pass in number of columns. ` + `Example: <mat-grid-list cols=\"3\">`,\n );\n }\n }\n\n /** Default to equal width:height if rowHeight property is missing */\n private _checkRowHeight(): void {\n if (!this._rowHeight) {\n this._setTileStyler('1:1');\n }\n }\n\n /** Creates correct Tile Styler subtype based on rowHeight passed in by user */\n private _setTileStyler(rowHeight: string): void {\n if (this._tileStyler) {\n this._tileStyler.reset(this);\n }\n\n if (rowHeight === MAT_FIT_MODE) {\n this._tileStyler = new FitTileStyler();\n } else if (rowHeight && rowHeight.indexOf(':') > -1) {\n this._tileStyler = new RatioTileStyler(rowHeight);\n } else {\n this._tileStyler = new FixedTileStyler(rowHeight);\n }\n }\n\n /** Computes and applies the size and position for all children grid tiles. */\n private _layoutTiles(): void {\n if (!this._tileCoordinator) {\n this._tileCoordinator = new TileCoordinator();\n }\n\n const tracker = this._tileCoordinator;\n const tiles = this._tiles.filter(tile => !tile._gridList || tile._gridList === this);\n const direction = this._dir ? this._dir.value : 'ltr';\n\n this._tileCoordinator.update(this.cols, tiles);\n this._tileStyler.init(this.gutterSize, tracker, this.cols, direction);\n\n tiles.forEach((tile, index) => {\n const pos = tracker.positions[index];\n this._tileStyler.setStyle(tile, pos.row, pos.col);\n });\n\n this._setListStyle(this._tileStyler.getComputedHeight());\n }\n\n /** Sets style on the main grid-list element, given the style name and value. */\n _setListStyle(style: [string, string | null] | null): void {\n if (style) {\n (this._element.nativeElement.style as any)[style[0]] = style[1];\n }\n }\n}\n","<div>\n <ng-content></ng-content>\n</div>","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {BidiModule} from '@angular/cdk/bidi';\nimport {NgModule} from '@angular/core';\nimport {MatLineModule} from '../core';\nimport {MatGridList} from './grid-list';\nimport {\n MatGridAvatarCssMatStyler,\n MatGridTile,\n MatGridTileFooterCssMatStyler,\n MatGridTileHeaderCssMatStyler,\n MatGridTileText,\n} from './grid-tile';\n\n// Export required to fix compiler confusion about import module paths\nexport {MatLine} from '../core';\n\n@NgModule({\n imports: [\n MatLineModule,\n MatGridList,\n MatGridTile,\n MatGridTileText,\n MatGridTileHeaderCssMatStyler,\n MatGridTileFooterCssMatStyler,\n MatGridAvatarCssMatStyler,\n ],\n exports: [\n BidiModule,\n MatGridList,\n MatGridTile,\n MatGridTileText,\n MatLineModule,\n MatGridTileHeaderCssMatStyler,\n MatGridTileFooterCssMatStyler,\n MatGridAvatarCssMatStyler,\n ],\n})\nexport class MatGridListModule {}\n"],"names":[],"mappings":"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"}
|