@k2b/ui 0.1.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/actions/Button.js +11 -2
- package/dist/browser/actions/Button.js.map +1 -1
- package/dist/browser/actions/Disclosure.js +11 -8
- package/dist/browser/actions/Disclosure.js.map +1 -1
- package/dist/browser/actions/Dropdown.js +10 -4
- package/dist/browser/actions/Dropdown.js.map +1 -1
- package/dist/browser/actions/FilterChip.js +16 -2
- package/dist/browser/actions/FilterChip.js.map +1 -1
- package/dist/browser/actions/SplitButton.js +69 -22
- package/dist/browser/actions/SplitButton.js.map +1 -1
- package/dist/browser/actions/SpotlightSearch.js +3 -7
- package/dist/browser/actions/SpotlightSearch.js.map +1 -1
- package/dist/browser/actions/Tabs.js +132 -47
- package/dist/browser/actions/Tabs.js.map +1 -1
- package/dist/browser/actions/index.js +1 -1
- package/dist/browser/actions/index.js.map +1 -1
- package/dist/browser/chat/ChatComposer.js +751 -423
- package/dist/browser/chat/ChatComposer.js.map +1 -1
- package/dist/browser/chat/ChatContextPopup.js +123 -0
- package/dist/browser/chat/ChatContextPopup.js.map +1 -0
- package/dist/browser/chat/ChatPrimitives.js +143 -77
- package/dist/browser/chat/ChatPrimitives.js.map +1 -1
- package/dist/browser/chat/ChatTasks.js +112 -0
- package/dist/browser/chat/ChatTasks.js.map +1 -0
- package/dist/browser/chat/ChatTimeline.js +34 -15
- package/dist/browser/chat/ChatTimeline.js.map +1 -1
- package/dist/browser/chat/chat-behavior.js +0 -5
- package/dist/browser/chat/chat-behavior.js.map +1 -1
- package/dist/browser/chat/composer-document.js +55 -0
- package/dist/browser/chat/composer-document.js.map +1 -0
- package/dist/browser/chat/index.js +6 -1
- package/dist/browser/chat/index.js.map +1 -1
- package/dist/browser/chat/types.js.map +1 -1
- package/dist/browser/content/Chart.js +148 -239
- package/dist/browser/content/Chart.js.map +1 -1
- package/dist/browser/content/ChartExplorer.js +324 -0
- package/dist/browser/content/ChartExplorer.js.map +1 -0
- package/dist/browser/content/ChartExplorerControls.js +153 -0
- package/dist/browser/content/ChartExplorerControls.js.map +1 -0
- package/dist/browser/content/ChartFilterControls.js +200 -0
- package/dist/browser/content/ChartFilterControls.js.map +1 -0
- package/dist/browser/content/ChartSnapshotView.js +113 -0
- package/dist/browser/content/ChartSnapshotView.js.map +1 -0
- package/dist/browser/content/DataTable.js +48 -32
- package/dist/browser/content/DataTable.js.map +1 -1
- package/dist/browser/content/FileBrowser.js +3 -0
- package/dist/browser/content/FileBrowser.js.map +1 -1
- package/dist/browser/content/FileGrid.js +93 -0
- package/dist/browser/content/FileGrid.js.map +1 -0
- package/dist/browser/content/FileTree.js +2 -2
- package/dist/browser/content/FileTree.js.map +1 -1
- package/dist/browser/content/FileView.js +507 -162
- package/dist/browser/content/FileView.js.map +1 -1
- package/dist/browser/content/MarkdownView.js +20 -3
- package/dist/browser/content/MarkdownView.js.map +1 -1
- package/dist/browser/content/PdfPreview.js +107 -90
- package/dist/browser/content/PdfPreview.js.map +1 -1
- package/dist/browser/content/chart-cursor.js +33 -0
- package/dist/browser/content/chart-cursor.js.map +1 -0
- package/dist/browser/content/chart-explorer.js +147 -0
- package/dist/browser/content/chart-explorer.js.map +1 -0
- package/dist/browser/content/chart-inspection.js +447 -0
- package/dist/browser/content/chart-inspection.js.map +1 -0
- package/dist/browser/content/chart-line-gaps.js +53 -0
- package/dist/browser/content/chart-line-gaps.js.map +1 -0
- package/dist/browser/content/chart-map-viewport.js +5 -1
- package/dist/browser/content/chart-map-viewport.js.map +1 -1
- package/dist/browser/content/chart-snapshot.js +63 -0
- package/dist/browser/content/chart-snapshot.js.map +1 -0
- package/dist/browser/content/chart-state-timeline.js +32 -4
- package/dist/browser/content/chart-state-timeline.js.map +1 -1
- package/dist/browser/content/chart-svg.js +54 -0
- package/dist/browser/content/chart-svg.js.map +1 -0
- package/dist/browser/content/collection-selection.js +109 -0
- package/dist/browser/content/collection-selection.js.map +1 -0
- package/dist/browser/content/delimited-preferences.js +21 -0
- package/dist/browser/content/delimited-preferences.js.map +1 -0
- package/dist/browser/content/file-tree.js.map +1 -1
- package/dist/browser/content/file-view-preview.js +11 -7
- package/dist/browser/content/file-view-preview.js.map +1 -1
- package/dist/browser/content/index.js +9 -0
- package/dist/browser/content/index.js.map +1 -1
- package/dist/browser/feedback/InlineGuidance.js +17 -3
- package/dist/browser/feedback/InlineGuidance.js.map +1 -1
- package/dist/browser/feedback/Tooltip.js +6 -2
- package/dist/browser/feedback/Tooltip.js.map +1 -1
- package/dist/browser/feedback/dialog-core.js +102 -9
- package/dist/browser/feedback/dialog-core.js.map +1 -1
- package/dist/browser/feedback/prompts.js +6 -0
- package/dist/browser/feedback/prompts.js.map +1 -1
- package/dist/browser/feedback/toast.js +29 -6
- package/dist/browser/feedback/toast.js.map +1 -1
- package/dist/browser/feedback/tooltip-position.js +15 -0
- package/dist/browser/feedback/tooltip-position.js.map +1 -1
- package/dist/browser/inputs/ChoiceInputs.js +47 -38
- package/dist/browser/inputs/ChoiceInputs.js.map +1 -1
- package/dist/browser/inputs/SelectChip.js +3 -2
- package/dist/browser/inputs/SelectChip.js.map +1 -1
- package/dist/browser/inputs/TextInput.js +7 -1
- package/dist/browser/inputs/TextInput.js.map +1 -1
- package/dist/browser/inputs/markdown/MarkdownEditor.js +61 -37
- package/dist/browser/inputs/markdown/MarkdownEditor.js.map +1 -1
- package/dist/browser/internal/portal.js +1 -1
- package/dist/browser/internal/portal.js.map +1 -1
- package/dist/browser/intl/Format.js +89 -16
- package/dist/browser/intl/Format.js.map +1 -1
- package/dist/browser/intl/index.js.map +1 -1
- package/dist/browser/intl/messages.js +130 -2
- package/dist/browser/intl/messages.js.map +1 -1
- package/dist/browser/layout/AppWorkspace.js +712 -624
- package/dist/browser/layout/AppWorkspace.js.map +1 -1
- package/dist/browser/layout/BottomSheet.js +95 -0
- package/dist/browser/layout/BottomSheet.js.map +1 -0
- package/dist/browser/layout/DetailPanel.js +232 -107
- package/dist/browser/layout/DetailPanel.js.map +1 -1
- package/dist/browser/layout/Navigation.js +278 -0
- package/dist/browser/layout/Navigation.js.map +1 -0
- package/dist/browser/layout/PanelDialog.js +229 -72
- package/dist/browser/layout/PanelDialog.js.map +1 -1
- package/dist/browser/layout/ScrollArea.js +21 -1
- package/dist/browser/layout/ScrollArea.js.map +1 -1
- package/dist/browser/layout/Settings.js.map +1 -1
- package/dist/browser/layout/SidebarItemPreview.js +183 -0
- package/dist/browser/layout/SidebarItemPreview.js.map +1 -0
- package/dist/browser/layout/app-workspace-controller.js +3 -0
- package/dist/browser/layout/app-workspace-controller.js.map +1 -1
- package/dist/browser/layout/index.js +3 -0
- package/dist/browser/layout/index.js.map +1 -1
- package/dist/browser/layout/navigation-model.js +23 -0
- package/dist/browser/layout/navigation-model.js.map +1 -0
- package/dist/browser/layout/scroll-fade.js +100 -0
- package/dist/browser/layout/scroll-fade.js.map +1 -0
- package/dist/browser/surfaces/DescriptionList.js.map +1 -1
- package/dist/browser/surfaces/StatusBadge.js +2 -1
- package/dist/browser/surfaces/StatusBadge.js.map +1 -1
- package/dist/fonts/ibm-plex-mono-cyrillic-400-italic-4aded3f2f2a7d27d.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-400-normal-7635422bd10ddbbc.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-500-normal-1d89462e86cb8e87.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-600-normal-2b05a8695c7f9f4a.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-ext-400-italic-a0b3b8cbe5a516e7.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-ext-400-normal-f8c22ec1804bd696.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-ext-500-normal-3febe5c7f22e4b07.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-ext-600-normal-83109cdd4f8665b4.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-400-italic-0840095faae86403.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-400-normal-08949f728dc52d52.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-500-normal-01d285447409c8a5.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-600-normal-0d1f0b8d0722224e.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-ext-400-italic-1b07eee6df7d26b3.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-ext-400-normal-6bc0f226a5b7884a.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-ext-500-normal-6bb06407c97584b0.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-ext-600-normal-32057cf50dd14bdb.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-vietnamese-400-italic-a6bab38af4f9c761.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-vietnamese-400-normal-62632b6375305e70.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-vietnamese-500-normal-781633d95de88040.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-vietnamese-600-normal-51b74d53e106ba8a.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-400-italic-e8731a7e2b00fc4f.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-400-normal-69afad88a0740b6e.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-500-normal-200be3a2a6b1789f.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-600-normal-730becc6f005c18c.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-700-normal-40540598b4c9eb2c.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-ext-400-italic-4ffb25726a7ce4cc.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-ext-400-normal-e2580ad78906551e.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-ext-500-normal-08578d906af6d986.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-ext-600-normal-d60d3d0b182753d5.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-ext-700-normal-d07dd53642480097.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-greek-400-italic-1bc10b01688ba9fa.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-greek-400-normal-02296067bc904d2a.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-greek-500-normal-8cb6e20b4dbbaa5f.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-greek-600-normal-0a9ebd9019415ee9.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-greek-700-normal-c949641d10a3bebc.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-400-italic-6de912e531b6c980.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-400-normal-3b646991d30055a9.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-500-normal-0717336fb31fcdcd.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-600-normal-8960851d691c054e.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-700-normal-42e7b0c143c19df9.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-ext-400-italic-c5c00e8a32022dfe.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-ext-400-normal-c93d2a12aaa280f6.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-ext-500-normal-2846035d85100f84.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-ext-600-normal-b25dfd4f979e442a.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-ext-700-normal-92f0392bd74fa395.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-vietnamese-400-italic-675d4bace127bffb.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-vietnamese-400-normal-771538f7f26551bd.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-vietnamese-500-normal-85ba3d9c2488a813.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-vietnamese-600-normal-5d34b803637befe3.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-vietnamese-700-normal-b79d0c4b68b85007.woff2 +0 -0
- package/dist/plex.css +1 -1
- package/dist/ssr/actions/Button.js +11 -2
- package/dist/ssr/actions/Button.js.map +1 -1
- package/dist/ssr/actions/Disclosure.js +2 -2
- package/dist/ssr/actions/Disclosure.js.map +1 -1
- package/dist/ssr/actions/Dropdown.js +5 -2
- package/dist/ssr/actions/Dropdown.js.map +1 -1
- package/dist/ssr/actions/FilterChip.js +16 -2
- package/dist/ssr/actions/FilterChip.js.map +1 -1
- package/dist/ssr/actions/SplitButton.js +69 -22
- package/dist/ssr/actions/SplitButton.js.map +1 -1
- package/dist/ssr/actions/SpotlightSearch.js +3 -7
- package/dist/ssr/actions/SpotlightSearch.js.map +1 -1
- package/dist/ssr/actions/Tabs.js +58 -11
- package/dist/ssr/actions/Tabs.js.map +1 -1
- package/dist/ssr/actions/index.js +1 -1
- package/dist/ssr/actions/index.js.map +1 -1
- package/dist/ssr/chat/ChatComposer.js +366 -134
- package/dist/ssr/chat/ChatComposer.js.map +1 -1
- package/dist/ssr/chat/ChatContextPopup.js +86 -0
- package/dist/ssr/chat/ChatContextPopup.js.map +1 -0
- package/dist/ssr/chat/ChatPrimitives.js +50 -12
- package/dist/ssr/chat/ChatPrimitives.js.map +1 -1
- package/dist/ssr/chat/ChatTasks.js +48 -0
- package/dist/ssr/chat/ChatTasks.js.map +1 -0
- package/dist/ssr/chat/ChatTimeline.js +16 -4
- package/dist/ssr/chat/ChatTimeline.js.map +1 -1
- package/dist/ssr/chat/chat-behavior.js +0 -5
- package/dist/ssr/chat/chat-behavior.js.map +1 -1
- package/dist/ssr/chat/composer-document.js +55 -0
- package/dist/ssr/chat/composer-document.js.map +1 -0
- package/dist/ssr/chat/index.js +6 -1
- package/dist/ssr/chat/index.js.map +1 -1
- package/dist/ssr/chat/types.js.map +1 -1
- package/dist/ssr/content/Chart.js +121 -219
- package/dist/ssr/content/Chart.js.map +1 -1
- package/dist/ssr/content/ChartExplorer.js +257 -0
- package/dist/ssr/content/ChartExplorer.js.map +1 -0
- package/dist/ssr/content/ChartExplorerControls.js +105 -0
- package/dist/ssr/content/ChartExplorerControls.js.map +1 -0
- package/dist/ssr/content/ChartFilterControls.js +139 -0
- package/dist/ssr/content/ChartFilterControls.js.map +1 -0
- package/dist/ssr/content/ChartSnapshotView.js +57 -0
- package/dist/ssr/content/ChartSnapshotView.js.map +1 -0
- package/dist/ssr/content/DataTable.js +13 -9
- package/dist/ssr/content/DataTable.js.map +1 -1
- package/dist/ssr/content/FileBrowser.js +3 -0
- package/dist/ssr/content/FileBrowser.js.map +1 -1
- package/dist/ssr/content/FileGrid.js +38 -0
- package/dist/ssr/content/FileGrid.js.map +1 -0
- package/dist/ssr/content/FileTree.js +2 -2
- package/dist/ssr/content/FileTree.js.map +1 -1
- package/dist/ssr/content/FileView.js +352 -75
- package/dist/ssr/content/FileView.js.map +1 -1
- package/dist/ssr/content/MarkdownView.js +20 -3
- package/dist/ssr/content/MarkdownView.js.map +1 -1
- package/dist/ssr/content/PdfPreview.js +37 -24
- package/dist/ssr/content/PdfPreview.js.map +1 -1
- package/dist/ssr/content/chart-cursor.js +33 -0
- package/dist/ssr/content/chart-cursor.js.map +1 -0
- package/dist/ssr/content/chart-explorer.js +147 -0
- package/dist/ssr/content/chart-explorer.js.map +1 -0
- package/dist/ssr/content/chart-inspection.js +447 -0
- package/dist/ssr/content/chart-inspection.js.map +1 -0
- package/dist/ssr/content/chart-line-gaps.js +53 -0
- package/dist/ssr/content/chart-line-gaps.js.map +1 -0
- package/dist/ssr/content/chart-map-viewport.js +5 -1
- package/dist/ssr/content/chart-map-viewport.js.map +1 -1
- package/dist/ssr/content/chart-snapshot.js +63 -0
- package/dist/ssr/content/chart-snapshot.js.map +1 -0
- package/dist/ssr/content/chart-state-timeline.js +32 -4
- package/dist/ssr/content/chart-state-timeline.js.map +1 -1
- package/dist/ssr/content/chart-svg.js +54 -0
- package/dist/ssr/content/chart-svg.js.map +1 -0
- package/dist/ssr/content/collection-selection.js +109 -0
- package/dist/ssr/content/collection-selection.js.map +1 -0
- package/dist/ssr/content/delimited-preferences.js +21 -0
- package/dist/ssr/content/delimited-preferences.js.map +1 -0
- package/dist/ssr/content/file-tree.js.map +1 -1
- package/dist/ssr/content/file-view-preview.js +11 -7
- package/dist/ssr/content/file-view-preview.js.map +1 -1
- package/dist/ssr/content/index.js +9 -0
- package/dist/ssr/content/index.js.map +1 -1
- package/dist/ssr/feedback/InlineGuidance.js +17 -3
- package/dist/ssr/feedback/InlineGuidance.js.map +1 -1
- package/dist/ssr/feedback/Tooltip.js +6 -4
- package/dist/ssr/feedback/Tooltip.js.map +1 -1
- package/dist/ssr/feedback/dialog-core.js +102 -9
- package/dist/ssr/feedback/dialog-core.js.map +1 -1
- package/dist/ssr/feedback/prompts.js +6 -0
- package/dist/ssr/feedback/prompts.js.map +1 -1
- package/dist/ssr/feedback/toast.js +29 -6
- package/dist/ssr/feedback/toast.js.map +1 -1
- package/dist/ssr/feedback/tooltip-position.js +15 -0
- package/dist/ssr/feedback/tooltip-position.js.map +1 -1
- package/dist/ssr/inputs/ChoiceInputs.js +9 -6
- package/dist/ssr/inputs/ChoiceInputs.js.map +1 -1
- package/dist/ssr/inputs/SelectChip.js +3 -3
- package/dist/ssr/inputs/SelectChip.js.map +1 -1
- package/dist/ssr/inputs/TextInput.js.map +1 -1
- package/dist/ssr/inputs/markdown/MarkdownEditor.js +19 -11
- package/dist/ssr/inputs/markdown/MarkdownEditor.js.map +1 -1
- package/dist/ssr/internal/portal.js +1 -1
- package/dist/ssr/internal/portal.js.map +1 -1
- package/dist/ssr/intl/Format.js +61 -0
- package/dist/ssr/intl/Format.js.map +1 -1
- package/dist/ssr/intl/index.js.map +1 -1
- package/dist/ssr/intl/messages.js +130 -2
- package/dist/ssr/intl/messages.js.map +1 -1
- package/dist/ssr/layout/AppWorkspace.js +368 -275
- package/dist/ssr/layout/AppWorkspace.js.map +1 -1
- package/dist/ssr/layout/BottomSheet.js +43 -0
- package/dist/ssr/layout/BottomSheet.js.map +1 -0
- package/dist/ssr/layout/DetailPanel.js +95 -17
- package/dist/ssr/layout/DetailPanel.js.map +1 -1
- package/dist/ssr/layout/Navigation.js +181 -0
- package/dist/ssr/layout/Navigation.js.map +1 -0
- package/dist/ssr/layout/PanelDialog.js +112 -27
- package/dist/ssr/layout/PanelDialog.js.map +1 -1
- package/dist/ssr/layout/ScrollArea.js +16 -1
- package/dist/ssr/layout/ScrollArea.js.map +1 -1
- package/dist/ssr/layout/Settings.js.map +1 -1
- package/dist/ssr/layout/SidebarItemPreview.js +133 -0
- package/dist/ssr/layout/SidebarItemPreview.js.map +1 -0
- package/dist/ssr/layout/app-workspace-controller.js +3 -0
- package/dist/ssr/layout/app-workspace-controller.js.map +1 -1
- package/dist/ssr/layout/index.js +3 -0
- package/dist/ssr/layout/index.js.map +1 -1
- package/dist/ssr/layout/navigation-model.js +23 -0
- package/dist/ssr/layout/navigation-model.js.map +1 -0
- package/dist/ssr/layout/scroll-fade.js +100 -0
- package/dist/ssr/layout/scroll-fade.js.map +1 -0
- package/dist/ssr/surfaces/DescriptionList.js.map +1 -1
- package/dist/ssr/surfaces/StatusBadge.js +2 -1
- package/dist/ssr/surfaces/StatusBadge.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/tabler.css +1 -1
- package/dist/types/actions/Button.d.ts +4 -0
- package/dist/types/actions/Disclosure.d.ts +1 -0
- package/dist/types/actions/Dropdown.d.ts +3 -1
- package/dist/types/actions/FilterChip.d.ts +4 -0
- package/dist/types/actions/SplitButton.d.ts +6 -0
- package/dist/types/actions/SpotlightSearch.d.ts +0 -4
- package/dist/types/actions/Tabs.d.ts +4 -0
- package/dist/types/actions/index.d.ts +1 -1
- package/dist/types/chat/ChatComposer.d.ts +20 -2
- package/dist/types/chat/ChatContextPopup.d.ts +6 -0
- package/dist/types/chat/ChatPrimitives.d.ts +4 -0
- package/dist/types/chat/ChatTasks.d.ts +15 -0
- package/dist/types/chat/ChatTimeline.d.ts +2 -0
- package/dist/types/chat/chat-behavior.d.ts +0 -3
- package/dist/types/chat/composer-document.d.ts +14 -0
- package/dist/types/chat/index.d.ts +8 -1
- package/dist/types/chat/types.d.ts +9 -0
- package/dist/types/content/Chart.d.ts +42 -23
- package/dist/types/content/ChartExplorer.d.ts +34 -0
- package/dist/types/content/ChartExplorerControls.d.ts +10 -0
- package/dist/types/content/ChartFilterControls.d.ts +21 -0
- package/dist/types/content/ChartSnapshotView.d.ts +11 -0
- package/dist/types/content/DataTable.d.ts +4 -0
- package/dist/types/content/FileBrowser.d.ts +1 -0
- package/dist/types/content/FileGrid.d.ts +21 -0
- package/dist/types/content/FileView.d.ts +20 -0
- package/dist/types/content/MarkdownView.d.ts +6 -1
- package/dist/types/content/PdfPreview.d.ts +8 -1
- package/dist/types/content/chart-cursor.d.ts +15 -0
- package/dist/types/content/chart-explorer.d.ts +48 -0
- package/dist/types/content/chart-inspection.d.ts +40 -0
- package/dist/types/content/chart-line-gaps.d.ts +5 -0
- package/dist/types/content/chart-map-viewport.d.ts +1 -1
- package/dist/types/content/chart-snapshot.d.ts +26 -0
- package/dist/types/content/chart-svg.d.ts +21 -0
- package/dist/types/content/collection-selection.d.ts +24 -0
- package/dist/types/content/delimited-preferences.d.ts +11 -0
- package/dist/types/content/file-tree.d.ts +2 -0
- package/dist/types/content/file-view-preview.d.ts +4 -1
- package/dist/types/content/index.d.ts +15 -1
- package/dist/types/feedback/InlineGuidance.d.ts +1 -0
- package/dist/types/feedback/dialog-core.d.ts +13 -0
- package/dist/types/feedback/prompts.d.ts +2 -0
- package/dist/types/feedback/toast.d.ts +7 -1
- package/dist/types/feedback/tooltip-position.d.ts +1 -1
- package/dist/types/inputs/ChoiceInputs.d.ts +3 -0
- package/dist/types/inputs/markdown/MarkdownEditor.d.ts +5 -1
- package/dist/types/intl/Format.d.ts +9 -0
- package/dist/types/intl/index.d.ts +1 -1
- package/dist/types/intl/messages.d.ts +31 -1
- package/dist/types/layout/AppWorkspace.d.ts +35 -18
- package/dist/types/layout/BottomSheet.d.ts +23 -0
- package/dist/types/layout/DetailPanel.d.ts +7 -0
- package/dist/types/layout/Navigation.d.ts +8 -0
- package/dist/types/layout/PanelDialog.d.ts +14 -1
- package/dist/types/layout/ScrollArea.d.ts +4 -0
- package/dist/types/layout/Settings.d.ts +1 -1
- package/dist/types/layout/SidebarItemPreview.d.ts +11 -0
- package/dist/types/layout/index.d.ts +4 -1
- package/dist/types/layout/navigation-model.d.ts +48 -0
- package/dist/types/layout/scroll-fade.d.ts +3 -0
- package/dist/types/surfaces/DescriptionList.d.ts +1 -1
- package/dist/types/surfaces/StatusBadge.d.ts +1 -1
- package/package.json +8 -8
|
@@ -38,10 +38,11 @@ var _tmpl$ = /*#__PURE__*/_$template(`<span class=k2b-chat-progress-dots aria-hi
|
|
|
38
38
|
_tmpl$22 = /*#__PURE__*/_$template(`<div><div class=k2b-chat-activity__row>`),
|
|
39
39
|
_tmpl$23 = /*#__PURE__*/_$template(`<i class="ti ti-brain"aria-hidden=true>`),
|
|
40
40
|
_tmpl$24 = /*#__PURE__*/_$template(`<div><dt></dt><dd>`),
|
|
41
|
-
_tmpl$25 = /*#__PURE__*/_$template(`<div class=k2b-chat-context__tooltip><strong></strong><!$><!/><dl><!$><!/><div><dt></dt><dd></dd></div><div><dt></dt><dd></dd></div><!$><!/><div><dt></dt><dd></dd></div><!$><!/>`);
|
|
41
|
+
_tmpl$25 = /*#__PURE__*/_$template(`<div class=k2b-chat-context__tooltip><strong></strong><!$><!/><dl><!$><!/><div><dt></dt><dd></dd></div><div><dt></dt><dd></dd></div><!$><!/><div><dt></dt><dd></dd></div><!$><!/></dl><!$><!/>`);
|
|
42
42
|
import { createSignal, For, onCleanup, Show } from "solid-js";
|
|
43
43
|
import { Dropdown } from "../actions/Dropdown";
|
|
44
|
-
import {
|
|
44
|
+
import { ChatContextPopup } from "./ChatContextPopup";
|
|
45
|
+
import { Button } from "../actions/Button";
|
|
45
46
|
import { useUiMessages } from "../intl/messages";
|
|
46
47
|
import { ProgressBar } from "../surfaces/ProgressBar";
|
|
47
48
|
import { executeChatAction } from "./chat-behavior";
|
|
@@ -198,7 +199,16 @@ export function ChatMessage(props) {
|
|
|
198
199
|
return (() => {
|
|
199
200
|
var _el$29 = _$getNextElement(_tmpl$10);
|
|
200
201
|
_$insert(_el$29, content);
|
|
201
|
-
_$effect(
|
|
202
|
+
_$effect(_p$ => {
|
|
203
|
+
var _v$8 = attachment.kind,
|
|
204
|
+
_v$9 = attachment.name;
|
|
205
|
+
_v$8 !== _p$.e && _$setAttribute(_el$29, "data-kind", _p$.e = _v$8);
|
|
206
|
+
_v$9 !== _p$.t && _$setAttribute(_el$29, "title", _p$.t = _v$9);
|
|
207
|
+
return _p$;
|
|
208
|
+
}, {
|
|
209
|
+
e: undefined,
|
|
210
|
+
t: undefined
|
|
211
|
+
});
|
|
202
212
|
return _el$29;
|
|
203
213
|
})();
|
|
204
214
|
},
|
|
@@ -206,19 +216,22 @@ export function ChatMessage(props) {
|
|
|
206
216
|
var _el$30 = _$getNextElement(_tmpl$11);
|
|
207
217
|
_$insert(_el$30, content);
|
|
208
218
|
_$effect(_p$ => {
|
|
209
|
-
var _v$
|
|
210
|
-
_v$
|
|
211
|
-
_v$
|
|
219
|
+
var _v$0 = attachment.kind,
|
|
220
|
+
_v$1 = attachment.name,
|
|
221
|
+
_v$10 = href(),
|
|
222
|
+
_v$11 = messages().openInNewTab({
|
|
212
223
|
name: attachment.name
|
|
213
224
|
});
|
|
214
|
-
_v$
|
|
215
|
-
_v$
|
|
216
|
-
_v$
|
|
225
|
+
_v$0 !== _p$.e && _$setAttribute(_el$30, "data-kind", _p$.e = _v$0);
|
|
226
|
+
_v$1 !== _p$.t && _$setAttribute(_el$30, "title", _p$.t = _v$1);
|
|
227
|
+
_v$10 !== _p$.a && _$setAttribute(_el$30, "href", _p$.a = _v$10);
|
|
228
|
+
_v$11 !== _p$.o && _$setAttribute(_el$30, "aria-label", _p$.o = _v$11);
|
|
217
229
|
return _p$;
|
|
218
230
|
}, {
|
|
219
231
|
e: undefined,
|
|
220
232
|
t: undefined,
|
|
221
|
-
a: undefined
|
|
233
|
+
a: undefined,
|
|
234
|
+
o: undefined
|
|
222
235
|
});
|
|
223
236
|
return _el$30;
|
|
224
237
|
})()
|
|
@@ -270,10 +283,10 @@ export function ChatMessage(props) {
|
|
|
270
283
|
[_el$34, _co$9] = _$getNextMarker(_el$33.nextSibling);
|
|
271
284
|
_$insert(_el$31, label, _el$34, _co$9);
|
|
272
285
|
_$effect(_p$ => {
|
|
273
|
-
var _v$
|
|
274
|
-
_v$
|
|
275
|
-
_v$
|
|
276
|
-
_v$
|
|
286
|
+
var _v$12 = props.status === "error" ? "alert" : "status",
|
|
287
|
+
_v$13 = statusIcon(props.status);
|
|
288
|
+
_v$12 !== _p$.e && _$setAttribute(_el$31, "role", _p$.e = _v$12);
|
|
289
|
+
_v$13 !== _p$.t && _$className(_el$32, _p$.t = _v$13);
|
|
277
290
|
return _p$;
|
|
278
291
|
}, {
|
|
279
292
|
e: undefined,
|
|
@@ -316,18 +329,20 @@ export function ChatMessage(props) {
|
|
|
316
329
|
_el$37 = _el$36.firstChild;
|
|
317
330
|
_el$36.$$click = () => void runAction(action);
|
|
318
331
|
_$effect(_p$ => {
|
|
319
|
-
var _v$
|
|
320
|
-
_v$
|
|
321
|
-
_v$
|
|
322
|
-
_v$
|
|
323
|
-
_v$
|
|
324
|
-
_v$
|
|
325
|
-
|
|
326
|
-
_v$
|
|
327
|
-
_v$
|
|
328
|
-
_v$
|
|
329
|
-
_v$
|
|
330
|
-
_v$
|
|
332
|
+
var _v$14 = action.label,
|
|
333
|
+
_v$15 = action.pressed,
|
|
334
|
+
_v$16 = action.pressedTone,
|
|
335
|
+
_v$17 = action.label,
|
|
336
|
+
_v$18 = action.variant === "danger" ? "true" : undefined,
|
|
337
|
+
_v$19 = action.disabled || Boolean(busyActionId()),
|
|
338
|
+
_v$20 = actionIcon(action);
|
|
339
|
+
_v$14 !== _p$.e && _$setAttribute(_el$36, "aria-label", _p$.e = _v$14);
|
|
340
|
+
_v$15 !== _p$.t && _$setAttribute(_el$36, "aria-pressed", _p$.t = _v$15);
|
|
341
|
+
_v$16 !== _p$.a && _$setAttribute(_el$36, "data-pressed-tone", _p$.a = _v$16);
|
|
342
|
+
_v$17 !== _p$.o && _$setAttribute(_el$36, "title", _p$.o = _v$17);
|
|
343
|
+
_v$18 !== _p$.i && _$setAttribute(_el$36, "data-danger", _p$.i = _v$18);
|
|
344
|
+
_v$19 !== _p$.n && _$setProperty(_el$36, "disabled", _p$.n = _v$19);
|
|
345
|
+
_v$20 !== _p$.s && _$className(_el$37, _p$.s = _v$20);
|
|
331
346
|
return _p$;
|
|
332
347
|
}, {
|
|
333
348
|
e: undefined,
|
|
@@ -335,7 +350,8 @@ export function ChatMessage(props) {
|
|
|
335
350
|
a: undefined,
|
|
336
351
|
o: undefined,
|
|
337
352
|
i: undefined,
|
|
338
|
-
n: undefined
|
|
353
|
+
n: undefined,
|
|
354
|
+
s: undefined
|
|
339
355
|
});
|
|
340
356
|
_$runHydrationEvents();
|
|
341
357
|
return _el$36;
|
|
@@ -455,13 +471,15 @@ const ActivityContent = props => [(() => {
|
|
|
455
471
|
}
|
|
456
472
|
})];
|
|
457
473
|
export function ChatActivity(props) {
|
|
474
|
+
const [expanded, setExpanded] = createSignal(props.defaultOpen ?? false);
|
|
475
|
+
const open = () => props.open ?? expanded();
|
|
458
476
|
const tone = () => props.tone ?? "neutral";
|
|
459
477
|
const style = () => props.accent ? {
|
|
460
478
|
"--k2b-chat-activity-accent": props.accent
|
|
461
479
|
} : undefined;
|
|
462
480
|
return _$createComponent(Show, {
|
|
463
481
|
get when() {
|
|
464
|
-
return props.children;
|
|
482
|
+
return props.renderBody || props.children;
|
|
465
483
|
},
|
|
466
484
|
get fallback() {
|
|
467
485
|
return (() => {
|
|
@@ -469,20 +487,20 @@ export function ChatActivity(props) {
|
|
|
469
487
|
_el$51 = _el$50.firstChild;
|
|
470
488
|
_$insert(_el$51, _$createComponent(ActivityContent, props));
|
|
471
489
|
_$effect(_p$ => {
|
|
472
|
-
var _v$
|
|
473
|
-
_v$
|
|
474
|
-
_v$
|
|
475
|
-
_v$
|
|
476
|
-
_v$
|
|
477
|
-
_v$
|
|
478
|
-
_v$
|
|
479
|
-
_v$
|
|
480
|
-
_v$
|
|
481
|
-
_v$
|
|
482
|
-
_v$
|
|
483
|
-
_v$
|
|
484
|
-
_p$.n = _$style(_el$50, _v$
|
|
485
|
-
_v$
|
|
490
|
+
var _v$30 = `k2b-chat-activity ${props.class ?? ""}`,
|
|
491
|
+
_v$31 = tone(),
|
|
492
|
+
_v$32 = props.accent ? "true" : undefined,
|
|
493
|
+
_v$33 = props.busy ? "true" : undefined,
|
|
494
|
+
_v$34 = props.anchorId !== undefined ? String(props.anchorId) : undefined,
|
|
495
|
+
_v$35 = style(),
|
|
496
|
+
_v$36 = props.busy ? "true" : undefined;
|
|
497
|
+
_v$30 !== _p$.e && _$className(_el$50, _p$.e = _v$30);
|
|
498
|
+
_v$31 !== _p$.t && _$setAttribute(_el$50, "data-tone", _p$.t = _v$31);
|
|
499
|
+
_v$32 !== _p$.a && _$setAttribute(_el$50, "data-accent", _p$.a = _v$32);
|
|
500
|
+
_v$33 !== _p$.o && _$setAttribute(_el$50, "data-busy", _p$.o = _v$33);
|
|
501
|
+
_v$34 !== _p$.i && _$setAttribute(_el$50, "data-chat-anchor", _p$.i = _v$34);
|
|
502
|
+
_p$.n = _$style(_el$50, _v$35, _p$.n);
|
|
503
|
+
_v$36 !== _p$.s && _$setAttribute(_el$50, "aria-busy", _p$.s = _v$36);
|
|
486
504
|
return _p$;
|
|
487
505
|
}, {
|
|
488
506
|
e: undefined,
|
|
@@ -500,30 +518,41 @@ export function ChatActivity(props) {
|
|
|
500
518
|
var _el$47 = _$getNextElement(_tmpl$21),
|
|
501
519
|
_el$48 = _el$47.firstChild,
|
|
502
520
|
_el$49 = _el$48.nextSibling;
|
|
503
|
-
_el$47.addEventListener("toggle", event =>
|
|
521
|
+
_el$47.addEventListener("toggle", event => {
|
|
522
|
+
setExpanded(event.currentTarget.open);
|
|
523
|
+
props.onOpenChange?.(event.currentTarget.open);
|
|
524
|
+
});
|
|
504
525
|
_$insert(_el$48, _$createComponent(ActivityContent, _$mergeProps(props, {
|
|
505
526
|
disclosure: true
|
|
506
527
|
})));
|
|
507
|
-
_$insert(_el$49, () =>
|
|
528
|
+
_$insert(_el$49, (() => {
|
|
529
|
+
var _c$ = _$memo(() => !!props.renderBody);
|
|
530
|
+
return () => _c$() ? _$createComponent(Show, {
|
|
531
|
+
get when() {
|
|
532
|
+
return _$memo(() => !!open())() ? props.renderBody : undefined;
|
|
533
|
+
},
|
|
534
|
+
children: render => render()()
|
|
535
|
+
}) : props.children;
|
|
536
|
+
})());
|
|
508
537
|
_$effect(_p$ => {
|
|
509
|
-
var _v$
|
|
510
|
-
_v$
|
|
511
|
-
_v$
|
|
512
|
-
_v$
|
|
513
|
-
_v$
|
|
514
|
-
_v$
|
|
515
|
-
_v$
|
|
516
|
-
_v$
|
|
517
|
-
_v$
|
|
518
|
-
_v$
|
|
519
|
-
_v$
|
|
520
|
-
_v$
|
|
521
|
-
_v$
|
|
522
|
-
_v$
|
|
523
|
-
_v$
|
|
524
|
-
_p$.s = _$style(_el$47, _v$
|
|
525
|
-
_v$
|
|
526
|
-
_v$
|
|
538
|
+
var _v$21 = `k2b-chat-activity ${props.class ?? ""}`,
|
|
539
|
+
_v$22 = tone(),
|
|
540
|
+
_v$23 = props.accent ? "true" : undefined,
|
|
541
|
+
_v$24 = props.busy ? "true" : undefined,
|
|
542
|
+
_v$25 = props.bodyInset === false ? "false" : undefined,
|
|
543
|
+
_v$26 = props.anchorId !== undefined ? String(props.anchorId) : undefined,
|
|
544
|
+
_v$27 = style(),
|
|
545
|
+
_v$28 = open(),
|
|
546
|
+
_v$29 = props.busy ? "true" : undefined;
|
|
547
|
+
_v$21 !== _p$.e && _$className(_el$47, _p$.e = _v$21);
|
|
548
|
+
_v$22 !== _p$.t && _$setAttribute(_el$47, "data-tone", _p$.t = _v$22);
|
|
549
|
+
_v$23 !== _p$.a && _$setAttribute(_el$47, "data-accent", _p$.a = _v$23);
|
|
550
|
+
_v$24 !== _p$.o && _$setAttribute(_el$47, "data-busy", _p$.o = _v$24);
|
|
551
|
+
_v$25 !== _p$.i && _$setAttribute(_el$47, "data-body-inset", _p$.i = _v$25);
|
|
552
|
+
_v$26 !== _p$.n && _$setAttribute(_el$47, "data-chat-anchor", _p$.n = _v$26);
|
|
553
|
+
_p$.s = _$style(_el$47, _v$27, _p$.s);
|
|
554
|
+
_v$28 !== _p$.h && _$setProperty(_el$47, "open", _p$.h = _v$28);
|
|
555
|
+
_v$29 !== _p$.r && _$setAttribute(_el$47, "aria-busy", _p$.r = _v$29);
|
|
527
556
|
return _p$;
|
|
528
557
|
}, {
|
|
529
558
|
e: undefined,
|
|
@@ -541,6 +570,19 @@ export function ChatActivity(props) {
|
|
|
541
570
|
});
|
|
542
571
|
}
|
|
543
572
|
export function ChatContextUsage(props) {
|
|
573
|
+
const [busy, setBusy] = createSignal(false);
|
|
574
|
+
const run = async () => {
|
|
575
|
+
const action = props.action;
|
|
576
|
+
if (!action || action.disabled || busy()) return;
|
|
577
|
+
setBusy(true);
|
|
578
|
+
try {
|
|
579
|
+
await executeChatAction(action);
|
|
580
|
+
} catch (error) {
|
|
581
|
+
props.onActionError?.(error);
|
|
582
|
+
} finally {
|
|
583
|
+
setBusy(false);
|
|
584
|
+
}
|
|
585
|
+
};
|
|
544
586
|
const messages = useUiMessages();
|
|
545
587
|
const formatNumber = value => (props.formatNumber ?? formatStableInteger)(value);
|
|
546
588
|
const formattedUsageValue = value => value === null ? messages().unknown : formatNumber(value);
|
|
@@ -564,8 +606,7 @@ export function ChatContextUsage(props) {
|
|
|
564
606
|
percent: percent()
|
|
565
607
|
});
|
|
566
608
|
};
|
|
567
|
-
return _$createComponent(
|
|
568
|
-
placement: "top",
|
|
609
|
+
return _$createComponent(ChatContextPopup, {
|
|
569
610
|
get content() {
|
|
570
611
|
return (() => {
|
|
571
612
|
var _el$54 = _$getNextElement(_tmpl$25),
|
|
@@ -587,7 +628,9 @@ export function ChatContextUsage(props) {
|
|
|
587
628
|
_el$67 = _el$66.firstChild,
|
|
588
629
|
_el$68 = _el$67.nextSibling,
|
|
589
630
|
_el$76 = _el$66.nextSibling,
|
|
590
|
-
[_el$77, _co$11] = _$getNextMarker(_el$76.nextSibling)
|
|
631
|
+
[_el$77, _co$11] = _$getNextMarker(_el$76.nextSibling),
|
|
632
|
+
_el$80 = _el$56.nextSibling,
|
|
633
|
+
[_el$81, _co$13] = _$getNextMarker(_el$80.nextSibling);
|
|
591
634
|
_$insert(_el$55, () => messages().lastRequestContext);
|
|
592
635
|
_$insert(_el$54, _$createComponent(Show, {
|
|
593
636
|
get when() {
|
|
@@ -613,12 +656,12 @@ export function ChatContextUsage(props) {
|
|
|
613
656
|
return props.modelLabel;
|
|
614
657
|
},
|
|
615
658
|
children: model => (() => {
|
|
616
|
-
var _el$
|
|
617
|
-
_el$
|
|
618
|
-
_el$
|
|
619
|
-
_$insert(_el$
|
|
620
|
-
_$insert(_el$
|
|
621
|
-
return _el$
|
|
659
|
+
var _el$82 = _$getNextElement(_tmpl$24),
|
|
660
|
+
_el$83 = _el$82.firstChild,
|
|
661
|
+
_el$84 = _el$83.nextSibling;
|
|
662
|
+
_$insert(_el$83, () => messages().model);
|
|
663
|
+
_$insert(_el$84, model);
|
|
664
|
+
return _el$82;
|
|
622
665
|
})()
|
|
623
666
|
}), _el$73, _co$1);
|
|
624
667
|
_$insert(_el$58, () => messages().input);
|
|
@@ -640,8 +683,8 @@ export function ChatContextUsage(props) {
|
|
|
640
683
|
}), _el$75, _co$10);
|
|
641
684
|
_$insert(_el$67, () => messages().window);
|
|
642
685
|
_$insert(_el$68, (() => {
|
|
643
|
-
var _c$
|
|
644
|
-
return () => _c$
|
|
686
|
+
var _c$3 = _$memo(() => windowSize() > 0);
|
|
687
|
+
return () => _c$3() ? formatNumber(windowSize()) : messages().notConfigured;
|
|
645
688
|
})());
|
|
646
689
|
_$insert(_el$56, _$createComponent(Show, {
|
|
647
690
|
get when() {
|
|
@@ -653,12 +696,35 @@ export function ChatContextUsage(props) {
|
|
|
653
696
|
_el$71 = _el$70.nextSibling;
|
|
654
697
|
_$insert(_el$70, () => messages().remaining);
|
|
655
698
|
_$insert(_el$71, (() => {
|
|
656
|
-
var _c$
|
|
657
|
-
return () => _c$
|
|
699
|
+
var _c$4 = _$memo(() => remaining() === null);
|
|
700
|
+
return () => _c$4() ? messages().unknown : formatNumber(remaining());
|
|
658
701
|
})());
|
|
659
702
|
return _el$69;
|
|
660
703
|
}
|
|
661
704
|
}), _el$77, _co$11);
|
|
705
|
+
_$insert(_el$54, _$createComponent(Show, {
|
|
706
|
+
get when() {
|
|
707
|
+
return props.action;
|
|
708
|
+
},
|
|
709
|
+
children: action => _$createComponent(Button, {
|
|
710
|
+
size: "xs",
|
|
711
|
+
variant: "subtle",
|
|
712
|
+
get disabled() {
|
|
713
|
+
return action().disabled || busy();
|
|
714
|
+
},
|
|
715
|
+
onClick: () => void run(),
|
|
716
|
+
get ["aria-busy"]() {
|
|
717
|
+
return busy();
|
|
718
|
+
},
|
|
719
|
+
get children() {
|
|
720
|
+
return [(() => {
|
|
721
|
+
var _el$85 = _$getNextElement(_tmpl$1);
|
|
722
|
+
_$effect(() => _$className(_el$85, busy() ? "ti ti-loader-2 k2b-spin" : action().icon));
|
|
723
|
+
return _el$85;
|
|
724
|
+
})(), _$memo(() => action().label)];
|
|
725
|
+
}
|
|
726
|
+
})
|
|
727
|
+
}), _el$81, _co$13);
|
|
662
728
|
return _el$54;
|
|
663
729
|
})();
|
|
664
730
|
},
|
|
@@ -676,8 +742,8 @@ export function ChatContextUsage(props) {
|
|
|
676
742
|
return [_$getNextElement(_tmpl$23), (() => {
|
|
677
743
|
var _el$53 = _$getNextElement(_tmpl$0);
|
|
678
744
|
_$insert(_el$53, (() => {
|
|
679
|
-
var _c$ = _$memo(() => percent() === null);
|
|
680
|
-
return () => _c$() ? "–" : `${percent()}%`;
|
|
745
|
+
var _c$2 = _$memo(() => percent() === null);
|
|
746
|
+
return () => _c$2() ? "–" : `${percent()}%`;
|
|
681
747
|
})());
|
|
682
748
|
return _el$53;
|
|
683
749
|
})()];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createSignal","For","onCleanup","Show","Dropdown","Tooltip","useUiMessages","ProgressBar","executeChatAction","roleLabel","role","messages","assistant","user","tool","system","statusLabel","status","waiting","generating","failed","statusIcon","ChatProgressDots","_$getNextElement","_tmpl$","attachmentIcon","attachment","icon","kind","finiteNonNegative","value","Number","isFinite","Math","max","finiteUsageValue","normalizedUsage","usage","input","output","explicitTotal","total","reported","formatStableInteger","digits","String","round","replace","formatChatTokens","tokens","toFixed","dateTime","date","Date","getTime","toISOString","ChatMessage","props","busyActionId","setBusyActionId","completedActionId","setCompletedActionId","completedTimer","timestamp","createdAt","time","timeLabel","actions","actionDisplay","hasMeta","Boolean","length","runAction","action","disabled","id","clearTimeout","setTimeout","error","onActionError","actionIcon","menuItems","map","label","variant","_el$2","_tmpl$8","_el$3","firstChild","_el$5","_el$6","_co$","_$getNextMarker","nextSibling","_el$4","_el$20","_el$21","_co$6","_el$22","_el$23","_co$7","_el$24","_el$25","_co$8","_$insert","_$createComponent","when","attachments","children","_el$7","_tmpl$2","each","content","_$memo","previewUrl","fallback","_el$28","_tmpl$1","_$effect","_$className","_el$26","_tmpl$9","_p$","_v$6","_v$7","alt","name","e","_$setAttribute","t","undefined","_el$27","_tmpl$0","href","_el$29","_tmpl$10","_el$30","_tmpl$11","_v$8","_v$9","_v$0","openInNewTab","a","_el$8","_tmpl$3","_el$9","_el$0","_tmpl$7","_el$12","_el$13","_co$2","_el$14","_el$15","_co$3","_el$16","_el$17","_co$4","_el$18","_el$19","_co$5","_el$31","_tmpl$12","_el$32","_el$33","_el$34","_co$9","_v$1","_v$10","_el$1","_tmpl$4","_el$35","_tmpl$13","_el$10","_tmpl$5","_el$36","_tmpl$14","_el$37","$$click","_v$11","_v$12","pressed","_v$13","_v$14","_v$15","_v$16","o","i","_$setProperty","n","_$runHydrationEvents","messageActions","Root","position","width","items","Trigger","appearance","title","_tmpl$6","_v$","class","_v$2","_v$3","_v$4","anchorId","_v$5","ActivityContent","_el$38","_tmpl$15","leading","_el$45","_tmpl$19","_el$39","_tmpl$16","_el$40","_el$41","_el$42","_co$0","description","_el$46","_tmpl$20","trailing","_el$43","_tmpl$17","disclosure","_tmpl$18","ChatActivity","tone","style","accent","_el$50","_tmpl$22","_el$51","_v$26","_v$27","_v$28","_v$29","busy","_v$30","_v$31","_v$32","_$style","s","_el$47","_tmpl$21","_el$48","_el$49","addEventListener","event","onOpenChange","currentTarget","open","_$mergeProps","_v$17","_v$18","_v$19","_v$20","_v$21","bodyInset","_v$22","_v$23","_v$24","defaultOpen","_v$25","h","r","ChatContextUsage","formatNumber","formattedUsageValue","unknown","loopUsage","windowSize","contextWindow","percent","min","remaining","accessibleLabel","contextUsageUnavailableWithWindow","window","contextUsageUnavailable","tokensUsed","tokensUsedPercent","placement","_el$54","_tmpl$25","_el$55","_el$78","_el$79","_co$12","_el$56","_el$72","_el$73","_co$1","_el$57","_el$58","_el$59","_el$60","_el$61","_el$62","_el$74","_el$75","_co$10","_el$66","_el$67","_el$68","_el$76","_el$77","_co$11","lastRequestContext","size","contextWindowUsed","modelLabel","model","_el$80","_tmpl$24","_el$81","_el$82","_el$63","_el$64","_el$65","loopTotal","_c$2","notConfigured","_el$69","_el$70","_el$71","_c$3","type","data-warning","aria-label","_tmpl$23","_el$53","_c$","_$delegateEvents"],"sources":["chat/ChatPrimitives.tsx"],"sourcesContent":["import { createSignal, For, type JSX, onCleanup, Show } from \"solid-js\";\nimport { Dropdown, type DropdownItem } from \"../actions/Dropdown\";\nimport { Tooltip } from \"../feedback/Tooltip\";\nimport { type UiMessages, useUiMessages } from \"../intl/messages\";\nimport { ProgressBar } from \"../surfaces/ProgressBar\";\nimport { executeChatAction } from \"./chat-behavior\";\nimport type { ChatAction, ChatActivityTone, ChatAttachment, ChatContextUsageData, ChatMessageStatus, ChatRole } from \"./types\";\n\nexport type ChatMessageProps = {\n role: ChatRole;\n children?: JSX.Element;\n label?: string;\n createdAt?: string | Date;\n timeLabel?: string;\n status?: ChatMessageStatus;\n attachments?: readonly ChatAttachment[];\n actions?: readonly ChatAction[];\n actionDisplay?: \"auto\" | \"inline\" | \"menu\";\n anchorId?: string | number;\n onActionError?: (error: unknown) => void;\n class?: string;\n};\n\nexport type ChatActivityProps = {\n label: string;\n description?: string;\n icon?: string;\n /** Optional host-owned leading visual rendered instead of the icon. */\n leading?: JSX.Element;\n /** Optional identity accent for the leading visual. Semantic tones still take precedence. */\n accent?: string;\n tone?: ChatActivityTone;\n /** Marks the activity as running with the shared accent sweep. */\n busy?: boolean;\n trailing?: JSX.Element;\n /** Controlled disclosure state. Omit to keep native details behavior. */\n open?: boolean;\n /** Reports disclosure changes when `open` is controlled by the host. */\n onOpenChange?: (open: boolean) => void;\n defaultOpen?: boolean;\n /** Set to false when the body is a peer list that should align with the activity row. */\n bodyInset?: boolean;\n anchorId?: string | number;\n children?: JSX.Element;\n class?: string;\n};\n\nexport type ChatContextUsageProps = ChatContextUsageData & {\n /** Host-owned number formatting. The default is locale-independent and SSR-stable. */\n formatNumber?: (value: number) => string;\n class?: string;\n};\n\nconst roleLabel = (role: ChatRole, messages: UiMessages): string => {\n if (role === \"assistant\") return messages.assistant;\n if (role === \"user\") return messages.user;\n if (role === \"tool\") return messages.tool;\n return messages.system;\n};\n\nconst statusLabel = (status: ChatMessageStatus | undefined, messages: UiMessages): string | null => {\n if (status === \"pending\") return messages.waiting;\n if (status === \"streaming\") return messages.generating;\n if (status === \"error\") return messages.failed;\n return null;\n};\n\nconst statusIcon = (status: ChatMessageStatus | undefined): string => {\n if (status === \"pending\") return \"ti ti-clock\";\n return \"ti ti-alert-circle\";\n};\n\nconst ChatProgressDots = () => (\n <span class=\"k2b-chat-progress-dots\" aria-hidden=\"true\">\n <span />\n <span />\n <span />\n </span>\n);\n\nconst attachmentIcon = (attachment: ChatAttachment): string =>\n attachment.icon ?? (attachment.kind === \"image\" ? \"ti ti-photo\" : attachment.kind === \"resource\" ? \"ti ti-link\" : \"ti ti-file\");\n\nconst finiteNonNegative = (value: number | undefined): number =>\n typeof value === \"number\" && Number.isFinite(value) ? Math.max(0, value) : 0;\n\nconst finiteUsageValue = (value: number | undefined): number | null =>\n typeof value === \"number\" && Number.isFinite(value) && value >= 0 ? value : null;\n\nconst normalizedUsage = (usage: ChatContextUsageData[\"usage\"]) => {\n const input = finiteUsageValue(usage?.input);\n const output = finiteUsageValue(usage?.output);\n const explicitTotal = finiteUsageValue(usage?.total);\n const total = explicitTotal ?? (input !== null || output !== null ? (input ?? 0) + (output ?? 0) : null);\n return { input, output, total, reported: total !== null };\n};\n\nconst formatStableInteger = (value: number): string => {\n const digits = String(Math.round(finiteNonNegative(value)));\n return digits.replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n};\n\nexport const formatChatTokens = (tokens: number): string => {\n const value = finiteNonNegative(tokens);\n if (value >= 1_000_000) return `${(value / 1_000_000).toFixed(1)}M`;\n if (value >= 1_000) return `${(value / 1_000).toFixed(1)}k`;\n return String(Math.round(value));\n};\n\nconst dateTime = (value: string | Date | undefined): string | null => {\n if (!value) return null;\n const date = value instanceof Date ? value : new Date(value);\n return Number.isFinite(date.getTime()) ? date.toISOString() : null;\n};\n\nexport function ChatMessage(props: ChatMessageProps): JSX.Element {\n const messages = useUiMessages();\n const [busyActionId, setBusyActionId] = createSignal<string | null>(null);\n const [completedActionId, setCompletedActionId] = createSignal<string | null>(null);\n let completedTimer: ReturnType<typeof setTimeout> | undefined;\n const status = () => statusLabel(props.status, messages());\n const timestamp = () => dateTime(props.createdAt);\n // Locale and timezone are application policy. Requiring an explicit visible\n // label keeps SSR and hydration byte-stable while `createdAt` still supplies\n // the semantic machine-readable timestamp.\n const time = () => props.timeLabel ?? null;\n const actions = () => props.actions ?? [];\n const actionDisplay = () =>\n props.actionDisplay === \"auto\" || !props.actionDisplay ? (props.role === \"user\" ? \"menu\" : \"inline\") : props.actionDisplay;\n const hasMeta = () => props.status === \"streaming\" || status() !== null || Boolean(time()) || actions().length > 0;\n\n const runAction = async (action: ChatAction) => {\n if (action.disabled || busyActionId()) return;\n setBusyActionId(action.id);\n try {\n await executeChatAction(action);\n setCompletedActionId(action.id);\n if (completedTimer) clearTimeout(completedTimer);\n completedTimer = setTimeout(() => setCompletedActionId(null), 1400);\n } catch (error) {\n props.onActionError?.(error);\n } finally {\n setBusyActionId(null);\n }\n };\n\n const actionIcon = (action: ChatAction) =>\n busyActionId() === action.id\n ? \"ti ti-loader-2 k2b-spin\"\n : completedActionId() === action.id\n ? \"ti ti-check\"\n : (action.icon ?? \"ti ti-dots\");\n\n onCleanup(() => {\n if (completedTimer) clearTimeout(completedTimer);\n });\n\n const menuItems = (): readonly DropdownItem[] =>\n actions().map((action) => ({\n icon: actionIcon(action),\n label: action.label,\n variant: action.variant,\n disabled: action.disabled || Boolean(busyActionId()),\n action: () => void runAction(action),\n }));\n\n return (\n <article\n class={`k2b-chat-message ${props.class ?? \"\"}`}\n data-role={props.role}\n data-status={props.status ?? \"complete\"}\n data-chat-anchor={props.anchorId !== undefined ? String(props.anchorId) : undefined}\n aria-busy={props.status === \"pending\" || props.status === \"streaming\" ? \"true\" : undefined}\n >\n <span class=\"k2b-sr-only\">{props.label ?? roleLabel(props.role, messages())}: </span>\n <Show when={(props.attachments?.length ?? 0) > 0}>\n <div class=\"k2b-chat-message__attachments\" role=\"list\" aria-label={messages().attachments}>\n <For each={props.attachments}>\n {(attachment) => {\n const content = () => (\n <>\n <Show\n when={attachment.kind === \"image\" && attachment.previewUrl}\n fallback={<i class={attachmentIcon(attachment)} aria-hidden=\"true\" />}\n >\n <img src={attachment.previewUrl} alt={attachment.alt ?? attachment.name} />\n </Show>\n <Show when={attachment.kind !== \"image\"}>\n <span>{attachment.name}</span>\n </Show>\n </>\n );\n return (\n <Show\n when={attachment.href}\n fallback={\n <div class=\"k2b-chat-message__attachment\" role=\"listitem\" title={attachment.name}>\n {content()}\n </div>\n }\n >\n {(href) => (\n <a\n class=\"k2b-chat-message__attachment\"\n role=\"listitem\"\n title={attachment.name}\n href={href()}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n aria-label={messages().openInNewTab({ name: attachment.name })}\n >\n {content()}\n </a>\n )}\n </Show>\n );\n }}\n </For>\n </div>\n </Show>\n\n <Show when={props.children !== undefined && props.children !== null && props.children !== \"\"}>\n <div class=\"k2b-chat-message__bubble\">\n <div class=\"k2b-chat-message__content\">{props.children}</div>\n </div>\n </Show>\n\n <Show when={hasMeta()}>\n <footer class=\"k2b-chat-message__meta\">\n <Show\n when={props.status === \"streaming\"}\n fallback={\n <Show when={status()}>\n {(label) => (\n <span class=\"k2b-chat-message__status\" role={props.status === \"error\" ? \"alert\" : \"status\"}>\n <i class={statusIcon(props.status)} aria-hidden=\"true\" />\n {label()}\n </span>\n )}\n </Show>\n }\n >\n <span class=\"k2b-chat-message__status k2b-chat-message__status--streaming\" role=\"status\" aria-label={messages().generating}>\n <ChatProgressDots />\n </span>\n </Show>\n <Show when={time()}>{(label) => <time dateTime={timestamp() ?? undefined}>{label()}</time>}</Show>\n <Show when={actions().length > 0 && actionDisplay() === \"inline\"}>\n <span class=\"k2b-chat-message__actions\" role=\"group\" aria-label={messages().messageActions}>\n <For each={actions()}>\n {(action) => (\n <button\n type=\"button\"\n aria-label={action.label}\n aria-pressed={action.pressed}\n title={action.label}\n data-danger={action.variant === \"danger\" ? \"true\" : undefined}\n disabled={action.disabled || Boolean(busyActionId())}\n onClick={() => void runAction(action)}\n >\n <i class={actionIcon(action)} aria-hidden=\"true\" />\n </button>\n )}\n </For>\n </span>\n </Show>\n <Show when={actions().length > 0 && actionDisplay() === \"menu\"}>\n <Dropdown.Root position=\"bottom-left\" width=\"12rem\" label={messages().messageActions} items={menuItems()}>\n <Dropdown.Trigger\n appearance=\"plain\"\n class=\"k2b-chat-message__menu\"\n label={messages().messageActions}\n title={messages().messageActions}\n >\n <i class=\"ti ti-dots\" aria-hidden=\"true\" />\n </Dropdown.Trigger>\n </Dropdown.Root>\n </Show>\n </footer>\n </Show>\n </article>\n );\n}\n\nconst ActivityContent = (props: ChatActivityProps & { disclosure?: boolean }) => (\n <>\n <span class=\"k2b-chat-activity__leading\" aria-hidden=\"true\">\n <Show when={props.leading} fallback={<i class={props.icon ?? \"ti ti-sparkles\"} />}>\n {props.leading}\n </Show>\n </span>\n <span class=\"k2b-chat-activity__copy\">\n <strong>{props.label}</strong>\n <Show when={props.description}>{(description) => <small>{description()}</small>}</Show>\n </span>\n <Show when={props.trailing}>\n <span class=\"k2b-chat-activity__trailing\">{props.trailing}</span>\n </Show>\n <Show when={props.disclosure}>\n <i class=\"ti ti-chevron-right k2b-chat-activity__chevron\" aria-hidden=\"true\" />\n </Show>\n </>\n);\n\nexport function ChatActivity(props: ChatActivityProps): JSX.Element {\n const tone = () => props.tone ?? \"neutral\";\n const style = () => (props.accent ? { \"--k2b-chat-activity-accent\": props.accent } : undefined);\n return (\n <Show\n when={props.children}\n fallback={\n <div\n class={`k2b-chat-activity ${props.class ?? \"\"}`}\n data-tone={tone()}\n data-accent={props.accent ? \"true\" : undefined}\n data-busy={props.busy ? \"true\" : undefined}\n data-chat-anchor={props.anchorId !== undefined ? String(props.anchorId) : undefined}\n style={style()}\n aria-busy={props.busy ? \"true\" : undefined}\n >\n <div class=\"k2b-chat-activity__row\">\n <ActivityContent {...props} />\n </div>\n </div>\n }\n >\n <details\n class={`k2b-chat-activity ${props.class ?? \"\"}`}\n data-tone={tone()}\n data-accent={props.accent ? \"true\" : undefined}\n data-busy={props.busy ? \"true\" : undefined}\n data-body-inset={props.bodyInset === false ? \"false\" : undefined}\n data-chat-anchor={props.anchorId !== undefined ? String(props.anchorId) : undefined}\n style={style()}\n open={props.open ?? props.defaultOpen}\n onToggle={(event) => props.onOpenChange?.(event.currentTarget.open)}\n aria-busy={props.busy ? \"true\" : undefined}\n >\n <summary class=\"k2b-chat-activity__row\">\n <ActivityContent {...props} disclosure />\n </summary>\n <div class=\"k2b-chat-activity__body\">{props.children}</div>\n </details>\n </Show>\n );\n}\n\nexport function ChatContextUsage(props: ChatContextUsageProps): JSX.Element {\n const messages = useUiMessages();\n const formatNumber = (value: number) => (props.formatNumber ?? formatStableInteger)(value);\n const formattedUsageValue = (value: number | null): string => (value === null ? messages().unknown : formatNumber(value));\n const usage = () => normalizedUsage(props.usage);\n const loopUsage = () => normalizedUsage(props.loopUsage);\n const total = () => usage().total ?? 0;\n const windowSize = () => finiteNonNegative(props.contextWindow);\n const reported = () => usage().reported;\n const percent = () => (reported() && windowSize() > 0 ? Math.min(100, Math.round((total() / windowSize()) * 100)) : null);\n const remaining = () => (reported() && windowSize() > 0 ? Math.max(0, windowSize() - total()) : null);\n const accessibleLabel = () => {\n if (!reported()) {\n return windowSize() > 0\n ? messages().contextUsageUnavailableWithWindow({ window: formatNumber(windowSize()) })\n : messages().contextUsageUnavailable;\n }\n return percent() === null\n ? messages().tokensUsed({ total: formatNumber(total()) })\n : messages().tokensUsedPercent({ total: formatNumber(total()), percent: percent()! });\n };\n\n return (\n <Tooltip.Trigger\n placement=\"top\"\n content={\n <div class=\"k2b-chat-context__tooltip\">\n <strong>{messages().lastRequestContext}</strong>\n <Show when={percent() !== null}>\n <ProgressBar\n value={percent() ?? 0}\n size=\"xs\"\n tone={(percent() ?? 0) >= 85 ? \"danger\" : \"info\"}\n label={messages().contextWindowUsed}\n />\n </Show>\n <dl>\n <Show when={props.modelLabel}>\n {(model) => (\n <div>\n <dt>{messages().model}</dt>\n <dd>{model()}</dd>\n </div>\n )}\n </Show>\n <div>\n <dt>{messages().input}</dt>\n <dd>{formattedUsageValue(usage().input)}</dd>\n </div>\n <div>\n <dt>{messages().output}</dt>\n <dd>{formattedUsageValue(usage().output)}</dd>\n </div>\n <Show when={loopUsage().reported}>\n <div>\n <dt>{messages().loopTotal}</dt>\n <dd>{formattedUsageValue(loopUsage().total)}</dd>\n </div>\n </Show>\n <div>\n <dt>{messages().window}</dt>\n <dd>{windowSize() > 0 ? formatNumber(windowSize()) : messages().notConfigured}</dd>\n </div>\n <Show when={remaining() !== null}>\n <div>\n <dt>{messages().remaining}</dt>\n <dd>{remaining() === null ? messages().unknown : formatNumber(remaining()!)}</dd>\n </div>\n </Show>\n </dl>\n </div>\n }\n type=\"button\"\n class={`k2b-chat-context ${props.class ?? \"\"}`}\n data-warning={reported() && (percent() ?? 0) >= 85 ? \"true\" : undefined}\n aria-label={accessibleLabel()}\n >\n <i class=\"ti ti-brain\" aria-hidden=\"true\" />\n <span>{percent() === null ? \"–\" : `${percent()}%`}</span>\n </Tooltip.Trigger>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createSignal","For","onCleanup","Show","Dropdown","ChatContextPopup","Button","useUiMessages","ProgressBar","executeChatAction","roleLabel","role","messages","assistant","user","tool","system","statusLabel","status","waiting","generating","failed","statusIcon","ChatProgressDots","_$getNextElement","_tmpl$","attachmentIcon","attachment","icon","kind","finiteNonNegative","value","Number","isFinite","Math","max","finiteUsageValue","normalizedUsage","usage","input","output","explicitTotal","total","reported","formatStableInteger","digits","String","round","replace","formatChatTokens","tokens","toFixed","dateTime","date","Date","getTime","toISOString","ChatMessage","props","busyActionId","setBusyActionId","completedActionId","setCompletedActionId","completedTimer","timestamp","createdAt","time","timeLabel","actions","actionDisplay","hasMeta","Boolean","length","runAction","action","disabled","id","clearTimeout","setTimeout","error","onActionError","actionIcon","menuItems","map","label","variant","_el$2","_tmpl$8","_el$3","firstChild","_el$5","_el$6","_co$","_$getNextMarker","nextSibling","_el$4","_el$20","_el$21","_co$6","_el$22","_el$23","_co$7","_el$24","_el$25","_co$8","_$insert","_$createComponent","when","attachments","children","_el$7","_tmpl$2","each","content","_$memo","previewUrl","fallback","_el$28","_tmpl$1","_$effect","_$className","_el$26","_tmpl$9","_p$","_v$6","_v$7","alt","name","e","_$setAttribute","t","undefined","_el$27","_tmpl$0","href","_el$29","_tmpl$10","_v$8","_v$9","_el$30","_tmpl$11","_v$0","_v$1","_v$10","_v$11","openInNewTab","a","o","_el$8","_tmpl$3","_el$9","_el$0","_tmpl$7","_el$12","_el$13","_co$2","_el$14","_el$15","_co$3","_el$16","_el$17","_co$4","_el$18","_el$19","_co$5","_el$31","_tmpl$12","_el$32","_el$33","_el$34","_co$9","_v$12","_v$13","_el$1","_tmpl$4","_el$35","_tmpl$13","_el$10","_tmpl$5","_el$36","_tmpl$14","_el$37","$$click","_v$14","_v$15","pressed","_v$16","pressedTone","_v$17","_v$18","_v$19","_v$20","i","n","_$setProperty","s","_$runHydrationEvents","messageActions","Root","position","width","items","Trigger","appearance","title","_tmpl$6","_v$","class","_v$2","_v$3","_v$4","anchorId","_v$5","ActivityContent","_el$38","_tmpl$15","leading","_el$45","_tmpl$19","_el$39","_tmpl$16","_el$40","_el$41","_el$42","_co$0","description","_el$46","_tmpl$20","trailing","_el$43","_tmpl$17","disclosure","_tmpl$18","ChatActivity","expanded","setExpanded","defaultOpen","open","tone","style","accent","renderBody","_el$50","_tmpl$22","_el$51","_v$30","_v$31","_v$32","_v$33","busy","_v$34","_v$35","_v$36","_$style","_el$47","_tmpl$21","_el$48","_el$49","addEventListener","event","currentTarget","onOpenChange","_$mergeProps","_c$","render","_v$21","_v$22","_v$23","_v$24","_v$25","bodyInset","_v$26","_v$27","_v$28","_v$29","h","r","ChatContextUsage","setBusy","run","formatNumber","formattedUsageValue","unknown","loopUsage","windowSize","contextWindow","percent","min","remaining","accessibleLabel","contextUsageUnavailableWithWindow","window","contextUsageUnavailable","tokensUsed","tokensUsedPercent","_el$54","_tmpl$25","_el$55","_el$78","_el$79","_co$12","_el$56","_el$72","_el$73","_co$1","_el$57","_el$58","_el$59","_el$60","_el$61","_el$62","_el$74","_el$75","_co$10","_el$66","_el$67","_el$68","_el$76","_el$77","_co$11","_el$80","_el$81","_co$13","lastRequestContext","size","contextWindowUsed","modelLabel","model","_el$82","_tmpl$24","_el$83","_el$84","_el$63","_el$64","_el$65","loopTotal","_c$3","notConfigured","_el$69","_el$70","_el$71","_c$4","onClick","aria-busy","_el$85","type","data-warning","aria-label","_tmpl$23","_el$53","_c$2","_$delegateEvents"],"sources":["chat/ChatPrimitives.tsx"],"sourcesContent":["import { createSignal, For, type JSX, onCleanup, Show } from \"solid-js\";\nimport { Dropdown, type DropdownItem } from \"../actions/Dropdown\";\nimport { ChatContextPopup } from \"./ChatContextPopup\";\nimport { Button } from \"../actions/Button\";\nimport { type UiMessages, useUiMessages } from \"../intl/messages\";\nimport { ProgressBar } from \"../surfaces/ProgressBar\";\nimport { executeChatAction } from \"./chat-behavior\";\nimport type { ChatAction, ChatActivityTone, ChatAttachment, ChatContextUsageData, ChatMessageStatus, ChatRole } from \"./types\";\n\nexport type ChatMessageProps = {\n role: ChatRole;\n children?: JSX.Element;\n label?: string;\n createdAt?: string | Date;\n timeLabel?: string;\n status?: ChatMessageStatus;\n attachments?: readonly ChatAttachment[];\n actions?: readonly ChatAction[];\n actionDisplay?: \"auto\" | \"inline\" | \"menu\";\n anchorId?: string | number;\n onActionError?: (error: unknown) => void;\n class?: string;\n};\n\nexport type ChatActivityProps = {\n label: string;\n description?: string;\n icon?: string;\n /** Optional host-owned leading visual rendered instead of the icon. */\n leading?: JSX.Element;\n /** Optional identity accent for the leading visual. Semantic tones still take precedence. */\n accent?: string;\n tone?: ChatActivityTone;\n /** Marks the activity as running with the shared accent sweep. */\n busy?: boolean;\n trailing?: JSX.Element;\n /** Controlled disclosure state. Omit to keep native details behavior. */\n open?: boolean;\n /** Reports disclosure changes when `open` is controlled by the host. */\n onOpenChange?: (open: boolean) => void;\n defaultOpen?: boolean;\n /** Set to false when the body is a peer list that should align with the activity row. */\n bodyInset?: boolean;\n anchorId?: string | number;\n children?: JSX.Element;\n /** Mount expensive details only while expanded. */\n renderBody?: () => JSX.Element;\n class?: string;\n};\n\nexport type ChatContextUsageProps = ChatContextUsageData & {\n action?: ChatAction;\n onActionError?: (error: unknown) => void;\n /** Host-owned number formatting. The default is locale-independent and SSR-stable. */\n formatNumber?: (value: number) => string;\n class?: string;\n};\n\nconst roleLabel = (role: ChatRole, messages: UiMessages): string => {\n if (role === \"assistant\") return messages.assistant;\n if (role === \"user\") return messages.user;\n if (role === \"tool\") return messages.tool;\n return messages.system;\n};\n\nconst statusLabel = (status: ChatMessageStatus | undefined, messages: UiMessages): string | null => {\n if (status === \"pending\") return messages.waiting;\n if (status === \"streaming\") return messages.generating;\n if (status === \"error\") return messages.failed;\n return null;\n};\n\nconst statusIcon = (status: ChatMessageStatus | undefined): string => {\n if (status === \"pending\") return \"ti ti-clock\";\n return \"ti ti-alert-circle\";\n};\n\nconst ChatProgressDots = () => (\n <span class=\"k2b-chat-progress-dots\" aria-hidden=\"true\">\n <span />\n <span />\n <span />\n </span>\n);\n\nconst attachmentIcon = (attachment: ChatAttachment): string =>\n attachment.icon ?? (attachment.kind === \"image\" ? \"ti ti-photo\" : attachment.kind === \"resource\" ? \"ti ti-link\" : \"ti ti-file\");\n\nconst finiteNonNegative = (value: number | undefined): number =>\n typeof value === \"number\" && Number.isFinite(value) ? Math.max(0, value) : 0;\n\nconst finiteUsageValue = (value: number | undefined): number | null =>\n typeof value === \"number\" && Number.isFinite(value) && value >= 0 ? value : null;\n\nconst normalizedUsage = (usage: ChatContextUsageData[\"usage\"]) => {\n const input = finiteUsageValue(usage?.input);\n const output = finiteUsageValue(usage?.output);\n const explicitTotal = finiteUsageValue(usage?.total);\n const total = explicitTotal ?? (input !== null || output !== null ? (input ?? 0) + (output ?? 0) : null);\n return { input, output, total, reported: total !== null };\n};\n\nconst formatStableInteger = (value: number): string => {\n const digits = String(Math.round(finiteNonNegative(value)));\n return digits.replace(/\\B(?=(\\d{3})+(?!\\d))/g, \",\");\n};\n\nexport const formatChatTokens = (tokens: number): string => {\n const value = finiteNonNegative(tokens);\n if (value >= 1_000_000) return `${(value / 1_000_000).toFixed(1)}M`;\n if (value >= 1_000) return `${(value / 1_000).toFixed(1)}k`;\n return String(Math.round(value));\n};\n\nconst dateTime = (value: string | Date | undefined): string | null => {\n if (!value) return null;\n const date = value instanceof Date ? value : new Date(value);\n return Number.isFinite(date.getTime()) ? date.toISOString() : null;\n};\n\nexport function ChatMessage(props: ChatMessageProps): JSX.Element {\n const messages = useUiMessages();\n const [busyActionId, setBusyActionId] = createSignal<string | null>(null);\n const [completedActionId, setCompletedActionId] = createSignal<string | null>(null);\n let completedTimer: ReturnType<typeof setTimeout> | undefined;\n const status = () => statusLabel(props.status, messages());\n const timestamp = () => dateTime(props.createdAt);\n // Locale and timezone are application policy. Requiring an explicit visible\n // label keeps SSR and hydration byte-stable while `createdAt` still supplies\n // the semantic machine-readable timestamp.\n const time = () => props.timeLabel ?? null;\n const actions = () => props.actions ?? [];\n const actionDisplay = () =>\n props.actionDisplay === \"auto\" || !props.actionDisplay ? (props.role === \"user\" ? \"menu\" : \"inline\") : props.actionDisplay;\n const hasMeta = () => props.status === \"streaming\" || status() !== null || Boolean(time()) || actions().length > 0;\n\n const runAction = async (action: ChatAction) => {\n if (action.disabled || busyActionId()) return;\n setBusyActionId(action.id);\n try {\n await executeChatAction(action);\n setCompletedActionId(action.id);\n if (completedTimer) clearTimeout(completedTimer);\n completedTimer = setTimeout(() => setCompletedActionId(null), 1400);\n } catch (error) {\n props.onActionError?.(error);\n } finally {\n setBusyActionId(null);\n }\n };\n\n const actionIcon = (action: ChatAction) =>\n busyActionId() === action.id\n ? \"ti ti-loader-2 k2b-spin\"\n : completedActionId() === action.id\n ? \"ti ti-check\"\n : (action.icon ?? \"ti ti-dots\");\n\n onCleanup(() => {\n if (completedTimer) clearTimeout(completedTimer);\n });\n\n const menuItems = (): readonly DropdownItem[] =>\n actions().map((action) => ({\n icon: actionIcon(action),\n label: action.label,\n variant: action.variant,\n disabled: action.disabled || Boolean(busyActionId()),\n action: () => void runAction(action),\n }));\n\n return (\n <article\n class={`k2b-chat-message ${props.class ?? \"\"}`}\n data-role={props.role}\n data-status={props.status ?? \"complete\"}\n data-chat-anchor={props.anchorId !== undefined ? String(props.anchorId) : undefined}\n aria-busy={props.status === \"pending\" || props.status === \"streaming\" ? \"true\" : undefined}\n >\n <span class=\"k2b-sr-only\">{props.label ?? roleLabel(props.role, messages())}: </span>\n <Show when={(props.attachments?.length ?? 0) > 0}>\n <div class=\"k2b-chat-message__attachments\" role=\"list\" aria-label={messages().attachments}>\n <For each={props.attachments}>\n {(attachment) => {\n const content = () => (\n <>\n <Show\n when={attachment.kind === \"image\" && attachment.previewUrl}\n fallback={<i class={attachmentIcon(attachment)} aria-hidden=\"true\" />}\n >\n <img src={attachment.previewUrl} alt={attachment.alt ?? attachment.name} />\n </Show>\n <Show when={attachment.kind !== \"image\"}>\n <span>{attachment.name}</span>\n </Show>\n </>\n );\n return (\n <Show\n when={attachment.href}\n fallback={\n <div class=\"k2b-chat-message__attachment\" data-kind={attachment.kind} role=\"listitem\" title={attachment.name}>\n {content()}\n </div>\n }\n >\n {(href) => (\n <a\n class=\"k2b-chat-message__attachment\"\n data-kind={attachment.kind}\n role=\"listitem\"\n title={attachment.name}\n href={href()}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n aria-label={messages().openInNewTab({ name: attachment.name })}\n >\n {content()}\n </a>\n )}\n </Show>\n );\n }}\n </For>\n </div>\n </Show>\n\n <Show when={props.children !== undefined && props.children !== null && props.children !== \"\"}>\n <div class=\"k2b-chat-message__bubble\">\n <div class=\"k2b-chat-message__content\">{props.children}</div>\n </div>\n </Show>\n\n <Show when={hasMeta()}>\n <footer class=\"k2b-chat-message__meta\">\n <Show\n when={props.status === \"streaming\"}\n fallback={\n <Show when={status()}>\n {(label) => (\n <span class=\"k2b-chat-message__status\" role={props.status === \"error\" ? \"alert\" : \"status\"}>\n <i class={statusIcon(props.status)} aria-hidden=\"true\" />\n {label()}\n </span>\n )}\n </Show>\n }\n >\n <span class=\"k2b-chat-message__status k2b-chat-message__status--streaming\" role=\"status\" aria-label={messages().generating}>\n <ChatProgressDots />\n </span>\n </Show>\n <Show when={time()}>{(label) => <time dateTime={timestamp() ?? undefined}>{label()}</time>}</Show>\n <Show when={actions().length > 0 && actionDisplay() === \"inline\"}>\n <span class=\"k2b-chat-message__actions\" role=\"group\" aria-label={messages().messageActions}>\n <For each={actions()}>\n {(action) => (\n <button\n type=\"button\"\n aria-label={action.label}\n aria-pressed={action.pressed}\n data-pressed-tone={action.pressedTone}\n title={action.label}\n data-danger={action.variant === \"danger\" ? \"true\" : undefined}\n disabled={action.disabled || Boolean(busyActionId())}\n onClick={() => void runAction(action)}\n >\n <i class={actionIcon(action)} aria-hidden=\"true\" />\n </button>\n )}\n </For>\n </span>\n </Show>\n <Show when={actions().length > 0 && actionDisplay() === \"menu\"}>\n <Dropdown.Root position=\"bottom-left\" width=\"12rem\" label={messages().messageActions} items={menuItems()}>\n <Dropdown.Trigger\n appearance=\"plain\"\n class=\"k2b-chat-message__menu\"\n label={messages().messageActions}\n title={messages().messageActions}\n >\n <i class=\"ti ti-dots\" aria-hidden=\"true\" />\n </Dropdown.Trigger>\n </Dropdown.Root>\n </Show>\n </footer>\n </Show>\n </article>\n );\n}\n\nconst ActivityContent = (props: ChatActivityProps & { disclosure?: boolean }) => (\n <>\n <span class=\"k2b-chat-activity__leading\" aria-hidden=\"true\">\n <Show when={props.leading} fallback={<i class={props.icon ?? \"ti ti-sparkles\"} />}>\n {props.leading}\n </Show>\n </span>\n <span class=\"k2b-chat-activity__copy\">\n <strong>{props.label}</strong>\n <Show when={props.description}>{(description) => <small>{description()}</small>}</Show>\n </span>\n <Show when={props.trailing}>\n <span class=\"k2b-chat-activity__trailing\">{props.trailing}</span>\n </Show>\n <Show when={props.disclosure}>\n <i class=\"ti ti-chevron-right k2b-chat-activity__chevron\" aria-hidden=\"true\" />\n </Show>\n </>\n);\n\nexport function ChatActivity(props: ChatActivityProps): JSX.Element {\n const [expanded, setExpanded] = createSignal(props.defaultOpen ?? false);\n const open = () => props.open ?? expanded();\n const tone = () => props.tone ?? \"neutral\";\n const style = () => (props.accent ? { \"--k2b-chat-activity-accent\": props.accent } : undefined);\n return (\n <Show\n when={props.renderBody || props.children}\n fallback={\n <div\n class={`k2b-chat-activity ${props.class ?? \"\"}`}\n data-tone={tone()}\n data-accent={props.accent ? \"true\" : undefined}\n data-busy={props.busy ? \"true\" : undefined}\n data-chat-anchor={props.anchorId !== undefined ? String(props.anchorId) : undefined}\n style={style()}\n aria-busy={props.busy ? \"true\" : undefined}\n >\n <div class=\"k2b-chat-activity__row\">\n <ActivityContent {...props} />\n </div>\n </div>\n }\n >\n <details\n class={`k2b-chat-activity ${props.class ?? \"\"}`}\n data-tone={tone()}\n data-accent={props.accent ? \"true\" : undefined}\n data-busy={props.busy ? \"true\" : undefined}\n data-body-inset={props.bodyInset === false ? \"false\" : undefined}\n data-chat-anchor={props.anchorId !== undefined ? String(props.anchorId) : undefined}\n style={style()}\n open={open()}\n onToggle={(event) => { setExpanded(event.currentTarget.open); props.onOpenChange?.(event.currentTarget.open); }}\n aria-busy={props.busy ? \"true\" : undefined}\n >\n <summary class=\"k2b-chat-activity__row\">\n <ActivityContent {...props} disclosure />\n </summary>\n <div class=\"k2b-chat-activity__body\">{props.renderBody ? <Show when={open() ? props.renderBody : undefined}>{(render) => render()()}</Show> : props.children}</div>\n </details>\n </Show>\n );\n}\n\nexport function ChatContextUsage(props: ChatContextUsageProps): JSX.Element {\n const [busy, setBusy] = createSignal(false);\n const run = async () => {\n const action = props.action;\n if (!action || action.disabled || busy()) return;\n setBusy(true);\n try {\n await executeChatAction(action);\n } catch (error) {\n props.onActionError?.(error);\n } finally {\n setBusy(false);\n }\n };\n const messages = useUiMessages();\n const formatNumber = (value: number) => (props.formatNumber ?? formatStableInteger)(value);\n const formattedUsageValue = (value: number | null): string => (value === null ? messages().unknown : formatNumber(value));\n const usage = () => normalizedUsage(props.usage);\n const loopUsage = () => normalizedUsage(props.loopUsage);\n const total = () => usage().total ?? 0;\n const windowSize = () => finiteNonNegative(props.contextWindow);\n const reported = () => usage().reported;\n const percent = () => (reported() && windowSize() > 0 ? Math.min(100, Math.round((total() / windowSize()) * 100)) : null);\n const remaining = () => (reported() && windowSize() > 0 ? Math.max(0, windowSize() - total()) : null);\n const accessibleLabel = () => {\n if (!reported()) {\n return windowSize() > 0\n ? messages().contextUsageUnavailableWithWindow({ window: formatNumber(windowSize()) })\n : messages().contextUsageUnavailable;\n }\n return percent() === null\n ? messages().tokensUsed({ total: formatNumber(total()) })\n : messages().tokensUsedPercent({ total: formatNumber(total()), percent: percent()! });\n };\n\n return (\n <ChatContextPopup\n content={\n <div class=\"k2b-chat-context__tooltip\">\n <strong>{messages().lastRequestContext}</strong>\n <Show when={percent() !== null}>\n <ProgressBar\n value={percent() ?? 0}\n size=\"xs\"\n tone={(percent() ?? 0) >= 85 ? \"danger\" : \"info\"}\n label={messages().contextWindowUsed}\n />\n </Show>\n <dl>\n <Show when={props.modelLabel}>\n {(model) => (\n <div>\n <dt>{messages().model}</dt>\n <dd>{model()}</dd>\n </div>\n )}\n </Show>\n <div>\n <dt>{messages().input}</dt>\n <dd>{formattedUsageValue(usage().input)}</dd>\n </div>\n <div>\n <dt>{messages().output}</dt>\n <dd>{formattedUsageValue(usage().output)}</dd>\n </div>\n <Show when={loopUsage().reported}>\n <div>\n <dt>{messages().loopTotal}</dt>\n <dd>{formattedUsageValue(loopUsage().total)}</dd>\n </div>\n </Show>\n <div>\n <dt>{messages().window}</dt>\n <dd>{windowSize() > 0 ? formatNumber(windowSize()) : messages().notConfigured}</dd>\n </div>\n <Show when={remaining() !== null}>\n <div>\n <dt>{messages().remaining}</dt>\n <dd>{remaining() === null ? messages().unknown : formatNumber(remaining()!)}</dd>\n </div>\n </Show>\n </dl>\n <Show when={props.action}>\n {(action) => (\n <Button size=\"xs\" variant=\"subtle\" disabled={action().disabled || busy()} onClick={() => void run()} aria-busy={busy()}>\n <i class={busy() ? \"ti ti-loader-2 k2b-spin\" : action().icon} aria-hidden=\"true\" />\n {action().label}\n </Button>\n )}\n </Show>\n </div>\n }\n type=\"button\"\n class={`k2b-chat-context ${props.class ?? \"\"}`}\n data-warning={reported() && (percent() ?? 0) >= 85 ? \"true\" : undefined}\n aria-label={accessibleLabel()}\n >\n <i class=\"ti ti-brain\" aria-hidden=\"true\" />\n <span>{percent() === null ? \"–\" : `${percent()}%`}</span>\n </ChatContextPopup>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|