@archytechtor/ui 0.0.0-stage → 0.2.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 +105 -2
- package/dist/components/accordion/accordion.d.ts +25 -0
- package/dist/components/accordion/accordion.js +88 -0
- package/dist/components/accordion/index.d.ts +3 -0
- package/dist/components/accordion/index.js +1 -0
- package/dist/components/accordion/types.d.ts +39 -0
- package/dist/components/alert/alert.d.ts +25 -0
- package/dist/components/alert/alert.js +59 -0
- package/dist/components/alert/index.d.ts +3 -0
- package/dist/components/alert/index.js +3 -0
- package/dist/components/alert/types.d.ts +32 -0
- package/dist/components/alert/types.js +19 -0
- package/dist/components/alert-dialog/alert-dialog.d.ts +73 -0
- package/dist/components/alert-dialog/alert-dialog.js +170 -0
- package/dist/components/alert-dialog/index.d.ts +3 -0
- package/dist/components/alert-dialog/index.js +1 -0
- package/dist/components/alert-dialog/types.d.ts +80 -0
- package/dist/components/aspect-ratio/aspect-ratio.d.ts +8 -0
- package/dist/components/aspect-ratio/aspect-ratio.js +20 -0
- package/dist/components/aspect-ratio/index.d.ts +3 -0
- package/dist/components/aspect-ratio/index.js +1 -0
- package/dist/components/aspect-ratio/types.d.ts +8 -0
- package/dist/components/attachment/attachment.d.ts +57 -0
- package/dist/components/attachment/attachment.js +139 -0
- package/dist/components/attachment/index.d.ts +3 -0
- package/dist/components/attachment/index.js +3 -0
- package/dist/components/attachment/types.d.ts +79 -0
- package/dist/components/attachment/types.js +43 -0
- package/dist/components/avatar/avatar.d.ts +39 -0
- package/dist/components/avatar/avatar.js +88 -0
- package/dist/components/avatar/index.d.ts +3 -0
- package/dist/components/avatar/index.js +3 -0
- package/dist/components/avatar/types.d.ts +54 -0
- package/dist/components/avatar/types.js +21 -0
- package/dist/components/badge/badge.d.ts +7 -0
- package/dist/components/badge/badge.js +23 -0
- package/dist/components/badge/index.d.ts +3 -0
- package/dist/components/badge/index.js +3 -0
- package/dist/components/badge/types.d.ts +21 -0
- package/dist/components/badge/types.js +26 -0
- package/dist/components/bottom-nav/bottom-nav.d.ts +19 -0
- package/dist/components/bottom-nav/bottom-nav.js +59 -0
- package/dist/components/bottom-nav/index.d.ts +3 -0
- package/dist/components/bottom-nav/index.js +3 -0
- package/dist/components/bottom-nav/types.d.ts +45 -0
- package/dist/components/bottom-nav/types.js +44 -0
- package/dist/components/box/box.d.ts +7 -0
- package/dist/components/box/box.js +26 -0
- package/dist/components/box/index.d.ts +3 -0
- package/dist/components/box/index.js +3 -0
- package/dist/components/box/types.d.ts +23 -0
- package/dist/components/box/types.js +27 -0
- package/dist/components/breadcrumb/breadcrumb.d.ts +43 -0
- package/dist/components/breadcrumb/breadcrumb.js +115 -0
- package/dist/components/breadcrumb/index.d.ts +3 -0
- package/dist/components/breadcrumb/index.js +1 -0
- package/dist/components/breadcrumb/types.d.ts +36 -0
- package/dist/components/bubble/bubble.d.ts +25 -0
- package/dist/components/bubble/bubble.js +69 -0
- package/dist/components/bubble/index.d.ts +3 -0
- package/dist/components/bubble/index.js +3 -0
- package/dist/components/bubble/types.d.ts +51 -0
- package/dist/components/bubble/types.js +60 -0
- package/dist/components/button/button.d.ts +7 -0
- package/dist/components/button/button.js +155 -0
- package/dist/components/button/index.d.ts +4 -0
- package/dist/components/button/index.js +4 -0
- package/dist/components/button/types.d.ts +80 -0
- package/dist/components/button/types.js +99 -0
- package/dist/components/button/use-hold-to-confirm.d.ts +25 -0
- package/dist/components/button/use-hold-to-confirm.js +161 -0
- package/dist/components/button-group/button-group.d.ts +20 -0
- package/dist/components/button-group/button-group.js +62 -0
- package/dist/components/button-group/index.d.ts +3 -0
- package/dist/components/button-group/index.js +3 -0
- package/dist/components/button-group/types.d.ts +30 -0
- package/dist/components/button-group/types.js +19 -0
- package/dist/components/calendar/calendar.d.ts +15 -0
- package/dist/components/calendar/calendar.js +157 -0
- package/dist/components/calendar/index.d.ts +3 -0
- package/dist/components/calendar/index.js +1 -0
- package/dist/components/calendar/types.d.ts +21 -0
- package/dist/components/card/card.d.ts +43 -0
- package/dist/components/card/card.js +97 -0
- package/dist/components/card/index.d.ts +3 -0
- package/dist/components/card/index.js +3 -0
- package/dist/components/card/types.d.ts +44 -0
- package/dist/components/card/types.js +19 -0
- package/dist/components/carousel/carousel.d.ts +36 -0
- package/dist/components/carousel/carousel.js +190 -0
- package/dist/components/carousel/index.d.ts +3 -0
- package/dist/components/carousel/index.js +1 -0
- package/dist/components/carousel/types.d.ts +79 -0
- package/dist/components/chart/chart.d.ts +35 -0
- package/dist/components/chart/chart.js +212 -0
- package/dist/components/chart/index.d.ts +3 -0
- package/dist/components/chart/index.js +1 -0
- package/dist/components/chart/types.d.ts +89 -0
- package/dist/components/chart/types.js +7 -0
- package/dist/components/checkbox/checkbox.d.ts +7 -0
- package/dist/components/checkbox/checkbox.js +31 -0
- package/dist/components/checkbox/index.d.ts +3 -0
- package/dist/components/checkbox/index.js +1 -0
- package/dist/components/checkbox/types.d.ts +25 -0
- package/dist/components/code-block/code-block.d.ts +49 -0
- package/dist/components/code-block/code-block.js +188 -0
- package/dist/components/code-block/highlighter.d.ts +15 -0
- package/dist/components/code-block/highlighter.js +123 -0
- package/dist/components/code-block/index.d.ts +5 -0
- package/dist/components/code-block/index.js +5 -0
- package/dist/components/code-block/types.d.ts +94 -0
- package/dist/components/code-block/types.js +38 -0
- package/dist/components/code-block/use-highlighted-code.d.ts +9 -0
- package/dist/components/code-block/use-highlighted-code.js +67 -0
- package/dist/components/collapsible/collapsible.d.ts +19 -0
- package/dist/components/collapsible/collapsible.js +44 -0
- package/dist/components/collapsible/index.d.ts +3 -0
- package/dist/components/collapsible/index.js +1 -0
- package/dist/components/collapsible/types.d.ts +26 -0
- package/dist/components/combobox/combobox.d.ts +104 -0
- package/dist/components/combobox/combobox.js +365 -0
- package/dist/components/combobox/index.d.ts +3 -0
- package/dist/components/combobox/index.js +1 -0
- package/dist/components/combobox/types.d.ts +229 -0
- package/dist/components/command/command.d.ts +55 -0
- package/dist/components/command/command.js +179 -0
- package/dist/components/command/index.d.ts +3 -0
- package/dist/components/command/index.js +1 -0
- package/dist/components/command/types.d.ts +69 -0
- package/dist/components/context-menu/context-menu.d.ts +92 -0
- package/dist/components/context-menu/context-menu.js +270 -0
- package/dist/components/context-menu/index.d.ts +3 -0
- package/dist/components/context-menu/index.js +1 -0
- package/dist/components/context-menu/types.d.ts +138 -0
- package/dist/components/data-table/data-table-features.d.ts +21 -0
- package/dist/components/data-table/data-table-features.js +22 -0
- package/dist/components/data-table/data-table.d.ts +69 -0
- package/dist/components/data-table/data-table.js +283 -0
- package/dist/components/data-table/index.d.ts +4 -0
- package/dist/components/data-table/index.js +3 -0
- package/dist/components/data-table/types.d.ts +63 -0
- package/dist/components/date-input/date-input.d.ts +7 -0
- package/dist/components/date-input/date-input.js +147 -0
- package/dist/components/date-input/index.d.ts +3 -0
- package/dist/components/date-input/index.js +1 -0
- package/dist/components/date-input/types.d.ts +27 -0
- package/dist/components/date-picker/date-picker.d.ts +7 -0
- package/dist/components/date-picker/date-picker.js +74 -0
- package/dist/components/date-picker/index.d.ts +3 -0
- package/dist/components/date-picker/index.js +1 -0
- package/dist/components/date-picker/types.d.ts +38 -0
- package/dist/components/date-range-picker/date-range-picker.d.ts +7 -0
- package/dist/components/date-range-picker/date-range-picker.js +89 -0
- package/dist/components/date-range-picker/index.d.ts +3 -0
- package/dist/components/date-range-picker/index.js +1 -0
- package/dist/components/date-range-picker/types.d.ts +43 -0
- package/dist/components/dialog/dialog.d.ts +61 -0
- package/dist/components/dialog/dialog.js +160 -0
- package/dist/components/dialog/index.d.ts +3 -0
- package/dist/components/dialog/index.js +1 -0
- package/dist/components/dialog/types.d.ts +68 -0
- package/dist/components/drawer/drawer.d.ts +69 -0
- package/dist/components/drawer/drawer.js +245 -0
- package/dist/components/drawer/index.d.ts +3 -0
- package/dist/components/drawer/index.js +1 -0
- package/dist/components/drawer/types.d.ts +93 -0
- package/dist/components/dropdown-menu/dropdown-menu.d.ts +92 -0
- package/dist/components/dropdown-menu/dropdown-menu.js +268 -0
- package/dist/components/dropdown-menu/index.d.ts +3 -0
- package/dist/components/dropdown-menu/index.js +1 -0
- package/dist/components/dropdown-menu/types.d.ts +143 -0
- package/dist/components/empty/empty.d.ts +37 -0
- package/dist/components/empty/empty.js +84 -0
- package/dist/components/empty/index.d.ts +3 -0
- package/dist/components/empty/index.js +3 -0
- package/dist/components/empty/types.d.ts +39 -0
- package/dist/components/empty/types.js +13 -0
- package/dist/components/expanded-card/expanded-card.d.ts +43 -0
- package/dist/components/expanded-card/expanded-card.js +352 -0
- package/dist/components/expanded-card/index.d.ts +3 -0
- package/dist/components/expanded-card/index.js +1 -0
- package/dist/components/expanded-card/types.d.ts +52 -0
- package/dist/components/field/field.d.ts +62 -0
- package/dist/components/field/field.js +173 -0
- package/dist/components/field/index.d.ts +3 -0
- package/dist/components/field/index.js +3 -0
- package/dist/components/field/types.d.ts +81 -0
- package/dist/components/field/types.js +21 -0
- package/dist/components/form/form.d.ts +49 -0
- package/dist/components/form/form.js +136 -0
- package/dist/components/form/index.d.ts +3 -0
- package/dist/components/form/index.js +1 -0
- package/dist/components/form/types.d.ts +59 -0
- package/dist/components/grid/grid.d.ts +7 -0
- package/dist/components/grid/grid.js +36 -0
- package/dist/components/grid/index.d.ts +3 -0
- package/dist/components/grid/index.js +3 -0
- package/dist/components/grid/types.d.ts +35 -0
- package/dist/components/grid/types.js +102 -0
- package/dist/components/hover-card/hover-card.d.ts +19 -0
- package/dist/components/hover-card/hover-card.js +63 -0
- package/dist/components/hover-card/index.d.ts +3 -0
- package/dist/components/hover-card/index.js +1 -0
- package/dist/components/hover-card/types.d.ts +27 -0
- package/dist/components/image-gallery/image-gallery.d.ts +8 -0
- package/dist/components/image-gallery/image-gallery.js +294 -0
- package/dist/components/image-gallery/index.d.ts +4 -0
- package/dist/components/image-gallery/index.js +3 -0
- package/dist/components/image-gallery/masonry.d.ts +11 -0
- package/dist/components/image-gallery/masonry.js +62 -0
- package/dist/components/image-gallery/types.d.ts +80 -0
- package/dist/components/input/index.d.ts +3 -0
- package/dist/components/input/index.js +1 -0
- package/dist/components/input/input.d.ts +7 -0
- package/dist/components/input/input.js +18 -0
- package/dist/components/input/types.d.ts +28 -0
- package/dist/components/input-group/index.d.ts +3 -0
- package/dist/components/input-group/index.js +3 -0
- package/dist/components/input-group/input-group.d.ts +37 -0
- package/dist/components/input-group/input-group.js +103 -0
- package/dist/components/input-group/types.d.ts +64 -0
- package/dist/components/input-group/types.js +31 -0
- package/dist/components/input-otp/index.d.ts +3 -0
- package/dist/components/input-otp/index.js +1 -0
- package/dist/components/input-otp/input-otp.d.ts +25 -0
- package/dist/components/input-otp/input-otp.js +76 -0
- package/dist/components/input-otp/types.d.ts +43 -0
- package/dist/components/item/index.d.ts +3 -0
- package/dist/components/item/index.js +3 -0
- package/dist/components/item/item.d.ts +61 -0
- package/dist/components/item/item.js +149 -0
- package/dist/components/item/types.d.ts +75 -0
- package/dist/components/item/types.js +48 -0
- package/dist/components/kbd/index.d.ts +3 -0
- package/dist/components/kbd/index.js +1 -0
- package/dist/components/kbd/kbd.d.ts +13 -0
- package/dist/components/kbd/kbd.js +30 -0
- package/dist/components/kbd/types.d.ts +9 -0
- package/dist/components/label/index.d.ts +3 -0
- package/dist/components/label/index.js +1 -0
- package/dist/components/label/label.d.ts +7 -0
- package/dist/components/label/label.js +17 -0
- package/dist/components/label/types.d.ts +8 -0
- package/dist/components/loader/index.d.ts +3 -0
- package/dist/components/loader/index.js +3 -0
- package/dist/components/loader/loader.d.ts +8 -0
- package/dist/components/loader/loader.js +386 -0
- package/dist/components/loader/types.d.ts +27 -0
- package/dist/components/loader/types.js +58 -0
- package/dist/components/marker/index.d.ts +3 -0
- package/dist/components/marker/index.js +3 -0
- package/dist/components/marker/marker.d.ts +19 -0
- package/dist/components/marker/marker.js +51 -0
- package/dist/components/marker/types.d.ts +30 -0
- package/dist/components/marker/types.js +16 -0
- package/dist/components/menubar/index.d.ts +3 -0
- package/dist/components/menubar/index.js +1 -0
- package/dist/components/menubar/menubar.d.ts +98 -0
- package/dist/components/menubar/menubar.js +284 -0
- package/dist/components/menubar/types.d.ts +146 -0
- package/dist/components/message/index.d.ts +3 -0
- package/dist/components/message/index.js +1 -0
- package/dist/components/message/message.d.ts +37 -0
- package/dist/components/message/message.js +83 -0
- package/dist/components/message/types.d.ts +32 -0
- package/dist/components/message-scroller/index.d.ts +4 -0
- package/dist/components/message-scroller/index.js +3 -0
- package/dist/components/message-scroller/message-scroller-primitive.d.ts +21 -0
- package/dist/components/message-scroller/message-scroller-primitive.js +1349 -0
- package/dist/components/message-scroller/message-scroller.d.ts +39 -0
- package/dist/components/message-scroller/message-scroller.js +103 -0
- package/dist/components/message-scroller/types.d.ts +107 -0
- package/dist/components/money-input/index.d.ts +3 -0
- package/dist/components/money-input/index.js +1 -0
- package/dist/components/money-input/money-input.d.ts +7 -0
- package/dist/components/money-input/money-input.js +143 -0
- package/dist/components/money-input/types.d.ts +20 -0
- package/dist/components/morph-image/index.d.ts +3 -0
- package/dist/components/morph-image/index.js +3 -0
- package/dist/components/morph-image/morph-image.d.ts +8 -0
- package/dist/components/morph-image/morph-image.js +155 -0
- package/dist/components/morph-image/types.d.ts +38 -0
- package/dist/components/morph-image/types.js +18 -0
- package/dist/components/native-select/index.d.ts +3 -0
- package/dist/components/native-select/index.js +3 -0
- package/dist/components/native-select/native-select.d.ts +20 -0
- package/dist/components/native-select/native-select.js +57 -0
- package/dist/components/native-select/types.d.ts +52 -0
- package/dist/components/native-select/types.js +23 -0
- package/dist/components/navigation-menu/index.d.ts +3 -0
- package/dist/components/navigation-menu/index.js +3 -0
- package/dist/components/navigation-menu/navigation-menu.d.ts +50 -0
- package/dist/components/navigation-menu/navigation-menu.js +145 -0
- package/dist/components/navigation-menu/types.d.ts +79 -0
- package/dist/components/navigation-menu/types.js +15 -0
- package/dist/components/number-stepper/index.d.ts +3 -0
- package/dist/components/number-stepper/index.js +3 -0
- package/dist/components/number-stepper/number-stepper.d.ts +9 -0
- package/dist/components/number-stepper/number-stepper.js +223 -0
- package/dist/components/number-stepper/types.d.ts +47 -0
- package/dist/components/number-stepper/types.js +174 -0
- package/dist/components/pagination/index.d.ts +3 -0
- package/dist/components/pagination/index.js +1 -0
- package/dist/components/pagination/pagination.d.ts +43 -0
- package/dist/components/pagination/pagination.js +121 -0
- package/dist/components/pagination/types.d.ts +37 -0
- package/dist/components/phone-input/index.d.ts +3 -0
- package/dist/components/phone-input/index.js +1 -0
- package/dist/components/phone-input/phone-input.d.ts +7 -0
- package/dist/components/phone-input/phone-input.js +54 -0
- package/dist/components/phone-input/types.d.ts +12 -0
- package/dist/components/popover/index.d.ts +3 -0
- package/dist/components/popover/index.js +1 -0
- package/dist/components/popover/popover.d.ts +37 -0
- package/dist/components/popover/popover.js +100 -0
- package/dist/components/popover/types.d.ts +51 -0
- package/dist/components/progress/index.d.ts +3 -0
- package/dist/components/progress/index.js +1 -0
- package/dist/components/progress/progress.d.ts +32 -0
- package/dist/components/progress/progress.js +100 -0
- package/dist/components/progress/types.d.ts +31 -0
- package/dist/components/questionnaire/index.d.ts +3 -0
- package/dist/components/questionnaire/index.js +1 -0
- package/dist/components/questionnaire/questionnaire-primitive.js +1563 -0
- package/dist/components/questionnaire/questionnaire.d.ts +91 -0
- package/dist/components/questionnaire/questionnaire.js +315 -0
- package/dist/components/questionnaire/types.d.ts +203 -0
- package/dist/components/radio-group/index.d.ts +3 -0
- package/dist/components/radio-group/index.js +1 -0
- package/dist/components/radio-group/radio-group.d.ts +13 -0
- package/dist/components/radio-group/radio-group.js +44 -0
- package/dist/components/radio-group/types.d.ts +33 -0
- package/dist/components/reorder-list/index.d.ts +3 -0
- package/dist/components/reorder-list/index.js +1 -0
- package/dist/components/reorder-list/reorder-list.d.ts +19 -0
- package/dist/components/reorder-list/reorder-list.js +279 -0
- package/dist/components/reorder-list/types.d.ts +65 -0
- package/dist/components/resizable/index.d.ts +3 -0
- package/dist/components/resizable/index.js +1 -0
- package/dist/components/resizable/resizable.d.ts +19 -0
- package/dist/components/resizable/resizable.js +44 -0
- package/dist/components/resizable/types.d.ts +89 -0
- package/dist/components/scroll-area/index.d.ts +3 -0
- package/dist/components/scroll-area/index.js +1 -0
- package/dist/components/scroll-area/scroll-area.d.ts +13 -0
- package/dist/components/scroll-area/scroll-area.js +47 -0
- package/dist/components/scroll-area/types.d.ts +19 -0
- package/dist/components/select/index.d.ts +3 -0
- package/dist/components/select/index.js +1 -0
- package/dist/components/select/select.d.ts +61 -0
- package/dist/components/select/select.js +183 -0
- package/dist/components/select/types.d.ts +100 -0
- package/dist/components/separator/index.d.ts +3 -0
- package/dist/components/separator/index.js +1 -0
- package/dist/components/separator/separator.d.ts +7 -0
- package/dist/components/separator/separator.js +20 -0
- package/dist/components/separator/types.d.ts +9 -0
- package/dist/components/sheet/index.d.ts +3 -0
- package/dist/components/sheet/index.js +1 -0
- package/dist/components/sheet/sheet.d.ts +61 -0
- package/dist/components/sheet/sheet.js +155 -0
- package/dist/components/sheet/types.d.ts +69 -0
- package/dist/components/sidebar/index.d.ts +3 -0
- package/dist/components/sidebar/index.js +3 -0
- package/dist/components/sidebar/sidebar.d.ts +145 -0
- package/dist/components/sidebar/sidebar.js +550 -0
- package/dist/components/sidebar/types.d.ts +186 -0
- package/dist/components/sidebar/types.js +42 -0
- package/dist/components/sidebar/use-mobile.js +21 -0
- package/dist/components/skeleton/index.d.ts +3 -0
- package/dist/components/skeleton/index.js +1 -0
- package/dist/components/skeleton/skeleton.d.ts +8 -0
- package/dist/components/skeleton/skeleton.js +18 -0
- package/dist/components/skeleton/types.d.ts +5 -0
- package/dist/components/slider/index.d.ts +3 -0
- package/dist/components/slider/index.js +1 -0
- package/dist/components/slider/slider.d.ts +7 -0
- package/dist/components/slider/slider.js +106 -0
- package/dist/components/slider/types.d.ts +39 -0
- package/dist/components/spinner/index.d.ts +3 -0
- package/dist/components/spinner/index.js +1 -0
- package/dist/components/spinner/spinner.d.ts +7 -0
- package/dist/components/spinner/spinner.js +21 -0
- package/dist/components/spinner/types.d.ts +8 -0
- package/dist/components/stack/index.d.ts +3 -0
- package/dist/components/stack/index.js +3 -0
- package/dist/components/stack/stack.d.ts +7 -0
- package/dist/components/stack/stack.js +29 -0
- package/dist/components/stack/types.d.ts +56 -0
- package/dist/components/stack/types.js +62 -0
- package/dist/components/statistics/index.d.ts +3 -0
- package/dist/components/statistics/index.js +3 -0
- package/dist/components/statistics/statistics.d.ts +31 -0
- package/dist/components/statistics/statistics.js +141 -0
- package/dist/components/statistics/types.d.ts +84 -0
- package/dist/components/statistics/types.js +27 -0
- package/dist/components/switch/index.d.ts +3 -0
- package/dist/components/switch/index.js +3 -0
- package/dist/components/switch/switch.d.ts +7 -0
- package/dist/components/switch/switch.js +32 -0
- package/dist/components/switch/types.d.ts +37 -0
- package/dist/components/switch/types.js +23 -0
- package/dist/components/table/index.d.ts +3 -0
- package/dist/components/table/index.js +1 -0
- package/dist/components/table/table.d.ts +49 -0
- package/dist/components/table/table.js +112 -0
- package/dist/components/table/types.d.ts +33 -0
- package/dist/components/tabs/index.d.ts +3 -0
- package/dist/components/tabs/index.js +3 -0
- package/dist/components/tabs/tabs.d.ts +25 -0
- package/dist/components/tabs/tabs.js +81 -0
- package/dist/components/tabs/types.d.ts +61 -0
- package/dist/components/tabs/types.js +18 -0
- package/dist/components/textarea/index.d.ts +3 -0
- package/dist/components/textarea/index.js +1 -0
- package/dist/components/textarea/textarea.d.ts +7 -0
- package/dist/components/textarea/textarea.js +17 -0
- package/dist/components/textarea/types.d.ts +26 -0
- package/dist/components/toast/index.d.ts +3 -0
- package/dist/components/toast/index.js +1 -0
- package/dist/components/toast/toast.d.ts +63 -0
- package/dist/components/toast/toast.js +321 -0
- package/dist/components/toast/types.d.ts +120 -0
- package/dist/components/toggle/index.d.ts +3 -0
- package/dist/components/toggle/index.js +3 -0
- package/dist/components/toggle/toggle.d.ts +7 -0
- package/dist/components/toggle/toggle.js +32 -0
- package/dist/components/toggle/types.d.ts +35 -0
- package/dist/components/toggle/types.js +37 -0
- package/dist/components/toggle-group/index.d.ts +3 -0
- package/dist/components/toggle-group/index.js +1 -0
- package/dist/components/toggle-group/toggle-group.d.ts +13 -0
- package/dist/components/toggle-group/toggle-group.js +88 -0
- package/dist/components/toggle-group/types.d.ts +52 -0
- package/dist/components/tooltip/index.d.ts +3 -0
- package/dist/components/tooltip/index.js +1 -0
- package/dist/components/tooltip/tooltip.d.ts +25 -0
- package/dist/components/tooltip/tooltip.js +79 -0
- package/dist/components/tooltip/types.d.ts +48 -0
- package/dist/components/trace/index.d.ts +3 -0
- package/dist/components/trace/index.js +1 -0
- package/dist/components/trace/trace.d.ts +52 -0
- package/dist/components/trace/trace.js +132 -0
- package/dist/components/trace/types.d.ts +54 -0
- package/dist/components/typography/index.d.ts +3 -0
- package/dist/components/typography/index.js +3 -0
- package/dist/components/typography/types.d.ts +29 -0
- package/dist/components/typography/types.js +25 -0
- package/dist/components/typography/typography.d.ts +7 -0
- package/dist/components/typography/typography.js +40 -0
- package/dist/components/video-player/index.d.ts +6 -0
- package/dist/components/video-player/index.js +5 -0
- package/dist/components/video-player/types.d.ts +143 -0
- package/dist/components/video-player/use-video-player.js +319 -0
- package/dist/components/video-player/video-player-context.d.ts +45 -0
- package/dist/components/video-player/video-player-context.js +15 -0
- package/dist/components/video-player/video-player-controls.d.ts +38 -0
- package/dist/components/video-player/video-player-controls.js +226 -0
- package/dist/components/video-player/video-player-overlay.d.ts +13 -0
- package/dist/components/video-player/video-player-overlay.js +113 -0
- package/dist/components/video-player/video-player.d.ts +8 -0
- package/dist/components/video-player/video-player.js +139 -0
- package/dist/index.d.ts +259 -0
- package/dist/index.js +124 -0
- package/dist/lib/floating.d.ts +44 -0
- package/dist/lib/focus-source.js +51 -0
- package/dist/lib/format.d.ts +67 -0
- package/dist/lib/format.js +130 -0
- package/dist/lib/locale.d.ts +104 -0
- package/dist/lib/locale.js +103 -0
- package/dist/lib/part-props.d.ts +15 -0
- package/dist/lib/use-controllable-state.js +22 -0
- package/dist/lib/utils.d.ts +9 -0
- package/dist/lib/utils.js +16 -0
- package/dist/styles/index.css +128 -0
- package/dist/styles/theme.css +84 -0
- package/dist/styles/utilities.css +553 -0
- package/package.json +89 -3
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { PHONE_MASK } from "../../lib/locale.js";
|
|
3
|
+
import { formatPhone } from "../../lib/format.js";
|
|
4
|
+
import { Input } from "../input/input.js";
|
|
5
|
+
import { useControllableState } from "../../lib/use-controllable-state.js";
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
|
+
// src/components/phone-input/phone-input.tsx
|
|
8
|
+
/**
|
|
9
|
+
* Цифры номера без кода страны из отформатированной строки
|
|
10
|
+
* @param formatted - телефон в формате +7 (XXX) XXX-XX-XX
|
|
11
|
+
* @returns до 10 цифр
|
|
12
|
+
*/
|
|
13
|
+
function getDigits(formatted) {
|
|
14
|
+
return formatPhone(formatted).slice(2).replace(/\D/g, "");
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Поле телефона: маска +7 (XXX) XXX-XX-XX форматирует номер по мере ввода
|
|
18
|
+
* @param props - пропсы Input; value — телефон в любом виде, onValueChange — +7 и цифры
|
|
19
|
+
* @returns input
|
|
20
|
+
*/
|
|
21
|
+
function PhoneInput({ value, defaultValue = "", onValueChange, onChange, placeholder = PHONE_MASK, ...props }) {
|
|
22
|
+
const [phone, setPhone] = useControllableState({
|
|
23
|
+
prop: value,
|
|
24
|
+
defaultProp: defaultValue,
|
|
25
|
+
onChange: onValueChange,
|
|
26
|
+
caller: "PhoneInput"
|
|
27
|
+
});
|
|
28
|
+
const text = formatPhone(phone);
|
|
29
|
+
/**
|
|
30
|
+
* Новый текст поля: оставить цифры и отформатировать.
|
|
31
|
+
* Если стёрт только символ маски — стирается и цифра перед ним
|
|
32
|
+
* @param event - событие изменения
|
|
33
|
+
*/
|
|
34
|
+
const handleChange = (event) => {
|
|
35
|
+
onChange?.(event);
|
|
36
|
+
const nextText = event.target.value;
|
|
37
|
+
const previousDigits = getDigits(text);
|
|
38
|
+
let digits = getDigits(nextText);
|
|
39
|
+
if (nextText.length < text.length && digits === previousDigits) digits = digits.slice(0, -1);
|
|
40
|
+
const nextPhone = digits.length > 0 ? `+7${digits}` : "";
|
|
41
|
+
setPhone(nextPhone);
|
|
42
|
+
};
|
|
43
|
+
return /* @__PURE__ */ jsx(Input, {
|
|
44
|
+
"data-slot": "phone-input",
|
|
45
|
+
type: "tel",
|
|
46
|
+
inputMode: "tel",
|
|
47
|
+
autoComplete: "tel",
|
|
48
|
+
placeholder,
|
|
49
|
+
value: text,
|
|
50
|
+
onChange: handleChange,
|
|
51
|
+
...props
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
export { PhoneInput };
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { InputPropsT } from "../input/types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Пропсы поля телефона
|
|
4
|
+
*/
|
|
5
|
+
export type PhoneInputPropsT = Omit<InputPropsT, 'type' | 'value' | 'defaultValue' | 'inputMode'> & {
|
|
6
|
+
/** Телефон — контролируемый режим, вместе с onValueChange. Любой вид: +79123456789, 89123456789 */
|
|
7
|
+
value?: string;
|
|
8
|
+
/** Телефон при первом рендере — неконтролируемый режим */
|
|
9
|
+
defaultValue?: string;
|
|
10
|
+
/** Телефон изменился: +7 и введённые цифры (+7912345), пустая строка — если цифр нет */
|
|
11
|
+
onValueChange?: (value: string) => void;
|
|
12
|
+
};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { PopoverContentPropsT, PopoverDescriptionPropsT, PopoverHeaderPropsT, PopoverPropsT, PopoverTitlePropsT, PopoverTriggerPropsT } from "./types.js";
|
|
2
|
+
import { Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger } from "./popover.js";
|
|
3
|
+
export { Popover, PopoverContent, type PopoverContentPropsT, PopoverDescription, type PopoverDescriptionPropsT, PopoverHeader, type PopoverHeaderPropsT, type PopoverPropsT, PopoverTitle, type PopoverTitlePropsT, PopoverTrigger, type PopoverTriggerPropsT };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger } from "./popover.js";
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { PopoverContentPropsT, PopoverDescriptionPropsT, PopoverHeaderPropsT, PopoverPropsT, PopoverTitlePropsT, PopoverTriggerPropsT } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Всплывающее окно: богатое содержимое рядом с кнопкой, открывается по нажатию
|
|
4
|
+
* @param props - пропсы окна
|
|
5
|
+
* @returns корень без своей разметки
|
|
6
|
+
*/
|
|
7
|
+
export declare function Popover({ onOpenChange, ...props }: PopoverPropsT): import("react").JSX.Element;
|
|
8
|
+
/**
|
|
9
|
+
* Кнопка открытия окна. Свою кнопку — через render={<Button />}
|
|
10
|
+
* @param props - пропсы кнопки
|
|
11
|
+
* @returns кнопка с aria-haspopup="dialog"
|
|
12
|
+
*/
|
|
13
|
+
export declare function PopoverTrigger(props: PopoverTriggerPropsT): import("react").JSX.Element;
|
|
14
|
+
/**
|
|
15
|
+
* Содержимое окна: рендерится в портале рядом с кнопкой открытия
|
|
16
|
+
* @param props - пропсы содержимого; по умолчанию align="center", sideOffset={4}
|
|
17
|
+
* @returns портал с окном
|
|
18
|
+
*/
|
|
19
|
+
export declare function PopoverContent({ className, side, sideOffset, align, alignOffset, collisionPadding, arrowPadding, sticky, anchor, ...props }: PopoverContentPropsT): import("react").JSX.Element;
|
|
20
|
+
/**
|
|
21
|
+
* Шапка окна: заголовок и описание
|
|
22
|
+
* @param props - пропсы шапки
|
|
23
|
+
* @returns блок
|
|
24
|
+
*/
|
|
25
|
+
export declare function PopoverHeader({ className, ...props }: PopoverHeaderPropsT): import("react").JSX.Element;
|
|
26
|
+
/**
|
|
27
|
+
* Заголовок окна: озвучивается как название окна
|
|
28
|
+
* @param props - пропсы заголовка
|
|
29
|
+
* @returns h2
|
|
30
|
+
*/
|
|
31
|
+
export declare function PopoverTitle({ className, ...props }: PopoverTitlePropsT): import("react").JSX.Element;
|
|
32
|
+
/**
|
|
33
|
+
* Описание окна
|
|
34
|
+
* @param props - пропсы описания
|
|
35
|
+
* @returns p
|
|
36
|
+
*/
|
|
37
|
+
export declare function PopoverDescription({ className, ...props }: PopoverDescriptionPropsT): import("react").JSX.Element;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn } from "../../lib/utils.js";
|
|
3
|
+
import { jsx } from "react/jsx-runtime";
|
|
4
|
+
import { Popover } from "@base-ui/react/popover";
|
|
5
|
+
// src/components/popover/popover.tsx
|
|
6
|
+
/**
|
|
7
|
+
* Всплывающее окно: богатое содержимое рядом с кнопкой, открывается по нажатию
|
|
8
|
+
* @param props - пропсы окна
|
|
9
|
+
* @returns корень без своей разметки
|
|
10
|
+
*/
|
|
11
|
+
function Popover$1({ onOpenChange, ...props }) {
|
|
12
|
+
/**
|
|
13
|
+
* Окно открыли или закрыли: наружу только флаг
|
|
14
|
+
* @param open - открыто ли
|
|
15
|
+
*/
|
|
16
|
+
const handleOpenChange = (open) => onOpenChange?.(open);
|
|
17
|
+
return /* @__PURE__ */ jsx(Popover.Root, {
|
|
18
|
+
"data-slot": "popover",
|
|
19
|
+
onOpenChange: handleOpenChange,
|
|
20
|
+
...props
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Кнопка открытия окна. Свою кнопку — через render={<Button />}
|
|
25
|
+
* @param props - пропсы кнопки
|
|
26
|
+
* @returns кнопка с aria-haspopup="dialog"
|
|
27
|
+
*/
|
|
28
|
+
function PopoverTrigger(props) {
|
|
29
|
+
return /* @__PURE__ */ jsx(Popover.Trigger, {
|
|
30
|
+
"data-slot": "popover-trigger",
|
|
31
|
+
...props
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Содержимое окна: рендерится в портале рядом с кнопкой открытия
|
|
36
|
+
* @param props - пропсы содержимого; по умолчанию align="center", sideOffset={4}
|
|
37
|
+
* @returns портал с окном
|
|
38
|
+
*/
|
|
39
|
+
function PopoverContent({ className, side = "bottom", sideOffset = 4, align = "center", alignOffset = 0, collisionPadding, arrowPadding, sticky, anchor, ...props }) {
|
|
40
|
+
const classes = cn("z-50", "flex", "w-72", "origin-(--transform-origin)", "flex-col", "gap-2.5", "rounded-lg", "bg-popover", "p-2.5", "text-sm", "text-popover-foreground", "shadow-md", "ring-1", "ring-foreground/10", "outline-hidden", "duration-100", "data-open:animate-in", "data-open:fade-in-0", "data-open:zoom-in-95", "data-closed:animate-out", "data-closed:fade-out-0", "data-closed:zoom-out-95", "data-[side=bottom]:slide-in-from-top-2", "data-[side=left]:slide-in-from-right-2", "data-[side=right]:slide-in-from-left-2", "data-[side=top]:slide-in-from-bottom-2", className);
|
|
41
|
+
const positionerProps = {
|
|
42
|
+
side,
|
|
43
|
+
sideOffset,
|
|
44
|
+
align,
|
|
45
|
+
alignOffset,
|
|
46
|
+
collisionPadding,
|
|
47
|
+
arrowPadding,
|
|
48
|
+
sticky
|
|
49
|
+
};
|
|
50
|
+
return /* @__PURE__ */ jsx(Popover.Portal, { children: /* @__PURE__ */ jsx(Popover.Positioner, {
|
|
51
|
+
className: "isolate z-50",
|
|
52
|
+
anchor,
|
|
53
|
+
...positionerProps,
|
|
54
|
+
children: /* @__PURE__ */ jsx(Popover.Popup, {
|
|
55
|
+
"data-slot": "popover-content",
|
|
56
|
+
className: classes,
|
|
57
|
+
...props
|
|
58
|
+
})
|
|
59
|
+
}) });
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Шапка окна: заголовок и описание
|
|
63
|
+
* @param props - пропсы шапки
|
|
64
|
+
* @returns блок
|
|
65
|
+
*/
|
|
66
|
+
function PopoverHeader({ className, ...props }) {
|
|
67
|
+
const classes = cn("flex", "flex-col", "gap-0.5", "text-sm", className);
|
|
68
|
+
return /* @__PURE__ */ jsx("div", {
|
|
69
|
+
"data-slot": "popover-header",
|
|
70
|
+
className: classes,
|
|
71
|
+
...props
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Заголовок окна: озвучивается как название окна
|
|
76
|
+
* @param props - пропсы заголовка
|
|
77
|
+
* @returns h2
|
|
78
|
+
*/
|
|
79
|
+
function PopoverTitle({ className, ...props }) {
|
|
80
|
+
const classes = cn("font-medium", className);
|
|
81
|
+
return /* @__PURE__ */ jsx(Popover.Title, {
|
|
82
|
+
"data-slot": "popover-title",
|
|
83
|
+
className: classes,
|
|
84
|
+
...props
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Описание окна
|
|
89
|
+
* @param props - пропсы описания
|
|
90
|
+
* @returns p
|
|
91
|
+
*/
|
|
92
|
+
function PopoverDescription({ className, ...props }) {
|
|
93
|
+
const classes = cn("text-muted-foreground", className);
|
|
94
|
+
return /* @__PURE__ */ jsx(Popover.Description, {
|
|
95
|
+
"data-slot": "popover-description",
|
|
96
|
+
className: classes,
|
|
97
|
+
...props
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
export { Popover$1 as Popover, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger };
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { PartPropsT } from "../../lib/part-props.js";
|
|
2
|
+
import { FloatingPropsT } from "../../lib/floating.js";
|
|
3
|
+
import { ComponentProps } from "react";
|
|
4
|
+
import { Popover } from "@base-ui/react/popover";
|
|
5
|
+
/**
|
|
6
|
+
* Пропсы всплывающего окна
|
|
7
|
+
*/
|
|
8
|
+
export type PopoverPropsT = Omit<Popover.Root.Props, 'onOpenChange'> & {
|
|
9
|
+
/** Окно открыто — контролируемый режим, вместе с onOpenChange */
|
|
10
|
+
open?: boolean;
|
|
11
|
+
/** Окно открыто при первом рендере — неконтролируемый режим */
|
|
12
|
+
defaultOpen?: boolean;
|
|
13
|
+
/** Окно открыли или закрыли: новое состояние */
|
|
14
|
+
onOpenChange?: (open: boolean) => void;
|
|
15
|
+
/** Модальный режим: страница под окном недоступна, фокус заперт внутри */
|
|
16
|
+
modal?: boolean | 'trap-focus';
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Пропсы кнопки открытия
|
|
20
|
+
*/
|
|
21
|
+
export type PopoverTriggerPropsT = PartPropsT<Popover.Trigger.Props> & {
|
|
22
|
+
/** Открывать окно и при наведении, а не только по нажатию */
|
|
23
|
+
openOnHover?: boolean;
|
|
24
|
+
/** Задержка открытия при наведении в мс */
|
|
25
|
+
delay?: number;
|
|
26
|
+
/** Задержка закрытия после ухода курсора в мс */
|
|
27
|
+
closeDelay?: number;
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Пропсы содержимого окна
|
|
31
|
+
*/
|
|
32
|
+
export type PopoverContentPropsT = PartPropsT<Popover.Popup.Props> & FloatingPropsT & {
|
|
33
|
+
/** Элемент, к которому привязать окно вместо кнопки открытия */
|
|
34
|
+
anchor?: Popover.Positioner.Props['anchor'];
|
|
35
|
+
/** Куда перевести фокус при открытии: элемент или false — оставить на месте */
|
|
36
|
+
initialFocus?: Popover.Popup.Props['initialFocus'];
|
|
37
|
+
/** Куда вернуть фокус при закрытии: элемент или false — никуда */
|
|
38
|
+
finalFocus?: Popover.Popup.Props['finalFocus'];
|
|
39
|
+
};
|
|
40
|
+
/**
|
|
41
|
+
* Пропсы шапки
|
|
42
|
+
*/
|
|
43
|
+
export type PopoverHeaderPropsT = ComponentProps<'div'>;
|
|
44
|
+
/**
|
|
45
|
+
* Пропсы заголовка
|
|
46
|
+
*/
|
|
47
|
+
export type PopoverTitlePropsT = PartPropsT<Popover.Title.Props>;
|
|
48
|
+
/**
|
|
49
|
+
* Пропсы описания
|
|
50
|
+
*/
|
|
51
|
+
export type PopoverDescriptionPropsT = PartPropsT<Popover.Description.Props>;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { ProgressIndicatorPropsT, ProgressLabelPropsT, ProgressPropsT, ProgressTrackPropsT, ProgressValuePropsT } from "./types.js";
|
|
2
|
+
import { Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue } from "./progress.js";
|
|
3
|
+
export { Progress, ProgressIndicator, type ProgressIndicatorPropsT, ProgressLabel, type ProgressLabelPropsT, type ProgressPropsT, ProgressTrack, type ProgressTrackPropsT, ProgressValue, type ProgressValuePropsT };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue } from "./progress.js";
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ProgressIndicatorPropsT, ProgressLabelPropsT, ProgressPropsT, ProgressTrackPropsT, ProgressValuePropsT } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Индикатор прогресса: полоса, показывающая, какая часть задачи выполнена.
|
|
4
|
+
* Над полосой можно положить ProgressLabel и ProgressValue
|
|
5
|
+
* @param props - пропсы индикатора
|
|
6
|
+
* @returns элемент с ролью progressbar
|
|
7
|
+
*/
|
|
8
|
+
export declare function Progress({ className, children, value, max, getValueLabel, ...props }: ProgressPropsT): import("react").JSX.Element;
|
|
9
|
+
/**
|
|
10
|
+
* Дорожка индикатора: серая полоса во всю ширину. Progress рендерит её сам
|
|
11
|
+
* @param props - пропсы дорожки
|
|
12
|
+
* @returns дорожка
|
|
13
|
+
*/
|
|
14
|
+
export declare function ProgressTrack({ className, ...props }: ProgressTrackPropsT): import("react").JSX.Element;
|
|
15
|
+
/**
|
|
16
|
+
* Заполненная часть дорожки. Progress рендерит её сам
|
|
17
|
+
* @param props - пропсы заполненной части
|
|
18
|
+
* @returns полоса
|
|
19
|
+
*/
|
|
20
|
+
export declare function ProgressIndicator({ className, ...props }: ProgressIndicatorPropsT): import("react").JSX.Element;
|
|
21
|
+
/**
|
|
22
|
+
* Подпись индикатора: что выполняется. Кладётся внутрь Progress над полосой
|
|
23
|
+
* @param props - пропсы подписи
|
|
24
|
+
* @returns подпись
|
|
25
|
+
*/
|
|
26
|
+
export declare function ProgressLabel({ className, ...props }: ProgressLabelPropsT): import("react").JSX.Element;
|
|
27
|
+
/**
|
|
28
|
+
* Значение индикатора справа от подписи: «66 %»
|
|
29
|
+
* @param props - пропсы значения
|
|
30
|
+
* @returns значение
|
|
31
|
+
*/
|
|
32
|
+
export declare function ProgressValue({ className, ...props }: ProgressValuePropsT): import("react").JSX.Element;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn } from "../../lib/utils.js";
|
|
3
|
+
import { formatNumber } from "../../lib/format.js";
|
|
4
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
+
import { Progress } from "@base-ui/react/progress";
|
|
6
|
+
// src/components/progress/progress.tsx
|
|
7
|
+
/**
|
|
8
|
+
* Текст значения для скринридера по умолчанию: «66 %»
|
|
9
|
+
* @param value - текущее значение
|
|
10
|
+
* @param max - максимальное значение
|
|
11
|
+
* @returns доля от максимума в процентах
|
|
12
|
+
*/
|
|
13
|
+
function getPercentLabel(value, max) {
|
|
14
|
+
return formatNumber(value / max, {
|
|
15
|
+
style: "percent",
|
|
16
|
+
maximumFractionDigits: 0
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Индикатор прогресса: полоса, показывающая, какая часть задачи выполнена.
|
|
21
|
+
* Над полосой можно положить ProgressLabel и ProgressValue
|
|
22
|
+
* @param props - пропсы индикатора
|
|
23
|
+
* @returns элемент с ролью progressbar
|
|
24
|
+
*/
|
|
25
|
+
function Progress$1({ className, children, value = null, max = 100, getValueLabel = getPercentLabel, ...props }) {
|
|
26
|
+
const classes = cn("flex", "flex-wrap", "gap-3", className);
|
|
27
|
+
/**
|
|
28
|
+
* Текст значения для скринридера
|
|
29
|
+
* @param _formattedValue - значение, отформатированное Base UI (не нужно)
|
|
30
|
+
* @param currentValue - текущее значение
|
|
31
|
+
* @returns подпись значения
|
|
32
|
+
*/
|
|
33
|
+
const getAriaValueText = (_formattedValue, currentValue) => {
|
|
34
|
+
if (currentValue === null) return "";
|
|
35
|
+
return getValueLabel(currentValue, max);
|
|
36
|
+
};
|
|
37
|
+
return /* @__PURE__ */ jsxs(Progress.Root, {
|
|
38
|
+
"data-slot": "progress",
|
|
39
|
+
value,
|
|
40
|
+
max,
|
|
41
|
+
locale: "ru-RU",
|
|
42
|
+
getAriaValueText,
|
|
43
|
+
className: classes,
|
|
44
|
+
...props,
|
|
45
|
+
children: [children, /* @__PURE__ */ jsx(ProgressTrack, { children: /* @__PURE__ */ jsx(ProgressIndicator, {}) })]
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Дорожка индикатора: серая полоса во всю ширину. Progress рендерит её сам
|
|
50
|
+
* @param props - пропсы дорожки
|
|
51
|
+
* @returns дорожка
|
|
52
|
+
*/
|
|
53
|
+
function ProgressTrack({ className, ...props }) {
|
|
54
|
+
const classes = cn("relative", "flex", "h-1", "w-full", "items-center", "overflow-x-hidden", "rounded-full", "bg-muted", className);
|
|
55
|
+
return /* @__PURE__ */ jsx(Progress.Track, {
|
|
56
|
+
"data-slot": "progress-track",
|
|
57
|
+
className: classes,
|
|
58
|
+
...props
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Заполненная часть дорожки. Progress рендерит её сам
|
|
63
|
+
* @param props - пропсы заполненной части
|
|
64
|
+
* @returns полоса
|
|
65
|
+
*/
|
|
66
|
+
function ProgressIndicator({ className, ...props }) {
|
|
67
|
+
const classes = cn("h-full", "bg-primary", "transition-all", className);
|
|
68
|
+
return /* @__PURE__ */ jsx(Progress.Indicator, {
|
|
69
|
+
"data-slot": "progress-indicator",
|
|
70
|
+
className: classes,
|
|
71
|
+
...props
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Подпись индикатора: что выполняется. Кладётся внутрь Progress над полосой
|
|
76
|
+
* @param props - пропсы подписи
|
|
77
|
+
* @returns подпись
|
|
78
|
+
*/
|
|
79
|
+
function ProgressLabel({ className, ...props }) {
|
|
80
|
+
const classes = cn("text-sm", "font-medium", className);
|
|
81
|
+
return /* @__PURE__ */ jsx(Progress.Label, {
|
|
82
|
+
"data-slot": "progress-label",
|
|
83
|
+
className: classes,
|
|
84
|
+
...props
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Значение индикатора справа от подписи: «66 %»
|
|
89
|
+
* @param props - пропсы значения
|
|
90
|
+
* @returns значение
|
|
91
|
+
*/
|
|
92
|
+
function ProgressValue({ className, ...props }) {
|
|
93
|
+
const classes = cn("ml-auto", "text-sm", "text-muted-foreground", "tabular-nums", className);
|
|
94
|
+
return /* @__PURE__ */ jsx(Progress.Value, {
|
|
95
|
+
"data-slot": "progress-value",
|
|
96
|
+
className: classes,
|
|
97
|
+
...props
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
export { Progress$1 as Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue };
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { PartPropsT } from "../../lib/part-props.js";
|
|
2
|
+
import { Progress } from "@base-ui/react/progress";
|
|
3
|
+
/**
|
|
4
|
+
* Пропсы индикатора прогресса
|
|
5
|
+
*/
|
|
6
|
+
export type ProgressPropsT = PartPropsT<Omit<Progress.Root.Props, 'value' | 'max' | 'getAriaValueText'>> & {
|
|
7
|
+
/** Текущее значение от 0 до max; null — прогресс неизвестен */
|
|
8
|
+
value?: number | null;
|
|
9
|
+
/** Минимальное значение, по умолчанию 0 */
|
|
10
|
+
min?: number;
|
|
11
|
+
/** Максимальное значение, по умолчанию 100 */
|
|
12
|
+
max?: number;
|
|
13
|
+
/** Текст значения для скринридера (aria-valuetext). По умолчанию процент: «66 %» */
|
|
14
|
+
getValueLabel?: (value: number, max: number) => string;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Пропсы дорожки
|
|
18
|
+
*/
|
|
19
|
+
export type ProgressTrackPropsT = PartPropsT<Progress.Track.Props>;
|
|
20
|
+
/**
|
|
21
|
+
* Пропсы заполненной части
|
|
22
|
+
*/
|
|
23
|
+
export type ProgressIndicatorPropsT = PartPropsT<Progress.Indicator.Props>;
|
|
24
|
+
/**
|
|
25
|
+
* Пропсы подписи
|
|
26
|
+
*/
|
|
27
|
+
export type ProgressLabelPropsT = PartPropsT<Progress.Label.Props>;
|
|
28
|
+
/**
|
|
29
|
+
* Пропсы значения
|
|
30
|
+
*/
|
|
31
|
+
export type ProgressValuePropsT = PartPropsT<Progress.Value.Props>;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { QuestionnaireActionsPropsT, QuestionnaireChoiceDefinitionT, QuestionnaireChoiceDescriptionPropsT, QuestionnaireChoicePropsT, QuestionnaireChoicesPropsT, QuestionnaireDescriptionPropsT, QuestionnaireErrorPropsT, QuestionnaireInputPropsT, QuestionnaireInputTypeT, QuestionnaireItemDefinitionT, QuestionnaireItemPropsT, QuestionnaireItemStatusT, QuestionnaireNextPropsT, QuestionnairePreviousPropsT, QuestionnaireProgressPropsT, QuestionnaireProgressStateI, QuestionnairePropsT, QuestionnaireShortcutModeT, QuestionnaireSkipPropsT, QuestionnaireSubmitPropsT, QuestionnaireTitlePropsT } from "./types.js";
|
|
2
|
+
import { Questionnaire, QuestionnaireActions, QuestionnaireChoice, QuestionnaireChoiceDescription, QuestionnaireChoices, QuestionnaireDescription, QuestionnaireError, QuestionnaireInput, QuestionnaireItem, QuestionnaireNext, QuestionnairePrevious, QuestionnaireProgress, QuestionnaireSkip, QuestionnaireSubmit, QuestionnaireTitle } from "./questionnaire.js";
|
|
3
|
+
export { Questionnaire, QuestionnaireActions, type QuestionnaireActionsPropsT, QuestionnaireChoice, type QuestionnaireChoiceDefinitionT, QuestionnaireChoiceDescription, type QuestionnaireChoiceDescriptionPropsT, type QuestionnaireChoicePropsT, QuestionnaireChoices, type QuestionnaireChoicesPropsT, QuestionnaireDescription, type QuestionnaireDescriptionPropsT, QuestionnaireError, type QuestionnaireErrorPropsT, QuestionnaireInput, type QuestionnaireInputPropsT, type QuestionnaireInputTypeT, QuestionnaireItem, type QuestionnaireItemDefinitionT, type QuestionnaireItemPropsT, type QuestionnaireItemStatusT, QuestionnaireNext, type QuestionnaireNextPropsT, QuestionnairePrevious, type QuestionnairePreviousPropsT, QuestionnaireProgress, type QuestionnaireProgressPropsT, type QuestionnaireProgressStateI, type QuestionnairePropsT, type QuestionnaireShortcutModeT, QuestionnaireSkip, type QuestionnaireSkipPropsT, QuestionnaireSubmit, type QuestionnaireSubmitPropsT, QuestionnaireTitle, type QuestionnaireTitlePropsT };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { Questionnaire, QuestionnaireActions, QuestionnaireChoice, QuestionnaireChoiceDescription, QuestionnaireChoices, QuestionnaireDescription, QuestionnaireError, QuestionnaireInput, QuestionnaireItem, QuestionnaireNext, QuestionnairePrevious, QuestionnaireProgress, QuestionnaireSkip, QuestionnaireSubmit, QuestionnaireTitle } from "./questionnaire.js";
|