@k2b/ui 0.2.0 → 0.4.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 +4 -1
- 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 +2 -2
- 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 +141 -78
- 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 +31 -14
- 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 +114 -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 +511 -162
- package/dist/browser/content/FileView.js.map +1 -1
- package/dist/browser/content/MarkdownView.js +6 -0
- package/dist/browser/content/MarkdownView.js.map +1 -1
- package/dist/browser/content/Pagination.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/dialog-core.js +81 -7
- 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/inputs/ChoiceGroups.js.map +1 -1
- package/dist/browser/inputs/Select.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/inputs/markdown/behaviors.js +1 -1
- package/dist/browser/inputs/markdown/behaviors.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 +56 -44
- 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 +219 -71
- 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/app-workspace-state.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 +4 -1
- 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 +2 -2
- 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 +49 -11
- 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 +14 -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 +58 -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 +356 -75
- package/dist/ssr/content/FileView.js.map +1 -1
- package/dist/ssr/content/MarkdownView.js +6 -0
- package/dist/ssr/content/MarkdownView.js.map +1 -1
- package/dist/ssr/content/Pagination.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/dialog-core.js +81 -7
- 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/inputs/ChoiceGroups.js.map +1 -1
- package/dist/ssr/inputs/Select.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/inputs/markdown/behaviors.js +1 -1
- package/dist/ssr/inputs/markdown/behaviors.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 +11 -4
- 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 +111 -26
- 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/app-workspace-state.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/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 +4 -4
- 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 +7 -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/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 +16 -2
- package/dist/types/feedback/InlineGuidance.d.ts +1 -0
- package/dist/types/feedback/dialog-core.d.ts +11 -0
- package/dist/types/feedback/prompts.d.ts +2 -0
- package/dist/types/feedback/toast.d.ts +7 -1
- 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 +1 -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 +5 -7
|
@@ -7,21 +7,25 @@ var _tmpl$ = ["<button type=\"button\" class=\"k2b-content-file-view__action\"",
|
|
|
7
7
|
_tmpl$3 = ["<div class=\"k2b-content-file-view__overlay\">", "</div>"],
|
|
8
8
|
_tmpl$4 = ["<div class=\"k2b-content-file-view__panel\"><div class=\"k2b-content-file-view__preview\">", "</div>", "</div>"],
|
|
9
9
|
_tmpl$5 = ["<button type=\"button\" class=\"k2b-markdown-editor__tool\"", " tabindex=\"-1\"", "><i", "></i></button>"],
|
|
10
|
-
_tmpl$6 = ["<div class=\"k2b-content-file-
|
|
11
|
-
_tmpl$7 = ["<
|
|
12
|
-
_tmpl$8 = ["<div class=\"
|
|
13
|
-
_tmpl$9 = ["<
|
|
14
|
-
_tmpl$0 = ["<
|
|
15
|
-
_tmpl$1 = ["<div class=\"k2b-content-file-
|
|
16
|
-
_tmpl$10 = ["<
|
|
17
|
-
_tmpl$11 = ["<
|
|
18
|
-
_tmpl$12 = ["<
|
|
19
|
-
_tmpl$13 = ["<
|
|
20
|
-
_tmpl$14 = ["<
|
|
21
|
-
_tmpl$15 = ["<
|
|
22
|
-
_tmpl$16 = ["<div class=\"k2b-content-file-
|
|
23
|
-
_tmpl$17 = ["<
|
|
24
|
-
_tmpl$18 = ["<
|
|
10
|
+
_tmpl$6 = ["<div class=\"k2b-content-file-view__truncated\">", "</div>"],
|
|
11
|
+
_tmpl$7 = ["<span>", "</span>"],
|
|
12
|
+
_tmpl$8 = ["<div class=\"", "\">", "</div>"],
|
|
13
|
+
_tmpl$9 = ["<div class=\"k2b-content-file-view__document\">", "</div>"],
|
|
14
|
+
_tmpl$0 = ["<div class=\"k2b-content-file-view__editor\">", "</div>"],
|
|
15
|
+
_tmpl$1 = ["<div class=\"k2b-content-file-view__editor\"><div class=\"k2b-markdown-editor\" data-fill=\"true\" role=\"group\"", "><div class=\"k2b-markdown-editor__toolbar k2b-content-file-view__code-toolbar\"><span class=\"k2b-content-file-view__code-language\">", "</span><span class=\"k2b-markdown-editor__trailing\">", "", "</span></div><div class=\"k2b-markdown-editor__surface\"><textarea class=\"k2b-content-file-view__code-input\"", " spellcheck=\"false\"></textarea></div></div></div>"],
|
|
16
|
+
_tmpl$10 = ["<a class=\"k2b-markdown-editor__tool\"", "><i class=\"ti ti-download\"></i></a>"],
|
|
17
|
+
_tmpl$11 = ["<div class=\"k2b-content-file-view__settings\">", "", "", "</div>"],
|
|
18
|
+
_tmpl$12 = ["<div class=\"k2b-content-file-view__sheet\"><table class=\"k2b-content-file-view__table\"><thead><tr>", "</tr></thead><tbody>", "</tbody></table>", "", "</div>"],
|
|
19
|
+
_tmpl$13 = ["<th scope=\"col\"><span>", "</span></th>"],
|
|
20
|
+
_tmpl$14 = ["<tr>", "</tr>"],
|
|
21
|
+
_tmpl$15 = ["<td>", "</td>"],
|
|
22
|
+
_tmpl$16 = ["<div class=\"k2b-content-file-view__pagination\">", "<span>", "\u2013", " / ", "</span>", "</div>"],
|
|
23
|
+
_tmpl$17 = ["<div class=\"k2b-content-file-view__media\"><img", "></div>"],
|
|
24
|
+
_tmpl$18 = ["<object", " type=\"application/pdf\" class=\"k2b-content-file-view__pdf\"", "></object>"],
|
|
25
|
+
_tmpl$19 = ["<div class=\"k2b-content-file-view__media\" data-kind=\"audio\"><audio", " controls preload=\"metadata\"", ">", "</audio></div>"],
|
|
26
|
+
_tmpl$20 = ["<div class=\"k2b-content-file-view__media\" data-kind=\"video\"><video", " controls preload=\"metadata\" playsinline", ">", "</video></div>"],
|
|
27
|
+
_tmpl$21 = ["<a class=\"k2b-button\" data-variant=\"secondary\" data-size=\"sm\"", " download><i class=\"ti ti-download\" aria-hidden=\"true\"></i>", "</a>"],
|
|
28
|
+
_tmpl$22 = ["<div class=\"", "\"", ">", "</div>"];
|
|
25
29
|
/**
|
|
26
30
|
* FileView — renders one file through a small renderer registry keyed by
|
|
27
31
|
* media type / path. Editing is enabled purely by the presence of `save`;
|
|
@@ -33,12 +37,16 @@ var _tmpl$ = ["<button type=\"button\" class=\"k2b-content-file-view__action\"",
|
|
|
33
37
|
*/
|
|
34
38
|
|
|
35
39
|
import { mutation } from "@k2b/stdlib/solid";
|
|
36
|
-
import { createEffect, createMemo, createResource, createSignal, For, Match, onCleanup, Show, Switch, untrack } from "solid-js";
|
|
40
|
+
import { createEffect, createMemo, createResource, createSignal, For, Match, onCleanup, onMount, Show, Switch, untrack } from "solid-js";
|
|
41
|
+
import { Button } from "../actions/Button";
|
|
42
|
+
import { prompts } from "../feedback/prompts";
|
|
37
43
|
import { toast } from "../feedback/toast";
|
|
38
44
|
import { MarkdownEditor } from "../inputs/markdown/MarkdownEditor";
|
|
45
|
+
import { Select } from "../inputs/Select";
|
|
39
46
|
import { useUiMessages } from "../intl/messages";
|
|
40
47
|
import Placeholder from "../surfaces/Placeholder";
|
|
41
48
|
import CodeDisplay from "./CodeDisplay";
|
|
49
|
+
import { decodeDelimitedContent, readDelimitedPreferences } from "./delimited-preferences";
|
|
42
50
|
import { fileViewExtension, getFileViewPreviewKind, parseDelimitedText } from "./file-view-preview";
|
|
43
51
|
import MarkdownView from "./MarkdownView";
|
|
44
52
|
import StructuredDataPreview from "./StructuredDataPreview";
|
|
@@ -116,6 +124,73 @@ function EditorToolButton(props) {
|
|
|
116
124
|
|
|
117
125
|
// ── Built-in renderers ──────────────────────────────────────────────────────
|
|
118
126
|
|
|
127
|
+
function MoreLines(props) {
|
|
128
|
+
const messages = useUiMessages();
|
|
129
|
+
return _$createComponent(Show, {
|
|
130
|
+
get when() {
|
|
131
|
+
return props.count > 0;
|
|
132
|
+
},
|
|
133
|
+
get children() {
|
|
134
|
+
return _$ssr(_tmpl$6, _$escape(_$createComponent(Show, {
|
|
135
|
+
get when() {
|
|
136
|
+
return props.onClick;
|
|
137
|
+
},
|
|
138
|
+
get fallback() {
|
|
139
|
+
return _$ssr(_tmpl$7, _$escape(messages().previewMoreLines(props.count)));
|
|
140
|
+
},
|
|
141
|
+
get children() {
|
|
142
|
+
return _$createComponent(Button, {
|
|
143
|
+
size: "sm",
|
|
144
|
+
variant: "ghost",
|
|
145
|
+
get onClick() {
|
|
146
|
+
return props.onClick;
|
|
147
|
+
},
|
|
148
|
+
get children() {
|
|
149
|
+
return messages().previewMoreLines(props.count);
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
}
|
|
153
|
+
})));
|
|
154
|
+
}
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
function TextExcerpt(props) {
|
|
158
|
+
const lines = createMemo(() => props.text.replace(/\r\n?/g, "\n").replace(/\n$/, "").split("\n"));
|
|
159
|
+
const limit = () => props.renderer.previewLines === undefined ? lines().length : Math.max(1, props.renderer.previewLines);
|
|
160
|
+
const text = () => lines().slice(0, limit()).join("\n");
|
|
161
|
+
return [_$ssr(_tmpl$8, props.renderer.previewLines !== undefined ? "k2b-content-file-view__excerpt" : "", _$escape(_$createComponent(Show, {
|
|
162
|
+
get when() {
|
|
163
|
+
return props.markdown;
|
|
164
|
+
},
|
|
165
|
+
get fallback() {
|
|
166
|
+
return _$createComponent(CodeDisplay, {
|
|
167
|
+
get code() {
|
|
168
|
+
return text();
|
|
169
|
+
},
|
|
170
|
+
get language() {
|
|
171
|
+
return codeLanguage(props.renderer.file.path);
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
},
|
|
175
|
+
get children() {
|
|
176
|
+
return _$createComponent(MarkdownView, {
|
|
177
|
+
get markdown() {
|
|
178
|
+
return text();
|
|
179
|
+
},
|
|
180
|
+
get headingScale() {
|
|
181
|
+
return props.renderer.headingScale ?? "compact";
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
}))), _$createComponent(MoreLines, {
|
|
186
|
+
get count() {
|
|
187
|
+
return lines().length - limit();
|
|
188
|
+
},
|
|
189
|
+
get onClick() {
|
|
190
|
+
return props.renderer.onExpandPreview;
|
|
191
|
+
}
|
|
192
|
+
})];
|
|
193
|
+
}
|
|
119
194
|
function MarkdownRenderer(props) {
|
|
120
195
|
const messages = useUiMessages();
|
|
121
196
|
const [editing, setEditing] = createSignal(false);
|
|
@@ -142,18 +217,19 @@ function MarkdownRenderer(props) {
|
|
|
142
217
|
}), _$createComponent(DownloadAction, props)];
|
|
143
218
|
},
|
|
144
219
|
get children() {
|
|
145
|
-
return _$ssr(_tmpl$
|
|
146
|
-
|
|
220
|
+
return _$ssr(_tmpl$9, _$escape(_$createComponent(TextExcerpt, {
|
|
221
|
+
renderer: props,
|
|
222
|
+
get text() {
|
|
147
223
|
return stripFrontmatter(props.editor?.draft() ?? props.content.content);
|
|
148
224
|
},
|
|
149
|
-
|
|
225
|
+
markdown: true
|
|
150
226
|
})));
|
|
151
227
|
}
|
|
152
228
|
});
|
|
153
229
|
},
|
|
154
230
|
children: _ => {
|
|
155
231
|
const editor = props.editor;
|
|
156
|
-
return _$ssr(_tmpl$
|
|
232
|
+
return _$ssr(_tmpl$0, _$escape(_$createComponent(MarkdownEditor, {
|
|
157
233
|
"class": "k2b-content-file-view__markdown-field",
|
|
158
234
|
get ["aria-label"]() {
|
|
159
235
|
return `Edit ${props.file.path.slice(props.file.path.lastIndexOf("/") + 1)}`;
|
|
@@ -198,12 +274,10 @@ function TextRenderer(props) {
|
|
|
198
274
|
return _$createComponent(DownloadAction, props);
|
|
199
275
|
},
|
|
200
276
|
get children() {
|
|
201
|
-
return _$createComponent(
|
|
202
|
-
|
|
277
|
+
return _$createComponent(TextExcerpt, {
|
|
278
|
+
renderer: props,
|
|
279
|
+
get text() {
|
|
203
280
|
return props.content.content;
|
|
204
|
-
},
|
|
205
|
-
get language() {
|
|
206
|
-
return codeLanguage(props.file.path);
|
|
207
281
|
}
|
|
208
282
|
});
|
|
209
283
|
}
|
|
@@ -211,11 +285,11 @@ function TextRenderer(props) {
|
|
|
211
285
|
},
|
|
212
286
|
children: editor => // Same chrome as the markdown editor — literally the same classes, so
|
|
213
287
|
// border, radius, focus ring, toolbar height and text metrics cannot drift.
|
|
214
|
-
_$ssr(_tmpl$
|
|
288
|
+
_$ssr(_tmpl$1, _$ssrAttribute("aria-label", _$escape(messages().textEditor, true), false), _$escape(codeLanguage(props.file.path)), _$escape(_$createComponent(Show, {
|
|
215
289
|
get when() {
|
|
216
290
|
return props.downloadHref;
|
|
217
291
|
},
|
|
218
|
-
children: href => _$ssr(_tmpl$
|
|
292
|
+
children: href => _$ssr(_tmpl$10, _$ssrAttribute("href", _$escape(href(), true), false) + _$ssrAttribute("download", _$escape(props.file.path.slice(props.file.path.lastIndexOf("/") + 1), true), false) + _$ssrAttribute("title", _$escape(messages().download, true), false) + _$ssrAttribute("aria-label", _$escape(messages().download, true), false))
|
|
219
293
|
})), _$escape(_$createComponent(EditorToolButton, {
|
|
220
294
|
get icon() {
|
|
221
295
|
return editor().saving() ? "ti ti-loader-2 k2b-spin" : "ti ti-device-floppy";
|
|
@@ -252,24 +326,39 @@ function JsonRenderer(props) {
|
|
|
252
326
|
return _$createComponent(DownloadAction, props);
|
|
253
327
|
},
|
|
254
328
|
get children() {
|
|
255
|
-
return _$ssr(_tmpl$
|
|
329
|
+
return _$ssr(_tmpl$9, _$escape(_$createComponent(Show, {
|
|
256
330
|
get when() {
|
|
257
331
|
return parsed().ok;
|
|
258
332
|
},
|
|
259
333
|
get fallback() {
|
|
260
|
-
return _$createComponent(
|
|
261
|
-
|
|
334
|
+
return _$createComponent(TextExcerpt, {
|
|
335
|
+
renderer: props,
|
|
336
|
+
get text() {
|
|
262
337
|
return props.content.content;
|
|
263
|
-
}
|
|
264
|
-
language: "text"
|
|
338
|
+
}
|
|
265
339
|
});
|
|
266
340
|
},
|
|
267
341
|
get children() {
|
|
268
|
-
return _$createComponent(
|
|
269
|
-
get
|
|
270
|
-
return
|
|
342
|
+
return _$createComponent(Show, {
|
|
343
|
+
get when() {
|
|
344
|
+
return props.previewLines === undefined;
|
|
345
|
+
},
|
|
346
|
+
get fallback() {
|
|
347
|
+
return _$createComponent(TextExcerpt, {
|
|
348
|
+
renderer: props,
|
|
349
|
+
get text() {
|
|
350
|
+
return JSON.stringify(parsedValue(), null, 2);
|
|
351
|
+
}
|
|
352
|
+
});
|
|
271
353
|
},
|
|
272
|
-
|
|
354
|
+
get children() {
|
|
355
|
+
return _$createComponent(StructuredDataPreview, {
|
|
356
|
+
get data() {
|
|
357
|
+
return parsedValue();
|
|
358
|
+
},
|
|
359
|
+
maxRows: 200
|
|
360
|
+
});
|
|
361
|
+
}
|
|
273
362
|
});
|
|
274
363
|
}
|
|
275
364
|
})));
|
|
@@ -278,56 +367,230 @@ function JsonRenderer(props) {
|
|
|
278
367
|
}
|
|
279
368
|
function DelimitedTextRenderer(props) {
|
|
280
369
|
const messages = useUiMessages();
|
|
281
|
-
const
|
|
282
|
-
|
|
370
|
+
const [preferences, setPreferences] = createSignal({
|
|
371
|
+
encoding: "utf-8",
|
|
372
|
+
delimiter: "auto",
|
|
373
|
+
view: "table"
|
|
374
|
+
});
|
|
375
|
+
onMount(() => {
|
|
376
|
+
if (!props.previewPreferencesKey) return;
|
|
377
|
+
try {
|
|
378
|
+
setPreferences(readDelimitedPreferences(localStorage.getItem(props.previewPreferencesKey)));
|
|
379
|
+
} catch {
|
|
380
|
+
/* Storage may be disabled. */
|
|
381
|
+
}
|
|
382
|
+
});
|
|
383
|
+
const update = patch => {
|
|
384
|
+
const next = {
|
|
385
|
+
...preferences(),
|
|
386
|
+
...patch
|
|
387
|
+
};
|
|
388
|
+
setPreferences(next);
|
|
389
|
+
if (props.previewPreferencesKey) {
|
|
390
|
+
try {
|
|
391
|
+
localStorage.setItem(props.previewPreferencesKey, JSON.stringify(next));
|
|
392
|
+
} catch {
|
|
393
|
+
/* Keep the local selection. */
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
};
|
|
397
|
+
const text = createMemo(() => decodeDelimitedContent(props.content, preferences().encoding));
|
|
398
|
+
const delimiter = () => preferences().delimiter === "auto" ? fileViewExtension(props.file.path) === "tsv" || props.content.mediaType === "text/tab-separated-values" ? "\t" : "," : preferences().delimiter;
|
|
399
|
+
const [page, setPage] = createSignal(0);
|
|
400
|
+
createEffect(() => {
|
|
401
|
+
text();
|
|
402
|
+
delimiter();
|
|
403
|
+
props.previewLines;
|
|
404
|
+
setPage(0);
|
|
405
|
+
});
|
|
406
|
+
const pageSize = () => props.previewLines === undefined ? 200 : Math.max(1, props.previewLines);
|
|
407
|
+
const preview = createMemo(() => parseDelimitedText(text(), delimiter(), {
|
|
408
|
+
rows: pageSize() + 1,
|
|
409
|
+
offset: page() * pageSize()
|
|
410
|
+
}));
|
|
411
|
+
const settings = () => prompts.dialog(() => _$ssr(_tmpl$11, _$escape(_$createComponent(Select, {
|
|
412
|
+
get label() {
|
|
413
|
+
return messages().csvEncoding;
|
|
414
|
+
},
|
|
415
|
+
get value() {
|
|
416
|
+
return preferences().encoding;
|
|
417
|
+
},
|
|
418
|
+
get disabled() {
|
|
419
|
+
return props.content.encoding !== "base64";
|
|
420
|
+
},
|
|
421
|
+
options: ["utf-8", "windows-1252", "utf-16le", "utf-16be"],
|
|
422
|
+
onValueChange: value => {
|
|
423
|
+
if (value) update({
|
|
424
|
+
encoding: value
|
|
425
|
+
});
|
|
426
|
+
}
|
|
427
|
+
})), _$escape(_$createComponent(Select, {
|
|
428
|
+
get label() {
|
|
429
|
+
return messages().csvSeparator;
|
|
430
|
+
},
|
|
431
|
+
get value() {
|
|
432
|
+
return preferences().delimiter;
|
|
433
|
+
},
|
|
434
|
+
get options() {
|
|
435
|
+
return [{
|
|
436
|
+
value: "auto",
|
|
437
|
+
label: messages().csvDefaultSeparator
|
|
438
|
+
}, {
|
|
439
|
+
value: ",",
|
|
440
|
+
label: messages().csvComma
|
|
441
|
+
}, {
|
|
442
|
+
value: ";",
|
|
443
|
+
label: messages().csvSemicolon
|
|
444
|
+
}, {
|
|
445
|
+
value: "\t",
|
|
446
|
+
label: messages().csvTab
|
|
447
|
+
}, {
|
|
448
|
+
value: "|",
|
|
449
|
+
label: "|"
|
|
450
|
+
}];
|
|
451
|
+
},
|
|
452
|
+
onValueChange: value => {
|
|
453
|
+
if (value) update({
|
|
454
|
+
delimiter: value
|
|
455
|
+
});
|
|
456
|
+
}
|
|
457
|
+
})), _$escape(_$createComponent(Select, {
|
|
458
|
+
get label() {
|
|
459
|
+
return messages().csvView;
|
|
460
|
+
},
|
|
461
|
+
get value() {
|
|
462
|
+
return preferences().view;
|
|
463
|
+
},
|
|
464
|
+
get options() {
|
|
465
|
+
return [{
|
|
466
|
+
value: "table",
|
|
467
|
+
label: messages().dataTable
|
|
468
|
+
}, {
|
|
469
|
+
value: "raw",
|
|
470
|
+
label: messages().csvRaw
|
|
471
|
+
}];
|
|
472
|
+
},
|
|
473
|
+
onValueChange: value => {
|
|
474
|
+
if (value === "table" || value === "raw") update({
|
|
475
|
+
view: value
|
|
476
|
+
});
|
|
477
|
+
}
|
|
478
|
+
}))), {
|
|
479
|
+
title: messages().csvSettings
|
|
480
|
+
});
|
|
283
481
|
const headers = createMemo(() => preview().rows[0] ?? []);
|
|
284
482
|
const rows = createMemo(() => preview().rows.slice(1));
|
|
285
483
|
return _$createComponent(OverlayPanel, {
|
|
286
484
|
get actions() {
|
|
287
|
-
return _$createComponent(
|
|
485
|
+
return [_$createComponent(OverlayAction, {
|
|
486
|
+
icon: "ti-adjustments-horizontal",
|
|
487
|
+
get title() {
|
|
488
|
+
return messages().csvSettings;
|
|
489
|
+
},
|
|
490
|
+
onClick: () => void settings()
|
|
491
|
+
}), _$createComponent(DownloadAction, props)];
|
|
288
492
|
},
|
|
289
493
|
get children() {
|
|
290
494
|
return _$createComponent(Show, {
|
|
291
495
|
get when() {
|
|
292
|
-
return
|
|
496
|
+
return preferences().view === "table";
|
|
293
497
|
},
|
|
294
498
|
get fallback() {
|
|
295
|
-
return _$createComponent(
|
|
296
|
-
|
|
297
|
-
get
|
|
298
|
-
return
|
|
299
|
-
},
|
|
300
|
-
get description() {
|
|
301
|
-
return messages().delimitedFileEmpty;
|
|
499
|
+
return _$createComponent(TextExcerpt, {
|
|
500
|
+
renderer: props,
|
|
501
|
+
get text() {
|
|
502
|
+
return text();
|
|
302
503
|
}
|
|
303
504
|
});
|
|
304
505
|
},
|
|
305
506
|
get children() {
|
|
306
|
-
return _$
|
|
307
|
-
get each() {
|
|
308
|
-
return headers();
|
|
309
|
-
},
|
|
310
|
-
children: (header, index) => _$ssr(_tmpl$10, _$escape(header || messages().column({
|
|
311
|
-
number: index() + 1
|
|
312
|
-
})))
|
|
313
|
-
})), _$escape(_$createComponent(For, {
|
|
314
|
-
get each() {
|
|
315
|
-
return rows();
|
|
316
|
-
},
|
|
317
|
-
children: row => _$ssr(_tmpl$11, _$escape(_$createComponent(For, {
|
|
318
|
-
get each() {
|
|
319
|
-
return headers();
|
|
320
|
-
},
|
|
321
|
-
children: (_, index) => _$ssr(_tmpl$12, _$escape(row[index()] ?? ""))
|
|
322
|
-
})))
|
|
323
|
-
})), _$escape(_$createComponent(Show, {
|
|
507
|
+
return _$createComponent(Show, {
|
|
324
508
|
get when() {
|
|
325
|
-
return
|
|
509
|
+
return headers().length > 0;
|
|
510
|
+
},
|
|
511
|
+
get fallback() {
|
|
512
|
+
return _$createComponent(Placeholder, {
|
|
513
|
+
icon: "ti ti-table",
|
|
514
|
+
get title() {
|
|
515
|
+
return messages().emptyFile;
|
|
516
|
+
},
|
|
517
|
+
get description() {
|
|
518
|
+
return messages().delimitedFileEmpty;
|
|
519
|
+
}
|
|
520
|
+
});
|
|
326
521
|
},
|
|
327
522
|
get children() {
|
|
328
|
-
return _$ssr(_tmpl$
|
|
523
|
+
return _$ssr(_tmpl$12, _$escape(_$createComponent(For, {
|
|
524
|
+
get each() {
|
|
525
|
+
return headers();
|
|
526
|
+
},
|
|
527
|
+
children: (header, index) => _$ssr(_tmpl$13, _$escape(header || messages().column({
|
|
528
|
+
number: index() + 1
|
|
529
|
+
})))
|
|
530
|
+
})), _$escape(_$createComponent(For, {
|
|
531
|
+
get each() {
|
|
532
|
+
return rows();
|
|
533
|
+
},
|
|
534
|
+
children: row => _$ssr(_tmpl$14, _$escape(_$createComponent(For, {
|
|
535
|
+
get each() {
|
|
536
|
+
return headers();
|
|
537
|
+
},
|
|
538
|
+
children: (_, index) => _$ssr(_tmpl$15, _$escape(row[index()] ?? ""))
|
|
539
|
+
})))
|
|
540
|
+
})), _$escape(_$createComponent(Show, {
|
|
541
|
+
get when() {
|
|
542
|
+
return preview().columnsTruncated;
|
|
543
|
+
},
|
|
544
|
+
get children() {
|
|
545
|
+
return _$ssr(_tmpl$6, _$escape(messages().previewColumnsLimited));
|
|
546
|
+
}
|
|
547
|
+
})), _$escape(_$createComponent(Show, {
|
|
548
|
+
get when() {
|
|
549
|
+
return props.previewLines !== undefined;
|
|
550
|
+
},
|
|
551
|
+
get fallback() {
|
|
552
|
+
return _$createComponent(Show, {
|
|
553
|
+
get when() {
|
|
554
|
+
return preview().totalRows > 201;
|
|
555
|
+
},
|
|
556
|
+
get children() {
|
|
557
|
+
return _$ssr(_tmpl$16, _$escape(_$createComponent(Button, {
|
|
558
|
+
size: "sm",
|
|
559
|
+
variant: "ghost",
|
|
560
|
+
get disabled() {
|
|
561
|
+
return page() === 0;
|
|
562
|
+
},
|
|
563
|
+
onClick: () => setPage(page() - 1),
|
|
564
|
+
get children() {
|
|
565
|
+
return messages().previous;
|
|
566
|
+
}
|
|
567
|
+
})), _$escape(page()) * _$escape(pageSize()) + 1, _$escape(Math.min((page() + 1) * pageSize(), preview().totalRows - 1)), _$escape(preview().totalRows) - 1, _$escape(_$createComponent(Button, {
|
|
568
|
+
size: "sm",
|
|
569
|
+
variant: "ghost",
|
|
570
|
+
get disabled() {
|
|
571
|
+
return (page() + 1) * pageSize() >= preview().totalRows - 1;
|
|
572
|
+
},
|
|
573
|
+
onClick: () => setPage(page() + 1),
|
|
574
|
+
get children() {
|
|
575
|
+
return messages().next;
|
|
576
|
+
}
|
|
577
|
+
})));
|
|
578
|
+
}
|
|
579
|
+
});
|
|
580
|
+
},
|
|
581
|
+
get children() {
|
|
582
|
+
return _$createComponent(MoreLines, {
|
|
583
|
+
get count() {
|
|
584
|
+
return preview().totalRows - rows().length - 1;
|
|
585
|
+
},
|
|
586
|
+
get onClick() {
|
|
587
|
+
return props.onExpandPreview;
|
|
588
|
+
}
|
|
589
|
+
});
|
|
590
|
+
}
|
|
591
|
+
})));
|
|
329
592
|
}
|
|
330
|
-
})
|
|
593
|
+
});
|
|
331
594
|
}
|
|
332
595
|
});
|
|
333
596
|
}
|
|
@@ -340,7 +603,7 @@ function ImageRenderer(props) {
|
|
|
340
603
|
return _$createComponent(DownloadAction, props);
|
|
341
604
|
},
|
|
342
605
|
get children() {
|
|
343
|
-
return _$ssr(_tmpl$
|
|
606
|
+
return _$ssr(_tmpl$17, _$ssrAttribute("crossorigin", _$escape(props.crossOrigin, true), false) + _$ssrAttribute("src", _$escape(mediaSource(props), true), false) + _$ssrAttribute("alt", _$escape(props.file.path, true), false));
|
|
344
607
|
}
|
|
345
608
|
});
|
|
346
609
|
}
|
|
@@ -360,7 +623,7 @@ function PdfRenderer(props) {
|
|
|
360
623
|
}
|
|
361
624
|
});
|
|
362
625
|
},
|
|
363
|
-
children: href => _$ssr(_tmpl$
|
|
626
|
+
children: href => _$ssr(_tmpl$18, _$ssrAttribute("data", _$escape(href(), true), false), _$ssrAttribute("aria-label", _$escape(props.file.path, true), false))
|
|
364
627
|
});
|
|
365
628
|
}
|
|
366
629
|
function AudioRenderer(props) {
|
|
@@ -370,7 +633,7 @@ function AudioRenderer(props) {
|
|
|
370
633
|
return _$createComponent(DownloadAction, props);
|
|
371
634
|
},
|
|
372
635
|
get children() {
|
|
373
|
-
return _$ssr(_tmpl$
|
|
636
|
+
return _$ssr(_tmpl$19, _$ssrAttribute("crossorigin", _$escape(props.crossOrigin, true), false), _$ssrAttribute("src", _$escape(mediaSource(props), true), false) + _$ssrAttribute("aria-label", _$escape(props.file.path, true), false), _$escape(messages().audioUnsupported));
|
|
374
637
|
}
|
|
375
638
|
});
|
|
376
639
|
}
|
|
@@ -381,7 +644,7 @@ function VideoRenderer(props) {
|
|
|
381
644
|
return _$createComponent(DownloadAction, props);
|
|
382
645
|
},
|
|
383
646
|
get children() {
|
|
384
|
-
return _$ssr(_tmpl$
|
|
647
|
+
return _$ssr(_tmpl$20, _$ssrAttribute("crossorigin", _$escape(props.crossOrigin, true), false), _$ssrAttribute("src", _$escape(mediaSource(props), true), false) + _$ssrAttribute("aria-label", _$escape(props.file.path, true), false), _$escape(messages().videoUnsupported));
|
|
385
648
|
}
|
|
386
649
|
});
|
|
387
650
|
}
|
|
@@ -400,7 +663,7 @@ function BinaryRenderer(props) {
|
|
|
400
663
|
get when() {
|
|
401
664
|
return props.downloadHref;
|
|
402
665
|
},
|
|
403
|
-
children: href => _$ssr(_tmpl$
|
|
666
|
+
children: href => _$ssr(_tmpl$21, _$ssrAttribute("href", _$escape(href(), true), false), _$escape(messages().download))
|
|
404
667
|
});
|
|
405
668
|
}
|
|
406
669
|
});
|
|
@@ -433,7 +696,7 @@ const BUILTIN_RENDERERS = [{
|
|
|
433
696
|
component: JsonRenderer
|
|
434
697
|
}, {
|
|
435
698
|
id: "delimited-text",
|
|
436
|
-
match: (file, content) =>
|
|
699
|
+
match: (file, content) => getFileViewPreviewKind({
|
|
437
700
|
...file,
|
|
438
701
|
mediaType: content.mediaType || file.mediaType
|
|
439
702
|
}) === "delimited-text",
|
|
@@ -552,7 +815,7 @@ export default function FileView(props) {
|
|
|
552
815
|
saving: saveMutation.loading,
|
|
553
816
|
save
|
|
554
817
|
} : null;
|
|
555
|
-
return _$ssr(_tmpl$
|
|
818
|
+
return _$ssr(_tmpl$22, `k2b-content-file-view ${_$escape(props.class ?? "", true)}`, _$ssrAttribute("data-variant", _$escape(props.variant, true), false) + _$ssrAttribute("data-excerpt", props.previewLines !== undefined ? "true" : _$escape(undefined, true), false), _$escape(_$createComponent(Switch, {
|
|
556
819
|
get children() {
|
|
557
820
|
return [_$createComponent(Match, {
|
|
558
821
|
get when() {
|
|
@@ -588,6 +851,18 @@ export default function FileView(props) {
|
|
|
588
851
|
children: active => {
|
|
589
852
|
const Renderer = active().component;
|
|
590
853
|
return _$createComponent(Renderer, {
|
|
854
|
+
get previewLines() {
|
|
855
|
+
return props.previewLines;
|
|
856
|
+
},
|
|
857
|
+
get onExpandPreview() {
|
|
858
|
+
return props.onExpandPreview;
|
|
859
|
+
},
|
|
860
|
+
get headingScale() {
|
|
861
|
+
return props.headingScale;
|
|
862
|
+
},
|
|
863
|
+
get previewPreferencesKey() {
|
|
864
|
+
return props.previewPreferencesKey;
|
|
865
|
+
},
|
|
591
866
|
get file() {
|
|
592
867
|
return props.file;
|
|
593
868
|
},
|
|
@@ -597,6 +872,12 @@ export default function FileView(props) {
|
|
|
597
872
|
get previewHref() {
|
|
598
873
|
return nativePreviewHref();
|
|
599
874
|
},
|
|
875
|
+
get crossOrigin() {
|
|
876
|
+
return props.crossOrigin;
|
|
877
|
+
},
|
|
878
|
+
get onPreviewError() {
|
|
879
|
+
return props.onPreviewError;
|
|
880
|
+
},
|
|
600
881
|
get downloadHref() {
|
|
601
882
|
return props.downloadHref ?? null;
|
|
602
883
|
},
|