@neurocle/synapse-react 0.0.0-stage → 0.3.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/LICENSE +21 -0
- package/README.md +162 -2
- 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 +409 -4
- 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,138 @@
|
|
|
1
|
+
import { sva } from "../../react/styled-system/css/sva.mjs";
|
|
2
|
+
//#region src/components/dialog/dialog.recipe.ts
|
|
3
|
+
const dialogRecipe = sva({
|
|
4
|
+
slots: [
|
|
5
|
+
"trigger",
|
|
6
|
+
"backdrop",
|
|
7
|
+
"positioner",
|
|
8
|
+
"content",
|
|
9
|
+
"title",
|
|
10
|
+
"description",
|
|
11
|
+
"closeTrigger"
|
|
12
|
+
],
|
|
13
|
+
base: {
|
|
14
|
+
trigger: { minWidth: "target.minimum" },
|
|
15
|
+
backdrop: {
|
|
16
|
+
layerStyle: "scrim",
|
|
17
|
+
zIndex: "calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0) - 1)",
|
|
18
|
+
position: "fixed",
|
|
19
|
+
insetBlock: "inset.none",
|
|
20
|
+
insetInline: "inset.none",
|
|
21
|
+
bg: "background.inverse"
|
|
22
|
+
},
|
|
23
|
+
positioner: {
|
|
24
|
+
position: "fixed",
|
|
25
|
+
zIndex: "calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))",
|
|
26
|
+
insetBlock: "inset.none",
|
|
27
|
+
insetInline: "inset.none",
|
|
28
|
+
display: "flex",
|
|
29
|
+
alignItems: "center",
|
|
30
|
+
justifyContent: "center",
|
|
31
|
+
padding: "inset.surface"
|
|
32
|
+
},
|
|
33
|
+
content: {
|
|
34
|
+
layerStyle: "reveal",
|
|
35
|
+
zIndex: "calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))",
|
|
36
|
+
position: "relative",
|
|
37
|
+
display: "flex",
|
|
38
|
+
flexDirection: "column",
|
|
39
|
+
gap: "rhythm.tight",
|
|
40
|
+
width: "fill",
|
|
41
|
+
minWidth: "surface.overlayMin",
|
|
42
|
+
maxWidth: "surface.modal",
|
|
43
|
+
maxHeight: "fill",
|
|
44
|
+
overflowY: "auto",
|
|
45
|
+
padding: "rhythm.normal",
|
|
46
|
+
rounded: "overlay",
|
|
47
|
+
borderWidth: "hairline",
|
|
48
|
+
borderStyle: "solid",
|
|
49
|
+
borderColor: "border.overlay",
|
|
50
|
+
bg: "surface.overlay",
|
|
51
|
+
color: "foreground.default",
|
|
52
|
+
boxShadow: "modal",
|
|
53
|
+
_focusVisible: {
|
|
54
|
+
outlineStyle: "solid",
|
|
55
|
+
outlineWidth: "focus",
|
|
56
|
+
outlineOffset: "inset.compact",
|
|
57
|
+
outlineColor: "border.focus"
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
title: {
|
|
61
|
+
margin: "inset.none",
|
|
62
|
+
textStyle: "subtitle",
|
|
63
|
+
textWrap: "balance",
|
|
64
|
+
color: "foreground.default",
|
|
65
|
+
"[data-scope=dialog][data-part=content]:has(> [data-part=close-trigger]) > &": { paddingInlineEnd: "gap.section" }
|
|
66
|
+
},
|
|
67
|
+
description: {
|
|
68
|
+
margin: "inset.none",
|
|
69
|
+
textStyle: "body",
|
|
70
|
+
color: "foreground.muted"
|
|
71
|
+
},
|
|
72
|
+
closeTrigger: { "[data-scope=dialog][data-part=content] > &": { position: "absolute" } }
|
|
73
|
+
},
|
|
74
|
+
variants: { size: {
|
|
75
|
+
xs: {
|
|
76
|
+
closeTrigger: {
|
|
77
|
+
insetBlockStart: "inset.control",
|
|
78
|
+
insetInlineEnd: "inset.control"
|
|
79
|
+
},
|
|
80
|
+
content: {
|
|
81
|
+
padding: "inset.overlay",
|
|
82
|
+
gap: "gap.inline"
|
|
83
|
+
},
|
|
84
|
+
title: { textStyle: "label" },
|
|
85
|
+
description: { textStyle: "detail" }
|
|
86
|
+
},
|
|
87
|
+
sm: {
|
|
88
|
+
closeTrigger: {
|
|
89
|
+
insetBlockStart: "inset.overlay",
|
|
90
|
+
insetInlineEnd: "inset.overlay"
|
|
91
|
+
},
|
|
92
|
+
content: {
|
|
93
|
+
padding: "inset.surface",
|
|
94
|
+
gap: "gap.related"
|
|
95
|
+
},
|
|
96
|
+
title: { textStyle: "label" },
|
|
97
|
+
description: { textStyle: "detail" }
|
|
98
|
+
},
|
|
99
|
+
md: {
|
|
100
|
+
closeTrigger: {
|
|
101
|
+
insetBlockStart: "inset.surface",
|
|
102
|
+
insetInlineEnd: "inset.surface"
|
|
103
|
+
},
|
|
104
|
+
content: {
|
|
105
|
+
padding: "rhythm.normal",
|
|
106
|
+
gap: "rhythm.tight"
|
|
107
|
+
},
|
|
108
|
+
title: { textStyle: "subtitle" }
|
|
109
|
+
},
|
|
110
|
+
lg: {
|
|
111
|
+
closeTrigger: {
|
|
112
|
+
insetBlockStart: "rhythm.normal",
|
|
113
|
+
insetInlineEnd: "rhythm.normal"
|
|
114
|
+
},
|
|
115
|
+
content: {
|
|
116
|
+
padding: "gap.section",
|
|
117
|
+
gap: "gap.distinct"
|
|
118
|
+
},
|
|
119
|
+
title: { textStyle: "subtitle" }
|
|
120
|
+
},
|
|
121
|
+
xl: {
|
|
122
|
+
closeTrigger: {
|
|
123
|
+
insetBlockStart: "rhythm.normal",
|
|
124
|
+
insetInlineEnd: "rhythm.normal"
|
|
125
|
+
},
|
|
126
|
+
content: {
|
|
127
|
+
padding: "gap.section",
|
|
128
|
+
gap: "gap.distinct"
|
|
129
|
+
},
|
|
130
|
+
title: { textStyle: "title" }
|
|
131
|
+
}
|
|
132
|
+
} },
|
|
133
|
+
defaultVariants: { size: "md" }
|
|
134
|
+
});
|
|
135
|
+
//#endregion
|
|
136
|
+
export { dialogRecipe };
|
|
137
|
+
|
|
138
|
+
//# sourceMappingURL=dialog.recipe.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dialog.recipe.mjs","names":[],"sources":["../../../src/components/dialog/dialog.recipe.ts"],"sourcesContent":["import { sva } from '#styled-system/css/index.js'\n\nexport const dialogRecipe = sva({\n slots: ['trigger', 'backdrop', 'positioner', 'content', 'title', 'description', 'closeTrigger'],\n base: {\n trigger: { minWidth: 'target.minimum' },\n backdrop: {\n layerStyle: 'scrim',\n zIndex: 'calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0) - 1)',\n position: 'fixed',\n insetBlock: 'inset.none',\n insetInline: 'inset.none',\n bg: 'background.inverse',\n },\n positioner: {\n position: 'fixed',\n zIndex: 'calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))',\n insetBlock: 'inset.none',\n insetInline: 'inset.none',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n padding: 'inset.surface',\n },\n content: {\n layerStyle: 'reveal',\n zIndex: 'calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))',\n position: 'relative',\n display: 'flex',\n flexDirection: 'column',\n gap: 'rhythm.tight',\n // 대화상자는 surface.modal까지 주어진 너비를 모두 씁니다. overlayMax는 Menu와 Popover의 너비라서\n // 320px에서는 제목, 문단, 동작 두 개가 비좁았습니다.\n width: 'fill',\n minWidth: 'surface.overlayMin',\n maxWidth: 'surface.modal',\n maxHeight: 'fill',\n overflowY: 'auto',\n padding: 'rhythm.normal',\n rounded: 'overlay',\n borderWidth: 'hairline',\n borderStyle: 'solid',\n borderColor: 'border.overlay',\n bg: 'surface.overlay',\n color: 'foreground.default',\n boxShadow: 'modal',\n _focusVisible: {\n outlineStyle: 'solid',\n outlineWidth: 'focus',\n outlineOffset: 'inset.compact',\n outlineColor: 'border.focus',\n },\n },\n title: {\n margin: 'inset.none',\n textStyle: 'subtitle',\n textWrap: 'balance',\n color: 'foreground.default',\n '[data-scope=dialog][data-part=content]:has(> [data-part=close-trigger]) > &': {\n paddingInlineEnd: 'gap.section',\n },\n },\n description: {\n margin: 'inset.none',\n textStyle: 'body',\n color: 'foreground.muted',\n },\n // content 바로 안의 close trigger(아이콘)만 흐름에서 빼 top-end에 고정합니다; 제목은 그 자리만큼\n // paddingInlineEnd로 비워 둡니다. footer의 close trigger(`asChild`)는 직계 자식이 아니라 흐름에 남습니다.\n closeTrigger: {\n '[data-scope=dialog][data-part=content] > &': { position: 'absolute' },\n },\n },\n variants: {\n size: {\n xs: {\n closeTrigger: { insetBlockStart: 'inset.control', insetInlineEnd: 'inset.control' },\n content: { padding: 'inset.overlay', gap: 'gap.inline' },\n title: { textStyle: 'label' },\n description: { textStyle: 'detail' },\n },\n sm: {\n closeTrigger: { insetBlockStart: 'inset.overlay', insetInlineEnd: 'inset.overlay' },\n content: { padding: 'inset.surface', gap: 'gap.related' },\n title: { textStyle: 'label' },\n description: { textStyle: 'detail' },\n },\n md: {\n closeTrigger: { insetBlockStart: 'inset.surface', insetInlineEnd: 'inset.surface' },\n content: { padding: 'rhythm.normal', gap: 'rhythm.tight' },\n title: { textStyle: 'subtitle' },\n },\n lg: {\n closeTrigger: { insetBlockStart: 'rhythm.normal', insetInlineEnd: 'rhythm.normal' },\n content: { padding: 'gap.section', gap: 'gap.distinct' },\n title: { textStyle: 'subtitle' },\n },\n xl: {\n closeTrigger: { insetBlockStart: 'rhythm.normal', insetInlineEnd: 'rhythm.normal' },\n content: { padding: 'gap.section', gap: 'gap.distinct' },\n title: { textStyle: 'title' },\n },\n },\n },\n defaultVariants: { size: 'md' },\n})\n"],"mappings":";;AAEA,MAAa,eAAe,IAAI;CAC9B,OAAO;EAAC;EAAW;EAAY;EAAc;EAAW;EAAS;EAAe;CAAc;CAC9F,MAAM;EACJ,SAAS,EAAE,UAAU,iBAAiB;EACtC,UAAU;GACR,YAAY;GACZ,QAAQ;GACR,UAAU;GACV,YAAY;GACZ,aAAa;GACb,IAAI;EACN;EACA,YAAY;GACV,UAAU;GACV,QAAQ;GACR,YAAY;GACZ,aAAa;GACb,SAAS;GACT,YAAY;GACZ,gBAAgB;GAChB,SAAS;EACX;EACA,SAAS;GACP,YAAY;GACZ,QAAQ;GACR,UAAU;GACV,SAAS;GACT,eAAe;GACf,KAAK;GAGL,OAAO;GACP,UAAU;GACV,UAAU;GACV,WAAW;GACX,WAAW;GACX,SAAS;GACT,SAAS;GACT,aAAa;GACb,aAAa;GACb,aAAa;GACb,IAAI;GACJ,OAAO;GACP,WAAW;GACX,eAAe;IACb,cAAc;IACd,cAAc;IACd,eAAe;IACf,cAAc;GAChB;EACF;EACA,OAAO;GACL,QAAQ;GACR,WAAW;GACX,UAAU;GACV,OAAO;GACP,+EAA+E,EAC7E,kBAAkB,cACpB;EACF;EACA,aAAa;GACX,QAAQ;GACR,WAAW;GACX,OAAO;EACT;EAGA,cAAc,EACZ,8CAA8C,EAAE,UAAU,WAAW,EACvE;CACF;CACA,UAAU,EACR,MAAM;EACJ,IAAI;GACF,cAAc;IAAE,iBAAiB;IAAiB,gBAAgB;GAAgB;GAClF,SAAS;IAAE,SAAS;IAAiB,KAAK;GAAa;GACvD,OAAO,EAAE,WAAW,QAAQ;GAC5B,aAAa,EAAE,WAAW,SAAS;EACrC;EACA,IAAI;GACF,cAAc;IAAE,iBAAiB;IAAiB,gBAAgB;GAAgB;GAClF,SAAS;IAAE,SAAS;IAAiB,KAAK;GAAc;GACxD,OAAO,EAAE,WAAW,QAAQ;GAC5B,aAAa,EAAE,WAAW,SAAS;EACrC;EACA,IAAI;GACF,cAAc;IAAE,iBAAiB;IAAiB,gBAAgB;GAAgB;GAClF,SAAS;IAAE,SAAS;IAAiB,KAAK;GAAe;GACzD,OAAO,EAAE,WAAW,WAAW;EACjC;EACA,IAAI;GACF,cAAc;IAAE,iBAAiB;IAAiB,gBAAgB;GAAgB;GAClF,SAAS;IAAE,SAAS;IAAe,KAAK;GAAe;GACvD,OAAO,EAAE,WAAW,WAAW;EACjC;EACA,IAAI;GACF,cAAc;IAAE,iBAAiB;IAAiB,gBAAgB;GAAgB;GAClF,SAAS;IAAE,SAAS;IAAe,KAAK;GAAe;GACvD,OAAO,EAAE,WAAW,QAAQ;EAC9B;CACF,EACF;CACA,iBAAiB,EAAE,MAAM,KAAK;AAChC,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { TranslationOverrides } from "../../provider/translations.mjs";
|
|
2
|
+
import { SynapseComponent } from "../../system/types.mjs";
|
|
3
|
+
import { OpenChangeDetails } from "../details.mjs";
|
|
4
|
+
import { Size } from "../../shared/size-scale.mjs";
|
|
5
|
+
//#region src/components/drawer/drawer.d.ts
|
|
6
|
+
export type DrawerSwipeDirection = 'up' | 'down' | 'start' | 'end';
|
|
7
|
+
export type DrawerSnapPoint = number | string;
|
|
8
|
+
export interface DrawerSnapPointChangeDetails {
|
|
9
|
+
readonly snapPoint: DrawerSnapPoint | null;
|
|
10
|
+
}
|
|
11
|
+
export interface DrawerRootProps {
|
|
12
|
+
/** 제어되는 열림 상태. */
|
|
13
|
+
open?: boolean;
|
|
14
|
+
/** 비제어 초기 열림 상태. `open`이 주어지면 무시됩니다. */
|
|
15
|
+
defaultOpen?: boolean;
|
|
16
|
+
/** 제어 여부와 무관하게 드로어가 열리거나 닫힐 때마다 알림을 받습니다. */
|
|
17
|
+
onOpenChange?: (details: OpenChangeDetails) => void;
|
|
18
|
+
/** 드로어가 어떻게 안내되는지를 정합니다. 기본값은 `dialog`입니다. */
|
|
19
|
+
role?: 'dialog' | 'alertdialog';
|
|
20
|
+
/**
|
|
21
|
+
* `Drawer.Title`이 이름을 주지 않을 때 쓰이는 드로어의 접근성 이름.
|
|
22
|
+
*
|
|
23
|
+
* `role`을 지닌 content 엘리먼트에 붙으며, `Drawer.Title`이 있으면 `aria-labelledby`가
|
|
24
|
+
* 여전히 우선합니다.
|
|
25
|
+
*/
|
|
26
|
+
'aria-label'?: string;
|
|
27
|
+
/** 드로어를 닫으려고 끌고 가는 쪽의 가장자리. 기본값은 `down`입니다. */
|
|
28
|
+
swipeDirection?: DrawerSwipeDirection;
|
|
29
|
+
/** 드로어가 멈추는 지점들. 생략하면 전체 크기의 지점 하나만 둡니다. */
|
|
30
|
+
snapPoints?: readonly DrawerSnapPoint[];
|
|
31
|
+
/** 제어되는 멈춤 지점. */
|
|
32
|
+
snapPoint?: DrawerSnapPoint | null;
|
|
33
|
+
/** 비제어 초기 멈춤 지점. `snapPoint`가 주어지면 무시됩니다. */
|
|
34
|
+
defaultSnapPoint?: DrawerSnapPoint | null;
|
|
35
|
+
/** 드로어가 다른 멈춤 지점에 자리 잡을 때마다 알림을 받습니다. */
|
|
36
|
+
onSnapPointChange?: (details: DrawerSnapPointChangeDetails) => void;
|
|
37
|
+
/** 제스처 한 번에 가장 가까운 지점이 아니라 바로 옆 지점으로만 이동합니다. */
|
|
38
|
+
snapToSequentialPoints?: boolean;
|
|
39
|
+
/** 열려 있는 동안 페이지의 나머지를 비활성 상태로 만듭니다. 기본값은 true입니다. */
|
|
40
|
+
modal?: boolean;
|
|
41
|
+
/** 열려 있는 동안 포커스를 드로어 안에 가둡니다. 모달 드로어에서는 기본값이 true입니다. */
|
|
42
|
+
trapFocus?: boolean;
|
|
43
|
+
/** 닫힐 때 포커스를 trigger로 되돌립니다. 기본값은 true입니다. */
|
|
44
|
+
restoreFocus?: boolean;
|
|
45
|
+
/** 열려 있는 동안 뒤쪽 페이지가 스크롤되지 않게 합니다. */
|
|
46
|
+
preventScroll?: boolean;
|
|
47
|
+
/** 콘텐츠 안의 스크롤 제스처를 드로어 드래그로 가로채지 않고 그대로 둡니다. */
|
|
48
|
+
preventDragOnScroll?: boolean;
|
|
49
|
+
/** Escape를 누르면 닫힙니다. 기본값은 true입니다. */
|
|
50
|
+
closeOnEscape?: boolean;
|
|
51
|
+
/** 바깥에서 포인터가 눌리면 닫힙니다. 기본값은 true입니다. */
|
|
52
|
+
closeOnInteractOutside?: boolean;
|
|
53
|
+
/** 이 Drawer에만 적용되는 접근성 문자열이며, provider의 것보다 우선합니다. */
|
|
54
|
+
translations?: TranslationOverrides;
|
|
55
|
+
/** 하나의 공유 척도에서 옵니다. 모든 컴포넌트가 그렇듯 기본값은 `md`입니다. */
|
|
56
|
+
size?: Size;
|
|
57
|
+
/** 팩토리가 생성하는 식별자를 덮어씁니다. 서버와 클라이언트에서 동일합니다. */
|
|
58
|
+
id?: string;
|
|
59
|
+
}
|
|
60
|
+
export declare const Drawer: SynapseComponent<"backdrop" | "closeTrigger" | "content" | "description" | "grabber" | "grabberIndicator" | "positioner" | "swipeArea" | "title" | "trigger", null, DrawerRootProps, never>;
|
|
61
|
+
//#endregion
|
|
62
|
+
//# sourceMappingURL=drawer.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawer.d.mts","names":[],"sources":["../../../src/components/drawer/drawer.tsx"],"mappings":";;;;;YAgBY;YAEA;iBAEK;WACN,WAAW;;iBAGL;;EAEf;;EAEA;;EAEA,gBAAgB,SAAS;;EAEzB;;;;;;;EAOA;;EAEA,iBAAiB;;EAEjB,sBAAsB;;EAEtB,YAAY;;EAEZ,mBAAmB;;EAEnB,qBAAqB,SAAS;;EAE9B;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,eAAe;;EAEf,OAAO;;EAEP;;qBAsDW,QAAM,oKAAA"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { resolveSize } from "../../shared/size-scale.mjs";
|
|
3
|
+
import { close } from "../../icons/src/close.mjs";
|
|
4
|
+
import "../../icons/src/index.mjs";
|
|
5
|
+
import { Icon } from "../../shared/icon.mjs";
|
|
6
|
+
import { rootContextOf } from "../../system/context.mjs";
|
|
7
|
+
import { defineComponent } from "../../system/create-component.mjs";
|
|
8
|
+
import { buttonPartClass } from "../../shared/button-style.mjs";
|
|
9
|
+
import { drawerRecipe } from "./drawer.recipe.mjs";
|
|
10
|
+
import { jsx } from "react/jsx-runtime";
|
|
11
|
+
import { visuallyHiddenStyle } from "@zag-js/dom-query";
|
|
12
|
+
import * as drawer from "@zag-js/drawer";
|
|
13
|
+
//#region src/components/drawer/drawer.tsx
|
|
14
|
+
const isLabelService = (value) => typeof value === "object" && value !== null && "prop" in value && typeof value.prop === "function";
|
|
15
|
+
const base = defineComponent()({
|
|
16
|
+
name: "Drawer",
|
|
17
|
+
module: drawer,
|
|
18
|
+
rootPart: null,
|
|
19
|
+
elements: {
|
|
20
|
+
title: "h2",
|
|
21
|
+
description: "p"
|
|
22
|
+
},
|
|
23
|
+
defaultContent: { closeTrigger: (_api, t) => [/* @__PURE__ */ jsx(Icon, { icon: close }, "icon"), /* @__PURE__ */ jsx("span", {
|
|
24
|
+
"data-visually-hidden": "",
|
|
25
|
+
style: visuallyHiddenStyle,
|
|
26
|
+
children: t("drawer.closeTrigger.label")
|
|
27
|
+
}, "label")] },
|
|
28
|
+
machineTranslations: null,
|
|
29
|
+
variantProps: ["size"],
|
|
30
|
+
useMachineProps: (props) => props["aria-label"] === void 0 ? {} : { "aria-label": props["aria-label"] },
|
|
31
|
+
slots: (props) => {
|
|
32
|
+
const size = resolveSize(props.size, "Drawer");
|
|
33
|
+
const own = drawerRecipe.raw({ size });
|
|
34
|
+
return {
|
|
35
|
+
...drawerRecipe({ size }),
|
|
36
|
+
trigger: buttonPartClass({
|
|
37
|
+
variant: "outline",
|
|
38
|
+
tone: "neutral",
|
|
39
|
+
size
|
|
40
|
+
}, own.trigger),
|
|
41
|
+
closeTrigger: buttonPartClass({
|
|
42
|
+
variant: "ghost",
|
|
43
|
+
tone: "neutral",
|
|
44
|
+
size
|
|
45
|
+
}, own.closeTrigger)
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
const BaseContent = base.Content;
|
|
50
|
+
const useDrawerRootValue = rootContextOf(base)?.useRootValue ?? (() => null);
|
|
51
|
+
function DrawerContent(props) {
|
|
52
|
+
const value = useDrawerRootValue();
|
|
53
|
+
const label = value === null || !isLabelService(value.service) ? void 0 : value.service.prop("aria-label");
|
|
54
|
+
return /* @__PURE__ */ jsx(BaseContent, {
|
|
55
|
+
"aria-label": typeof label === "string" ? label : void 0,
|
|
56
|
+
...props
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
DrawerContent.displayName = BaseContent.displayName;
|
|
60
|
+
Object.assign(base, { Content: DrawerContent });
|
|
61
|
+
const Drawer = base;
|
|
62
|
+
//#endregion
|
|
63
|
+
export { Drawer };
|
|
64
|
+
|
|
65
|
+
//# sourceMappingURL=drawer.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawer.mjs","names":[],"sources":["../../../src/components/drawer/drawer.tsx"],"sourcesContent":["'use client'\n\nimport { close } from '@neurocle/synapse-icons'\nimport { visuallyHiddenStyle } from '@zag-js/dom-query'\nimport * as drawer from '@zag-js/drawer'\nimport type { ReactNode } from 'react'\n\nimport type { OpenChangeDetails } from '#/components/details.ts'\nimport { drawerRecipe } from '#/components/drawer/drawer.recipe.ts'\nimport type { TranslationOverrides } from '#/provider/translations.ts'\nimport { buttonPartClass } from '#/shared/button-style.ts'\nimport { Icon } from '#/shared/icon.tsx'\nimport { resolveSize, type Size } from '#/shared/size-scale.ts'\nimport { rootContextOf } from '#/system/context.ts'\nimport { defineComponent } from '#/system/create-component.ts'\n\nexport type DrawerSwipeDirection = 'up' | 'down' | 'start' | 'end'\n\nexport type DrawerSnapPoint = number | string\n\nexport interface DrawerSnapPointChangeDetails {\n readonly snapPoint: DrawerSnapPoint | null\n}\n\nexport interface DrawerRootProps {\n /** 제어되는 열림 상태. */\n open?: boolean\n /** 비제어 초기 열림 상태. `open`이 주어지면 무시됩니다. */\n defaultOpen?: boolean\n /** 제어 여부와 무관하게 드로어가 열리거나 닫힐 때마다 알림을 받습니다. */\n onOpenChange?: (details: OpenChangeDetails) => void\n /** 드로어가 어떻게 안내되는지를 정합니다. 기본값은 `dialog`입니다. */\n role?: 'dialog' | 'alertdialog'\n /**\n * `Drawer.Title`이 이름을 주지 않을 때 쓰이는 드로어의 접근성 이름.\n *\n * `role`을 지닌 content 엘리먼트에 붙으며, `Drawer.Title`이 있으면 `aria-labelledby`가\n * 여전히 우선합니다.\n */\n 'aria-label'?: string\n /** 드로어를 닫으려고 끌고 가는 쪽의 가장자리. 기본값은 `down`입니다. */\n swipeDirection?: DrawerSwipeDirection\n /** 드로어가 멈추는 지점들. 생략하면 전체 크기의 지점 하나만 둡니다. */\n snapPoints?: readonly DrawerSnapPoint[]\n /** 제어되는 멈춤 지점. */\n snapPoint?: DrawerSnapPoint | null\n /** 비제어 초기 멈춤 지점. `snapPoint`가 주어지면 무시됩니다. */\n defaultSnapPoint?: DrawerSnapPoint | null\n /** 드로어가 다른 멈춤 지점에 자리 잡을 때마다 알림을 받습니다. */\n onSnapPointChange?: (details: DrawerSnapPointChangeDetails) => void\n /** 제스처 한 번에 가장 가까운 지점이 아니라 바로 옆 지점으로만 이동합니다. */\n snapToSequentialPoints?: boolean\n /** 열려 있는 동안 페이지의 나머지를 비활성 상태로 만듭니다. 기본값은 true입니다. */\n modal?: boolean\n /** 열려 있는 동안 포커스를 드로어 안에 가둡니다. 모달 드로어에서는 기본값이 true입니다. */\n trapFocus?: boolean\n /** 닫힐 때 포커스를 trigger로 되돌립니다. 기본값은 true입니다. */\n restoreFocus?: boolean\n /** 열려 있는 동안 뒤쪽 페이지가 스크롤되지 않게 합니다. */\n preventScroll?: boolean\n /** 콘텐츠 안의 스크롤 제스처를 드로어 드래그로 가로채지 않고 그대로 둡니다. */\n preventDragOnScroll?: boolean\n /** Escape를 누르면 닫힙니다. 기본값은 true입니다. */\n closeOnEscape?: boolean\n /** 바깥에서 포인터가 눌리면 닫힙니다. 기본값은 true입니다. */\n closeOnInteractOutside?: boolean\n /** 이 Drawer에만 적용되는 접근성 문자열이며, provider의 것보다 우선합니다. */\n translations?: TranslationOverrides\n /** 하나의 공유 척도에서 옵니다. 모든 컴포넌트가 그렇듯 기본값은 `md`입니다. */\n size?: Size\n /** 팩토리가 생성하는 식별자를 덮어씁니다. 서버와 클라이언트에서 동일합니다. */\n id?: string\n}\n\ninterface DrawerLabelService {\n prop: (key: 'aria-label') => unknown\n}\n\nconst isLabelService = (value: unknown): value is DrawerLabelService =>\n typeof value === 'object' && value !== null && 'prop' in value && typeof value.prop === 'function'\n\nconst base = defineComponent<DrawerRootProps>()({\n name: 'Drawer',\n module: drawer,\n rootPart: null,\n elements: {\n title: 'h2',\n description: 'p',\n },\n defaultContent: {\n closeTrigger: (_api, t) => [\n <Icon key=\"icon\" icon={close} />,\n <span key=\"label\" data-visually-hidden=\"\" style={visuallyHiddenStyle}>\n {t('drawer.closeTrigger.label')}\n </span>,\n ],\n },\n machineTranslations: null,\n variantProps: ['size'],\n useMachineProps: (props: DrawerRootProps) =>\n props['aria-label'] === undefined ? {} : { 'aria-label': props['aria-label'] },\n slots: (props: DrawerRootProps) => {\n const size = resolveSize(props.size, 'Drawer')\n const own = drawerRecipe.raw({ size })\n return {\n ...drawerRecipe({ size }),\n trigger: buttonPartClass({ variant: 'outline', tone: 'neutral', size }, own.trigger),\n closeTrigger: buttonPartClass({ variant: 'ghost', tone: 'neutral', size }, own.closeTrigger),\n }\n },\n})\n\nconst BaseContent = base.Content\nconst useDrawerRootValue = rootContextOf(base)?.useRootValue ?? (() => null)\n\nfunction DrawerContent(props: Parameters<typeof BaseContent>[0]): ReactNode {\n const value = useDrawerRootValue()\n const label =\n value === null || !isLabelService(value.service) ? undefined : value.service.prop('aria-label')\n return <BaseContent aria-label={typeof label === 'string' ? label : undefined} {...props} />\n}\nDrawerContent.displayName = BaseContent.displayName\n\nObject.assign(base, { Content: DrawerContent })\n\nexport const Drawer = base\n"],"mappings":";;;;;;;;;;;;;AA8EA,MAAM,kBAAkB,UACtB,OAAO,UAAU,YAAY,UAAU,QAAQ,UAAU,SAAS,OAAO,MAAM,SAAS;AAE1F,MAAM,OAAO,gBAAiC,CAAC,CAAC;CAC9C,MAAM;CACN,QAAQ;CACR,UAAU;CACV,UAAU;EACR,OAAO;EACP,aAAa;CACf;CACA,gBAAgB,EACd,eAAe,MAAM,MAAM,CACzB,oBAAC,MAAD,EAAiB,MAAM,MAAQ,GAArB,MAAqB,GAC/B,oBAAC,QAAD;EAAkB,wBAAqB;EAAG,OAAO;EAC9C,UAAA,EAAE,2BAA2B;CAC1B,GAFI,OAEJ,CACR,EACF;CACA,qBAAqB;CACrB,cAAc,CAAC,MAAM;CACrB,kBAAkB,UAChB,MAAM,kBAAkB,KAAA,IAAY,CAAC,IAAI,EAAE,cAAc,MAAM,cAAc;CAC/E,QAAQ,UAA2B;EACjC,MAAM,OAAO,YAAY,MAAM,MAAM,QAAQ;EAC7C,MAAM,MAAM,aAAa,IAAI,EAAE,KAAK,CAAC;EACrC,OAAO;GACL,GAAG,aAAa,EAAE,KAAK,CAAC;GACxB,SAAS,gBAAgB;IAAE,SAAS;IAAW,MAAM;IAAW;GAAK,GAAG,IAAI,OAAO;GACnF,cAAc,gBAAgB;IAAE,SAAS;IAAS,MAAM;IAAW;GAAK,GAAG,IAAI,YAAY;EAC7F;CACF;AACF,CAAC;AAED,MAAM,cAAc,KAAK;AACzB,MAAM,qBAAqB,cAAc,IAAI,CAAC,EAAE,uBAAuB;AAEvE,SAAS,cAAc,OAAqD;CAC1E,MAAM,QAAQ,mBAAmB;CACjC,MAAM,QACJ,UAAU,QAAQ,CAAC,eAAe,MAAM,OAAO,IAAI,KAAA,IAAY,MAAM,QAAQ,KAAK,YAAY;CAChG,OAAO,oBAAC,aAAD;EAAa,cAAY,OAAO,UAAU,WAAW,QAAQ,KAAA;EAAW,GAAI;CAAQ,CAAA;AAC7F;AACA,cAAc,cAAc,YAAY;AAExC,OAAO,OAAO,MAAM,EAAE,SAAS,cAAc,CAAC;AAE9C,MAAa,SAAS"}
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
import { sva } from "../../react/styled-system/css/sva.mjs";
|
|
2
|
+
//#region src/components/drawer/drawer.recipe.ts
|
|
3
|
+
const drawerRecipe = sva({
|
|
4
|
+
slots: [
|
|
5
|
+
"positioner",
|
|
6
|
+
"content",
|
|
7
|
+
"title",
|
|
8
|
+
"description",
|
|
9
|
+
"trigger",
|
|
10
|
+
"backdrop",
|
|
11
|
+
"grabber",
|
|
12
|
+
"grabberIndicator",
|
|
13
|
+
"closeTrigger",
|
|
14
|
+
"swipeArea"
|
|
15
|
+
],
|
|
16
|
+
base: {
|
|
17
|
+
positioner: {
|
|
18
|
+
position: "fixed",
|
|
19
|
+
zIndex: "calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))",
|
|
20
|
+
insetBlock: "inset.none",
|
|
21
|
+
insetInline: "inset.none",
|
|
22
|
+
display: "flex",
|
|
23
|
+
"&[data-swipe-direction=\"down\"]": { alignItems: "flex-end" },
|
|
24
|
+
"&[data-swipe-direction=\"up\"]": { alignItems: "flex-start" },
|
|
25
|
+
"&[data-swipe-direction=\"left\"]": { justifyContent: "flex-start" },
|
|
26
|
+
"&[data-swipe-direction=\"right\"]": { justifyContent: "flex-end" }
|
|
27
|
+
},
|
|
28
|
+
content: {
|
|
29
|
+
layerStyle: "fade",
|
|
30
|
+
zIndex: "calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))",
|
|
31
|
+
"--drawer-motion-properties": "translate, transform, display",
|
|
32
|
+
transitionProperty: "var(--drawer-motion-properties)",
|
|
33
|
+
transitionDuration: "expand",
|
|
34
|
+
transitionTimingFunction: "enter",
|
|
35
|
+
translate: "auto",
|
|
36
|
+
_starting: { opacity: 1 },
|
|
37
|
+
_closed: {
|
|
38
|
+
opacity: 1,
|
|
39
|
+
transitionDuration: "reveal !important",
|
|
40
|
+
transitionTimingFunction: "exit"
|
|
41
|
+
},
|
|
42
|
+
position: "relative",
|
|
43
|
+
display: "flex",
|
|
44
|
+
flexDirection: "column",
|
|
45
|
+
gap: "rhythm.tight",
|
|
46
|
+
padding: "rhythm.normal",
|
|
47
|
+
borderWidth: "hairline",
|
|
48
|
+
borderStyle: "solid",
|
|
49
|
+
borderColor: "border.overlay",
|
|
50
|
+
bg: "surface.overlay",
|
|
51
|
+
color: "foreground.default",
|
|
52
|
+
boxShadow: "modal",
|
|
53
|
+
overflowY: "auto",
|
|
54
|
+
"&[data-swipe-direction=\"down\"]": {
|
|
55
|
+
_starting: { translateY: "full" },
|
|
56
|
+
_closed: { translateY: "full" },
|
|
57
|
+
width: "fill",
|
|
58
|
+
maxHeight: "fill",
|
|
59
|
+
roundedTop: "overlay"
|
|
60
|
+
},
|
|
61
|
+
"&[data-swipe-direction=\"up\"]": {
|
|
62
|
+
_starting: { translateY: "-full" },
|
|
63
|
+
_closed: { translateY: "-full" },
|
|
64
|
+
width: "fill",
|
|
65
|
+
maxHeight: "fill",
|
|
66
|
+
roundedBottom: "overlay"
|
|
67
|
+
},
|
|
68
|
+
"&[data-swipe-direction=\"left\"]": {
|
|
69
|
+
_starting: { translateX: "-full" },
|
|
70
|
+
_closed: { translateX: "-full" },
|
|
71
|
+
height: "fill",
|
|
72
|
+
minWidth: "surface.overlayMin",
|
|
73
|
+
maxWidth: "surface.overlayMax",
|
|
74
|
+
roundedRight: "overlay"
|
|
75
|
+
},
|
|
76
|
+
"&[data-swipe-direction=\"right\"]": {
|
|
77
|
+
_starting: { translateX: "full" },
|
|
78
|
+
_closed: { translateX: "full" },
|
|
79
|
+
height: "fill",
|
|
80
|
+
minWidth: "surface.overlayMin",
|
|
81
|
+
maxWidth: "surface.overlayMax",
|
|
82
|
+
roundedLeft: "overlay"
|
|
83
|
+
},
|
|
84
|
+
_focusVisible: {
|
|
85
|
+
outlineStyle: "solid",
|
|
86
|
+
outlineWidth: "focus",
|
|
87
|
+
outlineOffset: "inset.compact",
|
|
88
|
+
outlineColor: "border.focus"
|
|
89
|
+
}
|
|
90
|
+
},
|
|
91
|
+
title: {
|
|
92
|
+
margin: "inset.none",
|
|
93
|
+
textStyle: "subtitle",
|
|
94
|
+
textWrap: "balance",
|
|
95
|
+
color: "foreground.default",
|
|
96
|
+
"[data-scope=drawer][data-part=content]:has(> [data-part=close-trigger]) > &": { paddingInlineEnd: "gap.section" }
|
|
97
|
+
},
|
|
98
|
+
description: {
|
|
99
|
+
margin: "inset.none",
|
|
100
|
+
textStyle: "body",
|
|
101
|
+
color: "foreground.muted"
|
|
102
|
+
},
|
|
103
|
+
trigger: {},
|
|
104
|
+
backdrop: {
|
|
105
|
+
layerStyle: "scrim",
|
|
106
|
+
zIndex: "calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0) - 1)",
|
|
107
|
+
transitionDuration: "expand",
|
|
108
|
+
_closed: { transitionDuration: "reveal" },
|
|
109
|
+
position: "fixed",
|
|
110
|
+
insetBlock: "inset.none",
|
|
111
|
+
insetInline: "inset.none",
|
|
112
|
+
bg: "background.inverse"
|
|
113
|
+
},
|
|
114
|
+
grabber: {
|
|
115
|
+
display: "flex",
|
|
116
|
+
alignItems: "center",
|
|
117
|
+
justifyContent: "center",
|
|
118
|
+
minWidth: "target.minimum",
|
|
119
|
+
minHeight: "target.minimum",
|
|
120
|
+
padding: "inset.compact",
|
|
121
|
+
cursor: "grab",
|
|
122
|
+
touchAction: "none"
|
|
123
|
+
},
|
|
124
|
+
grabberIndicator: {
|
|
125
|
+
paddingBlockStart: "inset.compact",
|
|
126
|
+
width: "control.lg",
|
|
127
|
+
rounded: "pill",
|
|
128
|
+
bg: "border.strong",
|
|
129
|
+
pointerEvents: "none"
|
|
130
|
+
},
|
|
131
|
+
closeTrigger: { "[data-scope=drawer][data-part=content] > &": { position: "absolute" } },
|
|
132
|
+
swipeArea: {
|
|
133
|
+
position: "absolute",
|
|
134
|
+
touchAction: "none"
|
|
135
|
+
}
|
|
136
|
+
},
|
|
137
|
+
variants: { size: {
|
|
138
|
+
xs: {
|
|
139
|
+
closeTrigger: {
|
|
140
|
+
insetBlockStart: "inset.control",
|
|
141
|
+
insetInlineEnd: "inset.control"
|
|
142
|
+
},
|
|
143
|
+
content: {
|
|
144
|
+
padding: "inset.overlay",
|
|
145
|
+
gap: "gap.inline"
|
|
146
|
+
},
|
|
147
|
+
title: { textStyle: "label" },
|
|
148
|
+
description: { textStyle: "detail" }
|
|
149
|
+
},
|
|
150
|
+
sm: {
|
|
151
|
+
closeTrigger: {
|
|
152
|
+
insetBlockStart: "inset.overlay",
|
|
153
|
+
insetInlineEnd: "inset.overlay"
|
|
154
|
+
},
|
|
155
|
+
content: {
|
|
156
|
+
padding: "inset.surface",
|
|
157
|
+
gap: "gap.related"
|
|
158
|
+
},
|
|
159
|
+
title: { textStyle: "label" },
|
|
160
|
+
description: { textStyle: "detail" }
|
|
161
|
+
},
|
|
162
|
+
md: {
|
|
163
|
+
closeTrigger: {
|
|
164
|
+
insetBlockStart: "inset.surface",
|
|
165
|
+
insetInlineEnd: "inset.surface"
|
|
166
|
+
},
|
|
167
|
+
content: {
|
|
168
|
+
padding: "rhythm.normal",
|
|
169
|
+
gap: "rhythm.tight"
|
|
170
|
+
},
|
|
171
|
+
title: { textStyle: "subtitle" }
|
|
172
|
+
},
|
|
173
|
+
lg: {
|
|
174
|
+
closeTrigger: {
|
|
175
|
+
insetBlockStart: "rhythm.normal",
|
|
176
|
+
insetInlineEnd: "rhythm.normal"
|
|
177
|
+
},
|
|
178
|
+
content: {
|
|
179
|
+
padding: "gap.section",
|
|
180
|
+
gap: "gap.distinct"
|
|
181
|
+
},
|
|
182
|
+
title: { textStyle: "subtitle" }
|
|
183
|
+
},
|
|
184
|
+
xl: {
|
|
185
|
+
closeTrigger: {
|
|
186
|
+
insetBlockStart: "rhythm.normal",
|
|
187
|
+
insetInlineEnd: "rhythm.normal"
|
|
188
|
+
},
|
|
189
|
+
content: {
|
|
190
|
+
padding: "gap.section",
|
|
191
|
+
gap: "gap.distinct"
|
|
192
|
+
},
|
|
193
|
+
title: { textStyle: "title" }
|
|
194
|
+
}
|
|
195
|
+
} },
|
|
196
|
+
defaultVariants: { size: "md" }
|
|
197
|
+
});
|
|
198
|
+
//#endregion
|
|
199
|
+
export { drawerRecipe };
|
|
200
|
+
|
|
201
|
+
//# sourceMappingURL=drawer.recipe.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drawer.recipe.mjs","names":[],"sources":["../../../src/components/drawer/drawer.recipe.ts"],"sourcesContent":["import { sva } from '#styled-system/css/index.js'\n\nexport const drawerRecipe = sva({\n slots: [\n 'positioner',\n 'content',\n 'title',\n 'description',\n 'trigger',\n 'backdrop',\n 'grabber',\n 'grabberIndicator',\n 'closeTrigger',\n 'swipeArea',\n ],\n base: {\n positioner: {\n position: 'fixed',\n zIndex: 'calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))',\n insetBlock: 'inset.none',\n insetInline: 'inset.none',\n display: 'flex',\n '&[data-swipe-direction=\"down\"]': { alignItems: 'flex-end' },\n '&[data-swipe-direction=\"up\"]': { alignItems: 'flex-start' },\n '&[data-swipe-direction=\"left\"]': { justifyContent: 'flex-start' },\n '&[data-swipe-direction=\"right\"]': { justifyContent: 'flex-end' },\n },\n content: {\n layerStyle: 'fade',\n zIndex: 'calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))',\n '--drawer-motion-properties': 'translate, transform, display',\n transitionProperty: 'var(--drawer-motion-properties)',\n transitionDuration: 'expand',\n transitionTimingFunction: 'enter',\n translate: 'auto',\n _starting: { opacity: 1 },\n _closed: {\n opacity: 1,\n transitionDuration: 'reveal !important',\n transitionTimingFunction: 'exit',\n },\n position: 'relative',\n display: 'flex',\n flexDirection: 'column',\n gap: 'rhythm.tight',\n padding: 'rhythm.normal',\n borderWidth: 'hairline',\n borderStyle: 'solid',\n borderColor: 'border.overlay',\n bg: 'surface.overlay',\n color: 'foreground.default',\n boxShadow: 'modal',\n overflowY: 'auto',\n '&[data-swipe-direction=\"down\"]': {\n _starting: { translateY: 'full' },\n _closed: { translateY: 'full' },\n width: 'fill',\n maxHeight: 'fill',\n roundedTop: 'overlay',\n },\n '&[data-swipe-direction=\"up\"]': {\n _starting: { translateY: '-full' },\n _closed: { translateY: '-full' },\n width: 'fill',\n maxHeight: 'fill',\n roundedBottom: 'overlay',\n },\n '&[data-swipe-direction=\"left\"]': {\n _starting: { translateX: '-full' },\n _closed: { translateX: '-full' },\n height: 'fill',\n minWidth: 'surface.overlayMin',\n maxWidth: 'surface.overlayMax',\n roundedRight: 'overlay',\n },\n '&[data-swipe-direction=\"right\"]': {\n _starting: { translateX: 'full' },\n _closed: { translateX: 'full' },\n height: 'fill',\n minWidth: 'surface.overlayMin',\n maxWidth: 'surface.overlayMax',\n roundedLeft: 'overlay',\n },\n _focusVisible: {\n outlineStyle: 'solid',\n outlineWidth: 'focus',\n outlineOffset: 'inset.compact',\n outlineColor: 'border.focus',\n },\n },\n title: {\n margin: 'inset.none',\n textStyle: 'subtitle',\n textWrap: 'balance',\n color: 'foreground.default',\n '[data-scope=drawer][data-part=content]:has(> [data-part=close-trigger]) > &': {\n paddingInlineEnd: 'gap.section',\n },\n },\n description: {\n margin: 'inset.none',\n textStyle: 'body',\n color: 'foreground.muted',\n },\n trigger: {},\n backdrop: {\n layerStyle: 'scrim',\n zIndex: 'calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0) - 1)',\n transitionDuration: 'expand',\n _closed: { transitionDuration: 'reveal' },\n position: 'fixed',\n insetBlock: 'inset.none',\n insetInline: 'inset.none',\n bg: 'background.inverse',\n },\n grabber: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n minWidth: 'target.minimum',\n minHeight: 'target.minimum',\n padding: 'inset.compact',\n cursor: 'grab',\n touchAction: 'none',\n },\n grabberIndicator: {\n paddingBlockStart: 'inset.compact',\n width: 'control.lg',\n rounded: 'pill',\n bg: 'border.strong',\n pointerEvents: 'none',\n },\n // Dialog와 같습니다. content 바로 안의 close trigger(아이콘)만 흐름에서 빼 top-end에 고정합니다;\n // 제목은 그 자리만큼 paddingInlineEnd로 비워 둡니다. footer의 close trigger(`asChild`)는 직계\n // 자식이 아니라 흐름에 남습니다.\n closeTrigger: {\n '[data-scope=drawer][data-part=content] > &': { position: 'absolute' },\n },\n swipeArea: {\n position: 'absolute',\n touchAction: 'none',\n },\n },\n variants: {\n size: {\n xs: {\n closeTrigger: { insetBlockStart: 'inset.control', insetInlineEnd: 'inset.control' },\n content: { padding: 'inset.overlay', gap: 'gap.inline' },\n title: { textStyle: 'label' },\n description: { textStyle: 'detail' },\n },\n sm: {\n closeTrigger: { insetBlockStart: 'inset.overlay', insetInlineEnd: 'inset.overlay' },\n content: { padding: 'inset.surface', gap: 'gap.related' },\n title: { textStyle: 'label' },\n description: { textStyle: 'detail' },\n },\n md: {\n closeTrigger: { insetBlockStart: 'inset.surface', insetInlineEnd: 'inset.surface' },\n content: { padding: 'rhythm.normal', gap: 'rhythm.tight' },\n title: { textStyle: 'subtitle' },\n },\n lg: {\n closeTrigger: { insetBlockStart: 'rhythm.normal', insetInlineEnd: 'rhythm.normal' },\n content: { padding: 'gap.section', gap: 'gap.distinct' },\n title: { textStyle: 'subtitle' },\n },\n xl: {\n closeTrigger: { insetBlockStart: 'rhythm.normal', insetInlineEnd: 'rhythm.normal' },\n content: { padding: 'gap.section', gap: 'gap.distinct' },\n title: { textStyle: 'title' },\n },\n },\n },\n defaultVariants: { size: 'md' },\n})\n"],"mappings":";;AAEA,MAAa,eAAe,IAAI;CAC9B,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,MAAM;EACJ,YAAY;GACV,UAAU;GACV,QAAQ;GACR,YAAY;GACZ,aAAa;GACb,SAAS;GACT,oCAAkC,EAAE,YAAY,WAAW;GAC3D,kCAAgC,EAAE,YAAY,aAAa;GAC3D,oCAAkC,EAAE,gBAAgB,aAAa;GACjE,qCAAmC,EAAE,gBAAgB,WAAW;EAClE;EACA,SAAS;GACP,YAAY;GACZ,QAAQ;GACR,8BAA8B;GAC9B,oBAAoB;GACpB,oBAAoB;GACpB,0BAA0B;GAC1B,WAAW;GACX,WAAW,EAAE,SAAS,EAAE;GACxB,SAAS;IACP,SAAS;IACT,oBAAoB;IACpB,0BAA0B;GAC5B;GACA,UAAU;GACV,SAAS;GACT,eAAe;GACf,KAAK;GACL,SAAS;GACT,aAAa;GACb,aAAa;GACb,aAAa;GACb,IAAI;GACJ,OAAO;GACP,WAAW;GACX,WAAW;GACX,oCAAkC;IAChC,WAAW,EAAE,YAAY,OAAO;IAChC,SAAS,EAAE,YAAY,OAAO;IAC9B,OAAO;IACP,WAAW;IACX,YAAY;GACd;GACA,kCAAgC;IAC9B,WAAW,EAAE,YAAY,QAAQ;IACjC,SAAS,EAAE,YAAY,QAAQ;IAC/B,OAAO;IACP,WAAW;IACX,eAAe;GACjB;GACA,oCAAkC;IAChC,WAAW,EAAE,YAAY,QAAQ;IACjC,SAAS,EAAE,YAAY,QAAQ;IAC/B,QAAQ;IACR,UAAU;IACV,UAAU;IACV,cAAc;GAChB;GACA,qCAAmC;IACjC,WAAW,EAAE,YAAY,OAAO;IAChC,SAAS,EAAE,YAAY,OAAO;IAC9B,QAAQ;IACR,UAAU;IACV,UAAU;IACV,aAAa;GACf;GACA,eAAe;IACb,cAAc;IACd,cAAc;IACd,eAAe;IACf,cAAc;GAChB;EACF;EACA,OAAO;GACL,QAAQ;GACR,WAAW;GACX,UAAU;GACV,OAAO;GACP,+EAA+E,EAC7E,kBAAkB,cACpB;EACF;EACA,aAAa;GACX,QAAQ;GACR,WAAW;GACX,OAAO;EACT;EACA,SAAS,CAAC;EACV,UAAU;GACR,YAAY;GACZ,QAAQ;GACR,oBAAoB;GACpB,SAAS,EAAE,oBAAoB,SAAS;GACxC,UAAU;GACV,YAAY;GACZ,aAAa;GACb,IAAI;EACN;EACA,SAAS;GACP,SAAS;GACT,YAAY;GACZ,gBAAgB;GAChB,UAAU;GACV,WAAW;GACX,SAAS;GACT,QAAQ;GACR,aAAa;EACf;EACA,kBAAkB;GAChB,mBAAmB;GACnB,OAAO;GACP,SAAS;GACT,IAAI;GACJ,eAAe;EACjB;EAIA,cAAc,EACZ,8CAA8C,EAAE,UAAU,WAAW,EACvE;EACA,WAAW;GACT,UAAU;GACV,aAAa;EACf;CACF;CACA,UAAU,EACR,MAAM;EACJ,IAAI;GACF,cAAc;IAAE,iBAAiB;IAAiB,gBAAgB;GAAgB;GAClF,SAAS;IAAE,SAAS;IAAiB,KAAK;GAAa;GACvD,OAAO,EAAE,WAAW,QAAQ;GAC5B,aAAa,EAAE,WAAW,SAAS;EACrC;EACA,IAAI;GACF,cAAc;IAAE,iBAAiB;IAAiB,gBAAgB;GAAgB;GAClF,SAAS;IAAE,SAAS;IAAiB,KAAK;GAAc;GACxD,OAAO,EAAE,WAAW,QAAQ;GAC5B,aAAa,EAAE,WAAW,SAAS;EACrC;EACA,IAAI;GACF,cAAc;IAAE,iBAAiB;IAAiB,gBAAgB;GAAgB;GAClF,SAAS;IAAE,SAAS;IAAiB,KAAK;GAAe;GACzD,OAAO,EAAE,WAAW,WAAW;EACjC;EACA,IAAI;GACF,cAAc;IAAE,iBAAiB;IAAiB,gBAAgB;GAAgB;GAClF,SAAS;IAAE,SAAS;IAAe,KAAK;GAAe;GACvD,OAAO,EAAE,WAAW,WAAW;EACjC;EACA,IAAI;GACF,cAAc;IAAE,iBAAiB;IAAiB,gBAAgB;GAAgB;GAClF,SAAS;IAAE,SAAS;IAAe,KAAK;GAAe;GACvD,OAAO,EAAE,WAAW,QAAQ;EAC9B;CACF,EACF;CACA,iBAAiB,EAAE,MAAM,KAAK;AAChC,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { TranslationOverrides } from "../../provider/translations.mjs";
|
|
2
|
+
import { SynapseComponent } from "../../system/types.mjs";
|
|
3
|
+
import { OpenChangeDetails, ValueChangeDetails } from "../details.mjs";
|
|
4
|
+
import { Size } from "../../shared/size-scale.mjs";
|
|
5
|
+
//#region src/components/editable/editable.d.ts
|
|
6
|
+
export type EditableActivationMode = 'focus' | 'dblclick' | 'click' | 'none';
|
|
7
|
+
export type EditableSubmitMode = 'blur' | 'enter' | 'both' | 'none';
|
|
8
|
+
export type EditablePlaceholder = string | {
|
|
9
|
+
readonly edit: string;
|
|
10
|
+
readonly preview: string;
|
|
11
|
+
};
|
|
12
|
+
export interface EditableRootProps {
|
|
13
|
+
/** 제어되는 값. */
|
|
14
|
+
value?: string;
|
|
15
|
+
/** 비제어 초기 값. `value`가 주어지면 무시됩니다. */
|
|
16
|
+
defaultValue?: string;
|
|
17
|
+
/** 편집 중 키를 누를 때마다 알림을 받습니다. */
|
|
18
|
+
onValueChange?: (details: ValueChangeDetails<string>) => void;
|
|
19
|
+
/** 편집이 확정될 때 알림을 받습니다 — 저장할 때 쓸 콜백입니다. */
|
|
20
|
+
onValueCommit?: (details: ValueChangeDetails<string>) => void;
|
|
21
|
+
/** 편집이 취소되고 이전 값이 복원될 때 알림을 받습니다. */
|
|
22
|
+
onValueRevert?: (details: ValueChangeDetails<string>) => void;
|
|
23
|
+
/** 제어되는 편집 모드. machine의 `edit`을 다른 컴포넌트와 같은 이름인 `open`으로 받습니다. */
|
|
24
|
+
open?: boolean;
|
|
25
|
+
/** 비제어 초기 편집 모드. `open`이 주어지면 무시됩니다. */
|
|
26
|
+
defaultOpen?: boolean;
|
|
27
|
+
/** 제어 여부와 무관하게 편집 모드에 들어가거나 나올 때마다 알림을 받습니다. */
|
|
28
|
+
onOpenChange?: (details: OpenChangeDetails) => void;
|
|
29
|
+
/** 무엇이 편집을 시작시키는지. 기본값은 `focus`입니다. */
|
|
30
|
+
activationMode?: EditableActivationMode;
|
|
31
|
+
/** 무엇이 편집을 확정하는지. 기본값은 `both`이며, 블러 또는 Enter입니다. */
|
|
32
|
+
submitMode?: EditableSubmitMode;
|
|
33
|
+
/** 입력이 포커스를 받을 때 값 전체를 선택해, 타이핑하면 값이 대체되게 합니다. */
|
|
34
|
+
selectOnFocus?: boolean;
|
|
35
|
+
/** 고정 너비를 유지하는 대신 입력이 내용에 따라 늘어나게 합니다. */
|
|
36
|
+
autoResize?: boolean;
|
|
37
|
+
/** 입력이 받아들이는 값의 최대 길이. */
|
|
38
|
+
maxLength?: number;
|
|
39
|
+
/** 값이 비었을 때 보입니다 — 두 모드에 한 문자열을 쓰거나, 모드별로 하나씩 줍니다. */
|
|
40
|
+
placeholder?: EditablePlaceholder;
|
|
41
|
+
/** 폼 필드 이름. 이것이 없으면 컨트롤은 아무것도 제출하지 않습니다. */
|
|
42
|
+
name?: string;
|
|
43
|
+
/** 폼 바깥에 렌더된 Editable을 id로 폼과 연결합니다. */
|
|
44
|
+
form?: string;
|
|
45
|
+
/** 비활성화된 Editable은 제출되지 않고 편집할 수도 없습니다. */
|
|
46
|
+
disabled?: boolean;
|
|
47
|
+
/** 읽기 전용 Editable은 값을 제출하지만 편집할 수는 없습니다. */
|
|
48
|
+
readOnly?: boolean;
|
|
49
|
+
/** 보조 기술에 `aria-invalid`로 알려집니다. */
|
|
50
|
+
invalid?: boolean;
|
|
51
|
+
/** 제약 검증: 폼이 제출되려면 필드에 값이 있어야 합니다. */
|
|
52
|
+
required?: boolean;
|
|
53
|
+
/** 이 Editable에만 적용되는 접근성 문자열이며, provider의 것보다 우선합니다. */
|
|
54
|
+
translations?: TranslationOverrides;
|
|
55
|
+
/** 하나의 공유 척도에서 옵니다. 모든 컴포넌트가 그렇듯 기본값은 `md`입니다. */
|
|
56
|
+
size?: Size;
|
|
57
|
+
/** 팩토리가 생성하는 식별자를 덮어씁니다. 서버와 클라이언트에서 동일합니다. */
|
|
58
|
+
id?: string;
|
|
59
|
+
}
|
|
60
|
+
export declare const Editable: SynapseComponent<"area" | "cancelTrigger" | "control" | "editTrigger" | "input" | "label" | "preview" | "root" | "submitTrigger", "root", EditableRootProps, never>;
|
|
61
|
+
//#endregion
|
|
62
|
+
//# sourceMappingURL=editable.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editable.d.mts","names":[],"sources":["../../../src/components/editable/editable.tsx"],"mappings":";;;;;YAcY;YAEA;YAEA;WAA0C;WAAuB;;iBAE5D;;EAEf;;EAEA;;EAEA,iBAAiB,SAAS;;EAE1B,iBAAiB,SAAS;;EAE1B,iBAAiB,SAAS;;EAE1B;;EAEA;;EAEA,gBAAgB,SAAS;;EAEzB,iBAAiB;;EAEjB,aAAa;;EAEb;;EAEA;;EAEA;;EAEA,cAAc;;EAEd;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,eAAe;;EAEf,OAAO;;EAEP;;qBAaW,UAAQ,0IAAA"}
|