@vireo-ai/trellis-ui 0.1.31 → 0.1.32
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/package.json +1 -1
- package/packages/client/types/runtime/cleanup-manager.d.ts +13 -0
- package/packages/client/types/runtime/engine/navigation.d.ts +6 -2
- package/packages/client/types/runtime/engine/request.d.ts +10 -3
- package/packages/client/types/runtime/engine/stream.d.ts +3 -11
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/build-metadata.json +285 -284
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/capabilities/motion.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/capabilities/sortable.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/alpine-data-CytyCyfk.js +2 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/alpine-data-CytyCyfk.js.map +1 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{capability-motion-wMoceguq.js → capability-motion-ikQPX2KS.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{capability-motion-wMoceguq.js.map → capability-motion-ikQPX2KS.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{capability-sortable-BurX5yRd.js → capability-sortable-_n-Bn6OZ.js} +3 -3
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{capability-sortable-BurX5yRd.js.map → capability-sortable-_n-Bn6OZ.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/core-DsBVeiBn.js +2 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/core-DsBVeiBn.js.map +1 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DRqap77P.js → entry.generated-B654Bqgy.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DRqap77P.js.map → entry.generated-B654Bqgy.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BehM6Hle.js → entry.generated-BC8JUf6f.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BehM6Hle.js.map → entry.generated-BC8JUf6f.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-C-MH09sf.js → entry.generated-BgxTv7ov.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-C-MH09sf.js.map → entry.generated-BgxTv7ov.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-eVXGqjCM.js → entry.generated-CM26DIxy.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-eVXGqjCM.js.map → entry.generated-CM26DIxy.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-CoJxfxlc.js → entry.generated-CPbvsglm.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-CoJxfxlc.js.map → entry.generated-CPbvsglm.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-C5Bueyfb.js → entry.generated-CaBUZe9u.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-C5Bueyfb.js.map → entry.generated-CaBUZe9u.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-D6cdmqiV.js → entry.generated-Ch-bdMyP.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-D6cdmqiV.js.map → entry.generated-Ch-bdMyP.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DBSwLHmm.js → entry.generated-D5gXHQl_.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DBSwLHmm.js.map → entry.generated-D5gXHQl_.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-CCka3fIO.js → entry.generated-DBmmM-XT.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-CCka3fIO.js.map → entry.generated-DBmmM-XT.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-CSxEK8G9.js → entry.generated-DIPrCNjK.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-CSxEK8G9.js.map → entry.generated-DIPrCNjK.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BJ0fQYT1.js → entry.generated-DXWS-S4C.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BJ0fQYT1.js.map → entry.generated-DXWS-S4C.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-cMueWbY7.js → entry.generated-DYBALnuF.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-cMueWbY7.js.map → entry.generated-DYBALnuF.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DEiL4FhC.js → entry.generated-DfuZKFMG.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DEiL4FhC.js.map → entry.generated-DfuZKFMG.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-EtCfrZfr.js → entry.generated-Dgrr543E.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-EtCfrZfr.js.map → entry.generated-Dgrr543E.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-9sxiaVVI.js → entry.generated-DhtIfdSe.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-9sxiaVVI.js.map → entry.generated-DhtIfdSe.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-Dzw2Rg5F.js → entry.generated-DkHtVCQf.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-Dzw2Rg5F.js.map → entry.generated-DkHtVCQf.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BuXeU4zt.js → entry.generated-WUm64hMS.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BuXeU4zt.js.map → entry.generated-WUm64hMS.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{motion-BRaHJwNf.js → motion-D8nzvbpd.js} +3 -3
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{motion-BRaHJwNf.js.map → motion-D8nzvbpd.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/stream-DVqpCtdQ.js +4 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/stream-DVqpCtdQ.js.map +1 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/ui-ZuNy_Awl.js +2 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/ui-ZuNy_Awl.js.map +1 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/accordion.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/checkbox.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/date-picker.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/dropdown.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/field.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/file-upload.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/index.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/input.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/modal.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/panels.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/radio.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/scroll-area.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/select.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/sidebar.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/slider.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/switch.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/tabs.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/toast.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/core.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/index.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/logical-entry-manifest.json +128 -128
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/trellis.js +8 -8
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/trellis.min.js +8 -8
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/alpine-data-DZ17j0jc.js +0 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/alpine-data-DZ17j0jc.js.map +0 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/core-BuKz1uWk.js +0 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/core-BuKz1uWk.js.map +0 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/stream-pMBGbBZH.js +0 -4
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/stream-pMBGbBZH.js.map +0 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/ui-H3t7UHMs.js +0 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/ui-H3t7UHMs.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry.generated-CSxEK8G9.js","names":[],"sources":["../../../../../../../../client/src/components/switch/contract.ts","../../../../../../../../client/src/components/switch/machine.ts","../../../../../../../../client/src/components/switch/index.ts","../../../../../../../../client/src/components/switch/entry.generated.ts"],"sourcesContent":["import {attribute, bool, oneOf, string, type SchemaToProps} from '../../runtime';\nimport {CONTROL_SIZES, DEFAULT_VARIANTS, type ControlSize, type DefaultVariant} from '../common';\n\nconst SWITCH_PLACEMENTS = ['trailing', 'leading'] as const;\nconst SWITCH_SIZES = CONTROL_SIZES;\nconst SWITCH_VARIANTS = DEFAULT_VARIANTS;\n\ntype SwitchPlacement = typeof SWITCH_PLACEMENTS[number];\ntype SwitchSize = ControlSize;\ntype SwitchVariant = DefaultVariant;\n\nconst switchControlSchema = {\n value: string.default('on'),\n name: string,\n label: string,\n description: string,\n checked: attribute(bool, 'prop-checked'),\n disabled: attribute(bool, 'prop-disabled'),\n required: attribute(bool, 'prop-required'),\n invalid: attribute(bool, 'prop-invalid'),\n placement: oneOf(SWITCH_PLACEMENTS, 'trailing' as SwitchPlacement),\n variant: oneOf(SWITCH_VARIANTS, 'default' as SwitchVariant),\n size: oneOf(SWITCH_SIZES, 'md' as SwitchSize),\n inputClass: string,\n trackClass: string,\n thumbClass: string,\n contentClass: string,\n labelClass: string,\n descriptionClass: string,\n class: string,\n};\n\nconst switchSchema = {\n ...switchControlSchema,\n label: string,\n description: string,\n descriptionTrailing: string,\n error: string,\n errors: string,\n badge: string,\n fieldClass: string,\n};\n\ntype SwitchControlProps = SchemaToProps<typeof switchControlSchema>;\ntype SwitchProps = SchemaToProps<typeof switchSchema>;\n\nexport {\n SWITCH_PLACEMENTS,\n SWITCH_SIZES,\n SWITCH_VARIANTS,\n switchControlSchema,\n switchSchema,\n};\nexport type {\n SwitchPlacement,\n SwitchControlProps,\n SwitchProps,\n SwitchSize,\n SwitchVariant,\n};\n","import {createMachine, propsChanged, propsChangedEvent, type Machine, type MachineEventObject, type MachineScope} from '../../runtime/state-machine';\nimport type {SwitchControlProps} from './contract';\n\ntype SwitchContext = {selection: {checked: boolean}};\ntype SwitchEffects = {\n sync(scope: MachineScope<SwitchContext, SwitchControlProps>): void;\n emitInput(scope: MachineScope<SwitchContext, SwitchControlProps>): void;\n emitChange(scope: MachineScope<SwitchContext, SwitchControlProps>): void;\n};\nconst switchHooks = [] as const;\nconst eventChecked = (event: MachineEventObject): boolean => event.checked === true;\nconst eventIs = (checked: boolean) => ({event}: MachineScope<SwitchContext, SwitchControlProps>): boolean => (\n eventChecked(event) === checked\n);\nconst checkedPropChanged = ({event}: MachineScope<SwitchContext, SwitchControlProps>): boolean => (\n propsChanged<SwitchControlProps>(event, 'checked')\n);\nconst nextPropsAre = (checked: boolean) => (scope: MachineScope<SwitchContext, SwitchControlProps>): boolean => {\n const next = propsChangedEvent<SwitchControlProps>(scope.event)?.props;\n return checkedPropChanged(scope) && next?.checked === checked;\n};\nconst setChecked = (scope: MachineScope<SwitchContext, SwitchControlProps>) => ({\n context: {...scope.context, selection: {checked: eventChecked(scope.event)}},\n});\nconst toggle = (scope: MachineScope<SwitchContext, SwitchControlProps>) => ({\n context: {...scope.context, selection: {checked: !scope.context.selection.checked}},\n});\nconst reconcileProps = (scope: MachineScope<SwitchContext, SwitchControlProps>) => {\n const next = propsChangedEvent<SwitchControlProps>(scope.event)?.props;\n if (!next) return;\n return {\n props: next,\n context: checkedPropChanged(scope)\n ? {...scope.context, selection: {checked: next.checked}}\n : scope.context,\n };\n};\n\nconst createSwitchMachine = ({props, effects}: {props: SwitchControlProps; effects: SwitchEffects}): Machine<SwitchContext, SwitchControlProps> => createMachine<SwitchContext, SwitchControlProps>({\n initial: props.checked ? 'checked' : 'unchecked',\n on: {\n NATIVE_CHANGED: [\n {target: 'checked', guard: eventIs(true), reduce: 'setChecked', effects: 'sync'},\n {target: 'unchecked', guard: eventIs(false), reduce: 'setChecked', effects: 'sync'},\n ],\n SET_CHECKED: [\n {target: 'checked', guard: eventIs(true), reduce: 'setChecked', effects: ['sync', 'emitInput', 'emitChange']},\n {target: 'unchecked', guard: eventIs(false), reduce: 'setChecked', effects: ['sync', 'emitInput', 'emitChange']},\n ],\n TOGGLE: [\n {target: 'checked', guard: ({context}) => !context.selection.checked, reduce: 'toggle', effects: ['sync', 'emitInput', 'emitChange']},\n {target: 'unchecked', guard: ({context}) => context.selection.checked, reduce: 'toggle', effects: ['sync', 'emitInput', 'emitChange']},\n ],\n PROPS_CHANGED: [\n {target: 'checked', guard: nextPropsAre(true), reduce: 'reconcileProps', effects: 'sync'},\n {target: 'unchecked', guard: nextPropsAre(false), reduce: 'reconcileProps', effects: 'sync'},\n {reduce: 'reconcileProps', effects: 'sync'},\n ],\n },\n states: {unchecked: {tags: ['unchecked']}, checked: {tags: ['checked']}},\n}, {\n context: {selection: {checked: props.checked}},\n props,\n reducers: {setChecked, toggle, reconcileProps},\n effects,\n});\n\nexport {createSwitchMachine, switchHooks};\nexport type {SwitchContext, SwitchEffects};\n","import type Alpine from 'alpinejs';\n\nimport {type AlpineMachine, createAlpineMachine, defineAlpineData, type MachineSnapshot, type TrellisAlpineComponent} from '@client/runtime';\nimport {syncControlPresence, syncNativeControl} from '@client/runtime/form-control';\nimport {addListener, setAttribute, setPresence, type CleanupStack} from '@client/utils';\nimport {switchControlSchema, type SwitchControlProps} from './contract';\nimport {createSwitchMachine, switchHooks, type SwitchContext} from './machine';\n\n/** Public Alpine API for `ui.switch` and `ui.switch.control`. @public */\ninterface UiSwitchApi {\n /** Current settled checked state. */\n readonly checked: boolean;\n /** Set and commit the checked state. */\n setChecked(checked: boolean): void;\n}\n\ntype SwitchData = AlpineMachine<SwitchContext, SwitchControlProps, typeof switchHooks> & UiSwitchApi & {\n init(): void;\n destroy(): void;\n};\n\nconst UiSwitch = (): TrellisAlpineComponent<SwitchData> => {\n let rootEl: (HTMLElement & Alpine.ElementWithXAttributes) | null = null;\n let inputEl: HTMLInputElement | null = null;\n let listeners: CleanupStack = [];\n let dispatching = false;\n\n const root = (): HTMLElement => {\n if (!rootEl) throw new Error('Switch has not been initialized.');\n return rootEl;\n };\n const input = (): HTMLInputElement => {\n if (!inputEl) throw new Error('Switch requires a native checkbox input.');\n return inputEl;\n };\n const snapshot = (): MachineSnapshot<SwitchContext, SwitchControlProps> => bridge.getCommittedSnapshot();\n const syncDom = (): void => {\n const current = snapshot();\n const props = current.props;\n const checked = current.context.selection.checked;\n const state = checked ? 'checked' : 'unchecked';\n const native = input();\n\n native.checked = checked;\n if (!props.name) native.removeAttribute('name');\n syncNativeControl({input: native, state: {\n name: props.name,\n value: props.value,\n disabled: props.disabled,\n required: props.required,\n invalid: props.invalid,\n }});\n native.setAttribute('role', 'switch');\n setAttribute({el: native, attr: 'aria-checked', value: checked ? 'true' : 'false'});\n\n setAttribute({el: root(), attr: 'data-state', value: state});\n setPresence({el: root(), attr: 'data-checked', present: checked});\n syncControlPresence({el: root(), state: props});\n setAttribute({el: native, attr: 'data-state', value: state});\n setPresence({el: native, attr: 'data-checked', present: checked});\n\n const track = root().querySelector<HTMLElement>('[data-ui-switch-track]');\n if (track) {\n setAttribute({el: track, attr: 'data-state', value: state});\n setPresence({el: track, attr: 'data-checked', present: checked});\n syncControlPresence({el: track, state: {disabled: props.disabled, invalid: props.invalid}});\n }\n const thumb = root().querySelector<HTMLElement>('[data-ui-switch-thumb]');\n if (thumb) {\n setAttribute({el: thumb, attr: 'data-state', value: state});\n setPresence({el: thumb, attr: 'data-checked', present: checked});\n setPresence({el: thumb, attr: 'data-disabled', present: props.disabled});\n setPresence({el: thumb, attr: 'data-invalid', present: props.invalid});\n }\n };\n const dispatchNative = (type: 'input' | 'change'): void => {\n dispatching = true;\n try { input().dispatchEvent(new Event(type, {bubbles: true})); } finally { dispatching = false; }\n };\n const bridge = createAlpineMachine({\n schema: switchControlSchema,\n hooks: switchHooks,\n createMachine: ({props}) => createSwitchMachine({props, effects: {\n sync: syncDom,\n emitInput: () => dispatchNative('input'),\n emitChange: () => dispatchNative('change'),\n }}),\n });\n\n return {\n ...bridge,\n init(): void {\n rootEl = this.$el;\n inputEl = root().querySelector<HTMLInputElement>('[data-ui-switch-input]');\n if (!inputEl) throw new Error('Switch requires a native checkbox input.');\n bridge.connect(rootEl, this.snapshot);\n addListener({target: inputEl, event: 'change', handler: () => {\n if (!dispatching) bridge.send({type: 'NATIVE_CHANGED', checked: input().checked});\n }, cleanup: listeners});\n addListener({target: inputEl, event: 'keydown', handler: (event) => {\n if (!(event instanceof KeyboardEvent) || event.key !== 'Enter' || input().disabled) return;\n event.preventDefault();\n bridge.send('TOGGLE');\n }, cleanup: listeners});\n syncDom();\n },\n destroy(): void {\n listeners.splice(0).reverse().forEach((cleanup) => cleanup());\n bridge.disconnect();\n rootEl = null;\n inputEl = null;\n },\n get checked(): boolean {\n return bridge.getCommittedSnapshot().context.selection.checked;\n },\n setChecked(checked: boolean): void {\n if (checked === bridge.getCommittedSnapshot().context.selection.checked) return;\n bridge.send({type: 'SET_CHECKED', checked});\n },\n };\n};\n\nconst registerSwitch = defineAlpineData('UiSwitch', UiSwitch);\n\nexport {registerSwitch, UiSwitch};\nexport type {SwitchData, UiSwitchApi};\n","// Generated by scripts/generate_component_entries.mjs from packages/client/component-entries.json.\n// Do not edit by hand.\nimport type {Alpine as AlpineType} from 'alpinejs';\n\nimport {registerSwitch as registerComponent} from './index';\n\nconst registered = new WeakSet<AlpineType>();\n\nconst registerSwitch = (AlpineInstance: AlpineType): void => {\n if (registered.has(AlpineInstance)) return;\n registered.add(AlpineInstance);\n\n registerComponent(AlpineInstance);\n};\n\nexport {registerSwitch};\nexport default registerSwitch;\nexport * from './index';\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"entry.generated-DIPrCNjK.js","names":[],"sources":["../../../../../../../../client/src/components/switch/contract.ts","../../../../../../../../client/src/components/switch/machine.ts","../../../../../../../../client/src/components/switch/index.ts","../../../../../../../../client/src/components/switch/entry.generated.ts"],"sourcesContent":["import {attribute, bool, oneOf, string, type SchemaToProps} from '../../runtime';\nimport {CONTROL_SIZES, DEFAULT_VARIANTS, type ControlSize, type DefaultVariant} from '../common';\n\nconst SWITCH_PLACEMENTS = ['trailing', 'leading'] as const;\nconst SWITCH_SIZES = CONTROL_SIZES;\nconst SWITCH_VARIANTS = DEFAULT_VARIANTS;\n\ntype SwitchPlacement = typeof SWITCH_PLACEMENTS[number];\ntype SwitchSize = ControlSize;\ntype SwitchVariant = DefaultVariant;\n\nconst switchControlSchema = {\n value: string.default('on'),\n name: string,\n label: string,\n description: string,\n checked: attribute(bool, 'prop-checked'),\n disabled: attribute(bool, 'prop-disabled'),\n required: attribute(bool, 'prop-required'),\n invalid: attribute(bool, 'prop-invalid'),\n placement: oneOf(SWITCH_PLACEMENTS, 'trailing' as SwitchPlacement),\n variant: oneOf(SWITCH_VARIANTS, 'default' as SwitchVariant),\n size: oneOf(SWITCH_SIZES, 'md' as SwitchSize),\n inputClass: string,\n trackClass: string,\n thumbClass: string,\n contentClass: string,\n labelClass: string,\n descriptionClass: string,\n class: string,\n};\n\nconst switchSchema = {\n ...switchControlSchema,\n label: string,\n description: string,\n descriptionTrailing: string,\n error: string,\n errors: string,\n badge: string,\n fieldClass: string,\n};\n\ntype SwitchControlProps = SchemaToProps<typeof switchControlSchema>;\ntype SwitchProps = SchemaToProps<typeof switchSchema>;\n\nexport {\n SWITCH_PLACEMENTS,\n SWITCH_SIZES,\n SWITCH_VARIANTS,\n switchControlSchema,\n switchSchema,\n};\nexport type {\n SwitchPlacement,\n SwitchControlProps,\n SwitchProps,\n SwitchSize,\n SwitchVariant,\n};\n","import {createMachine, propsChanged, propsChangedEvent, type Machine, type MachineEventObject, type MachineScope} from '../../runtime/state-machine';\nimport type {SwitchControlProps} from './contract';\n\ntype SwitchContext = {selection: {checked: boolean}};\ntype SwitchEffects = {\n sync(scope: MachineScope<SwitchContext, SwitchControlProps>): void;\n emitInput(scope: MachineScope<SwitchContext, SwitchControlProps>): void;\n emitChange(scope: MachineScope<SwitchContext, SwitchControlProps>): void;\n};\nconst switchHooks = [] as const;\nconst eventChecked = (event: MachineEventObject): boolean => event.checked === true;\nconst eventIs = (checked: boolean) => ({event}: MachineScope<SwitchContext, SwitchControlProps>): boolean => (\n eventChecked(event) === checked\n);\nconst checkedPropChanged = ({event}: MachineScope<SwitchContext, SwitchControlProps>): boolean => (\n propsChanged<SwitchControlProps>(event, 'checked')\n);\nconst nextPropsAre = (checked: boolean) => (scope: MachineScope<SwitchContext, SwitchControlProps>): boolean => {\n const next = propsChangedEvent<SwitchControlProps>(scope.event)?.props;\n return checkedPropChanged(scope) && next?.checked === checked;\n};\nconst setChecked = (scope: MachineScope<SwitchContext, SwitchControlProps>) => ({\n context: {...scope.context, selection: {checked: eventChecked(scope.event)}},\n});\nconst toggle = (scope: MachineScope<SwitchContext, SwitchControlProps>) => ({\n context: {...scope.context, selection: {checked: !scope.context.selection.checked}},\n});\nconst reconcileProps = (scope: MachineScope<SwitchContext, SwitchControlProps>) => {\n const next = propsChangedEvent<SwitchControlProps>(scope.event)?.props;\n if (!next) return;\n return {\n props: next,\n context: checkedPropChanged(scope)\n ? {...scope.context, selection: {checked: next.checked}}\n : scope.context,\n };\n};\n\nconst createSwitchMachine = ({props, effects}: {props: SwitchControlProps; effects: SwitchEffects}): Machine<SwitchContext, SwitchControlProps> => createMachine<SwitchContext, SwitchControlProps>({\n initial: props.checked ? 'checked' : 'unchecked',\n on: {\n NATIVE_CHANGED: [\n {target: 'checked', guard: eventIs(true), reduce: 'setChecked', effects: 'sync'},\n {target: 'unchecked', guard: eventIs(false), reduce: 'setChecked', effects: 'sync'},\n ],\n SET_CHECKED: [\n {target: 'checked', guard: eventIs(true), reduce: 'setChecked', effects: ['sync', 'emitInput', 'emitChange']},\n {target: 'unchecked', guard: eventIs(false), reduce: 'setChecked', effects: ['sync', 'emitInput', 'emitChange']},\n ],\n TOGGLE: [\n {target: 'checked', guard: ({context}) => !context.selection.checked, reduce: 'toggle', effects: ['sync', 'emitInput', 'emitChange']},\n {target: 'unchecked', guard: ({context}) => context.selection.checked, reduce: 'toggle', effects: ['sync', 'emitInput', 'emitChange']},\n ],\n PROPS_CHANGED: [\n {target: 'checked', guard: nextPropsAre(true), reduce: 'reconcileProps', effects: 'sync'},\n {target: 'unchecked', guard: nextPropsAre(false), reduce: 'reconcileProps', effects: 'sync'},\n {reduce: 'reconcileProps', effects: 'sync'},\n ],\n },\n states: {unchecked: {tags: ['unchecked']}, checked: {tags: ['checked']}},\n}, {\n context: {selection: {checked: props.checked}},\n props,\n reducers: {setChecked, toggle, reconcileProps},\n effects,\n});\n\nexport {createSwitchMachine, switchHooks};\nexport type {SwitchContext, SwitchEffects};\n","import type Alpine from 'alpinejs';\n\nimport {type AlpineMachine, createAlpineMachine, defineAlpineData, type MachineSnapshot, type TrellisAlpineComponent} from '@client/runtime';\nimport {syncControlPresence, syncNativeControl} from '@client/runtime/form-control';\nimport {addListener, setAttribute, setPresence, type CleanupStack} from '@client/utils';\nimport {switchControlSchema, type SwitchControlProps} from './contract';\nimport {createSwitchMachine, switchHooks, type SwitchContext} from './machine';\n\n/** Public Alpine API for `ui.switch` and `ui.switch.control`. @public */\ninterface UiSwitchApi {\n /** Current settled checked state. */\n readonly checked: boolean;\n /** Set and commit the checked state. */\n setChecked(checked: boolean): void;\n}\n\ntype SwitchData = AlpineMachine<SwitchContext, SwitchControlProps, typeof switchHooks> & UiSwitchApi & {\n init(): void;\n destroy(): void;\n};\n\nconst UiSwitch = (): TrellisAlpineComponent<SwitchData> => {\n let rootEl: (HTMLElement & Alpine.ElementWithXAttributes) | null = null;\n let inputEl: HTMLInputElement | null = null;\n let listeners: CleanupStack = [];\n let dispatching = false;\n\n const root = (): HTMLElement => {\n if (!rootEl) throw new Error('Switch has not been initialized.');\n return rootEl;\n };\n const input = (): HTMLInputElement => {\n if (!inputEl) throw new Error('Switch requires a native checkbox input.');\n return inputEl;\n };\n const snapshot = (): MachineSnapshot<SwitchContext, SwitchControlProps> => bridge.getCommittedSnapshot();\n const syncDom = (): void => {\n const current = snapshot();\n const props = current.props;\n const checked = current.context.selection.checked;\n const state = checked ? 'checked' : 'unchecked';\n const native = input();\n\n native.checked = checked;\n if (!props.name) native.removeAttribute('name');\n syncNativeControl({input: native, state: {\n name: props.name,\n value: props.value,\n disabled: props.disabled,\n required: props.required,\n invalid: props.invalid,\n }});\n native.setAttribute('role', 'switch');\n setAttribute({el: native, attr: 'aria-checked', value: checked ? 'true' : 'false'});\n\n setAttribute({el: root(), attr: 'data-state', value: state});\n setPresence({el: root(), attr: 'data-checked', present: checked});\n syncControlPresence({el: root(), state: props});\n setAttribute({el: native, attr: 'data-state', value: state});\n setPresence({el: native, attr: 'data-checked', present: checked});\n\n const track = root().querySelector<HTMLElement>('[data-ui-switch-track]');\n if (track) {\n setAttribute({el: track, attr: 'data-state', value: state});\n setPresence({el: track, attr: 'data-checked', present: checked});\n syncControlPresence({el: track, state: {disabled: props.disabled, invalid: props.invalid}});\n }\n const thumb = root().querySelector<HTMLElement>('[data-ui-switch-thumb]');\n if (thumb) {\n setAttribute({el: thumb, attr: 'data-state', value: state});\n setPresence({el: thumb, attr: 'data-checked', present: checked});\n setPresence({el: thumb, attr: 'data-disabled', present: props.disabled});\n setPresence({el: thumb, attr: 'data-invalid', present: props.invalid});\n }\n };\n const dispatchNative = (type: 'input' | 'change'): void => {\n dispatching = true;\n try { input().dispatchEvent(new Event(type, {bubbles: true})); } finally { dispatching = false; }\n };\n const bridge = createAlpineMachine({\n schema: switchControlSchema,\n hooks: switchHooks,\n createMachine: ({props}) => createSwitchMachine({props, effects: {\n sync: syncDom,\n emitInput: () => dispatchNative('input'),\n emitChange: () => dispatchNative('change'),\n }}),\n });\n\n return {\n ...bridge,\n init(): void {\n rootEl = this.$el;\n inputEl = root().querySelector<HTMLInputElement>('[data-ui-switch-input]');\n if (!inputEl) throw new Error('Switch requires a native checkbox input.');\n bridge.connect(rootEl, this.snapshot);\n addListener({target: inputEl, event: 'change', handler: () => {\n if (!dispatching) bridge.send({type: 'NATIVE_CHANGED', checked: input().checked});\n }, cleanup: listeners});\n addListener({target: inputEl, event: 'keydown', handler: (event) => {\n if (!(event instanceof KeyboardEvent) || event.key !== 'Enter' || input().disabled) return;\n event.preventDefault();\n bridge.send('TOGGLE');\n }, cleanup: listeners});\n syncDom();\n },\n destroy(): void {\n listeners.splice(0).reverse().forEach((cleanup) => cleanup());\n bridge.disconnect();\n rootEl = null;\n inputEl = null;\n },\n get checked(): boolean {\n return bridge.getCommittedSnapshot().context.selection.checked;\n },\n setChecked(checked: boolean): void {\n if (checked === bridge.getCommittedSnapshot().context.selection.checked) return;\n bridge.send({type: 'SET_CHECKED', checked});\n },\n };\n};\n\nconst registerSwitch = defineAlpineData('UiSwitch', UiSwitch);\n\nexport {registerSwitch, UiSwitch};\nexport type {SwitchData, UiSwitchApi};\n","// Generated by scripts/generate_component_entries.mjs from packages/client/component-entries.json.\n// Do not edit by hand.\nimport type {Alpine as AlpineType} from 'alpinejs';\n\nimport {registerSwitch as registerComponent} from './index';\n\nconst registered = new WeakSet<AlpineType>();\n\nconst registerSwitch = (AlpineInstance: AlpineType): void => {\n if (registered.has(AlpineInstance)) return;\n registered.add(AlpineInstance);\n\n registerComponent(AlpineInstance);\n};\n\nexport {registerSwitch};\nexport default registerSwitch;\nexport * from './index';\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{t as e}from"./capability-motion-wMoceguq.js";import{c as t,f as n,l as r,n as i,s as a,u as o}from"./codecs-Cb1ns_47.js";import{n as s,r as c,s as l,t as u}from"./dom-qAeVl7dc.js";import{i as d,t as ee}from"./alpine-machine-BS13dbK4.js";import{t as f}from"./alpine-data-DZ17j0jc.js";import{t as p}from"./anchored-popover-BXEMsLrA.js";import{n as m,t as h}from"./styles-TfvwVPGw.js";import{t as te}from"./merge-bindings-C8ewA_FD.js";import{t as ne}from"./machine-Dqut4h89.js";import{n as g,t as _}from"./props-change-2xfsIAEN.js";import{t as re}from"./dismissable-layer-BROE-Ln2.js";import{i as ie,n as ae,r as oe,t as se}from"./form-control-BkVb2Qed.js";import{o as ce}from"./focus-scope-DtaPVNl5.js";import{t as le}from"./semantic-observer-BUswpsNx.js";import{n as v,t as y}from"./scroll-lock-DOw7dmi1.js";import{D as b,S as x,T as S,a as C,b as w,d as T,f as E,g as D,i as O,m as ue,n as de,o as k,p as A,r as j,s as M,t as N,u as fe,w as P,x as F}from"./common-BOd_thC-.js";var I=e=>e.trim().toLowerCase(),pe=e=>{if(e)try{return JSON.parse(e)}catch{return}},me=(e,t)=>{if(!(!t||e==null))return t.split(`.`).reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e)},he=h({definition:{component:`ui.badge`,parts:{root:{base:[`inline-flex min-w-0 shrink-0 select-none items-center justify-center gap-1 whitespace-nowrap font-badge outline-none`,`data-disabled:pointer-events-none`],variants:{variant:{soft:``,surface:``,outline:``,solid:``},color:{neutral:``,accent:``,success:``,warning:``,danger:``},size:{xs:`min-h-control-xs px-badge-padding-xs text-badge-xs [font-weight:var(--font-weight-badge-xs)]`,sm:`min-h-control-sm px-badge-padding-sm text-badge-sm [font-weight:var(--font-weight-badge-sm)]`,md:`min-h-control-md px-badge-padding-md text-badge-md [font-weight:var(--font-weight-badge-md)]`,lg:`min-h-control-lg px-badge-padding-lg text-badge-lg [font-weight:var(--font-weight-badge-lg)]`,xlg:`min-h-control-xlg px-badge-padding-xlg text-badge-xlg [font-weight:var(--font-weight-badge-xlg)]`},radius:C,insetLeft:{true:``,false:``},insetRight:{true:``,false:``},insetTop:{true:`-mt-1`,false:``},insetBottom:{true:`-mb-1`,false:``}},compounds:[{when:{insetLeft:!0,size:`xs`},class:`-ml-1.5`},{when:{insetLeft:!0,size:`sm`},class:`-ml-2`},{when:{insetLeft:!0,size:`md`},class:`-ml-2.5`},{when:{insetRight:!0,size:`xs`},class:`-mr-1.5`},{when:{insetRight:!0,size:`sm`},class:`-mr-2`},{when:{insetRight:!0,size:`md`},class:`-mr-2.5`}],defaults:{variant:`soft`,color:`neutral`,size:`sm`,radius:`sm`,insetLeft:!1,insetRight:!1,insetTop:!1,insetBottom:!1}},label:{base:`contents`},icon:{base:`shrink-0 fill-current text-current`,variants:{size:{xs:`size-icon-xs`,sm:`size-icon-xs`,md:`size-icon-sm`,lg:`size-icon-sm`,xlg:`size-icon`},position:{leading:``,trailing:``}},defaults:{size:`sm`,position:`leading`}},close:{base:[`-mr-1 inline-flex shrink-0 items-center justify-center rounded-full text-current outline-none`,`data-disabled:pointer-events-none`],variants:{size:{xs:`size-badge-close-xs`,sm:`size-badge-close-sm`,md:`size-badge-close-md`,lg:`size-badge-close-lg`,xlg:`size-badge-close-xlg`}},defaults:{size:`sm`}},closeIcon:{base:`size-icon-xs shrink-0 fill-current text-current`}}}}),L=[`soft`,`surface`,`outline`,`solid`],R=[`neutral`,`accent`,`success`,`warning`,`danger`],z=k,ge=[`span`,`button`],B=de,V=D,_e=j;r(L,`soft`),r(R,`neutral`),r(z,`sm`),r(_e,`sm`),r(ge,`span`),r(B,`button`),r(V,`mini`),r(B,`button`),n.default(`close`),r(V,`mini`),r(z,`sm`),n.default(`Remove`);var H=[`listbox`,`combobox`,`pillbox`,`native`],ve=M,ye=k,be=j,xe=S,Se=N,Ce=D,we=[`stay`,`close`],Te=[`check`,`checkbox`,`none`],U=b,Ee=fe,W={name:n,optionsId:n,value:n,values:a.array([]),placeholder:n,mode:r(H,`listbox`),multiple:i,searchable:i,creatable:i,filter:i.default(!0),clearable:i,clear:r(we,`stay`),suffix:n.default(`selected`),mark:r(Te,`check`),open:i,disabled:i,readonly:i,required:i,invalid:i,autoHighlight:i.default(!0),loop:i.default(!0),path:n,size:r(ye,`lg`),variant:r(ve,`outline`),radius:r(be,`md`),surface:r(U,`+2`),elevation:r(Ee,`3`),side:r(xe,`bottom`),align:r(Se,`start`),offset:t.clamp(-100,100).default(0),gap:t.clamp(0,50).default(4),empty:n.default(`No results found.`),icon:n,iconTrailing:n.default(`chevron__down`),iconVariant:r(Ce,`outline`),buttonClass:n,inputClass:n,listboxClass:n,optionClass:n,chipVariant:r(L,`soft`),chipColor:r(R,`neutral`),chipClass:n,class:n};r(Ce,`outline`),t.clamp(0,100).default(0);var De=[d({name:`opening`,state:`disclosure.opening`,project:()=>({}),onDone:`OPENING_DONE`,onError:`OPENING_ERROR`,sends:{close:()=>({type:`CLOSE`})}}),d({name:`closing`,state:`disclosure.closing`,project:()=>({}),onDone:`CLOSING_DONE`,onError:`CLOSING_ERROR`,sends:{open:()=>({type:`OPEN`})}}),d({name:`searching`,state:`feature.searching`,project:e=>({query:e.context.search.query,optionsId:e.context.search.optionsId}),onDone:`SEARCHING_DONE`,onError:`SEARCHING_ERROR`,sends:{search:e=>({type:`SEARCH`,query:e}),close:()=>({type:`CLOSE`})}}),d({name:`creating`,state:`feature.creating`,project:e=>({query:e.context.search.query,value:e.context.creation.value}),onDone:`CREATING_DONE`,onError:`CREATING_ERROR`,sends:{close:()=>({type:`CLOSE`})}})],G=e=>g(e)?.props??null,Oe=e=>e.disabled||e.readonly,K=({event:e})=>{let t=G(e);return!t||Oe(t)||!t.open?!1:_(e,`open`,`disabled`,`readonly`)},q=({event:e})=>{let t=G(e);return t?_(e,`open`)&&!t.open||_(e,`disabled`)&&t.disabled||_(e,`readonly`)&&t.readonly:!1},J=({event:e})=>{let t=G(e);return!!(t&&(_(e,`disabled`)&&t.disabled||_(e,`readonly`)&&t.readonly||_(e,`searchable`)&&!t.searchable))},Y=e=>!Array.isArray(e.values)||!Array.isArray(e.labels)?null:{values:e.values.filter(e=>typeof e==`string`),labels:e.labels.filter(e=>typeof e==`string`)},ke=({props:e,context:t,effects:n})=>ne({type:`parallel`,states:{disclosure:{initial:`closed`,states:{closed:{tags:[`closed`],on:{OPEN:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},TOGGLE:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},SEARCH:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},PROPS_CHANGED:{target:`opening`,guard:K,effects:`prepareOpen`}}},opening:{tags:[`visible`,`expanded`,`interactive`,`transitioning`],on:{OPENING_DONE:{target:`open`,effects:`finishOpen`},OPENING_ERROR:{target:`open`,effects:`finishOpen`},CLOSE:{target:`closing`,effects:`prepareClose`},TOGGLE:{target:`closing`,effects:`prepareClose`},CREATE:{target:`closing`,effects:`prepareClose`},SELECT:{target:`closing`,guard:`single`,effects:`prepareClose`},CLEAR:{target:`closing`,guard:`clearCloses`,effects:`prepareClose`},PROPS_CHANGED:{target:`closing`,guard:q,effects:`prepareClose`}}},open:{tags:[`visible`,`expanded`,`interactive`,`open`],on:{CLOSE:{target:`closing`,effects:`prepareClose`},TOGGLE:{target:`closing`,effects:`prepareClose`},CREATE:{target:`closing`,effects:`prepareClose`},SELECT:{target:`closing`,guard:`single`,effects:`prepareClose`},CLEAR:{target:`closing`,guard:`clearCloses`,effects:`prepareClose`},PROPS_CHANGED:{target:`closing`,guard:q,effects:`prepareClose`}}},closing:{tags:[`visible`,`transitioning`],on:{CLOSING_DONE:{target:`closed`,effects:`finishClose`},CLOSING_ERROR:{target:`closed`,effects:`finishClose`},OPEN:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},TOGGLE:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},SEARCH:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},PROPS_CHANGED:{target:`opening`,guard:K,effects:`prepareOpen`}}}}},feature:{initial:`idle`,on:{SELECT:{reduce:`replaceSelection`,effects:`commitSelection`},DESELECT:{reduce:`replaceSelection`,effects:`commitSelection`},SELECT_ALL:{reduce:`replaceSelection`,effects:`commitSelection`},RECONCILE_SELECTION:{reduce:`replaceSelection`,effects:`syncActive`},CLEAR:{reduce:`clear`,effects:`commitSelection`},ACTIVE:{reduce:`setActive`,effects:`syncActive`},OPTIONS_CHANGED:{effects:`syncOptions`},CLOSING_DONE:{reduce:`resetTransient`,effects:`syncActive`},CLOSING_ERROR:{reduce:`resetTransient`,effects:`syncActive`}},states:{idle:{on:{CLOSE:{},SEARCH:{target:`searching`,reduce:`setSearch`,effects:`commitSearch`},CREATE:{target:`creating`,reduce:`setCreation`,effects:`prepareCreate`},PROPS_CHANGED:{reduce:`replaceProps`,effects:`syncProps`}}},searching:{tags:[`searching`],on:{SEARCH:{target:`searching`,reduce:`setSearch`,effects:`commitSearch`},CREATE:{target:`creating`,reduce:`setCreation`,effects:`prepareCreate`},CLOSE:{target:`idle`},SEARCHING_DONE:`idle`,SEARCHING_ERROR:`idle`,PROPS_CHANGED:[{target:`idle`,guard:J,reduce:`replaceProps`,effects:`syncProps`},{reduce:`replaceProps`,effects:`syncProps`}]}},creating:{tags:[`creating`],on:{SEARCH:{target:`searching`,reduce:`setSearch`,effects:`commitSearch`},CREATE:{target:`creating`,reduce:`setCreation`,effects:`prepareCreate`},CLOSE:{target:`idle`},CREATING_DONE:{target:`idle`},CREATING_ERROR:{target:`idle`},PROPS_CHANGED:[{target:`idle`,guard:J,reduce:`replaceProps`,effects:`syncProps`},{reduce:`replaceProps`,effects:`syncProps`}]}}}}}},{context:t,props:e,reducers:{replaceProps:({event:e})=>{let t=G(e);return t?{props:t}:void 0},replaceSelection:({context:e,event:t})=>{let n=Y(t);if(n)return{context:{...e,selection:n}}},clear:({context:e})=>({context:{...e,selection:{values:[],labels:[]},search:{...e.search,query:``},navigation:{activeValue:``}}}),setSearch:({context:e,event:t})=>({context:{...e,search:{query:typeof t.query==`string`?t.query:``,optionsId:typeof t.optionsId==`string`?t.optionsId:e.search.optionsId},navigation:{activeValue:typeof t.activeValue==`string`?t.activeValue:e.navigation.activeValue}}}),setActive:({context:e,event:t})=>({context:{...e,navigation:{activeValue:typeof t.value==`string`?t.value:``}}}),setCreation:({context:e,event:t})=>({context:{...e,creation:{value:typeof t.value==`string`?t.value:e.search.query}}}),resetTransient:({context:e})=>({context:{...e,search:{...e.search,query:``},navigation:{activeValue:``},creation:{value:``}}})},guards:{canOpen:({props:e})=>!Oe(e),single:({props:e})=>!e.multiple,clearCloses:({props:e})=>e.clear===`close`},effects:{prepareOpen:n.prepareOpen,finishOpen:n.finishOpen,prepareClose:n.prepareClose,finishClose:n.finishClose,commitSelection:n.commitSelection,commitSearch:n.commitSearch,prepareCreate:n.prepareCreate,syncProps:n.syncProps,syncOptions:n.syncOptions,syncActive:n.syncActive}}),Ae=640,X=256,je=520,Me=.72,Z=12,Ne=16,Pe=720,Fe=720,Ie=({viewportWidth:e,viewportHeight:t,layoutViewportHeight:n,referenceTop:r,referenceBottom:i,touch:a})=>{if(e<=Ae)return`fullscreen`;let o=t<je||t<n*Me;if(a&&o)return`fullscreen`;if(a)return`dialog`;let s=Math.max(0,r),c=Math.max(0,t-i);return Math.max(s,c)<X?`dialog`:`anchored`},Le=()=>{let e=window.visualViewport;return e?{width:e.width,height:e.height,offsetTop:e.offsetTop,offsetLeft:e.offsetLeft}:{width:window.innerWidth,height:window.innerHeight,offsetTop:0,offsetLeft:0}},Re=()=>window.matchMedia?.(`(any-pointer: coarse)`).matches===!0||navigator.maxTouchPoints>0,ze=e=>{let t=p(e),n=!1,r=`anchored`,i=!1,a=null,o=()=>e.floating(),s=e=>{e!==i&&(i=e,e?y():v())},c=e=>{e.style.removeProperty(`border-radius`),e.style.removeProperty(`height`),e.style.removeProperty(`inset`),e.style.removeProperty(`max-height`),e.style.removeProperty(`max-width`),e.style.removeProperty(`position`),e.style.removeProperty(`transform-origin`),e.style.removeProperty(`width`)},l=(e,t)=>{let n=Le(),r=t===`dialog`?Ne:Z,i=t===`dialog`?Pe:1/0,a=t===`dialog`?Fe:1/0,o=Math.min(i,Math.max(0,n.width-r*2)),s=Math.min(a,Math.max(0,n.height-r*2)),c=n.offsetLeft+(n.width-o)/2,l=n.offsetTop+(n.height-s)/2;Object.assign(e.style,{borderRadius:`var(--radius-overlay-md)`,position:`fixed`,inset:`${l}px auto auto ${c}px`,width:`${o}px`,height:`${s}px`,maxWidth:`none`,maxHeight:`none`,transformOrigin:`center`})},u=()=>{let t=Le(),n=e.reference().getBoundingClientRect();return Ie({viewportWidth:t.width,viewportHeight:t.height,layoutViewportHeight:window.innerHeight,referenceTop:n.top-t.offsetTop,referenceBottom:n.bottom-t.offsetTop,touch:Re()})},d=()=>{if(!n)return;let i=o(),a=u();r=a,i.dataset.presentation=a;let d=i.querySelector(`[data-ui-select-sheet-heading]`);if(d&&(d.style.display=a===`anchored`?`none`:`flex`),a===`anchored`){i.removeAttribute(`aria-modal`),i.removeAttribute(`aria-labelledby`),i.removeAttribute(`role`),s(!1),c(i),t.mount();return}t.unmount(),i.setAttribute(`role`,`dialog`),i.setAttribute(`aria-modal`,`true`),i.setAttribute(`aria-labelledby`,e.labelId()),s(!0),l(i,a)},ee=()=>{let e=()=>d(),t=window.visualViewport,n=window.matchMedia?.(`(any-pointer: coarse)`);return window.addEventListener(`resize`,e),window.addEventListener(`orientationchange`,e),t?.addEventListener(`resize`,e),t?.addEventListener(`scroll`,e),n?.addEventListener(`change`,e),()=>{window.removeEventListener(`resize`,e),window.removeEventListener(`orientationchange`,e),t?.removeEventListener(`resize`,e),t?.removeEventListener(`scroll`,e),n?.removeEventListener(`change`,e)}},f=()=>{if(!n){n=!0;try{o().showPopover()}catch{}d(),a=ee()}},m=()=>{if(n){n=!1,a?.(),a=null,t.unmount(),s(!1);try{o().hidePopover()}catch{}}};return{opened:()=>n,open:f,close:m,sync:d,destroy:m,presentation:()=>r}},Q=h({definition:{component:`ui.select`,parts:{root:{base:`relative inline-grid w-full min-w-0`},control:{base:ue,variants:{size:O,radius:C,variant:{outline:``,filled:``},mode:{listbox:``,combobox:``,pillbox:`flex-wrap gap-1 py-0.5`,native:``},empty:{true:``,false:``}},compounds:[{when:{mode:`pillbox`,empty:!1},class:`!pl-1.5`}],defaults:{size:`lg`,variant:`outline`,radius:`md`,mode:`listbox`,empty:!1}},button:{base:[`flex min-w-0 flex-1 items-center gap-2 border-0 bg-transparent p-0 text-left text-inherit outline-none`]},pillboxTrigger:{base:`min-w-16 self-stretch`},value:{base:`min-w-0 flex-1`},placeholder:{base:`min-w-0 flex-1 text-surface-ink-muted`},input:{base:[`w-full min-w-16 flex-1`,E]},search:{base:[`flex min-h-control-xlg shrink-0 items-center gap-2 px-3`,`text-sm`]},searchInput:{base:[`min-w-0 flex-1 text-sm`,E]},sheetHeader:{base:``},sheetHeading:{base:`min-w-0 items-center gap-3 px-4 pt-4`},sheetTitle:{base:`min-w-0 flex-1 truncate text-base font-medium`},sheetClose:{base:[`inline-flex size-control-md shrink-0 items-center justify-center rounded-control-sm border-0 bg-transparent`,`text-surface-ink-muted outline-none focus-visible:ui-focus-ring`]},chips:{base:`flex min-w-0 flex-wrap items-center gap-1`},chip:{base:[`max-w-64`]},chipLabel:{base:`block min-w-0 flex-1 truncate`},chipRemove:{base:``},icon:{base:`size-icon shrink-0 fill-current text-surface-ink-muted`,variants:{position:{leading:``,trailing:``}},defaults:{position:`leading`}},action:{base:T},popover:{base:[P,`overflow-hidden rounded-overlay-sm`]},listbox:{base:`min-h-0 outline-none`},viewport:{base:`min-h-0`},options:{base:`grid auto-rows-min content-start gap-1 p-popover-padding`},create:{base:`shrink-0 p-popover-padding`},option:{base:[x,`[&:has([data-ui-select-option-label]>*+*)]:h-auto`,`[&:has([data-ui-select-option-label]>*+*)]:items-start`,`[&:has([data-ui-select-option-label]>*+*)]:py-2`]},optionLabel:{base:`min-w-0 flex-1 truncate`},optionMeta:{base:`ml-auto text-current opacity-70`},optionIcon:{base:w,variants:{position:{leading:``,trailing:`ml-auto`}},defaults:{position:`leading`}},optionIndicator:{base:F},group:{base:`grid auto-rows-min content-start gap-1`},label:{base:`px-menu-item-padding-inline py-1`},empty:{base:`px-menu-item-padding-inline py-2 text-sm text-surface-ink-muted`},separatorRoot:{base:`-mx-popover my-popover h-[var(--border-width-edge-separator)]`},separatorRule:{base:`h-[var(--border-width-edge-separator)] w-full border-0`},nativeWrapper:{base:`relative w-full min-w-0`},native:{base:[A,`appearance-none pe-10`],variants:{size:O,radius:C},defaults:{size:`lg`,radius:`md`}},nativeIcon:{base:`pointer-events-none absolute right-3 top-1/2 size-icon -translate-y-1/2 fill-current text-icon`}}}}),$=`[data-ui-select-option], [data-ui-select-option-create]`,Be=`template[data-ui-select-option-selected-template]`,Ve=e=>{if(!(e instanceof Element)){e.childNodes.forEach(Ve);return}Array.from(e.attributes).forEach(t=>{let n=t.name;(n===`id`||n===`role`||n===`tabindex`||n.startsWith(`aria-selected`)||n.startsWith(`aria-disabled`)||n.startsWith(`data-ui-select-option`)||n.startsWith(`data-selected`)||n.startsWith(`data-highlighted`)||n.startsWith(`data-disabled`)||n.startsWith(`x-`)||n.startsWith(`@`)||n.startsWith(`:`)||n.startsWith(`on`))&&e.removeAttribute(n)}),e.childNodes.forEach(Ve),e.setAttribute(`x-ignore`,`true`)},He=e=>{let t=document.createDocumentFragment();return Array.from(e).forEach(e=>{if(e instanceof HTMLTemplateElement&&e.matches(Be))return;let n=e.cloneNode(!0);Ve(n),t.append(n)}),t},Ue=(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n]),We=()=>{let e=null,t=!1,n=``,r=``,i=``,a=``,d=null,f=null,p=[],h=``,ne=``,g=!1,_=!1,v=null,y=``,b=0,x=()=>{if(!e)throw Error(`Select has not been initialized.`);return e},S=()=>{let e=x().querySelector(`[data-ui-select-control]`);if(!e)throw Error(`Select requires a control element.`);return e},C=()=>{let e=x().querySelector(`[data-ui-select-trigger], [data-ui-select-button], [data-ui-select-input]`);if(!e)throw Error(`Select requires a trigger element.`);return e},w=()=>x().querySelector(`[data-ui-select-input]`),T=()=>x().querySelector(`[data-ui-select-search-input]`),E=()=>{let e=x().querySelector(`[data-ui-select-sheet-title]`);if(!e)throw Error(`Select requires an adaptive picker title.`);return e},D=()=>{let e=x().querySelector(`[data-ui-select-popover]`);if(!e)throw Error(`Select requires a popover element.`);return e},O=()=>{let e=x().querySelector(`[data-ui-select-listbox]`);if(!e)throw Error(`Select requires a listbox element.`);return e},ue=()=>{let e=x().querySelector(`[data-ui-select-options]`);if(!e)throw Error(`Select requires an options element.`);return e},de=()=>x().querySelector(`[data-ui-select-chips]`),k=()=>x().querySelector(`[data-ui-select-hidden-inputs]`),A=()=>K.getCommittedSnapshot().props,j=()=>K.getCommittedSnapshot().context,M=()=>K.hasTag(`expanded`),N=()=>K.hasTag(`visible`),fe=(e,t)=>{let n=e.dataset.label||e.getAttribute(`aria-label`)||``;if(n)return n;if(e.dataset.textValue)return e.dataset.textValue;let r=me(pe(e.dataset.item),t.path);return r==null?(e.querySelector(`[data-ui-select-option-label]`)?.textContent??e.textContent??``).trim():String(r)},P=({props:e,query:t,selectedValues:n})=>{let r=I(t),a=Array.from(x().querySelectorAll($)).map((a,o)=>{let c=fe(a,e),l=a.dataset.value||c,u=a.hasAttribute(`data-ui-select-option-create`),d=r!==``&&I(c)===r,ee=!e.filter||r===``||I(`${c} ${a.dataset.suffix??``}`).includes(r),f=Number(a.dataset.minLength??`0`);return{el:a,id:a.id||`${i}-option-${o}`,value:u?a.dataset.value||t:l,label:c,selectedLabel:a.dataset.selectedLabel||c,disabled:s({value:a.dataset.disabled}),selected:n.includes(l),visible:u?t.length>=f&&!d:ee,create:u}});return a.some(e=>!e.create&&I(e.label)===r)?a.map(e=>e.create?{...e,visible:!1}:e):a},F=(e=j().search.query)=>P({props:A(),query:e,selectedValues:j().selection.values}),L=(e=j().search.query)=>F(e).filter(e=>e.visible&&!e.disabled&&!e.create),R=(e,t=A())=>{let n=Array.from(new Set(e.filter(Boolean))),r=t.multiple?n:n.slice(0,1),i=P({props:t,query:``,selectedValues:r});return{values:r,labels:r.map(e=>i.find(t=>t.value===e)?.selectedLabel??e)}},z=e=>e.multiple?Array.from(new Set([...e.values,...e.value?[e.value]:[]])):e.value?[e.value]:e.values.slice(0,1),ge=e=>{let t=z(e),n=P({props:e,query:``,selectedValues:[]}).filter(e=>s({value:e.el.dataset.selected})).map(e=>e.value);return{selection:R(t.length>0?t:n,e),search:{query:``,optionsId:``},navigation:{activeValue:``},creation:{value:``}}},B=()=>{let{selection:e}=j(),t=A();return e.values.length===0||t.mode===`pillbox`&&t.multiple?``:t.multiple&&e.values.length>1?`${e.values.length} ${t.suffix}`:e.labels[0]??e.values[0]??``},V=e=>{let t=e.el.querySelector(Be);if(t)return He(t.content.childNodes);let n=e.el.querySelector(`[data-ui-select-option-selected-content]`)??e.el.querySelector(`[data-ui-select-option-label]`);if(n)return He(n.childNodes);let r=document.createDocumentFragment();return r.append(document.createTextNode(e.selectedLabel)),r},_e=()=>{let e=A();if(t){let t=j().selection.values;(M()||!e.open||!e.disabled&&!e.readonly)&&o({el:x(),schema:W,key:`open`,value:M()}),o({el:x(),schema:W,key:`value`,value:e.multiple?``:t[0]??``}),o({el:x(),schema:W,key:`values`,value:e.multiple?[...t]:[]})}x().dataset.state=M()?`open`:`closed`,x().dataset.mark=e.mark,ae({el:x(),state:{disabled:e.disabled,required:e.required,invalid:e.invalid},value:`true`})},H=()=>A().mode===`pillbox`&&A().multiple,ve=()=>{let e=A(),t=H()&&j().selection.values.length===0,n=S();n.className=m({part:Q.parts.control,props:{...e,mode:H()?`pillbox`:e.mode===`combobox`?`combobox`:`listbox`,empty:t}}),n.dataset.state=M()?`open`:`closed`,n.dataset.mode=H()?`pillbox`:e.mode,l({el:n,attr:`data-ui-select-pillbox-control`,present:H(),value:``}),l({el:n,attr:`data-empty`,present:t,value:`true`}),ae({el:n,state:{disabled:e.disabled,invalid:e.invalid},value:`true`})},ye=()=>{let e=A(),t=C();t.id||=n,t.dataset.state=M()?`open`:`closed`,t.setAttribute(`aria-haspopup`,`listbox`),t.setAttribute(`aria-expanded`,M()?`true`:`false`),t.setAttribute(`aria-controls`,i),l({el:t,attr:`aria-invalid`,present:e.invalid,value:`true`}),t instanceof HTMLButtonElement&&(t.disabled=e.disabled);let r=B(),a=x().querySelector(`[data-ui-select-button-value]`),o=x().querySelector(`[data-ui-select-button-placeholder]`);if(a){a.replaceChildren();let e=j().selection.values.length===1&&r?F(``).find(e=>e.value===j().selection.values[0]):void 0;e?a.append(V(e)):a.textContent=r,a.hidden=r===``}o&&(o.hidden=H()?j().selection.values.length>0:r!==``),x().querySelectorAll(`[data-ui-select-clear], [data-ui-select-button-clear]`).forEach(t=>{t.hidden=e.disabled||!e.clearable||j().selection.values.length===0,t instanceof HTMLButtonElement&&(t.disabled=e.disabled)}),x().querySelectorAll(`[data-ui-select-search-clear]`).forEach(t=>{t.hidden=e.disabled||!j().search.query,t instanceof HTMLButtonElement&&(t.disabled=e.disabled)})},be=()=>{let e=A(),t=j(),n=w();n&&(n.id||=r,n.className=m({part:Q.parts.input,className:e.inputClass}),n.value=H()||M()&&g?t.search.query:B(),n.placeholder=H()&&t.selection.values.length>0?``:e.placeholder,n.setAttribute(`role`,`combobox`),n.setAttribute(`autocomplete`,`off`),n.setAttribute(`aria-autocomplete`,`list`),n.setAttribute(`aria-expanded`,M()?`true`:`false`),n.setAttribute(`aria-controls`,i),oe({input:n,state:{disabled:e.disabled,readonly:e.readonly,required:e.required,nativeRequired:!1,invalid:e.invalid,ariaRequired:e.required}}));let a=T();a&&(a.value=t.search.query,a.disabled=e.disabled,a.readOnly=e.readonly);let o=F().find(e=>e.value===t.navigation.activeValue);[C(),n,a,O()].forEach(e=>{o?.id?e?.setAttribute(`aria-activedescendant`,o.id):e?.removeAttribute(`aria-activedescendant`)})},xe=()=>{let e=A(),t=D(),n=O();t.id=`${i}-popover`,t.className=m({part:Q.parts.popover,props:e,className:e.listboxClass}),t.dataset.uiSurface=e.surface,t.dataset.uiElevation=e.elevation,t.setAttribute(`popover`,`manual`),t.dataset.state=M()?`open`:`closed`,t.hidden=!N(),n.id=i,n.setAttribute(`role`,`listbox`),n.tabIndex=-1,n.setAttribute(`aria-labelledby`,C().id),l({el:n,attr:`aria-multiselectable`,present:e.multiple,value:`true`})},Se=()=>{let e=j();x().querySelectorAll(`[data-ui-select-create-query]`).forEach(t=>{t.textContent=e.search.query});let t=F();t.forEach(t=>{t.el.id=t.id,t.el.hidden=!t.visible,t.el.setAttribute(`role`,`option`),t.el.setAttribute(`aria-selected`,t.selected?`true`:`false`),t.create||(t.el.dataset.value=t.value),t.create||(t.el.dataset.label=t.label),l({el:t.el,attr:`data-selected`,present:t.selected,value:`true`}),l({el:t.el,attr:`data-highlighted`,present:t.value===e.navigation.activeValue,value:`true`}),l({el:t.el,attr:`data-disabled`,present:t.disabled,value:`true`}),l({el:t.el,attr:`aria-disabled`,present:t.disabled,value:`true`}),t.el.querySelectorAll(`[data-ui-select-option-indicator]`).forEach(e=>{l({el:e,attr:`data-selected`,present:t.selected,value:`true`})})});let n=x().querySelector(`[data-ui-select-option-empty]`);n&&(n.hidden=t.some(e=>e.visible&&!e.create))},Ce=()=>JSON.stringify(Array.from(x().querySelectorAll($)).map(e=>({create:e.hasAttribute(`data-ui-select-option-create`),value:e.dataset.value??``,label:e.hasAttribute(`data-ui-select-option-create`)?e.textContent?.trim()??``:e.dataset.label??e.textContent?.trim()??``,disabled:e.dataset.disabled??``,selected:e.dataset.selected??``}))),we=()=>{let e=de();if(!e)return;let t=A(),n=j(),r=F(``),i=n.selection.values.map((e,t)=>({value:e,label:n.selection.labels[t]??e,disabled:r.find(t=>t.value===e)?.disabled??!1})),a=JSON.stringify({chips:i,pillbox:H(),disabled:t.disabled,readonly:t.readonly,variant:t.chipVariant,color:t.chipColor,className:t.chipClass});if(a===ne||(ne=a,e.replaceChildren(),e.hidden=!H()||i.length===0,e.hidden))return;let o=m({part:he.parts.root,props:{variant:t.chipVariant,color:t.chipColor,size:`sm`,radius:`sm`},className:m({part:Q.parts.chip,props:{},className:t.chipClass})}),s=m({part:Q.parts.chipLabel}),c=m({part:he.parts.close,props:{size:`sm`},className:m({part:Q.parts.chipRemove})});i.forEach(n=>{let r=document.createElement(`span`);r.className=o,r.setAttribute(`data-ui-badge`,``),r.setAttribute(`data-ui-action-recipe`,`badge`),r.setAttribute(`data-ui-select-chip`,``),r.dataset.value=n.value,r.dataset.variant=t.chipVariant,r.dataset.color=t.chipColor,r.dataset.size=`sm`,r.dataset.radius=`sm`;let i=document.createElement(`span`);i.className=s,i.setAttribute(`data-ui-select-chip-label`,``),i.textContent=n.label,r.append(i);let a=document.createElement(`button`);a.type=`button`,a.className=c,a.setAttribute(`data-ui-badge-close`,``),a.setAttribute(`data-ui-select-chip-remove`,``),a.dataset.value=n.value,a.setAttribute(`aria-label`,`Remove ${n.label}`),a.disabled=t.disabled||t.readonly||n.disabled;let l=x().querySelector(`[data-ui-select-chip-remove-icon]`);l?a.append(l.content.cloneNode(!0)):a.textContent=`x`,r.append(a),e.append(r)})},Te=()=>{let e=k();if(!e)return;let t=A();h=ie({container:e,state:{name:t.name,required:t.required,values:t.disabled?[]:[...j().selection.values],form:x().dataset.form??``,marker:`data-ui-select-hidden-input`},currentKey:h})},U=()=>{_e(),ve(),ye(),be(),xe(),Se(),we(),Te()},Ee=()=>{if(!K.hasTag(`interactive`))return;let e=A();d?.presentation()===`anchored`?e.mode===`combobox`?w()?.focus({preventScroll:!0}):(e.searchable||H())&&T()?T()?.focus({preventScroll:!0}):C().focus({preventScroll:!0}):(T()??x().querySelector(`[data-ui-select-sheet-close]`)??O()).focus({preventScroll:!0})},G=()=>{let e=j(),t=R(e.selection.values);Ue(t.labels,e.selection.labels)||K.send({type:`RECONCILE_SELECTION`,...t});let n=L();e.navigation.activeValue&&!n.some(t=>t.value===e.navigation.activeValue)&&K.send({type:`ACTIVE`,value:A().autoHighlight?n[0]?.value??``:``}),U()},Oe=e=>{if((Array.isArray(e.changes)?e.changes:[]).flatMap(e=>e&&typeof e==`object`&&`key`in e?[String(e.key)]:[]).some(e=>e===`value`||e===`values`||e===`multiple`)){let e=R(z(A()));K.send({type:`RECONCILE_SELECTION`,...e})}U()},K=ee({schema:W,hooks:De,createMachine:({props:e})=>ke({props:e,context:ge(e),effects:{prepareOpen:()=>{_=!1,d?.open(),U(),queueMicrotask(Ee)},finishOpen:()=>{U(),c({el:x(),name:`ui:open`})},prepareClose:({event:e})=>{g=!1,_=e.restoreFocus===!0||e.type===`SELECT`||e.type===`CREATE`,_&&C().focus({preventScroll:!0}),U()},finishClose:()=>{d?.close(),U(),_&&C().focus({preventScroll:!0}),_=!1,c({el:x(),name:`ui:close`})},commitSelection:({event:e})=>{U(),se({container:k(),fallback:x(),marker:`data-ui-select-hidden-input`});let{selection:t}=j();e.type===`CLEAR`&&c({el:x(),name:`ui:clear`}),c({el:x(),name:`ui:change`,detail:{value:t.values[0]??``,values:[...t.values],label:t.labels[0]??``,labels:[...t.labels],option:v}}),v=null},commitSearch:()=>{U(),c({el:x(),name:`ui:search`,detail:{search:j().search.query}})},prepareCreate:({event:e})=>{U(),c({el:x(),name:`ui:create`,detail:{search:j().search.query,value:j().creation.value,modal:typeof e.modal==`string`?e.modal:``}})},syncProps:({event:e})=>Oe(e),syncOptions:G,syncActive:U}})}),q=(e,t)=>K.send({type:e,...t}),J=(e,t)=>{t?.preventDefault();let n=A();if(!(n.disabled||n.readonly||e.disabled)){if(e.create){K.send({type:`CREATE`,value:e.value||j().search.query,modal:e.el.dataset.modal??``});return}v=e.el,g=!1,q(`SELECT`,R(n.multiple?j().selection.values.includes(e.value)?j().selection.values.filter(t=>t!==e.value):[...j().selection.values,e.value]:[e.value]))}},Y=e=>{if(e===j().navigation.activeValue)return;K.send({type:`ACTIVE`,value:e});let t=F().find(t=>t.value===e);c({el:x(),name:`ui:highlight`,detail:{value:e,option:t?.el??null}})},Ae=e=>{let t=L();if(t.length===0)return;let n=t.findIndex(e=>e.value===j().navigation.activeValue),r=n<0?e>0?0:t.length-1:n+e;r>=t.length&&(r=A().loop?0:t.length-1),r<0&&(r=A().loop?t.length-1:0),Y(t[r]?.value??``)},X=e=>{let t=A();if(t.disabled||t.readonly)return;g=!0;let n=t.autoHighlight?L(e)[0]?.value??``:``;K.send({type:`SEARCH`,query:e,optionsId:a,activeValue:n})},je=e=>{if(e.key===`Tab`&&d?.presentation()!==`anchored`){ce(e,D());return}let t=e.target instanceof HTMLInputElement;if(e.key===`ArrowDown`||e.key===`ArrowUp`){e.preventDefault(),M()||K.send({type:`OPEN`}),Ae(e.key===`ArrowDown`?1:-1);return}if(!t&&M()&&(e.key===`Home`||e.key===`End`)){e.preventDefault();let t=L();Y(e.key===`Home`?t[0]?.value??``:t.at(-1)?.value??``);return}if(M()&&(e.key===`Enter`||!t&&e.key===` `)){let t=F().find(e=>e.value===j().navigation.activeValue);t&&J(t,e);return}if((e.key===`Backspace`||e.key===`Delete`)&&H()&&!j().search.query){let t=w();if(t&&(t.selectionStart!==0||t.selectionEnd!==0))return;let n=[...j().selection.values].reverse().find(e=>!F(``).find(t=>t.value===e)?.disabled);n&&(e.preventDefault(),Z.deselect(n,e));return}if(e.key===`Escape`&&N()){e.preventDefault(),e.stopPropagation(),K.send({type:`CLOSE`,restoreFocus:!0});return}if(!t&&!A().searchable&&e.key.length===1&&!e.metaKey&&!e.ctrlKey&&!e.altKey){y+=e.key.toLowerCase(),window.clearTimeout(b),b=window.setTimeout(()=>{y=``},500);let t=L().find(e=>I(e.label).startsWith(y));t&&Y(t.value)}},Me=()=>{let e=x(),t=(e,t)=>t.closest(`[data-ui-select-trigger], [data-ui-select-icon="trailing"], [data-ui-select-control]`)?(e.preventDefault(),C().focus({preventScroll:!0}),C()instanceof HTMLInputElement?M()||K.send({type:`OPEN`}):Z.toggle(e),!0):!1;u({target:e,event:`click`,cleanup:p,handler:e=>{let n=e.target;if(!(n instanceof Element))return;if(n.closest(`[data-ui-select-sheet-close]`)){Z.close(e);return}if(n.closest(`[data-ui-select-search-clear]`)){e.preventDefault(),X(``);return}if(n.closest(`[data-ui-select-clear], [data-ui-select-button-clear]`)){Z.clear(e);return}let r=n.closest(`[data-ui-select-chip-remove]`);if(r){Z.deselect(r.dataset.value??``,e);return}let i=n.closest($);if(i){let t=F().find(e=>e.el===i);t&&J(t,e);return}(!(e instanceof MouseEvent)||e.detail===0)&&t(e,n)}}),u({target:e,event:`input`,cleanup:p,handler:e=>{let t=e.target;t instanceof HTMLInputElement&&t.matches(`[data-ui-select-input], [data-ui-select-search-input]`)&&X(t.value)}}),u({target:e,event:`keydown`,cleanup:p,handler:e=>{e instanceof KeyboardEvent&&je(e)}}),u({target:e,event:`pointerdown`,cleanup:p,handler:e=>{let n=e.target;if(n instanceof Element){if(n.closest($)||n.closest(`[data-ui-select-search-clear]`)||n.closest(`[data-ui-select-clear], [data-ui-select-button-clear], [data-ui-select-chip-remove]`)){e.preventDefault();return}t(e,n)}}}),u({target:e,event:`pointerover`,cleanup:p,handler:e=>{let t=e.target;if(!(t instanceof Element))return;let n=t.closest($),r=n?F().find(e=>e.el===n):void 0;r&&r.visible&&!r.disabled&&Y(r.value)}}),u({target:e,event:`focusout`,cleanup:p,handler:t=>{if(!(t instanceof FocusEvent))return;let n=t.relatedTarget;n instanceof Node&&e.contains(n)||N()&&K.send({type:`CLOSE`})}}),u({target:D(),event:`toggle`,cleanup:p,handler:e=>{!(`newState`in e)||e.newState!==`closed`||!N()||K.send({type:`CLOSE`})}}),p.push(re({isEnabled:()=>K.hasTag(`interactive`),roots:()=>[x(),D()],onDismiss:()=>K.send({type:`CLOSE`})})),f=le({targets:O(),read:Ce,onChange:()=>K.send({type:`OPTIONS_CHANGED`}),observer:{childList:!0,subtree:!0}})},Z;return Z={...K,get isOpen(){return this.snapshot.current?.tags.includes(`expanded`)??!1},get isSearching(){return this.snapshot.current?.tags.includes(`searching`)??!1},get value(){return this.snapshot.current?.context.selection.values[0]??``},get values(){return[...this.snapshot.current?.context.selection.values??[]]},get selectedLabels(){return[...this.snapshot.current?.context.selection.labels??[]]},get search(){return this.snapshot.current?.context.search.query??``},get activeValue(){return this.snapshot.current?.context.navigation.activeValue??``},init(){e=this.$el,n=this.$id(`select-button`),r=this.$id(`select-input`),i=this.$id(`select-listbox`),a=ue().id||x().dataset.optionsId||this.$id(`select-options`),ue().id=a,K.connect(this.$el,this.snapshot),E().id||=`${i}-title`,d=ze({reference:S,floating:D,labelId:()=>E().id,position:()=>A().side,align:()=>A().align,gap:()=>A().gap,offset:()=>A().offset,matchReferenceWidth:!0}),Me(),U(),t=!0,A().open&&!A().disabled&&!A().readonly&&queueMicrotask(()=>K.send({type:`OPEN`}))},destroy(){window.clearTimeout(b),f?.(),f=null,p.forEach(e=>e()),p=[],d?.destroy(),d=null,K.disconnect(),e=null},get root(){let e=this.snapshot.current?.props??A();return te({inputs:[m({part:Q.parts.root,props:e,className:e.class}),{"data-ui-select":``,":data-state":()=>K.hasTag(`expanded`)?`open`:`closed`}]})},open(e){e?.preventDefault(),!(A().disabled||A().readonly)&&K.send({type:`OPEN`})},close(e){e?.preventDefault(),K.send({type:`CLOSE`,restoreFocus:e instanceof KeyboardEvent})},toggle(e){e?.preventDefault(),!(A().disabled||A().readonly)&&K.send({type:`TOGGLE`})},select(e,t){let n=F(``).find(t=>!t.create&&t.value===e);n&&J(n,t)},deselect(e,t){t?.preventDefault(),!(A().disabled||A().readonly)&&(F(``).find(t=>t.value===e)?.disabled||q(`DESELECT`,R(j().selection.values.filter(t=>t!==e))))},selectAll(e){if(e?.preventDefault(),!A().multiple||A().disabled||A().readonly)return;let t=L();q(`SELECT_ALL`,{values:t.map(e=>e.value),labels:t.map(e=>e.selectedLabel)})},clear(e){e?.preventDefault(),e?.stopPropagation(),!(A().disabled||A().readonly)&&(g=!1,K.send({type:`CLEAR`}))},setSearch:X},Z},Ge=f(`UiSelect`,We),Ke=new WeakSet,qe=t=>{Ke.has(t)||(Ke.add(t),e(t),Ge(t))};export{We as n,qe as t};
|
|
2
|
-
//# sourceMappingURL=entry.generated-
|
|
1
|
+
import{t as e}from"./capability-motion-ikQPX2KS.js";import{c as t,f as n,l as r,n as i,s as a,u as o}from"./codecs-Cb1ns_47.js";import{n as s,r as c,s as l,t as u}from"./dom-qAeVl7dc.js";import{i as d,t as ee}from"./alpine-machine-BS13dbK4.js";import{t as f}from"./alpine-data-CytyCyfk.js";import{t as p}from"./anchored-popover-BXEMsLrA.js";import{n as m,t as h}from"./styles-TfvwVPGw.js";import{t as te}from"./merge-bindings-C8ewA_FD.js";import{t as ne}from"./machine-Dqut4h89.js";import{n as g,t as _}from"./props-change-2xfsIAEN.js";import{t as re}from"./dismissable-layer-BROE-Ln2.js";import{i as ie,n as ae,r as oe,t as se}from"./form-control-BkVb2Qed.js";import{o as ce}from"./focus-scope-DtaPVNl5.js";import{t as le}from"./semantic-observer-BUswpsNx.js";import{n as v,t as y}from"./scroll-lock-DOw7dmi1.js";import{D as b,S as x,T as S,a as C,b as w,d as T,f as E,g as D,i as O,m as ue,n as de,o as k,p as A,r as j,s as M,t as N,u as fe,w as P,x as F}from"./common-BOd_thC-.js";var I=e=>e.trim().toLowerCase(),pe=e=>{if(e)try{return JSON.parse(e)}catch{return}},me=(e,t)=>{if(!(!t||e==null))return t.split(`.`).reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e)},he=h({definition:{component:`ui.badge`,parts:{root:{base:[`inline-flex min-w-0 shrink-0 select-none items-center justify-center gap-1 whitespace-nowrap font-badge outline-none`,`data-disabled:pointer-events-none`],variants:{variant:{soft:``,surface:``,outline:``,solid:``},color:{neutral:``,accent:``,success:``,warning:``,danger:``},size:{xs:`min-h-control-xs px-badge-padding-xs text-badge-xs [font-weight:var(--font-weight-badge-xs)]`,sm:`min-h-control-sm px-badge-padding-sm text-badge-sm [font-weight:var(--font-weight-badge-sm)]`,md:`min-h-control-md px-badge-padding-md text-badge-md [font-weight:var(--font-weight-badge-md)]`,lg:`min-h-control-lg px-badge-padding-lg text-badge-lg [font-weight:var(--font-weight-badge-lg)]`,xlg:`min-h-control-xlg px-badge-padding-xlg text-badge-xlg [font-weight:var(--font-weight-badge-xlg)]`},radius:C,insetLeft:{true:``,false:``},insetRight:{true:``,false:``},insetTop:{true:`-mt-1`,false:``},insetBottom:{true:`-mb-1`,false:``}},compounds:[{when:{insetLeft:!0,size:`xs`},class:`-ml-1.5`},{when:{insetLeft:!0,size:`sm`},class:`-ml-2`},{when:{insetLeft:!0,size:`md`},class:`-ml-2.5`},{when:{insetRight:!0,size:`xs`},class:`-mr-1.5`},{when:{insetRight:!0,size:`sm`},class:`-mr-2`},{when:{insetRight:!0,size:`md`},class:`-mr-2.5`}],defaults:{variant:`soft`,color:`neutral`,size:`sm`,radius:`sm`,insetLeft:!1,insetRight:!1,insetTop:!1,insetBottom:!1}},label:{base:`contents`},icon:{base:`shrink-0 fill-current text-current`,variants:{size:{xs:`size-icon-xs`,sm:`size-icon-xs`,md:`size-icon-sm`,lg:`size-icon-sm`,xlg:`size-icon`},position:{leading:``,trailing:``}},defaults:{size:`sm`,position:`leading`}},close:{base:[`-mr-1 inline-flex shrink-0 items-center justify-center rounded-full text-current outline-none`,`data-disabled:pointer-events-none`],variants:{size:{xs:`size-badge-close-xs`,sm:`size-badge-close-sm`,md:`size-badge-close-md`,lg:`size-badge-close-lg`,xlg:`size-badge-close-xlg`}},defaults:{size:`sm`}},closeIcon:{base:`size-icon-xs shrink-0 fill-current text-current`}}}}),L=[`soft`,`surface`,`outline`,`solid`],R=[`neutral`,`accent`,`success`,`warning`,`danger`],z=k,ge=[`span`,`button`],B=de,V=D,_e=j;r(L,`soft`),r(R,`neutral`),r(z,`sm`),r(_e,`sm`),r(ge,`span`),r(B,`button`),r(V,`mini`),r(B,`button`),n.default(`close`),r(V,`mini`),r(z,`sm`),n.default(`Remove`);var H=[`listbox`,`combobox`,`pillbox`,`native`],ve=M,ye=k,be=j,xe=S,Se=N,Ce=D,we=[`stay`,`close`],Te=[`check`,`checkbox`,`none`],U=b,Ee=fe,W={name:n,optionsId:n,value:n,values:a.array([]),placeholder:n,mode:r(H,`listbox`),multiple:i,searchable:i,creatable:i,filter:i.default(!0),clearable:i,clear:r(we,`stay`),suffix:n.default(`selected`),mark:r(Te,`check`),open:i,disabled:i,readonly:i,required:i,invalid:i,autoHighlight:i.default(!0),loop:i.default(!0),path:n,size:r(ye,`lg`),variant:r(ve,`outline`),radius:r(be,`md`),surface:r(U,`+2`),elevation:r(Ee,`3`),side:r(xe,`bottom`),align:r(Se,`start`),offset:t.clamp(-100,100).default(0),gap:t.clamp(0,50).default(4),empty:n.default(`No results found.`),icon:n,iconTrailing:n.default(`chevron__down`),iconVariant:r(Ce,`outline`),buttonClass:n,inputClass:n,listboxClass:n,optionClass:n,chipVariant:r(L,`soft`),chipColor:r(R,`neutral`),chipClass:n,class:n};r(Ce,`outline`),t.clamp(0,100).default(0);var De=[d({name:`opening`,state:`disclosure.opening`,project:()=>({}),onDone:`OPENING_DONE`,onError:`OPENING_ERROR`,sends:{close:()=>({type:`CLOSE`})}}),d({name:`closing`,state:`disclosure.closing`,project:()=>({}),onDone:`CLOSING_DONE`,onError:`CLOSING_ERROR`,sends:{open:()=>({type:`OPEN`})}}),d({name:`searching`,state:`feature.searching`,project:e=>({query:e.context.search.query,optionsId:e.context.search.optionsId}),onDone:`SEARCHING_DONE`,onError:`SEARCHING_ERROR`,sends:{search:e=>({type:`SEARCH`,query:e}),close:()=>({type:`CLOSE`})}}),d({name:`creating`,state:`feature.creating`,project:e=>({query:e.context.search.query,value:e.context.creation.value}),onDone:`CREATING_DONE`,onError:`CREATING_ERROR`,sends:{close:()=>({type:`CLOSE`})}})],G=e=>g(e)?.props??null,Oe=e=>e.disabled||e.readonly,K=({event:e})=>{let t=G(e);return!t||Oe(t)||!t.open?!1:_(e,`open`,`disabled`,`readonly`)},q=({event:e})=>{let t=G(e);return t?_(e,`open`)&&!t.open||_(e,`disabled`)&&t.disabled||_(e,`readonly`)&&t.readonly:!1},J=({event:e})=>{let t=G(e);return!!(t&&(_(e,`disabled`)&&t.disabled||_(e,`readonly`)&&t.readonly||_(e,`searchable`)&&!t.searchable))},Y=e=>!Array.isArray(e.values)||!Array.isArray(e.labels)?null:{values:e.values.filter(e=>typeof e==`string`),labels:e.labels.filter(e=>typeof e==`string`)},ke=({props:e,context:t,effects:n})=>ne({type:`parallel`,states:{disclosure:{initial:`closed`,states:{closed:{tags:[`closed`],on:{OPEN:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},TOGGLE:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},SEARCH:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},PROPS_CHANGED:{target:`opening`,guard:K,effects:`prepareOpen`}}},opening:{tags:[`visible`,`expanded`,`interactive`,`transitioning`],on:{OPENING_DONE:{target:`open`,effects:`finishOpen`},OPENING_ERROR:{target:`open`,effects:`finishOpen`},CLOSE:{target:`closing`,effects:`prepareClose`},TOGGLE:{target:`closing`,effects:`prepareClose`},CREATE:{target:`closing`,effects:`prepareClose`},SELECT:{target:`closing`,guard:`single`,effects:`prepareClose`},CLEAR:{target:`closing`,guard:`clearCloses`,effects:`prepareClose`},PROPS_CHANGED:{target:`closing`,guard:q,effects:`prepareClose`}}},open:{tags:[`visible`,`expanded`,`interactive`,`open`],on:{CLOSE:{target:`closing`,effects:`prepareClose`},TOGGLE:{target:`closing`,effects:`prepareClose`},CREATE:{target:`closing`,effects:`prepareClose`},SELECT:{target:`closing`,guard:`single`,effects:`prepareClose`},CLEAR:{target:`closing`,guard:`clearCloses`,effects:`prepareClose`},PROPS_CHANGED:{target:`closing`,guard:q,effects:`prepareClose`}}},closing:{tags:[`visible`,`transitioning`],on:{CLOSING_DONE:{target:`closed`,effects:`finishClose`},CLOSING_ERROR:{target:`closed`,effects:`finishClose`},OPEN:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},TOGGLE:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},SEARCH:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},PROPS_CHANGED:{target:`opening`,guard:K,effects:`prepareOpen`}}}}},feature:{initial:`idle`,on:{SELECT:{reduce:`replaceSelection`,effects:`commitSelection`},DESELECT:{reduce:`replaceSelection`,effects:`commitSelection`},SELECT_ALL:{reduce:`replaceSelection`,effects:`commitSelection`},RECONCILE_SELECTION:{reduce:`replaceSelection`,effects:`syncActive`},CLEAR:{reduce:`clear`,effects:`commitSelection`},ACTIVE:{reduce:`setActive`,effects:`syncActive`},OPTIONS_CHANGED:{effects:`syncOptions`},CLOSING_DONE:{reduce:`resetTransient`,effects:`syncActive`},CLOSING_ERROR:{reduce:`resetTransient`,effects:`syncActive`}},states:{idle:{on:{CLOSE:{},SEARCH:{target:`searching`,reduce:`setSearch`,effects:`commitSearch`},CREATE:{target:`creating`,reduce:`setCreation`,effects:`prepareCreate`},PROPS_CHANGED:{reduce:`replaceProps`,effects:`syncProps`}}},searching:{tags:[`searching`],on:{SEARCH:{target:`searching`,reduce:`setSearch`,effects:`commitSearch`},CREATE:{target:`creating`,reduce:`setCreation`,effects:`prepareCreate`},CLOSE:{target:`idle`},SEARCHING_DONE:`idle`,SEARCHING_ERROR:`idle`,PROPS_CHANGED:[{target:`idle`,guard:J,reduce:`replaceProps`,effects:`syncProps`},{reduce:`replaceProps`,effects:`syncProps`}]}},creating:{tags:[`creating`],on:{SEARCH:{target:`searching`,reduce:`setSearch`,effects:`commitSearch`},CREATE:{target:`creating`,reduce:`setCreation`,effects:`prepareCreate`},CLOSE:{target:`idle`},CREATING_DONE:{target:`idle`},CREATING_ERROR:{target:`idle`},PROPS_CHANGED:[{target:`idle`,guard:J,reduce:`replaceProps`,effects:`syncProps`},{reduce:`replaceProps`,effects:`syncProps`}]}}}}}},{context:t,props:e,reducers:{replaceProps:({event:e})=>{let t=G(e);return t?{props:t}:void 0},replaceSelection:({context:e,event:t})=>{let n=Y(t);if(n)return{context:{...e,selection:n}}},clear:({context:e})=>({context:{...e,selection:{values:[],labels:[]},search:{...e.search,query:``},navigation:{activeValue:``}}}),setSearch:({context:e,event:t})=>({context:{...e,search:{query:typeof t.query==`string`?t.query:``,optionsId:typeof t.optionsId==`string`?t.optionsId:e.search.optionsId},navigation:{activeValue:typeof t.activeValue==`string`?t.activeValue:e.navigation.activeValue}}}),setActive:({context:e,event:t})=>({context:{...e,navigation:{activeValue:typeof t.value==`string`?t.value:``}}}),setCreation:({context:e,event:t})=>({context:{...e,creation:{value:typeof t.value==`string`?t.value:e.search.query}}}),resetTransient:({context:e})=>({context:{...e,search:{...e.search,query:``},navigation:{activeValue:``},creation:{value:``}}})},guards:{canOpen:({props:e})=>!Oe(e),single:({props:e})=>!e.multiple,clearCloses:({props:e})=>e.clear===`close`},effects:{prepareOpen:n.prepareOpen,finishOpen:n.finishOpen,prepareClose:n.prepareClose,finishClose:n.finishClose,commitSelection:n.commitSelection,commitSearch:n.commitSearch,prepareCreate:n.prepareCreate,syncProps:n.syncProps,syncOptions:n.syncOptions,syncActive:n.syncActive}}),Ae=640,X=256,je=520,Me=.72,Z=12,Ne=16,Pe=720,Fe=720,Ie=({viewportWidth:e,viewportHeight:t,layoutViewportHeight:n,referenceTop:r,referenceBottom:i,touch:a})=>{if(e<=Ae)return`fullscreen`;let o=t<je||t<n*Me;if(a&&o)return`fullscreen`;if(a)return`dialog`;let s=Math.max(0,r),c=Math.max(0,t-i);return Math.max(s,c)<X?`dialog`:`anchored`},Le=()=>{let e=window.visualViewport;return e?{width:e.width,height:e.height,offsetTop:e.offsetTop,offsetLeft:e.offsetLeft}:{width:window.innerWidth,height:window.innerHeight,offsetTop:0,offsetLeft:0}},Re=()=>window.matchMedia?.(`(any-pointer: coarse)`).matches===!0||navigator.maxTouchPoints>0,ze=e=>{let t=p(e),n=!1,r=`anchored`,i=!1,a=null,o=()=>e.floating(),s=e=>{e!==i&&(i=e,e?y():v())},c=e=>{e.style.removeProperty(`border-radius`),e.style.removeProperty(`height`),e.style.removeProperty(`inset`),e.style.removeProperty(`max-height`),e.style.removeProperty(`max-width`),e.style.removeProperty(`position`),e.style.removeProperty(`transform-origin`),e.style.removeProperty(`width`)},l=(e,t)=>{let n=Le(),r=t===`dialog`?Ne:Z,i=t===`dialog`?Pe:1/0,a=t===`dialog`?Fe:1/0,o=Math.min(i,Math.max(0,n.width-r*2)),s=Math.min(a,Math.max(0,n.height-r*2)),c=n.offsetLeft+(n.width-o)/2,l=n.offsetTop+(n.height-s)/2;Object.assign(e.style,{borderRadius:`var(--radius-overlay-md)`,position:`fixed`,inset:`${l}px auto auto ${c}px`,width:`${o}px`,height:`${s}px`,maxWidth:`none`,maxHeight:`none`,transformOrigin:`center`})},u=()=>{let t=Le(),n=e.reference().getBoundingClientRect();return Ie({viewportWidth:t.width,viewportHeight:t.height,layoutViewportHeight:window.innerHeight,referenceTop:n.top-t.offsetTop,referenceBottom:n.bottom-t.offsetTop,touch:Re()})},d=()=>{if(!n)return;let i=o(),a=u();r=a,i.dataset.presentation=a;let d=i.querySelector(`[data-ui-select-sheet-heading]`);if(d&&(d.style.display=a===`anchored`?`none`:`flex`),a===`anchored`){i.removeAttribute(`aria-modal`),i.removeAttribute(`aria-labelledby`),i.removeAttribute(`role`),s(!1),c(i),t.mount();return}t.unmount(),i.setAttribute(`role`,`dialog`),i.setAttribute(`aria-modal`,`true`),i.setAttribute(`aria-labelledby`,e.labelId()),s(!0),l(i,a)},ee=()=>{let e=()=>d(),t=window.visualViewport,n=window.matchMedia?.(`(any-pointer: coarse)`);return window.addEventListener(`resize`,e),window.addEventListener(`orientationchange`,e),t?.addEventListener(`resize`,e),t?.addEventListener(`scroll`,e),n?.addEventListener(`change`,e),()=>{window.removeEventListener(`resize`,e),window.removeEventListener(`orientationchange`,e),t?.removeEventListener(`resize`,e),t?.removeEventListener(`scroll`,e),n?.removeEventListener(`change`,e)}},f=()=>{if(!n){n=!0;try{o().showPopover()}catch{}d(),a=ee()}},m=()=>{if(n){n=!1,a?.(),a=null,t.unmount(),s(!1);try{o().hidePopover()}catch{}}};return{opened:()=>n,open:f,close:m,sync:d,destroy:m,presentation:()=>r}},Q=h({definition:{component:`ui.select`,parts:{root:{base:`relative inline-grid w-full min-w-0`},control:{base:ue,variants:{size:O,radius:C,variant:{outline:``,filled:``},mode:{listbox:``,combobox:``,pillbox:`flex-wrap gap-1 py-0.5`,native:``},empty:{true:``,false:``}},compounds:[{when:{mode:`pillbox`,empty:!1},class:`!pl-1.5`}],defaults:{size:`lg`,variant:`outline`,radius:`md`,mode:`listbox`,empty:!1}},button:{base:[`flex min-w-0 flex-1 items-center gap-2 border-0 bg-transparent p-0 text-left text-inherit outline-none`]},pillboxTrigger:{base:`min-w-16 self-stretch`},value:{base:`min-w-0 flex-1`},placeholder:{base:`min-w-0 flex-1 text-surface-ink-muted`},input:{base:[`w-full min-w-16 flex-1`,E]},search:{base:[`flex min-h-control-xlg shrink-0 items-center gap-2 px-3`,`text-sm`]},searchInput:{base:[`min-w-0 flex-1 text-sm`,E]},sheetHeader:{base:``},sheetHeading:{base:`min-w-0 items-center gap-3 px-4 pt-4`},sheetTitle:{base:`min-w-0 flex-1 truncate text-base font-medium`},sheetClose:{base:[`inline-flex size-control-md shrink-0 items-center justify-center rounded-control-sm border-0 bg-transparent`,`text-surface-ink-muted outline-none focus-visible:ui-focus-ring`]},chips:{base:`flex min-w-0 flex-wrap items-center gap-1`},chip:{base:[`max-w-64`]},chipLabel:{base:`block min-w-0 flex-1 truncate`},chipRemove:{base:``},icon:{base:`size-icon shrink-0 fill-current text-surface-ink-muted`,variants:{position:{leading:``,trailing:``}},defaults:{position:`leading`}},action:{base:T},popover:{base:[P,`overflow-hidden rounded-overlay-sm`]},listbox:{base:`min-h-0 outline-none`},viewport:{base:`min-h-0`},options:{base:`grid auto-rows-min content-start gap-1 p-popover-padding`},create:{base:`shrink-0 p-popover-padding`},option:{base:[x,`[&:has([data-ui-select-option-label]>*+*)]:h-auto`,`[&:has([data-ui-select-option-label]>*+*)]:items-start`,`[&:has([data-ui-select-option-label]>*+*)]:py-2`]},optionLabel:{base:`min-w-0 flex-1 truncate`},optionMeta:{base:`ml-auto text-current opacity-70`},optionIcon:{base:w,variants:{position:{leading:``,trailing:`ml-auto`}},defaults:{position:`leading`}},optionIndicator:{base:F},group:{base:`grid auto-rows-min content-start gap-1`},label:{base:`px-menu-item-padding-inline py-1`},empty:{base:`px-menu-item-padding-inline py-2 text-sm text-surface-ink-muted`},separatorRoot:{base:`-mx-popover my-popover h-[var(--border-width-edge-separator)]`},separatorRule:{base:`h-[var(--border-width-edge-separator)] w-full border-0`},nativeWrapper:{base:`relative w-full min-w-0`},native:{base:[A,`appearance-none pe-10`],variants:{size:O,radius:C},defaults:{size:`lg`,radius:`md`}},nativeIcon:{base:`pointer-events-none absolute right-3 top-1/2 size-icon -translate-y-1/2 fill-current text-icon`}}}}),$=`[data-ui-select-option], [data-ui-select-option-create]`,Be=`template[data-ui-select-option-selected-template]`,Ve=e=>{if(!(e instanceof Element)){e.childNodes.forEach(Ve);return}Array.from(e.attributes).forEach(t=>{let n=t.name;(n===`id`||n===`role`||n===`tabindex`||n.startsWith(`aria-selected`)||n.startsWith(`aria-disabled`)||n.startsWith(`data-ui-select-option`)||n.startsWith(`data-selected`)||n.startsWith(`data-highlighted`)||n.startsWith(`data-disabled`)||n.startsWith(`x-`)||n.startsWith(`@`)||n.startsWith(`:`)||n.startsWith(`on`))&&e.removeAttribute(n)}),e.childNodes.forEach(Ve),e.setAttribute(`x-ignore`,`true`)},He=e=>{let t=document.createDocumentFragment();return Array.from(e).forEach(e=>{if(e instanceof HTMLTemplateElement&&e.matches(Be))return;let n=e.cloneNode(!0);Ve(n),t.append(n)}),t},Ue=(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n]),We=()=>{let e=null,t=!1,n=``,r=``,i=``,a=``,d=null,f=null,p=[],h=``,ne=``,g=!1,_=!1,v=null,y=``,b=0,x=()=>{if(!e)throw Error(`Select has not been initialized.`);return e},S=()=>{let e=x().querySelector(`[data-ui-select-control]`);if(!e)throw Error(`Select requires a control element.`);return e},C=()=>{let e=x().querySelector(`[data-ui-select-trigger], [data-ui-select-button], [data-ui-select-input]`);if(!e)throw Error(`Select requires a trigger element.`);return e},w=()=>x().querySelector(`[data-ui-select-input]`),T=()=>x().querySelector(`[data-ui-select-search-input]`),E=()=>{let e=x().querySelector(`[data-ui-select-sheet-title]`);if(!e)throw Error(`Select requires an adaptive picker title.`);return e},D=()=>{let e=x().querySelector(`[data-ui-select-popover]`);if(!e)throw Error(`Select requires a popover element.`);return e},O=()=>{let e=x().querySelector(`[data-ui-select-listbox]`);if(!e)throw Error(`Select requires a listbox element.`);return e},ue=()=>{let e=x().querySelector(`[data-ui-select-options]`);if(!e)throw Error(`Select requires an options element.`);return e},de=()=>x().querySelector(`[data-ui-select-chips]`),k=()=>x().querySelector(`[data-ui-select-hidden-inputs]`),A=()=>K.getCommittedSnapshot().props,j=()=>K.getCommittedSnapshot().context,M=()=>K.hasTag(`expanded`),N=()=>K.hasTag(`visible`),fe=(e,t)=>{let n=e.dataset.label||e.getAttribute(`aria-label`)||``;if(n)return n;if(e.dataset.textValue)return e.dataset.textValue;let r=me(pe(e.dataset.item),t.path);return r==null?(e.querySelector(`[data-ui-select-option-label]`)?.textContent??e.textContent??``).trim():String(r)},P=({props:e,query:t,selectedValues:n})=>{let r=I(t),a=Array.from(x().querySelectorAll($)).map((a,o)=>{let c=fe(a,e),l=a.dataset.value||c,u=a.hasAttribute(`data-ui-select-option-create`),d=r!==``&&I(c)===r,ee=!e.filter||r===``||I(`${c} ${a.dataset.suffix??``}`).includes(r),f=Number(a.dataset.minLength??`0`);return{el:a,id:a.id||`${i}-option-${o}`,value:u?a.dataset.value||t:l,label:c,selectedLabel:a.dataset.selectedLabel||c,disabled:s({value:a.dataset.disabled}),selected:n.includes(l),visible:u?t.length>=f&&!d:ee,create:u}});return a.some(e=>!e.create&&I(e.label)===r)?a.map(e=>e.create?{...e,visible:!1}:e):a},F=(e=j().search.query)=>P({props:A(),query:e,selectedValues:j().selection.values}),L=(e=j().search.query)=>F(e).filter(e=>e.visible&&!e.disabled&&!e.create),R=(e,t=A())=>{let n=Array.from(new Set(e.filter(Boolean))),r=t.multiple?n:n.slice(0,1),i=P({props:t,query:``,selectedValues:r});return{values:r,labels:r.map(e=>i.find(t=>t.value===e)?.selectedLabel??e)}},z=e=>e.multiple?Array.from(new Set([...e.values,...e.value?[e.value]:[]])):e.value?[e.value]:e.values.slice(0,1),ge=e=>{let t=z(e),n=P({props:e,query:``,selectedValues:[]}).filter(e=>s({value:e.el.dataset.selected})).map(e=>e.value);return{selection:R(t.length>0?t:n,e),search:{query:``,optionsId:``},navigation:{activeValue:``},creation:{value:``}}},B=()=>{let{selection:e}=j(),t=A();return e.values.length===0||t.mode===`pillbox`&&t.multiple?``:t.multiple&&e.values.length>1?`${e.values.length} ${t.suffix}`:e.labels[0]??e.values[0]??``},V=e=>{let t=e.el.querySelector(Be);if(t)return He(t.content.childNodes);let n=e.el.querySelector(`[data-ui-select-option-selected-content]`)??e.el.querySelector(`[data-ui-select-option-label]`);if(n)return He(n.childNodes);let r=document.createDocumentFragment();return r.append(document.createTextNode(e.selectedLabel)),r},_e=()=>{let e=A();if(t){let t=j().selection.values;(M()||!e.open||!e.disabled&&!e.readonly)&&o({el:x(),schema:W,key:`open`,value:M()}),o({el:x(),schema:W,key:`value`,value:e.multiple?``:t[0]??``}),o({el:x(),schema:W,key:`values`,value:e.multiple?[...t]:[]})}x().dataset.state=M()?`open`:`closed`,x().dataset.mark=e.mark,ae({el:x(),state:{disabled:e.disabled,required:e.required,invalid:e.invalid},value:`true`})},H=()=>A().mode===`pillbox`&&A().multiple,ve=()=>{let e=A(),t=H()&&j().selection.values.length===0,n=S();n.className=m({part:Q.parts.control,props:{...e,mode:H()?`pillbox`:e.mode===`combobox`?`combobox`:`listbox`,empty:t}}),n.dataset.state=M()?`open`:`closed`,n.dataset.mode=H()?`pillbox`:e.mode,l({el:n,attr:`data-ui-select-pillbox-control`,present:H(),value:``}),l({el:n,attr:`data-empty`,present:t,value:`true`}),ae({el:n,state:{disabled:e.disabled,invalid:e.invalid},value:`true`})},ye=()=>{let e=A(),t=C();t.id||=n,t.dataset.state=M()?`open`:`closed`,t.setAttribute(`aria-haspopup`,`listbox`),t.setAttribute(`aria-expanded`,M()?`true`:`false`),t.setAttribute(`aria-controls`,i),l({el:t,attr:`aria-invalid`,present:e.invalid,value:`true`}),t instanceof HTMLButtonElement&&(t.disabled=e.disabled);let r=B(),a=x().querySelector(`[data-ui-select-button-value]`),o=x().querySelector(`[data-ui-select-button-placeholder]`);if(a){a.replaceChildren();let e=j().selection.values.length===1&&r?F(``).find(e=>e.value===j().selection.values[0]):void 0;e?a.append(V(e)):a.textContent=r,a.hidden=r===``}o&&(o.hidden=H()?j().selection.values.length>0:r!==``),x().querySelectorAll(`[data-ui-select-clear], [data-ui-select-button-clear]`).forEach(t=>{t.hidden=e.disabled||!e.clearable||j().selection.values.length===0,t instanceof HTMLButtonElement&&(t.disabled=e.disabled)}),x().querySelectorAll(`[data-ui-select-search-clear]`).forEach(t=>{t.hidden=e.disabled||!j().search.query,t instanceof HTMLButtonElement&&(t.disabled=e.disabled)})},be=()=>{let e=A(),t=j(),n=w();n&&(n.id||=r,n.className=m({part:Q.parts.input,className:e.inputClass}),n.value=H()||M()&&g?t.search.query:B(),n.placeholder=H()&&t.selection.values.length>0?``:e.placeholder,n.setAttribute(`role`,`combobox`),n.setAttribute(`autocomplete`,`off`),n.setAttribute(`aria-autocomplete`,`list`),n.setAttribute(`aria-expanded`,M()?`true`:`false`),n.setAttribute(`aria-controls`,i),oe({input:n,state:{disabled:e.disabled,readonly:e.readonly,required:e.required,nativeRequired:!1,invalid:e.invalid,ariaRequired:e.required}}));let a=T();a&&(a.value=t.search.query,a.disabled=e.disabled,a.readOnly=e.readonly);let o=F().find(e=>e.value===t.navigation.activeValue);[C(),n,a,O()].forEach(e=>{o?.id?e?.setAttribute(`aria-activedescendant`,o.id):e?.removeAttribute(`aria-activedescendant`)})},xe=()=>{let e=A(),t=D(),n=O();t.id=`${i}-popover`,t.className=m({part:Q.parts.popover,props:e,className:e.listboxClass}),t.dataset.uiSurface=e.surface,t.dataset.uiElevation=e.elevation,t.setAttribute(`popover`,`manual`),t.dataset.state=M()?`open`:`closed`,t.hidden=!N(),n.id=i,n.setAttribute(`role`,`listbox`),n.tabIndex=-1,n.setAttribute(`aria-labelledby`,C().id),l({el:n,attr:`aria-multiselectable`,present:e.multiple,value:`true`})},Se=()=>{let e=j();x().querySelectorAll(`[data-ui-select-create-query]`).forEach(t=>{t.textContent=e.search.query});let t=F();t.forEach(t=>{t.el.id=t.id,t.el.hidden=!t.visible,t.el.setAttribute(`role`,`option`),t.el.setAttribute(`aria-selected`,t.selected?`true`:`false`),t.create||(t.el.dataset.value=t.value),t.create||(t.el.dataset.label=t.label),l({el:t.el,attr:`data-selected`,present:t.selected,value:`true`}),l({el:t.el,attr:`data-highlighted`,present:t.value===e.navigation.activeValue,value:`true`}),l({el:t.el,attr:`data-disabled`,present:t.disabled,value:`true`}),l({el:t.el,attr:`aria-disabled`,present:t.disabled,value:`true`}),t.el.querySelectorAll(`[data-ui-select-option-indicator]`).forEach(e=>{l({el:e,attr:`data-selected`,present:t.selected,value:`true`})})});let n=x().querySelector(`[data-ui-select-option-empty]`);n&&(n.hidden=t.some(e=>e.visible&&!e.create))},Ce=()=>JSON.stringify(Array.from(x().querySelectorAll($)).map(e=>({create:e.hasAttribute(`data-ui-select-option-create`),value:e.dataset.value??``,label:e.hasAttribute(`data-ui-select-option-create`)?e.textContent?.trim()??``:e.dataset.label??e.textContent?.trim()??``,disabled:e.dataset.disabled??``,selected:e.dataset.selected??``}))),we=()=>{let e=de();if(!e)return;let t=A(),n=j(),r=F(``),i=n.selection.values.map((e,t)=>({value:e,label:n.selection.labels[t]??e,disabled:r.find(t=>t.value===e)?.disabled??!1})),a=JSON.stringify({chips:i,pillbox:H(),disabled:t.disabled,readonly:t.readonly,variant:t.chipVariant,color:t.chipColor,className:t.chipClass});if(a===ne||(ne=a,e.replaceChildren(),e.hidden=!H()||i.length===0,e.hidden))return;let o=m({part:he.parts.root,props:{variant:t.chipVariant,color:t.chipColor,size:`sm`,radius:`sm`},className:m({part:Q.parts.chip,props:{},className:t.chipClass})}),s=m({part:Q.parts.chipLabel}),c=m({part:he.parts.close,props:{size:`sm`},className:m({part:Q.parts.chipRemove})});i.forEach(n=>{let r=document.createElement(`span`);r.className=o,r.setAttribute(`data-ui-badge`,``),r.setAttribute(`data-ui-action-recipe`,`badge`),r.setAttribute(`data-ui-select-chip`,``),r.dataset.value=n.value,r.dataset.variant=t.chipVariant,r.dataset.color=t.chipColor,r.dataset.size=`sm`,r.dataset.radius=`sm`;let i=document.createElement(`span`);i.className=s,i.setAttribute(`data-ui-select-chip-label`,``),i.textContent=n.label,r.append(i);let a=document.createElement(`button`);a.type=`button`,a.className=c,a.setAttribute(`data-ui-badge-close`,``),a.setAttribute(`data-ui-select-chip-remove`,``),a.dataset.value=n.value,a.setAttribute(`aria-label`,`Remove ${n.label}`),a.disabled=t.disabled||t.readonly||n.disabled;let l=x().querySelector(`[data-ui-select-chip-remove-icon]`);l?a.append(l.content.cloneNode(!0)):a.textContent=`x`,r.append(a),e.append(r)})},Te=()=>{let e=k();if(!e)return;let t=A();h=ie({container:e,state:{name:t.name,required:t.required,values:t.disabled?[]:[...j().selection.values],form:x().dataset.form??``,marker:`data-ui-select-hidden-input`},currentKey:h})},U=()=>{_e(),ve(),ye(),be(),xe(),Se(),we(),Te()},Ee=()=>{if(!K.hasTag(`interactive`))return;let e=A();d?.presentation()===`anchored`?e.mode===`combobox`?w()?.focus({preventScroll:!0}):(e.searchable||H())&&T()?T()?.focus({preventScroll:!0}):C().focus({preventScroll:!0}):(T()??x().querySelector(`[data-ui-select-sheet-close]`)??O()).focus({preventScroll:!0})},G=()=>{let e=j(),t=R(e.selection.values);Ue(t.labels,e.selection.labels)||K.send({type:`RECONCILE_SELECTION`,...t});let n=L();e.navigation.activeValue&&!n.some(t=>t.value===e.navigation.activeValue)&&K.send({type:`ACTIVE`,value:A().autoHighlight?n[0]?.value??``:``}),U()},Oe=e=>{if((Array.isArray(e.changes)?e.changes:[]).flatMap(e=>e&&typeof e==`object`&&`key`in e?[String(e.key)]:[]).some(e=>e===`value`||e===`values`||e===`multiple`)){let e=R(z(A()));K.send({type:`RECONCILE_SELECTION`,...e})}U()},K=ee({schema:W,hooks:De,createMachine:({props:e})=>ke({props:e,context:ge(e),effects:{prepareOpen:()=>{_=!1,d?.open(),U(),queueMicrotask(Ee)},finishOpen:()=>{U(),c({el:x(),name:`ui:open`})},prepareClose:({event:e})=>{g=!1,_=e.restoreFocus===!0||e.type===`SELECT`||e.type===`CREATE`,_&&C().focus({preventScroll:!0}),U()},finishClose:()=>{d?.close(),U(),_&&C().focus({preventScroll:!0}),_=!1,c({el:x(),name:`ui:close`})},commitSelection:({event:e})=>{U(),se({container:k(),fallback:x(),marker:`data-ui-select-hidden-input`});let{selection:t}=j();e.type===`CLEAR`&&c({el:x(),name:`ui:clear`}),c({el:x(),name:`ui:change`,detail:{value:t.values[0]??``,values:[...t.values],label:t.labels[0]??``,labels:[...t.labels],option:v}}),v=null},commitSearch:()=>{U(),c({el:x(),name:`ui:search`,detail:{search:j().search.query}})},prepareCreate:({event:e})=>{U(),c({el:x(),name:`ui:create`,detail:{search:j().search.query,value:j().creation.value,modal:typeof e.modal==`string`?e.modal:``}})},syncProps:({event:e})=>Oe(e),syncOptions:G,syncActive:U}})}),q=(e,t)=>K.send({type:e,...t}),J=(e,t)=>{t?.preventDefault();let n=A();if(!(n.disabled||n.readonly||e.disabled)){if(e.create){K.send({type:`CREATE`,value:e.value||j().search.query,modal:e.el.dataset.modal??``});return}v=e.el,g=!1,q(`SELECT`,R(n.multiple?j().selection.values.includes(e.value)?j().selection.values.filter(t=>t!==e.value):[...j().selection.values,e.value]:[e.value]))}},Y=e=>{if(e===j().navigation.activeValue)return;K.send({type:`ACTIVE`,value:e});let t=F().find(t=>t.value===e);c({el:x(),name:`ui:highlight`,detail:{value:e,option:t?.el??null}})},Ae=e=>{let t=L();if(t.length===0)return;let n=t.findIndex(e=>e.value===j().navigation.activeValue),r=n<0?e>0?0:t.length-1:n+e;r>=t.length&&(r=A().loop?0:t.length-1),r<0&&(r=A().loop?t.length-1:0),Y(t[r]?.value??``)},X=e=>{let t=A();if(t.disabled||t.readonly)return;g=!0;let n=t.autoHighlight?L(e)[0]?.value??``:``;K.send({type:`SEARCH`,query:e,optionsId:a,activeValue:n})},je=e=>{if(e.key===`Tab`&&d?.presentation()!==`anchored`){ce(e,D());return}let t=e.target instanceof HTMLInputElement;if(e.key===`ArrowDown`||e.key===`ArrowUp`){e.preventDefault(),M()||K.send({type:`OPEN`}),Ae(e.key===`ArrowDown`?1:-1);return}if(!t&&M()&&(e.key===`Home`||e.key===`End`)){e.preventDefault();let t=L();Y(e.key===`Home`?t[0]?.value??``:t.at(-1)?.value??``);return}if(M()&&(e.key===`Enter`||!t&&e.key===` `)){let t=F().find(e=>e.value===j().navigation.activeValue);t&&J(t,e);return}if((e.key===`Backspace`||e.key===`Delete`)&&H()&&!j().search.query){let t=w();if(t&&(t.selectionStart!==0||t.selectionEnd!==0))return;let n=[...j().selection.values].reverse().find(e=>!F(``).find(t=>t.value===e)?.disabled);n&&(e.preventDefault(),Z.deselect(n,e));return}if(e.key===`Escape`&&N()){e.preventDefault(),e.stopPropagation(),K.send({type:`CLOSE`,restoreFocus:!0});return}if(!t&&!A().searchable&&e.key.length===1&&!e.metaKey&&!e.ctrlKey&&!e.altKey){y+=e.key.toLowerCase(),window.clearTimeout(b),b=window.setTimeout(()=>{y=``},500);let t=L().find(e=>I(e.label).startsWith(y));t&&Y(t.value)}},Me=()=>{let e=x(),t=(e,t)=>t.closest(`[data-ui-select-trigger], [data-ui-select-icon="trailing"], [data-ui-select-control]`)?(e.preventDefault(),C().focus({preventScroll:!0}),C()instanceof HTMLInputElement?M()||K.send({type:`OPEN`}):Z.toggle(e),!0):!1;u({target:e,event:`click`,cleanup:p,handler:e=>{let n=e.target;if(!(n instanceof Element))return;if(n.closest(`[data-ui-select-sheet-close]`)){Z.close(e);return}if(n.closest(`[data-ui-select-search-clear]`)){e.preventDefault(),X(``);return}if(n.closest(`[data-ui-select-clear], [data-ui-select-button-clear]`)){Z.clear(e);return}let r=n.closest(`[data-ui-select-chip-remove]`);if(r){Z.deselect(r.dataset.value??``,e);return}let i=n.closest($);if(i){let t=F().find(e=>e.el===i);t&&J(t,e);return}(!(e instanceof MouseEvent)||e.detail===0)&&t(e,n)}}),u({target:e,event:`input`,cleanup:p,handler:e=>{let t=e.target;t instanceof HTMLInputElement&&t.matches(`[data-ui-select-input], [data-ui-select-search-input]`)&&X(t.value)}}),u({target:e,event:`keydown`,cleanup:p,handler:e=>{e instanceof KeyboardEvent&&je(e)}}),u({target:e,event:`pointerdown`,cleanup:p,handler:e=>{let n=e.target;if(n instanceof Element){if(n.closest($)||n.closest(`[data-ui-select-search-clear]`)||n.closest(`[data-ui-select-clear], [data-ui-select-button-clear], [data-ui-select-chip-remove]`)){e.preventDefault();return}t(e,n)}}}),u({target:e,event:`pointerover`,cleanup:p,handler:e=>{let t=e.target;if(!(t instanceof Element))return;let n=t.closest($),r=n?F().find(e=>e.el===n):void 0;r&&r.visible&&!r.disabled&&Y(r.value)}}),u({target:e,event:`focusout`,cleanup:p,handler:t=>{if(!(t instanceof FocusEvent))return;let n=t.relatedTarget;n instanceof Node&&e.contains(n)||N()&&K.send({type:`CLOSE`})}}),u({target:D(),event:`toggle`,cleanup:p,handler:e=>{!(`newState`in e)||e.newState!==`closed`||!N()||K.send({type:`CLOSE`})}}),p.push(re({isEnabled:()=>K.hasTag(`interactive`),roots:()=>[x(),D()],onDismiss:()=>K.send({type:`CLOSE`})})),f=le({targets:O(),read:Ce,onChange:()=>K.send({type:`OPTIONS_CHANGED`}),observer:{childList:!0,subtree:!0}})},Z;return Z={...K,get isOpen(){return this.snapshot.current?.tags.includes(`expanded`)??!1},get isSearching(){return this.snapshot.current?.tags.includes(`searching`)??!1},get value(){return this.snapshot.current?.context.selection.values[0]??``},get values(){return[...this.snapshot.current?.context.selection.values??[]]},get selectedLabels(){return[...this.snapshot.current?.context.selection.labels??[]]},get search(){return this.snapshot.current?.context.search.query??``},get activeValue(){return this.snapshot.current?.context.navigation.activeValue??``},init(){e=this.$el,n=this.$id(`select-button`),r=this.$id(`select-input`),i=this.$id(`select-listbox`),a=ue().id||x().dataset.optionsId||this.$id(`select-options`),ue().id=a,K.connect(this.$el,this.snapshot),E().id||=`${i}-title`,d=ze({reference:S,floating:D,labelId:()=>E().id,position:()=>A().side,align:()=>A().align,gap:()=>A().gap,offset:()=>A().offset,matchReferenceWidth:!0}),Me(),U(),t=!0,A().open&&!A().disabled&&!A().readonly&&queueMicrotask(()=>K.send({type:`OPEN`}))},destroy(){window.clearTimeout(b),f?.(),f=null,p.forEach(e=>e()),p=[],d?.destroy(),d=null,K.disconnect(),e=null},get root(){let e=this.snapshot.current?.props??A();return te({inputs:[m({part:Q.parts.root,props:e,className:e.class}),{"data-ui-select":``,":data-state":()=>K.hasTag(`expanded`)?`open`:`closed`}]})},open(e){e?.preventDefault(),!(A().disabled||A().readonly)&&K.send({type:`OPEN`})},close(e){e?.preventDefault(),K.send({type:`CLOSE`,restoreFocus:e instanceof KeyboardEvent})},toggle(e){e?.preventDefault(),!(A().disabled||A().readonly)&&K.send({type:`TOGGLE`})},select(e,t){let n=F(``).find(t=>!t.create&&t.value===e);n&&J(n,t)},deselect(e,t){t?.preventDefault(),!(A().disabled||A().readonly)&&(F(``).find(t=>t.value===e)?.disabled||q(`DESELECT`,R(j().selection.values.filter(t=>t!==e))))},selectAll(e){if(e?.preventDefault(),!A().multiple||A().disabled||A().readonly)return;let t=L();q(`SELECT_ALL`,{values:t.map(e=>e.value),labels:t.map(e=>e.selectedLabel)})},clear(e){e?.preventDefault(),e?.stopPropagation(),!(A().disabled||A().readonly)&&(g=!1,K.send({type:`CLEAR`}))},setSearch:X},Z},Ge=f(`UiSelect`,We),Ke=new WeakSet,qe=t=>{Ke.has(t)||(Ke.add(t),e(t),Ge(t))};export{We as n,qe as t};
|
|
2
|
+
//# sourceMappingURL=entry.generated-DXWS-S4C.js.map
|