@moldable-ai/ui 0.2.21 → 0.2.24
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/dist/catalog/catalog-coverage.d.ts +1 -1
- package/dist/catalog/catalog-manifest.d.ts +1 -1
- package/dist/catalog/catalog-manifest.js +1 -1
- package/dist/catalog/catalog-types.d.ts +7 -0
- package/dist/catalog/catalog-types.d.ts.map +1 -1
- package/dist/catalog/catalog-types.js +1 -0
- package/dist/catalog/component-catalog.d.ts +1 -1
- package/dist/catalog/component-catalog.js +2 -2
- package/dist/catalog/core-catalog-exclusions.d.ts +1 -1
- package/dist/catalog/core-catalog-exclusions.d.ts.map +1 -1
- package/dist/catalog/core-catalog-exclusions.js +1 -146
- package/dist/catalog/core-catalog.d.ts +1 -1
- package/dist/catalog/core-catalog.d.ts.map +1 -1
- package/dist/catalog/core-catalog.js +11 -7
- package/dist/catalog/core-collection-stories.d.ts +1 -1
- package/dist/catalog/core-collection-stories.d.ts.map +1 -1
- package/dist/catalog/core-collection-stories.js +41 -9
- package/dist/catalog/core-control-stories.d.ts +1 -1
- package/dist/catalog/core-control-stories.d.ts.map +1 -1
- package/dist/catalog/core-control-stories.js +53 -22
- package/dist/catalog/core-feedback-stories.d.ts +1 -1
- package/dist/catalog/core-feedback-stories.d.ts.map +1 -1
- package/dist/catalog/core-feedback-stories.js +89 -10
- package/dist/catalog/core-form-stories.d.ts +3 -0
- package/dist/catalog/core-form-stories.d.ts.map +1 -0
- package/dist/catalog/core-form-stories.js +56 -0
- package/dist/catalog/core-foundation-stories.d.ts +1 -1
- package/dist/catalog/core-foundation-stories.js +7 -7
- package/dist/catalog/core-layout-stories.d.ts +3 -0
- package/dist/catalog/core-layout-stories.d.ts.map +1 -0
- package/dist/catalog/core-layout-stories.js +78 -0
- package/dist/catalog/core-navigation-stories.d.ts +1 -1
- package/dist/catalog/core-navigation-stories.d.ts.map +1 -1
- package/dist/catalog/core-navigation-stories.js +25 -3
- package/dist/catalog/core-overlay-stories.d.ts +1 -1
- package/dist/catalog/core-overlay-stories.d.ts.map +1 -1
- package/dist/catalog/core-overlay-stories.js +113 -8
- package/dist/catalog/index.d.ts +6 -6
- package/dist/catalog/index.js +6 -6
- package/dist/components/app-error-boundary.d.ts.map +1 -1
- package/dist/components/app-error-boundary.js +4 -3
- package/dist/components/chat/chat-image-lightbox.js +3 -3
- package/dist/components/chat/chat-input.js +5 -5
- package/dist/components/chat/chat-message.js +17 -17
- package/dist/components/chat/chat-messages.d.ts +1 -1
- package/dist/components/chat/chat-messages.js +3 -3
- package/dist/components/chat/chat-panel.d.ts +6 -6
- package/dist/components/chat/chat-panel.d.ts.map +1 -1
- package/dist/components/chat/chat-panel.js +33 -33
- package/dist/components/chat/checkpoint-badge.js +3 -3
- package/dist/components/chat/conversation-history.d.ts.map +1 -1
- package/dist/components/chat/conversation-history.js +13 -13
- package/dist/components/chat/index.d.ts +20 -15
- package/dist/components/chat/index.d.ts.map +1 -1
- package/dist/components/chat/index.js +20 -15
- package/dist/components/chat/markdown.js +1 -1
- package/dist/components/chat/model-effort-selector.js +10 -10
- package/dist/components/chat/model-selector.js +4 -4
- package/dist/components/chat/reasoning-effort-selector.js +4 -4
- package/dist/components/chat/restore-dialog.js +3 -3
- package/dist/components/chat/thinking-timeline.js +2 -2
- package/dist/components/chat/tool-approval.d.ts +1 -1
- package/dist/components/chat/tool-approval.d.ts.map +1 -1
- package/dist/components/chat/tool-approval.js +9 -9
- package/dist/components/chat/tool-handlers.d.ts +2 -2
- package/dist/components/chat/tool-handlers.js +90 -90
- package/dist/components/chat/voice-orb-audio.d.ts +16 -0
- package/dist/components/chat/voice-orb-audio.d.ts.map +1 -0
- package/dist/components/chat/voice-orb-audio.js +110 -0
- package/dist/components/chat/voice-orb-renderer.d.ts +51 -0
- package/dist/components/chat/voice-orb-renderer.d.ts.map +1 -0
- package/dist/components/chat/voice-orb-renderer.js +410 -0
- package/dist/components/chat/voice-orb-shaders.d.ts +3 -0
- package/dist/components/chat/voice-orb-shaders.d.ts.map +1 -0
- package/dist/components/chat/voice-orb-shaders.js +355 -0
- package/dist/components/chat/voice-orb-types.d.ts +24 -0
- package/dist/components/chat/voice-orb-types.d.ts.map +1 -0
- package/dist/components/chat/voice-orb-types.js +73 -0
- package/dist/components/chat/voice-orb.d.ts +20 -0
- package/dist/components/chat/voice-orb.d.ts.map +1 -0
- package/dist/components/chat/voice-orb.js +67 -0
- package/dist/components/code-block.js +1 -1
- package/dist/components/hardware/bluetooth-panel.d.ts +2 -2
- package/dist/components/hardware/bluetooth-panel.js +10 -10
- package/dist/components/hardware/camera-preview.js +6 -6
- package/dist/components/hardware/capability-badge.d.ts +2 -2
- package/dist/components/hardware/capability-badge.js +2 -2
- package/dist/components/hardware/capability-matrix.d.ts +1 -1
- package/dist/components/hardware/capability-matrix.js +5 -5
- package/dist/components/hardware/clipboard-button.d.ts +1 -1
- package/dist/components/hardware/clipboard-button.js +2 -2
- package/dist/components/hardware/device-list.js +1 -1
- package/dist/components/hardware/display-map.d.ts +1 -1
- package/dist/components/hardware/display-map.js +7 -7
- package/dist/components/hardware/haptic-button.d.ts +2 -2
- package/dist/components/hardware/haptic-button.js +3 -3
- package/dist/components/hardware/hardware-panel.js +1 -1
- package/dist/components/hardware/hid-panel.d.ts +2 -2
- package/dist/components/hardware/hid-panel.js +10 -10
- package/dist/components/hardware/index.d.ts +26 -26
- package/dist/components/hardware/index.js +26 -26
- package/dist/components/hardware/live-indicator.js +1 -1
- package/dist/components/hardware/local-auth-button.d.ts +2 -2
- package/dist/components/hardware/local-auth-button.js +4 -4
- package/dist/components/hardware/location-panel.d.ts +1 -1
- package/dist/components/hardware/location-panel.js +6 -6
- package/dist/components/hardware/microphone-meter.js +7 -7
- package/dist/components/hardware/midi-monitor.d.ts +2 -2
- package/dist/components/hardware/midi-monitor.js +9 -9
- package/dist/components/hardware/notification-panel.d.ts +1 -1
- package/dist/components/hardware/notification-panel.js +8 -8
- package/dist/components/hardware/power-blocker-controller.d.ts +1 -1
- package/dist/components/hardware/power-blocker-controller.js +1 -1
- package/dist/components/hardware/power-panel.d.ts +1 -1
- package/dist/components/hardware/power-panel.js +9 -9
- package/dist/components/hardware/readout.js +1 -1
- package/dist/components/hardware/screen-share-preview.js +5 -5
- package/dist/components/hardware/secure-storage-panel.d.ts +1 -1
- package/dist/components/hardware/secure-storage-panel.js +9 -9
- package/dist/components/hardware/serial-console.d.ts +2 -2
- package/dist/components/hardware/serial-console.js +10 -10
- package/dist/components/hardware/shortcut-recorder.d.ts +1 -1
- package/dist/components/hardware/shortcut-recorder.js +4 -4
- package/dist/components/hardware/stream-log.js +1 -1
- package/dist/components/hardware/system-audio-monitor.d.ts +1 -1
- package/dist/components/hardware/system-audio-monitor.js +9 -9
- package/dist/components/hardware/usb-panel.d.ts +5 -5
- package/dist/components/hardware/usb-panel.js +10 -10
- package/dist/components/hardware/use-capability.d.ts +1 -1
- package/dist/components/hardware/use-capability.js +1 -1
- package/dist/components/markdown.js +5 -5
- package/dist/components/native-capabilities/bluetooth-panel.d.ts +2 -2
- package/dist/components/native-capabilities/bluetooth-panel.d.ts.map +1 -1
- package/dist/components/native-capabilities/bluetooth-panel.js +17 -17
- package/dist/components/native-capabilities/camera-preview.d.ts.map +1 -1
- package/dist/components/native-capabilities/camera-preview.js +7 -7
- package/dist/components/native-capabilities/capability-badge.d.ts +2 -2
- package/dist/components/native-capabilities/capability-badge.js +4 -4
- package/dist/components/native-capabilities/capability-matrix.d.ts +1 -1
- package/dist/components/native-capabilities/capability-matrix.js +7 -7
- package/dist/components/native-capabilities/clipboard-button.d.ts +1 -1
- package/dist/components/native-capabilities/clipboard-button.js +2 -2
- package/dist/components/native-capabilities/device-list.js +4 -4
- package/dist/components/native-capabilities/display-map.d.ts +1 -1
- package/dist/components/native-capabilities/display-map.d.ts.map +1 -1
- package/dist/components/native-capabilities/display-map.js +11 -11
- package/dist/components/native-capabilities/haptic-button.d.ts +2 -2
- package/dist/components/native-capabilities/haptic-button.js +3 -3
- package/dist/components/native-capabilities/hid-panel.d.ts +2 -2
- package/dist/components/native-capabilities/hid-panel.d.ts.map +1 -1
- package/dist/components/native-capabilities/hid-panel.js +14 -14
- package/dist/components/native-capabilities/index.d.ts +26 -26
- package/dist/components/native-capabilities/index.js +26 -26
- package/dist/components/native-capabilities/live-indicator.js +3 -3
- package/dist/components/native-capabilities/local-auth-button.d.ts +2 -2
- package/dist/components/native-capabilities/local-auth-button.js +4 -4
- package/dist/components/native-capabilities/location-panel.d.ts +1 -1
- package/dist/components/native-capabilities/location-panel.d.ts.map +1 -1
- package/dist/components/native-capabilities/location-panel.js +8 -8
- package/dist/components/native-capabilities/microphone-meter.js +9 -9
- package/dist/components/native-capabilities/midi-monitor.d.ts +2 -2
- package/dist/components/native-capabilities/midi-monitor.d.ts.map +1 -1
- package/dist/components/native-capabilities/midi-monitor.js +11 -11
- package/dist/components/native-capabilities/native-capability-panel.js +6 -6
- package/dist/components/native-capabilities/notification-panel.d.ts +1 -1
- package/dist/components/native-capabilities/notification-panel.js +9 -9
- package/dist/components/native-capabilities/power-blocker-controller.d.ts +1 -1
- package/dist/components/native-capabilities/power-blocker-controller.js +1 -1
- package/dist/components/native-capabilities/power-panel.d.ts +1 -1
- package/dist/components/native-capabilities/power-panel.d.ts.map +1 -1
- package/dist/components/native-capabilities/power-panel.js +12 -12
- package/dist/components/native-capabilities/readout.d.ts.map +1 -1
- package/dist/components/native-capabilities/readout.js +2 -2
- package/dist/components/native-capabilities/screen-share-preview.js +6 -6
- package/dist/components/native-capabilities/secure-storage-panel.d.ts +1 -1
- package/dist/components/native-capabilities/secure-storage-panel.d.ts.map +1 -1
- package/dist/components/native-capabilities/secure-storage-panel.js +11 -11
- package/dist/components/native-capabilities/serial-console.d.ts +2 -2
- package/dist/components/native-capabilities/serial-console.d.ts.map +1 -1
- package/dist/components/native-capabilities/serial-console.js +11 -11
- package/dist/components/native-capabilities/shortcut-recorder.d.ts +1 -1
- package/dist/components/native-capabilities/shortcut-recorder.js +5 -5
- package/dist/components/native-capabilities/stream-log.js +3 -3
- package/dist/components/native-capabilities/system-audio-monitor.d.ts +1 -1
- package/dist/components/native-capabilities/system-audio-monitor.js +12 -12
- package/dist/components/native-capabilities/usb-panel.d.ts +5 -5
- package/dist/components/native-capabilities/usb-panel.js +15 -15
- package/dist/components/native-capabilities/use-capability.d.ts +1 -1
- package/dist/components/native-capabilities/use-capability.js +1 -1
- package/dist/components/rich-media-player.js +3 -3
- package/dist/components/ui/accordion.js +3 -3
- package/dist/components/ui/alert-dialog.d.ts +5 -3
- package/dist/components/ui/alert-dialog.d.ts.map +1 -1
- package/dist/components/ui/alert-dialog.js +20 -10
- package/dist/components/ui/alert.d.ts +2 -2
- package/dist/components/ui/alert.d.ts.map +1 -1
- package/dist/components/ui/alert.js +11 -11
- package/dist/components/ui/app-frame.d.ts +7 -1
- package/dist/components/ui/app-frame.d.ts.map +1 -1
- package/dist/components/ui/app-frame.js +52 -16
- package/dist/components/ui/avatar.js +5 -5
- package/dist/components/ui/badge.d.ts +1 -1
- package/dist/components/ui/badge.js +4 -4
- package/dist/components/ui/breadcrumb.js +2 -2
- package/dist/components/ui/button-group.d.ts +1 -1
- package/dist/components/ui/button-group.js +4 -4
- package/dist/components/ui/button.d.ts +6 -4
- package/dist/components/ui/button.d.ts.map +1 -1
- package/dist/components/ui/button.js +50 -18
- package/dist/components/ui/calendar.d.ts +1 -1
- package/dist/components/ui/calendar.d.ts.map +1 -1
- package/dist/components/ui/calendar.js +15 -15
- package/dist/components/ui/card.js +3 -3
- package/dist/components/ui/carousel.d.ts +1 -1
- package/dist/components/ui/carousel.js +4 -4
- package/dist/components/ui/chart.js +5 -5
- package/dist/components/ui/checkbox.d.ts.map +1 -1
- package/dist/components/ui/checkbox.js +2 -2
- package/dist/components/ui/collapsible.js +3 -3
- package/dist/components/ui/color-well.js +2 -2
- package/dist/components/ui/combobox.js +9 -9
- package/dist/components/ui/command.d.ts +1 -1
- package/dist/components/ui/command.d.ts.map +1 -1
- package/dist/components/ui/command.js +9 -9
- package/dist/components/ui/confirm-dialog.d.ts +1 -1
- package/dist/components/ui/confirm-dialog.d.ts.map +1 -1
- package/dist/components/ui/confirm-dialog.js +2 -2
- package/dist/components/ui/context-menu.d.ts +16 -5
- package/dist/components/ui/context-menu.d.ts.map +1 -1
- package/dist/components/ui/context-menu.js +92 -16
- package/dist/components/ui/date-field.d.ts.map +1 -1
- package/dist/components/ui/date-field.js +8 -8
- package/dist/components/ui/date-picker.d.ts +2 -2
- package/dist/components/ui/date-picker.js +7 -7
- package/dist/components/ui/dialog-primary-action.d.ts +4 -0
- package/dist/components/ui/dialog-primary-action.d.ts.map +1 -0
- package/dist/components/ui/dialog-primary-action.js +37 -0
- package/dist/components/ui/dialog.d.ts +6 -2
- package/dist/components/ui/dialog.d.ts.map +1 -1
- package/dist/components/ui/dialog.js +20 -7
- package/dist/components/ui/drawer.js +4 -4
- package/dist/components/ui/dropdown-menu.d.ts +15 -5
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
- package/dist/components/ui/dropdown-menu.js +98 -16
- package/dist/components/ui/edge-fade.js +1 -1
- package/dist/components/ui/empty.d.ts +1 -1
- package/dist/components/ui/empty.js +5 -5
- package/dist/components/ui/error-boundary-view.d.ts +12 -0
- package/dist/components/ui/error-boundary-view.d.ts.map +1 -0
- package/dist/components/ui/error-boundary-view.js +8 -0
- package/dist/components/ui/field.d.ts +1 -1
- package/dist/components/ui/field.d.ts.map +1 -1
- package/dist/components/ui/field.js +9 -9
- package/dist/components/ui/form.js +4 -4
- package/dist/components/ui/grid.d.ts.map +1 -1
- package/dist/components/ui/grid.js +5 -5
- package/dist/components/ui/hover-card.js +2 -2
- package/dist/components/ui/icon-button.d.ts +1 -1
- package/dist/components/ui/icon-button.d.ts.map +1 -1
- package/dist/components/ui/icon-button.js +3 -4
- package/dist/components/ui/index.d.ts +77 -76
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/components/ui/index.js +77 -76
- package/dist/components/ui/input-group.d.ts +3 -3
- package/dist/components/ui/input-group.js +14 -14
- package/dist/components/ui/input-otp.js +3 -3
- package/dist/components/ui/input.js +2 -2
- package/dist/components/ui/inspector.d.ts +1 -1
- package/dist/components/ui/inspector.js +6 -6
- package/dist/components/ui/item.d.ts +1 -1
- package/dist/components/ui/item.js +7 -7
- package/dist/components/ui/kbd.js +2 -2
- package/dist/components/ui/label.js +2 -2
- package/dist/components/ui/list.d.ts.map +1 -1
- package/dist/components/ui/list.js +5 -5
- package/dist/components/ui/material.js +3 -3
- package/dist/components/ui/menu-items.d.ts +28 -0
- package/dist/components/ui/menu-items.d.ts.map +1 -0
- package/dist/components/ui/menu-items.js +111 -0
- package/dist/components/ui/menubar.js +11 -11
- package/dist/components/ui/message-scroller-controller.d.ts +1 -1
- package/dist/components/ui/message-scroller-controller.js +1 -1
- package/dist/components/ui/message-scroller-primitive.d.ts +1 -1
- package/dist/components/ui/message-scroller-primitive.js +1 -1
- package/dist/components/ui/message-scroller.d.ts +2 -2
- package/dist/components/ui/message-scroller.js +3 -3
- package/dist/components/ui/navigation-button-group.d.ts +2 -2
- package/dist/components/ui/navigation-button-group.js +2 -2
- package/dist/components/ui/navigation-menu.js +6 -6
- package/dist/components/ui/notification-dot.js +2 -2
- package/dist/components/ui/number-input.js +8 -8
- package/dist/components/ui/pagination.d.ts +1 -1
- package/dist/components/ui/pagination.js +2 -2
- package/dist/components/ui/panel.d.ts +1 -1
- package/dist/components/ui/panel.js +3 -3
- package/dist/components/ui/popover.d.ts +1 -1
- package/dist/components/ui/popover.js +3 -3
- package/dist/components/ui/progress.js +2 -2
- package/dist/components/ui/radio-group.d.ts.map +1 -1
- package/dist/components/ui/radio-group.js +2 -2
- package/dist/components/ui/resizable.d.ts +1 -1
- package/dist/components/ui/resizable.d.ts.map +1 -1
- package/dist/components/ui/resizable.js +15 -4
- package/dist/components/ui/scroll-area.d.ts.map +1 -1
- package/dist/components/ui/scroll-area.js +3 -3
- package/dist/components/ui/search-field.js +7 -7
- package/dist/components/ui/segmented-control.js +9 -9
- package/dist/components/ui/select.d.ts.map +1 -1
- package/dist/components/ui/select.js +6 -6
- package/dist/components/ui/separator.js +1 -1
- package/dist/components/ui/sheet.js +4 -4
- package/dist/components/ui/sidebar.d.ts +5 -5
- package/dist/components/ui/sidebar.d.ts.map +1 -1
- package/dist/components/ui/sidebar.js +111 -24
- package/dist/components/ui/skeleton.js +2 -2
- package/dist/components/ui/slider.d.ts +3 -1
- package/dist/components/ui/slider.d.ts.map +1 -1
- package/dist/components/ui/slider.js +3 -3
- package/dist/components/ui/sonner.js +1 -1
- package/dist/components/ui/spinner.d.ts.map +1 -1
- package/dist/components/ui/spinner.js +2 -2
- package/dist/components/ui/split-view.js +1 -1
- package/dist/components/ui/status.d.ts +1 -1
- package/dist/components/ui/status.d.ts.map +1 -1
- package/dist/components/ui/status.js +10 -9
- package/dist/components/ui/switch.js +2 -2
- package/dist/components/ui/table.d.ts.map +1 -1
- package/dist/components/ui/table.js +7 -7
- package/dist/components/ui/tabs.js +3 -3
- package/dist/components/ui/text.d.ts +2 -2
- package/dist/components/ui/text.js +19 -19
- package/dist/components/ui/textarea.js +2 -2
- package/dist/components/ui/toggle-group.d.ts +1 -1
- package/dist/components/ui/toggle-group.js +4 -4
- package/dist/components/ui/toggle.d.ts +1 -1
- package/dist/components/ui/toggle.js +10 -10
- package/dist/components/ui/toolbar.d.ts +7 -7
- package/dist/components/ui/toolbar.js +7 -7
- package/dist/components/ui/tooltip.d.ts +2 -2
- package/dist/components/ui/tooltip.js +5 -5
- package/dist/index.d.ts +21 -15
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -15
- package/dist/lib/frame-lifecycle.d.ts +49 -0
- package/dist/lib/frame-lifecycle.d.ts.map +1 -1
- package/dist/lib/frame-lifecycle.js +163 -1
- package/dist/lib/host-date-time-picker.d.ts +36 -0
- package/dist/lib/host-date-time-picker.d.ts.map +1 -0
- package/dist/lib/host-date-time-picker.js +162 -0
- package/dist/lib/host-file-dialog.d.ts +66 -0
- package/dist/lib/host-file-dialog.d.ts.map +1 -0
- package/dist/lib/host-file-dialog.js +221 -0
- package/dist/lib/host-native-menu.d.ts +116 -0
- package/dist/lib/host-native-menu.d.ts.map +1 -0
- package/dist/lib/host-native-menu.js +242 -0
- package/dist/lib/host-services.d.ts +13 -0
- package/dist/lib/host-services.d.ts.map +1 -0
- package/dist/lib/host-services.js +161 -0
- package/dist/lib/host-share.d.ts +39 -0
- package/dist/lib/host-share.d.ts.map +1 -0
- package/dist/lib/host-share.js +161 -0
- package/dist/lib/host-web-surface.d.ts +31 -0
- package/dist/lib/host-web-surface.d.ts.map +1 -0
- package/dist/lib/host-web-surface.js +116 -0
- package/dist/lib/native-capabilities/access.d.ts +2 -2
- package/dist/lib/native-capabilities/access.js +2 -2
- package/dist/lib/native-capabilities/bluetooth-access.d.ts +1 -1
- package/dist/lib/native-capabilities/bluetooth-access.js +2 -2
- package/dist/lib/native-capabilities/bluetooth-connection.d.ts +1 -1
- package/dist/lib/native-capabilities/bluetooth-connection.js +1 -1
- package/dist/lib/native-capabilities/bluetooth-gatt.d.ts +1 -1
- package/dist/lib/native-capabilities/bluetooth-gatt.js +1 -1
- package/dist/lib/native-capabilities/bluetooth-internal.d.ts +2 -2
- package/dist/lib/native-capabilities/bluetooth-internal.js +1 -1
- package/dist/lib/native-capabilities/bluetooth-native-fallback.d.ts +2 -2
- package/dist/lib/native-capabilities/bluetooth-native-fallback.js +2 -2
- package/dist/lib/native-capabilities/bluetooth.d.ts +6 -6
- package/dist/lib/native-capabilities/bluetooth.js +4 -4
- package/dist/lib/native-capabilities/bridge.d.ts +1 -1
- package/dist/lib/native-capabilities/bridge.js +2 -2
- package/dist/lib/native-capabilities/capabilities.d.ts +1 -1
- package/dist/lib/native-capabilities/capabilities.js +1 -1
- package/dist/lib/native-capabilities/clipboard.js +2 -2
- package/dist/lib/native-capabilities/device-io-errors.d.ts +1 -1
- package/dist/lib/native-capabilities/device-io-errors.js +1 -1
- package/dist/lib/native-capabilities/displays.d.ts +1 -1
- package/dist/lib/native-capabilities/displays.js +1 -1
- package/dist/lib/native-capabilities/global-shortcuts.d.ts +2 -2
- package/dist/lib/native-capabilities/global-shortcuts.js +1 -1
- package/dist/lib/native-capabilities/haptics.d.ts +1 -1
- package/dist/lib/native-capabilities/haptics.js +1 -1
- package/dist/lib/native-capabilities/hid-native.d.ts +2 -2
- package/dist/lib/native-capabilities/hid-native.js +3 -3
- package/dist/lib/native-capabilities/hid.js +5 -5
- package/dist/lib/native-capabilities/index.d.ts +39 -39
- package/dist/lib/native-capabilities/index.js +21 -21
- package/dist/lib/native-capabilities/local-authentication.d.ts +1 -1
- package/dist/lib/native-capabilities/local-authentication.js +1 -1
- package/dist/lib/native-capabilities/location.js +1 -1
- package/dist/lib/native-capabilities/media-permissions.d.ts +1 -1
- package/dist/lib/native-capabilities/media-permissions.js +1 -1
- package/dist/lib/native-capabilities/media.d.ts +1 -1
- package/dist/lib/native-capabilities/media.js +2 -2
- package/dist/lib/native-capabilities/midi-access.d.ts +1 -1
- package/dist/lib/native-capabilities/midi-access.js +3 -3
- package/dist/lib/native-capabilities/midi-internal.d.ts +1 -1
- package/dist/lib/native-capabilities/midi-internal.js +1 -1
- package/dist/lib/native-capabilities/midi-native-fallback.d.ts +1 -1
- package/dist/lib/native-capabilities/midi-native-fallback.js +2 -2
- package/dist/lib/native-capabilities/midi-ports.d.ts +1 -1
- package/dist/lib/native-capabilities/midi-ports.js +1 -1
- package/dist/lib/native-capabilities/midi.d.ts +5 -5
- package/dist/lib/native-capabilities/midi.js +3 -3
- package/dist/lib/native-capabilities/native-device-io.d.ts +1 -1
- package/dist/lib/native-capabilities/native-device-io.js +1 -1
- package/dist/lib/native-capabilities/native-device-lifecycle.js +1 -1
- package/dist/lib/native-capabilities/notifications.d.ts +2 -2
- package/dist/lib/native-capabilities/notifications.js +1 -1
- package/dist/lib/native-capabilities/power-session.d.ts +2 -2
- package/dist/lib/native-capabilities/power-session.js +1 -1
- package/dist/lib/native-capabilities/secure-storage.d.ts +1 -1
- package/dist/lib/native-capabilities/secure-storage.js +1 -1
- package/dist/lib/native-capabilities/serial-native.d.ts +2 -2
- package/dist/lib/native-capabilities/serial-native.js +3 -3
- package/dist/lib/native-capabilities/serial.js +5 -5
- package/dist/lib/native-capabilities/system-audio.d.ts +1 -1
- package/dist/lib/native-capabilities/system-audio.js +1 -1
- package/dist/lib/native-capabilities/usb-native.d.ts +2 -2
- package/dist/lib/native-capabilities/usb-native.js +3 -3
- package/dist/lib/native-capabilities/usb.js +5 -5
- package/dist/lib/native-hardware/bluetooth-access.d.ts +1 -1
- package/dist/lib/native-hardware/bluetooth-access.js +1 -1
- package/dist/lib/native-hardware/bluetooth-connection.d.ts +1 -1
- package/dist/lib/native-hardware/bluetooth-connection.js +1 -1
- package/dist/lib/native-hardware/bluetooth-gatt.d.ts +1 -1
- package/dist/lib/native-hardware/bluetooth-gatt.js +1 -1
- package/dist/lib/native-hardware/bluetooth-internal.d.ts +2 -2
- package/dist/lib/native-hardware/bluetooth-internal.js +1 -1
- package/dist/lib/native-hardware/bluetooth-native-fallback.d.ts +2 -2
- package/dist/lib/native-hardware/bluetooth-native-fallback.js +2 -2
- package/dist/lib/native-hardware/bluetooth.d.ts +6 -6
- package/dist/lib/native-hardware/bluetooth.js +4 -4
- package/dist/lib/native-hardware/bridge.d.ts +1 -1
- package/dist/lib/native-hardware/bridge.js +2 -2
- package/dist/lib/native-hardware/capabilities.d.ts +1 -1
- package/dist/lib/native-hardware/capabilities.js +1 -1
- package/dist/lib/native-hardware/clipboard.js +1 -1
- package/dist/lib/native-hardware/device-io-errors.d.ts +1 -1
- package/dist/lib/native-hardware/device-io-errors.js +1 -1
- package/dist/lib/native-hardware/displays.d.ts +1 -1
- package/dist/lib/native-hardware/displays.js +1 -1
- package/dist/lib/native-hardware/global-shortcuts.d.ts +2 -2
- package/dist/lib/native-hardware/global-shortcuts.js +1 -1
- package/dist/lib/native-hardware/haptics.d.ts +1 -1
- package/dist/lib/native-hardware/haptics.js +1 -1
- package/dist/lib/native-hardware/hid-native.d.ts +2 -2
- package/dist/lib/native-hardware/hid-native.js +3 -3
- package/dist/lib/native-hardware/hid.js +4 -4
- package/dist/lib/native-hardware/index.d.ts +37 -37
- package/dist/lib/native-hardware/index.js +20 -20
- package/dist/lib/native-hardware/local-authentication.d.ts +1 -1
- package/dist/lib/native-hardware/local-authentication.js +1 -1
- package/dist/lib/native-hardware/location.js +1 -1
- package/dist/lib/native-hardware/media-permissions.d.ts +1 -1
- package/dist/lib/native-hardware/media-permissions.js +1 -1
- package/dist/lib/native-hardware/media.d.ts +1 -1
- package/dist/lib/native-hardware/media.js +1 -1
- package/dist/lib/native-hardware/midi-access.d.ts +1 -1
- package/dist/lib/native-hardware/midi-access.js +2 -2
- package/dist/lib/native-hardware/midi-internal.d.ts +1 -1
- package/dist/lib/native-hardware/midi-internal.js +1 -1
- package/dist/lib/native-hardware/midi-native-fallback.d.ts +1 -1
- package/dist/lib/native-hardware/midi-native-fallback.js +2 -2
- package/dist/lib/native-hardware/midi-ports.d.ts +1 -1
- package/dist/lib/native-hardware/midi-ports.js +1 -1
- package/dist/lib/native-hardware/midi.d.ts +5 -5
- package/dist/lib/native-hardware/midi.js +3 -3
- package/dist/lib/native-hardware/native-device-io.d.ts +1 -1
- package/dist/lib/native-hardware/native-device-io.js +1 -1
- package/dist/lib/native-hardware/native-device-lifecycle.js +1 -1
- package/dist/lib/native-hardware/notifications.d.ts +2 -2
- package/dist/lib/native-hardware/notifications.js +1 -1
- package/dist/lib/native-hardware/power-session.d.ts +2 -2
- package/dist/lib/native-hardware/power-session.js +1 -1
- package/dist/lib/native-hardware/secure-storage.d.ts +1 -1
- package/dist/lib/native-hardware/secure-storage.js +1 -1
- package/dist/lib/native-hardware/serial-native.d.ts +2 -2
- package/dist/lib/native-hardware/serial-native.js +3 -3
- package/dist/lib/native-hardware/serial.js +4 -4
- package/dist/lib/native-hardware/system-audio.d.ts +1 -1
- package/dist/lib/native-hardware/system-audio.js +1 -1
- package/dist/lib/native-hardware/usb-native.d.ts +2 -2
- package/dist/lib/native-hardware/usb-native.js +3 -3
- package/dist/lib/native-hardware/usb.js +4 -4
- package/dist/lib/theme.js +1 -1
- package/docs/README.md +1 -0
- package/docs/design-tokens.md +28 -6
- package/docs/foundations.md +4 -2
- package/docs/visual-regression.md +78 -0
- package/package.json +15 -4
- package/src/components/ui/alert-dialog.md +27 -0
- package/src/components/ui/button.md +10 -3
- package/src/components/ui/confirm-dialog.md +97 -0
- package/src/components/ui/context-menu.md +158 -0
- package/src/components/ui/dialog.md +23 -4
- package/src/components/ui/dropdown-menu.md +165 -0
- package/src/components/ui/error-boundary-view.md +98 -0
- package/src/components/ui/hover-card.md +90 -0
- package/src/components/ui/select.md +111 -0
- package/src/lib/host-date-time-picker.md +29 -0
- package/src/lib/host-file-dialog.md +76 -0
- package/src/lib/host-native-menu.md +67 -0
- package/src/lib/host-share.md +36 -0
- package/src/lib/host-web-surface.md +66 -0
- package/src/styles/index.css +141 -68
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type CatalogCase, type CatalogCaseFilter, type CatalogManifest, type CatalogSectionDefinition, type CatalogStoryDefinition } from './catalog-types';
|
|
1
|
+
import { type CatalogCase, type CatalogCaseFilter, type CatalogManifest, type CatalogSectionDefinition, type CatalogStoryDefinition } from './catalog-types.js';
|
|
2
2
|
export declare function createCatalogStory(story: CatalogStoryDefinition): CatalogStoryDefinition;
|
|
3
3
|
export declare function createCatalogSection(section: CatalogSectionDefinition): CatalogSectionDefinition;
|
|
4
4
|
export declare function createCatalogManifest(manifest: CatalogManifest): CatalogManifest;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { catalogDensities, catalogThemes, catalogViewports, } from './catalog-types';
|
|
1
|
+
import { catalogDensities, catalogThemes, catalogViewports, } from './catalog-types.js';
|
|
2
2
|
const catalogIdPattern = /^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/;
|
|
3
3
|
function assertCatalogId(id, kind) {
|
|
4
4
|
if (!catalogIdPattern.test(id)) {
|
|
@@ -4,11 +4,13 @@ export declare const catalogDensities: readonly ["regular", "compact"];
|
|
|
4
4
|
export declare const catalogViewports: readonly ["wide", "narrow"];
|
|
5
5
|
export declare const catalogAccessibilityModes: readonly ["standard", "reduced-transparency", "increased-contrast", "reduced-motion"];
|
|
6
6
|
export declare const catalogInteractions: readonly ["rest", "hover", "focus-visible", "pressed", "selected", "disabled", "invalid", "loading", "empty"];
|
|
7
|
+
export declare const catalogLiveStates: readonly ["hover", "focus", "pressed"];
|
|
7
8
|
export type CatalogTheme = (typeof catalogThemes)[number];
|
|
8
9
|
export type CatalogDensity = (typeof catalogDensities)[number];
|
|
9
10
|
export type CatalogViewport = (typeof catalogViewports)[number];
|
|
10
11
|
export type CatalogAccessibilityMode = (typeof catalogAccessibilityModes)[number];
|
|
11
12
|
export type CatalogInteraction = (typeof catalogInteractions)[number];
|
|
13
|
+
export type CatalogLiveState = (typeof catalogLiveStates)[number];
|
|
12
14
|
export interface CatalogCaseContext {
|
|
13
15
|
caseId: string;
|
|
14
16
|
sectionId: string;
|
|
@@ -33,6 +35,11 @@ export interface CatalogStoryDefinition {
|
|
|
33
35
|
viewports?: readonly CatalogViewport[];
|
|
34
36
|
accessibilityModes?: readonly CatalogAccessibilityMode[];
|
|
35
37
|
interactions?: readonly CatalogInteraction[];
|
|
38
|
+
/**
|
|
39
|
+
* Browser-driven states captured from the element marked with
|
|
40
|
+
* `data-state-target="<space-separated states>"`.
|
|
41
|
+
*/
|
|
42
|
+
liveStates?: readonly CatalogLiveState[];
|
|
36
43
|
render: (context: CatalogCaseContext) => React.ReactNode;
|
|
37
44
|
}
|
|
38
45
|
export interface CatalogSectionDefinition {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"catalog-types.d.ts","sourceRoot":"","sources":["../../src/catalog/catalog-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAA;AAEnC,eAAO,MAAM,aAAa,4BAA6B,CAAA;AACvD,eAAO,MAAM,gBAAgB,iCAAkC,CAAA;AAC/D,eAAO,MAAM,gBAAgB,6BAA8B,CAAA;AAC3D,eAAO,MAAM,yBAAyB,uFAK5B,CAAA;AACV,eAAO,MAAM,mBAAmB,+GAUtB,CAAA;
|
|
1
|
+
{"version":3,"file":"catalog-types.d.ts","sourceRoot":"","sources":["../../src/catalog/catalog-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAA;AAEnC,eAAO,MAAM,aAAa,4BAA6B,CAAA;AACvD,eAAO,MAAM,gBAAgB,iCAAkC,CAAA;AAC/D,eAAO,MAAM,gBAAgB,6BAA8B,CAAA;AAC3D,eAAO,MAAM,yBAAyB,uFAK5B,CAAA;AACV,eAAO,MAAM,mBAAmB,+GAUtB,CAAA;AACV,eAAO,MAAM,iBAAiB,wCAAyC,CAAA;AAEvE,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;AACzD,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAA;AAC9D,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAA;AAC/D,MAAM,MAAM,wBAAwB,GAClC,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAA;AAC5C,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAA;AACrE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjE,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,YAAY,CAAA;IACnB,OAAO,EAAE,cAAc,CAAA;IACvB,QAAQ,EAAE,eAAe,CAAA;IACzB,iBAAiB,EAAE,wBAAwB,CAAA;IAC3C,WAAW,EAAE,kBAAkB,CAAA;CAChC;AAED,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B;;;OAGG;IACH,UAAU,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IAC9B,MAAM,CAAC,EAAE,SAAS,YAAY,EAAE,CAAA;IAChC,SAAS,CAAC,EAAE,SAAS,cAAc,EAAE,CAAA;IACrC,SAAS,CAAC,EAAE,SAAS,eAAe,EAAE,CAAA;IACtC,kBAAkB,CAAC,EAAE,SAAS,wBAAwB,EAAE,CAAA;IACxD,YAAY,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAA;IAC5C;;;OAGG;IACH,UAAU,CAAC,EAAE,SAAS,gBAAgB,EAAE,CAAA;IACxC,MAAM,EAAE,CAAC,OAAO,EAAE,kBAAkB,KAAK,KAAK,CAAC,SAAS,CAAA;CACzD;AAED,MAAM,WAAW,wBAAwB;IACvC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,OAAO,EAAE,SAAS,sBAAsB,EAAE,CAAA;CAC3C;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,QAAQ,EAAE,SAAS,wBAAwB,EAAE,CAAA;CAC9C;AAED,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACrD,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,MAAM,CAAA;IAClB,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,MAAM,EAAE,sBAAsB,CAAC,QAAQ,CAAC,CAAA;CACzC;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,QAAQ,CAAC,EAAE,eAAe,CAAA;IAC1B,iBAAiB,CAAC,EAAE,wBAAwB,CAAA;IAC5C,WAAW,CAAC,EAAE,kBAAkB,CAAA;CACjC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
import type { CatalogCase, CatalogCaseFilter, CatalogManifest } from './catalog-types';
|
|
2
|
+
import type { CatalogCase, CatalogCaseFilter, CatalogManifest } from './catalog-types.js';
|
|
3
3
|
export interface ComponentCatalogProps extends Omit<React.ComponentProps<'main'>, 'children'> {
|
|
4
4
|
manifest: CatalogManifest;
|
|
5
5
|
filter?: CatalogCaseFilter;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { cn } from '../lib/utils';
|
|
4
|
-
import { buildCatalogCases } from './catalog-manifest';
|
|
3
|
+
import { cn } from '../lib/utils.js';
|
|
4
|
+
import { buildCatalogCases } from './catalog-manifest.js';
|
|
5
5
|
function caseLabel(catalogCase) {
|
|
6
6
|
const labels = [
|
|
7
7
|
catalogCase.theme,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { CatalogCoverageExclusion } from './catalog-coverage';
|
|
1
|
+
import type { CatalogCoverageExclusion } from './catalog-coverage.js';
|
|
2
2
|
/**
|
|
3
3
|
* Intentional gaps in the deterministic core catalog. Keeping this list
|
|
4
4
|
* explicit makes every new public visual module choose between authored
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-catalog-exclusions.d.ts","sourceRoot":"","sources":["../../src/catalog/core-catalog-exclusions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAElE;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,wBAAwB,
|
|
1
|
+
{"version":3,"file":"core-catalog-exclusions.d.ts","sourceRoot":"","sources":["../../src/catalog/core-catalog-exclusions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAA;AAElE;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,EAAE,SAAS,wBAAwB,EAAO,CAAA"}
|
|
@@ -3,149 +3,4 @@
|
|
|
3
3
|
* explicit makes every new public visual module choose between authored
|
|
4
4
|
* coverage and a reviewable, temporary reason for deferral.
|
|
5
5
|
*/
|
|
6
|
-
export const coreCatalogExclusions = [
|
|
7
|
-
{
|
|
8
|
-
component: 'accordion',
|
|
9
|
-
reason: 'Needs an authored expanded and collapsed keyboard matrix.',
|
|
10
|
-
},
|
|
11
|
-
{
|
|
12
|
-
component: 'alert-dialog',
|
|
13
|
-
reason: 'Requires isolated portal rendering before open states are stable.',
|
|
14
|
-
},
|
|
15
|
-
{
|
|
16
|
-
component: 'aspect-ratio',
|
|
17
|
-
reason: 'Layout utility is exercised by consumer media compositions.',
|
|
18
|
-
},
|
|
19
|
-
{
|
|
20
|
-
component: 'calendar',
|
|
21
|
-
reason: 'Needs a dedicated date-grid interaction matrix.',
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
component: 'carousel',
|
|
25
|
-
reason: 'Needs stable geometry and navigation fixtures.',
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
component: 'chart',
|
|
29
|
-
reason: 'Needs deterministic chart data and resize fixtures.',
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
component: 'collapsible',
|
|
33
|
-
reason: 'Needs an authored disclosure-state matrix.',
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
component: 'combobox',
|
|
37
|
-
reason: 'Requires isolated portal and filtering coverage.',
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
component: 'command',
|
|
41
|
-
reason: 'Needs search, selection, empty, and keyboard fixtures.',
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
component: 'confirm-dialog',
|
|
45
|
-
reason: 'Requires isolated async portal-state rendering.',
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
component: 'context-menu',
|
|
49
|
-
reason: 'Requires isolated pointer-positioned portal rendering.',
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
component: 'dialog',
|
|
53
|
-
reason: 'Requires isolated portal rendering before open states are stable.',
|
|
54
|
-
},
|
|
55
|
-
{
|
|
56
|
-
component: 'drawer',
|
|
57
|
-
reason: 'Requires isolated viewport and gesture fixtures.',
|
|
58
|
-
},
|
|
59
|
-
{
|
|
60
|
-
component: 'dropdown-menu',
|
|
61
|
-
reason: 'Requires isolated portal and keyboard coverage.',
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
component: 'date-picker',
|
|
65
|
-
reason: 'Requires isolated calendar portal rendering.',
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
component: 'edge-fade',
|
|
69
|
-
reason: 'Needs deterministic overflow geometry.',
|
|
70
|
-
},
|
|
71
|
-
{
|
|
72
|
-
component: 'form',
|
|
73
|
-
reason: 'Behavioral adapter is covered through authored field stories.',
|
|
74
|
-
},
|
|
75
|
-
{
|
|
76
|
-
component: 'hover-card',
|
|
77
|
-
reason: 'Requires isolated delayed-hover portal rendering.',
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
component: 'input-group',
|
|
81
|
-
reason: 'Needs addon, button, and validation compositions.',
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
component: 'input-otp',
|
|
85
|
-
reason: 'Needs input-sequence and paste fixtures.',
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
component: 'inspector',
|
|
89
|
-
reason: 'Needs a representative property-editing composition.',
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
component: 'label',
|
|
93
|
-
reason: 'Covered indirectly by labeled control compositions.',
|
|
94
|
-
},
|
|
95
|
-
{
|
|
96
|
-
component: 'menubar',
|
|
97
|
-
reason: 'Requires isolated multi-menu portal coverage.',
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
component: 'message-scroller',
|
|
101
|
-
reason: 'Needs deterministic overflow and anchoring geometry.',
|
|
102
|
-
},
|
|
103
|
-
{
|
|
104
|
-
component: 'navigation-menu',
|
|
105
|
-
reason: 'Requires isolated viewport and portal coverage.',
|
|
106
|
-
},
|
|
107
|
-
{
|
|
108
|
-
component: 'pagination',
|
|
109
|
-
reason: 'Needs compact and large-page-count compositions.',
|
|
110
|
-
},
|
|
111
|
-
{
|
|
112
|
-
component: 'resizable',
|
|
113
|
-
reason: 'Needs stable browser geometry and drag fixtures.',
|
|
114
|
-
},
|
|
115
|
-
{
|
|
116
|
-
component: 'scroll-area',
|
|
117
|
-
reason: 'Needs deterministic overflow geometry.',
|
|
118
|
-
},
|
|
119
|
-
{
|
|
120
|
-
component: 'select',
|
|
121
|
-
reason: 'Requires isolated portal and keyboard coverage.',
|
|
122
|
-
},
|
|
123
|
-
{
|
|
124
|
-
component: 'separator',
|
|
125
|
-
reason: 'Covered indirectly by toolbar, item, and panel compositions.',
|
|
126
|
-
},
|
|
127
|
-
{
|
|
128
|
-
component: 'sheet',
|
|
129
|
-
reason: 'Requires isolated portal and viewport-edge coverage.',
|
|
130
|
-
},
|
|
131
|
-
{
|
|
132
|
-
component: 'sidebar',
|
|
133
|
-
reason: 'Needs a complete app-shell viewport fixture.',
|
|
134
|
-
},
|
|
135
|
-
{
|
|
136
|
-
component: 'slider',
|
|
137
|
-
reason: 'Needs pointer and keyboard value fixtures.',
|
|
138
|
-
},
|
|
139
|
-
{
|
|
140
|
-
component: 'split-view',
|
|
141
|
-
reason: 'Needs stable browser geometry and drag fixtures.',
|
|
142
|
-
},
|
|
143
|
-
{
|
|
144
|
-
component: 'sonner',
|
|
145
|
-
reason: 'Requires an isolated live toaster host.',
|
|
146
|
-
},
|
|
147
|
-
{
|
|
148
|
-
component: 'tooltip',
|
|
149
|
-
reason: 'Requires isolated delayed portal rendering.',
|
|
150
|
-
},
|
|
151
|
-
];
|
|
6
|
+
export const coreCatalogExclusions = [];
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const coreComponentCatalog: import("./catalog-types").CatalogManifest;
|
|
1
|
+
export declare const coreComponentCatalog: import("./catalog-types.js").CatalogManifest;
|
|
2
2
|
//# sourceMappingURL=core-catalog.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-catalog.d.ts","sourceRoot":"","sources":["../../src/catalog/core-catalog.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"core-catalog.d.ts","sourceRoot":"","sources":["../../src/catalog/core-catalog.tsx"],"names":[],"mappings":"AAUA,eAAO,MAAM,oBAAoB,2CAc/B,CAAA"}
|
|
@@ -1,18 +1,22 @@
|
|
|
1
|
-
import { createCatalogManifest } from './catalog-manifest';
|
|
2
|
-
import { coreCollectionsSection } from './core-collection-stories';
|
|
3
|
-
import { coreControlsSection } from './core-control-stories';
|
|
4
|
-
import { coreFeedbackSection } from './core-feedback-stories';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
1
|
+
import { createCatalogManifest } from './catalog-manifest.js';
|
|
2
|
+
import { coreCollectionsSection } from './core-collection-stories.js';
|
|
3
|
+
import { coreControlsSection } from './core-control-stories.js';
|
|
4
|
+
import { coreFeedbackSection } from './core-feedback-stories.js';
|
|
5
|
+
import { coreFormsSection } from './core-form-stories.js';
|
|
6
|
+
import { coreFoundationSection } from './core-foundation-stories.js';
|
|
7
|
+
import { coreLayoutSection } from './core-layout-stories.js';
|
|
8
|
+
import { coreNavigationSection } from './core-navigation-stories.js';
|
|
9
|
+
import { coreOverlaysSection } from './core-overlay-stories.js';
|
|
8
10
|
export const coreComponentCatalog = createCatalogManifest({
|
|
9
11
|
title: 'Moldable UI component catalog',
|
|
10
12
|
description: 'Deterministic component cases for review and visual regression coverage.',
|
|
11
13
|
sections: [
|
|
12
14
|
coreFoundationSection,
|
|
13
15
|
coreControlsSection,
|
|
16
|
+
coreFormsSection,
|
|
14
17
|
coreCollectionsSection,
|
|
15
18
|
coreNavigationSection,
|
|
19
|
+
coreLayoutSection,
|
|
16
20
|
coreOverlaysSection,
|
|
17
21
|
coreFeedbackSection,
|
|
18
22
|
],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-collection-stories.d.ts","sourceRoot":"","sources":["../../src/catalog/core-collection-stories.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"core-collection-stories.d.ts","sourceRoot":"","sources":["../../src/catalog/core-collection-stories.tsx"],"names":[],"mappings":"AAqDA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAA;AAgB/D,eAAO,MAAM,sBAAsB,EAAE,wBAoNpC,CAAA"}
|
|
@@ -1,10 +1,25 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { FileTextIcon, MoreHorizontalIcon } from 'lucide-react';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
3
|
+
import { Avatar, AvatarFallback, AvatarGroup, AvatarGroupCount, } from '../components/ui/avatar.js';
|
|
4
|
+
import { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, } from '../components/ui/carousel.js';
|
|
5
|
+
import { ChartContainer, ChartLegend, ChartLegendContent, ChartTooltip, ChartTooltipContent, } from '../components/ui/chart.js';
|
|
6
|
+
import { Grid, GridItem, GridItemContent, GridItemDescription, GridItemTitle, } from '../components/ui/grid.js';
|
|
7
|
+
import { IconButton } from '../components/ui/icon-button.js';
|
|
8
|
+
import { Item, ItemActions, ItemContent, ItemDescription, ItemGroup, ItemMedia, ItemTitle, } from '../components/ui/item.js';
|
|
9
|
+
import { List, ListItem, ListItemContent, ListItemDescription, ListItemTitle, } from '../components/ui/list.js';
|
|
10
|
+
import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from '../components/ui/table.js';
|
|
11
|
+
import { Bar, BarChart, CartesianGrid, XAxis } from 'recharts';
|
|
12
|
+
const chartData = [
|
|
13
|
+
{ day: 'Mon', created: 4, completed: 2 },
|
|
14
|
+
{ day: 'Tue', created: 7, completed: 5 },
|
|
15
|
+
{ day: 'Wed', created: 5, completed: 6 },
|
|
16
|
+
{ day: 'Thu', created: 9, completed: 7 },
|
|
17
|
+
{ day: 'Fri', created: 6, completed: 8 },
|
|
18
|
+
];
|
|
19
|
+
const chartConfig = {
|
|
20
|
+
created: { label: 'Created', color: 'var(--chart-1)' },
|
|
21
|
+
completed: { label: 'Completed', color: 'var(--chart-2)' },
|
|
22
|
+
};
|
|
8
23
|
export const coreCollectionsSection = {
|
|
9
24
|
id: 'collections',
|
|
10
25
|
title: 'Collections',
|
|
@@ -28,15 +43,32 @@ export const coreCollectionsSection = {
|
|
|
28
43
|
id: 'data-table',
|
|
29
44
|
title: 'Dense selectable table',
|
|
30
45
|
components: ['table'],
|
|
31
|
-
|
|
32
|
-
render: ({ density, interaction }) => (_jsxs(Table, { density: density === 'compact' ? 'compact' : 'default', children: [_jsx(TableHeader, { children: _jsxs(TableRow, { children: [_jsx(TableHead, { children: "Name" }), _jsx(TableHead, { children: "Status" })] }) }), _jsx(TableBody, { children: interaction === 'empty' ? (_jsx(TableRow, { children: _jsx(TableCell, { colSpan: 2, className: "text-muted-foreground", children: "No projects" }) })) : (_jsxs(_Fragment, { children: [_jsxs(TableRow, { "data-catalog-target": true, selected: interaction === 'selected', disabled: interaction === 'disabled', autoFocus: interaction === 'focus-visible', children: [_jsx(TableCell, { children: "Personal" }), _jsx(TableCell, { children: "Active" })] }), _jsxs(TableRow, { children: [_jsx(TableCell, { children: "Archive" }), _jsx(TableCell, { children: "Local" })] })] })) })] })),
|
|
46
|
+
render: () => (_jsx("div", { className: "grid gap-4", children: ['default', 'compact'].map((density) => (_jsxs("div", { children: [_jsxs("p", { className: "text-muted-foreground mb-1 text-xs capitalize", children: [density, " density"] }), _jsxs(Table, { density: density, children: [_jsx(TableHeader, { children: _jsxs(TableRow, { children: [_jsx(TableHead, { children: "Name" }), _jsx(TableHead, { children: "Status" })] }) }), _jsxs(TableBody, { children: [_jsxs(TableRow, { selected: true, children: [_jsx(TableCell, { children: "Personal" }), _jsx(TableCell, { children: "Active" })] }), _jsxs(TableRow, { disabled: true, children: [_jsx(TableCell, { children: "Archive" }), _jsx(TableCell, { children: "Unavailable" })] }), _jsxs(TableRow, { children: [_jsx(TableCell, { children: "Work" }), _jsx(TableCell, { children: "Local" })] })] })] })] }, density))) })),
|
|
33
47
|
},
|
|
34
48
|
{
|
|
35
49
|
id: 'item-anatomy',
|
|
36
50
|
title: 'Item anatomy',
|
|
37
51
|
components: ['item'],
|
|
38
52
|
viewports: ['narrow'],
|
|
39
|
-
render: () => (_jsx(ItemGroup, { children: _jsxs(Item, { size: "sm", variant: "outline", children: [_jsx(ItemMedia, { variant: "icon", children: _jsx(FileTextIcon, {}) }), _jsxs(ItemContent, { children: [_jsx(ItemTitle, { children: "Project brief" }), _jsx(ItemDescription, { children: "Edited five minutes ago" })] }), _jsx(ItemActions, { children: _jsx(IconButton, { label: "More actions", size: "sm", variant: "ghost", children: _jsx(MoreHorizontalIcon, {}) }) })] }) })),
|
|
53
|
+
render: () => (_jsx(ItemGroup, { children: _jsxs(Item, { role: "listitem", size: "sm", variant: "outline", children: [_jsx(ItemMedia, { variant: "icon", children: _jsx(FileTextIcon, {}) }), _jsxs(ItemContent, { children: [_jsx(ItemTitle, { children: "Project brief" }), _jsx(ItemDescription, { children: "Edited five minutes ago" })] }), _jsx(ItemActions, { children: _jsx(IconButton, { label: "More actions", size: "sm", variant: "ghost", children: _jsx(MoreHorizontalIcon, {}) }) })] }) })),
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
id: 'carousel-frame',
|
|
57
|
+
title: 'Static carousel frame',
|
|
58
|
+
components: ['carousel'],
|
|
59
|
+
render: () => (_jsxs(Carousel, { className: "mx-auto w-[min(100%-5rem,28rem)]", children: [_jsx(CarouselContent, { children: ['Today', 'Upcoming', 'Archive'].map((label, index) => (_jsx(CarouselItem, { children: _jsx("div", { className: "bg-card grid h-36 place-items-center rounded-md border", children: _jsxs("div", { className: "text-center", children: [_jsx("p", { className: "font-medium", children: label }), _jsxs("p", { className: "text-muted-foreground text-sm", children: ["Frame ", index + 1, " of 3"] })] }) }) }, label))) }), _jsx(CarouselPrevious, {}), _jsx(CarouselNext, {})] })),
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
id: 'seeded-chart',
|
|
63
|
+
title: 'Seeded activity chart',
|
|
64
|
+
components: ['chart'],
|
|
65
|
+
render: () => (_jsx(ChartContainer, { id: "catalog-activity", config: chartConfig, className: "h-64 w-full", children: _jsxs(BarChart, { accessibilityLayer: true, data: chartData, children: [_jsx(CartesianGrid, { vertical: false }), _jsx(XAxis, { dataKey: "day", tickLine: false, tickMargin: 8, axisLine: false }), _jsx(ChartTooltip, { cursor: false, content: _jsx(ChartTooltipContent, {}) }), _jsx(ChartLegend, { content: _jsx(ChartLegendContent, {}) }), _jsx(Bar, { dataKey: "created", fill: "var(--color-created)", radius: [3, 3, 0, 0] }), _jsx(Bar, { dataKey: "completed", fill: "var(--color-completed)", radius: [3, 3, 0, 0] })] }) })),
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
id: 'avatar-group-overflow',
|
|
69
|
+
title: 'Avatar group overflow',
|
|
70
|
+
components: ['avatar'],
|
|
71
|
+
render: () => (_jsxs("div", { className: "flex items-center gap-4", children: [_jsxs(AvatarGroup, { "aria-label": "Workspace collaborators", children: [['RM', 'AK', 'SL'].map((initials) => (_jsx(Avatar, { children: _jsx(AvatarFallback, { children: initials }) }, initials))), _jsx(AvatarGroupCount, { "aria-label": "4 more collaborators", children: "+4" })] }), _jsx("span", { className: "text-muted-foreground text-sm", children: "7 collaborators" })] })),
|
|
40
72
|
},
|
|
41
73
|
],
|
|
42
74
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-control-stories.d.ts","sourceRoot":"","sources":["../../src/catalog/core-control-stories.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"core-control-stories.d.ts","sourceRoot":"","sources":["../../src/catalog/core-control-stories.tsx"],"names":[],"mappings":"AA2CA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAA;AAuC/D,eAAO,MAAM,mBAAmB,EAAE,wBAoUjC,CAAA"}
|
|
@@ -1,22 +1,37 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { BoldIcon, ItalicIcon, PlusIcon } from 'lucide-react';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
2
|
+
import { AtSignIcon, BoldIcon, ItalicIcon, PlusIcon } from 'lucide-react';
|
|
3
|
+
import { useForm } from 'react-hook-form';
|
|
4
|
+
import { Button } from '../components/ui/button.js';
|
|
5
|
+
import { ButtonGroup, ButtonGroupText } from '../components/ui/button-group.js';
|
|
6
|
+
import { Checkbox } from '../components/ui/checkbox.js';
|
|
7
|
+
import { ColorWell } from '../components/ui/color-well.js';
|
|
8
|
+
import { DateField } from '../components/ui/date-field.js';
|
|
9
|
+
import { Field, FieldContent, FieldDescription, FieldLabel, } from '../components/ui/field.js';
|
|
10
|
+
import { Form, FormControl, FormDescription, FormField, FormItem, FormLabel, FormMessage, } from '../components/ui/form.js';
|
|
11
|
+
import { IconButton } from '../components/ui/icon-button.js';
|
|
12
|
+
import { Input } from '../components/ui/input.js';
|
|
13
|
+
import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, } from '../components/ui/input-group.js';
|
|
14
|
+
import { Kbd, KbdGroup } from '../components/ui/kbd.js';
|
|
15
|
+
import { NumberInput } from '../components/ui/number-input.js';
|
|
16
|
+
import { RadioGroup, RadioGroupItem } from '../components/ui/radio-group.js';
|
|
17
|
+
import { SearchField } from '../components/ui/search-field.js';
|
|
18
|
+
import { SegmentedControl, SegmentedControlItem, } from '../components/ui/segmented-control.js';
|
|
19
|
+
import { Switch } from '../components/ui/switch.js';
|
|
20
|
+
import { Textarea } from '../components/ui/textarea.js';
|
|
21
|
+
import { ToggleButton } from '../components/ui/toggle.js';
|
|
22
|
+
import { ToggleGroup, ToggleGroupItem } from '../components/ui/toggle-group.js';
|
|
23
|
+
function CatalogFormFixture() {
|
|
24
|
+
const form = useForm({
|
|
25
|
+
defaultValues: { project: '' },
|
|
26
|
+
errors: {
|
|
27
|
+
project: {
|
|
28
|
+
type: 'required',
|
|
29
|
+
message: 'Project name is required.',
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
});
|
|
33
|
+
return (_jsx(Form, { ...form, children: _jsx("form", { className: "max-w-sm", children: _jsx(FormField, { control: form.control, name: "project", render: ({ field }) => (_jsxs(FormItem, { children: [_jsx(FormLabel, { children: "Project name" }), _jsx(FormControl, { children: _jsx(Input, { placeholder: "Personal dashboard", ...field }) }), _jsx(FormDescription, { children: "Shown in the app titlebar." }), _jsx(FormMessage, {})] })) }) }) }));
|
|
34
|
+
}
|
|
20
35
|
function controlId(caseId, suffix) {
|
|
21
36
|
return `catalog-${caseId.replaceAll('/', '-')}-${suffix}`;
|
|
22
37
|
}
|
|
@@ -29,7 +44,8 @@ export const coreControlsSection = {
|
|
|
29
44
|
title: 'Button',
|
|
30
45
|
components: ['button'],
|
|
31
46
|
interactions: ['rest', 'focus-visible', 'disabled'],
|
|
32
|
-
|
|
47
|
+
liveStates: ['hover', 'focus', 'pressed'],
|
|
48
|
+
render: ({ interaction }) => (_jsxs("div", { className: "grid gap-2", children: [_jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsxs(Button, { size: "xs", variant: "outline", disabled: interaction === 'disabled', children: [_jsx(PlusIcon, {}), "Extra small"] }), _jsxs(Button, { size: "sm", disabled: interaction === 'disabled', children: [_jsx(PlusIcon, {}), "Small"] }), _jsxs(Button, { "data-catalog-target": true, "data-state-target": "hover focus pressed", autoFocus: interaction === 'focus-visible', disabled: interaction === 'disabled', children: [_jsx(PlusIcon, {}), "Default"] }), _jsxs(Button, { size: "lg", disabled: interaction === 'disabled', children: [_jsx(PlusIcon, {}), "Large"] })] }), _jsx("div", { className: "flex flex-wrap items-center gap-2", children: ['xs', 'sm', 'default', 'lg'].map((size) => (_jsx(IconButton, { label: `Add item, ${size} size`, size: size, variant: "outline", disabled: interaction === 'disabled', children: _jsx(PlusIcon, {}) }, size))) })] })),
|
|
33
49
|
},
|
|
34
50
|
{
|
|
35
51
|
id: 'icon-button',
|
|
@@ -43,7 +59,8 @@ export const coreControlsSection = {
|
|
|
43
59
|
title: 'Segmented control',
|
|
44
60
|
components: ['segmented-control'],
|
|
45
61
|
interactions: ['rest', 'focus-visible', 'disabled'],
|
|
46
|
-
|
|
62
|
+
liveStates: ['hover', 'focus', 'pressed'],
|
|
63
|
+
render: ({ interaction }) => (_jsxs(SegmentedControl, { "aria-label": "Calendar view", defaultValue: "month", disabled: interaction === 'disabled', children: [_jsx(SegmentedControlItem, { "data-catalog-target": true, "data-state-target": "hover focus pressed", value: "week", autoFocus: interaction === 'focus-visible', children: "Week" }), _jsx(SegmentedControlItem, { value: "month", children: "Month" })] })),
|
|
47
64
|
},
|
|
48
65
|
{
|
|
49
66
|
id: 'text-field',
|
|
@@ -73,7 +90,7 @@ export const coreControlsSection = {
|
|
|
73
90
|
const invalid = interaction === 'invalid' || undefined;
|
|
74
91
|
const checkboxId = controlId(caseId, 'notifications');
|
|
75
92
|
const switchId = controlId(caseId, 'sync');
|
|
76
|
-
return (_jsxs("div", { className: "grid gap-3 text-sm", children: [_jsxs("label", { className: "flex items-center gap-2", htmlFor: checkboxId, children: [_jsx(Checkbox, { "data-catalog-target": true, id: checkboxId, defaultChecked: selected, disabled: disabled, "aria-invalid": invalid }), "Notifications"] }), _jsxs("label", { className: "flex items-center gap-2", htmlFor: switchId, children: [_jsx(Switch, { id: switchId, defaultChecked: selected, disabled: disabled, "aria-invalid": invalid }), "Sync automatically"] }), _jsxs(RadioGroup, { "aria-label": "Priority", defaultValue: selected ? 'high' : 'normal', disabled: disabled, children: [_jsxs("label", { className: "flex items-center gap-2", children: [_jsx(RadioGroupItem, { value: "normal", "aria-invalid": invalid }), "Normal priority"] }), _jsxs("label", { className: "flex items-center gap-2", children: [_jsx(RadioGroupItem, { value: "high", "aria-invalid": invalid }), "High priority"] })] })] }));
|
|
93
|
+
return (_jsxs("div", { className: "grid gap-3 text-sm", children: [_jsxs("label", { className: "flex items-center gap-2", htmlFor: checkboxId, children: [_jsx(Checkbox, { "data-catalog-target": true, id: checkboxId, defaultChecked: interaction === 'rest' || selected, disabled: disabled, "aria-invalid": invalid }), "Notifications"] }), _jsxs("label", { className: "flex items-center gap-2", htmlFor: switchId, children: [_jsx(Switch, { id: switchId, defaultChecked: selected, disabled: disabled, "aria-invalid": invalid }), "Sync automatically"] }), _jsxs(RadioGroup, { "aria-label": "Priority", defaultValue: selected ? 'high' : 'normal', disabled: disabled, children: [_jsxs("label", { className: "flex items-center gap-2", children: [_jsx(RadioGroupItem, { value: "normal", "aria-invalid": invalid }), "Normal priority"] }), _jsxs("label", { className: "flex items-center gap-2", children: [_jsx(RadioGroupItem, { value: "high", "aria-invalid": invalid }), "High priority"] })] })] }));
|
|
77
94
|
},
|
|
78
95
|
},
|
|
79
96
|
{
|
|
@@ -81,7 +98,8 @@ export const coreControlsSection = {
|
|
|
81
98
|
title: 'Toggle and grouped controls',
|
|
82
99
|
components: ['button-group', 'kbd', 'toggle', 'toggle-group'],
|
|
83
100
|
interactions: ['rest', 'selected', 'disabled'],
|
|
84
|
-
|
|
101
|
+
liveStates: ['hover', 'focus', 'pressed'],
|
|
102
|
+
render: ({ interaction }) => (_jsxs("div", { className: "flex flex-wrap items-center gap-3", children: [_jsx(ToggleButton, { "data-catalog-target": true, "data-state-target": "hover focus pressed", iconOnly: true, "aria-label": "Bold", defaultPressed: interaction === 'selected', disabled: interaction === 'disabled', children: _jsx(BoldIcon, {}) }), _jsxs(ToggleGroup, { type: "multiple", variant: "outline", defaultValue: interaction === 'selected' ? ['italic'] : [], disabled: interaction === 'disabled', "aria-label": "Formatting", children: [_jsx(ToggleGroupItem, { value: "bold", children: "Bold" }), _jsxs(ToggleGroupItem, { value: "italic", children: [_jsx(ItalicIcon, {}), "Italic"] })] }), _jsxs(ButtonGroup, { children: [_jsx(ButtonGroupText, { children: _jsxs(KbdGroup, { children: [_jsx(Kbd, { children: "\u2318" }), _jsx(Kbd, { children: "K" })] }) }), _jsx(Button, { variant: "outline", disabled: interaction === 'disabled', children: "Commands" })] })] })),
|
|
85
103
|
},
|
|
86
104
|
{
|
|
87
105
|
id: 'value-fields',
|
|
@@ -90,5 +108,18 @@ export const coreControlsSection = {
|
|
|
90
108
|
interactions: ['rest', 'focus-visible', 'disabled', 'invalid'],
|
|
91
109
|
render: ({ interaction }) => (_jsxs("div", { className: "grid max-w-sm gap-3", children: [_jsx(Textarea, { "data-catalog-target": true, "aria-label": "Notes", defaultValue: "Keep the interface quiet and direct.", autoFocus: interaction === 'focus-visible', disabled: interaction === 'disabled', "aria-invalid": interaction === 'invalid' || undefined }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(NumberInput, { "aria-label": "Duration", defaultValue: 25, unit: "min", disabled: interaction === 'disabled', "aria-invalid": interaction === 'invalid' || undefined, className: "w-32" }), _jsx(ColorWell, { "aria-label": "Accent color", value: "#ff6b4a", disabled: interaction === 'disabled' })] })] })),
|
|
92
110
|
},
|
|
111
|
+
{
|
|
112
|
+
id: 'input-groups',
|
|
113
|
+
title: 'Input groups and labels',
|
|
114
|
+
components: ['input-group', 'label'],
|
|
115
|
+
liveStates: ['focus'],
|
|
116
|
+
render: () => (_jsxs("div", { className: "grid max-w-sm gap-3", children: [_jsxs(InputGroup, { children: [_jsx(InputGroupAddon, { children: _jsx(AtSignIcon, {}) }), _jsx(InputGroupInput, { "data-state-target": "focus", "aria-label": "Username", value: "moldable", readOnly: true }), _jsx(InputGroupAddon, { align: "inline-end", children: _jsx(InputGroupText, { children: ".sh" }) })] }), _jsxs(InputGroup, { children: [_jsx(InputGroupInput, { "aria-label": "Invite address", placeholder: "person@example.com" }), _jsx(InputGroupAddon, { align: "inline-end", children: _jsx(InputGroupButton, { children: "Invite" }) })] }), _jsx(InputGroup, { "data-disabled": "true", children: _jsx(InputGroupInput, { "aria-label": "Disabled workspace URL", value: "local-only", disabled: true, readOnly: true }) })] })),
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
id: 'validated-form',
|
|
120
|
+
title: 'Validated form adapter',
|
|
121
|
+
components: ['form'],
|
|
122
|
+
render: () => _jsx(CatalogFormFixture, {}),
|
|
123
|
+
},
|
|
93
124
|
],
|
|
94
125
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core-feedback-stories.d.ts","sourceRoot":"","sources":["../../src/catalog/core-feedback-stories.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"core-feedback-stories.d.ts","sourceRoot":"","sources":["../../src/catalog/core-feedback-stories.tsx"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAA;AAqC/D,eAAO,MAAM,mBAAmB,EAAE,wBAwMjC,CAAA"}
|