@angular/material 21.1.0-next.1 → 21.1.0-next.2
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/core/focus-indicators/_private.scss +1 -1
- package/fesm2022/_animation-chunk.mjs.map +1 -1
- package/fesm2022/_date-formats-chunk.mjs.map +1 -1
- package/fesm2022/_date-range-input-harness-chunk.mjs.map +1 -1
- package/fesm2022/_error-options-chunk.mjs +6 -6
- package/fesm2022/_error-options-chunk.mjs.map +1 -1
- package/fesm2022/_error-state-chunk.mjs.map +1 -1
- package/fesm2022/_form-field-chunk.mjs +30 -30
- package/fesm2022/_form-field-chunk.mjs.map +1 -1
- package/fesm2022/_icon-button-chunk.mjs +6 -6
- package/fesm2022/_icon-button-chunk.mjs.map +1 -1
- package/fesm2022/_icon-registry-chunk.mjs +3 -3
- package/fesm2022/_icon-registry-chunk.mjs.map +1 -1
- package/fesm2022/_input-harness-chunk.mjs.map +1 -1
- package/fesm2022/_input-value-accessor-chunk.mjs.map +1 -1
- package/fesm2022/_internal-form-field-chunk.mjs +3 -3
- package/fesm2022/_internal-form-field-chunk.mjs.map +1 -1
- package/fesm2022/_line-chunk.mjs +7 -7
- package/fesm2022/_line-chunk.mjs.map +1 -1
- package/fesm2022/_option-chunk.mjs +6 -6
- package/fesm2022/_option-chunk.mjs.map +1 -1
- package/fesm2022/_option-harness-chunk.mjs.map +1 -1
- package/fesm2022/_option-module-chunk.mjs +4 -4
- package/fesm2022/_option-module-chunk.mjs.map +1 -1
- package/fesm2022/_pseudo-checkbox-chunk.mjs +3 -3
- package/fesm2022/_pseudo-checkbox-chunk.mjs.map +1 -1
- package/fesm2022/_pseudo-checkbox-module-chunk.mjs +4 -4
- package/fesm2022/_pseudo-checkbox-module-chunk.mjs.map +1 -1
- package/fesm2022/_public-api-chunk.mjs.map +1 -1
- package/fesm2022/_ripple-chunk.mjs +6 -6
- package/fesm2022/_ripple-chunk.mjs.map +1 -1
- package/fesm2022/_ripple-loader-chunk.mjs +3 -3
- package/fesm2022/_ripple-loader-chunk.mjs.map +1 -1
- package/fesm2022/_ripple-module-chunk.mjs +4 -4
- package/fesm2022/_ripple-module-chunk.mjs.map +1 -1
- package/fesm2022/_structural-styles-chunk.mjs +3 -3
- package/fesm2022/_structural-styles-chunk.mjs.map +1 -1
- package/fesm2022/_tooltip-chunk.mjs +6 -6
- package/fesm2022/_tooltip-chunk.mjs.map +1 -1
- package/fesm2022/autocomplete-testing.mjs.map +1 -1
- package/fesm2022/autocomplete.mjs +13 -13
- package/fesm2022/autocomplete.mjs.map +1 -1
- package/fesm2022/badge-testing.mjs.map +1 -1
- package/fesm2022/badge.mjs +10 -10
- package/fesm2022/badge.mjs.map +1 -1
- package/fesm2022/bottom-sheet-testing.mjs.map +1 -1
- package/fesm2022/bottom-sheet.mjs +10 -10
- package/fesm2022/bottom-sheet.mjs.map +1 -1
- package/fesm2022/button-testing.mjs.map +1 -1
- package/fesm2022/button-toggle-testing.mjs.map +1 -1
- package/fesm2022/button-toggle.mjs +10 -10
- package/fesm2022/button-toggle.mjs.map +1 -1
- package/fesm2022/button.mjs +13 -13
- package/fesm2022/button.mjs.map +1 -1
- package/fesm2022/card-testing.mjs.map +1 -1
- package/fesm2022/card.mjs +46 -46
- package/fesm2022/card.mjs.map +1 -1
- package/fesm2022/checkbox-testing.mjs.map +1 -1
- package/fesm2022/checkbox.mjs +7 -7
- package/fesm2022/checkbox.mjs.map +1 -1
- package/fesm2022/chips-testing.mjs.map +1 -1
- package/fesm2022/chips.mjs +46 -46
- package/fesm2022/chips.mjs.map +1 -1
- package/fesm2022/core-testing.mjs.map +1 -1
- package/fesm2022/core.mjs +12 -12
- package/fesm2022/core.mjs.map +1 -1
- package/fesm2022/datepicker-testing.mjs.map +1 -1
- package/fesm2022/datepicker.mjs +91 -91
- package/fesm2022/datepicker.mjs.map +1 -1
- package/fesm2022/dialog-testing.mjs.map +1 -1
- package/fesm2022/dialog.mjs +25 -25
- package/fesm2022/dialog.mjs.map +1 -1
- package/fesm2022/divider-testing.mjs.map +1 -1
- package/fesm2022/divider.mjs +7 -7
- package/fesm2022/divider.mjs.map +1 -1
- package/fesm2022/expansion-testing.mjs.map +1 -1
- package/fesm2022/expansion.mjs +25 -25
- package/fesm2022/expansion.mjs.map +1 -1
- package/fesm2022/form-field-testing-control.mjs.map +1 -1
- package/fesm2022/form-field-testing.mjs.map +1 -1
- package/fesm2022/form-field.mjs +4 -4
- package/fesm2022/form-field.mjs.map +1 -1
- package/fesm2022/grid-list-testing.mjs.map +1 -1
- package/fesm2022/grid-list.mjs +22 -22
- package/fesm2022/grid-list.mjs.map +1 -1
- package/fesm2022/icon-testing.mjs +7 -7
- package/fesm2022/icon-testing.mjs.map +1 -1
- package/fesm2022/icon.mjs +7 -7
- package/fesm2022/icon.mjs.map +1 -1
- package/fesm2022/input-testing.mjs.map +1 -1
- package/fesm2022/input.mjs +7 -7
- package/fesm2022/input.mjs.map +1 -1
- package/fesm2022/list-testing.mjs.map +1 -1
- package/fesm2022/list.mjs +49 -49
- package/fesm2022/list.mjs.map +1 -1
- package/fesm2022/material.mjs.map +1 -1
- package/fesm2022/menu-testing.mjs.map +1 -1
- package/fesm2022/menu.mjs +22 -22
- package/fesm2022/menu.mjs.map +1 -1
- package/fesm2022/paginator-testing.mjs.map +1 -1
- package/fesm2022/paginator.mjs +10 -10
- package/fesm2022/paginator.mjs.map +1 -1
- package/fesm2022/progress-bar-testing.mjs.map +1 -1
- package/fesm2022/progress-bar.mjs +7 -7
- package/fesm2022/progress-bar.mjs.map +1 -1
- package/fesm2022/progress-spinner-testing.mjs.map +1 -1
- package/fesm2022/progress-spinner.mjs +7 -7
- package/fesm2022/progress-spinner.mjs.map +1 -1
- package/fesm2022/radio-testing.mjs.map +1 -1
- package/fesm2022/radio.mjs +10 -10
- package/fesm2022/radio.mjs.map +1 -1
- package/fesm2022/select-testing.mjs.map +1 -1
- package/fesm2022/select.mjs +10 -10
- package/fesm2022/select.mjs.map +1 -1
- package/fesm2022/sidenav-testing.mjs.map +1 -1
- package/fesm2022/sidenav.mjs +22 -22
- package/fesm2022/sidenav.mjs.map +1 -1
- package/fesm2022/slide-toggle-testing.mjs.map +1 -1
- package/fesm2022/slide-toggle.mjs +7 -7
- package/fesm2022/slide-toggle.mjs.map +1 -1
- package/fesm2022/slider-testing.mjs.map +1 -1
- package/fesm2022/slider.mjs +16 -16
- package/fesm2022/slider.mjs.map +1 -1
- package/fesm2022/snack-bar-testing.mjs.map +1 -1
- package/fesm2022/snack-bar.mjs +22 -22
- package/fesm2022/snack-bar.mjs.map +1 -1
- package/fesm2022/sort-testing.mjs.map +1 -1
- package/fesm2022/sort.mjs +13 -13
- package/fesm2022/sort.mjs.map +1 -1
- package/fesm2022/stepper-testing.mjs.map +1 -1
- package/fesm2022/stepper.mjs +31 -31
- package/fesm2022/stepper.mjs.map +1 -1
- package/fesm2022/table-testing.mjs.map +1 -1
- package/fesm2022/table.mjs +61 -75
- package/fesm2022/table.mjs.map +1 -1
- package/fesm2022/tabs-testing.mjs.map +1 -1
- package/fesm2022/tabs.mjs +43 -43
- package/fesm2022/tabs.mjs.map +1 -1
- package/fesm2022/timepicker-testing.mjs.map +1 -1
- package/fesm2022/timepicker.mjs +83 -88
- package/fesm2022/timepicker.mjs.map +1 -1
- package/fesm2022/toolbar-testing.mjs.map +1 -1
- package/fesm2022/toolbar.mjs +10 -10
- package/fesm2022/toolbar.mjs.map +1 -1
- package/fesm2022/tooltip-testing.mjs.map +1 -1
- package/fesm2022/tooltip.mjs +4 -4
- package/fesm2022/tooltip.mjs.map +1 -1
- package/fesm2022/tree-testing.mjs.map +1 -1
- package/fesm2022/tree.mjs +25 -25
- package/fesm2022/tree.mjs.map +1 -1
- package/package.json +2 -2
- package/schematics/ng-add/index.js +1 -1
- package/types/datepicker.d.ts +2 -2
- package/types/table.d.ts +3 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_option-chunk.mjs","sources":["../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/core/option/option-parent.ts","../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/core/option/optgroup.ts","../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/core/option/optgroup.html","../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/core/option/option.ts","../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/core/option/option.html"],"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, Signal} from '@angular/core';\n\n/**\n * Describes a parent component that manages a list of options.\n * Contains properties that the options can inherit.\n * @docs-private\n */\nexport interface MatOptionParentComponent {\n disableRipple?: boolean | Signal<boolean>;\n multiple?: boolean;\n inertGroups?: boolean;\n hideSingleSelectionIndicator?: boolean;\n}\n\n/**\n * Injection token used to provide the parent component to options.\n */\nexport const MAT_OPTION_PARENT_COMPONENT = new InjectionToken<MatOptionParentComponent>(\n 'MAT_OPTION_PARENT_COMPONENT',\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 ChangeDetectionStrategy,\n Input,\n InjectionToken,\n booleanAttribute,\n inject,\n} from '@angular/core';\nimport {_IdGenerator} from '@angular/cdk/a11y';\nimport {MatOptionParentComponent, MAT_OPTION_PARENT_COMPONENT} from './option-parent';\n\n// Notes on the accessibility pattern used for `mat-optgroup`.\n// The option group has two different \"modes\": regular and inert. The regular mode uses the\n// recommended a11y pattern which has `role=\"group\"` on the group element with `aria-labelledby`\n// pointing to the label. This works for `mat-select`, but it seems to hit a bug for autocomplete\n// under VoiceOver where the group doesn't get read out at all. The bug appears to be that if\n// there's __any__ a11y-related attribute on the group (e.g. `role` or `aria-labelledby`),\n// VoiceOver on Safari won't read it out.\n// We've introduced the `inert` mode as a workaround. Under this mode, all a11y attributes are\n// removed from the group, and we get the screen reader to read out the group label by mirroring it\n// inside an invisible element in the option. This is sub-optimal, because the screen reader will\n// repeat the group label on each navigation, whereas the default pattern only reads the group when\n// the user enters a new group. The following alternate approaches were considered:\n// 1. Reading out the group label using the `LiveAnnouncer` solves the problem, but we can't control\n// when the text will be read out so sometimes it comes in too late or never if the user\n// navigates quickly.\n// 2. `<mat-option aria-describedby=\"groupLabel\"` - This works on Safari, but VoiceOver in Chrome\n// won't read out the description at all.\n// 3. `<mat-option aria-labelledby=\"optionLabel groupLabel\"` - This works on Chrome, but Safari\n// doesn't read out the text at all. Furthermore, on\n\n/**\n * Injection token that can be used to reference instances of `MatOptgroup`. It serves as\n * alternative token to the actual `MatOptgroup` class which could cause unnecessary\n * retention of the class and its component metadata.\n */\nexport const MAT_OPTGROUP = new InjectionToken<MatOptgroup>('MatOptgroup');\n\n/**\n * Component that is used to group instances of `mat-option`.\n */\n@Component({\n selector: 'mat-optgroup',\n exportAs: 'matOptgroup',\n templateUrl: 'optgroup.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styleUrl: 'optgroup.css',\n host: {\n 'class': 'mat-mdc-optgroup',\n '[attr.role]': '_inert ? null : \"group\"',\n '[attr.aria-disabled]': '_inert ? null : disabled.toString()',\n '[attr.aria-labelledby]': '_inert ? null : _labelId',\n },\n providers: [{provide: MAT_OPTGROUP, useExisting: MatOptgroup}],\n})\nexport class MatOptgroup {\n /** Label for the option group. */\n @Input() label: string;\n\n /** whether the option group is disabled. */\n @Input({transform: booleanAttribute}) disabled: boolean = false;\n\n /** Unique id for the underlying label. */\n _labelId: string = inject(_IdGenerator).getId('mat-optgroup-label-');\n\n /** Whether the group is in inert a11y mode. */\n _inert: boolean;\n\n constructor(...args: unknown[]);\n\n constructor() {\n const parent = inject<MatOptionParentComponent>(MAT_OPTION_PARENT_COMPONENT, {optional: true});\n this._inert = parent?.inertGroups ?? false;\n }\n}\n","<span\n class=\"mat-mdc-optgroup-label\"\n role=\"presentation\"\n [class.mdc-list-item--disabled]=\"disabled\"\n [id]=\"_labelId\">\n <span class=\"mdc-list-item__primary-text\">{{ label }} <ng-content></ng-content></span>\n</span>\n\n<ng-content select=\"mat-option, ng-container\"></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 {_IdGenerator, FocusableOption, FocusOrigin} from '@angular/cdk/a11y';\nimport {ENTER, hasModifierKey, SPACE} from '@angular/cdk/keycodes';\nimport {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n ElementRef,\n ChangeDetectorRef,\n AfterViewChecked,\n OnDestroy,\n Input,\n Output,\n EventEmitter,\n QueryList,\n ViewChild,\n booleanAttribute,\n inject,\n isSignal,\n Signal,\n signal,\n} from '@angular/core';\nimport {Subject} from 'rxjs';\nimport {MAT_OPTGROUP, MatOptgroup} from './optgroup';\nimport {MatOptionParentComponent, MAT_OPTION_PARENT_COMPONENT} from './option-parent';\nimport {MatRipple} from '../ripple/ripple';\nimport {MatPseudoCheckbox} from '../selection/pseudo-checkbox/pseudo-checkbox';\nimport {_StructuralStylesLoader} from '../focus-indicators/structural-styles';\nimport {_CdkPrivateStyleLoader, _VisuallyHiddenLoader} from '@angular/cdk/private';\n\n/** Event object emitted by MatOption when selected or deselected. */\nexport class MatOptionSelectionChange<T = any> {\n constructor(\n /** Reference to the option that emitted the event. */\n public source: MatOption<T>,\n /** Whether the change in the option's value was a result of a user action. */\n public isUserInput = false,\n ) {}\n}\n\n/**\n * Single option inside of a `<mat-select>` element.\n */\n@Component({\n selector: 'mat-option',\n exportAs: 'matOption',\n host: {\n 'role': 'option',\n '[class.mdc-list-item--selected]': 'selected',\n '[class.mat-mdc-option-multiple]': 'multiple',\n '[class.mat-mdc-option-active]': 'active',\n '[class.mdc-list-item--disabled]': 'disabled',\n '[id]': 'id',\n // Set aria-selected to false for non-selected items and true for selected items. Conform to\n // [WAI ARIA Listbox authoring practices guide](\n // https://www.w3.org/WAI/ARIA/apg/patterns/listbox/), \"If any options are selected, each\n // selected option has either aria-selected or aria-checked set to true. All options that are\n // selectable but not selected have either aria-selected or aria-checked set to false.\" Align\n // aria-selected implementation of Chips and List components.\n //\n // Set `aria-selected=\"false\"` on not-selected listbox options to fix VoiceOver announcing\n // every option as \"selected\" (#21491).\n '[attr.aria-selected]': 'selected',\n '[attr.aria-disabled]': 'disabled.toString()',\n '(click)': '_selectViaInteraction()',\n '(keydown)': '_handleKeydown($event)',\n 'class': 'mat-mdc-option mdc-list-item',\n },\n styleUrl: 'option.css',\n templateUrl: 'option.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [MatPseudoCheckbox, MatRipple],\n})\nexport class MatOption<T = any> implements FocusableOption, AfterViewChecked, OnDestroy {\n private _element = inject<ElementRef<HTMLElement>>(ElementRef);\n _changeDetectorRef = inject(ChangeDetectorRef);\n private _parent = inject<MatOptionParentComponent>(MAT_OPTION_PARENT_COMPONENT, {optional: true});\n group = inject<MatOptgroup>(MAT_OPTGROUP, {optional: true});\n\n private _signalDisableRipple = false;\n private _selected = false;\n private _active = false;\n private _mostRecentViewValue = '';\n\n /** Whether the wrapping component is in multiple selection mode. */\n get multiple() {\n return this._parent && this._parent.multiple;\n }\n\n /** Whether or not the option is currently selected. */\n get selected(): boolean {\n return this._selected;\n }\n\n /** The form value of the option. */\n @Input() value: T;\n\n /** The unique ID of the option. */\n @Input() id: string = inject(_IdGenerator).getId('mat-option-');\n\n /** Whether the option is disabled. */\n @Input({transform: booleanAttribute})\n get disabled(): boolean {\n return (this.group && this.group.disabled) || this._disabled();\n }\n set disabled(value: boolean) {\n this._disabled.set(value);\n }\n private _disabled = signal(false);\n\n /** Whether ripples for the option are disabled. */\n get disableRipple(): boolean {\n return this._signalDisableRipple\n ? (this._parent!.disableRipple as Signal<boolean>)()\n : !!this._parent?.disableRipple;\n }\n\n /** Whether to display checkmark for single-selection. */\n get hideSingleSelectionIndicator(): boolean {\n return !!(this._parent && this._parent.hideSingleSelectionIndicator);\n }\n\n /** Event emitted when the option is selected or deselected. */\n // tslint:disable-next-line:no-output-on-prefix\n @Output() readonly onSelectionChange = new EventEmitter<MatOptionSelectionChange<T>>();\n\n /** Element containing the option's text. */\n @ViewChild('text', {static: true}) _text: ElementRef<HTMLElement> | undefined;\n\n /** Emits when the state of the option changes and any parents have to be notified. */\n readonly _stateChanges = new Subject<void>();\n\n constructor(...args: unknown[]);\n constructor() {\n const styleLoader = inject(_CdkPrivateStyleLoader);\n styleLoader.load(_StructuralStylesLoader);\n styleLoader.load(_VisuallyHiddenLoader);\n this._signalDisableRipple = !!this._parent && isSignal(this._parent.disableRipple);\n }\n\n /**\n * Whether or not the option is currently active and ready to be selected.\n * An active option displays styles as if it is focused, but the\n * focus is actually retained somewhere else. This comes in handy\n * for components like autocomplete where focus must remain on the input.\n */\n get active(): boolean {\n return this._active;\n }\n\n /**\n * The displayed value of the option. It is necessary to show the selected option in the\n * select's trigger.\n */\n get viewValue(): string {\n // TODO(kara): Add input property alternative for node envs.\n return (this._text?.nativeElement.textContent || '').trim();\n }\n\n /** Selects the option. */\n select(emitEvent = true): void {\n if (!this._selected) {\n this._selected = true;\n this._changeDetectorRef.markForCheck();\n\n if (emitEvent) {\n this._emitSelectionChangeEvent();\n }\n }\n }\n\n /** Deselects the option. */\n deselect(emitEvent = true): void {\n if (this._selected) {\n this._selected = false;\n this._changeDetectorRef.markForCheck();\n\n if (emitEvent) {\n this._emitSelectionChangeEvent();\n }\n }\n }\n\n /** Sets focus onto this option. */\n focus(_origin?: FocusOrigin, options?: FocusOptions): void {\n // Note that we aren't using `_origin`, but we need to keep it because some internal consumers\n // use `MatOption` in a `FocusKeyManager` and we need it to match `FocusableOption`.\n const element = this._getHostElement();\n\n if (typeof element.focus === 'function') {\n element.focus(options);\n }\n }\n\n /**\n * This method sets display styles on the option to make it appear\n * active. This is used by the ActiveDescendantKeyManager so key\n * events will display the proper options as active on arrow key events.\n */\n setActiveStyles(): void {\n if (!this._active) {\n this._active = true;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /**\n * This method removes display styles on the option that made it appear\n * active. This is used by the ActiveDescendantKeyManager so key\n * events will display the proper options as active on arrow key events.\n */\n setInactiveStyles(): void {\n if (this._active) {\n this._active = false;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /** Gets the label to be used when determining whether the option should be focused. */\n getLabel(): string {\n return this.viewValue;\n }\n\n /** Ensures the option is selected when activated from the keyboard. */\n _handleKeydown(event: KeyboardEvent): void {\n if ((event.keyCode === ENTER || event.keyCode === SPACE) && !hasModifierKey(event)) {\n this._selectViaInteraction();\n\n // Prevent the page from scrolling down and form submits.\n event.preventDefault();\n }\n }\n\n /**\n * `Selects the option while indicating the selection came from the user. Used to\n * determine if the select's view -> model callback should be invoked.`\n */\n _selectViaInteraction(): void {\n if (!this.disabled) {\n this._selected = this.multiple ? !this._selected : true;\n this._changeDetectorRef.markForCheck();\n this._emitSelectionChangeEvent(true);\n }\n }\n\n /** Returns the correct tabindex for the option depending on disabled state. */\n // This method is only used by `MatLegacyOption`. Keeping it here to avoid breaking the types.\n // That's because `MatLegacyOption` use `MatOption` type in a few places such as\n // `MatOptionSelectionChange`. It is safe to delete this when `MatLegacyOption` is deleted.\n _getTabIndex(): string {\n return this.disabled ? '-1' : '0';\n }\n\n /** Gets the host DOM element. */\n _getHostElement(): HTMLElement {\n return this._element.nativeElement;\n }\n\n ngAfterViewChecked() {\n // Since parent components could be using the option's label to display the selected values\n // (e.g. `mat-select`) and they don't have a way of knowing if the option's label has changed\n // we have to check for changes in the DOM ourselves and dispatch an event. These checks are\n // relatively cheap, however we still limit them only to selected options in order to avoid\n // hitting the DOM too often.\n if (this._selected) {\n const viewValue = this.viewValue;\n\n if (viewValue !== this._mostRecentViewValue) {\n if (this._mostRecentViewValue) {\n this._stateChanges.next();\n }\n\n this._mostRecentViewValue = viewValue;\n }\n }\n }\n\n ngOnDestroy() {\n this._stateChanges.complete();\n }\n\n /** Emits the selection change event. */\n private _emitSelectionChangeEvent(isUserInput = false): void {\n this.onSelectionChange.emit(new MatOptionSelectionChange<T>(this, isUserInput));\n }\n}\n\n/**\n * Counts the amount of option group labels that precede the specified option.\n * @param optionIndex Index of the option at which to start counting.\n * @param options Flat list of all of the options.\n * @param optionGroups Flat list of all of the option groups.\n * @docs-private\n */\nexport function _countGroupLabelsBeforeOption(\n optionIndex: number,\n options: QueryList<MatOption>,\n optionGroups: QueryList<MatOptgroup>,\n): number {\n if (optionGroups.length) {\n let optionsArray = options.toArray();\n let groups = optionGroups.toArray();\n let groupCounter = 0;\n\n for (let i = 0; i < optionIndex + 1; i++) {\n if (optionsArray[i].group && optionsArray[i].group === groups[groupCounter]) {\n groupCounter++;\n }\n }\n\n return groupCounter;\n }\n\n return 0;\n}\n\n/**\n * Determines the position to which to scroll a panel in order for an option to be into view.\n * @param optionOffset Offset of the option from the top of the panel.\n * @param optionHeight Height of the options.\n * @param currentScrollPosition Current scroll position of the panel.\n * @param panelHeight Height of the panel.\n * @docs-private\n */\nexport function _getOptionScrollPosition(\n optionOffset: number,\n optionHeight: number,\n currentScrollPosition: number,\n panelHeight: number,\n): number {\n if (optionOffset < currentScrollPosition) {\n return optionOffset;\n }\n\n if (optionOffset + optionHeight > currentScrollPosition + panelHeight) {\n return Math.max(0, optionOffset - panelHeight + optionHeight);\n }\n\n return currentScrollPosition;\n}\n","<!-- Set aria-hidden=\"true\" to this DOM node and other decorative nodes in this file. This might\n be contributing to issue where sometimes VoiceOver focuses on a TextNode in the a11y tree instead\n of the Option node (#23202). Most assistive technology will generally ignore non-role,\n non-text-content elements. Adding aria-hidden seems to make VoiceOver behave more consistently. -->\n@if (multiple) {\n <mat-pseudo-checkbox\n class=\"mat-mdc-option-pseudo-checkbox\"\n [disabled]=\"disabled\"\n [state]=\"selected ? 'checked' : 'unchecked'\"\n aria-hidden=\"true\"></mat-pseudo-checkbox>\n}\n\n<ng-content select=\"mat-icon\"></ng-content>\n\n<span class=\"mdc-list-item__primary-text\" #text><ng-content></ng-content></span>\n\n<!-- Render checkmark at the end for single-selection. -->\n@if (!multiple && selected && !hideSingleSelectionIndicator) {\n <mat-pseudo-checkbox\n class=\"mat-mdc-option-pseudo-checkbox\"\n [disabled]=\"disabled\"\n state=\"checked\"\n aria-hidden=\"true\"\n appearance=\"minimal\"></mat-pseudo-checkbox>\n}\n\n<!-- See a11y notes inside optgroup.ts for context behind this element. -->\n@if (group && group._inert) {\n <span class=\"cdk-visually-hidden\">({{ group.label }})</span>\n}\n\n<div class=\"mat-mdc-option-ripple mat-focus-indicator\" aria-hidden=\"true\" mat-ripple\n [matRippleTrigger]=\"_getHostElement()\" [matRippleDisabled]=\"disabled || disableRipple\">\n</div>\n"],"names":["MAT_OPTION_PARENT_COMPONENT","InjectionToken","MAT_OPTGROUP","MatOptgroup","label","disabled","_labelId","inject","_IdGenerator","getId","_inert","constructor","parent","optional","inertGroups","deps","target","i0","ɵɵFactoryTarget","Component","ɵcmp","ɵɵngDeclareComponent","minVersion","version","type","isStandalone","selector","inputs","booleanAttribute","host","properties","classAttribute","providers","provide","useExisting","styles","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","decorators","exportAs","template","Input","transform","MatOptionSelectionChange","source","isUserInput","MatOption","_element","ElementRef","_changeDetectorRef","ChangeDetectorRef","_parent","group","_signalDisableRipple","_selected","_active","_mostRecentViewValue","multiple","selected","value","id","_disabled","set","signal","disableRipple","hideSingleSelectionIndicator","onSelectionChange","EventEmitter","_text","_stateChanges","Subject","styleLoader","_CdkPrivateStyleLoader","load","_StructuralStylesLoader","_VisuallyHiddenLoader","isSignal","active","viewValue","nativeElement","textContent","trim","select","emitEvent","markForCheck","_emitSelectionChangeEvent","deselect","focus","_origin","options","element","_getHostElement","setActiveStyles","setInactiveStyles","getLabel","_handleKeydown","event","keyCode","ENTER","SPACE","hasModifierKey","_selectViaInteraction","preventDefault","_getTabIndex","ngAfterViewChecked","next","ngOnDestroy","complete","emit","outputs","attributes","listeners","viewQueries","propertyName","first","predicate","descendants","static","ngImport","dependencies","kind","MatPseudoCheckbox","MatRipple","imports","Output","ViewChild","args","_countGroupLabelsBeforeOption","optionIndex","optionGroups","length","optionsArray","toArray","groups","groupCounter","i","_getOptionScrollPosition","optionOffset","optionHeight","currentScrollPosition","panelHeight","Math","max"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"_option-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/core/option/option-parent.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/core/option/optgroup.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/core/option/optgroup.html","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/core/option/option.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/core/option/option.html"],"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, Signal} from '@angular/core';\n\n/**\n * Describes a parent component that manages a list of options.\n * Contains properties that the options can inherit.\n * @docs-private\n */\nexport interface MatOptionParentComponent {\n disableRipple?: boolean | Signal<boolean>;\n multiple?: boolean;\n inertGroups?: boolean;\n hideSingleSelectionIndicator?: boolean;\n}\n\n/**\n * Injection token used to provide the parent component to options.\n */\nexport const MAT_OPTION_PARENT_COMPONENT = new InjectionToken<MatOptionParentComponent>(\n 'MAT_OPTION_PARENT_COMPONENT',\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 ChangeDetectionStrategy,\n Input,\n InjectionToken,\n booleanAttribute,\n inject,\n} from '@angular/core';\nimport {_IdGenerator} from '@angular/cdk/a11y';\nimport {MatOptionParentComponent, MAT_OPTION_PARENT_COMPONENT} from './option-parent';\n\n// Notes on the accessibility pattern used for `mat-optgroup`.\n// The option group has two different \"modes\": regular and inert. The regular mode uses the\n// recommended a11y pattern which has `role=\"group\"` on the group element with `aria-labelledby`\n// pointing to the label. This works for `mat-select`, but it seems to hit a bug for autocomplete\n// under VoiceOver where the group doesn't get read out at all. The bug appears to be that if\n// there's __any__ a11y-related attribute on the group (e.g. `role` or `aria-labelledby`),\n// VoiceOver on Safari won't read it out.\n// We've introduced the `inert` mode as a workaround. Under this mode, all a11y attributes are\n// removed from the group, and we get the screen reader to read out the group label by mirroring it\n// inside an invisible element in the option. This is sub-optimal, because the screen reader will\n// repeat the group label on each navigation, whereas the default pattern only reads the group when\n// the user enters a new group. The following alternate approaches were considered:\n// 1. Reading out the group label using the `LiveAnnouncer` solves the problem, but we can't control\n// when the text will be read out so sometimes it comes in too late or never if the user\n// navigates quickly.\n// 2. `<mat-option aria-describedby=\"groupLabel\"` - This works on Safari, but VoiceOver in Chrome\n// won't read out the description at all.\n// 3. `<mat-option aria-labelledby=\"optionLabel groupLabel\"` - This works on Chrome, but Safari\n// doesn't read out the text at all. Furthermore, on\n\n/**\n * Injection token that can be used to reference instances of `MatOptgroup`. It serves as\n * alternative token to the actual `MatOptgroup` class which could cause unnecessary\n * retention of the class and its component metadata.\n */\nexport const MAT_OPTGROUP = new InjectionToken<MatOptgroup>('MatOptgroup');\n\n/**\n * Component that is used to group instances of `mat-option`.\n */\n@Component({\n selector: 'mat-optgroup',\n exportAs: 'matOptgroup',\n templateUrl: 'optgroup.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styleUrl: 'optgroup.css',\n host: {\n 'class': 'mat-mdc-optgroup',\n '[attr.role]': '_inert ? null : \"group\"',\n '[attr.aria-disabled]': '_inert ? null : disabled.toString()',\n '[attr.aria-labelledby]': '_inert ? null : _labelId',\n },\n providers: [{provide: MAT_OPTGROUP, useExisting: MatOptgroup}],\n})\nexport class MatOptgroup {\n /** Label for the option group. */\n @Input() label: string;\n\n /** whether the option group is disabled. */\n @Input({transform: booleanAttribute}) disabled: boolean = false;\n\n /** Unique id for the underlying label. */\n _labelId: string = inject(_IdGenerator).getId('mat-optgroup-label-');\n\n /** Whether the group is in inert a11y mode. */\n _inert: boolean;\n\n constructor(...args: unknown[]);\n\n constructor() {\n const parent = inject<MatOptionParentComponent>(MAT_OPTION_PARENT_COMPONENT, {optional: true});\n this._inert = parent?.inertGroups ?? false;\n }\n}\n","<span\n class=\"mat-mdc-optgroup-label\"\n role=\"presentation\"\n [class.mdc-list-item--disabled]=\"disabled\"\n [id]=\"_labelId\">\n <span class=\"mdc-list-item__primary-text\">{{ label }} <ng-content></ng-content></span>\n</span>\n\n<ng-content select=\"mat-option, ng-container\"></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 {_IdGenerator, FocusableOption, FocusOrigin} from '@angular/cdk/a11y';\nimport {ENTER, hasModifierKey, SPACE} from '@angular/cdk/keycodes';\nimport {\n Component,\n ViewEncapsulation,\n ChangeDetectionStrategy,\n ElementRef,\n ChangeDetectorRef,\n AfterViewChecked,\n OnDestroy,\n Input,\n Output,\n EventEmitter,\n QueryList,\n ViewChild,\n booleanAttribute,\n inject,\n isSignal,\n Signal,\n signal,\n} from '@angular/core';\nimport {Subject} from 'rxjs';\nimport {MAT_OPTGROUP, MatOptgroup} from './optgroup';\nimport {MatOptionParentComponent, MAT_OPTION_PARENT_COMPONENT} from './option-parent';\nimport {MatRipple} from '../ripple/ripple';\nimport {MatPseudoCheckbox} from '../selection/pseudo-checkbox/pseudo-checkbox';\nimport {_StructuralStylesLoader} from '../focus-indicators/structural-styles';\nimport {_CdkPrivateStyleLoader, _VisuallyHiddenLoader} from '@angular/cdk/private';\n\n/** Event object emitted by MatOption when selected or deselected. */\nexport class MatOptionSelectionChange<T = any> {\n constructor(\n /** Reference to the option that emitted the event. */\n public source: MatOption<T>,\n /** Whether the change in the option's value was a result of a user action. */\n public isUserInput = false,\n ) {}\n}\n\n/**\n * Single option inside of a `<mat-select>` element.\n */\n@Component({\n selector: 'mat-option',\n exportAs: 'matOption',\n host: {\n 'role': 'option',\n '[class.mdc-list-item--selected]': 'selected',\n '[class.mat-mdc-option-multiple]': 'multiple',\n '[class.mat-mdc-option-active]': 'active',\n '[class.mdc-list-item--disabled]': 'disabled',\n '[id]': 'id',\n // Set aria-selected to false for non-selected items and true for selected items. Conform to\n // [WAI ARIA Listbox authoring practices guide](\n // https://www.w3.org/WAI/ARIA/apg/patterns/listbox/), \"If any options are selected, each\n // selected option has either aria-selected or aria-checked set to true. All options that are\n // selectable but not selected have either aria-selected or aria-checked set to false.\" Align\n // aria-selected implementation of Chips and List components.\n //\n // Set `aria-selected=\"false\"` on not-selected listbox options to fix VoiceOver announcing\n // every option as \"selected\" (#21491).\n '[attr.aria-selected]': 'selected',\n '[attr.aria-disabled]': 'disabled.toString()',\n '(click)': '_selectViaInteraction()',\n '(keydown)': '_handleKeydown($event)',\n 'class': 'mat-mdc-option mdc-list-item',\n },\n styleUrl: 'option.css',\n templateUrl: 'option.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [MatPseudoCheckbox, MatRipple],\n})\nexport class MatOption<T = any> implements FocusableOption, AfterViewChecked, OnDestroy {\n private _element = inject<ElementRef<HTMLElement>>(ElementRef);\n _changeDetectorRef = inject(ChangeDetectorRef);\n private _parent = inject<MatOptionParentComponent>(MAT_OPTION_PARENT_COMPONENT, {optional: true});\n group = inject<MatOptgroup>(MAT_OPTGROUP, {optional: true});\n\n private _signalDisableRipple = false;\n private _selected = false;\n private _active = false;\n private _mostRecentViewValue = '';\n\n /** Whether the wrapping component is in multiple selection mode. */\n get multiple() {\n return this._parent && this._parent.multiple;\n }\n\n /** Whether or not the option is currently selected. */\n get selected(): boolean {\n return this._selected;\n }\n\n /** The form value of the option. */\n @Input() value: T;\n\n /** The unique ID of the option. */\n @Input() id: string = inject(_IdGenerator).getId('mat-option-');\n\n /** Whether the option is disabled. */\n @Input({transform: booleanAttribute})\n get disabled(): boolean {\n return (this.group && this.group.disabled) || this._disabled();\n }\n set disabled(value: boolean) {\n this._disabled.set(value);\n }\n private _disabled = signal(false);\n\n /** Whether ripples for the option are disabled. */\n get disableRipple(): boolean {\n return this._signalDisableRipple\n ? (this._parent!.disableRipple as Signal<boolean>)()\n : !!this._parent?.disableRipple;\n }\n\n /** Whether to display checkmark for single-selection. */\n get hideSingleSelectionIndicator(): boolean {\n return !!(this._parent && this._parent.hideSingleSelectionIndicator);\n }\n\n /** Event emitted when the option is selected or deselected. */\n // tslint:disable-next-line:no-output-on-prefix\n @Output() readonly onSelectionChange = new EventEmitter<MatOptionSelectionChange<T>>();\n\n /** Element containing the option's text. */\n @ViewChild('text', {static: true}) _text: ElementRef<HTMLElement> | undefined;\n\n /** Emits when the state of the option changes and any parents have to be notified. */\n readonly _stateChanges = new Subject<void>();\n\n constructor(...args: unknown[]);\n constructor() {\n const styleLoader = inject(_CdkPrivateStyleLoader);\n styleLoader.load(_StructuralStylesLoader);\n styleLoader.load(_VisuallyHiddenLoader);\n this._signalDisableRipple = !!this._parent && isSignal(this._parent.disableRipple);\n }\n\n /**\n * Whether or not the option is currently active and ready to be selected.\n * An active option displays styles as if it is focused, but the\n * focus is actually retained somewhere else. This comes in handy\n * for components like autocomplete where focus must remain on the input.\n */\n get active(): boolean {\n return this._active;\n }\n\n /**\n * The displayed value of the option. It is necessary to show the selected option in the\n * select's trigger.\n */\n get viewValue(): string {\n // TODO(kara): Add input property alternative for node envs.\n return (this._text?.nativeElement.textContent || '').trim();\n }\n\n /** Selects the option. */\n select(emitEvent = true): void {\n if (!this._selected) {\n this._selected = true;\n this._changeDetectorRef.markForCheck();\n\n if (emitEvent) {\n this._emitSelectionChangeEvent();\n }\n }\n }\n\n /** Deselects the option. */\n deselect(emitEvent = true): void {\n if (this._selected) {\n this._selected = false;\n this._changeDetectorRef.markForCheck();\n\n if (emitEvent) {\n this._emitSelectionChangeEvent();\n }\n }\n }\n\n /** Sets focus onto this option. */\n focus(_origin?: FocusOrigin, options?: FocusOptions): void {\n // Note that we aren't using `_origin`, but we need to keep it because some internal consumers\n // use `MatOption` in a `FocusKeyManager` and we need it to match `FocusableOption`.\n const element = this._getHostElement();\n\n if (typeof element.focus === 'function') {\n element.focus(options);\n }\n }\n\n /**\n * This method sets display styles on the option to make it appear\n * active. This is used by the ActiveDescendantKeyManager so key\n * events will display the proper options as active on arrow key events.\n */\n setActiveStyles(): void {\n if (!this._active) {\n this._active = true;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /**\n * This method removes display styles on the option that made it appear\n * active. This is used by the ActiveDescendantKeyManager so key\n * events will display the proper options as active on arrow key events.\n */\n setInactiveStyles(): void {\n if (this._active) {\n this._active = false;\n this._changeDetectorRef.markForCheck();\n }\n }\n\n /** Gets the label to be used when determining whether the option should be focused. */\n getLabel(): string {\n return this.viewValue;\n }\n\n /** Ensures the option is selected when activated from the keyboard. */\n _handleKeydown(event: KeyboardEvent): void {\n if ((event.keyCode === ENTER || event.keyCode === SPACE) && !hasModifierKey(event)) {\n this._selectViaInteraction();\n\n // Prevent the page from scrolling down and form submits.\n event.preventDefault();\n }\n }\n\n /**\n * `Selects the option while indicating the selection came from the user. Used to\n * determine if the select's view -> model callback should be invoked.`\n */\n _selectViaInteraction(): void {\n if (!this.disabled) {\n this._selected = this.multiple ? !this._selected : true;\n this._changeDetectorRef.markForCheck();\n this._emitSelectionChangeEvent(true);\n }\n }\n\n /** Returns the correct tabindex for the option depending on disabled state. */\n // This method is only used by `MatLegacyOption`. Keeping it here to avoid breaking the types.\n // That's because `MatLegacyOption` use `MatOption` type in a few places such as\n // `MatOptionSelectionChange`. It is safe to delete this when `MatLegacyOption` is deleted.\n _getTabIndex(): string {\n return this.disabled ? '-1' : '0';\n }\n\n /** Gets the host DOM element. */\n _getHostElement(): HTMLElement {\n return this._element.nativeElement;\n }\n\n ngAfterViewChecked() {\n // Since parent components could be using the option's label to display the selected values\n // (e.g. `mat-select`) and they don't have a way of knowing if the option's label has changed\n // we have to check for changes in the DOM ourselves and dispatch an event. These checks are\n // relatively cheap, however we still limit them only to selected options in order to avoid\n // hitting the DOM too often.\n if (this._selected) {\n const viewValue = this.viewValue;\n\n if (viewValue !== this._mostRecentViewValue) {\n if (this._mostRecentViewValue) {\n this._stateChanges.next();\n }\n\n this._mostRecentViewValue = viewValue;\n }\n }\n }\n\n ngOnDestroy() {\n this._stateChanges.complete();\n }\n\n /** Emits the selection change event. */\n private _emitSelectionChangeEvent(isUserInput = false): void {\n this.onSelectionChange.emit(new MatOptionSelectionChange<T>(this, isUserInput));\n }\n}\n\n/**\n * Counts the amount of option group labels that precede the specified option.\n * @param optionIndex Index of the option at which to start counting.\n * @param options Flat list of all of the options.\n * @param optionGroups Flat list of all of the option groups.\n * @docs-private\n */\nexport function _countGroupLabelsBeforeOption(\n optionIndex: number,\n options: QueryList<MatOption>,\n optionGroups: QueryList<MatOptgroup>,\n): number {\n if (optionGroups.length) {\n let optionsArray = options.toArray();\n let groups = optionGroups.toArray();\n let groupCounter = 0;\n\n for (let i = 0; i < optionIndex + 1; i++) {\n if (optionsArray[i].group && optionsArray[i].group === groups[groupCounter]) {\n groupCounter++;\n }\n }\n\n return groupCounter;\n }\n\n return 0;\n}\n\n/**\n * Determines the position to which to scroll a panel in order for an option to be into view.\n * @param optionOffset Offset of the option from the top of the panel.\n * @param optionHeight Height of the options.\n * @param currentScrollPosition Current scroll position of the panel.\n * @param panelHeight Height of the panel.\n * @docs-private\n */\nexport function _getOptionScrollPosition(\n optionOffset: number,\n optionHeight: number,\n currentScrollPosition: number,\n panelHeight: number,\n): number {\n if (optionOffset < currentScrollPosition) {\n return optionOffset;\n }\n\n if (optionOffset + optionHeight > currentScrollPosition + panelHeight) {\n return Math.max(0, optionOffset - panelHeight + optionHeight);\n }\n\n return currentScrollPosition;\n}\n","<!-- Set aria-hidden=\"true\" to this DOM node and other decorative nodes in this file. This might\n be contributing to issue where sometimes VoiceOver focuses on a TextNode in the a11y tree instead\n of the Option node (#23202). Most assistive technology will generally ignore non-role,\n non-text-content elements. Adding aria-hidden seems to make VoiceOver behave more consistently. -->\n@if (multiple) {\n <mat-pseudo-checkbox\n class=\"mat-mdc-option-pseudo-checkbox\"\n [disabled]=\"disabled\"\n [state]=\"selected ? 'checked' : 'unchecked'\"\n aria-hidden=\"true\"></mat-pseudo-checkbox>\n}\n\n<ng-content select=\"mat-icon\"></ng-content>\n\n<span class=\"mdc-list-item__primary-text\" #text><ng-content></ng-content></span>\n\n<!-- Render checkmark at the end for single-selection. -->\n@if (!multiple && selected && !hideSingleSelectionIndicator) {\n <mat-pseudo-checkbox\n class=\"mat-mdc-option-pseudo-checkbox\"\n [disabled]=\"disabled\"\n state=\"checked\"\n aria-hidden=\"true\"\n appearance=\"minimal\"></mat-pseudo-checkbox>\n}\n\n<!-- See a11y notes inside optgroup.ts for context behind this element. -->\n@if (group && group._inert) {\n <span class=\"cdk-visually-hidden\">({{ group.label }})</span>\n}\n\n<div class=\"mat-mdc-option-ripple mat-focus-indicator\" aria-hidden=\"true\" mat-ripple\n [matRippleTrigger]=\"_getHostElement()\" [matRippleDisabled]=\"disabled || disableRipple\">\n</div>\n"],"names":["MAT_OPTION_PARENT_COMPONENT","InjectionToken","MAT_OPTGROUP","MatOptgroup","label","disabled","_labelId","inject","_IdGenerator","getId","_inert","constructor","parent","optional","inertGroups","deps","target","i0","ɵɵFactoryTarget","Component","ɵcmp","ɵɵngDeclareComponent","minVersion","version","type","isStandalone","selector","inputs","booleanAttribute","host","properties","classAttribute","providers","provide","useExisting","styles","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","decorators","exportAs","template","Input","transform","MatOptionSelectionChange","source","isUserInput","MatOption","_element","ElementRef","_changeDetectorRef","ChangeDetectorRef","_parent","group","_signalDisableRipple","_selected","_active","_mostRecentViewValue","multiple","selected","value","id","_disabled","set","signal","disableRipple","hideSingleSelectionIndicator","onSelectionChange","EventEmitter","_text","_stateChanges","Subject","styleLoader","_CdkPrivateStyleLoader","load","_StructuralStylesLoader","_VisuallyHiddenLoader","isSignal","active","viewValue","nativeElement","textContent","trim","select","emitEvent","markForCheck","_emitSelectionChangeEvent","deselect","focus","_origin","options","element","_getHostElement","setActiveStyles","setInactiveStyles","getLabel","_handleKeydown","event","keyCode","ENTER","SPACE","hasModifierKey","_selectViaInteraction","preventDefault","_getTabIndex","ngAfterViewChecked","next","ngOnDestroy","complete","emit","outputs","attributes","listeners","viewQueries","propertyName","first","predicate","descendants","static","ngImport","dependencies","kind","MatPseudoCheckbox","MatRipple","imports","Output","ViewChild","args","_countGroupLabelsBeforeOption","optionIndex","optionGroups","length","optionsArray","toArray","groups","groupCounter","i","_getOptionScrollPosition","optionOffset","optionHeight","currentScrollPosition","panelHeight","Math","max"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_option-harness-chunk.mjs","sources":["../../../../../
|
|
1
|
+
{"version":3,"file":"_option-harness-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/core/testing/option-harness.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 {\n ComponentHarnessConstructor,\n ContentContainerComponentHarness,\n HarnessPredicate,\n} from '@angular/cdk/testing';\nimport {OptionHarnessFilters} from './option-harness-filters';\n\n/** Harness for interacting with a `mat-option` in tests. */\nexport class MatOptionHarness extends ContentContainerComponentHarness {\n /** Selector used to locate option instances. */\n static hostSelector = '.mat-mdc-option';\n\n /** Element containing the option's text. */\n private _text = this.locatorFor('.mdc-list-item__primary-text');\n\n /**\n * Gets a `HarnessPredicate` that can be used to search for an option with specific attributes.\n * @param options Options for filtering which option instances are considered a match.\n * @return a `HarnessPredicate` configured with the given options.\n */\n static with<T extends MatOptionHarness>(\n this: ComponentHarnessConstructor<T>,\n options: OptionHarnessFilters = {},\n ): HarnessPredicate<T> {\n return new HarnessPredicate(this, options)\n .addOption('text', options.text, async (harness, title) =>\n HarnessPredicate.stringMatches(await harness.getText(), title),\n )\n .addOption(\n 'isSelected',\n options.isSelected,\n async (harness, isSelected) => (await harness.isSelected()) === isSelected,\n );\n }\n\n /** Clicks the option. */\n async click(): Promise<void> {\n return (await this.host()).click();\n }\n\n /** Gets the option's label text. */\n async getText(): Promise<string> {\n return (await this._text()).text();\n }\n\n /** Gets whether the option is disabled. */\n async isDisabled(): Promise<boolean> {\n return (await this.host()).hasClass('mdc-list-item--disabled');\n }\n\n /** Gets whether the option is selected. */\n async isSelected(): Promise<boolean> {\n return (await this.host()).hasClass('mdc-list-item--selected');\n }\n\n /** Gets whether the option is active. */\n async isActive(): Promise<boolean> {\n return (await this.host()).hasClass('mat-mdc-option-active');\n }\n\n /** Gets whether the option is in multiple selection mode. */\n async isMultiple(): Promise<boolean> {\n return (await this.host()).hasClass('mat-mdc-option-multiple');\n }\n}\n"],"names":["MatOptionHarness","ContentContainerComponentHarness","hostSelector","_text","locatorFor","with","options","HarnessPredicate","addOption","text","harness","title","stringMatches","getText","isSelected","click","host","isDisabled","hasClass","isActive","isMultiple"],"mappings":";;AAgBM,MAAOA,gBAAiB,SAAQC,gCAAgC,CAAA;EAEpE,OAAOC,YAAY,GAAG,iBAAiB;AAG/BC,EAAAA,KAAK,GAAG,IAAI,CAACC,UAAU,CAAC,8BAA8B,CAAC;AAO/D,EAAA,OAAOC,IAAIA,CAETC,OAAA,GAAgC,EAAE,EAAA;IAElC,OAAO,IAAIC,gBAAgB,CAAC,IAAI,EAAED,OAAO,CAAA,CACtCE,SAAS,CAAC,MAAM,EAAEF,OAAO,CAACG,IAAI,EAAE,OAAOC,OAAO,EAAEC,KAAK,KACpDJ,gBAAgB,CAACK,aAAa,CAAC,MAAMF,OAAO,CAACG,OAAO,EAAE,EAAEF,KAAK,CAAC,CAAA,CAE/DH,SAAS,CACR,YAAY,EACZF,OAAO,CAACQ,UAAU,EAClB,OAAOJ,OAAO,EAAEI,UAAU,KAAK,CAAC,MAAMJ,OAAO,CAACI,UAAU,EAAE,MAAMA,UAAU,CAC3E;AACL;EAGA,MAAMC,KAAKA,GAAA;IACT,OAAO,CAAC,MAAM,IAAI,CAACC,IAAI,EAAE,EAAED,KAAK,EAAE;AACpC;EAGA,MAAMF,OAAOA,GAAA;IACX,OAAO,CAAC,MAAM,IAAI,CAACV,KAAK,EAAE,EAAEM,IAAI,EAAE;AACpC;EAGA,MAAMQ,UAAUA,GAAA;IACd,OAAO,CAAC,MAAM,IAAI,CAACD,IAAI,EAAE,EAAEE,QAAQ,CAAC,yBAAyB,CAAC;AAChE;EAGA,MAAMJ,UAAUA,GAAA;IACd,OAAO,CAAC,MAAM,IAAI,CAACE,IAAI,EAAE,EAAEE,QAAQ,CAAC,yBAAyB,CAAC;AAChE;EAGA,MAAMC,QAAQA,GAAA;IACZ,OAAO,CAAC,MAAM,IAAI,CAACH,IAAI,EAAE,EAAEE,QAAQ,CAAC,uBAAuB,CAAC;AAC9D;EAGA,MAAME,UAAUA,GAAA;IACd,OAAO,CAAC,MAAM,IAAI,CAACJ,IAAI,EAAE,EAAEE,QAAQ,CAAC,yBAAyB,CAAC;AAChE;;;;;"}
|
|
@@ -8,7 +8,7 @@ import { MatOption, MatOptgroup } from './_option-chunk.mjs';
|
|
|
8
8
|
class MatOptionModule {
|
|
9
9
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
10
10
|
minVersion: "12.0.0",
|
|
11
|
-
version: "21.0.
|
|
11
|
+
version: "21.0.3",
|
|
12
12
|
ngImport: i0,
|
|
13
13
|
type: MatOptionModule,
|
|
14
14
|
deps: [],
|
|
@@ -16,7 +16,7 @@ class MatOptionModule {
|
|
|
16
16
|
});
|
|
17
17
|
static ɵmod = i0.ɵɵngDeclareNgModule({
|
|
18
18
|
minVersion: "14.0.0",
|
|
19
|
-
version: "21.0.
|
|
19
|
+
version: "21.0.3",
|
|
20
20
|
ngImport: i0,
|
|
21
21
|
type: MatOptionModule,
|
|
22
22
|
imports: [MatRippleModule, MatPseudoCheckboxModule, MatOption, MatOptgroup],
|
|
@@ -24,7 +24,7 @@ class MatOptionModule {
|
|
|
24
24
|
});
|
|
25
25
|
static ɵinj = i0.ɵɵngDeclareInjector({
|
|
26
26
|
minVersion: "12.0.0",
|
|
27
|
-
version: "21.0.
|
|
27
|
+
version: "21.0.3",
|
|
28
28
|
ngImport: i0,
|
|
29
29
|
type: MatOptionModule,
|
|
30
30
|
imports: [MatRippleModule, MatPseudoCheckboxModule, MatOption, BidiModule]
|
|
@@ -32,7 +32,7 @@ class MatOptionModule {
|
|
|
32
32
|
}
|
|
33
33
|
i0.ɵɵngDeclareClassMetadata({
|
|
34
34
|
minVersion: "12.0.0",
|
|
35
|
-
version: "21.0.
|
|
35
|
+
version: "21.0.3",
|
|
36
36
|
ngImport: i0,
|
|
37
37
|
type: MatOptionModule,
|
|
38
38
|
decorators: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_option-module-chunk.mjs","sources":["../../../../../
|
|
1
|
+
{"version":3,"file":"_option-module-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/core/option/option-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 {NgModule} from '@angular/core';\nimport {MatRippleModule} from '../ripple/ripple-module';\nimport {MatPseudoCheckboxModule} from '../selection/pseudo-checkbox/pseudo-checkbox-module';\nimport {MatOption} from './option';\nimport {MatOptgroup} from './optgroup';\n\n@NgModule({\n imports: [MatRippleModule, MatPseudoCheckboxModule, MatOption, MatOptgroup],\n exports: [MatOption, MatOptgroup, BidiModule],\n})\nexport class MatOptionModule {}\n"],"names":["MatOptionModule","deps","target","i0","ɵɵFactoryTarget","NgModule","ɵmod","ɵɵngDeclareNgModule","minVersion","version","ngImport","type","imports","MatRippleModule","MatPseudoCheckboxModule","MatOption","MatOptgroup","exports","BidiModule","ɵinj","ɵɵngDeclareInjector","decorators","args"],"mappings":";;;;;;;MAmBaA,eAAe,CAAA;;;;;UAAfA,eAAe;AAAAC,IAAAA,IAAA,EAAA,EAAA;AAAAC,IAAAA,MAAA,EAAAC,EAAA,CAAAC,eAAA,CAAAC;AAAA,GAAA,CAAA;AAAf,EAAA,OAAAC,IAAA,GAAAH,EAAA,CAAAI,mBAAA,CAAA;AAAAC,IAAAA,UAAA,EAAA,QAAA;AAAAC,IAAAA,OAAA,EAAA,QAAA;AAAAC,IAAAA,QAAA,EAAAP,EAAA;AAAAQ,IAAAA,IAAA,EAAAX,eAAe;IAHhBY,OAAA,EAAA,CAAAC,eAAe,EAAEC,uBAAuB,EAAEC,SAAS,EAAEC,WAAW,CAChE;AAAAC,IAAAA,OAAA,EAAA,CAAAF,SAAS,EAAEC,WAAW,EAAEE,UAAU;AAAA,GAAA,CAAA;AAEjC,EAAA,OAAAC,IAAA,GAAAhB,EAAA,CAAAiB,mBAAA,CAAA;AAAAZ,IAAAA,UAAA,EAAA,QAAA;AAAAC,IAAAA,OAAA,EAAA,QAAA;AAAAC,IAAAA,QAAA,EAAAP,EAAA;AAAAQ,IAAAA,IAAA,EAAAX,eAAe;cAHhBa,eAAe,EAAEC,uBAAuB,EAAEC,SAAS,EAC3BG,UAAU;AAAA,GAAA,CAAA;;;;;;QAEjClB,eAAe;AAAAqB,EAAAA,UAAA,EAAA,CAAA;UAJ3BhB,QAAQ;AAACiB,IAAAA,IAAA,EAAA,CAAA;MACRV,OAAO,EAAE,CAACC,eAAe,EAAEC,uBAAuB,EAAEC,SAAS,EAAEC,WAAW,CAAC;AAC3EC,MAAAA,OAAO,EAAE,CAACF,SAAS,EAAEC,WAAW,EAAEE,UAAU;KAC7C;;;;;;"}
|
|
@@ -10,7 +10,7 @@ class MatPseudoCheckbox {
|
|
|
10
10
|
constructor() {}
|
|
11
11
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
12
12
|
minVersion: "12.0.0",
|
|
13
|
-
version: "21.0.
|
|
13
|
+
version: "21.0.3",
|
|
14
14
|
ngImport: i0,
|
|
15
15
|
type: MatPseudoCheckbox,
|
|
16
16
|
deps: [],
|
|
@@ -18,7 +18,7 @@ class MatPseudoCheckbox {
|
|
|
18
18
|
});
|
|
19
19
|
static ɵcmp = i0.ɵɵngDeclareComponent({
|
|
20
20
|
minVersion: "14.0.0",
|
|
21
|
-
version: "21.0.
|
|
21
|
+
version: "21.0.3",
|
|
22
22
|
type: MatPseudoCheckbox,
|
|
23
23
|
isStandalone: true,
|
|
24
24
|
selector: "mat-pseudo-checkbox",
|
|
@@ -48,7 +48,7 @@ class MatPseudoCheckbox {
|
|
|
48
48
|
}
|
|
49
49
|
i0.ɵɵngDeclareClassMetadata({
|
|
50
50
|
minVersion: "12.0.0",
|
|
51
|
-
version: "21.0.
|
|
51
|
+
version: "21.0.3",
|
|
52
52
|
ngImport: i0,
|
|
53
53
|
type: MatPseudoCheckbox,
|
|
54
54
|
decorators: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_pseudo-checkbox-chunk.mjs","sources":["../../../../../
|
|
1
|
+
{"version":3,"file":"_pseudo-checkbox-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/core/selection/pseudo-checkbox/pseudo-checkbox.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 {Component, ViewEncapsulation, Input, ChangeDetectionStrategy} from '@angular/core';\nimport {_animationsDisabled} from '../../animation/animation';\n\n/**\n * Possible states for a pseudo checkbox.\n * @docs-private\n */\nexport type MatPseudoCheckboxState = 'unchecked' | 'checked' | 'indeterminate';\n\n/**\n * Component that shows a simplified checkbox without including any kind of \"real\" checkbox.\n * Meant to be used when the checkbox is purely decorative and a large number of them will be\n * included, such as for the options in a multi-select. Uses no SVGs or complex animations.\n * Note that theming is meant to be handled by the parent element, e.g.\n * `mat-primary .mat-pseudo-checkbox`.\n *\n * Note that this component will be completely invisible to screen-reader users. This is *not*\n * interchangeable with `<mat-checkbox>` and should *not* be used if the user would directly\n * interact with the checkbox. The pseudo-checkbox should only be used as an implementation detail\n * of more complex components that appropriately handle selected / checked state.\n * @docs-private\n */\n@Component({\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n selector: 'mat-pseudo-checkbox',\n styleUrl: 'pseudo-checkbox.css',\n template: '',\n host: {\n 'class': 'mat-pseudo-checkbox',\n '[class.mat-pseudo-checkbox-indeterminate]': 'state === \"indeterminate\"',\n '[class.mat-pseudo-checkbox-checked]': 'state === \"checked\"',\n '[class.mat-pseudo-checkbox-disabled]': 'disabled',\n '[class.mat-pseudo-checkbox-minimal]': 'appearance === \"minimal\"',\n '[class.mat-pseudo-checkbox-full]': 'appearance === \"full\"',\n '[class._mat-animation-noopable]': '_animationsDisabled',\n },\n})\nexport class MatPseudoCheckbox {\n _animationsDisabled = _animationsDisabled();\n\n /** Display state of the checkbox. */\n @Input() state: MatPseudoCheckboxState = 'unchecked';\n\n /** Whether the checkbox is disabled. */\n @Input() disabled: boolean = false;\n\n /**\n * Appearance of the pseudo checkbox. Default appearance of 'full' renders a checkmark/mixedmark\n * indicator inside a square box. 'minimal' appearance only renders the checkmark/mixedmark.\n */\n @Input() appearance: 'minimal' | 'full' = 'full';\n\n constructor(...args: unknown[]);\n constructor() {}\n}\n"],"names":["MatPseudoCheckbox","_animationsDisabled","state","disabled","appearance","constructor","deps","target","i0","ɵɵFactoryTarget","Component","ɵcmp","ɵɵngDeclareComponent","minVersion","version","type","isInline","styles","changeDetection","ChangeDetectionStrategy","OnPush","encapsulation","ViewEncapsulation","None","decorators","selector","template","host","Input"],"mappings":";;;;MA8CaA,iBAAiB,CAAA;EAC5BC,mBAAmB,GAAGA,mBAAmB,EAAE;AAGlCC,EAAAA,KAAK,GAA2B,WAAW;AAG3CC,EAAAA,QAAQ,GAAY,KAAK;AAMzBC,EAAAA,UAAU,GAAuB,MAAM;EAGhDC,WAAAA,GAAA;;;;;UAhBWL,iBAAiB;AAAAM,IAAAA,IAAA,EAAA,EAAA;AAAAC,IAAAA,MAAA,EAAAC,EAAA,CAAAC,eAAA,CAAAC;AAAA,GAAA,CAAA;AAAjB,EAAA,OAAAC,IAAA,GAAAH,EAAA,CAAAI,oBAAA,CAAA;AAAAC,IAAAA,UAAA,EAAA,QAAA;AAAAC,IAAAA,OAAA,EAAA,QAAA;AAAAC,IAAAA,IAAA,EAAAf,iBAAiB;;;;;;;;;;;;;;;;;;;;cAXlB,EAAE;AAAAgB,IAAAA,QAAA,EAAA,IAAA;IAAAC,MAAA,EAAA,CAAA,iyGAAA,CAAA;AAAAC,IAAAA,eAAA,EAAAV,EAAA,CAAAW,uBAAA,CAAAC,MAAA;AAAAC,IAAAA,aAAA,EAAAb,EAAA,CAAAc,iBAAA,CAAAC;AAAA,GAAA,CAAA;;;;;;QAWDvB,iBAAiB;AAAAwB,EAAAA,UAAA,EAAA,CAAA;UAhB7Bd,SAAS;;qBACOY,iBAAiB,CAACC,IAAI;MAAAL,eAAA,EACpBC,uBAAuB,CAACC,MAAM;AACrCK,MAAAA,QAAA,EAAA,qBAAqB;AAErBC,MAAAA,QAAA,EAAA,EAAE;AACNC,MAAAA,IAAA,EAAA;AACJ,QAAA,OAAO,EAAE,qBAAqB;AAC9B,QAAA,2CAA2C,EAAE,2BAA2B;AACxE,QAAA,qCAAqC,EAAE,qBAAqB;AAC5D,QAAA,sCAAsC,EAAE,UAAU;AAClD,QAAA,qCAAqC,EAAE,0BAA0B;AACjE,QAAA,kCAAkC,EAAE,uBAAuB;AAC3D,QAAA,iCAAiC,EAAE;OACpC;MAAAV,MAAA,EAAA,CAAA,iyGAAA;KAAA;;;;;YAMAW;;;YAGAA;;;YAMAA;;;;;;;"}
|
|
@@ -6,7 +6,7 @@ import { MatPseudoCheckbox } from './_pseudo-checkbox-chunk.mjs';
|
|
|
6
6
|
class MatPseudoCheckboxModule {
|
|
7
7
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
8
8
|
minVersion: "12.0.0",
|
|
9
|
-
version: "21.0.
|
|
9
|
+
version: "21.0.3",
|
|
10
10
|
ngImport: i0,
|
|
11
11
|
type: MatPseudoCheckboxModule,
|
|
12
12
|
deps: [],
|
|
@@ -14,7 +14,7 @@ class MatPseudoCheckboxModule {
|
|
|
14
14
|
});
|
|
15
15
|
static ɵmod = i0.ɵɵngDeclareNgModule({
|
|
16
16
|
minVersion: "14.0.0",
|
|
17
|
-
version: "21.0.
|
|
17
|
+
version: "21.0.3",
|
|
18
18
|
ngImport: i0,
|
|
19
19
|
type: MatPseudoCheckboxModule,
|
|
20
20
|
imports: [MatPseudoCheckbox],
|
|
@@ -22,7 +22,7 @@ class MatPseudoCheckboxModule {
|
|
|
22
22
|
});
|
|
23
23
|
static ɵinj = i0.ɵɵngDeclareInjector({
|
|
24
24
|
minVersion: "12.0.0",
|
|
25
|
-
version: "21.0.
|
|
25
|
+
version: "21.0.3",
|
|
26
26
|
ngImport: i0,
|
|
27
27
|
type: MatPseudoCheckboxModule,
|
|
28
28
|
imports: [BidiModule]
|
|
@@ -30,7 +30,7 @@ class MatPseudoCheckboxModule {
|
|
|
30
30
|
}
|
|
31
31
|
i0.ɵɵngDeclareClassMetadata({
|
|
32
32
|
minVersion: "12.0.0",
|
|
33
|
-
version: "21.0.
|
|
33
|
+
version: "21.0.3",
|
|
34
34
|
ngImport: i0,
|
|
35
35
|
type: MatPseudoCheckboxModule,
|
|
36
36
|
decorators: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_pseudo-checkbox-module-chunk.mjs","sources":["../../../../../
|
|
1
|
+
{"version":3,"file":"_pseudo-checkbox-module-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/core/selection/pseudo-checkbox/pseudo-checkbox-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 {NgModule} from '@angular/core';\nimport {MatPseudoCheckbox} from './pseudo-checkbox';\n\n@NgModule({\n imports: [MatPseudoCheckbox],\n exports: [MatPseudoCheckbox, BidiModule],\n})\nexport class MatPseudoCheckboxModule {}\n"],"names":["MatPseudoCheckboxModule","deps","target","i0","ɵɵFactoryTarget","NgModule","ɵmod","ɵɵngDeclareNgModule","minVersion","version","ngImport","type","imports","MatPseudoCheckbox","exports","BidiModule","ɵinj","ɵɵngDeclareInjector","decorators","args"],"mappings":";;;;;MAgBaA,uBAAuB,CAAA;;;;;UAAvBA,uBAAuB;AAAAC,IAAAA,IAAA,EAAA,EAAA;AAAAC,IAAAA,MAAA,EAAAC,EAAA,CAAAC,eAAA,CAAAC;AAAA,GAAA,CAAA;AAAvB,EAAA,OAAAC,IAAA,GAAAH,EAAA,CAAAI,mBAAA,CAAA;AAAAC,IAAAA,UAAA,EAAA,QAAA;AAAAC,IAAAA,OAAA,EAAA,QAAA;AAAAC,IAAAA,QAAA,EAAAP,EAAA;AAAAQ,IAAAA,IAAA,EAAAX,uBAAuB;IAHxBY,OAAA,EAAA,CAAAC,iBAAiB,CACjB;AAAAC,IAAAA,OAAA,EAAA,CAAAD,iBAAiB,EAAEE,UAAU;AAAA,GAAA,CAAA;AAE5B,EAAA,OAAAC,IAAA,GAAAb,EAAA,CAAAc,mBAAA,CAAA;AAAAT,IAAAA,UAAA,EAAA,QAAA;AAAAC,IAAAA,OAAA,EAAA,QAAA;AAAAC,IAAAA,QAAA,EAAAP,EAAA;AAAAQ,IAAAA,IAAA,EAAAX,uBAAuB;cAFLe,UAAU;AAAA,GAAA,CAAA;;;;;;QAE5Bf,uBAAuB;AAAAkB,EAAAA,UAAA,EAAA,CAAA;UAJnCb,QAAQ;AAACc,IAAAA,IAAA,EAAA,CAAA;MACRP,OAAO,EAAE,CAACC,iBAAiB,CAAC;AAC5BC,MAAAA,OAAO,EAAE,CAACD,iBAAiB,EAAEE,UAAU;KACxC;;;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_public-api-chunk.mjs","sources":["../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/tile-coordinator.ts","../../../../../k8-fastbuild-ST-199a4f3c4e20/bin/src/material/grid-list/public-api.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\n/**\n * Interface describing a tile.\n * @docs-private\n */\nexport interface Tile {\n /** Amount of rows that the tile takes up. */\n rowspan: number;\n /** Amount of columns that the tile takes up. */\n colspan: number;\n}\n\n/**\n * Class for determining, from a list of tiles, the (row, col) position of each of those tiles\n * in the grid. This is necessary (rather than just rendering the tiles in normal document flow)\n * because the tiles can have a rowspan.\n *\n * The positioning algorithm greedily places each tile as soon as it encounters a gap in the grid\n * large enough to accommodate it so that the tiles still render in the same order in which they\n * are given.\n *\n * The basis of the algorithm is the use of an array to track the already placed tiles. Each\n * element of the array corresponds to a column, and the value indicates how many cells in that\n * column are already occupied; zero indicates an empty cell. Moving \"down\" to the next row\n * decrements each value in the tracking array (indicating that the column is one cell closer to\n * being free).\n *\n * @docs-private\n */\nexport class TileCoordinator {\n /** Tracking array (see class description). */\n tracker: number[];\n\n /** Index at which the search for the next gap will start. */\n columnIndex: number = 0;\n\n /** The current row index. */\n rowIndex: number = 0;\n\n /** Gets the total number of rows occupied by tiles */\n get rowCount(): number {\n return this.rowIndex + 1;\n }\n\n /**\n * Gets the total span of rows occupied by tiles.\n * Ex: A list with 1 row that contains a tile with rowspan 2 will have a total rowspan of 2.\n */\n get rowspan() {\n const lastRowMax = Math.max(...this.tracker);\n // if any of the tiles has a rowspan that pushes it beyond the total row count,\n // add the difference to the rowcount\n return lastRowMax > 1 ? this.rowCount + lastRowMax - 1 : this.rowCount;\n }\n\n /** The computed (row, col) position of each tile (the output). */\n positions: TilePosition[];\n\n /**\n * Updates the tile positions.\n * @param numColumns Amount of columns in the grid.\n * @param tiles Tiles to be positioned.\n */\n update(numColumns: number, tiles: Tile[]) {\n this.columnIndex = 0;\n this.rowIndex = 0;\n\n this.tracker = new Array(numColumns);\n this.tracker.fill(0, 0, this.tracker.length);\n this.positions = tiles.map(tile => this._trackTile(tile));\n }\n\n /** Calculates the row and col position of a tile. */\n private _trackTile(tile: Tile): TilePosition {\n // Find a gap large enough for this tile.\n const gapStartIndex = this._findMatchingGap(tile.colspan);\n\n // Place tile in the resulting gap.\n this._markTilePosition(gapStartIndex, tile);\n\n // The next time we look for a gap, the search will start at columnIndex, which should be\n // immediately after the tile that has just been placed.\n this.columnIndex = gapStartIndex + tile.colspan;\n\n return new TilePosition(this.rowIndex, gapStartIndex);\n }\n\n /** Finds the next available space large enough to fit the tile. */\n private _findMatchingGap(tileCols: number): number {\n if (tileCols > this.tracker.length && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error(\n `mat-grid-list: tile with colspan ${tileCols} is wider than ` +\n `grid with cols=\"${this.tracker.length}\".`,\n );\n }\n\n // Start index is inclusive, end index is exclusive.\n let gapStartIndex = -1;\n let gapEndIndex = -1;\n\n // Look for a gap large enough to fit the given tile. Empty spaces are marked with a zero.\n do {\n // If we've reached the end of the row, go to the next row.\n if (this.columnIndex + tileCols > this.tracker.length) {\n this._nextRow();\n gapStartIndex = this.tracker.indexOf(0, this.columnIndex);\n gapEndIndex = this._findGapEndIndex(gapStartIndex);\n continue;\n }\n\n gapStartIndex = this.tracker.indexOf(0, this.columnIndex);\n\n // If there are no more empty spaces in this row at all, move on to the next row.\n if (gapStartIndex == -1) {\n this._nextRow();\n gapStartIndex = this.tracker.indexOf(0, this.columnIndex);\n gapEndIndex = this._findGapEndIndex(gapStartIndex);\n continue;\n }\n\n gapEndIndex = this._findGapEndIndex(gapStartIndex);\n\n // If a gap large enough isn't found, we want to start looking immediately after the current\n // gap on the next iteration.\n this.columnIndex = gapStartIndex + 1;\n\n // Continue iterating until we find a gap wide enough for this tile. Since gapEndIndex is\n // exclusive, gapEndIndex is 0 means we didn't find a gap and should continue.\n } while (gapEndIndex - gapStartIndex < tileCols || gapEndIndex == 0);\n\n // If we still didn't manage to find a gap, ensure that the index is\n // at least zero so the tile doesn't get pulled out of the grid.\n return Math.max(gapStartIndex, 0);\n }\n\n /** Move \"down\" to the next row. */\n private _nextRow(): void {\n this.columnIndex = 0;\n this.rowIndex++;\n\n // Decrement all spaces by one to reflect moving down one row.\n for (let i = 0; i < this.tracker.length; i++) {\n this.tracker[i] = Math.max(0, this.tracker[i] - 1);\n }\n }\n\n /**\n * Finds the end index (exclusive) of a gap given the index from which to start looking.\n * The gap ends when a non-zero value is found.\n */\n private _findGapEndIndex(gapStartIndex: number): number {\n for (let i = gapStartIndex + 1; i < this.tracker.length; i++) {\n if (this.tracker[i] != 0) {\n return i;\n }\n }\n\n // The gap ends with the end of the row.\n return this.tracker.length;\n }\n\n /** Update the tile tracker to account for the given tile in the given space. */\n private _markTilePosition(start: number, tile: Tile): void {\n for (let i = 0; i < tile.colspan; i++) {\n this.tracker[start + i] = tile.rowspan;\n }\n }\n}\n\n/**\n * Simple data structure for tile position (row, col).\n * @docs-private\n */\nexport class TilePosition {\n constructor(\n public row: number,\n public col: number,\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 */\nimport {TileCoordinator} from './tile-coordinator';\n\nexport * from './grid-list-module';\nexport * from './grid-list';\nexport * from './grid-tile';\n\n// Privately exported for the grid-list harness.\nexport const ɵTileCoordinator = TileCoordinator;\n"],"names":["TileCoordinator","tracker","columnIndex","rowIndex","rowCount","rowspan","lastRowMax","Math","max","positions","update","numColumns","tiles","Array","fill","length","map","tile","_trackTile","gapStartIndex","_findMatchingGap","colspan","_markTilePosition","TilePosition","tileCols","ngDevMode","Error","gapEndIndex","_nextRow","indexOf","_findGapEndIndex","i","start","row","col","constructor","ɵTileCoordinator"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"_public-api-chunk.mjs","sources":["../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/grid-list/tile-coordinator.ts","../../../../../darwin_arm64-fastbuild-ST-fdfa778d11ba/bin/src/material/grid-list/public-api.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\n/**\n * Interface describing a tile.\n * @docs-private\n */\nexport interface Tile {\n /** Amount of rows that the tile takes up. */\n rowspan: number;\n /** Amount of columns that the tile takes up. */\n colspan: number;\n}\n\n/**\n * Class for determining, from a list of tiles, the (row, col) position of each of those tiles\n * in the grid. This is necessary (rather than just rendering the tiles in normal document flow)\n * because the tiles can have a rowspan.\n *\n * The positioning algorithm greedily places each tile as soon as it encounters a gap in the grid\n * large enough to accommodate it so that the tiles still render in the same order in which they\n * are given.\n *\n * The basis of the algorithm is the use of an array to track the already placed tiles. Each\n * element of the array corresponds to a column, and the value indicates how many cells in that\n * column are already occupied; zero indicates an empty cell. Moving \"down\" to the next row\n * decrements each value in the tracking array (indicating that the column is one cell closer to\n * being free).\n *\n * @docs-private\n */\nexport class TileCoordinator {\n /** Tracking array (see class description). */\n tracker: number[];\n\n /** Index at which the search for the next gap will start. */\n columnIndex: number = 0;\n\n /** The current row index. */\n rowIndex: number = 0;\n\n /** Gets the total number of rows occupied by tiles */\n get rowCount(): number {\n return this.rowIndex + 1;\n }\n\n /**\n * Gets the total span of rows occupied by tiles.\n * Ex: A list with 1 row that contains a tile with rowspan 2 will have a total rowspan of 2.\n */\n get rowspan() {\n const lastRowMax = Math.max(...this.tracker);\n // if any of the tiles has a rowspan that pushes it beyond the total row count,\n // add the difference to the rowcount\n return lastRowMax > 1 ? this.rowCount + lastRowMax - 1 : this.rowCount;\n }\n\n /** The computed (row, col) position of each tile (the output). */\n positions: TilePosition[];\n\n /**\n * Updates the tile positions.\n * @param numColumns Amount of columns in the grid.\n * @param tiles Tiles to be positioned.\n */\n update(numColumns: number, tiles: Tile[]) {\n this.columnIndex = 0;\n this.rowIndex = 0;\n\n this.tracker = new Array(numColumns);\n this.tracker.fill(0, 0, this.tracker.length);\n this.positions = tiles.map(tile => this._trackTile(tile));\n }\n\n /** Calculates the row and col position of a tile. */\n private _trackTile(tile: Tile): TilePosition {\n // Find a gap large enough for this tile.\n const gapStartIndex = this._findMatchingGap(tile.colspan);\n\n // Place tile in the resulting gap.\n this._markTilePosition(gapStartIndex, tile);\n\n // The next time we look for a gap, the search will start at columnIndex, which should be\n // immediately after the tile that has just been placed.\n this.columnIndex = gapStartIndex + tile.colspan;\n\n return new TilePosition(this.rowIndex, gapStartIndex);\n }\n\n /** Finds the next available space large enough to fit the tile. */\n private _findMatchingGap(tileCols: number): number {\n if (tileCols > this.tracker.length && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error(\n `mat-grid-list: tile with colspan ${tileCols} is wider than ` +\n `grid with cols=\"${this.tracker.length}\".`,\n );\n }\n\n // Start index is inclusive, end index is exclusive.\n let gapStartIndex = -1;\n let gapEndIndex = -1;\n\n // Look for a gap large enough to fit the given tile. Empty spaces are marked with a zero.\n do {\n // If we've reached the end of the row, go to the next row.\n if (this.columnIndex + tileCols > this.tracker.length) {\n this._nextRow();\n gapStartIndex = this.tracker.indexOf(0, this.columnIndex);\n gapEndIndex = this._findGapEndIndex(gapStartIndex);\n continue;\n }\n\n gapStartIndex = this.tracker.indexOf(0, this.columnIndex);\n\n // If there are no more empty spaces in this row at all, move on to the next row.\n if (gapStartIndex == -1) {\n this._nextRow();\n gapStartIndex = this.tracker.indexOf(0, this.columnIndex);\n gapEndIndex = this._findGapEndIndex(gapStartIndex);\n continue;\n }\n\n gapEndIndex = this._findGapEndIndex(gapStartIndex);\n\n // If a gap large enough isn't found, we want to start looking immediately after the current\n // gap on the next iteration.\n this.columnIndex = gapStartIndex + 1;\n\n // Continue iterating until we find a gap wide enough for this tile. Since gapEndIndex is\n // exclusive, gapEndIndex is 0 means we didn't find a gap and should continue.\n } while (gapEndIndex - gapStartIndex < tileCols || gapEndIndex == 0);\n\n // If we still didn't manage to find a gap, ensure that the index is\n // at least zero so the tile doesn't get pulled out of the grid.\n return Math.max(gapStartIndex, 0);\n }\n\n /** Move \"down\" to the next row. */\n private _nextRow(): void {\n this.columnIndex = 0;\n this.rowIndex++;\n\n // Decrement all spaces by one to reflect moving down one row.\n for (let i = 0; i < this.tracker.length; i++) {\n this.tracker[i] = Math.max(0, this.tracker[i] - 1);\n }\n }\n\n /**\n * Finds the end index (exclusive) of a gap given the index from which to start looking.\n * The gap ends when a non-zero value is found.\n */\n private _findGapEndIndex(gapStartIndex: number): number {\n for (let i = gapStartIndex + 1; i < this.tracker.length; i++) {\n if (this.tracker[i] != 0) {\n return i;\n }\n }\n\n // The gap ends with the end of the row.\n return this.tracker.length;\n }\n\n /** Update the tile tracker to account for the given tile in the given space. */\n private _markTilePosition(start: number, tile: Tile): void {\n for (let i = 0; i < tile.colspan; i++) {\n this.tracker[start + i] = tile.rowspan;\n }\n }\n}\n\n/**\n * Simple data structure for tile position (row, col).\n * @docs-private\n */\nexport class TilePosition {\n constructor(\n public row: number,\n public col: number,\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 */\nimport {TileCoordinator} from './tile-coordinator';\n\nexport * from './grid-list-module';\nexport * from './grid-list';\nexport * from './grid-tile';\n\n// Privately exported for the grid-list harness.\nexport const ɵTileCoordinator = TileCoordinator;\n"],"names":["TileCoordinator","tracker","columnIndex","rowIndex","rowCount","rowspan","lastRowMax","Math","max","positions","update","numColumns","tiles","Array","fill","length","map","tile","_trackTile","gapStartIndex","_findMatchingGap","colspan","_markTilePosition","TilePosition","tileCols","ngDevMode","Error","gapEndIndex","_nextRow","indexOf","_findGapEndIndex","i","start","row","col","constructor","ɵTileCoordinator"],"mappings":"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"}
|
|
@@ -96,7 +96,7 @@ const pointerUpEvents = ['mouseup', 'mouseleave', 'touchend', 'touchcancel'];
|
|
|
96
96
|
class _MatRippleStylesLoader {
|
|
97
97
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
98
98
|
minVersion: "12.0.0",
|
|
99
|
-
version: "21.0.
|
|
99
|
+
version: "21.0.3",
|
|
100
100
|
ngImport: i0,
|
|
101
101
|
type: _MatRippleStylesLoader,
|
|
102
102
|
deps: [],
|
|
@@ -104,7 +104,7 @@ class _MatRippleStylesLoader {
|
|
|
104
104
|
});
|
|
105
105
|
static ɵcmp = i0.ɵɵngDeclareComponent({
|
|
106
106
|
minVersion: "14.0.0",
|
|
107
|
-
version: "21.0.
|
|
107
|
+
version: "21.0.3",
|
|
108
108
|
type: _MatRippleStylesLoader,
|
|
109
109
|
isStandalone: true,
|
|
110
110
|
selector: "ng-component",
|
|
@@ -123,7 +123,7 @@ class _MatRippleStylesLoader {
|
|
|
123
123
|
}
|
|
124
124
|
i0.ɵɵngDeclareClassMetadata({
|
|
125
125
|
minVersion: "12.0.0",
|
|
126
|
-
version: "21.0.
|
|
126
|
+
version: "21.0.3",
|
|
127
127
|
ngImport: i0,
|
|
128
128
|
type: _MatRippleStylesLoader,
|
|
129
129
|
decorators: [{
|
|
@@ -460,7 +460,7 @@ class MatRipple {
|
|
|
460
460
|
}
|
|
461
461
|
static ɵfac = i0.ɵɵngDeclareFactory({
|
|
462
462
|
minVersion: "12.0.0",
|
|
463
|
-
version: "21.0.
|
|
463
|
+
version: "21.0.3",
|
|
464
464
|
ngImport: i0,
|
|
465
465
|
type: MatRipple,
|
|
466
466
|
deps: [],
|
|
@@ -468,7 +468,7 @@ class MatRipple {
|
|
|
468
468
|
});
|
|
469
469
|
static ɵdir = i0.ɵɵngDeclareDirective({
|
|
470
470
|
minVersion: "14.0.0",
|
|
471
|
-
version: "21.0.
|
|
471
|
+
version: "21.0.3",
|
|
472
472
|
type: MatRipple,
|
|
473
473
|
isStandalone: true,
|
|
474
474
|
selector: "[mat-ripple], [matRipple]",
|
|
@@ -493,7 +493,7 @@ class MatRipple {
|
|
|
493
493
|
}
|
|
494
494
|
i0.ɵɵngDeclareClassMetadata({
|
|
495
495
|
minVersion: "12.0.0",
|
|
496
|
-
version: "21.0.
|
|
496
|
+
version: "21.0.3",
|
|
497
497
|
ngImport: i0,
|
|
498
498
|
type: MatRipple,
|
|
499
499
|
decorators: [{
|