@spartan-ng/brain 0.0.1-alpha.707 → 0.0.1-alpha.708
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/spartan-ng-brain-accordion.mjs +30 -30
- package/fesm2022/spartan-ng-brain-accordion.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-alert-dialog.mjs +19 -19
- package/fesm2022/spartan-ng-brain-alert-dialog.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-autocomplete.mjs +89 -102
- package/fesm2022/spartan-ng-brain-autocomplete.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-avatar.mjs +15 -15
- package/fesm2022/spartan-ng-brain-avatar.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-button.mjs +4 -4
- package/fesm2022/spartan-ng-brain-button.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-calendar.mjs +120 -127
- package/fesm2022/spartan-ng-brain-calendar.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-checkbox.mjs +24 -24
- package/fesm2022/spartan-ng-brain-checkbox.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-collapsible.mjs +17 -17
- package/fesm2022/spartan-ng-brain-collapsible.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-combobox.mjs +151 -178
- package/fesm2022/spartan-ng-brain-combobox.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-command.mjs +43 -52
- package/fesm2022/spartan-ng-brain-command.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-core.mjs +5 -5
- package/fesm2022/spartan-ng-brain-core.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-date-time-luxon.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-date-time.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-dialog.mjs +72 -86
- package/fesm2022/spartan-ng-brain-dialog.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-field.mjs +38 -43
- package/fesm2022/spartan-ng-brain-field.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-forms.mjs +20 -20
- package/fesm2022/spartan-ng-brain-forms.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-hover-card.mjs +24 -32
- package/fesm2022/spartan-ng-brain-hover-card.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-input-otp.mjs +23 -25
- package/fesm2022/spartan-ng-brain-input-otp.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-input.mjs +6 -6
- package/fesm2022/spartan-ng-brain-input.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-label.mjs +6 -6
- package/fesm2022/spartan-ng-brain-label.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-navigation-menu.mjs +49 -53
- package/fesm2022/spartan-ng-brain-navigation-menu.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-popover.mjs +13 -15
- package/fesm2022/spartan-ng-brain-popover.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-progress.mjs +11 -13
- package/fesm2022/spartan-ng-brain-progress.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-radio-group.mjs +28 -34
- package/fesm2022/spartan-ng-brain-radio-group.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-resizable.mjs +23 -23
- package/fesm2022/spartan-ng-brain-resizable.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-select.mjs +102 -105
- package/fesm2022/spartan-ng-brain-select.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-separator.mjs +7 -7
- package/fesm2022/spartan-ng-brain-separator.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-sheet.mjs +24 -24
- package/fesm2022/spartan-ng-brain-sheet.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-slider.mjs +52 -76
- package/fesm2022/spartan-ng-brain-slider.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-sonner.mjs +108 -132
- package/fesm2022/spartan-ng-brain-sonner.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-switch.mjs +21 -23
- package/fesm2022/spartan-ng-brain-switch.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-tabs.mjs +36 -39
- package/fesm2022/spartan-ng-brain-tabs.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-textarea.mjs +6 -6
- package/fesm2022/spartan-ng-brain-textarea.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-toggle-group.mjs +21 -27
- package/fesm2022/spartan-ng-brain-toggle-group.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-toggle.mjs +10 -12
- package/fesm2022/spartan-ng-brain-toggle.mjs.map +1 -1
- package/fesm2022/spartan-ng-brain-tooltip.mjs +27 -27
- package/fesm2022/spartan-ng-brain-tooltip.mjs.map +1 -1
- package/hlm-tailwind-preset.css +6 -6
- package/package.json +44 -43
- package/{autocomplete/index.d.ts → types/spartan-ng-brain-autocomplete.d.ts} +10 -10
- package/{calendar/index.d.ts → types/spartan-ng-brain-calendar.d.ts} +2 -2
- package/{combobox/index.d.ts → types/spartan-ng-brain-combobox.d.ts} +10 -10
- package/{dialog/index.d.ts → types/spartan-ng-brain-dialog.d.ts} +1 -1
- package/{hover-card/index.d.ts → types/spartan-ng-brain-hover-card.d.ts} +1 -1
- package/{select/index.d.ts → types/spartan-ng-brain-select.d.ts} +11 -11
- /package/{accordion/index.d.ts → types/spartan-ng-brain-accordion.d.ts} +0 -0
- /package/{alert-dialog/index.d.ts → types/spartan-ng-brain-alert-dialog.d.ts} +0 -0
- /package/{avatar/index.d.ts → types/spartan-ng-brain-avatar.d.ts} +0 -0
- /package/{button/index.d.ts → types/spartan-ng-brain-button.d.ts} +0 -0
- /package/{checkbox/index.d.ts → types/spartan-ng-brain-checkbox.d.ts} +0 -0
- /package/{collapsible/index.d.ts → types/spartan-ng-brain-collapsible.d.ts} +0 -0
- /package/{command/index.d.ts → types/spartan-ng-brain-command.d.ts} +0 -0
- /package/{core/index.d.ts → types/spartan-ng-brain-core.d.ts} +0 -0
- /package/{date-time-luxon/index.d.ts → types/spartan-ng-brain-date-time-luxon.d.ts} +0 -0
- /package/{date-time/index.d.ts → types/spartan-ng-brain-date-time.d.ts} +0 -0
- /package/{field/index.d.ts → types/spartan-ng-brain-field.d.ts} +0 -0
- /package/{forms/index.d.ts → types/spartan-ng-brain-forms.d.ts} +0 -0
- /package/{input-otp/index.d.ts → types/spartan-ng-brain-input-otp.d.ts} +0 -0
- /package/{input/index.d.ts → types/spartan-ng-brain-input.d.ts} +0 -0
- /package/{label/index.d.ts → types/spartan-ng-brain-label.d.ts} +0 -0
- /package/{navigation-menu/index.d.ts → types/spartan-ng-brain-navigation-menu.d.ts} +0 -0
- /package/{popover/index.d.ts → types/spartan-ng-brain-popover.d.ts} +0 -0
- /package/{progress/index.d.ts → types/spartan-ng-brain-progress.d.ts} +0 -0
- /package/{radio-group/index.d.ts → types/spartan-ng-brain-radio-group.d.ts} +0 -0
- /package/{resizable/index.d.ts → types/spartan-ng-brain-resizable.d.ts} +0 -0
- /package/{separator/index.d.ts → types/spartan-ng-brain-separator.d.ts} +0 -0
- /package/{sheet/index.d.ts → types/spartan-ng-brain-sheet.d.ts} +0 -0
- /package/{slider/index.d.ts → types/spartan-ng-brain-slider.d.ts} +0 -0
- /package/{sonner/index.d.ts → types/spartan-ng-brain-sonner.d.ts} +0 -0
- /package/{switch/index.d.ts → types/spartan-ng-brain-switch.d.ts} +0 -0
- /package/{tabs/index.d.ts → types/spartan-ng-brain-tabs.d.ts} +0 -0
- /package/{textarea/index.d.ts → types/spartan-ng-brain-textarea.d.ts} +0 -0
- /package/{toggle-group/index.d.ts → types/spartan-ng-brain-toggle-group.d.ts} +0 -0
- /package/{toggle/index.d.ts → types/spartan-ng-brain-toggle.d.ts} +0 -0
- /package/{tooltip/index.d.ts → types/spartan-ng-brain-tooltip.d.ts} +0 -0
- /package/{index.d.ts → types/spartan-ng-brain.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spartan-ng-brain-select.mjs","sources":["../../../../libs/brain/select/src/lib/brn-select-item.token.ts","../../../../libs/brain/select/src/lib/brn-select.token.ts","../../../../libs/brain/select/src/lib/brn-select.ts","../../../../libs/brain/select/src/lib/brn-select-content.ts","../../../../libs/brain/select/src/lib/brn-select-label.ts","../../../../libs/brain/select/src/lib/brn-select-group.ts","../../../../libs/brain/select/src/lib/brn-select-item.ts","../../../../libs/brain/select/src/lib/brn-select-list.ts","../../../../libs/brain/select/src/lib/brn-select-multiple.ts","../../../../libs/brain/select/src/lib/brn-select-placeholder.ts","../../../../libs/brain/select/src/lib/brn-select-scroll-down.ts","../../../../libs/brain/select/src/lib/brn-select-scroll-up.ts","../../../../libs/brain/select/src/lib/brn-select-separator.ts","../../../../libs/brain/select/src/lib/brn-select-trigger.ts","../../../../libs/brain/select/src/lib/brn-select-value.ts","../../../../libs/brain/select/src/lib/brn-select-value-template.ts","../../../../libs/brain/select/src/lib/brn-select-values.ts","../../../../libs/brain/select/src/index.ts","../../../../libs/brain/select/src/spartan-ng-brain-select.ts"],"sourcesContent":["import { type ExistingProvider, InjectionToken, type Type } from '@angular/core';\nimport type { BrnSelectItem } from './brn-select-item';\n\nexport const BrnSelectItemToken = new InjectionToken<BrnSelectItem<unknown>>('BrnSelectItemToken');\n\nexport function provideBrnSelectItem<T>(selectItem: Type<BrnSelectItem<T>>): ExistingProvider {\n\treturn { provide: BrnSelectItemToken, useExisting: selectItem };\n}\n","import type { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport {\n\ttype ExistingProvider,\n\tinject,\n\tInjectionToken,\n\ttype InputSignal,\n\ttype ModelSignal,\n\ttype Signal,\n\ttype Type,\n\ttype ValueProvider,\n} from '@angular/core';\nimport type { ControlState } from '@spartan-ng/brain/forms';\nimport type { BrnSelectItem } from './brn-select-item';\nimport type { BrnSelectTrigger } from './brn-select-trigger';\n\nexport interface BrnSelectBase<T> {\n\tdisabledState: Signal<boolean>;\n\titemToString: InputSignal<SelectItemToString<T> | undefined>;\n\tkeyManager: ActiveDescendantKeyManager<BrnSelectItem<T>>;\n\tvalue: ModelSignal<T | null> | ModelSignal<T[] | null>;\n\thasValue: Signal<boolean>;\n\tisExpanded: Signal<boolean>;\n\ttriggerWidth: Signal<number | null>;\n\tcontrolState?: Signal<ControlState | null>;\n\n\tisSelected: (itemValue: T) => boolean;\n\tselect: (itemValue: T) => void;\n\t/** Select the active item with Enter key. */\n\tselectActiveItem: () => void;\n\topen: () => void;\n\tregisterSelectTrigger: (input: BrnSelectTrigger) => void;\n\tupdateTriggerWidth: (width: number | null) => void;\n}\n\nexport const BrnSelectBaseToken = new InjectionToken<BrnSelectBase<unknown>>('BrnSelectBaseToken');\n\nexport function provideBrnSelectBase<T>(instance: Type<BrnSelectBase<T>>): ExistingProvider {\n\treturn { provide: BrnSelectBaseToken, useExisting: instance };\n}\n\n/**\n * Inject the select component.\n */\nexport function injectBrnSelectBase<T>(): BrnSelectBase<T> {\n\treturn inject(BrnSelectBaseToken) as BrnSelectBase<T>;\n}\n\nexport type SelectItemEqualToValue<T> = (itemValue: T, selectedValue: T | null) => boolean;\nexport type SelectItemToString<T> = (itemValue: T) => string;\n\nexport interface BrnSelectConfig<T> {\n\tisItemEqualToValue: SelectItemEqualToValue<T>;\n\titemToString?: SelectItemToString<T>;\n}\n\nfunction getDefaultConfig<T>(): BrnSelectConfig<T> {\n\treturn {\n\t\tisItemEqualToValue: (itemValue: T, selectedValue: T | null) => Object.is(itemValue, selectedValue),\n\t\titemToString: undefined,\n\t};\n}\n\nconst BrnSelectConfigToken = new InjectionToken<BrnSelectConfig<unknown>>('BrnSelectConfig');\n\nexport function provideBrnSelectConfig<T>(config: Partial<BrnSelectConfig<T>>): ValueProvider {\n\treturn { provide: BrnSelectConfigToken, useValue: { ...getDefaultConfig(), ...config } };\n}\n\nexport function injectBrnSelectConfig<T>(): BrnSelectConfig<T> {\n\tconst injectedConfig = inject(BrnSelectConfigToken, { optional: true });\n\treturn injectedConfig ? (injectedConfig as BrnSelectConfig<T>) : getDefaultConfig();\n}\n","import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport type { BooleanInput } from '@angular/cdk/coercion';\nimport {\n\tafterNextRender,\n\tbooleanAttribute,\n\tcomputed,\n\tcontentChildren,\n\tDirective,\n\teffect,\n\tforwardRef,\n\tinject,\n\tInjector,\n\tinput,\n\tlinkedSignal,\n\tmodel,\n\tsignal,\n\tuntracked,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { BrnFieldControl, provideBrnLabelable } from '@spartan-ng/brain/field';\nimport { ChangeFn, TouchFn } from '@spartan-ng/brain/forms';\nimport { BrnPopover } from '@spartan-ng/brain/popover';\nimport { BrnSelectItem } from './brn-select-item';\nimport { BrnSelectItemToken } from './brn-select-item.token';\nimport type { BrnSelectTrigger } from './brn-select-trigger';\nimport {\n\ttype BrnSelectBase,\n\tinjectBrnSelectConfig,\n\tprovideBrnSelectBase,\n\ttype SelectItemEqualToValue,\n\ttype SelectItemToString,\n} from './brn-select.token';\n\nexport const BRN_SELECT_VALUE_ACCESSOR = {\n\tprovide: NG_VALUE_ACCESSOR,\n\tuseExisting: forwardRef(() => BrnSelect),\n\tmulti: true,\n};\n\n@Directive({\n\tselector: '[brnSelect]',\n\tproviders: [provideBrnSelectBase(BrnSelect), BRN_SELECT_VALUE_ACCESSOR, provideBrnLabelable(BrnSelect)],\n\thostDirectives: [BrnFieldControl],\n})\nexport class BrnSelect<T> implements BrnSelectBase<T>, ControlValueAccessor {\n\tprivate readonly _injector = inject(Injector);\n\tprivate readonly _fieldControl = inject(BrnFieldControl, { optional: true });\n\n\tprivate readonly _config = injectBrnSelectConfig<T>();\n\n\tpublic readonly controlState = this._fieldControl?.controlState;\n\n\t/** Access the popover if present */\n\tprivate readonly _brnPopover = inject(BrnPopover, { optional: true });\n\n\t/** Whether the select is disabled */\n\tpublic readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\tprotected readonly _disabled = linkedSignal(this.disabled);\n\n\t/** @internal The disabled state as a readonly signal */\n\tpublic readonly disabledState = this._disabled.asReadonly();\n\n\t/** The selected value of the select. */\n\tpublic readonly value = model<T | null>(null);\n\n\tpublic readonly hasValue = computed(() => this.value() !== null);\n\n\t/** A function to compare an item with the selected value. */\n\tpublic readonly isItemEqualToValue = input<SelectItemEqualToValue<T>>(this._config.isItemEqualToValue);\n\n\t/** A function to convert an item to a string for display. */\n\tpublic readonly itemToString = input<SelectItemToString<T> | undefined>(this._config.itemToString);\n\n\tprivate readonly _triggerWidth = signal<number | null>(null);\n\n\t/** @internal The width of the trigger wrapper */\n\tpublic readonly triggerWidth = this._triggerWidth.asReadonly();\n\n\t/** @internal Access all the items within the select */\n\tpublic readonly items = contentChildren<BrnSelectItem<T>>(BrnSelectItemToken, {\n\t\tdescendants: true,\n\t});\n\n\t/** @internal The key manager for managing active descendant */\n\tpublic readonly keyManager = new ActiveDescendantKeyManager(this.items, this._injector);\n\n\t/** @internal Whether the select is expanded */\n\tpublic readonly isExpanded = computed(() => this._brnPopover?.stateComputed() === 'open');\n\n\tprivate readonly _selectTrigger = signal<BrnSelectTrigger | undefined>(undefined);\n\n\tpublic readonly labelableId = computed(() => this._selectTrigger()?.id());\n\n\tprotected _onChange?: ChangeFn<T | null>;\n\tprotected _onTouched?: TouchFn;\n\n\tconstructor() {\n\t\tthis.keyManager\n\t\t\t.withVerticalOrientation()\n\t\t\t.withHomeAndEnd()\n\t\t\t.withTypeAhead()\n\t\t\t.withWrap()\n\t\t\t.skipPredicate((item) => item.disabled);\n\n\t\tthis._brnPopover?.closed.subscribe(() => {\n\t\t\tthis._onTouched?.();\n\t\t\tthis.keyManager.setActiveItem(-1);\n\t\t});\n\n\t\tafterNextRender(() => {\n\t\t\teffect(\n\t\t\t\t() => {\n\t\t\t\t\tif (!this.isExpanded()) return;\n\n\t\t\t\t\tconst items = this.items();\n\t\t\t\t\tconst value = this.value();\n\n\t\t\t\t\tuntracked(() => {\n\t\t\t\t\t\tconst index =\n\t\t\t\t\t\t\tvalue !== null ? items.findIndex((item) => this.isItemEqualToValue()(item.value(), value)) : -1;\n\n\t\t\t\t\t\tif (index !== -1) {\n\t\t\t\t\t\t\tthis.keyManager.setActiveItem(index);\n\t\t\t\t\t\t} else if (items.length > 0) {\n\t\t\t\t\t\t\tthis.keyManager.setFirstItemActive();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthis.keyManager.setActiveItem(-1);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\t{ injector: this._injector },\n\t\t\t);\n\t\t});\n\t}\n\n\tpublic registerSelectTrigger(input: BrnSelectTrigger): void {\n\t\treturn this._selectTrigger.set(input);\n\t}\n\n\tpublic updateTriggerWidth(width: number | null): void {\n\t\tthis._triggerWidth.set(width);\n\t}\n\n\tpublic isSelected(itemValue: T): boolean {\n\t\treturn this.isItemEqualToValue()(itemValue, this.value());\n\t}\n\n\tpublic select(itemValue: T): void {\n\t\tthis.value.set(itemValue);\n\t\tthis._onChange?.(itemValue);\n\t\tthis.close();\n\t}\n\n\t/** Select the active item with Enter key. */\n\tpublic selectActiveItem(): void {\n\t\tif (!this.isExpanded()) return;\n\n\t\tconst value = this.keyManager.activeItem?.value();\n\n\t\tif (value) {\n\t\t\tthis.select(value);\n\t\t} else {\n\t\t\tthis.close();\n\t\t}\n\t}\n\n\tpublic open(): void {\n\t\tif (this._disabled() || this.isExpanded()) return;\n\n\t\tthis._brnPopover?.open();\n\t}\n\n\tprivate close(): void {\n\t\tif (this._disabled() || !this.isExpanded()) return;\n\n\t\tthis._brnPopover?.close();\n\t}\n\n\t/** CONTROL VALUE ACCESSOR */\n\tpublic writeValue(value: T | null): void {\n\t\tthis.value.set(value);\n\t}\n\n\tpublic registerOnChange(fn: ChangeFn<T | null>): void {\n\t\tthis._onChange = fn;\n\t}\n\n\tpublic registerOnTouched(fn: TouchFn): void {\n\t\tthis._onTouched = fn;\n\t}\n\n\tpublic setDisabledState(isDisabled: boolean): void {\n\t\tthis._disabled.set(isDisabled);\n\t}\n}\n","import { afterNextRender, Directive, ElementRef, inject, signal } from '@angular/core';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n// We use 8px and 15ms to create a smooth scrolling effect.\n// 15ms is slightly faster than 60fps (16.6ms), ensuring a smooth animation loop.\nconst SCROLLBY_PIXEL = 8;\n\n@Directive({\n\tselector: '[brnSelectContent]',\n\thost: {\n\t\t'[style.--brn-select-width.px]': '_selectWidth()',\n\t\t'(scroll)': 'handleScroll()',\n\t},\n})\nexport class BrnSelectContent {\n\tprivate readonly _select = injectBrnSelectBase();\n\n\tprotected readonly _selectWidth = this._select.triggerWidth;\n\n\tprivate readonly _elementRef = inject(ElementRef<HTMLElement>);\n\n\tprivate readonly _scrollUp = signal(false);\n\n\tpublic readonly showScrollUp = this._scrollUp.asReadonly();\n\n\tprivate readonly _scrollDown = signal(false);\n\n\tpublic readonly showScrollDown = this._scrollDown.asReadonly();\n\n\tconstructor() {\n\t\tafterNextRender(() => {\n\t\t\tthis._checkScroll();\n\t\t});\n\t}\n\n\tpublic handleScroll() {\n\t\tthis._checkScroll();\n\t}\n\n\tprivate _checkScroll() {\n\t\tconst { scrollTop, scrollHeight, clientHeight } = this._elementRef.nativeElement;\n\n\t\tthis._scrollUp.set(scrollTop > 0);\n\n\t\tconst maxScroll = scrollHeight - clientHeight;\n\t\tthis._scrollDown.set(Math.ceil(scrollTop) < maxScroll);\n\t}\n\n\tpublic scrollDown(stop: () => void) {\n\t\tthis._elementRef.nativeElement.scrollBy({\n\t\t\ttop: SCROLLBY_PIXEL,\n\t\t\tbehavior: 'auto',\n\t\t});\n\n\t\tconst { scrollTop, scrollHeight, clientHeight } = this._elementRef.nativeElement;\n\t\tconst maxScroll = scrollHeight - clientHeight;\n\n\t\tif (Math.ceil(scrollTop) >= maxScroll) {\n\t\t\tstop();\n\t\t}\n\t}\n\n\tpublic scrollUp(stop: () => void) {\n\t\tthis._elementRef.nativeElement.scrollBy({\n\t\t\ttop: -SCROLLBY_PIXEL,\n\t\t\tbehavior: 'auto',\n\t\t});\n\n\t\tif (this._elementRef.nativeElement.scrollTop === 0) {\n\t\t\tstop();\n\t\t}\n\t}\n}\n","import { Directive, input } from '@angular/core';\n\n@Directive({\n\tselector: '[brnSelectLabel]',\n\thost: {\n\t\t'[id]': 'id()',\n\t},\n})\nexport class BrnSelectLabel {\n\tprivate static _id = 0;\n\n\tpublic readonly id = input<string>(`brn-select-label-${++BrnSelectLabel._id}`);\n}\n","import { computed, contentChild, Directive } from '@angular/core';\nimport { BrnSelectLabel } from './brn-select-label';\n\n@Directive({\n\tselector: '[brnSelectGroup]',\n\thost: {\n\t\trole: 'group',\n\t\t'[attr.aria-labelledby]': '_labelledby()',\n\t},\n})\nexport class BrnSelectGroup {\n\tprivate readonly _selectLabel = contentChild(BrnSelectLabel);\n\n\tprotected readonly _labelledby = computed(() => this._selectLabel()?.id() ?? null);\n}\n","import { Highlightable } from '@angular/cdk/a11y';\nimport { BooleanInput } from '@angular/cdk/coercion';\nimport { isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, computed, Directive, ElementRef, inject, input, PLATFORM_ID, signal } from '@angular/core';\nimport { stringifyAsLabel } from '@spartan-ng/brain/core';\nimport { provideBrnSelectItem } from './brn-select-item.token';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n@Directive({\n\tselector: '[brnSelectItem]',\n\tproviders: [provideBrnSelectItem(BrnSelectItem)],\n\thost: {\n\t\trole: 'option',\n\t\t'[id]': 'id()',\n\t\t'[attr.data-highlighted]': '_highlighted() ? \"\" : null',\n\t\t'[attr.data-value]': 'value()',\n\t\t'[attr.aria-selected]': 'active()',\n\t\t'[attr.aria-disabled]': '_disabled()',\n\t\t'[attr.data-disabled]': '_disabled() ? \"\" : null',\n\t\t'(click)': 'select()',\n\t\t'(mouseenter)': 'activate()',\n\t},\n})\nexport class BrnSelectItem<T> implements Highlightable {\n\tprivate static _id = 0;\n\n\tprivate readonly _platform = inject(PLATFORM_ID);\n\n\tprivate readonly _elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\t/** Access the select component */\n\tprivate readonly _select = injectBrnSelectBase<T>();\n\n\t/** A unique id for the item */\n\tpublic readonly id = input<string>(`brn-select-item-${++BrnSelectItem._id}`);\n\n\t/** The value this item represents. */\n\tpublic readonly value = input.required<T>();\n\t// eslint-disable-next-line @typescript-eslint/naming-convention\n\tpublic readonly _disabled = input<boolean, BooleanInput>(false, {\n\t\talias: 'disabled',\n\t\ttransform: booleanAttribute,\n\t});\n\n\t/** Expose disabled as a value - used by the Highlightable interface */\n\tpublic get disabled() {\n\t\treturn this._disabled();\n\t}\n\n\t/** Whether the item is selected. */\n\tpublic readonly active = computed(() => this._select.isSelected(this.value()));\n\n\tprotected readonly _highlighted = signal(false);\n\n\tpublic setActiveStyles(): void {\n\t\tthis._highlighted.set(true);\n\n\t\t// ensure the item is in view\n\t\tif (isPlatformBrowser(this._platform)) {\n\t\t\tthis._elementRef.nativeElement.scrollIntoView({ block: 'nearest' });\n\t\t}\n\t}\n\n\tpublic setInactiveStyles(): void {\n\t\tthis._highlighted.set(false);\n\t}\n\n\tpublic getLabel(): string {\n\t\treturn stringifyAsLabel(this.value(), this._select.itemToString());\n\t}\n\n\tprotected select(): void {\n\t\tif (this._disabled()) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._select.keyManager.setActiveItem(this);\n\t\tthis._select.select(this.value());\n\t}\n\n\tprotected activate(): void {\n\t\tif (this._disabled()) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._select.keyManager.setActiveItem(this);\n\t}\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n\tselector: '[brnSelectList]',\n\thost: {\n\t\trole: 'listbox',\n\t},\n})\nexport class BrnSelectList {}\n","import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport type { BooleanInput } from '@angular/cdk/coercion';\nimport {\n\tafterNextRender,\n\tbooleanAttribute,\n\tcomputed,\n\tcontentChildren,\n\tDirective,\n\teffect,\n\tforwardRef,\n\tinject,\n\tInjector,\n\tinput,\n\tlinkedSignal,\n\tmodel,\n\tsignal,\n\tuntracked,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { BrnFieldControl, provideBrnLabelable } from '@spartan-ng/brain/field';\nimport type { ChangeFn, TouchFn } from '@spartan-ng/brain/forms';\nimport { BrnPopover } from '@spartan-ng/brain/popover';\nimport { BrnSelectItem } from './brn-select-item';\nimport { BrnSelectItemToken } from './brn-select-item.token';\nimport { BrnSelectTrigger } from './brn-select-trigger';\nimport {\n\tBrnSelectBase,\n\tinjectBrnSelectConfig,\n\tprovideBrnSelectBase,\n\tSelectItemEqualToValue,\n\tSelectItemToString,\n} from './brn-select.token';\n\nexport const BRN_SELECT_MULTIPLE_VALUE_ACCESSOR = {\n\tprovide: NG_VALUE_ACCESSOR,\n\tuseExisting: forwardRef(() => BrnSelectMultiple),\n\tmulti: true,\n};\n\n@Directive({\n\tselector: '[brnSelectMultiple]',\n\tproviders: [\n\t\tprovideBrnSelectBase(BrnSelectMultiple),\n\t\tBRN_SELECT_MULTIPLE_VALUE_ACCESSOR,\n\t\tprovideBrnLabelable(BrnSelectMultiple),\n\t],\n\thostDirectives: [BrnFieldControl],\n})\nexport class BrnSelectMultiple<T> implements BrnSelectBase<T>, ControlValueAccessor {\n\tprivate readonly _injector = inject(Injector);\n\tprivate readonly _fieldControl = inject(BrnFieldControl, { optional: true });\n\n\tprivate readonly _config = injectBrnSelectConfig<T>();\n\n\tpublic readonly controlState = this._fieldControl?.controlState;\n\n\t/** Access the popover if present */\n\tprivate readonly _brnPopover = inject(BrnPopover, { optional: true });\n\n\t/** Whether the combobox is disabled */\n\tpublic readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\tprotected readonly _disabled = linkedSignal(this.disabled);\n\n\t/** @internal The disabled state as a readonly signal */\n\tpublic readonly disabledState = this._disabled.asReadonly();\n\n\t/** The selected value of the select. */\n\tpublic readonly value = model<T[] | null>(null);\n\n\tpublic readonly hasValue = computed(() => {\n\t\tconst value = this.value();\n\t\tif (value == null) return false;\n\t\treturn value.length > 0;\n\t});\n\n\t/** A function to compare an item with the selected value. */\n\tpublic readonly isItemEqualToValue = input<SelectItemEqualToValue<T>>(this._config.isItemEqualToValue);\n\n\t/** A function to convert an item to a string for display. */\n\tpublic readonly itemToString = input<SelectItemToString<T> | undefined>(this._config.itemToString);\n\n\tprivate readonly _triggerWidth = signal<number | null>(null);\n\n\t/** @internal The width of the trigger wrapper */\n\tpublic readonly triggerWidth = this._triggerWidth.asReadonly();\n\n\t/** @internal Access all the items within the select */\n\tpublic readonly items = contentChildren<BrnSelectItem<T>>(BrnSelectItemToken, {\n\t\tdescendants: true,\n\t});\n\n\t/** @internal The key manager for managing active descendant */\n\tpublic readonly keyManager = new ActiveDescendantKeyManager(this.items, this._injector);\n\n\t/** @internal Whether the select is expanded */\n\tpublic readonly isExpanded = computed(() => this._brnPopover?.stateComputed() === 'open');\n\n\tprivate readonly _selectTrigger = signal<BrnSelectTrigger | undefined>(undefined);\n\n\tpublic readonly labelableId = computed(() => this._selectTrigger()?.id());\n\n\tprotected _onChange?: ChangeFn<T[] | null>;\n\tprotected _onTouched?: TouchFn;\n\n\tconstructor() {\n\t\tthis.keyManager\n\t\t\t.withVerticalOrientation()\n\t\t\t.withHomeAndEnd()\n\t\t\t.withTypeAhead()\n\t\t\t.withWrap()\n\t\t\t.skipPredicate((item) => item.disabled);\n\n\t\tthis._brnPopover?.closed.subscribe(() => {\n\t\t\tthis._onTouched?.();\n\t\t\tthis.keyManager.setActiveItem(-1);\n\t\t});\n\n\t\tafterNextRender(() => {\n\t\t\teffect(\n\t\t\t\t() => {\n\t\t\t\t\tif (!this.isExpanded()) return;\n\n\t\t\t\t\tconst items = this.items();\n\t\t\t\t\tconst values = this.value();\n\t\t\t\t\tconst lastValue = values ? values[values.length - 1] : null;\n\n\t\t\t\t\tuntracked(() => {\n\t\t\t\t\t\tconst index =\n\t\t\t\t\t\t\tlastValue !== null ? items.findIndex((item) => this.isItemEqualToValue()(item.value(), lastValue)) : -1;\n\n\t\t\t\t\t\tif (index !== -1) {\n\t\t\t\t\t\t\tthis.keyManager.setActiveItem(index);\n\t\t\t\t\t\t} else if (items.length > 0) {\n\t\t\t\t\t\t\tthis.keyManager.setFirstItemActive();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthis.keyManager.setActiveItem(-1);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\t{ injector: this._injector },\n\t\t\t);\n\t\t});\n\t}\n\n\tpublic registerSelectTrigger(input: BrnSelectTrigger): void {\n\t\treturn this._selectTrigger.set(input);\n\t}\n\n\tpublic updateTriggerWidth(width: number | null): void {\n\t\tthis._triggerWidth.set(width);\n\t}\n\n\tpublic isSelected(itemValue: T): boolean {\n\t\treturn this.value()?.some((v) => this.isItemEqualToValue()(itemValue, v)) ?? false;\n\t}\n\n\tpublic select(itemValue: T): void {\n\t\tconst selected = this.value() ?? [];\n\n\t\tif (this.isSelected(itemValue)) {\n\t\t\tthis.value.set(selected.filter((d) => !this.isItemEqualToValue()(d, itemValue)) ?? []);\n\t\t} else {\n\t\t\tthis.value.set([...selected, itemValue]);\n\t\t}\n\n\t\tthis._onChange?.(this.value() ?? []);\n\t}\n\n\t/** Select the active item with Enter key. */\n\tpublic selectActiveItem(): void {\n\t\tif (!this.isExpanded()) return;\n\n\t\tconst value = this.keyManager.activeItem?.value();\n\n\t\tif (value) {\n\t\t\tthis.select(value);\n\t\t} else {\n\t\t\tthis.close();\n\t\t}\n\t}\n\n\tpublic open(): void {\n\t\tif (this._disabled() || this.isExpanded()) return;\n\n\t\tthis._brnPopover?.open();\n\t}\n\n\tprivate close(): void {\n\t\tif (this._disabled() || !this.isExpanded()) return;\n\n\t\tthis._brnPopover?.close();\n\t}\n\n\t/** CONTROL VALUE ACCESSOR */\n\tpublic writeValue(value: T[] | null): void {\n\t\tthis.value.set(value);\n\t}\n\n\tpublic registerOnChange(fn: ChangeFn<T[] | null>): void {\n\t\tthis._onChange = fn;\n\t}\n\n\tpublic registerOnTouched(fn: TouchFn): void {\n\t\tthis._onTouched = fn;\n\t}\n\n\tpublic setDisabledState(isDisabled: boolean): void {\n\t\tthis._disabled.set(isDisabled);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n@Directive({\n\tselector: '[brnSelectPlaceholder]',\n\thost: {\n\t\t'[attr.data-hidden]': '_hasValue() ? \"\" : null',\n\t},\n})\nexport class BrnSelectPlaceholder {\n\tprivate readonly _select = injectBrnSelectBase();\n\n\tprotected readonly _hasValue = this._select.hasValue;\n}\n","import { DestroyRef, Directive, ElementRef, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { fromEvent, interval, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { BrnSelectContent } from './brn-select-content';\n\n@Directive({\n\tselector: '[brnSelectScrollDown]',\n\thost: {\n\t\t'aria-hidden': 'true',\n\t\t'[attr.data-hidden]': '!_showScrollDown() ? \"\" : null',\n\t\t'(mouseenter)': '_scrollDown()',\n\t},\n})\nexport class BrnSelectScrollDown {\n\tprivate readonly _el = inject(ElementRef);\n\tprivate readonly _destroyRef = inject(DestroyRef);\n\tprivate readonly _selectContent = inject(BrnSelectContent);\n\n\tprotected readonly _showScrollDown = this._selectContent.showScrollDown;\n\n\tprivate readonly _endReached = new Subject<boolean>();\n\n\tprotected _scrollDown() {\n\t\tconst mouseLeave$ = fromEvent(this._el.nativeElement, 'mouseleave');\n\n\t\t// 15ms is slightly faster than 60fps (16.6ms), ensuring a smooth animation loop.\n\t\tinterval(15)\n\t\t\t.pipe(takeUntil(mouseLeave$), takeUntil(this._endReached), takeUntilDestroyed(this._destroyRef))\n\t\t\t.subscribe(() => this._selectContent.scrollDown(() => this._endReached.next(true)));\n\t}\n}\n","import { DestroyRef, Directive, ElementRef, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { fromEvent, interval, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { BrnSelectContent } from './brn-select-content';\n\n@Directive({\n\tselector: '[brnSelectScrollUp]',\n\thost: {\n\t\t'aria-hidden': 'true',\n\t\t'[attr.data-hidden]': '!_showScrollUp() ? \"\" : null',\n\t\t'(mouseenter)': '_scrollUp()',\n\t},\n})\nexport class BrnSelectScrollUp {\n\tprivate readonly _el = inject(ElementRef);\n\tprivate readonly _destroyRef = inject(DestroyRef);\n\tprivate readonly _selectContent = inject(BrnSelectContent);\n\n\tprotected readonly _showScrollUp = this._selectContent.showScrollUp;\n\n\tprivate readonly _endReached = new Subject<boolean>();\n\n\tprotected _scrollUp() {\n\t\tconst mouseLeave$ = fromEvent(this._el.nativeElement, 'mouseleave');\n\n\t\t// 15ms is slightly faster than 60fps (16.6ms), ensuring a smooth animation loop.\n\t\tinterval(15)\n\t\t\t.pipe(takeUntil(mouseLeave$), takeUntil(this._endReached), takeUntilDestroyed(this._destroyRef))\n\t\t\t.subscribe(() => this._selectContent.scrollUp(() => this._endReached.next(true)));\n\t}\n}\n","import { Directive, input } from '@angular/core';\n\n@Directive({\n\tselector: '[brnSelectSeparator]',\n\thost: {\n\t\trole: 'separator',\n\t\t'[attr.aria-orientation]': 'orientation()',\n\t\t'[attr.data-orientation]': 'orientation()',\n\t},\n})\nexport class BrnSelectSeparator {\n\tpublic readonly orientation = input<'horizontal' | 'vertical'>('horizontal');\n}\n","import type { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, computed, Directive, effect, ElementRef, inject, input } from '@angular/core';\nimport { injectElementSize } from '@spartan-ng/brain/core';\nimport { BrnDialog } from '@spartan-ng/brain/dialog';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n@Directive({\n\tselector: 'button[brnSelectTrigger]',\n\thost: {\n\t\trole: 'combobox',\n\t\t'aria-haspopup': 'listbox',\n\t\ttype: 'button',\n\t\t'[id]': 'id()',\n\t\t'[attr.aria-expanded]': '_isExpanded()',\n\t\t'[attr.data-placeholder]': '_isPlaceholder() ? \"\" : null',\n\t\t'[disabled]': '_disabled()',\n\t\t'[attr.aria-invalid]': '_invalid?.() ? \"true\" : null',\n\t\t'[attr.data-dirty]': '_dirty?.() ? \"true\": null',\n\t\t'[attr.data-touched]': '_touched?.() ? \"true\" : null',\n\t\t'[attr.data-matches-spartan-invalid]': '_spartanInvalid?.() ? \"true\" : null',\n\t\t'(click)': 'open()',\n\t\t'(keydown)': 'onKeyDown($event)',\n\t},\n})\nexport class BrnSelectTrigger {\n\tprivate static _id = 0;\n\n\tprivate readonly _host = inject(ElementRef, { host: true });\n\tprivate readonly _brnDialog = inject(BrnDialog, { optional: true });\n\n\tprivate readonly _select = injectBrnSelectBase();\n\n\tprivate readonly _elementSize = injectElementSize();\n\n\tpublic readonly id = input<string>(`brn-select-trigger-${++BrnSelectTrigger._id}`);\n\n\t/** Whether to force the trigger into an invalid state. */\n\tpublic readonly forceInvalid = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\t/** Whether the combobox panel is expanded */\n\tprotected readonly _isExpanded = this._select.isExpanded;\n\n\tprotected readonly _disabled = this._select.disabledState;\n\n\tprotected readonly _isPlaceholder = computed(() => !this._select.hasValue());\n\n\tprotected readonly _invalid = computed(() => this._select?.controlState?.()?.invalid);\n\tprotected readonly _touched = computed(() => this._select?.controlState?.()?.touched);\n\tprotected readonly _dirty = computed(() => this._select?.controlState?.()?.dirty);\n\tprotected readonly _spartanInvalid = computed(\n\t\t() => this.forceInvalid() || this._select?.controlState?.()?.spartanInvalid,\n\t);\n\n\tconstructor() {\n\t\tthis._select.registerSelectTrigger(this);\n\n\t\tif (this._brnDialog) {\n\t\t\tthis._brnDialog.mutableAttachTo.set(this._host.nativeElement);\n\t\t}\n\n\t\teffect(() => {\n\t\t\tconst size = this._elementSize();\n\t\t\tif (size) {\n\t\t\t\tthis._select.updateTriggerWidth(size.width);\n\t\t\t\tthis._brnDialog?.updatePosition();\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected open() {\n\t\tthis._brnDialog?.open();\n\t}\n\n\t/** Listen for keydown events */\n\tprotected onKeyDown(event: KeyboardEvent): void {\n\t\tif (event.key === 'Enter') {\n\t\t\t// prevent form submission if inside a form\n\t\t\tevent.preventDefault();\n\n\t\t\tthis._select.selectActiveItem();\n\t\t}\n\n\t\tif (event.key === 'Tab' && this._isExpanded()) {\n\t\t\tthis._select.selectActiveItem();\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._isExpanded()) {\n\t\t\tif (event.key === 'Tab') {\n\t\t\t\tthis._select.selectActiveItem();\n\t\t\t}\n\t\t} else {\n\t\t\tif (event.key === 'Enter' || event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n\t\t\t\tthis._select.open();\n\t\t\t}\n\t\t}\n\n\t\tthis._select.keyManager.onKeydown(event);\n\t}\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { stringifyAsLabel } from '@spartan-ng/brain/core';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n@Directive({\n\tselector: '[brnSelectValue]',\n\thost: {\n\t\t'[attr.data-placeholder]': '_isPlaceholder() ? \"\" : null',\n\t\t'[attr.data-hidden]': 'hidden() ? \"\" : null',\n\t\t'[textContent]': '_value()',\n\t},\n})\nexport class BrnSelectValue<T> {\n\tprivate readonly _select = injectBrnSelectBase<T>();\n\n\tpublic readonly placeholder = input<string>('');\n\n\tprotected readonly _isPlaceholder = computed(() => !this._select.hasValue());\n\n\tpublic readonly hidden = computed(() => !this._select.hasValue() && !this.placeholder());\n\n\tprotected readonly _value = computed(() => {\n\t\treturn this._select.hasValue()\n\t\t\t? stringifyAsLabel(this._select.value(), this._select.itemToString())\n\t\t\t: this.placeholder();\n\t});\n}\n","import { computed, Directive, effect, inject, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n@Directive({\n\tselector: '[brnSelectValueTemplate]',\n})\nexport class BrnSelectValueTemplate<T> {\n\tprivate readonly _templateRef = inject(TemplateRef);\n\tprivate readonly _viewContainerRef = inject(ViewContainerRef);\n\n\tprivate readonly _select = injectBrnSelectBase<T>();\n\n\tprotected readonly _value = computed<T | null>(() => {\n\t\tconst value = this._select.value();\n\n\t\tif (value === null) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn value as T;\n\t});\n\n\tconstructor() {\n\t\teffect(() => {\n\t\t\tconst value = this._value();\n\t\t\tif (value !== null) {\n\t\t\t\tthis._viewContainerRef.clear();\n\t\t\t\tthis._viewContainerRef.createEmbeddedView(this._templateRef, {\n\t\t\t\t\t$implicit: value,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis._viewContainerRef.clear();\n\t\t\t}\n\t\t});\n\t}\n}\n","import { computed, Directive, effect, inject, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n@Directive({\n\tselector: '[brnSelectValues]',\n})\nexport class BrnSelectValues<T> {\n\tprivate readonly _templateRef = inject(TemplateRef<T>);\n\tprivate readonly _viewContainerRef = inject(ViewContainerRef);\n\n\tprivate readonly _select = injectBrnSelectBase<T>();\n\n\tprotected readonly _values = computed<T[] | null>(() => {\n\t\tconst values = this._select.value();\n\n\t\tif (values === null) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn Array.isArray(values) ? values : [values];\n\t});\n\n\tconstructor() {\n\t\teffect(() => {\n\t\t\tconst values = this._values();\n\t\t\tif (values?.length) {\n\t\t\t\tthis._viewContainerRef.clear();\n\t\t\t\tthis._viewContainerRef.createEmbeddedView(this._templateRef, {\n\t\t\t\t\t$implicit: values,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis._viewContainerRef.clear();\n\t\t\t}\n\t\t});\n\t}\n}\n","import { BrnSelect } from './lib/brn-select';\nimport { BrnSelectContent } from './lib/brn-select-content';\nimport { BrnSelectGroup } from './lib/brn-select-group';\nimport { BrnSelectItem } from './lib/brn-select-item';\nimport { BrnSelectLabel } from './lib/brn-select-label';\nimport { BrnSelectList } from './lib/brn-select-list';\nimport { BrnSelectMultiple } from './lib/brn-select-multiple';\nimport { BrnSelectPlaceholder } from './lib/brn-select-placeholder';\nimport { BrnSelectScrollDown } from './lib/brn-select-scroll-down';\nimport { BrnSelectScrollUp } from './lib/brn-select-scroll-up';\nimport { BrnSelectSeparator } from './lib/brn-select-separator';\nimport { BrnSelectTrigger } from './lib/brn-select-trigger';\nimport { BrnSelectValue } from './lib/brn-select-value';\nimport { BrnSelectValueTemplate } from './lib/brn-select-value-template';\nimport { BrnSelectValues } from './lib/brn-select-values';\n\nexport * from './lib/brn-select';\nexport * from './lib/brn-select-content';\nexport * from './lib/brn-select-group';\nexport * from './lib/brn-select-item';\nexport * from './lib/brn-select-item.token';\nexport * from './lib/brn-select-label';\nexport * from './lib/brn-select-list';\nexport * from './lib/brn-select-multiple';\nexport * from './lib/brn-select-placeholder';\nexport * from './lib/brn-select-scroll-down';\nexport * from './lib/brn-select-scroll-up';\nexport * from './lib/brn-select-separator';\nexport * from './lib/brn-select-trigger';\nexport * from './lib/brn-select-value';\nexport * from './lib/brn-select-value-template';\nexport * from './lib/brn-select-values';\nexport * from './lib/brn-select.token';\n\nexport const BrnSelectImports = [\n\tBrnSelect,\n\tBrnSelectContent,\n\tBrnSelectGroup,\n\tBrnSelectItem,\n\tBrnSelectLabel,\n\tBrnSelectList,\n\tBrnSelectMultiple,\n\tBrnSelectPlaceholder,\n\tBrnSelectScrollUp,\n\tBrnSelectScrollDown,\n\tBrnSelectSeparator,\n\tBrnSelectTrigger,\n\tBrnSelectValue,\n\tBrnSelectValueTemplate,\n\tBrnSelectValues,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spartan-ng-brain-select.mjs","sources":["../../../../libs/brain/select/src/lib/brn-select-item.token.ts","../../../../libs/brain/select/src/lib/brn-select.token.ts","../../../../libs/brain/select/src/lib/brn-select.ts","../../../../libs/brain/select/src/lib/brn-select-content.ts","../../../../libs/brain/select/src/lib/brn-select-label.ts","../../../../libs/brain/select/src/lib/brn-select-group.ts","../../../../libs/brain/select/src/lib/brn-select-item.ts","../../../../libs/brain/select/src/lib/brn-select-list.ts","../../../../libs/brain/select/src/lib/brn-select-multiple.ts","../../../../libs/brain/select/src/lib/brn-select-placeholder.ts","../../../../libs/brain/select/src/lib/brn-select-scroll-down.ts","../../../../libs/brain/select/src/lib/brn-select-scroll-up.ts","../../../../libs/brain/select/src/lib/brn-select-separator.ts","../../../../libs/brain/select/src/lib/brn-select-trigger.ts","../../../../libs/brain/select/src/lib/brn-select-value.ts","../../../../libs/brain/select/src/lib/brn-select-value-template.ts","../../../../libs/brain/select/src/lib/brn-select-values.ts","../../../../libs/brain/select/src/index.ts","../../../../libs/brain/select/src/spartan-ng-brain-select.ts"],"sourcesContent":["import { type ExistingProvider, InjectionToken, type Type } from '@angular/core';\nimport type { BrnSelectItem } from './brn-select-item';\n\nexport const BrnSelectItemToken = new InjectionToken<BrnSelectItem<unknown>>('BrnSelectItemToken');\n\nexport function provideBrnSelectItem<T>(selectItem: Type<BrnSelectItem<T>>): ExistingProvider {\n\treturn { provide: BrnSelectItemToken, useExisting: selectItem };\n}\n","import type { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport {\n\ttype ExistingProvider,\n\tinject,\n\tInjectionToken,\n\ttype InputSignal,\n\ttype ModelSignal,\n\ttype Signal,\n\ttype Type,\n\ttype ValueProvider,\n} from '@angular/core';\nimport type { ControlState } from '@spartan-ng/brain/forms';\nimport type { BrnSelectItem } from './brn-select-item';\nimport type { BrnSelectTrigger } from './brn-select-trigger';\n\nexport interface BrnSelectBase<T> {\n\tdisabledState: Signal<boolean>;\n\titemToString: InputSignal<SelectItemToString<T> | undefined>;\n\tkeyManager: ActiveDescendantKeyManager<BrnSelectItem<T>>;\n\tvalue: ModelSignal<T | undefined | null> | ModelSignal<T[] | undefined | null>;\n\thasValue: Signal<boolean>;\n\tisExpanded: Signal<boolean>;\n\ttriggerWidth: Signal<number | null>;\n\tcontrolState?: Signal<ControlState | null>;\n\n\tisSelected: (itemValue: T) => boolean;\n\tselect: (itemValue: T) => void;\n\t/** Select the active item with Enter key. */\n\tselectActiveItem: () => void;\n\topen: () => void;\n\tregisterSelectTrigger: (input: BrnSelectTrigger) => void;\n\tupdateTriggerWidth: (width: number | null) => void;\n}\n\nexport const BrnSelectBaseToken = new InjectionToken<BrnSelectBase<unknown>>('BrnSelectBaseToken');\n\nexport function provideBrnSelectBase<T>(instance: Type<BrnSelectBase<T>>): ExistingProvider {\n\treturn { provide: BrnSelectBaseToken, useExisting: instance };\n}\n\n/**\n * Inject the select component.\n */\nexport function injectBrnSelectBase<T>(): BrnSelectBase<T> {\n\treturn inject(BrnSelectBaseToken) as BrnSelectBase<T>;\n}\n\nexport type SelectItemEqualToValue<T> = (itemValue: T, selectedValue: T | undefined | null) => boolean;\nexport type SelectItemToString<T> = (itemValue: T) => string;\n\nexport interface BrnSelectConfig<T> {\n\tisItemEqualToValue: SelectItemEqualToValue<T>;\n\titemToString?: SelectItemToString<T>;\n}\n\nfunction getDefaultConfig<T>(): BrnSelectConfig<T> {\n\treturn {\n\t\tisItemEqualToValue: (itemValue: T, selectedValue: T | undefined | null) => Object.is(itemValue, selectedValue),\n\t\titemToString: undefined,\n\t};\n}\n\nconst BrnSelectConfigToken = new InjectionToken<BrnSelectConfig<unknown>>('BrnSelectConfig');\n\nexport function provideBrnSelectConfig<T>(config: Partial<BrnSelectConfig<T>>): ValueProvider {\n\treturn { provide: BrnSelectConfigToken, useValue: { ...getDefaultConfig(), ...config } };\n}\n\nexport function injectBrnSelectConfig<T>(): BrnSelectConfig<T> {\n\tconst injectedConfig = inject(BrnSelectConfigToken, { optional: true });\n\treturn injectedConfig ? (injectedConfig as BrnSelectConfig<T>) : getDefaultConfig();\n}\n","import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport type { BooleanInput } from '@angular/cdk/coercion';\nimport {\n\tafterNextRender,\n\tbooleanAttribute,\n\tcomputed,\n\tcontentChildren,\n\tDirective,\n\teffect,\n\tforwardRef,\n\tinject,\n\tInjector,\n\tinput,\n\tlinkedSignal,\n\tmodel,\n\tsignal,\n\tuntracked,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { BrnFieldControl, provideBrnLabelable } from '@spartan-ng/brain/field';\nimport { ChangeFn, TouchFn } from '@spartan-ng/brain/forms';\nimport { BrnPopover } from '@spartan-ng/brain/popover';\nimport { BrnSelectItem } from './brn-select-item';\nimport { BrnSelectItemToken } from './brn-select-item.token';\nimport type { BrnSelectTrigger } from './brn-select-trigger';\nimport {\n\ttype BrnSelectBase,\n\tinjectBrnSelectConfig,\n\tprovideBrnSelectBase,\n\ttype SelectItemEqualToValue,\n\ttype SelectItemToString,\n} from './brn-select.token';\n\nexport const BRN_SELECT_VALUE_ACCESSOR = {\n\tprovide: NG_VALUE_ACCESSOR,\n\tuseExisting: forwardRef(() => BrnSelect),\n\tmulti: true,\n};\n\n@Directive({\n\tselector: '[brnSelect]',\n\tproviders: [provideBrnSelectBase(BrnSelect), BRN_SELECT_VALUE_ACCESSOR, provideBrnLabelable(BrnSelect)],\n\thostDirectives: [BrnFieldControl],\n})\nexport class BrnSelect<T> implements BrnSelectBase<T>, ControlValueAccessor {\n\tprivate readonly _injector = inject(Injector);\n\tprivate readonly _fieldControl = inject(BrnFieldControl, { optional: true });\n\n\tprivate readonly _config = injectBrnSelectConfig<T>();\n\n\tpublic readonly controlState = this._fieldControl?.controlState;\n\n\t/** Access the popover if present */\n\tprivate readonly _brnPopover = inject(BrnPopover, { optional: true });\n\n\t/** Whether the select is disabled */\n\tpublic readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\tprotected readonly _disabled = linkedSignal(this.disabled);\n\n\t/** @internal The disabled state as a readonly signal */\n\tpublic readonly disabledState = this._disabled.asReadonly();\n\n\t/** The selected value of the select. */\n\tpublic readonly value = model<T | undefined | null>(null);\n\n\tpublic readonly hasValue = computed(() => this.value() !== null && this.value() !== undefined);\n\n\t/** A function to compare an item with the selected value. */\n\tpublic readonly isItemEqualToValue = input<SelectItemEqualToValue<T>>(this._config.isItemEqualToValue);\n\n\t/** A function to convert an item to a string for display. */\n\tpublic readonly itemToString = input<SelectItemToString<T> | undefined>(this._config.itemToString);\n\n\tprivate readonly _triggerWidth = signal<number | null>(null);\n\n\t/** @internal The width of the trigger wrapper */\n\tpublic readonly triggerWidth = this._triggerWidth.asReadonly();\n\n\t/** @internal Access all the items within the select */\n\tpublic readonly items = contentChildren<BrnSelectItem<T>>(BrnSelectItemToken, {\n\t\tdescendants: true,\n\t});\n\n\t/** @internal The key manager for managing active descendant */\n\tpublic readonly keyManager = new ActiveDescendantKeyManager(this.items, this._injector);\n\n\t/** @internal Whether the select is expanded */\n\tpublic readonly isExpanded = computed(() => this._brnPopover?.stateComputed() === 'open');\n\n\tprivate readonly _selectTrigger = signal<BrnSelectTrigger | undefined>(undefined);\n\n\tpublic readonly labelableId = computed(() => this._selectTrigger()?.id());\n\n\tprotected _onChange?: ChangeFn<T | undefined | null>;\n\tprotected _onTouched?: TouchFn;\n\n\tconstructor() {\n\t\tthis.keyManager\n\t\t\t.withVerticalOrientation()\n\t\t\t.withHomeAndEnd()\n\t\t\t.withTypeAhead()\n\t\t\t.withWrap()\n\t\t\t.skipPredicate((item) => item.disabled);\n\n\t\tthis._brnPopover?.closed.subscribe(() => {\n\t\t\tthis._onTouched?.();\n\t\t\tthis.keyManager.setActiveItem(-1);\n\t\t});\n\n\t\tafterNextRender(() => {\n\t\t\teffect(\n\t\t\t\t() => {\n\t\t\t\t\tif (!this.isExpanded()) return;\n\n\t\t\t\t\tconst items = this.items();\n\t\t\t\t\tconst value = this.value();\n\n\t\t\t\t\tuntracked(() => {\n\t\t\t\t\t\tconst index =\n\t\t\t\t\t\t\tvalue !== null && value !== undefined\n\t\t\t\t\t\t\t\t? items.findIndex((item) => this.isItemEqualToValue()(item.value(), value))\n\t\t\t\t\t\t\t\t: -1;\n\n\t\t\t\t\t\tif (index !== -1) {\n\t\t\t\t\t\t\tthis.keyManager.setActiveItem(index);\n\t\t\t\t\t\t} else if (items.length > 0) {\n\t\t\t\t\t\t\tthis.keyManager.setFirstItemActive();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthis.keyManager.setActiveItem(-1);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\t{ injector: this._injector },\n\t\t\t);\n\t\t});\n\t}\n\n\tpublic registerSelectTrigger(input: BrnSelectTrigger): void {\n\t\treturn this._selectTrigger.set(input);\n\t}\n\n\tpublic updateTriggerWidth(width: number | null): void {\n\t\tthis._triggerWidth.set(width);\n\t}\n\n\tpublic isSelected(itemValue: T): boolean {\n\t\treturn this.isItemEqualToValue()(itemValue, this.value());\n\t}\n\n\tpublic select(itemValue: T): void {\n\t\tthis.value.set(itemValue);\n\t\tthis._onChange?.(itemValue);\n\t\tthis.close();\n\t}\n\n\t/** Select the active item with Enter key. */\n\tpublic selectActiveItem(): void {\n\t\tif (!this.isExpanded()) return;\n\n\t\tconst value = this.keyManager.activeItem?.value();\n\n\t\tif (value) {\n\t\t\tthis.select(value);\n\t\t} else {\n\t\t\tthis.close();\n\t\t}\n\t}\n\n\tpublic open(): void {\n\t\tif (this._disabled() || this.isExpanded()) return;\n\n\t\tthis._brnPopover?.open();\n\t}\n\n\tprivate close(): void {\n\t\tif (this._disabled() || !this.isExpanded()) return;\n\n\t\tthis._brnPopover?.close();\n\t}\n\n\t/** CONTROL VALUE ACCESSOR */\n\tpublic writeValue(value: T | undefined | null): void {\n\t\tthis.value.set(value);\n\t}\n\n\tpublic registerOnChange(fn: ChangeFn<T | undefined | null>): void {\n\t\tthis._onChange = fn;\n\t}\n\n\tpublic registerOnTouched(fn: TouchFn): void {\n\t\tthis._onTouched = fn;\n\t}\n\n\tpublic setDisabledState(isDisabled: boolean): void {\n\t\tthis._disabled.set(isDisabled);\n\t}\n}\n","import { afterNextRender, Directive, ElementRef, inject, signal } from '@angular/core';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n// We use 8px and 15ms to create a smooth scrolling effect.\n// 15ms is slightly faster than 60fps (16.6ms), ensuring a smooth animation loop.\nconst SCROLLBY_PIXEL = 8;\n\n@Directive({\n\tselector: '[brnSelectContent]',\n\thost: {\n\t\t'[style.--brn-select-width.px]': '_selectWidth()',\n\t\t'(scroll)': 'handleScroll()',\n\t},\n})\nexport class BrnSelectContent {\n\tprivate readonly _select = injectBrnSelectBase();\n\n\tprotected readonly _selectWidth = this._select.triggerWidth;\n\n\tprivate readonly _elementRef = inject(ElementRef<HTMLElement>);\n\n\tprivate readonly _scrollUp = signal(false);\n\n\tpublic readonly showScrollUp = this._scrollUp.asReadonly();\n\n\tprivate readonly _scrollDown = signal(false);\n\n\tpublic readonly showScrollDown = this._scrollDown.asReadonly();\n\n\tconstructor() {\n\t\tafterNextRender(() => {\n\t\t\tthis._checkScroll();\n\t\t});\n\t}\n\n\tpublic handleScroll() {\n\t\tthis._checkScroll();\n\t}\n\n\tprivate _checkScroll() {\n\t\tconst { scrollTop, scrollHeight, clientHeight } = this._elementRef.nativeElement;\n\n\t\tthis._scrollUp.set(scrollTop > 0);\n\n\t\tconst maxScroll = scrollHeight - clientHeight;\n\t\tthis._scrollDown.set(Math.ceil(scrollTop) < maxScroll);\n\t}\n\n\tpublic scrollDown(stop: () => void) {\n\t\tthis._elementRef.nativeElement.scrollBy({\n\t\t\ttop: SCROLLBY_PIXEL,\n\t\t\tbehavior: 'auto',\n\t\t});\n\n\t\tconst { scrollTop, scrollHeight, clientHeight } = this._elementRef.nativeElement;\n\t\tconst maxScroll = scrollHeight - clientHeight;\n\n\t\tif (Math.ceil(scrollTop) >= maxScroll) {\n\t\t\tstop();\n\t\t}\n\t}\n\n\tpublic scrollUp(stop: () => void) {\n\t\tthis._elementRef.nativeElement.scrollBy({\n\t\t\ttop: -SCROLLBY_PIXEL,\n\t\t\tbehavior: 'auto',\n\t\t});\n\n\t\tif (this._elementRef.nativeElement.scrollTop === 0) {\n\t\t\tstop();\n\t\t}\n\t}\n}\n","import { Directive, input } from '@angular/core';\n\n@Directive({\n\tselector: '[brnSelectLabel]',\n\thost: {\n\t\t'[id]': 'id()',\n\t},\n})\nexport class BrnSelectLabel {\n\tprivate static _id = 0;\n\n\tpublic readonly id = input<string>(`brn-select-label-${++BrnSelectLabel._id}`);\n}\n","import { computed, contentChild, Directive } from '@angular/core';\nimport { BrnSelectLabel } from './brn-select-label';\n\n@Directive({\n\tselector: '[brnSelectGroup]',\n\thost: {\n\t\trole: 'group',\n\t\t'[attr.aria-labelledby]': '_labelledby()',\n\t},\n})\nexport class BrnSelectGroup {\n\tprivate readonly _selectLabel = contentChild(BrnSelectLabel);\n\n\tprotected readonly _labelledby = computed(() => this._selectLabel()?.id() ?? null);\n}\n","import { Highlightable } from '@angular/cdk/a11y';\nimport { BooleanInput } from '@angular/cdk/coercion';\nimport { isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, computed, Directive, ElementRef, inject, input, PLATFORM_ID, signal } from '@angular/core';\nimport { stringifyAsLabel } from '@spartan-ng/brain/core';\nimport { provideBrnSelectItem } from './brn-select-item.token';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n@Directive({\n\tselector: '[brnSelectItem]',\n\tproviders: [provideBrnSelectItem(BrnSelectItem)],\n\thost: {\n\t\trole: 'option',\n\t\t'[id]': 'id()',\n\t\t'[attr.data-highlighted]': '_highlighted() ? \"\" : null',\n\t\t'[attr.data-value]': 'value()',\n\t\t'[attr.aria-selected]': 'active()',\n\t\t'[attr.aria-disabled]': '_disabled()',\n\t\t'[attr.data-disabled]': '_disabled() ? \"\" : null',\n\t\t'(click)': 'select()',\n\t\t'(mouseenter)': 'activate()',\n\t},\n})\nexport class BrnSelectItem<T> implements Highlightable {\n\tprivate static _id = 0;\n\n\tprivate readonly _platform = inject(PLATFORM_ID);\n\n\tprivate readonly _elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n\t/** Access the select component */\n\tprivate readonly _select = injectBrnSelectBase<T>();\n\n\t/** A unique id for the item */\n\tpublic readonly id = input<string>(`brn-select-item-${++BrnSelectItem._id}`);\n\n\t/** The value this item represents. */\n\tpublic readonly value = input.required<T>();\n\t// eslint-disable-next-line @typescript-eslint/naming-convention\n\tpublic readonly _disabled = input<boolean, BooleanInput>(false, {\n\t\talias: 'disabled',\n\t\ttransform: booleanAttribute,\n\t});\n\n\t/** Expose disabled as a value - used by the Highlightable interface */\n\tpublic get disabled() {\n\t\treturn this._disabled();\n\t}\n\n\t/** Whether the item is selected. */\n\tpublic readonly active = computed(() => this._select.isSelected(this.value()));\n\n\tprotected readonly _highlighted = signal(false);\n\n\tpublic setActiveStyles(): void {\n\t\tthis._highlighted.set(true);\n\n\t\t// ensure the item is in view\n\t\tif (isPlatformBrowser(this._platform)) {\n\t\t\tthis._elementRef.nativeElement.scrollIntoView({ block: 'nearest' });\n\t\t}\n\t}\n\n\tpublic setInactiveStyles(): void {\n\t\tthis._highlighted.set(false);\n\t}\n\n\tpublic getLabel(): string {\n\t\treturn stringifyAsLabel(this.value(), this._select.itemToString());\n\t}\n\n\tprotected select(): void {\n\t\tif (this._disabled()) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._select.keyManager.setActiveItem(this);\n\t\tthis._select.select(this.value());\n\t}\n\n\tprotected activate(): void {\n\t\tif (this._disabled()) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._select.keyManager.setActiveItem(this);\n\t}\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n\tselector: '[brnSelectList]',\n\thost: {\n\t\trole: 'listbox',\n\t},\n})\nexport class BrnSelectList {}\n","import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';\nimport type { BooleanInput } from '@angular/cdk/coercion';\nimport {\n\tafterNextRender,\n\tbooleanAttribute,\n\tcomputed,\n\tcontentChildren,\n\tDirective,\n\teffect,\n\tforwardRef,\n\tinject,\n\tInjector,\n\tinput,\n\tlinkedSignal,\n\tmodel,\n\tsignal,\n\tuntracked,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { BrnFieldControl, provideBrnLabelable } from '@spartan-ng/brain/field';\nimport type { ChangeFn, TouchFn } from '@spartan-ng/brain/forms';\nimport { BrnPopover } from '@spartan-ng/brain/popover';\nimport { BrnSelectItem } from './brn-select-item';\nimport { BrnSelectItemToken } from './brn-select-item.token';\nimport { BrnSelectTrigger } from './brn-select-trigger';\nimport {\n\tBrnSelectBase,\n\tinjectBrnSelectConfig,\n\tprovideBrnSelectBase,\n\tSelectItemEqualToValue,\n\tSelectItemToString,\n} from './brn-select.token';\n\nexport const BRN_SELECT_MULTIPLE_VALUE_ACCESSOR = {\n\tprovide: NG_VALUE_ACCESSOR,\n\tuseExisting: forwardRef(() => BrnSelectMultiple),\n\tmulti: true,\n};\n\n@Directive({\n\tselector: '[brnSelectMultiple]',\n\tproviders: [\n\t\tprovideBrnSelectBase(BrnSelectMultiple),\n\t\tBRN_SELECT_MULTIPLE_VALUE_ACCESSOR,\n\t\tprovideBrnLabelable(BrnSelectMultiple),\n\t],\n\thostDirectives: [BrnFieldControl],\n})\nexport class BrnSelectMultiple<T> implements BrnSelectBase<T>, ControlValueAccessor {\n\tprivate readonly _injector = inject(Injector);\n\tprivate readonly _fieldControl = inject(BrnFieldControl, { optional: true });\n\n\tprivate readonly _config = injectBrnSelectConfig<T>();\n\n\tpublic readonly controlState = this._fieldControl?.controlState;\n\n\t/** Access the popover if present */\n\tprivate readonly _brnPopover = inject(BrnPopover, { optional: true });\n\n\t/** Whether the combobox is disabled */\n\tpublic readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\tprotected readonly _disabled = linkedSignal(this.disabled);\n\n\t/** @internal The disabled state as a readonly signal */\n\tpublic readonly disabledState = this._disabled.asReadonly();\n\n\t/** The selected value of the select. */\n\tpublic readonly value = model<T[] | undefined | null>(null);\n\n\tpublic readonly hasValue = computed(() => {\n\t\tconst value = this.value();\n\t\tif (value === null || value === undefined) return false;\n\t\treturn value.length > 0;\n\t});\n\n\t/** A function to compare an item with the selected value. */\n\tpublic readonly isItemEqualToValue = input<SelectItemEqualToValue<T>>(this._config.isItemEqualToValue);\n\n\t/** A function to convert an item to a string for display. */\n\tpublic readonly itemToString = input<SelectItemToString<T> | undefined>(this._config.itemToString);\n\n\tprivate readonly _triggerWidth = signal<number | null>(null);\n\n\t/** @internal The width of the trigger wrapper */\n\tpublic readonly triggerWidth = this._triggerWidth.asReadonly();\n\n\t/** @internal Access all the items within the select */\n\tpublic readonly items = contentChildren<BrnSelectItem<T>>(BrnSelectItemToken, {\n\t\tdescendants: true,\n\t});\n\n\t/** @internal The key manager for managing active descendant */\n\tpublic readonly keyManager = new ActiveDescendantKeyManager(this.items, this._injector);\n\n\t/** @internal Whether the select is expanded */\n\tpublic readonly isExpanded = computed(() => this._brnPopover?.stateComputed() === 'open');\n\n\tprivate readonly _selectTrigger = signal<BrnSelectTrigger | undefined>(undefined);\n\n\tpublic readonly labelableId = computed(() => this._selectTrigger()?.id());\n\n\tprotected _onChange?: ChangeFn<T[] | undefined | null>;\n\tprotected _onTouched?: TouchFn;\n\n\tconstructor() {\n\t\tthis.keyManager\n\t\t\t.withVerticalOrientation()\n\t\t\t.withHomeAndEnd()\n\t\t\t.withTypeAhead()\n\t\t\t.withWrap()\n\t\t\t.skipPredicate((item) => item.disabled);\n\n\t\tthis._brnPopover?.closed.subscribe(() => {\n\t\t\tthis._onTouched?.();\n\t\t\tthis.keyManager.setActiveItem(-1);\n\t\t});\n\n\t\tafterNextRender(() => {\n\t\t\teffect(\n\t\t\t\t() => {\n\t\t\t\t\tif (!this.isExpanded()) return;\n\n\t\t\t\t\tconst items = this.items();\n\t\t\t\t\tconst values = this.value();\n\t\t\t\t\tconst lastValue = values ? values[values.length - 1] : null;\n\n\t\t\t\t\tuntracked(() => {\n\t\t\t\t\t\tconst index =\n\t\t\t\t\t\t\tlastValue !== null && lastValue !== undefined\n\t\t\t\t\t\t\t\t? items.findIndex((item) => this.isItemEqualToValue()(item.value(), lastValue))\n\t\t\t\t\t\t\t\t: -1;\n\n\t\t\t\t\t\tif (index !== -1) {\n\t\t\t\t\t\t\tthis.keyManager.setActiveItem(index);\n\t\t\t\t\t\t} else if (items.length > 0) {\n\t\t\t\t\t\t\tthis.keyManager.setFirstItemActive();\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tthis.keyManager.setActiveItem(-1);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t},\n\t\t\t\t{ injector: this._injector },\n\t\t\t);\n\t\t});\n\t}\n\n\tpublic registerSelectTrigger(input: BrnSelectTrigger): void {\n\t\treturn this._selectTrigger.set(input);\n\t}\n\n\tpublic updateTriggerWidth(width: number | null): void {\n\t\tthis._triggerWidth.set(width);\n\t}\n\n\tpublic isSelected(itemValue: T): boolean {\n\t\treturn this.value()?.some((v) => this.isItemEqualToValue()(itemValue, v)) ?? false;\n\t}\n\n\tpublic select(itemValue: T): void {\n\t\tconst selected = this.value() ?? [];\n\n\t\tif (this.isSelected(itemValue)) {\n\t\t\tthis.value.set(selected.filter((d) => !this.isItemEqualToValue()(d, itemValue)) ?? []);\n\t\t} else {\n\t\t\tthis.value.set([...selected, itemValue]);\n\t\t}\n\n\t\tthis._onChange?.(this.value() ?? []);\n\t}\n\n\t/** Select the active item with Enter key. */\n\tpublic selectActiveItem(): void {\n\t\tif (!this.isExpanded()) return;\n\n\t\tconst value = this.keyManager.activeItem?.value();\n\n\t\tif (value) {\n\t\t\tthis.select(value);\n\t\t} else {\n\t\t\tthis.close();\n\t\t}\n\t}\n\n\tpublic open(): void {\n\t\tif (this._disabled() || this.isExpanded()) return;\n\n\t\tthis._brnPopover?.open();\n\t}\n\n\tprivate close(): void {\n\t\tif (this._disabled() || !this.isExpanded()) return;\n\n\t\tthis._brnPopover?.close();\n\t}\n\n\t/** CONTROL VALUE ACCESSOR */\n\tpublic writeValue(value: T[] | undefined | null): void {\n\t\tthis.value.set(value);\n\t}\n\n\tpublic registerOnChange(fn: ChangeFn<T[] | undefined | null>): void {\n\t\tthis._onChange = fn;\n\t}\n\n\tpublic registerOnTouched(fn: TouchFn): void {\n\t\tthis._onTouched = fn;\n\t}\n\n\tpublic setDisabledState(isDisabled: boolean): void {\n\t\tthis._disabled.set(isDisabled);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n@Directive({\n\tselector: '[brnSelectPlaceholder]',\n\thost: {\n\t\t'[attr.data-hidden]': '_hasValue() ? \"\" : null',\n\t},\n})\nexport class BrnSelectPlaceholder {\n\tprivate readonly _select = injectBrnSelectBase();\n\n\tprotected readonly _hasValue = this._select.hasValue;\n}\n","import { DestroyRef, Directive, ElementRef, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { fromEvent, interval, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { BrnSelectContent } from './brn-select-content';\n\n@Directive({\n\tselector: '[brnSelectScrollDown]',\n\thost: {\n\t\t'aria-hidden': 'true',\n\t\t'[attr.data-hidden]': '!_showScrollDown() ? \"\" : null',\n\t\t'(mouseenter)': '_scrollDown()',\n\t},\n})\nexport class BrnSelectScrollDown {\n\tprivate readonly _el = inject(ElementRef);\n\tprivate readonly _destroyRef = inject(DestroyRef);\n\tprivate readonly _selectContent = inject(BrnSelectContent);\n\n\tprotected readonly _showScrollDown = this._selectContent.showScrollDown;\n\n\tprivate readonly _endReached = new Subject<boolean>();\n\n\tprotected _scrollDown() {\n\t\tconst mouseLeave$ = fromEvent(this._el.nativeElement, 'mouseleave');\n\n\t\t// 15ms is slightly faster than 60fps (16.6ms), ensuring a smooth animation loop.\n\t\tinterval(15)\n\t\t\t.pipe(takeUntil(mouseLeave$), takeUntil(this._endReached), takeUntilDestroyed(this._destroyRef))\n\t\t\t.subscribe(() => this._selectContent.scrollDown(() => this._endReached.next(true)));\n\t}\n}\n","import { DestroyRef, Directive, ElementRef, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { fromEvent, interval, Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\nimport { BrnSelectContent } from './brn-select-content';\n\n@Directive({\n\tselector: '[brnSelectScrollUp]',\n\thost: {\n\t\t'aria-hidden': 'true',\n\t\t'[attr.data-hidden]': '!_showScrollUp() ? \"\" : null',\n\t\t'(mouseenter)': '_scrollUp()',\n\t},\n})\nexport class BrnSelectScrollUp {\n\tprivate readonly _el = inject(ElementRef);\n\tprivate readonly _destroyRef = inject(DestroyRef);\n\tprivate readonly _selectContent = inject(BrnSelectContent);\n\n\tprotected readonly _showScrollUp = this._selectContent.showScrollUp;\n\n\tprivate readonly _endReached = new Subject<boolean>();\n\n\tprotected _scrollUp() {\n\t\tconst mouseLeave$ = fromEvent(this._el.nativeElement, 'mouseleave');\n\n\t\t// 15ms is slightly faster than 60fps (16.6ms), ensuring a smooth animation loop.\n\t\tinterval(15)\n\t\t\t.pipe(takeUntil(mouseLeave$), takeUntil(this._endReached), takeUntilDestroyed(this._destroyRef))\n\t\t\t.subscribe(() => this._selectContent.scrollUp(() => this._endReached.next(true)));\n\t}\n}\n","import { Directive, input } from '@angular/core';\n\n@Directive({\n\tselector: '[brnSelectSeparator]',\n\thost: {\n\t\trole: 'separator',\n\t\t'[attr.aria-orientation]': 'orientation()',\n\t\t'[attr.data-orientation]': 'orientation()',\n\t},\n})\nexport class BrnSelectSeparator {\n\tpublic readonly orientation = input<'horizontal' | 'vertical'>('horizontal');\n}\n","import type { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, computed, Directive, effect, ElementRef, inject, input } from '@angular/core';\nimport { injectElementSize } from '@spartan-ng/brain/core';\nimport { BrnDialog } from '@spartan-ng/brain/dialog';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n@Directive({\n\tselector: 'button[brnSelectTrigger]',\n\thost: {\n\t\trole: 'combobox',\n\t\t'aria-haspopup': 'listbox',\n\t\ttype: 'button',\n\t\t'[id]': 'id()',\n\t\t'[attr.aria-expanded]': '_isExpanded()',\n\t\t'[attr.data-placeholder]': '_isPlaceholder() ? \"\" : null',\n\t\t'[disabled]': '_disabled()',\n\t\t'[attr.aria-invalid]': '_invalid?.() ? \"true\" : null',\n\t\t'[attr.data-dirty]': '_dirty?.() ? \"true\": null',\n\t\t'[attr.data-touched]': '_touched?.() ? \"true\" : null',\n\t\t'[attr.data-matches-spartan-invalid]': '_spartanInvalid?.() ? \"true\" : null',\n\t\t'(click)': 'open()',\n\t\t'(keydown)': 'onKeyDown($event)',\n\t},\n})\nexport class BrnSelectTrigger {\n\tprivate static _id = 0;\n\n\tprivate readonly _host = inject(ElementRef, { host: true });\n\tprivate readonly _brnDialog = inject(BrnDialog, { optional: true });\n\n\tprivate readonly _select = injectBrnSelectBase();\n\n\tprivate readonly _elementSize = injectElementSize();\n\n\tpublic readonly id = input<string>(`brn-select-trigger-${++BrnSelectTrigger._id}`);\n\n\t/** Whether to force the trigger into an invalid state. */\n\tpublic readonly forceInvalid = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\t/** Whether the combobox panel is expanded */\n\tprotected readonly _isExpanded = this._select.isExpanded;\n\n\tprotected readonly _disabled = this._select.disabledState;\n\n\tprotected readonly _isPlaceholder = computed(() => !this._select.hasValue());\n\n\tprotected readonly _invalid = computed(() => this._select?.controlState?.()?.invalid);\n\tprotected readonly _touched = computed(() => this._select?.controlState?.()?.touched);\n\tprotected readonly _dirty = computed(() => this._select?.controlState?.()?.dirty);\n\tprotected readonly _spartanInvalid = computed(\n\t\t() => this.forceInvalid() || this._select?.controlState?.()?.spartanInvalid,\n\t);\n\n\tconstructor() {\n\t\tthis._select.registerSelectTrigger(this);\n\n\t\tif (this._brnDialog) {\n\t\t\tthis._brnDialog.mutableAttachTo.set(this._host.nativeElement);\n\t\t}\n\n\t\teffect(() => {\n\t\t\tconst size = this._elementSize();\n\t\t\tif (size) {\n\t\t\t\tthis._select.updateTriggerWidth(size.width);\n\t\t\t\tthis._brnDialog?.updatePosition();\n\t\t\t}\n\t\t});\n\t}\n\n\tprotected open() {\n\t\tthis._brnDialog?.open();\n\t}\n\n\t/** Listen for keydown events */\n\tprotected onKeyDown(event: KeyboardEvent): void {\n\t\tif (event.key === 'Enter') {\n\t\t\t// prevent form submission if inside a form\n\t\t\tevent.preventDefault();\n\n\t\t\tthis._select.selectActiveItem();\n\t\t}\n\n\t\tif (event.key === 'Tab' && this._isExpanded()) {\n\t\t\tthis._select.selectActiveItem();\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._isExpanded()) {\n\t\t\tif (event.key === 'Tab') {\n\t\t\t\tthis._select.selectActiveItem();\n\t\t\t}\n\t\t} else {\n\t\t\tif (event.key === 'Enter' || event.key === 'ArrowDown' || event.key === 'ArrowUp') {\n\t\t\t\tthis._select.open();\n\t\t\t}\n\t\t}\n\n\t\tthis._select.keyManager.onKeydown(event);\n\t}\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { stringifyAsLabel } from '@spartan-ng/brain/core';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n@Directive({\n\tselector: '[brnSelectValue]',\n\thost: {\n\t\t'[attr.data-placeholder]': '_isPlaceholder() ? \"\" : null',\n\t\t'[attr.data-hidden]': 'hidden() ? \"\" : null',\n\t\t'[textContent]': '_value()',\n\t},\n})\nexport class BrnSelectValue<T> {\n\tprivate readonly _select = injectBrnSelectBase<T>();\n\n\tpublic readonly placeholder = input<string>('');\n\n\tprotected readonly _isPlaceholder = computed(() => !this._select.hasValue());\n\n\tpublic readonly hidden = computed(() => !this._select.hasValue() && !this.placeholder());\n\n\tprotected readonly _value = computed(() => {\n\t\treturn this._select.hasValue()\n\t\t\t? stringifyAsLabel(this._select.value(), this._select.itemToString())\n\t\t\t: this.placeholder();\n\t});\n}\n","import { computed, Directive, effect, inject, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n@Directive({\n\tselector: '[brnSelectValueTemplate]',\n})\nexport class BrnSelectValueTemplate<T> {\n\tprivate readonly _templateRef = inject(TemplateRef);\n\tprivate readonly _viewContainerRef = inject(ViewContainerRef);\n\n\tprivate readonly _select = injectBrnSelectBase<T>();\n\n\tprotected readonly _value = computed<T | null>(() => {\n\t\tconst value = this._select.value();\n\n\t\tif (value === null || value === undefined) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn value as T;\n\t});\n\n\tconstructor() {\n\t\teffect(() => {\n\t\t\tconst value = this._value();\n\t\t\tif (value !== null && value !== undefined) {\n\t\t\t\tthis._viewContainerRef.clear();\n\t\t\t\tthis._viewContainerRef.createEmbeddedView(this._templateRef, {\n\t\t\t\t\t$implicit: value,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis._viewContainerRef.clear();\n\t\t\t}\n\t\t});\n\t}\n}\n","import { computed, Directive, effect, inject, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { injectBrnSelectBase } from './brn-select.token';\n\n@Directive({\n\tselector: '[brnSelectValues]',\n})\nexport class BrnSelectValues<T> {\n\tprivate readonly _templateRef = inject(TemplateRef<T>);\n\tprivate readonly _viewContainerRef = inject(ViewContainerRef);\n\n\tprivate readonly _select = injectBrnSelectBase<T>();\n\n\tprotected readonly _values = computed<T[] | undefined | null>(() => {\n\t\tconst values = this._select.value();\n\n\t\tif (values === null || values === undefined) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn Array.isArray(values) ? values : [values];\n\t});\n\n\tconstructor() {\n\t\teffect(() => {\n\t\t\tconst values = this._values();\n\t\t\tif (values?.length) {\n\t\t\t\tthis._viewContainerRef.clear();\n\t\t\t\tthis._viewContainerRef.createEmbeddedView(this._templateRef, {\n\t\t\t\t\t$implicit: values,\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tthis._viewContainerRef.clear();\n\t\t\t}\n\t\t});\n\t}\n}\n","import { BrnSelect } from './lib/brn-select';\nimport { BrnSelectContent } from './lib/brn-select-content';\nimport { BrnSelectGroup } from './lib/brn-select-group';\nimport { BrnSelectItem } from './lib/brn-select-item';\nimport { BrnSelectLabel } from './lib/brn-select-label';\nimport { BrnSelectList } from './lib/brn-select-list';\nimport { BrnSelectMultiple } from './lib/brn-select-multiple';\nimport { BrnSelectPlaceholder } from './lib/brn-select-placeholder';\nimport { BrnSelectScrollDown } from './lib/brn-select-scroll-down';\nimport { BrnSelectScrollUp } from './lib/brn-select-scroll-up';\nimport { BrnSelectSeparator } from './lib/brn-select-separator';\nimport { BrnSelectTrigger } from './lib/brn-select-trigger';\nimport { BrnSelectValue } from './lib/brn-select-value';\nimport { BrnSelectValueTemplate } from './lib/brn-select-value-template';\nimport { BrnSelectValues } from './lib/brn-select-values';\n\nexport * from './lib/brn-select';\nexport * from './lib/brn-select-content';\nexport * from './lib/brn-select-group';\nexport * from './lib/brn-select-item';\nexport * from './lib/brn-select-item.token';\nexport * from './lib/brn-select-label';\nexport * from './lib/brn-select-list';\nexport * from './lib/brn-select-multiple';\nexport * from './lib/brn-select-placeholder';\nexport * from './lib/brn-select-scroll-down';\nexport * from './lib/brn-select-scroll-up';\nexport * from './lib/brn-select-separator';\nexport * from './lib/brn-select-trigger';\nexport * from './lib/brn-select-value';\nexport * from './lib/brn-select-value-template';\nexport * from './lib/brn-select-values';\nexport * from './lib/brn-select.token';\n\nexport const BrnSelectImports = [\n\tBrnSelect,\n\tBrnSelectContent,\n\tBrnSelectGroup,\n\tBrnSelectItem,\n\tBrnSelectLabel,\n\tBrnSelectList,\n\tBrnSelectMultiple,\n\tBrnSelectPlaceholder,\n\tBrnSelectScrollUp,\n\tBrnSelectScrollDown,\n\tBrnSelectSeparator,\n\tBrnSelectTrigger,\n\tBrnSelectValue,\n\tBrnSelectValueTemplate,\n\tBrnSelectValues,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;MAGa,kBAAkB,GAAG,IAAI,cAAc,CAAyB,oBAAoB;AAE3F,SAAU,oBAAoB,CAAI,UAAkC,EAAA;IACzE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,UAAU,EAAE;AAChE;;MC2Ba,kBAAkB,GAAG,IAAI,cAAc,CAAyB,oBAAoB;AAE3F,SAAU,oBAAoB,CAAI,QAAgC,EAAA;IACvE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,QAAQ,EAAE;AAC9D;AAEA;;AAEG;SACa,mBAAmB,GAAA;AAClC,IAAA,OAAO,MAAM,CAAC,kBAAkB,CAAqB;AACtD;AAUA,SAAS,gBAAgB,GAAA;IACxB,OAAO;AACN,QAAA,kBAAkB,EAAE,CAAC,SAAY,EAAE,aAAmC,KAAK,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC;AAC9G,QAAA,YAAY,EAAE,SAAS;KACvB;AACF;AAEA,MAAM,oBAAoB,GAAG,IAAI,cAAc,CAA2B,iBAAiB,CAAC;AAEtF,SAAU,sBAAsB,CAAI,MAAmC,EAAA;AAC5E,IAAA,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,EAAE,GAAG,gBAAgB,EAAE,EAAE,GAAG,MAAM,EAAE,EAAE;AACzF;SAEgB,qBAAqB,GAAA;AACpC,IAAA,MAAM,cAAc,GAAG,MAAM,CAAC,oBAAoB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IACvE,OAAO,cAAc,GAAI,cAAqC,GAAG,gBAAgB,EAAE;AACpF;;ACtCO,MAAM,yBAAyB,GAAG;AACxC,IAAA,OAAO,EAAE,iBAAiB;AAC1B,IAAA,WAAW,EAAE,UAAU,CAAC,MAAM,SAAS,CAAC;AACxC,IAAA,KAAK,EAAE,IAAI;;MAQC,SAAS,CAAA;AACJ,IAAA,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC5B,aAAa,GAAG,MAAM,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAE3D,OAAO,GAAG,qBAAqB,EAAK;AAErC,IAAA,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE,YAAY;;IAG9C,WAAW,GAAG,MAAM,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;IAGrD,QAAQ,GAAG,KAAK,CAAwB,KAAK,gFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAE5E,IAAA,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,gFAAC;;AAG1C,IAAA,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE;;AAG3C,IAAA,KAAK,GAAG,KAAK,CAAuB,IAAI,4EAAC;IAEzC,QAAQ,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,SAAS,+EAAC;;IAG9E,kBAAkB,GAAG,KAAK,CAA4B,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,oBAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;IAGtF,YAAY,GAAG,KAAK,CAAoC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,cAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;AAEjF,IAAA,aAAa,GAAG,MAAM,CAAgB,IAAI,oFAAC;;AAG5C,IAAA,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE;;IAG9C,KAAK,GAAG,eAAe,CAAmB,kBAAkB,6EAC3E,WAAW,EAAE,IAAI,EAAA,CAChB;;AAGc,IAAA,UAAU,GAAG,IAAI,0BAA0B,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC;;AAGvE,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,KAAK,MAAM,iFAAC;AAExE,IAAA,cAAc,GAAG,MAAM,CAA+B,SAAS,qFAAC;AAEjE,IAAA,WAAW,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,kFAAC;AAE/D,IAAA,SAAS;AACT,IAAA,UAAU;AAEpB,IAAA,WAAA,GAAA;AACC,QAAA,IAAI,CAAC;AACH,aAAA,uBAAuB;AACvB,aAAA,cAAc;AACd,aAAA,aAAa;AACb,aAAA,QAAQ;aACR,aAAa,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC;QAExC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,MAAK;AACvC,YAAA,IAAI,CAAC,UAAU,IAAI;YACnB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AAClC,QAAA,CAAC,CAAC;QAEF,eAAe,CAAC,MAAK;YACpB,MAAM,CACL,MAAK;AACJ,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBAAE;AAExB,gBAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;AAC1B,gBAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;gBAE1B,SAAS,CAAC,MAAK;oBACd,MAAM,KAAK,GACV,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK;0BACzB,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,kBAAkB,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,KAAK,CAAC;0BACxE,CAAC,CAAC;AAEN,oBAAA,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;AACjB,wBAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC;oBACrC;AAAO,yBAAA,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;AAC5B,wBAAA,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE;oBACrC;yBAAO;wBACN,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;oBAClC;AACD,gBAAA,CAAC,CAAC;YACH,CAAC,EACD,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,CAC5B;AACF,QAAA,CAAC,CAAC;IACH;AAEO,IAAA,qBAAqB,CAAC,KAAuB,EAAA;QACnD,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC;IACtC;AAEO,IAAA,kBAAkB,CAAC,KAAoB,EAAA;AAC7C,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;IAC9B;AAEO,IAAA,UAAU,CAAC,SAAY,EAAA;AAC7B,QAAA,OAAO,IAAI,CAAC,kBAAkB,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IAC1D;AAEO,IAAA,MAAM,CAAC,SAAY,EAAA;AACzB,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;AACzB,QAAA,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,KAAK,EAAE;IACb;;IAGO,gBAAgB,GAAA;AACtB,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YAAE;QAExB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,EAAE;QAEjD,IAAI,KAAK,EAAE;AACV,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QACnB;aAAO;YACN,IAAI,CAAC,KAAK,EAAE;QACb;IACD;IAEO,IAAI,GAAA;QACV,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE;YAAE;AAE3C,QAAA,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE;IACzB;IAEQ,KAAK,GAAA;QACZ,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YAAE;AAE5C,QAAA,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE;IAC1B;;AAGO,IAAA,UAAU,CAAC,KAA2B,EAAA;AAC5C,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;IACtB;AAEO,IAAA,gBAAgB,CAAC,EAAkC,EAAA;AACzD,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;IACpB;AAEO,IAAA,iBAAiB,CAAC,EAAW,EAAA;AACnC,QAAA,IAAI,CAAC,UAAU,GAAG,EAAE;IACrB;AAEO,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAC1C,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC;IAC/B;2HAxJY,SAAS,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAT,uBAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,SAAS,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,kBAAA,EAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,aAAA,EAAA,EAAA,SAAA,EAHV,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,yBAAyB,EAAE,mBAAmB,CAAC,SAAS,CAAC,CAAC,gDAuC7C,kBAAkB,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,eAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FApChE,SAAS,EAAA,UAAA,EAAA,CAAA;kBALrB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,aAAa;oBACvB,SAAS,EAAE,CAAC,oBAAoB,CAAA,SAAA,CAAW,EAAE,yBAAyB,EAAE,mBAAmB,CAAA,SAAA,CAAW,CAAC;oBACvG,cAAc,EAAE,CAAC,eAAe,CAAC;AACjC,iBAAA;AAqC0D,SAAA,CAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,kBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MAAA,kBAAkB,CAAA,EAAA,EAAA,GAAE;AAC7E,4BAAA,WAAW,EAAE,IAAI;AACjB,yBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;AC/EF;AACA;AACA,MAAM,cAAc,GAAG,CAAC;MASX,gBAAgB,CAAA;IACX,OAAO,GAAG,mBAAmB,EAAE;AAE7B,IAAA,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY;AAE1C,IAAA,WAAW,GAAG,MAAM,EAAC,UAAuB,EAAC;AAE7C,IAAA,SAAS,GAAG,MAAM,CAAC,KAAK,gFAAC;AAE1B,IAAA,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE;AAEzC,IAAA,WAAW,GAAG,MAAM,CAAC,KAAK,kFAAC;AAE5B,IAAA,cAAc,GAAG,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE;AAE9D,IAAA,WAAA,GAAA;QACC,eAAe,CAAC,MAAK;YACpB,IAAI,CAAC,YAAY,EAAE;AACpB,QAAA,CAAC,CAAC;IACH;IAEO,YAAY,GAAA;QAClB,IAAI,CAAC,YAAY,EAAE;IACpB;IAEQ,YAAY,GAAA;AACnB,QAAA,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa;QAEhF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC;AAEjC,QAAA,MAAM,SAAS,GAAG,YAAY,GAAG,YAAY;AAC7C,QAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IACvD;AAEO,IAAA,UAAU,CAAC,IAAgB,EAAA;AACjC,QAAA,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC;AACvC,YAAA,GAAG,EAAE,cAAc;AACnB,YAAA,QAAQ,EAAE,MAAM;AAChB,SAAA,CAAC;AAEF,QAAA,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa;AAChF,QAAA,MAAM,SAAS,GAAG,YAAY,GAAG,YAAY;QAE7C,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,SAAS,EAAE;AACtC,YAAA,IAAI,EAAE;QACP;IACD;AAEO,IAAA,QAAQ,CAAC,IAAgB,EAAA;AAC/B,QAAA,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC;YACvC,GAAG,EAAE,CAAC,cAAc;AACpB,YAAA,QAAQ,EAAE,MAAM;AAChB,SAAA,CAAC;QAEF,IAAI,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,SAAS,KAAK,CAAC,EAAE;AACnD,YAAA,IAAI,EAAE;QACP;IACD;2HAzDY,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,6BAAA,EAAA,gBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAP5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,IAAI,EAAE;AACL,wBAAA,+BAA+B,EAAE,gBAAgB;AACjD,wBAAA,UAAU,EAAE,gBAAgB;AAC5B,qBAAA;AACD,iBAAA;;;MCLY,cAAc,CAAA;AAClB,IAAA,OAAO,GAAG,GAAG,CAAC;IAEN,EAAE,GAAG,KAAK,CAAS,CAAA,iBAAA,EAAoB,EAAE,cAAc,CAAC,GAAG,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;2HAHlE,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAN1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,IAAI,EAAE;AACL,wBAAA,MAAM,EAAE,MAAM;AACd,qBAAA;AACD,iBAAA;;;MCGY,cAAc,CAAA;AACT,IAAA,YAAY,GAAG,YAAY,CAAC,cAAc,mFAAC;AAEzC,IAAA,WAAW,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,IAAI,IAAI,kFAAC;2HAHtE,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAd,uBAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,0NACmB,cAAc,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAD/C,cAAc,EAAA,UAAA,EAAA,CAAA;kBAP1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,IAAI,EAAE;AACL,wBAAA,IAAI,EAAE,OAAO;AACb,wBAAA,wBAAwB,EAAE,eAAe;AACzC,qBAAA;AACD,iBAAA;iGAE6C,cAAc,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;MCY/C,aAAa,CAAA;AACjB,IAAA,OAAO,GAAG,GAAG,CAAC;AAEL,IAAA,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC;AAE/B,IAAA,WAAW,GAAG,MAAM,CAA0B,UAAU,CAAC;;IAGzD,OAAO,GAAG,mBAAmB,EAAK;;IAGnC,EAAE,GAAG,KAAK,CAAS,CAAA,gBAAA,EAAmB,EAAE,aAAa,CAAC,GAAG,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;AAG5D,IAAA,KAAK,GAAG,KAAK,CAAC,QAAQ,2EAAK;;AAE3B,IAAA,SAAS,GAAG,KAAK,CAAwB,KAAK,EAAA,EAAA,IAAA,SAAA,GAAA,EAAA,SAAA,EAAA,WAAA,EAAA,8BAAA,EAAA,CAAA,EAC7D,KAAK,EAAE,UAAU;QACjB,SAAS,EAAE,gBAAgB,EAAA,CAC1B;;AAGF,IAAA,IAAW,QAAQ,GAAA;AAClB,QAAA,OAAO,IAAI,CAAC,SAAS,EAAE;IACxB;;AAGgB,IAAA,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,6EAAC;AAE3D,IAAA,YAAY,GAAG,MAAM,CAAC,KAAK,mFAAC;IAExC,eAAe,GAAA;AACrB,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC;;AAG3B,QAAA,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;AACtC,YAAA,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QACpE;IACD;IAEO,iBAAiB,GAAA;AACvB,QAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC;IAC7B;IAEO,QAAQ,GAAA;AACd,QAAA,OAAO,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;IACnE;IAEU,MAAM,GAAA;AACf,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE;YACrB;QACD;QAEA,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC;QAC3C,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IAClC;IAEU,QAAQ,GAAA;AACjB,QAAA,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE;YACrB;QACD;QAEA,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC;IAC5C;2HA/DY,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAb,uBAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,aAAa,8wBAbd,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAapC,aAAa,EAAA,UAAA,EAAA,CAAA;kBAfzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,SAAS,EAAE,CAAC,oBAAoB,CAAA,aAAA,CAAe,CAAC;AAChD,oBAAA,IAAI,EAAE;AACL,wBAAA,IAAI,EAAE,QAAQ;AACd,wBAAA,MAAM,EAAE,MAAM;AACd,wBAAA,yBAAyB,EAAE,4BAA4B;AACvD,wBAAA,mBAAmB,EAAE,SAAS;AAC9B,wBAAA,sBAAsB,EAAE,UAAU;AAClC,wBAAA,sBAAsB,EAAE,aAAa;AACrC,wBAAA,sBAAsB,EAAE,yBAAyB;AACjD,wBAAA,SAAS,EAAE,UAAU;AACrB,wBAAA,cAAc,EAAE,YAAY;AAC5B,qBAAA;AACD,iBAAA;;;MCdY,aAAa,CAAA;2HAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,SAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBANzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,IAAI,EAAE;AACL,wBAAA,IAAI,EAAE,SAAS;AACf,qBAAA;AACD,iBAAA;;;AC0BM,MAAM,kCAAkC,GAAG;AACjD,IAAA,OAAO,EAAE,iBAAiB;AAC1B,IAAA,WAAW,EAAE,UAAU,CAAC,MAAM,iBAAiB,CAAC;AAChD,IAAA,KAAK,EAAE,IAAI;;MAYC,iBAAiB,CAAA;AACZ,IAAA,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC5B,aAAa,GAAG,MAAM,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAE3D,OAAO,GAAG,qBAAqB,EAAK;AAErC,IAAA,YAAY,GAAG,IAAI,CAAC,aAAa,EAAE,YAAY;;IAG9C,WAAW,GAAG,MAAM,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;IAGrD,QAAQ,GAAG,KAAK,CAAwB,KAAK,gFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;AAE5E,IAAA,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,gFAAC;;AAG1C,IAAA,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE;;AAG3C,IAAA,KAAK,GAAG,KAAK,CAAyB,IAAI,4EAAC;AAE3C,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAK;AACxC,QAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;AAC1B,QAAA,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS;AAAE,YAAA,OAAO,KAAK;AACvD,QAAA,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC;AACxB,IAAA,CAAC,+EAAC;;IAGc,kBAAkB,GAAG,KAAK,CAA4B,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,oBAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;IAGtF,YAAY,GAAG,KAAK,CAAoC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,cAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;AAEjF,IAAA,aAAa,GAAG,MAAM,CAAgB,IAAI,oFAAC;;AAG5C,IAAA,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE;;IAG9C,KAAK,GAAG,eAAe,CAAmB,kBAAkB,6EAC3E,WAAW,EAAE,IAAI,EAAA,CAChB;;AAGc,IAAA,UAAU,GAAG,IAAI,0BAA0B,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC;;AAGvE,IAAA,UAAU,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,KAAK,MAAM,iFAAC;AAExE,IAAA,cAAc,GAAG,MAAM,CAA+B,SAAS,qFAAC;AAEjE,IAAA,WAAW,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,EAAE,EAAE,EAAE,kFAAC;AAE/D,IAAA,SAAS;AACT,IAAA,UAAU;AAEpB,IAAA,WAAA,GAAA;AACC,QAAA,IAAI,CAAC;AACH,aAAA,uBAAuB;AACvB,aAAA,cAAc;AACd,aAAA,aAAa;AACb,aAAA,QAAQ;aACR,aAAa,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,QAAQ,CAAC;QAExC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC,MAAK;AACvC,YAAA,IAAI,CAAC,UAAU,IAAI;YACnB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;AAClC,QAAA,CAAC,CAAC;QAEF,eAAe,CAAC,MAAK;YACpB,MAAM,CACL,MAAK;AACJ,gBAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;oBAAE;AAExB,gBAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;AAC1B,gBAAA,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE;AAC3B,gBAAA,MAAM,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI;gBAE3D,SAAS,CAAC,MAAK;oBACd,MAAM,KAAK,GACV,SAAS,KAAK,IAAI,IAAI,SAAS,KAAK;0BACjC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,kBAAkB,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC;0BAC5E,CAAC,CAAC;AAEN,oBAAA,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;AACjB,wBAAA,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC;oBACrC;AAAO,yBAAA,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;AAC5B,wBAAA,IAAI,CAAC,UAAU,CAAC,kBAAkB,EAAE;oBACrC;yBAAO;wBACN,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;oBAClC;AACD,gBAAA,CAAC,CAAC;YACH,CAAC,EACD,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,EAAE,CAC5B;AACF,QAAA,CAAC,CAAC;IACH;AAEO,IAAA,qBAAqB,CAAC,KAAuB,EAAA;QACnD,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC;IACtC;AAEO,IAAA,kBAAkB,CAAC,KAAoB,EAAA;AAC7C,QAAA,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC;IAC9B;AAEO,IAAA,UAAU,CAAC,SAAY,EAAA;QAC7B,OAAO,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,kBAAkB,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK;IACnF;AAEO,IAAA,MAAM,CAAC,SAAY,EAAA;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE;AAEnC,QAAA,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;AAC/B,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;QACvF;aAAO;AACN,YAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,EAAE,SAAS,CAAC,CAAC;QACzC;QAEA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;IACrC;;IAGO,gBAAgB,GAAA;AACtB,QAAA,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YAAE;QAExB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,EAAE;QAEjD,IAAI,KAAK,EAAE;AACV,YAAA,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QACnB;aAAO;YACN,IAAI,CAAC,KAAK,EAAE;QACb;IACD;IAEO,IAAI,GAAA;QACV,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE;YAAE;AAE3C,QAAA,IAAI,CAAC,WAAW,EAAE,IAAI,EAAE;IACzB;IAEQ,KAAK,GAAA;QACZ,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YAAE;AAE5C,QAAA,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE;IAC1B;;AAGO,IAAA,UAAU,CAAC,KAA6B,EAAA;AAC9C,QAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;IACtB;AAEO,IAAA,gBAAgB,CAAC,EAAoC,EAAA;AAC3D,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE;IACpB;AAEO,IAAA,iBAAiB,CAAC,EAAW,EAAA;AACnC,QAAA,IAAI,CAAC,UAAU,GAAG,EAAE;IACrB;AAEO,IAAA,gBAAgB,CAAC,UAAmB,EAAA;AAC1C,QAAA,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC;IAC/B;2HAnKY,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAjB,uBAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,KAAA,EAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,kBAAA,EAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,KAAA,EAAA,aAAA,EAAA,EAAA,SAAA,EAPlB;YACV,oBAAoB,CAAC,iBAAiB,CAAC;YACvC,kCAAkC;YAClC,mBAAmB,CAAC,iBAAiB,CAAC;AACtC,SAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,OAAA,EAAA,SAAA,EA2CyD,kBAAkB,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,eAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAxChE,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAT7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,SAAS,EAAE;AACV,wBAAA,oBAAoB,CAAA,iBAAA,CAAmB;wBACvC,kCAAkC;AAClC,wBAAA,mBAAmB,CAAA,iBAAA,CAAmB;AACtC,qBAAA;oBACD,cAAc,EAAE,CAAC,eAAe,CAAC;AACjC,iBAAA;AAyC0D,SAAA,CAAA,EAAA,cAAA,EAAA,MAAA,EAAA,EAAA,cAAA,EAAA,EAAA,QAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,UAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,OAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,CAAA,MAAA,EAAA,IAAA,EAAA,CAAA,aAAA,CAAA,EAAA,CAAA,EAAA,kBAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,cAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,UAAA,CAAA,MAAA,kBAAkB,CAAA,EAAA,EAAA,GAAE;AAC7E,4BAAA,WAAW,EAAE,IAAI;AACjB,yBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,EAAA,CAAA;;MCjFW,oBAAoB,CAAA;IACf,OAAO,GAAG,mBAAmB,EAAE;AAE7B,IAAA,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ;2HAHxC,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAApB,oBAAoB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,2BAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBANhC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,wBAAwB;AAClC,oBAAA,IAAI,EAAE;AACL,wBAAA,oBAAoB,EAAE,yBAAyB;AAC/C,qBAAA;AACD,iBAAA;;;MCMY,mBAAmB,CAAA;AACd,IAAA,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC;AACxB,IAAA,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AAChC,IAAA,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAEvC,IAAA,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc;AAEtD,IAAA,WAAW,GAAG,IAAI,OAAO,EAAW;IAE3C,WAAW,GAAA;AACpB,QAAA,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,CAAC;;QAGnE,QAAQ,CAAC,EAAE;AACT,aAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;aAC9F,SAAS,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACrF;2HAhBY,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAnB,mBAAmB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,YAAA,EAAA,eAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,kCAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAnB,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAR/B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,IAAI,EAAE;AACL,wBAAA,aAAa,EAAE,MAAM;AACrB,wBAAA,oBAAoB,EAAE,gCAAgC;AACtD,wBAAA,cAAc,EAAE,eAAe;AAC/B,qBAAA;AACD,iBAAA;;;MCCY,iBAAiB,CAAA;AACZ,IAAA,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC;AACxB,IAAA,WAAW,GAAG,MAAM,CAAC,UAAU,CAAC;AAChC,IAAA,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAEvC,IAAA,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY;AAElD,IAAA,WAAW,GAAG,IAAI,OAAO,EAAW;IAE3C,SAAS,GAAA;AAClB,QAAA,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,CAAC;;QAGnE,QAAQ,CAAC,EAAE;AACT,aAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;aAC9F,SAAS,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACnF;2HAhBY,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAjB,iBAAiB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,aAAA,EAAA,MAAA,EAAA,EAAA,SAAA,EAAA,EAAA,YAAA,EAAA,aAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,gCAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAR7B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,qBAAqB;AAC/B,oBAAA,IAAI,EAAE;AACL,wBAAA,aAAa,EAAE,MAAM;AACrB,wBAAA,oBAAoB,EAAE,8BAA8B;AACpD,wBAAA,cAAc,EAAE,aAAa;AAC7B,qBAAA;AACD,iBAAA;;;MCHY,kBAAkB,CAAA;AACd,IAAA,WAAW,GAAG,KAAK,CAA4B,YAAY,kFAAC;2HADhE,kBAAkB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAlB,kBAAkB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,WAAA,EAAA,EAAA,UAAA,EAAA,EAAA,uBAAA,EAAA,eAAA,EAAA,uBAAA,EAAA,eAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAlB,kBAAkB,EAAA,UAAA,EAAA,CAAA;kBAR9B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,IAAI,EAAE;AACL,wBAAA,IAAI,EAAE,WAAW;AACjB,wBAAA,yBAAyB,EAAE,eAAe;AAC1C,wBAAA,yBAAyB,EAAE,eAAe;AAC1C,qBAAA;AACD,iBAAA;;;MCeY,gBAAgB,CAAA;AACpB,IAAA,OAAO,GAAG,GAAG,CAAC;IAEL,KAAK,GAAG,MAAM,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC1C,UAAU,GAAG,MAAM,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAElD,OAAO,GAAG,mBAAmB,EAAE;IAE/B,YAAY,GAAG,iBAAiB,EAAE;IAEnC,EAAE,GAAG,KAAK,CAAS,CAAA,mBAAA,EAAsB,EAAE,gBAAgB,CAAC,GAAG,CAAA,CAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,IAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;IAGlE,YAAY,GAAG,KAAK,CAAwB,KAAK,oFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;;AAGhF,IAAA,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU;AAErC,IAAA,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa;AAEtC,IAAA,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,qFAAC;AAEzD,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,EAAE,OAAO,+EAAC;AAClE,IAAA,QAAQ,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,EAAE,OAAO,+EAAC;AAClE,IAAA,MAAM,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,EAAE,KAAK,6EAAC;IAC9D,eAAe,GAAG,QAAQ,CAC5C,MAAM,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE,YAAY,IAAI,EAAE,cAAc,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAC3E;AAED,IAAA,WAAA,GAAA;AACC,QAAA,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC;AAExC,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE;AACpB,YAAA,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC;QAC9D;QAEA,MAAM,CAAC,MAAK;AACX,YAAA,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE;YAChC,IAAI,IAAI,EAAE;gBACT,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC;AAC3C,gBAAA,IAAI,CAAC,UAAU,EAAE,cAAc,EAAE;YAClC;AACD,QAAA,CAAC,CAAC;IACH;IAEU,IAAI,GAAA;AACb,QAAA,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE;IACxB;;AAGU,IAAA,SAAS,CAAC,KAAoB,EAAA;AACvC,QAAA,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,EAAE;;YAE1B,KAAK,CAAC,cAAc,EAAE;AAEtB,YAAA,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;QAChC;QAEA,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;AAC9C,YAAA,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;YAC/B;QACD;AAEA,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE;AACvB,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,KAAK,EAAE;AACxB,gBAAA,IAAI,CAAC,OAAO,CAAC,gBAAgB,EAAE;YAChC;QACD;aAAO;AACN,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,WAAW,IAAI,KAAK,CAAC,GAAG,KAAK,SAAS,EAAE;AAClF,gBAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;YACpB;QACD;QAEA,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC;IACzC;2HA1EY,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,MAAA,EAAA,UAAA,EAAA,eAAA,EAAA,SAAA,EAAA,MAAA,EAAA,QAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,mBAAA,EAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,oBAAA,EAAA,eAAA,EAAA,uBAAA,EAAA,gCAAA,EAAA,UAAA,EAAA,aAAA,EAAA,mBAAA,EAAA,gCAAA,EAAA,iBAAA,EAAA,6BAAA,EAAA,mBAAA,EAAA,gCAAA,EAAA,mCAAA,EAAA,uCAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAlB5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,0BAA0B;AACpC,oBAAA,IAAI,EAAE;AACL,wBAAA,IAAI,EAAE,UAAU;AAChB,wBAAA,eAAe,EAAE,SAAS;AAC1B,wBAAA,IAAI,EAAE,QAAQ;AACd,wBAAA,MAAM,EAAE,MAAM;AACd,wBAAA,sBAAsB,EAAE,eAAe;AACvC,wBAAA,yBAAyB,EAAE,8BAA8B;AACzD,wBAAA,YAAY,EAAE,aAAa;AAC3B,wBAAA,qBAAqB,EAAE,8BAA8B;AACrD,wBAAA,mBAAmB,EAAE,2BAA2B;AAChD,wBAAA,qBAAqB,EAAE,8BAA8B;AACrD,wBAAA,qCAAqC,EAAE,qCAAqC;AAC5E,wBAAA,SAAS,EAAE,QAAQ;AACnB,wBAAA,WAAW,EAAE,mBAAmB;AAChC,qBAAA;AACD,iBAAA;;;MCXY,cAAc,CAAA;IACT,OAAO,GAAG,mBAAmB,EAAK;AAEnC,IAAA,WAAW,GAAG,KAAK,CAAS,EAAE,kFAAC;AAE5B,IAAA,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,qFAAC;IAE5D,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,6EAAC;AAErE,IAAA,MAAM,GAAG,QAAQ,CAAC,MAAK;AACzC,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ;AAC3B,cAAE,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;AACpE,cAAE,IAAI,CAAC,WAAW,EAAE;AACtB,IAAA,CAAC,6EAAC;2HAbU,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAd,cAAc,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,uBAAA,EAAA,gCAAA,EAAA,kBAAA,EAAA,wBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAR1B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,IAAI,EAAE;AACL,wBAAA,yBAAyB,EAAE,8BAA8B;AACzD,wBAAA,oBAAoB,EAAE,sBAAsB;AAC5C,wBAAA,eAAe,EAAE,UAAU;AAC3B,qBAAA;AACD,iBAAA;;;MCLY,sBAAsB,CAAA;AACjB,IAAA,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC;AAClC,IAAA,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,CAAC;IAE5C,OAAO,GAAG,mBAAmB,EAAK;AAEhC,IAAA,MAAM,GAAG,QAAQ,CAAW,MAAK;QACnD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;QAElC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;AAC1C,YAAA,OAAO,IAAI;QACZ;AAEA,QAAA,OAAO,KAAU;AAClB,IAAA,CAAC,6EAAC;AAEF,IAAA,WAAA,GAAA;QACC,MAAM,CAAC,MAAK;AACX,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE;YAC3B,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;AAC1C,gBAAA,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE;gBAC9B,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,EAAE;AAC5D,oBAAA,SAAS,EAAE,KAAK;AAChB,iBAAA,CAAC;YACH;iBAAO;AACN,gBAAA,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE;YAC/B;AACD,QAAA,CAAC,CAAC;IACH;2HA5BY,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,0BAA0B;AACpC,iBAAA;;;MCCY,eAAe,CAAA;AACV,IAAA,YAAY,GAAG,MAAM,EAAC,WAAc,EAAC;AACrC,IAAA,iBAAiB,GAAG,MAAM,CAAC,gBAAgB,CAAC;IAE5C,OAAO,GAAG,mBAAmB,EAAK;AAEhC,IAAA,OAAO,GAAG,QAAQ,CAAyB,MAAK;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;QAEnC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,EAAE;AAC5C,YAAA,OAAO,IAAI;QACZ;AAEA,QAAA,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC;AACjD,IAAA,CAAC,8EAAC;AAEF,IAAA,WAAA,GAAA;QACC,MAAM,CAAC,MAAK;AACX,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE;AAC7B,YAAA,IAAI,MAAM,EAAE,MAAM,EAAE;AACnB,gBAAA,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE;gBAC9B,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,EAAE;AAC5D,oBAAA,SAAS,EAAE,MAAM;AACjB,iBAAA,CAAC;YACH;iBAAO;AACN,gBAAA,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE;YAC/B;AACD,QAAA,CAAC,CAAC;IACH;2HA5BY,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,iBAAA;;;AC6BM,MAAM,gBAAgB,GAAG;IAC/B,SAAS;IACT,gBAAgB;IAChB,cAAc;IACd,aAAa;IACb,cAAc;IACd,aAAa;IACb,iBAAiB;IACjB,oBAAoB;IACpB,iBAAiB;IACjB,mBAAmB;IACnB,kBAAkB;IAClB,gBAAgB;IAChB,cAAc;IACd,sBAAsB;IACtB,eAAe;;;ACjDhB;;AAEG;;;;"}
|
|
@@ -16,15 +16,15 @@ function injectBrnSeparatorConfig() {
|
|
|
16
16
|
class BrnSeparator {
|
|
17
17
|
_config = injectBrnSeparatorConfig();
|
|
18
18
|
/** Orientation of the separator. */
|
|
19
|
-
orientation = input(this._config.orientation, ...(ngDevMode ? [{ debugName: "orientation" }] : []));
|
|
19
|
+
orientation = input(this._config.orientation, ...(ngDevMode ? [{ debugName: "orientation" }] : /* istanbul ignore next */ []));
|
|
20
20
|
/** Whether the separator is decorative. */
|
|
21
|
-
decorative = input(true, ...(ngDevMode ?
|
|
22
|
-
_role = computed(() => (this.decorative() ? 'none' : 'separator'), ...(ngDevMode ? [{ debugName: "_role" }] : []));
|
|
23
|
-
_ariaOrientation = computed(() => this.decorative() ? undefined : this.orientation() === 'vertical' ? 'vertical' : undefined, ...(ngDevMode ? [{ debugName: "_ariaOrientation" }] : []));
|
|
24
|
-
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
25
|
-
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
21
|
+
decorative = input(true, { ...(ngDevMode ? { debugName: "decorative" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
|
|
22
|
+
_role = computed(() => (this.decorative() ? 'none' : 'separator'), ...(ngDevMode ? [{ debugName: "_role" }] : /* istanbul ignore next */ []));
|
|
23
|
+
_ariaOrientation = computed(() => this.decorative() ? undefined : this.orientation() === 'vertical' ? 'vertical' : undefined, ...(ngDevMode ? [{ debugName: "_ariaOrientation" }] : /* istanbul ignore next */ []));
|
|
24
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSeparator, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
25
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.16", type: BrnSeparator, isStandalone: true, selector: "[brnSeparator],brn-separator", inputs: { orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null }, decorative: { classPropertyName: "decorative", publicName: "decorative", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "attr.role": "_role()", "attr.aria-orientation": "_ariaOrientation()", "attr.data-orientation": "orientation()" } }, ngImport: i0 });
|
|
26
26
|
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSeparator, decorators: [{
|
|
28
28
|
type: Directive,
|
|
29
29
|
args: [{
|
|
30
30
|
selector: '[brnSeparator],brn-separator',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spartan-ng-brain-separator.mjs","sources":["../../../../libs/brain/separator/src/lib/brn-separator.token.ts","../../../../libs/brain/separator/src/lib/brn-separator.ts","../../../../libs/brain/separator/src/index.ts","../../../../libs/brain/separator/src/spartan-ng-brain-separator.ts"],"sourcesContent":["// brn-separator.token.ts\nimport { InjectionToken, type ValueProvider, inject } from '@angular/core';\n\nexport type SeparatorOrientation = 'horizontal' | 'vertical';\n\nexport interface BrnSeparatorConfig {\n\torientation: SeparatorOrientation;\n}\n\nconst defaultConfig: BrnSeparatorConfig = {\n\torientation: 'horizontal',\n};\n\nconst BrnSeparatorConfigToken = new InjectionToken<BrnSeparatorConfig>('BrnSeparatorConfig');\n\nexport function provideBrnSeparatorConfig(config: Partial<BrnSeparatorConfig>): ValueProvider {\n\treturn { provide: BrnSeparatorConfigToken, useValue: { ...defaultConfig, ...config } };\n}\n\nexport function injectBrnSeparatorConfig(): BrnSeparatorConfig {\n\treturn inject(BrnSeparatorConfigToken, { optional: true }) ?? defaultConfig;\n}\n","import type { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, computed, Directive, input } from '@angular/core';\nimport { injectBrnSeparatorConfig, SeparatorOrientation } from './brn-separator.token';\n\n@Directive({\n\tselector: '[brnSeparator],brn-separator',\n\thost: {\n\t\t'[attr.role]': '_role()',\n\t\t'[attr.aria-orientation]': '_ariaOrientation()',\n\t\t'[attr.data-orientation]': 'orientation()',\n\t},\n})\nexport class BrnSeparator {\n\tprivate readonly _config = injectBrnSeparatorConfig();\n\n\t/** Orientation of the separator. */\n\tpublic readonly orientation = input<SeparatorOrientation>(this._config.orientation);\n\t/** Whether the separator is decorative. */\n\tpublic readonly decorative = input<boolean, BooleanInput>(true, { transform: booleanAttribute });\n\n\tprotected readonly _role = computed(() => (this.decorative() ? 'none' : 'separator'));\n\tprotected readonly _ariaOrientation = computed(() =>\n\t\tthis.decorative() ? undefined : this.orientation() === 'vertical' ? 'vertical' : undefined,\n\t);\n}\n","import { BrnSeparator } from './lib/brn-separator';\n\nexport * from './lib/brn-separator';\nexport * from './lib/brn-separator.token';\n\nexport const BrnSeparatorImports = [BrnSeparator] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAAA;AASA,MAAM,aAAa,GAAuB;AACzC,IAAA,WAAW,EAAE,YAAY;CACzB;AAED,MAAM,uBAAuB,GAAG,IAAI,cAAc,CAAqB,oBAAoB,CAAC;AAEtF,SAAU,yBAAyB,CAAC,MAAmC,EAAA;AAC5E,IAAA,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,EAAE,GAAG,aAAa,EAAE,GAAG,MAAM,EAAE,EAAE;AACvF;SAEgB,wBAAwB,GAAA;AACvC,IAAA,OAAO,MAAM,CAAC,uBAAuB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,aAAa;AAC5E;;MCTa,YAAY,CAAA;IACP,OAAO,GAAG,wBAAwB,EAAE;;IAGrC,WAAW,GAAG,KAAK,CAAuB,IAAI,CAAC,OAAO,CAAC,WAAW,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,aAAA,EAAA,CAAA,
|
|
1
|
+
{"version":3,"file":"spartan-ng-brain-separator.mjs","sources":["../../../../libs/brain/separator/src/lib/brn-separator.token.ts","../../../../libs/brain/separator/src/lib/brn-separator.ts","../../../../libs/brain/separator/src/index.ts","../../../../libs/brain/separator/src/spartan-ng-brain-separator.ts"],"sourcesContent":["// brn-separator.token.ts\nimport { InjectionToken, type ValueProvider, inject } from '@angular/core';\n\nexport type SeparatorOrientation = 'horizontal' | 'vertical';\n\nexport interface BrnSeparatorConfig {\n\torientation: SeparatorOrientation;\n}\n\nconst defaultConfig: BrnSeparatorConfig = {\n\torientation: 'horizontal',\n};\n\nconst BrnSeparatorConfigToken = new InjectionToken<BrnSeparatorConfig>('BrnSeparatorConfig');\n\nexport function provideBrnSeparatorConfig(config: Partial<BrnSeparatorConfig>): ValueProvider {\n\treturn { provide: BrnSeparatorConfigToken, useValue: { ...defaultConfig, ...config } };\n}\n\nexport function injectBrnSeparatorConfig(): BrnSeparatorConfig {\n\treturn inject(BrnSeparatorConfigToken, { optional: true }) ?? defaultConfig;\n}\n","import type { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, computed, Directive, input } from '@angular/core';\nimport { injectBrnSeparatorConfig, SeparatorOrientation } from './brn-separator.token';\n\n@Directive({\n\tselector: '[brnSeparator],brn-separator',\n\thost: {\n\t\t'[attr.role]': '_role()',\n\t\t'[attr.aria-orientation]': '_ariaOrientation()',\n\t\t'[attr.data-orientation]': 'orientation()',\n\t},\n})\nexport class BrnSeparator {\n\tprivate readonly _config = injectBrnSeparatorConfig();\n\n\t/** Orientation of the separator. */\n\tpublic readonly orientation = input<SeparatorOrientation>(this._config.orientation);\n\t/** Whether the separator is decorative. */\n\tpublic readonly decorative = input<boolean, BooleanInput>(true, { transform: booleanAttribute });\n\n\tprotected readonly _role = computed(() => (this.decorative() ? 'none' : 'separator'));\n\tprotected readonly _ariaOrientation = computed(() =>\n\t\tthis.decorative() ? undefined : this.orientation() === 'vertical' ? 'vertical' : undefined,\n\t);\n}\n","import { BrnSeparator } from './lib/brn-separator';\n\nexport * from './lib/brn-separator';\nexport * from './lib/brn-separator.token';\n\nexport const BrnSeparatorImports = [BrnSeparator] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;AAAA;AASA,MAAM,aAAa,GAAuB;AACzC,IAAA,WAAW,EAAE,YAAY;CACzB;AAED,MAAM,uBAAuB,GAAG,IAAI,cAAc,CAAqB,oBAAoB,CAAC;AAEtF,SAAU,yBAAyB,CAAC,MAAmC,EAAA;AAC5E,IAAA,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,QAAQ,EAAE,EAAE,GAAG,aAAa,EAAE,GAAG,MAAM,EAAE,EAAE;AACvF;SAEgB,wBAAwB,GAAA;AACvC,IAAA,OAAO,MAAM,CAAC,uBAAuB,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,IAAI,aAAa;AAC5E;;MCTa,YAAY,CAAA;IACP,OAAO,GAAG,wBAAwB,EAAE;;IAGrC,WAAW,GAAG,KAAK,CAAuB,IAAI,CAAC,OAAO,CAAC,WAAW,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,aAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;;IAEnE,UAAU,GAAG,KAAK,CAAwB,IAAI,kFAAI,SAAS,EAAE,gBAAgB,EAAA,CAAG;IAE7E,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE,GAAG,MAAM,GAAG,WAAW,CAAC,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,OAAA,EAAA,CAAA,8BAAA,EAAA,CAAA,CAAC;AAClE,IAAA,gBAAgB,GAAG,QAAQ,CAAC,MAC9C,IAAI,CAAC,UAAU,EAAE,GAAG,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,KAAK,UAAU,GAAG,UAAU,GAAG,SAAS,uFAC1F;2HAXW,YAAY,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;+GAAZ,YAAY,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,SAAA,EAAA,uBAAA,EAAA,oBAAA,EAAA,uBAAA,EAAA,eAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAAZ,YAAY,EAAA,UAAA,EAAA,CAAA;kBARxB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,QAAQ,EAAE,8BAA8B;AACxC,oBAAA,IAAI,EAAE;AACL,wBAAA,aAAa,EAAE,SAAS;AACxB,wBAAA,yBAAyB,EAAE,oBAAoB;AAC/C,wBAAA,yBAAyB,EAAE,eAAe;AAC1C,qBAAA;AACD,iBAAA;;;ACNM,MAAM,mBAAmB,GAAG,CAAC,YAAY;;ACLhD;;AAEG;;;;"}
|
|
@@ -6,8 +6,8 @@ import { provideExposesStateProviderExisting, provideExposedSideProviderExisting
|
|
|
6
6
|
|
|
7
7
|
class BrnSheet extends BrnDialog {
|
|
8
8
|
/** Specifies the side of the screen where the sheet will appear. */
|
|
9
|
-
side = input('top', ...(ngDevMode ? [{ debugName: "side" }] : []));
|
|
10
|
-
sideState = linkedSignal(() => this.side(), ...(ngDevMode ? [{ debugName: "sideState" }] : []));
|
|
9
|
+
side = input('top', ...(ngDevMode ? [{ debugName: "side" }] : /* istanbul ignore next */ []));
|
|
10
|
+
sideState = linkedSignal(() => this.side(), ...(ngDevMode ? [{ debugName: "sideState" }] : /* istanbul ignore next */ []));
|
|
11
11
|
constructor() {
|
|
12
12
|
super();
|
|
13
13
|
effect(() => {
|
|
@@ -28,15 +28,15 @@ class BrnSheet extends BrnDialog {
|
|
|
28
28
|
});
|
|
29
29
|
});
|
|
30
30
|
}
|
|
31
|
-
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
32
|
-
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
31
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheet, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
32
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.16", type: BrnSheet, isStandalone: true, selector: "[brnSheet],brn-sheet", inputs: { side: { classPropertyName: "side", publicName: "side", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
|
|
33
33
|
{
|
|
34
34
|
provide: BrnDialog,
|
|
35
35
|
useExisting: forwardRef((() => BrnSheet)),
|
|
36
36
|
},
|
|
37
37
|
], exportAs: ["brnSheet"], usesInheritance: true, ngImport: i0 });
|
|
38
38
|
}
|
|
39
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheet, decorators: [{
|
|
40
40
|
type: Directive,
|
|
41
41
|
args: [{
|
|
42
42
|
selector: '[brnSheet],brn-sheet',
|
|
@@ -51,10 +51,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
51
51
|
}], ctorParameters: () => [], propDecorators: { side: [{ type: i0.Input, args: [{ isSignal: true, alias: "side", required: false }] }] } });
|
|
52
52
|
|
|
53
53
|
class BrnSheetClose extends BrnDialogClose {
|
|
54
|
-
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
55
|
-
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
54
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheetClose, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
55
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.16", type: BrnSheetClose, isStandalone: true, selector: "button[brnSheetClose]", usesInheritance: true, ngImport: i0 });
|
|
56
56
|
}
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
57
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheetClose, decorators: [{
|
|
58
58
|
type: Directive,
|
|
59
59
|
args: [{
|
|
60
60
|
selector: 'button[brnSheetClose]',
|
|
@@ -63,13 +63,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
63
63
|
|
|
64
64
|
class BrnSheetContent extends BrnDialogContent {
|
|
65
65
|
side = inject(BrnSheet).sideState;
|
|
66
|
-
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
67
|
-
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
66
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheetContent, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
67
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.16", type: BrnSheetContent, isStandalone: true, selector: "[brnSheetContent]", providers: [
|
|
68
68
|
provideExposesStateProviderExisting((() => BrnSheetContent)),
|
|
69
69
|
provideExposedSideProviderExisting((() => BrnSheetContent)),
|
|
70
70
|
], usesInheritance: true, ngImport: i0 });
|
|
71
71
|
}
|
|
72
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
72
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheetContent, decorators: [{
|
|
73
73
|
type: Directive,
|
|
74
74
|
args: [{
|
|
75
75
|
selector: '[brnSheetContent]',
|
|
@@ -81,10 +81,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
81
81
|
}] });
|
|
82
82
|
|
|
83
83
|
class BrnSheetDescription {
|
|
84
|
-
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
85
|
-
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
84
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheetDescription, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
85
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.16", type: BrnSheetDescription, isStandalone: true, selector: "[brnSheetDescription]", hostDirectives: [{ directive: i1.BrnDialogDescription }], ngImport: i0 });
|
|
86
86
|
}
|
|
87
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
87
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheetDescription, decorators: [{
|
|
88
88
|
type: Directive,
|
|
89
89
|
args: [{
|
|
90
90
|
selector: '[brnSheetDescription]',
|
|
@@ -93,10 +93,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
93
93
|
}] });
|
|
94
94
|
|
|
95
95
|
class BrnSheetOverlay extends BrnDialogOverlay {
|
|
96
|
-
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
97
|
-
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
96
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheetOverlay, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
97
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.16", type: BrnSheetOverlay, isStandalone: true, selector: "[brnSheetOverlay],brn-sheet-overlay", providers: [provideCustomClassSettableExisting((() => BrnSheetOverlay))], usesInheritance: true, ngImport: i0 });
|
|
98
98
|
}
|
|
99
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
99
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheetOverlay, decorators: [{
|
|
100
100
|
type: Directive,
|
|
101
101
|
args: [{
|
|
102
102
|
selector: '[brnSheetOverlay],brn-sheet-overlay',
|
|
@@ -105,10 +105,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
105
105
|
}] });
|
|
106
106
|
|
|
107
107
|
class BrnSheetTitle {
|
|
108
|
-
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
109
|
-
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
108
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheetTitle, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
109
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.16", type: BrnSheetTitle, isStandalone: true, selector: "[brnSheetTitle]", hostDirectives: [{ directive: i1.BrnDialogTitle }], ngImport: i0 });
|
|
110
110
|
}
|
|
111
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
111
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheetTitle, decorators: [{
|
|
112
112
|
type: Directive,
|
|
113
113
|
args: [{
|
|
114
114
|
selector: '[brnSheetTitle]',
|
|
@@ -119,7 +119,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.17", ngImpo
|
|
|
119
119
|
class BrnSheetTrigger extends BrnDialogTrigger {
|
|
120
120
|
_sheet = inject(BrnSheet, { optional: true });
|
|
121
121
|
/** Override the side from where the sheet appears for this trigger. */
|
|
122
|
-
side = input(undefined, ...(ngDevMode ? [{ debugName: "side" }] : []));
|
|
122
|
+
side = input(undefined, ...(ngDevMode ? [{ debugName: "side" }] : /* istanbul ignore next */ []));
|
|
123
123
|
open() {
|
|
124
124
|
const side = this.side();
|
|
125
125
|
if (this._sheet && side) {
|
|
@@ -127,10 +127,10 @@ class BrnSheetTrigger extends BrnDialogTrigger {
|
|
|
127
127
|
}
|
|
128
128
|
super.open();
|
|
129
129
|
}
|
|
130
|
-
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
131
|
-
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "
|
|
130
|
+
/** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheetTrigger, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
131
|
+
/** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.16", type: BrnSheetTrigger, isStandalone: true, selector: "button[brnSheetTrigger]", inputs: { side: { classPropertyName: "side", publicName: "side", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0 });
|
|
132
132
|
}
|
|
133
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
133
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.16", ngImport: i0, type: BrnSheetTrigger, decorators: [{
|
|
134
134
|
type: Directive,
|
|
135
135
|
args: [{
|
|
136
136
|
selector: 'button[brnSheetTrigger]',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spartan-ng-brain-sheet.mjs","sources":["../../../../libs/brain/sheet/src/lib/brn-sheet.ts","../../../../libs/brain/sheet/src/lib/brn-sheet-close.ts","../../../../libs/brain/sheet/src/lib/brn-sheet-content.ts","../../../../libs/brain/sheet/src/lib/brn-sheet-description.ts","../../../../libs/brain/sheet/src/lib/brn-sheet-overlay.ts","../../../../libs/brain/sheet/src/lib/brn-sheet-title.ts","../../../../libs/brain/sheet/src/lib/brn-sheet-trigger.ts","../../../../libs/brain/sheet/src/index.ts","../../../../libs/brain/sheet/src/spartan-ng-brain-sheet.ts"],"sourcesContent":["import { Directive, effect, forwardRef, input, linkedSignal, untracked } from '@angular/core';\nimport { BrnDialog } from '@spartan-ng/brain/dialog';\n\n@Directive({\n\tselector: '[brnSheet],brn-sheet',\n\texportAs: 'brnSheet',\n\tproviders: [\n\t\t{\n\t\t\tprovide: BrnDialog,\n\t\t\tuseExisting: forwardRef(() => BrnSheet),\n\t\t},\n\t],\n})\nexport class BrnSheet extends BrnDialog {\n\t/** Specifies the side of the screen where the sheet will appear. */\n\tpublic readonly side = input<'top' | 'bottom' | 'left' | 'right'>('top');\n\tpublic readonly sideState = linkedSignal(() => this.side());\n\tconstructor() {\n\t\tsuper();\n\t\teffect(() => {\n\t\t\tconst side = this.sideState();\n\t\t\tuntracked(() => {\n\t\t\t\tif (side === 'top') {\n\t\t\t\t\tthis.mutablePositionStrategy.set(this.positionBuilder.global().top());\n\t\t\t\t}\n\t\t\t\tif (side === 'bottom') {\n\t\t\t\t\tthis.mutablePositionStrategy.set(this.positionBuilder.global().bottom());\n\t\t\t\t}\n\t\t\t\tif (side === 'left') {\n\t\t\t\t\tthis.mutablePositionStrategy.set(this.positionBuilder.global().left());\n\t\t\t\t}\n\t\t\t\tif (side === 'right') {\n\t\t\t\t\tthis.mutablePositionStrategy.set(this.positionBuilder.global().right());\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnDialogClose } from '@spartan-ng/brain/dialog';\n\n@Directive({\n\tselector: 'button[brnSheetClose]',\n})\nexport class BrnSheetClose extends BrnDialogClose {}\n","import { Directive, inject } from '@angular/core';\nimport {\n\ttype ExposesSide,\n\tprovideExposedSideProviderExisting,\n\tprovideExposesStateProviderExisting,\n} from '@spartan-ng/brain/core';\nimport { BrnDialogContent } from '@spartan-ng/brain/dialog';\nimport { BrnSheet } from './brn-sheet';\n\n@Directive({\n\tselector: '[brnSheetContent]',\n\tproviders: [\n\t\tprovideExposesStateProviderExisting(() => BrnSheetContent),\n\t\tprovideExposedSideProviderExisting(() => BrnSheetContent),\n\t],\n})\nexport class BrnSheetContent<T> extends BrnDialogContent<T> implements ExposesSide {\n\tpublic readonly side = inject(BrnSheet).sideState;\n}\n","import { Directive } from '@angular/core';\nimport { BrnDialogDescription } from '@spartan-ng/brain/dialog';\n\n@Directive({\n\tselector: '[brnSheetDescription]',\n\thostDirectives: [BrnDialogDescription],\n})\nexport class BrnSheetDescription {}\n","import { Directive } from '@angular/core';\nimport { provideCustomClassSettableExisting } from '@spartan-ng/brain/core';\nimport { BrnDialogOverlay } from '@spartan-ng/brain/dialog';\n\n@Directive({\n\tselector: '[brnSheetOverlay],brn-sheet-overlay',\n\tproviders: [provideCustomClassSettableExisting(() => BrnSheetOverlay)],\n})\nexport class BrnSheetOverlay extends BrnDialogOverlay {}\n","import { Directive } from '@angular/core';\nimport { BrnDialogTitle } from '@spartan-ng/brain/dialog';\n\n@Directive({\n\tselector: '[brnSheetTitle]',\n\thostDirectives: [BrnDialogTitle],\n})\nexport class BrnSheetTitle {}\n","import { Directive, inject, input } from '@angular/core';\nimport { BrnDialogTrigger } from '@spartan-ng/brain/dialog';\nimport { BrnSheet } from './brn-sheet';\n\n@Directive({\n\tselector: 'button[brnSheetTrigger]',\n})\nexport class BrnSheetTrigger extends BrnDialogTrigger {\n\tprivate readonly _sheet = inject(BrnSheet, { optional: true });\n\n\t/** Override the side from where the sheet appears for this trigger. */\n\tpublic readonly side = input<'top' | 'bottom' | 'left' | 'right' | undefined>(undefined);\n\n\toverride open() {\n\t\tconst side = this.side();\n\t\tif (this._sheet && side) {\n\t\t\tthis._sheet.sideState.set(side);\n\t\t}\n\t\tsuper.open();\n\t}\n}\n","import { BrnSheet } from './lib/brn-sheet';\nimport { BrnSheetClose } from './lib/brn-sheet-close';\nimport { BrnSheetContent } from './lib/brn-sheet-content';\nimport { BrnSheetDescription } from './lib/brn-sheet-description';\nimport { BrnSheetOverlay } from './lib/brn-sheet-overlay';\nimport { BrnSheetTitle } from './lib/brn-sheet-title';\nimport { BrnSheetTrigger } from './lib/brn-sheet-trigger';\n\nexport * from './lib/brn-sheet';\nexport * from './lib/brn-sheet-close';\nexport * from './lib/brn-sheet-content';\nexport * from './lib/brn-sheet-description';\nexport * from './lib/brn-sheet-overlay';\nexport * from './lib/brn-sheet-title';\nexport * from './lib/brn-sheet-trigger';\n\nexport const BrnSheetImports = [\n\tBrnSheet,\n\tBrnSheetOverlay,\n\tBrnSheetTrigger,\n\tBrnSheetClose,\n\tBrnSheetContent,\n\tBrnSheetTitle,\n\tBrnSheetDescription,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"spartan-ng-brain-sheet.mjs","sources":["../../../../libs/brain/sheet/src/lib/brn-sheet.ts","../../../../libs/brain/sheet/src/lib/brn-sheet-close.ts","../../../../libs/brain/sheet/src/lib/brn-sheet-content.ts","../../../../libs/brain/sheet/src/lib/brn-sheet-description.ts","../../../../libs/brain/sheet/src/lib/brn-sheet-overlay.ts","../../../../libs/brain/sheet/src/lib/brn-sheet-title.ts","../../../../libs/brain/sheet/src/lib/brn-sheet-trigger.ts","../../../../libs/brain/sheet/src/index.ts","../../../../libs/brain/sheet/src/spartan-ng-brain-sheet.ts"],"sourcesContent":["import { Directive, effect, forwardRef, input, linkedSignal, untracked } from '@angular/core';\nimport { BrnDialog } from '@spartan-ng/brain/dialog';\n\n@Directive({\n\tselector: '[brnSheet],brn-sheet',\n\texportAs: 'brnSheet',\n\tproviders: [\n\t\t{\n\t\t\tprovide: BrnDialog,\n\t\t\tuseExisting: forwardRef(() => BrnSheet),\n\t\t},\n\t],\n})\nexport class BrnSheet extends BrnDialog {\n\t/** Specifies the side of the screen where the sheet will appear. */\n\tpublic readonly side = input<'top' | 'bottom' | 'left' | 'right'>('top');\n\tpublic readonly sideState = linkedSignal(() => this.side());\n\tconstructor() {\n\t\tsuper();\n\t\teffect(() => {\n\t\t\tconst side = this.sideState();\n\t\t\tuntracked(() => {\n\t\t\t\tif (side === 'top') {\n\t\t\t\t\tthis.mutablePositionStrategy.set(this.positionBuilder.global().top());\n\t\t\t\t}\n\t\t\t\tif (side === 'bottom') {\n\t\t\t\t\tthis.mutablePositionStrategy.set(this.positionBuilder.global().bottom());\n\t\t\t\t}\n\t\t\t\tif (side === 'left') {\n\t\t\t\t\tthis.mutablePositionStrategy.set(this.positionBuilder.global().left());\n\t\t\t\t}\n\t\t\t\tif (side === 'right') {\n\t\t\t\t\tthis.mutablePositionStrategy.set(this.positionBuilder.global().right());\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnDialogClose } from '@spartan-ng/brain/dialog';\n\n@Directive({\n\tselector: 'button[brnSheetClose]',\n})\nexport class BrnSheetClose extends BrnDialogClose {}\n","import { Directive, inject } from '@angular/core';\nimport {\n\ttype ExposesSide,\n\tprovideExposedSideProviderExisting,\n\tprovideExposesStateProviderExisting,\n} from '@spartan-ng/brain/core';\nimport { BrnDialogContent } from '@spartan-ng/brain/dialog';\nimport { BrnSheet } from './brn-sheet';\n\n@Directive({\n\tselector: '[brnSheetContent]',\n\tproviders: [\n\t\tprovideExposesStateProviderExisting(() => BrnSheetContent),\n\t\tprovideExposedSideProviderExisting(() => BrnSheetContent),\n\t],\n})\nexport class BrnSheetContent<T> extends BrnDialogContent<T> implements ExposesSide {\n\tpublic readonly side = inject(BrnSheet).sideState;\n}\n","import { Directive } from '@angular/core';\nimport { BrnDialogDescription } from '@spartan-ng/brain/dialog';\n\n@Directive({\n\tselector: '[brnSheetDescription]',\n\thostDirectives: [BrnDialogDescription],\n})\nexport class BrnSheetDescription {}\n","import { Directive } from '@angular/core';\nimport { provideCustomClassSettableExisting } from '@spartan-ng/brain/core';\nimport { BrnDialogOverlay } from '@spartan-ng/brain/dialog';\n\n@Directive({\n\tselector: '[brnSheetOverlay],brn-sheet-overlay',\n\tproviders: [provideCustomClassSettableExisting(() => BrnSheetOverlay)],\n})\nexport class BrnSheetOverlay extends BrnDialogOverlay {}\n","import { Directive } from '@angular/core';\nimport { BrnDialogTitle } from '@spartan-ng/brain/dialog';\n\n@Directive({\n\tselector: '[brnSheetTitle]',\n\thostDirectives: [BrnDialogTitle],\n})\nexport class BrnSheetTitle {}\n","import { Directive, inject, input } from '@angular/core';\nimport { BrnDialogTrigger } from '@spartan-ng/brain/dialog';\nimport { BrnSheet } from './brn-sheet';\n\n@Directive({\n\tselector: 'button[brnSheetTrigger]',\n})\nexport class BrnSheetTrigger extends BrnDialogTrigger {\n\tprivate readonly _sheet = inject(BrnSheet, { optional: true });\n\n\t/** Override the side from where the sheet appears for this trigger. */\n\tpublic readonly side = input<'top' | 'bottom' | 'left' | 'right' | undefined>(undefined);\n\n\toverride open() {\n\t\tconst side = this.side();\n\t\tif (this._sheet && side) {\n\t\t\tthis._sheet.sideState.set(side);\n\t\t}\n\t\tsuper.open();\n\t}\n}\n","import { BrnSheet } from './lib/brn-sheet';\nimport { BrnSheetClose } from './lib/brn-sheet-close';\nimport { BrnSheetContent } from './lib/brn-sheet-content';\nimport { BrnSheetDescription } from './lib/brn-sheet-description';\nimport { BrnSheetOverlay } from './lib/brn-sheet-overlay';\nimport { BrnSheetTitle } from './lib/brn-sheet-title';\nimport { BrnSheetTrigger } from './lib/brn-sheet-trigger';\n\nexport * from './lib/brn-sheet';\nexport * from './lib/brn-sheet-close';\nexport * from './lib/brn-sheet-content';\nexport * from './lib/brn-sheet-description';\nexport * from './lib/brn-sheet-overlay';\nexport * from './lib/brn-sheet-title';\nexport * from './lib/brn-sheet-trigger';\n\nexport const BrnSheetImports = [\n\tBrnSheet,\n\tBrnSheetOverlay,\n\tBrnSheetTrigger,\n\tBrnSheetClose,\n\tBrnSheetContent,\n\tBrnSheetTitle,\n\tBrnSheetDescription,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|