@hanzo/ui 8.27.90 → 8.28.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/NOTICE +25 -0
- package/README.md +1 -1
- package/dist/backends/gui/alert-dialog.cjs +24 -6
- package/dist/backends/gui/alert-dialog.d.ts +11 -3
- package/dist/backends/gui/alert-dialog.d.ts.map +1 -1
- package/dist/backends/gui/alert-dialog.js +24 -6
- package/dist/backends/gui/alert-dialog.js.map +1 -1
- package/dist/backends/gui/alert.cjs +32 -1
- package/dist/backends/gui/alert.d.ts +36 -3
- package/dist/backends/gui/alert.d.ts.map +1 -1
- package/dist/backends/gui/alert.js +32 -2
- package/dist/backends/gui/alert.js.map +1 -1
- package/dist/backends/gui/avatar-group.cjs +28 -0
- package/dist/backends/gui/avatar-group.d.ts +33 -0
- package/dist/backends/gui/avatar-group.d.ts.map +1 -0
- package/dist/backends/gui/avatar-group.js +26 -0
- package/dist/backends/gui/avatar-group.js.map +1 -0
- package/dist/backends/gui/avatar.cjs +53 -3
- package/dist/backends/gui/avatar.d.ts +46 -4
- package/dist/backends/gui/avatar.d.ts.map +1 -1
- package/dist/backends/gui/avatar.js +52 -3
- package/dist/backends/gui/avatar.js.map +1 -1
- package/dist/backends/gui/badge.cjs +40 -2
- package/dist/backends/gui/badge.d.ts +7 -2
- package/dist/backends/gui/badge.d.ts.map +1 -1
- package/dist/backends/gui/badge.js +40 -2
- package/dist/backends/gui/badge.js.map +1 -1
- package/dist/backends/gui/banner.cjs +40 -1
- package/dist/backends/gui/banner.d.ts +36 -3
- package/dist/backends/gui/banner.d.ts.map +1 -1
- package/dist/backends/gui/banner.js +42 -4
- package/dist/backends/gui/banner.js.map +1 -1
- package/dist/backends/gui/breadcrumb.cjs +28 -10
- package/dist/backends/gui/breadcrumb.d.ts +20 -11
- package/dist/backends/gui/breadcrumb.d.ts.map +1 -1
- package/dist/backends/gui/breadcrumb.js +28 -10
- package/dist/backends/gui/breadcrumb.js.map +1 -1
- package/dist/backends/gui/button-group.cjs +43 -0
- package/dist/backends/gui/button-group.d.ts +48 -0
- package/dist/backends/gui/button-group.d.ts.map +1 -0
- package/dist/backends/gui/button-group.js +40 -0
- package/dist/backends/gui/button-group.js.map +1 -0
- package/dist/backends/gui/button.cjs +177 -4
- package/dist/backends/gui/button.d.ts +69 -4
- package/dist/backends/gui/button.d.ts.map +1 -1
- package/dist/backends/gui/button.js +179 -6
- package/dist/backends/gui/button.js.map +1 -1
- package/dist/backends/gui/card.cjs +50 -21
- package/dist/backends/gui/card.d.ts +16 -7
- package/dist/backends/gui/card.d.ts.map +1 -1
- package/dist/backends/gui/card.js +50 -21
- package/dist/backends/gui/card.js.map +1 -1
- package/dist/backends/gui/checkbox.cjs +86 -14
- package/dist/backends/gui/checkbox.d.ts +30 -2
- package/dist/backends/gui/checkbox.d.ts.map +1 -1
- package/dist/backends/gui/checkbox.js +87 -15
- package/dist/backends/gui/checkbox.js.map +1 -1
- package/dist/backends/gui/chip.cjs +51 -0
- package/dist/backends/gui/chip.d.ts +47 -0
- package/dist/backends/gui/chip.d.ts.map +1 -0
- package/dist/backends/gui/chip.js +49 -0
- package/dist/backends/gui/chip.js.map +1 -0
- package/dist/backends/gui/choice.cjs +18 -3
- package/dist/backends/gui/choice.d.ts +10 -2
- package/dist/backends/gui/choice.d.ts.map +1 -1
- package/dist/backends/gui/choice.js +19 -4
- package/dist/backends/gui/choice.js.map +1 -1
- package/dist/backends/gui/code-editor.cjs +16 -5
- package/dist/backends/gui/code-editor.d.ts +18 -1
- package/dist/backends/gui/code-editor.d.ts.map +1 -1
- package/dist/backends/gui/code-editor.js +16 -5
- package/dist/backends/gui/code-editor.js.map +1 -1
- package/dist/backends/gui/color-sample.cjs +24 -0
- package/dist/backends/gui/color-sample.d.ts +23 -0
- package/dist/backends/gui/color-sample.d.ts.map +1 -0
- package/dist/backends/gui/color-sample.js +22 -0
- package/dist/backends/gui/color-sample.js.map +1 -0
- package/dist/backends/gui/control.cjs +5 -3
- package/dist/backends/gui/control.d.ts +13 -3
- package/dist/backends/gui/control.d.ts.map +1 -1
- package/dist/backends/gui/control.js +5 -3
- package/dist/backends/gui/control.js.map +1 -1
- package/dist/backends/gui/country-select.cjs +69 -0
- package/dist/backends/gui/country-select.d.ts +30 -0
- package/dist/backends/gui/country-select.d.ts.map +1 -0
- package/dist/backends/gui/country-select.js +67 -0
- package/dist/backends/gui/country-select.js.map +1 -0
- package/dist/backends/gui/currency-picker.cjs +48 -0
- package/dist/backends/gui/currency-picker.d.ts +37 -0
- package/dist/backends/gui/currency-picker.d.ts.map +1 -0
- package/dist/backends/gui/currency-picker.js +46 -0
- package/dist/backends/gui/currency-picker.js.map +1 -0
- package/dist/backends/gui/density.cjs +32 -0
- package/dist/backends/gui/density.d.ts +27 -0
- package/dist/backends/gui/density.d.ts.map +1 -0
- package/dist/backends/gui/density.js +27 -0
- package/dist/backends/gui/density.js.map +1 -0
- package/dist/backends/gui/dialog.cjs +65 -7
- package/dist/backends/gui/dialog.d.ts +68 -3
- package/dist/backends/gui/dialog.d.ts.map +1 -1
- package/dist/backends/gui/dialog.js +63 -7
- package/dist/backends/gui/dialog.js.map +1 -1
- package/dist/backends/gui/dropdown-menu.cjs +361 -31
- package/dist/backends/gui/dropdown-menu.d.ts +151 -15
- package/dist/backends/gui/dropdown-menu.d.ts.map +1 -1
- package/dist/backends/gui/dropdown-menu.js +353 -34
- package/dist/backends/gui/dropdown-menu.js.map +1 -1
- package/dist/backends/gui/feedback.cjs +78 -0
- package/dist/backends/gui/feedback.d.ts +46 -0
- package/dist/backends/gui/feedback.d.ts.map +1 -0
- package/dist/backends/gui/feedback.js +74 -0
- package/dist/backends/gui/feedback.js.map +1 -0
- package/dist/backends/gui/field.cjs +71 -14
- package/dist/backends/gui/field.d.ts +43 -3
- package/dist/backends/gui/field.d.ts.map +1 -1
- package/dist/backends/gui/field.js +69 -14
- package/dist/backends/gui/field.js.map +1 -1
- package/dist/backends/gui/flag.cjs +17 -0
- package/dist/backends/gui/flag.d.ts +9 -0
- package/dist/backends/gui/flag.d.ts.map +1 -0
- package/dist/backends/gui/flag.js +14 -0
- package/dist/backends/gui/flag.js.map +1 -0
- package/dist/backends/gui/grip.cjs +35 -3
- package/dist/backends/gui/grip.d.ts +16 -1
- package/dist/backends/gui/grip.d.ts.map +1 -1
- package/dist/backends/gui/grip.js +35 -3
- package/dist/backends/gui/grip.js.map +1 -1
- package/dist/backends/gui/heading.cjs +27 -0
- package/dist/backends/gui/heading.d.ts +8 -0
- package/dist/backends/gui/heading.d.ts.map +1 -0
- package/dist/backends/gui/heading.js +25 -0
- package/dist/backends/gui/heading.js.map +1 -0
- package/dist/backends/gui/hue.cjs +49 -0
- package/dist/backends/gui/hue.d.ts +18 -0
- package/dist/backends/gui/hue.d.ts.map +1 -0
- package/dist/backends/gui/hue.js +43 -0
- package/dist/backends/gui/hue.js.map +1 -0
- package/dist/backends/gui/icon-tile.cjs +36 -0
- package/dist/backends/gui/icon-tile.d.ts +26 -0
- package/dist/backends/gui/icon-tile.d.ts.map +1 -0
- package/dist/backends/gui/icon-tile.js +32 -0
- package/dist/backends/gui/icon-tile.js.map +1 -0
- package/dist/backends/gui/image-input.cjs +78 -0
- package/dist/backends/gui/image-input.d.ts +32 -0
- package/dist/backends/gui/image-input.d.ts.map +1 -0
- package/dist/backends/gui/image-input.js +74 -0
- package/dist/backends/gui/image-input.js.map +1 -0
- package/dist/backends/gui/index.cjs +93 -7
- package/dist/backends/gui/index.d.ts +45 -2
- package/dist/backends/gui/index.d.ts.map +1 -1
- package/dist/backends/gui/index.js +35 -1
- package/dist/backends/gui/index.js.map +1 -1
- package/dist/backends/gui/input-group.cjs +49 -0
- package/dist/backends/gui/input-group.d.ts +46 -0
- package/dist/backends/gui/input-group.d.ts.map +1 -0
- package/dist/backends/gui/input-group.js +46 -0
- package/dist/backends/gui/input-group.js.map +1 -0
- package/dist/backends/gui/input.cjs +32 -4
- package/dist/backends/gui/input.d.ts +5 -1
- package/dist/backends/gui/input.d.ts.map +1 -1
- package/dist/backends/gui/input.js +33 -5
- package/dist/backends/gui/input.js.map +1 -1
- package/dist/backends/gui/item.cjs +34 -2
- package/dist/backends/gui/item.d.ts +21 -5
- package/dist/backends/gui/item.d.ts.map +1 -1
- package/dist/backends/gui/item.js +35 -3
- package/dist/backends/gui/item.js.map +1 -1
- package/dist/backends/gui/json-tree.cjs +103 -15
- package/dist/backends/gui/json-tree.d.ts +39 -3
- package/dist/backends/gui/json-tree.d.ts.map +1 -1
- package/dist/backends/gui/json-tree.js +104 -16
- package/dist/backends/gui/json-tree.js.map +1 -1
- package/dist/backends/gui/kbd.cjs +18 -2
- package/dist/backends/gui/kbd.d.ts +5 -2
- package/dist/backends/gui/kbd.d.ts.map +1 -1
- package/dist/backends/gui/kbd.js +18 -2
- package/dist/backends/gui/kbd.js.map +1 -1
- package/dist/backends/gui/label.cjs +14 -3
- package/dist/backends/gui/label.d.ts +12 -3
- package/dist/backends/gui/label.d.ts.map +1 -1
- package/dist/backends/gui/label.js +14 -3
- package/dist/backends/gui/label.js.map +1 -1
- package/dist/backends/gui/layout.cjs +5 -1
- package/dist/backends/gui/layout.d.ts +1 -1
- package/dist/backends/gui/layout.d.ts.map +1 -1
- package/dist/backends/gui/layout.js +5 -1
- package/dist/backends/gui/layout.js.map +1 -1
- package/dist/backends/gui/number-field.cjs +163 -0
- package/dist/backends/gui/number-field.d.ts +34 -0
- package/dist/backends/gui/number-field.d.ts.map +1 -0
- package/dist/backends/gui/number-field.js +160 -0
- package/dist/backends/gui/number-field.js.map +1 -0
- package/dist/backends/gui/overflowing-list.cjs +79 -0
- package/dist/backends/gui/overflowing-list.d.ts +42 -0
- package/dist/backends/gui/overflowing-list.d.ts.map +1 -0
- package/dist/backends/gui/overflowing-list.js +76 -0
- package/dist/backends/gui/overflowing-list.js.map +1 -0
- package/dist/backends/gui/phone-country-picker.cjs +60 -0
- package/dist/backends/gui/phone-country-picker.d.ts +34 -0
- package/dist/backends/gui/phone-country-picker.d.ts.map +1 -0
- package/dist/backends/gui/phone-country-picker.js +57 -0
- package/dist/backends/gui/phone-country-picker.js.map +1 -0
- package/dist/backends/gui/popover.cjs +20 -4
- package/dist/backends/gui/popover.d.ts +12 -1
- package/dist/backends/gui/popover.d.ts.map +1 -1
- package/dist/backends/gui/popover.js +21 -5
- package/dist/backends/gui/popover.js.map +1 -1
- package/dist/backends/gui/progress-ring.cjs +38 -0
- package/dist/backends/gui/progress-ring.d.ts +37 -0
- package/dist/backends/gui/progress-ring.d.ts.map +1 -0
- package/dist/backends/gui/progress-ring.js +36 -0
- package/dist/backends/gui/progress-ring.js.map +1 -0
- package/dist/backends/gui/progress.cjs +31 -7
- package/dist/backends/gui/progress.d.ts +25 -3
- package/dist/backends/gui/progress.d.ts.map +1 -1
- package/dist/backends/gui/progress.js +32 -8
- package/dist/backends/gui/progress.js.map +1 -1
- package/dist/backends/gui/radio-group.cjs +28 -2
- package/dist/backends/gui/radio-group.d.ts +20 -2
- package/dist/backends/gui/radio-group.d.ts.map +1 -1
- package/dist/backends/gui/radio-group.js +28 -2
- package/dist/backends/gui/radio-group.js.map +1 -1
- package/dist/backends/gui/search-list.cjs +62 -0
- package/dist/backends/gui/search-list.d.ts +65 -0
- package/dist/backends/gui/search-list.d.ts.map +1 -0
- package/dist/backends/gui/search-list.js +58 -0
- package/dist/backends/gui/search-list.js.map +1 -0
- package/dist/backends/gui/select.cjs +50 -16
- package/dist/backends/gui/select.d.ts +12 -3
- package/dist/backends/gui/select.d.ts.map +1 -1
- package/dist/backends/gui/select.js +51 -17
- package/dist/backends/gui/select.js.map +1 -1
- package/dist/backends/gui/shortcut.cjs +122 -0
- package/dist/backends/gui/shortcut.d.ts +58 -0
- package/dist/backends/gui/shortcut.d.ts.map +1 -0
- package/dist/backends/gui/shortcut.js +115 -0
- package/dist/backends/gui/shortcut.js.map +1 -0
- package/dist/backends/gui/skeleton.cjs +41 -10
- package/dist/backends/gui/skeleton.d.ts +46 -8
- package/dist/backends/gui/skeleton.d.ts.map +1 -1
- package/dist/backends/gui/skeleton.js +39 -8
- package/dist/backends/gui/skeleton.js.map +1 -1
- package/dist/backends/gui/snippet.cjs +12 -1
- package/dist/backends/gui/snippet.d.ts +4 -2
- package/dist/backends/gui/snippet.d.ts.map +1 -1
- package/dist/backends/gui/snippet.js +12 -1
- package/dist/backends/gui/snippet.js.map +1 -1
- package/dist/backends/gui/spinner.cjs +8 -1
- package/dist/backends/gui/spinner.d.ts +11 -2
- package/dist/backends/gui/spinner.d.ts.map +1 -1
- package/dist/backends/gui/spinner.js +9 -2
- package/dist/backends/gui/spinner.js.map +1 -1
- package/dist/backends/gui/stack-icon.cjs +17 -0
- package/dist/backends/gui/stack-icon.d.ts +15 -0
- package/dist/backends/gui/stack-icon.d.ts.map +1 -0
- package/dist/backends/gui/stack-icon.js +15 -0
- package/dist/backends/gui/stack-icon.js.map +1 -0
- package/dist/backends/gui/status.cjs +38 -1
- package/dist/backends/gui/status.d.ts +16 -2
- package/dist/backends/gui/status.d.ts.map +1 -1
- package/dist/backends/gui/status.js +38 -2
- package/dist/backends/gui/status.js.map +1 -1
- package/dist/backends/gui/stepper.cjs +73 -3
- package/dist/backends/gui/stepper.d.ts +25 -1
- package/dist/backends/gui/stepper.d.ts.map +1 -1
- package/dist/backends/gui/stepper.js +71 -5
- package/dist/backends/gui/stepper.js.map +1 -1
- package/dist/backends/gui/switch.cjs +35 -20
- package/dist/backends/gui/switch.d.ts +12 -2
- package/dist/backends/gui/switch.d.ts.map +1 -1
- package/dist/backends/gui/switch.js +35 -20
- package/dist/backends/gui/switch.js.map +1 -1
- package/dist/backends/gui/tabs.cjs +63 -17
- package/dist/backends/gui/tabs.d.ts +35 -6
- package/dist/backends/gui/tabs.d.ts.map +1 -1
- package/dist/backends/gui/tabs.js +65 -19
- package/dist/backends/gui/tabs.js.map +1 -1
- package/dist/backends/gui/tag.cjs +48 -0
- package/dist/backends/gui/tag.d.ts +53 -0
- package/dist/backends/gui/tag.d.ts.map +1 -0
- package/dist/backends/gui/tag.js +46 -0
- package/dist/backends/gui/tag.js.map +1 -0
- package/dist/backends/gui/tags.cjs +9 -2
- package/dist/backends/gui/tags.d.ts +6 -5
- package/dist/backends/gui/tags.d.ts.map +1 -1
- package/dist/backends/gui/tags.js +9 -2
- package/dist/backends/gui/tags.js.map +1 -1
- package/dist/backends/gui/textarea.cjs +22 -6
- package/dist/backends/gui/textarea.d.ts +10 -1
- package/dist/backends/gui/textarea.d.ts.map +1 -1
- package/dist/backends/gui/textarea.js +22 -6
- package/dist/backends/gui/textarea.js.map +1 -1
- package/dist/backends/gui/toaster.cjs +167 -3
- package/dist/backends/gui/toaster.d.ts +28 -2
- package/dist/backends/gui/toaster.d.ts.map +1 -1
- package/dist/backends/gui/toaster.js +167 -5
- package/dist/backends/gui/toaster.js.map +1 -1
- package/dist/backends/gui/toggle-group.cjs +13 -0
- package/dist/backends/gui/toggle-group.d.ts +7 -1
- package/dist/backends/gui/toggle-group.d.ts.map +1 -1
- package/dist/backends/gui/toggle-group.js +13 -0
- package/dist/backends/gui/toggle-group.js.map +1 -1
- package/dist/backends/gui/tooltip.cjs +29 -6
- package/dist/backends/gui/tooltip.d.ts +23 -4
- package/dist/backends/gui/tooltip.d.ts.map +1 -1
- package/dist/backends/gui/tooltip.js +31 -8
- package/dist/backends/gui/tooltip.js.map +1 -1
- package/dist/backends/gui/truncated-text.cjs +102 -0
- package/dist/backends/gui/truncated-text.d.ts +55 -0
- package/dist/backends/gui/truncated-text.d.ts.map +1 -0
- package/dist/backends/gui/truncated-text.js +97 -0
- package/dist/backends/gui/truncated-text.js.map +1 -0
- package/dist/gallery/compound.cjs +60 -0
- package/dist/gallery/compound.d.ts +2 -0
- package/dist/gallery/compound.d.ts.map +1 -0
- package/dist/gallery/compound.js +58 -0
- package/dist/gallery/compound.js.map +1 -0
- package/dist/gallery/display.cjs +47 -0
- package/dist/gallery/display.d.ts +3 -0
- package/dist/gallery/display.d.ts.map +1 -0
- package/dist/gallery/display.js +45 -0
- package/dist/gallery/display.js.map +1 -0
- package/dist/gallery/feedback.cjs +38 -0
- package/dist/gallery/feedback.d.ts +2 -0
- package/dist/gallery/feedback.d.ts.map +1 -0
- package/dist/gallery/feedback.js +36 -0
- package/dist/gallery/feedback.js.map +1 -0
- package/dist/gallery/fields.cjs +53 -0
- package/dist/gallery/fields.d.ts +2 -0
- package/dist/gallery/fields.d.ts.map +1 -0
- package/dist/gallery/fields.js +51 -0
- package/dist/gallery/fields.js.map +1 -0
- package/dist/gallery/frames.cjs +47 -0
- package/dist/gallery/frames.d.ts +2 -0
- package/dist/gallery/frames.d.ts.map +1 -0
- package/dist/gallery/frames.js +45 -0
- package/dist/gallery/frames.js.map +1 -0
- package/dist/gallery/menus.cjs +64 -0
- package/dist/gallery/menus.d.ts +15 -0
- package/dist/gallery/menus.d.ts.map +1 -0
- package/dist/gallery/menus.js +58 -0
- package/dist/gallery/menus.js.map +1 -0
- package/dist/gallery/records.cjs +33 -0
- package/dist/gallery/records.d.ts +2 -0
- package/dist/gallery/records.d.ts.map +1 -0
- package/dist/gallery/records.js +31 -0
- package/dist/gallery/records.js.map +1 -0
- package/dist/gallery/section.cjs +17 -0
- package/dist/gallery/section.d.ts +10 -0
- package/dist/gallery/section.d.ts.map +1 -0
- package/dist/gallery/section.js +14 -0
- package/dist/gallery/section.js.map +1 -0
- package/dist/gallery.cjs +8 -14
- package/dist/gallery.d.ts.map +1 -1
- package/dist/gallery.html +1613 -265
- package/dist/gallery.js +3 -9
- package/dist/gallery.js.map +1 -1
- package/dist/gui-config.cjs +37 -7
- package/dist/gui-config.d.ts +11 -3
- package/dist/gui-config.d.ts.map +1 -1
- package/dist/gui-config.js +37 -7
- package/dist/gui-config.js.map +1 -1
- package/dist/index.cjs +61 -2
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -1
- package/dist/index.js.map +1 -1
- package/dist/index.node.cjs +61 -2
- package/dist/index.node.js +7 -1
- package/dist/motion.cjs +25 -1
- package/dist/motion.d.ts +16 -1
- package/dist/motion.d.ts.map +1 -1
- package/dist/motion.js +24 -1
- package/dist/motion.js.map +1 -1
- package/dist/primitives/AvatarGroup.cjs +8 -0
- package/dist/primitives/AvatarGroup.d.ts +2 -0
- package/dist/primitives/AvatarGroup.d.ts.map +1 -0
- package/dist/primitives/AvatarGroup.js +5 -0
- package/dist/primitives/AvatarGroup.js.map +1 -0
- package/dist/primitives/BannerAction.cjs +8 -0
- package/dist/primitives/BannerAction.d.ts +2 -0
- package/dist/primitives/BannerAction.d.ts.map +1 -0
- package/dist/primitives/BannerAction.js +5 -0
- package/dist/primitives/BannerAction.js.map +1 -0
- package/dist/primitives/ButtonGroup.cjs +8 -0
- package/dist/primitives/ButtonGroup.d.ts +2 -0
- package/dist/primitives/ButtonGroup.d.ts.map +1 -0
- package/dist/primitives/ButtonGroup.js +5 -0
- package/dist/primitives/ButtonGroup.js.map +1 -0
- package/dist/primitives/ButtonGroupContext.cjs +8 -0
- package/dist/primitives/ButtonGroupContext.d.ts +2 -0
- package/dist/primitives/ButtonGroupContext.d.ts.map +1 -0
- package/dist/primitives/ButtonGroupContext.js +5 -0
- package/dist/primitives/ButtonGroupContext.js.map +1 -0
- package/dist/primitives/CalloutAction.cjs +8 -0
- package/dist/primitives/CalloutAction.d.ts +2 -0
- package/dist/primitives/CalloutAction.d.ts.map +1 -0
- package/dist/primitives/CalloutAction.js +5 -0
- package/dist/primitives/CalloutAction.js.map +1 -0
- package/dist/primitives/Chip.cjs +8 -0
- package/dist/primitives/Chip.d.ts +2 -0
- package/dist/primitives/Chip.d.ts.map +1 -0
- package/dist/primitives/Chip.js +5 -0
- package/dist/primitives/Chip.js.map +1 -0
- package/dist/primitives/ColorSample.cjs +8 -0
- package/dist/primitives/ColorSample.d.ts +2 -0
- package/dist/primitives/ColorSample.d.ts.map +1 -0
- package/dist/primitives/ColorSample.js +5 -0
- package/dist/primitives/ColorSample.js.map +1 -0
- package/dist/primitives/CountrySelect.cjs +8 -0
- package/dist/primitives/CountrySelect.d.ts +2 -0
- package/dist/primitives/CountrySelect.d.ts.map +1 -0
- package/dist/primitives/CountrySelect.js +5 -0
- package/dist/primitives/CountrySelect.js.map +1 -0
- package/dist/primitives/CurrencyPicker.cjs +8 -0
- package/dist/primitives/CurrencyPicker.d.ts +2 -0
- package/dist/primitives/CurrencyPicker.d.ts.map +1 -0
- package/dist/primitives/CurrencyPicker.js +5 -0
- package/dist/primitives/CurrencyPicker.js.map +1 -0
- package/dist/primitives/Density.cjs +8 -0
- package/dist/primitives/Density.d.ts +2 -0
- package/dist/primitives/Density.d.ts.map +1 -0
- package/dist/primitives/Density.js +5 -0
- package/dist/primitives/Density.js.map +1 -0
- package/dist/primitives/DialogBody.cjs +8 -0
- package/dist/primitives/DialogBody.d.ts +2 -0
- package/dist/primitives/DialogBody.d.ts.map +1 -0
- package/dist/primitives/DialogBody.js +5 -0
- package/dist/primitives/DialogBody.js.map +1 -0
- package/dist/primitives/DropdownMenuBack.cjs +8 -0
- package/dist/primitives/DropdownMenuBack.d.ts +2 -0
- package/dist/primitives/DropdownMenuBack.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuBack.js +5 -0
- package/dist/primitives/DropdownMenuBack.js.map +1 -0
- package/dist/primitives/DropdownMenuClose.cjs +8 -0
- package/dist/primitives/DropdownMenuClose.d.ts +2 -0
- package/dist/primitives/DropdownMenuClose.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuClose.js +5 -0
- package/dist/primitives/DropdownMenuClose.js.map +1 -0
- package/dist/primitives/DropdownMenuEmpty.cjs +8 -0
- package/dist/primitives/DropdownMenuEmpty.d.ts +2 -0
- package/dist/primitives/DropdownMenuEmpty.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuEmpty.js +5 -0
- package/dist/primitives/DropdownMenuEmpty.js.map +1 -0
- package/dist/primitives/DropdownMenuHeader.cjs +8 -0
- package/dist/primitives/DropdownMenuHeader.d.ts +2 -0
- package/dist/primitives/DropdownMenuHeader.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuHeader.js +5 -0
- package/dist/primitives/DropdownMenuHeader.js.map +1 -0
- package/dist/primitives/DropdownMenuLoading.cjs +8 -0
- package/dist/primitives/DropdownMenuLoading.d.ts +2 -0
- package/dist/primitives/DropdownMenuLoading.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuLoading.js +5 -0
- package/dist/primitives/DropdownMenuLoading.js.map +1 -0
- package/dist/primitives/DropdownMenuOptionItem.cjs +8 -0
- package/dist/primitives/DropdownMenuOptionItem.d.ts +2 -0
- package/dist/primitives/DropdownMenuOptionItem.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuOptionItem.js +5 -0
- package/dist/primitives/DropdownMenuOptionItem.js.map +1 -0
- package/dist/primitives/DropdownMenuPage.cjs +8 -0
- package/dist/primitives/DropdownMenuPage.d.ts +2 -0
- package/dist/primitives/DropdownMenuPage.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuPage.js +5 -0
- package/dist/primitives/DropdownMenuPage.js.map +1 -0
- package/dist/primitives/DropdownMenuSearch.cjs +8 -0
- package/dist/primitives/DropdownMenuSearch.d.ts +2 -0
- package/dist/primitives/DropdownMenuSearch.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuSearch.js +5 -0
- package/dist/primitives/DropdownMenuSearch.js.map +1 -0
- package/dist/primitives/DropdownMenuSection.cjs +8 -0
- package/dist/primitives/DropdownMenuSection.d.ts +2 -0
- package/dist/primitives/DropdownMenuSection.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuSection.js +5 -0
- package/dist/primitives/DropdownMenuSection.js.map +1 -0
- package/dist/primitives/DropdownMenuSelectionGroup.cjs +8 -0
- package/dist/primitives/DropdownMenuSelectionGroup.d.ts +2 -0
- package/dist/primitives/DropdownMenuSelectionGroup.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuSelectionGroup.js +5 -0
- package/dist/primitives/DropdownMenuSelectionGroup.js.map +1 -0
- package/dist/primitives/DropdownMenuTitle.cjs +8 -0
- package/dist/primitives/DropdownMenuTitle.d.ts +2 -0
- package/dist/primitives/DropdownMenuTitle.d.ts.map +1 -0
- package/dist/primitives/DropdownMenuTitle.js +5 -0
- package/dist/primitives/DropdownMenuTitle.js.map +1 -0
- package/dist/primitives/Heading.cjs +2 -2
- package/dist/primitives/Heading.d.ts +1 -1
- package/dist/primitives/Heading.d.ts.map +1 -1
- package/dist/primitives/Heading.js +1 -1
- package/dist/primitives/Heading.js.map +1 -1
- package/dist/primitives/IconTile.cjs +8 -0
- package/dist/primitives/IconTile.d.ts +2 -0
- package/dist/primitives/IconTile.d.ts.map +1 -0
- package/dist/primitives/IconTile.js +5 -0
- package/dist/primitives/IconTile.js.map +1 -0
- package/dist/primitives/ImageInput.cjs +8 -0
- package/dist/primitives/ImageInput.d.ts +2 -0
- package/dist/primitives/ImageInput.d.ts.map +1 -0
- package/dist/primitives/ImageInput.js +5 -0
- package/dist/primitives/ImageInput.js.map +1 -0
- package/dist/primitives/InputGroup.cjs +8 -0
- package/dist/primitives/InputGroup.d.ts +2 -0
- package/dist/primitives/InputGroup.d.ts.map +1 -0
- package/dist/primitives/InputGroup.js +5 -0
- package/dist/primitives/InputGroup.js.map +1 -0
- package/dist/primitives/NumberField.cjs +8 -0
- package/dist/primitives/NumberField.d.ts +2 -0
- package/dist/primitives/NumberField.d.ts.map +1 -0
- package/dist/primitives/NumberField.js +5 -0
- package/dist/primitives/NumberField.js.map +1 -0
- package/dist/primitives/OverflowingList.cjs +8 -0
- package/dist/primitives/OverflowingList.d.ts +2 -0
- package/dist/primitives/OverflowingList.d.ts.map +1 -0
- package/dist/primitives/OverflowingList.js +5 -0
- package/dist/primitives/OverflowingList.js.map +1 -0
- package/dist/primitives/PhoneCountryPicker.cjs +8 -0
- package/dist/primitives/PhoneCountryPicker.d.ts +2 -0
- package/dist/primitives/PhoneCountryPicker.d.ts.map +1 -0
- package/dist/primitives/PhoneCountryPicker.js +5 -0
- package/dist/primitives/PhoneCountryPicker.js.map +1 -0
- package/dist/primitives/ProgressRing.cjs +8 -0
- package/dist/primitives/ProgressRing.d.ts +2 -0
- package/dist/primitives/ProgressRing.d.ts.map +1 -0
- package/dist/primitives/ProgressRing.js +5 -0
- package/dist/primitives/ProgressRing.js.map +1 -0
- package/dist/primitives/RadioCircle.cjs +8 -0
- package/dist/primitives/RadioCircle.d.ts +2 -0
- package/dist/primitives/RadioCircle.d.ts.map +1 -0
- package/dist/primitives/RadioCircle.js +5 -0
- package/dist/primitives/RadioCircle.js.map +1 -0
- package/dist/primitives/SKELETON_HEIGHT.cjs +8 -0
- package/dist/primitives/SKELETON_HEIGHT.d.ts +2 -0
- package/dist/primitives/SKELETON_HEIGHT.d.ts.map +1 -0
- package/dist/primitives/SKELETON_HEIGHT.js +5 -0
- package/dist/primitives/SKELETON_HEIGHT.js.map +1 -0
- package/dist/primitives/STATUS_COLOR.cjs +8 -0
- package/dist/primitives/STATUS_COLOR.d.ts +2 -0
- package/dist/primitives/STATUS_COLOR.d.ts.map +1 -0
- package/dist/primitives/STATUS_COLOR.js +5 -0
- package/dist/primitives/STATUS_COLOR.js.map +1 -0
- package/dist/primitives/STATUS_HUE.cjs +8 -0
- package/dist/primitives/STATUS_HUE.d.ts +2 -0
- package/dist/primitives/STATUS_HUE.d.ts.map +1 -0
- package/dist/primitives/STATUS_HUE.js +5 -0
- package/dist/primitives/STATUS_HUE.js.map +1 -0
- package/dist/primitives/STATUS_PAINT.cjs +8 -0
- package/dist/primitives/STATUS_PAINT.d.ts +2 -0
- package/dist/primitives/STATUS_PAINT.d.ts.map +1 -0
- package/dist/primitives/STATUS_PAINT.js +5 -0
- package/dist/primitives/STATUS_PAINT.js.map +1 -0
- package/dist/primitives/Shortcut.cjs +8 -0
- package/dist/primitives/Shortcut.d.ts +2 -0
- package/dist/primitives/Shortcut.d.ts.map +1 -0
- package/dist/primitives/Shortcut.js +5 -0
- package/dist/primitives/Shortcut.js.map +1 -0
- package/dist/primitives/StackIcon.cjs +8 -0
- package/dist/primitives/StackIcon.d.ts +2 -0
- package/dist/primitives/StackIcon.d.ts.map +1 -0
- package/dist/primitives/StackIcon.js +5 -0
- package/dist/primitives/StackIcon.js.map +1 -0
- package/dist/primitives/TOAST_DURATION.cjs +8 -0
- package/dist/primitives/TOAST_DURATION.d.ts +2 -0
- package/dist/primitives/TOAST_DURATION.d.ts.map +1 -0
- package/dist/primitives/TOAST_DURATION.js +5 -0
- package/dist/primitives/TOAST_DURATION.js.map +1 -0
- package/dist/primitives/Tag.cjs +8 -0
- package/dist/primitives/Tag.d.ts +2 -0
- package/dist/primitives/Tag.d.ts.map +1 -0
- package/dist/primitives/Tag.js +5 -0
- package/dist/primitives/Tag.js.map +1 -0
- package/dist/primitives/ToastCard.cjs +8 -0
- package/dist/primitives/ToastCard.d.ts +2 -0
- package/dist/primitives/ToastCard.d.ts.map +1 -0
- package/dist/primitives/ToastCard.js +5 -0
- package/dist/primitives/ToastCard.js.map +1 -0
- package/dist/primitives/ToastFace.cjs +8 -0
- package/dist/primitives/ToastFace.d.ts +2 -0
- package/dist/primitives/ToastFace.d.ts.map +1 -0
- package/dist/primitives/ToastFace.js +5 -0
- package/dist/primitives/ToastFace.js.map +1 -0
- package/dist/primitives/TruncatedText.cjs +8 -0
- package/dist/primitives/TruncatedText.d.ts +2 -0
- package/dist/primitives/TruncatedText.d.ts.map +1 -0
- package/dist/primitives/TruncatedText.js +5 -0
- package/dist/primitives/TruncatedText.js.map +1 -0
- package/dist/primitives/TruncatedTextProvider.cjs +8 -0
- package/dist/primitives/TruncatedTextProvider.d.ts +2 -0
- package/dist/primitives/TruncatedTextProvider.d.ts.map +1 -0
- package/dist/primitives/TruncatedTextProvider.js +5 -0
- package/dist/primitives/TruncatedTextProvider.js.map +1 -0
- package/dist/primitives/VisuallyHidden.cjs +8 -0
- package/dist/primitives/VisuallyHidden.d.ts +2 -0
- package/dist/primitives/VisuallyHidden.d.ts.map +1 -0
- package/dist/primitives/VisuallyHidden.js +5 -0
- package/dist/primitives/VisuallyHidden.js.map +1 -0
- package/dist/primitives/fieldSize.cjs +8 -0
- package/dist/primitives/fieldSize.d.ts +2 -0
- package/dist/primitives/fieldSize.d.ts.map +1 -0
- package/dist/primitives/fieldSize.js +5 -0
- package/dist/primitives/fieldSize.js.map +1 -0
- package/dist/primitives/flag.cjs +8 -0
- package/dist/primitives/flag.d.ts +2 -0
- package/dist/primitives/flag.d.ts.map +1 -0
- package/dist/primitives/flag.js +5 -0
- package/dist/primitives/flag.js.map +1 -0
- package/dist/primitives/formatShortcut.cjs +8 -0
- package/dist/primitives/formatShortcut.d.ts +2 -0
- package/dist/primitives/formatShortcut.d.ts.map +1 -0
- package/dist/primitives/formatShortcut.js +5 -0
- package/dist/primitives/formatShortcut.js.map +1 -0
- package/dist/primitives/initialOf.cjs +8 -0
- package/dist/primitives/initialOf.d.ts +2 -0
- package/dist/primitives/initialOf.d.ts.map +1 -0
- package/dist/primitives/initialOf.js +5 -0
- package/dist/primitives/initialOf.js.map +1 -0
- package/dist/primitives/parseNumber.cjs +8 -0
- package/dist/primitives/parseNumber.d.ts +2 -0
- package/dist/primitives/parseNumber.d.ts.map +1 -0
- package/dist/primitives/parseNumber.js +5 -0
- package/dist/primitives/parseNumber.js.map +1 -0
- package/dist/primitives/speakShortcut.cjs +8 -0
- package/dist/primitives/speakShortcut.d.ts +2 -0
- package/dist/primitives/speakShortcut.d.ts.map +1 -0
- package/dist/primitives/speakShortcut.js +5 -0
- package/dist/primitives/speakShortcut.js.map +1 -0
- package/dist/primitives/tileTones.cjs +8 -0
- package/dist/primitives/tileTones.d.ts +2 -0
- package/dist/primitives/tileTones.d.ts.map +1 -0
- package/dist/primitives/tileTones.js +5 -0
- package/dist/primitives/tileTones.js.map +1 -0
- package/dist/primitives/useDensity.cjs +8 -0
- package/dist/primitives/useDensity.d.ts +2 -0
- package/dist/primitives/useDensity.d.ts.map +1 -0
- package/dist/primitives/useDensity.js +5 -0
- package/dist/primitives/useDensity.js.map +1 -0
- package/dist/primitives/useField.cjs +8 -0
- package/dist/primitives/useField.d.ts +2 -0
- package/dist/primitives/useField.d.ts.map +1 -0
- package/dist/primitives/useField.js +5 -0
- package/dist/primitives/useField.js.map +1 -0
- package/dist/product/ComboBox.cjs +25 -7
- package/dist/product/ComboBox.d.ts +3 -1
- package/dist/product/ComboBox.d.ts.map +1 -1
- package/dist/product/ComboBox.js +25 -7
- package/dist/product/ComboBox.js.map +1 -1
- package/dist/product/CommandMenu.cjs +137 -0
- package/dist/product/CommandMenu.d.ts +77 -0
- package/dist/product/CommandMenu.d.ts.map +1 -0
- package/dist/product/CommandMenu.js +134 -0
- package/dist/product/CommandMenu.js.map +1 -0
- package/dist/product/DetailPane.cjs +154 -12
- package/dist/product/DetailPane.d.ts +80 -2
- package/dist/product/DetailPane.d.ts.map +1 -1
- package/dist/product/DetailPane.js +153 -16
- package/dist/product/DetailPane.js.map +1 -1
- package/dist/product/Fact.cjs +6 -1
- package/dist/product/Fact.d.ts +16 -1
- package/dist/product/Fact.d.ts.map +1 -1
- package/dist/product/Fact.js +6 -1
- package/dist/product/Fact.js.map +1 -1
- package/dist/product/Field.cjs +14 -2
- package/dist/product/Field.d.ts +16 -1
- package/dist/product/Field.d.ts.map +1 -1
- package/dist/product/Field.js +14 -2
- package/dist/product/Field.js.map +1 -1
- package/dist/product/Filters.cjs +61 -9
- package/dist/product/Filters.d.ts +37 -6
- package/dist/product/Filters.d.ts.map +1 -1
- package/dist/product/Filters.js +62 -10
- package/dist/product/Filters.js.map +1 -1
- package/dist/product/MenuRow.cjs +81 -2
- package/dist/product/MenuRow.d.ts +76 -6
- package/dist/product/MenuRow.d.ts.map +1 -1
- package/dist/product/MenuRow.js +81 -4
- package/dist/product/MenuRow.js.map +1 -1
- package/dist/product/PrimaryButton.cjs +5 -1
- package/dist/product/PrimaryButton.d.ts +8 -0
- package/dist/product/PrimaryButton.d.ts.map +1 -1
- package/dist/product/PrimaryButton.js +5 -1
- package/dist/product/PrimaryButton.js.map +1 -1
- package/dist/product/Skeleton.cjs +7 -6
- package/dist/product/Skeleton.d.ts +3 -20
- package/dist/product/Skeleton.d.ts.map +1 -1
- package/dist/product/Skeleton.js +8 -7
- package/dist/product/Skeleton.js.map +1 -1
- package/dist/product/index.cjs +2 -0
- package/dist/product/index.d.ts +1 -0
- package/dist/product/index.d.ts.map +1 -1
- package/dist/product/index.js +2 -0
- package/dist/product/index.js.map +1 -1
- package/dist/settings/Section.cjs +11 -2
- package/dist/settings/Section.d.ts +8 -1
- package/dist/settings/Section.d.ts.map +1 -1
- package/dist/settings/Section.js +11 -2
- package/dist/settings/Section.js.map +1 -1
- package/dist/styles/motion.css +70 -0
- package/dist/styles.css +1479 -136
- package/dist/theme.css +963 -9
- package/package.json +2 -1
|
@@ -13,6 +13,32 @@
|
|
|
13
13
|
* The last descriptor stays mounted through the close transition, so the exit
|
|
14
14
|
* animates with its content (no flash of empty pane). Opening a new
|
|
15
15
|
* descriptor replaces it.
|
|
16
|
+
*
|
|
17
|
+
* A pane is a STACK of pages. `open` starts a new stack, `push` lays a page on
|
|
18
|
+
* top (a relation opened from a record, a step of a flow), `back` takes it off;
|
|
19
|
+
* the top bar shows a back button while there is a page under the current one.
|
|
20
|
+
*
|
|
21
|
+
* Two modes, chosen by the shell:
|
|
22
|
+
*
|
|
23
|
+
* overlay (default) the SlideOver above the page, with its scrim — the
|
|
24
|
+
* console's contract, unchanged.
|
|
25
|
+
* docked a column in the layout row beside the page content: no scrim, the
|
|
26
|
+
* content narrows. 400 wide, resizable 320–600 from its leading edge
|
|
27
|
+
* by the kit's one resizer (Grip), the width kept per person
|
|
28
|
+
* (useSpan). The width animates 0 ↔ W while the page inside keeps the
|
|
29
|
+
* target width, so it never reflows mid-slide. Below lg it is the
|
|
30
|
+
* overlay again, full screen.
|
|
31
|
+
*
|
|
32
|
+
* A docked pane — or any pane under `<Density value="compact">` — draws the
|
|
33
|
+
* record frame (twenty-ui's side panel, MIT, NOTICE): a 48px top bar on the
|
|
34
|
+
* panel ground (back · icon + title · page actions · expand · close), a body
|
|
35
|
+
* that scrolls without chaining, and a footer on the panel ground with its
|
|
36
|
+
* actions at the end. An overlay pane at regular density keeps the header it
|
|
37
|
+
* always had. A page that draws itself (`bare`, a command menu, a search)
|
|
38
|
+
* composes the same frame from `PaneBar`, `PaneBody` and `PaneFoot`.
|
|
39
|
+
*
|
|
40
|
+
* Escape closes a docked pane while focus is inside it (the overlay's
|
|
41
|
+
* SlideOver already does); ⌘/Ctrl+Enter runs the page's `onExpand`.
|
|
16
42
|
*/
|
|
17
43
|
import { type ReactNode } from 'react';
|
|
18
44
|
import { type IconLike } from './color.js';
|
|
@@ -24,24 +50,76 @@ export type DetailDescriptor = {
|
|
|
24
50
|
/** Optional title icon, tinted with `iconColor`. */
|
|
25
51
|
icon?: IconLike;
|
|
26
52
|
iconColor?: string;
|
|
27
|
-
/** Desktop pane width (px). Mobile is always full-screen. Default 460. */
|
|
53
|
+
/** Desktop pane width (px), overlay mode. Mobile is always full-screen. Default 460 (400 in the record frame). */
|
|
28
54
|
size?: number;
|
|
29
55
|
/** The body — the detail view or edit form for the item. */
|
|
30
56
|
content: ReactNode;
|
|
31
57
|
/** Optional sticky footer (primary actions), pinned below the scroll body. */
|
|
32
58
|
footer?: ReactNode;
|
|
59
|
+
/** The page's own actions, in the top bar before expand and close (record frame). */
|
|
60
|
+
actions?: ReactNode;
|
|
61
|
+
/** Opens the page on the main surface: shows the expand button and binds ⌘/Ctrl+Enter. */
|
|
62
|
+
onExpand?: () => void;
|
|
63
|
+
/** The expand button's tooltip. Default "Open". */
|
|
64
|
+
expandLabel?: string;
|
|
65
|
+
/** The page draws its own frame from `PaneBar` / `PaneBody` / `PaneFoot` (a command menu, a search). */
|
|
66
|
+
bare?: boolean;
|
|
33
67
|
};
|
|
34
68
|
export type DetailPaneApi = {
|
|
69
|
+
/** A new stack, holding this page. */
|
|
35
70
|
open: (descriptor: DetailDescriptor) => void;
|
|
71
|
+
/** This page over the current one. Opens the pane when it is shut. */
|
|
72
|
+
push: (descriptor: DetailDescriptor) => void;
|
|
73
|
+
/** Off the top: the page under it shows. On the last page, the pane closes. */
|
|
74
|
+
back: () => void;
|
|
36
75
|
close: () => void;
|
|
37
76
|
isOpen: boolean;
|
|
77
|
+
/** How many pages the stack holds; a back button shows while it is more than one. */
|
|
78
|
+
depth: number;
|
|
38
79
|
};
|
|
80
|
+
/** The pane this sits in, or null outside one — for a page that adapts to being in a pane. */
|
|
81
|
+
export declare const usePane: () => DetailPaneApi | null;
|
|
39
82
|
export declare function useDetailPane(): DetailPaneApi;
|
|
40
83
|
export type DetailPaneProps = {
|
|
41
84
|
children: ReactNode;
|
|
42
85
|
/** z-index for stacking — a pane opened over another overlay passes a
|
|
43
86
|
* higher value. Left to `SlideOver`'s own default otherwise. */
|
|
44
87
|
zIndex?: number;
|
|
88
|
+
/** `overlay` (default) floats above the page; `docked` is a column in the layout beside it. */
|
|
89
|
+
mode?: 'overlay' | 'docked';
|
|
90
|
+
/** Where a docked pane keeps the width a person chose (localStorage key). */
|
|
91
|
+
store?: string;
|
|
45
92
|
};
|
|
46
|
-
|
|
93
|
+
/** The record frame's measures (twenty-ui's side panel, MIT). */
|
|
94
|
+
export declare const PANE: {
|
|
95
|
+
readonly w: 400;
|
|
96
|
+
readonly min: 320;
|
|
97
|
+
readonly max: 600;
|
|
98
|
+
readonly bar: 48;
|
|
99
|
+
readonly icon: 16;
|
|
100
|
+
};
|
|
101
|
+
export declare function DetailPane({ children, zIndex, mode, store }: DetailPaneProps): import("react").JSX.Element;
|
|
102
|
+
export type PaneBarProps = {
|
|
103
|
+
/** The leading cluster after the back button: an icon and a title, or a search field. */
|
|
104
|
+
children?: ReactNode;
|
|
105
|
+
/** The page's own actions, before expand and close. */
|
|
106
|
+
actions?: ReactNode;
|
|
107
|
+
};
|
|
108
|
+
/**
|
|
109
|
+
* The record frame's top bar: 48 high on the panel ground, a hairline under
|
|
110
|
+
* it, 8 in from each side, its two clusters 16 apart and their parts 4 apart.
|
|
111
|
+
* Inside a pane it adds back (while there is a page under this one), expand
|
|
112
|
+
* (when the page can open on the main surface) and close; outside one it is the
|
|
113
|
+
* bar alone.
|
|
114
|
+
*/
|
|
115
|
+
export declare function PaneBar({ children, actions }: PaneBarProps): import("react").JSX.Element;
|
|
116
|
+
/** The record frame's body: it takes what the bar and footer leave, and scrolls without chaining to the page. */
|
|
117
|
+
export declare function PaneBody({ children, padded }: {
|
|
118
|
+
children?: ReactNode;
|
|
119
|
+
padded?: boolean;
|
|
120
|
+
}): import("react").JSX.Element;
|
|
121
|
+
/** The record frame's footer: the panel ground, a hairline above, its actions at the end, 8 apart. */
|
|
122
|
+
export declare function PaneFoot({ children }: {
|
|
123
|
+
children?: ReactNode;
|
|
124
|
+
}): import("react").JSX.Element;
|
|
47
125
|
//# sourceMappingURL=DetailPane.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailPane.d.ts","sourceRoot":"","sources":["../../src/product/DetailPane.tsx"],"names":[],"mappings":"AAEA
|
|
1
|
+
{"version":3,"file":"DetailPane.d.ts","sourceRoot":"","sources":["../../src/product/DetailPane.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,OAAO,EAQL,KAAK,SAAS,EACf,MAAM,OAAO,CAAA;AAKd,OAAO,EAAW,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAA;AAQhD,MAAM,MAAM,gBAAgB,GAAG;IAC7B,oCAAoC;IACpC,KAAK,EAAE,SAAS,CAAA;IAChB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,oDAAoD;IACpD,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,kHAAkH;IAClH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,4DAA4D;IAC5D,OAAO,EAAE,SAAS,CAAA;IAClB,8EAA8E;IAC9E,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,qFAAqF;IACrF,OAAO,CAAC,EAAE,SAAS,CAAA;IACnB,0FAA0F;IAC1F,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,mDAAmD;IACnD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,wGAAwG;IACxG,IAAI,CAAC,EAAE,OAAO,CAAA;CACf,CAAA;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,sCAAsC;IACtC,IAAI,EAAE,CAAC,UAAU,EAAE,gBAAgB,KAAK,IAAI,CAAA;IAC5C,sEAAsE;IACtE,IAAI,EAAE,CAAC,UAAU,EAAE,gBAAgB,KAAK,IAAI,CAAA;IAC5C,+EAA+E;IAC/E,IAAI,EAAE,MAAM,IAAI,CAAA;IAChB,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,MAAM,EAAE,OAAO,CAAA;IACf,qFAAqF;IACrF,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAMD,8FAA8F;AAC9F,eAAO,MAAM,OAAO,QAAO,aAAa,GAAG,IAAuB,CAAA;AAElE,wBAAgB,aAAa,IAAI,aAAa,CAI7C;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,SAAS,CAAA;IACnB;qEACiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,+FAA+F;IAC/F,IAAI,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAA;IAC3B,6EAA6E;IAC7E,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,iEAAiE;AACjE,eAAO,MAAM,IAAI;aAAK,CAAC,EAAE,GAAG;aAAE,GAAG,EAAE,GAAG;aAAE,GAAG,EAAE,GAAG;aAAE,GAAG,EAAE,EAAE;aAAE,IAAI,EAAE,EAAE;CAAW,CAAA;AAE9E,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAgB,EAAE,KAAoB,EAAE,EAAE,eAAe,+BAuEvG;AA0KD,MAAM,MAAM,YAAY,GAAG;IACzB,yFAAyF;IACzF,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,uDAAuD;IACvD,OAAO,CAAC,EAAE,SAAS,CAAA;CACpB,CAAA;AAED;;;;;;GAMG;AACH,wBAAgB,OAAO,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,YAAY,+BAwC1D;AAqBD,iHAAiH;AACjH,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,MAAa,EAAE,EAAE;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,+BAQ/F;AAED,sGAAsG;AACtG,wBAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAE,+BAiB9D"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
'use client';
|
|
2
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
/**
|
|
4
4
|
* DetailPane — the ONE reusable right-side pane for viewing or editing the
|
|
5
5
|
* details of an item. A product does NOT build its own pane: it writes a
|
|
@@ -15,29 +15,166 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
15
15
|
* The last descriptor stays mounted through the close transition, so the exit
|
|
16
16
|
* animates with its content (no flash of empty pane). Opening a new
|
|
17
17
|
* descriptor replaces it.
|
|
18
|
+
*
|
|
19
|
+
* A pane is a STACK of pages. `open` starts a new stack, `push` lays a page on
|
|
20
|
+
* top (a relation opened from a record, a step of a flow), `back` takes it off;
|
|
21
|
+
* the top bar shows a back button while there is a page under the current one.
|
|
22
|
+
*
|
|
23
|
+
* Two modes, chosen by the shell:
|
|
24
|
+
*
|
|
25
|
+
* overlay (default) the SlideOver above the page, with its scrim — the
|
|
26
|
+
* console's contract, unchanged.
|
|
27
|
+
* docked a column in the layout row beside the page content: no scrim, the
|
|
28
|
+
* content narrows. 400 wide, resizable 320–600 from its leading edge
|
|
29
|
+
* by the kit's one resizer (Grip), the width kept per person
|
|
30
|
+
* (useSpan). The width animates 0 ↔ W while the page inside keeps the
|
|
31
|
+
* target width, so it never reflows mid-slide. Below lg it is the
|
|
32
|
+
* overlay again, full screen.
|
|
33
|
+
*
|
|
34
|
+
* A docked pane — or any pane under `<Density value="compact">` — draws the
|
|
35
|
+
* record frame (twenty-ui's side panel, MIT, NOTICE): a 48px top bar on the
|
|
36
|
+
* panel ground (back · icon + title · page actions · expand · close), a body
|
|
37
|
+
* that scrolls without chaining, and a footer on the panel ground with its
|
|
38
|
+
* actions at the end. An overlay pane at regular density keeps the header it
|
|
39
|
+
* always had. A page that draws itself (`bare`, a command menu, a search)
|
|
40
|
+
* composes the same frame from `PaneBar`, `PaneBody` and `PaneFoot`.
|
|
41
|
+
*
|
|
42
|
+
* Escape closes a docked pane while focus is inside it (the overlay's
|
|
43
|
+
* SlideOver already does); ⌘/Ctrl+Enter runs the page's `onExpand`.
|
|
18
44
|
*/
|
|
19
|
-
import { createContext, useCallback, useContext, useMemo, useState, } from 'react';
|
|
20
|
-
import { Button, ScrollView, Text, XStack, YStack } from '@hanzo/gui';
|
|
21
|
-
import { X } from '@hanzogui/lucide-icons-2';
|
|
45
|
+
import { createContext, useCallback, useContext, useEffect, useMemo, useRef, useState, } from 'react';
|
|
46
|
+
import { Button as GuiButton, ScrollView, Text, XStack, YStack, useMedia } from '@hanzo/gui';
|
|
47
|
+
import { ChevronLeft, Maximize2, X } from '@hanzogui/lucide-icons-2';
|
|
22
48
|
import { SlideOver } from './SlideOver.js';
|
|
23
49
|
import { asColor } from './color.js';
|
|
24
|
-
|
|
50
|
+
import { Button } from '../backends/gui/button.js';
|
|
51
|
+
import { Tooltip, TooltipContent, TooltipTrigger } from '../backends/gui/tooltip.js';
|
|
52
|
+
import { Grip } from '../backends/gui/grip.js';
|
|
53
|
+
import { useSpan } from '../backends/gui/span.js';
|
|
54
|
+
import { useDensity } from '../backends/gui/density.js';
|
|
55
|
+
import { slot } from '../backends/gui/slot.js';
|
|
56
|
+
const Ctx = /* @__PURE__ */ createContext(null);
|
|
57
|
+
/** The page being drawn, for the bar a bare page composes. */
|
|
58
|
+
const PageCtx = /* @__PURE__ */ createContext(null);
|
|
59
|
+
/** The pane this sits in, or null outside one — for a page that adapts to being in a pane. */
|
|
60
|
+
export const usePane = () => useContext(Ctx);
|
|
25
61
|
export function useDetailPane() {
|
|
26
62
|
const ctx = useContext(Ctx);
|
|
27
63
|
if (!ctx)
|
|
28
64
|
throw new Error('useDetailPane must be used within <DetailPane>');
|
|
29
65
|
return ctx;
|
|
30
66
|
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
const
|
|
39
|
-
const
|
|
40
|
-
const
|
|
41
|
-
|
|
67
|
+
/** The record frame's measures (twenty-ui's side panel, MIT). */
|
|
68
|
+
export const PANE = { w: 400, min: 320, max: 600, bar: 48, icon: 16 };
|
|
69
|
+
export function DetailPane({ children, zIndex, mode = 'overlay', store = 'hanzo.pane' }) {
|
|
70
|
+
// One state, so every transition is one pure update: whether it is open, and
|
|
71
|
+
// the pages it holds (kept through a close, so the exit animates with them).
|
|
72
|
+
const [state, setState] = useState({ open: false, stack: [] });
|
|
73
|
+
const { open: isOpen, stack } = state;
|
|
74
|
+
const density = useDensity();
|
|
75
|
+
const media = useMedia();
|
|
76
|
+
const docked = mode === 'docked' && !!media.lg;
|
|
77
|
+
const record = mode === 'docked' || density === 'compact';
|
|
78
|
+
const open = useCallback((descriptor) => setState({ open: true, stack: [descriptor] }), []);
|
|
79
|
+
const push = useCallback((descriptor) => setState((s) => ({ open: true, stack: s.open ? [...s.stack, descriptor] : [descriptor] })), []);
|
|
80
|
+
const close = useCallback(() => setState((s) => ({ ...s, open: false })), []);
|
|
81
|
+
const back = useCallback(() => setState((s) => (s.stack.length > 1 ? { ...s, stack: s.stack.slice(0, -1) } : { ...s, open: false })), []);
|
|
82
|
+
const depth = isOpen ? stack.length : 0;
|
|
83
|
+
const api = useMemo(() => ({ open, push, back, close, isOpen, depth }), [open, push, back, close, isOpen, depth]);
|
|
84
|
+
const desc = stack[stack.length - 1] ?? null;
|
|
85
|
+
const title = typeof desc?.title === 'string' ? desc.title : 'Details';
|
|
86
|
+
const page = desc ? (_jsx(PageCtx.Provider, { value: desc, children: record || desc.bare ? _jsx(RecordPage, { desc: desc }) : _jsx(SheetPage, { desc: desc, close: close }) })) : null;
|
|
87
|
+
if (docked)
|
|
88
|
+
return (_jsx(Ctx.Provider, { value: api, children: _jsxs(XStack, { ...slot('detail-pane-row'), flex: 1, minW: 0, minH: 0, self: "stretch", children: [_jsx(YStack, { flex: 1, minW: 0, minH: 0, children: children }), _jsx(Dock, { open: isOpen, title: title, store: store, onClose: close, onExpand: desc?.onExpand, children: page })] }) }));
|
|
89
|
+
return (_jsxs(Ctx.Provider, { value: api, children: [children, _jsx(SlideOver, { open: isOpen, onClose: close, side: "right", size: desc?.size ?? (record ? PANE.w : 460), ariaLabel: title, zIndex: zIndex, children: record && desc ? (_jsx(YStack, { flex: 1, minH: 0, bg: "$background", onKeyDown: expandKey(desc.onExpand), children: page })) : (page) })] }));
|
|
90
|
+
}
|
|
91
|
+
/** ⌘/Ctrl+Enter runs `onExpand`, from anywhere inside the pane. */
|
|
92
|
+
const expandKey = (onExpand) => (e) => {
|
|
93
|
+
if (!onExpand || e.key !== 'Enter' || !(e.metaKey || e.ctrlKey))
|
|
94
|
+
return;
|
|
95
|
+
e.preventDefault?.();
|
|
96
|
+
onExpand();
|
|
97
|
+
};
|
|
98
|
+
/**
|
|
99
|
+
* The docked column. The OUTER box is what animates and what the Grip measures
|
|
100
|
+
* (its width is the pane's); the INNER box holds the target width throughout, so
|
|
101
|
+
* the page slides in already laid out.
|
|
102
|
+
*/
|
|
103
|
+
function Dock({ open, title, store, onClose, onExpand, children, }) {
|
|
104
|
+
const span = useSpan(store, PANE.w, PANE.min, PANE.max);
|
|
105
|
+
const node = useRef(null);
|
|
106
|
+
const opener = useRef(null);
|
|
107
|
+
// Focus moves in when the pane opens and back to what opened it when it shuts:
|
|
108
|
+
// a docked pane is not modal, but a keyboard has to be able to reach it.
|
|
109
|
+
useEffect(() => {
|
|
110
|
+
if (!open || typeof document === 'undefined')
|
|
111
|
+
return;
|
|
112
|
+
opener.current = document.activeElement;
|
|
113
|
+
const t = window.setTimeout(() => node.current?.focus?.(), 0);
|
|
114
|
+
return () => {
|
|
115
|
+
window.clearTimeout(t);
|
|
116
|
+
const back = opener.current;
|
|
117
|
+
if (back instanceof HTMLElement && node.current?.contains(document.activeElement))
|
|
118
|
+
back.focus();
|
|
119
|
+
};
|
|
120
|
+
}, [open]);
|
|
121
|
+
return (_jsxs(YStack, { ref: ((el) => {
|
|
122
|
+
span.ref(el);
|
|
123
|
+
node.current = el instanceof HTMLElement ? el : null;
|
|
124
|
+
}), ...slot('detail-pane'), "data-mode": "docked", "data-open": open ? '' : undefined, role: "complementary", "aria-label": title, "aria-hidden": !open, ...(!open ? { inert: true } : null), tabIndex: -1, position: "relative", shrink: 0, self: "stretch", overflow: "hidden", outlineWidth: 0, onKeyDown: ((e) => {
|
|
125
|
+
if (e.key === 'Escape' && !e.defaultPrevented) {
|
|
126
|
+
e.preventDefault?.();
|
|
127
|
+
onClose();
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
expandKey(onExpand)(e);
|
|
131
|
+
}), style: {
|
|
132
|
+
...span.style,
|
|
133
|
+
width: open ? 'var(--span)' : 0,
|
|
134
|
+
transition: 'width var(--duration-base, 300ms) var(--ease-out, ease)',
|
|
135
|
+
}, children: [_jsx(YStack, { width: "var(--span)", flex: 1, minH: 0, bg: "$background", borderLeftWidth: 1, borderColor: "$borderColor", children: children }), open ? (_jsx(Grip, { side: "right", span: span.span, floor: PANE.min, ceil: PANE.max, reset: PANE.w, bar: "edge", label: "Resize side panel", onSpan: span.move, onKeep: span.keep, onShut: onClose })) : null] }));
|
|
136
|
+
}
|
|
137
|
+
/** The record frame of one page: the bar, the scrolling body, the footer. */
|
|
138
|
+
function RecordPage({ desc }) {
|
|
139
|
+
if (desc.bare)
|
|
140
|
+
return _jsx(_Fragment, { children: desc.content });
|
|
141
|
+
const Icon = desc.icon;
|
|
142
|
+
return (_jsxs(_Fragment, { children: [_jsxs(PaneBar, { actions: desc.actions, children: [Icon ? _jsx(Icon, { size: PANE.icon, color: desc.iconColor ? asColor(desc.iconColor) : '$aside' }) : null, _jsx(Text, { fontSize: "$2", fontWeight: "500", color: "$ink", numberOfLines: 1, shrink: 1, minW: 0, children: desc.title }), desc.subtitle !== undefined ? (_jsx(Text, { fontSize: "$2", color: "$hint", numberOfLines: 1, shrink: 1, minW: 0, children: desc.subtitle })) : null] }), _jsx(PaneBody, { children: desc.content }), desc.footer !== undefined ? _jsx(PaneFoot, { children: desc.footer }) : null] }));
|
|
143
|
+
}
|
|
144
|
+
/** The overlay sheet's own page, as it always was: the 56px header and the body. */
|
|
145
|
+
function SheetPage({ desc, close }) {
|
|
146
|
+
const Icon = desc.icon;
|
|
147
|
+
const pane = useContext(Ctx);
|
|
148
|
+
return (_jsxs(_Fragment, { children: [_jsxs(XStack, { items: "center", gap: "$2.5", px: "$4", height: 56, borderBottomWidth: 1, borderColor: "$borderColor", children: [pane && pane.depth > 1 ? (_jsx(GuiButton, { size: "$2", chromeless: true, icon: _jsx(ChevronLeft, { size: 18 }), onPress: pane.back, "aria-label": "Back" })) : null, Icon ? _jsx(Icon, { size: 18, color: desc.iconColor ? asColor(desc.iconColor) : undefined }) : null, _jsxs(YStack, { flex: 1, minW: 0, children: [_jsx(Text, { fontSize: "$5", fontWeight: "700", color: "$color12", numberOfLines: 1, children: desc.title }), desc.subtitle !== undefined ? (_jsx(Text, { fontSize: "$2", color: "$color10", numberOfLines: 1, children: desc.subtitle })) : null] }), _jsx(GuiButton, { size: "$2", chromeless: true, icon: _jsx(X, { size: 18 }), onPress: close, "aria-label": "Close" })] }), _jsx(ScrollView, { flex: 1, minH: 0, children: _jsx(YStack, { p: "$4", gap: "$3", children: desc.content }) }), desc.footer !== undefined ? (_jsx(XStack, { px: "$4", py: "$3", gap: "$2", borderTopWidth: 1, borderColor: "$borderColor", bg: "$color1", children: desc.footer })) : null] }));
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* The record frame's top bar: 48 high on the panel ground, a hairline under
|
|
152
|
+
* it, 8 in from each side, its two clusters 16 apart and their parts 4 apart.
|
|
153
|
+
* Inside a pane it adds back (while there is a page under this one), expand
|
|
154
|
+
* (when the page can open on the main surface) and close; outside one it is the
|
|
155
|
+
* bar alone.
|
|
156
|
+
*/
|
|
157
|
+
export function PaneBar({ children, actions }) {
|
|
158
|
+
const pane = useContext(Ctx);
|
|
159
|
+
const page = useContext(PageCtx);
|
|
160
|
+
const expand = page?.onExpand;
|
|
161
|
+
return (_jsxs(XStack, { ...slot('pane-bar'), height: PANE.bar, shrink: 0, items: "center", justify: "space-between", gap: "$4", px: "$2", bg: "$panel", borderBottomWidth: 1, borderColor: "$borderColor", children: [_jsxs(XStack, { flex: 1, minW: 0, items: "center", gap: "$1", children: [pane && pane.depth > 1 ? (_jsx(Tool, { tip: "Back", onPress: pane.back, children: _jsx(ChevronLeft, {}) })) : null, children] }), _jsxs(XStack, { shrink: 0, items: "center", gap: "$1", children: [actions, expand ? (_jsx(Tool, { tip: page?.expandLabel ?? 'Open', onPress: expand, children: _jsx(Maximize2, {}) })) : null, pane ? (_jsx(Tool, { tip: "Close side panel", onPress: pane.close, children: _jsx(X, {}) })) : null] })] }));
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* The bar's quiet 24px icon button, named by its tooltip. The tooltip's trigger
|
|
165
|
+
* IS the button (`asChild`): wrapped in a box, the trigger's `aria-expanded`
|
|
166
|
+
* lands on a div, which axe refuses (`aria-allowed-attr`), and a button may
|
|
167
|
+
* carry it.
|
|
168
|
+
*/
|
|
169
|
+
function Tool({ tip, children, ...props }) {
|
|
170
|
+
return (_jsxs(Tooltip, { delay: 1000, placement: "bottom", children: [_jsx(TooltipTrigger, { asChild: true, children: _jsx(Button, { size: "icon-xs", variant: "ghost", emphasis: "subtle", "aria-label": tip, ...props, children: children }) }), _jsx(TooltipContent, { children: tip })] }));
|
|
171
|
+
}
|
|
172
|
+
/** The record frame's body: it takes what the bar and footer leave, and scrolls without chaining to the page. */
|
|
173
|
+
export function PaneBody({ children, padded = true }) {
|
|
174
|
+
return (_jsx(ScrollView, { ...slot('pane-body'), flex: 1, minH: 0, style: { overscrollBehavior: 'contain' }, children: _jsx(YStack, { ...(padded ? { p: '$2' } : null), gap: "$2", children: children }) }));
|
|
175
|
+
}
|
|
176
|
+
/** The record frame's footer: the panel ground, a hairline above, its actions at the end, 8 apart. */
|
|
177
|
+
export function PaneFoot({ children }) {
|
|
178
|
+
return (_jsx(XStack, { ...slot('pane-foot'), shrink: 0, items: "center", justify: "flex-end", gap: "$2", px: "$3", py: "$2", bg: "$panel", borderTopWidth: 1, borderColor: "$borderColor", children: children }));
|
|
42
179
|
}
|
|
43
180
|
//# sourceMappingURL=DetailPane.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DetailPane.js","sourceRoot":"","sources":["../../src/product/DetailPane.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DetailPane.js","sourceRoot":"","sources":["../../src/product/DetailPane.tsx"],"names":[],"mappings":"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"}
|
package/dist/product/Fact.cjs
CHANGED
|
@@ -4,6 +4,7 @@ exports.Fact = Fact;
|
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const gui_1 = require("@hanzo/gui");
|
|
6
6
|
const fonts_1 = require("../core/fonts.cjs");
|
|
7
|
+
const progress_ring_1 = require("../backends/gui/progress-ring.cjs");
|
|
7
8
|
/**
|
|
8
9
|
* Fact — one row of a property list: a label on the left, a value on the
|
|
9
10
|
* right, a hairline separator beneath. The read-only counterpart to `Field`'s
|
|
@@ -14,6 +15,10 @@ const fonts_1 = require("../core/fonts.cjs");
|
|
|
14
15
|
* either could find the other. This is the one definition; the wider of the
|
|
15
16
|
* two shapes won (a non-string `value` renders as given, not stringified).
|
|
16
17
|
*/
|
|
17
|
-
function Fact({ label, value, mono }) {
|
|
18
|
+
function Fact({ label, value, mono, variant = 'row', startIcon, progress, progressColor, progressValueText }) {
|
|
19
|
+
if (variant === 'metric') {
|
|
20
|
+
const shown = typeof value === 'string' || typeof value === 'number' ? ((0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$1", fontWeight: "500", color: "$ink", numberOfLines: 1, style: mono ? { fontFamily: fonts_1.fontMono } : undefined, children: value })) : (value);
|
|
21
|
+
return ((0, jsx_runtime_1.jsxs)(gui_1.XStack, { "data-slot": "fact", "data-variant": "metric", items: "center", gap: "$2", minH: 24, children: [(0, jsx_runtime_1.jsxs)(gui_1.XStack, { flex: 1, minW: 0, items: "center", gap: "$1", children: [startIcon, (0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$1", fontWeight: "500", color: "$hint", numberOfLines: 1, children: label })] }), progress !== undefined ? ((0, jsx_runtime_1.jsx)(progress_ring_1.ProgressRing, { value: progress, size: "sm", ...(progressColor ? { barColor: progressColor } : null), "aria-label": `${label}${progressValueText ? `: ${progressValueText}` : ''}`, children: shown })) : (shown)] }));
|
|
22
|
+
}
|
|
18
23
|
return ((0, jsx_runtime_1.jsxs)(gui_1.XStack, { justify: "space-between", items: "center", py: "$1.5", borderBottomWidth: 1, borderColor: "$borderColor", gap: "$3", children: [(0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$2", color: "$color11", children: label }), typeof value === 'string' ? ((0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$2", color: "$color12", fontWeight: "600", numberOfLines: 1, style: mono ? { fontFamily: fonts_1.fontMono } : undefined, children: value })) : (value)] }));
|
|
19
24
|
}
|
package/dist/product/Fact.d.ts
CHANGED
|
@@ -8,6 +8,21 @@ export type FactProps = {
|
|
|
8
8
|
value: ReactNode;
|
|
9
9
|
/** Render a string value in the monospace face — an id, a hash, a path. */
|
|
10
10
|
mono?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* `row` (default) is the property-list row. `metric` is the record kit's
|
|
13
|
+
* metric row (twenty-ui's MetricRow, MIT — NOTICE): no rule, a 24px floor,
|
|
14
|
+
* 12px medium, the label quiet beside an optional icon, the value at the end,
|
|
15
|
+
* and an optional progress ring that the value labels.
|
|
16
|
+
*/
|
|
17
|
+
variant?: 'row' | 'metric';
|
|
18
|
+
/** `metric`: an icon before the label. */
|
|
19
|
+
startIcon?: ReactNode;
|
|
20
|
+
/** `metric`: a 14px ring at the end, 0–100 or `null` for indeterminate. */
|
|
21
|
+
progress?: number | null;
|
|
22
|
+
/** `metric`: the ring's colour. */
|
|
23
|
+
progressColor?: string;
|
|
24
|
+
/** `metric`: the ring's accessible value, when the value text is not it. */
|
|
25
|
+
progressValueText?: string;
|
|
11
26
|
};
|
|
12
27
|
/**
|
|
13
28
|
* Fact — one row of a property list: a label on the left, a value on the
|
|
@@ -19,5 +34,5 @@ export type FactProps = {
|
|
|
19
34
|
* either could find the other. This is the one definition; the wider of the
|
|
20
35
|
* two shapes won (a non-string `value` renders as given, not stringified).
|
|
21
36
|
*/
|
|
22
|
-
export declare function Fact({ label, value, mono }: FactProps): import("react").JSX.Element;
|
|
37
|
+
export declare function Fact({ label, value, mono, variant, startIcon, progress, progressColor, progressValueText }: FactProps): import("react").JSX.Element;
|
|
23
38
|
//# sourceMappingURL=Fact.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Fact.d.ts","sourceRoot":"","sources":["../../src/product/Fact.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"Fact.d.ts","sourceRoot":"","sources":["../../src/product/Fact.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,MAAM,MAAM,SAAS,GAAG;IACtB,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAA;IACb;;iBAEa;IACb,KAAK,EAAE,SAAS,CAAA;IAChB,2EAA2E;IAC3E,IAAI,CAAC,EAAE,OAAO,CAAA;IACd;;;;;OAKG;IACH,OAAO,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAA;IAC1B,0CAA0C;IAC1C,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,mCAAmC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,4EAA4E;IAC5E,iBAAiB,CAAC,EAAE,MAAM,CAAA;CAC3B,CAAA;AAED;;;;;;;;;GASG;AACH,wBAAgB,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,OAAe,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,iBAAiB,EAAE,EAAE,SAAS,+BA4D7H"}
|
package/dist/product/Fact.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Text, XStack } from '@hanzo/gui';
|
|
3
3
|
import { fontMono } from '../core/fonts.js';
|
|
4
|
+
import { ProgressRing } from '../backends/gui/progress-ring.js';
|
|
4
5
|
/**
|
|
5
6
|
* Fact — one row of a property list: a label on the left, a value on the
|
|
6
7
|
* right, a hairline separator beneath. The read-only counterpart to `Field`'s
|
|
@@ -11,7 +12,11 @@ import { fontMono } from '../core/fonts.js';
|
|
|
11
12
|
* either could find the other. This is the one definition; the wider of the
|
|
12
13
|
* two shapes won (a non-string `value` renders as given, not stringified).
|
|
13
14
|
*/
|
|
14
|
-
export function Fact({ label, value, mono }) {
|
|
15
|
+
export function Fact({ label, value, mono, variant = 'row', startIcon, progress, progressColor, progressValueText }) {
|
|
16
|
+
if (variant === 'metric') {
|
|
17
|
+
const shown = typeof value === 'string' || typeof value === 'number' ? (_jsx(Text, { fontSize: "$1", fontWeight: "500", color: "$ink", numberOfLines: 1, style: mono ? { fontFamily: fontMono } : undefined, children: value })) : (value);
|
|
18
|
+
return (_jsxs(XStack, { "data-slot": "fact", "data-variant": "metric", items: "center", gap: "$2", minH: 24, children: [_jsxs(XStack, { flex: 1, minW: 0, items: "center", gap: "$1", children: [startIcon, _jsx(Text, { fontSize: "$1", fontWeight: "500", color: "$hint", numberOfLines: 1, children: label })] }), progress !== undefined ? (_jsx(ProgressRing, { value: progress, size: "sm", ...(progressColor ? { barColor: progressColor } : null), "aria-label": `${label}${progressValueText ? `: ${progressValueText}` : ''}`, children: shown })) : (shown)] }));
|
|
19
|
+
}
|
|
15
20
|
return (_jsxs(XStack, { justify: "space-between", items: "center", py: "$1.5", borderBottomWidth: 1, borderColor: "$borderColor", gap: "$3", children: [_jsx(Text, { fontSize: "$2", color: "$color11", children: label }), typeof value === 'string' ? (_jsx(Text, { fontSize: "$2", color: "$color12", fontWeight: "600", numberOfLines: 1, style: mono ? { fontFamily: fontMono } : undefined, children: value })) : (value)] }));
|
|
16
21
|
}
|
|
17
22
|
//# sourceMappingURL=Fact.js.map
|
package/dist/product/Fact.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Fact.js","sourceRoot":"","sources":["../../src/product/Fact.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"Fact.js","sourceRoot":"","sources":["../../src/product/Fact.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AA4B5D;;;;;;;;;GASG;AACH,MAAM,UAAU,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,GAAG,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,aAAa,EAAE,iBAAiB,EAAa;IAC5H,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,KAAK,GACT,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CACvD,KAAC,IAAI,IAAC,QAAQ,EAAC,IAAI,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,EAAC,MAAM,EAAC,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,YACnH,KAAK,GACD,CACR,CAAC,CAAC,CAAC,CACF,KAAK,CACN,CAAA;QACH,OAAO,CACL,MAAC,MAAM,iBAAW,MAAM,kBAAc,QAAQ,EAAC,KAAK,EAAC,QAAQ,EAAC,GAAG,EAAC,IAAI,EAAC,IAAI,EAAE,EAAE,aAC7E,MAAC,MAAM,IAAC,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAC,QAAQ,EAAC,GAAG,EAAC,IAAI,aAC9C,SAAS,EACV,KAAC,IAAI,IAAC,QAAQ,EAAC,IAAI,EAAC,UAAU,EAAC,KAAK,EAAC,KAAK,EAAC,OAAO,EAAC,aAAa,EAAE,CAAC,YAChE,KAAK,GACD,IACA,EACR,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CACxB,KAAC,YAAY,IACX,KAAK,EAAE,QAAQ,EACf,IAAI,EAAC,IAAI,KACL,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,gBAC5C,GAAG,KAAK,GAAG,iBAAiB,CAAC,CAAC,CAAC,KAAK,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,YAEzE,KAAK,GACO,CAChB,CAAC,CAAC,CAAC,CACF,KAAK,CACN,IACM,CACV,CAAA;IACH,CAAC;IACD,OAAO,CACL,MAAC,MAAM,IACL,OAAO,EAAC,eAAe,EACvB,KAAK,EAAC,QAAQ,EACd,EAAE,EAAC,MAAM,EACT,iBAAiB,EAAE,CAAC,EACpB,WAAW,EAAC,cAAc,EAC1B,GAAG,EAAC,IAAI,aAER,KAAC,IAAI,IAAC,QAAQ,EAAC,IAAI,EAAC,KAAK,EAAC,UAAU,YACjC,KAAK,GACD,EACN,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAC3B,KAAC,IAAI,IACH,QAAQ,EAAC,IAAI,EACb,KAAK,EAAC,UAAU,EAChB,UAAU,EAAC,KAAK,EAChB,aAAa,EAAE,CAAC,EAChB,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,SAAS,YAEjD,KAAK,GACD,CACR,CAAC,CAAC,CAAC,CACF,KAAK,CACN,IACM,CACV,CAAA;AACH,CAAC"}
|
package/dist/product/Field.cjs
CHANGED
|
@@ -51,12 +51,24 @@ function FieldTextArea({ value, onChange, disabled, rows = 6, }) {
|
|
|
51
51
|
onChange(v);
|
|
52
52
|
}, disabled: disabled, numberOfLines: rows }));
|
|
53
53
|
}
|
|
54
|
-
|
|
54
|
+
/**
|
|
55
|
+
* A switch, alone or as a settings row.
|
|
56
|
+
*
|
|
57
|
+
* With a `label` it is twenty-ui's SettingsRow (MIT, NOTICE): the whole 32px row
|
|
58
|
+
* is the switch's `<label>`, so a press anywhere on it toggles, with an optional
|
|
59
|
+
* leading element and a description after a middle dot, the row's hover rung
|
|
60
|
+
* and the record row's corner and inset. Without one it is the bare switch it
|
|
61
|
+
* always was.
|
|
62
|
+
*/
|
|
63
|
+
function FieldSwitch({ checked, onChange, disabled, label, description, start, }) {
|
|
55
64
|
const track = useFieldTrack('FieldSwitch');
|
|
56
|
-
|
|
65
|
+
const control = ((0, jsx_runtime_1.jsx)(gui_1.Switch, { checked: checked, onCheckedChange: (v) => {
|
|
57
66
|
track({ action: 'change', value: v });
|
|
58
67
|
onChange(v);
|
|
59
68
|
}, disabled: disabled, size: "$3", children: (0, jsx_runtime_1.jsx)(gui_1.Switch.Thumb, {}) }));
|
|
69
|
+
if (label == null)
|
|
70
|
+
return control;
|
|
71
|
+
return ((0, jsx_runtime_1.jsxs)(gui_1.XStack, { ...{ 'data-slot': 'field-switch-row' }, render: "label", items: "center", gap: 8, px: 4, minH: 32, rounded: "$xs", cursor: disabled ? 'default' : 'pointer', opacity: disabled ? 0.5 : 1, hoverStyle: disabled ? undefined : { bg: '$hover' }, children: [start, (0, jsx_runtime_1.jsxs)(gui_1.XStack, { flex: 1, minW: 0, items: "center", gap: 4, children: [(0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$2", color: "$aside", numberOfLines: 1, shrink: 0, children: label }), description ? ((0, jsx_runtime_1.jsxs)(gui_1.Text, { fontSize: "$2", color: "$hint", numberOfLines: 1, shrink: 1, children: ['· ', description] })) : null] }), control] }));
|
|
60
72
|
}
|
|
61
73
|
/**
|
|
62
74
|
* A labeled dropdown.
|
package/dist/product/Field.d.ts
CHANGED
|
@@ -48,10 +48,25 @@ export declare function FieldTextArea({ value, onChange, disabled, rows, }: {
|
|
|
48
48
|
disabled?: boolean;
|
|
49
49
|
rows?: number;
|
|
50
50
|
}): import("react").JSX.Element;
|
|
51
|
-
|
|
51
|
+
/**
|
|
52
|
+
* A switch, alone or as a settings row.
|
|
53
|
+
*
|
|
54
|
+
* With a `label` it is twenty-ui's SettingsRow (MIT, NOTICE): the whole 32px row
|
|
55
|
+
* is the switch's `<label>`, so a press anywhere on it toggles, with an optional
|
|
56
|
+
* leading element and a description after a middle dot, the row's hover rung
|
|
57
|
+
* and the record row's corner and inset. Without one it is the bare switch it
|
|
58
|
+
* always was.
|
|
59
|
+
*/
|
|
60
|
+
export declare function FieldSwitch({ checked, onChange, disabled, label, description, start, }: {
|
|
52
61
|
checked: boolean;
|
|
53
62
|
onChange: (v: boolean) => void;
|
|
54
63
|
disabled?: boolean;
|
|
64
|
+
/** The row's words; the switch's accessible name. */
|
|
65
|
+
label?: ReactNode;
|
|
66
|
+
/** Said after the label, quieter. */
|
|
67
|
+
description?: ReactNode;
|
|
68
|
+
/** An icon or avatar before the label. */
|
|
69
|
+
start?: ReactNode;
|
|
55
70
|
}): import("react").JSX.Element;
|
|
56
71
|
export declare function FieldSelect({ value, options, onChange, disabled, placeholder, }: {
|
|
57
72
|
value: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Field.d.ts","sourceRoot":"","sources":["../../src/product/Field.tsx"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,OAAO,EAAiD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AA2BrF;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,+BAanF;AAED,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,WAAW,EACX,YAAY,EACZ,EAAE,GACH,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;;;;;OAUG;IACH,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ,+BAoBA;AAED,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,IAAQ,GACT,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,+BAaA;AAED,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,QAAQ,EACR,QAAQ,
|
|
1
|
+
{"version":3,"file":"Field.d.ts","sourceRoot":"","sources":["../../src/product/Field.tsx"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,OAAO,EAAiD,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AA2BrF;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,+BAanF;AAED,wBAAgB,SAAS,CAAC,EACxB,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,WAAW,EACX,YAAY,EACZ,EAAE,GACH,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;;;;;;;;;OAUG;IACH,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ,+BAoBA;AAED,wBAAgB,aAAa,CAAC,EAC5B,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,IAAQ,GACT,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,+BAaA;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,EAC1B,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,WAAW,EACX,KAAK,GACN,EAAE;IACD,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAA;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,qDAAqD;IACrD,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,qCAAqC;IACrC,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,0CAA0C;IAC1C,KAAK,CAAC,EAAE,SAAS,CAAA;CAClB,+BA4CA;AA+CD,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,WAAuB,GACxB,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB,+BA4BA;AAED,wBAAgB,WAAW,CAAC,EAC1B,KAAK,EACL,GAAG,EACH,GAAG,EACH,IAAI,EACJ,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,+BA0BA"}
|
package/dist/product/Field.js
CHANGED
|
@@ -43,12 +43,24 @@ export function FieldTextArea({ value, onChange, disabled, rows = 6, }) {
|
|
|
43
43
|
onChange(v);
|
|
44
44
|
}, disabled: disabled, numberOfLines: rows }));
|
|
45
45
|
}
|
|
46
|
-
|
|
46
|
+
/**
|
|
47
|
+
* A switch, alone or as a settings row.
|
|
48
|
+
*
|
|
49
|
+
* With a `label` it is twenty-ui's SettingsRow (MIT, NOTICE): the whole 32px row
|
|
50
|
+
* is the switch's `<label>`, so a press anywhere on it toggles, with an optional
|
|
51
|
+
* leading element and a description after a middle dot, the row's hover rung
|
|
52
|
+
* and the record row's corner and inset. Without one it is the bare switch it
|
|
53
|
+
* always was.
|
|
54
|
+
*/
|
|
55
|
+
export function FieldSwitch({ checked, onChange, disabled, label, description, start, }) {
|
|
47
56
|
const track = useFieldTrack('FieldSwitch');
|
|
48
|
-
|
|
57
|
+
const control = (_jsx(Switch, { checked: checked, onCheckedChange: (v) => {
|
|
49
58
|
track({ action: 'change', value: v });
|
|
50
59
|
onChange(v);
|
|
51
60
|
}, disabled: disabled, size: "$3", children: _jsx(Switch.Thumb, {}) }));
|
|
61
|
+
if (label == null)
|
|
62
|
+
return control;
|
|
63
|
+
return (_jsxs(XStack, { ...{ 'data-slot': 'field-switch-row' }, render: "label", items: "center", gap: 8, px: 4, minH: 32, rounded: "$xs", cursor: disabled ? 'default' : 'pointer', opacity: disabled ? 0.5 : 1, hoverStyle: disabled ? undefined : { bg: '$hover' }, children: [start, _jsxs(XStack, { flex: 1, minW: 0, items: "center", gap: 4, children: [_jsx(Text, { fontSize: "$2", color: "$aside", numberOfLines: 1, shrink: 0, children: label }), description ? (_jsxs(Text, { fontSize: "$2", color: "$hint", numberOfLines: 1, shrink: 1, children: ['· ', description] })) : null] }), control] }));
|
|
52
64
|
}
|
|
53
65
|
/**
|
|
54
66
|
* A labeled dropdown.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Field.js","sourceRoot":"","sources":["../../src/product/Field.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Field.js","sourceRoot":"","sources":["../../src/product/Field.tsx"],"names":[],"mappings":"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"}
|