{"version":3,"sources":["node_modules/@angular/material/fesm2022/button-toggle.mjs"],"sourcesContent":["import * as i2 from '@angular/cdk/a11y';\nimport { SelectionModel } from '@angular/cdk/collections';\nimport { RIGHT_ARROW, DOWN_ARROW, LEFT_ARROW, UP_ARROW, ENTER, SPACE } from '@angular/cdk/keycodes';\nimport * as i0 from '@angular/core';\nimport { InjectionToken, forwardRef, EventEmitter, booleanAttribute, Directive, Optional, Inject, ContentChildren, Input, Output, Component, ViewEncapsulation, ChangeDetectionStrategy, Attribute, ViewChild, NgModule } from '@angular/core';\nimport * as i1 from '@angular/cdk/bidi';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { MatRipple, MatPseudoCheckbox, MatCommonModule, MatRippleModule } from '@angular/material/core';\n\n/**\n * Injection token that can be used to configure the\n * default options for all button toggles within an app.\n */\nconst _c0 = [\"button\"];\nconst _c1 = [\"*\"];\nfunction MatButtonToggle_Conditional_3_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"mat-pseudo-checkbox\", 3);\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵproperty(\"disabled\", ctx_r1.disabled);\n }\n}\nfunction MatButtonToggle_Conditional_4_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"mat-pseudo-checkbox\", 3);\n }\n if (rf & 2) {\n const ctx_r1 = i0.ɵɵnextContext();\n i0.ɵɵproperty(\"disabled\", ctx_r1.disabled);\n }\n}\nconst MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS = /*#__PURE__*/new InjectionToken('MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS', {\n providedIn: 'root',\n factory: MAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY\n});\nfunction MAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY() {\n return {\n hideSingleSelectionIndicator: false,\n hideMultipleSelectionIndicator: false\n };\n}\n/**\n * Injection token that can be used to reference instances of `MatButtonToggleGroup`.\n * It serves as alternative token to the actual `MatButtonToggleGroup` class which\n * could cause unnecessary retention of the class and its component metadata.\n */\nconst MAT_BUTTON_TOGGLE_GROUP = /*#__PURE__*/new InjectionToken('MatButtonToggleGroup');\n/**\n * Provider Expression that allows mat-button-toggle-group to register as a ControlValueAccessor.\n * This allows it to support [(ngModel)].\n * @docs-private\n */\nconst MAT_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: /*#__PURE__*/forwardRef(() => MatButtonToggleGroup),\n multi: true\n};\n// Counter used to generate unique IDs.\nlet uniqueIdCounter = 0;\n/** Change event object emitted by button toggle. */\nclass MatButtonToggleChange {\n constructor( /** The button toggle that emits the event. */\n source, /** The value assigned to the button toggle. */\n value) {\n this.source = source;\n this.value = value;\n }\n}\n/** Exclusive selection button toggle group that behaves like a radio-button group. */\nlet MatButtonToggleGroup = /*#__PURE__*/(() => {\n class MatButtonToggleGroup {\n /** `name` attribute for the underlying `input` element. */\n get name() {\n return this._name;\n }\n set name(value) {\n this._name = value;\n this._markButtonsForCheck();\n }\n /** Value of the toggle group. */\n get value() {\n const selected = this._selectionModel ? this._selectionModel.selected : [];\n if (this.multiple) {\n return selected.map(toggle => toggle.value);\n }\n return selected[0] ? selected[0].value : undefined;\n }\n set value(newValue) {\n this._setSelectionByValue(newValue);\n this.valueChange.emit(this.value);\n }\n /** Selected button toggles in the group. */\n get selected() {\n const selected = this._selectionModel ? this._selectionModel.selected : [];\n return this.multiple ? selected : selected[0] || null;\n }\n /** Whether multiple button toggles can be selected. */\n get multiple() {\n return this._multiple;\n }\n set multiple(value) {\n this._multiple = value;\n this._markButtonsForCheck();\n }\n /** Whether multiple button toggle group is disabled. */\n get disabled() {\n return this._disabled;\n }\n set disabled(value) {\n this._disabled = value;\n this._markButtonsForCheck();\n }\n /** The layout direction of the toggle button group. */\n get dir() {\n return this._dir && this._dir.value === 'rtl' ? 'rtl' : 'ltr';\n }\n /** Whether checkmark indicator for single-selection button toggle groups is hidden. */\n get hideSingleSelectionIndicator() {\n return this._hideSingleSelectionIndicator;\n }\n set hideSingleSelectionIndicator(value) {\n this._hideSingleSelectionIndicator = value;\n this._markButtonsForCheck();\n }\n /** Whether checkmark indicator for multiple-selection button toggle groups is hidden. */\n get hideMultipleSelectionIndicator() {\n return this._hideMultipleSelectionIndicator;\n }\n set hideMultipleSelectionIndicator(value) {\n this._hideMultipleSelectionIndicator = value;\n this._markButtonsForCheck();\n }\n constructor(_changeDetector, defaultOptions, _dir) {\n this._changeDetector = _changeDetector;\n this._dir = _dir;\n this._multiple = false;\n this._disabled = false;\n /**\n * The method to be called in order to update ngModel.\n * Now `ngModel` binding is not supported in multiple selection mode.\n */\n this._controlValueAccessorChangeFn = () => {};\n /** onTouch function registered via registerOnTouch (ControlValueAccessor). */\n this._onTouched = () => {};\n this._name = `mat-button-toggle-group-${uniqueIdCounter++}`;\n /**\n * Event that emits whenever the value of the group changes.\n * Used to facilitate two-way data binding.\n * @docs-private\n */\n this.valueChange = new EventEmitter();\n /** Event emitted when the group's value changes. */\n this.change = new EventEmitter();\n this.appearance = defaultOptions && defaultOptions.appearance ? defaultOptions.appearance : 'standard';\n this.hideSingleSelectionIndicator = defaultOptions?.hideSingleSelectionIndicator ?? false;\n this.hideMultipleSelectionIndicator = defaultOptions?.hideMultipleSelectionIndicator ?? false;\n }\n ngOnInit() {\n this._selectionModel = new SelectionModel(this.multiple, undefined, false);\n }\n ngAfterContentInit() {\n this._selectionModel.select(...this._buttonToggles.filter(toggle => toggle.checked));\n if (!this.multiple) {\n this._initializeTabIndex();\n }\n }\n /**\n * Sets the model value. Implemented as part of ControlValueAccessor.\n * @param value Value to be set to the model.\n */\n writeValue(value) {\n this.value = value;\n this._changeDetector.markForCheck();\n }\n // Implemented as part of ControlValueAccessor.\n registerOnChange(fn) {\n this._controlValueAccessorChangeFn = fn;\n }\n // Implemented as part of ControlValueAccessor.\n registerOnTouched(fn) {\n this._onTouched = fn;\n }\n // Implemented as part of ControlValueAccessor.\n setDisabledState(isDisabled) {\n this.disabled = isDisabled;\n }\n /** Handle keydown event calling to single-select button toggle. */\n _keydown(event) {\n if (this.multiple || this.disabled) {\n return;\n }\n const target = event.target;\n const buttonId = target.id;\n const index = this._buttonToggles.toArray().findIndex(toggle => {\n return toggle.buttonId === buttonId;\n });\n let nextButton = null;\n switch (event.keyCode) {\n case SPACE:\n case ENTER:\n nextButton = this._buttonToggles.get(index) || null;\n break;\n case UP_ARROW:\n nextButton = this._getNextButton(index, -1);\n break;\n case LEFT_ARROW:\n nextButton = this._getNextButton(index, this.dir === 'ltr' ? -1 : 1);\n break;\n case DOWN_ARROW:\n nextButton = this._getNextButton(index, 1);\n break;\n case RIGHT_ARROW:\n nextButton = this._getNextButton(index, this.dir === 'ltr' ? 1 : -1);\n break;\n default:\n return;\n }\n if (nextButton) {\n event.preventDefault();\n nextButton._onButtonClick();\n nextButton.focus();\n }\n }\n /** Dispatch change event with current selection and group value. */\n _emitChangeEvent(toggle) {\n const event = new MatButtonToggleChange(toggle, this.value);\n this._rawValue = event.value;\n this._controlValueAccessorChangeFn(event.value);\n this.change.emit(event);\n }\n /**\n * Syncs a button toggle's selected state with the model value.\n * @param toggle Toggle to be synced.\n * @param select Whether the toggle should be selected.\n * @param isUserInput Whether the change was a result of a user interaction.\n * @param deferEvents Whether to defer emitting the change events.\n */\n _syncButtonToggle(toggle, select, isUserInput = false, deferEvents = false) {\n // Deselect the currently-selected toggle, if we're in single-selection\n // mode and the button being toggled isn't selected at the moment.\n if (!this.multiple && this.selected && !toggle.checked) {\n this.selected.checked = false;\n }\n if (this._selectionModel) {\n if (select) {\n this._selectionModel.select(toggle);\n } else {\n this._selectionModel.deselect(toggle);\n }\n } else {\n deferEvents = true;\n }\n // We need to defer in some cases in order to avoid \"changed after checked errors\", however\n // the side-effect is that we may end up updating the model value out of sequence in others\n // The `deferEvents` flag allows us to decide whether to do it on a case-by-case basis.\n if (deferEvents) {\n Promise.resolve().then(() => this._updateModelValue(toggle, isUserInput));\n } else {\n this._updateModelValue(toggle, isUserInput);\n }\n }\n /** Checks whether a button toggle is selected. */\n _isSelected(toggle) {\n return this._selectionModel && this._selectionModel.isSelected(toggle);\n }\n /** Determines whether a button toggle should be checked on init. */\n _isPrechecked(toggle) {\n if (typeof this._rawValue === 'undefined') {\n return false;\n }\n if (this.multiple && Array.isArray(this._rawValue)) {\n return this._rawValue.some(value => toggle.value != null && value === toggle.value);\n }\n return toggle.value === this._rawValue;\n }\n /** Initializes the tabindex attribute using the radio pattern. */\n _initializeTabIndex() {\n this._buttonToggles.forEach(toggle => {\n toggle.tabIndex = -1;\n });\n if (this.selected) {\n this.selected.tabIndex = 0;\n } else {\n for (let i = 0; i < this._buttonToggles.length; i++) {\n const toggle = this._buttonToggles.get(i);\n if (!toggle.disabled) {\n toggle.tabIndex = 0;\n break;\n }\n }\n }\n this._markButtonsForCheck();\n }\n /** Obtain the subsequent toggle to which the focus shifts. */\n _getNextButton(startIndex, offset) {\n const items = this._buttonToggles;\n for (let i = 1; i <= items.length; i++) {\n const index = (startIndex + offset * i + items.length) % items.length;\n const item = items.get(index);\n if (item && !item.disabled) {\n return item;\n }\n }\n return null;\n }\n /** Updates the selection state of the toggles in the group based on a value. */\n _setSelectionByValue(value) {\n this._rawValue = value;\n if (!this._buttonToggles) {\n return;\n }\n if (this.multiple && value) {\n if (!Array.isArray(value) && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('Value must be an array in multiple-selection mode.');\n }\n this._clearSelection();\n value.forEach(currentValue => this._selectValue(currentValue));\n } else {\n this._clearSelection();\n this._selectValue(value);\n }\n }\n /** Clears the selected toggles. */\n _clearSelection() {\n this._selectionModel.clear();\n this._buttonToggles.forEach(toggle => {\n toggle.checked = false;\n // If the button toggle is in single select mode, initialize the tabIndex.\n if (!this.multiple) {\n toggle.tabIndex = -1;\n }\n });\n }\n /** Selects a value if there's a toggle that corresponds to it. */\n _selectValue(value) {\n const correspondingOption = this._buttonToggles.find(toggle => {\n return toggle.value != null && toggle.value === value;\n });\n if (correspondingOption) {\n correspondingOption.checked = true;\n this._selectionModel.select(correspondingOption);\n if (!this.multiple) {\n // If the button toggle is in single select mode, reset the tabIndex.\n correspondingOption.tabIndex = 0;\n }\n }\n }\n /** Syncs up the group's value with the model and emits the change event. */\n _updateModelValue(toggle, isUserInput) {\n // Only emit the change event for user input.\n if (isUserInput) {\n this._emitChangeEvent(toggle);\n }\n // Note: we emit this one no matter whether it was a user interaction, because\n // it is used by Angular to sync up the two-way data binding.\n this.valueChange.emit(this.value);\n }\n /** Marks all of the child button toggles to be checked. */\n _markButtonsForCheck() {\n this._buttonToggles?.forEach(toggle => toggle._markForCheck());\n }\n static {\n this.ɵfac = function MatButtonToggleGroup_Factory(t) {\n return new (t || MatButtonToggleGroup)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS, 8), i0.ɵɵdirectiveInject(i1.Directionality, 8));\n };\n }\n static {\n this.ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: MatButtonToggleGroup,\n selectors: [[\"mat-button-toggle-group\"]],\n contentQueries: function MatButtonToggleGroup_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, MatButtonToggle, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._buttonToggles = _t);\n }\n },\n hostAttrs: [1, \"mat-button-toggle-group\"],\n hostVars: 6,\n hostBindings: function MatButtonToggleGroup_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"keydown\", function MatButtonToggleGroup_keydown_HostBindingHandler($event) {\n return ctx._keydown($event);\n });\n }\n if (rf & 2) {\n i0.ɵɵattribute(\"role\", ctx.multiple ? \"group\" : \"radiogroup\")(\"aria-disabled\", ctx.disabled);\n i0.ɵɵclassProp(\"mat-button-toggle-vertical\", ctx.vertical)(\"mat-button-toggle-group-appearance-standard\", ctx.appearance === \"standard\");\n }\n },\n inputs: {\n appearance: \"appearance\",\n name: \"name\",\n vertical: [2, \"vertical\", \"vertical\", booleanAttribute],\n value: \"value\",\n multiple: [2, \"multiple\", \"multiple\", booleanAttribute],\n disabled: [2, \"disabled\", \"disabled\", booleanAttribute],\n hideSingleSelectionIndicator: [2, \"hideSingleSelectionIndicator\", \"hideSingleSelectionIndicator\", booleanAttribute],\n hideMultipleSelectionIndicator: [2, \"hideMultipleSelectionIndicator\", \"hideMultipleSelectionIndicator\", booleanAttribute]\n },\n outputs: {\n valueChange: \"valueChange\",\n change: \"change\"\n },\n exportAs: [\"matButtonToggleGroup\"],\n standalone: true,\n features: [i0.ɵɵProvidersFeature([MAT_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR, {\n provide: MAT_BUTTON_TOGGLE_GROUP,\n useExisting: MatButtonToggleGroup\n }]), i0.ɵɵInputTransformsFeature]\n });\n }\n }\n return MatButtonToggleGroup;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n/** Single button inside of a toggle group. */\nlet MatButtonToggle = /*#__PURE__*/(() => {\n class MatButtonToggle {\n /** Unique ID for the underlying `button` element. */\n get buttonId() {\n return `${this.id}-button`;\n }\n /** Tabindex of the toggle. */\n get tabIndex() {\n return this._tabIndex;\n }\n set tabIndex(value) {\n this._tabIndex = value;\n this._markForCheck();\n }\n /** The appearance style of the button. */\n get appearance() {\n return this.buttonToggleGroup ? this.buttonToggleGroup.appearance : this._appearance;\n }\n set appearance(value) {\n this._appearance = value;\n }\n /** Whether the button is checked. */\n get checked() {\n return this.buttonToggleGroup ? this.buttonToggleGroup._isSelected(this) : this._checked;\n }\n set checked(value) {\n if (value !== this._checked) {\n this._checked = value;\n if (this.buttonToggleGroup) {\n this.buttonToggleGroup._syncButtonToggle(this, this._checked);\n }\n this._changeDetectorRef.markForCheck();\n }\n }\n /** Whether the button is disabled. */\n get disabled() {\n return this._disabled || this.buttonToggleGroup && this.buttonToggleGroup.disabled;\n }\n set disabled(value) {\n this._disabled = value;\n }\n constructor(toggleGroup, _changeDetectorRef, _elementRef, _focusMonitor, defaultTabIndex, defaultOptions) {\n this._changeDetectorRef = _changeDetectorRef;\n this._elementRef = _elementRef;\n this._focusMonitor = _focusMonitor;\n this._checked = false;\n /**\n * Users can specify the `aria-labelledby` attribute which will be forwarded to the input element\n */\n this.ariaLabelledby = null;\n this._disabled = false;\n /** Event emitted when the group value changes. */\n this.change = new EventEmitter();\n const parsedTabIndex = Number(defaultTabIndex);\n this.tabIndex = parsedTabIndex || parsedTabIndex === 0 ? parsedTabIndex : null;\n this.buttonToggleGroup = toggleGroup;\n this.appearance = defaultOptions && defaultOptions.appearance ? defaultOptions.appearance : 'standard';\n }\n ngOnInit() {\n const group = this.buttonToggleGroup;\n this.id = this.id || `mat-button-toggle-${uniqueIdCounter++}`;\n if (group) {\n if (group._isPrechecked(this)) {\n this.checked = true;\n } else if (group._isSelected(this) !== this._checked) {\n // As side effect of the circular dependency between the toggle group and the button,\n // we may end up in a state where the button is supposed to be checked on init, but it\n // isn't, because the checked value was assigned too early. This can happen when Ivy\n // assigns the static input value before the `ngOnInit` has run.\n group._syncButtonToggle(this, this._checked);\n }\n }\n }\n ngAfterViewInit() {\n this._focusMonitor.monitor(this._elementRef, true);\n }\n ngOnDestroy() {\n const group = this.buttonToggleGroup;\n this._focusMonitor.stopMonitoring(this._elementRef);\n // Remove the toggle from the selection once it's destroyed. Needs to happen\n // on the next tick in order to avoid \"changed after checked\" errors.\n if (group && group._isSelected(this)) {\n group._syncButtonToggle(this, false, false, true);\n }\n }\n /** Focuses the button. */\n focus(options) {\n this._buttonElement.nativeElement.focus(options);\n }\n /** Checks the button toggle due to an interaction with the underlying native button. */\n _onButtonClick() {\n const newChecked = this.isSingleSelector() ? true : !this._checked;\n if (newChecked !== this._checked) {\n this._checked = newChecked;\n if (this.buttonToggleGroup) {\n this.buttonToggleGroup._syncButtonToggle(this, this._checked, true);\n this.buttonToggleGroup._onTouched();\n }\n }\n if (this.isSingleSelector()) {\n const focusable = this.buttonToggleGroup._buttonToggles.find(toggle => {\n return toggle.tabIndex === 0;\n });\n // Modify the tabindex attribute of the last focusable button toggle to -1.\n if (focusable) {\n focusable.tabIndex = -1;\n }\n // Modify the tabindex attribute of the presently selected button toggle to 0.\n this.tabIndex = 0;\n }\n // Emit a change event when it's the single selector\n this.change.emit(new MatButtonToggleChange(this, this.value));\n }\n /**\n * Marks the button toggle as needing checking for change detection.\n * This method is exposed because the parent button toggle group will directly\n * update bound properties of the radio button.\n */\n _markForCheck() {\n // When the group value changes, the button will not be notified.\n // Use `markForCheck` to explicit update button toggle's status.\n this._changeDetectorRef.markForCheck();\n }\n /** Gets the name that should be assigned to the inner DOM node. */\n _getButtonName() {\n if (this.isSingleSelector()) {\n return this.buttonToggleGroup.name;\n }\n return this.name || null;\n }\n /** Whether the toggle is in single selection mode. */\n isSingleSelector() {\n return this.buttonToggleGroup && !this.buttonToggleGroup.multiple;\n }\n static {\n this.ɵfac = function MatButtonToggle_Factory(t) {\n return new (t || MatButtonToggle)(i0.ɵɵdirectiveInject(MAT_BUTTON_TOGGLE_GROUP, 8), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i2.FocusMonitor), i0.ɵɵinjectAttribute('tabindex'), i0.ɵɵdirectiveInject(MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS, 8));\n };\n }\n static {\n this.ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: MatButtonToggle,\n selectors: [[\"mat-button-toggle\"]],\n viewQuery: function MatButtonToggle_Query(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵviewQuery(_c0, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._buttonElement = _t.first);\n }\n },\n hostAttrs: [\"role\", \"presentation\", 1, \"mat-button-toggle\"],\n hostVars: 12,\n hostBindings: function MatButtonToggle_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"focus\", function MatButtonToggle_focus_HostBindingHandler() {\n return ctx.focus();\n });\n }\n if (rf & 2) {\n i0.ɵɵattribute(\"aria-label\", null)(\"aria-labelledby\", null)(\"id\", ctx.id)(\"name\", null);\n i0.ɵɵclassProp(\"mat-button-toggle-standalone\", !ctx.buttonToggleGroup)(\"mat-button-toggle-checked\", ctx.checked)(\"mat-button-toggle-disabled\", ctx.disabled)(\"mat-button-toggle-appearance-standard\", ctx.appearance === \"standard\");\n }\n },\n inputs: {\n ariaLabel: [0, \"aria-label\", \"ariaLabel\"],\n ariaLabelledby: [0, \"aria-labelledby\", \"ariaLabelledby\"],\n id: \"id\",\n name: \"name\",\n value: \"value\",\n tabIndex: \"tabIndex\",\n disableRipple: [2, \"disableRipple\", \"disableRipple\", booleanAttribute],\n appearance: \"appearance\",\n checked: [2, \"checked\", \"checked\", booleanAttribute],\n disabled: [2, \"disabled\", \"disabled\", booleanAttribute]\n },\n outputs: {\n change: \"change\"\n },\n exportAs: [\"matButtonToggle\"],\n standalone: true,\n features: [i0.ɵɵInputTransformsFeature, i0.ɵɵStandaloneFeature],\n ngContentSelectors: _c1,\n decls: 8,\n vars: 13,\n consts: [[\"button\", \"\"], [\"type\", \"button\", 1, \"mat-button-toggle-button\", \"mat-focus-indicator\", 3, \"click\", \"id\", \"disabled\"], [1, \"mat-button-toggle-label-content\"], [\"state\", \"checked\", \"aria-hidden\", \"true\", \"appearance\", \"minimal\", 1, \"mat-mdc-option-pseudo-checkbox\", 3, \"disabled\"], [1, \"mat-button-toggle-focus-overlay\"], [\"matRipple\", \"\", 1, \"mat-button-toggle-ripple\", 3, \"matRippleTrigger\", \"matRippleDisabled\"]],\n template: function MatButtonToggle_Template(rf, ctx) {\n if (rf & 1) {\n const _r1 = i0.ɵɵgetCurrentView();\n i0.ɵɵprojectionDef();\n i0.ɵɵelementStart(0, \"button\", 1, 0);\n i0.ɵɵlistener(\"click\", function MatButtonToggle_Template_button_click_0_listener() {\n i0.ɵɵrestoreView(_r1);\n return i0.ɵɵresetView(ctx._onButtonClick());\n });\n i0.ɵɵelementStart(2, \"span\", 2);\n i0.ɵɵtemplate(3, MatButtonToggle_Conditional_3_Template, 1, 1, \"mat-pseudo-checkbox\", 3)(4, MatButtonToggle_Conditional_4_Template, 1, 1, \"mat-pseudo-checkbox\", 3);\n i0.ɵɵprojection(5);\n i0.ɵɵelementEnd()();\n i0.ɵɵelement(6, \"span\", 4)(7, \"span\", 5);\n }\n if (rf & 2) {\n const button_r3 = i0.ɵɵreference(1);\n i0.ɵɵproperty(\"id\", ctx.buttonId)(\"disabled\", ctx.disabled || null);\n i0.ɵɵattribute(\"role\", ctx.isSingleSelector() ? \"radio\" : \"button\")(\"tabindex\", ctx.disabled ? -1 : ctx.tabIndex)(\"aria-pressed\", !ctx.isSingleSelector() ? ctx.checked : null)(\"aria-checked\", ctx.isSingleSelector() ? ctx.checked : null)(\"name\", ctx._getButtonName())(\"aria-label\", ctx.ariaLabel)(\"aria-labelledby\", ctx.ariaLabelledby);\n i0.ɵɵadvance(3);\n i0.ɵɵconditional(ctx.buttonToggleGroup && ctx.checked && !ctx.buttonToggleGroup.multiple && !ctx.buttonToggleGroup.hideSingleSelectionIndicator ? 3 : -1);\n i0.ɵɵadvance();\n i0.ɵɵconditional(ctx.buttonToggleGroup && ctx.checked && ctx.buttonToggleGroup.multiple && !ctx.buttonToggleGroup.hideMultipleSelectionIndicator ? 4 : -1);\n i0.ɵɵadvance(3);\n i0.ɵɵproperty(\"matRippleTrigger\", button_r3)(\"matRippleDisabled\", ctx.disableRipple || ctx.disabled);\n }\n },\n dependencies: [MatRipple, MatPseudoCheckbox],\n styles: [\".mat-button-toggle-standalone,.mat-button-toggle-group{position:relative;display:inline-flex;flex-direction:row;white-space:nowrap;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0);transform:translateZ(0);border-radius:var(--mat-legacy-button-toggle-shape)}.mat-button-toggle-standalone:not([class*=mat-elevation-z]),.mat-button-toggle-group:not([class*=mat-elevation-z]){box-shadow:0px 3px 1px -2px rgba(0, 0, 0, 0.2), 0px 2px 2px 0px rgba(0, 0, 0, 0.14), 0px 1px 5px 0px rgba(0, 0, 0, 0.12)}.cdk-high-contrast-active .mat-button-toggle-standalone,.cdk-high-contrast-active .mat-button-toggle-group{outline:solid 1px}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.mat-button-toggle-group-appearance-standard{border-radius:var(--mat-standard-button-toggle-shape);border:solid 1px var(--mat-standard-button-toggle-divider-color)}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard .mat-pseudo-checkbox,.mat-button-toggle-group-appearance-standard .mat-pseudo-checkbox{--mat-minimal-pseudo-checkbox-selected-checkmark-color: var( --mat-standard-button-toggle-selected-state-text-color )}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard:not([class*=mat-elevation-z]),.mat-button-toggle-group-appearance-standard:not([class*=mat-elevation-z]){box-shadow:none}.cdk-high-contrast-active .mat-button-toggle-standalone.mat-button-toggle-appearance-standard,.cdk-high-contrast-active .mat-button-toggle-group-appearance-standard{outline:0}.mat-button-toggle-vertical{flex-direction:column}.mat-button-toggle-vertical .mat-button-toggle-label-content{display:block}.mat-button-toggle{white-space:nowrap;position:relative;color:var(--mat-legacy-button-toggle-text-color);font-family:var(--mat-legacy-button-toggle-label-text-font);font-size:var(--mat-legacy-button-toggle-label-text-size);line-height:var(--mat-legacy-button-toggle-label-text-line-height);font-weight:var(--mat-legacy-button-toggle-label-text-weight);letter-spacing:var(--mat-legacy-button-toggle-label-text-tracking);--mat-minimal-pseudo-checkbox-selected-checkmark-color: var( --mat-legacy-button-toggle-selected-state-text-color )}.mat-button-toggle.cdk-keyboard-focused .mat-button-toggle-focus-overlay{opacity:var(--mat-legacy-button-toggle-focus-state-layer-opacity)}.mat-button-toggle .mat-icon svg{vertical-align:top}.mat-button-toggle .mat-pseudo-checkbox{margin-right:12px}[dir=rtl] .mat-button-toggle .mat-pseudo-checkbox{margin-right:0;margin-left:12px}.mat-button-toggle-checked{color:var(--mat-legacy-button-toggle-selected-state-text-color);background-color:var(--mat-legacy-button-toggle-selected-state-background-color)}.mat-button-toggle-disabled{color:var(--mat-legacy-button-toggle-disabled-state-text-color);background-color:var(--mat-legacy-button-toggle-disabled-state-background-color);--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color: var( --mat-legacy-button-toggle-disabled-state-text-color )}.mat-button-toggle-disabled.mat-button-toggle-checked{background-color:var(--mat-legacy-button-toggle-disabled-selected-state-background-color)}.mat-button-toggle-appearance-standard{color:var(--mat-standard-button-toggle-text-color);background-color:var(--mat-standard-button-toggle-background-color);font-family:var(--mat-standard-button-toggle-label-text-font);font-size:var(--mat-standard-button-toggle-label-text-size);line-height:var(--mat-standard-button-toggle-label-text-line-height);font-weight:var(--mat-standard-button-toggle-label-text-weight);letter-spacing:var(--mat-standard-button-toggle-label-text-tracking)}.mat-button-toggle-group-appearance-standard .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:solid 1px var(--mat-standard-button-toggle-divider-color)}[dir=rtl] .mat-button-toggle-group-appearance-standard .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:none;border-right:solid 1px var(--mat-standard-button-toggle-divider-color)}.mat-button-toggle-group-appearance-standard.mat-button-toggle-vertical .mat-button-toggle-appearance-standard+.mat-button-toggle-appearance-standard{border-left:none;border-right:none;border-top:solid 1px var(--mat-standard-button-toggle-divider-color)}.mat-button-toggle-appearance-standard.mat-button-toggle-checked{color:var(--mat-standard-button-toggle-selected-state-text-color);background-color:var(--mat-standard-button-toggle-selected-state-background-color)}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled{color:var(--mat-standard-button-toggle-disabled-state-text-color);background-color:var(--mat-standard-button-toggle-disabled-state-background-color)}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled .mat-pseudo-checkbox{--mat-minimal-pseudo-checkbox-disabled-selected-checkmark-color: var( --mat-standard-button-toggle-disabled-selected-state-text-color )}.mat-button-toggle-appearance-standard.mat-button-toggle-disabled.mat-button-toggle-checked{color:var(--mat-standard-button-toggle-disabled-selected-state-text-color);background-color:var(--mat-standard-button-toggle-disabled-selected-state-background-color)}.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{background-color:var(--mat-standard-button-toggle-state-layer-color)}.mat-button-toggle-appearance-standard:not(.mat-button-toggle-disabled):hover .mat-button-toggle-focus-overlay{opacity:var(--mat-standard-button-toggle-hover-state-layer-opacity)}.mat-button-toggle-appearance-standard.cdk-keyboard-focused:not(.mat-button-toggle-disabled) .mat-button-toggle-focus-overlay{opacity:var(--mat-standard-button-toggle-focus-state-layer-opacity)}@media(hover: none){.mat-button-toggle-appearance-standard:not(.mat-button-toggle-disabled):hover .mat-button-toggle-focus-overlay{display:none}}.mat-button-toggle-label-content{-webkit-user-select:none;user-select:none;display:inline-block;padding:0 16px;line-height:var(--mat-legacy-button-toggle-height);position:relative}.mat-button-toggle-appearance-standard .mat-button-toggle-label-content{padding:0 12px;line-height:var(--mat-standard-button-toggle-height)}.mat-button-toggle-label-content>*{vertical-align:middle}.mat-button-toggle-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;border-radius:inherit;pointer-events:none;opacity:0;background-color:var(--mat-legacy-button-toggle-state-layer-color)}.cdk-high-contrast-active .mat-button-toggle-checked .mat-button-toggle-focus-overlay{border-bottom:solid 500px;opacity:.5;height:0}.cdk-high-contrast-active .mat-button-toggle-checked:hover .mat-button-toggle-focus-overlay{opacity:.6}.cdk-high-contrast-active .mat-button-toggle-checked.mat-button-toggle-appearance-standard .mat-button-toggle-focus-overlay{border-bottom:solid 500px}.mat-button-toggle .mat-button-toggle-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none}.mat-button-toggle-button{border:0;background:none;color:inherit;padding:0;margin:0;font:inherit;outline:none;width:100%;cursor:pointer}.mat-button-toggle-disabled .mat-button-toggle-button{cursor:default}.mat-button-toggle-button::-moz-focus-inner{border:0}.mat-button-toggle-standalone.mat-button-toggle-appearance-standard{--mat-focus-indicator-border-radius:var(--mat-standard-button-toggle-shape)}.mat-button-toggle-group-appearance-standard .mat-button-toggle:last-of-type .mat-button-toggle-button::before{border-top-right-radius:var(--mat-standard-button-toggle-shape);border-bottom-right-radius:var(--mat-standard-button-toggle-shape)}.mat-button-toggle-group-appearance-standard .mat-button-toggle:first-of-type .mat-button-toggle-button::before{border-top-left-radius:var(--mat-standard-button-toggle-shape);border-bottom-left-radius:var(--mat-standard-button-toggle-shape)}\"],\n encapsulation: 2,\n changeDetection: 0\n });\n }\n }\n return MatButtonToggle;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet MatButtonToggleModule = /*#__PURE__*/(() => {\n class MatButtonToggleModule {\n static {\n this.ɵfac = function MatButtonToggleModule_Factory(t) {\n return new (t || MatButtonToggleModule)();\n };\n }\n static {\n this.ɵmod = /* @__PURE__ */i0.ɵɵdefineNgModule({\n type: MatButtonToggleModule\n });\n }\n static {\n this.ɵinj = /* @__PURE__ */i0.ɵɵdefineInjector({\n imports: [MatCommonModule, MatRippleModule, MatButtonToggle, MatCommonModule]\n });\n }\n }\n return MatButtonToggleModule;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS, MAT_BUTTON_TOGGLE_GROUP, MAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY, MAT_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR, MatButtonToggle, MatButtonToggleChange, MatButtonToggleGroup, MatButtonToggleModule };\n"],"mappings":"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","names":["_c0","_c1","MatButtonToggle_Conditional_3_Template","rf","ctx","ɵɵelement","ctx_r1","ɵɵnextContext","ɵɵproperty","MatButtonToggle_Conditional_4_Template","MAT_BUTTON_TOGGLE_DEFAULT_OPTIONS","InjectionToken","MAT_BUTTON_TOGGLE_GROUP_DEFAULT_OPTIONS_FACTORY","MAT_BUTTON_TOGGLE_GROUP","MAT_BUTTON_TOGGLE_GROUP_VALUE_ACCESSOR","NG_VALUE_ACCESSOR","forwardRef","MatButtonToggleGroup","uniqueIdCounter","MatButtonToggleChange","source","value","_MatButtonToggleGroup","selected","toggle","newValue","_changeDetector","defaultOptions","_dir","EventEmitter","SelectionModel","fn","isDisabled","event","buttonId","index","nextButton","select","isUserInput","deferEvents","i","startIndex","offset","items","item","currentValue","correspondingOption","t","ɵɵdirectiveInject","ChangeDetectorRef","Directionality","ɵɵdefineDirective","dirIndex","ɵɵcontentQuery","MatButtonToggle","_t","ɵɵqueryRefresh","ɵɵloadQuery","ɵɵlistener","$event","ɵɵattribute","ɵɵclassProp","booleanAttribute","ɵɵProvidersFeature","ɵɵInputTransformsFeature","_MatButtonToggle","toggleGroup","_changeDetectorRef","_elementRef","_focusMonitor","defaultTabIndex","parsedTabIndex","group","options","newChecked","focusable","ElementRef","FocusMonitor","ɵɵinjectAttribute","ɵɵdefineComponent","ɵɵviewQuery","ɵɵStandaloneFeature","_r1","ɵɵgetCurrentView","ɵɵprojectionDef","ɵɵelementStart","ɵɵrestoreView","ɵɵresetView","ɵɵtemplate","ɵɵprojection","ɵɵelementEnd","button_r3","ɵɵreference","ɵɵadvance","ɵɵconditional","MatRipple","MatPseudoCheckbox","MatButtonToggleModule","_MatButtonToggleModule","ɵɵdefineNgModule","ɵɵdefineInjector","MatCommonModule","MatRippleModule"],"x_google_ignoreList":[0]}