@hanzo/ui 8.29.44 → 8.30.3
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/agents/Attachments.cjs +13 -3
- package/dist/agents/Attachments.d.ts +1 -1
- package/dist/agents/Attachments.d.ts.map +1 -1
- package/dist/agents/Attachments.js +13 -3
- package/dist/agents/Attachments.js.map +1 -1
- package/dist/agents/Board.cjs +9 -5
- package/dist/agents/Board.d.ts.map +1 -1
- package/dist/agents/Board.js +9 -5
- package/dist/agents/Board.js.map +1 -1
- package/dist/agents/ChannelMembers.cjs +66 -1
- package/dist/agents/ChannelMembers.d.ts.map +1 -1
- package/dist/agents/ChannelMembers.js +66 -1
- package/dist/agents/ChannelMembers.js.map +1 -1
- package/dist/agents/ChannelNotes.cjs +38 -2
- package/dist/agents/ChannelNotes.d.ts.map +1 -1
- package/dist/agents/ChannelNotes.js +38 -2
- package/dist/agents/ChannelNotes.js.map +1 -1
- package/dist/agents/Choice.cjs +7 -4
- package/dist/agents/Choice.d.ts.map +1 -1
- package/dist/agents/Choice.js +7 -4
- package/dist/agents/Choice.js.map +1 -1
- package/dist/agents/Console.cjs +15 -8
- package/dist/agents/Console.d.ts +1 -1
- package/dist/agents/Console.d.ts.map +1 -1
- package/dist/agents/Console.js +15 -8
- package/dist/agents/Console.js.map +1 -1
- package/dist/agents/DiffViewer.cjs +52 -4
- package/dist/agents/DiffViewer.d.ts.map +1 -1
- package/dist/agents/DiffViewer.js +52 -4
- package/dist/agents/DiffViewer.js.map +1 -1
- package/dist/agents/DirectoryModal.cjs +37 -15
- package/dist/agents/DirectoryModal.d.ts.map +1 -1
- package/dist/agents/DirectoryModal.js +37 -15
- package/dist/agents/DirectoryModal.js.map +1 -1
- package/dist/agents/DriveViewer.cjs +19 -4
- package/dist/agents/DriveViewer.d.ts.map +1 -1
- package/dist/agents/DriveViewer.js +20 -5
- package/dist/agents/DriveViewer.js.map +1 -1
- package/dist/agents/Feedback.cjs +10 -2
- package/dist/agents/Feedback.d.ts.map +1 -1
- package/dist/agents/Feedback.js +10 -2
- package/dist/agents/Feedback.js.map +1 -1
- package/dist/agents/FileTabs.cjs +17 -10
- package/dist/agents/FileTabs.d.ts.map +1 -1
- package/dist/agents/FileTabs.js +17 -10
- package/dist/agents/FileTabs.js.map +1 -1
- package/dist/agents/FileTree.cjs +9 -6
- package/dist/agents/FileTree.d.ts.map +1 -1
- package/dist/agents/FileTree.js +9 -6
- package/dist/agents/FileTree.js.map +1 -1
- package/dist/agents/LiveVoiceCall.cjs +66 -16
- package/dist/agents/LiveVoiceCall.d.ts.map +1 -1
- package/dist/agents/LiveVoiceCall.js +66 -16
- package/dist/agents/LiveVoiceCall.js.map +1 -1
- package/dist/agents/MCPHub.cjs +48 -3
- package/dist/agents/MCPHub.d.ts.map +1 -1
- package/dist/agents/MCPHub.js +48 -3
- package/dist/agents/MCPHub.js.map +1 -1
- package/dist/agents/Pane.cjs +15 -9
- package/dist/agents/Pane.d.ts +1 -1
- package/dist/agents/Pane.d.ts.map +1 -1
- package/dist/agents/Pane.js +15 -9
- package/dist/agents/Pane.js.map +1 -1
- package/dist/agents/PreviewFrame.cjs +6 -4
- package/dist/agents/PreviewFrame.d.ts.map +1 -1
- package/dist/agents/PreviewFrame.js +6 -4
- package/dist/agents/PreviewFrame.js.map +1 -1
- package/dist/agents/Progress.cjs +4 -2
- package/dist/agents/Progress.d.ts.map +1 -1
- package/dist/agents/Progress.js +4 -2
- package/dist/agents/Progress.js.map +1 -1
- package/dist/agents/Screen.cjs +18 -10
- package/dist/agents/Screen.d.ts.map +1 -1
- package/dist/agents/Screen.js +18 -10
- package/dist/agents/Screen.js.map +1 -1
- package/dist/agents/ShortcutsSheet.cjs +66 -11
- package/dist/agents/ShortcutsSheet.d.ts.map +1 -1
- package/dist/agents/ShortcutsSheet.js +66 -11
- package/dist/agents/ShortcutsSheet.js.map +1 -1
- package/dist/agents/Steer.cjs +7 -4
- package/dist/agents/Steer.d.ts.map +1 -1
- package/dist/agents/Steer.js +7 -4
- package/dist/agents/Steer.js.map +1 -1
- package/dist/agents/Suggestions.cjs +5 -2
- package/dist/agents/Suggestions.d.ts +1 -1
- package/dist/agents/Suggestions.d.ts.map +1 -1
- package/dist/agents/Suggestions.js +5 -2
- package/dist/agents/Suggestions.js.map +1 -1
- package/dist/agents/SwarmBar.cjs +9 -2
- package/dist/agents/SwarmBar.d.ts.map +1 -1
- package/dist/agents/SwarmBar.js +9 -2
- package/dist/agents/SwarmBar.js.map +1 -1
- package/dist/agents/TerminalViewer.cjs +74 -6
- package/dist/agents/TerminalViewer.d.ts.map +1 -1
- package/dist/agents/TerminalViewer.js +74 -6
- package/dist/agents/TerminalViewer.js.map +1 -1
- package/dist/agents/Transcript.cjs +3 -1
- package/dist/agents/Transcript.d.ts.map +1 -1
- package/dist/agents/Transcript.js +3 -1
- package/dist/agents/Transcript.js.map +1 -1
- package/dist/agents/Workspace.cjs +15 -10
- package/dist/agents/Workspace.d.ts.map +1 -1
- package/dist/agents/Workspace.js +15 -10
- package/dist/agents/Workspace.js.map +1 -1
- package/dist/auth/SignIn.cjs +17 -8
- package/dist/auth/SignIn.d.ts.map +1 -1
- package/dist/auth/SignIn.js +15 -6
- package/dist/auth/SignIn.js.map +1 -1
- package/dist/backdrop/scene.cjs +4 -28
- package/dist/backdrop/scene.d.ts +2 -1
- package/dist/backdrop/scene.d.ts.map +1 -1
- package/dist/backdrop/scene.js +4 -28
- package/dist/backdrop/scene.js.map +1 -1
- package/dist/backends/gui/advanced-chart.cjs +3 -1
- package/dist/backends/gui/advanced-chart.d.ts.map +1 -1
- package/dist/backends/gui/advanced-chart.js +3 -1
- package/dist/backends/gui/advanced-chart.js.map +1 -1
- package/dist/backends/gui/alert.cjs +4 -2
- package/dist/backends/gui/alert.d.ts.map +1 -1
- package/dist/backends/gui/alert.js +4 -2
- package/dist/backends/gui/alert.js.map +1 -1
- package/dist/backends/gui/animated-testimonials.cjs +3 -1
- package/dist/backends/gui/animated-testimonials.d.ts.map +1 -1
- package/dist/backends/gui/animated-testimonials.js +3 -1
- package/dist/backends/gui/animated-testimonials.js.map +1 -1
- package/dist/backends/gui/announcement.cjs +4 -2
- package/dist/backends/gui/announcement.d.ts +0 -13
- package/dist/backends/gui/announcement.d.ts.map +1 -1
- package/dist/backends/gui/announcement.js +4 -2
- package/dist/backends/gui/announcement.js.map +1 -1
- package/dist/backends/gui/apple-cards-carousel.cjs +31 -12
- package/dist/backends/gui/apple-cards-carousel.d.ts +1 -1
- package/dist/backends/gui/apple-cards-carousel.d.ts.map +1 -1
- package/dist/backends/gui/apple-cards-carousel.js +31 -12
- package/dist/backends/gui/apple-cards-carousel.js.map +1 -1
- package/dist/backends/gui/apple-hello-effect.cjs +5 -2
- package/dist/backends/gui/apple-hello-effect.d.ts.map +1 -1
- package/dist/backends/gui/apple-hello-effect.js +5 -2
- package/dist/backends/gui/apple-hello-effect.js.map +1 -1
- package/dist/backends/gui/banner.cjs +7 -4
- package/dist/backends/gui/banner.d.ts +0 -30
- package/dist/backends/gui/banner.d.ts.map +1 -1
- package/dist/backends/gui/banner.js +7 -4
- package/dist/backends/gui/banner.js.map +1 -1
- package/dist/backends/gui/breadcrumb.cjs +5 -1
- package/dist/backends/gui/breadcrumb.d.ts +1 -1
- package/dist/backends/gui/breadcrumb.d.ts.map +1 -1
- package/dist/backends/gui/breadcrumb.js +5 -1
- package/dist/backends/gui/breadcrumb.js.map +1 -1
- package/dist/backends/gui/calendar.cjs +10 -21
- package/dist/backends/gui/calendar.d.ts.map +1 -1
- package/dist/backends/gui/calendar.js +10 -21
- package/dist/backends/gui/calendar.js.map +1 -1
- package/dist/backends/gui/carousel.cjs +25 -7
- package/dist/backends/gui/carousel.d.ts.map +1 -1
- package/dist/backends/gui/carousel.js +25 -7
- package/dist/backends/gui/carousel.js.map +1 -1
- package/dist/backends/gui/code-block.cjs +37 -16
- package/dist/backends/gui/code-block.d.ts.map +1 -1
- package/dist/backends/gui/code-block.js +37 -16
- package/dist/backends/gui/code-block.js.map +1 -1
- package/dist/backends/gui/code-editor.cjs +92 -75
- package/dist/backends/gui/code-editor.d.ts +2 -2
- package/dist/backends/gui/code-editor.d.ts.map +1 -1
- package/dist/backends/gui/code-editor.js +94 -77
- package/dist/backends/gui/code-editor.js.map +1 -1
- package/dist/backends/gui/code-tabs.cjs +3 -1
- package/dist/backends/gui/code-tabs.d.ts.map +1 -1
- package/dist/backends/gui/code-tabs.js +3 -1
- package/dist/backends/gui/code-tabs.js.map +1 -1
- package/dist/backends/gui/combobox.cjs +7 -4
- package/dist/backends/gui/combobox.d.ts.map +1 -1
- package/dist/backends/gui/combobox.js +7 -4
- package/dist/backends/gui/combobox.js.map +1 -1
- package/dist/backends/gui/command.cjs +6 -2
- package/dist/backends/gui/command.d.ts.map +1 -1
- package/dist/backends/gui/command.js +6 -2
- package/dist/backends/gui/command.js.map +1 -1
- package/dist/backends/gui/company-profile.cjs +3 -1
- package/dist/backends/gui/company-profile.d.ts.map +1 -1
- package/dist/backends/gui/company-profile.js +3 -1
- package/dist/backends/gui/company-profile.js.map +1 -1
- package/dist/backends/gui/country-select.cjs +4 -1
- package/dist/backends/gui/country-select.d.ts +1 -1
- package/dist/backends/gui/country-select.d.ts.map +1 -1
- package/dist/backends/gui/country-select.js +4 -1
- package/dist/backends/gui/country-select.js.map +1 -1
- package/dist/backends/gui/credit-card.cjs +4 -2
- package/dist/backends/gui/credit-card.d.ts.map +1 -1
- package/dist/backends/gui/credit-card.js +4 -2
- package/dist/backends/gui/credit-card.js.map +1 -1
- package/dist/backends/gui/crypto-market.cjs +5 -3
- package/dist/backends/gui/crypto-market.d.ts.map +1 -1
- package/dist/backends/gui/crypto-market.js +5 -3
- package/dist/backends/gui/crypto-market.js.map +1 -1
- package/dist/backends/gui/crypto-screener.cjs +3 -1
- package/dist/backends/gui/crypto-screener.d.ts.map +1 -1
- package/dist/backends/gui/crypto-screener.js +3 -1
- package/dist/backends/gui/crypto-screener.js.map +1 -1
- package/dist/backends/gui/currency-picker.cjs +6 -3
- package/dist/backends/gui/currency-picker.d.ts +1 -1
- package/dist/backends/gui/currency-picker.d.ts.map +1 -1
- package/dist/backends/gui/currency-picker.js +6 -3
- package/dist/backends/gui/currency-picker.js.map +1 -1
- package/dist/backends/gui/data-table.cjs +46 -17
- package/dist/backends/gui/data-table.d.ts.map +1 -1
- package/dist/backends/gui/data-table.js +47 -18
- package/dist/backends/gui/data-table.js.map +1 -1
- package/dist/backends/gui/date-picker.cjs +8 -17
- package/dist/backends/gui/date-picker.d.ts.map +1 -1
- package/dist/backends/gui/date-picker.js +8 -17
- package/dist/backends/gui/date-picker.js.map +1 -1
- package/dist/backends/gui/desktop-spotlight.cjs +7 -3
- package/dist/backends/gui/desktop-spotlight.d.ts +1 -1
- package/dist/backends/gui/desktop-spotlight.d.ts.map +1 -1
- package/dist/backends/gui/desktop-spotlight.js +7 -3
- package/dist/backends/gui/desktop-spotlight.js.map +1 -1
- package/dist/backends/gui/desktop-window.cjs +7 -5
- package/dist/backends/gui/desktop-window.d.ts +1 -1
- package/dist/backends/gui/desktop-window.d.ts.map +1 -1
- package/dist/backends/gui/desktop-window.js +7 -5
- package/dist/backends/gui/desktop-window.js.map +1 -1
- package/dist/backends/gui/dialog-stack.cjs +4 -2
- package/dist/backends/gui/dialog-stack.d.ts +1 -1
- package/dist/backends/gui/dialog-stack.d.ts.map +1 -1
- package/dist/backends/gui/dialog-stack.js +4 -2
- package/dist/backends/gui/dialog-stack.js.map +1 -1
- package/dist/backends/gui/dialog.cjs +18 -7
- package/dist/backends/gui/dialog.d.ts +2 -2
- package/dist/backends/gui/dialog.d.ts.map +1 -1
- package/dist/backends/gui/dialog.js +19 -8
- package/dist/backends/gui/dialog.js.map +1 -1
- package/dist/backends/gui/drawer.cjs +12 -7
- package/dist/backends/gui/drawer.d.ts +1 -1
- package/dist/backends/gui/drawer.d.ts.map +1 -1
- package/dist/backends/gui/drawer.js +12 -7
- package/dist/backends/gui/drawer.js.map +1 -1
- package/dist/backends/gui/dropdown-menu.cjs +84 -59
- package/dist/backends/gui/dropdown-menu.d.ts +13 -13
- package/dist/backends/gui/dropdown-menu.d.ts.map +1 -1
- package/dist/backends/gui/dropdown-menu.js +87 -62
- package/dist/backends/gui/dropdown-menu.js.map +1 -1
- package/dist/backends/gui/dropzone.cjs +6 -4
- package/dist/backends/gui/dropzone.d.ts.map +1 -1
- package/dist/backends/gui/dropzone.js +6 -4
- package/dist/backends/gui/dropzone.js.map +1 -1
- package/dist/backends/gui/editor.cjs +4 -2
- package/dist/backends/gui/editor.d.ts.map +1 -1
- package/dist/backends/gui/editor.js +4 -2
- package/dist/backends/gui/editor.js.map +1 -1
- package/dist/backends/gui/financials.cjs +3 -1
- package/dist/backends/gui/financials.d.ts.map +1 -1
- package/dist/backends/gui/financials.js +3 -1
- package/dist/backends/gui/financials.js.map +1 -1
- package/dist/backends/gui/forex-screener.cjs +3 -1
- package/dist/backends/gui/forex-screener.d.ts.map +1 -1
- package/dist/backends/gui/forex-screener.js +3 -1
- package/dist/backends/gui/forex-screener.js.map +1 -1
- package/dist/backends/gui/gantt.cjs +16 -2
- package/dist/backends/gui/gantt.d.ts.map +1 -1
- package/dist/backends/gui/gantt.js +16 -2
- package/dist/backends/gui/gantt.js.map +1 -1
- package/dist/backends/gui/icon-picker.cjs +7 -3
- package/dist/backends/gui/icon-picker.d.ts +1 -1
- package/dist/backends/gui/icon-picker.d.ts.map +1 -1
- package/dist/backends/gui/icon-picker.js +7 -3
- package/dist/backends/gui/icon-picker.js.map +1 -1
- package/dist/backends/gui/image-crop.cjs +5 -3
- package/dist/backends/gui/image-crop.d.ts.map +1 -1
- package/dist/backends/gui/image-crop.js +5 -3
- package/dist/backends/gui/image-crop.js.map +1 -1
- package/dist/backends/gui/image-input.cjs +7 -3
- package/dist/backends/gui/image-input.d.ts +1 -1
- package/dist/backends/gui/image-input.d.ts.map +1 -1
- package/dist/backends/gui/image-input.js +7 -3
- package/dist/backends/gui/image-input.js.map +1 -1
- package/dist/backends/gui/input.cjs +10 -5
- package/dist/backends/gui/input.d.ts +1 -1
- package/dist/backends/gui/input.d.ts.map +1 -1
- package/dist/backends/gui/input.js +10 -5
- package/dist/backends/gui/input.js.map +1 -1
- package/dist/backends/gui/json-tree.cjs +51 -24
- package/dist/backends/gui/json-tree.d.ts +1 -1
- package/dist/backends/gui/json-tree.d.ts.map +1 -1
- package/dist/backends/gui/json-tree.js +51 -24
- package/dist/backends/gui/json-tree.js.map +1 -1
- package/dist/backends/gui/kanban.cjs +65 -15
- package/dist/backends/gui/kanban.d.ts.map +1 -1
- package/dist/backends/gui/kanban.js +67 -17
- package/dist/backends/gui/kanban.js.map +1 -1
- package/dist/backends/gui/limelight-nav.cjs +3 -1
- package/dist/backends/gui/limelight-nav.d.ts.map +1 -1
- package/dist/backends/gui/limelight-nav.js +3 -1
- package/dist/backends/gui/limelight-nav.js.map +1 -1
- package/dist/backends/gui/message-dock.cjs +5 -3
- package/dist/backends/gui/message-dock.d.ts.map +1 -1
- package/dist/backends/gui/message-dock.js +6 -4
- package/dist/backends/gui/message-dock.js.map +1 -1
- package/dist/backends/gui/nav-items.cjs +8 -4
- package/dist/backends/gui/nav-items.d.ts.map +1 -1
- package/dist/backends/gui/nav-items.js +8 -4
- package/dist/backends/gui/nav-items.js.map +1 -1
- package/dist/backends/gui/navigation-bar.cjs +16 -5
- package/dist/backends/gui/navigation-bar.d.ts.map +1 -1
- package/dist/backends/gui/navigation-bar.js +16 -5
- package/dist/backends/gui/navigation-bar.js.map +1 -1
- package/dist/backends/gui/navigation-menu.cjs +17 -5
- package/dist/backends/gui/navigation-menu.d.ts.map +1 -1
- package/dist/backends/gui/navigation-menu.js +17 -5
- package/dist/backends/gui/navigation-menu.js.map +1 -1
- package/dist/backends/gui/news-timeline.cjs +3 -1
- package/dist/backends/gui/news-timeline.d.ts.map +1 -1
- package/dist/backends/gui/news-timeline.js +3 -1
- package/dist/backends/gui/news-timeline.js.map +1 -1
- package/dist/backends/gui/number-field.cjs +24 -5
- package/dist/backends/gui/number-field.d.ts.map +1 -1
- package/dist/backends/gui/number-field.js +24 -5
- package/dist/backends/gui/number-field.js.map +1 -1
- package/dist/backends/gui/order-entry.cjs +3 -1
- package/dist/backends/gui/order-entry.d.ts.map +1 -1
- package/dist/backends/gui/order-entry.js +3 -1
- package/dist/backends/gui/order-entry.js.map +1 -1
- package/dist/backends/gui/orders-history.cjs +23 -5
- package/dist/backends/gui/orders-history.d.ts.map +1 -1
- package/dist/backends/gui/orders-history.js +23 -5
- package/dist/backends/gui/orders-history.js.map +1 -1
- package/dist/backends/gui/overflowing-list.cjs +4 -2
- package/dist/backends/gui/overflowing-list.d.ts.map +1 -1
- package/dist/backends/gui/overflowing-list.js +4 -2
- package/dist/backends/gui/overflowing-list.js.map +1 -1
- package/dist/backends/gui/pagination.cjs +32 -7
- package/dist/backends/gui/pagination.d.ts +0 -12
- package/dist/backends/gui/pagination.d.ts.map +1 -1
- package/dist/backends/gui/pagination.js +32 -7
- package/dist/backends/gui/pagination.js.map +1 -1
- package/dist/backends/gui/phone-country-picker.cjs +6 -3
- package/dist/backends/gui/phone-country-picker.d.ts +1 -1
- package/dist/backends/gui/phone-country-picker.d.ts.map +1 -1
- package/dist/backends/gui/phone-country-picker.js +6 -3
- package/dist/backends/gui/phone-country-picker.js.map +1 -1
- package/dist/backends/gui/pill.cjs +4 -2
- package/dist/backends/gui/pill.d.ts.map +1 -1
- package/dist/backends/gui/pill.js +5 -3
- package/dist/backends/gui/pill.js.map +1 -1
- package/dist/backends/gui/pin-list.cjs +3 -1
- package/dist/backends/gui/pin-list.d.ts.map +1 -1
- package/dist/backends/gui/pin-list.js +3 -1
- package/dist/backends/gui/pin-list.js.map +1 -1
- package/dist/backends/gui/positions-list.cjs +7 -4
- package/dist/backends/gui/positions-list.d.ts.map +1 -1
- package/dist/backends/gui/positions-list.js +7 -4
- package/dist/backends/gui/positions-list.js.map +1 -1
- package/dist/backends/gui/relative-time.cjs +51 -43
- package/dist/backends/gui/relative-time.d.ts +7 -0
- package/dist/backends/gui/relative-time.d.ts.map +1 -1
- package/dist/backends/gui/relative-time.js +51 -43
- package/dist/backends/gui/relative-time.js.map +1 -1
- package/dist/backends/gui/safari.cjs +7 -4
- package/dist/backends/gui/safari.d.ts.map +1 -1
- package/dist/backends/gui/safari.js +7 -4
- package/dist/backends/gui/safari.js.map +1 -1
- package/dist/backends/gui/search-list.cjs +5 -2
- package/dist/backends/gui/search-list.d.ts.map +1 -1
- package/dist/backends/gui/search-list.js +5 -2
- package/dist/backends/gui/search-list.js.map +1 -1
- package/dist/backends/gui/select.cjs +8 -2
- package/dist/backends/gui/select.d.ts +7 -0
- package/dist/backends/gui/select.d.ts.map +1 -1
- package/dist/backends/gui/select.js +8 -2
- package/dist/backends/gui/select.js.map +1 -1
- package/dist/backends/gui/shortcut.cjs +4 -1
- package/dist/backends/gui/shortcut.d.ts +1 -1
- package/dist/backends/gui/shortcut.d.ts.map +1 -1
- package/dist/backends/gui/shortcut.js +4 -1
- package/dist/backends/gui/shortcut.js.map +1 -1
- package/dist/backends/gui/snippet.cjs +37 -15
- package/dist/backends/gui/snippet.d.ts.map +1 -1
- package/dist/backends/gui/snippet.js +37 -15
- package/dist/backends/gui/snippet.js.map +1 -1
- package/dist/backends/gui/stars-scrolling-wheel.cjs +4 -1
- package/dist/backends/gui/stars-scrolling-wheel.d.ts +1 -1
- package/dist/backends/gui/stars-scrolling-wheel.d.ts.map +1 -1
- package/dist/backends/gui/stars-scrolling-wheel.js +4 -1
- package/dist/backends/gui/stars-scrolling-wheel.js.map +1 -1
- package/dist/backends/gui/stepper.cjs +4 -2
- package/dist/backends/gui/stepper.d.ts.map +1 -1
- package/dist/backends/gui/stepper.js +4 -2
- package/dist/backends/gui/stepper.js.map +1 -1
- package/dist/backends/gui/stock-screener.cjs +3 -1
- package/dist/backends/gui/stock-screener.d.ts.map +1 -1
- package/dist/backends/gui/stock-screener.js +3 -1
- package/dist/backends/gui/stock-screener.js.map +1 -1
- package/dist/backends/gui/symbol-info.cjs +3 -1
- package/dist/backends/gui/symbol-info.d.ts.map +1 -1
- package/dist/backends/gui/symbol-info.js +3 -1
- package/dist/backends/gui/symbol-info.js.map +1 -1
- package/dist/backends/gui/tags.cjs +3 -1
- package/dist/backends/gui/tags.d.ts.map +1 -1
- package/dist/backends/gui/tags.js +3 -1
- package/dist/backends/gui/tags.js.map +1 -1
- package/dist/backends/gui/technical-analysis.cjs +3 -1
- package/dist/backends/gui/technical-analysis.d.ts.map +1 -1
- package/dist/backends/gui/technical-analysis.js +3 -1
- package/dist/backends/gui/technical-analysis.js.map +1 -1
- package/dist/backends/gui/terminal.cjs +16 -7
- package/dist/backends/gui/terminal.d.ts.map +1 -1
- package/dist/backends/gui/terminal.js +17 -8
- package/dist/backends/gui/terminal.js.map +1 -1
- package/dist/backends/gui/toaster.cjs +19 -6
- package/dist/backends/gui/toaster.d.ts.map +1 -1
- package/dist/backends/gui/toaster.js +20 -7
- package/dist/backends/gui/toaster.js.map +1 -1
- package/dist/backends/gui/video-player.cjs +6 -14
- package/dist/backends/gui/video-player.d.ts.map +1 -1
- package/dist/backends/gui/video-player.js +6 -14
- package/dist/backends/gui/video-player.js.map +1 -1
- package/dist/backends/gui/video.cjs +4 -2
- package/dist/backends/gui/video.d.ts.map +1 -1
- package/dist/backends/gui/video.js +4 -2
- package/dist/backends/gui/video.js.map +1 -1
- package/dist/catalog/Shelf.cjs +6 -3
- package/dist/catalog/Shelf.d.ts.map +1 -1
- package/dist/catalog/Shelf.js +6 -3
- package/dist/catalog/Shelf.js.map +1 -1
- package/dist/catalog/Tile.cjs +4 -1
- package/dist/catalog/Tile.d.ts +1 -1
- package/dist/catalog/Tile.d.ts.map +1 -1
- package/dist/catalog/Tile.js +4 -1
- package/dist/catalog/Tile.js.map +1 -1
- package/dist/chat/Chat.cjs +6 -4
- package/dist/chat/Chat.d.ts.map +1 -1
- package/dist/chat/Chat.js +3 -1
- package/dist/chat/Chat.js.map +1 -1
- package/dist/chat/Composer.cjs +19 -15
- package/dist/chat/Composer.d.ts +2 -2
- package/dist/chat/Composer.d.ts.map +1 -1
- package/dist/chat/Composer.js +10 -6
- package/dist/chat/Composer.js.map +1 -1
- package/dist/chat/Dial.cjs +110 -0
- package/dist/chat/Dial.d.ts +13 -0
- package/dist/chat/Dial.d.ts.map +1 -0
- package/dist/chat/Dial.js +108 -0
- package/dist/chat/Dial.js.map +1 -0
- package/dist/chat/Dictation.cjs +22 -15
- package/dist/chat/Dictation.d.ts.map +1 -1
- package/dist/chat/Dictation.js +13 -6
- package/dist/chat/Dictation.js.map +1 -1
- package/dist/chat/EmptyPrompt.cjs +7 -4
- package/dist/chat/EmptyPrompt.d.ts +2 -2
- package/dist/chat/EmptyPrompt.d.ts.map +1 -1
- package/dist/chat/EmptyPrompt.js +7 -4
- package/dist/chat/EmptyPrompt.js.map +1 -1
- package/dist/chat/Failure.cjs +4 -13
- package/dist/chat/Failure.d.ts +2 -1
- package/dist/chat/Failure.d.ts.map +1 -1
- package/dist/chat/Failure.js +4 -13
- package/dist/chat/Failure.js.map +1 -1
- package/dist/chat/Families.cjs +14 -7
- package/dist/chat/Families.d.ts.map +1 -1
- package/dist/chat/Families.js +11 -4
- package/dist/chat/Families.js.map +1 -1
- package/dist/chat/Header.cjs +9 -5
- package/dist/chat/Header.d.ts +2 -0
- package/dist/chat/Header.d.ts.map +1 -1
- package/dist/chat/Header.js +9 -5
- package/dist/chat/Header.js.map +1 -1
- package/dist/chat/Home.cjs +4 -2
- package/dist/chat/Home.d.ts.map +1 -1
- package/dist/chat/Home.js +4 -2
- package/dist/chat/Home.js.map +1 -1
- package/dist/chat/Inspector.cjs +4 -2
- package/dist/chat/Inspector.d.ts +0 -24
- package/dist/chat/Inspector.d.ts.map +1 -1
- package/dist/chat/Inspector.js +4 -2
- package/dist/chat/Inspector.js.map +1 -1
- package/dist/chat/Mention.cjs +13 -2
- package/dist/chat/Mention.d.ts.map +1 -1
- package/dist/chat/Mention.js +13 -2
- package/dist/chat/Mention.js.map +1 -1
- package/dist/chat/Plus.cjs +46 -31
- package/dist/chat/Plus.d.ts +12 -0
- package/dist/chat/Plus.d.ts.map +1 -1
- package/dist/chat/Plus.js +47 -32
- package/dist/chat/Plus.js.map +1 -1
- package/dist/chat/Preview.cjs +3 -1
- package/dist/chat/Preview.d.ts.map +1 -1
- package/dist/chat/Preview.js +3 -1
- package/dist/chat/Preview.js.map +1 -1
- package/dist/chat/SessionRail.cjs +34 -18
- package/dist/chat/SessionRail.d.ts +2 -2
- package/dist/chat/SessionRail.d.ts.map +1 -1
- package/dist/chat/SessionRail.js +25 -9
- package/dist/chat/SessionRail.js.map +1 -1
- package/dist/chat/Sidebar.cjs +10 -6
- package/dist/chat/Sidebar.d.ts +1 -0
- package/dist/chat/Sidebar.d.ts.map +1 -1
- package/dist/chat/Sidebar.js +8 -4
- package/dist/chat/Sidebar.js.map +1 -1
- package/dist/chat/Sources.cjs +4 -2
- package/dist/chat/Sources.d.ts.map +1 -1
- package/dist/chat/Sources.js +4 -2
- package/dist/chat/Sources.js.map +1 -1
- package/dist/chat/Tune.cjs +5 -1
- package/dist/chat/Tune.d.ts +11 -1
- package/dist/chat/Tune.d.ts.map +1 -1
- package/dist/chat/Tune.js +5 -1
- package/dist/chat/Tune.js.map +1 -1
- package/dist/chat/ways.cjs +7 -2
- package/dist/chat/ways.d.ts +7 -2
- package/dist/chat/ways.d.ts.map +1 -1
- package/dist/chat/ways.js +7 -2
- package/dist/chat/ways.js.map +1 -1
- package/dist/consent/Consent.cjs +65 -31
- package/dist/consent/Consent.d.ts.map +1 -1
- package/dist/consent/Consent.js +65 -31
- package/dist/consent/Consent.js.map +1 -1
- package/dist/core/english.cjs +4 -0
- package/dist/core/english.d.ts +18 -0
- package/dist/core/english.d.ts.map +1 -0
- package/dist/core/english.js +2 -0
- package/dist/core/english.js.map +1 -0
- package/dist/corner/Corner.cjs +35 -27
- package/dist/corner/Corner.d.ts +5 -2
- package/dist/corner/Corner.d.ts.map +1 -1
- package/dist/corner/Corner.js +17 -9
- package/dist/corner/Corner.js.map +1 -1
- package/dist/corner/index.cjs +2 -2
- package/dist/corner/index.d.ts +1 -1
- package/dist/corner/index.d.ts.map +1 -1
- package/dist/corner/index.js +1 -1
- package/dist/corner/index.js.map +1 -1
- package/dist/corner/logic.cjs +31 -27
- package/dist/corner/logic.d.ts +9 -7
- package/dist/corner/logic.d.ts.map +1 -1
- package/dist/corner/logic.js +27 -23
- package/dist/corner/logic.js.map +1 -1
- package/dist/framework/CollectionBuilder.cjs +7 -5
- package/dist/framework/CollectionBuilder.d.ts.map +1 -1
- package/dist/framework/CollectionBuilder.js +7 -5
- package/dist/framework/CollectionBuilder.js.map +1 -1
- package/dist/framework/CollectionsBrowser.cjs +10 -8
- package/dist/framework/CollectionsBrowser.d.ts.map +1 -1
- package/dist/framework/CollectionsBrowser.js +10 -8
- package/dist/framework/CollectionsBrowser.js.map +1 -1
- package/dist/framework/DocTypeDetail.cjs +9 -7
- package/dist/framework/DocTypeDetail.d.ts.map +1 -1
- package/dist/framework/DocTypeDetail.js +9 -7
- package/dist/framework/DocTypeDetail.js.map +1 -1
- package/dist/framework/DocTypeRecords.cjs +4 -2
- package/dist/framework/DocTypeRecords.d.ts.map +1 -1
- package/dist/framework/DocTypeRecords.js +4 -2
- package/dist/framework/DocTypeRecords.js.map +1 -1
- package/dist/framework/MediaGrid.cjs +12 -5
- package/dist/framework/MediaGrid.d.ts.map +1 -1
- package/dist/framework/MediaGrid.js +12 -5
- package/dist/framework/MediaGrid.js.map +1 -1
- package/dist/framework/RecordCards.cjs +17 -13
- package/dist/framework/RecordCards.d.ts +1 -1
- package/dist/framework/RecordCards.d.ts.map +1 -1
- package/dist/framework/RecordCards.js +17 -13
- package/dist/framework/RecordCards.js.map +1 -1
- package/dist/framework/builder-logic.cjs +41 -26
- package/dist/framework/builder-logic.d.ts +8 -16
- package/dist/framework/builder-logic.d.ts.map +1 -1
- package/dist/framework/builder-logic.js +41 -26
- package/dist/framework/builder-logic.js.map +1 -1
- package/dist/framework/fields.cjs +3 -2
- package/dist/framework/fields.d.ts +2 -1
- package/dist/framework/fields.d.ts.map +1 -1
- package/dist/framework/fields.js +3 -2
- package/dist/framework/fields.js.map +1 -1
- package/dist/gallery.html +12 -61
- package/dist/glass.css +10 -59
- package/dist/i18n/catalogs/ar.json +261 -0
- package/dist/i18n/catalogs/de-DE.json +261 -0
- package/dist/i18n/catalogs/es-ES.json +261 -0
- package/dist/i18n/catalogs/fr-FR.json +261 -0
- package/dist/i18n/catalogs/hi-IN.json +261 -0
- package/dist/i18n/catalogs/id-ID.json +261 -0
- package/dist/i18n/catalogs/it-IT.json +261 -0
- package/dist/i18n/catalogs/ja-JP.json +261 -0
- package/dist/i18n/catalogs/ko-KR.json +261 -0
- package/dist/i18n/catalogs/pt-BR.json +261 -0
- package/dist/i18n/catalogs/ru.json +261 -0
- package/dist/i18n/catalogs/th.json +261 -0
- package/dist/i18n/catalogs/tr.json +261 -0
- package/dist/i18n/catalogs/vi.json +261 -0
- package/dist/i18n/catalogs/zh-Hans.json +261 -0
- package/dist/i18n/catalogs/zh-Hant.json +261 -0
- package/dist/i18n/catalogs.cjs +44 -0
- package/dist/i18n/catalogs.d.ts +14 -0
- package/dist/i18n/catalogs.d.ts.map +1 -0
- package/dist/i18n/catalogs.js +38 -0
- package/dist/i18n/catalogs.js.map +1 -0
- package/dist/i18n/index.cjs +30 -0
- package/dist/i18n/index.d.ts +14 -0
- package/dist/i18n/index.d.ts.map +1 -0
- package/dist/i18n/index.js +14 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/i18n/locales.cjs +70 -0
- package/dist/i18n/locales.d.ts +17 -0
- package/dist/i18n/locales.d.ts.map +1 -0
- package/dist/i18n/locales.js +64 -0
- package/dist/i18n/locales.js.map +1 -0
- package/dist/i18n/provider.cjs +48 -0
- package/dist/i18n/provider.d.ts +31 -0
- package/dist/i18n/provider.d.ts.map +1 -0
- package/dist/i18n/provider.js +46 -0
- package/dist/i18n/provider.js.map +1 -0
- package/dist/i18n/react.cjs +81 -0
- package/dist/i18n/react.d.ts +48 -0
- package/dist/i18n/react.d.ts.map +1 -0
- package/dist/i18n/react.js +74 -0
- package/dist/i18n/react.js.map +1 -0
- package/dist/i18n/source.cjs +275 -0
- package/dist/i18n/source.d.ts +15 -0
- package/dist/i18n/source.d.ts.map +1 -0
- package/dist/i18n/source.js +273 -0
- package/dist/i18n/source.js.map +1 -0
- package/dist/index.cjs +10 -1
- package/dist/index.d.ts +9 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -7
- package/dist/index.js.map +1 -1
- package/dist/index.node.cjs +10 -1
- package/dist/index.node.js +8 -7
- package/dist/marketing/ClosingCta.cjs +13 -2
- package/dist/marketing/ClosingCta.d.ts +2 -1
- package/dist/marketing/ClosingCta.d.ts.map +1 -1
- package/dist/marketing/ClosingCta.js +13 -2
- package/dist/marketing/ClosingCta.js.map +1 -1
- package/dist/marketing/Faq.cjs +5 -1
- package/dist/marketing/Faq.d.ts +1 -0
- package/dist/marketing/Faq.d.ts.map +1 -1
- package/dist/marketing/Faq.js +5 -1
- package/dist/marketing/Faq.js.map +1 -1
- package/dist/marketing/Footer.cjs +66 -31
- package/dist/marketing/Footer.d.ts +16 -4
- package/dist/marketing/Footer.d.ts.map +1 -1
- package/dist/marketing/Footer.js +65 -31
- package/dist/marketing/Footer.js.map +1 -1
- package/dist/marketing/PageLoading.cjs +5 -1
- package/dist/marketing/PageLoading.d.ts +1 -1
- package/dist/marketing/PageLoading.d.ts.map +1 -1
- package/dist/marketing/PageLoading.js +5 -1
- package/dist/marketing/PageLoading.js.map +1 -1
- package/dist/marketing/Plans.cjs +26 -10
- package/dist/marketing/Plans.d.ts +2 -1
- package/dist/marketing/Plans.d.ts.map +1 -1
- package/dist/marketing/Plans.js +26 -10
- package/dist/marketing/Plans.js.map +1 -1
- package/dist/marketing/blocks.cjs +5 -1
- package/dist/marketing/blocks.d.ts.map +1 -1
- package/dist/marketing/blocks.js +5 -1
- package/dist/marketing/blocks.js.map +1 -1
- package/dist/marketing/index.cjs +3 -2
- package/dist/marketing/index.d.ts +1 -1
- package/dist/marketing/index.d.ts.map +1 -1
- package/dist/marketing/index.js +1 -1
- package/dist/marketing/index.js.map +1 -1
- package/dist/marketing/pager.cjs +9 -4
- package/dist/marketing/pager.d.ts +1 -1
- package/dist/marketing/pager.d.ts.map +1 -1
- package/dist/marketing/pager.js +9 -4
- package/dist/marketing/pager.js.map +1 -1
- package/dist/masthead/Masthead.cjs +108 -20
- package/dist/masthead/Masthead.d.ts +1 -1
- package/dist/masthead/Masthead.d.ts.map +1 -1
- package/dist/masthead/Masthead.js +109 -21
- package/dist/masthead/Masthead.js.map +1 -1
- package/dist/masthead/nav.cjs +275 -247
- package/dist/masthead/nav.d.ts +7 -0
- package/dist/masthead/nav.d.ts.map +1 -1
- package/dist/masthead/nav.js +274 -246
- package/dist/masthead/nav.js.map +1 -1
- package/dist/models/ModelPicker.cjs +22 -16
- package/dist/models/ModelPicker.d.ts +14 -2
- package/dist/models/ModelPicker.d.ts.map +1 -1
- package/dist/models/ModelPicker.js +11 -5
- package/dist/models/ModelPicker.js.map +1 -1
- package/dist/models/ModelPickerMenu.cjs +65 -25
- package/dist/models/ModelPickerMenu.d.ts +6 -0
- package/dist/models/ModelPickerMenu.d.ts.map +1 -1
- package/dist/models/ModelPickerMenu.js +68 -28
- package/dist/models/ModelPickerMenu.js.map +1 -1
- package/dist/models/catalog.cjs +109 -29
- package/dist/models/catalog.d.ts +37 -21
- package/dist/models/catalog.d.ts.map +1 -1
- package/dist/models/catalog.js +105 -28
- package/dist/models/catalog.js.map +1 -1
- package/dist/models/picker.logic.cjs +38 -6
- package/dist/models/picker.logic.d.ts +26 -5
- package/dist/models/picker.logic.d.ts.map +1 -1
- package/dist/models/picker.logic.js +37 -6
- package/dist/models/picker.logic.js.map +1 -1
- package/dist/models/research.cjs +8 -1
- package/dist/models/research.d.ts +0 -5
- package/dist/models/research.d.ts.map +1 -1
- package/dist/models/research.js +8 -1
- package/dist/models/research.js.map +1 -1
- package/dist/onboarding/ChatOnboarding.cjs +15 -10
- package/dist/onboarding/ChatOnboarding.d.ts +3 -1
- package/dist/onboarding/ChatOnboarding.d.ts.map +1 -1
- package/dist/onboarding/ChatOnboarding.js +15 -10
- package/dist/onboarding/ChatOnboarding.js.map +1 -1
- package/dist/onboarding/Checkout.cjs +115 -32
- package/dist/onboarding/Checkout.d.ts +3 -0
- package/dist/onboarding/Checkout.d.ts.map +1 -1
- package/dist/onboarding/Checkout.js +116 -33
- package/dist/onboarding/Checkout.js.map +1 -1
- package/dist/onboarding/Onboarding.cjs +11 -9
- package/dist/onboarding/Onboarding.d.ts.map +1 -1
- package/dist/onboarding/Onboarding.js +11 -9
- package/dist/onboarding/Onboarding.js.map +1 -1
- package/dist/onboarding/account.cjs +8 -2
- package/dist/onboarding/account.d.ts.map +1 -1
- package/dist/onboarding/account.js +8 -2
- package/dist/onboarding/account.js.map +1 -1
- package/dist/onboarding/api.cjs +8 -2
- package/dist/onboarding/api.d.ts +5 -0
- package/dist/onboarding/api.d.ts.map +1 -1
- package/dist/onboarding/api.js +8 -2
- package/dist/onboarding/api.js.map +1 -1
- package/dist/onboarding/frame.cjs +6 -3
- package/dist/onboarding/frame.d.ts.map +1 -1
- package/dist/onboarding/frame.js +6 -3
- package/dist/onboarding/frame.js.map +1 -1
- package/dist/onboarding/hooks.cjs +2 -1
- package/dist/onboarding/hooks.d.ts.map +1 -1
- package/dist/onboarding/hooks.js +2 -1
- package/dist/onboarding/hooks.js.map +1 -1
- package/dist/onboarding/roles.cjs +149 -144
- package/dist/onboarding/roles.d.ts +4 -5
- package/dist/onboarding/roles.d.ts.map +1 -1
- package/dist/onboarding/roles.js +149 -144
- package/dist/onboarding/roles.js.map +1 -1
- package/dist/onboarding/screens.cjs +35 -14
- package/dist/onboarding/screens.d.ts.map +1 -1
- package/dist/onboarding/screens.js +36 -15
- package/dist/onboarding/screens.js.map +1 -1
- package/dist/product/AppHeader.cjs +8 -6
- package/dist/product/AppHeader.d.ts +1 -1
- package/dist/product/AppHeader.d.ts.map +1 -1
- package/dist/product/AppHeader.js +8 -6
- package/dist/product/AppHeader.js.map +1 -1
- package/dist/product/BackendState.cjs +16 -13
- package/dist/product/BackendState.d.ts.map +1 -1
- package/dist/product/BackendState.js +16 -13
- package/dist/product/BackendState.js.map +1 -1
- package/dist/product/BranchSelect.cjs +13 -4
- package/dist/product/BranchSelect.d.ts.map +1 -1
- package/dist/product/BranchSelect.js +13 -4
- package/dist/product/BranchSelect.js.map +1 -1
- package/dist/product/ChipSelect.cjs +12 -7
- package/dist/product/ChipSelect.d.ts +1 -1
- package/dist/product/ChipSelect.d.ts.map +1 -1
- package/dist/product/ChipSelect.js +12 -7
- package/dist/product/ChipSelect.js.map +1 -1
- package/dist/product/ComboBox.cjs +13 -6
- package/dist/product/ComboBox.d.ts.map +1 -1
- package/dist/product/ComboBox.js +13 -6
- package/dist/product/ComboBox.js.map +1 -1
- package/dist/product/CommandMenu.cjs +27 -8
- package/dist/product/CommandMenu.d.ts +1 -1
- package/dist/product/CommandMenu.d.ts.map +1 -1
- package/dist/product/CommandMenu.js +27 -8
- package/dist/product/CommandMenu.js.map +1 -1
- package/dist/product/CommerceResource.cjs +3 -1
- package/dist/product/CommerceResource.d.ts.map +1 -1
- package/dist/product/CommerceResource.js +3 -1
- package/dist/product/CommerceResource.js.map +1 -1
- package/dist/product/ConfirmDelete.cjs +5 -3
- package/dist/product/ConfirmDelete.d.ts.map +1 -1
- package/dist/product/ConfirmDelete.js +5 -3
- package/dist/product/ConfirmDelete.js.map +1 -1
- package/dist/product/ConnectionBadge.cjs +3 -1
- package/dist/product/ConnectionBadge.d.ts.map +1 -1
- package/dist/product/ConnectionBadge.js +3 -1
- package/dist/product/ConnectionBadge.js.map +1 -1
- package/dist/product/CopyButton.cjs +4 -2
- package/dist/product/CopyButton.d.ts.map +1 -1
- package/dist/product/CopyButton.js +4 -2
- package/dist/product/CopyButton.js.map +1 -1
- package/dist/product/DataTable.cjs +5 -3
- package/dist/product/DataTable.d.ts.map +1 -1
- package/dist/product/DataTable.js +5 -3
- package/dist/product/DataTable.js.map +1 -1
- package/dist/product/DetailPane.cjs +21 -13
- package/dist/product/DetailPane.d.ts.map +1 -1
- package/dist/product/DetailPane.js +23 -15
- package/dist/product/DetailPane.js.map +1 -1
- package/dist/product/DialogTemplate.cjs +4 -2
- package/dist/product/DialogTemplate.d.ts.map +1 -1
- package/dist/product/DialogTemplate.js +4 -2
- package/dist/product/DialogTemplate.js.map +1 -1
- package/dist/product/Donut.cjs +4 -2
- package/dist/product/Donut.d.ts.map +1 -1
- package/dist/product/Donut.js +4 -2
- package/dist/product/Donut.js.map +1 -1
- package/dist/product/Field.cjs +4 -1
- package/dist/product/Field.d.ts +1 -1
- package/dist/product/Field.d.ts.map +1 -1
- package/dist/product/Field.js +4 -1
- package/dist/product/Field.js.map +1 -1
- package/dist/product/LimitedBanner.cjs +5 -3
- package/dist/product/LimitedBanner.d.ts +10 -1
- package/dist/product/LimitedBanner.d.ts.map +1 -1
- package/dist/product/LimitedBanner.js +5 -3
- package/dist/product/LimitedBanner.js.map +1 -1
- package/dist/product/MenuRow.cjs +2 -2
- package/dist/product/MenuRow.js +2 -2
- package/dist/product/MenuRow.js.map +1 -1
- package/dist/product/Metric.cjs +5 -2
- package/dist/product/Metric.d.ts.map +1 -1
- package/dist/product/Metric.js +5 -2
- package/dist/product/Metric.js.map +1 -1
- package/dist/product/OrgSwitcher.cjs +19 -9
- package/dist/product/OrgSwitcher.d.ts +1 -1
- package/dist/product/OrgSwitcher.d.ts.map +1 -1
- package/dist/product/OrgSwitcher.js +19 -9
- package/dist/product/OrgSwitcher.js.map +1 -1
- package/dist/product/Pagination.cjs +4 -2
- package/dist/product/Pagination.d.ts.map +1 -1
- package/dist/product/Pagination.js +4 -2
- package/dist/product/Pagination.js.map +1 -1
- package/dist/product/Palette.cjs +7 -2
- package/dist/product/Palette.d.ts +1 -1
- package/dist/product/Palette.d.ts.map +1 -1
- package/dist/product/Palette.js +8 -3
- package/dist/product/Palette.js.map +1 -1
- package/dist/product/PlanUsage.cjs +28 -15
- package/dist/product/PlanUsage.d.ts +4 -4
- package/dist/product/PlanUsage.d.ts.map +1 -1
- package/dist/product/PlanUsage.js +28 -15
- package/dist/product/PlanUsage.js.map +1 -1
- package/dist/product/ProjectThumb.cjs +3 -1
- package/dist/product/ProjectThumb.d.ts.map +1 -1
- package/dist/product/ProjectThumb.js +3 -1
- package/dist/product/ProjectThumb.js.map +1 -1
- package/dist/product/RepoSelect.cjs +7 -4
- package/dist/product/RepoSelect.d.ts +1 -1
- package/dist/product/RepoSelect.d.ts.map +1 -1
- package/dist/product/RepoSelect.js +7 -4
- package/dist/product/RepoSelect.js.map +1 -1
- package/dist/product/SecretInput.cjs +3 -1
- package/dist/product/SecretInput.d.ts.map +1 -1
- package/dist/product/SecretInput.js +3 -1
- package/dist/product/SecretInput.js.map +1 -1
- package/dist/product/SelectMenu.cjs +4 -1
- package/dist/product/SelectMenu.d.ts +1 -1
- package/dist/product/SelectMenu.d.ts.map +1 -1
- package/dist/product/SelectMenu.js +4 -1
- package/dist/product/SelectMenu.js.map +1 -1
- package/dist/product/SiteNav.cjs +9 -5
- package/dist/product/SiteNav.d.ts.map +1 -1
- package/dist/product/SiteNav.js +9 -5
- package/dist/product/SiteNav.js.map +1 -1
- package/dist/product/SlideOver.cjs +11 -11
- package/dist/product/SlideOver.d.ts +1 -1
- package/dist/product/SlideOver.d.ts.map +1 -1
- package/dist/product/SlideOver.js +11 -11
- package/dist/product/SlideOver.js.map +1 -1
- package/dist/product/StatusTag.cjs +4 -1
- package/dist/product/StatusTag.d.ts.map +1 -1
- package/dist/product/StatusTag.js +4 -1
- package/dist/product/StatusTag.js.map +1 -1
- package/dist/product/ThemeToggle.cjs +3 -1
- package/dist/product/ThemeToggle.d.ts.map +1 -1
- package/dist/product/ThemeToggle.js +3 -1
- package/dist/product/ThemeToggle.js.map +1 -1
- package/dist/product/Toast.cjs +25 -4
- package/dist/product/Toast.d.ts.map +1 -1
- package/dist/product/Toast.js +25 -4
- package/dist/product/Toast.js.map +1 -1
- package/dist/product/UsageMeter.cjs +10 -6
- package/dist/product/UsageMeter.d.ts.map +1 -1
- package/dist/product/UsageMeter.js +11 -7
- package/dist/product/UsageMeter.js.map +1 -1
- package/dist/product/UserMenu.cjs +5 -3
- package/dist/product/UserMenu.d.ts.map +1 -1
- package/dist/product/UserMenu.js +5 -3
- package/dist/product/UserMenu.js.map +1 -1
- package/dist/product/Workbench.cjs +5 -3
- package/dist/product/Workbench.d.ts.map +1 -1
- package/dist/product/Workbench.js +5 -3
- package/dist/product/Workbench.js.map +1 -1
- package/dist/product/account.cjs +4 -2
- package/dist/product/account.d.ts.map +1 -1
- package/dist/product/account.js +4 -2
- package/dist/product/account.js.map +1 -1
- package/dist/product/limits.cjs +79 -32
- package/dist/product/limits.d.ts +7 -5
- package/dist/product/limits.d.ts.map +1 -1
- package/dist/product/limits.js +79 -32
- package/dist/product/limits.js.map +1 -1
- package/dist/product/match.cjs +2 -1
- package/dist/product/match.d.ts +1 -1
- package/dist/product/match.d.ts.map +1 -1
- package/dist/product/match.js +2 -1
- package/dist/product/match.js.map +1 -1
- package/dist/product/social/CampaignCard.cjs +3 -1
- package/dist/product/social/CampaignCard.d.ts.map +1 -1
- package/dist/product/social/CampaignCard.js +3 -1
- package/dist/product/social/CampaignCard.js.map +1 -1
- package/dist/product/social/PostAgenda.cjs +3 -1
- package/dist/product/social/PostAgenda.d.ts.map +1 -1
- package/dist/product/social/PostAgenda.js +3 -1
- package/dist/product/social/PostAgenda.js.map +1 -1
- package/dist/product/social/PostCard.cjs +3 -1
- package/dist/product/social/PostCard.d.ts.map +1 -1
- package/dist/product/social/PostCard.js +3 -1
- package/dist/product/social/PostCard.js.map +1 -1
- package/dist/product/social/PostComposer.cjs +12 -6
- package/dist/product/social/PostComposer.d.ts.map +1 -1
- package/dist/product/social/PostComposer.js +12 -6
- package/dist/product/social/PostComposer.js.map +1 -1
- package/dist/product/social/ProviderReadinessList.cjs +3 -1
- package/dist/product/social/ProviderReadinessList.d.ts.map +1 -1
- package/dist/product/social/ProviderReadinessList.js +3 -1
- package/dist/product/social/ProviderReadinessList.js.map +1 -1
- package/dist/product/social/SocialResource.cjs +25 -16
- package/dist/product/social/SocialResource.d.ts.map +1 -1
- package/dist/product/social/SocialResource.js +26 -17
- package/dist/product/social/SocialResource.js.map +1 -1
- package/dist/product/social/SocialSummaryBar.cjs +6 -4
- package/dist/product/social/SocialSummaryBar.d.ts.map +1 -1
- package/dist/product/social/SocialSummaryBar.js +6 -4
- package/dist/product/social/SocialSummaryBar.js.map +1 -1
- package/dist/product/social/ViewToggle.cjs +6 -3
- package/dist/product/social/ViewToggle.d.ts.map +1 -1
- package/dist/product/social/ViewToggle.js +6 -3
- package/dist/product/social/ViewToggle.js.map +1 -1
- package/dist/product/useLimits.cjs +4 -2
- package/dist/product/useLimits.d.ts.map +1 -1
- package/dist/product/useLimits.js +4 -2
- package/dist/product/useLimits.js.map +1 -1
- package/dist/root.cjs +6 -4
- package/dist/root.d.ts +52 -2
- package/dist/root.d.ts.map +1 -1
- package/dist/root.js +6 -4
- package/dist/root.js.map +1 -1
- package/dist/root.node.cjs +6 -4
- package/dist/root.node.js +6 -4
- package/dist/settings/Section.cjs +4 -2
- package/dist/settings/Section.d.ts.map +1 -1
- package/dist/settings/Section.js +4 -2
- package/dist/settings/Section.js.map +1 -1
- package/dist/settings/Settings.cjs +4 -1
- package/dist/settings/Settings.d.ts +1 -1
- package/dist/settings/Settings.d.ts.map +1 -1
- package/dist/settings/Settings.js +4 -1
- package/dist/settings/Settings.js.map +1 -1
- package/dist/styles.css +10 -59
- package/dist/theme.css +10 -59
- package/package.json +11 -2
package/dist/product/SiteNav.js
CHANGED
|
@@ -31,6 +31,7 @@ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-run
|
|
|
31
31
|
*/
|
|
32
32
|
import { useEffect, useRef, useState } from 'react';
|
|
33
33
|
import { Separator, Text, XStack, YStack } from '@hanzo/gui';
|
|
34
|
+
import { useI18n } from '@hanzo/i18n/react';
|
|
34
35
|
/** Absolute URLs leave the property; site-relative paths stay. */
|
|
35
36
|
const isExternal = (href) => /^https?:\/\//.test(href);
|
|
36
37
|
const defaultLink = ({ href, children, onNavigate }) => (_jsx("a", { href: href, onClick: onNavigate, ...(isExternal(href) ? { target: '_blank', rel: 'noopener noreferrer' } : null), style: { textDecoration: 'none', color: 'inherit', display: 'block' }, children: children }));
|
|
@@ -56,11 +57,12 @@ function Column({ title, links, link, icon, close }) {
|
|
|
56
57
|
* family growing reflows instead of clipping.
|
|
57
58
|
*/
|
|
58
59
|
function Launcher({ menu, link, icon, close }) {
|
|
60
|
+
const { t } = useI18n();
|
|
59
61
|
return (_jsxs(YStack, { position: "absolute", t: 52, l: 0, r: 0, z: 50, bg: "$background", borderBottomWidth: 1, borderColor: "$borderColor", px: "$4", py: "$4", gap: "$3", maxH: "80vh", overflow: "scroll", children: [_jsxs(XStack, { items: "center", gap: "$3", flexWrap: "wrap", children: [_jsx(Text, { fontSize: "$2", color: "$quiet", children: menu.eyebrow }), _jsx(XStack, { marginInlineStart: "auto", children: link({
|
|
60
62
|
href: menu.allProducts.href,
|
|
61
63
|
onNavigate: close,
|
|
62
64
|
children: (_jsxs(Text, { fontSize: "$2", color: "$ink", children: [menu.allProducts.label, " \u2192"] })),
|
|
63
|
-
}) })] }), _jsx(XStack, { gap: "$2.5", flexWrap: "wrap", children: menu.products.map((p) => (_jsx(ProductCell, { product: p, link: link, icon: icon, close: close }, p.id))) }), _jsx(Separator, {}), _jsxs(XStack, { gap: "$4", flexWrap: "wrap", items: "flex-start", children: [_jsx(Column, { title:
|
|
65
|
+
}) })] }), _jsx(XStack, { gap: "$2.5", flexWrap: "wrap", children: menu.products.map((p) => (_jsx(ProductCell, { product: p, link: link, icon: icon, close: close }, p.id))) }), _jsx(Separator, {}), _jsxs(XStack, { gap: "$4", flexWrap: "wrap", items: "flex-start", children: [_jsx(Column, { title: t('Platform'), links: menu.utilities, link: link, icon: icon, close: close }), _jsx(Column, { title: t('Install'), links: menu.installs, link: link, icon: icon, close: close })] })] }));
|
|
64
66
|
}
|
|
65
67
|
/** The primary call-to-action — filled, so it reads as the one action on the bar. */
|
|
66
68
|
function Cta({ action, link }) {
|
|
@@ -75,6 +77,7 @@ function Cta({ action, link }) {
|
|
|
75
77
|
* differs, which is what kept the old per-repo MobileMenus drifting.
|
|
76
78
|
*/
|
|
77
79
|
function MobilePanel({ header, menu, link, icon, close }) {
|
|
80
|
+
const { t } = useI18n();
|
|
78
81
|
return (_jsxs(YStack, { position: "absolute", t: 52, l: 0, r: 0, z: 50, bg: "$background", borderBottomWidth: 1, borderColor: "$borderColor", px: "$3", py: "$3", gap: "$3", maxH: "80vh", overflow: "scroll", children: [_jsx(YStack, { gap: "$1", children: header.localNav.map((l) => (_jsx(XStack, { px: "$2", py: "$1.5", rounded: "$3", hoverStyle: { bg: '$edge' }, children: link({
|
|
79
82
|
href: l.href,
|
|
80
83
|
onNavigate: close,
|
|
@@ -83,9 +86,10 @@ function MobilePanel({ header, menu, link, icon, close }) {
|
|
|
83
86
|
href: p.url,
|
|
84
87
|
onNavigate: close,
|
|
85
88
|
children: (_jsx(Text, { fontSize: "$3", color: "$ink", children: p.name })),
|
|
86
|
-
})] }, p.id))) }), _jsx(Separator, {}), _jsx(Column, { title:
|
|
89
|
+
})] }, p.id))) }), _jsx(Separator, {}), _jsx(Column, { title: t('Platform'), links: menu.utilities, link: link, icon: icon, close: close }), _jsx(Column, { title: t('Install'), links: menu.installs, link: link, icon: icon, close: close })] })) : null] }));
|
|
87
90
|
}
|
|
88
|
-
export function SiteNav({ header, menu, brand, actions, link = defaultLink, icon, active, meetLabel
|
|
91
|
+
export function SiteNav({ header, menu, brand, actions, link = defaultLink, icon, active, meetLabel }) {
|
|
92
|
+
const { t } = useI18n();
|
|
89
93
|
const [launcher, setLauncher] = useState(false);
|
|
90
94
|
const [mobile, setMobile] = useState(false);
|
|
91
95
|
const root = useRef(null);
|
|
@@ -114,9 +118,9 @@ export function SiteNav({ header, menu, brand, actions, link = defaultLink, icon
|
|
|
114
118
|
document.removeEventListener('mousedown', onDown);
|
|
115
119
|
};
|
|
116
120
|
}, [launcher, mobile]);
|
|
117
|
-
return (_jsxs(YStack, { ref: root, position: "relative", bg: "$background", children: [_jsxs(XStack, { items: "center", gap: "$1", px: "$3", height: 52, borderBottomWidth: 1, borderColor: "$borderColor", children: [brand ? (_jsx(XStack, { items: "center", paddingInlineEnd: "$2", children: brand })) : null, menu ? (_jsx(XStack, { cursor: "pointer", px: "$2.5", py: "$1.5", rounded: "$3", bg: launcher ? '$edge' : 'transparent', hoverStyle: { bg: '$edge' }, onPress: () => setLauncher(!launcher), accessibilityRole: "button", "aria-expanded": launcher, children: _jsx(Text, { fontSize: "$2", color: "$ink", children: meetLabel }) })) : null, _jsx(XStack, { items: "center", gap: "$0.5", flex: 1, minW: 0, $sm: { display: 'none' }, children: header.localNav.map((l) => (_jsx(XStack, { px: "$2.5", py: "$1.5", rounded: "$3", hoverStyle: { bg: '$edge' }, onMouseEnter: () => launcher && setLauncher(false), children: link({
|
|
121
|
+
return (_jsxs(YStack, { ref: root, position: "relative", bg: "$background", children: [_jsxs(XStack, { items: "center", gap: "$1", px: "$3", height: 52, borderBottomWidth: 1, borderColor: "$borderColor", children: [brand ? (_jsx(XStack, { items: "center", paddingInlineEnd: "$2", children: brand })) : null, menu ? (_jsx(XStack, { cursor: "pointer", px: "$2.5", py: "$1.5", rounded: "$3", bg: launcher ? '$edge' : 'transparent', hoverStyle: { bg: '$edge' }, onPress: () => setLauncher(!launcher), accessibilityRole: "button", "aria-expanded": launcher, children: _jsx(Text, { fontSize: "$2", color: "$ink", children: meetLabel ?? t('Meet Hanzo') }) })) : null, _jsx(XStack, { items: "center", gap: "$0.5", flex: 1, minW: 0, $sm: { display: 'none' }, children: header.localNav.map((l) => (_jsx(XStack, { px: "$2.5", py: "$1.5", rounded: "$3", hoverStyle: { bg: '$edge' }, onMouseEnter: () => launcher && setLauncher(false), children: link({
|
|
118
122
|
href: l.href,
|
|
119
123
|
children: (_jsx(Text, { fontSize: "$2", color: active === l.id ? '$ink' : '$quiet', children: l.label })),
|
|
120
|
-
}) }, l.id))) }), _jsxs(XStack, { items: "center", gap: "$2", marginInlineStart: "auto", children: [actions, _jsx(Cta, { action: header.action, link: link }), _jsx(XStack, { display: "none", $sm: { display: 'flex' }, cursor: "pointer", px: "$2", py: "$1.5", rounded: "$3", hoverStyle: { bg: '$edge' }, onPress: () => setMobile(!mobile), accessibilityRole: "button", "aria-label": mobile ? 'Close menu' : 'Open menu', children: _jsx(Text, { fontSize: "$2", color: "$ink", children: mobile ? 'Close' : 'Menu' }) })] })] }), launcher && menu ? _jsx(Launcher, { menu: menu, link: link, icon: icon, close: () => setLauncher(false) }) : null, mobile ? _jsx(MobilePanel, { header: header, menu: menu, link: link, icon: icon, close: () => setMobile(false) }) : null] }));
|
|
124
|
+
}) }, l.id))) }), _jsxs(XStack, { items: "center", gap: "$2", marginInlineStart: "auto", children: [actions, _jsx(Cta, { action: header.action, link: link }), _jsx(XStack, { display: "none", $sm: { display: 'flex' }, cursor: "pointer", px: "$2", py: "$1.5", rounded: "$3", hoverStyle: { bg: '$edge' }, onPress: () => setMobile(!mobile), accessibilityRole: "button", "aria-label": mobile ? t('Close menu') : t('Open menu'), children: _jsx(Text, { fontSize: "$2", color: "$ink", children: mobile ? t('Close') : t('Menu') }) })] })] }), launcher && menu ? _jsx(Launcher, { menu: menu, link: link, icon: icon, close: () => setLauncher(false) }) : null, mobile ? _jsx(MobilePanel, { header: header, menu: menu, link: link, icon: icon, close: () => setMobile(false) }) : null] }));
|
|
121
125
|
}
|
|
122
126
|
//# sourceMappingURL=SiteNav.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SiteNav.js","sourceRoot":"","sources":["../../src/product/SiteNav.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAkB,MAAM,OAAO,CAAA;AACnE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"SiteNav.js","sourceRoot":"","sources":["../../src/product/SiteNav.tsx"],"names":[],"mappings":"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"}
|
|
@@ -29,7 +29,9 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
29
29
|
const react_1 = require("react");
|
|
30
30
|
const gui_1 = require("@hanzo/gui");
|
|
31
31
|
const lucide_icons_2_1 = require("@hanzogui/lucide-icons-2");
|
|
32
|
+
const react_2 = require("@hanzo/i18n/react");
|
|
32
33
|
const color_1 = require("./color.cjs");
|
|
34
|
+
const instrument_1 = require("./instrument.cjs");
|
|
33
35
|
/** The lg breakpoint (px) — matches the shell's one responsive threshold. */
|
|
34
36
|
const LG = 1024;
|
|
35
37
|
exports.SLIDEOVER_LG = LG;
|
|
@@ -52,15 +54,19 @@ function unlockScroll() {
|
|
|
52
54
|
if (lockCount === 0)
|
|
53
55
|
document.body.style.overflow = savedOverflow;
|
|
54
56
|
}
|
|
55
|
-
|
|
56
|
-
function SlideOver({ open, onClose, side = 'end', size = 420, title, icon: Icon, iconColor, headerRight, ariaLabel, zIndex = 1000, children, }) {
|
|
57
|
+
function SlideOver({ open, onClose, side = 'end', size = 420, title, icon: Icon, iconColor, headerRight, ariaLabel, zIndex = 1000, children }) {
|
|
57
58
|
const track = (0, instrument_1.useEmit)();
|
|
59
|
+
const { t } = (0, react_2.useI18n)();
|
|
58
60
|
const panelRef = (0, react_1.useRef)(null);
|
|
59
61
|
const openerRef = (0, react_1.useRef)(null);
|
|
60
62
|
// One open/close pair per drawer, keyed by its title — the shared way every
|
|
61
63
|
// product reports "a detail pane was looked at".
|
|
62
64
|
(0, react_1.useEffect)(() => {
|
|
63
|
-
track({
|
|
65
|
+
track({
|
|
66
|
+
component: 'SlideOver',
|
|
67
|
+
action: open ? 'open' : 'close',
|
|
68
|
+
id: typeof title === 'string' ? title : ariaLabel,
|
|
69
|
+
});
|
|
64
70
|
// Only the open/close transition matters; `track` is stable per surface.
|
|
65
71
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
66
72
|
}, [open]);
|
|
@@ -97,13 +103,7 @@ function SlideOver({ open, onClose, side = 'end', size = 420, title, icon: Icon,
|
|
|
97
103
|
window.addEventListener('keydown', onKey);
|
|
98
104
|
return () => window.removeEventListener('keydown', onKey);
|
|
99
105
|
}, [open, onClose]);
|
|
100
|
-
const edge = side === 'end'
|
|
101
|
-
? { insetInlineEnd: 0, borderInlineStartWidth: 1 }
|
|
102
|
-
: side === 'start'
|
|
103
|
-
? { insetInlineStart: 0, borderInlineEndWidth: 1 }
|
|
104
|
-
: side === 'right'
|
|
105
|
-
? { r: 0, borderLeftWidth: 1 }
|
|
106
|
-
: { l: 0, borderRightWidth: 1 };
|
|
106
|
+
const edge = side === 'end' ? { insetInlineEnd: 0, borderInlineStartWidth: 1 } : side === 'start' ? { insetInlineStart: 0, borderInlineEndWidth: 1 } : side === 'right' ? { r: 0, borderLeftWidth: 1 } : { l: 0, borderRightWidth: 1 };
|
|
107
107
|
return ((0, jsx_runtime_1.jsxs)(gui_1.YStack
|
|
108
108
|
// Fixed to the viewport; overflow hidden so the off-screen panel (absolute
|
|
109
109
|
// child) is CLIPPED and never adds a horizontal scrollbar.
|
|
@@ -125,7 +125,7 @@ function SlideOver({ open, onClose, side = 'end', size = 420, title, icon: Icon,
|
|
|
125
125
|
height: '100dvh',
|
|
126
126
|
paddingTop: 'env(safe-area-inset-top)',
|
|
127
127
|
paddingBottom: 'env(safe-area-inset-bottom)',
|
|
128
|
-
}, children: title !== undefined ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(gui_1.XStack, { items: "center", gap: "$2.5", px: "$4", height: 56, borderBottomWidth: 1, borderColor: "$borderColor", children: [Icon ? (0, jsx_runtime_1.jsx)(Icon, { size: 18, color: iconColor ? (0, color_1.asColor)(iconColor) : undefined }) : null, (0, jsx_runtime_1.jsx)(gui_1.Text, { flex: 1, fontSize: "$5", fontWeight: "700", color: "$ink", numberOfLines: 1, children: title }), headerRight, (0, jsx_runtime_1.jsx)(gui_1.Button, { chromeless: true, width: 44, height: 44, icon: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.X, { size: 18 }), onPress: onClose, "aria-label":
|
|
128
|
+
}, children: title !== undefined ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsxs)(gui_1.XStack, { items: "center", gap: "$2.5", px: "$4", height: 56, borderBottomWidth: 1, borderColor: "$borderColor", children: [Icon ? (0, jsx_runtime_1.jsx)(Icon, { size: 18, color: iconColor ? (0, color_1.asColor)(iconColor) : undefined }) : null, (0, jsx_runtime_1.jsx)(gui_1.Text, { flex: 1, fontSize: "$5", fontWeight: "700", color: "$ink", numberOfLines: 1, children: title }), headerRight, (0, jsx_runtime_1.jsx)(gui_1.Button, { chromeless: true, width: 44, height: 44, icon: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.X, { size: 18 }), onPress: onClose, "aria-label": t('Close') })] }), (0, jsx_runtime_1.jsx)(gui_1.ScrollView, { flex: 1, children: (0, jsx_runtime_1.jsx)(gui_1.YStack, { flex: 1, p: "$4", gap: "$3", children: children }) })] })) : (
|
|
129
129
|
// Bare mode — the caller owns the full panel layout (e.g. the nav drawer
|
|
130
130
|
// renders its own header + scroll + footer).
|
|
131
131
|
children) })] }));
|
|
@@ -48,6 +48,6 @@ export type SlideOverProps = {
|
|
|
48
48
|
zIndex?: number;
|
|
49
49
|
children: ReactNode;
|
|
50
50
|
};
|
|
51
|
-
export declare function SlideOver({ open, onClose, side, size, title, icon: Icon, iconColor, headerRight, ariaLabel, zIndex, children
|
|
51
|
+
export declare function SlideOver({ open, onClose, side, size, title, icon: Icon, iconColor, headerRight, ariaLabel, zIndex, children }: SlideOverProps): import("react").JSX.Element;
|
|
52
52
|
export { LG as SLIDEOVER_LG };
|
|
53
53
|
//# sourceMappingURL=SlideOver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SlideOver.d.ts","sourceRoot":"","sources":["../../src/product/SlideOver.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"SlideOver.d.ts","sourceRoot":"","sources":["../../src/product/SlideOver.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAqB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAKzD,OAAO,EAAW,KAAK,QAAQ,EAAE,MAAM,SAAS,CAAA;AAGhD,6EAA6E;AAC7E,QAAA,MAAM,EAAE,OAAO,CAAA;AAmBf,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB;;;;OAIG;IACH,IAAI,CAAC,EAAE,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAA;IACzC,+EAA+E;IAC/E,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,oFAAoF;IACpF,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,sDAAsD;IACtD,IAAI,CAAC,EAAE,QAAQ,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iEAAiE;IACjE,WAAW,CAAC,EAAE,SAAS,CAAA;IACvB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,gFAAgF;IAChF,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,SAAS,CAAA;CACpB,CAAA;AAED,wBAAgB,SAAS,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAY,EAAE,IAAU,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,MAAa,EAAE,QAAQ,EAAE,EAAE,cAAc,+BA6HnK;AAED,OAAO,EAAE,EAAE,IAAI,YAAY,EAAE,CAAA"}
|
|
@@ -25,7 +25,9 @@ import { Fragment as _Fragment, jsx as _jsx, jsxs as _jsxs } from "react/jsx-run
|
|
|
25
25
|
import { useEffect, useRef } from 'react';
|
|
26
26
|
import { Button, ScrollView, Text, XStack, YStack } from '@hanzo/gui';
|
|
27
27
|
import { X } from '@hanzogui/lucide-icons-2';
|
|
28
|
+
import { useI18n } from '@hanzo/i18n/react';
|
|
28
29
|
import { asColor } from './color.js';
|
|
30
|
+
import { useEmit } from './instrument.js';
|
|
29
31
|
/** The lg breakpoint (px) — matches the shell's one responsive threshold. */
|
|
30
32
|
const LG = 1024;
|
|
31
33
|
// ── Body scroll lock, ref-counted so nested/stacked overlays don't clobber it ──
|
|
@@ -47,15 +49,19 @@ function unlockScroll() {
|
|
|
47
49
|
if (lockCount === 0)
|
|
48
50
|
document.body.style.overflow = savedOverflow;
|
|
49
51
|
}
|
|
50
|
-
|
|
51
|
-
export function SlideOver({ open, onClose, side = 'end', size = 420, title, icon: Icon, iconColor, headerRight, ariaLabel, zIndex = 1000, children, }) {
|
|
52
|
+
export function SlideOver({ open, onClose, side = 'end', size = 420, title, icon: Icon, iconColor, headerRight, ariaLabel, zIndex = 1000, children }) {
|
|
52
53
|
const track = useEmit();
|
|
54
|
+
const { t } = useI18n();
|
|
53
55
|
const panelRef = useRef(null);
|
|
54
56
|
const openerRef = useRef(null);
|
|
55
57
|
// One open/close pair per drawer, keyed by its title — the shared way every
|
|
56
58
|
// product reports "a detail pane was looked at".
|
|
57
59
|
useEffect(() => {
|
|
58
|
-
track({
|
|
60
|
+
track({
|
|
61
|
+
component: 'SlideOver',
|
|
62
|
+
action: open ? 'open' : 'close',
|
|
63
|
+
id: typeof title === 'string' ? title : ariaLabel,
|
|
64
|
+
});
|
|
59
65
|
// Only the open/close transition matters; `track` is stable per surface.
|
|
60
66
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
61
67
|
}, [open]);
|
|
@@ -92,13 +98,7 @@ export function SlideOver({ open, onClose, side = 'end', size = 420, title, icon
|
|
|
92
98
|
window.addEventListener('keydown', onKey);
|
|
93
99
|
return () => window.removeEventListener('keydown', onKey);
|
|
94
100
|
}, [open, onClose]);
|
|
95
|
-
const edge = side === 'end'
|
|
96
|
-
? { insetInlineEnd: 0, borderInlineStartWidth: 1 }
|
|
97
|
-
: side === 'start'
|
|
98
|
-
? { insetInlineStart: 0, borderInlineEndWidth: 1 }
|
|
99
|
-
: side === 'right'
|
|
100
|
-
? { r: 0, borderLeftWidth: 1 }
|
|
101
|
-
: { l: 0, borderRightWidth: 1 };
|
|
101
|
+
const edge = side === 'end' ? { insetInlineEnd: 0, borderInlineStartWidth: 1 } : side === 'start' ? { insetInlineStart: 0, borderInlineEndWidth: 1 } : side === 'right' ? { r: 0, borderLeftWidth: 1 } : { l: 0, borderRightWidth: 1 };
|
|
102
102
|
return (_jsxs(YStack
|
|
103
103
|
// Fixed to the viewport; overflow hidden so the off-screen panel (absolute
|
|
104
104
|
// child) is CLIPPED and never adds a horizontal scrollbar.
|
|
@@ -120,7 +120,7 @@ export function SlideOver({ open, onClose, side = 'end', size = 420, title, icon
|
|
|
120
120
|
height: '100dvh',
|
|
121
121
|
paddingTop: 'env(safe-area-inset-top)',
|
|
122
122
|
paddingBottom: 'env(safe-area-inset-bottom)',
|
|
123
|
-
}, children: title !== undefined ? (_jsxs(_Fragment, { children: [_jsxs(XStack, { items: "center", gap: "$2.5", px: "$4", height: 56, borderBottomWidth: 1, borderColor: "$borderColor", children: [Icon ? _jsx(Icon, { size: 18, color: iconColor ? asColor(iconColor) : undefined }) : null, _jsx(Text, { flex: 1, fontSize: "$5", fontWeight: "700", color: "$ink", numberOfLines: 1, children: title }), headerRight, _jsx(Button, { chromeless: true, width: 44, height: 44, icon: _jsx(X, { size: 18 }), onPress: onClose, "aria-label":
|
|
123
|
+
}, children: title !== undefined ? (_jsxs(_Fragment, { children: [_jsxs(XStack, { items: "center", gap: "$2.5", px: "$4", height: 56, borderBottomWidth: 1, borderColor: "$borderColor", children: [Icon ? _jsx(Icon, { size: 18, color: iconColor ? asColor(iconColor) : undefined }) : null, _jsx(Text, { flex: 1, fontSize: "$5", fontWeight: "700", color: "$ink", numberOfLines: 1, children: title }), headerRight, _jsx(Button, { chromeless: true, width: 44, height: 44, icon: _jsx(X, { size: 18 }), onPress: onClose, "aria-label": t('Close') })] }), _jsx(ScrollView, { flex: 1, children: _jsx(YStack, { flex: 1, p: "$4", gap: "$3", children: children }) })] })) : (
|
|
124
124
|
// Bare mode — the caller owns the full panel layout (e.g. the nav drawer
|
|
125
125
|
// renders its own header + scroll + footer).
|
|
126
126
|
children) })] }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SlideOver.js","sourceRoot":"","sources":["../../src/product/SlideOver.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAkB,MAAM,OAAO,CAAA;AACzD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACrE,OAAO,EAAE,CAAC,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"SlideOver.js","sourceRoot":"","sources":["../../src/product/SlideOver.tsx"],"names":[],"mappings":"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"}
|
|
@@ -13,8 +13,11 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
13
13
|
* them) so turning one on shifts no layout in a table of fifty rows.
|
|
14
14
|
*/
|
|
15
15
|
const gui_1 = require("@hanzo/gui");
|
|
16
|
+
const react_1 = require("@hanzo/i18n/react");
|
|
16
17
|
const tone_1 = require("./tone.cjs");
|
|
17
18
|
function StatusTag({ status, tone: override }) {
|
|
18
19
|
const t = tone_1.TONE[override ?? (0, tone_1.tone)(status ?? '')];
|
|
19
|
-
|
|
20
|
+
// `t` is the tone here, so the translator is reached through the context.
|
|
21
|
+
const i18n = (0, react_1.useI18n)();
|
|
22
|
+
return ((0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$1", px: "$2", py: "$1", rounded: "$2", borderWidth: 1, borderColor: t.borderColor, bg: t.bg, color: t.color, children: status || i18n.t('unknown') }));
|
|
20
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusTag.d.ts","sourceRoot":"","sources":["../../src/product/StatusTag.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"StatusTag.d.ts","sourceRoot":"","sources":["../../src/product/StatusTag.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAE,IAAI,EAAQ,MAAM,QAAQ,CAAA;AAEnC,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,+EAA+E;IAC/E,IAAI,CAAC,EAAE,MAAM,OAAO,IAAI,CAAA;CACzB,CAAA;AAED,wBAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,cAAc,+BAkBnE"}
|
|
@@ -10,9 +10,12 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
10
10
|
* them) so turning one on shifts no layout in a table of fifty rows.
|
|
11
11
|
*/
|
|
12
12
|
import { Text } from '@hanzo/gui';
|
|
13
|
+
import { useI18n } from '@hanzo/i18n/react';
|
|
13
14
|
import { TONE, tone } from './tone.js';
|
|
14
15
|
export function StatusTag({ status, tone: override }) {
|
|
15
16
|
const t = TONE[override ?? tone(status ?? '')];
|
|
16
|
-
|
|
17
|
+
// `t` is the tone here, so the translator is reached through the context.
|
|
18
|
+
const i18n = useI18n();
|
|
19
|
+
return (_jsx(Text, { fontSize: "$1", px: "$2", py: "$1", rounded: "$2", borderWidth: 1, borderColor: t.borderColor, bg: t.bg, color: t.color, children: status || i18n.t('unknown') }));
|
|
17
20
|
}
|
|
18
21
|
//# sourceMappingURL=StatusTag.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatusTag.js","sourceRoot":"","sources":["../../src/product/StatusTag.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;;;GAQG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"StatusTag.js","sourceRoot":"","sources":["../../src/product/StatusTag.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;;;GAQG;AACH,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAE3C,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAA;AAQnC,MAAM,UAAU,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAkB;IAClE,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAA;IAC9C,0EAA0E;IAC1E,MAAM,IAAI,GAAG,OAAO,EAAE,CAAA;IACtB,OAAO,CACL,KAAC,IAAI,IACH,QAAQ,EAAC,IAAI,EACb,EAAE,EAAC,IAAI,EACP,EAAE,EAAC,IAAI,EACP,OAAO,EAAC,IAAI,EACZ,WAAW,EAAE,CAAC,EACd,WAAW,EAAE,CAAC,CAAC,WAAW,EAC1B,EAAE,EAAE,CAAC,CAAC,EAAE,EACR,KAAK,EAAE,CAAC,CAAC,KAAK,YAEb,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GACvB,CACR,CAAA;AACH,CAAC"}
|
|
@@ -40,6 +40,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
40
40
|
const react_1 = require("react");
|
|
41
41
|
const gui_1 = require("@hanzo/gui");
|
|
42
42
|
const lucide_icons_2_1 = require("@hanzogui/lucide-icons-2");
|
|
43
|
+
const react_2 = require("@hanzo/i18n/react");
|
|
43
44
|
const instrument_1 = require("./instrument.cjs");
|
|
44
45
|
const STORAGE_KEY = 'theme';
|
|
45
46
|
function readDomTheme() {
|
|
@@ -84,6 +85,7 @@ function AgnosticThemeToggle({ theme, defaultTheme, onToggle, onThemeChange, siz
|
|
|
84
85
|
const current = controlled ? theme : internal;
|
|
85
86
|
const isDark = current === 'dark';
|
|
86
87
|
const track = (0, instrument_1.useEmit)();
|
|
88
|
+
const { t } = (0, react_2.useI18n)();
|
|
87
89
|
const toggle = () => {
|
|
88
90
|
const next = isDark ? 'light' : 'dark';
|
|
89
91
|
track({ component: 'ThemeToggle', action: 'change', value: next });
|
|
@@ -94,7 +96,7 @@ function AgnosticThemeToggle({ theme, defaultTheme, onToggle, onThemeChange, siz
|
|
|
94
96
|
onToggle?.(next);
|
|
95
97
|
onThemeChange?.(next);
|
|
96
98
|
};
|
|
97
|
-
return ((0, jsx_runtime_1.jsx)(gui_1.Button, { size: size, chromeless: true, icon: isDark ? (0, jsx_runtime_1.jsx)(lucide_icons_2_1.Sun, { size: 16 }) : (0, jsx_runtime_1.jsx)(lucide_icons_2_1.Moon, { size: 16 }), onPress: toggle, "aria-label": label ?? (isDark ? 'Switch to light theme' : 'Switch to dark theme') }));
|
|
99
|
+
return ((0, jsx_runtime_1.jsx)(gui_1.Button, { size: size, chromeless: true, icon: isDark ? (0, jsx_runtime_1.jsx)(lucide_icons_2_1.Sun, { size: 16 }) : (0, jsx_runtime_1.jsx)(lucide_icons_2_1.Moon, { size: 16 }), onPress: toggle, "aria-label": label ?? (isDark ? t('Switch to light theme') : t('Switch to dark theme')) }));
|
|
98
100
|
}
|
|
99
101
|
// @hanzogui/next-theme is an OPTIONAL dependency — loaded only on the uncontrolled,
|
|
100
102
|
// no-props path (console/Next). Lazily code-split so non-Next hosts never need it at
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeToggle.d.ts","sourceRoot":"","sources":["../../src/product/ThemeToggle.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ThemeToggle.d.ts","sourceRoot":"","sources":["../../src/product/ThemeToggle.tsx"],"names":[],"mappings":"AAuBA,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,MAAM,CAAA;AAExC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,kFAAkF;IAClF,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,0FAA0F;IAC1F,YAAY,CAAC,EAAE,SAAS,CAAA;IACxB,uEAAuE;IACvE,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACpC,4CAA4C;IAC5C,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAA;IACzC,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,2BAA2B;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AA+BD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,aAAa,EACb,IAAW,EACX,KAAK,GACN,EAAE,gBAAgB,+BA4BlB;AAiBD,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,+BAelD"}
|
|
@@ -3,6 +3,7 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
3
3
|
import { Component, Suspense, lazy, useState } from 'react';
|
|
4
4
|
import { Button } from '@hanzo/gui';
|
|
5
5
|
import { Moon, Sun } from '@hanzogui/lucide-icons-2';
|
|
6
|
+
import { useI18n } from '@hanzo/i18n/react';
|
|
6
7
|
import { useEmit } from './instrument.js';
|
|
7
8
|
const STORAGE_KEY = 'theme';
|
|
8
9
|
function readDomTheme() {
|
|
@@ -47,6 +48,7 @@ export function AgnosticThemeToggle({ theme, defaultTheme, onToggle, onThemeChan
|
|
|
47
48
|
const current = controlled ? theme : internal;
|
|
48
49
|
const isDark = current === 'dark';
|
|
49
50
|
const track = useEmit();
|
|
51
|
+
const { t } = useI18n();
|
|
50
52
|
const toggle = () => {
|
|
51
53
|
const next = isDark ? 'light' : 'dark';
|
|
52
54
|
track({ component: 'ThemeToggle', action: 'change', value: next });
|
|
@@ -57,7 +59,7 @@ export function AgnosticThemeToggle({ theme, defaultTheme, onToggle, onThemeChan
|
|
|
57
59
|
onToggle?.(next);
|
|
58
60
|
onThemeChange?.(next);
|
|
59
61
|
};
|
|
60
|
-
return (_jsx(Button, { size: size, chromeless: true, icon: isDark ? _jsx(Sun, { size: 16 }) : _jsx(Moon, { size: 16 }), onPress: toggle, "aria-label": label ?? (isDark ? 'Switch to light theme' : 'Switch to dark theme') }));
|
|
62
|
+
return (_jsx(Button, { size: size, chromeless: true, icon: isDark ? _jsx(Sun, { size: 16 }) : _jsx(Moon, { size: 16 }), onPress: toggle, "aria-label": label ?? (isDark ? t('Switch to light theme') : t('Switch to dark theme')) }));
|
|
61
63
|
}
|
|
62
64
|
// @hanzogui/next-theme is an OPTIONAL dependency — loaded only on the uncontrolled,
|
|
63
65
|
// no-props path (console/Next). Lazily code-split so non-Next hosts never need it at
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ThemeToggle.js","sourceRoot":"","sources":["../../src/product/ThemeToggle.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAgBZ,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACnC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"ThemeToggle.js","sourceRoot":"","sources":["../../src/product/ThemeToggle.tsx"],"names":[],"mappings":"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"}
|
package/dist/product/Toast.cjs
CHANGED
|
@@ -20,6 +20,7 @@ const react_dom_1 = require("react-dom");
|
|
|
20
20
|
const gui_1 = require("@hanzo/gui");
|
|
21
21
|
const plate_1 = require("../backends/gui/plate.cjs");
|
|
22
22
|
const lucide_icons_2_1 = require("@hanzogui/lucide-icons-2");
|
|
23
|
+
const react_2 = require("@hanzo/i18n/react");
|
|
23
24
|
const instrument_1 = require("./instrument.cjs");
|
|
24
25
|
const ToastContext = (0, react_1.createContext)(null);
|
|
25
26
|
/** Theme-aware accent per kind (adapts to light/dark). */
|
|
@@ -43,9 +44,11 @@ const DURATION = {
|
|
|
43
44
|
info: 3500,
|
|
44
45
|
};
|
|
45
46
|
function ToastCard({ t, onClose }) {
|
|
47
|
+
// `t` is the toast here, so the translator is reached through the context.
|
|
48
|
+
const i18n = (0, react_2.useI18n)();
|
|
46
49
|
const Icon = ICON[t.kind];
|
|
47
50
|
const accent = ACCENT[t.kind];
|
|
48
|
-
return ((0, jsx_runtime_1.jsx)(plate_1.Plate, { width: 360, maxW: "90%", p: "$3", gap: "$2", bg: "$panel", borderWidth: 1, borderColor: "$borderColor", borderInlineStartWidth: 3, borderInlineStartColor: accent, rounded: "$4", elevation: "$2", children: (0, jsx_runtime_1.jsxs)(gui_1.XStack, { gap: "$2.5", items: "flex-start", children: [t.showIcon ? ((0, jsx_runtime_1.jsx)(gui_1.YStack, { pt: 1, children: (0, jsx_runtime_1.jsx)(Icon, { size: 18, color: accent }) })) : null, (0, jsx_runtime_1.jsxs)(gui_1.YStack, { flex: 1, gap: "$1", children: [(0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$3", fontWeight: "700", color: "$ink", children: t.title }), t.description ? ((0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$2", color: "$quiet", children: t.description })) : null] }), (0, jsx_runtime_1.jsx)(gui_1.Button, { size: "$1", chromeless: true, icon: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.X, { size: 14 }), onPress: onClose, "aria-label":
|
|
51
|
+
return ((0, jsx_runtime_1.jsx)(plate_1.Plate, { width: 360, maxW: "90%", p: "$3", gap: "$2", bg: "$panel", borderWidth: 1, borderColor: "$borderColor", borderInlineStartWidth: 3, borderInlineStartColor: accent, rounded: "$4", elevation: "$2", children: (0, jsx_runtime_1.jsxs)(gui_1.XStack, { gap: "$2.5", items: "flex-start", children: [t.showIcon ? ((0, jsx_runtime_1.jsx)(gui_1.YStack, { pt: 1, children: (0, jsx_runtime_1.jsx)(Icon, { size: 18, color: accent }) })) : null, (0, jsx_runtime_1.jsxs)(gui_1.YStack, { flex: 1, gap: "$1", children: [(0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$3", fontWeight: "700", color: "$ink", children: t.title }), t.description ? ((0, jsx_runtime_1.jsx)(gui_1.Text, { fontSize: "$2", color: "$quiet", children: t.description })) : null] }), (0, jsx_runtime_1.jsx)(gui_1.Button, { size: "$1", chromeless: true, icon: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.X, { size: 14 }), onPress: onClose, "aria-label": i18n.t('Dismiss') })] }) }));
|
|
49
52
|
}
|
|
50
53
|
/** Portalled, fixed top-right stack. Rendered only after mount (SSR-safe). */
|
|
51
54
|
function ToastViewport({ toasts, dismiss }) {
|
|
@@ -53,7 +56,13 @@ function ToastViewport({ toasts, dismiss }) {
|
|
|
53
56
|
(0, react_1.useEffect)(() => setMounted(true), []);
|
|
54
57
|
if (!mounted || typeof document === 'undefined')
|
|
55
58
|
return null;
|
|
56
|
-
return (0, react_dom_1.createPortal)((0, jsx_runtime_1.jsx)("div", { style: {
|
|
59
|
+
return (0, react_dom_1.createPortal)((0, jsx_runtime_1.jsx)("div", { style: {
|
|
60
|
+
position: 'fixed',
|
|
61
|
+
top: 16,
|
|
62
|
+
insetInlineEnd: 16,
|
|
63
|
+
zIndex: 100000,
|
|
64
|
+
pointerEvents: 'none',
|
|
65
|
+
}, children: (0, jsx_runtime_1.jsx)(gui_1.YStack, { gap: "$2", items: "flex-end", children: toasts.map((t) => ((0, jsx_runtime_1.jsx)(gui_1.YStack, { pointerEvents: "auto", children: (0, jsx_runtime_1.jsx)(ToastCard, { t: t, onClose: () => dismiss(t.id) }) }, t.id))) }) }), document.body);
|
|
57
66
|
}
|
|
58
67
|
function ToastProvider({ children }) {
|
|
59
68
|
const track = (0, instrument_1.useEmit)();
|
|
@@ -73,10 +82,22 @@ function ToastProvider({ children }) {
|
|
|
73
82
|
const kind = input.kind ?? 'info';
|
|
74
83
|
const durationMs = input.durationMs ?? DURATION[kind];
|
|
75
84
|
const showIcon = input.showIcon ?? true;
|
|
76
|
-
track({
|
|
85
|
+
track({
|
|
86
|
+
component: 'Toast',
|
|
87
|
+
action: kind === 'error' ? 'error' : 'view',
|
|
88
|
+
id: input.title,
|
|
89
|
+
value: kind,
|
|
90
|
+
});
|
|
77
91
|
setToasts((ts) => [
|
|
78
92
|
...ts,
|
|
79
|
-
{
|
|
93
|
+
{
|
|
94
|
+
id,
|
|
95
|
+
kind,
|
|
96
|
+
title: input.title,
|
|
97
|
+
description: input.description,
|
|
98
|
+
durationMs,
|
|
99
|
+
showIcon,
|
|
100
|
+
},
|
|
80
101
|
]);
|
|
81
102
|
if (durationMs > 0) {
|
|
82
103
|
timers.current.set(id, setTimeout(() => dismiss(id), durationMs));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../src/product/Toast.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,OAAO,EAAgF,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"Toast.d.ts","sourceRoot":"","sources":["../../src/product/Toast.tsx"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AACH,OAAO,EAAgF,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AASpH;;;;;GAKG;AACH,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAA;AAEhE,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,yEAAyE;AACzE,MAAM,MAAM,KAAK,GAAG,UAAU,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,SAAS,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,OAAO,CAAA;CAClB,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG;IACrB,KAAK,EAAE,CAAC,CAAC,EAAE,UAAU,KAAK,IAAI,CAAA;IAC9B,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACtD,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACpD,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACtD,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACnD,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;CAC9B,CAAA;AA+FD,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,+BA4ElE;AAED,wBAAgB,QAAQ,IAAI,QAAQ,CAInC"}
|
package/dist/product/Toast.js
CHANGED
|
@@ -16,6 +16,7 @@ import { createPortal } from 'react-dom';
|
|
|
16
16
|
import { Button, Text, XStack, YStack } from '@hanzo/gui';
|
|
17
17
|
import { Plate as Card } from '../backends/gui/plate.js';
|
|
18
18
|
import { CircleCheck, CircleX, Info, TriangleAlert, X } from '@hanzogui/lucide-icons-2';
|
|
19
|
+
import { useI18n } from '@hanzo/i18n/react';
|
|
19
20
|
import { useEmit } from './instrument.js';
|
|
20
21
|
const ToastContext = createContext(null);
|
|
21
22
|
/** Theme-aware accent per kind (adapts to light/dark). */
|
|
@@ -39,9 +40,11 @@ const DURATION = {
|
|
|
39
40
|
info: 3500,
|
|
40
41
|
};
|
|
41
42
|
function ToastCard({ t, onClose }) {
|
|
43
|
+
// `t` is the toast here, so the translator is reached through the context.
|
|
44
|
+
const i18n = useI18n();
|
|
42
45
|
const Icon = ICON[t.kind];
|
|
43
46
|
const accent = ACCENT[t.kind];
|
|
44
|
-
return (_jsx(Card, { width: 360, maxW: "90%", p: "$3", gap: "$2", bg: "$panel", borderWidth: 1, borderColor: "$borderColor", borderInlineStartWidth: 3, borderInlineStartColor: accent, rounded: "$4", elevation: "$2", children: _jsxs(XStack, { gap: "$2.5", items: "flex-start", children: [t.showIcon ? (_jsx(YStack, { pt: 1, children: _jsx(Icon, { size: 18, color: accent }) })) : null, _jsxs(YStack, { flex: 1, gap: "$1", children: [_jsx(Text, { fontSize: "$3", fontWeight: "700", color: "$ink", children: t.title }), t.description ? (_jsx(Text, { fontSize: "$2", color: "$quiet", children: t.description })) : null] }), _jsx(Button, { size: "$1", chromeless: true, icon: _jsx(X, { size: 14 }), onPress: onClose, "aria-label":
|
|
47
|
+
return (_jsx(Card, { width: 360, maxW: "90%", p: "$3", gap: "$2", bg: "$panel", borderWidth: 1, borderColor: "$borderColor", borderInlineStartWidth: 3, borderInlineStartColor: accent, rounded: "$4", elevation: "$2", children: _jsxs(XStack, { gap: "$2.5", items: "flex-start", children: [t.showIcon ? (_jsx(YStack, { pt: 1, children: _jsx(Icon, { size: 18, color: accent }) })) : null, _jsxs(YStack, { flex: 1, gap: "$1", children: [_jsx(Text, { fontSize: "$3", fontWeight: "700", color: "$ink", children: t.title }), t.description ? (_jsx(Text, { fontSize: "$2", color: "$quiet", children: t.description })) : null] }), _jsx(Button, { size: "$1", chromeless: true, icon: _jsx(X, { size: 14 }), onPress: onClose, "aria-label": i18n.t('Dismiss') })] }) }));
|
|
45
48
|
}
|
|
46
49
|
/** Portalled, fixed top-right stack. Rendered only after mount (SSR-safe). */
|
|
47
50
|
function ToastViewport({ toasts, dismiss }) {
|
|
@@ -49,7 +52,13 @@ function ToastViewport({ toasts, dismiss }) {
|
|
|
49
52
|
useEffect(() => setMounted(true), []);
|
|
50
53
|
if (!mounted || typeof document === 'undefined')
|
|
51
54
|
return null;
|
|
52
|
-
return createPortal(_jsx("div", { style: {
|
|
55
|
+
return createPortal(_jsx("div", { style: {
|
|
56
|
+
position: 'fixed',
|
|
57
|
+
top: 16,
|
|
58
|
+
insetInlineEnd: 16,
|
|
59
|
+
zIndex: 100000,
|
|
60
|
+
pointerEvents: 'none',
|
|
61
|
+
}, children: _jsx(YStack, { gap: "$2", items: "flex-end", children: toasts.map((t) => (_jsx(YStack, { pointerEvents: "auto", children: _jsx(ToastCard, { t: t, onClose: () => dismiss(t.id) }) }, t.id))) }) }), document.body);
|
|
53
62
|
}
|
|
54
63
|
export function ToastProvider({ children }) {
|
|
55
64
|
const track = useEmit();
|
|
@@ -69,10 +78,22 @@ export function ToastProvider({ children }) {
|
|
|
69
78
|
const kind = input.kind ?? 'info';
|
|
70
79
|
const durationMs = input.durationMs ?? DURATION[kind];
|
|
71
80
|
const showIcon = input.showIcon ?? true;
|
|
72
|
-
track({
|
|
81
|
+
track({
|
|
82
|
+
component: 'Toast',
|
|
83
|
+
action: kind === 'error' ? 'error' : 'view',
|
|
84
|
+
id: input.title,
|
|
85
|
+
value: kind,
|
|
86
|
+
});
|
|
73
87
|
setToasts((ts) => [
|
|
74
88
|
...ts,
|
|
75
|
-
{
|
|
89
|
+
{
|
|
90
|
+
id,
|
|
91
|
+
kind,
|
|
92
|
+
title: input.title,
|
|
93
|
+
description: input.description,
|
|
94
|
+
durationMs,
|
|
95
|
+
showIcon,
|
|
96
|
+
},
|
|
76
97
|
]);
|
|
77
98
|
if (durationMs > 0) {
|
|
78
99
|
timers.current.set(id, setTimeout(() => dismiss(id), durationMs));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../src/product/Toast.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ;;;;;;;;;;GAUG;AACH,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAkB,MAAM,OAAO,CAAA;AACpH,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AACzD,OAAO,EAAE,KAAK,IAAI,IAAI,EAAE,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../src/product/Toast.tsx"],"names":[],"mappings":"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"}
|