@cloudflare/kumo 1.16.0 → 1.17.0
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/CHANGELOG.md +110 -0
- package/ai/USAGE.md +3 -1
- package/ai/component-registry.json +200 -59
- package/ai/component-registry.md +269 -33
- package/ai/schemas.ts +15 -5
- package/dist/.build-complete +1 -1
- package/dist/ai/schemas.d.ts +101 -37
- package/dist/ai/schemas.d.ts.map +1 -1
- package/dist/ai/schemas.js +187 -174
- package/dist/ai/schemas.js.map +1 -1
- package/dist/chunks/{Legend-bov5dqf08wemc2qj.js → Legend-o0ntojbaplmszwk0.js} +4 -2
- package/dist/chunks/Legend-o0ntojbaplmszwk0.js.map +1 -0
- package/dist/chunks/badge-n80t3z8u9ttlxi20.js +120 -0
- package/dist/chunks/badge-n80t3z8u9ttlxi20.js.map +1 -0
- package/dist/chunks/banner-nz0eryqnz3qd86ln.js +79 -0
- package/dist/chunks/banner-nz0eryqnz3qd86ln.js.map +1 -0
- package/dist/chunks/{breadcrumbs-m79gm4gjwbfajpna.js → breadcrumbs-cjgn3w4drahvqnuj.js} +3 -3
- package/dist/chunks/{breadcrumbs-m79gm4gjwbfajpna.js.map → breadcrumbs-cjgn3w4drahvqnuj.js.map} +1 -1
- package/dist/chunks/{button-j0hi0afn33w9lxgi.js → button-odxi0hp4fvi5i2w3.js} +50 -48
- package/dist/chunks/button-odxi0hp4fvi5i2w3.js.map +1 -0
- package/dist/chunks/{checkbox-lawmt1894wr6rpgi.js → checkbox-dx8x0rzv582yjv7n.js} +38 -47
- package/dist/chunks/{checkbox-lawmt1894wr6rpgi.js.map → checkbox-dx8x0rzv582yjv7n.js.map} +1 -1
- package/dist/chunks/{clipboard-text-ohx8kkpxisz382rj.js → clipboard-text-kyk51d1ze7zvdn4q.js} +55 -54
- package/dist/chunks/clipboard-text-kyk51d1ze7zvdn4q.js.map +1 -0
- package/dist/chunks/{combobox-ft0u7rfaxawk0r0c.js → combobox-9fhjzprab46csmon.js} +97 -82
- package/dist/chunks/combobox-9fhjzprab46csmon.js.map +1 -0
- package/dist/chunks/{command-palette-b31nq4wk7o7gx4sa.js → command-palette-kenx2bbdzd4kpx36.js} +158 -154
- package/dist/chunks/command-palette-kenx2bbdzd4kpx36.js.map +1 -0
- package/dist/chunks/{dialog-l5tmwxrzp9g83jmw.js → dialog-e05ysa8t2fklw065.js} +22 -20
- package/dist/chunks/dialog-e05ysa8t2fklw065.js.map +1 -0
- package/dist/chunks/{dropdown-icy3xatdwhzr4une.js → dropdown-g587px7zv3ssaxr4.js} +96 -90
- package/dist/chunks/dropdown-g587px7zv3ssaxr4.js.map +1 -0
- package/dist/chunks/{empty-hrwtammqp0b2nvtf.js → empty-fuz1un7r7mbz0kim.js} +2 -2
- package/dist/chunks/{empty-hrwtammqp0b2nvtf.js.map → empty-fuz1un7r7mbz0kim.js.map} +1 -1
- package/dist/chunks/{field-csje72m7j9403fj5.js → field-fq504lyu7ttsh5m9.js} +3 -3
- package/dist/chunks/{field-csje72m7j9403fj5.js.map → field-fq504lyu7ttsh5m9.js.map} +1 -1
- package/dist/chunks/{input-area-jko15sbc6zeage3l.js → input-area-nq40szg9110on89c.js} +4 -4
- package/dist/chunks/{input-area-jko15sbc6zeage3l.js.map → input-area-nq40szg9110on89c.js.map} +1 -1
- package/dist/chunks/{input-group-cjsy8kh4vf9312xl.js → input-group-hbebbyh8fo6aqydn.js} +3 -3
- package/dist/chunks/{input-group-cjsy8kh4vf9312xl.js.map → input-group-hbebbyh8fo6aqydn.js.map} +1 -1
- package/dist/chunks/{input-c8jmidy7gdqfiky1.js → input-kvhyo3p4859bexvx.js} +4 -4
- package/dist/chunks/input-kvhyo3p4859bexvx.js.map +1 -0
- package/dist/chunks/{label-i46xnnzdh9bsxk6a.js → label-j9owppbgnn35mebg.js} +3 -3
- package/dist/chunks/{label-i46xnnzdh9bsxk6a.js.map → label-j9owppbgnn35mebg.js.map} +1 -1
- package/dist/chunks/{layer-card-mu2w82x6ko1nhhtr.js → layer-card-l5yjvrxry1dhte57.js} +8 -8
- package/dist/chunks/{layer-card-mu2w82x6ko1nhhtr.js.map → layer-card-l5yjvrxry1dhte57.js.map} +1 -1
- package/dist/chunks/{link-o7yfj4kwgl19fklp.js → link-hmmf3k1xn6rm72rt.js} +2 -2
- package/dist/chunks/{link-o7yfj4kwgl19fklp.js.map → link-hmmf3k1xn6rm72rt.js.map} +1 -1
- package/dist/chunks/{menubar-g1wqqjuyyfvsim83.js → menubar-abojnm0uwjuni8ok.js} +20 -20
- package/dist/chunks/menubar-abojnm0uwjuni8ok.js.map +1 -0
- package/dist/chunks/{meter-cqkrg5axjenbsuue.js → meter-i84dte2f82qmvn7y.js} +2 -2
- package/dist/chunks/{meter-cqkrg5axjenbsuue.js.map → meter-i84dte2f82qmvn7y.js.map} +1 -1
- package/dist/chunks/{pagination-e3dp8bd80s35f7sd.js → pagination-pbd7qqik97ac0l7m.js} +3 -3
- package/dist/chunks/{pagination-e3dp8bd80s35f7sd.js.map → pagination-pbd7qqik97ac0l7m.js.map} +1 -1
- package/dist/chunks/{popover-jurf834u2uywluux.js → popover-i951xjcgezeqr4iv.js} +31 -28
- package/dist/chunks/popover-i951xjcgezeqr4iv.js.map +1 -0
- package/dist/chunks/portal-provider-hwmkdmkpvct0cb76.js +18 -0
- package/dist/chunks/portal-provider-hwmkdmkpvct0cb76.js.map +1 -0
- package/dist/chunks/{radio-l9dzm6sohcvvrsdc.js → radio-l2vkcue40d84fmo1.js} +13 -16
- package/dist/chunks/{radio-l9dzm6sohcvvrsdc.js.map → radio-l2vkcue40d84fmo1.js.map} +1 -1
- package/dist/chunks/{select-hnt87e3cfos48qql.js → select-paedwa3nlhpq82ua.js} +39 -37
- package/dist/chunks/select-paedwa3nlhpq82ua.js.map +1 -0
- package/dist/chunks/{sensitive-input-lvtccf3iqc06lj7b.js → sensitive-input-kznmknpp5h1grc6k.js} +97 -91
- package/dist/chunks/sensitive-input-kznmknpp5h1grc6k.js.map +1 -0
- package/dist/chunks/{sidebar-l6rk9o5qf8k5vth1.js → sidebar-jepeq7gaf4issuw6.js} +3 -3
- package/dist/chunks/{sidebar-l6rk9o5qf8k5vth1.js.map → sidebar-jepeq7gaf4issuw6.js.map} +1 -1
- package/dist/chunks/skeleton-line-epxenksfesr2fkcv.js +33 -0
- package/dist/chunks/skeleton-line-epxenksfesr2fkcv.js.map +1 -0
- package/dist/chunks/surface-blo81kgy9g0sexgm.js +36 -0
- package/dist/chunks/surface-blo81kgy9g0sexgm.js.map +1 -0
- package/dist/chunks/{switch-fukrbip86khvqjn7.js → switch-i0zwcp3wq6vsxm1c.js} +64 -64
- package/dist/chunks/{switch-fukrbip86khvqjn7.js.map → switch-i0zwcp3wq6vsxm1c.js.map} +1 -1
- package/dist/chunks/table-nrcw19tlpduayukl.js +183 -0
- package/dist/chunks/table-nrcw19tlpduayukl.js.map +1 -0
- package/dist/chunks/tabs-bw92jb303zxw7w4f.js +92 -0
- package/dist/chunks/{tabs-n0t7iro7wr0pzgk2.js.map → tabs-bw92jb303zxw7w4f.js.map} +1 -1
- package/dist/chunks/{text-gzt92mlji1lug13d.js → text-nmyi1rkwdj37f30f.js} +24 -22
- package/dist/chunks/text-nmyi1rkwdj37f30f.js.map +1 -0
- package/dist/chunks/{toast-r9ajsces7xp8l85w.js → toast-lrnwby56drs7vtae.js} +59 -57
- package/dist/chunks/toast-lrnwby56drs7vtae.js.map +1 -0
- package/dist/chunks/toml-nczb2z9n0o23o3ci.js +8 -0
- package/dist/chunks/toml-nczb2z9n0o23o3ci.js.map +1 -0
- package/dist/chunks/{tooltip-hnc71tg4gz2gpcvc.js → tooltip-cit9ltlxfuhwctuj.js} +24 -21
- package/dist/chunks/tooltip-cit9ltlxfuhwctuj.js.map +1 -0
- package/dist/chunks/{vendor-base-ui-ccr5l0ynrievzzv3.js → vendor-base-ui-n30qblevnpk9cc5c.js} +42 -41
- package/dist/chunks/{vendor-base-ui-ccr5l0ynrievzzv3.js.map → vendor-base-ui-n30qblevnpk9cc5c.js.map} +1 -1
- package/dist/code/server.js +10 -9
- package/dist/code/server.js.map +1 -1
- package/dist/code.js +3 -2
- package/dist/code.js.map +1 -1
- package/dist/components/badge.js +1 -1
- package/dist/components/banner.js +1 -1
- package/dist/components/breadcrumbs.js +1 -1
- package/dist/components/button.js +1 -1
- package/dist/components/chart.js +1 -1
- package/dist/components/checkbox.js +1 -1
- package/dist/components/clipboard-text.js +1 -1
- package/dist/components/combobox.js +1 -1
- package/dist/components/command-palette.js +1 -1
- package/dist/components/dialog.js +1 -1
- package/dist/components/dropdown.js +1 -1
- package/dist/components/empty.js +1 -1
- package/dist/components/field.js +1 -1
- package/dist/components/flow.js +5 -4
- package/dist/components/flow.js.map +1 -1
- package/dist/components/input.js +3 -3
- package/dist/components/label.js +1 -1
- package/dist/components/layer-card.js +1 -1
- package/dist/components/link.js +1 -1
- package/dist/components/loader.js +1 -1
- package/dist/components/menubar.js +1 -1
- package/dist/components/meter.js +1 -1
- package/dist/components/pagination.js +1 -1
- package/dist/components/popover.js +1 -1
- package/dist/components/radio.js +1 -1
- package/dist/components/select.js +1 -1
- package/dist/components/sensitive-input.js +1 -1
- package/dist/components/sidebar.js +1 -1
- package/dist/components/surface.js +1 -1
- package/dist/components/switch.js +1 -1
- package/dist/components/table.js +1 -1
- package/dist/components/tabs.js +1 -1
- package/dist/components/text.js +1 -1
- package/dist/components/toast.js +2 -2
- package/dist/components/tooltip.js +1 -1
- package/dist/index.js +75 -73
- package/dist/index.js.map +1 -1
- package/dist/primitives/accordion.js +1 -1
- package/dist/primitives/alert-dialog.js +1 -1
- package/dist/primitives/autocomplete.js +1 -1
- package/dist/primitives/avatar.js +1 -1
- package/dist/primitives/button.js +1 -1
- package/dist/primitives/checkbox-group.js +1 -1
- package/dist/primitives/checkbox.js +1 -1
- package/dist/primitives/collapsible.js +1 -1
- package/dist/primitives/combobox.js +1 -1
- package/dist/primitives/context-menu.js +1 -1
- package/dist/primitives/csp-provider.js +1 -1
- package/dist/primitives/dialog.js +1 -1
- package/dist/primitives/direction-provider.js +1 -1
- package/dist/primitives/drawer.js +1 -1
- package/dist/primitives/field.js +1 -1
- package/dist/primitives/fieldset.js +1 -1
- package/dist/primitives/form.js +1 -1
- package/dist/primitives/input.js +1 -1
- package/dist/primitives/menu.js +1 -1
- package/dist/primitives/menubar.js +1 -1
- package/dist/primitives/meter.js +1 -1
- package/dist/primitives/navigation-menu.js +1 -1
- package/dist/primitives/number-field.js +1 -1
- package/dist/primitives/popover.js +1 -1
- package/dist/primitives/preview-card.js +1 -1
- package/dist/primitives/progress.js +1 -1
- package/dist/primitives/radio-group.js +1 -1
- package/dist/primitives/radio.js +1 -1
- package/dist/primitives/scroll-area.js +1 -1
- package/dist/primitives/select.js +1 -1
- package/dist/primitives/separator.js +1 -1
- package/dist/primitives/slider.js +1 -1
- package/dist/primitives/switch.js +1 -1
- package/dist/primitives/tabs.js +1 -1
- package/dist/primitives/toast.js +1 -1
- package/dist/primitives/toggle-group.js +1 -1
- package/dist/primitives/toggle.js +1 -1
- package/dist/primitives/toolbar.js +1 -1
- package/dist/primitives/tooltip.js +1 -1
- package/dist/primitives.js +1 -1
- package/dist/scripts/theme-generator/config.d.ts.map +1 -1
- package/dist/scripts/theme-generator/config.js +288 -24
- package/dist/scripts/theme-generator/config.js.map +1 -1
- package/dist/src/code/provider.d.ts.map +1 -1
- package/dist/src/code/server.d.ts.map +1 -1
- package/dist/src/code/types.d.ts +1 -1
- package/dist/src/code/types.d.ts.map +1 -1
- package/dist/src/components/badge/badge.d.ts +95 -22
- package/dist/src/components/badge/badge.d.ts.map +1 -1
- package/dist/src/components/banner/banner.d.ts +2 -0
- package/dist/src/components/banner/banner.d.ts.map +1 -1
- package/dist/src/components/button/button.d.ts +2 -0
- package/dist/src/components/button/button.d.ts.map +1 -1
- package/dist/src/components/chart/TimeseriesChart.d.ts.map +1 -1
- package/dist/src/components/checkbox/checkbox.d.ts.map +1 -1
- package/dist/src/components/clipboard-text/clipboard-text.d.ts +2 -0
- package/dist/src/components/clipboard-text/clipboard-text.d.ts.map +1 -1
- package/dist/src/components/combobox/combobox.d.ts +8 -1
- package/dist/src/components/combobox/combobox.d.ts.map +1 -1
- package/dist/src/components/command-palette/command-palette.d.ts +9 -2
- package/dist/src/components/command-palette/command-palette.d.ts.map +1 -1
- package/dist/src/components/command-palette/types.d.ts +7 -0
- package/dist/src/components/command-palette/types.d.ts.map +1 -1
- package/dist/src/components/dialog/dialog.d.ts +8 -1
- package/dist/src/components/dialog/dialog.d.ts.map +1 -1
- package/dist/src/components/dropdown/dropdown.d.ts +17 -2
- package/dist/src/components/dropdown/dropdown.d.ts.map +1 -1
- package/dist/src/components/flow/diagram.d.ts.map +1 -1
- package/dist/src/components/loader/skeleton-line.d.ts +2 -1
- package/dist/src/components/loader/skeleton-line.d.ts.map +1 -1
- package/dist/src/components/popover/popover.d.ts +8 -1
- package/dist/src/components/popover/popover.d.ts.map +1 -1
- package/dist/src/components/radio/radio.d.ts.map +1 -1
- package/dist/src/components/select/select.d.ts +8 -1
- package/dist/src/components/select/select.d.ts.map +1 -1
- package/dist/src/components/sensitive-input/sensitive-input.d.ts.map +1 -1
- package/dist/src/components/surface/surface.d.ts +23 -23
- package/dist/src/components/surface/surface.d.ts.map +1 -1
- package/dist/src/components/table/table.d.ts +34 -2
- package/dist/src/components/table/table.d.ts.map +1 -1
- package/dist/src/components/tabs/tabs.d.ts.map +1 -1
- package/dist/src/components/text/text.d.ts +5 -0
- package/dist/src/components/text/text.d.ts.map +1 -1
- package/dist/src/components/toast/toast.d.ts +16 -9
- package/dist/src/components/toast/toast.d.ts.map +1 -1
- package/dist/src/components/tooltip/tooltip.d.ts +11 -6
- package/dist/src/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/utils/index.d.ts +1 -0
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/portal-provider.d.ts +56 -0
- package/dist/src/utils/portal-provider.d.ts.map +1 -0
- package/dist/styles/kumo-binding.css +49 -46
- package/dist/styles/kumo-standalone.css +1 -1
- package/dist/styles/theme-fedramp.css +3 -3
- package/dist/styles/theme-kumo.css +202 -22
- package/dist/utils.js +8 -6
- package/dist/utils.js.map +1 -1
- package/package.json +2 -2
- package/scripts/theme-generator/config.ts +298 -24
- package/dist/chunks/Legend-bov5dqf08wemc2qj.js.map +0 -1
- package/dist/chunks/badge-mrshucy2530o70cq.js +0 -56
- package/dist/chunks/badge-mrshucy2530o70cq.js.map +0 -1
- package/dist/chunks/banner-vzdjbqsb6em7tmdk.js +0 -75
- package/dist/chunks/banner-vzdjbqsb6em7tmdk.js.map +0 -1
- package/dist/chunks/button-j0hi0afn33w9lxgi.js.map +0 -1
- package/dist/chunks/clipboard-text-ohx8kkpxisz382rj.js.map +0 -1
- package/dist/chunks/combobox-ft0u7rfaxawk0r0c.js.map +0 -1
- package/dist/chunks/command-palette-b31nq4wk7o7gx4sa.js.map +0 -1
- package/dist/chunks/dialog-l5tmwxrzp9g83jmw.js.map +0 -1
- package/dist/chunks/dropdown-icy3xatdwhzr4une.js.map +0 -1
- package/dist/chunks/input-c8jmidy7gdqfiky1.js.map +0 -1
- package/dist/chunks/menubar-g1wqqjuyyfvsim83.js.map +0 -1
- package/dist/chunks/popover-jurf834u2uywluux.js.map +0 -1
- package/dist/chunks/select-hnt87e3cfos48qql.js.map +0 -1
- package/dist/chunks/sensitive-input-lvtccf3iqc06lj7b.js.map +0 -1
- package/dist/chunks/skeleton-line-1j5exu6vv07mmhfb.js +0 -28
- package/dist/chunks/skeleton-line-1j5exu6vv07mmhfb.js.map +0 -1
- package/dist/chunks/surface-dhshylwccuaz91d1.js +0 -21
- package/dist/chunks/surface-dhshylwccuaz91d1.js.map +0 -1
- package/dist/chunks/table-orfgzwvxh8yr90dk.js +0 -155
- package/dist/chunks/table-orfgzwvxh8yr90dk.js.map +0 -1
- package/dist/chunks/tabs-n0t7iro7wr0pzgk2.js +0 -86
- package/dist/chunks/text-gzt92mlji1lug13d.js.map +0 -1
- package/dist/chunks/toast-r9ajsces7xp8l85w.js.map +0 -1
- package/dist/chunks/tooltip-hnc71tg4gz2gpcvc.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"combobox-9fhjzprab46csmon.js","sources":["../../src/components/combobox/combobox.tsx"],"sourcesContent":["import { Combobox as ComboboxBase } from \"@base-ui/react/combobox\";\nimport { CaretDownIcon, CheckIcon, XIcon } from \"@phosphor-icons/react\";\nimport {\n Fragment,\n createContext,\n useContext,\n type PropsWithChildren,\n type ReactNode,\n} from \"react\";\nimport {\n inputVariants,\n KUMO_INPUT_VARIANTS,\n type KumoInputSize,\n} from \"../input/input\";\nimport { cn } from \"../../utils/cn\";\nimport { Field, type FieldErrorMatch } from \"../field/field\";\nimport {\n usePortalContainer,\n type PortalContainer,\n} from \"../../utils/portal-provider\";\n\n/** Combobox variant definitions. */\nexport const KUMO_COMBOBOX_VARIANTS = {\n size: KUMO_INPUT_VARIANTS.size,\n inputSide: {\n right: {\n classes: \"\",\n description: \"Input positioned inline to the right of chips\",\n },\n top: {\n classes: \"\",\n description: \"Input positioned above chips\",\n },\n },\n} as const;\n\nexport const KUMO_COMBOBOX_DEFAULT_VARIANTS = {\n size: \"base\",\n inputSide: \"right\",\n} as const;\n\n// Context to pass size down to sub-components\nconst ComboboxSizeContext = createContext<KumoInputSize>(\"base\");\n\n// Derived types from KUMO_COMBOBOX_VARIANTS\nexport type KumoComboboxSize = keyof typeof KUMO_COMBOBOX_VARIANTS.size;\nexport type KumoComboboxInputSide =\n keyof typeof KUMO_COMBOBOX_VARIANTS.inputSide;\n\nexport interface KumoComboboxVariantsProps {\n /**\n * Size of the combobox trigger. Matches Input component sizes.\n * - `\"xs\"` — Extra small for compact UIs (h-5 / 20px)\n * - `\"sm\"` — Small for secondary fields (h-6.5 / 26px)\n * - `\"base\"` — Default size (h-9 / 36px)\n * - `\"lg\"` — Large for prominent fields (h-10 / 40px)\n * @default \"base\"\n */\n size?: KumoComboboxSize;\n /**\n * Position of the text input relative to chips in multi-select mode.\n * - `\"right\"` — Input inline to the right of chips\n * - `\"top\"` — Input above chips\n * @default \"right\"\n */\n inputSide?: KumoComboboxInputSide;\n}\n\nexport function comboboxVariants({\n inputSide = KUMO_COMBOBOX_DEFAULT_VARIANTS.inputSide,\n}: KumoComboboxVariantsProps = {}) {\n return cn(KUMO_COMBOBOX_VARIANTS.inputSide[inputSide].classes);\n}\n\n// Legacy type alias for backwards compatibility\nexport type ComboboxInputSide = KumoComboboxInputSide;\nexport type ComboboxSize = KumoComboboxSize;\n\nexport type ComboboxRootProps<\n Value = unknown,\n Multiple extends boolean | undefined = false,\n> = ComboboxBase.Root.Props<Value, Multiple>;\n\n/**\n * Combobox component props (simplified for documentation; the actual Root is generic).\n *\n * Combobox provides an autocomplete/typeahead input with a filterable dropdown.\n * Supports single-select, multi-select with chips, grouped items, and Field wrapper integration.\n *\n * @example\n * ```tsx\n * // Single-select with search input\n * <Combobox value={value} onValueChange={setValue} items={options}>\n * <Combobox.TriggerInput placeholder=\"Search…\" />\n * <Combobox.Content>\n * <Combobox.List>\n * {(item) => <Combobox.Item value={item}>{item.label}</Combobox.Item>}\n * </Combobox.List>\n * <Combobox.Empty>No results</Combobox.Empty>\n * </Combobox.Content>\n * </Combobox>\n *\n * // Multi-select with chips\n * <Combobox multiple items={options} label=\"Tags\">\n * <Combobox.TriggerMultipleWithInput\n * placeholder=\"Add tag…\"\n * renderItem={(item) => <Combobox.Chip value={item}>{item.label}</Combobox.Chip>}\n * />\n * <Combobox.Content>\n * <Combobox.List>\n * {(item) => <Combobox.Item value={item}>{item.label}</Combobox.Item>}\n * </Combobox.List>\n * </Combobox.Content>\n * </Combobox>\n * ```\n */\nexport interface ComboboxProps extends KumoComboboxVariantsProps {\n /** Array of items to display in the dropdown */\n items: unknown[];\n /** Currently selected value(s) */\n value?: unknown;\n /** Callback when selection changes */\n onValueChange?: (value: unknown) => void;\n /** Enable multi-select mode */\n multiple?: boolean;\n /** Combobox content (trigger, content, items) */\n children: ReactNode;\n /** Additional CSS classes */\n className?: string;\n /** Label content for the combobox (enables Field wrapper) - can be a string or any React node */\n label?: ReactNode;\n /** Whether the combobox is required */\n required?: boolean;\n /** Tooltip content to display next to the label via an info icon */\n labelTooltip?: ReactNode;\n /** Helper text displayed below the combobox */\n description?: ReactNode;\n /** Error message or validation error object */\n error?: string | { message: ReactNode; match: FieldErrorMatch };\n}\n\nfunction Root<Value, Multiple extends boolean | undefined = false>({\n label,\n required,\n labelTooltip,\n description,\n error,\n children,\n size = \"base\",\n ...props\n}: ComboboxBase.Root.Props<Value, Multiple> & {\n label?: ReactNode;\n required?: boolean;\n labelTooltip?: ReactNode;\n description?: ReactNode;\n error?: string | { message: ReactNode; match: FieldErrorMatch };\n size?: KumoComboboxSize;\n}) {\n const comboboxControl = (\n <ComboboxSizeContext.Provider value={size}>\n <ComboboxBase.Root {...props}>{children}</ComboboxBase.Root>\n </ComboboxSizeContext.Provider>\n );\n\n // Render with Field wrapper if label, description, or error are provided\n if (label) {\n return (\n <Field\n label={label}\n required={required}\n labelTooltip={labelTooltip}\n description={description}\n error={\n error\n ? typeof error === \"string\"\n ? { message: error, match: true }\n : error\n : undefined\n }\n >\n {comboboxControl}\n </Field>\n );\n }\n\n // Render bare combobox without Field wrapper\n return comboboxControl;\n}\n\nfunction Content({\n children,\n className,\n align = \"start\",\n sideOffset = 4,\n alignOffset,\n side,\n container: containerProp,\n}: PropsWithChildren<{\n className?: string;\n align?: ComboboxBase.Positioner.Props[\"align\"];\n alignOffset?: ComboboxBase.Positioner.Props[\"alignOffset\"];\n side?: ComboboxBase.Positioner.Props[\"side\"];\n sideOffset?: ComboboxBase.Positioner.Props[\"sideOffset\"];\n /**\n * Container element for the portal. Use this to render the combobox inside\n * a Shadow DOM or custom container. Overrides `KumoPortalProvider` context.\n * @default document.body (or KumoPortalProvider container if set)\n */\n container?: PortalContainer;\n}>) {\n const contextContainer = usePortalContainer();\n const container = containerProp ?? contextContainer ?? undefined;\n\n return (\n <ComboboxBase.Portal container={container}>\n <ComboboxBase.Positioner\n className=\"\"\n align={align}\n sideOffset={sideOffset}\n alignOffset={alignOffset}\n side={side}\n >\n <ComboboxBase.Popup\n className={cn(\n \"flex flex-col\", // flexbox layout for sticky input + scrollable list\n \"max-h-[min(var(--available-height),24rem)] max-w-(--available-width) min-w-(--anchor-width) py-1.5\",\n \"bg-kumo-base text-kumo-default\", // background\n \"rounded-lg shadow-lg ring ring-kumo-line\", // border part\n className,\n )}\n >\n {children}\n </ComboboxBase.Popup>\n </ComboboxBase.Positioner>\n </ComboboxBase.Portal>\n );\n}\n\n// Size-dependent styles for TriggerValue icon\nconst triggerValueIconStyles: Record<\n KumoComboboxSize,\n { padding: string; iconSize: number; iconRight: string }\n> = {\n xs: { padding: \"pr-5\", iconSize: 12, iconRight: \"right-1\" },\n sm: { padding: \"pr-6\", iconSize: 14, iconRight: \"right-1.5\" },\n base: { padding: \"pr-8\", iconSize: 16, iconRight: \"right-2\" },\n lg: { padding: \"pr-10\", iconSize: 18, iconRight: \"right-3\" },\n};\n\nfunction TriggerValue({\n className,\n ...props\n}: ComboboxBase.Value.Props & { className?: string }) {\n const size = useContext(ComboboxSizeContext);\n const iconStyles = triggerValueIconStyles[size];\n\n return (\n <ComboboxBase.Trigger\n className={cn(\n inputVariants({ size }),\n \"relative flex items-center\",\n \"data-[disabled]:opacity-50 data-[disabled]:cursor-not-allowed\",\n iconStyles.padding,\n className,\n )}\n >\n <ComboboxBase.Value>{props.children}</ComboboxBase.Value>\n <ComboboxBase.Icon\n className={cn(\n \"absolute top-1/2 -translate-y-1/2 flex items-center text-kumo-subtle\",\n iconStyles.iconRight,\n )}\n >\n <CaretDownIcon size={iconStyles.iconSize} className=\"fill-current\" />\n </ComboboxBase.Icon>\n </ComboboxBase.Trigger>\n );\n}\n\n// Size-dependent styles for TriggerInput icons\nconst triggerInputIconStyles: Record<\n KumoComboboxSize,\n { padding: string; iconSize: number; clearRight: string; caretRight: string }\n> = {\n xs: {\n padding: \"pr-7\",\n iconSize: 12,\n clearRight: \"right-5\",\n caretRight: \"right-1\",\n },\n sm: {\n padding: \"pr-9\",\n iconSize: 14,\n clearRight: \"right-6\",\n caretRight: \"right-1.5\",\n },\n base: {\n padding: \"pr-12\",\n iconSize: 16,\n clearRight: \"right-8\",\n caretRight: \"right-2\",\n },\n lg: {\n padding: \"pr-14\",\n iconSize: 18,\n clearRight: \"right-9\",\n caretRight: \"right-3\",\n },\n};\n\nfunction TriggerInput(props: ComboboxBase.Input.Props) {\n const size = useContext(ComboboxSizeContext);\n const iconStyles = triggerInputIconStyles[size];\n\n return (\n <div\n className={cn(\n \"relative inline-block w-full max-w-xs\",\n \"has-[:disabled]:opacity-50 has-[:disabled]:cursor-not-allowed\",\n props.className,\n )}\n >\n <ComboboxBase.Input\n {...props}\n className={cn(\n inputVariants({ size }),\n \"w-full\",\n iconStyles.padding,\n \"disabled:cursor-not-allowed\",\n )}\n />\n\n <ComboboxBase.Clear\n className={cn(\n \"absolute top-1/2 flex -translate-y-1/2 cursor-pointer bg-transparent p-0\",\n \"data-[disabled]:pointer-events-none data-[disabled]:opacity-0\",\n iconStyles.clearRight,\n )}\n >\n <XIcon size={iconStyles.iconSize} />\n </ComboboxBase.Clear>\n\n <ComboboxBase.Trigger className=\"p-0\">\n <ComboboxBase.Icon\n className={cn(\n \"absolute top-1/2 flex -translate-y-1/2 cursor-pointer text-kumo-subtle\",\n iconStyles.caretRight,\n )}\n >\n <CaretDownIcon size={iconStyles.iconSize} className=\"fill-current\" />\n </ComboboxBase.Icon>\n </ComboboxBase.Trigger>\n </div>\n );\n}\n\nfunction Item({ children, ...props }: ComboboxBase.Item.Props) {\n return (\n <ComboboxBase.Item\n {...props}\n className=\"group mx-1.5 grid cursor-pointer grid-cols-[1fr_16px] gap-2 rounded px-2 py-1.5 text-base data-highlighted:bg-kumo-tint\"\n >\n <div className=\"col-start-1\">{children}</div>\n <ComboboxBase.ItemIndicator className=\"col-start-2 flex items-center\">\n <CheckIcon />\n </ComboboxBase.ItemIndicator>\n </ComboboxBase.Item>\n );\n}\n\nfunction Empty(props: ComboboxBase.Empty.Props) {\n return (\n <ComboboxBase.Empty\n {...props}\n className={cn(\n \"mx-1.5 shrink-0 px-4 py-2 text-[0.925rem] leading-4 text-kumo-subtle empty:m-0 empty:p-0\",\n )}\n children={props.children ?? \"No labels found.\"}\n />\n );\n}\n\nfunction Input(props: ComboboxBase.Input.Props) {\n return (\n <ComboboxBase.Input\n {...props}\n className={cn(\n inputVariants(),\n \"mx-1.5 w-[calc(100%-0.75rem)] shrink-0 first:mb-2\",\n props.className,\n )}\n />\n );\n}\n\nfunction List({\n className,\n ...props\n}: ComboboxBase.List.Props & { className?: string }) {\n return (\n <ComboboxBase.List\n {...props}\n className={cn(\n \"min-h-0 flex-1 overflow-y-auto overscroll-contain scroll-pt-2 scroll-pb-2\",\n className,\n )}\n />\n );\n}\n\nfunction GroupLabel(props: ComboboxBase.GroupLabel.Props) {\n return (\n <ComboboxBase.GroupLabel\n {...props}\n className={cn(\n \"mx-1.5 px-2 py-1.5 text-sm text-kumo-strong\",\n props.className,\n )}\n />\n );\n}\n\nfunction Group(props: ComboboxBase.Group.Props) {\n return (\n <ComboboxBase.Group\n {...props}\n className=\"border-t border-kumo-line mt-2 pt-2 first:border-t-0 first:mt-0 first:pt-0\"\n />\n );\n}\n\nfunction Chip(props: ComboboxBase.Chip.Props) {\n return (\n <ComboboxBase.Chip\n {...props}\n className={cn(\n \"flex items-center gap-2.5\", // Layout\n \"h-6 pl-2 pr-[3px]\", // Dimensions\n \"rounded-sm ring-1 ring-kumo-line\", // Border\n \"bg-kumo-overlay\", // Background\n \"text-sm\", // Typography\n )}\n >\n {props.children}\n <ComboboxBase.ChipRemove\n className={cn(\n \"cursor-pointer rounded-md p-1 hover:bg-kumo-fill-hover\",\n \"bg-transparent flex\",\n )}\n >\n <XIcon size={10} />\n </ComboboxBase.ChipRemove>\n </ComboboxBase.Chip>\n );\n}\n\n// Map size to min-height class for TriggerMultipleWithInput\nconst sizeToMinHeight: Record<KumoComboboxSize, string> = {\n xs: \"min-h-5\",\n sm: \"min-h-6.5\",\n base: \"min-h-9\",\n lg: \"min-h-10\",\n};\n\nfunction TriggerMultipleWithInput<ValueType>({\n placeholder,\n renderItem,\n className,\n inputSide = \"right\",\n value: controlledValue,\n}: {\n placeholder?: string;\n renderItem: (value: ValueType) => React.ReactNode;\n className?: string;\n inputSide?: \"right\" | \"top\";\n /** Optional controlled value for rendering chips (use when pre-selecting values) */\n value?: ValueType[];\n}) {\n const size = useContext(ComboboxSizeContext);\n // Determine which value to use for rendering chips\n const chipsToRender = controlledValue;\n\n return (\n <ComboboxBase.Chips\n className={cn(\n inputVariants({ size }),\n \"flex flex-col\",\n \"gap-1 py-1 px-1.5\",\n sizeToMinHeight[size],\n \"h-auto\",\n \"data-[disabled]:opacity-50 data-[disabled]:cursor-not-allowed\",\n className,\n )}\n >\n {inputSide === \"top\" && (\n <ComboboxBase.Input\n placeholder={placeholder}\n className=\"w-full px-2 py-1 border-0 bg-inherit\"\n />\n )}\n {/* Chips container */}\n <div className=\"flex items-center flex-wrap gap-1.5 flex-1\">\n {/* Render chips from controlled value if provided */}\n {chipsToRender !== undefined &&\n chipsToRender.length > 0 &&\n chipsToRender.map((item) => renderItem(item))}\n {/* Also render from BaseUI's internal value for user selections */}\n <ComboboxBase.Value>\n {(internalValue: ValueType[]) => {\n // Skip rendering if using controlled value (to avoid duplicates)\n if (chipsToRender !== undefined) return null;\n return (\n <Fragment>\n {internalValue.map((item) => renderItem(item))}\n </Fragment>\n );\n }}\n </ComboboxBase.Value>\n {inputSide === \"right\" && (\n <ComboboxBase.Input\n placeholder={placeholder}\n className=\"min-w-[100px] flex-1 px-2 py-1 border-0 bg-inherit\"\n />\n )}\n </div>\n </ComboboxBase.Chips>\n );\n}\n\nRoot.displayName = \"Combobox.Root\";\nContent.displayName = \"Combobox.Content\";\nTriggerValue.displayName = \"Combobox.TriggerValue\";\nTriggerInput.displayName = \"Combobox.TriggerInput\";\nItem.displayName = \"Combobox.Item\";\nChip.displayName = \"Combobox.Chip\";\nTriggerMultipleWithInput.displayName = \"Combobox.TriggerMultipleWithInput\";\n\n/**\n * Combobox — autocomplete input with filterable dropdown list.\n *\n * Compound component: `Combobox` (Root), `.TriggerInput`, `.TriggerValue`,\n * `.TriggerMultipleWithInput`, `.Content`, `.Item`, `.Chip`, `.Input`,\n * `.Empty`, `.GroupLabel`, `.Group`, `.List`, `.Collection`.\n *\n * @example\n * ```tsx\n * <Combobox items={fruits} label=\"Fruit\">\n * <Combobox.TriggerInput placeholder=\"Pick a fruit…\" />\n * <Combobox.Content>\n * <Combobox.List>\n * {(item) => <Combobox.Item value={item}>{item}</Combobox.Item>}\n * </Combobox.List>\n * </Combobox.Content>\n * </Combobox>\n * ```\n *\n * @see https://base-ui.com/react/components/combobox\n */\nexport const Combobox = Object.assign(Root, {\n // Helper components\n Content,\n TriggerValue,\n TriggerInput,\n TriggerMultipleWithInput,\n\n // Slightly modified BaseUI\n Chip,\n Item,\n\n // Styled BaseUI\n Input,\n Empty,\n GroupLabel,\n Group,\n\n // Styled BaseUI\n List,\n\n // BaseUI\n Collection: ComboboxBase.Collection,\n});\n"],"names":["KUMO_INPUT_VARIANTS","ComboboxSizeContext","createContext","Root","label","required","labelTooltip","description","error","children","size","props","comboboxControl","jsx","ComboboxBase.Root","Field","Content","className","align","sideOffset","alignOffset","side","containerProp","contextContainer","usePortalContainer","ComboboxBase.Portal","ComboboxBase.Positioner","ComboboxBase.Popup","cn","triggerValueIconStyles","TriggerValue","useContext","iconStyles","jsxs","ComboboxBase.Trigger","inputVariants","ComboboxBase.Value","ComboboxBase.Icon","CaretDownIcon","triggerInputIconStyles","TriggerInput","ComboboxBase.Input","ComboboxBase.Clear","XIcon","Item","ComboboxBase.Item","ComboboxBase.ItemIndicator","CheckIcon","Empty","ComboboxBase.Empty","Input","List","ComboboxBase.List","GroupLabel","ComboboxBase.GroupLabel","Group","ComboboxBase.Group","Chip","ComboboxBase.Chip","ComboboxBase.ChipRemove","sizeToMinHeight","TriggerMultipleWithInput","placeholder","renderItem","inputSide","controlledValue","chipsToRender","ComboboxBase.Chips","item","internalValue","Fragment","Combobox","ComboboxBase.Collection"],"mappings":";;;;;;;;;AAuBQA,EAAoB;AAmB5B,MAAMC,IAAsBC,EAA6B,MAAM;AAmG/D,SAASC,EAA0D;AAAA,EACjE,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,cAAAC;AAAA,EACA,aAAAC;AAAA,EACA,OAAAC;AAAA,EACA,UAAAC;AAAA,EACA,MAAAC,IAAO;AAAA,EACP,GAAGC;AACL,GAOG;AACD,QAAMC,IACJ,gBAAAC,EAACZ,EAAoB,UAApB,EAA6B,OAAOS,GACnC,UAAA,gBAAAG,EAACC,GAAA,EAAmB,GAAGH,GAAQ,UAAAF,GAAS,EAAA,CAC1C;AAIF,SAAIL,IAEA,gBAAAS;AAAA,IAACE;AAAA,IAAA;AAAA,MACC,OAAAX;AAAA,MACA,UAAAC;AAAA,MACA,cAAAC;AAAA,MACA,aAAAC;AAAA,MACA,OACEC,IACI,OAAOA,KAAU,WACf,EAAE,SAASA,GAAO,OAAO,GAAA,IACzBA,IACF;AAAA,MAGL,UAAAI;AAAA,IAAA;AAAA,EAAA,IAMAA;AACT;AAEA,SAASI,EAAQ;AAAA,EACf,UAAAP;AAAA,EACA,WAAAQ;AAAA,EACA,OAAAC,IAAQ;AAAA,EACR,YAAAC,IAAa;AAAA,EACb,aAAAC;AAAA,EACA,MAAAC;AAAA,EACA,WAAWC;AACb,GAYI;AACF,QAAMC,IAAmBC,EAAA;AAGzB,SACE,gBAAAX,EAACY,GAAA,EAAoB,WAHLH,KAAiBC,KAAoB,QAInD,UAAA,gBAAAV;AAAA,IAACa;AAAAA,IAAA;AAAA,MACC,WAAU;AAAA,MACV,OAAAR;AAAA,MACA,YAAAC;AAAA,MACA,aAAAC;AAAA,MACA,MAAAC;AAAA,MAEA,UAAA,gBAAAR;AAAA,QAACc;AAAAA,QAAA;AAAA,UACC,WAAWC;AAAA,YACT;AAAA;AAAA,YACA;AAAA,YACA;AAAA;AAAA,YACA;AAAA;AAAA,YACAX;AAAA,UAAA;AAAA,UAGD,UAAAR;AAAA,QAAA;AAAA,MAAA;AAAA,IACH;AAAA,EAAA,GAEJ;AAEJ;AAGA,MAAMoB,IAGF;AAAA,EACF,IAAI,EAAE,SAAS,QAAQ,UAAU,IAAI,WAAW,UAAA;AAAA,EAChD,IAAI,EAAE,SAAS,QAAQ,UAAU,IAAI,WAAW,YAAA;AAAA,EAChD,MAAM,EAAE,SAAS,QAAQ,UAAU,IAAI,WAAW,UAAA;AAAA,EAClD,IAAI,EAAE,SAAS,SAAS,UAAU,IAAI,WAAW,UAAA;AACnD;AAEA,SAASC,EAAa;AAAA,EACpB,WAAAb;AAAA,EACA,GAAGN;AACL,GAAsD;AACpD,QAAMD,IAAOqB,EAAW9B,CAAmB,GACrC+B,IAAaH,EAAuBnB,CAAI;AAE9C,SACE,gBAAAuB;AAAA,IAACC;AAAAA,IAAA;AAAA,MACC,WAAWN;AAAA,QACTO,EAAc,EAAE,MAAAzB,GAAM;AAAA,QACtB;AAAA,QACA;AAAA,QACAsB,EAAW;AAAA,QACXf;AAAA,MAAA;AAAA,MAGF,UAAA;AAAA,QAAA,gBAAAJ,EAACuB,GAAA,EAAoB,UAAAzB,EAAM,SAAA,CAAS;AAAA,QACpC,gBAAAE;AAAA,UAACwB;AAAAA,UAAA;AAAA,YACC,WAAWT;AAAA,cACT;AAAA,cACAI,EAAW;AAAA,YAAA;AAAA,YAGb,4BAACM,GAAA,EAAc,MAAMN,EAAW,UAAU,WAAU,eAAA,CAAe;AAAA,UAAA;AAAA,QAAA;AAAA,MACrE;AAAA,IAAA;AAAA,EAAA;AAGN;AAGA,MAAMO,IAGF;AAAA,EACF,IAAI;AAAA,IACF,SAAS;AAAA,IACT,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,YAAY;AAAA,EAAA;AAAA,EAEd,IAAI;AAAA,IACF,SAAS;AAAA,IACT,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,YAAY;AAAA,EAAA;AAAA,EAEd,MAAM;AAAA,IACJ,SAAS;AAAA,IACT,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,YAAY;AAAA,EAAA;AAAA,EAEd,IAAI;AAAA,IACF,SAAS;AAAA,IACT,UAAU;AAAA,IACV,YAAY;AAAA,IACZ,YAAY;AAAA,EAAA;AAEhB;AAEA,SAASC,EAAa7B,GAAiC;AACrD,QAAMD,IAAOqB,EAAW9B,CAAmB,GACrC+B,IAAaO,EAAuB7B,CAAI;AAE9C,SACE,gBAAAuB;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,WAAWL;AAAA,QACT;AAAA,QACA;AAAA,QACAjB,EAAM;AAAA,MAAA;AAAA,MAGR,UAAA;AAAA,QAAA,gBAAAE;AAAA,UAAC4B;AAAAA,UAAA;AAAA,YACE,GAAG9B;AAAA,YACJ,WAAWiB;AAAA,cACTO,EAAc,EAAE,MAAAzB,GAAM;AAAA,cACtB;AAAA,cACAsB,EAAW;AAAA,cACX;AAAA,YAAA;AAAA,UACF;AAAA,QAAA;AAAA,QAGF,gBAAAnB;AAAA,UAAC6B;AAAAA,UAAA;AAAA,YACC,WAAWd;AAAA,cACT;AAAA,cACA;AAAA,cACAI,EAAW;AAAA,YAAA;AAAA,YAGb,UAAA,gBAAAnB,EAAC8B,GAAA,EAAM,MAAMX,EAAW,SAAA,CAAU;AAAA,UAAA;AAAA,QAAA;AAAA,QAGpC,gBAAAnB,EAACqB,GAAA,EAAqB,WAAU,OAC9B,UAAA,gBAAArB;AAAA,UAACwB;AAAAA,UAAA;AAAA,YACC,WAAWT;AAAA,cACT;AAAA,cACAI,EAAW;AAAA,YAAA;AAAA,YAGb,4BAACM,GAAA,EAAc,MAAMN,EAAW,UAAU,WAAU,eAAA,CAAe;AAAA,UAAA;AAAA,QAAA,EACrE,CACF;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN;AAEA,SAASY,EAAK,EAAE,UAAAnC,GAAU,GAAGE,KAAkC;AAC7D,SACE,gBAAAsB;AAAA,IAACY;AAAAA,IAAA;AAAA,MACE,GAAGlC;AAAA,MACJ,WAAU;AAAA,MAEV,UAAA;AAAA,QAAA,gBAAAE,EAAC,OAAA,EAAI,WAAU,eAAe,UAAAJ,EAAA,CAAS;AAAA,QACvC,gBAAAI,EAACiC,GAAA,EAA2B,WAAU,iCACpC,UAAA,gBAAAjC,EAACkC,KAAU,EAAA,CACb;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN;AAEA,SAASC,EAAMrC,GAAiC;AAC9C,SACE,gBAAAE;AAAA,IAACoC;AAAAA,IAAA;AAAA,MACE,GAAGtC;AAAA,MACJ,WAAWiB;AAAA,QACT;AAAA,MAAA;AAAA,MAEF,UAAUjB,EAAM,YAAY;AAAA,IAAA;AAAA,EAAA;AAGlC;AAEA,SAASuC,EAAMvC,GAAiC;AAC9C,SACE,gBAAAE;AAAA,IAAC4B;AAAAA,IAAA;AAAA,MACE,GAAG9B;AAAA,MACJ,WAAWiB;AAAA,QACTO,EAAA;AAAA,QACA;AAAA,QACAxB,EAAM;AAAA,MAAA;AAAA,IACR;AAAA,EAAA;AAGN;AAEA,SAASwC,EAAK;AAAA,EACZ,WAAAlC;AAAA,EACA,GAAGN;AACL,GAAqD;AACnD,SACE,gBAAAE;AAAA,IAACuC;AAAAA,IAAA;AAAA,MACE,GAAGzC;AAAA,MACJ,WAAWiB;AAAA,QACT;AAAA,QACAX;AAAA,MAAA;AAAA,IACF;AAAA,EAAA;AAGN;AAEA,SAASoC,GAAW1C,GAAsC;AACxD,SACE,gBAAAE;AAAA,IAACyC;AAAAA,IAAA;AAAA,MACE,GAAG3C;AAAA,MACJ,WAAWiB;AAAA,QACT;AAAA,QACAjB,EAAM;AAAA,MAAA;AAAA,IACR;AAAA,EAAA;AAGN;AAEA,SAAS4C,GAAM5C,GAAiC;AAC9C,SACE,gBAAAE;AAAA,IAAC2C;AAAAA,IAAA;AAAA,MACE,GAAG7C;AAAA,MACJ,WAAU;AAAA,IAAA;AAAA,EAAA;AAGhB;AAEA,SAAS8C,EAAK9C,GAAgC;AAC5C,SACE,gBAAAsB;AAAA,IAACyB;AAAAA,IAAA;AAAA,MACE,GAAG/C;AAAA,MACJ,WAAWiB;AAAA,QACT;AAAA;AAAA,QACA;AAAA;AAAA,QACA;AAAA;AAAA,QACA;AAAA;AAAA,QACA;AAAA;AAAA,MAAA;AAAA,MAGD,UAAA;AAAA,QAAAjB,EAAM;AAAA,QACP,gBAAAE;AAAA,UAAC8C;AAAAA,UAAA;AAAA,YACC,WAAW/B;AAAA,cACT;AAAA,cACA;AAAA,YAAA;AAAA,YAGF,UAAA,gBAAAf,EAAC8B,GAAA,EAAM,MAAM,GAAA,CAAI;AAAA,UAAA;AAAA,QAAA;AAAA,MACnB;AAAA,IAAA;AAAA,EAAA;AAGN;AAGA,MAAMiB,KAAoD;AAAA,EACxD,IAAI;AAAA,EACJ,IAAI;AAAA,EACJ,MAAM;AAAA,EACN,IAAI;AACN;AAEA,SAASC,EAAoC;AAAA,EAC3C,aAAAC;AAAA,EACA,YAAAC;AAAA,EACA,WAAA9C;AAAA,EACA,WAAA+C,IAAY;AAAA,EACZ,OAAOC;AACT,GAOG;AACD,QAAMvD,IAAOqB,EAAW9B,CAAmB,GAErCiE,IAAgBD;AAEtB,SACE,gBAAAhC;AAAA,IAACkC;AAAAA,IAAA;AAAA,MACC,WAAWvC;AAAA,QACTO,EAAc,EAAE,MAAAzB,GAAM;AAAA,QACtB;AAAA,QACA;AAAA,QACAkD,GAAgBlD,CAAI;AAAA,QACpB;AAAA,QACA;AAAA,QACAO;AAAA,MAAA;AAAA,MAGD,UAAA;AAAA,QAAA+C,MAAc,SACb,gBAAAnD;AAAA,UAAC4B;AAAAA,UAAA;AAAA,YACC,aAAAqB;AAAA,YACA,WAAU;AAAA,UAAA;AAAA,QAAA;AAAA,QAId,gBAAA7B,EAAC,OAAA,EAAI,WAAU,8CAEZ,UAAA;AAAA,UAAAiC,MAAkB,UACjBA,EAAc,SAAS,KACvBA,EAAc,IAAI,CAACE,MAASL,EAAWK,CAAI,CAAC;AAAA,UAE9C,gBAAAvD,EAACuB,GAAA,EACE,WAACiC,MAEIH,MAAkB,SAAkB,OAEtC,gBAAArD,EAACyD,KACE,UAAAD,EAAc,IAAI,CAACD,MAASL,EAAWK,CAAI,CAAC,EAAA,CAC/C,GAGN;AAAA,UACCJ,MAAc,WACb,gBAAAnD;AAAA,YAAC4B;AAAAA,YAAA;AAAA,cACC,aAAAqB;AAAA,cACA,WAAU;AAAA,YAAA;AAAA,UAAA;AAAA,QACZ,EAAA,CAEJ;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN;AAEA3D,EAAK,cAAc;AACnBa,EAAQ,cAAc;AACtBc,EAAa,cAAc;AAC3BU,EAAa,cAAc;AAC3BI,EAAK,cAAc;AACnBa,EAAK,cAAc;AACnBI,EAAyB,cAAc;AAuBhC,MAAMU,KAAW,OAAO,OAAOpE,GAAM;AAAA;AAAA,EAE1C,SAAAa;AAAA,EACA,cAAAc;AAAA,EACA,cAAAU;AAAA,EACA,0BAAAqB;AAAA;AAAA,EAGA,MAAAJ;AAAA,EACA,MAAAb;AAAA;AAAA,EAGA,OAAAM;AAAA,EACA,OAAAF;AAAA,EACA,YAAAK;AAAA,EACA,OAAAE;AAAA;AAAA,EAGA,MAAAJ;AAAA;AAAA,EAGA,YAAYqB;AACd,CAAC;"}
|
package/dist/chunks/{command-palette-b31nq4wk7o7gx4sa.js → command-palette-kenx2bbdzd4kpx36.js}
RENAMED
|
@@ -1,35 +1,37 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { jsx as e, jsxs as
|
|
2
|
+
import { jsx as e, jsxs as g, Fragment as E } from "react/jsx-runtime";
|
|
3
3
|
import { forwardRef as K, useContext as N, createContext as v, useCallback as b, useRef as T } from "react";
|
|
4
4
|
import { CaretRightIcon as M, ArrowSquareOutIcon as H, ArrowRightIcon as _, MagnifyingGlassIcon as F } from "@phosphor-icons/react";
|
|
5
|
-
import { S as G } from "./surface-
|
|
5
|
+
import { S as G } from "./surface-blo81kgy9g0sexgm.js";
|
|
6
6
|
import { L as j } from "./loader-m5wfmqwgucrr4i5v.js";
|
|
7
7
|
import { c as m } from "./cn-ct4n7r74mh8y0f48.js";
|
|
8
|
-
import {
|
|
8
|
+
import { u as U } from "./portal-provider-hwmkdmkpvct0cb76.js";
|
|
9
|
+
import { a5 as O, a7 as V, aa as $, ac as w, a9 as q, a8 as z, ab as B, bm as S, ap as J, au as Q, av as W, aw as X } from "./vendor-base-ui-n30qblevnpk9cc5c.js";
|
|
9
10
|
const C = v({});
|
|
10
11
|
function I({
|
|
11
12
|
open: t,
|
|
12
13
|
onOpenChange: n,
|
|
13
|
-
onBackdropClick:
|
|
14
|
-
children:
|
|
14
|
+
onBackdropClick: o,
|
|
15
|
+
children: i,
|
|
16
|
+
container: s
|
|
15
17
|
}) {
|
|
16
|
-
const s = (
|
|
17
|
-
|
|
18
|
-
},
|
|
18
|
+
const u = U(), d = s ?? u ?? void 0, r = (c) => {
|
|
19
|
+
o ? o(c) : n(!1);
|
|
20
|
+
}, a = b(() => {
|
|
19
21
|
n(!1);
|
|
20
22
|
}, [n]);
|
|
21
|
-
return /* @__PURE__ */ e(
|
|
23
|
+
return /* @__PURE__ */ e(J, { open: t, onOpenChange: n, modal: !0, children: /* @__PURE__ */ g(Q, { container: d, children: [
|
|
22
24
|
/* @__PURE__ */ e(
|
|
23
|
-
|
|
25
|
+
W,
|
|
24
26
|
{
|
|
25
27
|
className: "fixed inset-0 bg-kumo-overlay opacity-80 transition-all duration-150 data-[ending-style]:opacity-0 data-[starting-style]:opacity-0",
|
|
26
|
-
onClick:
|
|
28
|
+
onClick: r
|
|
27
29
|
}
|
|
28
30
|
),
|
|
29
31
|
/* @__PURE__ */ e(
|
|
30
32
|
G,
|
|
31
33
|
{
|
|
32
|
-
|
|
34
|
+
render: /* @__PURE__ */ e(X, {}),
|
|
33
35
|
className: m(
|
|
34
36
|
"fixed top-[10vh] left-1/2 w-full max-w-2xl -translate-x-1/2",
|
|
35
37
|
"overflow-hidden rounded-lg",
|
|
@@ -39,55 +41,57 @@ function I({
|
|
|
39
41
|
transitionProperty: "scale, opacity",
|
|
40
42
|
transitionTimingFunction: "var(--default-transition-timing-function)"
|
|
41
43
|
},
|
|
42
|
-
children: /* @__PURE__ */ e(C.Provider, { value: { onClose:
|
|
44
|
+
children: /* @__PURE__ */ e(C.Provider, { value: { onClose: a }, children: i })
|
|
43
45
|
}
|
|
44
46
|
)
|
|
45
47
|
] }) });
|
|
46
48
|
}
|
|
47
|
-
function
|
|
49
|
+
function Y({
|
|
48
50
|
open: t,
|
|
49
51
|
onOpenChange: n,
|
|
50
|
-
onBackdropClick:
|
|
51
|
-
children:
|
|
52
|
+
onBackdropClick: o,
|
|
53
|
+
children: i,
|
|
52
54
|
items: s,
|
|
53
|
-
value:
|
|
54
|
-
onValueChange:
|
|
55
|
-
onItemHighlighted:
|
|
56
|
-
itemToStringValue:
|
|
57
|
-
filter:
|
|
58
|
-
onSelect:
|
|
59
|
-
getSelectableItems: f
|
|
55
|
+
value: u,
|
|
56
|
+
onValueChange: d,
|
|
57
|
+
onItemHighlighted: r,
|
|
58
|
+
itemToStringValue: a,
|
|
59
|
+
filter: c,
|
|
60
|
+
onSelect: l,
|
|
61
|
+
getSelectableItems: f,
|
|
62
|
+
container: h
|
|
60
63
|
}) {
|
|
61
64
|
return /* @__PURE__ */ e(
|
|
62
65
|
I,
|
|
63
66
|
{
|
|
64
67
|
open: t,
|
|
65
68
|
onOpenChange: n,
|
|
66
|
-
onBackdropClick:
|
|
69
|
+
onBackdropClick: o,
|
|
70
|
+
container: h,
|
|
67
71
|
children: /* @__PURE__ */ e(
|
|
68
|
-
|
|
72
|
+
A,
|
|
69
73
|
{
|
|
70
74
|
items: s,
|
|
71
|
-
value:
|
|
72
|
-
onValueChange:
|
|
73
|
-
onItemHighlighted:
|
|
74
|
-
itemToStringValue:
|
|
75
|
-
filter:
|
|
75
|
+
value: u,
|
|
76
|
+
onValueChange: d,
|
|
77
|
+
onItemHighlighted: r,
|
|
78
|
+
itemToStringValue: a,
|
|
79
|
+
filter: c,
|
|
76
80
|
open: t,
|
|
77
|
-
onSelect:
|
|
81
|
+
onSelect: l,
|
|
78
82
|
getSelectableItems: f,
|
|
79
|
-
children:
|
|
83
|
+
children: i
|
|
80
84
|
}
|
|
81
85
|
)
|
|
82
86
|
}
|
|
83
87
|
);
|
|
84
88
|
}
|
|
85
|
-
function
|
|
89
|
+
function Z({
|
|
86
90
|
children: t,
|
|
87
91
|
leading: n,
|
|
88
|
-
trailing:
|
|
92
|
+
trailing: o
|
|
89
93
|
}) {
|
|
90
|
-
return /* @__PURE__ */
|
|
94
|
+
return /* @__PURE__ */ g("div", { className: "flex items-center gap-3 bg-kumo-base px-4 py-3", children: [
|
|
91
95
|
n ?? /* @__PURE__ */ e(
|
|
92
96
|
F,
|
|
93
97
|
{
|
|
@@ -96,36 +100,36 @@ function Y({
|
|
|
96
100
|
}
|
|
97
101
|
),
|
|
98
102
|
t,
|
|
99
|
-
|
|
103
|
+
o
|
|
100
104
|
] });
|
|
101
105
|
}
|
|
102
|
-
const D = K(function({ children: n, className:
|
|
106
|
+
const D = K(function({ children: n, className: o }, i) {
|
|
103
107
|
return /* @__PURE__ */ e(
|
|
104
108
|
"div",
|
|
105
109
|
{
|
|
106
|
-
ref:
|
|
110
|
+
ref: i,
|
|
107
111
|
className: m(
|
|
108
112
|
"min-h-0 flex-1 overflow-y-auto rounded-b-lg bg-kumo-base px-2 py-2 ring-1 ring-kumo-line",
|
|
109
|
-
|
|
113
|
+
o
|
|
110
114
|
),
|
|
111
115
|
children: n
|
|
112
116
|
}
|
|
113
117
|
);
|
|
114
118
|
});
|
|
115
119
|
D.displayName = "CommandPalette.List";
|
|
116
|
-
function
|
|
120
|
+
function ee({
|
|
117
121
|
children: t,
|
|
118
122
|
className: n,
|
|
119
|
-
...
|
|
123
|
+
...o
|
|
120
124
|
}) {
|
|
121
|
-
return /* @__PURE__ */ e(
|
|
125
|
+
return /* @__PURE__ */ e(z, { className: m("space-y-0.5", n), ...o, children: t });
|
|
122
126
|
}
|
|
123
|
-
function
|
|
127
|
+
function te({
|
|
124
128
|
children: t,
|
|
125
129
|
className: n
|
|
126
130
|
}) {
|
|
127
131
|
return /* @__PURE__ */ e(
|
|
128
|
-
|
|
132
|
+
q,
|
|
129
133
|
{
|
|
130
134
|
className: m(
|
|
131
135
|
"mb-2 px-2 pt-1 text-xs font-semibold text-kumo-strong",
|
|
@@ -135,11 +139,11 @@ function ee({
|
|
|
135
139
|
}
|
|
136
140
|
);
|
|
137
141
|
}
|
|
138
|
-
function
|
|
142
|
+
function ne({
|
|
139
143
|
value: t,
|
|
140
144
|
disabled: n,
|
|
141
|
-
children:
|
|
142
|
-
className:
|
|
145
|
+
children: o,
|
|
146
|
+
className: i,
|
|
143
147
|
onClick: s
|
|
144
148
|
}) {
|
|
145
149
|
return /* @__PURE__ */ e(
|
|
@@ -153,80 +157,80 @@ function te({
|
|
|
153
157
|
"cursor-pointer data-[highlighted]:bg-kumo-overlay",
|
|
154
158
|
"rounded-lg",
|
|
155
159
|
n && "cursor-default opacity-50",
|
|
156
|
-
|
|
160
|
+
i
|
|
157
161
|
),
|
|
158
|
-
children:
|
|
162
|
+
children: o
|
|
159
163
|
}
|
|
160
164
|
);
|
|
161
165
|
}
|
|
162
|
-
function
|
|
163
|
-
return /* @__PURE__ */ e(
|
|
166
|
+
function oe({ children: t }) {
|
|
167
|
+
return /* @__PURE__ */ e($, { children: /* @__PURE__ */ e("div", { className: "p-8 text-center", children: /* @__PURE__ */ e("p", { className: "text-kumo-strong", children: t ?? "No results found" }) }) });
|
|
164
168
|
}
|
|
165
169
|
function ae({ children: t }) {
|
|
166
170
|
return /* @__PURE__ */ e("div", { className: "flex items-center justify-center p-8", children: t ?? /* @__PURE__ */ e(j, { size: 24 }) });
|
|
167
171
|
}
|
|
168
|
-
function
|
|
172
|
+
function se({ children: t }) {
|
|
169
173
|
return /* @__PURE__ */ e("div", { className: "flex items-center justify-between rounded-b-lg bg-kumo-elevated px-4 py-3 text-xs text-kumo-strong", children: t });
|
|
170
174
|
}
|
|
171
175
|
function y({
|
|
172
176
|
text: t,
|
|
173
177
|
highlights: n,
|
|
174
|
-
className:
|
|
178
|
+
className: o
|
|
175
179
|
}) {
|
|
176
180
|
if (!n || n.length === 0)
|
|
177
|
-
return /* @__PURE__ */ e("span", { className:
|
|
178
|
-
const
|
|
179
|
-
for (const
|
|
180
|
-
const
|
|
181
|
-
|
|
181
|
+
return /* @__PURE__ */ e("span", { className: o, children: t });
|
|
182
|
+
const i = [...n].sort((r, a) => r[0] - a[0]), s = [];
|
|
183
|
+
for (const r of i) {
|
|
184
|
+
const a = s[s.length - 1];
|
|
185
|
+
a && r[0] <= a[1] + 1 ? a[1] = Math.max(a[1], r[1]) : s.push([...r]);
|
|
182
186
|
}
|
|
183
|
-
const
|
|
184
|
-
let
|
|
185
|
-
return s.forEach((
|
|
186
|
-
const [
|
|
187
|
-
|
|
187
|
+
const u = [];
|
|
188
|
+
let d = 0;
|
|
189
|
+
return s.forEach((r, a) => {
|
|
190
|
+
const [c, l] = r;
|
|
191
|
+
c > d && u.push(/* @__PURE__ */ e("span", { children: t.slice(d, c) }, `text-${a}`)), u.push(
|
|
188
192
|
/* @__PURE__ */ e(
|
|
189
193
|
"mark",
|
|
190
194
|
{
|
|
191
195
|
className: "rounded-sm bg-kumo-warning/50 text-kumo-default",
|
|
192
|
-
children: t.slice(
|
|
196
|
+
children: t.slice(c, l + 1)
|
|
193
197
|
},
|
|
194
|
-
`highlight-${
|
|
198
|
+
`highlight-${a}`
|
|
195
199
|
)
|
|
196
|
-
),
|
|
197
|
-
}),
|
|
200
|
+
), d = l + 1;
|
|
201
|
+
}), d < t.length && u.push(/* @__PURE__ */ e("span", { children: t.slice(d) }, "text-end")), /* @__PURE__ */ e("span", { className: o, children: u });
|
|
198
202
|
}
|
|
199
|
-
function
|
|
203
|
+
function re({
|
|
200
204
|
title: t,
|
|
201
205
|
breadcrumbs: n,
|
|
202
|
-
titleHighlights:
|
|
203
|
-
breadcrumbHighlights:
|
|
206
|
+
titleHighlights: o,
|
|
207
|
+
breadcrumbHighlights: i,
|
|
204
208
|
description: s,
|
|
205
|
-
icon:
|
|
206
|
-
value:
|
|
207
|
-
onClick:
|
|
208
|
-
showArrow:
|
|
209
|
-
external:
|
|
210
|
-
nonInteractive:
|
|
209
|
+
icon: u,
|
|
210
|
+
value: d,
|
|
211
|
+
onClick: r,
|
|
212
|
+
showArrow: a = !0,
|
|
213
|
+
external: c = !1,
|
|
214
|
+
nonInteractive: l = !1
|
|
211
215
|
}) {
|
|
212
|
-
return /* @__PURE__ */
|
|
216
|
+
return /* @__PURE__ */ g(
|
|
213
217
|
w,
|
|
214
218
|
{
|
|
215
|
-
value:
|
|
216
|
-
onClick:
|
|
219
|
+
value: d,
|
|
220
|
+
onClick: l ? void 0 : (f) => r(f),
|
|
217
221
|
className: m(
|
|
218
222
|
"group flex w-full items-center gap-3 rounded-lg px-2 py-1.5 text-left transition-colors",
|
|
219
|
-
|
|
223
|
+
l ? "cursor-default" : "cursor-pointer data-[highlighted]:bg-kumo-overlay"
|
|
220
224
|
),
|
|
221
225
|
children: [
|
|
222
|
-
|
|
223
|
-
/* @__PURE__ */ e("div", { className: "min-w-0 flex-1", children: /* @__PURE__ */
|
|
224
|
-
n?.map((f,
|
|
226
|
+
u && /* @__PURE__ */ e("div", { className: "flex flex-shrink-0 items-center text-kumo-subtle", children: u }),
|
|
227
|
+
/* @__PURE__ */ e("div", { className: "min-w-0 flex-1", children: /* @__PURE__ */ g("div", { className: "flex items-center gap-2 truncate", children: [
|
|
228
|
+
n?.map((f, h) => /* @__PURE__ */ g("span", { className: "flex items-center gap-2", children: [
|
|
225
229
|
/* @__PURE__ */ e(
|
|
226
230
|
y,
|
|
227
231
|
{
|
|
228
232
|
text: f,
|
|
229
|
-
highlights:
|
|
233
|
+
highlights: i?.[h],
|
|
230
234
|
className: "text-base text-kumo-default"
|
|
231
235
|
}
|
|
232
236
|
),
|
|
@@ -237,27 +241,27 @@ function se({
|
|
|
237
241
|
weight: "bold"
|
|
238
242
|
}
|
|
239
243
|
)
|
|
240
|
-
] },
|
|
244
|
+
] }, h)),
|
|
241
245
|
/* @__PURE__ */ e(
|
|
242
246
|
y,
|
|
243
247
|
{
|
|
244
248
|
text: t,
|
|
245
|
-
highlights:
|
|
249
|
+
highlights: o,
|
|
246
250
|
className: "text-base text-kumo-default"
|
|
247
251
|
}
|
|
248
252
|
),
|
|
249
|
-
|
|
250
|
-
s && /* @__PURE__ */
|
|
253
|
+
c && /* @__PURE__ */ e(H, { className: "h-3.5 w-3.5 flex-shrink-0 text-kumo-subtle" }),
|
|
254
|
+
s && /* @__PURE__ */ g(E, { children: [
|
|
251
255
|
/* @__PURE__ */ e("span", { className: "text-kumo-strong", children: "—" }),
|
|
252
256
|
/* @__PURE__ */ e("span", { className: "truncate text-sm text-kumo-strong", children: s })
|
|
253
257
|
] })
|
|
254
258
|
] }) }),
|
|
255
|
-
|
|
259
|
+
a && !c && !l && /* @__PURE__ */ e(_, { className: "h-4 w-4 flex-shrink-0 text-kumo-subtle opacity-0 transition-opacity group-data-[highlighted]:opacity-100" })
|
|
256
260
|
]
|
|
257
261
|
}
|
|
258
262
|
);
|
|
259
263
|
}
|
|
260
|
-
function
|
|
264
|
+
function le({
|
|
261
265
|
children: t,
|
|
262
266
|
className: n
|
|
263
267
|
}) {
|
|
@@ -272,128 +276,128 @@ function re({
|
|
|
272
276
|
}
|
|
273
277
|
);
|
|
274
278
|
}
|
|
275
|
-
const
|
|
276
|
-
function
|
|
279
|
+
const P = v({}), ie = () => !0;
|
|
280
|
+
function A({
|
|
277
281
|
children: t,
|
|
278
282
|
items: n,
|
|
279
|
-
value:
|
|
280
|
-
onValueChange:
|
|
283
|
+
value: o,
|
|
284
|
+
onValueChange: i,
|
|
281
285
|
onItemHighlighted: s,
|
|
282
|
-
itemToStringValue:
|
|
283
|
-
filter:
|
|
284
|
-
open:
|
|
285
|
-
className:
|
|
286
|
-
onSelect:
|
|
287
|
-
getSelectableItems:
|
|
286
|
+
itemToStringValue: u,
|
|
287
|
+
filter: d = ie,
|
|
288
|
+
open: r = !0,
|
|
289
|
+
className: a,
|
|
290
|
+
onSelect: c,
|
|
291
|
+
getSelectableItems: l
|
|
288
292
|
}) {
|
|
289
|
-
const f = T(-1),
|
|
290
|
-
(
|
|
291
|
-
f.current = x.index, s?.(
|
|
293
|
+
const f = T(-1), h = b(
|
|
294
|
+
(p, x) => {
|
|
295
|
+
f.current = x.index, s?.(p, x);
|
|
292
296
|
},
|
|
293
297
|
[s]
|
|
294
|
-
),
|
|
295
|
-
(
|
|
296
|
-
const x =
|
|
297
|
-
if (x && R &&
|
|
298
|
-
const k =
|
|
299
|
-
k !== void 0 && (
|
|
298
|
+
), L = b(
|
|
299
|
+
(p) => {
|
|
300
|
+
const x = p.key === "Enter", R = p.metaKey || p.ctrlKey;
|
|
301
|
+
if (x && R && c && l) {
|
|
302
|
+
const k = l(n)[f.current];
|
|
303
|
+
k !== void 0 && (p.preventDefault(), c(k, { newTab: !0 }));
|
|
300
304
|
}
|
|
301
305
|
},
|
|
302
|
-
[n,
|
|
306
|
+
[n, c, l]
|
|
303
307
|
);
|
|
304
|
-
return /* @__PURE__ */ e(
|
|
305
|
-
|
|
308
|
+
return /* @__PURE__ */ e(le, { className: a, children: /* @__PURE__ */ e(
|
|
309
|
+
S,
|
|
306
310
|
{
|
|
307
311
|
items: n,
|
|
308
|
-
value:
|
|
309
|
-
onValueChange:
|
|
310
|
-
onItemHighlighted:
|
|
311
|
-
itemToStringValue:
|
|
312
|
-
filter:
|
|
312
|
+
value: o,
|
|
313
|
+
onValueChange: i,
|
|
314
|
+
onItemHighlighted: h,
|
|
315
|
+
itemToStringValue: u,
|
|
316
|
+
filter: d,
|
|
313
317
|
autoHighlight: "always",
|
|
314
318
|
keepHighlight: !0,
|
|
315
|
-
open:
|
|
316
|
-
children: /* @__PURE__ */ e(
|
|
319
|
+
open: r,
|
|
320
|
+
children: /* @__PURE__ */ e(P.Provider, { value: { onInputKeyDown: L }, children: t })
|
|
317
321
|
}
|
|
318
322
|
) });
|
|
319
323
|
}
|
|
320
|
-
function
|
|
324
|
+
function ce({
|
|
321
325
|
autoFocus: t = !0,
|
|
322
326
|
placeholder: n,
|
|
323
|
-
className:
|
|
324
|
-
onKeyDown:
|
|
327
|
+
className: o,
|
|
328
|
+
onKeyDown: i,
|
|
325
329
|
leading: s,
|
|
326
|
-
trailing:
|
|
327
|
-
...
|
|
330
|
+
trailing: u,
|
|
331
|
+
...d
|
|
328
332
|
}) {
|
|
329
|
-
const { onInputKeyDown:
|
|
330
|
-
(
|
|
331
|
-
if (
|
|
332
|
-
if (
|
|
333
|
-
|
|
333
|
+
const { onInputKeyDown: r } = N(P), { onClose: a } = N(C), c = b(
|
|
334
|
+
(l) => {
|
|
335
|
+
if (i?.(l), !l.defaultPrevented) {
|
|
336
|
+
if (l.key === "Escape" && a) {
|
|
337
|
+
l.preventDefault(), a();
|
|
334
338
|
return;
|
|
335
339
|
}
|
|
336
|
-
|
|
340
|
+
r?.(l);
|
|
337
341
|
}
|
|
338
342
|
},
|
|
339
|
-
[
|
|
343
|
+
[r, i, a]
|
|
340
344
|
);
|
|
341
|
-
return /* @__PURE__ */ e(
|
|
342
|
-
|
|
345
|
+
return /* @__PURE__ */ e(Z, { leading: s, trailing: u, children: /* @__PURE__ */ e(
|
|
346
|
+
B,
|
|
343
347
|
{
|
|
344
348
|
placeholder: n,
|
|
345
349
|
className: m(
|
|
346
350
|
"flex-1 border-none bg-transparent text-base kumo-input-placeholder",
|
|
347
351
|
"outline-none focus-visible:outline-none",
|
|
348
|
-
|
|
352
|
+
o
|
|
349
353
|
),
|
|
350
|
-
onKeyDown:
|
|
354
|
+
onKeyDown: c,
|
|
351
355
|
autoFocus: t,
|
|
352
|
-
...
|
|
356
|
+
...d
|
|
353
357
|
}
|
|
354
358
|
) });
|
|
355
359
|
}
|
|
356
|
-
function
|
|
360
|
+
function ue({
|
|
357
361
|
children: t,
|
|
358
362
|
className: n
|
|
359
363
|
}) {
|
|
360
|
-
return /* @__PURE__ */ e(
|
|
364
|
+
return /* @__PURE__ */ e(V, { className: m("space-y-3", n), children: t });
|
|
361
365
|
}
|
|
362
|
-
const
|
|
366
|
+
const de = O, Ne = {}, ve = {}, we = {
|
|
363
367
|
/** Modal dialog wrapper - use with Panel for content that can swap */
|
|
364
368
|
Dialog: I,
|
|
365
369
|
/** Dialog + Panel combined - for simple single-view command palettes */
|
|
366
|
-
Root:
|
|
370
|
+
Root: Y,
|
|
367
371
|
/** Autocomplete panel without dialog - use inside Dialog for swappable content */
|
|
368
|
-
Panel:
|
|
372
|
+
Panel: A,
|
|
369
373
|
/** Input for use inside Panel */
|
|
370
|
-
Input:
|
|
374
|
+
Input: ce,
|
|
371
375
|
/** Scrollable results container */
|
|
372
376
|
List: D,
|
|
373
377
|
/** Category grouping */
|
|
374
|
-
Group:
|
|
378
|
+
Group: ee,
|
|
375
379
|
/** Section header text */
|
|
376
|
-
GroupLabel:
|
|
380
|
+
GroupLabel: te,
|
|
377
381
|
/** Basic item */
|
|
378
|
-
Item:
|
|
382
|
+
Item: ne,
|
|
379
383
|
/** Rich item with breadcrumbs, highlights, icons */
|
|
380
|
-
ResultItem:
|
|
384
|
+
ResultItem: re,
|
|
381
385
|
/** Text with highlighted portions */
|
|
382
386
|
HighlightedText: y,
|
|
383
387
|
/** Empty state */
|
|
384
|
-
Empty:
|
|
388
|
+
Empty: oe,
|
|
385
389
|
/** Loading state */
|
|
386
390
|
Loading: ae,
|
|
387
391
|
/** Footer for keyboard hints */
|
|
388
|
-
Footer:
|
|
392
|
+
Footer: se,
|
|
389
393
|
/** Render prop iterator for groups */
|
|
390
|
-
Results:
|
|
394
|
+
Results: ue,
|
|
391
395
|
/** Render prop iterator for items within a group */
|
|
392
|
-
Items:
|
|
396
|
+
Items: de
|
|
393
397
|
};
|
|
394
398
|
export {
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
399
|
+
we as C,
|
|
400
|
+
Ne as K,
|
|
401
|
+
ve as a
|
|
398
402
|
};
|
|
399
|
-
//# sourceMappingURL=command-palette-
|
|
403
|
+
//# sourceMappingURL=command-palette-kenx2bbdzd4kpx36.js.map
|