@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 @@
|
|
|
1
|
+
{"version":3,"file":"floating-panel.recipe.mjs","names":[],"sources":["../../../src/components/floating-panel/floating-panel.recipe.ts"],"sourcesContent":["import { sva } from '#styled-system/css/index.js'\n\nexport const floatingPanelRecipe = sva({\n slots: [\n 'trigger',\n 'positioner',\n 'content',\n 'header',\n 'body',\n 'title',\n 'resizeTrigger',\n 'dragTrigger',\n 'stageTrigger',\n 'closeTrigger',\n 'control',\n ],\n base: {\n trigger: {},\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 overflow: 'hidden',\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 _focusVisible: {\n outlineStyle: 'solid',\n outlineWidth: 'focus',\n outlineOffset: 'inset.compact',\n outlineColor: 'border.focus',\n },\n },\n header: {\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'space-between',\n gap: 'gap.related',\n paddingInlineStart: 'inset.surface',\n paddingInlineEnd: 'inset.control',\n paddingBlock: 'inset.compact',\n borderBlockEndWidth: 'hairline',\n borderStyle: 'solid',\n borderColor: 'border.muted',\n color: 'foreground.default',\n },\n body: {\n flex: '1',\n overflow: 'auto',\n padding: 'inset.surface',\n color: 'foreground.muted',\n },\n title: {\n margin: 'inset.none',\n textStyle: 'label',\n color: 'foreground.default',\n overflowWrap: 'anywhere',\n },\n resizeTrigger: {\n position: 'absolute',\n minWidth: 'target.minimum',\n minHeight: 'target.minimum',\n touchAction: 'none',\n '&:is([data-axis=\"n\"], [data-axis=\"s\"])': { cursor: 'ns-resize' },\n '&:is([data-axis=\"e\"], [data-axis=\"w\"])': { cursor: 'ew-resize' },\n '&:is([data-axis=\"se\"], [data-axis=\"nw\"])': { cursor: 'nwse-resize' },\n '&:is([data-axis=\"ne\"], [data-axis=\"sw\"])': { cursor: 'nesw-resize' },\n },\n dragTrigger: {\n flexShrink: 0,\n minHeight: 'target.minimum',\n display: 'flex',\n flexDirection: 'column',\n justifyContent: 'center',\n cursor: 'grab',\n touchAction: 'none',\n _dragging: { cursor: 'grabbing' },\n },\n stageTrigger: {},\n closeTrigger: {},\n control: {\n display: 'flex',\n alignItems: 'center',\n gap: 'gap.inline',\n flexShrink: 0,\n },\n },\n variants: {\n size: {\n xs: {\n header: {\n paddingInlineStart: 'inset.control',\n paddingInlineEnd: 'inset.compact',\n paddingBlock: 'inset.none',\n },\n body: { padding: 'inset.control', textStyle: 'caption' },\n title: { textStyle: 'caption' },\n },\n sm: {\n header: {\n paddingInlineStart: 'inset.overlay',\n paddingInlineEnd: 'inset.compact',\n paddingBlock: 'inset.none',\n },\n body: { padding: 'inset.overlay', textStyle: 'detail' },\n title: { textStyle: 'detail' },\n },\n md: {\n header: { paddingBlock: 'inset.compact' },\n body: { padding: 'inset.surface', textStyle: 'body' },\n title: { textStyle: 'label' },\n },\n lg: {\n header: { paddingInlineStart: 'rhythm.normal', paddingBlock: 'inset.control' },\n body: { padding: 'rhythm.normal', textStyle: 'body' },\n title: { textStyle: 'subtitle' },\n },\n xl: {\n header: {\n paddingInlineStart: 'rhythm.normal',\n paddingInlineEnd: 'inset.overlay',\n paddingBlock: 'inset.overlay',\n },\n body: { padding: 'rhythm.normal', textStyle: 'subtitle' },\n title: { textStyle: 'title' },\n },\n },\n },\n defaultVariants: { size: 'md' },\n})\n"],"mappings":";;AAEA,MAAa,sBAAsB,IAAI;CACrC,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,MAAM;EACJ,SAAS,CAAC;EACV,YAAY,EACV,QAAQ,gEACV;EACA,SAAS;GACP,YAAY;GACZ,QAAQ;GACR,SAAS;GACT,eAAe;GACf,UAAU;GACV,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,QAAQ;GACN,SAAS;GACT,YAAY;GACZ,gBAAgB;GAChB,KAAK;GACL,oBAAoB;GACpB,kBAAkB;GAClB,cAAc;GACd,qBAAqB;GACrB,aAAa;GACb,aAAa;GACb,OAAO;EACT;EACA,MAAM;GACJ,MAAM;GACN,UAAU;GACV,SAAS;GACT,OAAO;EACT;EACA,OAAO;GACL,QAAQ;GACR,WAAW;GACX,OAAO;GACP,cAAc;EAChB;EACA,eAAe;GACb,UAAU;GACV,UAAU;GACV,WAAW;GACX,aAAa;GACb,8CAA0C,EAAE,QAAQ,YAAY;GAChE,8CAA0C,EAAE,QAAQ,YAAY;GAChE,gDAA4C,EAAE,QAAQ,cAAc;GACpE,gDAA4C,EAAE,QAAQ,cAAc;EACtE;EACA,aAAa;GACX,YAAY;GACZ,WAAW;GACX,SAAS;GACT,eAAe;GACf,gBAAgB;GAChB,QAAQ;GACR,aAAa;GACb,WAAW,EAAE,QAAQ,WAAW;EAClC;EACA,cAAc,CAAC;EACf,cAAc,CAAC;EACf,SAAS;GACP,SAAS;GACT,YAAY;GACZ,KAAK;GACL,YAAY;EACd;CACF;CACA,UAAU,EACR,MAAM;EACJ,IAAI;GACF,QAAQ;IACN,oBAAoB;IACpB,kBAAkB;IAClB,cAAc;GAChB;GACA,MAAM;IAAE,SAAS;IAAiB,WAAW;GAAU;GACvD,OAAO,EAAE,WAAW,UAAU;EAChC;EACA,IAAI;GACF,QAAQ;IACN,oBAAoB;IACpB,kBAAkB;IAClB,cAAc;GAChB;GACA,MAAM;IAAE,SAAS;IAAiB,WAAW;GAAS;GACtD,OAAO,EAAE,WAAW,SAAS;EAC/B;EACA,IAAI;GACF,QAAQ,EAAE,cAAc,gBAAgB;GACxC,MAAM;IAAE,SAAS;IAAiB,WAAW;GAAO;GACpD,OAAO,EAAE,WAAW,QAAQ;EAC9B;EACA,IAAI;GACF,QAAQ;IAAE,oBAAoB;IAAiB,cAAc;GAAgB;GAC7E,MAAM;IAAE,SAAS;IAAiB,WAAW;GAAO;GACpD,OAAO,EAAE,WAAW,WAAW;EACjC;EACA,IAAI;GACF,QAAQ;IACN,oBAAoB;IACpB,kBAAkB;IAClB,cAAc;GAChB;GACA,MAAM;IAAE,SAAS;IAAiB,WAAW;GAAW;GACxD,OAAO,EAAE,WAAW,QAAQ;EAC9B;CACF,EACF;CACA,iBAAiB,EAAE,MAAM,KAAK;AAChC,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { FloatingPanel, FloatingPanelDimensions, FloatingPanelDimensionsChangeDetails, FloatingPanelPosition, FloatingPanelPositionChangeDetails, FloatingPanelResizeAxis, FloatingPanelRootProps, FloatingPanelStage, FloatingPanelStageChangeDetails } from "./floating-panel.mjs";
|
|
2
|
+
export { FloatingPanel, type FloatingPanelDimensions, type FloatingPanelDimensionsChangeDetails, type FloatingPanelPosition, type FloatingPanelPositionChangeDetails, type FloatingPanelResizeAxis, type FloatingPanelRootProps, type FloatingPanelStage, type FloatingPanelStageChangeDetails };
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { SynapseComponent } from "../../system/types.mjs";
|
|
2
|
+
import { OpenChangeDetails } from "../details.mjs";
|
|
3
|
+
import { Size } from "../../shared/size-scale.mjs";
|
|
4
|
+
//#region src/components/hover-card/hover-card.d.ts
|
|
5
|
+
export type HoverCardPlacement = 'top' | 'top-start' | 'top-end' | 'right' | 'right-start' | 'right-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'left' | 'left-start' | 'left-end';
|
|
6
|
+
export interface HoverCardPositioning {
|
|
7
|
+
placement?: HoverCardPlacement;
|
|
8
|
+
gutter?: number;
|
|
9
|
+
flip?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export interface HoverCardTriggerValueChangeDetails {
|
|
12
|
+
readonly value: string | null;
|
|
13
|
+
}
|
|
14
|
+
export interface HoverCardRootProps {
|
|
15
|
+
/** 제어되는 열림 상태. */
|
|
16
|
+
open?: boolean;
|
|
17
|
+
/** 비제어 초기 열림 상태. `open`이 주어지면 무시됩니다. */
|
|
18
|
+
defaultOpen?: boolean;
|
|
19
|
+
/** 제어 여부와 무관하게 카드가 열리거나 닫힐 때마다 알림을 받습니다. */
|
|
20
|
+
onOpenChange?: (details: OpenChangeDetails) => void;
|
|
21
|
+
/**
|
|
22
|
+
* 여러 trigger 가운데 지금 카드를 소유한 trigger.
|
|
23
|
+
*
|
|
24
|
+
* HoverCard 하나가 링크 목록 전체를 담당할 수 있습니다: 각 `HoverCard.Trigger`가 `value`를
|
|
25
|
+
* 받고, 콘텐츠는 그중 이 값에 해당하는 trigger를 기준으로 배치됩니다. trigger가 하나뿐인
|
|
26
|
+
* 카드에는 이 prop이 전혀 필요 없습니다.
|
|
27
|
+
*/
|
|
28
|
+
triggerValue?: string | null;
|
|
29
|
+
/** 비제어 초기 소유 trigger. */
|
|
30
|
+
defaultTriggerValue?: string | null;
|
|
31
|
+
/** 소유 trigger가 바뀔 때 알림을 받습니다. */
|
|
32
|
+
onTriggerValueChange?: (details: HoverCardTriggerValueChangeDetails) => void;
|
|
33
|
+
/** 떠 있는 레이어가 놓이는 위치. */
|
|
34
|
+
positioning?: HoverCardPositioning;
|
|
35
|
+
/** 열리기까지 포인터가 trigger 위에 머물러야 하는 밀리초. 기본값은 700입니다. */
|
|
36
|
+
openDelay?: number;
|
|
37
|
+
/** 포인터가 떠난 뒤 닫히기까지의 밀리초. 기본값은 300입니다. */
|
|
38
|
+
closeDelay?: number;
|
|
39
|
+
/** 비활성화된 HoverCard는 열리지 않습니다. */
|
|
40
|
+
disabled?: boolean;
|
|
41
|
+
/** 하나의 공유 척도에서 옵니다. 모든 컴포넌트가 그렇듯 기본값은 `md`입니다. */
|
|
42
|
+
size?: Size;
|
|
43
|
+
/** 팩토리가 생성하는 식별자를 덮어씁니다. 서버와 클라이언트에서 동일합니다. */
|
|
44
|
+
id?: string;
|
|
45
|
+
}
|
|
46
|
+
export declare const HoverCard: SynapseComponent<"arrow" | "arrowTip" | "content" | "positioner" | "trigger", null, HoverCardRootProps, never>;
|
|
47
|
+
//#endregion
|
|
48
|
+
//# sourceMappingURL=hover-card.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hover-card.d.mts","names":[],"sources":["../../../src/components/hover-card/hover-card.tsx"],"mappings":";;;;YAWY;iBAcK;EACf,YAAY;EACZ;EACA;;iBAGe;WACN;;iBAGM;;EAEf;;EAEA;;EAEA,gBAAgB,SAAS;;;;;;;;EAQzB;;EAEA;;EAEA,wBAAwB,SAAS;;EAEjC,cAAc;;EAEd;;EAEA;;EAEA;;EAEA,OAAO;;EAEP;;qBAoCW,WAAS,oFAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { devWarn } from "../../system/dev-warn.mjs";
|
|
3
|
+
import { resolveSize } from "../../shared/size-scale.mjs";
|
|
4
|
+
import { defineComponent } from "../../system/create-component.mjs";
|
|
5
|
+
import { hoverCardRecipe } from "./hover-card.recipe.mjs";
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
|
+
import * as hoverCard from "@zag-js/hover-card";
|
|
8
|
+
//#region src/components/hover-card/hover-card.tsx
|
|
9
|
+
const base = defineComponent()({
|
|
10
|
+
name: "HoverCard",
|
|
11
|
+
module: hoverCard,
|
|
12
|
+
rootPart: null,
|
|
13
|
+
elements: { trigger: "a" },
|
|
14
|
+
getterProps: { trigger: ["value"] },
|
|
15
|
+
unstyledWhenAsChild: ["trigger"],
|
|
16
|
+
machineTranslations: null,
|
|
17
|
+
variantProps: ["size"],
|
|
18
|
+
slots: (props) => hoverCardRecipe({ size: resolveSize(props.size, "HoverCard") })
|
|
19
|
+
});
|
|
20
|
+
const BaseTrigger = base.Trigger;
|
|
21
|
+
function HoverCardTrigger(props) {
|
|
22
|
+
devWarn(props.asChild !== true && props["href"] === void 0, "<HoverCard.Trigger> renders an `<a>`, and an `<a>` without `href` is not focusable, so keyboard and touch users can never open the card. Give it the `href` of the page the card previews, or use `asChild` with an element that is focusable.");
|
|
23
|
+
return /* @__PURE__ */ jsx(BaseTrigger, { ...props });
|
|
24
|
+
}
|
|
25
|
+
HoverCardTrigger.displayName = BaseTrigger.displayName;
|
|
26
|
+
Object.assign(base, { Trigger: HoverCardTrigger });
|
|
27
|
+
const HoverCard = base;
|
|
28
|
+
//#endregion
|
|
29
|
+
export { HoverCard };
|
|
30
|
+
|
|
31
|
+
//# sourceMappingURL=hover-card.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hover-card.mjs","names":[],"sources":["../../../src/components/hover-card/hover-card.tsx"],"sourcesContent":["'use client'\n\nimport * as hoverCard from '@zag-js/hover-card'\nimport type { ReactNode } from 'react'\n\nimport type { OpenChangeDetails } from '#/components/details.ts'\nimport { hoverCardRecipe } from '#/components/hover-card/hover-card.recipe.ts'\nimport { resolveSize, type Size } from '#/shared/size-scale.ts'\nimport { defineComponent } from '#/system/create-component.ts'\nimport { devWarn } from '#/system/dev-warn.ts'\n\nexport type HoverCardPlacement =\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'left'\n | 'left-start'\n | 'left-end'\n\nexport interface HoverCardPositioning {\n placement?: HoverCardPlacement\n gutter?: number\n flip?: boolean\n}\n\nexport interface HoverCardTriggerValueChangeDetails {\n readonly value: string | null\n}\n\nexport interface HoverCardRootProps {\n /** 제어되는 열림 상태. */\n open?: boolean\n /** 비제어 초기 열림 상태. `open`이 주어지면 무시됩니다. */\n defaultOpen?: boolean\n /** 제어 여부와 무관하게 카드가 열리거나 닫힐 때마다 알림을 받습니다. */\n onOpenChange?: (details: OpenChangeDetails) => void\n /**\n * 여러 trigger 가운데 지금 카드를 소유한 trigger.\n *\n * HoverCard 하나가 링크 목록 전체를 담당할 수 있습니다: 각 `HoverCard.Trigger`가 `value`를\n * 받고, 콘텐츠는 그중 이 값에 해당하는 trigger를 기준으로 배치됩니다. trigger가 하나뿐인\n * 카드에는 이 prop이 전혀 필요 없습니다.\n */\n triggerValue?: string | null\n /** 비제어 초기 소유 trigger. */\n defaultTriggerValue?: string | null\n /** 소유 trigger가 바뀔 때 알림을 받습니다. */\n onTriggerValueChange?: (details: HoverCardTriggerValueChangeDetails) => void\n /** 떠 있는 레이어가 놓이는 위치. */\n positioning?: HoverCardPositioning\n /** 열리기까지 포인터가 trigger 위에 머물러야 하는 밀리초. 기본값은 700입니다. */\n openDelay?: number\n /** 포인터가 떠난 뒤 닫히기까지의 밀리초. 기본값은 300입니다. */\n closeDelay?: number\n /** 비활성화된 HoverCard는 열리지 않습니다. */\n disabled?: boolean\n /** 하나의 공유 척도에서 옵니다. 모든 컴포넌트가 그렇듯 기본값은 `md`입니다. */\n size?: Size\n /** 팩토리가 생성하는 식별자를 덮어씁니다. 서버와 클라이언트에서 동일합니다. */\n id?: string\n}\n\nconst base = defineComponent<HoverCardRootProps>()({\n name: 'HoverCard',\n module: hoverCard,\n rootPart: null,\n elements: {\n trigger: 'a',\n },\n getterProps: {\n trigger: ['value'],\n },\n // NOTE: asChild trigger는 사용처의 요소가 모양을 소유합니다. 링크 모양을 자식에 입히지 않습니다.\n unstyledWhenAsChild: ['trigger'],\n machineTranslations: null,\n variantProps: ['size'],\n slots: (props: HoverCardRootProps) =>\n hoverCardRecipe({ size: resolveSize(props.size, 'HoverCard') }),\n})\n\nconst BaseTrigger = base.Trigger\n\nfunction HoverCardTrigger(props: Parameters<typeof BaseTrigger>[0]): ReactNode {\n devWarn(\n props.asChild !== true && props['href'] === undefined,\n '<HoverCard.Trigger> renders an `<a>`, and an `<a>` without `href` is not focusable, so ' +\n 'keyboard and touch users can never open the card. Give it the `href` of the page the ' +\n 'card previews, or use `asChild` with an element that is focusable.',\n )\n return <BaseTrigger {...props} />\n}\nHoverCardTrigger.displayName = BaseTrigger.displayName\n\nObject.assign(base, { Trigger: HoverCardTrigger })\n\nexport const HoverCard = base\n"],"mappings":";;;;;;;;AAoEA,MAAM,OAAO,gBAAoC,CAAC,CAAC;CACjD,MAAM;CACN,QAAQ;CACR,UAAU;CACV,UAAU,EACR,SAAS,IACX;CACA,aAAa,EACX,SAAS,CAAC,OAAO,EACnB;CAEA,qBAAqB,CAAC,SAAS;CAC/B,qBAAqB;CACrB,cAAc,CAAC,MAAM;CACrB,QAAQ,UACN,gBAAgB,EAAE,MAAM,YAAY,MAAM,MAAM,WAAW,EAAE,CAAC;AAClE,CAAC;AAED,MAAM,cAAc,KAAK;AAEzB,SAAS,iBAAiB,OAAqD;CAC7E,QACE,MAAM,YAAY,QAAQ,MAAM,YAAY,KAAA,GAC5C,gPAGF;CACA,OAAO,oBAAC,aAAD,EAAa,GAAI,MAAQ,CAAA;AAClC;AACA,iBAAiB,cAAc,YAAY;AAE3C,OAAO,OAAO,MAAM,EAAE,SAAS,iBAAiB,CAAC;AAEjD,MAAa,YAAY"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import { sva } from "../../react/styled-system/css/sva.mjs";
|
|
2
|
+
//#region src/components/hover-card/hover-card.recipe.ts
|
|
3
|
+
const hoverCardRecipe = sva({
|
|
4
|
+
slots: [
|
|
5
|
+
"arrow",
|
|
6
|
+
"arrowTip",
|
|
7
|
+
"trigger",
|
|
8
|
+
"positioner",
|
|
9
|
+
"content"
|
|
10
|
+
],
|
|
11
|
+
base: {
|
|
12
|
+
arrow: {
|
|
13
|
+
"--arrow-size": "sizes.icon.xs",
|
|
14
|
+
"--arrow-background": "colors.surface.overlay"
|
|
15
|
+
},
|
|
16
|
+
arrowTip: {
|
|
17
|
+
boxShadow: "overlay",
|
|
18
|
+
clipPath: "polygon(-100% -100%, 200% -100%, -100% 200%)"
|
|
19
|
+
},
|
|
20
|
+
trigger: {
|
|
21
|
+
display: "inline-flex",
|
|
22
|
+
alignItems: "center",
|
|
23
|
+
gap: "gap.inline",
|
|
24
|
+
minHeight: "target.minimum",
|
|
25
|
+
rounded: "control",
|
|
26
|
+
color: "primary.onSurface",
|
|
27
|
+
textDecoration: "underline",
|
|
28
|
+
transitionProperty: "colors",
|
|
29
|
+
transitionDuration: "interaction",
|
|
30
|
+
transitionTimingFunction: "interaction",
|
|
31
|
+
outlineColor: "border.focus",
|
|
32
|
+
cursor: "pointer",
|
|
33
|
+
_hover: { color: "primary.hover" },
|
|
34
|
+
_focusVisible: {
|
|
35
|
+
outlineStyle: "solid",
|
|
36
|
+
outlineWidth: "focus",
|
|
37
|
+
outlineOffset: "inset.compact",
|
|
38
|
+
outlineColor: "border.focus"
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
positioner: { zIndex: "calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))" },
|
|
42
|
+
content: {
|
|
43
|
+
layerStyle: "reveal",
|
|
44
|
+
zIndex: "calc(var(--synapse-layer-base, 1000) + var(--layer-index, 0))",
|
|
45
|
+
display: "flex",
|
|
46
|
+
flexDirection: "column",
|
|
47
|
+
gap: "gap.related",
|
|
48
|
+
minWidth: "surface.overlayMin",
|
|
49
|
+
maxWidth: "surface.overlayMax",
|
|
50
|
+
padding: "inset.overlay",
|
|
51
|
+
rounded: "overlay",
|
|
52
|
+
borderWidth: "hairline",
|
|
53
|
+
borderStyle: "solid",
|
|
54
|
+
borderColor: "border.overlay",
|
|
55
|
+
bg: "surface.overlay",
|
|
56
|
+
color: "foreground.default",
|
|
57
|
+
boxShadow: "overlay",
|
|
58
|
+
_focusVisible: {
|
|
59
|
+
outlineStyle: "solid",
|
|
60
|
+
outlineWidth: "focus",
|
|
61
|
+
outlineOffset: "inset.compact",
|
|
62
|
+
outlineColor: "border.focus"
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
variants: { size: {
|
|
67
|
+
xs: {
|
|
68
|
+
trigger: {
|
|
69
|
+
minHeight: "control.xs",
|
|
70
|
+
textStyle: "caption"
|
|
71
|
+
},
|
|
72
|
+
content: {
|
|
73
|
+
padding: "inset.compact",
|
|
74
|
+
gap: "gap.inline",
|
|
75
|
+
textStyle: "caption"
|
|
76
|
+
},
|
|
77
|
+
arrow: { "--arrow-size": "sizes.icon.xs" }
|
|
78
|
+
},
|
|
79
|
+
sm: {
|
|
80
|
+
trigger: {
|
|
81
|
+
minHeight: "control.sm",
|
|
82
|
+
textStyle: "detail"
|
|
83
|
+
},
|
|
84
|
+
content: {
|
|
85
|
+
padding: "inset.control",
|
|
86
|
+
gap: "gap.inline",
|
|
87
|
+
textStyle: "detail"
|
|
88
|
+
},
|
|
89
|
+
arrow: { "--arrow-size": "sizes.icon.xs" }
|
|
90
|
+
},
|
|
91
|
+
md: {
|
|
92
|
+
trigger: {
|
|
93
|
+
minHeight: "control.md",
|
|
94
|
+
textStyle: "body"
|
|
95
|
+
},
|
|
96
|
+
content: {
|
|
97
|
+
padding: "inset.overlay",
|
|
98
|
+
gap: "gap.related",
|
|
99
|
+
textStyle: "body"
|
|
100
|
+
},
|
|
101
|
+
arrow: { "--arrow-size": "sizes.icon.xs" }
|
|
102
|
+
},
|
|
103
|
+
lg: {
|
|
104
|
+
trigger: {
|
|
105
|
+
minHeight: "control.lg",
|
|
106
|
+
textStyle: "body"
|
|
107
|
+
},
|
|
108
|
+
content: {
|
|
109
|
+
padding: "inset.surface",
|
|
110
|
+
gap: "rhythm.tight",
|
|
111
|
+
textStyle: "body"
|
|
112
|
+
},
|
|
113
|
+
arrow: { "--arrow-size": "sizes.icon.sm" }
|
|
114
|
+
},
|
|
115
|
+
xl: {
|
|
116
|
+
trigger: {
|
|
117
|
+
minHeight: "control.xl",
|
|
118
|
+
textStyle: "subtitle"
|
|
119
|
+
},
|
|
120
|
+
content: {
|
|
121
|
+
padding: "rhythm.normal",
|
|
122
|
+
gap: "gap.distinct",
|
|
123
|
+
textStyle: "subtitle"
|
|
124
|
+
},
|
|
125
|
+
arrow: { "--arrow-size": "sizes.icon.sm" }
|
|
126
|
+
}
|
|
127
|
+
} },
|
|
128
|
+
defaultVariants: { size: "md" }
|
|
129
|
+
});
|
|
130
|
+
//#endregion
|
|
131
|
+
export { hoverCardRecipe };
|
|
132
|
+
|
|
133
|
+
//# sourceMappingURL=hover-card.recipe.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hover-card.recipe.mjs","names":[],"sources":["../../../src/components/hover-card/hover-card.recipe.ts"],"sourcesContent":["import { sva } from '#styled-system/css/index.js'\n\nexport const hoverCardRecipe = sva({\n slots: ['arrow', 'arrowTip', 'trigger', 'positioner', 'content'],\n base: {\n arrow: {\n '--arrow-size': 'sizes.icon.xs',\n '--arrow-background': 'colors.surface.overlay',\n },\n arrowTip: {\n boxShadow: 'overlay',\n clipPath: 'polygon(-100% -100%, 200% -100%, -100% 200%)',\n },\n trigger: {\n display: 'inline-flex',\n alignItems: 'center',\n gap: 'gap.inline',\n minHeight: 'target.minimum',\n rounded: 'control',\n color: 'primary.onSurface',\n textDecoration: 'underline',\n transitionProperty: 'colors',\n transitionDuration: 'interaction',\n transitionTimingFunction: 'interaction',\n outlineColor: 'border.focus',\n cursor: 'pointer',\n _hover: { color: 'primary.hover' },\n _focusVisible: {\n outlineStyle: 'solid',\n outlineWidth: 'focus',\n outlineOffset: 'inset.compact',\n outlineColor: 'border.focus',\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 gap: 'gap.related',\n minWidth: 'surface.overlayMin',\n maxWidth: 'surface.overlayMax',\n padding: 'inset.overlay',\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 _focusVisible: {\n outlineStyle: 'solid',\n outlineWidth: 'focus',\n outlineOffset: 'inset.compact',\n outlineColor: 'border.focus',\n },\n },\n },\n variants: {\n size: {\n xs: {\n trigger: { minHeight: 'control.xs', textStyle: 'caption' },\n content: { padding: 'inset.compact', gap: 'gap.inline', textStyle: 'caption' },\n arrow: { '--arrow-size': 'sizes.icon.xs' },\n },\n sm: {\n trigger: { minHeight: 'control.sm', textStyle: 'detail' },\n content: { padding: 'inset.control', gap: 'gap.inline', textStyle: 'detail' },\n arrow: { '--arrow-size': 'sizes.icon.xs' },\n },\n md: {\n trigger: { minHeight: 'control.md', textStyle: 'body' },\n content: { padding: 'inset.overlay', gap: 'gap.related', textStyle: 'body' },\n arrow: { '--arrow-size': 'sizes.icon.xs' },\n },\n lg: {\n trigger: { minHeight: 'control.lg', textStyle: 'body' },\n content: { padding: 'inset.surface', gap: 'rhythm.tight', textStyle: 'body' },\n arrow: { '--arrow-size': 'sizes.icon.sm' },\n },\n xl: {\n trigger: { minHeight: 'control.xl', textStyle: 'subtitle' },\n content: { padding: 'rhythm.normal', gap: 'gap.distinct', textStyle: 'subtitle' },\n arrow: { '--arrow-size': 'sizes.icon.sm' },\n },\n },\n },\n defaultVariants: { size: 'md' },\n})\n"],"mappings":";;AAEA,MAAa,kBAAkB,IAAI;CACjC,OAAO;EAAC;EAAS;EAAY;EAAW;EAAc;CAAS;CAC/D,MAAM;EACJ,OAAO;GACL,gBAAgB;GAChB,sBAAsB;EACxB;EACA,UAAU;GACR,WAAW;GACX,UAAU;EACZ;EACA,SAAS;GACP,SAAS;GACT,YAAY;GACZ,KAAK;GACL,WAAW;GACX,SAAS;GACT,OAAO;GACP,gBAAgB;GAChB,oBAAoB;GACpB,oBAAoB;GACpB,0BAA0B;GAC1B,cAAc;GACd,QAAQ;GACR,QAAQ,EAAE,OAAO,gBAAgB;GACjC,eAAe;IACb,cAAc;IACd,cAAc;IACd,eAAe;IACf,cAAc;GAChB;EACF;EACA,YAAY,EACV,QAAQ,gEACV;EACA,SAAS;GACP,YAAY;GACZ,QAAQ;GACR,SAAS;GACT,eAAe;GACf,KAAK;GACL,UAAU;GACV,UAAU;GACV,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;CACF;CACA,UAAU,EACR,MAAM;EACJ,IAAI;GACF,SAAS;IAAE,WAAW;IAAc,WAAW;GAAU;GACzD,SAAS;IAAE,SAAS;IAAiB,KAAK;IAAc,WAAW;GAAU;GAC7E,OAAO,EAAE,gBAAgB,gBAAgB;EAC3C;EACA,IAAI;GACF,SAAS;IAAE,WAAW;IAAc,WAAW;GAAS;GACxD,SAAS;IAAE,SAAS;IAAiB,KAAK;IAAc,WAAW;GAAS;GAC5E,OAAO,EAAE,gBAAgB,gBAAgB;EAC3C;EACA,IAAI;GACF,SAAS;IAAE,WAAW;IAAc,WAAW;GAAO;GACtD,SAAS;IAAE,SAAS;IAAiB,KAAK;IAAe,WAAW;GAAO;GAC3E,OAAO,EAAE,gBAAgB,gBAAgB;EAC3C;EACA,IAAI;GACF,SAAS;IAAE,WAAW;IAAc,WAAW;GAAO;GACtD,SAAS;IAAE,SAAS;IAAiB,KAAK;IAAgB,WAAW;GAAO;GAC5E,OAAO,EAAE,gBAAgB,gBAAgB;EAC3C;EACA,IAAI;GACF,SAAS;IAAE,WAAW;IAAc,WAAW;GAAW;GAC1D,SAAS;IAAE,SAAS;IAAiB,KAAK;IAAgB,WAAW;GAAW;GAChF,OAAO,EAAE,gBAAgB,gBAAgB;EAC3C;CACF,EACF;CACA,iBAAiB,EAAE,MAAM,KAAK;AAChC,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { HoverCard, HoverCardPlacement, HoverCardPositioning, HoverCardRootProps, HoverCardTriggerValueChangeDetails } from "./hover-card.mjs";
|
|
2
|
+
export { HoverCard, type HoverCardPlacement, type HoverCardPositioning, type HoverCardRootProps, type HoverCardTriggerValueChangeDetails };
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { TranslationOverrides } from "../../provider/translations.mjs";
|
|
2
|
+
import { SynapseComponent } from "../../system/types.mjs";
|
|
3
|
+
import { Size } from "../../shared/size-scale.mjs";
|
|
4
|
+
import { Controller } from "../../shared/controller.mjs";
|
|
5
|
+
//#region src/components/image-cropper/image-cropper.d.ts
|
|
6
|
+
export interface ImageCropperRect {
|
|
7
|
+
readonly x: number;
|
|
8
|
+
readonly y: number;
|
|
9
|
+
readonly width: number;
|
|
10
|
+
readonly height: number;
|
|
11
|
+
}
|
|
12
|
+
export interface ImageCropperCropChangeDetails {
|
|
13
|
+
readonly crop: ImageCropperRect;
|
|
14
|
+
}
|
|
15
|
+
export interface ImageCropperZoomChangeDetails {
|
|
16
|
+
readonly zoom: number;
|
|
17
|
+
}
|
|
18
|
+
export interface ImageCropperRotationChangeDetails {
|
|
19
|
+
readonly rotation: number;
|
|
20
|
+
}
|
|
21
|
+
export interface ImageCropperFlipChangeDetails {
|
|
22
|
+
readonly flip: {
|
|
23
|
+
readonly horizontal: boolean;
|
|
24
|
+
readonly vertical: boolean;
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export type ImageCropperShape = 'rect' | 'circle';
|
|
28
|
+
export type ImageCropperHandlePosition = 'nw' | 'n' | 'ne' | 'e' | 'se' | 's' | 'sw' | 'w';
|
|
29
|
+
export declare const IMAGE_CROPPER_HANDLES: readonly ImageCropperHandlePosition[];
|
|
30
|
+
export interface ImageCropperRootProps {
|
|
31
|
+
/** 시작할 잘라내기 사각형. 기본값은 종횡비가 허용하는 가장 큰 사각형입니다. */
|
|
32
|
+
initialCrop?: ImageCropperRect;
|
|
33
|
+
/** 잘라내기 영역이 움직이거나 크기가 바뀔 때 알림을 받습니다. */
|
|
34
|
+
onCropChange?: (details: ImageCropperCropChangeDetails) => void;
|
|
35
|
+
/** 잘라내기 영역의 비율을 고정합니다 — 정사각형은 1, 영상은 16 / 9입니다. */
|
|
36
|
+
aspectRatio?: number;
|
|
37
|
+
/** 잘라내기 영역의 윤곽. 기본값은 `rect`입니다. */
|
|
38
|
+
cropShape?: ImageCropperShape;
|
|
39
|
+
/** 잘라내기 영역을 고정하고, 그 아래의 이미지만 옮기고 확대·축소할 수 있게 둡니다. */
|
|
40
|
+
fixedCropArea?: boolean;
|
|
41
|
+
/** 잘라내기 영역의 최소 크기이며, 단위는 픽셀입니다. */
|
|
42
|
+
minWidth?: number;
|
|
43
|
+
/** 잘라내기 영역의 최소 크기이며, 단위는 픽셀입니다. */
|
|
44
|
+
minHeight?: number;
|
|
45
|
+
/** 잘라내기 영역의 최대 크기이며, 단위는 픽셀입니다. */
|
|
46
|
+
maxWidth?: number;
|
|
47
|
+
/** 잘라내기 영역의 최대 크기이며, 단위는 픽셀입니다. */
|
|
48
|
+
maxHeight?: number;
|
|
49
|
+
/** 제어되는 확대 배율이며, 1이 이미지의 본래 크기입니다. */
|
|
50
|
+
zoom?: number;
|
|
51
|
+
/** 비제어 초기 확대 배율. `zoom`이 주어지면 무시됩니다. */
|
|
52
|
+
defaultZoom?: number;
|
|
53
|
+
/** 확대 배율이 바뀔 때 알림을 받습니다. */
|
|
54
|
+
onZoomChange?: (details: ImageCropperZoomChangeDetails) => void;
|
|
55
|
+
/** 허용되는 최소 확대 배율. */
|
|
56
|
+
minZoom?: number;
|
|
57
|
+
/** 허용되는 최대 확대 배율. */
|
|
58
|
+
maxZoom?: number;
|
|
59
|
+
/** 확대 한 단계가 움직이는 폭. */
|
|
60
|
+
zoomStep?: number;
|
|
61
|
+
/** 휠이나 핀치 제스처가 얼마나 확대·축소하는지. */
|
|
62
|
+
zoomSensitivity?: number;
|
|
63
|
+
/** 제어되는 회전이며, 단위는 도입니다. */
|
|
64
|
+
rotation?: number;
|
|
65
|
+
/** 비제어 초기 회전. */
|
|
66
|
+
defaultRotation?: number;
|
|
67
|
+
/** 회전이 바뀔 때 알림을 받습니다. */
|
|
68
|
+
onRotationChange?: (details: ImageCropperRotationChangeDetails) => void;
|
|
69
|
+
/** 제어되는 좌우/상하 반전. */
|
|
70
|
+
flip?: {
|
|
71
|
+
readonly horizontal: boolean;
|
|
72
|
+
readonly vertical: boolean;
|
|
73
|
+
};
|
|
74
|
+
/** 비제어 초기 반전. */
|
|
75
|
+
defaultFlip?: {
|
|
76
|
+
readonly horizontal: boolean;
|
|
77
|
+
readonly vertical: boolean;
|
|
78
|
+
};
|
|
79
|
+
/** 반전이 바뀔 때 알림을 받습니다. */
|
|
80
|
+
onFlipChange?: (details: ImageCropperFlipChangeDetails) => void;
|
|
81
|
+
/** 화살표 키 한 번이 잘라내기 영역을 옮기는 거리이며, 단위는 픽셀입니다. */
|
|
82
|
+
nudgeStep?: number;
|
|
83
|
+
/** Shift-화살표가 잘라내기 영역을 옮기는 거리. */
|
|
84
|
+
nudgeStepShift?: number;
|
|
85
|
+
/** Ctrl-화살표가 잘라내기 영역을 옮기는 거리. */
|
|
86
|
+
nudgeStepCtrl?: number;
|
|
87
|
+
/** 이 ImageCropper에만 적용되는 접근성 문자열이며, provider의 것보다 우선합니다. */
|
|
88
|
+
translations?: TranslationOverrides;
|
|
89
|
+
/** 하나의 공유 척도에서 옵니다. 모든 컴포넌트가 그렇듯 기본값은 `md`입니다. */
|
|
90
|
+
size?: Size;
|
|
91
|
+
/** 팩토리가 생성하는 식별자를 덮어씁니다. 서버와 클라이언트에서 동일합니다. */
|
|
92
|
+
id?: string;
|
|
93
|
+
}
|
|
94
|
+
export interface ImageCropperExportOptions {
|
|
95
|
+
type?: string;
|
|
96
|
+
quality?: number;
|
|
97
|
+
maxSize?: {
|
|
98
|
+
width: number;
|
|
99
|
+
height: number;
|
|
100
|
+
};
|
|
101
|
+
output?: 'blob' | 'dataUrl';
|
|
102
|
+
}
|
|
103
|
+
interface ImageCropperCommands {
|
|
104
|
+
getCroppedImage: (options?: ImageCropperExportOptions) => Promise<Blob | string | null>;
|
|
105
|
+
getCropData: () => ImageCropperRect;
|
|
106
|
+
reset: () => void;
|
|
107
|
+
}
|
|
108
|
+
export declare const ImageCropper: SynapseComponent<"grid" | "handle" | "image" | "root" | "selection" | "viewport", "root", ImageCropperRootProps, never>;
|
|
109
|
+
export declare const useImageCropper: () => Controller<ImageCropperCommands, keyof ImageCropperCommands>;
|
|
110
|
+
//#endregion
|
|
111
|
+
//# sourceMappingURL=image-cropper.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image-cropper.d.mts","names":[],"sources":["../../../src/components/image-cropper/image-cropper.tsx"],"mappings":";;;;;iBAUiB;WACN;WACA;WACA;WACA;;iBAGM;WACN,MAAM;;iBAGA;WACN;;iBAGM;WACN;;iBAGM;WACN;aAAiB;aAA8B;;;YAG9C;YAEA;qBAEC,gCAAgC;iBAW5B;;EAEf,cAAc;;EAEd,gBAAgB,SAAS;;EAEzB;;EAEA,YAAY;;EAEZ;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,gBAAgB,SAAS;;EAEzB;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA;;EAEA,oBAAoB,SAAS;;EAE7B;aAAkB;aAA8B;;;EAEhD;aAAyB;aAA8B;;;EAEvD,gBAAgB,SAAS;;EAEzB;;EAEA;;EAEA;;EAEA,eAAe;;EAEf,OAAO;;EAEP;;iBAGe;EACf;EACA;EACA;IAAY;IAAe;;EAC3B;;UAGQ;EACR,kBAAkB,UAAU,8BAA8B,QAAQ;EAClE,mBAAmB;EACnB;;qBA8BW,cAAY,0FAAA;qBAiDZ,uBAAe,WAAA,4BAAA"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { resolveSize } from "../../shared/size-scale.mjs";
|
|
3
|
+
import { defineComponent } from "../../system/create-component.mjs";
|
|
4
|
+
import { createControllerHook, defineController } from "../../shared/controller.mjs";
|
|
5
|
+
import { imageCropperRecipe } from "./image-cropper.recipe.mjs";
|
|
6
|
+
import * as imageCropper from "@zag-js/image-cropper";
|
|
7
|
+
//#region src/components/image-cropper/image-cropper.tsx
|
|
8
|
+
const IMAGE_CROPPER_HANDLES = [
|
|
9
|
+
"nw",
|
|
10
|
+
"n",
|
|
11
|
+
"ne",
|
|
12
|
+
"e",
|
|
13
|
+
"se",
|
|
14
|
+
"s",
|
|
15
|
+
"sw",
|
|
16
|
+
"w"
|
|
17
|
+
];
|
|
18
|
+
const finite = (value, fallback) => value !== null && Number.isFinite(value) ? value : fallback;
|
|
19
|
+
const imageCropperController = defineController({
|
|
20
|
+
component: "ImageCropper",
|
|
21
|
+
root: "ImageCropper.Root",
|
|
22
|
+
hook: "useImageCropper",
|
|
23
|
+
commands: [
|
|
24
|
+
"getCroppedImage",
|
|
25
|
+
"getCropData",
|
|
26
|
+
"reset"
|
|
27
|
+
]
|
|
28
|
+
});
|
|
29
|
+
const ImageCropper = defineComponent()({
|
|
30
|
+
name: "ImageCropper",
|
|
31
|
+
module: imageCropper,
|
|
32
|
+
rootPart: "root",
|
|
33
|
+
elements: { image: "img" },
|
|
34
|
+
getterProps: {
|
|
35
|
+
handle: ["position"],
|
|
36
|
+
grid: ["axis"]
|
|
37
|
+
},
|
|
38
|
+
machineTranslations: {
|
|
39
|
+
rootLabel: "imageCropper.root.label",
|
|
40
|
+
rootRoleDescription: "imageCropper.root.roleDescription",
|
|
41
|
+
previewLoading: "imageCropper.image.loading",
|
|
42
|
+
selectionRoleDescription: "imageCropper.selection.roleDescription",
|
|
43
|
+
selectionInstructions: "imageCropper.selection.instructions",
|
|
44
|
+
previewDescription: (t) => (details) => t("imageCropper.root.description", {
|
|
45
|
+
zoom: finite(details.zoom, 1).toFixed(2),
|
|
46
|
+
rotation: Math.round(finite(details.rotation, 0)),
|
|
47
|
+
x: Math.round(details.crop.x),
|
|
48
|
+
y: Math.round(details.crop.y),
|
|
49
|
+
width: Math.round(details.crop.width),
|
|
50
|
+
height: Math.round(details.crop.height)
|
|
51
|
+
}),
|
|
52
|
+
selectionLabel: (t) => (details) => t(details.shape === "circle" ? "imageCropper.selection.circleLabel" : "imageCropper.selection.rectangleLabel"),
|
|
53
|
+
selectionValueText: (t) => (details) => details.shape === "circle" ? t("imageCropper.selection.circleValue", {
|
|
54
|
+
x: details.x,
|
|
55
|
+
y: details.y,
|
|
56
|
+
diameter: details.width
|
|
57
|
+
}) : t("imageCropper.selection.rectangleValue", {
|
|
58
|
+
x: details.x,
|
|
59
|
+
y: details.y,
|
|
60
|
+
width: details.width,
|
|
61
|
+
height: details.height
|
|
62
|
+
})
|
|
63
|
+
},
|
|
64
|
+
variantProps: ["size"],
|
|
65
|
+
slots: (props) => imageCropperRecipe({ size: resolveSize(props.size, "ImageCropper") })
|
|
66
|
+
});
|
|
67
|
+
const useImageCropper = createControllerHook(ImageCropper, imageCropperController);
|
|
68
|
+
//#endregion
|
|
69
|
+
export { IMAGE_CROPPER_HANDLES, ImageCropper, useImageCropper };
|
|
70
|
+
|
|
71
|
+
//# sourceMappingURL=image-cropper.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image-cropper.mjs","names":[],"sources":["../../../src/components/image-cropper/image-cropper.tsx"],"sourcesContent":["'use client'\n\nimport * as imageCropper from '@zag-js/image-cropper'\n\nimport { imageCropperRecipe } from '#/components/image-cropper/image-cropper.recipe.ts'\nimport type { TranslationOverrides, Translator } from '#/provider/translations.ts'\nimport { createControllerHook, defineController } from '#/shared/controller.ts'\nimport { resolveSize, type Size } from '#/shared/size-scale.ts'\nimport { defineComponent } from '#/system/create-component.ts'\n\nexport interface ImageCropperRect {\n readonly x: number\n readonly y: number\n readonly width: number\n readonly height: number\n}\n\nexport interface ImageCropperCropChangeDetails {\n readonly crop: ImageCropperRect\n}\n\nexport interface ImageCropperZoomChangeDetails {\n readonly zoom: number\n}\n\nexport interface ImageCropperRotationChangeDetails {\n readonly rotation: number\n}\n\nexport interface ImageCropperFlipChangeDetails {\n readonly flip: { readonly horizontal: boolean; readonly vertical: boolean }\n}\n\nexport type ImageCropperShape = 'rect' | 'circle'\n\nexport type ImageCropperHandlePosition = 'nw' | 'n' | 'ne' | 'e' | 'se' | 's' | 'sw' | 'w'\n\nexport const IMAGE_CROPPER_HANDLES: readonly ImageCropperHandlePosition[] = [\n 'nw',\n 'n',\n 'ne',\n 'e',\n 'se',\n 's',\n 'sw',\n 'w',\n]\n\nexport interface ImageCropperRootProps {\n /** 시작할 잘라내기 사각형. 기본값은 종횡비가 허용하는 가장 큰 사각형입니다. */\n initialCrop?: ImageCropperRect\n /** 잘라내기 영역이 움직이거나 크기가 바뀔 때 알림을 받습니다. */\n onCropChange?: (details: ImageCropperCropChangeDetails) => void\n /** 잘라내기 영역의 비율을 고정합니다 — 정사각형은 1, 영상은 16 / 9입니다. */\n aspectRatio?: number\n /** 잘라내기 영역의 윤곽. 기본값은 `rect`입니다. */\n cropShape?: ImageCropperShape\n /** 잘라내기 영역을 고정하고, 그 아래의 이미지만 옮기고 확대·축소할 수 있게 둡니다. */\n fixedCropArea?: boolean\n /** 잘라내기 영역의 최소 크기이며, 단위는 픽셀입니다. */\n minWidth?: number\n /** 잘라내기 영역의 최소 크기이며, 단위는 픽셀입니다. */\n minHeight?: number\n /** 잘라내기 영역의 최대 크기이며, 단위는 픽셀입니다. */\n maxWidth?: number\n /** 잘라내기 영역의 최대 크기이며, 단위는 픽셀입니다. */\n maxHeight?: number\n /** 제어되는 확대 배율이며, 1이 이미지의 본래 크기입니다. */\n zoom?: number\n /** 비제어 초기 확대 배율. `zoom`이 주어지면 무시됩니다. */\n defaultZoom?: number\n /** 확대 배율이 바뀔 때 알림을 받습니다. */\n onZoomChange?: (details: ImageCropperZoomChangeDetails) => void\n /** 허용되는 최소 확대 배율. */\n minZoom?: number\n /** 허용되는 최대 확대 배율. */\n maxZoom?: number\n /** 확대 한 단계가 움직이는 폭. */\n zoomStep?: number\n /** 휠이나 핀치 제스처가 얼마나 확대·축소하는지. */\n zoomSensitivity?: number\n /** 제어되는 회전이며, 단위는 도입니다. */\n rotation?: number\n /** 비제어 초기 회전. */\n defaultRotation?: number\n /** 회전이 바뀔 때 알림을 받습니다. */\n onRotationChange?: (details: ImageCropperRotationChangeDetails) => void\n /** 제어되는 좌우/상하 반전. */\n flip?: { readonly horizontal: boolean; readonly vertical: boolean }\n /** 비제어 초기 반전. */\n defaultFlip?: { readonly horizontal: boolean; readonly vertical: boolean }\n /** 반전이 바뀔 때 알림을 받습니다. */\n onFlipChange?: (details: ImageCropperFlipChangeDetails) => void\n /** 화살표 키 한 번이 잘라내기 영역을 옮기는 거리이며, 단위는 픽셀입니다. */\n nudgeStep?: number\n /** Shift-화살표가 잘라내기 영역을 옮기는 거리. */\n nudgeStepShift?: number\n /** Ctrl-화살표가 잘라내기 영역을 옮기는 거리. */\n nudgeStepCtrl?: number\n /** 이 ImageCropper에만 적용되는 접근성 문자열이며, provider의 것보다 우선합니다. */\n translations?: TranslationOverrides\n /** 하나의 공유 척도에서 옵니다. 모든 컴포넌트가 그렇듯 기본값은 `md`입니다. */\n size?: Size\n /** 팩토리가 생성하는 식별자를 덮어씁니다. 서버와 클라이언트에서 동일합니다. */\n id?: string\n}\n\nexport interface ImageCropperExportOptions {\n type?: string\n quality?: number\n maxSize?: { width: number; height: number }\n output?: 'blob' | 'dataUrl'\n}\n\ninterface ImageCropperCommands {\n getCroppedImage: (options?: ImageCropperExportOptions) => Promise<Blob | string | null>\n getCropData: () => ImageCropperRect\n reset: () => void\n}\n\ninterface CropperRectDetails {\n readonly x: number\n readonly y: number\n readonly width: number\n readonly height: number\n}\n\ninterface CropperPreviewDetails {\n readonly zoom: number | null\n readonly rotation: number | null\n readonly crop: CropperRectDetails\n}\n\ninterface CropperSelectionDetails extends CropperRectDetails {\n readonly shape: 'rectangle' | 'circle'\n}\n\nconst finite = (value: number | null, fallback: number): number =>\n value !== null && Number.isFinite(value) ? value : fallback\n\nconst imageCropperController = defineController<ImageCropperCommands, keyof ImageCropperCommands>({\n component: 'ImageCropper',\n root: 'ImageCropper.Root',\n hook: 'useImageCropper',\n commands: ['getCroppedImage', 'getCropData', 'reset'],\n})\n\nexport const ImageCropper = defineComponent<ImageCropperRootProps>()({\n name: 'ImageCropper',\n module: imageCropper,\n rootPart: 'root',\n elements: { image: 'img' },\n getterProps: {\n handle: ['position'],\n grid: ['axis'],\n },\n machineTranslations: {\n rootLabel: 'imageCropper.root.label',\n rootRoleDescription: 'imageCropper.root.roleDescription',\n previewLoading: 'imageCropper.image.loading',\n selectionRoleDescription: 'imageCropper.selection.roleDescription',\n selectionInstructions: 'imageCropper.selection.instructions',\n previewDescription: (t: Translator) => (details: CropperPreviewDetails) =>\n t('imageCropper.root.description', {\n zoom: finite(details.zoom, 1).toFixed(2),\n rotation: Math.round(finite(details.rotation, 0)),\n x: Math.round(details.crop.x),\n y: Math.round(details.crop.y),\n width: Math.round(details.crop.width),\n height: Math.round(details.crop.height),\n }),\n selectionLabel: (t: Translator) => (details: { readonly shape: 'rectangle' | 'circle' }) =>\n t(\n details.shape === 'circle'\n ? 'imageCropper.selection.circleLabel'\n : 'imageCropper.selection.rectangleLabel',\n ),\n selectionValueText: (t: Translator) => (details: CropperSelectionDetails) =>\n details.shape === 'circle'\n ? t('imageCropper.selection.circleValue', {\n x: details.x,\n y: details.y,\n diameter: details.width,\n })\n : t('imageCropper.selection.rectangleValue', {\n x: details.x,\n y: details.y,\n width: details.width,\n height: details.height,\n }),\n },\n variantProps: ['size'],\n slots: (props: ImageCropperRootProps) =>\n imageCropperRecipe({ size: resolveSize(props.size, 'ImageCropper') }),\n})\n\nexport const useImageCropper = createControllerHook(ImageCropper, imageCropperController)\n"],"mappings":";;;;;;;AAqCA,MAAa,wBAA+D;CAC1E;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;AA2FA,MAAM,UAAU,OAAsB,aACpC,UAAU,QAAQ,OAAO,SAAS,KAAK,IAAI,QAAQ;AAErD,MAAM,yBAAyB,iBAAmE;CAChG,WAAW;CACX,MAAM;CACN,MAAM;CACN,UAAU;EAAC;EAAmB;EAAe;CAAO;AACtD,CAAC;AAED,MAAa,eAAe,gBAAuC,CAAC,CAAC;CACnE,MAAM;CACN,QAAQ;CACR,UAAU;CACV,UAAU,EAAE,OAAO,MAAM;CACzB,aAAa;EACX,QAAQ,CAAC,UAAU;EACnB,MAAM,CAAC,MAAM;CACf;CACA,qBAAqB;EACnB,WAAW;EACX,qBAAqB;EACrB,gBAAgB;EAChB,0BAA0B;EAC1B,uBAAuB;EACvB,qBAAqB,OAAmB,YACtC,EAAE,iCAAiC;GACjC,MAAM,OAAO,QAAQ,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;GACvC,UAAU,KAAK,MAAM,OAAO,QAAQ,UAAU,CAAC,CAAC;GAChD,GAAG,KAAK,MAAM,QAAQ,KAAK,CAAC;GAC5B,GAAG,KAAK,MAAM,QAAQ,KAAK,CAAC;GAC5B,OAAO,KAAK,MAAM,QAAQ,KAAK,KAAK;GACpC,QAAQ,KAAK,MAAM,QAAQ,KAAK,MAAM;EACxC,CAAC;EACH,iBAAiB,OAAmB,YAClC,EACE,QAAQ,UAAU,WACd,uCACA,uCACN;EACF,qBAAqB,OAAmB,YACtC,QAAQ,UAAU,WACd,EAAE,sCAAsC;GACtC,GAAG,QAAQ;GACX,GAAG,QAAQ;GACX,UAAU,QAAQ;EACpB,CAAC,IACD,EAAE,yCAAyC;GACzC,GAAG,QAAQ;GACX,GAAG,QAAQ;GACX,OAAO,QAAQ;GACf,QAAQ,QAAQ;EAClB,CAAC;CACT;CACA,cAAc,CAAC,MAAM;CACrB,QAAQ,UACN,mBAAmB,EAAE,MAAM,YAAY,MAAM,MAAM,cAAc,EAAE,CAAC;AACxE,CAAC;AAED,MAAa,kBAAkB,qBAAqB,cAAc,sBAAsB"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { sva } from "../../react/styled-system/css/sva.mjs";
|
|
2
|
+
//#region src/components/image-cropper/image-cropper.recipe.ts
|
|
3
|
+
const imageCropperRecipe = sva({
|
|
4
|
+
slots: [
|
|
5
|
+
"root",
|
|
6
|
+
"viewport",
|
|
7
|
+
"image",
|
|
8
|
+
"selection",
|
|
9
|
+
"handle",
|
|
10
|
+
"grid"
|
|
11
|
+
],
|
|
12
|
+
base: {
|
|
13
|
+
root: {
|
|
14
|
+
position: "relative",
|
|
15
|
+
display: "flex",
|
|
16
|
+
flexDirection: "column",
|
|
17
|
+
minHeight: "target.minimum",
|
|
18
|
+
rounded: "surface",
|
|
19
|
+
overflow: "hidden",
|
|
20
|
+
bg: "background.inverse",
|
|
21
|
+
touchAction: "none"
|
|
22
|
+
},
|
|
23
|
+
viewport: {
|
|
24
|
+
position: "relative",
|
|
25
|
+
overflow: "hidden",
|
|
26
|
+
width: "fill"
|
|
27
|
+
},
|
|
28
|
+
image: {
|
|
29
|
+
display: "block",
|
|
30
|
+
maxWidth: "fill",
|
|
31
|
+
userSelect: "none",
|
|
32
|
+
pointerEvents: "none"
|
|
33
|
+
},
|
|
34
|
+
selection: {
|
|
35
|
+
borderWidth: "hairline",
|
|
36
|
+
borderStyle: "solid",
|
|
37
|
+
borderColor: "foreground.onEmphasis",
|
|
38
|
+
cursor: "move",
|
|
39
|
+
_focusVisible: {
|
|
40
|
+
outlineStyle: "solid",
|
|
41
|
+
outlineWidth: "focus",
|
|
42
|
+
outlineOffset: "inset.compact",
|
|
43
|
+
outlineColor: "border.focus"
|
|
44
|
+
},
|
|
45
|
+
"&[data-shape=\"circle\"]": { rounded: "pill" },
|
|
46
|
+
_disabled: { cursor: "not-allowed" }
|
|
47
|
+
},
|
|
48
|
+
handle: {
|
|
49
|
+
position: "absolute",
|
|
50
|
+
display: "flex",
|
|
51
|
+
alignItems: "center",
|
|
52
|
+
justifyContent: "center",
|
|
53
|
+
minWidth: "target.minimum",
|
|
54
|
+
minHeight: "target.minimum",
|
|
55
|
+
_before: {
|
|
56
|
+
content: "\"\"",
|
|
57
|
+
display: "block",
|
|
58
|
+
width: "icon.xs",
|
|
59
|
+
height: "icon.xs",
|
|
60
|
+
rounded: "pill",
|
|
61
|
+
bg: "foreground.onEmphasis",
|
|
62
|
+
borderWidth: "hairline",
|
|
63
|
+
borderStyle: "solid",
|
|
64
|
+
borderColor: "border.strong",
|
|
65
|
+
boxShadow: "raised"
|
|
66
|
+
},
|
|
67
|
+
_focusVisible: {
|
|
68
|
+
outlineStyle: "solid",
|
|
69
|
+
outlineWidth: "focus",
|
|
70
|
+
outlineOffset: "inset.compact",
|
|
71
|
+
outlineColor: "border.focus"
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
grid: {
|
|
75
|
+
position: "absolute",
|
|
76
|
+
borderColor: "foreground.onEmphasis",
|
|
77
|
+
borderStyle: "dashed",
|
|
78
|
+
borderWidth: "none",
|
|
79
|
+
pointerEvents: "none",
|
|
80
|
+
"&[data-axis=horizontal]": { borderBlockWidth: "hairline" },
|
|
81
|
+
"&[data-axis=vertical]": { borderInlineWidth: "hairline" }
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
variants: { size: {
|
|
85
|
+
xs: {
|
|
86
|
+
handle: { _before: {
|
|
87
|
+
width: "icon.xs",
|
|
88
|
+
height: "icon.xs"
|
|
89
|
+
} },
|
|
90
|
+
root: { minHeight: "control.xs" }
|
|
91
|
+
},
|
|
92
|
+
sm: {
|
|
93
|
+
handle: { _before: {
|
|
94
|
+
width: "icon.xs",
|
|
95
|
+
height: "icon.xs"
|
|
96
|
+
} },
|
|
97
|
+
root: { minHeight: "control.sm" }
|
|
98
|
+
},
|
|
99
|
+
md: {
|
|
100
|
+
handle: { _before: {
|
|
101
|
+
width: "icon.xs",
|
|
102
|
+
height: "icon.xs"
|
|
103
|
+
} },
|
|
104
|
+
root: { minHeight: "control.md" }
|
|
105
|
+
},
|
|
106
|
+
lg: {
|
|
107
|
+
handle: { _before: {
|
|
108
|
+
width: "icon.sm",
|
|
109
|
+
height: "icon.sm"
|
|
110
|
+
} },
|
|
111
|
+
root: { minHeight: "control.lg" }
|
|
112
|
+
},
|
|
113
|
+
xl: {
|
|
114
|
+
handle: { _before: {
|
|
115
|
+
width: "icon.md",
|
|
116
|
+
height: "icon.md"
|
|
117
|
+
} },
|
|
118
|
+
root: { minHeight: "control.xl" }
|
|
119
|
+
}
|
|
120
|
+
} },
|
|
121
|
+
defaultVariants: { size: "md" }
|
|
122
|
+
});
|
|
123
|
+
//#endregion
|
|
124
|
+
export { imageCropperRecipe };
|
|
125
|
+
|
|
126
|
+
//# sourceMappingURL=image-cropper.recipe.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"image-cropper.recipe.mjs","names":[],"sources":["../../../src/components/image-cropper/image-cropper.recipe.ts"],"sourcesContent":["import { sva } from '#styled-system/css/index.js'\n\nexport const imageCropperRecipe = sva({\n slots: ['root', 'viewport', 'image', 'selection', 'handle', 'grid'],\n base: {\n root: {\n position: 'relative',\n display: 'flex',\n flexDirection: 'column',\n minHeight: 'target.minimum',\n rounded: 'surface',\n overflow: 'hidden',\n bg: 'background.inverse',\n touchAction: 'none',\n },\n viewport: {\n position: 'relative',\n overflow: 'hidden',\n width: 'fill',\n },\n image: {\n display: 'block',\n maxWidth: 'fill',\n userSelect: 'none',\n pointerEvents: 'none',\n },\n selection: {\n borderWidth: 'hairline',\n borderStyle: 'solid',\n borderColor: 'foreground.onEmphasis',\n cursor: 'move',\n _focusVisible: {\n outlineStyle: 'solid',\n outlineWidth: 'focus',\n outlineOffset: 'inset.compact',\n outlineColor: 'border.focus',\n },\n '&[data-shape=\"circle\"]': { rounded: 'pill' },\n _disabled: { cursor: 'not-allowed' },\n },\n handle: {\n position: 'absolute',\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n minWidth: 'target.minimum',\n minHeight: 'target.minimum',\n _before: {\n content: '\"\"',\n display: 'block',\n width: 'icon.xs',\n height: 'icon.xs',\n rounded: 'pill',\n bg: 'foreground.onEmphasis',\n borderWidth: 'hairline',\n borderStyle: 'solid',\n borderColor: 'border.strong',\n boxShadow: 'raised',\n },\n _focusVisible: {\n outlineStyle: 'solid',\n outlineWidth: 'focus',\n outlineOffset: 'inset.compact',\n outlineColor: 'border.focus',\n },\n },\n grid: {\n position: 'absolute',\n borderColor: 'foreground.onEmphasis',\n borderStyle: 'dashed',\n borderWidth: 'none',\n pointerEvents: 'none',\n '&[data-axis=horizontal]': { borderBlockWidth: 'hairline' },\n '&[data-axis=vertical]': { borderInlineWidth: 'hairline' },\n },\n },\n variants: {\n size: {\n xs: {\n handle: { _before: { width: 'icon.xs', height: 'icon.xs' } },\n root: { minHeight: 'control.xs' },\n },\n sm: {\n handle: { _before: { width: 'icon.xs', height: 'icon.xs' } },\n root: { minHeight: 'control.sm' },\n },\n md: {\n handle: { _before: { width: 'icon.xs', height: 'icon.xs' } },\n root: { minHeight: 'control.md' },\n },\n lg: {\n handle: { _before: { width: 'icon.sm', height: 'icon.sm' } },\n root: { minHeight: 'control.lg' },\n },\n xl: {\n handle: { _before: { width: 'icon.md', height: 'icon.md' } },\n root: { minHeight: 'control.xl' },\n },\n },\n },\n defaultVariants: { size: 'md' },\n})\n"],"mappings":";;AAEA,MAAa,qBAAqB,IAAI;CACpC,OAAO;EAAC;EAAQ;EAAY;EAAS;EAAa;EAAU;CAAM;CAClE,MAAM;EACJ,MAAM;GACJ,UAAU;GACV,SAAS;GACT,eAAe;GACf,WAAW;GACX,SAAS;GACT,UAAU;GACV,IAAI;GACJ,aAAa;EACf;EACA,UAAU;GACR,UAAU;GACV,UAAU;GACV,OAAO;EACT;EACA,OAAO;GACL,SAAS;GACT,UAAU;GACV,YAAY;GACZ,eAAe;EACjB;EACA,WAAW;GACT,aAAa;GACb,aAAa;GACb,aAAa;GACb,QAAQ;GACR,eAAe;IACb,cAAc;IACd,cAAc;IACd,eAAe;IACf,cAAc;GAChB;GACA,4BAA0B,EAAE,SAAS,OAAO;GAC5C,WAAW,EAAE,QAAQ,cAAc;EACrC;EACA,QAAQ;GACN,UAAU;GACV,SAAS;GACT,YAAY;GACZ,gBAAgB;GAChB,UAAU;GACV,WAAW;GACX,SAAS;IACP,SAAS;IACT,SAAS;IACT,OAAO;IACP,QAAQ;IACR,SAAS;IACT,IAAI;IACJ,aAAa;IACb,aAAa;IACb,aAAa;IACb,WAAW;GACb;GACA,eAAe;IACb,cAAc;IACd,cAAc;IACd,eAAe;IACf,cAAc;GAChB;EACF;EACA,MAAM;GACJ,UAAU;GACV,aAAa;GACb,aAAa;GACb,aAAa;GACb,eAAe;GACf,2BAA2B,EAAE,kBAAkB,WAAW;GAC1D,yBAAyB,EAAE,mBAAmB,WAAW;EAC3D;CACF;CACA,UAAU,EACR,MAAM;EACJ,IAAI;GACF,QAAQ,EAAE,SAAS;IAAE,OAAO;IAAW,QAAQ;GAAU,EAAE;GAC3D,MAAM,EAAE,WAAW,aAAa;EAClC;EACA,IAAI;GACF,QAAQ,EAAE,SAAS;IAAE,OAAO;IAAW,QAAQ;GAAU,EAAE;GAC3D,MAAM,EAAE,WAAW,aAAa;EAClC;EACA,IAAI;GACF,QAAQ,EAAE,SAAS;IAAE,OAAO;IAAW,QAAQ;GAAU,EAAE;GAC3D,MAAM,EAAE,WAAW,aAAa;EAClC;EACA,IAAI;GACF,QAAQ,EAAE,SAAS;IAAE,OAAO;IAAW,QAAQ;GAAU,EAAE;GAC3D,MAAM,EAAE,WAAW,aAAa;EAClC;EACA,IAAI;GACF,QAAQ,EAAE,SAAS;IAAE,OAAO;IAAW,QAAQ;GAAU,EAAE;GAC3D,MAAM,EAAE,WAAW,aAAa;EAClC;CACF,EACF;CACA,iBAAiB,EAAE,MAAM,KAAK;AAChC,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { IMAGE_CROPPER_HANDLES, ImageCropper, ImageCropperCropChangeDetails, ImageCropperExportOptions, ImageCropperFlipChangeDetails, ImageCropperHandlePosition, ImageCropperRect, ImageCropperRootProps, ImageCropperRotationChangeDetails, ImageCropperShape, ImageCropperZoomChangeDetails, useImageCropper } from "./image-cropper.mjs";
|
|
2
|
+
export { IMAGE_CROPPER_HANDLES, ImageCropper, type ImageCropperCropChangeDetails, type ImageCropperExportOptions, type ImageCropperFlipChangeDetails, type ImageCropperHandlePosition, type ImageCropperRect, type ImageCropperRootProps, type ImageCropperRotationChangeDetails, type ImageCropperShape, type ImageCropperZoomChangeDetails, useImageCropper };
|