@hanzo/ui 8.29.45 → 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 +7 -2
- package/dist/marketing/ClosingCta.d.ts +2 -1
- package/dist/marketing/ClosingCta.d.ts.map +1 -1
- package/dist/marketing/ClosingCta.js +7 -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 +3 -1
- package/dist/product/LimitedBanner.d.ts.map +1 -1
- package/dist/product/LimitedBanner.js +3 -1
- 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 +61 -24
- package/dist/product/limits.d.ts +4 -3
- package/dist/product/limits.d.ts.map +1 -1
- package/dist/product/limits.js +61 -24
- 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
|
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
4
4
|
exports.ChatOnboarding = ChatOnboarding;
|
|
5
5
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
6
|
const react_1 = require("react");
|
|
7
|
+
const react_2 = require("@hanzo/i18n/react");
|
|
7
8
|
const lucide_icons_2_1 = require("@hanzogui/lucide-icons-2");
|
|
8
9
|
const button_1 = require("../backends/gui/button.cjs");
|
|
9
10
|
const field_1 = require("../backends/gui/field.cjs");
|
|
@@ -13,9 +14,9 @@ const select_1 = require("../backends/gui/select.cjs");
|
|
|
13
14
|
const switch_1 = require("../backends/gui/switch.cjs");
|
|
14
15
|
const api_1 = require("./api.cjs");
|
|
15
16
|
const frame_1 = require("./frame.cjs");
|
|
16
|
-
const screens_1 = require("./screens.cjs");
|
|
17
17
|
const hooks_1 = require("./hooks.cjs");
|
|
18
18
|
const roles_1 = require("./roles.cjs");
|
|
19
|
+
const screens_1 = require("./screens.cjs");
|
|
19
20
|
const state_1 = require("./state.cjs");
|
|
20
21
|
const ICONS = {
|
|
21
22
|
binoculars: lucide_icons_2_1.Binoculars,
|
|
@@ -37,6 +38,7 @@ const ICONS = {
|
|
|
37
38
|
slides: lucide_icons_2_1.Presentation,
|
|
38
39
|
};
|
|
39
40
|
function ChatOnboarding({ site = 'Hanzo', api = api_1.API, track, onDone, privacyPath = '/settings/privacy', safeguards = false }) {
|
|
41
|
+
const { t } = (0, react_2.useI18n)();
|
|
40
42
|
const session = (0, hooks_1.useSession)(api);
|
|
41
43
|
const [role, setRole] = (0, react_1.useState)('');
|
|
42
44
|
const [name, setName] = (0, react_1.useState)('');
|
|
@@ -55,13 +57,13 @@ function ChatOnboarding({ site = 'Hanzo', api = api_1.API, track, onDone, privac
|
|
|
55
57
|
if (!at || at === 'done')
|
|
56
58
|
return (0, jsx_runtime_1.jsx)(frame_1.Page, { site: site, title: "", busy: true });
|
|
57
59
|
if (at === 'notice') {
|
|
58
|
-
return ((0, jsx_runtime_1.jsxs)(frame_1.Page, { site: site, title:
|
|
60
|
+
return ((0, jsx_runtime_1.jsxs)(frame_1.Page, { site: site, title: t('Before your first chat'), lede: t('A few things to know, plus one setting to review'), center: true, width: 512, children: [(0, jsx_runtime_1.jsxs)(frame_1.Panel, { label: t('Before your first chat'), children: [(0, jsx_runtime_1.jsxs)(Row, { icon: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.EyeOff, { size: 20 }), children: [(0, jsx_runtime_1.jsx)("b", { children: t('Ad-free chats:') }), ` ${t('We won’t show you ads or let advertisers influence what {site} says.', { site })}`] }), safeguards ? ((0, jsx_runtime_1.jsxs)(Row, { icon: (0, jsx_runtime_1.jsx)(lucide_icons_2_1.HeartHandshake, { size: 20 }), children: [(0, jsx_runtime_1.jsx)("b", { children: t('Built to help, not harm:') }), ` ${t('Automated safeguards protect your chats from violent, abusive, or deceptive content.')}`] })) : null, (0, jsx_runtime_1.jsxs)(Row, { icon: (0, jsx_runtime_1.jsx)(switch_1.Switch, { checked: train, onCheckedChange: setTrain, "aria-label": t('Help improve our AI models') }), children: [(0, jsx_runtime_1.jsx)("b", { children: t('Help improve our AI models:') }), ` ${t('Allow the use of your chats and coding sessions to train and improve Zen models.')} ${t('Change anytime in privacy settings.')} `, (0, jsx_runtime_1.jsx)(layout_1.Anchor, { href: privacyPath, color: "$ink", textDecorationLine: "underline", children: t('Learn more') })] })] }), (0, jsx_runtime_1.jsx)(screens_1.Primary, { disabled: busy, onClick: async () => {
|
|
59
61
|
setBusy(true);
|
|
60
62
|
await session.setTrain(train).catch(() => undefined);
|
|
61
63
|
track?.('first_chat_notice_accepted', { train_opt_in: train });
|
|
62
64
|
await session.save({ notice: true });
|
|
63
65
|
setBusy(false);
|
|
64
|
-
}, children:
|
|
66
|
+
}, children: t('Continue') })] }));
|
|
65
67
|
}
|
|
66
68
|
if (at === 'name') {
|
|
67
69
|
const submit = async (e) => {
|
|
@@ -77,30 +79,33 @@ function ChatOnboarding({ site = 'Hanzo', api = api_1.API, track, onDone, privac
|
|
|
77
79
|
setBusy(false);
|
|
78
80
|
}
|
|
79
81
|
};
|
|
80
|
-
return ((0, jsx_runtime_1.jsx)(frame_1.Page, { site: site, title:
|
|
82
|
+
return ((0, jsx_runtime_1.jsx)(frame_1.Page, { site: site, title: t('What’s your name?'), lede: t('So {site} knows what to call you.', { site }), center: true, children: (0, jsx_runtime_1.jsxs)(layout_1.YStack, { render: (0, jsx_runtime_1.jsx)("form", { onSubmit: submit, noValidate: true }), gap: "$4", items: "stretch", children: [(0, jsx_runtime_1.jsx)(field_1.Field, { gap: "$2", children: (0, jsx_runtime_1.jsx)(input_1.Input, { name: "name", autoComplete: "name", "aria-label": t('Your name'), value: name, onChangeText: setName, placeholder: t('Your name'), height: 48, autoFocus: true }) }), (0, jsx_runtime_1.jsx)(screens_1.Primary, { type: "submit", disabled: !name.trim() || busy, children: t('Continue') })] }) }));
|
|
81
83
|
}
|
|
82
84
|
const chosen = roles_1.ROLES.find((r) => r.role === role);
|
|
83
85
|
const pick = async (prompt) => {
|
|
84
86
|
if (busy || !chosen)
|
|
85
87
|
return;
|
|
86
88
|
setBusy(true);
|
|
87
|
-
track?.('usage_selected', {
|
|
89
|
+
track?.('usage_selected', {
|
|
90
|
+
use: session.progress.use ?? 'personal',
|
|
91
|
+
role: chosen.role,
|
|
92
|
+
});
|
|
88
93
|
await session.save({ role: chosen.role });
|
|
89
94
|
onDone({ prompt, role: chosen.role });
|
|
90
95
|
};
|
|
91
|
-
return ((0, jsx_runtime_1.jsxs)(frame_1.Page, { site: site, title: roles_1.ROLES_TITLE, lede: roles_1.ROLES_SUBTITLE, center: true, width: 450, children: [(0, jsx_runtime_1.jsxs)(select_1.Select, { value: role, onValueChange: (v) => {
|
|
96
|
+
return ((0, jsx_runtime_1.jsxs)(frame_1.Page, { site: site, title: t(roles_1.ROLES_TITLE), lede: t(roles_1.ROLES_SUBTITLE), center: true, width: 450, children: [(0, jsx_runtime_1.jsxs)(select_1.Select, { value: role, onValueChange: (v) => {
|
|
92
97
|
setRole(v);
|
|
93
98
|
track?.('role_selected', { role: v });
|
|
94
|
-
}, children: [(0, jsx_runtime_1.jsx)(select_1.SelectTrigger, { "aria-label":
|
|
99
|
+
}, children: [(0, jsx_runtime_1.jsx)(select_1.SelectTrigger, { "aria-label": t('Your role'), height: 48, children: (0, jsx_runtime_1.jsx)(select_1.SelectValue, { placeholder: t(roles_1.ROLES_PLACEHOLDER) }) }), (0, jsx_runtime_1.jsx)(select_1.SelectContent, { children: roles_1.ROLES.map((r) => ((0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: r.role, children: t(r.role) }, r.role))) })] }), chosen ? ((0, jsx_runtime_1.jsxs)(layout_1.YStack, { gap: "$3", children: [chosen.prompts.map((p) => {
|
|
95
100
|
const Icon = ICONS[p.icon];
|
|
96
101
|
return ((0, jsx_runtime_1.jsxs)(button_1.Button, { type: "button", variant: "secondary", disabled: busy, minH: 68, px: "$5", rounded: "$3", justify: "flex-start", gap: "$4", onClick: () => {
|
|
97
102
|
track?.('starter_prompt_used', { role: chosen.role, prompt: p.label });
|
|
98
|
-
void pick(p.prompt);
|
|
99
|
-
}, children: [(0, jsx_runtime_1.jsx)(Icon, { size: 20 }), p.label] }, p.label));
|
|
103
|
+
void pick(t(p.prompt));
|
|
104
|
+
}, children: [(0, jsx_runtime_1.jsx)(Icon, { size: 20 }), t(p.label)] }, p.label));
|
|
100
105
|
}), (0, jsx_runtime_1.jsx)(button_1.Button, { type: "button", variant: "link", size: "lg", disabled: busy, self: "center", onClick: () => {
|
|
101
106
|
track?.('own_topic_chosen', { role: chosen.role });
|
|
102
107
|
void pick(undefined);
|
|
103
|
-
}, children: roles_1.OWN_TOPIC })] })) : null] }));
|
|
108
|
+
}, children: t(roles_1.OWN_TOPIC) })] })) : null] }));
|
|
104
109
|
}
|
|
105
110
|
/** One line of the notice: a mark or a switch, then the words. */
|
|
106
111
|
function Row({ icon, children }) {
|
|
@@ -6,7 +6,9 @@ import { type Track } from './hooks.js';
|
|
|
6
6
|
* IAM user, so nobody sees a step twice.
|
|
7
7
|
*
|
|
8
8
|
* `onDone` receives what the person chose to open the chat with: a starter's full
|
|
9
|
-
* prompt, or nothing for an empty chat.
|
|
9
|
+
* prompt, or nothing for an empty chat. Its words are the reader's language
|
|
10
|
+
* (@hanzo/i18n `t`); a starter's prompt is the one in the words pressed, while
|
|
11
|
+
* the role it saves and the events it sends stay in English.
|
|
10
12
|
*/
|
|
11
13
|
export interface ChatOnboardingProps {
|
|
12
14
|
site?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatOnboarding.d.ts","sourceRoot":"","sources":["../../src/onboarding/ChatOnboarding.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ChatOnboarding.d.ts","sourceRoot":"","sources":["../../src/onboarding/ChatOnboarding.tsx"],"names":[],"mappings":"AAcA,OAAO,EAAc,KAAK,KAAK,EAAE,MAAM,SAAS,CAAA;AAKhD;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,MAAM,EAAE,CAAC,KAAK,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAC3D,8CAA8C;IAC9C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iGAAiG;IACjG,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB;AAsBD,wBAAgB,cAAc,CAAC,EAAE,IAAc,EAAE,GAAS,EAAE,KAAK,EAAE,MAAM,EAAE,WAAiC,EAAE,UAAkB,EAAE,EAAE,mBAAmB,+BA8JtJ"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { useEffect, useRef, useState } from 'react';
|
|
4
|
+
import { useI18n } from '@hanzo/i18n/react';
|
|
4
5
|
import { Binoculars, Calendar, ChartLine, Clock, Code, Dna, EyeOff, FileText, Gavel, GraduationCap, HeartHandshake, LayoutGrid, Library, Lightbulb, MessageSquare, Palette, Pencil, Presentation, User } from '@hanzogui/lucide-icons-2';
|
|
5
6
|
import { Button } from '../backends/gui/button.js';
|
|
6
7
|
import { Field } from '../backends/gui/field.js';
|
|
@@ -10,9 +11,9 @@ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '.
|
|
|
10
11
|
import { Switch } from '../backends/gui/switch.js';
|
|
11
12
|
import { API } from './api.js';
|
|
12
13
|
import { Page, Panel } from './frame.js';
|
|
13
|
-
import { Primary } from './screens.js';
|
|
14
14
|
import { useSession } from './hooks.js';
|
|
15
15
|
import { OWN_TOPIC, ROLES, ROLES_PLACEHOLDER, ROLES_SUBTITLE, ROLES_TITLE } from './roles.js';
|
|
16
|
+
import { Primary } from './screens.js';
|
|
16
17
|
import { chatStep } from './state.js';
|
|
17
18
|
const ICONS = {
|
|
18
19
|
binoculars: Binoculars,
|
|
@@ -34,6 +35,7 @@ const ICONS = {
|
|
|
34
35
|
slides: Presentation,
|
|
35
36
|
};
|
|
36
37
|
export function ChatOnboarding({ site = 'Hanzo', api = API, track, onDone, privacyPath = '/settings/privacy', safeguards = false }) {
|
|
38
|
+
const { t } = useI18n();
|
|
37
39
|
const session = useSession(api);
|
|
38
40
|
const [role, setRole] = useState('');
|
|
39
41
|
const [name, setName] = useState('');
|
|
@@ -52,13 +54,13 @@ export function ChatOnboarding({ site = 'Hanzo', api = API, track, onDone, priva
|
|
|
52
54
|
if (!at || at === 'done')
|
|
53
55
|
return _jsx(Page, { site: site, title: "", busy: true });
|
|
54
56
|
if (at === 'notice') {
|
|
55
|
-
return (_jsxs(Page, { site: site, title:
|
|
57
|
+
return (_jsxs(Page, { site: site, title: t('Before your first chat'), lede: t('A few things to know, plus one setting to review'), center: true, width: 512, children: [_jsxs(Panel, { label: t('Before your first chat'), children: [_jsxs(Row, { icon: _jsx(EyeOff, { size: 20 }), children: [_jsx("b", { children: t('Ad-free chats:') }), ` ${t('We won’t show you ads or let advertisers influence what {site} says.', { site })}`] }), safeguards ? (_jsxs(Row, { icon: _jsx(HeartHandshake, { size: 20 }), children: [_jsx("b", { children: t('Built to help, not harm:') }), ` ${t('Automated safeguards protect your chats from violent, abusive, or deceptive content.')}`] })) : null, _jsxs(Row, { icon: _jsx(Switch, { checked: train, onCheckedChange: setTrain, "aria-label": t('Help improve our AI models') }), children: [_jsx("b", { children: t('Help improve our AI models:') }), ` ${t('Allow the use of your chats and coding sessions to train and improve Zen models.')} ${t('Change anytime in privacy settings.')} `, _jsx(Anchor, { href: privacyPath, color: "$ink", textDecorationLine: "underline", children: t('Learn more') })] })] }), _jsx(Primary, { disabled: busy, onClick: async () => {
|
|
56
58
|
setBusy(true);
|
|
57
59
|
await session.setTrain(train).catch(() => undefined);
|
|
58
60
|
track?.('first_chat_notice_accepted', { train_opt_in: train });
|
|
59
61
|
await session.save({ notice: true });
|
|
60
62
|
setBusy(false);
|
|
61
|
-
}, children:
|
|
63
|
+
}, children: t('Continue') })] }));
|
|
62
64
|
}
|
|
63
65
|
if (at === 'name') {
|
|
64
66
|
const submit = async (e) => {
|
|
@@ -74,30 +76,33 @@ export function ChatOnboarding({ site = 'Hanzo', api = API, track, onDone, priva
|
|
|
74
76
|
setBusy(false);
|
|
75
77
|
}
|
|
76
78
|
};
|
|
77
|
-
return (_jsx(Page, { site: site, title:
|
|
79
|
+
return (_jsx(Page, { site: site, title: t('What’s your name?'), lede: t('So {site} knows what to call you.', { site }), center: true, children: _jsxs(YStack, { render: _jsx("form", { onSubmit: submit, noValidate: true }), gap: "$4", items: "stretch", children: [_jsx(Field, { gap: "$2", children: _jsx(Input, { name: "name", autoComplete: "name", "aria-label": t('Your name'), value: name, onChangeText: setName, placeholder: t('Your name'), height: 48, autoFocus: true }) }), _jsx(Primary, { type: "submit", disabled: !name.trim() || busy, children: t('Continue') })] }) }));
|
|
78
80
|
}
|
|
79
81
|
const chosen = ROLES.find((r) => r.role === role);
|
|
80
82
|
const pick = async (prompt) => {
|
|
81
83
|
if (busy || !chosen)
|
|
82
84
|
return;
|
|
83
85
|
setBusy(true);
|
|
84
|
-
track?.('usage_selected', {
|
|
86
|
+
track?.('usage_selected', {
|
|
87
|
+
use: session.progress.use ?? 'personal',
|
|
88
|
+
role: chosen.role,
|
|
89
|
+
});
|
|
85
90
|
await session.save({ role: chosen.role });
|
|
86
91
|
onDone({ prompt, role: chosen.role });
|
|
87
92
|
};
|
|
88
|
-
return (_jsxs(Page, { site: site, title: ROLES_TITLE, lede: ROLES_SUBTITLE, center: true, width: 450, children: [_jsxs(Select, { value: role, onValueChange: (v) => {
|
|
93
|
+
return (_jsxs(Page, { site: site, title: t(ROLES_TITLE), lede: t(ROLES_SUBTITLE), center: true, width: 450, children: [_jsxs(Select, { value: role, onValueChange: (v) => {
|
|
89
94
|
setRole(v);
|
|
90
95
|
track?.('role_selected', { role: v });
|
|
91
|
-
}, children: [_jsx(SelectTrigger, { "aria-label":
|
|
96
|
+
}, children: [_jsx(SelectTrigger, { "aria-label": t('Your role'), height: 48, children: _jsx(SelectValue, { placeholder: t(ROLES_PLACEHOLDER) }) }), _jsx(SelectContent, { children: ROLES.map((r) => (_jsx(SelectItem, { value: r.role, children: t(r.role) }, r.role))) })] }), chosen ? (_jsxs(YStack, { gap: "$3", children: [chosen.prompts.map((p) => {
|
|
92
97
|
const Icon = ICONS[p.icon];
|
|
93
98
|
return (_jsxs(Button, { type: "button", variant: "secondary", disabled: busy, minH: 68, px: "$5", rounded: "$3", justify: "flex-start", gap: "$4", onClick: () => {
|
|
94
99
|
track?.('starter_prompt_used', { role: chosen.role, prompt: p.label });
|
|
95
|
-
void pick(p.prompt);
|
|
96
|
-
}, children: [_jsx(Icon, { size: 20 }), p.label] }, p.label));
|
|
100
|
+
void pick(t(p.prompt));
|
|
101
|
+
}, children: [_jsx(Icon, { size: 20 }), t(p.label)] }, p.label));
|
|
97
102
|
}), _jsx(Button, { type: "button", variant: "link", size: "lg", disabled: busy, self: "center", onClick: () => {
|
|
98
103
|
track?.('own_topic_chosen', { role: chosen.role });
|
|
99
104
|
void pick(undefined);
|
|
100
|
-
}, children: OWN_TOPIC })] })) : null] }));
|
|
105
|
+
}, children: t(OWN_TOPIC) })] })) : null] }));
|
|
101
106
|
}
|
|
102
107
|
/** One line of the notice: a mark or a switch, then the words. */
|
|
103
108
|
function Row({ icon, children }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatOnboarding.js","sourceRoot":"","sources":["../../src/onboarding/ChatOnboarding.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;;AAEZ,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAsD,MAAM,OAAO,CAAA;AACvG,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"ChatOnboarding.js","sourceRoot":"","sources":["../../src/onboarding/ChatOnboarding.tsx"],"names":[],"mappings":"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"}
|
|
@@ -5,24 +5,25 @@ exports.Checkout = Checkout;
|
|
|
5
5
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
6
6
|
const react_1 = require("react");
|
|
7
7
|
const event_1 = require("@hanzo/event");
|
|
8
|
+
const i18n_1 = require("@hanzo/i18n");
|
|
9
|
+
const react_2 = require("@hanzo/i18n/react");
|
|
8
10
|
const pay_1 = require("@hanzo/pay");
|
|
9
11
|
const web_1 = require("@hanzo/pay/web");
|
|
12
|
+
const session_1 = require("../auth/session.cjs");
|
|
10
13
|
const checkbox_1 = require("../backends/gui/checkbox.cjs");
|
|
14
|
+
const choice_1 = require("../backends/gui/choice.cjs");
|
|
11
15
|
const field_1 = require("../backends/gui/field.cjs");
|
|
12
16
|
const input_1 = require("../backends/gui/input.cjs");
|
|
13
17
|
const layout_1 = require("../backends/gui/layout.cjs");
|
|
14
18
|
const select_1 = require("../backends/gui/select.cjs");
|
|
15
|
-
const session_1 = require("../auth/session.cjs");
|
|
16
19
|
const api_1 = require("./api.cjs");
|
|
17
20
|
const attempt_1 = require("./attempt.cjs");
|
|
18
21
|
const catalog_1 = require("./catalog.cjs");
|
|
19
22
|
const frame_1 = require("./frame.cjs");
|
|
20
|
-
const screens_1 = require("./screens.cjs");
|
|
21
|
-
const choice_1 = require("../backends/gui/choice.cjs");
|
|
22
|
-
const layout_2 = require("../backends/gui/layout.cjs");
|
|
23
23
|
const plans_1 = require("./plans.cjs");
|
|
24
|
+
const screens_1 = require("./screens.cjs");
|
|
24
25
|
const COUNTRIES = [
|
|
25
|
-
['US', 'United States'], ['CA', 'Canada'], ['GB', 'United Kingdom'], ['AU', 'Australia'], ['DE', 'Germany'], ['FR', 'France'], ['ES', 'Spain'], ['IT', 'Italy'], ['NL', 'Netherlands'], ['SE', 'Sweden'], ['IE', 'Ireland'], ['CH', 'Switzerland'], ['JP', 'Japan'], ['SG', 'Singapore'], ['IN', 'India'], ['BR', 'Brazil'], ['MX', 'Mexico'], ['NZ', 'New Zealand'], ['ZA', 'South Africa'], ['AE', 'United Arab Emirates'],
|
|
26
|
+
['US', (0, i18n_1.phrase)('United States')], ['CA', (0, i18n_1.phrase)('Canada')], ['GB', (0, i18n_1.phrase)('United Kingdom')], ['AU', (0, i18n_1.phrase)('Australia')], ['DE', (0, i18n_1.phrase)('Germany')], ['FR', (0, i18n_1.phrase)('France')], ['ES', (0, i18n_1.phrase)('Spain')], ['IT', (0, i18n_1.phrase)('Italy')], ['NL', (0, i18n_1.phrase)('Netherlands')], ['SE', (0, i18n_1.phrase)('Sweden')], ['IE', (0, i18n_1.phrase)('Ireland')], ['CH', (0, i18n_1.phrase)('Switzerland')], ['JP', (0, i18n_1.phrase)('Japan')], ['SG', (0, i18n_1.phrase)('Singapore')], ['IN', (0, i18n_1.phrase)('India')], ['BR', (0, i18n_1.phrase)('Brazil')], ['MX', (0, i18n_1.phrase)('Mexico')], ['NZ', (0, i18n_1.phrase)('New Zealand')], ['ZA', (0, i18n_1.phrase)('South Africa')], ['AE', (0, i18n_1.phrase)('United Arab Emirates')],
|
|
26
27
|
];
|
|
27
28
|
const renews = (interval) => {
|
|
28
29
|
const d = new Date();
|
|
@@ -30,17 +31,23 @@ const renews = (interval) => {
|
|
|
30
31
|
d.setFullYear(d.getFullYear() + 1);
|
|
31
32
|
else
|
|
32
33
|
d.setMonth(d.getMonth() + 1);
|
|
33
|
-
return d.toLocaleDateString('en-US', {
|
|
34
|
+
return d.toLocaleDateString('en-US', {
|
|
35
|
+
year: 'numeric',
|
|
36
|
+
month: 'numeric',
|
|
37
|
+
day: 'numeric',
|
|
38
|
+
});
|
|
34
39
|
};
|
|
35
40
|
function Checkout(props) {
|
|
41
|
+
const { t } = (0, react_2.useI18n)();
|
|
36
42
|
const loaded = (0, catalog_1.useCatalog)(props.api ?? api_1.API);
|
|
37
43
|
if (loaded === null)
|
|
38
44
|
return (0, jsx_runtime_1.jsx)(frame_1.Page, { site: props.site ?? 'Hanzo', title: "", busy: true });
|
|
39
45
|
if (!loaded)
|
|
40
|
-
return (0, jsx_runtime_1.jsx)(frame_1.Page, { site: props.site ?? 'Hanzo', title:
|
|
46
|
+
return (0, jsx_runtime_1.jsx)(frame_1.Page, { site: props.site ?? 'Hanzo', title: t('Plans could not be loaded just now'), lede: `${t('That is ours to fix.')} ${t('Reload to try again.')}`, center: true });
|
|
41
47
|
return (0, jsx_runtime_1.jsx)(CheckoutForm, { ...props });
|
|
42
48
|
}
|
|
43
49
|
function CheckoutForm({ site = 'Hanzo', api = api_1.API, org, token: propToken, plan, seats = 1, interval, setInterval, setPlan, track, termsPath = '/terms', back, onPaid }) {
|
|
50
|
+
const { t } = (0, react_2.useI18n)();
|
|
44
51
|
const o = (0, plans_1.offer)(plan);
|
|
45
52
|
const l = (0, react_1.useMemo)(() => (0, plans_1.lines)(plan, interval, seats), [plan, interval, seats]);
|
|
46
53
|
const activeOrg = org || (0, session_1.currentOrg)() || undefined;
|
|
@@ -52,7 +59,12 @@ function CheckoutForm({ site = 'Hanzo', api = api_1.API, org, token: propToken,
|
|
|
52
59
|
const [busy, setBusy] = (0, react_1.useState)(false);
|
|
53
60
|
const [wrong, setWrong] = (0, react_1.useState)(null);
|
|
54
61
|
const [agree, setAgree] = (0, react_1.useState)(true);
|
|
55
|
-
const [form, setForm] = (0, react_1.useState)({
|
|
62
|
+
const [form, setForm] = (0, react_1.useState)({
|
|
63
|
+
name: '',
|
|
64
|
+
country: 'US',
|
|
65
|
+
address: '',
|
|
66
|
+
invoice: '',
|
|
67
|
+
});
|
|
56
68
|
const card = (0, react_1.useRef)(null);
|
|
57
69
|
const started = (0, react_1.useRef)(false);
|
|
58
70
|
// The billing form is shown with a total: checkout has started.
|
|
@@ -60,8 +72,22 @@ function CheckoutForm({ site = 'Hanzo', api = api_1.API, org, token: propToken,
|
|
|
60
72
|
if (started.current)
|
|
61
73
|
return;
|
|
62
74
|
started.current = true;
|
|
63
|
-
track?.('plan_selected', {
|
|
64
|
-
|
|
75
|
+
track?.('plan_selected', {
|
|
76
|
+
plan,
|
|
77
|
+
interval,
|
|
78
|
+
seats: l.seats,
|
|
79
|
+
value: l.subtotal,
|
|
80
|
+
currency: 'USD',
|
|
81
|
+
items: [(0, plans_1.item)(plan, interval, seats)],
|
|
82
|
+
});
|
|
83
|
+
track?.('checkout_started', {
|
|
84
|
+
plan,
|
|
85
|
+
interval,
|
|
86
|
+
seats: l.seats,
|
|
87
|
+
value: l.subtotal,
|
|
88
|
+
currency: 'USD',
|
|
89
|
+
items: [(0, plans_1.item)(plan, interval, seats)],
|
|
90
|
+
});
|
|
65
91
|
// Once per mount.
|
|
66
92
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
67
93
|
}, []);
|
|
@@ -69,7 +95,7 @@ function CheckoutForm({ site = 'Hanzo', api = api_1.API, org, token: propToken,
|
|
|
69
95
|
let live = true;
|
|
70
96
|
(0, api_1.call)(api, '/v1/billing/settings', { headers: scope }, token)
|
|
71
97
|
.then((s) => live && setSettings(s))
|
|
72
|
-
.catch((e) => live && setWrong(e instanceof Error ? e.message : 'Payments are not available right now.'));
|
|
98
|
+
.catch((e) => live && setWrong(e instanceof Error ? e.message : t('Payments are not available right now.')));
|
|
73
99
|
return () => {
|
|
74
100
|
live = false;
|
|
75
101
|
};
|
|
@@ -99,7 +125,7 @@ function CheckoutForm({ site = 'Hanzo', api = api_1.API, org, token: propToken,
|
|
|
99
125
|
}
|
|
100
126
|
catch (e) {
|
|
101
127
|
if (!cancelled)
|
|
102
|
-
setWrong(e instanceof Error ? e.message : 'The card form did not load.');
|
|
128
|
+
setWrong(e instanceof Error ? e.message : t('The card form did not load.'));
|
|
103
129
|
}
|
|
104
130
|
})();
|
|
105
131
|
return () => {
|
|
@@ -112,7 +138,14 @@ function CheckoutForm({ site = 'Hanzo', api = api_1.API, org, token: propToken,
|
|
|
112
138
|
};
|
|
113
139
|
}, [settings]);
|
|
114
140
|
const fail = (0, react_1.useCallback)((reason, say) => {
|
|
115
|
-
track?.('checkout_failed', {
|
|
141
|
+
track?.('checkout_failed', {
|
|
142
|
+
reason,
|
|
143
|
+
plan,
|
|
144
|
+
interval,
|
|
145
|
+
seats: l.seats,
|
|
146
|
+
value: l.subtotal,
|
|
147
|
+
currency: 'USD',
|
|
148
|
+
});
|
|
116
149
|
setWrong(say);
|
|
117
150
|
setBusy(false);
|
|
118
151
|
}, [track, plan, interval, l.seats, l.subtotal]);
|
|
@@ -122,11 +155,11 @@ function CheckoutForm({ site = 'Hanzo', api = api_1.API, org, token: propToken,
|
|
|
122
155
|
if (busy || !ready || !card.current)
|
|
123
156
|
return;
|
|
124
157
|
if (!agree) {
|
|
125
|
-
setWrong('Please agree to recurring charges to continue.');
|
|
158
|
+
setWrong(t('Please agree to recurring charges to continue.'));
|
|
126
159
|
return;
|
|
127
160
|
}
|
|
128
161
|
if (!form.name.trim() || !form.address.trim()) {
|
|
129
|
-
setWrong('Enter your full name and address.');
|
|
162
|
+
setWrong(t('Enter your full name and address.'));
|
|
130
163
|
return;
|
|
131
164
|
}
|
|
132
165
|
setBusy(true);
|
|
@@ -142,7 +175,7 @@ function CheckoutForm({ site = 'Hanzo', api = api_1.API, org, token: propToken,
|
|
|
142
175
|
const cents = Math.round((0, plans_1.period)(plan, interval) * 100);
|
|
143
176
|
const listed = interval === 'annual' ? row?.annualTotal : row?.price;
|
|
144
177
|
if (!row || listed !== cents) {
|
|
145
|
-
fail('catalog', 'This plan’s price is being updated, so we have not charged you. Please try again shortly.');
|
|
178
|
+
fail('catalog', `${t('This plan’s price is being updated, so we have not charged you.')} ${t('Please try again shortly.')}`);
|
|
146
179
|
return;
|
|
147
180
|
}
|
|
148
181
|
let result = await card.current.tokenize();
|
|
@@ -152,36 +185,86 @@ function CheckoutForm({ site = 'Hanzo', api = api_1.API, org, token: propToken,
|
|
|
152
185
|
}
|
|
153
186
|
if (result.status !== 'OK' || !result.token) {
|
|
154
187
|
(0, attempt_1.settle)(sale);
|
|
155
|
-
fail('card', result.errors?.[0]?.message ?? 'The card could not be read. Check the details and try again.');
|
|
188
|
+
fail('card', result.errors?.[0]?.message ?? `${t('The card could not be read.')} ${t('Check the details and try again.')}`);
|
|
156
189
|
return;
|
|
157
190
|
}
|
|
158
|
-
track?.('payment_info_added', {
|
|
191
|
+
track?.('payment_info_added', {
|
|
192
|
+
plan,
|
|
193
|
+
interval,
|
|
194
|
+
seats: l.seats,
|
|
195
|
+
value: l.subtotal,
|
|
196
|
+
currency: 'USD',
|
|
197
|
+
items: [(0, plans_1.item)(plan, interval, seats)],
|
|
198
|
+
});
|
|
159
199
|
const paid = await (0, api_1.call)(api, '/v1/billing/subscribe/card', {
|
|
160
200
|
method: 'POST',
|
|
161
201
|
headers: { ...scope, 'X-Idempotency-Key': (0, attempt_1.keyFor)(sale) },
|
|
162
202
|
// The visitor's choice rides the sale: cloud sends the sale to an ad platform only under it.
|
|
163
|
-
body: JSON.stringify({
|
|
203
|
+
body: JSON.stringify({
|
|
204
|
+
sourceId: result.token,
|
|
205
|
+
planId: plans_1.SLUG[plan],
|
|
206
|
+
quantity: l.seats,
|
|
207
|
+
consent: (0, event_1.renderConsent)((0, event_1.readConsent)()),
|
|
208
|
+
...(interval === 'annual' ? { interval: 'year' } : {}),
|
|
209
|
+
}),
|
|
164
210
|
}, token);
|
|
165
211
|
(0, attempt_1.settle)(sale);
|
|
166
|
-
track?.('order_completed', {
|
|
212
|
+
track?.('order_completed', {
|
|
213
|
+
...(paid.eventId ? { event_id: paid.eventId } : {}),
|
|
214
|
+
order_id: paid.invoiceId || paid.subscriptionId,
|
|
215
|
+
plan,
|
|
216
|
+
interval,
|
|
217
|
+
seats: l.seats,
|
|
218
|
+
value: l.subtotal,
|
|
219
|
+
currency: 'USD',
|
|
220
|
+
items: [(0, plans_1.item)(plan, interval, seats)],
|
|
221
|
+
});
|
|
167
222
|
onPaid({ orderId: paid.invoiceId || paid.subscriptionId });
|
|
168
223
|
}
|
|
169
224
|
catch (err) {
|
|
170
225
|
(0, attempt_1.settle)(sale);
|
|
171
|
-
fail('declined', err instanceof Error ? err.message : 'We could not confirm the payment. Check Billing before you try again.');
|
|
226
|
+
fail('declined', err instanceof Error ? err.message : `${t('We could not confirm the payment.')} ${t('Check Billing before you try again.')}`);
|
|
172
227
|
}
|
|
173
228
|
}
|
|
174
|
-
const
|
|
175
|
-
const
|
|
176
|
-
const
|
|
177
|
-
|
|
178
|
-
|
|
229
|
+
const annual = interval === 'annual';
|
|
230
|
+
const team = o.category === 'team';
|
|
231
|
+
const label = team ? (plan === 'team_premium' ? t('{n} premium seats', { n: l.seats }) : t('{n} standard seats', { n: l.seats })) : o.name;
|
|
232
|
+
const charged = (0, plans_1.usd)(l.subtotal);
|
|
233
|
+
const seat = (0, plans_1.usd)((0, plans_1.unit)(plan, interval));
|
|
234
|
+
const terms = ((0, jsx_runtime_1.jsx)(layout_1.Anchor, { href: termsPath, color: "$ink", textDecorationLine: "underline", children: t('terms') }));
|
|
235
|
+
return ((0, jsx_runtime_1.jsx)(frame_1.Page, { site: site, title: t('Configure your plan'), back: back, width: 1000, start: true, children: (0, jsx_runtime_1.jsxs)(layout_1.XStack, { render: (0, jsx_runtime_1.jsx)("form", { onSubmit: submit, noValidate: true }), flexWrap: "wrap", gap: "$7", items: "flex-start", width: "100%", children: [(0, jsx_runtime_1.jsxs)(layout_1.YStack, { flex: 1, flexBasis: 360, minW: 0, gap: "$4", children: [setPlan && plan.startsWith('max') ? ((0, jsx_runtime_1.jsxs)(layout_1.YStack, { gap: "$3", width: "100%", children: [(0, jsx_runtime_1.jsxs)(layout_1.XStack, { justify: "space-between", items: "center", width: "100%", children: [(0, jsx_runtime_1.jsx)(layout_1.Heading, { render: "h2", size: "$4", fontWeight: "600", color: "$ink", m: 0, children: t('Plan') }), (0, jsx_runtime_1.jsx)(frame_1.IntervalToggle, { interval: interval, onChange: (i) => {
|
|
236
|
+
track?.('plan_changed', {
|
|
237
|
+
from: interval,
|
|
238
|
+
to: i,
|
|
239
|
+
field: 'interval',
|
|
240
|
+
plan,
|
|
241
|
+
});
|
|
179
242
|
setInterval(i);
|
|
180
|
-
}, name: o.name, save: (0, plans_1.saving)(plan) })] }), (0, jsx_runtime_1.jsx)(choice_1.ChoiceGroup, { label:
|
|
181
|
-
track?.('plan_changed', { from: plan, to:
|
|
182
|
-
setPlan(
|
|
183
|
-
}, flex: 1, flexBasis: 200, children: [(0, jsx_runtime_1.jsxs)(layout_1.XStack, { justify: "space-between", items: "center", width: "100%", children: [(0, jsx_runtime_1.jsx)(
|
|
184
|
-
track?.('plan_changed', {
|
|
243
|
+
}, name: o.name, save: (0, plans_1.saving)(plan) })] }), (0, jsx_runtime_1.jsx)(choice_1.ChoiceGroup, { label: t('Plan'), flexWrap: "wrap", children: ['max_5x', 'max_20x'].map((tier) => ((0, jsx_runtime_1.jsxs)(choice_1.ChoiceCard, { selected: plan === tier, onSelect: () => {
|
|
244
|
+
track?.('plan_changed', { from: plan, to: tier, field: 'plan' });
|
|
245
|
+
setPlan(tier);
|
|
246
|
+
}, flex: 1, flexBasis: 200, children: [(0, jsx_runtime_1.jsxs)(layout_1.XStack, { justify: "space-between", items: "center", width: "100%", children: [(0, jsx_runtime_1.jsx)(layout_1.SizableText, { size: "$3", fontWeight: "600", color: "$ink", children: (0, plans_1.offer)(tier).name }), (0, jsx_runtime_1.jsx)(choice_1.RadioCircle, { selected: plan === tier })] }), (0, jsx_runtime_1.jsx)(layout_1.SizableText, { size: "$2", color: "$ink", children: annual ? t('{price}/month · billed yearly', { price: (0, plans_1.money)((0, plans_1.unit)(tier, interval)) }) : t('{price}/month', { price: (0, plans_1.money)((0, plans_1.unit)(tier, interval)) }) })] }, tier))) })] })) : ((0, jsx_runtime_1.jsx)(screens_1.IntervalChoice, { save: (0, plans_1.saving)(plan), interval: interval, setInterval: (i) => {
|
|
247
|
+
track?.('plan_changed', {
|
|
248
|
+
from: interval,
|
|
249
|
+
to: i,
|
|
250
|
+
field: 'interval',
|
|
251
|
+
plan,
|
|
252
|
+
});
|
|
185
253
|
setInterval(i);
|
|
186
|
-
}, price: (i) =>
|
|
254
|
+
}, price: (i) => {
|
|
255
|
+
const price = (0, plans_1.usd)((0, plans_1.lines)(plan, i, seats).subtotal);
|
|
256
|
+
return i === 'annual' ? t('{price} / year · billed yearly', { price }) : t('{price} / month', { price });
|
|
257
|
+
} })), (0, jsx_runtime_1.jsx)(layout_1.Heading, { render: "h2", size: "$4", fontWeight: "600", color: "$ink", mt: "$4", m: 0, children: t('Billing information') }), (0, jsx_runtime_1.jsxs)(field_1.Field, { gap: "$2", children: [(0, jsx_runtime_1.jsx)(field_1.FieldLabel, { htmlFor: "hanzo-bill-name", children: t('Full name') }), (0, jsx_runtime_1.jsx)(input_1.Input, { id: "hanzo-bill-name", name: "name", autoComplete: "name", value: form.name, onChangeText: (v) => setForm((f) => ({ ...f, name: v })) })] }), (0, jsx_runtime_1.jsxs)(field_1.Field, { gap: "$2", children: [(0, jsx_runtime_1.jsx)(field_1.FieldLabel, { htmlFor: "hanzo-bill-country", children: t('Country or region') }), (0, jsx_runtime_1.jsxs)(select_1.Select, { value: form.country, onValueChange: (v) => setForm((f) => ({ ...f, country: v })), children: [(0, jsx_runtime_1.jsx)(select_1.SelectTrigger, { id: "hanzo-bill-country", "aria-label": t('Country or region'), children: (0, jsx_runtime_1.jsx)(select_1.SelectValue, {}) }), (0, jsx_runtime_1.jsx)(select_1.SelectContent, { children: COUNTRIES.map(([c, n]) => ((0, jsx_runtime_1.jsx)(select_1.SelectItem, { value: c, children: t(n) }, c))) })] })] }), (0, jsx_runtime_1.jsxs)(field_1.Field, { gap: "$2", children: [(0, jsx_runtime_1.jsx)(field_1.FieldLabel, { htmlFor: "hanzo-bill-address", children: t('Address') }), (0, jsx_runtime_1.jsx)(input_1.Input, { id: "hanzo-bill-address", name: "address", autoComplete: "street-address", value: form.address, onChangeText: (v) => setForm((f) => ({ ...f, address: v })) })] }), (0, jsx_runtime_1.jsxs)(field_1.Field, { gap: "$2", children: [(0, jsx_runtime_1.jsx)(field_1.FieldLabel, { htmlFor: "hanzo-bill-invoice", children: t('Use a different name on invoices (optional)') }), (0, jsx_runtime_1.jsx)(input_1.Input, { id: "hanzo-bill-invoice", name: "invoice", value: form.invoice, onChangeText: (v) => setForm((f) => ({ ...f, invoice: v })) })] }), (0, jsx_runtime_1.jsx)(layout_1.Heading, { render: "h2", size: "$4", fontWeight: "600", color: "$ink", mt: "$4", m: 0, children: t('Payment method') }), (0, jsx_runtime_1.jsx)(layout_1.YStack, { id: "hanzo-square", "aria-label": t('Card details'), minH: 90 }), !ready && !wrong ? ((0, jsx_runtime_1.jsx)(layout_1.Paragraph, { size: "$1", color: "$quiet", m: 0, children: t('Loading the card form…') })) : null] }), (0, jsx_runtime_1.jsx)(layout_1.YStack, { flex: 1, flexBasis: 360, minW: 0, children: (0, jsx_runtime_1.jsxs)(frame_1.Panel, { label: t('Order summary'), children: [(0, jsx_runtime_1.jsx)(layout_1.Heading, { render: "h2", size: "$5", fontWeight: "600", color: "$ink", m: 0, children: team ? t('Team plan') : t('{plan} plan', { plan: o.name }) }), (0, jsx_runtime_1.jsx)(frame_1.Line, { muted: true, label: annual ? t('{item} annual', { item: label }) : t('{item} monthly', { item: label }), value: charged }), (0, jsx_runtime_1.jsx)(frame_1.Line, { muted: true, label: t('Subtotal'), value: charged }), (0, jsx_runtime_1.jsx)(frame_1.Line, { muted: true, label: t('Tax'), value: t('Calculated at payment') }), (0, jsx_runtime_1.jsx)(frame_1.Line, { strong: true, label: t('Total due today'), value: charged }), (0, jsx_runtime_1.jsx)(layout_1.Paragraph, { size: "$2", color: "$ink", m: 0, p: "$3", borderWidth: 1, borderColor: "$borderColor", rounded: "$3", children: [
|
|
258
|
+
t('Your subscription will auto-renew on {date}.', { date: renews(interval) }),
|
|
259
|
+
team
|
|
260
|
+
? annual
|
|
261
|
+
? t('You will be charged {price}/year ({n} seats × {seat}/seat/month, billed yearly).', { price: charged, n: l.seats, seat })
|
|
262
|
+
: t('You will be charged {price}/month ({n} seats × {seat}/seat/month).', { price: charged, n: l.seats, seat })
|
|
263
|
+
: annual
|
|
264
|
+
? t('You will be charged {price}/year.', { price: charged })
|
|
265
|
+
: t('You will be charged {price}/month.', { price: charged }),
|
|
266
|
+
t('Cancel any time in Settings → Billing.'),
|
|
267
|
+
].join(' ') }), (0, jsx_runtime_1.jsxs)(layout_1.XStack, { items: "flex-start", gap: "$3", children: [(0, jsx_runtime_1.jsx)(checkbox_1.Checkbox, { id: "hanzo-consent", checked: agree, onCheckedChange: (v) => setAgree(v === true), mt: "$1", "aria-label": t('Agree to recurring charges') }), (0, jsx_runtime_1.jsxs)(layout_1.Paragraph, { render: "label", htmlFor: "hanzo-consent", size: "$2", color: "$ink", flex: 1, m: 0, children: [annual
|
|
268
|
+
? t('You agree that {site} will charge your card in the amount above now and on a recurring yearly basis until you cancel in accordance with our {terms}.', { site, terms })
|
|
269
|
+
: t('You agree that {site} will charge your card in the amount above now and on a recurring monthly basis until you cancel in accordance with our {terms}.', { site, terms }), ` ${t('You can cancel at any time in your account settings.')}`] })] }), wrong ? (0, jsx_runtime_1.jsx)(field_1.FieldError, { children: t(wrong) }) : null, (0, jsx_runtime_1.jsx)(screens_1.Primary, { type: "button", disabled: !ready || busy, onClick: () => void submit(), onPress: () => void submit(), children: busy ? t('One moment…') : t('Subscribe') })] }) })] }) }));
|
|
187
270
|
}
|
|
@@ -9,6 +9,9 @@ import { type Interval, type PlanId } from './plans.js';
|
|
|
9
9
|
* Before it charges, it reads the catalog and refuses if the catalog's price is
|
|
10
10
|
* not the one on screen, so a person is never billed a different amount than the
|
|
11
11
|
* one they agreed to.
|
|
12
|
+
*
|
|
13
|
+
* Its words are the reader's language (@hanzo/i18n `t`); amounts and the renewal
|
|
14
|
+
* date are formatted as before, and the events it sends stay in English.
|
|
12
15
|
*/
|
|
13
16
|
export interface CheckoutProps {
|
|
14
17
|
site?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Checkout.d.ts","sourceRoot":"","sources":["../../src/onboarding/Checkout.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Checkout.d.ts","sourceRoot":"","sources":["../../src/onboarding/Checkout.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAA8D,KAAK,QAAQ,EAAE,KAAK,MAAM,EAAE,MAAM,SAAS,CAAA;AAGhH;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,qEAAqE;IACrE,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,QAAQ,CAAA;IAClB,WAAW,EAAE,CAAC,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAA;IAClC,8FAA8F;IAC9F,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IAC7B,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,IAAI,CAAC,EAAE,MAAM,IAAI,CAAA;IACjB,MAAM,EAAE,CAAC,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CACzC;AA6BD,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,+BAM5C"}
|