@kanzo-tech/ui 0.0.1-alpha
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +60 -0
- package/dist/analytics.d.ts +36 -0
- package/dist/analytics.d.ts.map +1 -0
- package/dist/analytics.js +155 -0
- package/dist/analytics.js.map +1 -0
- package/dist/charts/arrow.d.ts +37 -0
- package/dist/charts/arrow.d.ts.map +1 -0
- package/dist/charts/arrow.js +29 -0
- package/dist/charts/arrow.js.map +1 -0
- package/dist/charts/chart-axes.d.ts +59 -0
- package/dist/charts/chart-axes.d.ts.map +1 -0
- package/dist/charts/chart-axes.js +39 -0
- package/dist/charts/chart-axes.js.map +1 -0
- package/dist/charts/chart-config.d.ts +52 -0
- package/dist/charts/chart-config.d.ts.map +1 -0
- package/dist/charts/chart-config.js +43 -0
- package/dist/charts/chart-config.js.map +1 -0
- package/dist/charts/chart-inputs.d.ts +174 -0
- package/dist/charts/chart-inputs.d.ts.map +1 -0
- package/dist/charts/chart-inputs.js +382 -0
- package/dist/charts/chart-inputs.js.map +1 -0
- package/dist/charts/chart-interactors.d.ts +75 -0
- package/dist/charts/chart-interactors.d.ts.map +1 -0
- package/dist/charts/chart-interactors.js +35 -0
- package/dist/charts/chart-interactors.js.map +1 -0
- package/dist/charts/chart-legend.d.ts +38 -0
- package/dist/charts/chart-legend.d.ts.map +1 -0
- package/dist/charts/chart-legend.js +49 -0
- package/dist/charts/chart-legend.js.map +1 -0
- package/dist/charts/chart-marks.d.ts +124 -0
- package/dist/charts/chart-marks.d.ts.map +1 -0
- package/dist/charts/chart-marks.js +109 -0
- package/dist/charts/chart-marks.js.map +1 -0
- package/dist/charts/chart-root.d.ts +90 -0
- package/dist/charts/chart-root.d.ts.map +1 -0
- package/dist/charts/chart-root.js +162 -0
- package/dist/charts/chart-root.js.map +1 -0
- package/dist/charts/chart-spec.d.ts +126 -0
- package/dist/charts/chart-spec.d.ts.map +1 -0
- package/dist/charts/chart-spec.js +133 -0
- package/dist/charts/chart-spec.js.map +1 -0
- package/dist/charts/chart-stat.d.ts +23 -0
- package/dist/charts/chart-stat.d.ts.map +1 -0
- package/dist/charts/chart-stat.js +24 -0
- package/dist/charts/chart-stat.js.map +1 -0
- package/dist/charts/id-set-client.d.ts +42 -0
- package/dist/charts/id-set-client.d.ts.map +1 -0
- package/dist/charts/id-set-client.js +43 -0
- package/dist/charts/id-set-client.js.map +1 -0
- package/dist/charts/mosaic-provider.d.ts +70 -0
- package/dist/charts/mosaic-provider.d.ts.map +1 -0
- package/dist/charts/mosaic-provider.js +53 -0
- package/dist/charts/mosaic-provider.js.map +1 -0
- package/dist/charts/query-client.d.ts +22 -0
- package/dist/charts/query-client.d.ts.map +1 -0
- package/dist/charts/query-client.js +26 -0
- package/dist/charts/query-client.js.map +1 -0
- package/dist/charts/tokenized-plot.d.ts +26 -0
- package/dist/charts/tokenized-plot.d.ts.map +1 -0
- package/dist/charts/tokenized-plot.js +41 -0
- package/dist/charts/tokenized-plot.js.map +1 -0
- package/dist/charts/use-chart-query.d.ts +30 -0
- package/dist/charts/use-chart-query.d.ts.map +1 -0
- package/dist/charts/use-chart-query.js +19 -0
- package/dist/charts/use-chart-query.js.map +1 -0
- package/dist/composites/CodeEditor.d.ts +64 -0
- package/dist/composites/CodeEditor.d.ts.map +1 -0
- package/dist/composites/CodeEditor.js +521 -0
- package/dist/composites/CodeEditor.js.map +1 -0
- package/dist/composites/MadeWith.d.ts +39 -0
- package/dist/composites/MadeWith.d.ts.map +1 -0
- package/dist/composites/MadeWith.js +30 -0
- package/dist/composites/MadeWith.js.map +1 -0
- package/dist/composites/Preferences.d.ts +155 -0
- package/dist/composites/Preferences.d.ts.map +1 -0
- package/dist/composites/Preferences.js +501 -0
- package/dist/composites/Preferences.js.map +1 -0
- package/dist/composites/Questionnaire.d.ts +215 -0
- package/dist/composites/Questionnaire.d.ts.map +1 -0
- package/dist/composites/Questionnaire.js +422 -0
- package/dist/composites/Questionnaire.js.map +1 -0
- package/dist/composites/SidebarIdentity.d.ts +63 -0
- package/dist/composites/SidebarIdentity.d.ts.map +1 -0
- package/dist/composites/SidebarIdentity.js +103 -0
- package/dist/composites/SidebarIdentity.js.map +1 -0
- package/dist/composites/code-editor-search.d.ts +40 -0
- package/dist/composites/code-editor-search.d.ts.map +1 -0
- package/dist/composites/code-editor-search.js +212 -0
- package/dist/composites/code-editor-search.js.map +1 -0
- package/dist/composites/sidebar.d.ts +129 -0
- package/dist/composites/sidebar.d.ts.map +1 -0
- package/dist/composites/sidebar.js +671 -0
- package/dist/composites/sidebar.js.map +1 -0
- package/dist/composites/theme-notice.d.ts +54 -0
- package/dist/composites/theme-notice.d.ts.map +1 -0
- package/dist/composites/theme-notice.js +19 -0
- package/dist/composites/theme-notice.js.map +1 -0
- package/dist/editor.d.ts +3 -0
- package/dist/editor.d.ts.map +1 -0
- package/dist/editor.js +6 -0
- package/dist/editor.js.map +1 -0
- package/dist/guard-corpus.d.ts +63 -0
- package/dist/guard-corpus.d.ts.map +1 -0
- package/dist/index.d.ts +112 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +696 -0
- package/dist/index.js.map +1 -0
- package/dist/layouts/section.d.ts +166 -0
- package/dist/layouts/section.d.ts.map +1 -0
- package/dist/layouts/section.js +153 -0
- package/dist/layouts/section.js.map +1 -0
- package/dist/layouts/shell.d.ts +128 -0
- package/dist/layouts/shell.d.ts.map +1 -0
- package/dist/layouts/shell.js +107 -0
- package/dist/layouts/shell.js.map +1 -0
- package/dist/lib/cn.d.ts +4 -0
- package/dist/lib/cn.d.ts.map +1 -0
- package/dist/lib/cn.js +9 -0
- package/dist/lib/cn.js.map +1 -0
- package/dist/lib/is-active-path.d.ts +13 -0
- package/dist/lib/is-active-path.d.ts.map +1 -0
- package/dist/lib/is-active-path.js +7 -0
- package/dist/lib/is-active-path.js.map +1 -0
- package/dist/lib/theme-tick.d.ts +37 -0
- package/dist/lib/theme-tick.d.ts.map +1 -0
- package/dist/lib/theme-tick.js +30 -0
- package/dist/lib/theme-tick.js.map +1 -0
- package/dist/lib/token-color.d.ts +74 -0
- package/dist/lib/token-color.d.ts.map +1 -0
- package/dist/lib/token-color.js +35 -0
- package/dist/lib/token-color.js.map +1 -0
- package/dist/lib/use-is-mobile.d.ts +2 -0
- package/dist/lib/use-is-mobile.d.ts.map +1 -0
- package/dist/lib/use-is-mobile.js +17 -0
- package/dist/lib/use-is-mobile.js.map +1 -0
- package/dist/shark-parity.divergences.d.ts +104 -0
- package/dist/shark-parity.divergences.d.ts.map +1 -0
- package/dist/simples/FacetFilter.d.ts +57 -0
- package/dist/simples/FacetFilter.d.ts.map +1 -0
- package/dist/simples/FacetFilter.js +167 -0
- package/dist/simples/FacetFilter.js.map +1 -0
- package/dist/simples/FieldArray.d.ts +42 -0
- package/dist/simples/FieldArray.d.ts.map +1 -0
- package/dist/simples/FieldArray.js +76 -0
- package/dist/simples/FieldArray.js.map +1 -0
- package/dist/simples/Link.d.ts +38 -0
- package/dist/simples/Link.d.ts.map +1 -0
- package/dist/simples/Link.js +24 -0
- package/dist/simples/Link.js.map +1 -0
- package/dist/simples/accordion.d.ts +8 -0
- package/dist/simples/accordion.d.ts.map +1 -0
- package/dist/simples/accordion.js +78 -0
- package/dist/simples/accordion.js.map +1 -0
- package/dist/simples/action-bar.d.ts +101 -0
- package/dist/simples/action-bar.d.ts.map +1 -0
- package/dist/simples/action-bar.js +195 -0
- package/dist/simples/action-bar.js.map +1 -0
- package/dist/simples/alert-dialog.d.ts +24 -0
- package/dist/simples/alert-dialog.d.ts.map +1 -0
- package/dist/simples/alert-dialog.js +43 -0
- package/dist/simples/alert-dialog.js.map +1 -0
- package/dist/simples/alert.d.ts +36 -0
- package/dist/simples/alert.d.ts.map +1 -0
- package/dist/simples/alert.js +123 -0
- package/dist/simples/alert.js.map +1 -0
- package/dist/simples/avatar.d.ts +37 -0
- package/dist/simples/avatar.d.ts.map +1 -0
- package/dist/simples/avatar.js +133 -0
- package/dist/simples/avatar.js.map +1 -0
- package/dist/simples/badge.d.ts +66 -0
- package/dist/simples/badge.d.ts.map +1 -0
- package/dist/simples/badge.js +138 -0
- package/dist/simples/badge.js.map +1 -0
- package/dist/simples/breadcrumb.d.ts +19 -0
- package/dist/simples/breadcrumb.d.ts.map +1 -0
- package/dist/simples/breadcrumb.js +107 -0
- package/dist/simples/breadcrumb.js.map +1 -0
- package/dist/simples/button-group.d.ts +19 -0
- package/dist/simples/button-group.d.ts.map +1 -0
- package/dist/simples/button-group.js +69 -0
- package/dist/simples/button-group.js.map +1 -0
- package/dist/simples/button.d.ts +148 -0
- package/dist/simples/button.d.ts.map +1 -0
- package/dist/simples/button.js +157 -0
- package/dist/simples/button.js.map +1 -0
- package/dist/simples/calendar.d.ts +45 -0
- package/dist/simples/calendar.d.ts.map +1 -0
- package/dist/simples/calendar.js +342 -0
- package/dist/simples/calendar.js.map +1 -0
- package/dist/simples/card.d.ts +43 -0
- package/dist/simples/card.d.ts.map +1 -0
- package/dist/simples/card.js +151 -0
- package/dist/simples/card.js.map +1 -0
- package/dist/simples/checkbox.d.ts +25 -0
- package/dist/simples/checkbox.d.ts.map +1 -0
- package/dist/simples/checkbox.js +103 -0
- package/dist/simples/checkbox.js.map +1 -0
- package/dist/simples/client-only.d.ts +3 -0
- package/dist/simples/client-only.d.ts.map +1 -0
- package/dist/simples/client-only.js +7 -0
- package/dist/simples/client-only.js.map +1 -0
- package/dist/simples/clipboard.d.ts +11 -0
- package/dist/simples/clipboard.d.ts.map +1 -0
- package/dist/simples/clipboard.js +99 -0
- package/dist/simples/clipboard.js.map +1 -0
- package/dist/simples/collapsible.d.ts +8 -0
- package/dist/simples/collapsible.d.ts.map +1 -0
- package/dist/simples/collapsible.js +79 -0
- package/dist/simples/collapsible.js.map +1 -0
- package/dist/simples/color-picker.d.ts +62 -0
- package/dist/simples/color-picker.d.ts.map +1 -0
- package/dist/simples/color-picker.js +391 -0
- package/dist/simples/color-picker.js.map +1 -0
- package/dist/simples/combobox.d.ts +66 -0
- package/dist/simples/combobox.d.ts.map +1 -0
- package/dist/simples/combobox.js +230 -0
- package/dist/simples/combobox.js.map +1 -0
- package/dist/simples/command.d.ts +45 -0
- package/dist/simples/command.d.ts.map +1 -0
- package/dist/simples/command.js +180 -0
- package/dist/simples/command.js.map +1 -0
- package/dist/simples/data-list.d.ts +25 -0
- package/dist/simples/data-list.d.ts.map +1 -0
- package/dist/simples/data-list.js +62 -0
- package/dist/simples/data-list.js.map +1 -0
- package/dist/simples/date-picker.d.ts +16 -0
- package/dist/simples/date-picker.d.ts.map +1 -0
- package/dist/simples/date-picker.js +117 -0
- package/dist/simples/date-picker.js.map +1 -0
- package/dist/simples/diagnostic.d.ts +138 -0
- package/dist/simples/diagnostic.d.ts.map +1 -0
- package/dist/simples/diagnostic.js +288 -0
- package/dist/simples/diagnostic.js.map +1 -0
- package/dist/simples/dialog.d.ts +100 -0
- package/dist/simples/dialog.d.ts.map +1 -0
- package/dist/simples/dialog.js +267 -0
- package/dist/simples/dialog.js.map +1 -0
- package/dist/simples/download-trigger.d.ts +3 -0
- package/dist/simples/download-trigger.d.ts.map +1 -0
- package/dist/simples/download-trigger.js +7 -0
- package/dist/simples/download-trigger.js.map +1 -0
- package/dist/simples/editable.d.ts +23 -0
- package/dist/simples/editable.d.ts.map +1 -0
- package/dist/simples/editable.js +70 -0
- package/dist/simples/editable.js.map +1 -0
- package/dist/simples/field.d.ts +58 -0
- package/dist/simples/field.d.ts.map +1 -0
- package/dist/simples/field.js +285 -0
- package/dist/simples/field.js.map +1 -0
- package/dist/simples/file-upload.d.ts +19 -0
- package/dist/simples/file-upload.d.ts.map +1 -0
- package/dist/simples/file-upload.js +192 -0
- package/dist/simples/file-upload.js.map +1 -0
- package/dist/simples/float.d.ts +45 -0
- package/dist/simples/float.d.ts.map +1 -0
- package/dist/simples/float.js +40 -0
- package/dist/simples/float.js.map +1 -0
- package/dist/simples/floating-panel.d.ts +25 -0
- package/dist/simples/floating-panel.d.ts.map +1 -0
- package/dist/simples/floating-panel.js +95 -0
- package/dist/simples/floating-panel.js.map +1 -0
- package/dist/simples/highlight.d.ts +6 -0
- package/dist/simples/highlight.d.ts.map +1 -0
- package/dist/simples/highlight.js +24 -0
- package/dist/simples/highlight.js.map +1 -0
- package/dist/simples/hover-card.d.ts +11 -0
- package/dist/simples/hover-card.d.ts.map +1 -0
- package/dist/simples/hover-card.js +83 -0
- package/dist/simples/hover-card.js.map +1 -0
- package/dist/simples/image-cropper.d.ts +17 -0
- package/dist/simples/image-cropper.d.ts.map +1 -0
- package/dist/simples/image-cropper.js +139 -0
- package/dist/simples/image-cropper.js.map +1 -0
- package/dist/simples/input-group.d.ts +116 -0
- package/dist/simples/input-group.d.ts.map +1 -0
- package/dist/simples/input-group.js +245 -0
- package/dist/simples/input-group.js.map +1 -0
- package/dist/simples/input.d.ts +26 -0
- package/dist/simples/input.d.ts.map +1 -0
- package/dist/simples/input.js +60 -0
- package/dist/simples/input.js.map +1 -0
- package/dist/simples/item.d.ts +72 -0
- package/dist/simples/item.d.ts.map +1 -0
- package/dist/simples/item.js +180 -0
- package/dist/simples/item.js.map +1 -0
- package/dist/simples/json-tree-view.d.ts +7 -0
- package/dist/simples/json-tree-view.d.ts.map +1 -0
- package/dist/simples/json-tree-view.js +71 -0
- package/dist/simples/json-tree-view.js.map +1 -0
- package/dist/simples/kbd.d.ts +25 -0
- package/dist/simples/kbd.d.ts.map +1 -0
- package/dist/simples/kbd.js +50 -0
- package/dist/simples/kbd.js.map +1 -0
- package/dist/simples/listbox.d.ts +46 -0
- package/dist/simples/listbox.d.ts.map +1 -0
- package/dist/simples/listbox.js +218 -0
- package/dist/simples/listbox.js.map +1 -0
- package/dist/simples/menu.d.ts +60 -0
- package/dist/simples/menu.d.ts.map +1 -0
- package/dist/simples/menu.js +294 -0
- package/dist/simples/menu.js.map +1 -0
- package/dist/simples/native-select.d.ts +36 -0
- package/dist/simples/native-select.d.ts.map +1 -0
- package/dist/simples/native-select.js +77 -0
- package/dist/simples/native-select.js.map +1 -0
- package/dist/simples/number-input.d.ts +35 -0
- package/dist/simples/number-input.d.ts.map +1 -0
- package/dist/simples/number-input.js +142 -0
- package/dist/simples/number-input.js.map +1 -0
- package/dist/simples/pagination.d.ts +11 -0
- package/dist/simples/pagination.d.ts.map +1 -0
- package/dist/simples/pagination.js +78 -0
- package/dist/simples/pagination.js.map +1 -0
- package/dist/simples/password-input.d.ts +23 -0
- package/dist/simples/password-input.d.ts.map +1 -0
- package/dist/simples/password-input.js +90 -0
- package/dist/simples/password-input.js.map +1 -0
- package/dist/simples/pin-input.d.ts +30 -0
- package/dist/simples/pin-input.d.ts.map +1 -0
- package/dist/simples/pin-input.js +71 -0
- package/dist/simples/pin-input.js.map +1 -0
- package/dist/simples/popover.d.ts +42 -0
- package/dist/simples/popover.d.ts.map +1 -0
- package/dist/simples/popover.js +188 -0
- package/dist/simples/popover.js.map +1 -0
- package/dist/simples/progress.d.ts +23 -0
- package/dist/simples/progress.d.ts.map +1 -0
- package/dist/simples/progress.js +82 -0
- package/dist/simples/progress.js.map +1 -0
- package/dist/simples/prose.d.ts +17 -0
- package/dist/simples/prose.d.ts.map +1 -0
- package/dist/simples/prose.js +18 -0
- package/dist/simples/prose.js.map +1 -0
- package/dist/simples/radio-group.d.ts +23 -0
- package/dist/simples/radio-group.d.ts.map +1 -0
- package/dist/simples/radio-group.js +149 -0
- package/dist/simples/radio-group.js.map +1 -0
- package/dist/simples/rating.d.ts +10 -0
- package/dist/simples/rating.d.ts.map +1 -0
- package/dist/simples/rating.js +81 -0
- package/dist/simples/rating.js.map +1 -0
- package/dist/simples/resizable.d.ts +16 -0
- package/dist/simples/resizable.d.ts.map +1 -0
- package/dist/simples/resizable.js +57 -0
- package/dist/simples/resizable.js.map +1 -0
- package/dist/simples/scroll-area.d.ts +23 -0
- package/dist/simples/scroll-area.d.ts.map +1 -0
- package/dist/simples/scroll-area.js +88 -0
- package/dist/simples/scroll-area.js.map +1 -0
- package/dist/simples/segment-group.d.ts +27 -0
- package/dist/simples/segment-group.d.ts.map +1 -0
- package/dist/simples/segment-group.js +129 -0
- package/dist/simples/segment-group.js.map +1 -0
- package/dist/simples/select.d.ts +34 -0
- package/dist/simples/select.d.ts.map +1 -0
- package/dist/simples/select.js +258 -0
- package/dist/simples/select.js.map +1 -0
- package/dist/simples/separator.d.ts +12 -0
- package/dist/simples/separator.d.ts.map +1 -0
- package/dist/simples/separator.js +27 -0
- package/dist/simples/separator.js.map +1 -0
- package/dist/simples/sheet.d.ts +94 -0
- package/dist/simples/sheet.d.ts.map +1 -0
- package/dist/simples/sheet.js +172 -0
- package/dist/simples/sheet.js.map +1 -0
- package/dist/simples/show.d.ts +10 -0
- package/dist/simples/show.d.ts.map +1 -0
- package/dist/simples/show.js +9 -0
- package/dist/simples/show.js.map +1 -0
- package/dist/simples/skeleton.d.ts +3 -0
- package/dist/simples/skeleton.d.ts.map +1 -0
- package/dist/simples/skeleton.js +23 -0
- package/dist/simples/skeleton.js.map +1 -0
- package/dist/simples/skip-nav.d.ts +54 -0
- package/dist/simples/skip-nav.d.ts.map +1 -0
- package/dist/simples/skip-nav.js +42 -0
- package/dist/simples/skip-nav.js.map +1 -0
- package/dist/simples/slider.d.ts +29 -0
- package/dist/simples/slider.d.ts.map +1 -0
- package/dist/simples/slider.js +189 -0
- package/dist/simples/slider.js.map +1 -0
- package/dist/simples/spinner.d.ts +2 -0
- package/dist/simples/spinner.d.ts.map +1 -0
- package/dist/simples/spinner.js +20 -0
- package/dist/simples/spinner.js.map +1 -0
- package/dist/simples/stat-tile.d.ts +31 -0
- package/dist/simples/stat-tile.d.ts.map +1 -0
- package/dist/simples/stat-tile.js +64 -0
- package/dist/simples/stat-tile.js.map +1 -0
- package/dist/simples/status.d.ts +48 -0
- package/dist/simples/status.d.ts.map +1 -0
- package/dist/simples/status.js +57 -0
- package/dist/simples/status.js.map +1 -0
- package/dist/simples/steps.d.ts +20 -0
- package/dist/simples/steps.d.ts.map +1 -0
- package/dist/simples/steps.js +171 -0
- package/dist/simples/steps.js.map +1 -0
- package/dist/simples/suggestions.d.ts +43 -0
- package/dist/simples/suggestions.d.ts.map +1 -0
- package/dist/simples/suggestions.js +38 -0
- package/dist/simples/suggestions.js.map +1 -0
- package/dist/simples/swatch.d.ts +73 -0
- package/dist/simples/swatch.d.ts.map +1 -0
- package/dist/simples/swatch.js +35 -0
- package/dist/simples/swatch.js.map +1 -0
- package/dist/simples/switch.d.ts +5 -0
- package/dist/simples/switch.d.ts.map +1 -0
- package/dist/simples/switch.js +71 -0
- package/dist/simples/switch.js.map +1 -0
- package/dist/simples/table.d.ts +55 -0
- package/dist/simples/table.d.ts.map +1 -0
- package/dist/simples/table.js +166 -0
- package/dist/simples/table.js.map +1 -0
- package/dist/simples/tabs.d.ts +55 -0
- package/dist/simples/tabs.d.ts.map +1 -0
- package/dist/simples/tabs.js +133 -0
- package/dist/simples/tabs.js.map +1 -0
- package/dist/simples/tags-input.d.ts +64 -0
- package/dist/simples/tags-input.d.ts.map +1 -0
- package/dist/simples/tags-input.js +228 -0
- package/dist/simples/tags-input.js.map +1 -0
- package/dist/simples/textarea.d.ts +6 -0
- package/dist/simples/textarea.d.ts.map +1 -0
- package/dist/simples/textarea.js +34 -0
- package/dist/simples/textarea.js.map +1 -0
- package/dist/simples/toast.d.ts +20 -0
- package/dist/simples/toast.d.ts.map +1 -0
- package/dist/simples/toast.js +127 -0
- package/dist/simples/toast.js.map +1 -0
- package/dist/simples/toggle-group.d.ts +20 -0
- package/dist/simples/toggle-group.d.ts.map +1 -0
- package/dist/simples/toggle-group.js +82 -0
- package/dist/simples/toggle-group.js.map +1 -0
- package/dist/simples/toggle.d.ts +35 -0
- package/dist/simples/toggle.d.ts.map +1 -0
- package/dist/simples/toggle.js +57 -0
- package/dist/simples/toggle.js.map +1 -0
- package/dist/simples/tooltip.d.ts +8 -0
- package/dist/simples/tooltip.d.ts.map +1 -0
- package/dist/simples/tooltip.js +80 -0
- package/dist/simples/tooltip.js.map +1 -0
- package/dist/simples/tour.d.ts +81 -0
- package/dist/simples/tour.d.ts.map +1 -0
- package/dist/simples/tour.js +253 -0
- package/dist/simples/tour.js.map +1 -0
- package/dist/simples/tree-view.d.ts +64 -0
- package/dist/simples/tree-view.d.ts.map +1 -0
- package/dist/simples/tree-view.js +300 -0
- package/dist/simples/tree-view.js.map +1 -0
- package/dist/styles.css +2 -0
- package/dist/table/data-table-content.d.ts +18 -0
- package/dist/table/data-table-content.d.ts.map +1 -0
- package/dist/table/data-table-content.js +53 -0
- package/dist/table/data-table-content.js.map +1 -0
- package/dist/table/data-table-pagination.d.ts +8 -0
- package/dist/table/data-table-pagination.d.ts.map +1 -0
- package/dist/table/data-table-pagination.js +65 -0
- package/dist/table/data-table-pagination.js.map +1 -0
- package/dist/table/data-table-root.d.ts +10 -0
- package/dist/table/data-table-root.d.ts.map +1 -0
- package/dist/table/data-table-root.js +21 -0
- package/dist/table/data-table-root.js.map +1 -0
- package/dist/table/data-table-toolbar.d.ts +44 -0
- package/dist/table/data-table-toolbar.d.ts.map +1 -0
- package/dist/table/data-table-toolbar.js +87 -0
- package/dist/table/data-table-toolbar.js.map +1 -0
- package/dist/table/select-column.d.ts +16 -0
- package/dist/table/select-column.d.ts.map +1 -0
- package/dist/table/select-column.js +39 -0
- package/dist/table/select-column.js.map +1 -0
- package/dist/table/sortableHeader.d.ts +25 -0
- package/dist/table/sortableHeader.d.ts.map +1 -0
- package/dist/table/sortableHeader.js +43 -0
- package/dist/table/sortableHeader.js.map +1 -0
- package/dist/table/use-data-table.d.ts +40 -0
- package/dist/table/use-data-table.d.ts.map +1 -0
- package/dist/table/use-data-table.js +65 -0
- package/dist/table/use-data-table.js.map +1 -0
- package/dist/table.d.ts +15 -0
- package/dist/table.d.ts.map +1 -0
- package/dist/table.js +22 -0
- package/dist/table.js.map +1 -0
- package/dist/theme/KanzoTheme.d.ts +74 -0
- package/dist/theme/KanzoTheme.d.ts.map +1 -0
- package/dist/theme/KanzoTheme.js +61 -0
- package/dist/theme/KanzoTheme.js.map +1 -0
- package/dist/theme/KanzoThemeProvider.d.ts +144 -0
- package/dist/theme/KanzoThemeProvider.d.ts.map +1 -0
- package/dist/theme/KanzoThemeProvider.js +271 -0
- package/dist/theme/KanzoThemeProvider.js.map +1 -0
- package/dist/theme/theme-context.d.ts +146 -0
- package/dist/theme/theme-context.d.ts.map +1 -0
- package/dist/theme/theme-context.js +18 -0
- package/dist/theme/theme-context.js.map +1 -0
- package/dist/theme/theme-script.d.ts +17 -0
- package/dist/theme/theme-script.d.ts.map +1 -0
- package/dist/theme/theme-script.js +16 -0
- package/dist/theme/theme-script.js.map +1 -0
- package/package.json +201 -0
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
import { ark } from '@ark-ui/react/factory';
|
|
2
|
+
import { UseStepsReturn } from '@ark-ui/react/steps';
|
|
3
|
+
import { ButtonProps } from '../simples/button.js';
|
|
4
|
+
import { FieldLegend, FieldSet, FieldSetError, FieldSetHelper } from '../simples/field.js';
|
|
5
|
+
import { Input } from '../simples/input.js';
|
|
6
|
+
import { Textarea } from '../simples/textarea.js';
|
|
7
|
+
import * as React from "react";
|
|
8
|
+
/**
|
|
9
|
+
* Questionnaire — one question at a time, with progress, validation and navigation.
|
|
10
|
+
*
|
|
11
|
+
* <Questionnaire onSubmit={…}>
|
|
12
|
+
* <QuestionnaireProgress />
|
|
13
|
+
* <QuestionnaireItem name="…" required>
|
|
14
|
+
* <QuestionnaireTitle /> <QuestionnaireDescription />
|
|
15
|
+
* <QuestionnaireChoices>
|
|
16
|
+
* <QuestionnaireChoice description="…" value="…">…</QuestionnaireChoice>…
|
|
17
|
+
* </QuestionnaireChoices>
|
|
18
|
+
* <QuestionnaireError />
|
|
19
|
+
* </QuestionnaireItem>
|
|
20
|
+
* <QuestionnaireActions>
|
|
21
|
+
* <QuestionnairePrevious /> <QuestionnaireSkip /> <QuestionnaireNext /> <QuestionnaireSubmit />
|
|
22
|
+
* </QuestionnaireActions>
|
|
23
|
+
* </Questionnaire>
|
|
24
|
+
*
|
|
25
|
+
* **The root owns the order, the active question, the answers and the navigation; the parent owns
|
|
26
|
+
* dismissal, persistence and branching.** Which is why there is no `open`, no storage and no
|
|
27
|
+
* `onDismiss` here: a questionnaire that decided when it appears could not be put in a dialog, a
|
|
28
|
+
* sidebar and a page, and every product wants it in a different one.
|
|
29
|
+
*
|
|
30
|
+
* **No navigation state machine is written here.** Ark's `useSteps` already owns the step index,
|
|
31
|
+
* `hasNextStep` / `hasPrevStep`, `percent`, and — the part that is easy to miss — the *guards*:
|
|
32
|
+
* `isStepValid` blocks `STEP.NEXT` and fires `onStepInvalid`, and `isStepSkippable` overrides it.
|
|
33
|
+
* A required question blocking Next and a skippable one not blocking are therefore two callbacks,
|
|
34
|
+
* not two branches. None of Ark's Steps *parts* are used: `getContentProps` declares
|
|
35
|
+
* `role="tabpanel"` and points `aria-labelledby` at a trigger, and this renders no tablist for
|
|
36
|
+
* either to belong to.
|
|
37
|
+
*
|
|
38
|
+
* **A question is a `FieldSet`.** That is what carries the ARIA rather than anything hand-rolled:
|
|
39
|
+
* Ark's fieldset names the group from its own legend, describes it from the helper and error text,
|
|
40
|
+
* and marks the error `aria-live="polite"` — so `QuestionnaireError` announces itself on the group
|
|
41
|
+
* that failed with no `role="alert"` of ours anywhere.
|
|
42
|
+
*/
|
|
43
|
+
export type QuestionnaireAnswer = string | string[];
|
|
44
|
+
export type QuestionnaireAnswers = Record<string, QuestionnaireAnswer>;
|
|
45
|
+
/** What the root reads off an item's own props to steer the machine. */
|
|
46
|
+
export interface QuestionnaireQuestion {
|
|
47
|
+
multiple: boolean;
|
|
48
|
+
name: string;
|
|
49
|
+
required: boolean;
|
|
50
|
+
skippable: boolean;
|
|
51
|
+
}
|
|
52
|
+
interface QuestionnaireContextValue {
|
|
53
|
+
answers: QuestionnaireAnswers;
|
|
54
|
+
/** The index whose Next was refused, or `null`. One at a time: only one question is on screen. */
|
|
55
|
+
blocked: number | null;
|
|
56
|
+
indexOf: (name: string) => number;
|
|
57
|
+
questions: QuestionnaireQuestion[];
|
|
58
|
+
setAnswer: (name: string, answer: QuestionnaireAnswer) => void;
|
|
59
|
+
shortcuts: boolean;
|
|
60
|
+
steps: UseStepsReturn;
|
|
61
|
+
}
|
|
62
|
+
interface QuestionnaireItemContextValue {
|
|
63
|
+
current: boolean;
|
|
64
|
+
index: number;
|
|
65
|
+
/** This item's own declaration — what a part of the caller's can read without the scan. */
|
|
66
|
+
question: QuestionnaireQuestion;
|
|
67
|
+
/** The key printed on a choice's `Kbd`, or `undefined` when shortcuts are off. */
|
|
68
|
+
shortcutOf: (value: string) => string | undefined;
|
|
69
|
+
}
|
|
70
|
+
export declare function useQuestionnaire(): QuestionnaireContextValue;
|
|
71
|
+
export declare function useQuestionnaireItem(): QuestionnaireItemContextValue;
|
|
72
|
+
export interface QuestionnaireProps extends Omit<React.ComponentProps<typeof ark.form>, "onSubmit"> {
|
|
73
|
+
/** Answers to start from — a resumed session, or a question already decided elsewhere. */
|
|
74
|
+
defaultAnswers?: QuestionnaireAnswers;
|
|
75
|
+
/** Which question to open on. Persistence is the parent's, so resuming is this plus the answers. */
|
|
76
|
+
defaultStep?: number;
|
|
77
|
+
onAnswersChange?: (answers: QuestionnaireAnswers) => void;
|
|
78
|
+
onStepChange?: (details: {
|
|
79
|
+
step: number;
|
|
80
|
+
}) => void;
|
|
81
|
+
/** Called with the whole payload when the last question is submitted and passes validation. */
|
|
82
|
+
onSubmit?: (answers: QuestionnaireAnswers) => void;
|
|
83
|
+
/**
|
|
84
|
+
* Answer the visible question from the keyboard: `1`–`9`, by the choice's position, printed on a
|
|
85
|
+
* `Kbd` beside it so the key is visible rather than folklore.
|
|
86
|
+
*
|
|
87
|
+
* **Opt-in — there is no default.** This registers a `window` keydown listener on bare, unmodified
|
|
88
|
+
* keys, and a design system must not claim those in its host's keymap without being asked. Typing
|
|
89
|
+
* in a text control is ignored; a focused radio or checkbox is not, which is the case that makes
|
|
90
|
+
* the difference (both are `<input>` elements, and treating them as typing kills the shortcuts the
|
|
91
|
+
* moment somebody clicks an option).
|
|
92
|
+
*/
|
|
93
|
+
shortcuts?: boolean;
|
|
94
|
+
}
|
|
95
|
+
export declare function Questionnaire(props: QuestionnaireProps): React.JSX.Element;
|
|
96
|
+
/**
|
|
97
|
+
* How far along we are, as a sentence rather than a bar: *Question 2 of 4*.
|
|
98
|
+
*
|
|
99
|
+
* **ARIA contract.** `role="progressbar"` with `aria-valuemin` / `aria-valuenow` / `aria-valuemax`
|
|
100
|
+
* counting questions, not percent, and `aria-valuetext` carrying the same sentence the eye reads;
|
|
101
|
+
* `aria-live="polite"` announces the move. `progressbar` is a leaf role with no keyboard contract,
|
|
102
|
+
* so nothing is promised here that is not delivered.
|
|
103
|
+
*
|
|
104
|
+
* Ark's `Progress` is not used, and that is not an oversight: zag puts `role="progressbar"` on the
|
|
105
|
+
* *track*, so a progress with no painted track has no role at all. The machine can only be kept by
|
|
106
|
+
* painting the bar the reference does not have.
|
|
107
|
+
*
|
|
108
|
+
* Children override the sentence, which is how it is translated — `useQuestionnaire()` carries the
|
|
109
|
+
* numbers.
|
|
110
|
+
*/
|
|
111
|
+
export declare const QuestionnaireProgress: (props: React.ComponentProps<typeof ark.div>) => React.JSX.Element;
|
|
112
|
+
export interface QuestionnaireItemProps extends React.ComponentProps<typeof FieldSet> {
|
|
113
|
+
/** Accumulate several answers instead of one — a `CheckboxGroup` rather than a `RadioGroup`. */
|
|
114
|
+
multiple?: boolean;
|
|
115
|
+
/** The key this question's answer is filed under. Unique within the questionnaire. */
|
|
116
|
+
name: string;
|
|
117
|
+
/** Refuse Next until it is answered. */
|
|
118
|
+
required?: boolean;
|
|
119
|
+
/** Offer a Skip, and let Next through unanswered. Overrides `required`, the way Ark's guard does. */
|
|
120
|
+
skippable?: boolean;
|
|
121
|
+
}
|
|
122
|
+
export declare function QuestionnaireItem(props: QuestionnaireItemProps): React.JSX.Element;
|
|
123
|
+
/**
|
|
124
|
+
* The question itself. A `<legend>`, which is what names the group Ark builds around it.
|
|
125
|
+
*
|
|
126
|
+
* The margin is not the fieldset's `gap`: a `<legend>` is rendered into the fieldset's border and
|
|
127
|
+
* is not a flex item, so `gap` never reaches it. It sits flush against its own description and
|
|
128
|
+
* opens up to `mb-4` when there is none — delete either half and the two spellings of this
|
|
129
|
+
* question's heading stop agreeing.
|
|
130
|
+
*/
|
|
131
|
+
export declare const QuestionnaireTitle: (props: React.ComponentProps<typeof FieldLegend>) => React.JSX.Element;
|
|
132
|
+
export declare const QuestionnaireDescription: (props: React.ComponentProps<typeof FieldSetHelper>) => React.JSX.Element;
|
|
133
|
+
/**
|
|
134
|
+
* Why Next was refused. Renders only while the fieldset is invalid, which is Ark's rule and not
|
|
135
|
+
* ours — and Ark gives it `aria-live="polite"` and hangs it off the group's `aria-describedby`.
|
|
136
|
+
*/
|
|
137
|
+
export declare const QuestionnaireError: (props: React.ComponentProps<typeof FieldSetError>) => React.JSX.Element;
|
|
138
|
+
/**
|
|
139
|
+
* The item's options — a radio group, or a checkbox group where the item is `multiple`.
|
|
140
|
+
*
|
|
141
|
+
* One component and not two, because the choice between them is the item's own `multiple` and a
|
|
142
|
+
* caller who had to pick would be stating it twice.
|
|
143
|
+
*/
|
|
144
|
+
export type QuestionnaireChoicesProps = Omit<React.ComponentProps<typeof ark.div>, "defaultValue" | "value">;
|
|
145
|
+
export declare const QuestionnaireChoices: (props: QuestionnaireChoicesProps) => React.JSX.Element;
|
|
146
|
+
export interface QuestionnaireChoiceProps extends Omit<React.ComponentProps<typeof ark.label>, "value"> {
|
|
147
|
+
/**
|
|
148
|
+
* The muted second line — what the option means, rather than what it is called.
|
|
149
|
+
*
|
|
150
|
+
* A `string` and not a node, following `CardHeader`'s `title` / `description`: the label is
|
|
151
|
+
* already this part's children, and the control has to *name* itself off an element this
|
|
152
|
+
* component renders, so a second children slot would have to be found by splitting them.
|
|
153
|
+
*/
|
|
154
|
+
description?: string;
|
|
155
|
+
/** What this choice contributes to the answer. */
|
|
156
|
+
value: string;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* One option, drawn as a card: the label and its description, then the shortcut key as a chip,
|
|
160
|
+
* then the control at the margin.
|
|
161
|
+
*
|
|
162
|
+
* The card is the control's own `<label>` in both arms, so the whole of it is the target. What
|
|
163
|
+
* differs is where the accessible name is read from: Ark points a radio's hidden input at its
|
|
164
|
+
* `ItemText`, and a checkbox's at the label part we do not render — so the multiple arm names
|
|
165
|
+
* itself explicitly off the title instead.
|
|
166
|
+
*
|
|
167
|
+
* `Item` is not the card here, deliberately. It declares `role="listitem"`, which inside a
|
|
168
|
+
* `radiogroup` is a list item with no list, and `asChild`-ing it onto the control would put that
|
|
169
|
+
* role on the control itself — the failure `Item`'s own docblock describes.
|
|
170
|
+
*/
|
|
171
|
+
export declare const QuestionnaireChoice: (props: QuestionnaireChoiceProps) => React.JSX.Element;
|
|
172
|
+
/**
|
|
173
|
+
* The freeform arm — a single-line answer filed under the item's name.
|
|
174
|
+
*
|
|
175
|
+
* A fieldset's legend names the GROUP, not a control inside it, so the input is pointed at the
|
|
176
|
+
* legend explicitly. Without this the question is announced when focus enters the group and the
|
|
177
|
+
* control itself is unnamed.
|
|
178
|
+
*/
|
|
179
|
+
export declare const QuestionnaireInput: (props: React.ComponentProps<typeof Input>) => React.JSX.Element;
|
|
180
|
+
/** The same binding over a `Textarea`, for the answer that runs to a paragraph. */
|
|
181
|
+
export declare const QuestionnaireTextarea: (props: React.ComponentProps<typeof Textarea>) => React.JSX.Element;
|
|
182
|
+
export interface QuestionnaireActionsProps extends Omit<React.ComponentProps<typeof ark.div>, "aria-label" | "aria-labelledby"> {
|
|
183
|
+
/** Names the group, the way a run of independent controls needs naming. */
|
|
184
|
+
"aria-label"?: string;
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* The navigation row: Back at the start, Skip and Next/Submit at the end.
|
|
188
|
+
*
|
|
189
|
+
* Three fixed columns rather than a `ButtonGroup`, and that is the point of it — `ButtonGroup`
|
|
190
|
+
* collapses the inner radii and overlaps its children by a pixel, which is right for a cluster
|
|
191
|
+
* acting on one thing and wrong for two ends of a journey. The columns hold their places while
|
|
192
|
+
* Back and Skip come and go, so nothing slides sideways between questions.
|
|
193
|
+
*/
|
|
194
|
+
export declare const QuestionnaireActions: (props: QuestionnaireActionsProps) => React.JSX.Element;
|
|
195
|
+
/**
|
|
196
|
+
* Drawn only where there is somewhere to go back to.
|
|
197
|
+
*
|
|
198
|
+
* Absent rather than disabled: the first question's row is one solid Next and nothing else, and a
|
|
199
|
+
* greyed control that has never been available says nothing a reader can use.
|
|
200
|
+
*/
|
|
201
|
+
export declare const QuestionnairePrevious: (props: ButtonProps) => React.JSX.Element | null;
|
|
202
|
+
/** Drawn only where the visible question declared itself skippable — elsewhere it would lie. */
|
|
203
|
+
export declare const QuestionnaireSkip: (props: ButtonProps) => React.JSX.Element | null;
|
|
204
|
+
/**
|
|
205
|
+
* Advance, or reveal why not.
|
|
206
|
+
*
|
|
207
|
+
* Never disabled on an unanswered question: a disabled control says nothing about what is missing,
|
|
208
|
+
* and the machine's `onStepInvalid` is what puts the message on screen. It stands down on the last
|
|
209
|
+
* question so that `QuestionnaireSubmit` can take the same place in the cluster.
|
|
210
|
+
*/
|
|
211
|
+
export declare const QuestionnaireNext: (props: ButtonProps) => React.JSX.Element | null;
|
|
212
|
+
/** The other half of that pair: drawn only on the last question, and it submits the form. */
|
|
213
|
+
export declare const QuestionnaireSubmit: (props: ButtonProps) => React.JSX.Element | null;
|
|
214
|
+
export {};
|
|
215
|
+
//# sourceMappingURL=Questionnaire.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Questionnaire.d.ts","sourceRoot":"","sources":["../../src/composites/Questionnaire.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,422 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as l, jsxs as T, Fragment as D } from "react/jsx-runtime";
|
|
3
|
+
import { ark as V } from "@ark-ui/react/factory";
|
|
4
|
+
import { useFieldsetContext as O } from "@ark-ui/react/fieldset";
|
|
5
|
+
import { useSteps as B } from "@ark-ui/react/steps";
|
|
6
|
+
import * as b from "react";
|
|
7
|
+
import { tv as H } from "tailwind-variants";
|
|
8
|
+
import { cn as d } from "../lib/cn.js";
|
|
9
|
+
import { Button as C } from "../simples/button.js";
|
|
10
|
+
import { Checkbox as M, CheckboxGroup as _ } from "../simples/checkbox.js";
|
|
11
|
+
import { FieldTitle as $, FieldSetHelper as z, FieldSetError as X, FieldSet as J, FieldLegend as U } from "../simples/field.js";
|
|
12
|
+
import { Input as W } from "../simples/input.js";
|
|
13
|
+
import { ItemContent as Y, ItemDescription as Z } from "../simples/item.js";
|
|
14
|
+
import { Kbd as ee } from "../simples/kbd.js";
|
|
15
|
+
import { RadioGroupText as te, RadioGroupCard as ne, RadioGroupIndicator as se, RadioGroup as re } from "../simples/radio-group.js";
|
|
16
|
+
import { Textarea as oe } from "../simples/textarea.js";
|
|
17
|
+
const P = b.createContext(null), R = b.createContext(null);
|
|
18
|
+
function w() {
|
|
19
|
+
const e = b.useContext(P);
|
|
20
|
+
if (!e) throw new Error("useQuestionnaire must be used inside <Questionnaire>");
|
|
21
|
+
return e;
|
|
22
|
+
}
|
|
23
|
+
function A() {
|
|
24
|
+
const e = b.useContext(R);
|
|
25
|
+
if (!e) throw new Error("This part must be used inside <QuestionnaireItem>");
|
|
26
|
+
return e;
|
|
27
|
+
}
|
|
28
|
+
function G(e, n) {
|
|
29
|
+
const t = [], r = (o) => {
|
|
30
|
+
b.Children.forEach(o, (s) => {
|
|
31
|
+
if (b.isValidElement(s)) {
|
|
32
|
+
if (s.type === n) {
|
|
33
|
+
t.push(s);
|
|
34
|
+
return;
|
|
35
|
+
}
|
|
36
|
+
r(s.props.children);
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
return r(e), t;
|
|
41
|
+
}
|
|
42
|
+
function ie(e) {
|
|
43
|
+
return G(e, le).map((n) => {
|
|
44
|
+
const t = n.props;
|
|
45
|
+
return {
|
|
46
|
+
multiple: t.multiple === !0,
|
|
47
|
+
name: t.name,
|
|
48
|
+
required: t.required === !0,
|
|
49
|
+
skippable: t.skippable === !0
|
|
50
|
+
};
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
function ae(e, n) {
|
|
54
|
+
if (!(e != null && e.required)) return !0;
|
|
55
|
+
const t = n[e.name];
|
|
56
|
+
return Array.isArray(t) ? t.length > 0 : (t ?? "").trim().length > 0;
|
|
57
|
+
}
|
|
58
|
+
function Se(e) {
|
|
59
|
+
const {
|
|
60
|
+
children: n,
|
|
61
|
+
className: t,
|
|
62
|
+
defaultAnswers: r,
|
|
63
|
+
defaultStep: o = 0,
|
|
64
|
+
onAnswersChange: s,
|
|
65
|
+
onStepChange: a,
|
|
66
|
+
onSubmit: i,
|
|
67
|
+
shortcuts: p = !1,
|
|
68
|
+
slot: m,
|
|
69
|
+
...h
|
|
70
|
+
} = e, [f, k] = b.useState(r ?? {}), [Q, y] = b.useState(null), g = ie(n), v = B({
|
|
71
|
+
// `|| 1`: zag divides by `count` for `percent`, so an empty questionnaire would paint `NaN%`.
|
|
72
|
+
count: g.length || 1,
|
|
73
|
+
defaultStep: o,
|
|
74
|
+
isStepSkippable: (c) => {
|
|
75
|
+
var u;
|
|
76
|
+
return ((u = g[c]) == null ? void 0 : u.skippable) === !0;
|
|
77
|
+
},
|
|
78
|
+
isStepValid: (c) => ae(g[c], f),
|
|
79
|
+
onStepChange: (c) => {
|
|
80
|
+
y(null), a == null || a(c);
|
|
81
|
+
},
|
|
82
|
+
onStepInvalid: (c) => y(c.step)
|
|
83
|
+
}), S = (c, u) => {
|
|
84
|
+
const x = { ...f, [c]: u };
|
|
85
|
+
y(null), k(x), s == null || s(x);
|
|
86
|
+
}, N = () => {
|
|
87
|
+
const c = v.value;
|
|
88
|
+
if (!v.isStepSkippable(c) && !v.isStepValid(c)) {
|
|
89
|
+
y(c);
|
|
90
|
+
return;
|
|
91
|
+
}
|
|
92
|
+
i == null || i(f);
|
|
93
|
+
}, E = {
|
|
94
|
+
answers: f,
|
|
95
|
+
blocked: Q,
|
|
96
|
+
indexOf: (c) => g.findIndex((u) => u.name === c),
|
|
97
|
+
questions: g,
|
|
98
|
+
setAnswer: S,
|
|
99
|
+
shortcuts: p,
|
|
100
|
+
steps: v
|
|
101
|
+
};
|
|
102
|
+
return /* @__PURE__ */ l(P.Provider, { value: E, children: /* @__PURE__ */ l(
|
|
103
|
+
V.form,
|
|
104
|
+
{
|
|
105
|
+
className: d("flex w-full min-w-0 flex-col gap-4", t),
|
|
106
|
+
noValidate: !0,
|
|
107
|
+
onSubmit: (c) => {
|
|
108
|
+
c.preventDefault(), N();
|
|
109
|
+
},
|
|
110
|
+
...h,
|
|
111
|
+
"data-slot": m ?? "questionnaire",
|
|
112
|
+
children: n
|
|
113
|
+
}
|
|
114
|
+
) });
|
|
115
|
+
}
|
|
116
|
+
const Ce = (e) => {
|
|
117
|
+
const { children: n, className: t, slot: r, ...o } = e, { steps: s } = w(), a = s.value + 1, i = `Question ${a} of ${s.count}`;
|
|
118
|
+
return /* @__PURE__ */ l(
|
|
119
|
+
V.div,
|
|
120
|
+
{
|
|
121
|
+
"aria-live": "polite",
|
|
122
|
+
"aria-valuemax": s.count,
|
|
123
|
+
"aria-valuemin": 1,
|
|
124
|
+
"aria-valuenow": a,
|
|
125
|
+
"aria-valuetext": i,
|
|
126
|
+
className: d(
|
|
127
|
+
"min-h-[1lh] w-fit min-w-[14ch]",
|
|
128
|
+
"font-medium text-muted-foreground text-xs tabular-nums",
|
|
129
|
+
t
|
|
130
|
+
),
|
|
131
|
+
role: "progressbar",
|
|
132
|
+
...o,
|
|
133
|
+
"data-slot": r ?? "questionnaire-progress",
|
|
134
|
+
children: n ?? i
|
|
135
|
+
}
|
|
136
|
+
);
|
|
137
|
+
};
|
|
138
|
+
function le(e) {
|
|
139
|
+
const { children: n, className: t, multiple: r, name: o, required: s, skippable: a, slot: i, ...p } = e, { answers: m, blocked: h, indexOf: f, setAnswer: k, shortcuts: Q, steps: y } = w(), g = f(o), v = g === y.value, S = {
|
|
140
|
+
multiple: r === !0,
|
|
141
|
+
name: o,
|
|
142
|
+
required: s === !0,
|
|
143
|
+
skippable: a === !0
|
|
144
|
+
}, N = ce(n);
|
|
145
|
+
b.useEffect(() => {
|
|
146
|
+
if (!v || !Q || N.length === 0) return;
|
|
147
|
+
const c = (u) => {
|
|
148
|
+
if (u.metaKey || u.ctrlKey || u.altKey) return;
|
|
149
|
+
const x = document.activeElement;
|
|
150
|
+
if (x instanceof HTMLElement && (x.isContentEditable || x.tagName === "TEXTAREA" || x instanceof HTMLInputElement && x.type !== "checkbox" && x.type !== "radio")) return;
|
|
151
|
+
const q = N[Number(u.key) - 1];
|
|
152
|
+
if (q === void 0) return;
|
|
153
|
+
if (u.preventDefault(), !S.multiple) {
|
|
154
|
+
k(o, q);
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
const F = m[o], I = Array.isArray(F) ? F : [];
|
|
158
|
+
k(
|
|
159
|
+
o,
|
|
160
|
+
I.includes(q) ? I.filter((L) => L !== q) : [...I, q]
|
|
161
|
+
);
|
|
162
|
+
};
|
|
163
|
+
return window.addEventListener("keydown", c), () => window.removeEventListener("keydown", c);
|
|
164
|
+
});
|
|
165
|
+
const E = {
|
|
166
|
+
current: v,
|
|
167
|
+
index: g,
|
|
168
|
+
question: S,
|
|
169
|
+
shortcutOf: (c) => {
|
|
170
|
+
const u = N.indexOf(c);
|
|
171
|
+
return Q && u >= 0 && u < 9 ? String(u + 1) : void 0;
|
|
172
|
+
}
|
|
173
|
+
};
|
|
174
|
+
return /* @__PURE__ */ l(R.Provider, { value: E, children: /* @__PURE__ */ l(
|
|
175
|
+
J,
|
|
176
|
+
{
|
|
177
|
+
"aria-current": v ? "step" : void 0,
|
|
178
|
+
className: d("min-w-0 gap-4", t),
|
|
179
|
+
hidden: !v,
|
|
180
|
+
invalid: h === g,
|
|
181
|
+
...p,
|
|
182
|
+
slot: i ?? "questionnaire-item",
|
|
183
|
+
children: n
|
|
184
|
+
}
|
|
185
|
+
) });
|
|
186
|
+
}
|
|
187
|
+
function ce(e) {
|
|
188
|
+
return G(e, ue).map(
|
|
189
|
+
(n) => n.props.value
|
|
190
|
+
);
|
|
191
|
+
}
|
|
192
|
+
const Ae = (e) => {
|
|
193
|
+
const { className: n, slot: t, ...r } = e;
|
|
194
|
+
return /* @__PURE__ */ l(
|
|
195
|
+
U,
|
|
196
|
+
{
|
|
197
|
+
className: d(
|
|
198
|
+
"mb-0 font-heading text-pretty leading-snug",
|
|
199
|
+
"[&:not(:has(~[data-slot=questionnaire-description]))]:mb-4",
|
|
200
|
+
n
|
|
201
|
+
),
|
|
202
|
+
...r,
|
|
203
|
+
slot: t ?? "questionnaire-title"
|
|
204
|
+
}
|
|
205
|
+
);
|
|
206
|
+
}, Ee = (e) => {
|
|
207
|
+
const { className: n, slot: t, ...r } = e;
|
|
208
|
+
return /* @__PURE__ */ l(
|
|
209
|
+
z,
|
|
210
|
+
{
|
|
211
|
+
className: d("text-pretty", n),
|
|
212
|
+
...r,
|
|
213
|
+
slot: t ?? "questionnaire-description"
|
|
214
|
+
}
|
|
215
|
+
);
|
|
216
|
+
}, Ie = (e) => {
|
|
217
|
+
const { children: n, slot: t, ...r } = e;
|
|
218
|
+
return /* @__PURE__ */ l(X, { ...r, slot: t ?? "questionnaire-error", children: n ?? "Answer this to continue." });
|
|
219
|
+
}, Te = (e) => {
|
|
220
|
+
const { children: n, className: t, slot: r, ...o } = e, { answers: s, setAnswer: a } = w(), { question: i } = A(), { multiple: p, name: m } = i, h = s[m];
|
|
221
|
+
return p ? /* @__PURE__ */ l(
|
|
222
|
+
_,
|
|
223
|
+
{
|
|
224
|
+
className: d("gap-2", t),
|
|
225
|
+
onValueChange: (f) => a(m, f),
|
|
226
|
+
value: Array.isArray(h) ? h : [],
|
|
227
|
+
...o,
|
|
228
|
+
slot: r ?? "questionnaire-choices",
|
|
229
|
+
children: n
|
|
230
|
+
}
|
|
231
|
+
) : /* @__PURE__ */ l(
|
|
232
|
+
re,
|
|
233
|
+
{
|
|
234
|
+
className: d("gap-2", t),
|
|
235
|
+
onValueChange: (f) => a(m, f.value ?? ""),
|
|
236
|
+
value: typeof h == "string" ? h : null,
|
|
237
|
+
...o,
|
|
238
|
+
slot: r ?? "questionnaire-choices",
|
|
239
|
+
children: n
|
|
240
|
+
}
|
|
241
|
+
);
|
|
242
|
+
}, j = H({
|
|
243
|
+
base: [
|
|
244
|
+
"group/questionnaire-choice",
|
|
245
|
+
"relative flex w-full min-h-[44px] items-start gap-3",
|
|
246
|
+
"cursor-pointer select-none rounded-lg px-3.5 py-3",
|
|
247
|
+
"text-start text-sm",
|
|
248
|
+
"transition-colors",
|
|
249
|
+
// The control is 16px against a 20px title line, so it drops 2px to sit on that line rather
|
|
250
|
+
// than on the top of a two-line stack.
|
|
251
|
+
"*:data-[slot=checkbox-control]:mt-0.5 *:data-[slot=radio-group-indicator]:mt-0.5"
|
|
252
|
+
],
|
|
253
|
+
variants: {
|
|
254
|
+
shell: {
|
|
255
|
+
true: [
|
|
256
|
+
"border border-input bg-transparent",
|
|
257
|
+
"hover:bg-foreground/14",
|
|
258
|
+
"data-[state=checked]:border-primary data-[state=checked]:bg-primary/17",
|
|
259
|
+
"data-focus-visible:border-primary data-focus-visible:ring-[3px] data-focus-visible:ring-ring",
|
|
260
|
+
"data-invalid:border-destructive",
|
|
261
|
+
"data-disabled:pointer-events-none data-disabled:opacity-64",
|
|
262
|
+
// See the docblock: the control is the last thing in the row, and `Checkbox` renders it
|
|
263
|
+
// first.
|
|
264
|
+
"*:data-[slot=checkbox-control]:order-last"
|
|
265
|
+
]
|
|
266
|
+
}
|
|
267
|
+
},
|
|
268
|
+
defaultVariants: {
|
|
269
|
+
shell: !1
|
|
270
|
+
}
|
|
271
|
+
}), ue = (e) => {
|
|
272
|
+
const { children: n, className: t, description: r, slot: o, value: s, ...a } = e, { question: i, shortcutOf: p } = A(), m = p(s), h = b.useId(), f = /* @__PURE__ */ T(D, { children: [
|
|
273
|
+
/* @__PURE__ */ T(Y, { slot: "questionnaire-choice-label", children: [
|
|
274
|
+
i.multiple ? /* @__PURE__ */ l($, { id: h, slot: "questionnaire-choice-title", children: n }) : /* @__PURE__ */ l(te, { slot: "questionnaire-choice-title", children: n }),
|
|
275
|
+
r ? /* @__PURE__ */ l(Z, { slot: "questionnaire-choice-description", children: r }) : null
|
|
276
|
+
] }),
|
|
277
|
+
m ? /* @__PURE__ */ l(
|
|
278
|
+
ee,
|
|
279
|
+
{
|
|
280
|
+
"aria-hidden": !0,
|
|
281
|
+
className: "mt-0.5 size-5 shrink-0 rounded-md bg-transparent text-muted-foreground",
|
|
282
|
+
variant: "outline",
|
|
283
|
+
children: m
|
|
284
|
+
}
|
|
285
|
+
) : null
|
|
286
|
+
] });
|
|
287
|
+
return i.multiple ? /* @__PURE__ */ l(
|
|
288
|
+
M,
|
|
289
|
+
{
|
|
290
|
+
"aria-labelledby": h,
|
|
291
|
+
className: d(j({ shell: !0 }), t),
|
|
292
|
+
value: s,
|
|
293
|
+
...a,
|
|
294
|
+
slot: o ?? "questionnaire-choice",
|
|
295
|
+
children: f
|
|
296
|
+
}
|
|
297
|
+
) : /* @__PURE__ */ T(
|
|
298
|
+
ne,
|
|
299
|
+
{
|
|
300
|
+
className: d(j(), t),
|
|
301
|
+
value: s,
|
|
302
|
+
...a,
|
|
303
|
+
slot: o ?? "questionnaire-choice",
|
|
304
|
+
children: [
|
|
305
|
+
f,
|
|
306
|
+
/* @__PURE__ */ l(se, {})
|
|
307
|
+
]
|
|
308
|
+
}
|
|
309
|
+
);
|
|
310
|
+
}, K = "[[data-slot=questionnaire-choices]+&]:-mt-2", Ve = (e) => {
|
|
311
|
+
const { className: n, slot: t, ...r } = e, { answers: o, setAnswer: s } = w(), { question: a } = A(), i = O(), p = o[a.name];
|
|
312
|
+
return /* @__PURE__ */ l(
|
|
313
|
+
W,
|
|
314
|
+
{
|
|
315
|
+
"aria-labelledby": i == null ? void 0 : i.ids.legend,
|
|
316
|
+
className: d(K, n),
|
|
317
|
+
onChange: (m) => s(a.name, m.target.value),
|
|
318
|
+
value: typeof p == "string" ? p : "",
|
|
319
|
+
...r,
|
|
320
|
+
slot: t ?? "questionnaire-input"
|
|
321
|
+
}
|
|
322
|
+
);
|
|
323
|
+
}, Fe = (e) => {
|
|
324
|
+
const { className: n, slot: t, ...r } = e, { answers: o, setAnswer: s } = w(), { question: a } = A(), i = O(), p = o[a.name];
|
|
325
|
+
return /* @__PURE__ */ l(
|
|
326
|
+
oe,
|
|
327
|
+
{
|
|
328
|
+
"aria-labelledby": i == null ? void 0 : i.ids.legend,
|
|
329
|
+
className: d(K, n),
|
|
330
|
+
onChange: (m) => s(a.name, m.target.value),
|
|
331
|
+
value: typeof p == "string" ? p : "",
|
|
332
|
+
...r,
|
|
333
|
+
slot: t ?? "questionnaire-textarea"
|
|
334
|
+
}
|
|
335
|
+
);
|
|
336
|
+
}, je = (e) => {
|
|
337
|
+
const { "aria-label": n = "Questionnaire navigation", className: t, slot: r, ...o } = e;
|
|
338
|
+
return /* @__PURE__ */ l(
|
|
339
|
+
V.div,
|
|
340
|
+
{
|
|
341
|
+
"aria-label": n,
|
|
342
|
+
className: d(
|
|
343
|
+
"grid w-full grid-cols-[minmax(0,1fr)_auto_auto] items-center gap-2",
|
|
344
|
+
t
|
|
345
|
+
),
|
|
346
|
+
role: "group",
|
|
347
|
+
...o,
|
|
348
|
+
"data-slot": r ?? "questionnaire-actions"
|
|
349
|
+
}
|
|
350
|
+
);
|
|
351
|
+
}, Oe = (e) => {
|
|
352
|
+
const { children: n, className: t, slot: r, ...o } = e, { steps: s } = w();
|
|
353
|
+
return s.hasPrevStep ? /* @__PURE__ */ l(
|
|
354
|
+
C,
|
|
355
|
+
{
|
|
356
|
+
className: d("col-start-1 row-start-1 justify-self-start", t),
|
|
357
|
+
onClick: () => s.goToPrevStep(),
|
|
358
|
+
variant: "outline",
|
|
359
|
+
...o,
|
|
360
|
+
slot: r ?? "questionnaire-previous",
|
|
361
|
+
children: n ?? "Back"
|
|
362
|
+
}
|
|
363
|
+
) : null;
|
|
364
|
+
}, Pe = (e) => {
|
|
365
|
+
var i;
|
|
366
|
+
const { children: n, className: t, slot: r, ...o } = e, { questions: s, steps: a } = w();
|
|
367
|
+
return ((i = s[a.value]) == null ? void 0 : i.skippable) !== !0 ? null : /* @__PURE__ */ l(
|
|
368
|
+
C,
|
|
369
|
+
{
|
|
370
|
+
className: d("col-start-2 row-start-1 justify-self-end", t),
|
|
371
|
+
onClick: () => a.goToNextStep(),
|
|
372
|
+
variant: "ghost",
|
|
373
|
+
...o,
|
|
374
|
+
slot: r ?? "questionnaire-skip",
|
|
375
|
+
children: n ?? "Skip"
|
|
376
|
+
}
|
|
377
|
+
);
|
|
378
|
+
}, Re = (e) => {
|
|
379
|
+
const { children: n, className: t, slot: r, ...o } = e, { steps: s } = w();
|
|
380
|
+
return s.value >= s.count - 1 ? null : /* @__PURE__ */ l(
|
|
381
|
+
C,
|
|
382
|
+
{
|
|
383
|
+
className: d("col-start-3 row-start-1 justify-self-end", t),
|
|
384
|
+
onClick: () => s.goToNextStep(),
|
|
385
|
+
...o,
|
|
386
|
+
slot: r ?? "questionnaire-next",
|
|
387
|
+
children: n ?? "Next"
|
|
388
|
+
}
|
|
389
|
+
);
|
|
390
|
+
}, Ge = (e) => {
|
|
391
|
+
const { children: n, className: t, slot: r, ...o } = e, { steps: s } = w();
|
|
392
|
+
return s.value < s.count - 1 ? null : /* @__PURE__ */ l(
|
|
393
|
+
C,
|
|
394
|
+
{
|
|
395
|
+
className: d("col-start-3 row-start-1 justify-self-end", t),
|
|
396
|
+
type: "submit",
|
|
397
|
+
...o,
|
|
398
|
+
slot: r ?? "questionnaire-submit",
|
|
399
|
+
children: n ?? "Submit"
|
|
400
|
+
}
|
|
401
|
+
);
|
|
402
|
+
};
|
|
403
|
+
export {
|
|
404
|
+
Se as Questionnaire,
|
|
405
|
+
je as QuestionnaireActions,
|
|
406
|
+
ue as QuestionnaireChoice,
|
|
407
|
+
Te as QuestionnaireChoices,
|
|
408
|
+
Ee as QuestionnaireDescription,
|
|
409
|
+
Ie as QuestionnaireError,
|
|
410
|
+
Ve as QuestionnaireInput,
|
|
411
|
+
le as QuestionnaireItem,
|
|
412
|
+
Re as QuestionnaireNext,
|
|
413
|
+
Oe as QuestionnairePrevious,
|
|
414
|
+
Ce as QuestionnaireProgress,
|
|
415
|
+
Pe as QuestionnaireSkip,
|
|
416
|
+
Ge as QuestionnaireSubmit,
|
|
417
|
+
Fe as QuestionnaireTextarea,
|
|
418
|
+
Ae as QuestionnaireTitle,
|
|
419
|
+
w as useQuestionnaire,
|
|
420
|
+
A as useQuestionnaireItem
|
|
421
|
+
};
|
|
422
|
+
//# sourceMappingURL=Questionnaire.js.map
|