@vireo-ai/trellis-ui 0.1.41 → 0.1.43
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/src/components/field/styles.css +7 -4
- package/packages/client/src/components/keybinding/styles.css +14 -0
- package/packages/client/src/components/toast/styles.css +2 -21
- package/packages/client/src/components/tooltip/styles.css +23 -0
- package/packages/client/src/styles/components.css +3 -0
- package/packages/client/src/styles/generated/theme-runtime.css +268 -1
- package/packages/client/src/styles/generated-sources.css +1 -1
- package/packages/client/src/styles/recipes/floating-surface.css +24 -0
- package/packages/client/src/styles/recipes/intent.css +8 -8
- package/packages/client/types/assets/full-runtime.generated.d.ts +1 -1
- package/packages/client/types/capabilities/shortcut.d.ts +43 -0
- package/packages/client/types/capabilities/shortcut.entry.generated.d.ts +3 -0
- package/packages/client/types/components/common.d.ts +1 -1
- package/packages/client/types/components/entry.generated.d.ts +3 -0
- package/packages/client/types/components/input/contract.d.ts +3 -3
- package/packages/client/types/components/keybinding/contract.d.ts +8 -0
- package/packages/client/types/components/keybinding/controller.d.ts +7 -0
- package/packages/client/types/components/keybinding/entry.generated.d.ts +5 -0
- package/packages/client/types/components/keybinding/index.d.ts +5 -0
- package/packages/client/types/components/runtime.d.ts +4 -0
- package/packages/client/types/components/select/contract.d.ts +2 -2
- package/packages/client/types/components/select/machine.d.ts +2 -2
- package/packages/client/types/components/textarea/contract.d.ts +1 -1
- package/packages/client/types/components/tooltip/contract.d.ts +36 -0
- package/packages/client/types/components/tooltip/entry.generated.d.ts +5 -0
- package/packages/client/types/components/tooltip/index.d.ts +21 -0
- package/packages/client/types/components/tooltip/machine.d.ts +40 -0
- package/packages/client/types/components/tooltip/runtime-docs.d.ts +2 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/css/trellis.css +260 -26
- package/packages/server/trellis_ui/static/trellis_ui/assets/css/trellis.min.css +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/build-metadata.json +321 -221
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/capabilities/shortcut.js +2 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/capabilities/shortcut.js.map +1 -0
- 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/capability-shortcut-Br_XBf7u.js +2 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/capability-shortcut-Br_XBf7u.js.map +1 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{capability-sortable-Ds2wQEQq.js → capability-sortable-aY5GWxrK.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{capability-sortable-Ds2wQEQq.js.map → capability-sortable-aY5GWxrK.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/common-fH2NGblC.js +2 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/common-fH2NGblC.js.map +1 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/controller-DsXbNzqk.js +2 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/controller-DsXbNzqk.js.map +1 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-B74OtpL2.js +2 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-B74OtpL2.js.map +1 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-BZXp8Edl.js +2 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-BZXp8Edl.js.map +1 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BPZeXRC3.js → entry.generated-BbQ_TNRI.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BPZeXRC3.js.map → entry.generated-BbQ_TNRI.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BC8JUf6f.js → entry.generated-BwAge51I.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BC8JUf6f.js.map → entry.generated-BwAge51I.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DYBALnuF.js → entry.generated-CEGLKsEl.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DYBALnuF.js.map → entry.generated-CEGLKsEl.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BO0EDjBb.js → entry.generated-CYHiRVjx.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BO0EDjBb.js.map → entry.generated-CYHiRVjx.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry2.generated-B7ROYMLZ.js → entry.generated-Ck7bhyzz.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-Ck7bhyzz.js.map +1 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-C8pt5QeK.js → entry.generated-CtoSPDoI.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-C8pt5QeK.js.map → entry.generated-CtoSPDoI.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DfuZKFMG.js → entry.generated-D0Av2Aiw.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DfuZKFMG.js.map → entry.generated-D0Av2Aiw.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BoOsILKj.js → entry.generated-DSyiRko7.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-BoOsILKj.js.map → entry.generated-DSyiRko7.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DjMJNzy1.js → entry.generated-Dd04OzRH.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DjMJNzy1.js.map → entry.generated-Dd04OzRH.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DIPrCNjK.js → entry.generated-Gl6wz0Oh.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-DIPrCNjK.js.map → entry.generated-Gl6wz0Oh.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-jP0UEZIS.js +2 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-jP0UEZIS.js.map +1 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-vM-5KVaL.js +2 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-vM-5KVaL.js.map +1 -0
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-D5gXHQl_.js → entry.generated-xjDWyE7q.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-D5gXHQl_.js.map → entry.generated-xjDWyE7q.js.map} +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/{entry.generated-Dgrr543E.js → entry2.generated-e3bTOzUi.js} +2 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry2.generated-e3bTOzUi.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/data-grid.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/index.js +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/components/index.js.map +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/keybinding.js +1 -0
- 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/radio.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/tooltip.js +1 -0
- 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/index.js.map +1 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/logical-entry-manifest.json +109 -63
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/trellis.js +5 -5
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/trellis.min.js +5 -5
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/common-BOd_thC-.js +0 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/common-BOd_thC-.js.map +0 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-51hjJ_lu.js +0 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-51hjJ_lu.js.map +0 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-BLloDlP5.js +0 -2
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-BLloDlP5.js.map +0 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry.generated-Dgrr543E.js.map +0 -1
- package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/entry2.generated-B7ROYMLZ.js.map +0 -1
package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/common-BOd_thC-.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
var e=[`xs`,`sm`,`md`,`lg`,`xlg`],t=[`outline`,`filled`],n=[`outline`,`solid`,`mini`,`micro`],r=[`button`,`submit`,`reset`],i=[`start`,`center`,`end`],a=[`bottom`,`top`,`left`,`right`],o=[`top`,`right`,`bottom`,`left`],s=[`vertical`,`horizontal`],c=[`leading`,`trailing`,`center`,`top-leading`,`top-trailing`,`bottom-leading`,`bottom-trailing`],l=[`default`],u=[`h1`,`h2`,`h3`,`h4`,`h5`,`h6`],d={inherit:`text-inherit`,muted:`text-surface-ink-muted`,subtle:`text-surface-ink-muted`,accent:`text-intent-accent-text`,danger:`text-intent-danger-text`};d.muted,d.subtle,d.accent,d.danger;var f=[`0`,`0.5`,`1`,`1.5`,`2`,`2.5`,`3`,`3.5`,`4`,`4.5`,`5`,`5.5`,`6`,`6.5`,`7`,`7.5`,`8`,`8.5`,`9`,`9.5`,`10`,`10.5`,`11`,`11.5`,`12`],p=e=>Object.fromEntries(f.map(t=>[t,t===`0`?``:`${e}-${t}`]));p(`gap`),p(`gap-x`),p(`gap-y`),p(`p`),p(`px`),p(`py`),p(`m`),p(`mx`),p(`my`);var m=[`none`,`xs`,`sm`,`md`,`lg`,`full`],h=[`inherit`,`0`,`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`,`+1`,`+2`,`+3`,`+4`,`+5`,`+6`,`+7`,`+8`],g=[`none`,`match`,`1`,`2`,`3`,`4`,`5`,`6`,`7`,`8`],_=e=>Object.fromEntries(g.map(t=>[t,`[${e}:${t===`none`?`var(--shadow-elevation-0)`:t===`match`?`var(--ui-matched-elevation)`:`var(--shadow-elevation-${t})`}]`])),v={none:``,xs:`rounded-control-xs`,sm:`rounded-control-sm`,md:`rounded-control-md`,lg:`rounded-control-lg`,full:`rounded-full`},y={xs:`font-control text-control-xs [font-weight:var(--font-weight-control-xs)]`,sm:`font-control text-control-sm [font-weight:var(--font-weight-control-sm)]`,md:`font-control text-control-md [font-weight:var(--font-weight-control-md)]`,lg:`font-control text-control-lg [font-weight:var(--font-weight-control-lg)]`,xlg:`font-control text-control-xlg [font-weight:var(--font-weight-control-xlg)]`};`${y.xs}`,`${y.sm}`,`${y.md}`,`${y.lg}`,`${y.xlg}`;var b={xs:`min-h-control-xs px-control-padding-xs ${y.xs}`,sm:`min-h-control-sm px-control-padding-sm ${y.sm}`,md:`min-h-control-md px-control-padding-md ${y.md}`,lg:`min-h-control-lg px-control-padding-lg ${y.lg}`,xlg:`min-h-control-xlg px-control-padding-xlg ${y.xlg}`};`${y.xs}`,`${y.sm}`,`${y.md}`,`${y.lg}`,`${y.xlg}`;var x=[`flex w-full min-w-0 items-center gap-control-gap outline-none`],S=[`border-0 bg-transparent p-0 text-inherit outline-none`],C=[`inline-flex size-control-xs shrink-0 items-center justify-center rounded-control-sm border-0 bg-transparent`,`text-current outline-none`],w=[`w-full border-0 bg-transparent text-inherit outline-none`],T=[`absolute left-0 top-0 z-popover m-0 grid h-auto`,`outline-none`],E=[`neutral`,`accent`],D=[`tonal`,`edge`,`combined`],O=[`flex h-menu-item w-full cursor-default select-none items-center gap-2 rounded-control-sm px-menu-item-padding-inline`,`text-left font-menu-item text-menu-item [font-weight:var(--font-weight-menu-item)] outline-none`,`data-disabled:pointer-events-none`],k=`size-icon shrink-0 fill-current text-current opacity-70`,A=`ml-auto size-icon shrink-0 fill-current text-current opacity-0 data-selected:opacity-100`;export{s as C,h as D,E,_ as O,O as S,a as T,c as _,v as a,k as b,l as c,C as d,S as f,n as g,u as h,b as i,o as l,x as m,r as n,e as o,w as p,m as r,t as s,i as t,g as u,D as v,T as w,A as x,f as y};
|
|
2
|
-
//# sourceMappingURL=common-BOd_thC-.js.map
|
package/packages/server/trellis_ui/static/trellis_ui/assets/js/esm/chunks/common-BOd_thC-.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"common-BOd_thC-.js","names":[],"sources":["../../../../../../../../client/src/components/common.ts"],"sourcesContent":["const CONTROL_SIZES = ['xs', 'sm', 'md', 'lg', 'xlg'] as const;\nconst CONTROL_VARIANTS = ['outline', 'filled'] as const;\nconst ICON_VARIANTS = ['outline', 'solid', 'mini', 'micro'] as const;\nconst BUTTON_TYPES = ['button', 'submit', 'reset'] as const;\nconst ALIGNMENTS = ['start', 'center', 'end'] as const;\nconst POSITIONS = ['bottom', 'top', 'left', 'right'] as const;\nconst EDGE_POSITIONS = ['top', 'right', 'bottom', 'left'] as const;\nconst ORIENTATIONS = ['vertical', 'horizontal'] as const;\nconst INDICATOR_PLACEMENTS = ['leading', 'trailing', 'center', 'top-leading', 'top-trailing', 'bottom-leading', 'bottom-trailing'] as const;\nconst DEFAULT_VARIANTS = ['default'] as const;\nconst HEADING_LEVELS = ['h1', 'h2', 'h3', 'h4', 'h5', 'h6'] as const;\nconst TYPOGRAPHY_COLORS = ['inherit', 'muted', 'subtle', 'accent', 'danger'] as const;\nconst ICON_COLORS = TYPOGRAPHY_COLORS;\ntype TypographyColor = typeof TYPOGRAPHY_COLORS[number];\ntype IconColor = typeof ICON_COLORS[number];\nconst TYPOGRAPHY_COLOR_CLASSES = {\n inherit: 'text-inherit',\n muted: 'text-surface-ink-muted',\n subtle: 'text-surface-ink-muted',\n accent: 'text-intent-accent-text',\n danger: 'text-intent-danger-text',\n} as const satisfies Record<TypographyColor, string>;\nconst ICON_COLOR_CLASSES = {\n inherit: 'text-current',\n muted: TYPOGRAPHY_COLOR_CLASSES.muted,\n subtle: TYPOGRAPHY_COLOR_CLASSES.subtle,\n accent: TYPOGRAPHY_COLOR_CLASSES.accent,\n danger: TYPOGRAPHY_COLOR_CLASSES.danger,\n} as const satisfies Record<IconColor, string>;\nconst LAYOUT_SPACES = [\n '0', '0.5', '1', '1.5', '2', '2.5', '3', '3.5', '4', '4.5', '5', '5.5', '6', '6.5',\n '7', '7.5', '8', '8.5', '9', '9.5', '10', '10.5', '11', '11.5', '12',\n] as const;\ntype LayoutSpace = typeof LAYOUT_SPACES[number];\nconst layoutSpaceClasses = (prefix: string): Record<LayoutSpace, string> => Object.fromEntries(\n LAYOUT_SPACES.map((space) => [space, space === '0' ? '' : `${prefix}-${space}`]),\n) as Record<LayoutSpace, string>;\nconst LAYOUT_GAP_CLASSES = layoutSpaceClasses('gap');\nconst LAYOUT_GAP_X_CLASSES = layoutSpaceClasses('gap-x');\nconst LAYOUT_GAP_Y_CLASSES = layoutSpaceClasses('gap-y');\nconst LAYOUT_PADDING_CLASSES = layoutSpaceClasses('p');\nconst LAYOUT_PADDING_X_CLASSES = layoutSpaceClasses('px');\nconst LAYOUT_PADDING_Y_CLASSES = layoutSpaceClasses('py');\nconst LAYOUT_MARGIN_CLASSES = layoutSpaceClasses('m');\nconst LAYOUT_MARGIN_X_CLASSES = layoutSpaceClasses('mx');\nconst LAYOUT_MARGIN_Y_CLASSES = layoutSpaceClasses('my');\nconst COMPONENT_RADII = ['none', 'xs', 'sm', 'md', 'lg', 'full'] as const;\nconst ABSOLUTE_SURFACE_REFERENCES = ['0', '1', '2', '3', '4', '5', '6', '7', '8'] as const;\nconst SURFACE_REFERENCES = [\n 'inherit', ...ABSOLUTE_SURFACE_REFERENCES,\n '+1', '+2', '+3', '+4', '+5', '+6', '+7', '+8',\n] as const;\nconst ELEVATION_REFERENCES = ['none', 'match', '1', '2', '3', '4', '5', '6', '7', '8'] as const;\ntype SurfaceReference = typeof SURFACE_REFERENCES[number];\ntype AbsoluteSurfaceReference = typeof ABSOLUTE_SURFACE_REFERENCES[number];\ntype ElevationReference = typeof ELEVATION_REFERENCES[number];\nconst elevationReferenceClasses = (property: `--${string}`): Record<ElevationReference, string> => Object.fromEntries(\n ELEVATION_REFERENCES.map((reference) => {\n const value = reference === 'none'\n ? 'var(--shadow-elevation-0)'\n : reference === 'match'\n ? 'var(--ui-matched-elevation)'\n : `var(--shadow-elevation-${reference})`;\n return [reference, `[${property}:${value}]`];\n }),\n) as Record<ElevationReference, string>;\nconst SURFACE_RADIUS_CLASSES = {\n none: '',\n xs: 'rounded-surface-xs',\n sm: 'rounded-surface-sm',\n md: 'rounded-surface-md',\n lg: 'rounded-surface-lg',\n full: 'rounded-full',\n} as const satisfies Record<typeof COMPONENT_RADII[number], string>;\nconst CONTROL_RADIUS_CLASSES = {\n none: '',\n xs: 'rounded-control-xs',\n sm: 'rounded-control-sm',\n md: 'rounded-control-md',\n lg: 'rounded-control-lg',\n full: 'rounded-full',\n} as const satisfies Record<typeof COMPONENT_RADII[number], string>;\nconst CONTROL_TYPOGRAPHY_CLASSES = {\n xs: 'font-control text-control-xs [font-weight:var(--font-weight-control-xs)]',\n sm: 'font-control text-control-sm [font-weight:var(--font-weight-control-sm)]',\n md: 'font-control text-control-md [font-weight:var(--font-weight-control-md)]',\n lg: 'font-control text-control-lg [font-weight:var(--font-weight-control-lg)]',\n xlg: 'font-control text-control-xlg [font-weight:var(--font-weight-control-xlg)]',\n} as const;\nconst CONTROL_SIZE_CLASSES = {\n xs: `h-control-xs px-control-padding-xs ${CONTROL_TYPOGRAPHY_CLASSES.xs}`,\n sm: `h-control-sm px-control-padding-sm ${CONTROL_TYPOGRAPHY_CLASSES.sm}`,\n md: `h-control-md px-control-padding-md ${CONTROL_TYPOGRAPHY_CLASSES.md}`,\n lg: `h-control-lg px-control-padding-lg ${CONTROL_TYPOGRAPHY_CLASSES.lg}`,\n xlg: `h-control-xlg px-control-padding-xlg ${CONTROL_TYPOGRAPHY_CLASSES.xlg}`,\n};\nconst CONTROL_MIN_SIZE_CLASSES = {\n xs: `min-h-control-xs px-control-padding-xs ${CONTROL_TYPOGRAPHY_CLASSES.xs}`,\n sm: `min-h-control-sm px-control-padding-sm ${CONTROL_TYPOGRAPHY_CLASSES.sm}`,\n md: `min-h-control-md px-control-padding-md ${CONTROL_TYPOGRAPHY_CLASSES.md}`,\n lg: `min-h-control-lg px-control-padding-lg ${CONTROL_TYPOGRAPHY_CLASSES.lg}`,\n xlg: `min-h-control-xlg px-control-padding-xlg ${CONTROL_TYPOGRAPHY_CLASSES.xlg}`,\n};\nconst CONTROL_MULTILINE_SIZE_CLASSES = {\n xs: `min-h-control-multiline-xs px-control-padding-xs py-1 ${CONTROL_TYPOGRAPHY_CLASSES.xs}`,\n sm: `min-h-control-multiline-sm px-control-padding-sm py-1.5 ${CONTROL_TYPOGRAPHY_CLASSES.sm}`,\n md: `min-h-control-multiline-md px-control-padding-md py-2 ${CONTROL_TYPOGRAPHY_CLASSES.md}`,\n lg: `min-h-control-multiline-lg px-control-padding-lg py-2 ${CONTROL_TYPOGRAPHY_CLASSES.lg}`,\n xlg: `min-h-control-multiline-xlg px-control-padding-xlg py-2 ${CONTROL_TYPOGRAPHY_CLASSES.xlg}`,\n};\nconst FIELD_CONTROL_ROOT_CLASSES = [\n 'flex w-full min-w-0 items-center gap-control-gap outline-none',\n];\nconst FIELD_CONTROL_MULTILINE_ROOT_CLASSES = [\n 'flex w-full min-w-0 gap-control-gap outline-none',\n];\nconst FIELD_CONTROL_INPUT_CLASSES = [\n 'border-0 bg-transparent p-0 text-inherit outline-none',\n];\nconst FIELD_CONTROL_ACTION_CLASSES = [\n 'inline-flex size-control-xs shrink-0 items-center justify-center rounded-control-sm border-0 bg-transparent',\n 'text-current outline-none',\n];\nconst FIELD_CONTROL_NATIVE_CLASSES = [\n 'w-full border-0 bg-transparent text-inherit outline-none',\n];\nconst FIELD_LABEL_CLASSES = 'font-label text-label [font-weight:var(--font-weight-label)] text-label-ink';\nconst FIELD_DESCRIPTION_CLASSES = 'font-description text-description [font-weight:var(--font-weight-description)] text-surface-ink-muted';\nconst POPOVER_GEOMETRY_CLASSES = [\n 'absolute left-0 top-0 z-popover m-0 grid h-auto',\n 'outline-none',\n];\nconst INTERACTIVE_ITEM_CLASSES = [\n 'ui-interactive:hover:bg-interaction-hover',\n 'ui-interactive:ui-active:bg-interaction-pressed',\n 'ui-interactive:ui-selected:bg-interaction-selected',\n 'ui-interactive:ui-selected:hover:bg-interaction-selected-hover',\n];\nconst SELECTION_COLORS = ['neutral', 'accent'] as const;\nconst INTERACTION_TREATMENTS = ['tonal', 'edge', 'combined'] as const;\nconst OPTION_ITEM_CLASSES = [\n 'flex h-menu-item w-full cursor-default select-none items-center gap-2 rounded-control-sm px-menu-item-padding-inline',\n 'text-left font-menu-item text-menu-item [font-weight:var(--font-weight-menu-item)] outline-none',\n 'data-disabled:pointer-events-none',\n];\nconst OPTION_ICON_CLASSES = 'size-icon shrink-0 fill-current text-current opacity-70';\nconst OPTION_INDICATOR_CLASSES = 'ml-auto size-icon shrink-0 fill-current text-current opacity-0 data-selected:opacity-100';\n\ntype ControlSize = typeof CONTROL_SIZES[number];\ntype ControlVariant = typeof CONTROL_VARIANTS[number];\ntype IconVariant = typeof ICON_VARIANTS[number];\ntype CommonButtonType = typeof BUTTON_TYPES[number];\ntype Alignment = typeof ALIGNMENTS[number];\ntype Position = typeof POSITIONS[number];\ntype EdgePosition = typeof EDGE_POSITIONS[number];\ntype Orientation = typeof ORIENTATIONS[number];\ntype IndicatorPlacement = typeof INDICATOR_PLACEMENTS[number];\ntype SelectionColor = typeof SELECTION_COLORS[number];\ntype InteractionTreatment = typeof INTERACTION_TREATMENTS[number];\ntype DefaultVariant = typeof DEFAULT_VARIANTS[number];\ntype HeadingLevel = typeof HEADING_LEVELS[number];\ntype ComponentRadius = typeof COMPONENT_RADII[number];\n\nexport {\n ABSOLUTE_SURFACE_REFERENCES,\n ALIGNMENTS,\n BUTTON_TYPES,\n COMPONENT_RADII,\n CONTROL_RADIUS_CLASSES,\n CONTROL_MIN_SIZE_CLASSES,\n CONTROL_MULTILINE_SIZE_CLASSES,\n CONTROL_SIZES,\n CONTROL_SIZE_CLASSES,\n CONTROL_TYPOGRAPHY_CLASSES,\n CONTROL_VARIANTS,\n DEFAULT_VARIANTS,\n EDGE_POSITIONS,\n ELEVATION_REFERENCES,\n FIELD_CONTROL_ACTION_CLASSES,\n FIELD_CONTROL_INPUT_CLASSES,\n FIELD_CONTROL_MULTILINE_ROOT_CLASSES,\n FIELD_CONTROL_NATIVE_CLASSES,\n FIELD_CONTROL_ROOT_CLASSES,\n FIELD_DESCRIPTION_CLASSES,\n FIELD_LABEL_CLASSES,\n elevationReferenceClasses,\n HEADING_LEVELS,\n ICON_COLORS,\n ICON_COLOR_CLASSES,\n ICON_VARIANTS,\n INDICATOR_PLACEMENTS,\n INTERACTION_TREATMENTS,\n INTERACTIVE_ITEM_CLASSES,\n LAYOUT_GAP_CLASSES,\n LAYOUT_GAP_X_CLASSES,\n LAYOUT_GAP_Y_CLASSES,\n LAYOUT_MARGIN_CLASSES,\n LAYOUT_MARGIN_X_CLASSES,\n LAYOUT_MARGIN_Y_CLASSES,\n LAYOUT_PADDING_CLASSES,\n LAYOUT_PADDING_X_CLASSES,\n LAYOUT_PADDING_Y_CLASSES,\n LAYOUT_SPACES,\n OPTION_ICON_CLASSES,\n OPTION_INDICATOR_CLASSES,\n OPTION_ITEM_CLASSES,\n ORIENTATIONS,\n POPOVER_GEOMETRY_CLASSES,\n POSITIONS,\n SELECTION_COLORS,\n SURFACE_RADIUS_CLASSES,\n SURFACE_REFERENCES,\n TYPOGRAPHY_COLOR_CLASSES,\n TYPOGRAPHY_COLORS,\n};\nexport type {InteractionTreatment, SelectionColor};\nexport type {\n AbsoluteSurfaceReference,\n Alignment,\n CommonButtonType,\n ComponentRadius,\n ControlSize,\n ControlVariant,\n DefaultVariant,\n EdgePosition,\n ElevationReference,\n HeadingLevel,\n IconColor,\n IconVariant,\n IndicatorPlacement,\n LayoutSpace,\n Orientation,\n Position,\n SurfaceReference,\n TypographyColor,\n};\n"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{d as e}from"./ui-egQWc4ws.js";import{t}from"./capability-motion-C_8mc71v.js";import{f as n,l as r,n as i,o as a,u as o}from"./codecs-Cb1ns_47.js";import{r as s,t as c}from"./dom-qAeVl7dc.js";import{i as l,t as u}from"./alpine-machine-BS13dbK4.js";import{t as d}from"./alpine-data-CytyCyfk.js";import{n as f,t as p}from"./styles-TfvwVPGw.js";import{t as m}from"./merge-bindings-C8ewA_FD.js";import{t as h}from"./machine-Dqut4h89.js";import{t as ee}from"./dismissable-layer-BROE-Ln2.js";import{a as te,i as g,n as _,o as ne,t as v}from"./focus-scope-DtaPVNl5.js";import{n as y,t as re}from"./scroll-lock-DOw7dmi1.js";import{D as b,h as x,l as S,u as C}from"./common-BOd_thC-.js";import{t as w}from"./controlled-open-Hy4-OT-6.js";var T=[`modal`,`sheet`],E=S,D=[`sm`,`md`,`lg`,`xl`,`full`],O=b,k=C,A=x,j={name:n,open:i,mode:r(T,`modal`),side:r(E,`right`),size:r(D,`md`),surface:r(O,`+3`),elevation:r(k,`5`),dismissible:i.default(!0),closable:i.default(!0),disabled:i,autofocusTitle:i,label:n,descriptionId:n,panelClass:n,overlayClass:n,class:n},M={name:n,disabled:i,class:n};n.default(`ui-modal-root`),r(A,`h2`),n.default(`Close`);var ie=[l({name:`opening`,state:`opening`,project:()=>({}),onDone:`OPENING_DONE`,onError:`OPENING_ERROR`}),l({name:`closing`,state:`closing`,project:()=>({}),onDone:`CLOSING_DONE`,onError:`CLOSING_ERROR`})],N=w(),P=({props:e,effects:t})=>h({initial:`closed`,states:{closed:{tags:[`closed`],on:{OPEN:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},PROPS_CHANGED:[{target:`opening`,guard:N.shouldOpen,reduce:`replaceProps`,effects:[`syncProps`,`prepareOpen`]},{reduce:`replaceProps`,effects:`syncProps`}]}},opening:{tags:[`visible`,`interactive`,`transitioning`],on:{OPENING_DONE:{target:`open`,effects:`finishOpen`},OPENING_ERROR:{target:`open`,effects:`finishOpen`},CLOSE:{target:`closing`,effects:`prepareClose`},CANCEL:{target:`closing`,guard:`canDismiss`,effects:[`emitCancel`,`prepareClose`]},PROPS_CHANGED:[{target:`closing`,guard:N.shouldClose,reduce:`replaceProps`,effects:[`syncProps`,`prepareClose`]},{reduce:`replaceProps`,effects:`syncProps`}]}},open:{tags:[`visible`,`interactive`,`open`],on:{CLOSE:{target:`closing`,effects:`prepareClose`},CANCEL:{target:`closing`,guard:`canDismiss`,effects:[`emitCancel`,`prepareClose`]},PROPS_CHANGED:[{target:`closing`,guard:N.shouldClose,reduce:`replaceProps`,effects:[`syncProps`,`prepareClose`]},{reduce:`replaceProps`,effects:`syncProps`}]}},closing:{tags:[`visible`,`transitioning`],on:{CLOSING_DONE:{target:`closed`,effects:`finishClose`},CLOSING_ERROR:{target:`closed`,effects:`finishClose`},OPEN:{target:`opening`,guard:`canOpen`,effects:`prepareOpen`},PROPS_CHANGED:[{target:`opening`,guard:N.shouldOpen,reduce:`replaceProps`,effects:[`syncProps`,`prepareOpen`]},{reduce:`replaceProps`,effects:`syncProps`}]}}}},{context:{},props:e,reducers:{replaceProps:N.replace},guards:{canOpen:({props:e})=>!e.disabled,canDismiss:({props:e})=>e.dismissible},effects:{prepareOpen:t.prepareOpen,finishOpen:t.finishOpen,prepareClose:t.prepareClose,finishClose:t.finishClose,syncProps:t.syncProps,emitCancel:({event:e})=>{(e.reason===`escape`||e.reason===`outside`)&&t.emitCancel(e.reason)}}}),F=[`grid-rows-[auto_auto_minmax(0,1fr)_auto]`,`[&>[data-ui-modal-body]]:-mx-1 [&>[data-ui-modal-body]]:min-h-0 [&>[data-ui-modal-body]]:content-start`,`[&>[data-ui-modal-body]]:overflow-x-hidden [&>[data-ui-modal-body]]:overflow-y-auto [&>[data-ui-modal-body]]:px-1`,`[&>[data-ui-modal-footer]]:self-end`],I=p({definition:{component:`ui.modal`,parts:{instance:{base:`contents`},root:{base:[`fixed inset-0 z-dialog m-0 h-auto max-h-none w-auto max-w-none overflow-visible border-0 bg-transparent p-0 text-surface-ink`,`backdrop:bg-transparent`]},viewport:{base:`fixed inset-0 z-dialog flex min-h-dvh`,variants:{mode:{modal:`items-center justify-center overflow-y-auto p-4`,sheet:``},side:{top:``,right:``,bottom:``,left:``}},compounds:[{when:{mode:`sheet`,side:`top`},class:`items-start justify-center`},{when:{mode:`sheet`,side:`right`},class:`items-center justify-end overflow-hidden`},{when:{mode:`sheet`,side:`bottom`},class:`items-end justify-center`},{when:{mode:`sheet`,side:`left`},class:`items-center justify-start overflow-hidden`}],defaults:{mode:`modal`,side:`right`}},overlay:{base:`fixed inset-0 bg-scrim`},panel:{base:[`relative z-dialog grid w-full min-w-0 gap-4 overflow-auto p-5 outline-none`,`max-h-full`],variants:{mode:{modal:`rounded-overlay-md`,sheet:``},side:{top:``,right:``,bottom:``,left:``},size:{sm:`max-w-modal-sm`,md:`max-w-modal-md`,lg:`max-w-modal-lg`,xl:`max-w-modal-xl`,full:`max-w-full`}},compounds:[{when:{mode:`sheet`,side:`right`},class:[`min-h-dvh max-w-modal-md rounded-l-overlay-md`,F]},{when:{mode:`sheet`,side:`left`},class:[`min-h-dvh max-w-modal-md rounded-r-overlay-md`,F]},{when:{mode:`sheet`,side:`top`},class:`max-w-full rounded-b-overlay-md`},{when:{mode:`sheet`,side:`bottom`},class:`max-w-full rounded-t-overlay-md`}],defaults:{mode:`modal`,side:`right`,size:`md`}},trigger:{base:`contents`},outlet:{base:``},title:{base:`pr-8`},description:{base:`-mt-3 pr-8 text-surface-ink-muted`},body:{base:`grid min-w-0 gap-3 text-sm`},footer:{base:`flex min-w-0 items-center justify-end gap-2 pt-1`},close:{base:[`absolute right-3 top-3 inline-flex size-control-md items-center justify-center rounded-control-sm border border-transparent text-surface-ink-muted outline-none`,`hover:bg-interaction-hover focus-visible:ui-focus-ring`]},closeIcon:{base:`size-icon fill-current`}}}}),L=new Set,R=new Set,z=e=>e?`open`:`closed`,B=e=>e===`opening`||e===`open`,V=e=>Array.from(L).find(t=>t.name===e)??null,H=(e,t)=>{e.setAttribute(`data-state`,z(t)),e.setAttribute(`aria-expanded`,t?`true`:`false`)},U=()=>{let t=null,n=``,r=null,i=!1,a=!1,l=!1,d=[],p=[],h=()=>{if(!t)throw Error(`Modal has not been initialized.`);return t},b=()=>{let e=h().querySelector(`[data-ui-modal]`);if(!(e instanceof HTMLDialogElement))throw Error(`Modal requires a dialog element.`);return e},x=()=>{let e=h().querySelector(`[data-ui-modal-viewport]`);if(!e)throw Error(`Modal requires a viewport element.`);return e},S=()=>{let e=h().querySelector(`[data-ui-modal-overlay]`);if(!e)throw Error(`Modal requires an overlay element.`);return e},C=()=>{let e=h().querySelector(`[data-ui-modal-panel]`);if(!e)throw Error(`Modal requires a panel element.`);return e},w=()=>h().querySelector(`[data-ui-modal-title]`),T=()=>h().querySelector(`[data-ui-modal-description]`),E=()=>Array.from(h().children).find(e=>e instanceof HTMLElement&&e.matches(`[data-ui-modal-trigger]`))??null,D=()=>g(C()),O=()=>J.getSnapshot().props,k=()=>J.matches(`opening`)||J.matches(`open`),A=(e,t)=>{if(H(e,k()),e.setAttribute(`aria-controls`,n),e.setAttribute(`data-ui-modal-trigger-target`,n),t||O().disabled){e.setAttribute(`aria-disabled`,`true`),e.setAttribute(`data-disabled`,``),e instanceof HTMLButtonElement&&(e.disabled=!0),e.matches(v)||(e.tabIndex=-1);return}e.removeAttribute(`aria-disabled`),e.removeAttribute(`data-disabled`),e instanceof HTMLButtonElement&&(e.disabled=!1),e.matches(v)||(e.tabIndex=0)},M=()=>{let e=E();e&&A(_(e),O().disabled),R.forEach(e=>e.sync())},N=()=>{let e=O(),t=b(),r=C(),i=w(),a=T();t.id=n,t.setAttribute(`role`,`dialog`),t.setAttribute(`aria-modal`,`true`),r.id||=`${n}-panel`,r.tabIndex=-1,i?(i.id||=`${n}-title`,t.setAttribute(`aria-labelledby`,i.id),t.removeAttribute(`aria-label`),e.autofocusTitle?i.tabIndex=-1:i.removeAttribute(`tabindex`)):(t.removeAttribute(`aria-labelledby`),e.label?t.setAttribute(`aria-label`,e.label):t.removeAttribute(`aria-label`)),a&&(a.id||=`${n}-description`),e.descriptionId===`none`?t.removeAttribute(`aria-describedby`):e.descriptionId?t.setAttribute(`aria-describedby`,e.descriptionId):a?t.setAttribute(`aria-describedby`,a.id):t.removeAttribute(`aria-describedby`)},F=({syncOpen:e=!0}={})=>{let t=k(),n=z(t);e&&o({el:h(),schema:j,key:`open`,value:t}),[b(),x(),S(),C()].forEach(e=>{e.setAttribute(`data-state`,n)}),M()},V=()=>{let e=C().querySelector(`[autofocus]`);if(e&&te(e)){e.focus({preventScroll:!0});return}let t=w();if(O().autofocusTitle&&t){t.focus({preventScroll:!0});return}let n=D()[0];if(n){n.focus({preventScroll:!0});return}C().focus({preventScroll:!0})},U=()=>{!r||!document.contains(r)||r.focus({preventScroll:!0})},W=e=>{J.hasTag(`interactive`)&&ne(e,C())},G=()=>{let e=b();typeof e.showModal==`function`&&!i?(e.open&&e.removeAttribute(`open`),e.showModal(),i=!0):e.open||e.setAttribute(`open`,``),a||=(re(),!0),N(),F(),queueMicrotask(V)},K=()=>{F(),s({el:b(),name:`ui:open`})},q=()=>{F()},ae=()=>{let e=b();e.open&&e.close(),i=!1,a&&=(y(),!1),F(),U(),s({el:e,name:`ui:close`})},oe=()=>{N(),M()},J=u({schema:j,hooks:ie,createMachine:({props:e})=>P({props:e,effects:{prepareOpen:G,finishOpen:K,prepareClose:q,finishClose:ae,syncProps:oe,emitCancel:e=>{s({el:b(),name:`ui:cancel`,detail:{reason:e}})}}})}),Y=e=>{O().disabled||(r=e,J.send(`OPEN`))},X=(e,t)=>{t?.preventDefault(),J.send({type:`CANCEL`,reason:e})},Z=()=>{p.forEach(e=>e()),p=[]},se=e=>{let t=_(e);Z(),A(t,O().disabled),c({target:t,event:`click`,handler:()=>Y(t),cleanup:p}),c({target:t,event:`keydown`,handler:e=>{e instanceof KeyboardEvent&&(t instanceof HTMLButtonElement||t instanceof HTMLAnchorElement||e.key!==`Enter`&&e.key!==` `||(e.preventDefault(),Y(t)))},cleanup:p})},ce=()=>{let e=b(),t=e.querySelector(`[data-ui-modal-trigger]`);!t||t.dataset.name||(h().insertBefore(t,e),se(t))},le=()=>{let e=b();c({target:e,event:`cancel`,handler:t=>{t.target===e&&X(`escape`,t)},cleanup:d}),c({target:e,event:`close`,handler:()=>{J.hasTag(`visible`)&&J.send(`CLOSE`)},cleanup:d}),c({target:e,event:`keydown`,handler:e=>{e instanceof KeyboardEvent&&W(e)},cleanup:d}),c({target:e,event:`click`,handler:e=>{let t=e.target;!(t instanceof Element)||!t.closest(`[data-ui-modal-close]`)||(e.preventDefault(),J.send(`CLOSE`))},cleanup:d}),c({target:document,event:`ui:modal-close`,handler:e=>{let t=e.detail;!t?.name||t.name!==O().name||J.send(`CLOSE`)},cleanup:d}),d.push(ee({isEnabled:()=>J.hasTag(`interactive`),roots:()=>[C(),r,E()],onDismiss:e=>X(`outside`,e)}))},Q,$={get name(){return O().name},get isOpen(){return J.matches(`open`)},get dialogId(){return n},openFrom:Y,close(e){e?.preventDefault(),J.send(`CLOSE`)},syncExternalTrigger:A};return Q={...J,get name(){return this.snapshot.current?.props.name??``},get isOpen(){return this.snapshot.current?.value===`open`},get isVisible(){return this.snapshot.current?.tags.includes(`visible`)??!1},get dialogId(){return n},init(){t=this.$el,J.connect(this.$el,this.snapshot);let r=O();n=b().id||this.$id(`modal${r.name?`-${r.name}`:``}`),e(b(),`open`),N(),L.add($),l=!0,ce(),le(),F({syncOpen:!1}),r.open&&queueMicrotask(()=>J.send(`OPEN`))},destroy(){d.forEach(e=>e()),d=[],Z(),l&&=(L.delete($),!1),J.disconnect();let e=t?.querySelector(`[data-ui-modal]`);e?.open&&e.close(),a&&=(y(),!1),R.forEach(e=>e.sync()),t=null},get root(){return m({inputs:[f({part:I.parts.instance,props:{},className:``}),{"data-ui-modal-instance":``}]})},get dialog(){let e=this.snapshot,t=e.current?.props??O();return m({inputs:[f({part:I.parts.root,props:t,className:t.class}),{id:n,role:`dialog`,"aria-modal":`true`,":data-state":()=>z(B(e.current?.value)),":data-mode":()=>e.current?.props.mode,":data-side":()=>e.current?.props.side,":data-size":()=>e.current?.props.size}]})},get viewport(){let e=this.snapshot,t=e.current?.props??O();return m({inputs:[f({part:I.parts.viewport,props:t}),{":data-state":()=>z(B(e.current?.value)),":data-mode":()=>e.current?.props.mode,":data-side":()=>e.current?.props.side}]})},get overlay(){let e=this.snapshot,t=e.current?.props??O();return m({inputs:[f({part:I.parts.overlay,props:t,className:t.overlayClass}),{":data-state":()=>z(B(e.current?.value))}]})},get panel(){let e=this.snapshot,t=e.current?.props??O();return m({inputs:[f({part:I.parts.panel,props:t,className:t.panelClass}),{tabindex:-1,":data-state":()=>z(B(e.current?.value)),":data-mode":()=>e.current?.props.mode,":data-side":()=>e.current?.props.side,":data-size":()=>e.current?.props.size,":data-ui-surface":()=>e.current?.props.surface,":data-ui-elevation":()=>e.current?.props.elevation}]})},open(e){if(e?.preventDefault(),O().disabled)return;let t=E();t&&(r=_(t)),J.send(`OPEN`)},close(e){e?.preventDefault(),J.send(`CLOSE`)}},Q},W=()=>{let e=null,t=null,n=[],r=!1,i=()=>{if(!e)throw Error(`Modal trigger has not been initialized.`);return e},o=()=>{if(!t)throw Error(`Modal trigger has not been initialized.`);return t},s=()=>{let e=i().name;return e?V(e):null},l=()=>{let e=i(),t=o(),n=s();if(n){n.syncExternalTrigger(t,e.disabled);return}H(t,!1),e.disabled?(t.setAttribute(`aria-disabled`,`true`),t.setAttribute(`data-disabled`,``)):(t.removeAttribute(`aria-disabled`),t.removeAttribute(`data-disabled`))},u={get name(){return i().name},get target(){return o()},sync:l};return{init(){e=a({el:this.$el,schema:M,onChange:()=>{e?.name&&l()}}),t=_(this.$el),e.name&&(R.add(u),r=!0,l(),c({target:t,event:`click`,handler:e=>this.open(e),cleanup:n}),c({target:t,event:`keydown`,handler:e=>{e instanceof KeyboardEvent&&(t instanceof HTMLButtonElement||t instanceof HTMLAnchorElement||e.key!==`Enter`&&e.key!==` `||this.open(e))},cleanup:n}))},destroy(){e?.disconnect(),r&&R.delete(u),n.forEach(e=>e()),n=[],r=!1,e=null,t=null},get root(){let t=i();return m({inputs:[f({part:I.parts.trigger,props:{},className:t.class}),{"data-ui-modal-trigger":``,":data-name":()=>e?.name||void 0,":data-disabled":()=>e?.disabled?``:void 0}]})},open(e){e?.preventDefault(),!i().disabled&&s()?.openFrom(o())}}},G=e=>{d(`UiModal`,U)(e),d(`UiModalTrigger`,W)(e)},K=new WeakSet,q=e=>{K.has(e)||(K.add(e),t(e),G(e))};export{U as n,W as r,q as t};
|
|
2
|
-
//# sourceMappingURL=entry.generated-51hjJ_lu.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"entry.generated-51hjJ_lu.js","names":[],"sources":["../../../../../../../../client/src/components/modal/contract.ts","../../../../../../../../client/src/components/modal/machine.ts","../../../../../../../../client/src/components/modal/styles.ts","../../../../../../../../client/src/components/modal/index.ts","../../../../../../../../client/src/components/modal/entry.generated.ts"],"sourcesContent":["import {bool, oneOf, string, type PropState, type SchemaToProps} from '../../runtime';\nimport {\n EDGE_POSITIONS,\n ELEVATION_REFERENCES,\n HEADING_LEVELS,\n SURFACE_REFERENCES,\n type EdgePosition,\n type ElevationReference,\n type HeadingLevel,\n type SurfaceReference,\n} from '../common';\n\nconst MODAL_MODES = ['modal', 'sheet'] as const;\nconst MODAL_SIDES = EDGE_POSITIONS;\nconst MODAL_SIZES = ['sm', 'md', 'lg', 'xl', 'full'] as const;\nconst MODAL_SURFACES = SURFACE_REFERENCES;\nconst MODAL_ELEVATIONS = ELEVATION_REFERENCES;\nconst MODAL_TITLE_AS_VALUES = HEADING_LEVELS;\n\ntype ModalMode = typeof MODAL_MODES[number];\ntype ModalSide = EdgePosition;\ntype ModalSize = typeof MODAL_SIZES[number];\ntype ModalSurface = SurfaceReference;\ntype ModalElevation = ElevationReference;\ntype ModalTitleAs = HeadingLevel;\n\nconst modalSchema = {\n name: string,\n open: bool,\n mode: oneOf(MODAL_MODES, 'modal'),\n side: oneOf(MODAL_SIDES, 'right'),\n size: oneOf(MODAL_SIZES, 'md'),\n surface: oneOf(MODAL_SURFACES, '+3' as ModalSurface),\n elevation: oneOf(MODAL_ELEVATIONS, '5' as ModalElevation),\n dismissible: bool.default(true),\n closable: bool.default(true),\n disabled: bool,\n autofocusTitle: bool,\n label: string,\n descriptionId: string,\n panelClass: string,\n overlayClass: string,\n class: string,\n};\n\nconst modalTriggerSchema = {\n name: string,\n disabled: bool,\n class: string,\n};\n\nconst modalOutletSchema = {\n id: string.default('ui-modal-root'),\n class: string,\n};\n\nconst modalTitleSchema = {\n as: oneOf(MODAL_TITLE_AS_VALUES, 'h2'),\n class: string,\n};\n\nconst modalDescriptionSchema = {\n class: string,\n};\n\nconst modalBodySchema = {\n class: string,\n};\n\nconst modalFooterSchema = {\n class: string,\n};\n\nconst modalCloseSchema = {\n label: string.default('Close'),\n class: string,\n};\n\ntype ModalProps = SchemaToProps<typeof modalSchema>;\ntype ModalTriggerProps = PropState<typeof modalTriggerSchema>;\n\nexport {\n MODAL_SIDES,\n MODAL_SIZES,\n MODAL_ELEVATIONS,\n MODAL_SURFACES,\n MODAL_TITLE_AS_VALUES,\n MODAL_MODES,\n modalBodySchema,\n modalCloseSchema,\n modalDescriptionSchema,\n modalFooterSchema,\n modalOutletSchema,\n modalSchema,\n modalTitleSchema,\n modalTriggerSchema,\n};\nexport type {\n ModalSide,\n ModalProps,\n ModalSize,\n ModalSurface,\n ModalElevation,\n ModalTitleAs,\n ModalTriggerProps,\n ModalMode,\n};\n","import {\n createMachine,\n type Machine,\n} from '../../runtime/state-machine';\nimport {defineHook, type TransitionHookDefinition} from '../../runtime/transition-coordinator';\nimport {defineControlledOpenProps} from '../shared/controlled-open';\nimport type {ModalProps} from './contract';\n\ntype ModalContext = Record<string, never>;\n\ntype ModalMachineEffects = {\n prepareOpen(): void;\n finishOpen(): void;\n prepareClose(): void;\n finishClose(): void;\n syncProps(): void;\n emitCancel(reason: 'escape' | 'outside'): void;\n};\n\ntype CreateModalMachineOptions = {\n props: ModalProps;\n effects: ModalMachineEffects;\n};\n\nconst openingHook = defineHook({\n name: 'opening',\n state: 'opening',\n project: () => ({}),\n onDone: 'OPENING_DONE',\n onError: 'OPENING_ERROR',\n} satisfies TransitionHookDefinition<ModalContext, ModalProps, Record<string, never>, 'opening'>);\n\nconst closingHook = defineHook({\n name: 'closing',\n state: 'closing',\n project: () => ({}),\n onDone: 'CLOSING_DONE',\n onError: 'CLOSING_ERROR',\n} satisfies TransitionHookDefinition<ModalContext, ModalProps, Record<string, never>, 'closing'>);\n\nconst modalHooks = [openingHook, closingHook] as const;\nconst controlledOpenProps = defineControlledOpenProps<ModalContext, ModalProps>();\n\nconst createModalMachine = ({\n props,\n effects,\n}: CreateModalMachineOptions): Machine<ModalContext, ModalProps> => createMachine<ModalContext, ModalProps>({\n initial: 'closed',\n states: {\n closed: {\n tags: ['closed'],\n on: {\n OPEN: {target: 'opening', guard: 'canOpen', effects: 'prepareOpen'},\n PROPS_CHANGED: [\n {\n target: 'opening',\n guard: controlledOpenProps.shouldOpen,\n reduce: 'replaceProps',\n effects: ['syncProps', 'prepareOpen'],\n },\n {reduce: 'replaceProps', effects: 'syncProps'},\n ],\n },\n },\n opening: {\n tags: ['visible', 'interactive', 'transitioning'],\n on: {\n OPENING_DONE: {target: 'open', effects: 'finishOpen'},\n OPENING_ERROR: {target: 'open', effects: 'finishOpen'},\n CLOSE: {target: 'closing', effects: 'prepareClose'},\n CANCEL: {target: 'closing', guard: 'canDismiss', effects: ['emitCancel', 'prepareClose']},\n PROPS_CHANGED: [\n {\n target: 'closing',\n guard: controlledOpenProps.shouldClose,\n reduce: 'replaceProps',\n effects: ['syncProps', 'prepareClose'],\n },\n {reduce: 'replaceProps', effects: 'syncProps'},\n ],\n },\n },\n open: {\n tags: ['visible', 'interactive', 'open'],\n on: {\n CLOSE: {target: 'closing', effects: 'prepareClose'},\n CANCEL: {target: 'closing', guard: 'canDismiss', effects: ['emitCancel', 'prepareClose']},\n PROPS_CHANGED: [\n {\n target: 'closing',\n guard: controlledOpenProps.shouldClose,\n reduce: 'replaceProps',\n effects: ['syncProps', 'prepareClose'],\n },\n {reduce: 'replaceProps', effects: 'syncProps'},\n ],\n },\n },\n closing: {\n tags: ['visible', 'transitioning'],\n on: {\n CLOSING_DONE: {target: 'closed', effects: 'finishClose'},\n CLOSING_ERROR: {target: 'closed', effects: 'finishClose'},\n OPEN: {target: 'opening', guard: 'canOpen', effects: 'prepareOpen'},\n PROPS_CHANGED: [\n {\n target: 'opening',\n guard: controlledOpenProps.shouldOpen,\n reduce: 'replaceProps',\n effects: ['syncProps', 'prepareOpen'],\n },\n {reduce: 'replaceProps', effects: 'syncProps'},\n ],\n },\n },\n },\n}, {\n context: {},\n props,\n reducers: {\n replaceProps: controlledOpenProps.replace,\n },\n guards: {\n canOpen: ({props: currentProps}) => !currentProps.disabled,\n canDismiss: ({props: currentProps}) => currentProps.dismissible,\n },\n effects: {\n prepareOpen: effects.prepareOpen,\n finishOpen: effects.finishOpen,\n prepareClose: effects.prepareClose,\n finishClose: effects.finishClose,\n syncProps: effects.syncProps,\n emitCancel: ({event}) => {\n if (event.reason === 'escape' || event.reason === 'outside') effects.emitCancel(event.reason);\n },\n },\n});\n\nexport {createModalMachine, modalHooks};\nexport type {CreateModalMachineOptions, ModalContext, ModalMachineEffects};\n","import {defineStyles} from '../../runtime';\n\nconst EDGE_PANEL_LAYOUT_CLASSES = [\n 'grid-rows-[auto_auto_minmax(0,1fr)_auto]',\n '[&>[data-ui-modal-body]]:-mx-1 [&>[data-ui-modal-body]]:min-h-0 [&>[data-ui-modal-body]]:content-start',\n '[&>[data-ui-modal-body]]:overflow-x-hidden [&>[data-ui-modal-body]]:overflow-y-auto [&>[data-ui-modal-body]]:px-1',\n '[&>[data-ui-modal-footer]]:self-end',\n] as const;\n\nconst modalStyles = defineStyles({definition: {\n component: 'ui.modal',\n parts: {\n instance: {\n base: 'contents',\n },\n root: {\n base: [\n 'fixed inset-0 z-dialog m-0 h-auto max-h-none w-auto max-w-none overflow-visible border-0 bg-transparent p-0 text-surface-ink',\n 'backdrop:bg-transparent',\n ],\n },\n viewport: {\n base: 'fixed inset-0 z-dialog flex min-h-dvh',\n variants: {\n mode: {\n modal: 'items-center justify-center overflow-y-auto p-4',\n sheet: '',\n },\n side: {\n top: '',\n right: '',\n bottom: '',\n left: '',\n },\n },\n compounds: [\n {when: {mode: 'sheet', side: 'top'}, class: 'items-start justify-center'},\n {when: {mode: 'sheet', side: 'right'}, class: 'items-center justify-end overflow-hidden'},\n {when: {mode: 'sheet', side: 'bottom'}, class: 'items-end justify-center'},\n {when: {mode: 'sheet', side: 'left'}, class: 'items-center justify-start overflow-hidden'},\n ],\n defaults: {\n mode: 'modal',\n side: 'right',\n },\n },\n overlay: {\n base: 'fixed inset-0 bg-scrim',\n },\n panel: {\n base: [\n 'relative z-dialog grid w-full min-w-0 gap-4 overflow-auto p-5 outline-none',\n 'max-h-full',\n ],\n variants: {\n mode: {\n modal: 'rounded-overlay-md',\n sheet: '',\n },\n side: {\n top: '',\n right: '',\n bottom: '',\n left: '',\n },\n size: {\n sm: 'max-w-modal-sm',\n md: 'max-w-modal-md',\n lg: 'max-w-modal-lg',\n xl: 'max-w-modal-xl',\n full: 'max-w-full',\n },\n },\n compounds: [\n {when: {mode: 'sheet', side: 'right'}, class: ['min-h-dvh max-w-modal-md rounded-l-overlay-md', EDGE_PANEL_LAYOUT_CLASSES]},\n {when: {mode: 'sheet', side: 'left'}, class: ['min-h-dvh max-w-modal-md rounded-r-overlay-md', EDGE_PANEL_LAYOUT_CLASSES]},\n {when: {mode: 'sheet', side: 'top'}, class: 'max-w-full rounded-b-overlay-md'},\n {when: {mode: 'sheet', side: 'bottom'}, class: 'max-w-full rounded-t-overlay-md'},\n ],\n defaults: {\n mode: 'modal',\n side: 'right',\n size: 'md',\n },\n },\n trigger: {\n base: 'contents',\n },\n outlet: {\n base: '',\n },\n title: {\n base: 'pr-8',\n },\n description: {\n base: '-mt-3 pr-8 text-surface-ink-muted',\n },\n body: {\n base: 'grid min-w-0 gap-3 text-sm',\n },\n footer: {\n base: 'flex min-w-0 items-center justify-end gap-2 pt-1',\n },\n close: {\n base: [\n 'absolute right-3 top-3 inline-flex size-control-md items-center justify-center rounded-control-sm border border-transparent text-surface-ink-muted outline-none',\n 'hover:bg-interaction-hover focus-visible:ui-focus-ring',\n ],\n },\n closeIcon: {\n base: 'size-icon fill-current',\n },\n },\n}});\n\nexport {modalStyles};\n","import type Alpine from 'alpinejs';\n\nimport {\n type AlpineMachine,\n createAlpineMachine,\n defineAlpineData,\n reflectSchemaProp,\n type TransitionForHook,\n type TrellisAlpineComponent,\n} from '@client/runtime';\nimport {defineProps} from '@client/runtime/codecs';\nimport {addDismissableLayer} from '@client/runtime/dismissable-layer';\nimport {FOCUSABLE_SELECTOR, closestFocusable, focusableElements, isFocusable, trapFocus as trapFocusWithin} from '@client/runtime/focus-scope';\nimport {mergeBindings, type BindingObject} from '@client/runtime/merge-bindings';\nimport {declareMorphAttributes} from '@client/runtime/morph';\nimport {lockDocumentScroll, unlockDocumentScroll} from '@client/runtime/scroll-lock';\nimport {resolveStyle} from '@client/runtime/styles';\nimport {addListener, dispatch, type CleanupStack} from '@client/utils';\nimport {\n modalSchema,\n modalTriggerSchema,\n type ModalProps,\n type ModalTriggerProps,\n} from './contract';\nimport {createModalMachine, modalHooks, type ModalContext} from './machine';\nimport {modalStyles} from './styles';\n\ntype ModalTransitionName = (typeof modalHooks)[number]['name'];\ntype ModalTransition<TName extends ModalTransitionName = ModalTransitionName> = TransitionForHook<\n Extract<(typeof modalHooks)[number], {name: TName}>,\n HTMLElement\n>;\n\ntype CancelReason = 'escape' | 'outside';\n\ntype ModalCancelDetail = {\n reason: CancelReason;\n};\n\ntype ModalCloseEventDetail = {\n name?: string;\n};\n\ntype ModalController = {\n readonly name: string;\n readonly isOpen: boolean;\n readonly dialogId: string;\n openFrom(trigger: HTMLElement): void;\n close(event?: Event): void;\n syncExternalTrigger(trigger: HTMLElement, disabled: boolean): void;\n};\n\ntype ModalTriggerController = {\n readonly name: string;\n readonly target: HTMLElement;\n sync(): void;\n};\n\n/**\n * Public Alpine API for `ui.modal`.\n *\n * @public\n */\ninterface UiModalApi {\n /** Whether the modal has completed its opening transition. */\n readonly isOpen: boolean;\n\n /** Whether the modal is opening, open, or closing. */\n readonly isVisible: boolean;\n\n /** Opens the modal unless it is disabled. */\n open(event?: Event): void;\n\n /** Closes the modal. */\n close(event?: Event): void;\n}\n\n/**\n * Public Alpine API for `ui.modal.trigger`.\n *\n * @public\n */\ninterface UiModalTriggerApi {\n /** Opens the named modal unless the trigger or modal is disabled. */\n open(event?: Event): void;\n}\n\ntype ModalData = AlpineMachine<ModalContext, ModalProps, typeof modalHooks> & UiModalApi & {\n readonly name: string;\n readonly dialogId: string;\n readonly root: BindingObject;\n readonly dialog: BindingObject;\n readonly viewport: BindingObject;\n readonly overlay: BindingObject;\n readonly panel: BindingObject;\n init(): void;\n destroy(): void;\n};\n\ntype ModalTriggerData = UiModalTriggerApi & {\n readonly root: BindingObject;\n init(): void;\n destroy(): void;\n};\n\nconst modalControllers = new Set<ModalController>();\nconst modalTriggerControllers = new Set<ModalTriggerController>();\n\nconst stateFor = (open: boolean): 'open' | 'closed' => (open ? 'open' : 'closed');\nconst isExpandedState = (state: unknown): boolean => state === 'opening' || state === 'open';\n\nconst findNamedModal = (name: string): ModalController | null => (\n Array.from(modalControllers).find((controller) => controller.name === name) ?? null\n);\n\nconst setOpenAttributes = (el: HTMLElement, open: boolean): void => {\n el.setAttribute('data-state', stateFor(open));\n el.setAttribute('aria-expanded', open ? 'true' : 'false');\n};\n\nconst UiModal = (): TrellisAlpineComponent<ModalData> => {\n let rootEl: (HTMLElement & Alpine.ElementWithXAttributes) | null = null;\n let dialogId = '';\n let activeTrigger: HTMLElement | null = null;\n let didShowModal = false;\n let hasScrollLock = false;\n let isRegistered = false;\n let cleanup: CleanupStack = [];\n let localTriggerCleanup: CleanupStack = [];\n\n const root = (): HTMLElement => {\n if (!rootEl) throw new Error('Modal has not been initialized.');\n return rootEl;\n };\n\n const dialogEl = (): HTMLDialogElement => {\n const dialog = root().querySelector<HTMLDialogElement>('[data-ui-modal]');\n if (!(dialog instanceof HTMLDialogElement)) throw new Error('Modal requires a dialog element.');\n return dialog;\n };\n\n const viewportEl = (): HTMLElement => {\n const viewport = root().querySelector<HTMLElement>('[data-ui-modal-viewport]');\n if (!viewport) throw new Error('Modal requires a viewport element.');\n return viewport;\n };\n\n const overlayEl = (): HTMLElement => {\n const overlay = root().querySelector<HTMLElement>('[data-ui-modal-overlay]');\n if (!overlay) throw new Error('Modal requires an overlay element.');\n return overlay;\n };\n\n const panelEl = (): HTMLElement => {\n const panel = root().querySelector<HTMLElement>('[data-ui-modal-panel]');\n if (!panel) throw new Error('Modal requires a panel element.');\n return panel;\n };\n\n const titleEl = (): HTMLElement | null => root().querySelector<HTMLElement>('[data-ui-modal-title]');\n const descriptionEl = (): HTMLElement | null => root().querySelector<HTMLElement>('[data-ui-modal-description]');\n\n const localTriggerEl = (): HTMLElement | null => (\n Array.from(root().children)\n .find((child) => child instanceof HTMLElement && child.matches('[data-ui-modal-trigger]')) as HTMLElement | undefined\n ?? null\n );\n\n const focusableEls = (): HTMLElement[] => focusableElements(panelEl());\n\n const currentProps = (): Readonly<ModalProps> => bridge.getSnapshot().props;\n const isExpanded = (): boolean => bridge.matches('opening') || bridge.matches('open');\n\n const syncExternalTrigger = (trigger: HTMLElement, disabled: boolean): void => {\n const expanded = isExpanded();\n setOpenAttributes(trigger, expanded);\n trigger.setAttribute('aria-controls', dialogId);\n trigger.setAttribute('data-ui-modal-trigger-target', dialogId);\n\n if (disabled || currentProps().disabled) {\n trigger.setAttribute('aria-disabled', 'true');\n trigger.setAttribute('data-disabled', '');\n if (trigger instanceof HTMLButtonElement) trigger.disabled = true;\n if (!trigger.matches(FOCUSABLE_SELECTOR)) trigger.tabIndex = -1;\n return;\n }\n\n trigger.removeAttribute('aria-disabled');\n trigger.removeAttribute('data-disabled');\n if (trigger instanceof HTMLButtonElement) trigger.disabled = false;\n if (!trigger.matches(FOCUSABLE_SELECTOR)) trigger.tabIndex = 0;\n };\n\n const syncTriggers = (): void => {\n const local = localTriggerEl();\n if (local) syncExternalTrigger(closestFocusable(local), currentProps().disabled);\n modalTriggerControllers.forEach((trigger) => trigger.sync());\n };\n\n const syncAccessibility = (): void => {\n const props = currentProps();\n const dialog = dialogEl();\n const panel = panelEl();\n const title = titleEl();\n const description = descriptionEl();\n\n dialog.id = dialogId;\n dialog.setAttribute('role', 'dialog');\n dialog.setAttribute('aria-modal', 'true');\n panel.id ||= `${dialogId}-panel`;\n panel.tabIndex = -1;\n\n if (title) {\n title.id ||= `${dialogId}-title`;\n dialog.setAttribute('aria-labelledby', title.id);\n dialog.removeAttribute('aria-label');\n if (props.autofocusTitle) title.tabIndex = -1;\n else title.removeAttribute('tabindex');\n } else {\n dialog.removeAttribute('aria-labelledby');\n if (props.label) dialog.setAttribute('aria-label', props.label);\n else dialog.removeAttribute('aria-label');\n }\n\n if (description) description.id ||= `${dialogId}-description`;\n if (props.descriptionId === 'none') dialog.removeAttribute('aria-describedby');\n else if (props.descriptionId) dialog.setAttribute('aria-describedby', props.descriptionId);\n else if (description) dialog.setAttribute('aria-describedby', description.id);\n else dialog.removeAttribute('aria-describedby');\n };\n\n const syncStateAttributes = ({syncOpen = true}: {syncOpen?: boolean} = {}): void => {\n const expanded = isExpanded();\n const state = stateFor(expanded);\n if (syncOpen) {\n reflectSchemaProp({el: root(), schema: modalSchema, key: 'open', value: expanded});\n }\n [dialogEl(), viewportEl(), overlayEl(), panelEl()].forEach((element) => {\n element.setAttribute('data-state', state);\n });\n syncTriggers();\n };\n\n const focusInitial = (): void => {\n const autofocus = panelEl().querySelector<HTMLElement>('[autofocus]');\n if (autofocus && isFocusable(autofocus)) {\n autofocus.focus({preventScroll: true});\n return;\n }\n\n const title = titleEl();\n if (currentProps().autofocusTitle && title) {\n title.focus({preventScroll: true});\n return;\n }\n\n const firstFocusable = focusableEls()[0];\n if (firstFocusable) {\n firstFocusable.focus({preventScroll: true});\n return;\n }\n\n panelEl().focus({preventScroll: true});\n };\n\n const restoreFocus = (): void => {\n if (!activeTrigger || !document.contains(activeTrigger)) return;\n activeTrigger.focus({preventScroll: true});\n };\n\n const trapFocus = (event: KeyboardEvent): void => {\n if (!bridge.hasTag('interactive')) return;\n trapFocusWithin(event, panelEl());\n };\n\n const prepareOpen = (): void => {\n const dialog = dialogEl();\n if (typeof dialog.showModal === 'function' && !didShowModal) {\n if (dialog.open) dialog.removeAttribute('open');\n dialog.showModal();\n didShowModal = true;\n } else if (!dialog.open) {\n dialog.setAttribute('open', '');\n }\n\n if (!hasScrollLock) {\n lockDocumentScroll();\n hasScrollLock = true;\n }\n syncAccessibility();\n syncStateAttributes();\n queueMicrotask(focusInitial);\n };\n\n const finishOpen = (): void => {\n syncStateAttributes();\n dispatch({el: dialogEl(), name: 'ui:open'});\n };\n\n const prepareClose = (): void => {\n syncStateAttributes();\n };\n\n const finishClose = (): void => {\n const dialog = dialogEl();\n if (dialog.open) dialog.close();\n didShowModal = false;\n if (hasScrollLock) {\n unlockDocumentScroll();\n hasScrollLock = false;\n }\n syncStateAttributes();\n restoreFocus();\n dispatch({el: dialog, name: 'ui:close'});\n };\n\n const syncProps = (): void => {\n syncAccessibility();\n syncTriggers();\n };\n\n const bridge = createAlpineMachine({\n schema: modalSchema,\n hooks: modalHooks,\n createMachine: ({props}) => createModalMachine({\n props,\n effects: {\n prepareOpen,\n finishOpen,\n prepareClose,\n finishClose,\n syncProps,\n emitCancel: (reason) => {\n dispatch<ModalCancelDetail>({el: dialogEl(), name: 'ui:cancel', detail: {reason}});\n },\n },\n }),\n });\n\n const openFrom = (trigger: HTMLElement): void => {\n if (currentProps().disabled) return;\n activeTrigger = trigger;\n bridge.send('OPEN');\n };\n\n const cancel = (reason: CancelReason, event?: Event): void => {\n event?.preventDefault();\n bridge.send({type: 'CANCEL', reason});\n };\n\n const teardownLocalTrigger = (): void => {\n localTriggerCleanup.forEach((dispose) => dispose());\n localTriggerCleanup = [];\n };\n\n const setupLocalTrigger = (trigger: HTMLElement): void => {\n const target = closestFocusable(trigger);\n teardownLocalTrigger();\n syncExternalTrigger(target, currentProps().disabled);\n addListener({target, event: 'click', handler: () => openFrom(target), cleanup: localTriggerCleanup});\n addListener({target, event: 'keydown', handler: (event) => {\n if (!(event instanceof KeyboardEvent)) return;\n if (target instanceof HTMLButtonElement || target instanceof HTMLAnchorElement) return;\n if (event.key !== 'Enter' && event.key !== ' ') return;\n event.preventDefault();\n openFrom(target);\n }, cleanup: localTriggerCleanup});\n };\n\n const mountLocalTrigger = (): void => {\n const dialog = dialogEl();\n const inlineTrigger = dialog.querySelector<HTMLElement>('[data-ui-modal-trigger]');\n if (!inlineTrigger || inlineTrigger.dataset.name) return;\n root().insertBefore(inlineTrigger, dialog);\n setupLocalTrigger(inlineTrigger);\n };\n\n const setupEvents = (): void => {\n const dialog = dialogEl();\n addListener({target: dialog, event: 'cancel', handler: (event) => {\n if (event.target !== dialog) return;\n cancel('escape', event);\n }, cleanup});\n addListener({target: dialog, event: 'close', handler: () => {\n if (bridge.hasTag('visible')) bridge.send('CLOSE');\n }, cleanup});\n addListener({target: dialog, event: 'keydown', handler: (event) => {\n if (event instanceof KeyboardEvent) trapFocus(event);\n }, cleanup});\n addListener({target: dialog, event: 'click', handler: (event) => {\n const target = event.target;\n if (!(target instanceof Element) || !target.closest('[data-ui-modal-close]')) return;\n event.preventDefault();\n bridge.send('CLOSE');\n }, cleanup});\n addListener({target: document, event: 'ui:modal-close', handler: (event) => {\n const detail = (event as CustomEvent<ModalCloseEventDetail>).detail;\n if (!detail?.name || detail.name !== currentProps().name) return;\n bridge.send('CLOSE');\n }, cleanup});\n cleanup.push(addDismissableLayer({\n isEnabled: () => bridge.hasTag('interactive'),\n roots: () => [panelEl(), activeTrigger, localTriggerEl()],\n onDismiss: (event) => cancel('outside', event),\n }));\n };\n\n let component!: TrellisAlpineComponent<ModalData>;\n const controller: ModalController = {\n get name() {\n return currentProps().name;\n },\n get isOpen() {\n return bridge.matches('open');\n },\n get dialogId() {\n return dialogId;\n },\n openFrom,\n close(event?: Event) {\n event?.preventDefault();\n bridge.send('CLOSE');\n },\n syncExternalTrigger,\n };\n\n component = {\n ...bridge,\n get name(): string {\n return this.snapshot.current?.props.name ?? '';\n },\n get isOpen(): boolean {\n return this.snapshot.current?.value === 'open';\n },\n get isVisible(): boolean {\n return this.snapshot.current?.tags.includes('visible') ?? false;\n },\n get dialogId(): string {\n return dialogId;\n },\n init(): void {\n rootEl = this.$el;\n bridge.connect(this.$el, this.snapshot);\n const props = currentProps();\n dialogId = dialogEl().id || this.$id(`modal${props.name ? `-${props.name}` : ''}`);\n declareMorphAttributes(dialogEl(), 'open');\n syncAccessibility();\n modalControllers.add(controller);\n isRegistered = true;\n mountLocalTrigger();\n setupEvents();\n syncStateAttributes({syncOpen: false});\n if (props.open) queueMicrotask(() => bridge.send('OPEN'));\n },\n destroy(): void {\n cleanup.forEach((dispose) => dispose());\n cleanup = [];\n teardownLocalTrigger();\n if (isRegistered) {\n modalControllers.delete(controller);\n isRegistered = false;\n }\n bridge.disconnect();\n const dialog = rootEl?.querySelector<HTMLDialogElement>('[data-ui-modal]');\n if (dialog?.open) dialog.close();\n if (hasScrollLock) {\n unlockDocumentScroll();\n hasScrollLock = false;\n }\n modalTriggerControllers.forEach((trigger) => trigger.sync());\n rootEl = null;\n },\n get root(): BindingObject {\n return mergeBindings({inputs: [\n resolveStyle({part: modalStyles.parts.instance, props: {}, className: ''}),\n {'data-ui-modal-instance': ''},\n ]});\n },\n get dialog(): BindingObject {\n const snapshot = this.snapshot;\n const props = snapshot.current?.props ?? currentProps();\n return mergeBindings({inputs: [\n resolveStyle({part: modalStyles.parts.root, props, className: props.class}),\n {\n id: dialogId,\n role: 'dialog',\n 'aria-modal': 'true',\n ':data-state': () => stateFor(isExpandedState(snapshot.current?.value)),\n ':data-mode': () => snapshot.current?.props.mode,\n ':data-side': () => snapshot.current?.props.side,\n ':data-size': () => snapshot.current?.props.size,\n },\n ]});\n },\n get viewport(): BindingObject {\n const snapshot = this.snapshot;\n const props = snapshot.current?.props ?? currentProps();\n return mergeBindings({inputs: [\n resolveStyle({part: modalStyles.parts.viewport, props}),\n {\n ':data-state': () => stateFor(isExpandedState(snapshot.current?.value)),\n ':data-mode': () => snapshot.current?.props.mode,\n ':data-side': () => snapshot.current?.props.side,\n },\n ]});\n },\n get overlay(): BindingObject {\n const snapshot = this.snapshot;\n const props = snapshot.current?.props ?? currentProps();\n return mergeBindings({inputs: [\n resolveStyle({part: modalStyles.parts.overlay, props, className: props.overlayClass}),\n {':data-state': () => stateFor(isExpandedState(snapshot.current?.value))},\n ]});\n },\n get panel(): BindingObject {\n const snapshot = this.snapshot;\n const props = snapshot.current?.props ?? currentProps();\n return mergeBindings({inputs: [\n resolveStyle({part: modalStyles.parts.panel, props, className: props.panelClass}),\n {\n tabindex: -1,\n ':data-state': () => stateFor(isExpandedState(snapshot.current?.value)),\n ':data-mode': () => snapshot.current?.props.mode,\n ':data-side': () => snapshot.current?.props.side,\n ':data-size': () => snapshot.current?.props.size,\n ':data-ui-surface': () => snapshot.current?.props.surface,\n ':data-ui-elevation': () => snapshot.current?.props.elevation,\n },\n ]});\n },\n open(event?: Event): void {\n event?.preventDefault();\n if (currentProps().disabled) return;\n const local = localTriggerEl();\n if (local) activeTrigger = closestFocusable(local);\n bridge.send('OPEN');\n },\n close(event?: Event): void {\n event?.preventDefault();\n bridge.send('CLOSE');\n },\n };\n\n return component;\n};\n\nconst UiModalTrigger = (): TrellisAlpineComponent<ModalTriggerData> => {\n let props: ModalTriggerProps | null = null;\n let target: HTMLElement | null = null;\n let cleanup: CleanupStack = [];\n let isRegistered = false;\n\n const currentProps = (): ModalTriggerProps => {\n if (!props) throw new Error('Modal trigger has not been initialized.');\n return props;\n };\n\n const targetEl = (): HTMLElement => {\n if (!target) throw new Error('Modal trigger has not been initialized.');\n return target;\n };\n\n const modal = (): ModalController | null => {\n const name = currentProps().name;\n return name ? findNamedModal(name) : null;\n };\n\n const sync = (): void => {\n const triggerProps = currentProps();\n const trigger = targetEl();\n const modalController = modal();\n if (modalController) {\n modalController.syncExternalTrigger(trigger, triggerProps.disabled);\n return;\n }\n\n setOpenAttributes(trigger, false);\n if (triggerProps.disabled) {\n trigger.setAttribute('aria-disabled', 'true');\n trigger.setAttribute('data-disabled', '');\n } else {\n trigger.removeAttribute('aria-disabled');\n trigger.removeAttribute('data-disabled');\n }\n };\n\n const controller: ModalTriggerController = {\n get name() {\n return currentProps().name;\n },\n get target() {\n return targetEl();\n },\n sync,\n };\n\n return {\n init(): void {\n props = defineProps({\n el: this.$el,\n schema: modalTriggerSchema,\n onChange: () => {\n if (props?.name) sync();\n },\n });\n target = closestFocusable(this.$el);\n if (!props.name) return;\n modalTriggerControllers.add(controller);\n isRegistered = true;\n sync();\n\n addListener({target, event: 'click', handler: (event) => this.open(event), cleanup});\n addListener({target, event: 'keydown', handler: (event) => {\n if (!(event instanceof KeyboardEvent)) return;\n if (target instanceof HTMLButtonElement || target instanceof HTMLAnchorElement) return;\n if (event.key !== 'Enter' && event.key !== ' ') return;\n this.open(event);\n }, cleanup});\n },\n destroy(): void {\n props?.disconnect();\n if (isRegistered) modalTriggerControllers.delete(controller);\n cleanup.forEach((dispose) => dispose());\n cleanup = [];\n isRegistered = false;\n props = null;\n target = null;\n },\n get root(): BindingObject {\n const triggerProps = currentProps();\n return mergeBindings({inputs: [\n resolveStyle({part: modalStyles.parts.trigger, props: {}, className: triggerProps.class}),\n {\n 'data-ui-modal-trigger': '',\n ':data-name': () => props?.name || undefined,\n ':data-disabled': () => (props?.disabled ? '' : undefined),\n },\n ]});\n },\n open(event?: Event): void {\n event?.preventDefault();\n if (currentProps().disabled) return;\n modal()?.openFrom(targetEl());\n },\n };\n};\n\nconst registerModal = (AlpineInstance: Alpine.Alpine): void => {\n defineAlpineData('UiModal', UiModal)(AlpineInstance);\n defineAlpineData('UiModalTrigger', UiModalTrigger)(AlpineInstance);\n};\n\nexport {registerModal, UiModal, UiModalTrigger};\nexport type {ModalCancelDetail, ModalTransition, UiModalApi, UiModalTriggerApi};\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';\nimport {registerMotionCapability} from '../../capabilities/motion';\nimport {registerModal as registerComponent} from './index';\n\nconst registered = new WeakSet<AlpineType>();\n\nconst registerModal = (AlpineInstance: AlpineType): void => {\n if (registered.has(AlpineInstance)) return;\n registered.add(AlpineInstance);\n registerMotionCapability(AlpineInstance);\n registerComponent(AlpineInstance);\n};\n\nexport {registerModal};\nexport default registerModal;\nexport * from './index';\n"],"mappings":"8tBAYA,IAAM,EAAc,CAAC,QAAS,OAAO,EAC/B,EAAc,EACd,EAAc,CAAC,KAAM,KAAM,KAAM,KAAM,MAAM,EAC7C,EAAiB,EACjB,EAAmB,EACnB,EAAwB,EASxB,EAAc,CAChB,KAAM,EACN,KAAM,EACN,KAAM,EAAM,EAAa,OAAO,EAChC,KAAM,EAAM,EAAa,OAAO,EAChC,KAAM,EAAM,EAAa,IAAI,EAC7B,QAAS,EAAM,EAAgB,IAAoB,EACnD,UAAW,EAAM,EAAkB,GAAqB,EACxD,YAAa,EAAK,QAAQ,EAAI,EAC9B,SAAU,EAAK,QAAQ,EAAI,EAC3B,SAAU,EACV,eAAgB,EAChB,MAAO,EACP,cAAe,EACf,WAAY,EACZ,aAAc,EACd,MAAO,CACX,EAEM,EAAqB,CACvB,KAAM,EACN,SAAU,EACV,MAAO,CACX,EAGQ,EAAO,QAAQ,eAAe,EAK9B,EAAM,EAAuB,IAAI,EAiB9B,EAAO,QAAQ,OAAO,EClCjC,IAAM,GAAa,CAhBC,EAAW,CAC3B,KAAM,UACN,MAAO,UACP,aAAgB,CAAC,GACjB,OAAQ,eACR,QAAS,eACb,CAUoB,EARA,EAAW,CAC3B,KAAM,UACN,MAAO,UACP,aAAgB,CAAC,GACjB,OAAQ,eACR,QAAS,eACb,CAEiC,CAAW,EACtC,EAAsB,EAAoD,EAE1E,GAAsB,CACxB,QACA,aACgE,EAAwC,CACxG,QAAS,SACT,OAAQ,CACJ,OAAQ,CACJ,KAAM,CAAC,QAAQ,EACf,GAAI,CACA,KAAM,CAAC,OAAQ,UAAW,MAAO,UAAW,QAAS,aAAa,EAClE,cAAe,CACX,CACI,OAAQ,UACR,MAAO,EAAoB,WAC3B,OAAQ,eACR,QAAS,CAAC,YAAa,aAAa,CACxC,EACA,CAAC,OAAQ,eAAgB,QAAS,WAAW,CACjD,CACJ,CACJ,EACA,QAAS,CACL,KAAM,CAAC,UAAW,cAAe,eAAe,EAChD,GAAI,CACA,aAAc,CAAC,OAAQ,OAAQ,QAAS,YAAY,EACpD,cAAe,CAAC,OAAQ,OAAQ,QAAS,YAAY,EACrD,MAAO,CAAC,OAAQ,UAAW,QAAS,cAAc,EAClD,OAAQ,CAAC,OAAQ,UAAW,MAAO,aAAc,QAAS,CAAC,aAAc,cAAc,CAAC,EACxF,cAAe,CACX,CACI,OAAQ,UACR,MAAO,EAAoB,YAC3B,OAAQ,eACR,QAAS,CAAC,YAAa,cAAc,CACzC,EACA,CAAC,OAAQ,eAAgB,QAAS,WAAW,CACjD,CACJ,CACJ,EACA,KAAM,CACF,KAAM,CAAC,UAAW,cAAe,MAAM,EACvC,GAAI,CACA,MAAO,CAAC,OAAQ,UAAW,QAAS,cAAc,EAClD,OAAQ,CAAC,OAAQ,UAAW,MAAO,aAAc,QAAS,CAAC,aAAc,cAAc,CAAC,EACxF,cAAe,CACX,CACI,OAAQ,UACR,MAAO,EAAoB,YAC3B,OAAQ,eACR,QAAS,CAAC,YAAa,cAAc,CACzC,EACA,CAAC,OAAQ,eAAgB,QAAS,WAAW,CACjD,CACJ,CACJ,EACA,QAAS,CACL,KAAM,CAAC,UAAW,eAAe,EACjC,GAAI,CACA,aAAc,CAAC,OAAQ,SAAU,QAAS,aAAa,EACvD,cAAe,CAAC,OAAQ,SAAU,QAAS,aAAa,EACxD,KAAM,CAAC,OAAQ,UAAW,MAAO,UAAW,QAAS,aAAa,EAClE,cAAe,CACX,CACI,OAAQ,UACR,MAAO,EAAoB,WAC3B,OAAQ,eACR,QAAS,CAAC,YAAa,aAAa,CACxC,EACA,CAAC,OAAQ,eAAgB,QAAS,WAAW,CACjD,CACJ,CACJ,CACJ,CACJ,EAAG,CACC,QAAS,CAAC,EACV,QACA,SAAU,CACN,aAAc,EAAoB,OACtC,EACA,OAAQ,CACJ,SAAU,CAAC,MAAO,KAAkB,CAAC,EAAa,SAClD,YAAa,CAAC,MAAO,KAAkB,EAAa,WACxD,EACA,QAAS,CACL,YAAa,EAAQ,YACrB,WAAY,EAAQ,WACpB,aAAc,EAAQ,aACtB,YAAa,EAAQ,YACrB,UAAW,EAAQ,UACnB,YAAa,CAAC,WAAW,EACjB,EAAM,SAAW,UAAY,EAAM,SAAW,YAAW,EAAQ,WAAW,EAAM,MAAM,CAChG,CACJ,CACJ,CAAC,ECtIK,EAA4B,CAC9B,2CACA,yGACA,oHACA,qCACJ,EAEM,EAAc,EAAa,CAAC,WAAY,CAC1C,UAAW,WACX,MAAO,CACH,SAAU,CACN,KAAM,UACV,EACA,KAAM,CACF,KAAM,CACF,+HACA,yBACJ,CACJ,EACA,SAAU,CACN,KAAM,wCACN,SAAU,CACN,KAAM,CACF,MAAO,kDACP,MAAO,EACX,EACA,KAAM,CACF,IAAK,GACL,MAAO,GACP,OAAQ,GACR,KAAM,EACV,CACJ,EACA,UAAW,CACP,CAAC,KAAM,CAAC,KAAM,QAAS,KAAM,KAAK,EAAG,MAAO,4BAA4B,EACxE,CAAC,KAAM,CAAC,KAAM,QAAS,KAAM,OAAO,EAAG,MAAO,0CAA0C,EACxF,CAAC,KAAM,CAAC,KAAM,QAAS,KAAM,QAAQ,EAAG,MAAO,0BAA0B,EACzE,CAAC,KAAM,CAAC,KAAM,QAAS,KAAM,MAAM,EAAG,MAAO,4CAA4C,CAC7F,EACA,SAAU,CACN,KAAM,QACN,KAAM,OACV,CACJ,EACA,QAAS,CACL,KAAM,wBACV,EACA,MAAO,CACH,KAAM,CACF,6EACA,YACJ,EACA,SAAU,CACN,KAAM,CACF,MAAO,qBACP,MAAO,EACX,EACA,KAAM,CACF,IAAK,GACL,MAAO,GACP,OAAQ,GACR,KAAM,EACV,EACA,KAAM,CACF,GAAI,iBACJ,GAAI,iBACJ,GAAI,iBACJ,GAAI,iBACJ,KAAM,YACV,CACJ,EACA,UAAW,CACP,CAAC,KAAM,CAAC,KAAM,QAAS,KAAM,OAAO,EAAG,MAAO,CAAC,gDAAiD,CAAyB,CAAC,EAC1H,CAAC,KAAM,CAAC,KAAM,QAAS,KAAM,MAAM,EAAG,MAAO,CAAC,gDAAiD,CAAyB,CAAC,EACzH,CAAC,KAAM,CAAC,KAAM,QAAS,KAAM,KAAK,EAAG,MAAO,iCAAiC,EAC7E,CAAC,KAAM,CAAC,KAAM,QAAS,KAAM,QAAQ,EAAG,MAAO,iCAAiC,CACpF,EACA,SAAU,CACN,KAAM,QACN,KAAM,QACN,KAAM,IACV,CACJ,EACA,QAAS,CACL,KAAM,UACV,EACA,OAAQ,CACJ,KAAM,EACV,EACA,MAAO,CACH,KAAM,MACV,EACA,YAAa,CACT,KAAM,mCACV,EACA,KAAM,CACF,KAAM,4BACV,EACA,OAAQ,CACJ,KAAM,kDACV,EACA,MAAO,CACH,KAAM,CACF,kKACA,wDACJ,CACJ,EACA,UAAW,CACP,KAAM,wBACV,CACJ,CACJ,CAAC,CAAC,ECRI,EAAmB,IAAI,IACvB,EAA0B,IAAI,IAE9B,EAAY,GAAsC,EAAO,OAAS,SAClE,EAAmB,GAA4B,IAAU,WAAa,IAAU,OAEhF,EAAkB,GACpB,MAAM,KAAK,CAAgB,EAAE,KAAM,GAAe,EAAW,OAAS,CAAI,GAAK,KAG7E,GAAqB,EAAiB,IAAwB,CAChE,EAAG,aAAa,aAAc,EAAS,CAAI,CAAC,EAC5C,EAAG,aAAa,gBAAiB,EAAO,OAAS,OAAO,CAC5D,EAEM,MAAmD,CACrD,IAAI,EAA+D,KAC/D,EAAW,GACX,EAAoC,KACpC,EAAe,GACf,EAAgB,GAChB,EAAe,GACf,EAAwB,CAAC,EACzB,EAAoC,CAAC,EAEnC,MAA0B,CAC5B,GAAI,CAAC,EAAQ,MAAU,MAAM,iCAAiC,EAC9D,OAAO,CACX,EAEM,MAAoC,CACtC,IAAM,EAAS,EAAK,EAAE,cAAiC,iBAAiB,EACxE,GAAI,EAAE,aAAkB,mBAAoB,MAAU,MAAM,kCAAkC,EAC9F,OAAO,CACX,EAEM,MAAgC,CAClC,IAAM,EAAW,EAAK,EAAE,cAA2B,0BAA0B,EAC7E,GAAI,CAAC,EAAU,MAAU,MAAM,oCAAoC,EACnE,OAAO,CACX,EAEM,MAA+B,CACjC,IAAM,EAAU,EAAK,EAAE,cAA2B,yBAAyB,EAC3E,GAAI,CAAC,EAAS,MAAU,MAAM,oCAAoC,EAClE,OAAO,CACX,EAEM,MAA6B,CAC/B,IAAM,EAAQ,EAAK,EAAE,cAA2B,uBAAuB,EACvE,GAAI,CAAC,EAAO,MAAU,MAAM,iCAAiC,EAC7D,OAAO,CACX,EAEM,MAAoC,EAAK,EAAE,cAA2B,uBAAuB,EAC7F,MAA0C,EAAK,EAAE,cAA2B,6BAA6B,EAEzG,MACF,MAAM,KAAK,EAAK,EAAE,QAAQ,EACrB,KAAM,GAAU,aAAiB,aAAe,EAAM,QAAQ,yBAAyB,CAAC,GAC1F,KAGD,MAAoC,EAAkB,EAAQ,CAAC,EAE/D,MAA2C,EAAO,YAAY,EAAE,MAChE,MAA4B,EAAO,QAAQ,SAAS,GAAK,EAAO,QAAQ,MAAM,EAE9E,GAAuB,EAAsB,IAA4B,CAM3E,GAJA,EAAkB,EADD,EACU,CAAQ,EACnC,EAAQ,aAAa,gBAAiB,CAAQ,EAC9C,EAAQ,aAAa,+BAAgC,CAAQ,EAEzD,GAAY,EAAa,EAAE,SAAU,CACrC,EAAQ,aAAa,gBAAiB,MAAM,EAC5C,EAAQ,aAAa,gBAAiB,EAAE,EACpC,aAAmB,oBAAmB,EAAQ,SAAW,IACxD,EAAQ,QAAQ,CAAkB,IAAG,EAAQ,SAAW,IAC7D,MACJ,CAEA,EAAQ,gBAAgB,eAAe,EACvC,EAAQ,gBAAgB,eAAe,EACnC,aAAmB,oBAAmB,EAAQ,SAAW,IACxD,EAAQ,QAAQ,CAAkB,IAAG,EAAQ,SAAW,EACjE,EAEM,MAA2B,CAC7B,IAAM,EAAQ,EAAe,EACzB,GAAO,EAAoB,EAAiB,CAAK,EAAG,EAAa,EAAE,QAAQ,EAC/E,EAAwB,QAAS,GAAY,EAAQ,KAAK,CAAC,CAC/D,EAEM,MAAgC,CAClC,IAAM,EAAQ,EAAa,EACrB,EAAS,EAAS,EAClB,EAAQ,EAAQ,EAChB,EAAQ,EAAQ,EAChB,EAAc,EAAc,EAElC,EAAO,GAAK,EACZ,EAAO,aAAa,OAAQ,QAAQ,EACpC,EAAO,aAAa,aAAc,MAAM,EACxC,EAAM,KAAO,GAAG,EAAS,QACzB,EAAM,SAAW,GAEb,GACA,EAAM,KAAO,GAAG,EAAS,QACzB,EAAO,aAAa,kBAAmB,EAAM,EAAE,EAC/C,EAAO,gBAAgB,YAAY,EAC/B,EAAM,eAAgB,EAAM,SAAW,GACtC,EAAM,gBAAgB,UAAU,IAErC,EAAO,gBAAgB,iBAAiB,EACpC,EAAM,MAAO,EAAO,aAAa,aAAc,EAAM,KAAK,EACzD,EAAO,gBAAgB,YAAY,GAGxC,IAAa,EAAY,KAAO,GAAG,EAAS,eAC5C,EAAM,gBAAkB,OAAQ,EAAO,gBAAgB,kBAAkB,EACpE,EAAM,cAAe,EAAO,aAAa,mBAAoB,EAAM,aAAa,EAChF,EAAa,EAAO,aAAa,mBAAoB,EAAY,EAAE,EACvE,EAAO,gBAAgB,kBAAkB,CAClD,EAEM,GAAuB,CAAC,WAAW,IAA8B,CAAC,IAAY,CAChF,IAAM,EAAW,EAAW,EACtB,EAAQ,EAAS,CAAQ,EAC3B,GACA,EAAkB,CAAC,GAAI,EAAK,EAAG,OAAQ,EAAa,IAAK,OAAQ,MAAO,CAAQ,CAAC,EAErF,CAAC,EAAS,EAAG,EAAW,EAAG,EAAU,EAAG,EAAQ,CAAC,EAAE,QAAS,GAAY,CACpE,EAAQ,aAAa,aAAc,CAAK,CAC5C,CAAC,EACD,EAAa,CACjB,EAEM,MAA2B,CAC7B,IAAM,EAAY,EAAQ,EAAE,cAA2B,aAAa,EACpE,GAAI,GAAa,GAAY,CAAS,EAAG,CACrC,EAAU,MAAM,CAAC,cAAe,EAAI,CAAC,EACrC,MACJ,CAEA,IAAM,EAAQ,EAAQ,EACtB,GAAI,EAAa,EAAE,gBAAkB,EAAO,CACxC,EAAM,MAAM,CAAC,cAAe,EAAI,CAAC,EACjC,MACJ,CAEA,IAAM,EAAiB,EAAa,EAAE,GACtC,GAAI,EAAgB,CAChB,EAAe,MAAM,CAAC,cAAe,EAAI,CAAC,EAC1C,MACJ,CAEA,EAAQ,EAAE,MAAM,CAAC,cAAe,EAAI,CAAC,CACzC,EAEM,MAA2B,CACzB,CAAC,GAAiB,CAAC,SAAS,SAAS,CAAa,GACtD,EAAc,MAAM,CAAC,cAAe,EAAI,CAAC,CAC7C,EAEM,EAAa,GAA+B,CACzC,EAAO,OAAO,aAAa,GAChC,GAAgB,EAAO,EAAQ,CAAC,CACpC,EAEM,MAA0B,CAC5B,IAAM,EAAS,EAAS,EACpB,OAAO,EAAO,WAAc,YAAc,CAAC,GACvC,EAAO,MAAM,EAAO,gBAAgB,MAAM,EAC9C,EAAO,UAAU,EACjB,EAAe,IACP,EAAO,MACf,EAAO,aAAa,OAAQ,EAAE,EAGlC,AAEI,KADA,GAAmB,EACH,IAEpB,EAAkB,EAClB,EAAoB,EACpB,eAAe,CAAY,CAC/B,EAEM,MAAyB,CAC3B,EAAoB,EACpB,EAAS,CAAC,GAAI,EAAS,EAAG,KAAM,SAAS,CAAC,CAC9C,EAEM,MAA2B,CAC7B,EAAoB,CACxB,EAEM,OAA0B,CAC5B,IAAM,EAAS,EAAS,EACpB,EAAO,MAAM,EAAO,MAAM,EAC9B,EAAe,GACf,AAEI,KADA,EAAqB,EACL,IAEpB,EAAoB,EACpB,EAAa,EACb,EAAS,CAAC,GAAI,EAAQ,KAAM,UAAU,CAAC,CAC3C,EAEM,OAAwB,CAC1B,EAAkB,EAClB,EAAa,CACjB,EAEM,EAAS,EAAoB,CAC/B,OAAQ,EACR,MAAO,GACP,eAAgB,CAAC,WAAW,EAAmB,CAC3C,QACA,QAAS,CACL,cACA,aACA,eACA,eACA,aACA,WAAa,GAAW,CACpB,EAA4B,CAAC,GAAI,EAAS,EAAG,KAAM,YAAa,OAAQ,CAAC,QAAM,CAAC,CAAC,CACrF,CACJ,CACJ,CAAC,CACL,CAAC,EAEK,EAAY,GAA+B,CACzC,EAAa,EAAE,WACnB,EAAgB,EAChB,EAAO,KAAK,MAAM,EACtB,EAEM,GAAU,EAAsB,IAAwB,CAC1D,GAAO,eAAe,EACtB,EAAO,KAAK,CAAC,KAAM,SAAU,QAAM,CAAC,CACxC,EAEM,MAAmC,CACrC,EAAoB,QAAS,GAAY,EAAQ,CAAC,EAClD,EAAsB,CAAC,CAC3B,EAEM,GAAqB,GAA+B,CACtD,IAAM,EAAS,EAAiB,CAAO,EACvC,EAAqB,EACrB,EAAoB,EAAQ,EAAa,EAAE,QAAQ,EACnD,EAAY,CAAC,SAAQ,MAAO,QAAS,YAAe,EAAS,CAAM,EAAG,QAAS,CAAmB,CAAC,EACnG,EAAY,CAAC,SAAQ,MAAO,UAAW,QAAU,GAAU,CACjD,aAAiB,gBACnB,aAAkB,mBAAqB,aAAkB,mBACzD,EAAM,MAAQ,SAAW,EAAM,MAAQ,MAC3C,EAAM,eAAe,EACrB,EAAS,CAAM,GACnB,EAAG,QAAS,CAAmB,CAAC,CACpC,EAEM,OAAgC,CAClC,IAAM,EAAS,EAAS,EAClB,EAAgB,EAAO,cAA2B,yBAAyB,EAC7E,CAAC,GAAiB,EAAc,QAAQ,OAC5C,EAAK,EAAE,aAAa,EAAe,CAAM,EACzC,GAAkB,CAAa,EACnC,EAEM,OAA0B,CAC5B,IAAM,EAAS,EAAS,EACxB,EAAY,CAAC,OAAQ,EAAQ,MAAO,SAAU,QAAU,GAAU,CAC1D,EAAM,SAAW,GACrB,EAAO,SAAU,CAAK,CAC1B,EAAG,SAAO,CAAC,EACX,EAAY,CAAC,OAAQ,EAAQ,MAAO,QAAS,YAAe,CACpD,EAAO,OAAO,SAAS,GAAG,EAAO,KAAK,OAAO,CACrD,EAAG,SAAO,CAAC,EACX,EAAY,CAAC,OAAQ,EAAQ,MAAO,UAAW,QAAU,GAAU,CAC3D,aAAiB,eAAe,EAAU,CAAK,CACvD,EAAG,SAAO,CAAC,EACX,EAAY,CAAC,OAAQ,EAAQ,MAAO,QAAS,QAAU,GAAU,CAC7D,IAAM,EAAS,EAAM,OACjB,EAAE,aAAkB,UAAY,CAAC,EAAO,QAAQ,uBAAuB,IAC3E,EAAM,eAAe,EACrB,EAAO,KAAK,OAAO,EACvB,EAAG,SAAO,CAAC,EACX,EAAY,CAAC,OAAQ,SAAU,MAAO,iBAAkB,QAAU,GAAU,CACxE,IAAM,EAAU,EAA6C,OACzD,CAAC,GAAQ,MAAQ,EAAO,OAAS,EAAa,EAAE,MACpD,EAAO,KAAK,OAAO,CACvB,EAAG,SAAO,CAAC,EACX,EAAQ,KAAK,GAAoB,CAC7B,cAAiB,EAAO,OAAO,aAAa,EAC5C,UAAa,CAAC,EAAQ,EAAG,EAAe,EAAe,CAAC,EACxD,UAAY,GAAU,EAAO,UAAW,CAAK,CACjD,CAAC,CAAC,CACN,EAEI,EACE,EAA8B,CAChC,IAAI,MAAO,CACP,OAAO,EAAa,EAAE,IAC1B,EACA,IAAI,QAAS,CACT,OAAO,EAAO,QAAQ,MAAM,CAChC,EACA,IAAI,UAAW,CACX,OAAO,CACX,EACA,WACA,MAAM,EAAe,CACjB,GAAO,eAAe,EACtB,EAAO,KAAK,OAAO,CACvB,EACA,qBACJ,EAuHA,MArHA,GAAY,CACR,GAAG,EACH,IAAI,MAAe,CACf,OAAO,KAAK,SAAS,SAAS,MAAM,MAAQ,EAChD,EACA,IAAI,QAAkB,CAClB,OAAO,KAAK,SAAS,SAAS,QAAU,MAC5C,EACA,IAAI,WAAqB,CACrB,OAAO,KAAK,SAAS,SAAS,KAAK,SAAS,SAAS,GAAK,EAC9D,EACA,IAAI,UAAmB,CACnB,OAAO,CACX,EACA,MAAa,CACT,EAAS,KAAK,IACd,EAAO,QAAQ,KAAK,IAAK,KAAK,QAAQ,EACtC,IAAM,EAAQ,EAAa,EAC3B,EAAW,EAAS,EAAE,IAAM,KAAK,IAAI,QAAQ,EAAM,KAAO,IAAI,EAAM,OAAS,IAAI,EACjF,EAAuB,EAAS,EAAG,MAAM,EACzC,EAAkB,EAClB,EAAiB,IAAI,CAAU,EAC/B,EAAe,GACf,GAAkB,EAClB,GAAY,EACZ,EAAoB,CAAC,SAAU,EAAK,CAAC,EACjC,EAAM,MAAM,mBAAqB,EAAO,KAAK,MAAM,CAAC,CAC5D,EACA,SAAgB,CACZ,EAAQ,QAAS,GAAY,EAAQ,CAAC,EACtC,EAAU,CAAC,EACX,EAAqB,EACrB,AAEI,KADA,EAAiB,OAAO,CAAU,EACnB,IAEnB,EAAO,WAAW,EAClB,IAAM,EAAS,GAAQ,cAAiC,iBAAiB,EACrE,GAAQ,MAAM,EAAO,MAAM,EAC/B,AAEI,KADA,EAAqB,EACL,IAEpB,EAAwB,QAAS,GAAY,EAAQ,KAAK,CAAC,EAC3D,EAAS,IACb,EACA,IAAI,MAAsB,CACtB,OAAO,EAAc,CAAC,OAAQ,CAC1B,EAAa,CAAC,KAAM,EAAY,MAAM,SAAU,MAAO,CAAC,EAAG,UAAW,EAAE,CAAC,EACzE,CAAC,yBAA0B,EAAE,CACjC,CAAC,CAAC,CACN,EACA,IAAI,QAAwB,CACxB,IAAM,EAAW,KAAK,SAChB,EAAQ,EAAS,SAAS,OAAS,EAAa,EACtD,OAAO,EAAc,CAAC,OAAQ,CAC1B,EAAa,CAAC,KAAM,EAAY,MAAM,KAAM,QAAO,UAAW,EAAM,KAAK,CAAC,EAC1E,CACI,GAAI,EACJ,KAAM,SACN,aAAc,OACd,kBAAqB,EAAS,EAAgB,EAAS,SAAS,KAAK,CAAC,EACtE,iBAAoB,EAAS,SAAS,MAAM,KAC5C,iBAAoB,EAAS,SAAS,MAAM,KAC5C,iBAAoB,EAAS,SAAS,MAAM,IAChD,CACJ,CAAC,CAAC,CACN,EACA,IAAI,UAA0B,CAC1B,IAAM,EAAW,KAAK,SAChB,EAAQ,EAAS,SAAS,OAAS,EAAa,EACtD,OAAO,EAAc,CAAC,OAAQ,CAC1B,EAAa,CAAC,KAAM,EAAY,MAAM,SAAU,OAAK,CAAC,EACtD,CACI,kBAAqB,EAAS,EAAgB,EAAS,SAAS,KAAK,CAAC,EACtE,iBAAoB,EAAS,SAAS,MAAM,KAC5C,iBAAoB,EAAS,SAAS,MAAM,IAChD,CACJ,CAAC,CAAC,CACN,EACA,IAAI,SAAyB,CACzB,IAAM,EAAW,KAAK,SAChB,EAAQ,EAAS,SAAS,OAAS,EAAa,EACtD,OAAO,EAAc,CAAC,OAAQ,CAC1B,EAAa,CAAC,KAAM,EAAY,MAAM,QAAS,QAAO,UAAW,EAAM,YAAY,CAAC,EACpF,CAAC,kBAAqB,EAAS,EAAgB,EAAS,SAAS,KAAK,CAAC,CAAC,CAC5E,CAAC,CAAC,CACN,EACA,IAAI,OAAuB,CACvB,IAAM,EAAW,KAAK,SAChB,EAAQ,EAAS,SAAS,OAAS,EAAa,EACtD,OAAO,EAAc,CAAC,OAAQ,CAC1B,EAAa,CAAC,KAAM,EAAY,MAAM,MAAO,QAAO,UAAW,EAAM,UAAU,CAAC,EAChF,CACI,SAAU,GACV,kBAAqB,EAAS,EAAgB,EAAS,SAAS,KAAK,CAAC,EACtE,iBAAoB,EAAS,SAAS,MAAM,KAC5C,iBAAoB,EAAS,SAAS,MAAM,KAC5C,iBAAoB,EAAS,SAAS,MAAM,KAC5C,uBAA0B,EAAS,SAAS,MAAM,QAClD,yBAA4B,EAAS,SAAS,MAAM,SACxD,CACJ,CAAC,CAAC,CACN,EACA,KAAK,EAAqB,CAEtB,GADA,GAAO,eAAe,EAClB,EAAa,EAAE,SAAU,OAC7B,IAAM,EAAQ,EAAe,EACzB,IAAO,EAAgB,EAAiB,CAAK,GACjD,EAAO,KAAK,MAAM,CACtB,EACA,MAAM,EAAqB,CACvB,GAAO,eAAe,EACtB,EAAO,KAAK,OAAO,CACvB,CACJ,EAEO,CACX,EAEM,MAAiE,CACnE,IAAI,EAAkC,KAClC,EAA6B,KAC7B,EAAwB,CAAC,EACzB,EAAe,GAEb,MAAwC,CAC1C,GAAI,CAAC,EAAO,MAAU,MAAM,yCAAyC,EACrE,OAAO,CACX,EAEM,MAA8B,CAChC,GAAI,CAAC,EAAQ,MAAU,MAAM,yCAAyC,EACtE,OAAO,CACX,EAEM,MAAsC,CACxC,IAAM,EAAO,EAAa,EAAE,KAC5B,OAAO,EAAO,EAAe,CAAI,EAAI,IACzC,EAEM,MAAmB,CACrB,IAAM,EAAe,EAAa,EAC5B,EAAU,EAAS,EACnB,EAAkB,EAAM,EAC9B,GAAI,EAAiB,CACjB,EAAgB,oBAAoB,EAAS,EAAa,QAAQ,EAClE,MACJ,CAEA,EAAkB,EAAS,EAAK,EAC5B,EAAa,UACb,EAAQ,aAAa,gBAAiB,MAAM,EAC5C,EAAQ,aAAa,gBAAiB,EAAE,IAExC,EAAQ,gBAAgB,eAAe,EACvC,EAAQ,gBAAgB,eAAe,EAE/C,EAEM,EAAqC,CACvC,IAAI,MAAO,CACP,OAAO,EAAa,EAAE,IAC1B,EACA,IAAI,QAAS,CACT,OAAO,EAAS,CACpB,EACA,MACJ,EAEA,MAAO,CACH,MAAa,CACT,EAAQ,EAAY,CAChB,GAAI,KAAK,IACT,OAAQ,EACR,aAAgB,CACR,GAAO,MAAM,EAAK,CAC1B,CACJ,CAAC,EACD,EAAS,EAAiB,KAAK,GAAG,EAC7B,EAAM,OACX,EAAwB,IAAI,CAAU,EACtC,EAAe,GACf,EAAK,EAEL,EAAY,CAAC,SAAQ,MAAO,QAAS,QAAU,GAAU,KAAK,KAAK,CAAK,EAAG,SAAO,CAAC,EACnF,EAAY,CAAC,SAAQ,MAAO,UAAW,QAAU,GAAU,CACjD,aAAiB,gBACnB,aAAkB,mBAAqB,aAAkB,mBACzD,EAAM,MAAQ,SAAW,EAAM,MAAQ,KAC3C,KAAK,KAAK,CAAK,EACnB,EAAG,SAAO,CAAC,EACf,EACA,SAAgB,CACZ,GAAO,WAAW,EACd,GAAc,EAAwB,OAAO,CAAU,EAC3D,EAAQ,QAAS,GAAY,EAAQ,CAAC,EACtC,EAAU,CAAC,EACX,EAAe,GACf,EAAQ,KACR,EAAS,IACb,EACA,IAAI,MAAsB,CACtB,IAAM,EAAe,EAAa,EAClC,OAAO,EAAc,CAAC,OAAQ,CAC1B,EAAa,CAAC,KAAM,EAAY,MAAM,QAAS,MAAO,CAAC,EAAG,UAAW,EAAa,KAAK,CAAC,EACxF,CACI,wBAAyB,GACzB,iBAAoB,GAAO,MAAQ,IAAA,GACnC,qBAAyB,GAAO,SAAW,GAAK,IAAA,EACpD,CACJ,CAAC,CAAC,CACN,EACA,KAAK,EAAqB,CACtB,GAAO,eAAe,EAClB,GAAa,EAAE,UACnB,EAAM,GAAG,SAAS,EAAS,CAAC,CAChC,CACJ,CACJ,EAEM,EAAiB,GAAwC,CAC3D,EAAiB,UAAW,CAAO,EAAE,CAAc,EACnD,EAAiB,iBAAkB,CAAc,EAAE,CAAc,CACrE,ECpoBM,EAAa,IAAI,QAEjB,EAAiB,GAAqC,CACpD,EAAW,IAAI,CAAc,IACjC,EAAW,IAAI,CAAc,EAC7B,EAAyB,CAAc,EACvC,EAAkB,CAAc,EACpC"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{d as e}from"./ui-egQWc4ws.js";import{t}from"./capability-motion-C_8mc71v.js";import{c as n,f as r,l as i,n as a,s as o,u as s}from"./codecs-Cb1ns_47.js";import{n as c,r as l,s as u,t as d}from"./dom-qAeVl7dc.js";import{i as f,t as ee}from"./alpine-machine-BS13dbK4.js";import{t as p}from"./alpine-data-CytyCyfk.js";import{t as m}from"./anchored-popover-BXEMsLrA.js";import{n as h,t as g}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 _,t as v}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 y,t as b}from"./scroll-lock-DOw7dmi1.js";import{D as x,S,T as C,a as w,b as T,d as ue,f as E,g as D,i as O,m as de,n as k,o as A,p as fe,r as j,s as pe,t as me,u as M,w as N,x as P}from"./common-BOd_thC-.js";var F=e=>e.trim().toLowerCase(),he=e=>{if(e)try{return JSON.parse(e)}catch{return}},ge=(e,t)=>{if(!(!t||e==null))return t.split(`.`).reduce((e,t)=>{if(!(typeof e!=`object`||!e))return e[t]},e)},_e=g({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:w,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`}}}}),I=[`soft`,`surface`,`outline`,`solid`],L=[`neutral`,`accent`,`success`,`warning`,`danger`],ve=A,R=[`span`,`button`],z=k,B=D,V=j;i(I,`soft`),i(L,`neutral`),i(ve,`sm`),i(V,`sm`),i(R,`span`),i(z,`button`),i(B,`mini`),i(z,`button`),r.default(`close`),i(B,`mini`),i(ve,`sm`),r.default(`Remove`);var ye=[`listbox`,`combobox`,`pillbox`,`native`],be=pe,xe=A,Se=j,Ce=C,H=me,we=D,Te=[`stay`,`close`],Ee=[`check`,`checkbox`,`none`],De=x,Oe=M,U={name:r,optionsId:r,value:r,values:o.array([]),placeholder:r,mode:i(ye,`listbox`),multiple:a,searchable:a,virtualized:a,optionsFetchUrl:r,optionsTotalItems:n.min(0).default(0),optionItemSize:n.min(2**-52).default(36),optionBufferSize:n.min(1).default(50),optionOverscan:n.min(0).default(0),optionSearchParam:r.default(`q`),optionSearchDebounce:n.min(0).default(150),selectedLabelMap:o.object({}),creatable:a,filter:a.default(!0),clearable:a,clear:i(Te,`stay`),suffix:r.default(`selected`),mark:i(Ee,`check`),open:a,disabled:a,readonly:a,required:a,invalid:a,autoHighlight:a.default(!0),loop:a.default(!0),path:r,size:i(xe,`lg`),variant:i(be,`outline`),radius:i(Se,`md`),surface:i(De,`+2`),elevation:i(Oe,`3`),side:i(Ce,`bottom`),align:i(H,`start`),offset:n.clamp(-100,100).default(0),gap:n.clamp(0,50).default(4),empty:r.default(`No results found.`),icon:r,iconTrailing:r.default(`chevron__down`),iconVariant:i(we,`outline`),buttonClass:r,inputClass:r,listboxClass:r,optionClass:r,chipVariant:i(I,`soft`),chipColor:i(L,`neutral`),chipClass:r,class:r};i(we,`outline`),n.clamp(0,100).default(0);var ke=[f({name:`opening`,state:`disclosure.opening`,project:()=>({}),onDone:`OPENING_DONE`,onError:`OPENING_ERROR`,sends:{close:()=>({type:`CLOSE`})}}),f({name:`closing`,state:`disclosure.closing`,project:()=>({}),onDone:`CLOSING_DONE`,onError:`CLOSING_ERROR`,sends:{open:()=>({type:`OPEN`})}}),f({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`})}}),f({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`})}})],W=e=>_(e)?.props??null,Ae=e=>e.disabled||e.readonly,je=({event:e})=>{let t=W(e);return!t||Ae(t)||!t.open?!1:v(e,`open`,`disabled`,`readonly`)},G=({event:e})=>{let t=W(e);return t?v(e,`open`)&&!t.open||v(e,`disabled`)&&t.disabled||v(e,`readonly`)&&t.readonly:!1},Me=({event:e})=>{let t=W(e);return!!(t&&(v(e,`disabled`)&&t.disabled||v(e,`readonly`)&&t.readonly||v(e,`searchable`)&&!t.searchable))},Ne=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`)},Pe=({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:je,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:G,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:G,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:je,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:Me,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:Me,reduce:`replaceProps`,effects:`syncProps`},{reduce:`replaceProps`,effects:`syncProps`}]}}}}}},{context:t,props:e,reducers:{replaceProps:({event:e})=>{let t=W(e);return t?{props:t}:void 0},replaceSelection:({context:e,event:t})=>{let n=Ne(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})=>!Ae(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}}),Fe=640,Ie=256,Le=520,K=.72,q=12,J=16,Y=720,Re=720,X=({viewportWidth:e,viewportHeight:t,layoutViewportHeight:n,referenceTop:r,referenceBottom:i,touch:a})=>{if(e<=Fe)return`fullscreen`;let o=t<Le||t<n*K;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)<Ie?`dialog`:`anchored`},ze=()=>{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}},Be=()=>window.matchMedia?.(`(any-pointer: coarse)`).matches===!0||navigator.maxTouchPoints>0,Ve=e=>{let t=m(e),n=!1,r=`anchored`,i=!1,a=null,o=()=>e.floating(),s=e=>{e!==i&&(i=e,e?b():y())},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=ze(),r=t===`dialog`?J:q,i=t===`dialog`?Y:1/0,a=t===`dialog`?Re: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=ze(),n=e.reference().getBoundingClientRect();return X({viewportWidth:t.width,viewportHeight:t.height,layoutViewportHeight:window.innerHeight,referenceTop:n.top-t.offsetTop,referenceBottom:n.bottom-t.offsetTop,touch:Be()})},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)},f=()=>{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)}},ee=()=>{if(!n){n=!0;try{o().showPopover()}catch{}d(),a=f()}},p=()=>{if(n){n=!1,a?.(),a=null,t.unmount(),s(!1);try{o().hidePopover()}catch{}}};return{opened:()=>n,open:ee,close:p,sync:d,destroy:p,presentation:()=>r}},Z=g({definition:{component:`ui.select`,parts:{root:{base:`relative inline-grid w-full min-w-0`},control:{base:de,variants:{size:O,radius:w,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:ue},popover:{base:[N,`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`},virtualOptions:{base:`grid auto-rows-min content-start gap-1 px-popover-padding`},create:{base:`shrink-0 p-popover-padding`},option:{base:[S,`[&: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:T,variants:{position:{leading:``,trailing:`ml-auto`}},defaults:{position:`leading`}},optionIndicator:{base:P},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:[fe,`appearance-none pe-10`],variants:{size:O,radius:w},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`}}}}),Q=`[data-ui-select-option], [data-ui-select-option-create]`,He=`template[data-ui-select-option-selected-template]`,$=e=>{if(!(e instanceof Element)){e.childNodes.forEach($);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($),e.setAttribute(`x-ignore`,`true`)},Ue=e=>{let t=document.createDocumentFragment();return Array.from(e).forEach(e=>{if(e instanceof HTMLTemplateElement&&e.matches(He))return;let n=e.cloneNode(!0);$(n),t.append(n)}),t},We=(e,t)=>e.length===t.length&&e.every((e,n)=>e===t[n]),Ge=()=>{let t=null,n=!1,r=``,i=``,a=``,o=``,f=null,p=null,m=[],g=``,ne=``,_=!1,v=!1,y=null,b=``,x=0,S=0,C=0,w=new Map,T=()=>{if(!t)throw Error(`Select has not been initialized.`);return t},ue=()=>{let e=T().querySelector(`[data-ui-select-control]`);if(!e)throw Error(`Select requires a control element.`);return e},E=()=>{let e=T().querySelector(`[data-ui-select-trigger], [data-ui-select-button], [data-ui-select-input]`);if(!e)throw Error(`Select requires a trigger element.`);return e},D=()=>T().querySelector(`[data-ui-select-input]`),O=()=>T().querySelector(`[data-ui-select-search-input]`),de=()=>{let e=T().querySelector(`[data-ui-select-sheet-title]`);if(!e)throw Error(`Select requires an adaptive picker title.`);return e},k=()=>{let e=T().querySelector(`[data-ui-select-popover]`);if(!e)throw Error(`Select requires a popover element.`);return e},A=()=>{let e=T().querySelector(`[data-ui-select-listbox]`);if(!e)throw Error(`Select requires a listbox element.`);return e},fe=()=>{let e=T().querySelector(`[data-ui-select-options]`);if(!e)throw Error(`Select requires an options element.`);return e},j=()=>T().querySelector(`[data-ui-select-virtualizer]`),pe=()=>j()?._x_dataStack?.find(e=>typeof e.setUrl==`function`&&typeof e.setTotalItems==`function`)??null,me=()=>T().querySelector(`[data-ui-select-chips]`),M=()=>T().querySelector(`[data-ui-select-hidden-inputs]`),N=()=>K.getCommittedSnapshot().props,P=()=>K.getCommittedSnapshot().context,I=()=>K.hasTag(`expanded`),L=()=>K.hasTag(`visible`),ve=(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=ge(he(e.dataset.item),t.path);return r==null?(e.querySelector(`[data-ui-select-option-label]`)?.textContent??e.textContent??``).trim():String(r)},R=({props:e,query:t,selectedValues:n})=>{let r=F(t),i=Array.from(T().querySelectorAll(Q)).map((i,o)=>{let s=ve(i,e),l=i.dataset.value||s,u=i.hasAttribute(`data-ui-select-option-create`),d=r!==``&&F(s)===r,f=!e.filter||r===``||F(`${s} ${i.dataset.suffix??``}`).includes(r),ee=Number(i.dataset.minLength??`0`);return{el:i,id:i.id||`${a}-option-${o}`,value:u?i.dataset.value||t:l,label:s,selectedLabel:i.dataset.selectedLabel||s,disabled:c({value:i.dataset.disabled}),selected:n.includes(l),visible:u?t.length>=ee&&!d:f,create:u}});return i.forEach(e=>{e.create||w.set(e.value,e.selectedLabel)}),i.some(e=>!e.create&&F(e.label)===r)?i.map(e=>e.create?{...e,visible:!1}:e):i},z=(e=P().search.query)=>R({props:N(),query:e,selectedValues:P().selection.values}),B=(e=P().search.query)=>z(e).filter(e=>e.visible&&!e.disabled&&!e.create),V=(e,t=N())=>{let n=Array.from(new Set(e.filter(Boolean))),r=t.multiple?n:n.slice(0,1),i=R({props:t,query:``,selectedValues:r});return{values:r,labels:r.map(e=>i.find(t=>t.value===e)?.selectedLabel??w.get(e)??(typeof t.selectedLabelMap[e]==`string`?t.selectedLabelMap[e]:void 0)??e)}},ye=e=>e.multiple?Array.from(new Set([...e.values,...e.value?[e.value]:[]])):e.value?[e.value]:e.values.slice(0,1),be=e=>{let t=ye(e),n=R({props:e,query:``,selectedValues:[]}).filter(e=>c({value:e.el.dataset.selected})).map(e=>e.value);return{selection:V(t.length>0?t:n,e),search:{query:``,optionsId:``},navigation:{activeValue:``},creation:{value:``}}},xe=()=>{let{selection:e}=P(),t=N();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]??``},Se=e=>{let t=e.el.querySelector(He);if(t)return Ue(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 Ue(n.childNodes);let r=document.createDocumentFragment();return r.append(document.createTextNode(e.selectedLabel)),r},Ce=()=>{let e=N();if(n){let t=P().selection.values;(I()||!e.open||!e.disabled&&!e.readonly)&&s({el:T(),schema:U,key:`open`,value:I()}),s({el:T(),schema:U,key:`value`,value:e.multiple?``:t[0]??``}),s({el:T(),schema:U,key:`values`,value:e.multiple?[...t]:[]})}T().dataset.state=I()?`open`:`closed`,T().dataset.mark=e.mark,ae({el:T(),state:{disabled:e.disabled,required:e.required,invalid:e.invalid},value:`true`})},H=()=>N().mode===`pillbox`&&N().multiple,we=()=>{let e=N(),t=H()&&P().selection.values.length===0,n=ue();n.className=h({part:Z.parts.control,props:{...e,mode:H()?`pillbox`:e.mode===`combobox`?`combobox`:`listbox`,empty:t}}),n.dataset.state=I()?`open`:`closed`,n.dataset.mode=H()?`pillbox`:e.mode,u({el:n,attr:`data-ui-select-pillbox-control`,present:H(),value:``}),u({el:n,attr:`data-empty`,present:t,value:`true`}),ae({el:n,state:{disabled:e.disabled,invalid:e.invalid},value:`true`})},Te=()=>{let e=N(),t=E();t.id||=r,t.dataset.state=I()?`open`:`closed`,t.setAttribute(`aria-haspopup`,`listbox`),t.setAttribute(`aria-expanded`,I()?`true`:`false`),t.setAttribute(`aria-controls`,a),u({el:t,attr:`aria-invalid`,present:e.invalid,value:`true`}),t instanceof HTMLButtonElement&&(t.disabled=e.disabled);let n=xe(),i=T().querySelector(`[data-ui-select-button-value]`),o=T().querySelector(`[data-ui-select-button-placeholder]`);if(i){i.replaceChildren();let e=P().selection.values.length===1&&n?z(``).find(e=>e.value===P().selection.values[0]):void 0;e?i.append(Se(e)):i.textContent=n,i.hidden=n===``}o&&(o.hidden=H()?P().selection.values.length>0:n!==``),T().querySelectorAll(`[data-ui-select-clear], [data-ui-select-button-clear]`).forEach(t=>{t.hidden=e.disabled||!e.clearable||P().selection.values.length===0,t instanceof HTMLButtonElement&&(t.disabled=e.disabled)}),T().querySelectorAll(`[data-ui-select-search-clear]`).forEach(t=>{t.hidden=e.disabled||!P().search.query,t instanceof HTMLButtonElement&&(t.disabled=e.disabled)})},Ee=()=>{let e=N(),t=P(),n=D();n&&(n.id||=i,n.className=h({part:Z.parts.input,className:e.inputClass}),n.value=H()||I()&&_?t.search.query:xe(),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`,I()?`true`:`false`),n.setAttribute(`aria-controls`,a),oe({input:n,state:{disabled:e.disabled,readonly:e.readonly,required:e.required,nativeRequired:!1,invalid:e.invalid,ariaRequired:e.required}}));let r=O();r&&(r.value=t.search.query,r.disabled=e.disabled,r.readOnly=e.readonly);let o=z().find(e=>e.value===t.navigation.activeValue);[E(),n,r,A()].forEach(e=>{o?.id?e?.setAttribute(`aria-activedescendant`,o.id):e?.removeAttribute(`aria-activedescendant`)})},De=()=>{let e=N(),t=k(),n=A();t.id=`${a}-popover`,t.className=h({part:Z.parts.popover,props:e,className:e.listboxClass}),t.dataset.uiSurface=e.surface,t.dataset.uiElevation=e.elevation,t.setAttribute(`popover`,`manual`),t.dataset.state=I()?`open`:`closed`,t.hidden=!L(),n.id=a,n.setAttribute(`role`,`listbox`),n.tabIndex=-1,n.setAttribute(`aria-labelledby`,E().id),u({el:n,attr:`aria-multiselectable`,present:e.multiple,value:`true`})},Oe=()=>{let e=N(),t=P();T().querySelectorAll(`[data-ui-select-create-query]`).forEach(e=>{e.textContent=t.search.query});let n=z();n.forEach(e=>{e.el.id=e.id,e.el.hidden=!e.visible,e.el.setAttribute(`role`,`option`),e.el.setAttribute(`aria-selected`,e.selected?`true`:`false`),e.create||(e.el.dataset.value=e.value),e.create||(e.el.dataset.label=e.label),u({el:e.el,attr:`data-selected`,present:e.selected,value:`true`}),u({el:e.el,attr:`data-highlighted`,present:e.value===t.navigation.activeValue,value:`true`}),u({el:e.el,attr:`data-disabled`,present:e.disabled,value:`true`}),u({el:e.el,attr:`aria-disabled`,present:e.disabled,value:`true`}),e.el.querySelectorAll(`[data-ui-select-option-indicator]`).forEach(t=>{u({el:t,attr:`data-selected`,present:e.selected,value:`true`})})});let r=T().querySelector(`[data-ui-select-option-empty]`);r&&(r.hidden=e.virtualized&&e.optionsFetchUrl?C!==0:n.some(e=>e.visible&&!e.create))},W=()=>JSON.stringify(Array.from(T().querySelectorAll(Q)).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??``}))),Ae=()=>{let e=me();if(!e)return;let t=N(),n=P(),r=z(``),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=h({part:_e.parts.root,props:{variant:t.chipVariant,color:t.chipColor,size:`sm`,radius:`sm`},className:h({part:Z.parts.chip,props:{},className:t.chipClass})}),s=h({part:Z.parts.chipLabel}),c=h({part:_e.parts.close,props:{size:`sm`},className:h({part:Z.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=T().querySelector(`[data-ui-select-chip-remove-icon]`);l?a.append(l.content.cloneNode(!0)):a.textContent=`x`,r.append(a),e.append(r)})},je=()=>{let e=M();if(!e)return;let t=N();g=ie({container:e,state:{name:t.name,required:t.required,values:t.disabled?[]:[...P().selection.values],form:T().dataset.form??``,marker:`data-ui-select-hidden-input`},currentKey:g})},G=()=>{Ce(),we(),Te(),Ee(),De(),Oe(),Ae(),je()},Me=()=>{if(!t||!K.hasTag(`interactive`))return;let e=N();f?.presentation()===`anchored`?e.mode===`combobox`?D()?.focus({preventScroll:!0}):(e.searchable||H())&&O()?O()?.focus({preventScroll:!0}):E().focus({preventScroll:!0}):(O()??T().querySelector(`[data-ui-select-sheet-close]`)??A()).focus({preventScroll:!0})},Ne=()=>{let e=P(),t=V(e.selection.values);We(t.labels,e.selection.labels)||K.send({type:`RECONCILE_SELECTION`,...t});let n=B();e.navigation.activeValue&&!n.some(t=>t.value===e.navigation.activeValue)&&K.send({type:`ACTIVE`,value:N().autoHighlight?n[0]?.value??``:``}),G()},Fe=e=>{let t=(Array.isArray(e.changes)?e.changes:[]).flatMap(e=>e&&typeof e==`object`&&`key`in e?[String(e.key)]:[]);if(t.some(e=>e===`value`||e===`values`||e===`multiple`||e===`selectedLabelMap`)){let e=V(ye(N()));K.send({type:`RECONCILE_SELECTION`,...e})}t.includes(`optionsTotalItems`)&&(C=N().optionsTotalItems,pe()?.setTotalItems(C)),G()},Ie=e=>{let t=N(),n=new URL(t.optionsFetchUrl,document.baseURI);return e?n.searchParams.set(t.optionSearchParam,e):n.searchParams.delete(t.optionSearchParam),/^[a-z][a-z\d+.-]*:/i.test(t.optionsFetchUrl)||t.optionsFetchUrl.startsWith(`//`)?n.href:`${n.pathname}${n.search}${n.hash}`},Le=()=>{window.clearTimeout(S);let e=N();!e.virtualized||!e.optionsFetchUrl||!e.searchable&&e.mode!==`combobox`||(S=window.setTimeout(()=>{let t=pe();t&&(t.setUrl(Ie(P().search.query),{reset:!0}),C===0&&e.optionsTotalItems>0&&(C=e.optionsTotalItems,t.setTotalItems(C)))},e.optionSearchDebounce))},K=ee({schema:U,hooks:ke,createMachine:({props:t})=>Pe({props:t,context:be(t),effects:{prepareOpen:()=>{v=!1,f?.open(),G(),queueMicrotask(Me)},finishOpen:()=>{G(),l({el:T(),name:`ui:open`})},prepareClose:({event:e})=>{_=!1,v=e.restoreFocus===!0||e.type===`SELECT`||e.type===`CREATE`,v&&E().focus({preventScroll:!0}),G()},finishClose:()=>{f?.close(),G(),v&&E().focus({preventScroll:!0}),v=!1,l({el:T(),name:`ui:close`})},commitSelection:({event:t})=>{G(),e(T(),`data-value`,`data-values`),se({container:M(),fallback:T(),marker:`data-ui-select-hidden-input`});let{selection:n}=P();t.type===`CLEAR`&&l({el:T(),name:`ui:clear`}),l({el:T(),name:`ui:change`,detail:{value:n.values[0]??``,values:[...n.values],label:n.labels[0]??``,labels:[...n.labels],option:y}}),y=null},commitSearch:()=>{G(),l({el:T(),name:`ui:search`,detail:{search:P().search.query}}),Le()},prepareCreate:({event:e})=>{G(),l({el:T(),name:`ui:create`,detail:{search:P().search.query,value:P().creation.value,modal:typeof e.modal==`string`?e.modal:``}})},syncProps:({event:e})=>Fe(e),syncOptions:Ne,syncActive:G}})}),q=(e,t)=>K.send({type:e,...t}),J=(e,t)=>{t?.preventDefault();let n=N();if(!(n.disabled||n.readonly||e.disabled)){if(e.create){K.send({type:`CREATE`,value:e.value||P().search.query,modal:e.el.dataset.modal??``});return}y=e.el,_=!1,q(`SELECT`,V(n.multiple?P().selection.values.includes(e.value)?P().selection.values.filter(t=>t!==e.value):[...P().selection.values,e.value]:[e.value]))}},Y=e=>{if(e===P().navigation.activeValue)return;K.send({type:`ACTIVE`,value:e});let t=z().find(t=>t.value===e);l({el:T(),name:`ui:highlight`,detail:{value:e,option:t?.el??null}})},Re=e=>{let t=B();if(t.length===0)return;let n=t.findIndex(e=>e.value===P().navigation.activeValue),r=n<0?e>0?0:t.length-1:n+e;r>=t.length&&(r=N().loop?0:t.length-1),r<0&&(r=N().loop?t.length-1:0),Y(t[r]?.value??``)},X=e=>{let t=N();if(t.disabled||t.readonly)return;_=!0;let n=t.autoHighlight?B(e)[0]?.value??``:``;K.send({type:`SEARCH`,query:e,optionsId:o,activeValue:n})},ze=e=>{if(e.key===`Tab`&&f?.presentation()!==`anchored`){ce(e,k());return}let t=e.target instanceof HTMLInputElement;if(e.key===`ArrowDown`||e.key===`ArrowUp`){e.preventDefault(),I()||K.send({type:`OPEN`}),Re(e.key===`ArrowDown`?1:-1);return}if(!t&&I()&&(e.key===`Home`||e.key===`End`)){e.preventDefault();let t=B();Y(e.key===`Home`?t[0]?.value??``:t.at(-1)?.value??``);return}if(I()&&(e.key===`Enter`||!t&&e.key===` `)){let t=z().find(e=>e.value===P().navigation.activeValue);t&&J(t,e);return}if((e.key===`Backspace`||e.key===`Delete`)&&H()&&!P().search.query){let t=D();if(t&&(t.selectionStart!==0||t.selectionEnd!==0))return;let n=[...P().selection.values].reverse().find(e=>!z(``).find(t=>t.value===e)?.disabled);n&&(e.preventDefault(),$.deselect(n,e));return}if(e.key===`Escape`&&L()){e.preventDefault(),e.stopPropagation(),K.send({type:`CLOSE`,restoreFocus:!0});return}if(!t&&!N().searchable&&e.key.length===1&&!e.metaKey&&!e.ctrlKey&&!e.altKey){b+=e.key.toLowerCase(),window.clearTimeout(x),x=window.setTimeout(()=>{b=``},500);let t=B().find(e=>F(e.label).startsWith(b));t&&Y(t.value)}},Be=()=>{let e=T(),t=(e,t)=>t.closest(`[data-ui-select-trigger], [data-ui-select-icon="trailing"], [data-ui-select-control]`)?(e.preventDefault(),E().focus({preventScroll:!0}),E()instanceof HTMLInputElement?I()||K.send({type:`OPEN`}):$.toggle(e),!0):!1;d({target:e,event:`click`,cleanup:m,handler:e=>{let n=e.target;if(!(n instanceof Element))return;if(n.closest(`[data-ui-select-sheet-close]`)){$.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]`)){$.clear(e);return}let r=n.closest(`[data-ui-select-chip-remove]`);if(r){$.deselect(r.dataset.value??``,e);return}let i=n.closest(Q);if(i){let t=z().find(e=>e.el===i);t&&J(t,e);return}(!(e instanceof MouseEvent)||e.detail===0)&&t(e,n)}}),d({target:e,event:`input`,cleanup:m,handler:e=>{let t=e.target;t instanceof HTMLInputElement&&t.matches(`[data-ui-select-input], [data-ui-select-search-input]`)&&X(t.value)}}),d({target:e,event:`keydown`,cleanup:m,handler:e=>{e instanceof KeyboardEvent&&ze(e)}}),d({target:e,event:`pointerdown`,cleanup:m,handler:e=>{let n=e.target;if(n instanceof Element){if(n.closest(Q)||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)}}}),d({target:e,event:`pointerover`,cleanup:m,handler:e=>{let t=e.target;if(!(t instanceof Element))return;let n=t.closest(Q),r=n?z().find(e=>e.el===n):void 0;r&&r.visible&&!r.disabled&&Y(r.value)}}),d({target:e,event:`focusout`,cleanup:m,handler:t=>{if(!(t instanceof FocusEvent))return;let n=t.relatedTarget;n instanceof Node&&e.contains(n)||L()&&K.send({type:`CLOSE`})}}),d({target:e,event:`ui:virtualizer-total-change`,cleanup:m,handler:e=>{if(!(e instanceof CustomEvent)||!j()?.contains(e.target))return;let t=Number(e.detail?.totalItems);Number.isFinite(t)&&t>=0&&(C=Math.floor(t)),K.send({type:`OPTIONS_CHANGED`})}}),d({target:e,event:`ui:virtualizer-load`,cleanup:m,handler:e=>{j()?.contains(e.target)&&K.send({type:`OPTIONS_CHANGED`})}}),d({target:k(),event:`toggle`,cleanup:m,handler:e=>{!(`newState`in e)||e.newState!==`closed`||!L()||K.send({type:`CLOSE`})}}),m.push(re({isEnabled:()=>K.hasTag(`interactive`),roots:()=>[T(),k()],onDismiss:()=>K.send({type:`CLOSE`})})),p=le({targets:A(),read:W,onChange:()=>K.send({type:`OPTIONS_CHANGED`}),observer:{childList:!0,subtree:!0}})},$;return $={...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(){t=this.$el,r=this.$id(`select-button`),i=this.$id(`select-input`),a=this.$id(`select-listbox`),o=fe().id||T().dataset.optionsId||this.$id(`select-options`),fe().id=o,K.connect(this.$el,this.snapshot),C=N().optionsTotalItems,de().id||=`${a}-title`,f=Ve({reference:ue,floating:k,labelId:()=>de().id,position:()=>N().side,align:()=>N().align,gap:()=>N().gap,offset:()=>N().offset,matchReferenceWidth:!0}),Be(),G(),n=!0,N().open&&!N().disabled&&!N().readonly&&queueMicrotask(()=>K.send({type:`OPEN`}))},destroy(){window.clearTimeout(x),window.clearTimeout(S),p?.(),p=null,m.forEach(e=>e()),m=[],f?.destroy(),f=null,K.disconnect(),t=null},get root(){let e=this.snapshot.current?.props??N();return te({inputs:[h({part:Z.parts.root,props:e,className:e.class}),{"data-ui-select":``,":data-state":()=>K.hasTag(`expanded`)?`open`:`closed`}]})},open(e){e?.preventDefault(),!(N().disabled||N().readonly)&&K.send({type:`OPEN`})},close(e){e?.preventDefault(),K.send({type:`CLOSE`,restoreFocus:e instanceof KeyboardEvent})},toggle(e){e?.preventDefault(),!(N().disabled||N().readonly)&&K.send({type:`TOGGLE`})},select(e,t){let n=z(``).find(t=>!t.create&&t.value===e);n&&J(n,t)},deselect(e,t){t?.preventDefault(),!(N().disabled||N().readonly)&&(z(``).find(t=>t.value===e)?.disabled||q(`DESELECT`,V(P().selection.values.filter(t=>t!==e))))},selectAll(e){if(e?.preventDefault(),!N().multiple||N().disabled||N().readonly)return;let t=B();q(`SELECT_ALL`,{values:t.map(e=>e.value),labels:t.map(e=>e.selectedLabel)})},clear(e){if(e?.preventDefault(),e?.stopPropagation(),N().disabled||N().readonly)return;_=!1;let t=P().search.query!==``;K.send({type:`CLEAR`}),t&&Le()},setSearch:X},$},Ke=p(`UiSelect`,Ge),qe=new WeakSet,Je=e=>{qe.has(e)||(qe.add(e),t(e),Ke(e))};export{Ge as n,Je as t};
|
|
2
|
-
//# sourceMappingURL=entry.generated-BLloDlP5.js.map
|