@moldable-ai/ui 0.2.19 → 0.2.21
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 +15 -0
- package/dist/catalog/catalog-coverage.d.ts.map +1 -0
- package/dist/catalog/catalog-coverage.js +44 -0
- package/dist/catalog/catalog-manifest.d.ts +6 -0
- package/dist/catalog/catalog-manifest.d.ts.map +1 -0
- package/dist/catalog/catalog-manifest.js +117 -0
- package/dist/catalog/catalog-types.d.ts +64 -0
- package/dist/catalog/catalog-types.d.ts.map +1 -0
- package/dist/catalog/catalog-types.js +20 -0
- package/dist/catalog/component-catalog.d.ts +14 -0
- package/dist/catalog/component-catalog.d.ts.map +1 -0
- package/dist/catalog/component-catalog.js +49 -0
- package/dist/catalog/core-catalog-exclusions.d.ts +8 -0
- package/dist/catalog/core-catalog-exclusions.d.ts.map +1 -0
- package/dist/catalog/core-catalog-exclusions.js +151 -0
- package/dist/catalog/core-catalog.d.ts +2 -0
- package/dist/catalog/core-catalog.d.ts.map +1 -0
- package/dist/catalog/core-catalog.js +19 -0
- package/dist/catalog/core-collection-stories.d.ts +3 -0
- package/dist/catalog/core-collection-stories.d.ts.map +1 -0
- package/dist/catalog/core-collection-stories.js +42 -0
- package/dist/catalog/core-control-stories.d.ts +3 -0
- package/dist/catalog/core-control-stories.d.ts.map +1 -0
- package/dist/catalog/core-control-stories.js +94 -0
- package/dist/catalog/core-feedback-stories.d.ts +3 -0
- package/dist/catalog/core-feedback-stories.d.ts.map +1 -0
- package/dist/catalog/core-feedback-stories.js +50 -0
- package/dist/catalog/core-foundation-stories.d.ts +3 -0
- package/dist/catalog/core-foundation-stories.d.ts.map +1 -0
- package/dist/catalog/core-foundation-stories.js +53 -0
- package/dist/catalog/core-navigation-stories.d.ts +3 -0
- package/dist/catalog/core-navigation-stories.d.ts.map +1 -0
- package/dist/catalog/core-navigation-stories.js +25 -0
- package/dist/catalog/core-overlay-stories.d.ts +3 -0
- package/dist/catalog/core-overlay-stories.d.ts.map +1 -0
- package/dist/catalog/core-overlay-stories.js +20 -0
- package/dist/catalog/index.d.ts +7 -0
- package/dist/catalog/index.d.ts.map +1 -0
- package/dist/catalog/index.js +6 -0
- package/dist/components/app-error-boundary.d.ts +1 -0
- package/dist/components/app-error-boundary.d.ts.map +1 -1
- package/dist/components/app-error-boundary.js +13 -0
- package/dist/components/chat/chat-image-lightbox.d.ts +9 -0
- package/dist/components/chat/chat-image-lightbox.d.ts.map +1 -0
- package/dist/components/chat/chat-image-lightbox.js +9 -0
- package/dist/components/chat/chat-message.d.ts +19 -1
- package/dist/components/chat/chat-message.d.ts.map +1 -1
- package/dist/components/chat/chat-message.js +66 -16
- package/dist/components/chat/chat-messages.d.ts +5 -2
- package/dist/components/chat/chat-messages.d.ts.map +1 -1
- package/dist/components/chat/chat-messages.js +61 -6
- package/dist/components/chat/chat-panel.d.ts +49 -6
- package/dist/components/chat/chat-panel.d.ts.map +1 -1
- package/dist/components/chat/chat-panel.js +196 -163
- package/dist/components/chat/conversation-history.d.ts +39 -5
- package/dist/components/chat/conversation-history.d.ts.map +1 -1
- package/dist/components/chat/conversation-history.js +192 -26
- package/dist/components/chat/index.d.ts +2 -2
- package/dist/components/chat/index.d.ts.map +1 -1
- package/dist/components/chat/index.js +1 -1
- package/dist/components/chat/tool-handlers.d.ts.map +1 -1
- package/dist/components/chat/tool-handlers.js +40 -2
- package/dist/components/chat/vertical-scroll-fade.d.ts +6 -0
- package/dist/components/chat/vertical-scroll-fade.d.ts.map +1 -0
- package/dist/components/chat/vertical-scroll-fade.js +12 -0
- package/dist/components/native-capabilities/bluetooth-panel-helpers.d.ts +9 -0
- package/dist/components/native-capabilities/bluetooth-panel-helpers.d.ts.map +1 -0
- package/dist/components/native-capabilities/bluetooth-panel-helpers.js +37 -0
- package/dist/components/native-capabilities/bluetooth-panel.d.ts +56 -0
- package/dist/components/native-capabilities/bluetooth-panel.d.ts.map +1 -0
- package/dist/components/native-capabilities/bluetooth-panel.js +470 -0
- package/dist/components/native-capabilities/camera-preview.d.ts +39 -0
- package/dist/components/native-capabilities/camera-preview.d.ts.map +1 -0
- package/dist/components/native-capabilities/camera-preview.js +228 -0
- package/dist/components/native-capabilities/capability-badge.d.ts +23 -0
- package/dist/components/native-capabilities/capability-badge.d.ts.map +1 -0
- package/dist/components/native-capabilities/capability-badge.js +39 -0
- package/dist/components/native-capabilities/capability-matrix.d.ts +14 -0
- package/dist/components/native-capabilities/capability-matrix.d.ts.map +1 -0
- package/dist/components/native-capabilities/capability-matrix.js +97 -0
- package/dist/components/native-capabilities/clipboard-button.d.ts +26 -0
- package/dist/components/native-capabilities/clipboard-button.d.ts.map +1 -0
- package/dist/components/native-capabilities/clipboard-button.js +99 -0
- package/dist/components/native-capabilities/device-io-controls.d.ts +4 -0
- package/dist/components/native-capabilities/device-io-controls.d.ts.map +1 -0
- package/dist/components/native-capabilities/device-io-controls.js +28 -0
- package/dist/components/native-capabilities/device-list.d.ts +20 -0
- package/dist/components/native-capabilities/device-list.d.ts.map +1 -0
- package/dist/components/native-capabilities/device-list.js +14 -0
- package/dist/components/native-capabilities/display-map.d.ts +23 -0
- package/dist/components/native-capabilities/display-map.d.ts.map +1 -0
- package/dist/components/native-capabilities/display-map.js +114 -0
- package/dist/components/native-capabilities/haptic-button.d.ts +26 -0
- package/dist/components/native-capabilities/haptic-button.d.ts.map +1 -0
- package/dist/components/native-capabilities/haptic-button.js +94 -0
- package/dist/components/native-capabilities/hid-panel.d.ts +40 -0
- package/dist/components/native-capabilities/hid-panel.d.ts.map +1 -0
- package/dist/components/native-capabilities/hid-panel.js +373 -0
- package/dist/components/native-capabilities/index.d.ts +27 -0
- package/dist/components/native-capabilities/index.d.ts.map +1 -0
- package/dist/components/native-capabilities/index.js +26 -0
- package/dist/components/native-capabilities/live-indicator.d.ts +15 -0
- package/dist/components/native-capabilities/live-indicator.d.ts.map +1 -0
- package/dist/components/native-capabilities/live-indicator.js +26 -0
- package/dist/components/native-capabilities/local-auth-button.d.ts +33 -0
- package/dist/components/native-capabilities/local-auth-button.d.ts.map +1 -0
- package/dist/components/native-capabilities/local-auth-button.js +115 -0
- package/dist/components/native-capabilities/location-panel.d.ts +29 -0
- package/dist/components/native-capabilities/location-panel.d.ts.map +1 -0
- package/dist/components/native-capabilities/location-panel.js +146 -0
- package/dist/components/native-capabilities/microphone-meter.d.ts +35 -0
- package/dist/components/native-capabilities/microphone-meter.d.ts.map +1 -0
- package/dist/components/native-capabilities/microphone-meter.js +244 -0
- package/dist/components/native-capabilities/midi-monitor.d.ts +54 -0
- package/dist/components/native-capabilities/midi-monitor.d.ts.map +1 -0
- package/dist/components/native-capabilities/midi-monitor.js +534 -0
- package/dist/components/native-capabilities/native-capability-panel.d.ts +11 -0
- package/dist/components/native-capabilities/native-capability-panel.d.ts.map +1 -0
- package/dist/components/native-capabilities/native-capability-panel.js +28 -0
- package/dist/components/native-capabilities/notification-panel.d.ts +24 -0
- package/dist/components/native-capabilities/notification-panel.d.ts.map +1 -0
- package/dist/components/native-capabilities/notification-panel.js +124 -0
- package/dist/components/native-capabilities/power-blocker-controller.d.ts +19 -0
- package/dist/components/native-capabilities/power-blocker-controller.d.ts.map +1 -0
- package/dist/components/native-capabilities/power-blocker-controller.js +83 -0
- package/dist/components/native-capabilities/power-panel.d.ts +67 -0
- package/dist/components/native-capabilities/power-panel.d.ts.map +1 -0
- package/dist/components/native-capabilities/power-panel.js +309 -0
- package/dist/components/native-capabilities/readout.d.ts +10 -0
- package/dist/components/native-capabilities/readout.d.ts.map +1 -0
- package/dist/components/native-capabilities/readout.js +11 -0
- package/dist/components/native-capabilities/screen-share-preview.d.ts +36 -0
- package/dist/components/native-capabilities/screen-share-preview.d.ts.map +1 -0
- package/dist/components/native-capabilities/screen-share-preview.js +191 -0
- package/dist/components/native-capabilities/secure-storage-panel.d.ts +36 -0
- package/dist/components/native-capabilities/secure-storage-panel.d.ts.map +1 -0
- package/dist/components/native-capabilities/secure-storage-panel.js +193 -0
- package/dist/components/native-capabilities/serial-console.d.ts +64 -0
- package/dist/components/native-capabilities/serial-console.d.ts.map +1 -0
- package/dist/components/native-capabilities/serial-console.js +399 -0
- package/dist/components/native-capabilities/shortcut-recorder.d.ts +35 -0
- package/dist/components/native-capabilities/shortcut-recorder.d.ts.map +1 -0
- package/dist/components/native-capabilities/shortcut-recorder.js +217 -0
- package/dist/components/native-capabilities/stream-log.d.ts +35 -0
- package/dist/components/native-capabilities/stream-log.d.ts.map +1 -0
- package/dist/components/native-capabilities/stream-log.js +65 -0
- package/dist/components/native-capabilities/system-audio-monitor.d.ts +34 -0
- package/dist/components/native-capabilities/system-audio-monitor.d.ts.map +1 -0
- package/dist/components/native-capabilities/system-audio-monitor.js +275 -0
- package/dist/components/native-capabilities/usb-panel.d.ts +54 -0
- package/dist/components/native-capabilities/usb-panel.d.ts.map +1 -0
- package/dist/components/native-capabilities/usb-panel.js +363 -0
- package/dist/components/native-capabilities/use-capability.d.ts +20 -0
- package/dist/components/native-capabilities/use-capability.d.ts.map +1 -0
- package/dist/components/native-capabilities/use-capability.js +61 -0
- package/dist/components/ui/alert-dialog.d.ts +7 -3
- package/dist/components/ui/alert-dialog.d.ts.map +1 -1
- package/dist/components/ui/alert-dialog.js +9 -5
- package/dist/components/ui/alert.d.ts +19 -3
- package/dist/components/ui/alert.d.ts.map +1 -1
- package/dist/components/ui/alert.js +25 -8
- package/dist/components/ui/app-frame.d.ts +28 -0
- package/dist/components/ui/app-frame.d.ts.map +1 -0
- package/dist/components/ui/app-frame.js +95 -0
- package/dist/components/ui/button-group.d.ts +1 -1
- package/dist/components/ui/button.js +1 -1
- package/dist/components/ui/collapsible.d.ts +9 -1
- package/dist/components/ui/collapsible.d.ts.map +1 -1
- package/dist/components/ui/collapsible.js +13 -2
- package/dist/components/ui/collection-navigation.d.ts +8 -0
- package/dist/components/ui/collection-navigation.d.ts.map +1 -0
- package/dist/components/ui/collection-navigation.js +19 -0
- package/dist/components/ui/color-well.d.ts +13 -0
- package/dist/components/ui/color-well.d.ts.map +1 -0
- package/dist/components/ui/color-well.js +30 -0
- package/dist/components/ui/command.d.ts +5 -1
- package/dist/components/ui/command.d.ts.map +1 -1
- package/dist/components/ui/command.js +13 -1
- package/dist/components/ui/confirm-dialog.d.ts +19 -0
- package/dist/components/ui/confirm-dialog.d.ts.map +1 -0
- package/dist/components/ui/confirm-dialog.js +45 -0
- package/dist/components/ui/date-field.d.ts +19 -0
- package/dist/components/ui/date-field.d.ts.map +1 -0
- package/dist/components/ui/date-field.js +54 -0
- package/dist/components/ui/date-picker.d.ts +24 -0
- package/dist/components/ui/date-picker.d.ts.map +1 -0
- package/dist/components/ui/date-picker.js +92 -0
- package/dist/components/ui/dialog.d.ts +4 -2
- package/dist/components/ui/dialog.d.ts.map +1 -1
- package/dist/components/ui/dialog.js +8 -5
- package/dist/components/ui/edge-fade.d.ts +11 -0
- package/dist/components/ui/edge-fade.d.ts.map +1 -0
- package/dist/components/ui/edge-fade.js +41 -0
- package/dist/components/ui/empty.d.ts +7 -2
- package/dist/components/ui/empty.d.ts.map +1 -1
- package/dist/components/ui/empty.js +20 -7
- package/dist/components/ui/field.d.ts +1 -1
- package/dist/components/ui/grid.d.ts +24 -0
- package/dist/components/ui/grid.d.ts.map +1 -0
- package/dist/components/ui/grid.js +258 -0
- package/dist/components/ui/icon-button.d.ts +15 -0
- package/dist/components/ui/icon-button.d.ts.map +1 -0
- package/dist/components/ui/icon-button.js +15 -0
- package/dist/components/ui/index.d.ts +23 -0
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/components/ui/index.js +23 -0
- package/dist/components/ui/input-group.d.ts +1 -1
- package/dist/components/ui/inspector.d.ts +15 -0
- package/dist/components/ui/inspector.d.ts.map +1 -0
- package/dist/components/ui/inspector.js +26 -0
- package/dist/components/ui/kbd.d.ts +1 -1
- package/dist/components/ui/list.d.ts +28 -0
- package/dist/components/ui/list.d.ts.map +1 -0
- package/dist/components/ui/list.js +235 -0
- package/dist/components/ui/material.d.ts +34 -0
- package/dist/components/ui/material.d.ts.map +1 -0
- package/dist/components/ui/material.js +34 -0
- package/dist/components/ui/message-scroller-controller.d.ts +162 -0
- package/dist/components/ui/message-scroller-controller.d.ts.map +1 -0
- package/dist/components/ui/message-scroller-controller.js +888 -0
- package/dist/components/ui/message-scroller-layout-stability.d.ts +33 -0
- package/dist/components/ui/message-scroller-layout-stability.d.ts.map +1 -0
- package/dist/components/ui/message-scroller-layout-stability.js +153 -0
- package/dist/components/ui/message-scroller-policy.d.ts +74 -0
- package/dist/components/ui/message-scroller-policy.d.ts.map +1 -0
- package/dist/components/ui/message-scroller-policy.js +129 -0
- package/dist/components/ui/message-scroller-primitive.d.ts +55 -0
- package/dist/components/ui/message-scroller-primitive.d.ts.map +1 -0
- package/dist/components/ui/message-scroller-primitive.js +226 -0
- package/dist/components/ui/message-scroller.d.ts +11 -0
- package/dist/components/ui/message-scroller.d.ts.map +1 -0
- package/dist/components/ui/message-scroller.js +25 -0
- package/dist/components/ui/navigation-button-group.d.ts +16 -0
- package/dist/components/ui/navigation-button-group.d.ts.map +1 -0
- package/dist/components/ui/navigation-button-group.js +9 -0
- package/dist/components/ui/notification-dot.d.ts +4 -0
- package/dist/components/ui/notification-dot.d.ts.map +1 -0
- package/dist/components/ui/notification-dot.js +7 -0
- package/dist/components/ui/number-input.d.ts +16 -0
- package/dist/components/ui/number-input.d.ts.map +1 -0
- package/dist/components/ui/number-input.js +56 -0
- package/dist/components/ui/panel.d.ts +18 -0
- package/dist/components/ui/panel.d.ts.map +1 -0
- package/dist/components/ui/panel.js +40 -0
- package/dist/components/ui/popover.d.ts +9 -2
- package/dist/components/ui/popover.d.ts.map +1 -1
- package/dist/components/ui/popover.js +14 -4
- package/dist/components/ui/scroll-area.d.ts +8 -2
- package/dist/components/ui/scroll-area.d.ts.map +1 -1
- package/dist/components/ui/scroll-area.js +6 -3
- package/dist/components/ui/search-field.d.ts +19 -0
- package/dist/components/ui/search-field.d.ts.map +1 -0
- package/dist/components/ui/search-field.js +64 -0
- package/dist/components/ui/segmented-control.d.ts +21 -0
- package/dist/components/ui/segmented-control.d.ts.map +1 -0
- package/dist/components/ui/segmented-control.js +62 -0
- package/dist/components/ui/sheet.d.ts +4 -2
- package/dist/components/ui/sheet.d.ts.map +1 -1
- package/dist/components/ui/sheet.js +12 -9
- package/dist/components/ui/sidebar.js +1 -1
- package/dist/components/ui/sonner.d.ts +4 -3
- package/dist/components/ui/sonner.d.ts.map +1 -1
- package/dist/components/ui/sonner.js +7 -6
- package/dist/components/ui/split-view.d.ts +11 -0
- package/dist/components/ui/split-view.d.ts.map +1 -0
- package/dist/components/ui/split-view.js +13 -0
- package/dist/components/ui/status.d.ts +13 -0
- package/dist/components/ui/status.d.ts.map +1 -0
- package/dist/components/ui/status.js +36 -0
- package/dist/components/ui/table.d.ts +11 -2
- package/dist/components/ui/table.d.ts.map +1 -1
- package/dist/components/ui/table.js +33 -6
- package/dist/components/ui/text.d.ts +17 -0
- package/dist/components/ui/text.d.ts.map +1 -0
- package/dist/components/ui/text.js +55 -0
- package/dist/components/ui/toggle.d.ts +12 -4
- package/dist/components/ui/toggle.d.ts.map +1 -1
- package/dist/components/ui/toggle.js +13 -2
- package/dist/components/ui/toolbar.d.ts +27 -0
- package/dist/components/ui/toolbar.d.ts.map +1 -0
- package/dist/components/ui/toolbar.js +71 -0
- package/dist/components/ui/tooltip.d.ts +8 -3
- package/dist/components/ui/tooltip.d.ts.map +1 -1
- package/dist/components/ui/tooltip.js +11 -6
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/lib/frame-lifecycle.d.ts +29 -0
- package/dist/lib/frame-lifecycle.d.ts.map +1 -1
- package/dist/lib/frame-lifecycle.js +85 -0
- package/dist/lib/native-capabilities/access.d.ts +13 -0
- package/dist/lib/native-capabilities/access.d.ts.map +1 -0
- package/dist/lib/native-capabilities/access.js +53 -0
- package/dist/lib/native-capabilities/bluetooth-access.d.ts +14 -0
- package/dist/lib/native-capabilities/bluetooth-access.d.ts.map +1 -0
- package/dist/lib/native-capabilities/bluetooth-access.js +43 -0
- package/dist/lib/native-capabilities/bluetooth-connection.d.ts +19 -0
- package/dist/lib/native-capabilities/bluetooth-connection.d.ts.map +1 -0
- package/dist/lib/native-capabilities/bluetooth-connection.js +88 -0
- package/dist/lib/native-capabilities/bluetooth-gatt.d.ts +7 -0
- package/dist/lib/native-capabilities/bluetooth-gatt.d.ts.map +1 -0
- package/dist/lib/native-capabilities/bluetooth-gatt.js +77 -0
- package/dist/lib/native-capabilities/bluetooth-internal.d.ts +10 -0
- package/dist/lib/native-capabilities/bluetooth-internal.d.ts.map +1 -0
- package/dist/lib/native-capabilities/bluetooth-internal.js +105 -0
- package/dist/lib/native-capabilities/bluetooth-native-fallback.d.ts +33 -0
- package/dist/lib/native-capabilities/bluetooth-native-fallback.d.ts.map +1 -0
- package/dist/lib/native-capabilities/bluetooth-native-fallback.js +214 -0
- package/dist/lib/native-capabilities/bluetooth-types.d.ts +85 -0
- package/dist/lib/native-capabilities/bluetooth-types.d.ts.map +1 -0
- package/dist/lib/native-capabilities/bluetooth-types.js +2 -0
- package/dist/lib/native-capabilities/bluetooth.d.ts +7 -0
- package/dist/lib/native-capabilities/bluetooth.d.ts.map +1 -0
- package/dist/lib/native-capabilities/bluetooth.js +4 -0
- package/dist/lib/native-capabilities/bridge.d.ts +23 -0
- package/dist/lib/native-capabilities/bridge.d.ts.map +1 -0
- package/dist/lib/native-capabilities/bridge.js +266 -0
- package/dist/lib/native-capabilities/capabilities.d.ts +7 -0
- package/dist/lib/native-capabilities/capabilities.d.ts.map +1 -0
- package/dist/lib/native-capabilities/capabilities.js +95 -0
- package/dist/lib/native-capabilities/clipboard.d.ts +11 -0
- package/dist/lib/native-capabilities/clipboard.d.ts.map +1 -0
- package/dist/lib/native-capabilities/clipboard.js +58 -0
- package/dist/lib/native-capabilities/device-io-errors.d.ts +11 -0
- package/dist/lib/native-capabilities/device-io-errors.d.ts.map +1 -0
- package/dist/lib/native-capabilities/device-io-errors.js +82 -0
- package/dist/lib/native-capabilities/displays.d.ts +38 -0
- package/dist/lib/native-capabilities/displays.d.ts.map +1 -0
- package/dist/lib/native-capabilities/displays.js +12 -0
- package/dist/lib/native-capabilities/global-shortcuts.d.ts +86 -0
- package/dist/lib/native-capabilities/global-shortcuts.d.ts.map +1 -0
- package/dist/lib/native-capabilities/global-shortcuts.js +351 -0
- package/dist/lib/native-capabilities/haptics.d.ts +25 -0
- package/dist/lib/native-capabilities/haptics.d.ts.map +1 -0
- package/dist/lib/native-capabilities/haptics.js +18 -0
- package/dist/lib/native-capabilities/hid-native.d.ts +26 -0
- package/dist/lib/native-capabilities/hid-native.d.ts.map +1 -0
- package/dist/lib/native-capabilities/hid-native.js +229 -0
- package/dist/lib/native-capabilities/hid.d.ts +52 -0
- package/dist/lib/native-capabilities/hid.d.ts.map +1 -0
- package/dist/lib/native-capabilities/hid.js +163 -0
- package/dist/lib/native-capabilities/index.d.ts +40 -0
- package/dist/lib/native-capabilities/index.d.ts.map +1 -0
- package/dist/lib/native-capabilities/index.js +21 -0
- package/dist/lib/native-capabilities/local-authentication.d.ts +32 -0
- package/dist/lib/native-capabilities/local-authentication.d.ts.map +1 -0
- package/dist/lib/native-capabilities/local-authentication.js +46 -0
- package/dist/lib/native-capabilities/location.d.ts +49 -0
- package/dist/lib/native-capabilities/location.d.ts.map +1 -0
- package/dist/lib/native-capabilities/location.js +114 -0
- package/dist/lib/native-capabilities/media-permissions.d.ts +28 -0
- package/dist/lib/native-capabilities/media-permissions.d.ts.map +1 -0
- package/dist/lib/native-capabilities/media-permissions.js +37 -0
- package/dist/lib/native-capabilities/media.d.ts +17 -0
- package/dist/lib/native-capabilities/media.d.ts.map +1 -0
- package/dist/lib/native-capabilities/media.js +104 -0
- package/dist/lib/native-capabilities/midi-access.d.ts +13 -0
- package/dist/lib/native-capabilities/midi-access.d.ts.map +1 -0
- package/dist/lib/native-capabilities/midi-access.js +68 -0
- package/dist/lib/native-capabilities/midi-internal.d.ts +12 -0
- package/dist/lib/native-capabilities/midi-internal.d.ts.map +1 -0
- package/dist/lib/native-capabilities/midi-internal.js +88 -0
- package/dist/lib/native-capabilities/midi-native-fallback.d.ts +27 -0
- package/dist/lib/native-capabilities/midi-native-fallback.d.ts.map +1 -0
- package/dist/lib/native-capabilities/midi-native-fallback.js +127 -0
- package/dist/lib/native-capabilities/midi-ports.d.ts +6 -0
- package/dist/lib/native-capabilities/midi-ports.d.ts.map +1 -0
- package/dist/lib/native-capabilities/midi-ports.js +115 -0
- package/dist/lib/native-capabilities/midi-types.d.ts +25 -0
- package/dist/lib/native-capabilities/midi-types.d.ts.map +1 -0
- package/dist/lib/native-capabilities/midi-types.js +1 -0
- package/dist/lib/native-capabilities/midi.d.ts +6 -0
- package/dist/lib/native-capabilities/midi.d.ts.map +1 -0
- package/dist/lib/native-capabilities/midi.js +3 -0
- package/dist/lib/native-capabilities/native-device-io.d.ts +28 -0
- package/dist/lib/native-capabilities/native-device-io.d.ts.map +1 -0
- package/dist/lib/native-capabilities/native-device-io.js +91 -0
- package/dist/lib/native-capabilities/native-device-lifecycle.d.ts +13 -0
- package/dist/lib/native-capabilities/native-device-lifecycle.d.ts.map +1 -0
- package/dist/lib/native-capabilities/native-device-lifecycle.js +40 -0
- package/dist/lib/native-capabilities/notifications.d.ts +38 -0
- package/dist/lib/native-capabilities/notifications.d.ts.map +1 -0
- package/dist/lib/native-capabilities/notifications.js +50 -0
- package/dist/lib/native-capabilities/power-session.d.ts +113 -0
- package/dist/lib/native-capabilities/power-session.d.ts.map +1 -0
- package/dist/lib/native-capabilities/power-session.js +264 -0
- package/dist/lib/native-capabilities/secure-storage.d.ts +36 -0
- package/dist/lib/native-capabilities/secure-storage.d.ts.map +1 -0
- package/dist/lib/native-capabilities/secure-storage.js +64 -0
- package/dist/lib/native-capabilities/serial-native.d.ts +23 -0
- package/dist/lib/native-capabilities/serial-native.d.ts.map +1 -0
- package/dist/lib/native-capabilities/serial-native.js +181 -0
- package/dist/lib/native-capabilities/serial.d.ts +76 -0
- package/dist/lib/native-capabilities/serial.d.ts.map +1 -0
- package/dist/lib/native-capabilities/serial.js +215 -0
- package/dist/lib/native-capabilities/system-audio.d.ts +127 -0
- package/dist/lib/native-capabilities/system-audio.d.ts.map +1 -0
- package/dist/lib/native-capabilities/system-audio.js +330 -0
- package/dist/lib/native-capabilities/types.d.ts +62 -0
- package/dist/lib/native-capabilities/types.d.ts.map +1 -0
- package/dist/lib/native-capabilities/types.js +27 -0
- package/dist/lib/native-capabilities/usb-native.d.ts +39 -0
- package/dist/lib/native-capabilities/usb-native.d.ts.map +1 -0
- package/dist/lib/native-capabilities/usb-native.js +217 -0
- package/dist/lib/native-capabilities/usb.d.ts +85 -0
- package/dist/lib/native-capabilities/usb.d.ts.map +1 -0
- package/dist/lib/native-capabilities/usb.js +225 -0
- package/dist/lib/theme.d.ts.map +1 -1
- package/dist/lib/theme.js +2 -1
- package/docs/README.md +39 -0
- package/docs/accessibility.md +32 -0
- package/docs/adaptive-materials.md +79 -0
- package/docs/app-anatomy.md +74 -0
- package/docs/component-catalog.md +82 -0
- package/docs/component-guide-template.md +37 -0
- package/docs/design-tokens.md +185 -0
- package/docs/foundations.md +58 -0
- package/docs/native-integration.md +33 -0
- package/docs/standalone-app-windows.md +136 -0
- package/package.json +8 -3
- package/src/components/ui/alert-dialog.md +31 -0
- package/src/components/ui/alert.md +77 -0
- package/src/components/ui/app-frame.md +38 -0
- package/src/components/ui/badge.md +57 -0
- package/src/components/ui/button.md +76 -0
- package/src/components/ui/collapsible.md +52 -0
- package/src/components/ui/color-well.md +11 -0
- package/src/components/ui/combobox.md +42 -0
- package/src/components/ui/command.md +54 -0
- package/src/components/ui/date-field.md +32 -0
- package/src/components/ui/date-picker.md +55 -0
- package/src/components/ui/dialog.md +40 -0
- package/src/components/ui/edge-fade.md +7 -0
- package/src/components/ui/empty.md +87 -0
- package/src/components/ui/field.md +77 -0
- package/src/components/ui/grid.md +109 -0
- package/src/components/ui/icon-button.md +36 -0
- package/src/components/ui/inspector.md +11 -0
- package/src/components/ui/item.md +87 -0
- package/src/components/ui/list.md +140 -0
- package/src/components/ui/material.md +51 -0
- package/src/components/ui/navigation-button-group.md +46 -0
- package/src/components/ui/notification-dot.md +7 -0
- package/src/components/ui/number-input.md +19 -0
- package/src/components/ui/panel.md +11 -0
- package/src/components/ui/popover.md +31 -0
- package/src/components/ui/resizable.md +66 -0
- package/src/components/ui/scroll-area.md +72 -0
- package/src/components/ui/search-field.md +33 -0
- package/src/components/ui/segmented-control.md +36 -0
- package/src/components/ui/sheet.md +30 -0
- package/src/components/ui/sidebar.md +113 -0
- package/src/components/ui/sonner.md +37 -0
- package/src/components/ui/split-view.md +15 -0
- package/src/components/ui/status.md +12 -0
- package/src/components/ui/table.md +37 -0
- package/src/components/ui/tabs.md +66 -0
- package/src/components/ui/text.md +17 -0
- package/src/components/ui/toggle-button.md +48 -0
- package/src/components/ui/toggle-group.md +80 -0
- package/src/components/ui/toggle.md +73 -0
- package/src/components/ui/toolbar.md +26 -0
- package/src/components/ui/tooltip.md +31 -0
- package/src/styles/index.css +704 -3
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { LoaderCircleIcon, SearchIcon, XIcon } from 'lucide-react';
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import { cn } from '../../lib/utils';
|
|
6
|
+
import { IconButton } from './icon-button';
|
|
7
|
+
import { cva } from 'class-variance-authority';
|
|
8
|
+
const searchFieldVariants = cva('group/search-field border-input focus-within:border-ring focus-within:ring-ring/50 flex w-full min-w-0 items-center rounded-md border text-foreground shadow-xs transition-[background-color,border-color,box-shadow] focus-within:ring-[3px] has-[[aria-invalid=true]]:border-destructive has-[[aria-invalid=true]]:ring-destructive/20', {
|
|
9
|
+
variants: {
|
|
10
|
+
variant: {
|
|
11
|
+
default: 'bg-background',
|
|
12
|
+
filled: 'border-transparent bg-muted/70 shadow-none',
|
|
13
|
+
},
|
|
14
|
+
density: {
|
|
15
|
+
compact: 'h-7',
|
|
16
|
+
default: 'h-9',
|
|
17
|
+
comfortable: 'h-10',
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
defaultVariants: {
|
|
21
|
+
variant: 'default',
|
|
22
|
+
density: 'default',
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
function SearchField({ className, inputClassName, value, defaultValue = '', onChange, onValueChange, onClear, onKeyDown, clearable = true, clearLabel = 'Clear search', loading = false, variant = 'default', density = 'default', disabled, readOnly, ref, ...props }) {
|
|
26
|
+
const controlled = value !== undefined;
|
|
27
|
+
const [internalValue, setInternalValue] = React.useState(defaultValue);
|
|
28
|
+
const inputRef = React.useRef(null);
|
|
29
|
+
const currentValue = controlled ? value : internalValue;
|
|
30
|
+
const setRefs = React.useCallback((node) => {
|
|
31
|
+
inputRef.current = node;
|
|
32
|
+
if (typeof ref === 'function')
|
|
33
|
+
ref(node);
|
|
34
|
+
else if (ref)
|
|
35
|
+
ref.current = node;
|
|
36
|
+
}, [ref]);
|
|
37
|
+
const commitValue = React.useCallback((nextValue) => {
|
|
38
|
+
if (!controlled)
|
|
39
|
+
setInternalValue(nextValue);
|
|
40
|
+
onValueChange?.(nextValue);
|
|
41
|
+
}, [controlled, onValueChange]);
|
|
42
|
+
const clear = React.useCallback(() => {
|
|
43
|
+
if (!currentValue)
|
|
44
|
+
return;
|
|
45
|
+
commitValue('');
|
|
46
|
+
onClear?.();
|
|
47
|
+
inputRef.current?.focus();
|
|
48
|
+
}, [commitValue, currentValue, onClear]);
|
|
49
|
+
const iconSize = density === 'compact' ? 'size-3.5' : 'size-4';
|
|
50
|
+
return (_jsxs("div", { "data-slot": "search-field", "data-density": density, "data-variant": variant, "data-disabled": disabled || undefined, "data-readonly": readOnly || undefined, className: cn(searchFieldVariants({ variant, density }), disabled && 'cursor-not-allowed opacity-50', className), children: [_jsx("span", { "aria-hidden": "true", className: "text-muted-foreground pointer-events-none flex shrink-0 items-center pl-2.5", children: loading ? (_jsx(LoaderCircleIcon, { className: cn(iconSize, 'animate-spin') })) : (_jsx(SearchIcon, { className: iconSize })) }), _jsx("input", { ref: setRefs, "data-slot": "search-field-input", type: "search", value: currentValue, disabled: disabled, readOnly: readOnly, className: cn('placeholder:text-muted-foreground min-w-0 flex-1 appearance-none bg-transparent px-2 text-sm outline-none [&::-webkit-search-cancel-button]:hidden [&::-webkit-search-decoration]:hidden', density === 'compact' && 'text-xs', inputClassName), onChange: (event) => {
|
|
51
|
+
onChange?.(event);
|
|
52
|
+
commitValue(event.currentTarget.value);
|
|
53
|
+
}, onKeyDown: (event) => {
|
|
54
|
+
onKeyDown?.(event);
|
|
55
|
+
if (!event.defaultPrevented &&
|
|
56
|
+
event.key === 'Escape' &&
|
|
57
|
+
currentValue &&
|
|
58
|
+
!readOnly) {
|
|
59
|
+
event.preventDefault();
|
|
60
|
+
clear();
|
|
61
|
+
}
|
|
62
|
+
}, ...props }), clearable && currentValue && !readOnly ? (_jsx(IconButton, { label: clearLabel, size: "xs", variant: "ghost", disabled: disabled, className: "mr-0.5 shrink-0", onClick: clear, children: _jsx(XIcon, {}) })) : null] }));
|
|
63
|
+
}
|
|
64
|
+
export { SearchField, searchFieldVariants };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
4
|
+
declare const segmentedControlVariants: (props?: ({
|
|
5
|
+
variant?: "outline" | "muted" | null | undefined;
|
|
6
|
+
density?: "compact" | "default" | "comfortable" | null | undefined;
|
|
7
|
+
fullWidth?: boolean | null | undefined;
|
|
8
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
9
|
+
declare const segmentedControlItemVariants: (props?: ({
|
|
10
|
+
density?: "compact" | "default" | "comfortable" | null | undefined;
|
|
11
|
+
fullWidth?: boolean | null | undefined;
|
|
12
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
13
|
+
interface SegmentedControlProps extends React.ComponentProps<typeof RadioGroupPrimitive.Root>, VariantProps<typeof segmentedControlVariants> {
|
|
14
|
+
}
|
|
15
|
+
declare function SegmentedControl({ className, variant, density, fullWidth, orientation, ...props }: SegmentedControlProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
interface SegmentedControlItemProps extends React.ComponentProps<typeof RadioGroupPrimitive.Item> {
|
|
17
|
+
iconOnly?: boolean;
|
|
18
|
+
}
|
|
19
|
+
declare function SegmentedControlItem({ className, iconOnly, ...props }: SegmentedControlItemProps): import("react/jsx-runtime").JSX.Element;
|
|
20
|
+
export { SegmentedControl, SegmentedControlItem, segmentedControlItemVariants, segmentedControlVariants, };
|
|
21
|
+
//# sourceMappingURL=segmented-control.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"segmented-control.d.ts","sourceRoot":"","sources":["../../../src/components/ui/segmented-control.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,mBAAmB,MAAM,6BAA6B,CAAA;AAClE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,KAAK,YAAY,EAAO,MAAM,0BAA0B,CAAA;AAEjE,QAAA,MAAM,wBAAwB;;;;8EAwB7B,CAAA;AAED,QAAA,MAAM,4BAA4B;;;8EAsBjC,CAAA;AAaD,UAAU,qBACR,SAAQ,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAAC,EAC3D,YAAY,CAAC,OAAO,wBAAwB,CAAC;CAAG;AAEpD,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,OAAiB,EACjB,OAAmB,EACnB,SAAiB,EACjB,WAA0B,EAC1B,GAAG,KAAK,EACT,EAAE,qBAAqB,2CAoBvB;AAED,UAAU,yBACR,SAAQ,KAAK,CAAC,cAAc,CAAC,OAAO,mBAAmB,CAAC,IAAI,CAAC;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,iBAAS,oBAAoB,CAAC,EAC5B,SAAS,EACT,QAAgB,EAChB,GAAG,KAAK,EACT,EAAE,yBAAyB,2CAqB3B;AAED,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,4BAA4B,EAC5B,wBAAwB,GACzB,CAAA"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as RadioGroupPrimitive from '@radix-ui/react-radio-group';
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import { cn } from '../../lib/utils';
|
|
6
|
+
import { cva } from 'class-variance-authority';
|
|
7
|
+
const segmentedControlVariants = cva('inline-flex w-fit items-center overflow-x-auto rounded-lg p-0.5 text-muted-foreground', {
|
|
8
|
+
variants: {
|
|
9
|
+
variant: {
|
|
10
|
+
muted: 'bg-muted/70',
|
|
11
|
+
outline: 'border border-border/80 bg-background shadow-xs',
|
|
12
|
+
},
|
|
13
|
+
density: {
|
|
14
|
+
compact: 'min-h-7',
|
|
15
|
+
default: 'min-h-8',
|
|
16
|
+
comfortable: 'min-h-9',
|
|
17
|
+
},
|
|
18
|
+
fullWidth: {
|
|
19
|
+
true: 'flex w-full',
|
|
20
|
+
false: '',
|
|
21
|
+
},
|
|
22
|
+
},
|
|
23
|
+
defaultVariants: {
|
|
24
|
+
variant: 'muted',
|
|
25
|
+
density: 'default',
|
|
26
|
+
fullWidth: false,
|
|
27
|
+
},
|
|
28
|
+
});
|
|
29
|
+
const segmentedControlItemVariants = cva('relative inline-flex cursor-pointer select-none items-center justify-center whitespace-nowrap rounded-md font-medium outline-none transition-[background-color,color,box-shadow] disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 focus-visible:z-10 focus-visible:ring-2 focus-visible:ring-ring/60 data-[state=checked]:bg-background data-[state=checked]:text-foreground data-[state=checked]:shadow-xs [&_svg]:pointer-events-none [&_svg]:shrink-0', {
|
|
30
|
+
variants: {
|
|
31
|
+
density: {
|
|
32
|
+
compact: 'min-h-6 gap-1 px-2 text-xs [&_svg:not([class*="size-"])]:size-3',
|
|
33
|
+
default: 'min-h-7 gap-1.5 px-2.5 text-sm [&_svg:not([class*="size-"])]:size-3.5',
|
|
34
|
+
comfortable: 'min-h-8 gap-1.5 px-3 text-sm [&_svg:not([class*="size-"])]:size-4',
|
|
35
|
+
},
|
|
36
|
+
fullWidth: {
|
|
37
|
+
true: 'min-w-0 flex-1',
|
|
38
|
+
false: '',
|
|
39
|
+
},
|
|
40
|
+
},
|
|
41
|
+
defaultVariants: {
|
|
42
|
+
density: 'default',
|
|
43
|
+
fullWidth: false,
|
|
44
|
+
},
|
|
45
|
+
});
|
|
46
|
+
const SegmentedControlContext = React.createContext({
|
|
47
|
+
density: 'default',
|
|
48
|
+
fullWidth: false,
|
|
49
|
+
});
|
|
50
|
+
function SegmentedControl({ className, variant = 'muted', density = 'default', fullWidth = false, orientation = 'horizontal', ...props }) {
|
|
51
|
+
return (_jsx(SegmentedControlContext.Provider, { value: { density: density ?? 'default', fullWidth: Boolean(fullWidth) }, children: _jsx(RadioGroupPrimitive.Root, { "data-slot": "segmented-control", "data-variant": variant, "data-density": density, "data-full-width": fullWidth, orientation: orientation, className: cn(segmentedControlVariants({ variant, density, fullWidth }), orientation === 'vertical' && 'flex-col', className), ...props }) }));
|
|
52
|
+
}
|
|
53
|
+
function SegmentedControlItem({ className, iconOnly = false, ...props }) {
|
|
54
|
+
const { density, fullWidth } = React.useContext(SegmentedControlContext);
|
|
55
|
+
return (_jsx(RadioGroupPrimitive.Item, { "data-slot": "segmented-control-item", "data-density": density, "data-icon-only": iconOnly, className: cn(segmentedControlItemVariants({ density, fullWidth }), iconOnly &&
|
|
56
|
+
{
|
|
57
|
+
compact: 'size-6 p-0',
|
|
58
|
+
default: 'size-7 p-0',
|
|
59
|
+
comfortable: 'size-8 p-0',
|
|
60
|
+
}[density], className), ...props }));
|
|
61
|
+
}
|
|
62
|
+
export { SegmentedControl, SegmentedControlItem, segmentedControlItemVariants, segmentedControlVariants, };
|
|
@@ -3,13 +3,15 @@ import * as React from 'react';
|
|
|
3
3
|
declare function Sheet({ ...props }: React.ComponentProps<typeof SheetPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
|
|
4
4
|
declare function SheetTrigger({ ...props }: React.ComponentProps<typeof SheetPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
|
|
5
5
|
declare function SheetClose({ ...props }: React.ComponentProps<typeof SheetPrimitive.Close>): import("react/jsx-runtime").JSX.Element;
|
|
6
|
-
declare function SheetContent({ className, children, side, showCloseButton, ...props }: React.ComponentProps<typeof SheetPrimitive.Content> & {
|
|
6
|
+
declare function SheetContent({ className, children, side, size, showCloseButton, ...props }: React.ComponentProps<typeof SheetPrimitive.Content> & {
|
|
7
7
|
side?: 'top' | 'right' | 'bottom' | 'left';
|
|
8
|
+
size?: 'sm' | 'default' | 'lg';
|
|
8
9
|
showCloseButton?: boolean;
|
|
9
10
|
}): import("react/jsx-runtime").JSX.Element;
|
|
10
11
|
declare function SheetHeader({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
declare function SheetBody({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
11
13
|
declare function SheetFooter({ className, ...props }: React.ComponentProps<'div'>): import("react/jsx-runtime").JSX.Element;
|
|
12
14
|
declare function SheetTitle({ className, ...props }: React.ComponentProps<typeof SheetPrimitive.Title>): import("react/jsx-runtime").JSX.Element;
|
|
13
15
|
declare function SheetDescription({ className, ...props }: React.ComponentProps<typeof SheetPrimitive.Description>): import("react/jsx-runtime").JSX.Element;
|
|
14
|
-
export { Sheet, SheetTrigger, SheetClose, SheetContent, SheetHeader, SheetFooter, SheetTitle, SheetDescription, };
|
|
16
|
+
export { Sheet, SheetTrigger, SheetClose, SheetContent, SheetBody, SheetHeader, SheetFooter, SheetTitle, SheetDescription, };
|
|
15
17
|
//# sourceMappingURL=sheet.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sheet.d.ts","sourceRoot":"","sources":["../../../src/components/ui/sheet.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,cAAc,MAAM,wBAAwB,CAAA;AAExD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,iBAAS,KAAK,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,IAAI,CAAC,2CAE5E;AAED,iBAAS,YAAY,CAAC,EACpB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,OAAO,CAAC,2CAErD;AAED,iBAAS,UAAU,CAAC,EAClB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,KAAK,CAAC,2CAEnD;AAwBD,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,QAAQ,EACR,IAAc,EACd,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,OAAO,CAAC,GAAG;IACvD,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAA;IAC1C,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,
|
|
1
|
+
{"version":3,"file":"sheet.d.ts","sourceRoot":"","sources":["../../../src/components/ui/sheet.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,cAAc,MAAM,wBAAwB,CAAA;AAExD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,iBAAS,KAAK,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,IAAI,CAAC,2CAE5E;AAED,iBAAS,YAAY,CAAC,EACpB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,OAAO,CAAC,2CAErD;AAED,iBAAS,UAAU,CAAC,EAClB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,KAAK,CAAC,2CAEnD;AAwBD,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,QAAQ,EACR,IAAc,EACd,IAAgB,EAChB,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,OAAO,CAAC,GAAG;IACvD,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAA;IAC1C,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,GAAG,IAAI,CAAA;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,2CAmCA;AAED,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQxE;AAED,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWtE;AAED,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAWxE;AAED,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,KAAK,CAAC,2CAQnD;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,cAAc,CAAC,WAAW,CAAC,2CAQzD;AAED,OAAO,EACL,KAAK,EACL,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,SAAS,EACT,WAAW,EACX,WAAW,EACX,UAAU,EACV,gBAAgB,GACjB,CAAA"}
|
|
@@ -18,18 +18,21 @@ function SheetPortal({ ...props }) {
|
|
|
18
18
|
function SheetOverlay({ className, ...props }) {
|
|
19
19
|
return (_jsx(SheetPrimitive.Overlay, { "data-slot": "sheet-overlay", className: cn('data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50', className), ...props }));
|
|
20
20
|
}
|
|
21
|
-
function SheetContent({ className, children, side = 'right', showCloseButton = true, ...props }) {
|
|
22
|
-
return (_jsxs(SheetPortal, { children: [_jsx(SheetOverlay, {}), _jsxs(SheetPrimitive.Content, { "data-slot": "sheet-content", className: cn('bg-background data-[state=open]:animate-in data-[state=closed]:animate-out fixed z-50 flex flex-col gap-4
|
|
23
|
-
'data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right inset-
|
|
24
|
-
'data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left inset-
|
|
25
|
-
'data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top inset-
|
|
26
|
-
'data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom inset-
|
|
21
|
+
function SheetContent({ className, children, side = 'right', size = 'default', showCloseButton = true, ...props }) {
|
|
22
|
+
return (_jsxs(SheetPortal, { children: [_jsx(SheetOverlay, {}), _jsxs(SheetPrimitive.Content, { "data-slot": "sheet-content", "data-side": side, "data-size": size, className: cn('bg-background data-[state=open]:animate-in data-[state=closed]:animate-out border-separator shadow-overlay fixed z-50 flex min-h-0 flex-col gap-4 overflow-hidden outline-none transition ease-[var(--motion-ease-standard)] data-[state=closed]:duration-[var(--motion-duration-normal)] data-[state=open]:duration-[var(--motion-duration-slow)]', side === 'right' &&
|
|
23
|
+
'data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right bottom-[max(var(--window-content-inset-bottom),var(--chat-safe-padding))] right-[var(--window-content-inset-inline-end)] top-[var(--window-content-inset-top)] w-[min(90vw,28rem)] border-l data-[size=default]:max-w-sm data-[size=lg]:max-w-lg data-[size=sm]:max-w-xs', side === 'left' &&
|
|
24
|
+
'data-[state=closed]:slide-out-to-left data-[state=open]:slide-in-from-left bottom-[max(var(--window-content-inset-bottom),var(--chat-safe-padding))] left-[var(--window-content-inset-inline-start)] top-[var(--window-content-inset-top)] w-[min(90vw,28rem)] border-r data-[size=default]:max-w-sm data-[size=lg]:max-w-lg data-[size=sm]:max-w-xs', side === 'top' &&
|
|
25
|
+
'data-[state=closed]:slide-out-to-top data-[state=open]:slide-in-from-top left-[var(--window-content-inset-inline-start)] right-[var(--window-content-inset-inline-end)] top-[var(--window-content-inset-top)] max-h-[min(80dvh,calc(100dvh-var(--window-content-inset-top)-max(var(--window-content-inset-bottom),var(--chat-safe-padding))))] border-b', side === 'bottom' &&
|
|
26
|
+
'data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom bottom-[max(var(--window-content-inset-bottom),var(--chat-safe-padding))] left-[var(--window-content-inset-inline-start)] right-[var(--window-content-inset-inline-end)] max-h-[min(80dvh,calc(100dvh-var(--window-content-inset-top)-max(var(--window-content-inset-bottom),var(--chat-safe-padding))))] border-t', className), ...props, children: [children, showCloseButton && (_jsx(SheetPrimitive.Close, { "data-slot": "sheet-close", "aria-label": "Close", className: "ring-offset-background focus:ring-ring data-[state=open]:bg-secondary rounded-control focus:outline-hidden absolute right-4 top-4 inline-flex size-7 cursor-pointer items-center justify-center opacity-70 transition-opacity duration-[var(--motion-duration-fast)] hover:opacity-100 focus:ring-2 focus:ring-offset-2 disabled:pointer-events-none disabled:cursor-not-allowed", children: _jsx(XIcon, { "aria-hidden": "true", className: "size-4" }) }))] })] }));
|
|
27
27
|
}
|
|
28
28
|
function SheetHeader({ className, ...props }) {
|
|
29
|
-
return (_jsx("div", { "data-slot": "sheet-header", className: cn('flex flex-col gap-1.5 p-4', className), ...props }));
|
|
29
|
+
return (_jsx("div", { "data-slot": "sheet-header", className: cn('flex shrink-0 flex-col gap-1.5 p-4 pr-12', className), ...props }));
|
|
30
|
+
}
|
|
31
|
+
function SheetBody({ className, ...props }) {
|
|
32
|
+
return (_jsx("div", { "data-slot": "sheet-body", className: cn('min-h-0 flex-1 overflow-y-auto overscroll-contain px-4 [scrollbar-gutter:stable]', className), ...props }));
|
|
30
33
|
}
|
|
31
34
|
function SheetFooter({ className, ...props }) {
|
|
32
|
-
return (_jsx("div", { "data-slot": "sheet-footer", className: cn('mt-auto flex flex-col gap-2 p-4', className), ...props }));
|
|
35
|
+
return (_jsx("div", { "data-slot": "sheet-footer", className: cn('mt-auto flex shrink-0 flex-col gap-2 p-4 sm:flex-row sm:flex-wrap sm:justify-end', className), ...props }));
|
|
33
36
|
}
|
|
34
37
|
function SheetTitle({ className, ...props }) {
|
|
35
38
|
return (_jsx(SheetPrimitive.Title, { "data-slot": "sheet-title", className: cn('text-foreground font-semibold', className), ...props }));
|
|
@@ -37,4 +40,4 @@ function SheetTitle({ className, ...props }) {
|
|
|
37
40
|
function SheetDescription({ className, ...props }) {
|
|
38
41
|
return (_jsx(SheetPrimitive.Description, { "data-slot": "sheet-description", className: cn('text-muted-foreground text-sm', className), ...props }));
|
|
39
42
|
}
|
|
40
|
-
export { Sheet, SheetTrigger, SheetClose, SheetContent, SheetHeader, SheetFooter, SheetTitle, SheetDescription, };
|
|
43
|
+
export { Sheet, SheetTrigger, SheetClose, SheetContent, SheetBody, SheetHeader, SheetFooter, SheetTitle, SheetDescription, };
|
|
@@ -107,7 +107,7 @@ function SidebarTrigger({ className, onClick, ...props }) {
|
|
|
107
107
|
}
|
|
108
108
|
function SidebarRail({ className, ...props }) {
|
|
109
109
|
const { toggleSidebar } = useSidebar();
|
|
110
|
-
return (_jsx("button", { "data-sidebar": "rail", "data-slot": "sidebar-rail", "aria-label": "Toggle Sidebar", tabIndex: -1, onClick: toggleSidebar, title: "Toggle Sidebar", className: cn('hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex', 'in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize', '[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize', 'hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full', '[[data-side=left][data-collapsible=offcanvas]_&]:-right-2', '[[data-side=right][data-collapsible=offcanvas]_&]:-left-2', className), ...props }));
|
|
110
|
+
return (_jsx("button", { "data-sidebar": "rail", "data-slot": "sidebar-rail", "aria-label": "Toggle Sidebar", tabIndex: -1, onClick: toggleSidebar, title: "Toggle Sidebar", className: cn('hover:after:bg-sidebar-border absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 cursor-pointer transition-all ease-linear after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] group-data-[side=left]:-right-4 group-data-[side=right]:left-0 sm:flex', 'in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize', '[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize', 'hover:group-data-[collapsible=offcanvas]:bg-sidebar group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full', '[[data-side=left][data-collapsible=offcanvas]_&]:-right-2', '[[data-side=right][data-collapsible=offcanvas]_&]:-left-2', className), ...props }));
|
|
111
111
|
}
|
|
112
112
|
function SidebarInset({ className, ...props }) {
|
|
113
113
|
return (_jsx("main", { "data-slot": "sidebar-inset", className: cn('bg-background relative flex w-full flex-1 flex-col', 'md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm', className), ...props }));
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { type ToasterProps } from 'sonner';
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { type ExternalToast, type ToasterProps, toast } from 'sonner';
|
|
2
|
+
export type ToastOptions = ExternalToast;
|
|
3
|
+
declare const Toaster: ({ style, ...props }: ToasterProps) => import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
export { Toaster, toast };
|
|
4
5
|
//# sourceMappingURL=sonner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sonner.d.ts","sourceRoot":"","sources":["../../../src/components/ui/sonner.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sonner.d.ts","sourceRoot":"","sources":["../../../src/components/ui/sonner.tsx"],"names":[],"mappings":"AAWA,OAAO,EACL,KAAK,aAAa,EAElB,KAAK,YAAY,EACjB,KAAK,EACN,MAAM,QAAQ,CAAA;AAEf,MAAM,MAAM,YAAY,GAAG,aAAa,CAAA;AAExC,QAAA,MAAM,OAAO,GAAI,qBAAqB,YAAY,4CA0BjD,CAAA;AAED,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
3
|
import { CircleCheckIcon, InfoIcon, Loader2Icon, OctagonXIcon, TriangleAlertIcon, } from 'lucide-react';
|
|
4
|
-
import { useTheme } from '
|
|
5
|
-
import { Toaster as Sonner } from 'sonner';
|
|
6
|
-
const Toaster = ({ ...props }) => {
|
|
7
|
-
const {
|
|
8
|
-
return (_jsx(Sonner, { theme:
|
|
4
|
+
import { useTheme } from '../../lib/theme';
|
|
5
|
+
import { Toaster as Sonner, toast, } from 'sonner';
|
|
6
|
+
const Toaster = ({ style, ...props }) => {
|
|
7
|
+
const { resolvedTheme } = useTheme();
|
|
8
|
+
return (_jsx(Sonner, { theme: resolvedTheme, className: "toaster group", icons: {
|
|
9
9
|
success: _jsx(CircleCheckIcon, { className: "size-4" }),
|
|
10
10
|
info: _jsx(InfoIcon, { className: "size-4" }),
|
|
11
11
|
warning: _jsx(TriangleAlertIcon, { className: "size-4" }),
|
|
@@ -16,6 +16,7 @@ const Toaster = ({ ...props }) => {
|
|
|
16
16
|
'--normal-text': 'var(--popover-foreground)',
|
|
17
17
|
'--normal-border': 'var(--border)',
|
|
18
18
|
'--border-radius': 'var(--radius)',
|
|
19
|
+
...style,
|
|
19
20
|
}, ...props }));
|
|
20
21
|
};
|
|
21
|
-
export { Toaster };
|
|
22
|
+
export { Toaster, toast };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { GroupProps, PanelProps, SeparatorProps } from 'react-resizable-panels';
|
|
2
|
+
export interface SplitViewProps extends GroupProps {
|
|
3
|
+
orientation?: 'horizontal' | 'vertical';
|
|
4
|
+
}
|
|
5
|
+
declare function SplitView({ orientation, ...props }: SplitViewProps): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
declare function SplitViewPane(props: PanelProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
declare function SplitViewHandle({ withHandle, ...props }: SeparatorProps & {
|
|
8
|
+
withHandle?: boolean;
|
|
9
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export { SplitView, SplitViewHandle, SplitViewPane };
|
|
11
|
+
//# sourceMappingURL=split-view.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"split-view.d.ts","sourceRoot":"","sources":["../../../src/components/ui/split-view.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,cAAc,EACf,MAAM,wBAAwB,CAAA;AAO/B,MAAM,WAAW,cAAe,SAAQ,UAAU;IAChD,WAAW,CAAC,EAAE,YAAY,GAAG,UAAU,CAAA;CACxC;AAED,iBAAS,SAAS,CAAC,EAAE,WAA0B,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,2CAQ1E;AAED,iBAAS,aAAa,CAAC,KAAK,EAAE,UAAU,2CAEvC;AAED,iBAAS,eAAe,CAAC,EACvB,UAAkB,EAClB,GAAG,KAAK,EACT,EAAE,cAAc,GAAG;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAE,2CAQ3C;AAED,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,CAAA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { ResizableHandle, ResizablePanel, ResizablePanelGroup, } from './resizable';
|
|
4
|
+
function SplitView({ orientation = 'horizontal', ...props }) {
|
|
5
|
+
return (_jsx(ResizablePanelGroup, { "data-slot": "split-view", orientation: orientation, ...props }));
|
|
6
|
+
}
|
|
7
|
+
function SplitViewPane(props) {
|
|
8
|
+
return _jsx(ResizablePanel, { "data-slot": "split-view-pane", ...props });
|
|
9
|
+
}
|
|
10
|
+
function SplitViewHandle({ withHandle = false, ...props }) {
|
|
11
|
+
return (_jsx(ResizableHandle, { "data-slot": "split-view-handle", withHandle: withHandle, ...props }));
|
|
12
|
+
}
|
|
13
|
+
export { SplitView, SplitViewHandle, SplitViewPane };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
3
|
+
declare const statusVariants: (props?: ({
|
|
4
|
+
variant?: "error" | "pending" | "running" | "success" | "neutral" | "warning" | null | undefined;
|
|
5
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
6
|
+
export interface StatusProps extends React.ComponentProps<'span'>, VariantProps<typeof statusVariants> {
|
|
7
|
+
asChild?: boolean;
|
|
8
|
+
showIndicator?: boolean;
|
|
9
|
+
animated?: boolean;
|
|
10
|
+
}
|
|
11
|
+
declare function Status({ asChild, showIndicator, animated, variant, className, children, ...props }: StatusProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export { Status, statusVariants };
|
|
13
|
+
//# sourceMappingURL=status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/components/ui/status.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,KAAK,YAAY,EAAO,MAAM,0BAA0B,CAAA;AAEjE,QAAA,MAAM,cAAc;;8EAiBnB,CAAA;AAcD,MAAM,WAAW,WACf,SAAQ,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,EAClC,YAAY,CAAC,OAAO,cAAc,CAAC;IACrC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,iBAAS,MAAM,CAAC,EACd,OAAe,EACf,aAAoB,EACpB,QAAgB,EAChB,OAAO,EACP,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,WAAW,2CAqBb;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { Slot } from '@radix-ui/react-slot';
|
|
4
|
+
import { cn } from '../../lib/utils';
|
|
5
|
+
import { cva } from 'class-variance-authority';
|
|
6
|
+
const statusVariants = cva('inline-flex min-w-0 items-center gap-1.5 text-xs font-medium leading-4', {
|
|
7
|
+
variants: {
|
|
8
|
+
variant: {
|
|
9
|
+
neutral: 'text-muted-foreground',
|
|
10
|
+
success: 'text-success',
|
|
11
|
+
warning: 'text-warning-foreground',
|
|
12
|
+
error: 'text-destructive',
|
|
13
|
+
running: 'text-status-running',
|
|
14
|
+
pending: 'text-status-pending',
|
|
15
|
+
},
|
|
16
|
+
},
|
|
17
|
+
defaultVariants: {
|
|
18
|
+
variant: 'neutral',
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
const statusDotVariants = cva('size-1.5 shrink-0 rounded-full bg-current', {
|
|
22
|
+
variants: {
|
|
23
|
+
animated: {
|
|
24
|
+
true: 'motion-safe:animate-pulse',
|
|
25
|
+
false: '',
|
|
26
|
+
},
|
|
27
|
+
},
|
|
28
|
+
defaultVariants: {
|
|
29
|
+
animated: false,
|
|
30
|
+
},
|
|
31
|
+
});
|
|
32
|
+
function Status({ asChild = false, showIndicator = true, animated = false, variant, className, children, ...props }) {
|
|
33
|
+
const Component = asChild ? Slot : 'span';
|
|
34
|
+
return (_jsxs(Component, { "data-slot": "status", "data-variant": variant ?? 'neutral', role: "status", className: cn(statusVariants({ variant }), className), ...props, children: [showIndicator ? (_jsx("span", { "aria-hidden": "true", "data-slot": "status-indicator", className: statusDotVariants({ animated }) })) : null, children] }));
|
|
35
|
+
}
|
|
36
|
+
export { Status, statusVariants };
|
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
-
|
|
2
|
+
export type TableDensity = 'compact' | 'default' | 'comfortable';
|
|
3
|
+
export interface TableProps extends React.ComponentProps<'table'> {
|
|
4
|
+
density?: TableDensity;
|
|
5
|
+
}
|
|
6
|
+
declare function Table({ density, className, ...props }: TableProps): import("react/jsx-runtime").JSX.Element;
|
|
3
7
|
declare function TableHeader({ className, ...props }: React.ComponentProps<'thead'>): import("react/jsx-runtime").JSX.Element;
|
|
4
8
|
declare function TableBody({ className, ...props }: React.ComponentProps<'tbody'>): import("react/jsx-runtime").JSX.Element;
|
|
5
9
|
declare function TableFooter({ className, ...props }: React.ComponentProps<'tfoot'>): import("react/jsx-runtime").JSX.Element;
|
|
6
|
-
|
|
10
|
+
export interface TableRowProps extends Omit<React.ComponentProps<'tr'>, 'aria-selected'> {
|
|
11
|
+
selected?: boolean;
|
|
12
|
+
disabled?: boolean;
|
|
13
|
+
onSelectionChange?: (selected: boolean) => void;
|
|
14
|
+
}
|
|
15
|
+
declare function TableRow({ selected, disabled, onSelectionChange, onClick, onKeyDown, className, ...props }: TableRowProps): import("react/jsx-runtime").JSX.Element;
|
|
7
16
|
declare function TableHead({ className, ...props }: React.ComponentProps<'th'>): import("react/jsx-runtime").JSX.Element;
|
|
8
17
|
declare function TableCell({ className, ...props }: React.ComponentProps<'td'>): import("react/jsx-runtime").JSX.Element;
|
|
9
18
|
declare function TableCaption({ className, ...props }: React.ComponentProps<'caption'>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../src/components/ui/table.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../../src/components/ui/table.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,aAAa,CAAA;AAIhE,MAAM,WAAW,UAAW,SAAQ,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC;IAC/D,OAAO,CAAC,EAAE,YAAY,CAAA;CACvB;AAED,iBAAS,KAAK,CAAC,EAAE,OAAmB,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,UAAU,2CAgBtE;AAED,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,2CAQ1E;AAED,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,2CAQxE;AAED,iBAAS,WAAW,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,2CAW1E;AAED,MAAM,WAAW,aACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAA;CAChD;AAED,iBAAS,QAAQ,CAAC,EAChB,QAAQ,EACR,QAAgB,EAChB,iBAAiB,EACjB,OAAO,EACP,SAAS,EACT,SAAS,EACT,GAAG,KAAK,EACT,EAAE,aAAa,2CA+Cf;AAED,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,2CAgBrE;AAED,iBAAS,SAAS,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,2CAgBrE;AAED,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,SAAS,CAAC,2CAQjC;AAED,OAAO,EACL,KAAK,EACL,WAAW,EACX,SAAS,EACT,WAAW,EACX,SAAS,EACT,QAAQ,EACR,SAAS,EACT,YAAY,GACb,CAAA"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import * as React from 'react';
|
|
3
4
|
import { cn } from '../../lib/utils';
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
import { isInteractiveDescendant } from './collection-navigation';
|
|
6
|
+
const TableDensityContext = React.createContext('default');
|
|
7
|
+
function Table({ density = 'default', className, ...props }) {
|
|
8
|
+
return (_jsx(TableDensityContext.Provider, { value: density, children: _jsx("div", { "data-slot": "table-container", className: "relative w-full overflow-x-auto", children: _jsx("table", { "data-slot": "table", "data-density": density, className: cn('w-full caption-bottom text-sm', className), ...props }) }) }));
|
|
6
9
|
}
|
|
7
10
|
function TableHeader({ className, ...props }) {
|
|
8
11
|
return (_jsx("thead", { "data-slot": "table-header", className: cn('[&_tr]:border-b', className), ...props }));
|
|
@@ -13,14 +16,38 @@ function TableBody({ className, ...props }) {
|
|
|
13
16
|
function TableFooter({ className, ...props }) {
|
|
14
17
|
return (_jsx("tfoot", { "data-slot": "table-footer", className: cn('bg-muted/50 border-t font-medium [&>tr]:last:border-b-0', className), ...props }));
|
|
15
18
|
}
|
|
16
|
-
function TableRow({ className, ...props }) {
|
|
17
|
-
|
|
19
|
+
function TableRow({ selected, disabled = false, onSelectionChange, onClick, onKeyDown, className, ...props }) {
|
|
20
|
+
const selectable = selected !== undefined || onSelectionChange !== undefined;
|
|
21
|
+
const select = () => {
|
|
22
|
+
if (!disabled)
|
|
23
|
+
onSelectionChange?.(!selected);
|
|
24
|
+
};
|
|
25
|
+
return (_jsx("tr", { "data-slot": "table-row", "data-state": selected ? 'selected' : undefined, "data-disabled": disabled ? '' : undefined, "aria-selected": selectable ? Boolean(selected) : undefined, "aria-disabled": disabled || undefined, tabIndex: selectable && !disabled ? 0 : undefined, className: cn('hover:bg-muted/50 data-[state=selected]:bg-accent data-[state=selected]:text-accent-foreground border-b transition-colors', selectable &&
|
|
26
|
+
'focus-visible:ring-ring/50 cursor-pointer outline-none focus-visible:ring-2 focus-visible:ring-inset', disabled && 'pointer-events-none cursor-not-allowed opacity-50', className), onClick: (event) => {
|
|
27
|
+
onClick?.(event);
|
|
28
|
+
if (!event.defaultPrevented &&
|
|
29
|
+
selectable &&
|
|
30
|
+
!isInteractiveDescendant(event.target, event.currentTarget)) {
|
|
31
|
+
select();
|
|
32
|
+
}
|
|
33
|
+
}, onKeyDown: (event) => {
|
|
34
|
+
onKeyDown?.(event);
|
|
35
|
+
if (!event.defaultPrevented &&
|
|
36
|
+
selectable &&
|
|
37
|
+
!isInteractiveDescendant(event.target, event.currentTarget) &&
|
|
38
|
+
(event.key === 'Enter' || event.key === ' ')) {
|
|
39
|
+
event.preventDefault();
|
|
40
|
+
select();
|
|
41
|
+
}
|
|
42
|
+
}, ...props }));
|
|
18
43
|
}
|
|
19
44
|
function TableHead({ className, ...props }) {
|
|
20
|
-
|
|
45
|
+
const density = React.useContext(TableDensityContext);
|
|
46
|
+
return (_jsx("th", { "data-slot": "table-head", className: cn('text-foreground whitespace-nowrap px-2 text-left align-middle font-medium [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]', density === 'compact' && 'h-7 text-xs', density === 'default' && 'h-10', density === 'comfortable' && 'h-12 px-3', className), ...props }));
|
|
21
47
|
}
|
|
22
48
|
function TableCell({ className, ...props }) {
|
|
23
|
-
|
|
49
|
+
const density = React.useContext(TableDensityContext);
|
|
50
|
+
return (_jsx("td", { "data-slot": "table-cell", className: cn('whitespace-nowrap align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]', density === 'compact' && 'px-2 py-1 text-xs', density === 'default' && 'p-2', density === 'comfortable' && 'px-3 py-3', className), ...props }));
|
|
24
51
|
}
|
|
25
52
|
function TableCaption({ className, ...props }) {
|
|
26
53
|
return (_jsx("caption", { "data-slot": "table-caption", className: cn('text-muted-foreground mt-4 text-sm', className), ...props }));
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { type VariantProps } from 'class-variance-authority';
|
|
3
|
+
declare const textVariants: (props?: ({
|
|
4
|
+
variant?: "small" | "strong" | "large" | "heading1" | "heading2" | "large-strong" | "regular" | "small-strong" | "mini" | "mini-strong" | "mono" | "mono-strong" | "small-mono" | null | undefined;
|
|
5
|
+
color?: "link" | "destructive" | "secondary" | "inherit" | "disabled" | "success" | "warning" | "primary" | "tertiary" | "accent" | null | undefined;
|
|
6
|
+
align?: "center" | "left" | "right" | null | undefined;
|
|
7
|
+
truncate?: boolean | null | undefined;
|
|
8
|
+
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
9
|
+
type TextElement = 'span' | 'p' | 'div' | 'label' | 'h1' | 'h2' | 'h3' | 'h4' | 'pre' | 'code';
|
|
10
|
+
export interface TextProps extends Omit<React.HTMLAttributes<HTMLElement>, 'color'>, VariantProps<typeof textVariants> {
|
|
11
|
+
as?: TextElement;
|
|
12
|
+
asChild?: boolean;
|
|
13
|
+
htmlFor?: string;
|
|
14
|
+
}
|
|
15
|
+
declare function Text({ as, asChild, variant, color, align, truncate, className, ...props }: TextProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export { Text, textVariants };
|
|
17
|
+
//# sourceMappingURL=text.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../src/components/ui/text.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,KAAK,YAAY,EAAO,MAAM,0BAA0B,CAAA;AAEjE,QAAA,MAAM,YAAY;;;;;8EA4ChB,CAAA;AAEF,KAAK,WAAW,GACZ,MAAM,GACN,GAAG,GACH,KAAK,GACL,OAAO,GACP,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,KAAK,GACL,MAAM,CAAA;AAEV,MAAM,WAAW,SACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,EACtD,YAAY,CAAC,OAAO,YAAY,CAAC;IACnC,EAAE,CAAC,EAAE,WAAW,CAAA;IAChB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED,iBAAS,IAAI,CAAC,EACZ,EAAW,EACX,OAAe,EACf,OAAO,EACP,KAAK,EACL,KAAK,EACL,QAAQ,EACR,SAAS,EACT,GAAG,KAAK,EACT,EAAE,SAAS,2CAeX;AAED,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAA"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { Slot } from '@radix-ui/react-slot';
|
|
4
|
+
import { cn } from '../../lib/utils';
|
|
5
|
+
import { cva } from 'class-variance-authority';
|
|
6
|
+
const textVariants = cva('min-w-0 text-foreground', {
|
|
7
|
+
variants: {
|
|
8
|
+
variant: {
|
|
9
|
+
heading1: 'text-2xl font-semibold leading-tight tracking-tight',
|
|
10
|
+
heading2: 'text-lg font-semibold leading-tight tracking-tight',
|
|
11
|
+
large: 'text-base font-normal leading-6',
|
|
12
|
+
'large-strong': 'text-base font-medium leading-6',
|
|
13
|
+
regular: 'text-[13px] font-normal leading-5',
|
|
14
|
+
strong: 'text-[13px] font-medium leading-5',
|
|
15
|
+
small: 'text-xs font-normal leading-4',
|
|
16
|
+
'small-strong': 'text-xs font-medium leading-4',
|
|
17
|
+
mini: 'text-[10px] font-normal leading-3',
|
|
18
|
+
'mini-strong': 'text-[10px] font-medium leading-3',
|
|
19
|
+
mono: 'font-mono text-[13px] font-normal leading-5',
|
|
20
|
+
'mono-strong': 'font-mono text-[13px] font-semibold leading-5',
|
|
21
|
+
'small-mono': 'font-mono text-xs font-normal leading-4',
|
|
22
|
+
},
|
|
23
|
+
color: {
|
|
24
|
+
primary: 'text-foreground',
|
|
25
|
+
secondary: 'text-muted-foreground',
|
|
26
|
+
tertiary: 'text-muted-foreground/70',
|
|
27
|
+
disabled: 'text-muted-foreground/50',
|
|
28
|
+
link: 'text-primary',
|
|
29
|
+
accent: 'text-primary',
|
|
30
|
+
destructive: 'text-destructive',
|
|
31
|
+
success: 'text-success',
|
|
32
|
+
warning: 'text-warning-foreground',
|
|
33
|
+
inherit: 'text-inherit',
|
|
34
|
+
},
|
|
35
|
+
align: {
|
|
36
|
+
left: 'text-left',
|
|
37
|
+
center: 'text-center',
|
|
38
|
+
right: 'text-right',
|
|
39
|
+
},
|
|
40
|
+
truncate: {
|
|
41
|
+
true: 'truncate',
|
|
42
|
+
false: '',
|
|
43
|
+
},
|
|
44
|
+
},
|
|
45
|
+
defaultVariants: {
|
|
46
|
+
variant: 'regular',
|
|
47
|
+
color: 'primary',
|
|
48
|
+
truncate: false,
|
|
49
|
+
},
|
|
50
|
+
});
|
|
51
|
+
function Text({ as = 'span', asChild = false, variant, color, align, truncate, className, ...props }) {
|
|
52
|
+
const Component = asChild ? Slot : as;
|
|
53
|
+
return (_jsx(Component, { "data-slot": "text", "data-variant": variant ?? 'regular', "data-color": color ?? 'primary', className: cn(textVariants({ variant, color, align, truncate }), className), ...props }));
|
|
54
|
+
}
|
|
55
|
+
export { Text, textVariants };
|
|
@@ -2,9 +2,17 @@ import * as TogglePrimitive from '@radix-ui/react-toggle';
|
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { type VariantProps } from 'class-variance-authority';
|
|
4
4
|
declare const toggleVariants: (props?: ({
|
|
5
|
-
variant?: "default" | "outline" | null | undefined;
|
|
6
|
-
size?: "default" | "sm" | "lg" | null | undefined;
|
|
5
|
+
variant?: "default" | "outline" | "filled" | null | undefined;
|
|
6
|
+
size?: "default" | "xs" | "sm" | "lg" | null | undefined;
|
|
7
7
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
type ToggleProps = React.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>;
|
|
9
|
+
declare function Toggle({ className, variant, size, ...props }: ToggleProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
type ToggleButtonProps = ToggleProps & ({
|
|
11
|
+
iconOnly: true;
|
|
12
|
+
'aria-label': string;
|
|
13
|
+
} | {
|
|
14
|
+
iconOnly?: false;
|
|
15
|
+
});
|
|
16
|
+
declare function ToggleButton({ className, iconOnly, size, ...props }: ToggleButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export { Toggle, ToggleButton, toggleVariants, type ToggleButtonProps, type ToggleProps, };
|
|
10
18
|
//# sourceMappingURL=toggle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../src/components/ui/toggle.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AACzD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,KAAK,YAAY,EAAO,MAAM,0BAA0B,CAAA;AAEjE,QAAA,MAAM,cAAc;;;
|
|
1
|
+
{"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../src/components/ui/toggle.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AACzD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,KAAK,YAAY,EAAO,MAAM,0BAA0B,CAAA;AAEjE,QAAA,MAAM,cAAc;;;8EAsBnB,CAAA;AAED,KAAK,WAAW,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,GAClE,YAAY,CAAC,OAAO,cAAc,CAAC,CAAA;AAErC,iBAAS,MAAM,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,EAAE,WAAW,2CAQlE;AAED,KAAK,iBAAiB,GAAG,WAAW,GAClC,CACI;IACE,QAAQ,EAAE,IAAI,CAAA;IACd,YAAY,EAAE,MAAM,CAAA;CACrB,GACD;IACE,QAAQ,CAAC,EAAE,KAAK,CAAA;CACjB,CACJ,CAAA;AASH,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,QAAgB,EAChB,IAAgB,EAChB,GAAG,KAAK,EACT,EAAE,iBAAiB,2CAanB;AAED,OAAO,EACL,MAAM,EACN,YAAY,EACZ,cAAc,EACd,KAAK,iBAAiB,EACtB,KAAK,WAAW,GACjB,CAAA"}
|