@stridge/noctis 1.0.0-beta.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/README.md +60 -0
- package/dist/_virtual/_rolldown/runtime.js +27 -0
- package/dist/components/accordion/accordion.context.js +15 -0
- package/dist/components/accordion/accordion.d.ts +136 -0
- package/dist/components/accordion/accordion.js +132 -0
- package/dist/components/accordion/accordion.props.d.ts +45 -0
- package/dist/components/accordion/accordion.props.js +53 -0
- package/dist/components/accordion/accordion.slots.d.ts +24 -0
- package/dist/components/accordion/accordion.slots.js +39 -0
- package/dist/components/accordion/accordion.types.d.ts +11 -0
- package/dist/components/accordion/index.d.ts +3 -0
- package/dist/components/alert-dialog/alert-dialog.context.js +16 -0
- package/dist/components/alert-dialog/alert-dialog.d.ts +324 -0
- package/dist/components/alert-dialog/alert-dialog.js +279 -0
- package/dist/components/alert-dialog/alert-dialog.props.d.ts +85 -0
- package/dist/components/alert-dialog/alert-dialog.props.js +84 -0
- package/dist/components/alert-dialog/alert-dialog.slots.d.ts +29 -0
- package/dist/components/alert-dialog/alert-dialog.slots.js +52 -0
- package/dist/components/alert-dialog/alert-dialog.types.d.ts +22 -0
- package/dist/components/alert-dialog/index.d.ts +3 -0
- package/dist/components/autocomplete/autocomplete.context.d.ts +5 -0
- package/dist/components/autocomplete/autocomplete.context.js +13 -0
- package/dist/components/autocomplete/autocomplete.d.ts +364 -0
- package/dist/components/autocomplete/autocomplete.js +373 -0
- package/dist/components/autocomplete/autocomplete.props.d.ts +83 -0
- package/dist/components/autocomplete/autocomplete.props.js +63 -0
- package/dist/components/autocomplete/autocomplete.slots.d.ts +32 -0
- package/dist/components/autocomplete/autocomplete.slots.js +61 -0
- package/dist/components/autocomplete/index.d.ts +3 -0
- package/dist/components/avatar/avatar.context.js +21 -0
- package/dist/components/avatar/avatar.d.ts +235 -0
- package/dist/components/avatar/avatar.js +208 -0
- package/dist/components/avatar/avatar.props.d.ts +86 -0
- package/dist/components/avatar/avatar.props.js +78 -0
- package/dist/components/avatar/avatar.slots.d.ts +35 -0
- package/dist/components/avatar/avatar.slots.js +49 -0
- package/dist/components/avatar/avatar.types.d.ts +28 -0
- package/dist/components/avatar/index.d.ts +2 -0
- package/dist/components/button/button.d.ts +91 -0
- package/dist/components/button/button.js +82 -0
- package/dist/components/button/button.props.d.ts +48 -0
- package/dist/components/button/button.props.js +25 -0
- package/dist/components/button/button.slots.d.ts +30 -0
- package/dist/components/button/button.slots.js +40 -0
- package/dist/components/button/button.types.d.ts +12 -0
- package/dist/components/button/index.d.ts +2 -0
- package/dist/components/button-group/button-group.context.js +15 -0
- package/dist/components/button-group/button-group.d.ts +60 -0
- package/dist/components/button-group/button-group.js +50 -0
- package/dist/components/button-group/button-group.props.d.ts +22 -0
- package/dist/components/button-group/button-group.props.js +33 -0
- package/dist/components/button-group/button-group.slots.d.ts +12 -0
- package/dist/components/button-group/button-group.slots.js +18 -0
- package/dist/components/button-group/index.d.ts +2 -0
- package/dist/components/checkbox/checkbox-group.d.ts +46 -0
- package/dist/components/checkbox/checkbox-group.js +31 -0
- package/dist/components/checkbox/checkbox.context.js +15 -0
- package/dist/components/checkbox/checkbox.d.ts +130 -0
- package/dist/components/checkbox/checkbox.js +117 -0
- package/dist/components/checkbox/checkbox.props.d.ts +84 -0
- package/dist/components/checkbox/checkbox.props.js +49 -0
- package/dist/components/checkbox/checkbox.slots.d.ts +27 -0
- package/dist/components/checkbox/checkbox.slots.js +40 -0
- package/dist/components/checkbox/index.d.ts +3 -0
- package/dist/components/code-block/brand-logo.d.ts +37 -0
- package/dist/components/code-block/brand-logo.js +212 -0
- package/dist/components/code-block/code-block.context.js +13 -0
- package/dist/components/code-block/code-block.d.ts +190 -0
- package/dist/components/code-block/code-block.js +267 -0
- package/dist/components/code-block/code-block.props.d.ts +42 -0
- package/dist/components/code-block/code-block.props.js +51 -0
- package/dist/components/code-block/code-block.slots.d.ts +16 -0
- package/dist/components/code-block/code-block.slots.js +31 -0
- package/dist/components/code-block/index.d.ts +3 -0
- package/dist/components/code-block/language-label.js +43 -0
- package/dist/components/collapsible/collapsible.context.js +18 -0
- package/dist/components/collapsible/collapsible.d.ts +167 -0
- package/dist/components/collapsible/collapsible.js +182 -0
- package/dist/components/collapsible/collapsible.props.d.ts +33 -0
- package/dist/components/collapsible/collapsible.props.js +44 -0
- package/dist/components/collapsible/collapsible.slots.d.ts +25 -0
- package/dist/components/collapsible/collapsible.slots.js +40 -0
- package/dist/components/collapsible/collapsible.types.d.ts +23 -0
- package/dist/components/collapsible/index.d.ts +2 -0
- package/dist/components/color-picker/area.d.ts +11 -0
- package/dist/components/color-picker/area.js +148 -0
- package/dist/components/color-picker/color-picker.d.ts +110 -0
- package/dist/components/color-picker/color-picker.js +149 -0
- package/dist/components/color-picker/color-picker.props.d.ts +69 -0
- package/dist/components/color-picker/color-picker.props.js +74 -0
- package/dist/components/color-picker/color-picker.slots.js +21 -0
- package/dist/components/color-picker/color.d.ts +18 -0
- package/dist/components/color-picker/color.js +224 -0
- package/dist/components/color-picker/context.d.ts +25 -0
- package/dist/components/color-picker/context.js +23 -0
- package/dist/components/color-picker/eyedropper.d.ts +14 -0
- package/dist/components/color-picker/eyedropper.js +50 -0
- package/dist/components/color-picker/format-tabs.d.ts +11 -0
- package/dist/components/color-picker/format-tabs.js +35 -0
- package/dist/components/color-picker/index.d.ts +3 -0
- package/dist/components/color-picker/inputs.d.ts +16 -0
- package/dist/components/color-picker/inputs.js +61 -0
- package/dist/components/color-picker/sliders.d.ts +17 -0
- package/dist/components/color-picker/sliders.js +94 -0
- package/dist/components/color-picker/store.js +48 -0
- package/dist/components/color-picker/swatch.d.ts +15 -0
- package/dist/components/color-picker/swatch.js +25 -0
- package/dist/components/color-swatch/color-swatch-picker.d.ts +87 -0
- package/dist/components/color-swatch/color-swatch-picker.js +73 -0
- package/dist/components/color-swatch/color-swatch.context.js +8 -0
- package/dist/components/color-swatch/color-swatch.d.ts +55 -0
- package/dist/components/color-swatch/color-swatch.js +48 -0
- package/dist/components/color-swatch/color-swatch.props.d.ts +54 -0
- package/dist/components/color-swatch/color-swatch.props.js +32 -0
- package/dist/components/color-swatch/color-swatch.slots.js +13 -0
- package/dist/components/color-swatch/index.d.ts +2 -0
- package/dist/components/combobox/combobox.context.js +13 -0
- package/dist/components/combobox/combobox.d.ts +328 -0
- package/dist/components/combobox/combobox.js +315 -0
- package/dist/components/combobox/combobox.props.d.ts +85 -0
- package/dist/components/combobox/combobox.props.js +79 -0
- package/dist/components/combobox/combobox.slots.d.ts +28 -0
- package/dist/components/combobox/combobox.slots.js +63 -0
- package/dist/components/combobox/index.d.ts +2 -0
- package/dist/components/context-menu/context-menu.d.ts +254 -0
- package/dist/components/context-menu/context-menu.js +150 -0
- package/dist/components/context-menu/context-menu.props.d.ts +22 -0
- package/dist/components/context-menu/context-menu.props.js +32 -0
- package/dist/components/context-menu/context-menu.slots.d.ts +24 -0
- package/dist/components/context-menu/context-menu.slots.js +42 -0
- package/dist/components/context-menu/index.d.ts +2 -0
- package/dist/components/copy-button/copy-button.d.ts +56 -0
- package/dist/components/copy-button/copy-button.js +88 -0
- package/dist/components/copy-button/copy-button.props.d.ts +27 -0
- package/dist/components/copy-button/copy-button.props.js +51 -0
- package/dist/components/copy-button/copy-button.slots.d.ts +20 -0
- package/dist/components/copy-button/copy-button.slots.js +36 -0
- package/dist/components/copy-button/index.d.ts +2 -0
- package/dist/components/dialog/dialog.context.js +15 -0
- package/dist/components/dialog/dialog.d.ts +299 -0
- package/dist/components/dialog/dialog.js +263 -0
- package/dist/components/dialog/dialog.props.d.ts +71 -0
- package/dist/components/dialog/dialog.props.js +75 -0
- package/dist/components/dialog/dialog.slots.d.ts +26 -0
- package/dist/components/dialog/dialog.slots.js +46 -0
- package/dist/components/dialog/dialog.types.d.ts +16 -0
- package/dist/components/dialog/index.d.ts +3 -0
- package/dist/components/field/field.d.ts +221 -0
- package/dist/components/field/field.js +192 -0
- package/dist/components/field/field.props.d.ts +66 -0
- package/dist/components/field/field.props.js +65 -0
- package/dist/components/field/field.slots.d.ts +35 -0
- package/dist/components/field/field.slots.js +54 -0
- package/dist/components/field/field.types.d.ts +5 -0
- package/dist/components/field/index.d.ts +4 -0
- package/dist/components/inline-code/index.d.ts +1 -0
- package/dist/components/inline-code/inline-code.d.ts +46 -0
- package/dist/components/inline-code/inline-code.js +36 -0
- package/dist/components/inline-code/inline-code.props.d.ts +17 -0
- package/dist/components/inline-code/inline-code.props.js +27 -0
- package/dist/components/inline-code/inline-code.slots.js +8 -0
- package/dist/components/input/index.d.ts +3 -0
- package/dist/components/input/input.context.js +13 -0
- package/dist/components/input/input.d.ts +161 -0
- package/dist/components/input/input.js +117 -0
- package/dist/components/input/input.props.d.ts +51 -0
- package/dist/components/input/input.props.js +50 -0
- package/dist/components/input/input.slots.d.ts +35 -0
- package/dist/components/input/input.slots.js +46 -0
- package/dist/components/input/input.types.d.ts +12 -0
- package/dist/components/kbd/glyphs.js +45 -0
- package/dist/components/kbd/index.d.ts +1 -0
- package/dist/components/kbd/kbd.d.ts +61 -0
- package/dist/components/kbd/kbd.js +233 -0
- package/dist/components/kbd/kbd.props.d.ts +30 -0
- package/dist/components/kbd/kbd.props.js +39 -0
- package/dist/components/kbd/kbd.slots.js +14 -0
- package/dist/components/kbd/use-apple-platform.js +25 -0
- package/dist/components/menu/index.d.ts +2 -0
- package/dist/components/menu/menu.d.ts +355 -0
- package/dist/components/menu/menu.js +263 -0
- package/dist/components/menu/menu.props.d.ts +92 -0
- package/dist/components/menu/menu.props.js +97 -0
- package/dist/components/menu/menu.slots.d.ts +32 -0
- package/dist/components/menu/menu.slots.js +60 -0
- package/dist/components/menubar/index.d.ts +2 -0
- package/dist/components/menubar/menubar.context.js +13 -0
- package/dist/components/menubar/menubar.d.ts +162 -0
- package/dist/components/menubar/menubar.js +122 -0
- package/dist/components/menubar/menubar.props.d.ts +41 -0
- package/dist/components/menubar/menubar.props.js +45 -0
- package/dist/components/menubar/menubar.slots.d.ts +26 -0
- package/dist/components/menubar/menubar.slots.js +40 -0
- package/dist/components/meter/index.d.ts +2 -0
- package/dist/components/meter/meter.context.d.ts +9 -0
- package/dist/components/meter/meter.context.js +13 -0
- package/dist/components/meter/meter.d.ts +163 -0
- package/dist/components/meter/meter.js +121 -0
- package/dist/components/meter/meter.props.d.ts +50 -0
- package/dist/components/meter/meter.props.js +33 -0
- package/dist/components/meter/meter.slots.d.ts +18 -0
- package/dist/components/meter/meter.slots.js +31 -0
- package/dist/components/navigation-menu/index.d.ts +2 -0
- package/dist/components/navigation-menu/navigation-menu.d.ts +328 -0
- package/dist/components/navigation-menu/navigation-menu.js +274 -0
- package/dist/components/navigation-menu/navigation-menu.props.d.ts +98 -0
- package/dist/components/navigation-menu/navigation-menu.props.js +90 -0
- package/dist/components/navigation-menu/navigation-menu.slots.d.ts +34 -0
- package/dist/components/navigation-menu/navigation-menu.slots.js +60 -0
- package/dist/components/number-field/index.d.ts +2 -0
- package/dist/components/number-field/number-field.context.d.ts +13 -0
- package/dist/components/number-field/number-field.context.js +13 -0
- package/dist/components/number-field/number-field.d.ts +197 -0
- package/dist/components/number-field/number-field.js +187 -0
- package/dist/components/number-field/number-field.props.d.ts +66 -0
- package/dist/components/number-field/number-field.props.js +50 -0
- package/dist/components/number-field/number-field.slots.d.ts +31 -0
- package/dist/components/number-field/number-field.slots.js +48 -0
- package/dist/components/otp-field/index.d.ts +3 -0
- package/dist/components/otp-field/otp-field.context.js +13 -0
- package/dist/components/otp-field/otp-field.d.ts +99 -0
- package/dist/components/otp-field/otp-field.js +76 -0
- package/dist/components/otp-field/otp-field.props.d.ts +48 -0
- package/dist/components/otp-field/otp-field.props.js +43 -0
- package/dist/components/otp-field/otp-field.slots.d.ts +28 -0
- package/dist/components/otp-field/otp-field.slots.js +39 -0
- package/dist/components/popover/index.d.ts +2 -0
- package/dist/components/popover/popover.d.ts +192 -0
- package/dist/components/popover/popover.js +152 -0
- package/dist/components/popover/popover.props.d.ts +34 -0
- package/dist/components/popover/popover.props.js +44 -0
- package/dist/components/popover/popover.slots.d.ts +22 -0
- package/dist/components/popover/popover.slots.js +42 -0
- package/dist/components/preview-card/index.d.ts +2 -0
- package/dist/components/preview-card/preview-card.d.ts +182 -0
- package/dist/components/preview-card/preview-card.js +146 -0
- package/dist/components/preview-card/preview-card.props.d.ts +37 -0
- package/dist/components/preview-card/preview-card.props.js +48 -0
- package/dist/components/preview-card/preview-card.slots.d.ts +22 -0
- package/dist/components/preview-card/preview-card.slots.js +39 -0
- package/dist/components/progress/index.d.ts +3 -0
- package/dist/components/progress/progress.context.d.ts +9 -0
- package/dist/components/progress/progress.context.js +13 -0
- package/dist/components/progress/progress.d.ts +139 -0
- package/dist/components/progress/progress.js +92 -0
- package/dist/components/progress/progress.props.d.ts +56 -0
- package/dist/components/progress/progress.props.js +38 -0
- package/dist/components/progress/progress.slots.d.ts +24 -0
- package/dist/components/progress/progress.slots.js +37 -0
- package/dist/components/radio/index.d.ts +2 -0
- package/dist/components/radio/radio.context.js +5 -0
- package/dist/components/radio/radio.d.ts +205 -0
- package/dist/components/radio/radio.js +168 -0
- package/dist/components/radio/radio.props.d.ts +106 -0
- package/dist/components/radio/radio.props.js +65 -0
- package/dist/components/radio/radio.slots.d.ts +29 -0
- package/dist/components/radio/radio.slots.js +44 -0
- package/dist/components/rail/index.d.ts +3 -0
- package/dist/components/rail/rail.context.d.ts +17 -0
- package/dist/components/rail/rail.context.js +23 -0
- package/dist/components/rail/rail.d.ts +232 -0
- package/dist/components/rail/rail.js +254 -0
- package/dist/components/rail/rail.props.d.ts +98 -0
- package/dist/components/rail/rail.props.js +64 -0
- package/dist/components/rail/rail.slots.d.ts +20 -0
- package/dist/components/rail/rail.slots.js +40 -0
- package/dist/components/scroll-area/index.d.ts +2 -0
- package/dist/components/scroll-area/scroll-area.context.js +15 -0
- package/dist/components/scroll-area/scroll-area.d.ts +217 -0
- package/dist/components/scroll-area/scroll-area.js +153 -0
- package/dist/components/scroll-area/scroll-area.props.d.ts +73 -0
- package/dist/components/scroll-area/scroll-area.props.js +64 -0
- package/dist/components/scroll-area/scroll-area.slots.d.ts +40 -0
- package/dist/components/scroll-area/scroll-area.slots.js +54 -0
- package/dist/components/scroll-area/scroll-area.types.d.ts +24 -0
- package/dist/components/search-dialog/index.d.ts +3 -0
- package/dist/components/search-dialog/parts/input.d.ts +24 -0
- package/dist/components/search-dialog/parts/input.js +53 -0
- package/dist/components/search-dialog/parts/messages.d.ts +80 -0
- package/dist/components/search-dialog/parts/messages.js +75 -0
- package/dist/components/search-dialog/parts/results.d.ts +43 -0
- package/dist/components/search-dialog/parts/results.js +63 -0
- package/dist/components/search-dialog/parts/root.d.ts +54 -0
- package/dist/components/search-dialog/parts/root.js +99 -0
- package/dist/components/search-dialog/search-dialog.context.d.ts +15 -0
- package/dist/components/search-dialog/search-dialog.context.js +20 -0
- package/dist/components/search-dialog/search-dialog.d.ts +84 -0
- package/dist/components/search-dialog/search-dialog.js +43 -0
- package/dist/components/search-dialog/search-dialog.props.d.ts +45 -0
- package/dist/components/search-dialog/search-dialog.props.js +49 -0
- package/dist/components/search-dialog/search-dialog.slots.d.ts +16 -0
- package/dist/components/search-dialog/search-dialog.slots.js +32 -0
- package/dist/components/select/index.d.ts +2 -0
- package/dist/components/select/select.context.js +17 -0
- package/dist/components/select/select.d.ts +356 -0
- package/dist/components/select/select.js +314 -0
- package/dist/components/select/select.props.d.ts +110 -0
- package/dist/components/select/select.props.js +103 -0
- package/dist/components/select/select.slots.d.ts +38 -0
- package/dist/components/select/select.slots.js +67 -0
- package/dist/components/separator/index.d.ts +2 -0
- package/dist/components/separator/separator.d.ts +69 -0
- package/dist/components/separator/separator.js +44 -0
- package/dist/components/separator/separator.props.d.ts +30 -0
- package/dist/components/separator/separator.props.js +30 -0
- package/dist/components/separator/separator.slots.d.ts +22 -0
- package/dist/components/separator/separator.slots.js +21 -0
- package/dist/components/separator/separator.types.d.ts +5 -0
- package/dist/components/sheet/index.d.ts +3 -0
- package/dist/components/sheet/sheet-stack.d.ts +106 -0
- package/dist/components/sheet/sheet-stack.js +146 -0
- package/dist/components/sheet/sheet.d.ts +279 -0
- package/dist/components/sheet/sheet.js +264 -0
- package/dist/components/sheet/sheet.props.d.ts +74 -0
- package/dist/components/sheet/sheet.props.js +77 -0
- package/dist/components/sheet/sheet.slots.js +22 -0
- package/dist/components/sheet/sheet.types.d.ts +12 -0
- package/dist/components/slider/index.d.ts +3 -0
- package/dist/components/slider/slider.context.d.ts +5 -0
- package/dist/components/slider/slider.context.js +29 -0
- package/dist/components/slider/slider.d.ts +230 -0
- package/dist/components/slider/slider.js +274 -0
- package/dist/components/slider/slider.props.d.ts +72 -0
- package/dist/components/slider/slider.props.js +59 -0
- package/dist/components/slider/slider.slots.d.ts +30 -0
- package/dist/components/slider/slider.slots.js +50 -0
- package/dist/components/surface/index.d.ts +1 -0
- package/dist/components/surface/surface.d.ts +84 -0
- package/dist/components/surface/surface.js +48 -0
- package/dist/components/surface/surface.props.d.ts +35 -0
- package/dist/components/surface/surface.props.js +26 -0
- package/dist/components/surface/surface.slots.js +9 -0
- package/dist/components/surface/surface.types.d.ts +14 -0
- package/dist/components/switch/index.d.ts +2 -0
- package/dist/components/switch/switch.context.js +14 -0
- package/dist/components/switch/switch.d.ts +110 -0
- package/dist/components/switch/switch.js +92 -0
- package/dist/components/switch/switch.props.d.ts +68 -0
- package/dist/components/switch/switch.props.js +41 -0
- package/dist/components/switch/switch.slots.d.ts +23 -0
- package/dist/components/switch/switch.slots.js +35 -0
- package/dist/components/table/index.d.ts +1 -0
- package/dist/components/table/table.d.ts +104 -0
- package/dist/components/table/table.js +92 -0
- package/dist/components/table/table.props.d.ts +38 -0
- package/dist/components/table/table.props.js +49 -0
- package/dist/components/table/table.slots.js +17 -0
- package/dist/components/tabs/index.d.ts +2 -0
- package/dist/components/tabs/tabs.context.d.ts +9 -0
- package/dist/components/tabs/tabs.context.js +13 -0
- package/dist/components/tabs/tabs.d.ts +139 -0
- package/dist/components/tabs/tabs.js +118 -0
- package/dist/components/tabs/tabs.props.d.ts +59 -0
- package/dist/components/tabs/tabs.props.js +39 -0
- package/dist/components/tabs/tabs.slots.d.ts +20 -0
- package/dist/components/tabs/tabs.slots.js +33 -0
- package/dist/components/textarea/index.d.ts +3 -0
- package/dist/components/textarea/textarea.context.js +13 -0
- package/dist/components/textarea/textarea.d.ts +142 -0
- package/dist/components/textarea/textarea.js +129 -0
- package/dist/components/textarea/textarea.props.d.ts +44 -0
- package/dist/components/textarea/textarea.props.js +32 -0
- package/dist/components/textarea/textarea.slots.d.ts +23 -0
- package/dist/components/textarea/textarea.slots.js +33 -0
- package/dist/components/textarea/textarea.types.d.ts +5 -0
- package/dist/components/toast/index.d.ts +4 -0
- package/dist/components/toast/toast.d.ts +241 -0
- package/dist/components/toast/toast.js +193 -0
- package/dist/components/toast/toast.manager.d.ts +76 -0
- package/dist/components/toast/toast.manager.js +71 -0
- package/dist/components/toast/toast.props.d.ts +66 -0
- package/dist/components/toast/toast.props.js +74 -0
- package/dist/components/toast/toast.slots.d.ts +30 -0
- package/dist/components/toast/toast.slots.js +49 -0
- package/dist/components/toast/toast.types.d.ts +19 -0
- package/dist/components/toggle/index.d.ts +2 -0
- package/dist/components/toggle/toggle.context.d.ts +11 -0
- package/dist/components/toggle/toggle.context.js +14 -0
- package/dist/components/toggle/toggle.d.ts +136 -0
- package/dist/components/toggle/toggle.js +101 -0
- package/dist/components/toggle/toggle.props.d.ts +51 -0
- package/dist/components/toggle/toggle.props.js +29 -0
- package/dist/components/toggle/toggle.slots.d.ts +26 -0
- package/dist/components/toggle/toggle.slots.js +36 -0
- package/dist/components/toolbar/index.d.ts +3 -0
- package/dist/components/toolbar/toolbar.context.js +23 -0
- package/dist/components/toolbar/toolbar.d.ts +218 -0
- package/dist/components/toolbar/toolbar.js +197 -0
- package/dist/components/toolbar/toolbar.props.d.ts +54 -0
- package/dist/components/toolbar/toolbar.props.js +55 -0
- package/dist/components/toolbar/toolbar.slots.d.ts +24 -0
- package/dist/components/toolbar/toolbar.slots.js +37 -0
- package/dist/components/toolbar/toolbar.types.d.ts +15 -0
- package/dist/components/tooltip/index.d.ts +2 -0
- package/dist/components/tooltip/tooltip.d.ts +170 -0
- package/dist/components/tooltip/tooltip.js +143 -0
- package/dist/components/tooltip/tooltip.props.d.ts +36 -0
- package/dist/components/tooltip/tooltip.props.js +42 -0
- package/dist/components/tooltip/tooltip.slots.d.ts +26 -0
- package/dist/components/tooltip/tooltip.slots.js +42 -0
- package/dist/core/derive-threshold-tone.js +35 -0
- package/dist/core/merge-class-name.d.ts +17 -0
- package/dist/core/merge-class-name.js +16 -0
- package/dist/core/noctis-provider.d.ts +38 -0
- package/dist/core/noctis-provider.js +44 -0
- package/dist/core/primitive/index.d.ts +1 -0
- package/dist/core/primitive/primitive.d.ts +44 -0
- package/dist/core/primitive/primitive.js +27 -0
- package/dist/core/radius-scope/index.d.ts +2 -0
- package/dist/core/radius-scope/radius-scope.d.ts +43 -0
- package/dist/core/radius-scope/radius-scope.js +36 -0
- package/dist/core/radius-scope/radius-scope.styles.d.ts +13 -0
- package/dist/core/radius-scope/radius-scope.styles.js +11 -0
- package/dist/core/render.d.ts +24 -0
- package/dist/core/render.js +12 -0
- package/dist/core/use-copy.d.ts +13 -0
- package/dist/core/use-copy.js +30 -0
- package/dist/core/use-injected-labels.js +55 -0
- package/dist/core/use-reduced-motion.d.ts +9 -0
- package/dist/core/use-reduced-motion.js +26 -0
- package/dist/core/visually-hidden/index.d.ts +1 -0
- package/dist/core/visually-hidden/visually-hidden.d.ts +24 -0
- package/dist/core/visually-hidden/visually-hidden.js +19 -0
- package/dist/i18n/default-messages.d.ts +12 -0
- package/dist/i18n/default-messages.js +10 -0
- package/dist/i18n/index.d.ts +2 -0
- package/dist/i18n/index.js +2 -0
- package/dist/i18n/messages/index.d.ts +2 -0
- package/dist/i18n/messages/index.js +2 -0
- package/dist/icons/glyphs.d.ts +2 -0
- package/dist/icons/glyphs.js +2 -0
- package/dist/icons/icon.d.ts +40 -0
- package/dist/icons/icon.js +26 -0
- package/dist/icons/icon.styles.d.ts +9 -0
- package/dist/icons/index.d.ts +3 -0
- package/dist/index.d.ts +126 -0
- package/dist/index.js +112 -0
- package/dist/primitives/accordion.d.ts +7 -0
- package/dist/primitives/accordion.js +8 -0
- package/dist/primitives/alert-dialog.d.ts +7 -0
- package/dist/primitives/alert-dialog.js +8 -0
- package/dist/primitives/autocomplete/autocomplete.d.ts +58 -0
- package/dist/primitives/autocomplete/autocomplete.js +58 -0
- package/dist/primitives/autocomplete/index.d.ts +1 -0
- package/dist/primitives/autocomplete.d.ts +2 -0
- package/dist/primitives/autocomplete.js +2 -0
- package/dist/primitives/avatar.d.ts +7 -0
- package/dist/primitives/avatar.js +8 -0
- package/dist/primitives/button.d.ts +7 -0
- package/dist/primitives/button.js +8 -0
- package/dist/primitives/checkbox-group.d.ts +7 -0
- package/dist/primitives/checkbox-group.js +8 -0
- package/dist/primitives/checkbox.d.ts +7 -0
- package/dist/primitives/checkbox.js +8 -0
- package/dist/primitives/collapsible.d.ts +7 -0
- package/dist/primitives/collapsible.js +8 -0
- package/dist/primitives/combobox/combobox.d.ts +71 -0
- package/dist/primitives/combobox/combobox.js +66 -0
- package/dist/primitives/combobox/index.d.ts +1 -0
- package/dist/primitives/combobox.d.ts +2 -0
- package/dist/primitives/combobox.js +2 -0
- package/dist/primitives/context-menu.d.ts +7 -0
- package/dist/primitives/context-menu.js +8 -0
- package/dist/primitives/csp-provider.d.ts +1 -0
- package/dist/primitives/csp-provider.js +2 -0
- package/dist/primitives/dialog.d.ts +7 -0
- package/dist/primitives/dialog.js +8 -0
- package/dist/primitives/direction-provider.d.ts +1 -0
- package/dist/primitives/direction-provider.js +8 -0
- package/dist/primitives/drawer.d.ts +1 -0
- package/dist/primitives/drawer.js +2 -0
- package/dist/primitives/field.d.ts +7 -0
- package/dist/primitives/field.js +8 -0
- package/dist/primitives/fieldset.d.ts +7 -0
- package/dist/primitives/fieldset.js +8 -0
- package/dist/primitives/form.d.ts +7 -0
- package/dist/primitives/form.js +8 -0
- package/dist/primitives/index.d.ts +79 -0
- package/dist/primitives/index.js +113 -0
- package/dist/primitives/input.d.ts +7 -0
- package/dist/primitives/input.js +8 -0
- package/dist/primitives/menu.d.ts +7 -0
- package/dist/primitives/menu.js +8 -0
- package/dist/primitives/menubar.d.ts +7 -0
- package/dist/primitives/menubar.js +8 -0
- package/dist/primitives/meter/index.d.ts +1 -0
- package/dist/primitives/meter/meter.d.ts +56 -0
- package/dist/primitives/meter/meter.js +59 -0
- package/dist/primitives/meter.d.ts +2 -0
- package/dist/primitives/meter.js +2 -0
- package/dist/primitives/navigation-menu.d.ts +7 -0
- package/dist/primitives/navigation-menu.js +8 -0
- package/dist/primitives/number-field/context.d.ts +13 -0
- package/dist/primitives/number-field/context.js +36 -0
- package/dist/primitives/number-field/index.d.ts +2 -0
- package/dist/primitives/number-field/number-field.d.ts +90 -0
- package/dist/primitives/number-field/number-field.js +107 -0
- package/dist/primitives/number-field.d.ts +3 -0
- package/dist/primitives/number-field.js +2 -0
- package/dist/primitives/otp-field.d.ts +7 -0
- package/dist/primitives/otp-field.js +8 -0
- package/dist/primitives/popover.d.ts +7 -0
- package/dist/primitives/popover.js +8 -0
- package/dist/primitives/preview-card.d.ts +7 -0
- package/dist/primitives/preview-card.js +8 -0
- package/dist/primitives/progress/index.d.ts +1 -0
- package/dist/primitives/progress/progress.d.ts +56 -0
- package/dist/primitives/progress/progress.js +59 -0
- package/dist/primitives/progress.d.ts +2 -0
- package/dist/primitives/progress.js +2 -0
- package/dist/primitives/radio-group.d.ts +7 -0
- package/dist/primitives/radio-group.js +8 -0
- package/dist/primitives/radio.d.ts +7 -0
- package/dist/primitives/radio.js +8 -0
- package/dist/primitives/scroll-area.d.ts +7 -0
- package/dist/primitives/scroll-area.js +8 -0
- package/dist/primitives/select.d.ts +7 -0
- package/dist/primitives/select.js +8 -0
- package/dist/primitives/separator.d.ts +7 -0
- package/dist/primitives/separator.js +8 -0
- package/dist/primitives/slider/context.d.ts +12 -0
- package/dist/primitives/slider/context.js +18 -0
- package/dist/primitives/slider/index.d.ts +2 -0
- package/dist/primitives/slider/slider.d.ts +83 -0
- package/dist/primitives/slider/slider.js +99 -0
- package/dist/primitives/slider.d.ts +3 -0
- package/dist/primitives/slider.js +2 -0
- package/dist/primitives/switch.d.ts +1 -0
- package/dist/primitives/switch.js +2 -0
- package/dist/primitives/tabs.d.ts +7 -0
- package/dist/primitives/tabs.js +8 -0
- package/dist/primitives/toast/context.d.ts +11 -0
- package/dist/primitives/toast/context.js +18 -0
- package/dist/primitives/toast/index.d.ts +2 -0
- package/dist/primitives/toast/toast.d.ts +122 -0
- package/dist/primitives/toast/toast.js +133 -0
- package/dist/primitives/toast.d.ts +3 -0
- package/dist/primitives/toast.js +2 -0
- package/dist/primitives/toggle-group.d.ts +7 -0
- package/dist/primitives/toggle-group.js +8 -0
- package/dist/primitives/toggle.d.ts +7 -0
- package/dist/primitives/toggle.js +8 -0
- package/dist/primitives/toolbar.d.ts +7 -0
- package/dist/primitives/toolbar.js +8 -0
- package/dist/primitives/tooltip.d.ts +7 -0
- package/dist/primitives/tooltip.js +8 -0
- package/dist/props.d.ts +46 -0
- package/dist/props.js +46 -0
- package/dist/styles.css +11513 -0
- package/dist/tailwind/cn.d.ts +33 -0
- package/dist/tailwind/cn.js +42 -0
- package/dist/tailwind/index.d.ts +3 -0
- package/dist/tailwind/index.js +3 -0
- package/dist/tailwind/tv.d.ts +20 -0
- package/dist/tailwind/tv.js +11 -0
- package/dist/tailwind.css +485 -0
- package/dist/theme/react.d.ts +1 -0
- package/dist/theme/react.js +1 -0
- package/dist/theme.d.ts +1 -0
- package/dist/theme.js +1 -0
- package/dist/tokens/react.d.ts +1 -0
- package/dist/tokens/react.js +1 -0
- package/dist/tokens.d.ts +1 -0
- package/dist/tokens.js +1 -0
- package/package.json +121 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
//#region src/components/search-dialog/search-dialog.props.d.ts
|
|
2
|
+
/** A spreadable prop bag — the shape every `SearchDialog.*.props()` returns. */
|
|
3
|
+
type SearchDialogPartProps = {
|
|
4
|
+
/** The slot value the matching `search-dialog.css` rules anchor on. */"data-slot": string; /** Forwarded verbatim — styling is attribute-driven, so this is an optional consumer passthrough. */
|
|
5
|
+
className?: string; /** Other forwarded attributes (the row's `aria-selected` / `data-index`). */
|
|
6
|
+
[attr: string]: string | number | boolean | undefined;
|
|
7
|
+
};
|
|
8
|
+
/** Common shape: every part's `.props()` accepts an optional `className` passthrough. */
|
|
9
|
+
interface BasePropsArgs {
|
|
10
|
+
/** Forwarded verbatim onto the returned prop bag. */
|
|
11
|
+
className?: string;
|
|
12
|
+
}
|
|
13
|
+
/** Argument to `SearchDialog.Item.props(...)` — the row's keyboard-active state and list position. */
|
|
14
|
+
interface SearchDialogItemPropsArgs extends BasePropsArgs {
|
|
15
|
+
/** Whether this row is the keyboard-active one (drives the resting highlight via `aria-selected`). */
|
|
16
|
+
active?: boolean;
|
|
17
|
+
/** This row's zero-based position, exposed as `data-index` for the root's scroll-into-view. */
|
|
18
|
+
index?: number;
|
|
19
|
+
}
|
|
20
|
+
/** Argument to a stateless part's `.props(...)` — no state of its own; look flows from the slot. */
|
|
21
|
+
type SearchDialogStatelessPropsArgs = BasePropsArgs;
|
|
22
|
+
/** Root prop bag: the dialog popup's slot anchor (the `--_search-dialog-*` metrics key off it). */
|
|
23
|
+
declare function rootProps({
|
|
24
|
+
className
|
|
25
|
+
}?: SearchDialogStatelessPropsArgs): SearchDialogPartProps;
|
|
26
|
+
/** Input prop bag: the query-field slot anchor. */
|
|
27
|
+
declare function inputProps({
|
|
28
|
+
className
|
|
29
|
+
}?: SearchDialogStatelessPropsArgs): SearchDialogPartProps;
|
|
30
|
+
/** Results prop bag: the listbox slot anchor. */
|
|
31
|
+
declare function resultsProps({
|
|
32
|
+
className
|
|
33
|
+
}?: SearchDialogStatelessPropsArgs): SearchDialogPartProps;
|
|
34
|
+
/** Item prop bag: the row slot anchor plus the `aria-selected` highlight axis and `data-index`. */
|
|
35
|
+
declare function itemProps({
|
|
36
|
+
active,
|
|
37
|
+
index,
|
|
38
|
+
className
|
|
39
|
+
}?: SearchDialogItemPropsArgs): SearchDialogPartProps;
|
|
40
|
+
/** Footer prop bag: the keyboard-hints row slot anchor. */
|
|
41
|
+
declare function footerProps({
|
|
42
|
+
className
|
|
43
|
+
}?: SearchDialogStatelessPropsArgs): SearchDialogPartProps;
|
|
44
|
+
//#endregion
|
|
45
|
+
export { SearchDialogItemPropsArgs, SearchDialogPartProps, footerProps, inputProps, itemProps, resultsProps, rootProps };
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { SEARCH_DIALOG_SLOTS } from "./search-dialog.slots.js";
|
|
2
|
+
//#region src/components/search-dialog/search-dialog.props.ts
|
|
3
|
+
/**
|
|
4
|
+
* The D12 unified variant contract for SearchDialog — the data-attribute-native helpers a non-React
|
|
5
|
+
* (or escape-hatch) consumer hand-stamps the dialog's parts with.
|
|
6
|
+
*
|
|
7
|
+
* Each part exposes a `props(...)` builder returning a **spreadable props object** of the form
|
|
8
|
+
* `{ "data-slot": "noctis-search-dialog-<part>", ...dataAttrs }`. Under the single-`data-slot` anchor
|
|
9
|
+
* model the `data-slot` is the only styling hook needed — `search-dialog.css` keys every rule off it
|
|
10
|
+
* (plus the row's `aria-selected` highlight axis) — so spreading a part's `props()` onto a foreign
|
|
11
|
+
* element styles it as that part:
|
|
12
|
+
*
|
|
13
|
+
* <li {...SearchDialog.Item.props({ active: true, index: 0 })}>…</li>
|
|
14
|
+
* // → <li data-slot="noctis-search-dialog-result" aria-selected="true" data-index="0">
|
|
15
|
+
*
|
|
16
|
+
* Styling is attribute-driven, so these carry no className; an optional `className` passthrough is
|
|
17
|
+
* accepted and forwarded verbatim.
|
|
18
|
+
*/
|
|
19
|
+
const withClassName = (bag, className) => className === void 0 ? bag : {
|
|
20
|
+
...bag,
|
|
21
|
+
className
|
|
22
|
+
};
|
|
23
|
+
/** Root prop bag: the dialog popup's slot anchor (the `--_search-dialog-*` metrics key off it). */
|
|
24
|
+
function rootProps({ className } = {}) {
|
|
25
|
+
return withClassName({ "data-slot": SEARCH_DIALOG_SLOTS.root }, className);
|
|
26
|
+
}
|
|
27
|
+
/** Input prop bag: the query-field slot anchor. */
|
|
28
|
+
function inputProps({ className } = {}) {
|
|
29
|
+
return withClassName({ "data-slot": SEARCH_DIALOG_SLOTS.input }, className);
|
|
30
|
+
}
|
|
31
|
+
/** Results prop bag: the listbox slot anchor. */
|
|
32
|
+
function resultsProps({ className } = {}) {
|
|
33
|
+
return withClassName({ "data-slot": SEARCH_DIALOG_SLOTS.results }, className);
|
|
34
|
+
}
|
|
35
|
+
/** Item prop bag: the row slot anchor plus the `aria-selected` highlight axis and `data-index`. */
|
|
36
|
+
function itemProps({ active, index, className } = {}) {
|
|
37
|
+
const bag = {
|
|
38
|
+
"data-slot": SEARCH_DIALOG_SLOTS.result,
|
|
39
|
+
"aria-selected": active ? "true" : "false"
|
|
40
|
+
};
|
|
41
|
+
if (index !== void 0) bag["data-index"] = index;
|
|
42
|
+
return withClassName(bag, className);
|
|
43
|
+
}
|
|
44
|
+
/** Footer prop bag: the keyboard-hints row slot anchor. */
|
|
45
|
+
function footerProps({ className } = {}) {
|
|
46
|
+
return withClassName({ "data-slot": SEARCH_DIALOG_SLOTS.footer }, className);
|
|
47
|
+
}
|
|
48
|
+
//#endregion
|
|
49
|
+
export { footerProps, inputProps, itemProps, resultsProps, rootProps };
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
//#region src/components/search-dialog/search-dialog.slots.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* The `data-*` hooks `SearchDialog` stamps on its parts, for host-side styling and tests. Slot values
|
|
4
|
+
* mark each rendered element; `data-elevation` rides the portalled popup (set by `Surface`), and the
|
|
5
|
+
* listbox rows expose their position and selection through `data-index` and `aria-selected`.
|
|
6
|
+
*/
|
|
7
|
+
declare enum SearchDialogDataAttributes {
|
|
8
|
+
/** The slot marker on every rendered part. */
|
|
9
|
+
slot = "data-slot",
|
|
10
|
+
/** `menu` — the elevated surface scope on the portalled popup. */
|
|
11
|
+
elevation = "data-elevation",
|
|
12
|
+
/** The zero-based position of a result row in the list. */
|
|
13
|
+
index = "data-index"
|
|
14
|
+
}
|
|
15
|
+
//#endregion
|
|
16
|
+
export { SearchDialogDataAttributes };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
//#region src/components/search-dialog/search-dialog.slots.ts
|
|
2
|
+
/**
|
|
3
|
+
* The slot vocabulary every `SearchDialog` part stamps as its `data-slot`. The authored source the
|
|
4
|
+
* parts read from, kebab-cased `{component}-{part}`; SLOTS.md still generates from the token-graph
|
|
5
|
+
* declarations. The empty, loading, searching, and no-results messages render inside the result pane
|
|
6
|
+
* without their own slot — the active state, not an element, distinguishes them.
|
|
7
|
+
*/
|
|
8
|
+
const SEARCH_DIALOG_SLOTS = {
|
|
9
|
+
root: "noctis-search-dialog",
|
|
10
|
+
backdrop: "noctis-search-dialog-backdrop",
|
|
11
|
+
header: "noctis-search-dialog-header",
|
|
12
|
+
input: "noctis-search-dialog-input",
|
|
13
|
+
results: "noctis-search-dialog-results",
|
|
14
|
+
result: "noctis-search-dialog-result",
|
|
15
|
+
footer: "noctis-search-dialog-footer"
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* The `data-*` hooks `SearchDialog` stamps on its parts, for host-side styling and tests. Slot values
|
|
19
|
+
* mark each rendered element; `data-elevation` rides the portalled popup (set by `Surface`), and the
|
|
20
|
+
* listbox rows expose their position and selection through `data-index` and `aria-selected`.
|
|
21
|
+
*/
|
|
22
|
+
let SearchDialogDataAttributes = /* @__PURE__ */ function(SearchDialogDataAttributes) {
|
|
23
|
+
/** The slot marker on every rendered part. */
|
|
24
|
+
SearchDialogDataAttributes["slot"] = "data-slot";
|
|
25
|
+
/** `menu` — the elevated surface scope on the portalled popup. */
|
|
26
|
+
SearchDialogDataAttributes["elevation"] = "data-elevation";
|
|
27
|
+
/** The zero-based position of a result row in the list. */
|
|
28
|
+
SearchDialogDataAttributes["index"] = "data-index";
|
|
29
|
+
return SearchDialogDataAttributes;
|
|
30
|
+
}({});
|
|
31
|
+
//#endregion
|
|
32
|
+
export { SEARCH_DIALOG_SLOTS, SearchDialogDataAttributes };
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { createContext, use } from "react";
|
|
3
|
+
//#region src/components/select/select.context.ts
|
|
4
|
+
const SelectContext = createContext(null);
|
|
5
|
+
/** Provider for the select's shared state — mounted by `Select.Root`. */
|
|
6
|
+
const SelectContextProvider = SelectContext.Provider;
|
|
7
|
+
/**
|
|
8
|
+
* Read the select's shared state. Throws a part-named error when a part is rendered outside a
|
|
9
|
+
* `Select.Root`, so a misuse fails loudly instead of silently losing its size.
|
|
10
|
+
*/
|
|
11
|
+
function useSelectContext(part) {
|
|
12
|
+
const context = use(SelectContext);
|
|
13
|
+
if (context === null) throw new Error(`Select.${part} must be rendered inside <Select.Root>.`);
|
|
14
|
+
return context;
|
|
15
|
+
}
|
|
16
|
+
//#endregion
|
|
17
|
+
export { SelectContextProvider, useSelectContext };
|
|
@@ -0,0 +1,356 @@
|
|
|
1
|
+
import { select_d_exports } from "../../primitives/select.js";
|
|
2
|
+
import { SelectPartProps, backdropProps, groupLabelProps, groupProps, iconProps, itemDescriptionProps, itemIconProps, itemIndicatorProps, itemProps, itemTextProps, listProps, popupProps, scrollDownArrowProps, scrollUpArrowProps, separatorProps, triggerProps, valueProps } from "./select.props.js";
|
|
3
|
+
import { ComponentPropsWithRef, ReactElement, ReactNode } from "react";
|
|
4
|
+
|
|
5
|
+
//#region src/components/select/select.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* Owns the selected value and open state, sharing the control `size` (plus the `multiple` and `invalid`
|
|
8
|
+
* flags) with the trigger and rows. Wraps Base UI's Select. Pass `value`/`defaultValue` and
|
|
9
|
+
* `onValueChange` to control the selection, `items` to let `Select.Value` render a chosen item's label
|
|
10
|
+
* instead of its raw value, and `multiple` for a multi-select (the trigger then reads "N selected").
|
|
11
|
+
* `readOnly`, `required`, `disabled`, and `name` pass straight through to Base UI; `invalid` is an
|
|
12
|
+
* additive shell override (a `Field.Root` that turns invalid already marks the trigger). `modal`
|
|
13
|
+
* defaults to `false` so the page keeps scrolling while the popup is open — set it `true`
|
|
14
|
+
* to lock page scroll and render the `Backdrop`.
|
|
15
|
+
*/
|
|
16
|
+
declare function SelectRoot<Value = unknown, Multiple extends boolean | undefined = false>({
|
|
17
|
+
size,
|
|
18
|
+
invalid,
|
|
19
|
+
modal,
|
|
20
|
+
children,
|
|
21
|
+
...props
|
|
22
|
+
}: Select.Root.Props<Value, Multiple>): ReactElement;
|
|
23
|
+
/**
|
|
24
|
+
* The field-shaped control that opens the popup. Wears the field look (surface, hairline border, calm
|
|
25
|
+
* ring-less focus — the accent border lights on focus) and pairs a `Select.Value` with a
|
|
26
|
+
* trailing chevron; reads the root's `size` to size itself and the root's `invalid` to paint the danger
|
|
27
|
+
* border. Base UI stamps `data-disabled`/`data-readonly` for the disabled/read-only chrome.
|
|
28
|
+
*/
|
|
29
|
+
declare function SelectTrigger({
|
|
30
|
+
className,
|
|
31
|
+
children,
|
|
32
|
+
...props
|
|
33
|
+
}: Select.Trigger.Props): ReactElement;
|
|
34
|
+
/**
|
|
35
|
+
* Renders the selected item's label inside the trigger, falling back to `placeholder` when nothing is
|
|
36
|
+
* selected. Pass `items` on `Select.Root` (or a formatting child function) to map a raw value to a
|
|
37
|
+
* label. Under a `multiple` root it renders a localized "N selected" summary instead — pass a child
|
|
38
|
+
* function to override the trigger display entirely (e.g. mirror the chosen row's leading glyph).
|
|
39
|
+
*/
|
|
40
|
+
declare function SelectValue({
|
|
41
|
+
className,
|
|
42
|
+
children,
|
|
43
|
+
placeholder,
|
|
44
|
+
...props
|
|
45
|
+
}: Select.Value.Props): ReactElement;
|
|
46
|
+
/** The trailing chevron on the trigger — a vertical double-chevron marking the control as a select. */
|
|
47
|
+
declare function SelectIcon({
|
|
48
|
+
className,
|
|
49
|
+
children,
|
|
50
|
+
...props
|
|
51
|
+
}: Select.Icon.Props): ReactElement;
|
|
52
|
+
/**
|
|
53
|
+
* The modal scrim painted beneath the popup. Auto-rendered inside `Select.Popup` while the select is
|
|
54
|
+
* `modal` (the default); transparent by default so the page is not dimmed, it still
|
|
55
|
+
* captures outside clicks. Re-point `--noctis-select-backdrop-background-color` to a scrim role to dim.
|
|
56
|
+
*/
|
|
57
|
+
declare function SelectBackdrop({
|
|
58
|
+
className,
|
|
59
|
+
...props
|
|
60
|
+
}: Select.Backdrop.Props): ReactElement;
|
|
61
|
+
/**
|
|
62
|
+
* The floating listbox — portaled, elevated through `<Surface>`, and animated — holding the items,
|
|
63
|
+
* groups, and separators. Opens aligned to the trigger and caps at the available viewport height,
|
|
64
|
+
* scrolling its list while keeping the keyboard highlight in view. By default it overlaps the trigger so
|
|
65
|
+
* the selected row lines up with the trigger's value (the "overlay" variant); pass
|
|
66
|
+
* `alignItemWithTrigger={false}` to open below the trigger instead (the "below" variant). Auto-renders
|
|
67
|
+
* the modal `Backdrop` (while modal), the sticky scroll arrows, and the scrollable `List` for you.
|
|
68
|
+
*/
|
|
69
|
+
declare function SelectPopup({
|
|
70
|
+
side,
|
|
71
|
+
align,
|
|
72
|
+
sideOffset,
|
|
73
|
+
alignItemWithTrigger,
|
|
74
|
+
collisionPadding,
|
|
75
|
+
className,
|
|
76
|
+
style,
|
|
77
|
+
children,
|
|
78
|
+
...props
|
|
79
|
+
}: Select.Popup.Props): ReactElement;
|
|
80
|
+
/**
|
|
81
|
+
* The sticky strip pinned to the popup's top edge that scrolls the list up on hover — a pointer
|
|
82
|
+
* affordance only (it never renders for touch, and keyboard nav scrolls via the arrow keys), so it is
|
|
83
|
+
* `aria-hidden`. Rendered for you inside `Select.Popup`; appears only while the list can scroll up.
|
|
84
|
+
*/
|
|
85
|
+
declare function SelectScrollUpArrow({
|
|
86
|
+
className,
|
|
87
|
+
children,
|
|
88
|
+
...props
|
|
89
|
+
}: Select.ScrollUpArrow.Props): ReactElement;
|
|
90
|
+
/**
|
|
91
|
+
* The sticky strip pinned to the popup's bottom edge that scrolls the list down on hover — a pointer
|
|
92
|
+
* affordance only (`aria-hidden`, like its sibling). Rendered for you inside `Select.Popup`; appears
|
|
93
|
+
* only while the list can scroll down.
|
|
94
|
+
*/
|
|
95
|
+
declare function SelectScrollDownArrow({
|
|
96
|
+
className,
|
|
97
|
+
children,
|
|
98
|
+
...props
|
|
99
|
+
}: Select.ScrollDownArrow.Props): ReactElement;
|
|
100
|
+
/**
|
|
101
|
+
* The scrollable list wrapping the popup's rows. Rendered for you inside `Select.Popup`. Its scrollbar
|
|
102
|
+
* is hidden — the sticky scroll arrows are the overflow affordance (Radix/macOS behaviour).
|
|
103
|
+
*/
|
|
104
|
+
declare function SelectList({
|
|
105
|
+
className,
|
|
106
|
+
...props
|
|
107
|
+
}: Select.List.Props): ReactElement;
|
|
108
|
+
/**
|
|
109
|
+
* A selectable option. Pass its `value` (any serialisable value, including an object) and label
|
|
110
|
+
* children; an optional leading `icon` (a glyph, colour dot, or avatar) sits in a reserved column, an
|
|
111
|
+
* optional `description` adds a muted second line, and a trailing check marks the selected row. Picking
|
|
112
|
+
* a row updates the value (and closes the popup for single selects).
|
|
113
|
+
*
|
|
114
|
+
* Renders its own `ItemIcon` / `ItemText` / `ItemDescription` / `ItemIndicator` from the props —
|
|
115
|
+
* compose those parts by hand only when a row needs custom inner structure.
|
|
116
|
+
*/
|
|
117
|
+
declare function SelectItem({
|
|
118
|
+
className,
|
|
119
|
+
children,
|
|
120
|
+
icon,
|
|
121
|
+
description,
|
|
122
|
+
...props
|
|
123
|
+
}: Select.Item.Props): ReactElement;
|
|
124
|
+
/** The row's leading content column (icon, colour dot, or avatar), reserved so labels align. */
|
|
125
|
+
declare function SelectItemIcon({
|
|
126
|
+
className,
|
|
127
|
+
...props
|
|
128
|
+
}: Select.ItemIcon.Props): ReactElement;
|
|
129
|
+
/** The row's label text, mirrored into the trigger's `Select.Value` when the row is selected. */
|
|
130
|
+
declare function SelectItemText({
|
|
131
|
+
className,
|
|
132
|
+
...props
|
|
133
|
+
}: Select.ItemText.Props): ReactElement;
|
|
134
|
+
/** A row's muted second line — a short hint beneath the label on a two-line row. */
|
|
135
|
+
declare function SelectItemDescription({
|
|
136
|
+
className,
|
|
137
|
+
...props
|
|
138
|
+
}: Select.ItemDescription.Props): ReactElement;
|
|
139
|
+
/** The trailing check marking the selected row; Base UI mounts it only while the row is selected. */
|
|
140
|
+
declare function SelectItemIndicator({
|
|
141
|
+
className,
|
|
142
|
+
...props
|
|
143
|
+
}: Select.ItemIndicator.Props): ReactElement;
|
|
144
|
+
/** A labelled section of related items. Put a `GroupLabel` inside to name it for screen readers. */
|
|
145
|
+
declare function SelectGroup({
|
|
146
|
+
className,
|
|
147
|
+
...props
|
|
148
|
+
}: Select.Group.Props): ReactElement;
|
|
149
|
+
/** The group's muted, non-interactive heading — announced as the group's accessible name. */
|
|
150
|
+
declare function SelectGroupLabel({
|
|
151
|
+
className,
|
|
152
|
+
...props
|
|
153
|
+
}: Select.GroupLabel.Props): ReactElement;
|
|
154
|
+
/**
|
|
155
|
+
* A hairline between groups of options. Presentational (`aria-hidden`) — a `role="separator"` is not a
|
|
156
|
+
* valid `listbox` child, and the grouping is already conveyed by the `Group`/`GroupLabel` structure.
|
|
157
|
+
*/
|
|
158
|
+
declare function SelectSeparator({
|
|
159
|
+
className,
|
|
160
|
+
...props
|
|
161
|
+
}: Select.Separator.Props): ReactElement;
|
|
162
|
+
/**
|
|
163
|
+
* A select: a field-shaped `Trigger` opens a floating listbox of options. Built on Base UI's Select for
|
|
164
|
+
* listbox semantics, keyboard navigation (arrows, Home/End, PageUp/PageDown, typeahead), focus
|
|
165
|
+
* management, scroll arrows, the modal backdrop, and `Escape`/outside-click dismissal, plus native form
|
|
166
|
+
* integration via the hidden input.
|
|
167
|
+
*
|
|
168
|
+
* Compose from parts: `Select.Root` owns the value and open state, `Select.Trigger` (holding a
|
|
169
|
+
* `Select.Value` and a `Select.Icon`) opens it, and `Select.Popup` holds the rows — `Item`s with their
|
|
170
|
+
* leading `icon`, label, optional `description`, and trailing check, `Group`s with a `GroupLabel`, and
|
|
171
|
+
* `Separator`s. The trigger wears the field look (calm ring-less accent-border focus); the popup is an
|
|
172
|
+
* elevated `<Surface>`, the highlighted row picks up a neutral fill, and the selected row is marked by
|
|
173
|
+
* its trailing check (the accent reserved for that check, not a row tint).
|
|
174
|
+
*
|
|
175
|
+
* Styling is precompiled in `select.css`, keyed off each part's prefixed `data-slot`. Each part also
|
|
176
|
+
* carries the D12 `props()` escape hatch via `Object.assign` (e.g. `Select.Item.props({ selected })`),
|
|
177
|
+
* returning a spreadable `{ "data-slot": "noctis-select-<part>", ...dataAttrs }` bag for a foreign
|
|
178
|
+
* element a `<Select.*>` can't wrap.
|
|
179
|
+
*
|
|
180
|
+
* The runtime compound is a plain object (kept tree-shakeable); per-part prop and state types are
|
|
181
|
+
* exposed through the matching `Select` namespace — e.g. `Select.Item.Props`.
|
|
182
|
+
*/
|
|
183
|
+
declare const Select: {
|
|
184
|
+
Root: typeof SelectRoot;
|
|
185
|
+
Trigger: typeof SelectTrigger & {
|
|
186
|
+
props: typeof triggerProps;
|
|
187
|
+
};
|
|
188
|
+
Value: typeof SelectValue & {
|
|
189
|
+
props: typeof valueProps;
|
|
190
|
+
};
|
|
191
|
+
Icon: typeof SelectIcon & {
|
|
192
|
+
props: typeof iconProps;
|
|
193
|
+
};
|
|
194
|
+
Backdrop: typeof SelectBackdrop & {
|
|
195
|
+
props: typeof backdropProps;
|
|
196
|
+
};
|
|
197
|
+
Popup: typeof SelectPopup & {
|
|
198
|
+
props: typeof popupProps;
|
|
199
|
+
};
|
|
200
|
+
ScrollUpArrow: typeof SelectScrollUpArrow & {
|
|
201
|
+
props: typeof scrollUpArrowProps;
|
|
202
|
+
};
|
|
203
|
+
ScrollDownArrow: typeof SelectScrollDownArrow & {
|
|
204
|
+
props: typeof scrollDownArrowProps;
|
|
205
|
+
};
|
|
206
|
+
List: typeof SelectList & {
|
|
207
|
+
props: typeof listProps;
|
|
208
|
+
};
|
|
209
|
+
Item: typeof SelectItem & {
|
|
210
|
+
props: typeof itemProps;
|
|
211
|
+
};
|
|
212
|
+
ItemIcon: typeof SelectItemIcon & {
|
|
213
|
+
props: typeof itemIconProps;
|
|
214
|
+
};
|
|
215
|
+
ItemText: typeof SelectItemText & {
|
|
216
|
+
props: typeof itemTextProps;
|
|
217
|
+
};
|
|
218
|
+
ItemDescription: typeof SelectItemDescription & {
|
|
219
|
+
props: typeof itemDescriptionProps;
|
|
220
|
+
};
|
|
221
|
+
ItemIndicator: typeof SelectItemIndicator & {
|
|
222
|
+
props: typeof itemIndicatorProps;
|
|
223
|
+
};
|
|
224
|
+
Group: typeof SelectGroup & {
|
|
225
|
+
props: typeof groupProps;
|
|
226
|
+
};
|
|
227
|
+
GroupLabel: typeof SelectGroupLabel & {
|
|
228
|
+
props: typeof groupLabelProps;
|
|
229
|
+
};
|
|
230
|
+
Separator: typeof SelectSeparator & {
|
|
231
|
+
props: typeof separatorProps;
|
|
232
|
+
};
|
|
233
|
+
};
|
|
234
|
+
/**
|
|
235
|
+
* Per-part prop and state types, mirroring Base UI's `Component.Part.Props` convention. Types-only —
|
|
236
|
+
* it emits no runtime code and merges with the `Select` object above, so `Select.Item` is the
|
|
237
|
+
* component value while `Select.Item.Props` is its prop type.
|
|
238
|
+
*/
|
|
239
|
+
declare namespace Select {
|
|
240
|
+
/** The spreadable data-attribute prop bag every `Select.*.props()` returns (D12). */
|
|
241
|
+
type PartProps = SelectPartProps;
|
|
242
|
+
/** The control size shared from the root to the trigger. */
|
|
243
|
+
type Size = "md" | "lg";
|
|
244
|
+
namespace Root {
|
|
245
|
+
type Props<Value = unknown, Multiple extends boolean | undefined = false> = select_d_exports.Select.Root.Props<Value, Multiple> & {
|
|
246
|
+
/**
|
|
247
|
+
* The control size, shared with the trigger.
|
|
248
|
+
* @default "md"
|
|
249
|
+
*/
|
|
250
|
+
size?: Size;
|
|
251
|
+
/**
|
|
252
|
+
* Additive shell override that marks the trigger invalid (danger border). The default path is
|
|
253
|
+
* control-driven — a `Field.Root` that turns invalid already marks the trigger.
|
|
254
|
+
* @default false
|
|
255
|
+
*/
|
|
256
|
+
invalid?: boolean;
|
|
257
|
+
};
|
|
258
|
+
type State = select_d_exports.Select.Root.State;
|
|
259
|
+
}
|
|
260
|
+
namespace Trigger {
|
|
261
|
+
type Props = select_d_exports.Select.Trigger.Props;
|
|
262
|
+
type State = select_d_exports.Select.Trigger.State;
|
|
263
|
+
}
|
|
264
|
+
namespace Value {
|
|
265
|
+
type Props = select_d_exports.Select.Value.Props;
|
|
266
|
+
type State = select_d_exports.Select.Value.State;
|
|
267
|
+
}
|
|
268
|
+
namespace Icon {
|
|
269
|
+
type Props = select_d_exports.Select.Icon.Props;
|
|
270
|
+
type State = select_d_exports.Select.Icon.State;
|
|
271
|
+
}
|
|
272
|
+
namespace Backdrop {
|
|
273
|
+
type Props = select_d_exports.Select.Backdrop.Props;
|
|
274
|
+
type State = select_d_exports.Select.Backdrop.State;
|
|
275
|
+
}
|
|
276
|
+
namespace Popup {
|
|
277
|
+
type Props = select_d_exports.Select.Popup.Props & {
|
|
278
|
+
/**
|
|
279
|
+
* Which side of the anchor to open on.
|
|
280
|
+
* @default "bottom"
|
|
281
|
+
*/
|
|
282
|
+
side?: select_d_exports.Select.Positioner.Props["side"];
|
|
283
|
+
/**
|
|
284
|
+
* Alignment along that side.
|
|
285
|
+
* @default "start"
|
|
286
|
+
*/
|
|
287
|
+
align?: select_d_exports.Select.Positioner.Props["align"];
|
|
288
|
+
/**
|
|
289
|
+
* Gap from the anchor, in px. Ignored while the popup overlaps the trigger.
|
|
290
|
+
* @default 6
|
|
291
|
+
*/
|
|
292
|
+
sideOffset?: number;
|
|
293
|
+
/**
|
|
294
|
+
* Overlap the trigger so the selected row's text lines up with the trigger's value (the
|
|
295
|
+
* "overlay" variant; mouse input only, auto-disabled when there isn't room). Set `false` to
|
|
296
|
+
* always open below the trigger (the "below" variant).
|
|
297
|
+
* @default true
|
|
298
|
+
*/
|
|
299
|
+
alignItemWithTrigger?: select_d_exports.Select.Positioner.Props["alignItemWithTrigger"];
|
|
300
|
+
/**
|
|
301
|
+
* Minimum space kept from the viewport edge when avoiding collisions, in px.
|
|
302
|
+
* @default 8
|
|
303
|
+
*/
|
|
304
|
+
collisionPadding?: select_d_exports.Select.Positioner.Props["collisionPadding"];
|
|
305
|
+
};
|
|
306
|
+
}
|
|
307
|
+
namespace ScrollUpArrow {
|
|
308
|
+
type Props = select_d_exports.Select.ScrollUpArrow.Props;
|
|
309
|
+
type State = select_d_exports.Select.ScrollUpArrow.State;
|
|
310
|
+
}
|
|
311
|
+
namespace ScrollDownArrow {
|
|
312
|
+
type Props = select_d_exports.Select.ScrollDownArrow.Props;
|
|
313
|
+
type State = select_d_exports.Select.ScrollDownArrow.State;
|
|
314
|
+
}
|
|
315
|
+
namespace List {
|
|
316
|
+
type Props = select_d_exports.Select.List.Props;
|
|
317
|
+
type State = select_d_exports.Select.List.State;
|
|
318
|
+
}
|
|
319
|
+
namespace Item {
|
|
320
|
+
type Props = select_d_exports.Select.Item.Props & {
|
|
321
|
+
/** Optional leading content for the row — a glyph, colour dot, or avatar in a reserved column. */icon?: ReactNode; /** Optional muted second line beneath the label (a short hint), turning the row two-line. */
|
|
322
|
+
description?: ReactNode;
|
|
323
|
+
};
|
|
324
|
+
type State = select_d_exports.Select.Item.State;
|
|
325
|
+
}
|
|
326
|
+
namespace ItemIcon {
|
|
327
|
+
/** The row's leading content column — a plain `<span>` wrapper; accepts the native span props. */
|
|
328
|
+
type Props = ComponentPropsWithRef<"span">;
|
|
329
|
+
}
|
|
330
|
+
namespace ItemText {
|
|
331
|
+
type Props = select_d_exports.Select.ItemText.Props;
|
|
332
|
+
type State = select_d_exports.Select.ItemText.State;
|
|
333
|
+
}
|
|
334
|
+
namespace ItemDescription {
|
|
335
|
+
/** The row's muted second line — a plain `<span>`; accepts the native span props. */
|
|
336
|
+
type Props = ComponentPropsWithRef<"span">;
|
|
337
|
+
}
|
|
338
|
+
namespace ItemIndicator {
|
|
339
|
+
type Props = select_d_exports.Select.ItemIndicator.Props;
|
|
340
|
+
type State = select_d_exports.Select.ItemIndicator.State;
|
|
341
|
+
}
|
|
342
|
+
namespace Group {
|
|
343
|
+
type Props = select_d_exports.Select.Group.Props;
|
|
344
|
+
type State = select_d_exports.Select.Group.State;
|
|
345
|
+
}
|
|
346
|
+
namespace GroupLabel {
|
|
347
|
+
type Props = select_d_exports.Select.GroupLabel.Props;
|
|
348
|
+
type State = select_d_exports.Select.GroupLabel.State;
|
|
349
|
+
}
|
|
350
|
+
namespace Separator {
|
|
351
|
+
/** A plain `<div role="separator">` between groups; accepts the native div props. */
|
|
352
|
+
type Props = ComponentPropsWithRef<"div">;
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
//#endregion
|
|
356
|
+
export { Select };
|