@neurocle/synapse-react 0.0.0-bootstrap
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/LICENSE +21 -0
- package/README.md +163 -0
- package/dist/_virtual/_rolldown/runtime.mjs +13 -0
- package/dist/components/accordion/accordion.d.mts +38 -0
- package/dist/components/accordion/accordion.d.mts.map +1 -0
- package/dist/components/accordion/accordion.mjs +29 -0
- package/dist/components/accordion/accordion.mjs.map +1 -0
- package/dist/components/accordion/accordion.recipe.mjs +191 -0
- package/dist/components/accordion/accordion.recipe.mjs.map +1 -0
- package/dist/components/accordion/index.d.mts +2 -0
- package/dist/components/accordion/index.mjs +2 -0
- package/dist/components/alert/alert.anatomy.mjs +8 -0
- package/dist/components/alert/alert.anatomy.mjs.map +1 -0
- package/dist/components/alert/alert.connect.d.mts +4 -0
- package/dist/components/alert/alert.connect.d.mts.map +1 -0
- package/dist/components/alert/alert.connect.mjs +39 -0
- package/dist/components/alert/alert.connect.mjs.map +1 -0
- package/dist/components/alert/alert.d.mts +14 -0
- package/dist/components/alert/alert.d.mts.map +1 -0
- package/dist/components/alert/alert.mjs +37 -0
- package/dist/components/alert/alert.mjs.map +1 -0
- package/dist/components/alert/alert.recipe.mjs +141 -0
- package/dist/components/alert/alert.recipe.mjs.map +1 -0
- package/dist/components/alert/index.d.mts +3 -0
- package/dist/components/alert/index.mjs +2 -0
- package/dist/components/angle-slider/angle-slider.d.mts +35 -0
- package/dist/components/angle-slider/angle-slider.d.mts.map +1 -0
- package/dist/components/angle-slider/angle-slider.mjs +41 -0
- package/dist/components/angle-slider/angle-slider.mjs.map +1 -0
- package/dist/components/angle-slider/angle-slider.recipe.mjs +201 -0
- package/dist/components/angle-slider/angle-slider.recipe.mjs.map +1 -0
- package/dist/components/angle-slider/index.d.mts +2 -0
- package/dist/components/angle-slider/index.mjs +2 -0
- package/dist/components/avatar/avatar.d.mts +18 -0
- package/dist/components/avatar/avatar.d.mts.map +1 -0
- package/dist/components/avatar/avatar.mjs +35 -0
- package/dist/components/avatar/avatar.mjs.map +1 -0
- package/dist/components/avatar/avatar.recipe.mjs +113 -0
- package/dist/components/avatar/avatar.recipe.mjs.map +1 -0
- package/dist/components/avatar/index.d.mts +2 -0
- package/dist/components/avatar/index.mjs +2 -0
- package/dist/components/badge/badge.anatomy.mjs +8 -0
- package/dist/components/badge/badge.anatomy.mjs.map +1 -0
- package/dist/components/badge/badge.connect.d.mts +4 -0
- package/dist/components/badge/badge.connect.d.mts.map +1 -0
- package/dist/components/badge/badge.connect.mjs +32 -0
- package/dist/components/badge/badge.connect.mjs.map +1 -0
- package/dist/components/badge/badge.d.mts +14 -0
- package/dist/components/badge/badge.d.mts.map +1 -0
- package/dist/components/badge/badge.mjs +18 -0
- package/dist/components/badge/badge.mjs.map +1 -0
- package/dist/components/badge/badge.recipe.mjs +84 -0
- package/dist/components/badge/badge.recipe.mjs.map +1 -0
- package/dist/components/badge/index.d.mts +3 -0
- package/dist/components/badge/index.mjs +2 -0
- package/dist/components/breadcrumb/breadcrumb.anatomy.mjs +8 -0
- package/dist/components/breadcrumb/breadcrumb.anatomy.mjs.map +1 -0
- package/dist/components/breadcrumb/breadcrumb.connect.mjs +30 -0
- package/dist/components/breadcrumb/breadcrumb.connect.mjs.map +1 -0
- package/dist/components/breadcrumb/breadcrumb.d.mts +10 -0
- package/dist/components/breadcrumb/breadcrumb.d.mts.map +1 -0
- package/dist/components/breadcrumb/breadcrumb.mjs +31 -0
- package/dist/components/breadcrumb/breadcrumb.mjs.map +1 -0
- package/dist/components/breadcrumb/breadcrumb.recipe.mjs +121 -0
- package/dist/components/breadcrumb/breadcrumb.recipe.mjs.map +1 -0
- package/dist/components/breadcrumb/index.d.mts +2 -0
- package/dist/components/breadcrumb/index.mjs +2 -0
- package/dist/components/button/button.anatomy.mjs +8 -0
- package/dist/components/button/button.anatomy.mjs.map +1 -0
- package/dist/components/button/button.connect.mjs +35 -0
- package/dist/components/button/button.connect.mjs.map +1 -0
- package/dist/components/button/button.d.mts +19 -0
- package/dist/components/button/button.d.mts.map +1 -0
- package/dist/components/button/button.mjs +25 -0
- package/dist/components/button/button.mjs.map +1 -0
- package/dist/components/button/button.recipe.mjs +377 -0
- package/dist/components/button/button.recipe.mjs.map +1 -0
- package/dist/components/button/index.d.mts +2 -0
- package/dist/components/button/index.mjs +2 -0
- package/dist/components/card/card.anatomy.mjs +8 -0
- package/dist/components/card/card.anatomy.mjs.map +1 -0
- package/dist/components/card/card.connect.mjs +24 -0
- package/dist/components/card/card.connect.mjs.map +1 -0
- package/dist/components/card/card.d.mts +9 -0
- package/dist/components/card/card.d.mts.map +1 -0
- package/dist/components/card/card.mjs +23 -0
- package/dist/components/card/card.mjs.map +1 -0
- package/dist/components/card/card.recipe.mjs +58 -0
- package/dist/components/card/card.recipe.mjs.map +1 -0
- package/dist/components/card/index.d.mts +2 -0
- package/dist/components/card/index.mjs +2 -0
- package/dist/components/carousel/carousel.d.mts +67 -0
- package/dist/components/carousel/carousel.d.mts.map +1 -0
- package/dist/components/carousel/carousel.mjs +123 -0
- package/dist/components/carousel/carousel.mjs.map +1 -0
- package/dist/components/carousel/carousel.recipe.mjs +131 -0
- package/dist/components/carousel/carousel.recipe.mjs.map +1 -0
- package/dist/components/carousel/index.d.mts +2 -0
- package/dist/components/carousel/index.mjs +2 -0
- package/dist/components/cascade-select/cascade-select.d.mts +102 -0
- package/dist/components/cascade-select/cascade-select.d.mts.map +1 -0
- package/dist/components/cascade-select/cascade-select.mjs +169 -0
- package/dist/components/cascade-select/cascade-select.mjs.map +1 -0
- package/dist/components/cascade-select/cascade-select.recipe.mjs +309 -0
- package/dist/components/cascade-select/cascade-select.recipe.mjs.map +1 -0
- package/dist/components/cascade-select/index.d.mts +2 -0
- package/dist/components/cascade-select/index.mjs +2 -0
- package/dist/components/checkbox/checkbox.d.mts +37 -0
- package/dist/components/checkbox/checkbox.d.mts.map +1 -0
- package/dist/components/checkbox/checkbox.mjs +55 -0
- package/dist/components/checkbox/checkbox.mjs.map +1 -0
- package/dist/components/checkbox/checkbox.recipe.mjs +170 -0
- package/dist/components/checkbox/checkbox.recipe.mjs.map +1 -0
- package/dist/components/checkbox/index.d.mts +2 -0
- package/dist/components/checkbox/index.mjs +2 -0
- package/dist/components/clipboard/clipboard.d.mts +26 -0
- package/dist/components/clipboard/clipboard.d.mts.map +1 -0
- package/dist/components/clipboard/clipboard.mjs +76 -0
- package/dist/components/clipboard/clipboard.mjs.map +1 -0
- package/dist/components/clipboard/clipboard.recipe.mjs +119 -0
- package/dist/components/clipboard/clipboard.recipe.mjs.map +1 -0
- package/dist/components/clipboard/index.d.mts +2 -0
- package/dist/components/clipboard/index.mjs +2 -0
- package/dist/components/collapsible/collapsible.d.mts +21 -0
- package/dist/components/collapsible/collapsible.d.mts.map +1 -0
- package/dist/components/collapsible/collapsible.mjs +23 -0
- package/dist/components/collapsible/collapsible.mjs.map +1 -0
- package/dist/components/collapsible/collapsible.recipe.mjs +159 -0
- package/dist/components/collapsible/collapsible.recipe.mjs.map +1 -0
- package/dist/components/collapsible/index.d.mts +2 -0
- package/dist/components/collapsible/index.mjs +2 -0
- package/dist/components/collection-window.mjs +299 -0
- package/dist/components/collection-window.mjs.map +1 -0
- package/dist/components/color-picker/color-picker.d.mts +67 -0
- package/dist/components/color-picker/color-picker.d.mts.map +1 -0
- package/dist/components/color-picker/color-picker.mjs +230 -0
- package/dist/components/color-picker/color-picker.mjs.map +1 -0
- package/dist/components/color-picker/color-picker.recipe.mjs +345 -0
- package/dist/components/color-picker/color-picker.recipe.mjs.map +1 -0
- package/dist/components/color-picker/index.d.mts +2 -0
- package/dist/components/color-picker/index.mjs +2 -0
- package/dist/components/combobox/combobox.d.mts +129 -0
- package/dist/components/combobox/combobox.d.mts.map +1 -0
- package/dist/components/combobox/combobox.mjs +92 -0
- package/dist/components/combobox/combobox.mjs.map +1 -0
- package/dist/components/combobox/combobox.recipe.mjs +336 -0
- package/dist/components/combobox/combobox.recipe.mjs.map +1 -0
- package/dist/components/combobox/index.d.mts +2 -0
- package/dist/components/combobox/index.mjs +2 -0
- package/dist/components/date-input/date-input.d.mts +69 -0
- package/dist/components/date-input/date-input.d.mts.map +1 -0
- package/dist/components/date-input/date-input.mjs +106 -0
- package/dist/components/date-input/date-input.mjs.map +1 -0
- package/dist/components/date-input/date-input.recipe.mjs +142 -0
- package/dist/components/date-input/date-input.recipe.mjs.map +1 -0
- package/dist/components/date-input/index.d.mts +2 -0
- package/dist/components/date-input/index.mjs +2 -0
- package/dist/components/date-picker/date-picker.d.mts +114 -0
- package/dist/components/date-picker/date-picker.d.mts.map +1 -0
- package/dist/components/date-picker/date-picker.mjs +269 -0
- package/dist/components/date-picker/date-picker.mjs.map +1 -0
- package/dist/components/date-picker/date-picker.recipe.mjs +495 -0
- package/dist/components/date-picker/date-picker.recipe.mjs.map +1 -0
- package/dist/components/date-picker/index.d.mts +2 -0
- package/dist/components/date-picker/index.mjs +2 -0
- package/dist/components/details.d.mts +9 -0
- package/dist/components/details.d.mts.map +1 -0
- package/dist/components/dialog/dialog.d.mts +45 -0
- package/dist/components/dialog/dialog.d.mts.map +1 -0
- package/dist/components/dialog/dialog.mjs +49 -0
- package/dist/components/dialog/dialog.mjs.map +1 -0
- package/dist/components/dialog/dialog.recipe.mjs +138 -0
- package/dist/components/dialog/dialog.recipe.mjs.map +1 -0
- package/dist/components/dialog/index.d.mts +2 -0
- package/dist/components/dialog/index.mjs +2 -0
- package/dist/components/drawer/drawer.d.mts +62 -0
- package/dist/components/drawer/drawer.d.mts.map +1 -0
- package/dist/components/drawer/drawer.mjs +65 -0
- package/dist/components/drawer/drawer.mjs.map +1 -0
- package/dist/components/drawer/drawer.recipe.mjs +201 -0
- package/dist/components/drawer/drawer.recipe.mjs.map +1 -0
- package/dist/components/drawer/index.d.mts +2 -0
- package/dist/components/drawer/index.mjs +2 -0
- package/dist/components/editable/editable.d.mts +62 -0
- package/dist/components/editable/editable.d.mts.map +1 -0
- package/dist/components/editable/editable.mjs +78 -0
- package/dist/components/editable/editable.mjs.map +1 -0
- package/dist/components/editable/editable.recipe.mjs +152 -0
- package/dist/components/editable/editable.recipe.mjs.map +1 -0
- package/dist/components/editable/index.d.mts +2 -0
- package/dist/components/editable/index.mjs +2 -0
- package/dist/components/empty-state/empty-state.anatomy.mjs +8 -0
- package/dist/components/empty-state/empty-state.anatomy.mjs.map +1 -0
- package/dist/components/empty-state/empty-state.connect.mjs +26 -0
- package/dist/components/empty-state/empty-state.connect.mjs.map +1 -0
- package/dist/components/empty-state/empty-state.d.mts +10 -0
- package/dist/components/empty-state/empty-state.d.mts.map +1 -0
- package/dist/components/empty-state/empty-state.mjs +24 -0
- package/dist/components/empty-state/empty-state.mjs.map +1 -0
- package/dist/components/empty-state/empty-state.recipe.mjs +134 -0
- package/dist/components/empty-state/empty-state.recipe.mjs.map +1 -0
- package/dist/components/empty-state/index.d.mts +2 -0
- package/dist/components/empty-state/index.mjs +2 -0
- package/dist/components/field/field.anatomy.mjs +8 -0
- package/dist/components/field/field.anatomy.mjs.map +1 -0
- package/dist/components/field/field.connect.mjs +117 -0
- package/dist/components/field/field.connect.mjs.map +1 -0
- package/dist/components/field/field.d.mts +19 -0
- package/dist/components/field/field.d.mts.map +1 -0
- package/dist/components/field/field.mjs +77 -0
- package/dist/components/field/field.mjs.map +1 -0
- package/dist/components/field/field.recipe.mjs +60 -0
- package/dist/components/field/field.recipe.mjs.map +1 -0
- package/dist/components/field/index.d.mts +2 -0
- package/dist/components/field/index.mjs +2 -0
- package/dist/components/fieldset/fieldset.anatomy.mjs +8 -0
- package/dist/components/fieldset/fieldset.anatomy.mjs.map +1 -0
- package/dist/components/fieldset/fieldset.connect.mjs +60 -0
- package/dist/components/fieldset/fieldset.connect.mjs.map +1 -0
- package/dist/components/fieldset/fieldset.d.mts +13 -0
- package/dist/components/fieldset/fieldset.d.mts.map +1 -0
- package/dist/components/fieldset/fieldset.mjs +26 -0
- package/dist/components/fieldset/fieldset.mjs.map +1 -0
- package/dist/components/fieldset/fieldset.recipe.mjs +42 -0
- package/dist/components/fieldset/fieldset.recipe.mjs.map +1 -0
- package/dist/components/fieldset/index.d.mts +2 -0
- package/dist/components/fieldset/index.mjs +2 -0
- package/dist/components/file-upload/file-upload.d.mts +105 -0
- package/dist/components/file-upload/file-upload.d.mts.map +1 -0
- package/dist/components/file-upload/file-upload.mjs +127 -0
- package/dist/components/file-upload/file-upload.mjs.map +1 -0
- package/dist/components/file-upload/file-upload.recipe.mjs +236 -0
- package/dist/components/file-upload/file-upload.recipe.mjs.map +1 -0
- package/dist/components/file-upload/index.d.mts +2 -0
- package/dist/components/file-upload/index.mjs +2 -0
- package/dist/components/floating-panel/floating-panel.d.mts +87 -0
- package/dist/components/floating-panel/floating-panel.d.mts.map +1 -0
- package/dist/components/floating-panel/floating-panel.mjs +89 -0
- package/dist/components/floating-panel/floating-panel.mjs.map +1 -0
- package/dist/components/floating-panel/floating-panel.recipe.mjs +156 -0
- package/dist/components/floating-panel/floating-panel.recipe.mjs.map +1 -0
- package/dist/components/floating-panel/index.d.mts +2 -0
- package/dist/components/floating-panel/index.mjs +2 -0
- package/dist/components/hover-card/hover-card.d.mts +48 -0
- package/dist/components/hover-card/hover-card.d.mts.map +1 -0
- package/dist/components/hover-card/hover-card.mjs +31 -0
- package/dist/components/hover-card/hover-card.mjs.map +1 -0
- package/dist/components/hover-card/hover-card.recipe.mjs +133 -0
- package/dist/components/hover-card/hover-card.recipe.mjs.map +1 -0
- package/dist/components/hover-card/index.d.mts +2 -0
- package/dist/components/hover-card/index.mjs +2 -0
- package/dist/components/image-cropper/image-cropper.d.mts +111 -0
- package/dist/components/image-cropper/image-cropper.d.mts.map +1 -0
- package/dist/components/image-cropper/image-cropper.mjs +71 -0
- package/dist/components/image-cropper/image-cropper.mjs.map +1 -0
- package/dist/components/image-cropper/image-cropper.recipe.mjs +126 -0
- package/dist/components/image-cropper/image-cropper.recipe.mjs.map +1 -0
- package/dist/components/image-cropper/index.d.mts +2 -0
- package/dist/components/image-cropper/index.mjs +2 -0
- package/dist/components/input/index.d.mts +2 -0
- package/dist/components/input/index.mjs +2 -0
- package/dist/components/input/input.anatomy.mjs +8 -0
- package/dist/components/input/input.anatomy.mjs.map +1 -0
- package/dist/components/input/input.connect.mjs +82 -0
- package/dist/components/input/input.connect.mjs.map +1 -0
- package/dist/components/input/input.d.mts +31 -0
- package/dist/components/input/input.d.mts.map +1 -0
- package/dist/components/input/input.mjs +37 -0
- package/dist/components/input/input.mjs.map +1 -0
- package/dist/components/input/input.recipe.mjs +111 -0
- package/dist/components/input/input.recipe.mjs.map +1 -0
- package/dist/components/kbd/index.d.mts +2 -0
- package/dist/components/kbd/index.mjs +2 -0
- package/dist/components/kbd/kbd.anatomy.mjs +8 -0
- package/dist/components/kbd/kbd.anatomy.mjs.map +1 -0
- package/dist/components/kbd/kbd.connect.mjs +17 -0
- package/dist/components/kbd/kbd.connect.mjs.map +1 -0
- package/dist/components/kbd/kbd.d.mts +10 -0
- package/dist/components/kbd/kbd.d.mts.map +1 -0
- package/dist/components/kbd/kbd.mjs +18 -0
- package/dist/components/kbd/kbd.mjs.map +1 -0
- package/dist/components/kbd/kbd.recipe.mjs +55 -0
- package/dist/components/kbd/kbd.recipe.mjs.map +1 -0
- package/dist/components/listbox/index.d.mts +2 -0
- package/dist/components/listbox/index.mjs +2 -0
- package/dist/components/listbox/listbox.d.mts +70 -0
- package/dist/components/listbox/listbox.d.mts.map +1 -0
- package/dist/components/listbox/listbox.mjs +79 -0
- package/dist/components/listbox/listbox.mjs.map +1 -0
- package/dist/components/listbox/listbox.recipe.mjs +169 -0
- package/dist/components/listbox/listbox.recipe.mjs.map +1 -0
- package/dist/components/machine-translations.mjs +8 -0
- package/dist/components/machine-translations.mjs.map +1 -0
- package/dist/components/marquee/index.d.mts +2 -0
- package/dist/components/marquee/index.mjs +2 -0
- package/dist/components/marquee/marquee.d.mts +53 -0
- package/dist/components/marquee/marquee.d.mts.map +1 -0
- package/dist/components/marquee/marquee.mjs +30 -0
- package/dist/components/marquee/marquee.mjs.map +1 -0
- package/dist/components/marquee/marquee.recipe.mjs +123 -0
- package/dist/components/marquee/marquee.recipe.mjs.map +1 -0
- package/dist/components/menu/index.d.mts +2 -0
- package/dist/components/menu/index.mjs +2 -0
- package/dist/components/menu/menu.d.mts +66 -0
- package/dist/components/menu/menu.d.mts.map +1 -0
- package/dist/components/menu/menu.mjs +68 -0
- package/dist/components/menu/menu.mjs.map +1 -0
- package/dist/components/menu/menu.recipe.mjs +285 -0
- package/dist/components/menu/menu.recipe.mjs.map +1 -0
- package/dist/components/navigation-menu/index.d.mts +2 -0
- package/dist/components/navigation-menu/index.mjs +2 -0
- package/dist/components/navigation-menu/navigation-menu.d.mts +42 -0
- package/dist/components/navigation-menu/navigation-menu.d.mts.map +1 -0
- package/dist/components/navigation-menu/navigation-menu.mjs +47 -0
- package/dist/components/navigation-menu/navigation-menu.mjs.map +1 -0
- package/dist/components/navigation-menu/navigation-menu.recipe.mjs +271 -0
- package/dist/components/navigation-menu/navigation-menu.recipe.mjs.map +1 -0
- package/dist/components/number-input/index.d.mts +2 -0
- package/dist/components/number-input/index.mjs +2 -0
- package/dist/components/number-input/number-input.d.mts +88 -0
- package/dist/components/number-input/number-input.d.mts.map +1 -0
- package/dist/components/number-input/number-input.mjs +70 -0
- package/dist/components/number-input/number-input.mjs.map +1 -0
- package/dist/components/number-input/number-input.recipe.mjs +231 -0
- package/dist/components/number-input/number-input.recipe.mjs.map +1 -0
- package/dist/components/pagination/index.d.mts +2 -0
- package/dist/components/pagination/index.mjs +2 -0
- package/dist/components/pagination/pagination.d.mts +51 -0
- package/dist/components/pagination/pagination.d.mts.map +1 -0
- package/dist/components/pagination/pagination.mjs +74 -0
- package/dist/components/pagination/pagination.mjs.map +1 -0
- package/dist/components/pagination/pagination.recipe.mjs +144 -0
- package/dist/components/pagination/pagination.recipe.mjs.map +1 -0
- package/dist/components/password-input/index.d.mts +2 -0
- package/dist/components/password-input/index.mjs +2 -0
- package/dist/components/password-input/password-input.d.mts +37 -0
- package/dist/components/password-input/password-input.d.mts.map +1 -0
- package/dist/components/password-input/password-input.mjs +58 -0
- package/dist/components/password-input/password-input.mjs.map +1 -0
- package/dist/components/password-input/password-input.recipe.mjs +180 -0
- package/dist/components/password-input/password-input.recipe.mjs.map +1 -0
- package/dist/components/pin-input/index.d.mts +2 -0
- package/dist/components/pin-input/index.mjs +2 -0
- package/dist/components/pin-input/pin-input.d.mts +68 -0
- package/dist/components/pin-input/pin-input.d.mts.map +1 -0
- package/dist/components/pin-input/pin-input.mjs +51 -0
- package/dist/components/pin-input/pin-input.mjs.map +1 -0
- package/dist/components/pin-input/pin-input.recipe.mjs +81 -0
- package/dist/components/pin-input/pin-input.recipe.mjs.map +1 -0
- package/dist/components/popover/index.d.mts +2 -0
- package/dist/components/popover/index.mjs +2 -0
- package/dist/components/popover/popover.d.mts +42 -0
- package/dist/components/popover/popover.d.mts.map +1 -0
- package/dist/components/popover/popover.mjs +50 -0
- package/dist/components/popover/popover.mjs.map +1 -0
- package/dist/components/popover/popover.recipe.mjs +162 -0
- package/dist/components/popover/popover.recipe.mjs.map +1 -0
- package/dist/components/progress/index.d.mts +2 -0
- package/dist/components/progress/index.mjs +2 -0
- package/dist/components/progress/progress.d.mts +31 -0
- package/dist/components/progress/progress.d.mts.map +1 -0
- package/dist/components/progress/progress.mjs +42 -0
- package/dist/components/progress/progress.mjs.map +1 -0
- package/dist/components/progress/progress.recipe.mjs +189 -0
- package/dist/components/progress/progress.recipe.mjs.map +1 -0
- package/dist/components/qr-code/index.d.mts +2 -0
- package/dist/components/qr-code/index.mjs +2 -0
- package/dist/components/qr-code/qr-code.d.mts +36 -0
- package/dist/components/qr-code/qr-code.d.mts.map +1 -0
- package/dist/components/qr-code/qr-code.mjs +41 -0
- package/dist/components/qr-code/qr-code.mjs.map +1 -0
- package/dist/components/qr-code/qr-code.recipe.mjs +70 -0
- package/dist/components/qr-code/qr-code.recipe.mjs.map +1 -0
- package/dist/components/radio-group/index.d.mts +2 -0
- package/dist/components/radio-group/index.mjs +2 -0
- package/dist/components/radio-group/radio-group.d.mts +33 -0
- package/dist/components/radio-group/radio-group.d.mts.map +1 -0
- package/dist/components/radio-group/radio-group.mjs +47 -0
- package/dist/components/radio-group/radio-group.mjs.map +1 -0
- package/dist/components/radio-group/radio-group.recipe.mjs +189 -0
- package/dist/components/radio-group/radio-group.recipe.mjs.map +1 -0
- package/dist/components/rating-group/index.d.mts +2 -0
- package/dist/components/rating-group/index.mjs +2 -0
- package/dist/components/rating-group/rating-group.d.mts +43 -0
- package/dist/components/rating-group/rating-group.d.mts.map +1 -0
- package/dist/components/rating-group/rating-group.mjs +39 -0
- package/dist/components/rating-group/rating-group.mjs.map +1 -0
- package/dist/components/rating-group/rating-group.recipe.mjs +133 -0
- package/dist/components/rating-group/rating-group.recipe.mjs.map +1 -0
- package/dist/components/scroll-area/index.d.mts +2 -0
- package/dist/components/scroll-area/index.mjs +2 -0
- package/dist/components/scroll-area/scroll-area.d.mts +12 -0
- package/dist/components/scroll-area/scroll-area.d.mts.map +1 -0
- package/dist/components/scroll-area/scroll-area.mjs +31 -0
- package/dist/components/scroll-area/scroll-area.mjs.map +1 -0
- package/dist/components/scroll-area/scroll-area.recipe.mjs +76 -0
- package/dist/components/scroll-area/scroll-area.recipe.mjs.map +1 -0
- package/dist/components/select/index.d.mts +2 -0
- package/dist/components/select/index.mjs +2 -0
- package/dist/components/select/select.d.mts +90 -0
- package/dist/components/select/select.d.mts.map +1 -0
- package/dist/components/select/select.mjs +83 -0
- package/dist/components/select/select.mjs.map +1 -0
- package/dist/components/select/select.recipe.mjs +298 -0
- package/dist/components/select/select.recipe.mjs.map +1 -0
- package/dist/components/separator/index.d.mts +2 -0
- package/dist/components/separator/index.mjs +2 -0
- package/dist/components/separator/separator.anatomy.mjs +8 -0
- package/dist/components/separator/separator.anatomy.mjs.map +1 -0
- package/dist/components/separator/separator.connect.mjs +28 -0
- package/dist/components/separator/separator.connect.mjs.map +1 -0
- package/dist/components/separator/separator.d.mts +11 -0
- package/dist/components/separator/separator.d.mts.map +1 -0
- package/dist/components/separator/separator.mjs +15 -0
- package/dist/components/separator/separator.mjs.map +1 -0
- package/dist/components/separator/separator.recipe.mjs +22 -0
- package/dist/components/separator/separator.recipe.mjs.map +1 -0
- package/dist/components/signature-pad/index.d.mts +2 -0
- package/dist/components/signature-pad/index.mjs +2 -0
- package/dist/components/signature-pad/signature-pad.d.mts +44 -0
- package/dist/components/signature-pad/signature-pad.d.mts.map +1 -0
- package/dist/components/signature-pad/signature-pad.mjs +90 -0
- package/dist/components/signature-pad/signature-pad.mjs.map +1 -0
- package/dist/components/signature-pad/signature-pad.recipe.mjs +111 -0
- package/dist/components/signature-pad/signature-pad.recipe.mjs.map +1 -0
- package/dist/components/skeleton/index.d.mts +2 -0
- package/dist/components/skeleton/index.mjs +2 -0
- package/dist/components/skeleton/skeleton.anatomy.mjs +8 -0
- package/dist/components/skeleton/skeleton.anatomy.mjs.map +1 -0
- package/dist/components/skeleton/skeleton.connect.mjs +26 -0
- package/dist/components/skeleton/skeleton.connect.mjs.map +1 -0
- package/dist/components/skeleton/skeleton.d.mts +9 -0
- package/dist/components/skeleton/skeleton.d.mts.map +1 -0
- package/dist/components/skeleton/skeleton.mjs +16 -0
- package/dist/components/skeleton/skeleton.mjs.map +1 -0
- package/dist/components/skeleton/skeleton.recipe.mjs +46 -0
- package/dist/components/skeleton/skeleton.recipe.mjs.map +1 -0
- package/dist/components/slider/index.d.mts +2 -0
- package/dist/components/slider/index.mjs +2 -0
- package/dist/components/slider/slider.d.mts +72 -0
- package/dist/components/slider/slider.d.mts.map +1 -0
- package/dist/components/slider/slider.mjs +34 -0
- package/dist/components/slider/slider.mjs.map +1 -0
- package/dist/components/slider/slider.recipe.mjs +219 -0
- package/dist/components/slider/slider.recipe.mjs.map +1 -0
- package/dist/components/snackbar/index.d.mts +2 -0
- package/dist/components/snackbar/index.mjs +2 -0
- package/dist/components/snackbar/snackbar.d.mts +57 -0
- package/dist/components/snackbar/snackbar.d.mts.map +1 -0
- package/dist/components/snackbar/snackbar.mjs +226 -0
- package/dist/components/snackbar/snackbar.mjs.map +1 -0
- package/dist/components/snackbar/snackbar.recipe.mjs +217 -0
- package/dist/components/snackbar/snackbar.recipe.mjs.map +1 -0
- package/dist/components/spinner/index.d.mts +2 -0
- package/dist/components/spinner/index.mjs +2 -0
- package/dist/components/spinner/spinner.anatomy.mjs +8 -0
- package/dist/components/spinner/spinner.anatomy.mjs.map +1 -0
- package/dist/components/spinner/spinner.connect.mjs +27 -0
- package/dist/components/spinner/spinner.connect.mjs.map +1 -0
- package/dist/components/spinner/spinner.d.mts +10 -0
- package/dist/components/spinner/spinner.d.mts.map +1 -0
- package/dist/components/spinner/spinner.mjs +25 -0
- package/dist/components/spinner/spinner.mjs.map +1 -0
- package/dist/components/spinner/spinner.recipe.mjs +70 -0
- package/dist/components/spinner/spinner.recipe.mjs.map +1 -0
- package/dist/components/splitter/index.d.mts +2 -0
- package/dist/components/splitter/index.mjs +2 -0
- package/dist/components/splitter/splitter.d.mts +57 -0
- package/dist/components/splitter/splitter.d.mts.map +1 -0
- package/dist/components/splitter/splitter.mjs +40 -0
- package/dist/components/splitter/splitter.mjs.map +1 -0
- package/dist/components/splitter/splitter.recipe.mjs +129 -0
- package/dist/components/splitter/splitter.recipe.mjs.map +1 -0
- package/dist/components/steps/index.d.mts +2 -0
- package/dist/components/steps/index.mjs +2 -0
- package/dist/components/steps/steps.d.mts +42 -0
- package/dist/components/steps/steps.d.mts.map +1 -0
- package/dist/components/steps/steps.mjs +72 -0
- package/dist/components/steps/steps.mjs.map +1 -0
- package/dist/components/steps/steps.recipe.mjs +291 -0
- package/dist/components/steps/steps.recipe.mjs.map +1 -0
- package/dist/components/switch/index.d.mts +2 -0
- package/dist/components/switch/index.mjs +2 -0
- package/dist/components/switch/switch.d.mts +36 -0
- package/dist/components/switch/switch.d.mts.map +1 -0
- package/dist/components/switch/switch.mjs +50 -0
- package/dist/components/switch/switch.mjs.map +1 -0
- package/dist/components/switch/switch.recipe.mjs +171 -0
- package/dist/components/switch/switch.recipe.mjs.map +1 -0
- package/dist/components/table/index.d.mts +2 -0
- package/dist/components/table/index.mjs +2 -0
- package/dist/components/table/table.anatomy.mjs +8 -0
- package/dist/components/table/table.anatomy.mjs.map +1 -0
- package/dist/components/table/table.connect.mjs +50 -0
- package/dist/components/table/table.connect.mjs.map +1 -0
- package/dist/components/table/table.d.mts +10 -0
- package/dist/components/table/table.d.mts.map +1 -0
- package/dist/components/table/table.mjs +90 -0
- package/dist/components/table/table.mjs.map +1 -0
- package/dist/components/table/table.recipe.mjs +186 -0
- package/dist/components/table/table.recipe.mjs.map +1 -0
- package/dist/components/tabs/index.d.mts +2 -0
- package/dist/components/tabs/index.mjs +2 -0
- package/dist/components/tabs/tabs.d.mts +40 -0
- package/dist/components/tabs/tabs.d.mts.map +1 -0
- package/dist/components/tabs/tabs.mjs +23 -0
- package/dist/components/tabs/tabs.mjs.map +1 -0
- package/dist/components/tabs/tabs.recipe.mjs +182 -0
- package/dist/components/tabs/tabs.recipe.mjs.map +1 -0
- package/dist/components/tags-input/index.d.mts +2 -0
- package/dist/components/tags-input/index.mjs +2 -0
- package/dist/components/tags-input/tags-input.d.mts +77 -0
- package/dist/components/tags-input/tags-input.d.mts.map +1 -0
- package/dist/components/tags-input/tags-input.mjs +103 -0
- package/dist/components/tags-input/tags-input.mjs.map +1 -0
- package/dist/components/tags-input/tags-input.recipe.mjs +320 -0
- package/dist/components/tags-input/tags-input.recipe.mjs.map +1 -0
- package/dist/components/textarea/index.d.mts +2 -0
- package/dist/components/textarea/index.mjs +2 -0
- package/dist/components/textarea/textarea.anatomy.mjs +8 -0
- package/dist/components/textarea/textarea.anatomy.mjs.map +1 -0
- package/dist/components/textarea/textarea.connect.mjs +82 -0
- package/dist/components/textarea/textarea.connect.mjs.map +1 -0
- package/dist/components/textarea/textarea.d.mts +32 -0
- package/dist/components/textarea/textarea.d.mts.map +1 -0
- package/dist/components/textarea/textarea.mjs +41 -0
- package/dist/components/textarea/textarea.mjs.map +1 -0
- package/dist/components/textarea/textarea.recipe.mjs +58 -0
- package/dist/components/textarea/textarea.recipe.mjs.map +1 -0
- package/dist/components/timer/index.d.mts +2 -0
- package/dist/components/timer/index.mjs +2 -0
- package/dist/components/timer/timer.d.mts +31 -0
- package/dist/components/timer/timer.d.mts.map +1 -0
- package/dist/components/timer/timer.mjs +98 -0
- package/dist/components/timer/timer.mjs.map +1 -0
- package/dist/components/timer/timer.recipe.mjs +99 -0
- package/dist/components/timer/timer.recipe.mjs.map +1 -0
- package/dist/components/toast/index.d.mts +2 -0
- package/dist/components/toast/index.mjs +2 -0
- package/dist/components/toast/toast.d.mts +55 -0
- package/dist/components/toast/toast.d.mts.map +1 -0
- package/dist/components/toast/toast.mjs +194 -0
- package/dist/components/toast/toast.mjs.map +1 -0
- package/dist/components/toast/toast.recipe.mjs +172 -0
- package/dist/components/toast/toast.recipe.mjs.map +1 -0
- package/dist/components/toc/index.d.mts +2 -0
- package/dist/components/toc/index.mjs +2 -0
- package/dist/components/toc/toc.d.mts +47 -0
- package/dist/components/toc/toc.d.mts.map +1 -0
- package/dist/components/toc/toc.mjs +239 -0
- package/dist/components/toc/toc.mjs.map +1 -0
- package/dist/components/toc/toc.recipe.mjs +147 -0
- package/dist/components/toc/toc.recipe.mjs.map +1 -0
- package/dist/components/toggle/index.d.mts +2 -0
- package/dist/components/toggle/index.mjs +2 -0
- package/dist/components/toggle/toggle.d.mts +21 -0
- package/dist/components/toggle/toggle.d.mts.map +1 -0
- package/dist/components/toggle/toggle.mjs +34 -0
- package/dist/components/toggle/toggle.mjs.map +1 -0
- package/dist/components/toggle/toggle.recipe.mjs +175 -0
- package/dist/components/toggle/toggle.recipe.mjs.map +1 -0
- package/dist/components/toggle-group/index.d.mts +2 -0
- package/dist/components/toggle-group/index.mjs +2 -0
- package/dist/components/toggle-group/toggle-group.d.mts +29 -0
- package/dist/components/toggle-group/toggle-group.d.mts.map +1 -0
- package/dist/components/toggle-group/toggle-group.mjs +18 -0
- package/dist/components/toggle-group/toggle-group.mjs.map +1 -0
- package/dist/components/toggle-group/toggle-group.recipe.mjs +190 -0
- package/dist/components/toggle-group/toggle-group.recipe.mjs.map +1 -0
- package/dist/components/tooltip/index.d.mts +2 -0
- package/dist/components/tooltip/index.mjs +2 -0
- package/dist/components/tooltip/tooltip.d.mts +66 -0
- package/dist/components/tooltip/tooltip.d.mts.map +1 -0
- package/dist/components/tooltip/tooltip.mjs +64 -0
- package/dist/components/tooltip/tooltip.mjs.map +1 -0
- package/dist/components/tooltip/tooltip.recipe.mjs +149 -0
- package/dist/components/tooltip/tooltip.recipe.mjs.map +1 -0
- package/dist/components/tour/index.d.mts +2 -0
- package/dist/components/tour/index.mjs +2 -0
- package/dist/components/tour/tour.d.mts +92 -0
- package/dist/components/tour/tour.d.mts.map +1 -0
- package/dist/components/tour/tour.mjs +89 -0
- package/dist/components/tour/tour.mjs.map +1 -0
- package/dist/components/tour/tour.recipe.mjs +164 -0
- package/dist/components/tour/tour.recipe.mjs.map +1 -0
- package/dist/components/tree-view/index.d.mts +2 -0
- package/dist/components/tree-view/index.mjs +2 -0
- package/dist/components/tree-view/tree-view.d.mts +108 -0
- package/dist/components/tree-view/tree-view.d.mts.map +1 -0
- package/dist/components/tree-view/tree-view.mjs +145 -0
- package/dist/components/tree-view/tree-view.mjs.map +1 -0
- package/dist/components/tree-view/tree-view.recipe.mjs +458 -0
- package/dist/components/tree-view/tree-view.recipe.mjs.map +1 -0
- package/dist/icons/src/calendar.mjs +13 -0
- package/dist/icons/src/calendar.mjs.map +1 -0
- package/dist/icons/src/checkmark.mjs +13 -0
- package/dist/icons/src/checkmark.mjs.map +1 -0
- package/dist/icons/src/chevron-down.mjs +13 -0
- package/dist/icons/src/chevron-down.mjs.map +1 -0
- package/dist/icons/src/chevron-left.mjs +13 -0
- package/dist/icons/src/chevron-left.mjs.map +1 -0
- package/dist/icons/src/chevron-right.mjs +13 -0
- package/dist/icons/src/chevron-right.mjs.map +1 -0
- package/dist/icons/src/chevron-up.mjs +13 -0
- package/dist/icons/src/chevron-up.mjs.map +1 -0
- package/dist/icons/src/chevrons-left.mjs +13 -0
- package/dist/icons/src/chevrons-left.mjs.map +1 -0
- package/dist/icons/src/chevrons-right.mjs +13 -0
- package/dist/icons/src/chevrons-right.mjs.map +1 -0
- package/dist/icons/src/chevrons-up-down.mjs +13 -0
- package/dist/icons/src/chevrons-up-down.mjs.map +1 -0
- package/dist/icons/src/close.mjs +13 -0
- package/dist/icons/src/close.mjs.map +1 -0
- package/dist/icons/src/copy.mjs +13 -0
- package/dist/icons/src/copy.mjs.map +1 -0
- package/dist/icons/src/edit.mjs +13 -0
- package/dist/icons/src/edit.mjs.map +1 -0
- package/dist/icons/src/error.mjs +13 -0
- package/dist/icons/src/error.mjs.map +1 -0
- package/dist/icons/src/eyedropper.mjs +13 -0
- package/dist/icons/src/eyedropper.mjs.map +1 -0
- package/dist/icons/src/file.mjs +13 -0
- package/dist/icons/src/file.mjs.map +1 -0
- package/dist/icons/src/hide.mjs +13 -0
- package/dist/icons/src/hide.mjs.map +1 -0
- package/dist/icons/src/index.mjs +58 -0
- package/dist/icons/src/index.mjs.map +1 -0
- package/dist/icons/src/info.mjs +13 -0
- package/dist/icons/src/info.mjs.map +1 -0
- package/dist/icons/src/maximize.mjs +13 -0
- package/dist/icons/src/maximize.mjs.map +1 -0
- package/dist/icons/src/minus.mjs +13 -0
- package/dist/icons/src/minus.mjs.map +1 -0
- package/dist/icons/src/pause.mjs +13 -0
- package/dist/icons/src/pause.mjs.map +1 -0
- package/dist/icons/src/play.mjs +13 -0
- package/dist/icons/src/play.mjs.map +1 -0
- package/dist/icons/src/reset.mjs +13 -0
- package/dist/icons/src/reset.mjs.map +1 -0
- package/dist/icons/src/restore.mjs +13 -0
- package/dist/icons/src/restore.mjs.map +1 -0
- package/dist/icons/src/show.mjs +13 -0
- package/dist/icons/src/show.mjs.map +1 -0
- package/dist/icons/src/star.mjs +13 -0
- package/dist/icons/src/star.mjs.map +1 -0
- package/dist/icons/src/success.mjs +2 -0
- package/dist/icons/src/trash.mjs +13 -0
- package/dist/icons/src/trash.mjs.map +1 -0
- package/dist/icons/src/user.mjs +13 -0
- package/dist/icons/src/user.mjs.map +1 -0
- package/dist/icons/src/warning.mjs +13 -0
- package/dist/icons/src/warning.mjs.map +1 -0
- package/dist/index.d.mts +139 -0
- package/dist/index.mjs +71 -0
- package/dist/preset.d.mts +2 -0
- package/dist/preset.mjs +2 -0
- package/dist/provider/locale-context.mjs +36 -0
- package/dist/provider/locale-context.mjs.map +1 -0
- package/dist/provider/synapse-provider.d.mts +17 -0
- package/dist/provider/synapse-provider.d.mts.map +1 -0
- package/dist/provider/synapse-provider.mjs +59 -0
- package/dist/provider/synapse-provider.mjs.map +1 -0
- package/dist/provider/translations.d.mts +179 -0
- package/dist/provider/translations.d.mts.map +1 -0
- package/dist/provider/translations.mjs +201 -0
- package/dist/provider/translations.mjs.map +1 -0
- package/dist/provider/use-theme.d.mts +7 -0
- package/dist/provider/use-theme.d.mts.map +1 -0
- package/dist/provider/use-theme.mjs +37 -0
- package/dist/provider/use-theme.mjs.map +1 -0
- package/dist/react/styled-system/css/conditions.mjs +29 -0
- package/dist/react/styled-system/css/conditions.mjs.map +1 -0
- package/dist/react/styled-system/css/css.mjs +39 -0
- package/dist/react/styled-system/css/css.mjs.map +1 -0
- package/dist/react/styled-system/css/cva.mjs +66 -0
- package/dist/react/styled-system/css/cva.mjs.map +1 -0
- package/dist/react/styled-system/css/cx.mjs +13 -0
- package/dist/react/styled-system/css/cx.mjs.map +1 -0
- package/dist/react/styled-system/css/sva.mjs +44 -0
- package/dist/react/styled-system/css/sva.mjs.map +1 -0
- package/dist/react/styled-system/helpers.mjs +231 -0
- package/dist/react/styled-system/helpers.mjs.map +1 -0
- package/dist/shared/button-style.mjs +10 -0
- package/dist/shared/button-style.mjs.map +1 -0
- package/dist/shared/character-count.mjs +29 -0
- package/dist/shared/character-count.mjs.map +1 -0
- package/dist/shared/collection-internal.mjs +24 -0
- package/dist/shared/collection-internal.mjs.map +1 -0
- package/dist/shared/collection.d.mts +120 -0
- package/dist/shared/collection.d.mts.map +1 -0
- package/dist/shared/collection.mjs +395 -0
- package/dist/shared/collection.mjs.map +1 -0
- package/dist/shared/controller.d.mts +4 -0
- package/dist/shared/controller.d.mts.map +1 -0
- package/dist/shared/controller.mjs +53 -0
- package/dist/shared/controller.mjs.map +1 -0
- package/dist/shared/field-context.mjs +47 -0
- package/dist/shared/field-context.mjs.map +1 -0
- package/dist/shared/field-description.mjs +13 -0
- package/dist/shared/field-description.mjs.map +1 -0
- package/dist/shared/icon.mjs +23 -0
- package/dist/shared/icon.mjs.map +1 -0
- package/dist/shared/input-modality.mjs +47 -0
- package/dist/shared/input-modality.mjs.map +1 -0
- package/dist/shared/input-style.mjs +10 -0
- package/dist/shared/input-style.mjs.map +1 -0
- package/dist/shared/layering.d.mts +17 -0
- package/dist/shared/layering.d.mts.map +1 -0
- package/dist/shared/layering.mjs +37 -0
- package/dist/shared/layering.mjs.map +1 -0
- package/dist/shared/notification.d.mts +10 -0
- package/dist/shared/notification.d.mts.map +1 -0
- package/dist/shared/notification.mjs +105 -0
- package/dist/shared/notification.mjs.map +1 -0
- package/dist/shared/reduced-motion.mjs +19 -0
- package/dist/shared/reduced-motion.mjs.map +1 -0
- package/dist/shared/select-indicator.mjs +40 -0
- package/dist/shared/select-indicator.mjs.map +1 -0
- package/dist/shared/size-scale.d.mts +6 -0
- package/dist/shared/size-scale.d.mts.map +1 -0
- package/dist/shared/size-scale.mjs +28 -0
- package/dist/shared/size-scale.mjs.map +1 -0
- package/dist/shared/state-parts.mjs +123 -0
- package/dist/shared/state-parts.mjs.map +1 -0
- package/dist/shared/text-entry.mjs +54 -0
- package/dist/shared/text-entry.mjs.map +1 -0
- package/dist/styles.css +6238 -0
- package/dist/system/as-child.mjs +42 -0
- package/dist/system/as-child.mjs.map +1 -0
- package/dist/system/context.mjs +54 -0
- package/dist/system/context.mjs.map +1 -0
- package/dist/system/controlled.mjs +45 -0
- package/dist/system/controlled.mjs.map +1 -0
- package/dist/system/create-component.mjs +285 -0
- package/dist/system/create-component.mjs.map +1 -0
- package/dist/system/create-part.mjs +123 -0
- package/dist/system/create-part.mjs.map +1 -0
- package/dist/system/dev-warn.mjs +13 -0
- package/dist/system/dev-warn.mjs.map +1 -0
- package/dist/system/getters.mjs +24 -0
- package/dist/system/getters.mjs.map +1 -0
- package/dist/system/merge-props.d.mts +5 -0
- package/dist/system/merge-props.d.mts.map +1 -0
- package/dist/system/merge-props.mjs +95 -0
- package/dist/system/merge-props.mjs.map +1 -0
- package/dist/system/react-node.mjs +17 -0
- package/dist/system/react-node.mjs.map +1 -0
- package/dist/system/refs.mjs +21 -0
- package/dist/system/refs.mjs.map +1 -0
- package/dist/system/styled-component.mjs +15 -0
- package/dist/system/styled-component.mjs.map +1 -0
- package/dist/system/types.d.mts +47 -0
- package/dist/system/types.d.mts.map +1 -0
- package/dist/tokens/dist/preset.d.mts +6 -0
- package/dist/tokens/dist/preset.d.mts.map +1 -0
- package/dist/tokens/dist/preset.mjs +997 -0
- package/dist/tokens/dist/preset.mjs.map +1 -0
- package/package.json +411 -0
- package/skills/components/accordion/SKILL.md +138 -0
- package/skills/components/alert/SKILL.md +126 -0
- package/skills/components/angle-slider/SKILL.md +155 -0
- package/skills/components/avatar/SKILL.md +123 -0
- package/skills/components/badge/SKILL.md +117 -0
- package/skills/components/breadcrumb/SKILL.md +128 -0
- package/skills/components/button/SKILL.md +122 -0
- package/skills/components/card/SKILL.md +126 -0
- package/skills/components/carousel/SKILL.md +176 -0
- package/skills/components/cascade-select/SKILL.md +206 -0
- package/skills/components/checkbox/SKILL.md +149 -0
- package/skills/components/clipboard/SKILL.md +139 -0
- package/skills/components/collapsible/SKILL.md +130 -0
- package/skills/components/color-picker/SKILL.md +216 -0
- package/skills/components/combobox/SKILL.md +218 -0
- package/skills/components/date-input/SKILL.md +157 -0
- package/skills/components/date-picker/SKILL.md +235 -0
- package/skills/components/dialog/SKILL.md +159 -0
- package/skills/components/drawer/SKILL.md +192 -0
- package/skills/components/editable/SKILL.md +162 -0
- package/skills/components/empty-state/SKILL.md +125 -0
- package/skills/components/field/SKILL.md +133 -0
- package/skills/components/fieldset/SKILL.md +123 -0
- package/skills/components/file-upload/SKILL.md +184 -0
- package/skills/components/floating-panel/SKILL.md +206 -0
- package/skills/components/hover-card/SKILL.md +173 -0
- package/skills/components/image-cropper/SKILL.md +158 -0
- package/skills/components/input/SKILL.md +131 -0
- package/skills/components/kbd/SKILL.md +116 -0
- package/skills/components/listbox/SKILL.md +172 -0
- package/skills/components/marquee/SKILL.md +151 -0
- package/skills/components/menu/SKILL.md +202 -0
- package/skills/components/navigation-menu/SKILL.md +172 -0
- package/skills/components/number-input/SKILL.md +177 -0
- package/skills/components/pagination/SKILL.md +159 -0
- package/skills/components/password-input/SKILL.md +156 -0
- package/skills/components/pin-input/SKILL.md +157 -0
- package/skills/components/popover/SKILL.md +166 -0
- package/skills/components/progress/SKILL.md +144 -0
- package/skills/components/qr-code/SKILL.md +132 -0
- package/skills/components/radio-group/SKILL.md +153 -0
- package/skills/components/rating-group/SKILL.md +151 -0
- package/skills/components/scroll-area/SKILL.md +149 -0
- package/skills/components/select/SKILL.md +202 -0
- package/skills/components/separator/SKILL.md +114 -0
- package/skills/components/signature-pad/SKILL.md +161 -0
- package/skills/components/skeleton/SKILL.md +114 -0
- package/skills/components/slider/SKILL.md +178 -0
- package/skills/components/snackbar/SKILL.md +154 -0
- package/skills/components/spinner/SKILL.md +122 -0
- package/skills/components/splitter/SKILL.md +136 -0
- package/skills/components/steps/SKILL.md +150 -0
- package/skills/components/switch/SKILL.md +144 -0
- package/skills/components/table/SKILL.md +144 -0
- package/skills/components/tabs/SKILL.md +138 -0
- package/skills/components/tags-input/SKILL.md +194 -0
- package/skills/components/textarea/SKILL.md +131 -0
- package/skills/components/timer/SKILL.md +142 -0
- package/skills/components/toast/SKILL.md +129 -0
- package/skills/components/toc/SKILL.md +141 -0
- package/skills/components/toggle/SKILL.md +125 -0
- package/skills/components/toggle-group/SKILL.md +129 -0
- package/skills/components/tooltip/SKILL.md +188 -0
- package/skills/components/tour/SKILL.md +158 -0
- package/skills/components/tree-view/SKILL.md +180 -0
- package/skills/synapse/SKILL.md +301 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"combobox.mjs","names":[],"sources":["../../../src/components/combobox/combobox.tsx"],"sourcesContent":["'use client'\n\nimport { chevronsUpDown, close } from '@neurocle/synapse-icons'\nimport type { ListCollection } from '@zag-js/collection'\nimport * as combobox from '@zag-js/combobox'\nimport { createElement, type ReactNode } from 'react'\n\nimport {\n pinnedRowProps,\n positionProps,\n rememberCollection,\n windowedContent,\n} from '#/components/collection-window.tsx'\nimport { comboboxRecipe, comboboxStateSlots } from '#/components/combobox/combobox.recipe.ts'\nimport type { TranslationOverrides } from '#/provider/translations.ts'\nimport type { SynapseCollection } from '#/shared/collection.ts'\nimport { Icon } from '#/shared/icon.tsx'\nimport { inputPartClass } from '#/shared/input-style.ts'\nimport { resolveSize, type Size } from '#/shared/size-scale.ts'\nimport { createStateParts } from '#/shared/state-parts.ts'\nimport { defineComponent } from '#/system/create-component.ts'\nimport type { DomAttributes, PartOwnProps } from '#/system/types.ts'\n\nexport interface ComboboxPositioning {\n placement?: 'bottom' | 'bottom-start' | 'bottom-end' | 'top' | 'top-start' | 'top-end'\n gutter?: number\n sameWidth?: boolean\n}\n\nexport interface ComboboxValueChangeDetails {\n readonly value: readonly string[]\n}\n\nexport interface ComboboxInputValueChangeDetails {\n readonly inputValue: string\n}\n\nexport interface ComboboxHighlightChangeDetails {\n readonly highlightedValue: string | null\n}\n\nexport type ComboboxInputBehavior = 'none' | 'autohighlight' | 'autocomplete'\n\nexport type ComboboxSelectionBehavior = 'replace' | 'clear' | 'preserve'\n\nexport interface ComboboxRootProps<TItem> {\n /**\n * 제시할 컬렉션이며, `createCollection`으로 만듭니다.\n *\n * 필터링은 사용처의 몫입니다: 질의가 바뀌는 대로 컬렉션을 좁히고 — `withItems`는 새 컬렉션을\n * 돌려주고 이것은 건드리지 않습니다 — 그 결과를 넘기면 됩니다. 컴포넌트는 사용처를 대신해\n * 필터링하지 않는데, 일치가 \"~로 시작\"인지 \"~를 포함\"인지 \"퍼지\"인지 \"서버가 말한 대로\"인지\n * 알 수 없기 때문입니다.\n */\n collection: SynapseCollection<TItem>\n /** 제어되는 선택. */\n value?: readonly string[]\n /** 비제어 초기 선택. `value`가 주어지면 무시됩니다. */\n defaultValue?: readonly string[]\n /** 제어 여부와 무관하게 선택이 바뀔 때마다 알림을 받습니다. */\n onValueChange?: (details: ComboboxValueChangeDetails) => void\n /** 제어되는 필드 안의 텍스트. 선택된 것을 뜻하는 `value`와는 별개입니다. */\n inputValue?: string\n /** 비제어 초기 필드 텍스트. */\n defaultInputValue?: string\n /** 텍스트가 바뀔 때 알림을 받습니다 — 사용처가 컬렉션을 다시 거르는 지점입니다. */\n onInputValueChange?: (details: ComboboxInputValueChangeDetails) => void\n /** 제어되는 하이라이트 아이템 — `aria-activedescendant`가 가리키는 대상입니다. */\n highlightedValue?: string | null\n /** 비제어 초기 하이라이트 아이템. */\n defaultHighlightedValue?: string | null\n /** 하이라이트가 움직일 때 알림을 받으며, 한 번도 렌더된 적 없는 아이템으로 갈 때도 받습니다. */\n onHighlightChange?: (details: ComboboxHighlightChangeDetails) => void\n /** 제어되는 목록의 열림 상태. */\n open?: boolean\n /** 비제어 초기 열림 상태. */\n defaultOpen?: boolean\n /** 목록이 열리거나 닫힐 때마다 알림을 받습니다. */\n onOpenChange?: (details: { open: boolean }) => void\n /**\n * 요청이 진행 중입니다.\n *\n * 이 컴포넌트가 스스로 답할 수 없는 유일한 상태 part 사실입니다. `Combobox.Loading`을\n * 움직이며, `Combobox.Empty`보다 우선합니다 — 결과가 아직 도착하지 않아 비어 있는 컬렉션은\n * 결과가 없는 컬렉션이 아닙니다.\n */\n loading?: boolean\n /** 둘 이상을 선택할 수 있게 합니다. */\n multiple?: boolean\n /** 어떤 아이템과도 일치하지 않는 텍스트도 값으로 받아들입니다. */\n allowCustomValue?: boolean\n /** 선택하면 목록을 닫습니다. 단일 선택 Combobox에서는 기본값이 true입니다. */\n closeOnSelect?: boolean\n /** 필터링 말고도 타이핑이 무엇을 하는지. 기본값은 `none`입니다. */\n inputBehavior?: ComboboxInputBehavior\n /** 선택하면 필드의 텍스트가 어떻게 되는지. 기본값은 `replace`입니다. */\n selectionBehavior?: ComboboxSelectionBehavior\n /** 필드를 클릭하면 목록을 엽니다. */\n openOnClick?: boolean\n /** 텍스트가 바뀌는 즉시 목록을 엽니다. 기본값은 true입니다. */\n openOnChange?: boolean\n /** 키보드 이동이 양 끝을 넘어가면 반대편으로 이어집니다. */\n loopFocus?: boolean\n /** 필드의 placeholder 텍스트. */\n placeholder?: string\n /** 목록이 놓이는 위치. */\n positioning?: ComboboxPositioning\n /** 폼 필드 이름. 이것이 없으면 컨트롤은 아무것도 제출하지 않습니다. */\n name?: string\n /** 폼 바깥에 렌더된 Combobox를 id로 폼과 연결합니다. */\n form?: string\n /** 비활성화된 Combobox는 제출되지 않고 반응하지도 않습니다. */\n disabled?: boolean\n /** 읽기 전용 Combobox는 값을 제출하지만 바꿀 수는 없습니다. */\n readOnly?: boolean\n /** 보조 기술에 `aria-invalid`로 알려집니다. */\n invalid?: boolean\n /** 제약 검증: 폼이 제출되려면 무언가가 선택되어 있어야 합니다. */\n required?: boolean\n /** 마운트될 때 포커스를 필드 안으로 옮깁니다. */\n autoFocus?: boolean\n /** 이 Combobox에만 적용되는 접근성 문자열이며, provider의 것보다 우선합니다. */\n translations?: TranslationOverrides\n /** 하나의 공유 척도에서 옵니다. 모든 컴포넌트가 그렇듯 기본값은 `md`입니다. */\n size?: Size\n /** 팩토리가 생성하는 식별자를 덮어씁니다. 서버와 클라이언트에서 동일합니다. */\n id?: string\n}\n\ntype ComboboxDefinitionProps = Omit<ComboboxRootProps<never>, 'collection'> & {\n collection: ListCollection<unknown>\n}\n\nconst base = defineComponent<ComboboxDefinitionProps>()({\n name: 'Combobox',\n module: combobox,\n rootPart: 'root',\n field: {\n ids: (field) => ({ label: field.label, input: field.control }),\n describe: ['input'],\n },\n elements: {\n itemText: 'span',\n itemIndicator: 'span',\n input: 'input',\n },\n defaultContent: {\n trigger: () => <Icon icon={chevronsUpDown} />,\n clearTrigger: () => <Icon icon={close} />,\n list: windowedContent({\n renderRow: (row, hidden, collection) => (\n <base.Item\n key={row.value}\n item={row.item}\n {...positionProps(row.position)}\n {...pinnedRowProps(hidden)}\n >\n <base.ItemText item={row.item}>{collection.labelOf(row.value)}</base.ItemText>\n <base.ItemIndicator item={row.item} />\n </base.Item>\n ),\n }),\n },\n getterProps: {\n item: ['item', 'persistFocus'],\n itemText: ['item'],\n itemIndicator: ['item'],\n itemGroup: ['id'],\n itemGroupLabel: ['htmlFor'],\n trigger: ['focusable'],\n },\n machineTranslations: {\n triggerLabel: 'combobox.trigger.label',\n clearTriggerLabel: 'combobox.clearTrigger.label',\n },\n variantProps: ['size', 'loading'],\n slots: (props: ComboboxDefinitionProps) => {\n const size = resolveSize(props.size, 'Combobox')\n return {\n ...comboboxRecipe({ size }),\n control: inputPartClass(size, comboboxRecipe.raw({ size }).control),\n }\n },\n})\n\nconst state = createStateParts<ComboboxDefinitionProps, 'empty' | 'loading'>({\n component: 'Combobox',\n when: {\n empty: (props) => props.collection.size === 0,\n loading: (props) => props.loading === true,\n },\n absent: {\n error:\n 'A Combobox does not perform the request whose failure this would report. The consumer ' +\n 'fetches and filters, so the consumer is the only party that knows a request failed — and ' +\n 'the place to say so is beside the field, not inside a list the component opens and ' +\n 'closes on its own schedule.',\n },\n slots: () => comboboxStateSlots,\n})\n\nconst StatefulRoot = state.wrapRoot(base.Root)\n\nfunction ComboboxRoot<TItem>(\n props: ComboboxRootProps<TItem> & PartOwnProps<HTMLElement> & DomAttributes,\n): ReactNode {\n const { collection, ...rest } = props\n return createElement(StatefulRoot, { ...rest, collection: rememberCollection(collection) })\n}\nComboboxRoot.displayName = StatefulRoot.displayName\n\nexport const Combobox = {\n ...base,\n ...state.parts,\n Root: ComboboxRoot,\n}\n"],"mappings":";;;;;;;;;;;;;;;AAqIA,MAAM,OAAO,gBAAyC,CAAC,CAAC;CACtD,MAAM;CACN,QAAQ;CACR,UAAU;CACV,OAAO;EACL,MAAM,WAAW;GAAE,OAAO,MAAM;GAAO,OAAO,MAAM;EAAQ;EAC5D,UAAU,CAAC,OAAO;CACpB;CACA,UAAU;EACR,UAAU;EACV,eAAe;EACf,OAAO;CACT;CACA,gBAAgB;EACd,eAAe,oBAAC,MAAD,EAAM,MAAM,eAAiB,CAAA;EAC5C,oBAAoB,oBAAC,MAAD,EAAM,MAAM,MAAQ,CAAA;EACxC,MAAM,gBAAgB,EACpB,YAAY,KAAK,QAAQ,eACvB,qBAAC,KAAK,MAAN;GAEE,MAAM,IAAI;GACV,GAAI,cAAc,IAAI,QAAQ;GAC9B,GAAI,eAAe,MAAM;GAJ3B,UAAA,CAME,oBAAC,KAAK,UAAN;IAAe,MAAM,IAAI;IAAO,UAAA,WAAW,QAAQ,IAAI,KAAK;GAAiB,CAAA,GAC7E,oBAAC,KAAK,eAAN,EAAoB,MAAM,IAAI,KAAO,CAAA,CAC5B;EAPJ,GAAA,IAAI,KAOA,EAEf,CAAC;CACH;CACA,aAAa;EACX,MAAM,CAAC,QAAQ,cAAc;EAC7B,UAAU,CAAC,MAAM;EACjB,eAAe,CAAC,MAAM;EACtB,WAAW,CAAC,IAAI;EAChB,gBAAgB,CAAC,SAAS;EAC1B,SAAS,CAAC,WAAW;CACvB;CACA,qBAAqB;EACnB,cAAc;EACd,mBAAmB;CACrB;CACA,cAAc,CAAC,QAAQ,SAAS;CAChC,QAAQ,UAAmC;EACzC,MAAM,OAAO,YAAY,MAAM,MAAM,UAAU;EAC/C,OAAO;GACL,GAAG,eAAe,EAAE,KAAK,CAAC;GAC1B,SAAS,eAAe,MAAM,eAAe,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,OAAO;EACpE;CACF;AACF,CAAC;AAED,MAAM,QAAQ,iBAA+D;CAC3E,WAAW;CACX,MAAM;EACJ,QAAQ,UAAU,MAAM,WAAW,SAAS;EAC5C,UAAU,UAAU,MAAM,YAAY;CACxC;CACA,QAAQ,EACN,OACE,gSAIJ;CACA,aAAa;AACf,CAAC;AAED,MAAM,eAAe,MAAM,SAAS,KAAK,IAAI;AAE7C,SAAS,aACP,OACW;CACX,MAAM,EAAE,YAAY,GAAG,SAAS;CAChC,OAAO,cAAc,cAAc;EAAE,GAAG;EAAM,YAAY,mBAAmB,UAAU;CAAE,CAAC;AAC5F;AACA,aAAa,cAAc,aAAa;AAExC,MAAa,WAAW;CACtB,GAAG;CACH,GAAG,MAAM;CACT,MAAM;AACR"}
|
|
@@ -0,0 +1,336 @@
|
|
|
1
|
+
import { css } from "../../react/styled-system/css/css.mjs";
|
|
2
|
+
import { sva } from "../../react/styled-system/css/sva.mjs";
|
|
3
|
+
//#region src/components/combobox/combobox.recipe.ts
|
|
4
|
+
const comboboxRecipe = sva({
|
|
5
|
+
slots: [
|
|
6
|
+
"root",
|
|
7
|
+
"clearTrigger",
|
|
8
|
+
"content",
|
|
9
|
+
"control",
|
|
10
|
+
"input",
|
|
11
|
+
"item",
|
|
12
|
+
"itemGroup",
|
|
13
|
+
"itemGroupLabel",
|
|
14
|
+
"itemIndicator",
|
|
15
|
+
"itemText",
|
|
16
|
+
"label",
|
|
17
|
+
"list",
|
|
18
|
+
"positioner",
|
|
19
|
+
"trigger"
|
|
20
|
+
],
|
|
21
|
+
base: {
|
|
22
|
+
root: {
|
|
23
|
+
display: "flex",
|
|
24
|
+
flexDirection: "column",
|
|
25
|
+
gap: "gap.inline"
|
|
26
|
+
},
|
|
27
|
+
label: {
|
|
28
|
+
textStyle: "detail",
|
|
29
|
+
color: "foreground.muted",
|
|
30
|
+
_disabled: { color: "foreground.disabled" }
|
|
31
|
+
},
|
|
32
|
+
control: {
|
|
33
|
+
display: "flex",
|
|
34
|
+
alignItems: "center",
|
|
35
|
+
gap: "gap.inline",
|
|
36
|
+
position: "relative",
|
|
37
|
+
paddingInline: "inset.none",
|
|
38
|
+
paddingInlineEnd: "inset.compact"
|
|
39
|
+
},
|
|
40
|
+
input: {
|
|
41
|
+
flex: "1",
|
|
42
|
+
alignSelf: "stretch",
|
|
43
|
+
minWidth: "target.minimum",
|
|
44
|
+
minHeight: "target.minimum",
|
|
45
|
+
paddingInline: "inset.control",
|
|
46
|
+
bg: "surface.transparent",
|
|
47
|
+
color: "foreground.default",
|
|
48
|
+
borderWidth: "none",
|
|
49
|
+
outlineStyle: "none",
|
|
50
|
+
_placeholder: { color: "foreground.subtle" },
|
|
51
|
+
_readOnly: { cursor: "default" },
|
|
52
|
+
_disabled: {
|
|
53
|
+
color: "foreground.disabled",
|
|
54
|
+
cursor: "not-allowed",
|
|
55
|
+
_highContrast: { color: "system.grayText" }
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
trigger: {
|
|
59
|
+
display: "inline-flex",
|
|
60
|
+
alignItems: "center",
|
|
61
|
+
justifyContent: "center",
|
|
62
|
+
flexShrink: 0,
|
|
63
|
+
minWidth: "target.minimum",
|
|
64
|
+
minHeight: "target.minimum",
|
|
65
|
+
rounded: "control",
|
|
66
|
+
color: "foreground.default",
|
|
67
|
+
transitionProperty: "common",
|
|
68
|
+
transitionDuration: "interaction",
|
|
69
|
+
transitionTimingFunction: "interaction",
|
|
70
|
+
outlineColor: "border.focus",
|
|
71
|
+
"&:not(:disabled, [data-disabled], [data-readonly]):hover": {
|
|
72
|
+
bg: "secondary.hover",
|
|
73
|
+
color: "foreground.default"
|
|
74
|
+
},
|
|
75
|
+
"&:not(:disabled, [data-disabled], [data-readonly]):active": {
|
|
76
|
+
bg: "secondary.active",
|
|
77
|
+
color: "foreground.default"
|
|
78
|
+
},
|
|
79
|
+
_focusVisible: {
|
|
80
|
+
outlineStyle: "solid",
|
|
81
|
+
outlineWidth: "focus",
|
|
82
|
+
outlineOffset: "inset.compact",
|
|
83
|
+
outlineColor: "border.focus"
|
|
84
|
+
},
|
|
85
|
+
_readOnly: { cursor: "default" },
|
|
86
|
+
_disabled: {
|
|
87
|
+
color: "foreground.disabled",
|
|
88
|
+
cursor: "not-allowed",
|
|
89
|
+
_highContrast: { color: "system.grayText" }
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
clearTrigger: {
|
|
93
|
+
display: "inline-flex",
|
|
94
|
+
alignItems: "center",
|
|
95
|
+
justifyContent: "center",
|
|
96
|
+
flexShrink: 0,
|
|
97
|
+
minWidth: "target.minimum",
|
|
98
|
+
minHeight: "target.minimum",
|
|
99
|
+
rounded: "control",
|
|
100
|
+
color: "foreground.muted",
|
|
101
|
+
transitionProperty: "colors",
|
|
102
|
+
transitionDuration: "interaction",
|
|
103
|
+
transitionTimingFunction: "interaction",
|
|
104
|
+
outlineColor: "border.focus",
|
|
105
|
+
"&:not(:disabled, [data-disabled], [data-readonly]):hover": {
|
|
106
|
+
bg: "secondary.hover",
|
|
107
|
+
color: "foreground.default"
|
|
108
|
+
},
|
|
109
|
+
"&:not(:disabled, [data-disabled], [data-readonly]):active": {
|
|
110
|
+
bg: "secondary.active",
|
|
111
|
+
color: "foreground.default"
|
|
112
|
+
},
|
|
113
|
+
_focusVisible: {
|
|
114
|
+
outlineStyle: "solid",
|
|
115
|
+
outlineWidth: "focus",
|
|
116
|
+
outlineOffset: "inset.compact",
|
|
117
|
+
outlineColor: "border.focus"
|
|
118
|
+
},
|
|
119
|
+
_disabled: {
|
|
120
|
+
color: "foreground.disabled",
|
|
121
|
+
cursor: "not-allowed",
|
|
122
|
+
_highContrast: { color: "system.grayText" }
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
positioner: { zIndex: "calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))" },
|
|
126
|
+
content: {
|
|
127
|
+
layerStyle: "reveal",
|
|
128
|
+
zIndex: "calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))",
|
|
129
|
+
display: "flex",
|
|
130
|
+
flexDirection: "column",
|
|
131
|
+
minWidth: "surface.overlayMin",
|
|
132
|
+
maxWidth: "surface.overlayMax",
|
|
133
|
+
maxHeight: "surface.overlayMax",
|
|
134
|
+
overflowY: "auto",
|
|
135
|
+
paddingBlock: "inset.compact",
|
|
136
|
+
paddingInline: "inset.none",
|
|
137
|
+
rounded: "overlay",
|
|
138
|
+
borderWidth: "hairline",
|
|
139
|
+
borderStyle: "solid",
|
|
140
|
+
borderColor: "border.overlay",
|
|
141
|
+
bg: "surface.overlay",
|
|
142
|
+
color: "foreground.default",
|
|
143
|
+
boxShadow: "overlay",
|
|
144
|
+
pointerEvents: "auto"
|
|
145
|
+
},
|
|
146
|
+
list: {
|
|
147
|
+
display: "flex",
|
|
148
|
+
flexDirection: "column"
|
|
149
|
+
},
|
|
150
|
+
itemGroup: {
|
|
151
|
+
display: "flex",
|
|
152
|
+
flexDirection: "column",
|
|
153
|
+
"&:not(:last-of-type)": {
|
|
154
|
+
paddingBlockEnd: "inset.compact",
|
|
155
|
+
marginBlockEnd: "inset.compact",
|
|
156
|
+
borderBlockEndWidth: "hairline",
|
|
157
|
+
borderBlockEndStyle: "solid",
|
|
158
|
+
borderColor: "border.muted"
|
|
159
|
+
}
|
|
160
|
+
},
|
|
161
|
+
itemGroupLabel: {
|
|
162
|
+
paddingInline: "inset.control",
|
|
163
|
+
paddingBlock: "inset.compact",
|
|
164
|
+
textStyle: "detail",
|
|
165
|
+
color: "foreground.subtle"
|
|
166
|
+
},
|
|
167
|
+
item: {
|
|
168
|
+
display: "flex",
|
|
169
|
+
alignItems: "center",
|
|
170
|
+
justifyContent: "space-between",
|
|
171
|
+
gap: "gap.related",
|
|
172
|
+
minHeight: "target.minimum",
|
|
173
|
+
paddingInline: "inset.control",
|
|
174
|
+
color: "foreground.default",
|
|
175
|
+
cursor: "default",
|
|
176
|
+
userSelect: "none",
|
|
177
|
+
"&[data-state=checked]": { color: "primary.onSurface" },
|
|
178
|
+
_highlighted: {
|
|
179
|
+
bg: "secondary.default",
|
|
180
|
+
color: "foreground.default",
|
|
181
|
+
"&[data-state=checked]": { color: "primary.onSurface" },
|
|
182
|
+
_highContrast: {
|
|
183
|
+
bg: "system.highlight",
|
|
184
|
+
color: "system.highlightText"
|
|
185
|
+
}
|
|
186
|
+
},
|
|
187
|
+
_disabled: {
|
|
188
|
+
color: "foreground.disabled",
|
|
189
|
+
cursor: "not-allowed",
|
|
190
|
+
_highContrast: { color: "system.grayText" }
|
|
191
|
+
}
|
|
192
|
+
},
|
|
193
|
+
itemText: { overflowWrap: "anywhere" },
|
|
194
|
+
itemIndicator: {
|
|
195
|
+
display: "inline-flex",
|
|
196
|
+
alignItems: "center",
|
|
197
|
+
justifyContent: "center",
|
|
198
|
+
flexShrink: 0,
|
|
199
|
+
color: "primary.onSurface"
|
|
200
|
+
}
|
|
201
|
+
},
|
|
202
|
+
variants: { size: {
|
|
203
|
+
xs: {
|
|
204
|
+
control: { height: "control.xs" },
|
|
205
|
+
input: {
|
|
206
|
+
minHeight: "control.xs",
|
|
207
|
+
textStyle: "detail"
|
|
208
|
+
},
|
|
209
|
+
item: {
|
|
210
|
+
minHeight: "control.xs",
|
|
211
|
+
textStyle: "detail"
|
|
212
|
+
},
|
|
213
|
+
trigger: { "& svg": {
|
|
214
|
+
width: "icon.xs",
|
|
215
|
+
height: "icon.xs"
|
|
216
|
+
} },
|
|
217
|
+
clearTrigger: { "& svg": {
|
|
218
|
+
width: "icon.xs",
|
|
219
|
+
height: "icon.xs"
|
|
220
|
+
} },
|
|
221
|
+
itemIndicator: { "& svg": {
|
|
222
|
+
width: "icon.xs",
|
|
223
|
+
height: "icon.xs"
|
|
224
|
+
} }
|
|
225
|
+
},
|
|
226
|
+
sm: {
|
|
227
|
+
input: {
|
|
228
|
+
minHeight: "target.minimum",
|
|
229
|
+
textStyle: "body"
|
|
230
|
+
},
|
|
231
|
+
item: {
|
|
232
|
+
minHeight: "target.minimum",
|
|
233
|
+
textStyle: "detail"
|
|
234
|
+
},
|
|
235
|
+
trigger: { "& svg": {
|
|
236
|
+
width: "icon.sm",
|
|
237
|
+
height: "icon.sm"
|
|
238
|
+
} },
|
|
239
|
+
clearTrigger: { "& svg": {
|
|
240
|
+
width: "icon.sm",
|
|
241
|
+
height: "icon.sm"
|
|
242
|
+
} },
|
|
243
|
+
itemIndicator: { "& svg": {
|
|
244
|
+
width: "icon.sm",
|
|
245
|
+
height: "icon.sm"
|
|
246
|
+
} }
|
|
247
|
+
},
|
|
248
|
+
md: {
|
|
249
|
+
input: {
|
|
250
|
+
minHeight: "control.sm",
|
|
251
|
+
textStyle: "body"
|
|
252
|
+
},
|
|
253
|
+
item: {
|
|
254
|
+
minHeight: "control.sm",
|
|
255
|
+
textStyle: "body"
|
|
256
|
+
},
|
|
257
|
+
trigger: { "& svg": {
|
|
258
|
+
width: "icon.md",
|
|
259
|
+
height: "icon.md"
|
|
260
|
+
} },
|
|
261
|
+
clearTrigger: { "& svg": {
|
|
262
|
+
width: "icon.sm",
|
|
263
|
+
height: "icon.sm"
|
|
264
|
+
} },
|
|
265
|
+
itemIndicator: { "& svg": {
|
|
266
|
+
width: "icon.sm",
|
|
267
|
+
height: "icon.sm"
|
|
268
|
+
} }
|
|
269
|
+
},
|
|
270
|
+
lg: {
|
|
271
|
+
input: {
|
|
272
|
+
minHeight: "control.md",
|
|
273
|
+
textStyle: "body"
|
|
274
|
+
},
|
|
275
|
+
item: {
|
|
276
|
+
minHeight: "control.md",
|
|
277
|
+
textStyle: "body"
|
|
278
|
+
},
|
|
279
|
+
trigger: { "& svg": {
|
|
280
|
+
width: "icon.md",
|
|
281
|
+
height: "icon.md"
|
|
282
|
+
} },
|
|
283
|
+
clearTrigger: { "& svg": {
|
|
284
|
+
width: "icon.md",
|
|
285
|
+
height: "icon.md"
|
|
286
|
+
} },
|
|
287
|
+
itemIndicator: { "& svg": {
|
|
288
|
+
width: "icon.md",
|
|
289
|
+
height: "icon.md"
|
|
290
|
+
} }
|
|
291
|
+
},
|
|
292
|
+
xl: {
|
|
293
|
+
input: {
|
|
294
|
+
minHeight: "control.lg",
|
|
295
|
+
textStyle: "subtitle"
|
|
296
|
+
},
|
|
297
|
+
item: {
|
|
298
|
+
minHeight: "control.lg",
|
|
299
|
+
textStyle: "body"
|
|
300
|
+
},
|
|
301
|
+
trigger: { "& svg": {
|
|
302
|
+
width: "icon.lg",
|
|
303
|
+
height: "icon.lg"
|
|
304
|
+
} },
|
|
305
|
+
clearTrigger: { "& svg": {
|
|
306
|
+
width: "icon.lg",
|
|
307
|
+
height: "icon.lg"
|
|
308
|
+
} },
|
|
309
|
+
itemIndicator: { "& svg": {
|
|
310
|
+
width: "icon.lg",
|
|
311
|
+
height: "icon.lg"
|
|
312
|
+
} }
|
|
313
|
+
}
|
|
314
|
+
} },
|
|
315
|
+
defaultVariants: { size: "md" }
|
|
316
|
+
});
|
|
317
|
+
const comboboxStateSlots = {
|
|
318
|
+
empty: css({
|
|
319
|
+
paddingInline: "inset.control",
|
|
320
|
+
paddingBlock: "inset.compact",
|
|
321
|
+
textStyle: "body",
|
|
322
|
+
color: "foreground.muted",
|
|
323
|
+
textAlign: "center"
|
|
324
|
+
}),
|
|
325
|
+
loading: css({
|
|
326
|
+
paddingInline: "inset.control",
|
|
327
|
+
paddingBlock: "inset.compact",
|
|
328
|
+
textStyle: "body",
|
|
329
|
+
color: "foreground.muted",
|
|
330
|
+
textAlign: "center"
|
|
331
|
+
})
|
|
332
|
+
};
|
|
333
|
+
//#endregion
|
|
334
|
+
export { comboboxRecipe, comboboxStateSlots };
|
|
335
|
+
|
|
336
|
+
//# sourceMappingURL=combobox.recipe.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"combobox.recipe.mjs","names":[],"sources":["../../../src/components/combobox/combobox.recipe.ts"],"sourcesContent":["import { css, sva } from '#styled-system/css/index.js'\n\nexport const comboboxRecipe = sva({\n slots: [\n 'root',\n 'clearTrigger',\n 'content',\n 'control',\n 'input',\n 'item',\n 'itemGroup',\n 'itemGroupLabel',\n 'itemIndicator',\n 'itemText',\n 'label',\n 'list',\n 'positioner',\n 'trigger',\n ],\n base: {\n root: {\n display: 'flex',\n flexDirection: 'column',\n gap: 'gap.inline',\n },\n label: {\n textStyle: 'detail',\n color: 'foreground.muted',\n _disabled: { color: 'foreground.disabled' },\n },\n control: {\n display: 'flex',\n alignItems: 'center',\n gap: 'gap.inline',\n position: 'relative',\n paddingInline: 'inset.none',\n paddingInlineEnd: 'inset.compact',\n },\n input: {\n flex: '1',\n alignSelf: 'stretch',\n minWidth: 'target.minimum',\n minHeight: 'target.minimum',\n paddingInline: 'inset.control',\n bg: 'surface.transparent',\n color: 'foreground.default',\n borderWidth: 'none',\n outlineStyle: 'none',\n _placeholder: { color: 'foreground.subtle' },\n _readOnly: { cursor: 'default' },\n _disabled: {\n color: 'foreground.disabled',\n cursor: 'not-allowed',\n _highContrast: { color: 'system.grayText' },\n },\n },\n trigger: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n minWidth: 'target.minimum',\n minHeight: 'target.minimum',\n rounded: 'control',\n color: 'foreground.default',\n transitionProperty: 'common',\n transitionDuration: 'interaction',\n transitionTimingFunction: 'interaction',\n outlineColor: 'border.focus',\n '&:not(:disabled, [data-disabled], [data-readonly]):hover': {\n bg: 'secondary.hover',\n color: 'foreground.default',\n },\n '&:not(:disabled, [data-disabled], [data-readonly]):active': {\n bg: 'secondary.active',\n color: 'foreground.default',\n },\n _focusVisible: {\n outlineStyle: 'solid',\n outlineWidth: 'focus',\n outlineOffset: 'inset.compact',\n outlineColor: 'border.focus',\n },\n _readOnly: { cursor: 'default' },\n _disabled: {\n color: 'foreground.disabled',\n cursor: 'not-allowed',\n _highContrast: { color: 'system.grayText' },\n },\n },\n clearTrigger: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n minWidth: 'target.minimum',\n minHeight: 'target.minimum',\n rounded: 'control',\n color: 'foreground.muted',\n transitionProperty: 'colors',\n transitionDuration: 'interaction',\n transitionTimingFunction: 'interaction',\n outlineColor: 'border.focus',\n '&:not(:disabled, [data-disabled], [data-readonly]):hover': {\n bg: 'secondary.hover',\n color: 'foreground.default',\n },\n '&:not(:disabled, [data-disabled], [data-readonly]):active': {\n bg: 'secondary.active',\n color: 'foreground.default',\n },\n _focusVisible: {\n outlineStyle: 'solid',\n outlineWidth: 'focus',\n outlineOffset: 'inset.compact',\n outlineColor: 'border.focus',\n },\n _disabled: {\n color: 'foreground.disabled',\n cursor: 'not-allowed',\n _highContrast: { color: 'system.grayText' },\n },\n },\n positioner: {\n zIndex: 'calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))',\n },\n content: {\n layerStyle: 'reveal',\n zIndex: 'calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))',\n display: 'flex',\n flexDirection: 'column',\n minWidth: 'surface.overlayMin',\n maxWidth: 'surface.overlayMax',\n maxHeight: 'surface.overlayMax',\n overflowY: 'auto',\n paddingBlock: 'inset.compact',\n paddingInline: 'inset.none',\n rounded: 'overlay',\n borderWidth: 'hairline',\n borderStyle: 'solid',\n borderColor: 'border.overlay',\n bg: 'surface.overlay',\n color: 'foreground.default',\n boxShadow: 'overlay',\n pointerEvents: 'auto',\n },\n list: {\n display: 'flex',\n flexDirection: 'column',\n },\n itemGroup: {\n display: 'flex',\n flexDirection: 'column',\n '&:not(:last-of-type)': {\n paddingBlockEnd: 'inset.compact',\n marginBlockEnd: 'inset.compact',\n borderBlockEndWidth: 'hairline',\n borderBlockEndStyle: 'solid',\n borderColor: 'border.muted',\n },\n },\n itemGroupLabel: {\n paddingInline: 'inset.control',\n paddingBlock: 'inset.compact',\n textStyle: 'detail',\n color: 'foreground.subtle',\n },\n item: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: 'gap.related',\n minHeight: 'target.minimum',\n paddingInline: 'inset.control',\n color: 'foreground.default',\n cursor: 'default',\n userSelect: 'none',\n '&[data-state=checked]': { color: 'primary.onSurface' },\n _highlighted: {\n bg: 'secondary.default',\n color: 'foreground.default',\n '&[data-state=checked]': { color: 'primary.onSurface' },\n _highContrast: { bg: 'system.highlight', color: 'system.highlightText' },\n },\n _disabled: {\n color: 'foreground.disabled',\n cursor: 'not-allowed',\n _highContrast: { color: 'system.grayText' },\n },\n },\n itemText: {\n overflowWrap: 'anywhere',\n },\n itemIndicator: {\n display: 'inline-flex',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n color: 'primary.onSurface',\n },\n },\n variants: {\n size: {\n xs: {\n control: {\n // 대상 크기의 입력이나 버튼이 테두리 상자 안에 들어가면 다른 xs 컨트롤보다 테두리 두 개만큼\n // 높아집니다. 상자가 행 높이를 잡고, 그 안에서 가운데 정렬됩니다.\n height: 'control.xs',\n },\n input: { minHeight: 'control.xs', textStyle: 'detail' },\n item: { minHeight: 'control.xs', textStyle: 'detail' },\n trigger: { '& svg': { width: 'icon.xs', height: 'icon.xs' } },\n clearTrigger: { '& svg': { width: 'icon.xs', height: 'icon.xs' } },\n itemIndicator: { '& svg': { width: 'icon.xs', height: 'icon.xs' } },\n },\n sm: {\n input: { minHeight: 'target.minimum', textStyle: 'body' },\n item: { minHeight: 'target.minimum', textStyle: 'detail' },\n trigger: { '& svg': { width: 'icon.sm', height: 'icon.sm' } },\n clearTrigger: { '& svg': { width: 'icon.sm', height: 'icon.sm' } },\n itemIndicator: { '& svg': { width: 'icon.sm', height: 'icon.sm' } },\n },\n md: {\n input: { minHeight: 'control.sm', textStyle: 'body' },\n item: { minHeight: 'control.sm', textStyle: 'body' },\n trigger: { '& svg': { width: 'icon.md', height: 'icon.md' } },\n clearTrigger: { '& svg': { width: 'icon.sm', height: 'icon.sm' } },\n itemIndicator: { '& svg': { width: 'icon.sm', height: 'icon.sm' } },\n },\n lg: {\n input: { minHeight: 'control.md', textStyle: 'body' },\n item: { minHeight: 'control.md', textStyle: 'body' },\n trigger: { '& svg': { width: 'icon.md', height: 'icon.md' } },\n clearTrigger: { '& svg': { width: 'icon.md', height: 'icon.md' } },\n itemIndicator: { '& svg': { width: 'icon.md', height: 'icon.md' } },\n },\n xl: {\n input: { minHeight: 'control.lg', textStyle: 'subtitle' },\n item: { minHeight: 'control.lg', textStyle: 'body' },\n trigger: { '& svg': { width: 'icon.lg', height: 'icon.lg' } },\n clearTrigger: { '& svg': { width: 'icon.lg', height: 'icon.lg' } },\n itemIndicator: { '& svg': { width: 'icon.lg', height: 'icon.lg' } },\n },\n },\n },\n defaultVariants: { size: 'md' },\n})\n\nexport const comboboxStateSlots: Readonly<Record<string, string>> = {\n empty: css({\n paddingInline: 'inset.control',\n paddingBlock: 'inset.compact',\n textStyle: 'body',\n color: 'foreground.muted',\n textAlign: 'center',\n }),\n loading: css({\n paddingInline: 'inset.control',\n paddingBlock: 'inset.compact',\n textStyle: 'body',\n color: 'foreground.muted',\n textAlign: 'center',\n }),\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { Combobox, ComboboxHighlightChangeDetails, ComboboxInputBehavior, ComboboxInputValueChangeDetails, ComboboxPositioning, ComboboxRootProps, ComboboxSelectionBehavior, ComboboxValueChangeDetails } from "./combobox.mjs";
|
|
2
|
+
export { Combobox, type ComboboxHighlightChangeDetails, type ComboboxInputBehavior, type ComboboxInputValueChangeDetails, type ComboboxPositioning, type ComboboxRootProps, type ComboboxSelectionBehavior, type ComboboxValueChangeDetails };
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { TranslationOverrides } from "../../provider/translations.mjs";
|
|
2
|
+
import { SynapseComponent } from "../../system/types.mjs";
|
|
3
|
+
import { Size } from "../../shared/size-scale.mjs";
|
|
4
|
+
//#region src/components/date-input/date-input.d.ts
|
|
5
|
+
export interface DateInputValueChangeDetails {
|
|
6
|
+
readonly value: readonly string[];
|
|
7
|
+
}
|
|
8
|
+
export interface DateInputFocusChangeDetails {
|
|
9
|
+
readonly focusedValue: string | null;
|
|
10
|
+
}
|
|
11
|
+
export type DateInputSelectionMode = 'single' | 'range' | 'multiple';
|
|
12
|
+
export type DateInputGranularity = 'day' | 'hour' | 'minute' | 'second';
|
|
13
|
+
export interface DateInputRootProps {
|
|
14
|
+
/** 제어되는 값이며, ISO 날짜입니다 — `['2026-09-20']`. */
|
|
15
|
+
value?: readonly string[];
|
|
16
|
+
/** 비제어 초기 값. `value`가 주어지면 무시됩니다. */
|
|
17
|
+
defaultValue?: readonly string[];
|
|
18
|
+
/** 제어 여부와 무관하게 값이 바뀔 때마다 알림을 받습니다. */
|
|
19
|
+
onValueChange?: (details: DateInputValueChangeDetails) => void;
|
|
20
|
+
/** 키보드가 날짜 사이를 오갈 때 알림을 받습니다. */
|
|
21
|
+
onFocusChange?: (details: DateInputFocusChangeDetails) => void;
|
|
22
|
+
/** 받아들이는 가장 이른 날짜이며, ISO 날짜입니다. */
|
|
23
|
+
min?: string;
|
|
24
|
+
/** 받아들이는 가장 늦은 날짜이며, ISO 날짜입니다. */
|
|
25
|
+
max?: string;
|
|
26
|
+
/** 필드 전체를 비활성화하지 않고 특정 날짜만 거부합니다. */
|
|
27
|
+
isDateUnavailable?: (date: Date) => boolean;
|
|
28
|
+
/** 필드가 날짜를 몇 개나 쥐는지. 기본값은 `single`입니다. */
|
|
29
|
+
selectionMode?: DateInputSelectionMode;
|
|
30
|
+
/** 필드가 시점의 어디까지를 편집하는지. 기본값은 `day`입니다. */
|
|
31
|
+
granularity?: DateInputGranularity;
|
|
32
|
+
/** 12시간제인지 24시간제인지. 기본값은 로캘의 방식을 따릅니다. */
|
|
33
|
+
hourCycle?: 12 | 24;
|
|
34
|
+
/** 일과 월을 두 자리로 채웁니다. 기본값은 로캘의 관행을 따릅니다. */
|
|
35
|
+
shouldForceLeadingZeros?: boolean;
|
|
36
|
+
/** 날짜를 해석할 때 쓰는 시간대. */
|
|
37
|
+
timeZone?: string;
|
|
38
|
+
/** 정밀도에 시각이 포함될 때 시간대 세그먼트를 숨깁니다. */
|
|
39
|
+
hideTimeZone?: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* 이 필드에 한해 provider의 로캘을 덮어씁니다.
|
|
42
|
+
*
|
|
43
|
+
* 한 페이지에 정말로 여러 로캘이 섞이는 드문 제품을 위한 것입니다. 설정하지 않고 두면
|
|
44
|
+
* 애플리케이션 전체가 `SynapseProvider`의 로캘을 따라서, 모든 필드가 같은 규칙으로 날짜를 쓰고
|
|
45
|
+
* 해석합니다.
|
|
46
|
+
*/
|
|
47
|
+
locale?: string;
|
|
48
|
+
/** 폼 필드 이름. 이것이 없으면 컨트롤은 아무것도 제출하지 않습니다. */
|
|
49
|
+
name?: string;
|
|
50
|
+
/** 폼 바깥에 렌더된 DateInput을 id로 폼과 연결합니다. */
|
|
51
|
+
form?: string;
|
|
52
|
+
/** 비활성화된 DateInput은 제출되지 않고 반응하지도 않습니다. */
|
|
53
|
+
disabled?: boolean;
|
|
54
|
+
/** 읽기 전용 DateInput은 값을 제출하지만 바꿀 수는 없습니다. */
|
|
55
|
+
readOnly?: boolean;
|
|
56
|
+
/** 보조 기술에 `aria-invalid`로 알려집니다. */
|
|
57
|
+
invalid?: boolean;
|
|
58
|
+
/** 제약 검증: 폼이 제출되려면 날짜가 있어야 합니다. */
|
|
59
|
+
required?: boolean;
|
|
60
|
+
/** 이 DateInput에만 적용되는 접근성 문자열이며, provider의 것보다 우선합니다. */
|
|
61
|
+
translations?: TranslationOverrides;
|
|
62
|
+
/** 하나의 공유 척도에서 옵니다. 모든 컴포넌트가 그렇듯 기본값은 `md`입니다. */
|
|
63
|
+
size?: Size;
|
|
64
|
+
/** 팩토리가 생성하는 식별자를 덮어씁니다. 서버와 클라이언트에서 동일합니다. */
|
|
65
|
+
id?: string;
|
|
66
|
+
}
|
|
67
|
+
export declare const DateInput: SynapseComponent<"control" | "hiddenInput" | "label" | "root" | "segment" | "segmentGroup", "root", DateInputRootProps, never>;
|
|
68
|
+
//#endregion
|
|
69
|
+
//# sourceMappingURL=date-input.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-input.d.mts","names":[],"sources":["../../../src/components/date-input/date-input.tsx"],"mappings":";;;;iBAciB;WACN;;iBAGM;WACN;;YAGC;YAEA;iBAEK;;EAEf;;EAEA;;EAEA,iBAAiB,SAAS;;EAE1B,iBAAiB,SAAS;;EAE1B;;EAEA;;EAEA,qBAAqB,MAAM;;EAE3B,gBAAgB;;EAEhB,cAAc;;EAEd;;EAEA;;EAEA;;EAEA;;;;;;;;EAQA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,eAAe;;EAEf,OAAO;;EAEP;;qBAyEW,WAAS,oGAAA"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { resolveSize } from "../../shared/size-scale.mjs";
|
|
3
|
+
import { useLocale } from "../../provider/locale-context.mjs";
|
|
4
|
+
import { defineComponent } from "../../system/create-component.mjs";
|
|
5
|
+
import { inputPartClass } from "../../shared/input-style.mjs";
|
|
6
|
+
import { dateInputRecipe } from "./date-input.recipe.mjs";
|
|
7
|
+
import { createElement } from "react";
|
|
8
|
+
import * as dateInput from "@zag-js/date-input";
|
|
9
|
+
import { parse } from "@zag-js/date-input";
|
|
10
|
+
//#region src/components/date-input/date-input.tsx
|
|
11
|
+
const isoOf = (date) => String(date);
|
|
12
|
+
const toMachineProps = (props) => ({
|
|
13
|
+
...props.value === void 0 ? {} : { value: parse([...props.value]) },
|
|
14
|
+
...props.defaultValue === void 0 ? {} : { defaultValue: parse([...props.defaultValue]) },
|
|
15
|
+
...props.min === void 0 ? {} : { min: parse(props.min) },
|
|
16
|
+
...props.max === void 0 ? {} : { max: parse(props.max) },
|
|
17
|
+
...props.onValueChange === void 0 ? {} : { onValueChange: (details) => props.onValueChange?.({ value: details.value.map(isoOf) }) },
|
|
18
|
+
...props.onFocusChange === void 0 ? {} : { onFocusChange: (details) => props.onFocusChange?.({ focusedValue: details.focusedValue === void 0 ? null : isoOf(details.focusedValue) }) }
|
|
19
|
+
});
|
|
20
|
+
const SEGMENT_LABELS = {
|
|
21
|
+
era: "dateInput.segment.era",
|
|
22
|
+
year: "dateInput.segment.year",
|
|
23
|
+
month: "dateInput.segment.month",
|
|
24
|
+
day: "dateInput.segment.day",
|
|
25
|
+
hour: "dateInput.segment.hour",
|
|
26
|
+
minute: "dateInput.segment.minute",
|
|
27
|
+
second: "dateInput.segment.second",
|
|
28
|
+
dayPeriod: "dateInput.segment.dayPeriod",
|
|
29
|
+
timeZoneName: "dateInput.segment.timeZoneName"
|
|
30
|
+
};
|
|
31
|
+
const segmentOf = (value) => typeof value === "object" && value !== null && "type" in value && typeof value.type === "string" && "text" in value && typeof value.text === "string" ? {
|
|
32
|
+
type: value.type,
|
|
33
|
+
text: value.text
|
|
34
|
+
} : void 0;
|
|
35
|
+
const segmentsOf = (api, _translate, getterArgs) => {
|
|
36
|
+
const index = typeof getterArgs["index"] === "number" ? getterArgs["index"] : 0;
|
|
37
|
+
return api.getSegments({ index }).map((segment, position) => createElement(DateInput.Segment, {
|
|
38
|
+
key: `${String(index)}-${String(position)}-${segment.type}`,
|
|
39
|
+
segment,
|
|
40
|
+
index
|
|
41
|
+
}));
|
|
42
|
+
};
|
|
43
|
+
const DateInput = defineComponent()({
|
|
44
|
+
name: "DateInput",
|
|
45
|
+
module: dateInput,
|
|
46
|
+
rootPart: "root",
|
|
47
|
+
field: {
|
|
48
|
+
ids: (field) => ({ label: (index) => index === 0 ? field.label : `${field.label}:${String(index)}` }),
|
|
49
|
+
describe: ["segment"],
|
|
50
|
+
labelable: false
|
|
51
|
+
},
|
|
52
|
+
elements: {
|
|
53
|
+
segment: "span",
|
|
54
|
+
hiddenInput: "input"
|
|
55
|
+
},
|
|
56
|
+
defaultContent: {
|
|
57
|
+
segmentGroup: segmentsOf,
|
|
58
|
+
segment: (_api, _t, args) => segmentOf(args["segment"])?.text ?? null
|
|
59
|
+
},
|
|
60
|
+
amendBehaviorProps: {
|
|
61
|
+
segment: (_behaviorProps, _api, getterArgs, translate) => {
|
|
62
|
+
const type = segmentOf(getterArgs["segment"])?.type;
|
|
63
|
+
const key = type === void 0 ? void 0 : SEGMENT_LABELS[type];
|
|
64
|
+
return key === void 0 ? {} : { "aria-label": translate(key) };
|
|
65
|
+
},
|
|
66
|
+
hiddenInput: (_behaviorProps, api, getterArgs) => {
|
|
67
|
+
const index = typeof getterArgs["index"] === "number" ? getterArgs["index"] : 0;
|
|
68
|
+
const value = api.value[index];
|
|
69
|
+
return { value: value === void 0 ? "" : isoOf(value) };
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
getterProps: {
|
|
73
|
+
label: ["index"],
|
|
74
|
+
segmentGroup: ["index"],
|
|
75
|
+
segment: ["segment", "index"],
|
|
76
|
+
hiddenInput: ["index", "name"]
|
|
77
|
+
},
|
|
78
|
+
machineTranslations: null,
|
|
79
|
+
variantProps: [
|
|
80
|
+
"value",
|
|
81
|
+
"defaultValue",
|
|
82
|
+
"onValueChange",
|
|
83
|
+
"onFocusChange",
|
|
84
|
+
"min",
|
|
85
|
+
"max",
|
|
86
|
+
"size"
|
|
87
|
+
],
|
|
88
|
+
useMachineProps: (props) => {
|
|
89
|
+
const { locale } = useLocale();
|
|
90
|
+
return {
|
|
91
|
+
...toMachineProps(props),
|
|
92
|
+
locale: props.locale ?? locale
|
|
93
|
+
};
|
|
94
|
+
},
|
|
95
|
+
slots: (props) => {
|
|
96
|
+
const size = resolveSize(props.size, "DateInput");
|
|
97
|
+
return {
|
|
98
|
+
...dateInputRecipe({ size }),
|
|
99
|
+
control: inputPartClass(size, dateInputRecipe.raw({ size }).control)
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
//#endregion
|
|
104
|
+
export { DateInput };
|
|
105
|
+
|
|
106
|
+
//# sourceMappingURL=date-input.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-input.mjs","names":[],"sources":["../../../src/components/date-input/date-input.tsx"],"sourcesContent":["'use client'\n\nimport * as dateInput from '@zag-js/date-input'\nimport { parse } from '@zag-js/date-input'\nimport { createElement } from 'react'\n\nimport { dateInputRecipe } from '#/components/date-input/date-input.recipe.ts'\nimport { useLocale } from '#/provider/locale-context.ts'\nimport type { TranslationKey, TranslationOverrides } from '#/provider/translations.ts'\nimport { inputPartClass } from '#/shared/input-style.ts'\nimport { resolveSize, type Size } from '#/shared/size-scale.ts'\nimport { defineComponent } from '#/system/create-component.ts'\nimport type { DefaultContent } from '#/system/types.ts'\n\nexport interface DateInputValueChangeDetails {\n readonly value: readonly string[]\n}\n\nexport interface DateInputFocusChangeDetails {\n readonly focusedValue: string | null\n}\n\nexport type DateInputSelectionMode = 'single' | 'range' | 'multiple'\n\nexport type DateInputGranularity = 'day' | 'hour' | 'minute' | 'second'\n\nexport interface DateInputRootProps {\n /** 제어되는 값이며, ISO 날짜입니다 — `['2026-09-20']`. */\n value?: readonly string[]\n /** 비제어 초기 값. `value`가 주어지면 무시됩니다. */\n defaultValue?: readonly string[]\n /** 제어 여부와 무관하게 값이 바뀔 때마다 알림을 받습니다. */\n onValueChange?: (details: DateInputValueChangeDetails) => void\n /** 키보드가 날짜 사이를 오갈 때 알림을 받습니다. */\n onFocusChange?: (details: DateInputFocusChangeDetails) => void\n /** 받아들이는 가장 이른 날짜이며, ISO 날짜입니다. */\n min?: string\n /** 받아들이는 가장 늦은 날짜이며, ISO 날짜입니다. */\n max?: string\n /** 필드 전체를 비활성화하지 않고 특정 날짜만 거부합니다. */\n isDateUnavailable?: (date: Date) => boolean\n /** 필드가 날짜를 몇 개나 쥐는지. 기본값은 `single`입니다. */\n selectionMode?: DateInputSelectionMode\n /** 필드가 시점의 어디까지를 편집하는지. 기본값은 `day`입니다. */\n granularity?: DateInputGranularity\n /** 12시간제인지 24시간제인지. 기본값은 로캘의 방식을 따릅니다. */\n hourCycle?: 12 | 24\n /** 일과 월을 두 자리로 채웁니다. 기본값은 로캘의 관행을 따릅니다. */\n shouldForceLeadingZeros?: boolean\n /** 날짜를 해석할 때 쓰는 시간대. */\n timeZone?: string\n /** 정밀도에 시각이 포함될 때 시간대 세그먼트를 숨깁니다. */\n hideTimeZone?: boolean\n /**\n * 이 필드에 한해 provider의 로캘을 덮어씁니다.\n *\n * 한 페이지에 정말로 여러 로캘이 섞이는 드문 제품을 위한 것입니다. 설정하지 않고 두면\n * 애플리케이션 전체가 `SynapseProvider`의 로캘을 따라서, 모든 필드가 같은 규칙으로 날짜를 쓰고\n * 해석합니다.\n */\n locale?: string\n /** 폼 필드 이름. 이것이 없으면 컨트롤은 아무것도 제출하지 않습니다. */\n name?: string\n /** 폼 바깥에 렌더된 DateInput을 id로 폼과 연결합니다. */\n form?: string\n /** 비활성화된 DateInput은 제출되지 않고 반응하지도 않습니다. */\n disabled?: boolean\n /** 읽기 전용 DateInput은 값을 제출하지만 바꿀 수는 없습니다. */\n readOnly?: boolean\n /** 보조 기술에 `aria-invalid`로 알려집니다. */\n invalid?: boolean\n /** 제약 검증: 폼이 제출되려면 날짜가 있어야 합니다. */\n required?: boolean\n /** 이 DateInput에만 적용되는 접근성 문자열이며, provider의 것보다 우선합니다. */\n translations?: TranslationOverrides\n /** 하나의 공유 척도에서 옵니다. 모든 컴포넌트가 그렇듯 기본값은 `md`입니다. */\n size?: Size\n /** 팩토리가 생성하는 식별자를 덮어씁니다. 서버와 클라이언트에서 동일합니다. */\n id?: string\n}\n\ninterface MachineValueChange {\n value: readonly unknown[]\n}\n\ninterface MachineFocusChange {\n focusedValue: unknown\n}\n\nconst isoOf = (date: unknown): string => String(date)\n\nconst toMachineProps = (props: DateInputRootProps): Record<string, unknown> => ({\n ...(props.value === undefined ? {} : { value: parse([...props.value]) }),\n ...(props.defaultValue === undefined ? {} : { defaultValue: parse([...props.defaultValue]) }),\n ...(props.min === undefined ? {} : { min: parse(props.min) }),\n ...(props.max === undefined ? {} : { max: parse(props.max) }),\n ...(props.onValueChange === undefined\n ? {}\n : {\n onValueChange: (details: MachineValueChange) =>\n props.onValueChange?.({ value: details.value.map(isoOf) }),\n }),\n ...(props.onFocusChange === undefined\n ? {}\n : {\n onFocusChange: (details: MachineFocusChange) =>\n props.onFocusChange?.({\n focusedValue: details.focusedValue === undefined ? null : isoOf(details.focusedValue),\n }),\n }),\n})\n\nconst SEGMENT_LABELS: Readonly<Record<string, TranslationKey>> = {\n era: 'dateInput.segment.era',\n year: 'dateInput.segment.year',\n month: 'dateInput.segment.month',\n day: 'dateInput.segment.day',\n hour: 'dateInput.segment.hour',\n minute: 'dateInput.segment.minute',\n second: 'dateInput.segment.second',\n dayPeriod: 'dateInput.segment.dayPeriod',\n timeZoneName: 'dateInput.segment.timeZoneName',\n}\n\ninterface SegmentLike {\n type: string\n text: string\n}\n\nconst segmentOf = (value: unknown): SegmentLike | undefined =>\n typeof value === 'object' &&\n value !== null &&\n 'type' in value &&\n typeof value.type === 'string' &&\n 'text' in value &&\n typeof value.text === 'string'\n ? { type: value.type, text: value.text }\n : undefined\n\nconst segmentsOf: DefaultContent<dateInput.Api> = (api, _translate, getterArgs) => {\n const index = typeof getterArgs['index'] === 'number' ? getterArgs['index'] : 0\n // literal 세그먼트(구분자)는 한 입력 안에서 반복되므로 type만으로는 key가 될 수 없습니다.\n return api.getSegments({ index }).map((segment, position) =>\n createElement(DateInput.Segment, {\n key: `${String(index)}-${String(position)}-${segment.type}`,\n segment,\n index,\n }),\n )\n}\n\nexport const DateInput = defineComponent<DateInputRootProps>()({\n name: 'DateInput',\n module: dateInput,\n rootPart: 'root',\n field: {\n ids: (field) => ({\n label: (index: number) => (index === 0 ? field.label : `${field.label}:${String(index)}`),\n }),\n describe: ['segment'],\n labelable: false,\n },\n elements: {\n segment: 'span',\n hiddenInput: 'input',\n },\n defaultContent: {\n segmentGroup: segmentsOf,\n segment: (_api, _t, args) => segmentOf(args['segment'])?.text ?? null,\n },\n amendBehaviorProps: {\n segment: (_behaviorProps, _api, getterArgs, translate) => {\n const type = segmentOf(getterArgs['segment'])?.type\n const key = type === undefined ? undefined : SEGMENT_LABELS[type]\n return key === undefined ? {} : { 'aria-label': translate(key) }\n },\n hiddenInput: (_behaviorProps, api, getterArgs) => {\n const index = typeof getterArgs['index'] === 'number' ? getterArgs['index'] : 0\n const value: unknown = api.value[index]\n return { value: value === undefined ? '' : isoOf(value) }\n },\n },\n getterProps: {\n label: ['index'],\n segmentGroup: ['index'],\n segment: ['segment', 'index'],\n hiddenInput: ['index', 'name'],\n },\n machineTranslations: null,\n variantProps: ['value', 'defaultValue', 'onValueChange', 'onFocusChange', 'min', 'max', 'size'],\n useMachineProps: (props: DateInputRootProps) => {\n const { locale } = useLocale()\n return {\n ...toMachineProps(props),\n locale: props.locale ?? locale,\n }\n },\n slots: (props: DateInputRootProps) => {\n const size = resolveSize(props.size, 'DateInput')\n return {\n ...dateInputRecipe({ size }),\n control: inputPartClass(size, dateInputRecipe.raw({ size }).control),\n }\n },\n})\n"],"mappings":"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"}
|