{"version":3,"sources":["node_modules/@angular/material/fesm2022/chips.mjs"],"sourcesContent":["import { FocusMonitor, _IdGenerator, FocusKeyManager } from '@angular/cdk/a11y';\nimport { ENTER, SPACE, BACKSPACE, DELETE, TAB, hasModifierKey, UP_ARROW, DOWN_ARROW } from '@angular/cdk/keycodes';\nimport { _CdkPrivateStyleLoader, _VisuallyHiddenLoader } from '@angular/cdk/private';\nimport { DOCUMENT } from '@angular/common';\nimport * as i0 from '@angular/core';\nimport { InjectionToken, inject, ElementRef, booleanAttribute, numberAttribute, Directive, Input, ChangeDetectorRef, NgZone, EventEmitter, Injector, ANIMATION_MODULE_TYPE, Component, ViewEncapsulation, ChangeDetectionStrategy, ContentChildren, Output, ContentChild, ViewChild, afterNextRender, QueryList, forwardRef, NgModule } from '@angular/core';\nimport { _StructuralStylesLoader, MAT_RIPPLE_GLOBAL_OPTIONS, MatRippleLoader, ErrorStateMatcher, _ErrorStateTracker, MatCommonModule, MatRippleModule } from '@angular/material/core';\nimport { Subject, merge } from 'rxjs';\nimport { takeUntil, startWith, switchMap } from 'rxjs/operators';\nimport { Directionality } from '@angular/cdk/bidi';\nimport { NG_VALUE_ACCESSOR, NgControl, Validators, NgForm, FormGroupDirective } from '@angular/forms';\nimport { MatFormFieldControl, MAT_FORM_FIELD } from '@angular/material/form-field';\n\n/** Injection token to be used to override the default options for the chips module. */\nconst _c0 = [\"*\", [[\"mat-chip-avatar\"], [\"\", \"matChipAvatar\", \"\"]], [[\"mat-chip-trailing-icon\"], [\"\", \"matChipRemove\", \"\"], [\"\", \"matChipTrailingIcon\", \"\"]]];\nconst _c1 = [\"*\", \"mat-chip-avatar, [matChipAvatar]\", \"mat-chip-trailing-icon,[matChipRemove],[matChipTrailingIcon]\"];\nfunction MatChip_Conditional_3_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\", 3);\n i0.ɵɵprojection(1, 1);\n i0.ɵɵelementEnd();\n }\n}\nfunction MatChip_Conditional_7_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\", 6);\n i0.ɵɵprojection(1, 2);\n i0.ɵɵelementEnd();\n }\n}\nfunction MatChipOption_Conditional_3_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\", 3);\n i0.ɵɵprojection(1, 1);\n i0.ɵɵelementStart(2, \"span\", 8);\n i0.ɵɵnamespaceSVG();\n i0.ɵɵelementStart(3, \"svg\", 9);\n i0.ɵɵelement(4, \"path\", 10);\n i0.ɵɵelementEnd()()();\n }\n}\nfunction MatChipOption_Conditional_7_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\", 6);\n i0.ɵɵprojection(1, 2);\n i0.ɵɵelementEnd();\n }\n}\nconst _c2 = \".mdc-evolution-chip,.mdc-evolution-chip__cell,.mdc-evolution-chip__action{display:inline-flex;align-items:center}.mdc-evolution-chip{position:relative;max-width:100%}.mdc-evolution-chip__cell,.mdc-evolution-chip__action{height:100%}.mdc-evolution-chip__cell--primary{flex-basis:100%;overflow-x:hidden}.mdc-evolution-chip__cell--trailing{flex:1 0 auto}.mdc-evolution-chip__action{align-items:center;background:none;border:none;box-sizing:content-box;cursor:pointer;display:inline-flex;justify-content:center;outline:none;padding:0;text-decoration:none;color:inherit}.mdc-evolution-chip__action--presentational{cursor:auto}.mdc-evolution-chip--disabled,.mdc-evolution-chip__action:disabled{pointer-events:none}.mdc-evolution-chip__action--primary{font:inherit;letter-spacing:inherit;white-space:inherit;overflow-x:hidden}.mat-mdc-standard-chip .mdc-evolution-chip__action--primary::before{border-width:var(--mdc-chip-outline-width, 1px);border-radius:var(--mdc-chip-container-shape-radius, 8px);box-sizing:border-box;content:\\\"\\\";height:100%;left:0;position:absolute;pointer-events:none;top:0;width:100%;z-index:1;border-style:solid}.mat-mdc-standard-chip .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:12px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__action--primary::before{border-color:var(--mdc-chip-outline-color, var(--mat-sys-outline))}.mdc-evolution-chip__action--primary:not(.mdc-evolution-chip__action--presentational):not(.mdc-ripple-upgraded):focus::before{border-color:var(--mdc-chip-focus-outline-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__action--primary::before{border-color:var(--mdc-chip-disabled-outline-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-standard-chip.mdc-evolution-chip--selected .mdc-evolution-chip__action--primary::before{border-width:var(--mdc-chip-flat-selected-outline-width, 0)}.mat-mdc-basic-chip .mdc-evolution-chip__action--primary{font:inherit}.mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mdc-evolution-chip__action--trailing{position:relative;overflow:visible}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__action--trailing{color:var(--mdc-chip-with-trailing-icon-trailing-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__action--trailing{color:var(--mdc-chip-with-trailing-icon-disabled-trailing-icon-color, var(--mat-sys-on-surface))}.mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--trailing{padding-left:8px;padding-right:8px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--trailing{padding-left:8px;padding-right:8px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--trailing{padding-left:8px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--trailing{padding-left:8px;padding-right:8px}.mdc-evolution-chip__text-label{-webkit-user-select:none;user-select:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mat-mdc-standard-chip .mdc-evolution-chip__text-label{font-family:var(--mdc-chip-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mdc-chip-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mdc-chip-label-text-size, var(--mat-sys-label-large-size));font-weight:var(--mdc-chip-label-text-weight, var(--mat-sys-label-large-weight));letter-spacing:var(--mdc-chip-label-text-tracking, var(--mat-sys-label-large-tracking))}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label{color:var(--mdc-chip-label-text-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--selected:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label{color:var(--mdc-chip-selected-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__text-label,.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled .mdc-evolution-chip__text-label{color:var(--mdc-chip-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-evolution-chip__graphic{align-items:center;display:inline-flex;justify-content:center;overflow:hidden;pointer-events:none;position:relative;flex:1 0 auto}.mat-mdc-standard-chip .mdc-evolution-chip__graphic{width:var(--mdc-chip-with-avatar-avatar-size, 24px);height:var(--mdc-chip-with-avatar-avatar-size, 24px);font-size:var(--mdc-chip-with-avatar-avatar-size, 24px)}.mdc-evolution-chip--selecting .mdc-evolution-chip__graphic{transition:width 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-evolution-chip--selectable:not(.mdc-evolution-chip--selected):not(.mdc-evolution-chip--with-primary-icon) .mdc-evolution-chip__graphic{width:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:6px;padding-right:6px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:4px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:8px;padding-right:4px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:6px;padding-right:6px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:4px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:8px;padding-right:4px}.mdc-evolution-chip__checkmark{position:absolute;opacity:0;top:50%;left:50%;height:20px;width:20px}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__checkmark{color:var(--mdc-chip-with-icon-selected-icon-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__checkmark{color:var(--mdc-chip-with-icon-disabled-icon-color, var(--mat-sys-on-surface))}.mdc-evolution-chip--selecting .mdc-evolution-chip__checkmark{transition:transform 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1);transform:translate(-75%, -50%)}.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark{transform:translate(-50%, -50%);opacity:1}.mdc-evolution-chip__checkmark-svg{display:block}.mdc-evolution-chip__checkmark-path{stroke-width:2px;stroke-dasharray:29.7833385;stroke-dashoffset:29.7833385;stroke:currentColor}.mdc-evolution-chip--selecting .mdc-evolution-chip__checkmark-path{transition:stroke-dashoffset 150ms 45ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark-path{stroke-dashoffset:0}@media(forced-colors: active){.mdc-evolution-chip__checkmark-path{stroke:CanvasText !important}}.mat-mdc-standard-chip .mdc-evolution-chip__icon--trailing{height:18px;width:18px;font-size:18px}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing.mat-mdc-chip-remove{opacity:calc(var(--mat-chip-trailing-action-opacity, 1)*var(--mdc-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38))}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing.mat-mdc-chip-remove:focus{opacity:calc(var(--mat-chip-trailing-action-focus-opacity, 1)*var(--mdc-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38))}.mat-mdc-standard-chip{border-radius:var(--mdc-chip-container-shape-radius, 8px);height:var(--mdc-chip-container-height, 32px)}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled){background-color:var(--mdc-chip-elevated-container-color, transparent)}.mat-mdc-standard-chip.mdc-evolution-chip--disabled{background-color:var(--mdc-chip-elevated-disabled-container-color)}.mat-mdc-standard-chip.mdc-evolution-chip--selected:not(.mdc-evolution-chip--disabled){background-color:var(--mdc-chip-elevated-selected-container-color, var(--mat-sys-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled{background-color:var(--mdc-chip-flat-disabled-selected-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}@media(forced-colors: active){.mat-mdc-standard-chip{outline:solid 1px}}.mat-mdc-standard-chip .mdc-evolution-chip__icon--primary{border-radius:var(--mdc-chip-with-avatar-avatar-shape-radius, 24px);width:var(--mdc-chip-with-icon-icon-size, 18px);height:var(--mdc-chip-with-icon-icon-size, 18px);font-size:var(--mdc-chip-with-icon-icon-size, 18px)}.mdc-evolution-chip--selected .mdc-evolution-chip__icon--primary{opacity:0}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__icon--primary{color:var(--mdc-chip-with-icon-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--primary{color:var(--mdc-chip-with-icon-disabled-icon-color, var(--mat-sys-on-surface))}.mat-mdc-chip-highlighted{--mdc-chip-with-icon-icon-color:var(--mdc-chip-with-icon-selected-icon-color, var(--mat-sys-on-secondary-container));--mdc-chip-elevated-container-color:var(--mdc-chip-elevated-selected-container-color, var(--mat-sys-secondary-container));--mdc-chip-label-text-color:var(--mdc-chip-selected-label-text-color, var(--mat-sys-on-secondary-container));--mdc-chip-outline-width:var(--mdc-chip-flat-selected-outline-width, 0)}.mat-mdc-chip-focus-overlay{background:var(--mdc-chip-focus-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-chip-selected .mat-mdc-chip-focus-overlay,.mat-mdc-chip-highlighted .mat-mdc-chip-focus-overlay{background:var(--mdc-chip-selected-focus-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-mdc-chip:hover .mat-mdc-chip-focus-overlay{background:var(--mdc-chip-hover-state-layer-color, var(--mat-sys-on-surface-variant));opacity:var(--mdc-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip-focus-overlay .mat-mdc-chip-selected:hover,.mat-mdc-chip-highlighted:hover .mat-mdc-chip-focus-overlay{background:var(--mdc-chip-selected-hover-state-layer-color, var(--mat-sys-on-secondary-container));opacity:var(--mdc-chip-selected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-focus-overlay{background:var(--mdc-chip-focus-state-layer-color, var(--mat-sys-on-surface-variant));opacity:var(--mdc-chip-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-chip-selected.cdk-focused .mat-mdc-chip-focus-overlay,.mat-mdc-chip-highlighted.cdk-focused .mat-mdc-chip-focus-overlay{background:var(--mdc-chip-selected-focus-state-layer-color, var(--mat-sys-on-secondary-container));opacity:var(--mdc-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-evolution-chip--disabled:not(.mdc-evolution-chip--selected) .mat-mdc-chip-avatar{opacity:var(--mdc-chip-with-avatar-disabled-avatar-opacity, 0.38)}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing{opacity:var(--mdc-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38)}.mdc-evolution-chip--disabled.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark{opacity:var(--mdc-chip-with-icon-disabled-icon-opacity, 0.38)}.mat-mdc-standard-chip.mdc-evolution-chip--disabled{opacity:var(--mat-chip-disabled-container-opacity, 1)}.mat-mdc-standard-chip.mdc-evolution-chip--selected .mdc-evolution-chip__icon--trailing,.mat-mdc-standard-chip.mat-mdc-chip-highlighted .mdc-evolution-chip__icon--trailing{color:var(--mat-chip-selected-trailing-icon-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing,.mat-mdc-standard-chip.mat-mdc-chip-highlighted.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing{color:var(--mat-chip-selected-disabled-trailing-icon-color, var(--mat-sys-on-surface))}.mat-mdc-chip-remove{opacity:var(--mat-chip-trailing-action-opacity, 1)}.mat-mdc-chip-remove:focus{opacity:var(--mat-chip-trailing-action-focus-opacity, 1)}.mat-mdc-chip-remove::after{background-color:var(--mat-chip-trailing-action-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-chip-remove:hover::after{opacity:var(--mat-chip-trailing-action-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip-remove:focus::after{opacity:var(--mat-chip-trailing-action-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-chip-selected .mat-mdc-chip-remove::after,.mat-mdc-chip-highlighted .mat-mdc-chip-remove::after{background-color:var(--mat-chip-selected-trailing-action-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-standard-chip .mdc-evolution-chip__cell--primary,.mat-mdc-standard-chip .mdc-evolution-chip__action--primary,.mat-mdc-standard-chip .mat-mdc-chip-action-label{overflow:visible}.mat-mdc-standard-chip .mat-mdc-chip-graphic,.mat-mdc-standard-chip .mat-mdc-chip-trailing-icon{box-sizing:content-box}.mat-mdc-standard-chip._mat-animation-noopable,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__graphic,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__checkmark,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__checkmark-path{transition-duration:1ms;animation-duration:1ms}.mat-mdc-chip-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;opacity:0;border-radius:inherit;transition:opacity 150ms linear}._mat-animation-noopable .mat-mdc-chip-focus-overlay{transition:none}.mat-mdc-basic-chip .mat-mdc-chip-focus-overlay{display:none}.mat-mdc-chip .mat-ripple.mat-mdc-chip-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-chip-avatar{text-align:center;line-height:1;color:var(--mdc-chip-with-icon-icon-color, currentColor)}.mat-mdc-chip{position:relative;z-index:0}.mat-mdc-chip-action-label{text-align:left;z-index:1}[dir=rtl] .mat-mdc-chip-action-label{text-align:right}.mat-mdc-chip.mdc-evolution-chip--with-trailing-action .mat-mdc-chip-action-label{position:relative}.mat-mdc-chip-action-label .mat-mdc-chip-primary-focus-indicator{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.mat-mdc-chip-action-label .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px)*-1)}.mat-mdc-chip-remove::before{margin:calc(var(--mat-focus-indicator-border-width, 3px)*-1);left:8px;right:8px}.mat-mdc-chip-remove::after{content:\\\"\\\";display:block;opacity:0;position:absolute;top:-3px;bottom:-3px;left:5px;right:5px;border-radius:50%;box-sizing:border-box;padding:12px;margin:-12px;background-clip:content-box}.mat-mdc-chip-remove .mat-icon{width:18px;height:18px;font-size:18px;box-sizing:content-box}.mat-chip-edit-input{cursor:text;display:inline-block;color:inherit;outline:0}@media(forced-colors: active){.mat-mdc-chip-selected:not(.mat-mdc-chip-multiple){outline-width:3px}}.mat-mdc-chip-action:focus .mat-focus-indicator::before{content:\\\"\\\"}\";\nconst _c3 = [[[\"mat-chip-avatar\"], [\"\", \"matChipAvatar\", \"\"]], [[\"\", \"matChipEditInput\", \"\"]], \"*\", [[\"mat-chip-trailing-icon\"], [\"\", \"matChipRemove\", \"\"], [\"\", \"matChipTrailingIcon\", \"\"]]];\nconst _c4 = [\"mat-chip-avatar, [matChipAvatar]\", \"[matChipEditInput]\", \"*\", \"mat-chip-trailing-icon,[matChipRemove],[matChipTrailingIcon]\"];\nfunction MatChipRow_Conditional_0_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"span\", 0);\n }\n}\nfunction MatChipRow_Conditional_2_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\", 2);\n i0.ɵɵprojection(1);\n i0.ɵɵelementEnd();\n }\n}\nfunction MatChipRow_Conditional_4_Conditional_0_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojection(0, 1);\n }\n}\nfunction MatChipRow_Conditional_4_Conditional_1_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelement(0, \"span\", 7);\n }\n}\nfunction MatChipRow_Conditional_4_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵtemplate(0, MatChipRow_Conditional_4_Conditional_0_Template, 1, 0)(1, MatChipRow_Conditional_4_Conditional_1_Template, 1, 0, \"span\", 7);\n }\n if (rf & 2) {\n const ctx_r0 = i0.ɵɵnextContext();\n i0.ɵɵconditional(ctx_r0.contentEditInput ? 0 : 1);\n }\n}\nfunction MatChipRow_Conditional_5_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojection(0, 2);\n }\n}\nfunction MatChipRow_Conditional_7_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵelementStart(0, \"span\", 5);\n i0.ɵɵprojection(1, 3);\n i0.ɵɵelementEnd();\n }\n}\nconst _c5 = [\"*\"];\nconst _c6 = \".mat-mdc-chip-set{display:flex}.mat-mdc-chip-set:focus{outline:none}.mat-mdc-chip-set .mdc-evolution-chip-set__chips{min-width:100%;margin-left:-8px;margin-right:0}.mat-mdc-chip-set .mdc-evolution-chip{margin:4px 0 4px 8px}[dir=rtl] .mat-mdc-chip-set .mdc-evolution-chip-set__chips{margin-left:0;margin-right:-8px}[dir=rtl] .mat-mdc-chip-set .mdc-evolution-chip{margin-left:0;margin-right:8px}.mdc-evolution-chip-set__chips{display:flex;flex-flow:wrap;min-width:0}.mat-mdc-chip-set-stacked{flex-direction:column;align-items:flex-start}.mat-mdc-chip-set-stacked .mat-mdc-chip{width:100%}.mat-mdc-chip-set-stacked .mdc-evolution-chip__graphic{flex-grow:0}.mat-mdc-chip-set-stacked .mdc-evolution-chip__action--primary{flex-basis:100%;justify-content:start}input.mat-mdc-chip-input{flex:1 0 150px;margin-left:8px}[dir=rtl] input.mat-mdc-chip-input{margin-left:0;margin-right:8px}\";\nconst MAT_CHIPS_DEFAULT_OPTIONS = /*#__PURE__*/new InjectionToken('mat-chips-default-options', {\n providedIn: 'root',\n factory: () => ({\n separatorKeyCodes: [ENTER]\n })\n});\n/**\n * Injection token that can be used to reference instances of `MatChipAvatar`. It serves as\n * alternative token to the actual `MatChipAvatar` class which could cause unnecessary\n * retention of the class and its directive metadata.\n */\nconst MAT_CHIP_AVATAR = /*#__PURE__*/new InjectionToken('MatChipAvatar');\n/**\n * Injection token that can be used to reference instances of `MatChipTrailingIcon`. It serves as\n * alternative token to the actual `MatChipTrailingIcon` class which could cause unnecessary\n * retention of the class and its directive metadata.\n */\nconst MAT_CHIP_TRAILING_ICON = /*#__PURE__*/new InjectionToken('MatChipTrailingIcon');\n/**\n * Injection token that can be used to reference instances of `MatChipRemove`. It serves as\n * alternative token to the actual `MatChipRemove` class which could cause unnecessary\n * retention of the class and its directive metadata.\n */\nconst MAT_CHIP_REMOVE = /*#__PURE__*/new InjectionToken('MatChipRemove');\n/**\n * Injection token used to avoid a circular dependency between the `MatChip` and `MatChipAction`.\n */\nconst MAT_CHIP = /*#__PURE__*/new InjectionToken('MatChip');\n\n/**\n * Section within a chip.\n * @docs-private\n */\nlet MatChipAction = /*#__PURE__*/(() => {\n class MatChipAction {\n _elementRef = inject(ElementRef);\n _parentChip = inject(MAT_CHIP);\n /** Whether the action is interactive. */\n isInteractive = true;\n /** Whether this is the primary action in the chip. */\n _isPrimary = true;\n /** Whether the action is disabled. */\n get disabled() {\n return this._disabled || this._parentChip?.disabled || false;\n }\n set disabled(value) {\n this._disabled = value;\n }\n _disabled = false;\n /** Tab index of the action. */\n tabIndex = -1;\n /**\n * Private API to allow focusing this chip when it is disabled.\n */\n _allowFocusWhenDisabled = false;\n /**\n * Determine the value of the disabled attribute for this chip action.\n */\n _getDisabledAttribute() {\n // When this chip action is disabled and focusing disabled chips is not permitted, return empty\n // string to indicate that disabled attribute should be included.\n return this.disabled && !this._allowFocusWhenDisabled ? '' : null;\n }\n /**\n * Determine the value of the tabindex attribute for this chip action.\n */\n _getTabindex() {\n return this.disabled && !this._allowFocusWhenDisabled || !this.isInteractive ? null : this.tabIndex.toString();\n }\n constructor() {\n inject(_CdkPrivateStyleLoader).load(_StructuralStylesLoader);\n if (this._elementRef.nativeElement.nodeName === 'BUTTON') {\n this._elementRef.nativeElement.setAttribute('type', 'button');\n }\n }\n focus() {\n this._elementRef.nativeElement.focus();\n }\n _handleClick(event) {\n if (!this.disabled && this.isInteractive && this._isPrimary) {\n event.preventDefault();\n this._parentChip._handlePrimaryActionInteraction();\n }\n }\n _handleKeydown(event) {\n if ((event.keyCode === ENTER || event.keyCode === SPACE) && !this.disabled && this.isInteractive && this._isPrimary && !this._parentChip._isEditing) {\n event.preventDefault();\n this._parentChip._handlePrimaryActionInteraction();\n }\n }\n static ɵfac = function MatChipAction_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatChipAction)();\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: MatChipAction,\n selectors: [[\"\", \"matChipAction\", \"\"]],\n hostAttrs: [1, \"mdc-evolution-chip__action\", \"mat-mdc-chip-action\"],\n hostVars: 9,\n hostBindings: function MatChipAction_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"click\", function MatChipAction_click_HostBindingHandler($event) {\n return ctx._handleClick($event);\n })(\"keydown\", function MatChipAction_keydown_HostBindingHandler($event) {\n return ctx._handleKeydown($event);\n });\n }\n if (rf & 2) {\n i0.ɵɵattribute(\"tabindex\", ctx._getTabindex())(\"disabled\", ctx._getDisabledAttribute())(\"aria-disabled\", ctx.disabled);\n i0.ɵɵclassProp(\"mdc-evolution-chip__action--primary\", ctx._isPrimary)(\"mdc-evolution-chip__action--presentational\", !ctx.isInteractive)(\"mdc-evolution-chip__action--trailing\", !ctx._isPrimary);\n }\n },\n inputs: {\n isInteractive: \"isInteractive\",\n disabled: [2, \"disabled\", \"disabled\", booleanAttribute],\n tabIndex: [2, \"tabIndex\", \"tabIndex\", value => value == null ? -1 : numberAttribute(value)],\n _allowFocusWhenDisabled: \"_allowFocusWhenDisabled\"\n },\n features: [i0.ɵɵInputTransformsFeature]\n });\n }\n return MatChipAction;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/** Avatar image within a chip. */\nlet MatChipAvatar = /*#__PURE__*/(() => {\n class MatChipAvatar {\n static ɵfac = function MatChipAvatar_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatChipAvatar)();\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: MatChipAvatar,\n selectors: [[\"mat-chip-avatar\"], [\"\", \"matChipAvatar\", \"\"]],\n hostAttrs: [\"role\", \"img\", 1, \"mat-mdc-chip-avatar\", \"mdc-evolution-chip__icon\", \"mdc-evolution-chip__icon--primary\"],\n features: [i0.ɵɵProvidersFeature([{\n provide: MAT_CHIP_AVATAR,\n useExisting: MatChipAvatar\n }])]\n });\n }\n return MatChipAvatar;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n/** Non-interactive trailing icon in a chip. */\nlet MatChipTrailingIcon = /*#__PURE__*/(() => {\n class MatChipTrailingIcon extends MatChipAction {\n /**\n * MDC considers all trailing actions as a remove icon,\n * but we support non-interactive trailing icons.\n */\n isInteractive = false;\n _isPrimary = false;\n static ɵfac = /* @__PURE__ */(() => {\n let ɵMatChipTrailingIcon_BaseFactory;\n return function MatChipTrailingIcon_Factory(__ngFactoryType__) {\n return (ɵMatChipTrailingIcon_BaseFactory || (ɵMatChipTrailingIcon_BaseFactory = i0.ɵɵgetInheritedFactory(MatChipTrailingIcon)))(__ngFactoryType__ || MatChipTrailingIcon);\n };\n })();\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: MatChipTrailingIcon,\n selectors: [[\"mat-chip-trailing-icon\"], [\"\", \"matChipTrailingIcon\", \"\"]],\n hostAttrs: [\"aria-hidden\", \"true\", 1, \"mat-mdc-chip-trailing-icon\", \"mdc-evolution-chip__icon\", \"mdc-evolution-chip__icon--trailing\"],\n features: [i0.ɵɵProvidersFeature([{\n provide: MAT_CHIP_TRAILING_ICON,\n useExisting: MatChipTrailingIcon\n }]), i0.ɵɵInheritDefinitionFeature]\n });\n }\n return MatChipTrailingIcon;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n/**\n * Directive to remove the parent chip when the trailing icon is clicked or\n * when the ENTER key is pressed on it.\n *\n * Recommended for use with the Material Design \"cancel\" icon\n * available at https://material.io/icons/#ic_cancel.\n *\n * Example:\n *\n * ```\n * \n * cancel\n * \n * ```\n */\nlet MatChipRemove = /*#__PURE__*/(() => {\n class MatChipRemove extends MatChipAction {\n _isPrimary = false;\n _handleClick(event) {\n if (!this.disabled) {\n event.stopPropagation();\n event.preventDefault();\n this._parentChip.remove();\n }\n }\n _handleKeydown(event) {\n if ((event.keyCode === ENTER || event.keyCode === SPACE) && !this.disabled) {\n event.stopPropagation();\n event.preventDefault();\n this._parentChip.remove();\n }\n }\n static ɵfac = /* @__PURE__ */(() => {\n let ɵMatChipRemove_BaseFactory;\n return function MatChipRemove_Factory(__ngFactoryType__) {\n return (ɵMatChipRemove_BaseFactory || (ɵMatChipRemove_BaseFactory = i0.ɵɵgetInheritedFactory(MatChipRemove)))(__ngFactoryType__ || MatChipRemove);\n };\n })();\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: MatChipRemove,\n selectors: [[\"\", \"matChipRemove\", \"\"]],\n hostAttrs: [\"role\", \"button\", 1, \"mat-mdc-chip-remove\", \"mat-mdc-chip-trailing-icon\", \"mat-focus-indicator\", \"mdc-evolution-chip__icon\", \"mdc-evolution-chip__icon--trailing\"],\n hostVars: 1,\n hostBindings: function MatChipRemove_HostBindings(rf, ctx) {\n if (rf & 2) {\n i0.ɵɵattribute(\"aria-hidden\", null);\n }\n },\n features: [i0.ɵɵProvidersFeature([{\n provide: MAT_CHIP_REMOVE,\n useExisting: MatChipRemove\n }]), i0.ɵɵInheritDefinitionFeature]\n });\n }\n return MatChipRemove;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/**\n * Material design styled Chip base component. Used inside the MatChipSet component.\n *\n * Extended by MatChipOption and MatChipRow for different interaction patterns.\n */\nlet MatChip = /*#__PURE__*/(() => {\n class MatChip {\n _changeDetectorRef = inject(ChangeDetectorRef);\n _elementRef = inject(ElementRef);\n _ngZone = inject(NgZone);\n _focusMonitor = inject(FocusMonitor);\n _globalRippleOptions = inject(MAT_RIPPLE_GLOBAL_OPTIONS, {\n optional: true\n });\n _document = inject(DOCUMENT);\n /** Emits when the chip is focused. */\n _onFocus = new Subject();\n /** Emits when the chip is blurred. */\n _onBlur = new Subject();\n /** Whether this chip is a basic (unstyled) chip. */\n _isBasicChip;\n /** Role for the root of the chip. */\n role = null;\n /** Whether the chip has focus. */\n _hasFocusInternal = false;\n /** Whether moving focus into the chip is pending. */\n _pendingFocus;\n /** Subscription to changes in the chip's actions. */\n _actionChanges;\n /** Whether animations for the chip are enabled. */\n _animationsDisabled;\n /** All avatars present in the chip. */\n _allLeadingIcons;\n /** All trailing icons present in the chip. */\n _allTrailingIcons;\n /** All remove icons present in the chip. */\n _allRemoveIcons;\n _hasFocus() {\n return this._hasFocusInternal;\n }\n /** A unique id for the chip. If none is supplied, it will be auto-generated. */\n id = inject(_IdGenerator).getId('mat-mdc-chip-');\n // TODO(#26104): Consider deprecating and using `_computeAriaAccessibleName` instead.\n // `ariaLabel` may be unnecessary, and `_computeAriaAccessibleName` only supports\n // datepicker's use case.\n /** ARIA label for the content of the chip. */\n ariaLabel = null;\n // TODO(#26104): Consider deprecating and using `_computeAriaAccessibleName` instead.\n // `ariaDescription` may be unnecessary, and `_computeAriaAccessibleName` only supports\n // datepicker's use case.\n /** ARIA description for the content of the chip. */\n ariaDescription = null;\n /** Id of a span that contains this chip's aria description. */\n _ariaDescriptionId = `${this.id}-aria-description`;\n /** Whether the chip list is disabled. */\n _chipListDisabled = false;\n _textElement;\n /**\n * The value of the chip. Defaults to the content inside\n * the `mat-mdc-chip-action-label` element.\n */\n get value() {\n return this._value !== undefined ? this._value : this._textElement.textContent.trim();\n }\n set value(value) {\n this._value = value;\n }\n _value;\n // TODO: should be typed as `ThemePalette` but internal apps pass in arbitrary strings.\n /**\n * Theme color of the chip. This API is supported in M2 themes only, it has no\n * effect in M3 themes. For color customization in M3, see https://material.angular.io/components/chips/styling.\n *\n * For information on applying color variants in M3, see\n * https://material.angular.io/guide/material-2-theming#optional-add-backwards-compatibility-styles-for-color-variants\n */\n color;\n /**\n * Determines whether or not the chip displays the remove styling and emits (removed) events.\n */\n removable = true;\n /**\n * Colors the chip for emphasis as if it were selected.\n */\n highlighted = false;\n /** Whether the ripple effect is disabled or not. */\n disableRipple = false;\n /** Whether the chip is disabled. */\n get disabled() {\n return this._disabled || this._chipListDisabled;\n }\n set disabled(value) {\n this._disabled = value;\n }\n _disabled = false;\n /** Emitted when a chip is to be removed. */\n removed = new EventEmitter();\n /** Emitted when the chip is destroyed. */\n destroyed = new EventEmitter();\n /** The unstyled chip selector for this component. */\n basicChipAttrName = 'mat-basic-chip';\n /** The chip's leading icon. */\n leadingIcon;\n /** The chip's trailing icon. */\n trailingIcon;\n /** The chip's trailing remove icon. */\n removeIcon;\n /** Action receiving the primary set of user interactions. */\n primaryAction;\n /**\n * Handles the lazy creation of the MatChip ripple.\n * Used to improve initial load time of large applications.\n */\n _rippleLoader = inject(MatRippleLoader);\n _injector = inject(Injector);\n constructor() {\n inject(_CdkPrivateStyleLoader).load(_StructuralStylesLoader);\n inject(_CdkPrivateStyleLoader).load(_VisuallyHiddenLoader);\n const animationMode = inject(ANIMATION_MODULE_TYPE, {\n optional: true\n });\n this._animationsDisabled = animationMode === 'NoopAnimations';\n this._monitorFocus();\n this._rippleLoader?.configureRipple(this._elementRef.nativeElement, {\n className: 'mat-mdc-chip-ripple',\n disabled: this._isRippleDisabled()\n });\n }\n ngOnInit() {\n // This check needs to happen in `ngOnInit` so the overridden value of\n // `basicChipAttrName` coming from base classes can be picked up.\n const element = this._elementRef.nativeElement;\n this._isBasicChip = element.hasAttribute(this.basicChipAttrName) || element.tagName.toLowerCase() === this.basicChipAttrName;\n }\n ngAfterViewInit() {\n this._textElement = this._elementRef.nativeElement.querySelector('.mat-mdc-chip-action-label');\n if (this._pendingFocus) {\n this._pendingFocus = false;\n this.focus();\n }\n }\n ngAfterContentInit() {\n // Since the styling depends on the presence of some\n // actions, we have to mark for check on changes.\n this._actionChanges = merge(this._allLeadingIcons.changes, this._allTrailingIcons.changes, this._allRemoveIcons.changes).subscribe(() => this._changeDetectorRef.markForCheck());\n }\n ngDoCheck() {\n this._rippleLoader.setDisabled(this._elementRef.nativeElement, this._isRippleDisabled());\n }\n ngOnDestroy() {\n this._focusMonitor.stopMonitoring(this._elementRef);\n this._rippleLoader?.destroyRipple(this._elementRef.nativeElement);\n this._actionChanges?.unsubscribe();\n this.destroyed.emit({\n chip: this\n });\n this.destroyed.complete();\n }\n /**\n * Allows for programmatic removal of the chip.\n *\n * Informs any listeners of the removal request. Does not remove the chip from the DOM.\n */\n remove() {\n if (this.removable) {\n this.removed.emit({\n chip: this\n });\n }\n }\n /** Whether or not the ripple should be disabled. */\n _isRippleDisabled() {\n return this.disabled || this.disableRipple || this._animationsDisabled || this._isBasicChip || !!this._globalRippleOptions?.disabled;\n }\n /** Returns whether the chip has a trailing icon. */\n _hasTrailingIcon() {\n return !!(this.trailingIcon || this.removeIcon);\n }\n /** Handles keyboard events on the chip. */\n _handleKeydown(event) {\n // Ignore backspace events where the user is holding down the key\n // so that we don't accidentally remove too many chips.\n if (event.keyCode === BACKSPACE && !event.repeat || event.keyCode === DELETE) {\n event.preventDefault();\n this.remove();\n }\n }\n /** Allows for programmatic focusing of the chip. */\n focus() {\n if (!this.disabled) {\n // If `focus` is called before `ngAfterViewInit`, we won't have access to the primary action.\n // This can happen if the consumer tries to focus a chip immediately after it is added.\n // Queue the method to be called again on init.\n if (this.primaryAction) {\n this.primaryAction.focus();\n } else {\n this._pendingFocus = true;\n }\n }\n }\n /** Gets the action that contains a specific target node. */\n _getSourceAction(target) {\n return this._getActions().find(action => {\n const element = action._elementRef.nativeElement;\n return element === target || element.contains(target);\n });\n }\n /** Gets all of the actions within the chip. */\n _getActions() {\n const result = [];\n if (this.primaryAction) {\n result.push(this.primaryAction);\n }\n if (this.removeIcon) {\n result.push(this.removeIcon);\n }\n if (this.trailingIcon) {\n result.push(this.trailingIcon);\n }\n return result;\n }\n /** Handles interactions with the primary action of the chip. */\n _handlePrimaryActionInteraction() {\n // Empty here, but is overwritten in child classes.\n }\n /** Starts the focus monitoring process on the chip. */\n _monitorFocus() {\n this._focusMonitor.monitor(this._elementRef, true).subscribe(origin => {\n const hasFocus = origin !== null;\n if (hasFocus !== this._hasFocusInternal) {\n this._hasFocusInternal = hasFocus;\n if (hasFocus) {\n this._onFocus.next({\n chip: this\n });\n } else {\n // When animations are enabled, Angular may end up removing the chip from the DOM a little\n // earlier than usual, causing it to be blurred and throwing off the logic in the chip list\n // that moves focus to the next item. To work around the issue, we defer marking the chip\n // as not focused until after the next render.\n this._changeDetectorRef.markForCheck();\n setTimeout(() => this._ngZone.run(() => this._onBlur.next({\n chip: this\n })));\n }\n }\n });\n }\n static ɵfac = function MatChip_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatChip)();\n };\n static ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: MatChip,\n selectors: [[\"mat-basic-chip\"], [\"\", \"mat-basic-chip\", \"\"], [\"mat-chip\"], [\"\", \"mat-chip\", \"\"]],\n contentQueries: function MatChip_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, MAT_CHIP_AVATAR, 5);\n i0.ɵɵcontentQuery(dirIndex, MAT_CHIP_TRAILING_ICON, 5);\n i0.ɵɵcontentQuery(dirIndex, MAT_CHIP_REMOVE, 5);\n i0.ɵɵcontentQuery(dirIndex, MAT_CHIP_AVATAR, 5);\n i0.ɵɵcontentQuery(dirIndex, MAT_CHIP_TRAILING_ICON, 5);\n i0.ɵɵcontentQuery(dirIndex, MAT_CHIP_REMOVE, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.leadingIcon = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.trailingIcon = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.removeIcon = _t.first);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._allLeadingIcons = _t);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._allTrailingIcons = _t);\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._allRemoveIcons = _t);\n }\n },\n viewQuery: function MatChip_Query(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵviewQuery(MatChipAction, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.primaryAction = _t.first);\n }\n },\n hostAttrs: [1, \"mat-mdc-chip\"],\n hostVars: 31,\n hostBindings: function MatChip_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"keydown\", function MatChip_keydown_HostBindingHandler($event) {\n return ctx._handleKeydown($event);\n });\n }\n if (rf & 2) {\n i0.ɵɵhostProperty(\"id\", ctx.id);\n i0.ɵɵattribute(\"role\", ctx.role)(\"aria-label\", ctx.ariaLabel);\n i0.ɵɵclassMap(\"mat-\" + (ctx.color || \"primary\"));\n i0.ɵɵclassProp(\"mdc-evolution-chip\", !ctx._isBasicChip)(\"mdc-evolution-chip--disabled\", ctx.disabled)(\"mdc-evolution-chip--with-trailing-action\", ctx._hasTrailingIcon())(\"mdc-evolution-chip--with-primary-graphic\", ctx.leadingIcon)(\"mdc-evolution-chip--with-primary-icon\", ctx.leadingIcon)(\"mdc-evolution-chip--with-avatar\", ctx.leadingIcon)(\"mat-mdc-chip-with-avatar\", ctx.leadingIcon)(\"mat-mdc-chip-highlighted\", ctx.highlighted)(\"mat-mdc-chip-disabled\", ctx.disabled)(\"mat-mdc-basic-chip\", ctx._isBasicChip)(\"mat-mdc-standard-chip\", !ctx._isBasicChip)(\"mat-mdc-chip-with-trailing-icon\", ctx._hasTrailingIcon())(\"_mat-animation-noopable\", ctx._animationsDisabled);\n }\n },\n inputs: {\n role: \"role\",\n id: \"id\",\n ariaLabel: [0, \"aria-label\", \"ariaLabel\"],\n ariaDescription: [0, \"aria-description\", \"ariaDescription\"],\n value: \"value\",\n color: \"color\",\n removable: [2, \"removable\", \"removable\", booleanAttribute],\n highlighted: [2, \"highlighted\", \"highlighted\", booleanAttribute],\n disableRipple: [2, \"disableRipple\", \"disableRipple\", booleanAttribute],\n disabled: [2, \"disabled\", \"disabled\", booleanAttribute]\n },\n outputs: {\n removed: \"removed\",\n destroyed: \"destroyed\"\n },\n exportAs: [\"matChip\"],\n features: [i0.ɵɵProvidersFeature([{\n provide: MAT_CHIP,\n useExisting: MatChip\n }]), i0.ɵɵInputTransformsFeature],\n ngContentSelectors: _c1,\n decls: 8,\n vars: 3,\n consts: [[1, \"mat-mdc-chip-focus-overlay\"], [1, \"mdc-evolution-chip__cell\", \"mdc-evolution-chip__cell--primary\"], [\"matChipAction\", \"\", 3, \"isInteractive\"], [1, \"mdc-evolution-chip__graphic\", \"mat-mdc-chip-graphic\"], [1, \"mdc-evolution-chip__text-label\", \"mat-mdc-chip-action-label\"], [1, \"mat-mdc-chip-primary-focus-indicator\", \"mat-focus-indicator\"], [1, \"mdc-evolution-chip__cell\", \"mdc-evolution-chip__cell--trailing\"]],\n template: function MatChip_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojectionDef(_c0);\n i0.ɵɵelement(0, \"span\", 0);\n i0.ɵɵelementStart(1, \"span\", 1)(2, \"span\", 2);\n i0.ɵɵtemplate(3, MatChip_Conditional_3_Template, 2, 0, \"span\", 3);\n i0.ɵɵelementStart(4, \"span\", 4);\n i0.ɵɵprojection(5);\n i0.ɵɵelement(6, \"span\", 5);\n i0.ɵɵelementEnd()()();\n i0.ɵɵtemplate(7, MatChip_Conditional_7_Template, 2, 0, \"span\", 6);\n }\n if (rf & 2) {\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"isInteractive\", false);\n i0.ɵɵadvance();\n i0.ɵɵconditional(ctx.leadingIcon ? 3 : -1);\n i0.ɵɵadvance(4);\n i0.ɵɵconditional(ctx._hasTrailingIcon() ? 7 : -1);\n }\n },\n dependencies: [MatChipAction],\n styles: [\".mdc-evolution-chip,.mdc-evolution-chip__cell,.mdc-evolution-chip__action{display:inline-flex;align-items:center}.mdc-evolution-chip{position:relative;max-width:100%}.mdc-evolution-chip__cell,.mdc-evolution-chip__action{height:100%}.mdc-evolution-chip__cell--primary{flex-basis:100%;overflow-x:hidden}.mdc-evolution-chip__cell--trailing{flex:1 0 auto}.mdc-evolution-chip__action{align-items:center;background:none;border:none;box-sizing:content-box;cursor:pointer;display:inline-flex;justify-content:center;outline:none;padding:0;text-decoration:none;color:inherit}.mdc-evolution-chip__action--presentational{cursor:auto}.mdc-evolution-chip--disabled,.mdc-evolution-chip__action:disabled{pointer-events:none}.mdc-evolution-chip__action--primary{font:inherit;letter-spacing:inherit;white-space:inherit;overflow-x:hidden}.mat-mdc-standard-chip .mdc-evolution-chip__action--primary::before{border-width:var(--mdc-chip-outline-width, 1px);border-radius:var(--mdc-chip-container-shape-radius, 8px);box-sizing:border-box;content:\\\"\\\";height:100%;left:0;position:absolute;pointer-events:none;top:0;width:100%;z-index:1;border-style:solid}.mat-mdc-standard-chip .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:12px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__action--primary::before{border-color:var(--mdc-chip-outline-color, var(--mat-sys-outline))}.mdc-evolution-chip__action--primary:not(.mdc-evolution-chip__action--presentational):not(.mdc-ripple-upgraded):focus::before{border-color:var(--mdc-chip-focus-outline-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__action--primary::before{border-color:var(--mdc-chip-disabled-outline-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}.mat-mdc-standard-chip.mdc-evolution-chip--selected .mdc-evolution-chip__action--primary::before{border-width:var(--mdc-chip-flat-selected-outline-width, 0)}.mat-mdc-basic-chip .mdc-evolution-chip__action--primary{font:inherit}.mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}[dir=rtl] .mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:0;padding-right:12px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__action--primary{padding-left:12px;padding-right:0}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--primary{padding-left:0;padding-right:0}.mdc-evolution-chip__action--trailing{position:relative;overflow:visible}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__action--trailing{color:var(--mdc-chip-with-trailing-icon-trailing-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__action--trailing{color:var(--mdc-chip-with-trailing-icon-disabled-trailing-icon-color, var(--mat-sys-on-surface))}.mat-mdc-standard-chip.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--trailing{padding-left:8px;padding-right:8px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--trailing{padding-left:8px;padding-right:8px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--trailing{padding-left:8px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__action--trailing{padding-left:8px;padding-right:8px}.mdc-evolution-chip__text-label{-webkit-user-select:none;user-select:none;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.mat-mdc-standard-chip .mdc-evolution-chip__text-label{font-family:var(--mdc-chip-label-text-font, var(--mat-sys-label-large-font));line-height:var(--mdc-chip-label-text-line-height, var(--mat-sys-label-large-line-height));font-size:var(--mdc-chip-label-text-size, var(--mat-sys-label-large-size));font-weight:var(--mdc-chip-label-text-weight, var(--mat-sys-label-large-weight));letter-spacing:var(--mdc-chip-label-text-tracking, var(--mat-sys-label-large-tracking))}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label{color:var(--mdc-chip-label-text-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--selected:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__text-label{color:var(--mdc-chip-selected-label-text-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__text-label,.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled .mdc-evolution-chip__text-label{color:var(--mdc-chip-disabled-label-text-color, color-mix(in srgb, var(--mat-sys-on-surface) 38%, transparent))}.mdc-evolution-chip__graphic{align-items:center;display:inline-flex;justify-content:center;overflow:hidden;pointer-events:none;position:relative;flex:1 0 auto}.mat-mdc-standard-chip .mdc-evolution-chip__graphic{width:var(--mdc-chip-with-avatar-avatar-size, 24px);height:var(--mdc-chip-with-avatar-avatar-size, 24px);font-size:var(--mdc-chip-with-avatar-avatar-size, 24px)}.mdc-evolution-chip--selecting .mdc-evolution-chip__graphic{transition:width 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-evolution-chip--selectable:not(.mdc-evolution-chip--selected):not(.mdc-evolution-chip--with-primary-icon) .mdc-evolution-chip__graphic{width:0}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:6px;padding-right:6px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:4px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic .mdc-evolution-chip__graphic{padding-left:8px;padding-right:4px}.mat-mdc-standard-chip.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:6px;padding-right:6px}.mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:4px;padding-right:8px}[dir=rtl] .mdc-evolution-chip--with-avatar.mdc-evolution-chip--with-primary-graphic.mdc-evolution-chip--with-trailing-action .mdc-evolution-chip__graphic{padding-left:8px;padding-right:4px}.mdc-evolution-chip__checkmark{position:absolute;opacity:0;top:50%;left:50%;height:20px;width:20px}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__checkmark{color:var(--mdc-chip-with-icon-selected-icon-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__checkmark{color:var(--mdc-chip-with-icon-disabled-icon-color, var(--mat-sys-on-surface))}.mdc-evolution-chip--selecting .mdc-evolution-chip__checkmark{transition:transform 150ms 0ms cubic-bezier(0.4, 0, 0.2, 1);transform:translate(-75%, -50%)}.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark{transform:translate(-50%, -50%);opacity:1}.mdc-evolution-chip__checkmark-svg{display:block}.mdc-evolution-chip__checkmark-path{stroke-width:2px;stroke-dasharray:29.7833385;stroke-dashoffset:29.7833385;stroke:currentColor}.mdc-evolution-chip--selecting .mdc-evolution-chip__checkmark-path{transition:stroke-dashoffset 150ms 45ms cubic-bezier(0.4, 0, 0.2, 1)}.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark-path{stroke-dashoffset:0}@media(forced-colors: active){.mdc-evolution-chip__checkmark-path{stroke:CanvasText !important}}.mat-mdc-standard-chip .mdc-evolution-chip__icon--trailing{height:18px;width:18px;font-size:18px}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing.mat-mdc-chip-remove{opacity:calc(var(--mat-chip-trailing-action-opacity, 1)*var(--mdc-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38))}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing.mat-mdc-chip-remove:focus{opacity:calc(var(--mat-chip-trailing-action-focus-opacity, 1)*var(--mdc-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38))}.mat-mdc-standard-chip{border-radius:var(--mdc-chip-container-shape-radius, 8px);height:var(--mdc-chip-container-height, 32px)}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled){background-color:var(--mdc-chip-elevated-container-color, transparent)}.mat-mdc-standard-chip.mdc-evolution-chip--disabled{background-color:var(--mdc-chip-elevated-disabled-container-color)}.mat-mdc-standard-chip.mdc-evolution-chip--selected:not(.mdc-evolution-chip--disabled){background-color:var(--mdc-chip-elevated-selected-container-color, var(--mat-sys-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled{background-color:var(--mdc-chip-flat-disabled-selected-container-color, color-mix(in srgb, var(--mat-sys-on-surface) 12%, transparent))}@media(forced-colors: active){.mat-mdc-standard-chip{outline:solid 1px}}.mat-mdc-standard-chip .mdc-evolution-chip__icon--primary{border-radius:var(--mdc-chip-with-avatar-avatar-shape-radius, 24px);width:var(--mdc-chip-with-icon-icon-size, 18px);height:var(--mdc-chip-with-icon-icon-size, 18px);font-size:var(--mdc-chip-with-icon-icon-size, 18px)}.mdc-evolution-chip--selected .mdc-evolution-chip__icon--primary{opacity:0}.mat-mdc-standard-chip:not(.mdc-evolution-chip--disabled) .mdc-evolution-chip__icon--primary{color:var(--mdc-chip-with-icon-icon-color, var(--mat-sys-on-surface-variant))}.mat-mdc-standard-chip.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--primary{color:var(--mdc-chip-with-icon-disabled-icon-color, var(--mat-sys-on-surface))}.mat-mdc-chip-highlighted{--mdc-chip-with-icon-icon-color:var(--mdc-chip-with-icon-selected-icon-color, var(--mat-sys-on-secondary-container));--mdc-chip-elevated-container-color:var(--mdc-chip-elevated-selected-container-color, var(--mat-sys-secondary-container));--mdc-chip-label-text-color:var(--mdc-chip-selected-label-text-color, var(--mat-sys-on-secondary-container));--mdc-chip-outline-width:var(--mdc-chip-flat-selected-outline-width, 0)}.mat-mdc-chip-focus-overlay{background:var(--mdc-chip-focus-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-chip-selected .mat-mdc-chip-focus-overlay,.mat-mdc-chip-highlighted .mat-mdc-chip-focus-overlay{background:var(--mdc-chip-selected-focus-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-mdc-chip:hover .mat-mdc-chip-focus-overlay{background:var(--mdc-chip-hover-state-layer-color, var(--mat-sys-on-surface-variant));opacity:var(--mdc-chip-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip-focus-overlay .mat-mdc-chip-selected:hover,.mat-mdc-chip-highlighted:hover .mat-mdc-chip-focus-overlay{background:var(--mdc-chip-selected-hover-state-layer-color, var(--mat-sys-on-secondary-container));opacity:var(--mdc-chip-selected-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip.cdk-focused .mat-mdc-chip-focus-overlay{background:var(--mdc-chip-focus-state-layer-color, var(--mat-sys-on-surface-variant));opacity:var(--mdc-chip-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-chip-selected.cdk-focused .mat-mdc-chip-focus-overlay,.mat-mdc-chip-highlighted.cdk-focused .mat-mdc-chip-focus-overlay{background:var(--mdc-chip-selected-focus-state-layer-color, var(--mat-sys-on-secondary-container));opacity:var(--mdc-chip-selected-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mdc-evolution-chip--disabled:not(.mdc-evolution-chip--selected) .mat-mdc-chip-avatar{opacity:var(--mdc-chip-with-avatar-disabled-avatar-opacity, 0.38)}.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing{opacity:var(--mdc-chip-with-trailing-icon-disabled-trailing-icon-opacity, 0.38)}.mdc-evolution-chip--disabled.mdc-evolution-chip--selected .mdc-evolution-chip__checkmark{opacity:var(--mdc-chip-with-icon-disabled-icon-opacity, 0.38)}.mat-mdc-standard-chip.mdc-evolution-chip--disabled{opacity:var(--mat-chip-disabled-container-opacity, 1)}.mat-mdc-standard-chip.mdc-evolution-chip--selected .mdc-evolution-chip__icon--trailing,.mat-mdc-standard-chip.mat-mdc-chip-highlighted .mdc-evolution-chip__icon--trailing{color:var(--mat-chip-selected-trailing-icon-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip.mdc-evolution-chip--selected.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing,.mat-mdc-standard-chip.mat-mdc-chip-highlighted.mdc-evolution-chip--disabled .mdc-evolution-chip__icon--trailing{color:var(--mat-chip-selected-disabled-trailing-icon-color, var(--mat-sys-on-surface))}.mat-mdc-chip-remove{opacity:var(--mat-chip-trailing-action-opacity, 1)}.mat-mdc-chip-remove:focus{opacity:var(--mat-chip-trailing-action-focus-opacity, 1)}.mat-mdc-chip-remove::after{background-color:var(--mat-chip-trailing-action-state-layer-color, var(--mat-sys-on-surface-variant))}.mat-mdc-chip-remove:hover::after{opacity:var(--mat-chip-trailing-action-hover-state-layer-opacity, var(--mat-sys-hover-state-layer-opacity))}.mat-mdc-chip-remove:focus::after{opacity:var(--mat-chip-trailing-action-focus-state-layer-opacity, var(--mat-sys-focus-state-layer-opacity))}.mat-mdc-chip-selected .mat-mdc-chip-remove::after,.mat-mdc-chip-highlighted .mat-mdc-chip-remove::after{background-color:var(--mat-chip-selected-trailing-action-state-layer-color, var(--mat-sys-on-secondary-container))}.mat-mdc-standard-chip{-webkit-tap-highlight-color:rgba(0,0,0,0)}.mat-mdc-standard-chip .mdc-evolution-chip__cell--primary,.mat-mdc-standard-chip .mdc-evolution-chip__action--primary,.mat-mdc-standard-chip .mat-mdc-chip-action-label{overflow:visible}.mat-mdc-standard-chip .mat-mdc-chip-graphic,.mat-mdc-standard-chip .mat-mdc-chip-trailing-icon{box-sizing:content-box}.mat-mdc-standard-chip._mat-animation-noopable,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__graphic,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__checkmark,.mat-mdc-standard-chip._mat-animation-noopable .mdc-evolution-chip__checkmark-path{transition-duration:1ms;animation-duration:1ms}.mat-mdc-chip-focus-overlay{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;opacity:0;border-radius:inherit;transition:opacity 150ms linear}._mat-animation-noopable .mat-mdc-chip-focus-overlay{transition:none}.mat-mdc-basic-chip .mat-mdc-chip-focus-overlay{display:none}.mat-mdc-chip .mat-ripple.mat-mdc-chip-ripple{top:0;left:0;right:0;bottom:0;position:absolute;pointer-events:none;border-radius:inherit}.mat-mdc-chip-avatar{text-align:center;line-height:1;color:var(--mdc-chip-with-icon-icon-color, currentColor)}.mat-mdc-chip{position:relative;z-index:0}.mat-mdc-chip-action-label{text-align:left;z-index:1}[dir=rtl] .mat-mdc-chip-action-label{text-align:right}.mat-mdc-chip.mdc-evolution-chip--with-trailing-action .mat-mdc-chip-action-label{position:relative}.mat-mdc-chip-action-label .mat-mdc-chip-primary-focus-indicator{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.mat-mdc-chip-action-label .mat-focus-indicator::before{margin:calc(calc(var(--mat-focus-indicator-border-width, 3px) + 2px)*-1)}.mat-mdc-chip-remove::before{margin:calc(var(--mat-focus-indicator-border-width, 3px)*-1);left:8px;right:8px}.mat-mdc-chip-remove::after{content:\\\"\\\";display:block;opacity:0;position:absolute;top:-3px;bottom:-3px;left:5px;right:5px;border-radius:50%;box-sizing:border-box;padding:12px;margin:-12px;background-clip:content-box}.mat-mdc-chip-remove .mat-icon{width:18px;height:18px;font-size:18px;box-sizing:content-box}.mat-chip-edit-input{cursor:text;display:inline-block;color:inherit;outline:0}@media(forced-colors: active){.mat-mdc-chip-selected:not(.mat-mdc-chip-multiple){outline-width:3px}}.mat-mdc-chip-action:focus .mat-focus-indicator::before{content:\\\"\\\"}\"],\n encapsulation: 2,\n changeDetection: 0\n });\n }\n return MatChip;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/** Event object emitted by MatChipOption when selected or deselected. */\nclass MatChipSelectionChange {\n source;\n selected;\n isUserInput;\n constructor(/** Reference to the chip that emitted the event. */\n source, /** Whether the chip that emitted the event is selected. */\n selected, /** Whether the selection change was a result of a user interaction. */\n isUserInput = false) {\n this.source = source;\n this.selected = selected;\n this.isUserInput = isUserInput;\n }\n}\n/**\n * An extension of the MatChip component that supports chip selection. Used with MatChipListbox.\n *\n * Unlike other chips, the user can focus on disabled chip options inside a MatChipListbox. The\n * user cannot click disabled chips.\n */\nlet MatChipOption = /*#__PURE__*/(() => {\n class MatChipOption extends MatChip {\n /** Default chip options. */\n _defaultOptions = inject(MAT_CHIPS_DEFAULT_OPTIONS, {\n optional: true\n });\n /** Whether the chip list is selectable. */\n chipListSelectable = true;\n /** Whether the chip list is in multi-selection mode. */\n _chipListMultiple = false;\n /** Whether the chip list hides single-selection indicator. */\n _chipListHideSingleSelectionIndicator = this._defaultOptions?.hideSingleSelectionIndicator ?? false;\n /**\n * Whether or not the chip is selectable.\n *\n * When a chip is not selectable, changes to its selected state are always\n * ignored. By default an option chip is selectable, and it becomes\n * non-selectable if its parent chip list is not selectable.\n */\n get selectable() {\n return this._selectable && this.chipListSelectable;\n }\n set selectable(value) {\n this._selectable = value;\n this._changeDetectorRef.markForCheck();\n }\n _selectable = true;\n /** Whether the chip is selected. */\n get selected() {\n return this._selected;\n }\n set selected(value) {\n this._setSelectedState(value, false, true);\n }\n _selected = false;\n /**\n * The ARIA selected applied to the chip. Conforms to WAI ARIA best practices for listbox\n * interaction patterns.\n *\n * From [WAI ARIA Listbox authoring practices guide](\n * https://www.w3.org/WAI/ARIA/apg/patterns/listbox/):\n * \"If any options are selected, each selected option has either aria-selected or aria-checked\n * set to true. All options that are selectable but not selected have either aria-selected or\n * aria-checked set to false.\"\n *\n * Set `aria-selected=\"false\"` on not-selected listbox options that are selectable to fix\n * VoiceOver reading every option as \"selected\" (#25736).\n */\n get ariaSelected() {\n return this.selectable ? this.selected.toString() : null;\n }\n /** The unstyled chip selector for this component. */\n basicChipAttrName = 'mat-basic-chip-option';\n /** Emitted when the chip is selected or deselected. */\n selectionChange = new EventEmitter();\n ngOnInit() {\n super.ngOnInit();\n this.role = 'presentation';\n }\n /** Selects the chip. */\n select() {\n this._setSelectedState(true, false, true);\n }\n /** Deselects the chip. */\n deselect() {\n this._setSelectedState(false, false, true);\n }\n /** Selects this chip and emits userInputSelection event */\n selectViaInteraction() {\n this._setSelectedState(true, true, true);\n }\n /** Toggles the current selected state of this chip. */\n toggleSelected(isUserInput = false) {\n this._setSelectedState(!this.selected, isUserInput, true);\n return this.selected;\n }\n _handlePrimaryActionInteraction() {\n if (!this.disabled) {\n // Interacting with the primary action implies that the chip already has focus, however\n // there's a bug in Safari where focus ends up lingering on the previous chip (see #27544).\n // We work around it by explicitly focusing the primary action of the current chip.\n this.focus();\n if (this.selectable) {\n this.toggleSelected(true);\n }\n }\n }\n _hasLeadingGraphic() {\n if (this.leadingIcon) {\n return true;\n }\n // The checkmark graphic communicates selected state for both single-select and multi-select.\n // Include checkmark in single-select to fix a11y issue where selected state is communicated\n // visually only using color (#25886).\n return !this._chipListHideSingleSelectionIndicator || this._chipListMultiple;\n }\n _setSelectedState(isSelected, isUserInput, emitEvent) {\n if (isSelected !== this.selected) {\n this._selected = isSelected;\n if (emitEvent) {\n this.selectionChange.emit({\n source: this,\n isUserInput,\n selected: this.selected\n });\n }\n this._changeDetectorRef.markForCheck();\n }\n }\n static ɵfac = /* @__PURE__ */(() => {\n let ɵMatChipOption_BaseFactory;\n return function MatChipOption_Factory(__ngFactoryType__) {\n return (ɵMatChipOption_BaseFactory || (ɵMatChipOption_BaseFactory = i0.ɵɵgetInheritedFactory(MatChipOption)))(__ngFactoryType__ || MatChipOption);\n };\n })();\n static ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: MatChipOption,\n selectors: [[\"mat-basic-chip-option\"], [\"\", \"mat-basic-chip-option\", \"\"], [\"mat-chip-option\"], [\"\", \"mat-chip-option\", \"\"]],\n hostAttrs: [1, \"mat-mdc-chip\", \"mat-mdc-chip-option\"],\n hostVars: 37,\n hostBindings: function MatChipOption_HostBindings(rf, ctx) {\n if (rf & 2) {\n i0.ɵɵhostProperty(\"id\", ctx.id);\n i0.ɵɵattribute(\"tabindex\", null)(\"aria-label\", null)(\"aria-description\", null)(\"role\", ctx.role);\n i0.ɵɵclassProp(\"mdc-evolution-chip\", !ctx._isBasicChip)(\"mdc-evolution-chip--filter\", !ctx._isBasicChip)(\"mdc-evolution-chip--selectable\", !ctx._isBasicChip)(\"mat-mdc-chip-selected\", ctx.selected)(\"mat-mdc-chip-multiple\", ctx._chipListMultiple)(\"mat-mdc-chip-disabled\", ctx.disabled)(\"mat-mdc-chip-with-avatar\", ctx.leadingIcon)(\"mdc-evolution-chip--disabled\", ctx.disabled)(\"mdc-evolution-chip--selected\", ctx.selected)(\"mdc-evolution-chip--selecting\", !ctx._animationsDisabled)(\"mdc-evolution-chip--with-trailing-action\", ctx._hasTrailingIcon())(\"mdc-evolution-chip--with-primary-icon\", ctx.leadingIcon)(\"mdc-evolution-chip--with-primary-graphic\", ctx._hasLeadingGraphic())(\"mdc-evolution-chip--with-avatar\", ctx.leadingIcon)(\"mat-mdc-chip-highlighted\", ctx.highlighted)(\"mat-mdc-chip-with-trailing-icon\", ctx._hasTrailingIcon());\n }\n },\n inputs: {\n selectable: [2, \"selectable\", \"selectable\", booleanAttribute],\n selected: [2, \"selected\", \"selected\", booleanAttribute]\n },\n outputs: {\n selectionChange: \"selectionChange\"\n },\n features: [i0.ɵɵProvidersFeature([{\n provide: MatChip,\n useExisting: MatChipOption\n }, {\n provide: MAT_CHIP,\n useExisting: MatChipOption\n }]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature],\n ngContentSelectors: _c1,\n decls: 10,\n vars: 8,\n consts: [[1, \"mat-mdc-chip-focus-overlay\"], [1, \"mdc-evolution-chip__cell\", \"mdc-evolution-chip__cell--primary\"], [\"matChipAction\", \"\", \"role\", \"option\", 3, \"_allowFocusWhenDisabled\"], [1, \"mdc-evolution-chip__graphic\", \"mat-mdc-chip-graphic\"], [1, \"mdc-evolution-chip__text-label\", \"mat-mdc-chip-action-label\"], [1, \"mat-mdc-chip-primary-focus-indicator\", \"mat-focus-indicator\"], [1, \"mdc-evolution-chip__cell\", \"mdc-evolution-chip__cell--trailing\"], [1, \"cdk-visually-hidden\", 3, \"id\"], [1, \"mdc-evolution-chip__checkmark\"], [\"viewBox\", \"-2 -3 30 30\", \"focusable\", \"false\", \"aria-hidden\", \"true\", 1, \"mdc-evolution-chip__checkmark-svg\"], [\"fill\", \"none\", \"stroke\", \"currentColor\", \"d\", \"M1.73,12.91 8.1,19.28 22.79,4.59\", 1, \"mdc-evolution-chip__checkmark-path\"]],\n template: function MatChipOption_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojectionDef(_c0);\n i0.ɵɵelement(0, \"span\", 0);\n i0.ɵɵelementStart(1, \"span\", 1)(2, \"button\", 2);\n i0.ɵɵtemplate(3, MatChipOption_Conditional_3_Template, 5, 0, \"span\", 3);\n i0.ɵɵelementStart(4, \"span\", 4);\n i0.ɵɵprojection(5);\n i0.ɵɵelement(6, \"span\", 5);\n i0.ɵɵelementEnd()()();\n i0.ɵɵtemplate(7, MatChipOption_Conditional_7_Template, 2, 0, \"span\", 6);\n i0.ɵɵelementStart(8, \"span\", 7);\n i0.ɵɵtext(9);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n i0.ɵɵadvance(2);\n i0.ɵɵproperty(\"_allowFocusWhenDisabled\", true);\n i0.ɵɵattribute(\"aria-selected\", ctx.ariaSelected)(\"aria-label\", ctx.ariaLabel)(\"aria-describedby\", ctx._ariaDescriptionId);\n i0.ɵɵadvance();\n i0.ɵɵconditional(ctx._hasLeadingGraphic() ? 3 : -1);\n i0.ɵɵadvance(4);\n i0.ɵɵconditional(ctx._hasTrailingIcon() ? 7 : -1);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"id\", ctx._ariaDescriptionId);\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate(ctx.ariaDescription);\n }\n },\n dependencies: [MatChipAction],\n styles: [_c2],\n encapsulation: 2,\n changeDetection: 0\n });\n }\n return MatChipOption;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/**\n * A directive that makes a span editable and exposes functions to modify and retrieve the\n * element's contents.\n */\nlet MatChipEditInput = /*#__PURE__*/(() => {\n class MatChipEditInput {\n _elementRef = inject(ElementRef);\n _document = inject(DOCUMENT);\n constructor() {}\n initialize(initialValue) {\n this.getNativeElement().focus();\n this.setValue(initialValue);\n }\n getNativeElement() {\n return this._elementRef.nativeElement;\n }\n setValue(value) {\n this.getNativeElement().textContent = value;\n this._moveCursorToEndOfInput();\n }\n getValue() {\n return this.getNativeElement().textContent || '';\n }\n _moveCursorToEndOfInput() {\n const range = this._document.createRange();\n range.selectNodeContents(this.getNativeElement());\n range.collapse(false);\n const sel = window.getSelection();\n sel.removeAllRanges();\n sel.addRange(range);\n }\n static ɵfac = function MatChipEditInput_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatChipEditInput)();\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: MatChipEditInput,\n selectors: [[\"span\", \"matChipEditInput\", \"\"]],\n hostAttrs: [\"role\", \"textbox\", \"tabindex\", \"-1\", \"contenteditable\", \"true\", 1, \"mat-chip-edit-input\"]\n });\n }\n return MatChipEditInput;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/**\n * An extension of the MatChip component used with MatChipGrid and\n * the matChipInputFor directive.\n */\nlet MatChipRow = /*#__PURE__*/(() => {\n class MatChipRow extends MatChip {\n basicChipAttrName = 'mat-basic-chip-row';\n /**\n * The editing action has to be triggered in a timeout. While we're waiting on it, a blur\n * event might occur which will interrupt the editing. This flag is used to avoid interruptions\n * while the editing action is being initialized.\n */\n _editStartPending = false;\n editable = false;\n /** Emitted when the chip is edited. */\n edited = new EventEmitter();\n /** The default chip edit input that is used if none is projected into this chip row. */\n defaultEditInput;\n /** The projected chip edit input. */\n contentEditInput;\n _isEditing = false;\n constructor() {\n super();\n this.role = 'row';\n this._onBlur.pipe(takeUntil(this.destroyed)).subscribe(() => {\n if (this._isEditing && !this._editStartPending) {\n this._onEditFinish();\n }\n });\n }\n _hasTrailingIcon() {\n // The trailing icon is hidden while editing.\n return !this._isEditing && super._hasTrailingIcon();\n }\n /** Sends focus to the first gridcell when the user clicks anywhere inside the chip. */\n _handleFocus() {\n if (!this._isEditing && !this.disabled) {\n this.focus();\n }\n }\n _handleKeydown(event) {\n if (event.keyCode === ENTER && !this.disabled) {\n if (this._isEditing) {\n event.preventDefault();\n this._onEditFinish();\n } else if (this.editable) {\n this._startEditing(event);\n }\n } else if (this._isEditing) {\n // Stop the event from reaching the chip set in order to avoid navigating.\n event.stopPropagation();\n } else {\n super._handleKeydown(event);\n }\n }\n _handleDoubleclick(event) {\n if (!this.disabled && this.editable) {\n this._startEditing(event);\n }\n }\n _startEditing(event) {\n if (!this.primaryAction || this.removeIcon && this._getSourceAction(event.target) === this.removeIcon) {\n return;\n }\n // The value depends on the DOM so we need to extract it before we flip the flag.\n const value = this.value;\n this._isEditing = this._editStartPending = true;\n // Defer initializing the input until after it has been added to the DOM.\n afterNextRender(() => {\n this._getEditInput().initialize(value);\n this._editStartPending = false;\n }, {\n injector: this._injector\n });\n }\n _onEditFinish() {\n this._isEditing = this._editStartPending = false;\n this.edited.emit({\n chip: this,\n value: this._getEditInput().getValue()\n });\n // If the edit input is still focused or focus was returned to the body after it was destroyed,\n // return focus to the chip contents.\n if (this._document.activeElement === this._getEditInput().getNativeElement() || this._document.activeElement === this._document.body) {\n this.primaryAction.focus();\n }\n }\n _isRippleDisabled() {\n return super._isRippleDisabled() || this._isEditing;\n }\n /**\n * Gets the projected chip edit input, or the default input if none is projected in. One of these\n * two values is guaranteed to be defined.\n */\n _getEditInput() {\n return this.contentEditInput || this.defaultEditInput;\n }\n static ɵfac = function MatChipRow_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatChipRow)();\n };\n static ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: MatChipRow,\n selectors: [[\"mat-chip-row\"], [\"\", \"mat-chip-row\", \"\"], [\"mat-basic-chip-row\"], [\"\", \"mat-basic-chip-row\", \"\"]],\n contentQueries: function MatChipRow_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, MatChipEditInput, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.contentEditInput = _t.first);\n }\n },\n viewQuery: function MatChipRow_Query(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵviewQuery(MatChipEditInput, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.defaultEditInput = _t.first);\n }\n },\n hostAttrs: [1, \"mat-mdc-chip\", \"mat-mdc-chip-row\", \"mdc-evolution-chip\"],\n hostVars: 27,\n hostBindings: function MatChipRow_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"focus\", function MatChipRow_focus_HostBindingHandler($event) {\n return ctx._handleFocus($event);\n })(\"dblclick\", function MatChipRow_dblclick_HostBindingHandler($event) {\n return ctx._handleDoubleclick($event);\n });\n }\n if (rf & 2) {\n i0.ɵɵhostProperty(\"id\", ctx.id);\n i0.ɵɵattribute(\"tabindex\", ctx.disabled ? null : -1)(\"aria-label\", null)(\"aria-description\", null)(\"role\", ctx.role);\n i0.ɵɵclassProp(\"mat-mdc-chip-with-avatar\", ctx.leadingIcon)(\"mat-mdc-chip-disabled\", ctx.disabled)(\"mat-mdc-chip-editing\", ctx._isEditing)(\"mat-mdc-chip-editable\", ctx.editable)(\"mdc-evolution-chip--disabled\", ctx.disabled)(\"mdc-evolution-chip--with-trailing-action\", ctx._hasTrailingIcon())(\"mdc-evolution-chip--with-primary-graphic\", ctx.leadingIcon)(\"mdc-evolution-chip--with-primary-icon\", ctx.leadingIcon)(\"mdc-evolution-chip--with-avatar\", ctx.leadingIcon)(\"mat-mdc-chip-highlighted\", ctx.highlighted)(\"mat-mdc-chip-with-trailing-icon\", ctx._hasTrailingIcon());\n }\n },\n inputs: {\n editable: \"editable\"\n },\n outputs: {\n edited: \"edited\"\n },\n features: [i0.ɵɵProvidersFeature([{\n provide: MatChip,\n useExisting: MatChipRow\n }, {\n provide: MAT_CHIP,\n useExisting: MatChipRow\n }]), i0.ɵɵInheritDefinitionFeature],\n ngContentSelectors: _c4,\n decls: 10,\n vars: 9,\n consts: [[1, \"mat-mdc-chip-focus-overlay\"], [\"role\", \"gridcell\", \"matChipAction\", \"\", 1, \"mdc-evolution-chip__cell\", \"mdc-evolution-chip__cell--primary\", 3, \"disabled\"], [1, \"mdc-evolution-chip__graphic\", \"mat-mdc-chip-graphic\"], [1, \"mdc-evolution-chip__text-label\", \"mat-mdc-chip-action-label\"], [\"aria-hidden\", \"true\", 1, \"mat-mdc-chip-primary-focus-indicator\", \"mat-focus-indicator\"], [\"role\", \"gridcell\", 1, \"mdc-evolution-chip__cell\", \"mdc-evolution-chip__cell--trailing\"], [1, \"cdk-visually-hidden\", 3, \"id\"], [\"matChipEditInput\", \"\"]],\n template: function MatChipRow_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojectionDef(_c3);\n i0.ɵɵtemplate(0, MatChipRow_Conditional_0_Template, 1, 0, \"span\", 0);\n i0.ɵɵelementStart(1, \"span\", 1);\n i0.ɵɵtemplate(2, MatChipRow_Conditional_2_Template, 2, 0, \"span\", 2);\n i0.ɵɵelementStart(3, \"span\", 3);\n i0.ɵɵtemplate(4, MatChipRow_Conditional_4_Template, 2, 1)(5, MatChipRow_Conditional_5_Template, 1, 0);\n i0.ɵɵelement(6, \"span\", 4);\n i0.ɵɵelementEnd()();\n i0.ɵɵtemplate(7, MatChipRow_Conditional_7_Template, 2, 0, \"span\", 5);\n i0.ɵɵelementStart(8, \"span\", 6);\n i0.ɵɵtext(9);\n i0.ɵɵelementEnd();\n }\n if (rf & 2) {\n i0.ɵɵconditional(!ctx._isEditing ? 0 : -1);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"disabled\", ctx.disabled);\n i0.ɵɵattribute(\"aria-label\", ctx.ariaLabel)(\"aria-describedby\", ctx._ariaDescriptionId);\n i0.ɵɵadvance();\n i0.ɵɵconditional(ctx.leadingIcon ? 2 : -1);\n i0.ɵɵadvance(2);\n i0.ɵɵconditional(ctx._isEditing ? 4 : 5);\n i0.ɵɵadvance(3);\n i0.ɵɵconditional(ctx._hasTrailingIcon() ? 7 : -1);\n i0.ɵɵadvance();\n i0.ɵɵproperty(\"id\", ctx._ariaDescriptionId);\n i0.ɵɵadvance();\n i0.ɵɵtextInterpolate(ctx.ariaDescription);\n }\n },\n dependencies: [MatChipAction, MatChipEditInput],\n styles: [_c2],\n encapsulation: 2,\n changeDetection: 0\n });\n }\n return MatChipRow;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/**\n * Basic container component for the MatChip component.\n *\n * Extended by MatChipListbox and MatChipGrid for different interaction patterns.\n */\nlet MatChipSet = /*#__PURE__*/(() => {\n class MatChipSet {\n _elementRef = inject(ElementRef);\n _changeDetectorRef = inject(ChangeDetectorRef);\n _dir = inject(Directionality, {\n optional: true\n });\n /** Index of the last destroyed chip that had focus. */\n _lastDestroyedFocusedChipIndex = null;\n /** Used to manage focus within the chip list. */\n _keyManager;\n /** Subject that emits when the component has been destroyed. */\n _destroyed = new Subject();\n /** Role to use if it hasn't been overwritten by the user. */\n _defaultRole = 'presentation';\n /** Combined stream of all of the child chips' focus events. */\n get chipFocusChanges() {\n return this._getChipStream(chip => chip._onFocus);\n }\n /** Combined stream of all of the child chips' destroy events. */\n get chipDestroyedChanges() {\n return this._getChipStream(chip => chip.destroyed);\n }\n /** Combined stream of all of the child chips' remove events. */\n get chipRemovedChanges() {\n return this._getChipStream(chip => chip.removed);\n }\n /** Whether the chip set is disabled. */\n get disabled() {\n return this._disabled;\n }\n set disabled(value) {\n this._disabled = value;\n this._syncChipsState();\n }\n _disabled = false;\n /** Whether the chip list contains chips or not. */\n get empty() {\n return !this._chips || this._chips.length === 0;\n }\n /** The ARIA role applied to the chip set. */\n get role() {\n if (this._explicitRole) {\n return this._explicitRole;\n }\n return this.empty ? null : this._defaultRole;\n }\n /** Tabindex of the chip set. */\n tabIndex = 0;\n set role(value) {\n this._explicitRole = value;\n }\n _explicitRole = null;\n /** Whether any of the chips inside of this chip-set has focus. */\n get focused() {\n return this._hasFocusedChip();\n }\n /** The chips that are part of this chip set. */\n _chips;\n /** Flat list of all the actions contained within the chips. */\n _chipActions = new QueryList();\n constructor() {}\n ngAfterViewInit() {\n this._setUpFocusManagement();\n this._trackChipSetChanges();\n this._trackDestroyedFocusedChip();\n }\n ngOnDestroy() {\n this._keyManager?.destroy();\n this._chipActions.destroy();\n this._destroyed.next();\n this._destroyed.complete();\n }\n /** Checks whether any of the chips is focused. */\n _hasFocusedChip() {\n return this._chips && this._chips.some(chip => chip._hasFocus());\n }\n /** Syncs the chip-set's state with the individual chips. */\n _syncChipsState() {\n this._chips?.forEach(chip => {\n chip._chipListDisabled = this._disabled;\n chip._changeDetectorRef.markForCheck();\n });\n }\n /** Dummy method for subclasses to override. Base chip set cannot be focused. */\n focus() {}\n /** Handles keyboard events on the chip set. */\n _handleKeydown(event) {\n if (this._originatesFromChip(event)) {\n this._keyManager.onKeydown(event);\n }\n }\n /**\n * Utility to ensure all indexes are valid.\n *\n * @param index The index to be checked.\n * @returns True if the index is valid for our list of chips.\n */\n _isValidIndex(index) {\n return index >= 0 && index < this._chips.length;\n }\n /**\n * Removes the `tabindex` from the chip set and resets it back afterwards, allowing the\n * user to tab out of it. This prevents the set from capturing focus and redirecting\n * it back to the first chip, creating a focus trap, if it user tries to tab away.\n */\n _allowFocusEscape() {\n const previous = this._elementRef.nativeElement.tabIndex;\n if (previous !== -1) {\n // Set the tabindex directly on the element, instead of going through\n // the data binding, because we aren't guaranteed that change detection\n // will run quickly enough to allow focus to escape.\n this._elementRef.nativeElement.tabIndex = -1;\n // Note that this needs to be a `setTimeout`, because a `Promise.resolve`\n // doesn't allow enough time for the focus to escape.\n setTimeout(() => this._elementRef.nativeElement.tabIndex = previous);\n }\n }\n /**\n * Gets a stream of events from all the chips within the set.\n * The stream will automatically incorporate any newly-added chips.\n */\n _getChipStream(mappingFunction) {\n return this._chips.changes.pipe(startWith(null), switchMap(() => merge(...this._chips.map(mappingFunction))));\n }\n /** Checks whether an event comes from inside a chip element. */\n _originatesFromChip(event) {\n let currentElement = event.target;\n while (currentElement && currentElement !== this._elementRef.nativeElement) {\n if (currentElement.classList.contains('mat-mdc-chip')) {\n return true;\n }\n currentElement = currentElement.parentElement;\n }\n return false;\n }\n /** Sets up the chip set's focus management logic. */\n _setUpFocusManagement() {\n // Create a flat `QueryList` containing the actions of all of the chips.\n // This allows us to navigate both within the chip and move to the next/previous\n // one using the existing `ListKeyManager`.\n this._chips.changes.pipe(startWith(this._chips)).subscribe(chips => {\n const actions = [];\n chips.forEach(chip => chip._getActions().forEach(action => actions.push(action)));\n this._chipActions.reset(actions);\n this._chipActions.notifyOnChanges();\n });\n this._keyManager = new FocusKeyManager(this._chipActions).withVerticalOrientation().withHorizontalOrientation(this._dir ? this._dir.value : 'ltr').withHomeAndEnd().skipPredicate(action => this._skipPredicate(action));\n // Keep the manager active index in sync so that navigation picks\n // up from the current chip if the user clicks into the list directly.\n this.chipFocusChanges.pipe(takeUntil(this._destroyed)).subscribe(({\n chip\n }) => {\n const action = chip._getSourceAction(document.activeElement);\n if (action) {\n this._keyManager.updateActiveItem(action);\n }\n });\n this._dir?.change.pipe(takeUntil(this._destroyed)).subscribe(direction => this._keyManager.withHorizontalOrientation(direction));\n }\n /**\n * Determines if key manager should avoid putting a given chip action in the tab index. Skip\n * non-interactive and disabled actions since the user can't do anything with them.\n */\n _skipPredicate(action) {\n // Skip chips that the user cannot interact with. `mat-chip-set` does not permit focusing disabled\n // chips.\n return !action.isInteractive || action.disabled;\n }\n /** Listens to changes in the chip set and syncs up the state of the individual chips. */\n _trackChipSetChanges() {\n this._chips.changes.pipe(startWith(null), takeUntil(this._destroyed)).subscribe(() => {\n if (this.disabled) {\n // Since this happens after the content has been\n // checked, we need to defer it to the next tick.\n Promise.resolve().then(() => this._syncChipsState());\n }\n this._redirectDestroyedChipFocus();\n });\n }\n /** Starts tracking the destroyed chips in order to capture the focused one. */\n _trackDestroyedFocusedChip() {\n this.chipDestroyedChanges.pipe(takeUntil(this._destroyed)).subscribe(event => {\n const chipArray = this._chips.toArray();\n const chipIndex = chipArray.indexOf(event.chip);\n // If the focused chip is destroyed, save its index so that we can move focus to the next\n // chip. We only save the index here, rather than move the focus immediately, because we want\n // to wait until the chip is removed from the chip list before focusing the next one. This\n // allows us to keep focus on the same index if the chip gets swapped out.\n if (this._isValidIndex(chipIndex) && event.chip._hasFocus()) {\n this._lastDestroyedFocusedChipIndex = chipIndex;\n }\n });\n }\n /**\n * Finds the next appropriate chip to move focus to,\n * if the currently-focused chip is destroyed.\n */\n _redirectDestroyedChipFocus() {\n if (this._lastDestroyedFocusedChipIndex == null) {\n return;\n }\n if (this._chips.length) {\n const newIndex = Math.min(this._lastDestroyedFocusedChipIndex, this._chips.length - 1);\n const chipToFocus = this._chips.toArray()[newIndex];\n if (chipToFocus.disabled) {\n // If we're down to one disabled chip, move focus back to the set.\n if (this._chips.length === 1) {\n this.focus();\n } else {\n this._keyManager.setPreviousItemActive();\n }\n } else {\n chipToFocus.focus();\n }\n } else {\n this.focus();\n }\n this._lastDestroyedFocusedChipIndex = null;\n }\n static ɵfac = function MatChipSet_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatChipSet)();\n };\n static ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: MatChipSet,\n selectors: [[\"mat-chip-set\"]],\n contentQueries: function MatChipSet_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, MatChip, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._chips = _t);\n }\n },\n hostAttrs: [1, \"mat-mdc-chip-set\", \"mdc-evolution-chip-set\"],\n hostVars: 1,\n hostBindings: function MatChipSet_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"keydown\", function MatChipSet_keydown_HostBindingHandler($event) {\n return ctx._handleKeydown($event);\n });\n }\n if (rf & 2) {\n i0.ɵɵattribute(\"role\", ctx.role);\n }\n },\n inputs: {\n disabled: [2, \"disabled\", \"disabled\", booleanAttribute],\n role: \"role\",\n tabIndex: [2, \"tabIndex\", \"tabIndex\", value => value == null ? 0 : numberAttribute(value)]\n },\n features: [i0.ɵɵInputTransformsFeature],\n ngContentSelectors: _c5,\n decls: 2,\n vars: 0,\n consts: [[\"role\", \"presentation\", 1, \"mdc-evolution-chip-set__chips\"]],\n template: function MatChipSet_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojectionDef();\n i0.ɵɵelementStart(0, \"div\", 0);\n i0.ɵɵprojection(1);\n i0.ɵɵelementEnd();\n }\n },\n styles: [\".mat-mdc-chip-set{display:flex}.mat-mdc-chip-set:focus{outline:none}.mat-mdc-chip-set .mdc-evolution-chip-set__chips{min-width:100%;margin-left:-8px;margin-right:0}.mat-mdc-chip-set .mdc-evolution-chip{margin:4px 0 4px 8px}[dir=rtl] .mat-mdc-chip-set .mdc-evolution-chip-set__chips{margin-left:0;margin-right:-8px}[dir=rtl] .mat-mdc-chip-set .mdc-evolution-chip{margin-left:0;margin-right:8px}.mdc-evolution-chip-set__chips{display:flex;flex-flow:wrap;min-width:0}.mat-mdc-chip-set-stacked{flex-direction:column;align-items:flex-start}.mat-mdc-chip-set-stacked .mat-mdc-chip{width:100%}.mat-mdc-chip-set-stacked .mdc-evolution-chip__graphic{flex-grow:0}.mat-mdc-chip-set-stacked .mdc-evolution-chip__action--primary{flex-basis:100%;justify-content:start}input.mat-mdc-chip-input{flex:1 0 150px;margin-left:8px}[dir=rtl] input.mat-mdc-chip-input{margin-left:0;margin-right:8px}\"],\n encapsulation: 2,\n changeDetection: 0\n });\n }\n return MatChipSet;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/** Change event object that is emitted when the chip listbox value has changed. */\nclass MatChipListboxChange {\n source;\n value;\n constructor(/** Chip listbox that emitted the event. */\n source, /** Value of the chip listbox when the event was emitted. */\n value) {\n this.source = source;\n this.value = value;\n }\n}\n/**\n * Provider Expression that allows mat-chip-listbox to register as a ControlValueAccessor.\n * This allows it to support [(ngModel)].\n * @docs-private\n */\nconst MAT_CHIP_LISTBOX_CONTROL_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: /*#__PURE__*/forwardRef(() => MatChipListbox),\n multi: true\n};\n/**\n * An extension of the MatChipSet component that supports chip selection.\n * Used with MatChipOption chips.\n */\nlet MatChipListbox = /*#__PURE__*/(() => {\n class MatChipListbox extends MatChipSet {\n /**\n * Function when touched. Set as part of ControlValueAccessor implementation.\n * @docs-private\n */\n _onTouched = () => {};\n /**\n * Function when changed. Set as part of ControlValueAccessor implementation.\n * @docs-private\n */\n _onChange = () => {};\n // TODO: MDC uses `grid` here\n _defaultRole = 'listbox';\n /** Value that was assigned before the listbox was initialized. */\n _pendingInitialValue;\n /** Default chip options. */\n _defaultOptions = inject(MAT_CHIPS_DEFAULT_OPTIONS, {\n optional: true\n });\n /** Whether the user should be allowed to select multiple chips. */\n get multiple() {\n return this._multiple;\n }\n set multiple(value) {\n this._multiple = value;\n this._syncListboxProperties();\n }\n _multiple = false;\n /** The array of selected chips inside the chip listbox. */\n get selected() {\n const selectedChips = this._chips.toArray().filter(chip => chip.selected);\n return this.multiple ? selectedChips : selectedChips[0];\n }\n /** Orientation of the chip list. */\n ariaOrientation = 'horizontal';\n /**\n * Whether or not this chip listbox is selectable.\n *\n * When a chip listbox is not selectable, the selected states for all\n * the chips inside the chip listbox are always ignored.\n */\n get selectable() {\n return this._selectable;\n }\n set selectable(value) {\n this._selectable = value;\n this._syncListboxProperties();\n }\n _selectable = true;\n /**\n * A function to compare the option values with the selected values. The first argument\n * is a value from an option. The second is a value from the selection. A boolean\n * should be returned.\n */\n compareWith = (o1, o2) => o1 === o2;\n /** Whether this chip listbox is required. */\n required = false;\n /** Whether checkmark indicator for single-selection options is hidden. */\n get hideSingleSelectionIndicator() {\n return this._hideSingleSelectionIndicator;\n }\n set hideSingleSelectionIndicator(value) {\n this._hideSingleSelectionIndicator = value;\n this._syncListboxProperties();\n }\n _hideSingleSelectionIndicator = this._defaultOptions?.hideSingleSelectionIndicator ?? false;\n /** Combined stream of all of the child chips' selection change events. */\n get chipSelectionChanges() {\n return this._getChipStream(chip => chip.selectionChange);\n }\n /** Combined stream of all of the child chips' blur events. */\n get chipBlurChanges() {\n return this._getChipStream(chip => chip._onBlur);\n }\n /** The value of the listbox, which is the combined value of the selected chips. */\n get value() {\n return this._value;\n }\n set value(value) {\n this.writeValue(value);\n this._value = value;\n }\n _value;\n /** Event emitted when the selected chip listbox value has been changed by the user. */\n change = new EventEmitter();\n _chips = undefined;\n ngAfterContentInit() {\n if (this._pendingInitialValue !== undefined) {\n Promise.resolve().then(() => {\n this._setSelectionByValue(this._pendingInitialValue, false);\n this._pendingInitialValue = undefined;\n });\n }\n this._chips.changes.pipe(startWith(null), takeUntil(this._destroyed)).subscribe(() => {\n // Update listbox selectable/multiple properties on chips\n this._syncListboxProperties();\n });\n this.chipBlurChanges.pipe(takeUntil(this._destroyed)).subscribe(() => this._blur());\n this.chipSelectionChanges.pipe(takeUntil(this._destroyed)).subscribe(event => {\n if (!this.multiple) {\n this._chips.forEach(chip => {\n if (chip !== event.source) {\n chip._setSelectedState(false, false, false);\n }\n });\n }\n if (event.isUserInput) {\n this._propagateChanges();\n }\n });\n }\n /**\n * Focuses the first selected chip in this chip listbox, or the first non-disabled chip when there\n * are no selected chips.\n */\n focus() {\n if (this.disabled) {\n return;\n }\n const firstSelectedChip = this._getFirstSelectedChip();\n if (firstSelectedChip && !firstSelectedChip.disabled) {\n firstSelectedChip.focus();\n } else if (this._chips.length > 0) {\n this._keyManager.setFirstItemActive();\n } else {\n this._elementRef.nativeElement.focus();\n }\n }\n /**\n * Implemented as part of ControlValueAccessor.\n * @docs-private\n */\n writeValue(value) {\n if (this._chips) {\n this._setSelectionByValue(value, false);\n } else if (value != null) {\n this._pendingInitialValue = value;\n }\n }\n /**\n * Implemented as part of ControlValueAccessor.\n * @docs-private\n */\n registerOnChange(fn) {\n this._onChange = fn;\n }\n /**\n * Implemented as part of ControlValueAccessor.\n * @docs-private\n */\n registerOnTouched(fn) {\n this._onTouched = fn;\n }\n /**\n * Implemented as part of ControlValueAccessor.\n * @docs-private\n */\n setDisabledState(isDisabled) {\n this.disabled = isDisabled;\n }\n /** Selects all chips with value. */\n _setSelectionByValue(value, isUserInput = true) {\n this._clearSelection();\n if (Array.isArray(value)) {\n value.forEach(currentValue => this._selectValue(currentValue, isUserInput));\n } else {\n this._selectValue(value, isUserInput);\n }\n }\n /** When blurred, marks the field as touched when focus moved outside the chip listbox. */\n _blur() {\n if (!this.disabled) {\n // Wait to see if focus moves to an individual chip.\n setTimeout(() => {\n if (!this.focused) {\n this._markAsTouched();\n }\n });\n }\n }\n _keydown(event) {\n if (event.keyCode === TAB) {\n super._allowFocusEscape();\n }\n }\n /** Marks the field as touched */\n _markAsTouched() {\n this._onTouched();\n this._changeDetectorRef.markForCheck();\n }\n /** Emits change event to set the model value. */\n _propagateChanges() {\n let valueToEmit = null;\n if (Array.isArray(this.selected)) {\n valueToEmit = this.selected.map(chip => chip.value);\n } else {\n valueToEmit = this.selected ? this.selected.value : undefined;\n }\n this._value = valueToEmit;\n this.change.emit(new MatChipListboxChange(this, valueToEmit));\n this._onChange(valueToEmit);\n this._changeDetectorRef.markForCheck();\n }\n /**\n * Deselects every chip in the listbox.\n * @param skip Chip that should not be deselected.\n */\n _clearSelection(skip) {\n this._chips.forEach(chip => {\n if (chip !== skip) {\n chip.deselect();\n }\n });\n }\n /**\n * Finds and selects the chip based on its value.\n * @returns Chip that has the corresponding value.\n */\n _selectValue(value, isUserInput) {\n const correspondingChip = this._chips.find(chip => {\n return chip.value != null && this.compareWith(chip.value, value);\n });\n if (correspondingChip) {\n isUserInput ? correspondingChip.selectViaInteraction() : correspondingChip.select();\n }\n return correspondingChip;\n }\n /** Syncs the chip-listbox selection state with the individual chips. */\n _syncListboxProperties() {\n if (this._chips) {\n // Defer setting the value in order to avoid the \"Expression\n // has changed after it was checked\" errors from Angular.\n Promise.resolve().then(() => {\n this._chips.forEach(chip => {\n chip._chipListMultiple = this.multiple;\n chip.chipListSelectable = this._selectable;\n chip._chipListHideSingleSelectionIndicator = this.hideSingleSelectionIndicator;\n chip._changeDetectorRef.markForCheck();\n });\n });\n }\n }\n /** Returns the first selected chip in this listbox, or undefined if no chips are selected. */\n _getFirstSelectedChip() {\n if (Array.isArray(this.selected)) {\n return this.selected.length ? this.selected[0] : undefined;\n } else {\n return this.selected;\n }\n }\n /**\n * Determines if key manager should avoid putting a given chip action in the tab index. Skip\n * non-interactive actions since the user can't do anything with them.\n */\n _skipPredicate(action) {\n // Override the skip predicate in the base class to avoid skipping disabled chips. Allow\n // disabled chip options to receive focus to align with WAI ARIA recommendation. Normally WAI\n // ARIA's instructions are to exclude disabled items from the tab order, but it makes a few\n // exceptions for compound widgets.\n //\n // From [Developing a Keyboard Interface](\n // https://www.w3.org/WAI/ARIA/apg/practices/keyboard-interface/):\n // \"For the following composite widget elements, keep them focusable when disabled: Options in a\n // Listbox...\"\n return !action.isInteractive;\n }\n static ɵfac = /* @__PURE__ */(() => {\n let ɵMatChipListbox_BaseFactory;\n return function MatChipListbox_Factory(__ngFactoryType__) {\n return (ɵMatChipListbox_BaseFactory || (ɵMatChipListbox_BaseFactory = i0.ɵɵgetInheritedFactory(MatChipListbox)))(__ngFactoryType__ || MatChipListbox);\n };\n })();\n static ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: MatChipListbox,\n selectors: [[\"mat-chip-listbox\"]],\n contentQueries: function MatChipListbox_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, MatChipOption, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._chips = _t);\n }\n },\n hostAttrs: [1, \"mdc-evolution-chip-set\", \"mat-mdc-chip-listbox\"],\n hostVars: 11,\n hostBindings: function MatChipListbox_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"focus\", function MatChipListbox_focus_HostBindingHandler() {\n return ctx.focus();\n })(\"blur\", function MatChipListbox_blur_HostBindingHandler() {\n return ctx._blur();\n })(\"keydown\", function MatChipListbox_keydown_HostBindingHandler($event) {\n return ctx._keydown($event);\n });\n }\n if (rf & 2) {\n i0.ɵɵhostProperty(\"tabIndex\", ctx.disabled || ctx.empty ? -1 : ctx.tabIndex);\n i0.ɵɵattribute(\"role\", ctx.role)(\"aria-describedby\", ctx._ariaDescribedby || null)(\"aria-required\", ctx.role ? ctx.required : null)(\"aria-disabled\", ctx.disabled.toString())(\"aria-multiselectable\", ctx.multiple)(\"aria-orientation\", ctx.ariaOrientation);\n i0.ɵɵclassProp(\"mat-mdc-chip-list-disabled\", ctx.disabled)(\"mat-mdc-chip-list-required\", ctx.required);\n }\n },\n inputs: {\n multiple: [2, \"multiple\", \"multiple\", booleanAttribute],\n ariaOrientation: [0, \"aria-orientation\", \"ariaOrientation\"],\n selectable: [2, \"selectable\", \"selectable\", booleanAttribute],\n compareWith: \"compareWith\",\n required: [2, \"required\", \"required\", booleanAttribute],\n hideSingleSelectionIndicator: [2, \"hideSingleSelectionIndicator\", \"hideSingleSelectionIndicator\", booleanAttribute],\n value: \"value\"\n },\n outputs: {\n change: \"change\"\n },\n features: [i0.ɵɵProvidersFeature([MAT_CHIP_LISTBOX_CONTROL_VALUE_ACCESSOR]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature],\n ngContentSelectors: _c5,\n decls: 2,\n vars: 0,\n consts: [[\"role\", \"presentation\", 1, \"mdc-evolution-chip-set__chips\"]],\n template: function MatChipListbox_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojectionDef();\n i0.ɵɵelementStart(0, \"div\", 0);\n i0.ɵɵprojection(1);\n i0.ɵɵelementEnd();\n }\n },\n styles: [_c6],\n encapsulation: 2,\n changeDetection: 0\n });\n }\n return MatChipListbox;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/** Change event object that is emitted when the chip grid value has changed. */\nclass MatChipGridChange {\n source;\n value;\n constructor(/** Chip grid that emitted the event. */\n source, /** Value of the chip grid when the event was emitted. */\n value) {\n this.source = source;\n this.value = value;\n }\n}\n/**\n * An extension of the MatChipSet component used with MatChipRow chips and\n * the matChipInputFor directive.\n */\nlet MatChipGrid = /*#__PURE__*/(() => {\n class MatChipGrid extends MatChipSet {\n ngControl = inject(NgControl, {\n optional: true,\n self: true\n });\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n controlType = 'mat-chip-grid';\n /** The chip input to add more chips */\n _chipInput;\n _defaultRole = 'grid';\n _errorStateTracker;\n /**\n * List of element ids to propagate to the chipInput's aria-describedby attribute.\n */\n _ariaDescribedbyIds = [];\n /**\n * Function when touched. Set as part of ControlValueAccessor implementation.\n * @docs-private\n */\n _onTouched = () => {};\n /**\n * Function when changed. Set as part of ControlValueAccessor implementation.\n * @docs-private\n */\n _onChange = () => {};\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get disabled() {\n return this.ngControl ? !!this.ngControl.disabled : this._disabled;\n }\n set disabled(value) {\n this._disabled = value;\n this._syncChipsState();\n this.stateChanges.next();\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get id() {\n return this._chipInput.id;\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get empty() {\n return (!this._chipInput || this._chipInput.empty) && (!this._chips || this._chips.length === 0);\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get placeholder() {\n return this._chipInput ? this._chipInput.placeholder : this._placeholder;\n }\n set placeholder(value) {\n this._placeholder = value;\n this.stateChanges.next();\n }\n _placeholder;\n /** Whether any chips or the matChipInput inside of this chip-grid has focus. */\n get focused() {\n return this._chipInput.focused || this._hasFocusedChip();\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get required() {\n return this._required ?? this.ngControl?.control?.hasValidator(Validators.required) ?? false;\n }\n set required(value) {\n this._required = value;\n this.stateChanges.next();\n }\n _required;\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get shouldLabelFloat() {\n return !this.empty || this.focused;\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n get value() {\n return this._value;\n }\n set value(value) {\n this._value = value;\n }\n _value = [];\n /** An object used to control when error messages are shown. */\n get errorStateMatcher() {\n return this._errorStateTracker.matcher;\n }\n set errorStateMatcher(value) {\n this._errorStateTracker.matcher = value;\n }\n /** Combined stream of all of the child chips' blur events. */\n get chipBlurChanges() {\n return this._getChipStream(chip => chip._onBlur);\n }\n /** Emits when the chip grid value has been changed by the user. */\n change = new EventEmitter();\n /**\n * Emits whenever the raw value of the chip-grid changes. This is here primarily\n * to facilitate the two-way binding for the `value` input.\n * @docs-private\n */\n valueChange = new EventEmitter();\n _chips = undefined;\n /**\n * Emits whenever the component state changes and should cause the parent\n * form-field to update. Implemented as part of `MatFormFieldControl`.\n * @docs-private\n */\n stateChanges = new Subject();\n /** Whether the chip grid is in an error state. */\n get errorState() {\n return this._errorStateTracker.errorState;\n }\n set errorState(value) {\n this._errorStateTracker.errorState = value;\n }\n constructor() {\n super();\n const parentForm = inject(NgForm, {\n optional: true\n });\n const parentFormGroup = inject(FormGroupDirective, {\n optional: true\n });\n const defaultErrorStateMatcher = inject(ErrorStateMatcher);\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n this._errorStateTracker = new _ErrorStateTracker(defaultErrorStateMatcher, this.ngControl, parentFormGroup, parentForm, this.stateChanges);\n }\n ngAfterContentInit() {\n this.chipBlurChanges.pipe(takeUntil(this._destroyed)).subscribe(() => {\n this._blur();\n this.stateChanges.next();\n });\n merge(this.chipFocusChanges, this._chips.changes).pipe(takeUntil(this._destroyed)).subscribe(() => this.stateChanges.next());\n }\n ngAfterViewInit() {\n super.ngAfterViewInit();\n if (!this._chipInput && (typeof ngDevMode === 'undefined' || ngDevMode)) {\n throw Error('mat-chip-grid must be used in combination with matChipInputFor.');\n }\n }\n ngDoCheck() {\n if (this.ngControl) {\n // We need to re-evaluate this on every change detection cycle, because there are some\n // error triggers that we can't subscribe to (e.g. parent form submissions). This means\n // that whatever logic is in here has to be super lean or we risk destroying the performance.\n this.updateErrorState();\n }\n }\n ngOnDestroy() {\n super.ngOnDestroy();\n this.stateChanges.complete();\n }\n /** Associates an HTML input element with this chip grid. */\n registerInput(inputElement) {\n this._chipInput = inputElement;\n this._chipInput.setDescribedByIds(this._ariaDescribedbyIds);\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n onContainerClick(event) {\n if (!this.disabled && !this._originatesFromChip(event)) {\n this.focus();\n }\n }\n /**\n * Focuses the first chip in this chip grid, or the associated input when there\n * are no eligible chips.\n */\n focus() {\n if (this.disabled || this._chipInput.focused) {\n return;\n }\n if (!this._chips.length || this._chips.first.disabled) {\n // Delay until the next tick, because this can cause a \"changed after checked\"\n // error if the input does something on focus (e.g. opens an autocomplete).\n Promise.resolve().then(() => this._chipInput.focus());\n } else {\n const activeItem = this._keyManager.activeItem;\n if (activeItem) {\n activeItem.focus();\n } else {\n this._keyManager.setFirstItemActive();\n }\n }\n this.stateChanges.next();\n }\n /**\n * Implemented as part of MatFormFieldControl.\n * @docs-private\n */\n setDescribedByIds(ids) {\n // We must keep this up to date to handle the case where ids are set\n // before the chip input is registered.\n this._ariaDescribedbyIds = ids;\n this._chipInput?.setDescribedByIds(ids);\n }\n /**\n * Implemented as part of ControlValueAccessor.\n * @docs-private\n */\n writeValue(value) {\n // The user is responsible for creating the child chips, so we just store the value.\n this._value = value;\n }\n /**\n * Implemented as part of ControlValueAccessor.\n * @docs-private\n */\n registerOnChange(fn) {\n this._onChange = fn;\n }\n /**\n * Implemented as part of ControlValueAccessor.\n * @docs-private\n */\n registerOnTouched(fn) {\n this._onTouched = fn;\n }\n /**\n * Implemented as part of ControlValueAccessor.\n * @docs-private\n */\n setDisabledState(isDisabled) {\n this.disabled = isDisabled;\n this.stateChanges.next();\n }\n /** Refreshes the error state of the chip grid. */\n updateErrorState() {\n this._errorStateTracker.updateErrorState();\n }\n /** When blurred, mark the field as touched when focus moved outside the chip grid. */\n _blur() {\n if (!this.disabled) {\n // Check whether the focus moved to chip input.\n // If the focus is not moved to chip input, mark the field as touched. If the focus moved\n // to chip input, do nothing.\n // Timeout is needed to wait for the focus() event trigger on chip input.\n setTimeout(() => {\n if (!this.focused) {\n this._propagateChanges();\n this._markAsTouched();\n }\n });\n }\n }\n /**\n * Removes the `tabindex` from the chip grid and resets it back afterwards, allowing the\n * user to tab out of it. This prevents the grid from capturing focus and redirecting\n * it back to the first chip, creating a focus trap, if it user tries to tab away.\n */\n _allowFocusEscape() {\n if (!this._chipInput.focused) {\n super._allowFocusEscape();\n }\n }\n /** Handles custom keyboard events. */\n _handleKeydown(event) {\n const keyCode = event.keyCode;\n const activeItem = this._keyManager.activeItem;\n if (keyCode === TAB) {\n if (this._chipInput.focused && hasModifierKey(event, 'shiftKey') && this._chips.length && !this._chips.last.disabled) {\n event.preventDefault();\n if (activeItem) {\n this._keyManager.setActiveItem(activeItem);\n } else {\n this._focusLastChip();\n }\n } else {\n // Use the super method here since it doesn't check for the input\n // focused state. This allows focus to escape if there's only one\n // disabled chip left in the list.\n super._allowFocusEscape();\n }\n } else if (!this._chipInput.focused) {\n // The up and down arrows are supposed to navigate between the individual rows in the grid.\n // We do this by filtering the actions down to the ones that have the same `_isPrimary`\n // flag as the active action and moving focus between them ourseles instead of delegating\n // to the key manager. For more information, see #29359 and:\n // https://www.w3.org/WAI/ARIA/apg/patterns/grid/examples/layout-grids/#ex2_label\n if ((keyCode === UP_ARROW || keyCode === DOWN_ARROW) && activeItem) {\n const eligibleActions = this._chipActions.filter(action => action._isPrimary === activeItem._isPrimary && !this._skipPredicate(action));\n const currentIndex = eligibleActions.indexOf(activeItem);\n const delta = event.keyCode === UP_ARROW ? -1 : 1;\n event.preventDefault();\n if (currentIndex > -1 && this._isValidIndex(currentIndex + delta)) {\n this._keyManager.setActiveItem(eligibleActions[currentIndex + delta]);\n }\n } else {\n super._handleKeydown(event);\n }\n }\n this.stateChanges.next();\n }\n _focusLastChip() {\n if (this._chips.length) {\n this._chips.last.focus();\n }\n }\n /** Emits change event to set the model value. */\n _propagateChanges() {\n const valueToEmit = this._chips.length ? this._chips.toArray().map(chip => chip.value) : [];\n this._value = valueToEmit;\n this.change.emit(new MatChipGridChange(this, valueToEmit));\n this.valueChange.emit(valueToEmit);\n this._onChange(valueToEmit);\n this._changeDetectorRef.markForCheck();\n }\n /** Mark the field as touched */\n _markAsTouched() {\n this._onTouched();\n this._changeDetectorRef.markForCheck();\n this.stateChanges.next();\n }\n static ɵfac = function MatChipGrid_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatChipGrid)();\n };\n static ɵcmp = /* @__PURE__ */i0.ɵɵdefineComponent({\n type: MatChipGrid,\n selectors: [[\"mat-chip-grid\"]],\n contentQueries: function MatChipGrid_ContentQueries(rf, ctx, dirIndex) {\n if (rf & 1) {\n i0.ɵɵcontentQuery(dirIndex, MatChipRow, 5);\n }\n if (rf & 2) {\n let _t;\n i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx._chips = _t);\n }\n },\n hostAttrs: [1, \"mat-mdc-chip-set\", \"mat-mdc-chip-grid\", \"mdc-evolution-chip-set\"],\n hostVars: 10,\n hostBindings: function MatChipGrid_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"focus\", function MatChipGrid_focus_HostBindingHandler() {\n return ctx.focus();\n })(\"blur\", function MatChipGrid_blur_HostBindingHandler() {\n return ctx._blur();\n });\n }\n if (rf & 2) {\n i0.ɵɵattribute(\"role\", ctx.role)(\"tabindex\", ctx.disabled || ctx._chips && ctx._chips.length === 0 ? -1 : ctx.tabIndex)(\"aria-disabled\", ctx.disabled.toString())(\"aria-invalid\", ctx.errorState);\n i0.ɵɵclassProp(\"mat-mdc-chip-list-disabled\", ctx.disabled)(\"mat-mdc-chip-list-invalid\", ctx.errorState)(\"mat-mdc-chip-list-required\", ctx.required);\n }\n },\n inputs: {\n disabled: [2, \"disabled\", \"disabled\", booleanAttribute],\n placeholder: \"placeholder\",\n required: [2, \"required\", \"required\", booleanAttribute],\n value: \"value\",\n errorStateMatcher: \"errorStateMatcher\"\n },\n outputs: {\n change: \"change\",\n valueChange: \"valueChange\"\n },\n features: [i0.ɵɵProvidersFeature([{\n provide: MatFormFieldControl,\n useExisting: MatChipGrid\n }]), i0.ɵɵInputTransformsFeature, i0.ɵɵInheritDefinitionFeature],\n ngContentSelectors: _c5,\n decls: 2,\n vars: 0,\n consts: [[\"role\", \"presentation\", 1, \"mdc-evolution-chip-set__chips\"]],\n template: function MatChipGrid_Template(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵprojectionDef();\n i0.ɵɵelementStart(0, \"div\", 0);\n i0.ɵɵprojection(1);\n i0.ɵɵelementEnd();\n }\n },\n styles: [_c6],\n encapsulation: 2,\n changeDetection: 0\n });\n }\n return MatChipGrid;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/**\n * Directive that adds chip-specific behaviors to an input element inside ``.\n * May be placed inside or outside of a ``.\n */\nlet MatChipInput = /*#__PURE__*/(() => {\n class MatChipInput {\n _elementRef = inject(ElementRef);\n /** Whether the control is focused. */\n focused = false;\n /** Register input for chip list */\n get chipGrid() {\n return this._chipGrid;\n }\n set chipGrid(value) {\n if (value) {\n this._chipGrid = value;\n this._chipGrid.registerInput(this);\n }\n }\n _chipGrid;\n /**\n * Whether or not the chipEnd event will be emitted when the input is blurred.\n */\n addOnBlur = false;\n /**\n * The list of key codes that will trigger a chipEnd event.\n *\n * Defaults to `[ENTER]`.\n */\n separatorKeyCodes;\n /** Emitted when a chip is to be added. */\n chipEnd = new EventEmitter();\n /** The input's placeholder text. */\n placeholder = '';\n /** Unique id for the input. */\n id = inject(_IdGenerator).getId('mat-mdc-chip-list-input-');\n /** Whether the input is disabled. */\n get disabled() {\n return this._disabled || this._chipGrid && this._chipGrid.disabled;\n }\n set disabled(value) {\n this._disabled = value;\n }\n _disabled = false;\n /** Whether the input is empty. */\n get empty() {\n return !this.inputElement.value;\n }\n /** The native input element to which this directive is attached. */\n inputElement;\n constructor() {\n const defaultOptions = inject(MAT_CHIPS_DEFAULT_OPTIONS);\n const formField = inject(MAT_FORM_FIELD, {\n optional: true\n });\n this.inputElement = this._elementRef.nativeElement;\n this.separatorKeyCodes = defaultOptions.separatorKeyCodes;\n if (formField) {\n this.inputElement.classList.add('mat-mdc-form-field-input-control');\n }\n }\n ngOnChanges() {\n this._chipGrid.stateChanges.next();\n }\n ngOnDestroy() {\n this.chipEnd.complete();\n }\n /** Utility method to make host definition/tests more clear. */\n _keydown(event) {\n if (this.empty && event.keyCode === BACKSPACE) {\n // Ignore events where the user is holding down backspace\n // so that we don't accidentally remove too many chips.\n if (!event.repeat) {\n this._chipGrid._focusLastChip();\n }\n event.preventDefault();\n } else {\n this._emitChipEnd(event);\n }\n }\n /** Checks to see if the blur should emit the (chipEnd) event. */\n _blur() {\n if (this.addOnBlur) {\n this._emitChipEnd();\n }\n this.focused = false;\n // Blur the chip list if it is not focused\n if (!this._chipGrid.focused) {\n this._chipGrid._blur();\n }\n this._chipGrid.stateChanges.next();\n }\n _focus() {\n this.focused = true;\n this._chipGrid.stateChanges.next();\n }\n /** Checks to see if the (chipEnd) event needs to be emitted. */\n _emitChipEnd(event) {\n if (!event || this._isSeparatorKey(event) && !event.repeat) {\n this.chipEnd.emit({\n input: this.inputElement,\n value: this.inputElement.value,\n chipInput: this\n });\n event?.preventDefault();\n }\n }\n _onInput() {\n // Let chip list know whenever the value changes.\n this._chipGrid.stateChanges.next();\n }\n /** Focuses the input. */\n focus() {\n this.inputElement.focus();\n }\n /** Clears the input */\n clear() {\n this.inputElement.value = '';\n }\n setDescribedByIds(ids) {\n const element = this._elementRef.nativeElement;\n // Set the value directly in the DOM since this binding\n // is prone to \"changed after checked\" errors.\n if (ids.length) {\n element.setAttribute('aria-describedby', ids.join(' '));\n } else {\n element.removeAttribute('aria-describedby');\n }\n }\n /** Checks whether a keycode is one of the configured separators. */\n _isSeparatorKey(event) {\n return !hasModifierKey(event) && new Set(this.separatorKeyCodes).has(event.keyCode);\n }\n static ɵfac = function MatChipInput_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatChipInput)();\n };\n static ɵdir = /* @__PURE__ */i0.ɵɵdefineDirective({\n type: MatChipInput,\n selectors: [[\"input\", \"matChipInputFor\", \"\"]],\n hostAttrs: [1, \"mat-mdc-chip-input\", \"mat-mdc-input-element\", \"mdc-text-field__input\", \"mat-input-element\"],\n hostVars: 6,\n hostBindings: function MatChipInput_HostBindings(rf, ctx) {\n if (rf & 1) {\n i0.ɵɵlistener(\"keydown\", function MatChipInput_keydown_HostBindingHandler($event) {\n return ctx._keydown($event);\n })(\"blur\", function MatChipInput_blur_HostBindingHandler() {\n return ctx._blur();\n })(\"focus\", function MatChipInput_focus_HostBindingHandler() {\n return ctx._focus();\n })(\"input\", function MatChipInput_input_HostBindingHandler() {\n return ctx._onInput();\n });\n }\n if (rf & 2) {\n i0.ɵɵhostProperty(\"id\", ctx.id);\n i0.ɵɵattribute(\"disabled\", ctx.disabled || null)(\"placeholder\", ctx.placeholder || null)(\"aria-invalid\", ctx._chipGrid && ctx._chipGrid.ngControl ? ctx._chipGrid.ngControl.invalid : null)(\"aria-required\", ctx._chipGrid && ctx._chipGrid.required || null)(\"required\", ctx._chipGrid && ctx._chipGrid.required || null);\n }\n },\n inputs: {\n chipGrid: [0, \"matChipInputFor\", \"chipGrid\"],\n addOnBlur: [2, \"matChipInputAddOnBlur\", \"addOnBlur\", booleanAttribute],\n separatorKeyCodes: [0, \"matChipInputSeparatorKeyCodes\", \"separatorKeyCodes\"],\n placeholder: \"placeholder\",\n id: \"id\",\n disabled: [2, \"disabled\", \"disabled\", booleanAttribute]\n },\n outputs: {\n chipEnd: \"matChipInputTokenEnd\"\n },\n exportAs: [\"matChipInput\", \"matChipInputFor\"],\n features: [i0.ɵɵInputTransformsFeature, i0.ɵɵNgOnChangesFeature]\n });\n }\n return MatChipInput;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nconst CHIP_DECLARATIONS = [MatChip, MatChipAvatar, MatChipEditInput, MatChipGrid, MatChipInput, MatChipListbox, MatChipOption, MatChipRemove, MatChipRow, MatChipSet, MatChipTrailingIcon];\nlet MatChipsModule = /*#__PURE__*/(() => {\n class MatChipsModule {\n static ɵfac = function MatChipsModule_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || MatChipsModule)();\n };\n static ɵmod = /* @__PURE__ */i0.ɵɵdefineNgModule({\n type: MatChipsModule\n });\n static ɵinj = /* @__PURE__ */i0.ɵɵdefineInjector({\n providers: [ErrorStateMatcher, {\n provide: MAT_CHIPS_DEFAULT_OPTIONS,\n useValue: {\n separatorKeyCodes: [ENTER]\n }\n }],\n imports: [MatCommonModule, MatRippleModule, MatCommonModule]\n });\n }\n return MatChipsModule;\n})();\n/*#__PURE__*/(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { MAT_CHIP, MAT_CHIPS_DEFAULT_OPTIONS, MAT_CHIP_AVATAR, MAT_CHIP_LISTBOX_CONTROL_VALUE_ACCESSOR, MAT_CHIP_REMOVE, MAT_CHIP_TRAILING_ICON, MatChip, MatChipAvatar, MatChipEditInput, MatChipGrid, MatChipGridChange, MatChipInput, MatChipListbox, MatChipListboxChange, MatChipOption, MatChipRemove, MatChipRow, MatChipSelectionChange, MatChipSet, MatChipTrailingIcon, MatChipsModule };\n"],"mappings":"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","names":["MatChip_Conditional_3_Template","rf","ctx","ɵɵelementStart","ɵɵprojection","ɵɵelementEnd","MatChip_Conditional_7_Template","MatChipOption_Conditional_3_Template","ɵɵnamespaceSVG","ɵɵelement","MatChipOption_Conditional_7_Template","MatChipRow_Conditional_0_Template","MatChipRow_Conditional_2_Template","MatChipRow_Conditional_4_Conditional_0_Template","MatChipRow_Conditional_4_Conditional_1_Template","MatChipRow_Conditional_4_Template","ɵɵtemplate","ctx_r0","ɵɵnextContext","ɵɵconditional","MatChipRow_Conditional_5_Template","MatChipRow_Conditional_7_Template","_c0","_c1","_c2","_c3","_c4","_c5","_c6","MAT_CHIPS_DEFAULT_OPTIONS","MAT_CHIP_AVATAR","MAT_CHIP_TRAILING_ICON","MAT_CHIP_REMOVE","MAT_CHIP","MatChipAction","MatChipAvatar","MatChipTrailingIcon","MatChipRemove","MatChip","MatChipOption","MatChipEditInput","MatChipRow","MatChipSet","MatChipListboxChange","MAT_CHIP_LISTBOX_CONTROL_VALUE_ACCESSOR","MatChipListbox","MatChipGridChange","MatChipGrid","MatChipInput","MatChipsModule","init_chips","__esmMin","init_a11y","init_keycodes","init_private","init_common","init_core","init_esm","init_operators","init_bidi","init_forms","init_form_field","InjectionToken","inject","ElementRef","value","_CdkPrivateStyleLoader","_StructuralStylesLoader","event","__ngFactoryType__","ɵɵdefineDirective","ɵɵlistener","$event","ɵɵattribute","ɵɵclassProp","booleanAttribute","numberAttribute","ɵɵInputTransformsFeature","ɵɵProvidersFeature","ɵMatChipTrailingIcon_BaseFactory","ɵɵgetInheritedFactory","ɵɵInheritDefinitionFeature","ɵMatChipRemove_BaseFactory","ChangeDetectorRef","NgZone","FocusMonitor","MAT_RIPPLE_GLOBAL_OPTIONS","DOCUMENT","Subject","_IdGenerator","EventEmitter","MatRippleLoader","Injector","_VisuallyHiddenLoader","animationMode","ANIMATION_MODULE_TYPE","element","merge","target","action","result","origin","hasFocus","ɵɵdefineComponent","dirIndex","ɵɵcontentQuery","_t","ɵɵqueryRefresh","ɵɵloadQuery","ɵɵviewQuery","ɵɵhostProperty","ɵɵclassMap","ɵɵprojectionDef","ɵɵadvance","ɵɵproperty","isUserInput","isSelected","emitEvent","ɵMatChipOption_BaseFactory","ɵɵtext","ɵɵtextInterpolate","initialValue","range","sel","takeUntil","afterNextRender","Directionality","chip","QueryList","index","previous","mappingFunction","startWith","switchMap","currentElement","chips","actions","FocusKeyManager","direction","chipIndex","newIndex","chipToFocus","source","NG_VALUE_ACCESSOR","forwardRef","selectedChips","o1","o2","firstSelectedChip","fn","isDisabled","currentValue","valueToEmit","skip","correspondingChip","ɵMatChipListbox_BaseFactory","NgControl","Validators","parentForm","NgForm","parentFormGroup","FormGroupDirective","defaultErrorStateMatcher","ErrorStateMatcher","_ErrorStateTracker","inputElement","activeItem","ids","keyCode","hasModifierKey","eligibleActions","currentIndex","delta","MatFormFieldControl","defaultOptions","formField","MAT_FORM_FIELD","ɵɵNgOnChangesFeature","ɵɵdefineNgModule","ɵɵdefineInjector","MatCommonModule","MatRippleModule"],"x_google_ignoreList":[0]}