@k2b/ui 0.2.0 → 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 +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 +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 +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 +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 +6 -0
- 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/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/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/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/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 +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 +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 +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 +6 -0
- 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/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/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/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/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 +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 +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 +15 -1
- 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 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["default","AppOverview","AppWorkspace","installAppWorkspaceController","APP_WORKSPACE_DETAIL_DEFAULT","APP_WORKSPACE_DETAIL_MAX","APP_WORKSPACE_DETAIL_MIN","APP_WORKSPACE_DRAWER_DEFAULT","APP_WORKSPACE_DRAWER_MAX","APP_WORKSPACE_DRAWER_MIN","APP_WORKSPACE_MAIN_MIN","APP_WORKSPACE_MAIN_MIN_HEIGHT","APP_WORKSPACE_PANE_DEFAULT","APP_WORKSPACE_PANE_MAX","APP_WORKSPACE_PANE_MIN","APP_WORKSPACE_SIDEBAR_COLLAPSE_THRESHOLD","APP_WORKSPACE_SIDEBAR_COLLAPSED","APP_WORKSPACE_SIDEBAR_DEFAULT","APP_WORKSPACE_SIDEBAR_MAX","APP_WORKSPACE_SIDEBAR_MIN","appWorkspaceLayoutStyle","appWorkspacePanelVariable","appWorkspaceResizeLimits","normalizeAppWorkspaceLayoutState","parseAppWorkspaceLayoutState","resolveAppWorkspaceSidebarWidth","safeAppWorkspacePanelId","serializeAppWorkspaceLayoutState","shouldCollapseAppWorkspaceSidebar","DataPanel","DetailPanel","Discussion","FloatingWindow","fitFloatingWindowRect","openFloatingWindow","confirmDiscardIfDirty","PanelDialog","panelDialogFixedOptions","panelDialogFixedPanelClass","panelDialogOptions","panelDialogPanelClass","panelDialogWideOptions","panelDialogWidePanelClass","panelDialogWorkspaceOptions","panelDialogWorkspacePanelClass","PanelHeader","Panes","activatePanesItem","addPanesItem","applyPanesIntent","createPanesLayout","isPanesItemVisible","PANES_LAYOUT_VERSION","parsePanesLayout","reconcilePanesLayout","removePanesItem","resizePanesSplit","ScrollArea","readSettingsError","SettingsField","SettingsGroup","SettingsPage","SettingsPanelFooter","SettingsSaveBar","SettingsSection","sameSettingValue","SettingsCollection","SettingsModal"],"sources":["layout/index.ts"],"sourcesContent":["export type {\n AppOverviewEmptyStateProps,\n AppOverviewPanelProps,\n AppOverviewProps,\n} from \"./AppOverview\";\nexport { default as AppOverview } from \"./AppOverview\";\nexport type {\n AppWorkspaceBottomDrawerHeight,\n AppWorkspaceBottomDrawerProps,\n AppWorkspaceContentProps,\n AppWorkspaceDetailProps,\n AppWorkspaceDetailWidth,\n AppWorkspaceMainPaneProps,\n AppWorkspaceMainProps,\n AppWorkspaceNavTreeItemProps,\n AppWorkspaceNavTreeProps,\n AppWorkspaceProps,\n AppWorkspaceSidebarAccessoryVisibility,\n AppWorkspaceSidebarBodyProps,\n AppWorkspaceSidebarIconActionProps,\n AppWorkspaceSidebarIconActionTone,\n AppWorkspaceSidebarIconGridProps,\n AppWorkspaceSidebarItemActionProps,\n AppWorkspaceSidebarItemActionsProps,\n AppWorkspaceSidebarItemIconProps,\n AppWorkspaceSidebarItemLabelProps,\n AppWorkspaceSidebarItemMetaProps,\n AppWorkspaceSidebarItemProps,\n AppWorkspaceSidebarItemTone,\n
|
|
1
|
+
{"version":3,"names":["default","AppOverview","AppWorkspace","installAppWorkspaceController","APP_WORKSPACE_DETAIL_DEFAULT","APP_WORKSPACE_DETAIL_MAX","APP_WORKSPACE_DETAIL_MIN","APP_WORKSPACE_DRAWER_DEFAULT","APP_WORKSPACE_DRAWER_MAX","APP_WORKSPACE_DRAWER_MIN","APP_WORKSPACE_MAIN_MIN","APP_WORKSPACE_MAIN_MIN_HEIGHT","APP_WORKSPACE_PANE_DEFAULT","APP_WORKSPACE_PANE_MAX","APP_WORKSPACE_PANE_MIN","APP_WORKSPACE_SIDEBAR_COLLAPSE_THRESHOLD","APP_WORKSPACE_SIDEBAR_COLLAPSED","APP_WORKSPACE_SIDEBAR_DEFAULT","APP_WORKSPACE_SIDEBAR_MAX","APP_WORKSPACE_SIDEBAR_MIN","appWorkspaceLayoutStyle","appWorkspacePanelVariable","appWorkspaceResizeLimits","normalizeAppWorkspaceLayoutState","parseAppWorkspaceLayoutState","resolveAppWorkspaceSidebarWidth","safeAppWorkspacePanelId","serializeAppWorkspaceLayoutState","shouldCollapseAppWorkspaceSidebar","DataPanel","DetailPanel","Discussion","FloatingWindow","fitFloatingWindowRect","openFloatingWindow","confirmDiscardIfDirty","PanelDialog","panelDialogFixedOptions","panelDialogFixedPanelClass","panelDialogOptions","panelDialogPanelClass","panelDialogWideOptions","panelDialogWidePanelClass","panelDialogWorkspaceOptions","panelDialogWorkspacePanelClass","PanelHeader","Panes","activatePanesItem","addPanesItem","applyPanesIntent","createPanesLayout","isPanesItemVisible","PANES_LAYOUT_VERSION","parsePanesLayout","reconcilePanesLayout","removePanesItem","resizePanesSplit","ScrollArea","readSettingsError","SettingsField","SettingsGroup","SettingsPage","SettingsPanelFooter","SettingsSaveBar","SettingsSection","sameSettingValue","SettingsCollection","SettingsModal","BottomSheet","bottomSheetOptions","Navigation","createNavigation","findNavigationItem"],"sources":["layout/index.ts"],"sourcesContent":["export type {\n AppOverviewEmptyStateProps,\n AppOverviewPanelProps,\n AppOverviewProps,\n} from \"./AppOverview\";\nexport { default as AppOverview } from \"./AppOverview\";\nexport type {\n AppWorkspaceBottomDrawerHeight,\n AppWorkspaceBottomDrawerProps,\n AppWorkspaceContentProps,\n AppWorkspaceDetailProps,\n AppWorkspaceDetailWidth,\n AppWorkspaceMainPaneProps,\n AppWorkspaceMainProps,\n AppWorkspaceNavTreeItemProps,\n AppWorkspaceNavTreeProps,\n AppWorkspaceProps,\n AppWorkspaceSidebarAccessoryVisibility,\n AppWorkspaceSidebarBodyProps,\n AppWorkspaceSidebarIconActionProps,\n AppWorkspaceSidebarIconActionTone,\n AppWorkspaceSidebarIconGridProps,\n AppWorkspaceSidebarItemActionProps,\n AppWorkspaceSidebarItemActionsProps,\n AppWorkspaceSidebarItemIconProps,\n AppWorkspaceSidebarItemLabelProps,\n AppWorkspaceSidebarItemMetaProps,\n AppWorkspaceSidebarItemProps,\n AppWorkspaceSidebarItemTone,\n AppWorkspaceSidebarProps,\n AppWorkspaceSidebarSectionProps,\n AppWorkspaceSidebarVisibility,\n} from \"./AppWorkspace\";\nexport { default as AppWorkspace } from \"./AppWorkspace\";\nexport type { AppWorkspaceControllerOptions } from \"./app-workspace-controller\";\nexport { installAppWorkspaceController } from \"./app-workspace-controller\";\nexport type {\n AppWorkspaceLayoutState,\n AppWorkspaceResizeKind,\n} from \"./app-workspace-state\";\nexport {\n APP_WORKSPACE_DETAIL_DEFAULT,\n APP_WORKSPACE_DETAIL_MAX,\n APP_WORKSPACE_DETAIL_MIN,\n APP_WORKSPACE_DRAWER_DEFAULT,\n APP_WORKSPACE_DRAWER_MAX,\n APP_WORKSPACE_DRAWER_MIN,\n APP_WORKSPACE_MAIN_MIN,\n APP_WORKSPACE_MAIN_MIN_HEIGHT,\n APP_WORKSPACE_PANE_DEFAULT,\n APP_WORKSPACE_PANE_MAX,\n APP_WORKSPACE_PANE_MIN,\n APP_WORKSPACE_SIDEBAR_COLLAPSE_THRESHOLD,\n APP_WORKSPACE_SIDEBAR_COLLAPSED,\n APP_WORKSPACE_SIDEBAR_DEFAULT,\n APP_WORKSPACE_SIDEBAR_MAX,\n APP_WORKSPACE_SIDEBAR_MIN,\n appWorkspaceLayoutStyle,\n appWorkspacePanelVariable,\n appWorkspaceResizeLimits,\n normalizeAppWorkspaceLayoutState,\n parseAppWorkspaceLayoutState,\n resolveAppWorkspaceSidebarWidth,\n safeAppWorkspacePanelId,\n serializeAppWorkspaceLayoutState,\n shouldCollapseAppWorkspaceSidebar,\n} from \"./app-workspace-state\";\nexport type { DataPanelProps } from \"./DataPanel\";\nexport { DataPanel } from \"./DataPanel\";\nexport type {\n DetailPanelActionButtonProps,\n DetailPanelActionLinkProps,\n DetailPanelActionProps,\n DetailPanelBodyProps,\n DetailPanelGroupProps,\n DetailPanelHeaderProps,\n DetailPanelProps,\n DetailPanelSectionProps,\n DetailPanelSummaryProps,\n DetailPanelTone,\n} from \"./DetailPanel\";\nexport { default as DetailPanel } from \"./DetailPanel\";\nexport type { DiscussionComposerProps, DiscussionItemProps, DiscussionListProps, DiscussionProps } from \"./Discussion\";\nexport { default as Discussion } from \"./Discussion\";\nexport type {\n FloatingWindowClose,\n FloatingWindowProps,\n OpenFloatingWindowOptions,\n} from \"./FloatingWindow\";\nexport {\n default as FloatingWindow,\n type FloatingWindowRect,\n fitFloatingWindowRect,\n openFloatingWindow,\n} from \"./FloatingWindow\";\nexport type {\n PanelDialogBodyProps,\n PanelDialogFooterProps,\n PanelDialogHeaderProps,\n PanelDialogProps,\n PanelDialogSectionProps,\n PanelDialogSurface,\n PanelDialogTabOption,\n PanelDialogTabsProps,\n} from \"./PanelDialog\";\nexport {\n confirmDiscardIfDirty,\n default as PanelDialog,\n panelDialogFixedOptions,\n panelDialogFixedPanelClass,\n panelDialogOptions,\n panelDialogPanelClass,\n panelDialogWideOptions,\n panelDialogWidePanelClass,\n panelDialogWorkspaceOptions,\n panelDialogWorkspacePanelClass,\n} from \"./PanelDialog\";\nexport type { PanelHeaderProps } from \"./PanelHeader\";\nexport { PanelHeader } from \"./PanelHeader\";\nexport type { PanesItem, PanesProps } from \"./Panes\";\nexport { default as Panes } from \"./Panes\";\nexport type {\n AddPanesItemOptions,\n PanesDirection,\n PanesGroup,\n PanesIntent,\n PanesLayout,\n PanesNode,\n PanesPath,\n PanesPathSegment,\n PanesSide,\n PanesSplit,\n} from \"./panes-layout\";\nexport {\n activatePanesItem,\n addPanesItem,\n applyPanesIntent,\n createPanesLayout,\n isPanesItemVisible,\n PANES_LAYOUT_VERSION,\n parsePanesLayout,\n reconcilePanesLayout,\n removePanesItem,\n resizePanesSplit,\n} from \"./panes-layout\";\nexport type { ScrollAreaProps } from \"./ScrollArea\";\nexport { default as ScrollArea } from \"./ScrollArea\";\nexport type {\n SettingsFieldControlProps,\n SettingsFieldProps,\n SettingsGroupActionProps,\n SettingsGroupProps,\n SettingsPageProps,\n SettingsPanelFooterProps,\n SettingsSaveBarProps,\n SettingsSectionProps,\n} from \"./Settings\";\nexport {\n readSettingsError,\n SettingsField,\n SettingsGroup,\n SettingsPage,\n SettingsPanelFooter,\n SettingsSaveBar,\n SettingsSection,\n sameSettingValue,\n} from \"./Settings\";\nexport type {\n SettingsCollectionActionProps,\n SettingsCollectionItemActionsProps,\n SettingsCollectionItemProps,\n SettingsCollectionItemReorderProps,\n SettingsCollectionItemStatusProps,\n SettingsCollectionProps,\n} from \"./SettingsCollection\";\nexport { default as SettingsCollection } from \"./SettingsCollection\";\nexport type {\n SettingsModalFooterProps,\n SettingsModalGroupProps,\n SettingsModalProps,\n SettingsModalTabProps,\n SettingsModalTabTone,\n} from \"./SettingsModal\";\nexport { default as SettingsModal } from \"./SettingsModal\";\nexport { default as BottomSheet, bottomSheetOptions, type BottomSheetProps } from \"./BottomSheet\";\nexport { default as Navigation, type NavigationProps } from \"./Navigation\";\nexport { createNavigation, findNavigationItem, type NavigationController, type NavigationItem, type NavigationOptions } from \"./navigation-model\";\n"],"mappings":"AAKA,SAASA,OAAO,IAAIC,WAAW,QAAQ,eAAe;AA4BtD,SAASD,OAAO,IAAIE,YAAY,QAAQ,gBAAgB;AAExD,SAASC,6BAA6B,QAAQ,4BAA4B;AAK1E,SACEC,4BAA4B,EAC5BC,wBAAwB,EACxBC,wBAAwB,EACxBC,4BAA4B,EAC5BC,wBAAwB,EACxBC,wBAAwB,EACxBC,sBAAsB,EACtBC,6BAA6B,EAC7BC,0BAA0B,EAC1BC,sBAAsB,EACtBC,sBAAsB,EACtBC,wCAAwC,EACxCC,+BAA+B,EAC/BC,6BAA6B,EAC7BC,yBAAyB,EACzBC,yBAAyB,EACzBC,uBAAuB,EACvBC,yBAAyB,EACzBC,wBAAwB,EACxBC,gCAAgC,EAChCC,4BAA4B,EAC5BC,+BAA+B,EAC/BC,uBAAuB,EACvBC,gCAAgC,EAChCC,iCAAiC,QAC5B,uBAAuB;AAE9B,SAASC,SAAS,QAAQ,aAAa;AAavC,SAAS7B,OAAO,IAAI8B,WAAW,QAAQ,eAAe;AAEtD,SAAS9B,OAAO,IAAI+B,UAAU,QAAQ,cAAc;AAMpD,SACE/B,OAAO,IAAIgC,cAAc,EAEzBC,qBAAqB,EACrBC,kBAAkB,QACb,kBAAkB;AAWzB,SACEC,qBAAqB,EACrBnC,OAAO,IAAIoC,WAAW,EACtBC,uBAAuB,EACvBC,0BAA0B,EAC1BC,kBAAkB,EAClBC,qBAAqB,EACrBC,sBAAsB,EACtBC,yBAAyB,EACzBC,2BAA2B,EAC3BC,8BAA8B,QACzB,eAAe;AAEtB,SAASC,WAAW,QAAQ,eAAe;AAE3C,SAAS7C,OAAO,IAAI8C,KAAK,QAAQ,SAAS;AAa1C,SACEC,iBAAiB,EACjBC,YAAY,EACZC,gBAAgB,EAChBC,iBAAiB,EACjBC,kBAAkB,EAClBC,oBAAoB,EACpBC,gBAAgB,EAChBC,oBAAoB,EACpBC,eAAe,EACfC,gBAAgB,QACX,gBAAgB;AAEvB,SAASxD,OAAO,IAAIyD,UAAU,QAAQ,cAAc;AAWpD,SACEC,iBAAiB,EACjBC,aAAa,EACbC,aAAa,EACbC,YAAY,EACZC,mBAAmB,EACnBC,eAAe,EACfC,eAAe,EACfC,gBAAgB,QACX,YAAY;AASnB,SAASjE,OAAO,IAAIkE,kBAAkB,QAAQ,sBAAsB;AAQpE,SAASlE,OAAO,IAAImE,aAAa,QAAQ,iBAAiB;AAC1D,SAASnE,OAAO,IAAIoE,WAAW,EAAEC,kBAAkB,QAA+B,eAAe;AACjG,SAASrE,OAAO,IAAIsE,UAAU,QAA8B,cAAc;AAC1E,SAASC,gBAAgB,EAAEC,kBAAkB,QAAgF,oBAAoB","ignoreList":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/** Serializable presentation. Functions stay with the controller's owning island. */
|
|
2
|
+
|
|
3
|
+
export function findNavigationItem(items, id) {
|
|
4
|
+
for (const item of items) {
|
|
5
|
+
if (item.disabled) continue;
|
|
6
|
+
if (item.id === id) return item;
|
|
7
|
+
const found = findNavigationItem(item.children ?? [], id) ?? findNavigationItem(item.actions ?? [], id);
|
|
8
|
+
if (found) return found;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
/** One live source for renderers; no router, registry, fetching or persisted state. */
|
|
13
|
+
export function createNavigation(options) {
|
|
14
|
+
return {
|
|
15
|
+
items: options.items,
|
|
16
|
+
onNavigate: options.onNavigate,
|
|
17
|
+
async activate(id) {
|
|
18
|
+
const item = findNavigationItem(options.items(), id);
|
|
19
|
+
if (item?.action) await options.onAction?.(item.action);
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=navigation-model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["findNavigationItem","items","id","item","disabled","found","children","actions","createNavigation","options","onNavigate","activate","action","onAction"],"sources":["layout/navigation-model.ts"],"sourcesContent":["import type { LinkNavigateEvent, NavigationScrollMode } from \"@k2b/ssr/nav\";\nimport type { Accessor } from \"solid-js\";\n\ntype NavigationEntry = {\n id: string;\n label: string;\n icon?: string;\n badge?: string | number;\n description?: string;\n active?: boolean;\n disabled?: boolean;\n color?: string;\n children?: readonly NavigationItem[];\n /** Initial disclosure state; subsequent toggles remain local to the renderer. */\n defaultExpanded?: boolean;\n actions?: readonly NavigationItem[];\n};\n\n/** Serializable presentation. Functions stay with the controller's owning island. */\nexport type NavigationItem = NavigationEntry &\n (\n | { href: string; action?: string; navigation?: \"document\" | \"enhanced\"; scroll?: NavigationScrollMode }\n | { action: string; href?: never; navigation?: never; scroll?: never }\n | { href?: never; action?: never; navigation?: never; scroll?: never; children: readonly NavigationItem[] }\n );\n\nexport type NavigationOptions = {\n items: Accessor<readonly NavigationItem[]>;\n onAction?: (action: string) => void | Promise<void>;\n onNavigate?: (event: LinkNavigateEvent) => void | Promise<void>;\n};\n\nexport function findNavigationItem(items: readonly NavigationItem[], id: string): NavigationItem | undefined {\n for (const item of items) {\n if (item.disabled) continue;\n if (item.id === id) return item;\n const found = findNavigationItem(item.children ?? [], id) ?? findNavigationItem(item.actions ?? [], id);\n if (found) return found;\n }\n}\n\n/** One live source for renderers; no router, registry, fetching or persisted state. */\nexport function createNavigation(options: NavigationOptions) {\n return {\n items: options.items,\n onNavigate: options.onNavigate,\n async activate(id: string) {\n const item = findNavigationItem(options.items(), id);\n if (item?.action) await options.onAction?.(item.action);\n },\n };\n}\n\nexport type NavigationController = ReturnType<typeof createNavigation>;\n"],"mappings":"AAkBA;;AAcA,OAAO,SAASA,kBAAkBA,CAACC,KAAgC,EAAEC,EAAU,EAA8B;EAC3G,KAAK,MAAMC,IAAI,IAAIF,KAAK,EAAE;IACxB,IAAIE,IAAI,CAACC,QAAQ,EAAE;IACnB,IAAID,IAAI,CAACD,EAAE,KAAKA,EAAE,EAAE,OAAOC,IAAI;IAC/B,MAAME,KAAK,GAAGL,kBAAkB,CAACG,IAAI,CAACG,QAAQ,IAAI,EAAE,EAAEJ,EAAE,CAAC,IAAIF,kBAAkB,CAACG,IAAI,CAACI,OAAO,IAAI,EAAE,EAAEL,EAAE,CAAC;IACvG,IAAIG,KAAK,EAAE,OAAOA,KAAK;EACzB;AACF;;AAEA;AACA,OAAO,SAASG,gBAAgBA,CAACC,OAA0B,EAAE;EAC3D,OAAO;IACLR,KAAK,EAAEQ,OAAO,CAACR,KAAK;IACpBS,UAAU,EAAED,OAAO,CAACC,UAAU;IAC9B,MAAMC,QAAQA,CAACT,EAAU,EAAE;MACzB,MAAMC,IAAI,GAAGH,kBAAkB,CAACS,OAAO,CAACR,KAAK,CAAC,CAAC,EAAEC,EAAE,CAAC;MACpD,IAAIC,IAAI,EAAES,MAAM,EAAE,MAAMH,OAAO,CAACI,QAAQ,GAAGV,IAAI,CAACS,MAAM,CAAC;IACzD;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { createEffect, onCleanup } from "solid-js";
|
|
2
|
+
const selector = "[data-scroll-fade-mode]";
|
|
3
|
+
const active = new WeakMap();
|
|
4
|
+
|
|
5
|
+
/** Shared by hydrated components and the workspace's server-rendered scrollports. */
|
|
6
|
+
function observeScrollFade(body) {
|
|
7
|
+
let entry = active.get(body);
|
|
8
|
+
if (!entry) {
|
|
9
|
+
const update = () => {
|
|
10
|
+
const mode = body.getAttribute("data-scroll-fade-mode");
|
|
11
|
+
const horizontal = body.getAttribute("data-scroll-fade-axis") === "horizontal";
|
|
12
|
+
const overflow = horizontal ? body.scrollWidth - body.clientWidth : body.scrollHeight - body.clientHeight;
|
|
13
|
+
// Horizontal RTL scrollLeft starts at zero on the right and becomes negative.
|
|
14
|
+
const rtl = horizontal && getComputedStyle(body).direction === "rtl";
|
|
15
|
+
const offset = horizontal ? rtl ? overflow + body.scrollLeft : body.scrollLeft : body.scrollTop;
|
|
16
|
+
const top = mode === "both" && overflow > 1 && offset > 1;
|
|
17
|
+
const bottom = !!mode && overflow > 1 && overflow - offset > 1;
|
|
18
|
+
const edges = top && bottom ? "both" : top ? "top" : bottom ? "bottom" : undefined;
|
|
19
|
+
if (edges) {
|
|
20
|
+
if (body.getAttribute("data-scroll-fade") !== edges) body.setAttribute("data-scroll-fade", edges);
|
|
21
|
+
} else if (body.hasAttribute("data-scroll-fade")) body.removeAttribute("data-scroll-fade");
|
|
22
|
+
};
|
|
23
|
+
const resize = new ResizeObserver(update);
|
|
24
|
+
const observe = () => {
|
|
25
|
+
resize.disconnect();
|
|
26
|
+
resize.observe(body);
|
|
27
|
+
for (const child of Array.from(body.children)) resize.observe(child);
|
|
28
|
+
update();
|
|
29
|
+
};
|
|
30
|
+
const mutations = new MutationObserver(records => {
|
|
31
|
+
if (records.some(record => record.type === "childList" && record.target === body)) observe();else update();
|
|
32
|
+
});
|
|
33
|
+
mutations.observe(body, {
|
|
34
|
+
childList: true,
|
|
35
|
+
subtree: true,
|
|
36
|
+
characterData: true,
|
|
37
|
+
attributes: true,
|
|
38
|
+
attributeFilter: ["class", "style", "hidden", "open", "data-scroll-fade-mode", "data-scroll-fade-axis", "dir"]
|
|
39
|
+
});
|
|
40
|
+
body.addEventListener("scroll", update, {
|
|
41
|
+
passive: true
|
|
42
|
+
});
|
|
43
|
+
observe();
|
|
44
|
+
entry = {
|
|
45
|
+
users: 0,
|
|
46
|
+
stop: () => {
|
|
47
|
+
resize.disconnect();
|
|
48
|
+
mutations.disconnect();
|
|
49
|
+
body.removeEventListener("scroll", update);
|
|
50
|
+
body.removeAttribute("data-scroll-fade");
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
active.set(body, entry);
|
|
54
|
+
}
|
|
55
|
+
entry.users++;
|
|
56
|
+
return () => {
|
|
57
|
+
if (--entry.users === 0) {
|
|
58
|
+
entry.stop();
|
|
59
|
+
active.delete(body);
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
export function createScrollFade(element, enabled) {
|
|
64
|
+
createEffect(() => {
|
|
65
|
+
if (!enabled()) return;
|
|
66
|
+
const body = element();
|
|
67
|
+
if (body) onCleanup(observeScrollFade(body));
|
|
68
|
+
});
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/** Enrich only explicitly marked UI scrollports, including SSR and later navigation. */
|
|
72
|
+
export function installScrollFades(root) {
|
|
73
|
+
const owned = new Map();
|
|
74
|
+
const sync = () => {
|
|
75
|
+
const next = new Set(Array.from(root.querySelectorAll(selector)));
|
|
76
|
+
if (root instanceof HTMLElement && root.matches(selector)) next.add(root);
|
|
77
|
+
for (const [element, stop] of owned) if (!next.has(element)) {
|
|
78
|
+
stop();
|
|
79
|
+
owned.delete(element);
|
|
80
|
+
}
|
|
81
|
+
for (const element of next) if (!owned.has(element)) owned.set(element, observeScrollFade(element));
|
|
82
|
+
};
|
|
83
|
+
const containsPort = node => node instanceof Element && (node.matches(selector) || node.querySelector(selector));
|
|
84
|
+
const mutations = new MutationObserver(records => {
|
|
85
|
+
if (records.some(record => record.type === "attributes" || Array.from(record.addedNodes).some(containsPort) || Array.from(record.removedNodes).some(containsPort))) sync();
|
|
86
|
+
});
|
|
87
|
+
mutations.observe(root, {
|
|
88
|
+
childList: true,
|
|
89
|
+
subtree: true,
|
|
90
|
+
attributes: true,
|
|
91
|
+
attributeFilter: ["data-scroll-fade-mode"]
|
|
92
|
+
});
|
|
93
|
+
sync();
|
|
94
|
+
return () => {
|
|
95
|
+
mutations.disconnect();
|
|
96
|
+
for (const stop of owned.values()) stop();
|
|
97
|
+
owned.clear();
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=scroll-fade.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createEffect","onCleanup","selector","active","WeakMap","observeScrollFade","body","entry","get","update","mode","getAttribute","horizontal","overflow","scrollWidth","clientWidth","scrollHeight","clientHeight","rtl","getComputedStyle","direction","offset","scrollLeft","scrollTop","top","bottom","edges","undefined","setAttribute","hasAttribute","removeAttribute","resize","ResizeObserver","observe","disconnect","child","Array","from","children","mutations","MutationObserver","records","some","record","type","target","childList","subtree","characterData","attributes","attributeFilter","addEventListener","passive","users","stop","removeEventListener","set","delete","createScrollFade","element","enabled","installScrollFades","root","owned","Map","sync","next","Set","querySelectorAll","HTMLElement","matches","add","has","containsPort","node","Element","querySelector","addedNodes","removedNodes","values","clear"],"sources":["layout/scroll-fade.ts"],"sourcesContent":["import { createEffect, onCleanup } from \"solid-js\";\n\nconst selector = \"[data-scroll-fade-mode]\";\nconst active = new WeakMap<HTMLElement, { users: number; stop: () => void }>();\n\n/** Shared by hydrated components and the workspace's server-rendered scrollports. */\nfunction observeScrollFade(body: HTMLElement) {\n let entry = active.get(body);\n if (!entry) {\n const update = () => {\n const mode = body.getAttribute(\"data-scroll-fade-mode\");\n const horizontal = body.getAttribute(\"data-scroll-fade-axis\") === \"horizontal\";\n const overflow = horizontal ? body.scrollWidth - body.clientWidth : body.scrollHeight - body.clientHeight;\n // Horizontal RTL scrollLeft starts at zero on the right and becomes negative.\n const rtl = horizontal && getComputedStyle(body).direction === \"rtl\";\n const offset = horizontal ? (rtl ? overflow + body.scrollLeft : body.scrollLeft) : body.scrollTop;\n const top = mode === \"both\" && overflow > 1 && offset > 1;\n const bottom = !!mode && overflow > 1 && overflow - offset > 1;\n const edges = top && bottom ? \"both\" : top ? \"top\" : bottom ? \"bottom\" : undefined;\n if (edges) {\n if (body.getAttribute(\"data-scroll-fade\") !== edges) body.setAttribute(\"data-scroll-fade\", edges);\n } else if (body.hasAttribute(\"data-scroll-fade\")) body.removeAttribute(\"data-scroll-fade\");\n };\n const resize = new ResizeObserver(update);\n const observe = () => {\n resize.disconnect();\n resize.observe(body);\n for (const child of Array.from(body.children)) resize.observe(child);\n update();\n };\n const mutations = new MutationObserver((records) => {\n if (records.some((record) => record.type === \"childList\" && record.target === body)) observe();\n else update();\n });\n mutations.observe(body, {\n childList: true,\n subtree: true,\n characterData: true,\n attributes: true,\n attributeFilter: [\"class\", \"style\", \"hidden\", \"open\", \"data-scroll-fade-mode\", \"data-scroll-fade-axis\", \"dir\"],\n });\n body.addEventListener(\"scroll\", update, { passive: true });\n observe();\n entry = {\n users: 0,\n stop: () => {\n resize.disconnect();\n mutations.disconnect();\n body.removeEventListener(\"scroll\", update);\n body.removeAttribute(\"data-scroll-fade\");\n },\n };\n active.set(body, entry);\n }\n entry.users++;\n return () => {\n if (--entry.users === 0) {\n entry.stop();\n active.delete(body);\n }\n };\n}\n\nexport function createScrollFade(element: () => HTMLElement | undefined, enabled: () => boolean) {\n createEffect(() => {\n if (!enabled()) return;\n const body = element();\n if (body) onCleanup(observeScrollFade(body));\n });\n}\n\n/** Enrich only explicitly marked UI scrollports, including SSR and later navigation. */\nexport function installScrollFades(root: Document | HTMLElement) {\n const owned = new Map<HTMLElement, () => void>();\n const sync = () => {\n const next = new Set(Array.from(root.querySelectorAll<HTMLElement>(selector)));\n if (root instanceof HTMLElement && root.matches(selector)) next.add(root);\n for (const [element, stop] of owned)\n if (!next.has(element)) {\n stop();\n owned.delete(element);\n }\n for (const element of next) if (!owned.has(element)) owned.set(element, observeScrollFade(element));\n };\n const containsPort = (node: Node) => node instanceof Element && (node.matches(selector) || node.querySelector(selector));\n const mutations = new MutationObserver((records) => {\n if (\n records.some(\n (record) =>\n record.type === \"attributes\" ||\n Array.from(record.addedNodes).some(containsPort) ||\n Array.from(record.removedNodes).some(containsPort),\n )\n )\n sync();\n });\n mutations.observe(root, { childList: true, subtree: true, attributes: true, attributeFilter: [\"data-scroll-fade-mode\"] });\n sync();\n return () => {\n mutations.disconnect();\n for (const stop of owned.values()) stop();\n owned.clear();\n };\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["For","Show","DescriptionList","props","columns","Math","max","min","_$ssr","_tmpl$","_$escape","class","_$ssrAttribute","layout","size","actionVisibility","_$createComponent","each","items","children","item","_tmpl$2","term","description","when","action","_tmpl$3"],"sources":["surfaces/DescriptionList.tsx"],"sourcesContent":["import { For, type JSX, Show } from \"solid-js\";\n\nexport type DescriptionListItem = {\n term: JSX.Element;\n description: JSX.Element;\n action?: JSX.Element;\n};\n\nexport type DescriptionListProps = {\n items: readonly DescriptionListItem[];\n columns?: 1 | 2 | 3;\n layout?: \"grid\" | \"rows\";\n size?: \"sm\" | \"md\";\n actionVisibility?: \"always\" | \"progressive\";\n class?: string;\n};\n\n/** Semantic key-value content with predictable responsive density. */\nexport function DescriptionList(props: DescriptionListProps): JSX.Element {\n const columns = () => Math.max(1, Math.min(3, props.columns ?? 1));\n return (\n <dl\n class={`k2b-description-list ${props.class ?? \"\"}`}\n data-columns={columns()}\n data-layout={props.layout ?? \"grid\"}\n data-size={props.size ?? \"md\"}\n data-action-visibility={props.actionVisibility ?? \"always\"}\n >\n <For each={props.items}>\n {(item) => (\n <div class=\"k2b-description-list__item\">\n <dt>{item.term}</dt>\n <dd>{item.description}</dd>\n <Show when={item.action}>{(action) => <div class=\"k2b-description-list__action\">{action()}</div>}</Show>\n </div>\n )}\n </For>\n </dl>\n );\n}\n\nexport default DescriptionList;\n"],"mappings":";;;;;;;AAAA,SAASA,GAAG,EAAYC,IAAI,QAAQ,UAAU;AAiB9C;AACA,OAAO,SAASC,eAAeA,CAACC,KAA2B,EAAe;EACxE,MAAMC,OAAO,GAAGA,CAAA,KAAMC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAAC,CAAC,EAAEJ,KAAK,CAACC,OAAO,IAAI,CAAC,CAAC,CAAC;EAClE,OAAAI,KAAA,CAAAC,MAAA,EAEW,wBAAAC,QAAA,CAAwBP,KAAK,CAACQ,KAAK,IAAI,EAAE,SAAE,EAAAC,cAAA,iBAAAF,QAAA,CACpCN,OAAO,CAAC,CAAC,kBAAAQ,cAAA,gBAAAF,QAAA,CACVP,KAAK,CAACU,MAAM,IAAI,MAAM,kBAAAD,cAAA,cAAAF,QAAA,CACxBP,KAAK,CAACW,IAAI,IAAI,IAAI,kBAAAF,cAAA,2BAAAF,QAAA,CACLP,KAAK,CAACY,gBAAgB,IAAI,QAAQ,iBAAAL,QAAA,CAAAM,iBAAA,CAEzDhB,GAAG;IAAA,IAACiB,IAAIA,CAAA;MAAA,OAAEd,KAAK,CAACe,KAAK;IAAA;IAAAC,QAAA,EAClBC,IAAI,IAAAZ,KAAA,CAAAa,OAAA,EAAAX,QAAA,CAEGU,IAAI,CAACE,IAAI,GAAAZ,QAAA,CACTU,IAAI,CAACG,WAAW,GAAAb,QAAA,CAAAM,iBAAA,CACpBf,IAAI;MAAA,IAACuB,IAAIA,CAAA;QAAA,OAAEJ,IAAI,CAACK,MAAM;MAAA;MAAAN,QAAA,EAAIM,MAAM,IAAAjB,KAAA,CAAAkB,OAAA,EAAAhB,QAAA,CAAgDe,MAAM,CAAC,CAAC;IAAO;EAEnG;AAIT;AAEA,eAAevB,eAAe","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["For","Show","DescriptionList","props","columns","Math","max","min","_$ssr","_tmpl$","_$escape","class","_$ssrAttribute","layout","size","actionVisibility","_$createComponent","each","items","children","item","_tmpl$2","term","description","when","action","_tmpl$3"],"sources":["surfaces/DescriptionList.tsx"],"sourcesContent":["import { For, type JSX, Show } from \"solid-js\";\n\nexport type DescriptionListItem = {\n term: JSX.Element;\n description: JSX.Element;\n action?: JSX.Element;\n};\n\nexport type DescriptionListProps = {\n items: readonly DescriptionListItem[];\n columns?: 1 | 2 | 3;\n layout?: \"grid\" | \"rows\" | \"compact\";\n size?: \"sm\" | \"md\";\n actionVisibility?: \"always\" | \"progressive\";\n class?: string;\n};\n\n/** Semantic key-value content with predictable responsive density. */\nexport function DescriptionList(props: DescriptionListProps): JSX.Element {\n const columns = () => Math.max(1, Math.min(3, props.columns ?? 1));\n return (\n <dl\n class={`k2b-description-list ${props.class ?? \"\"}`}\n data-columns={columns()}\n data-layout={props.layout ?? \"grid\"}\n data-size={props.size ?? \"md\"}\n data-action-visibility={props.actionVisibility ?? \"always\"}\n >\n <For each={props.items}>\n {(item) => (\n <div class=\"k2b-description-list__item\">\n <dt>{item.term}</dt>\n <dd>{item.description}</dd>\n <Show when={item.action}>{(action) => <div class=\"k2b-description-list__action\">{action()}</div>}</Show>\n </div>\n )}\n </For>\n </dl>\n );\n}\n\nexport default DescriptionList;\n"],"mappings":";;;;;;;AAAA,SAASA,GAAG,EAAYC,IAAI,QAAQ,UAAU;AAiB9C;AACA,OAAO,SAASC,eAAeA,CAACC,KAA2B,EAAe;EACxE,MAAMC,OAAO,GAAGA,CAAA,KAAMC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAED,IAAI,CAACE,GAAG,CAAC,CAAC,EAAEJ,KAAK,CAACC,OAAO,IAAI,CAAC,CAAC,CAAC;EAClE,OAAAI,KAAA,CAAAC,MAAA,EAEW,wBAAAC,QAAA,CAAwBP,KAAK,CAACQ,KAAK,IAAI,EAAE,SAAE,EAAAC,cAAA,iBAAAF,QAAA,CACpCN,OAAO,CAAC,CAAC,kBAAAQ,cAAA,gBAAAF,QAAA,CACVP,KAAK,CAACU,MAAM,IAAI,MAAM,kBAAAD,cAAA,cAAAF,QAAA,CACxBP,KAAK,CAACW,IAAI,IAAI,IAAI,kBAAAF,cAAA,2BAAAF,QAAA,CACLP,KAAK,CAACY,gBAAgB,IAAI,QAAQ,iBAAAL,QAAA,CAAAM,iBAAA,CAEzDhB,GAAG;IAAA,IAACiB,IAAIA,CAAA;MAAA,OAAEd,KAAK,CAACe,KAAK;IAAA;IAAAC,QAAA,EAClBC,IAAI,IAAAZ,KAAA,CAAAa,OAAA,EAAAX,QAAA,CAEGU,IAAI,CAACE,IAAI,GAAAZ,QAAA,CACTU,IAAI,CAACG,WAAW,GAAAb,QAAA,CAAAM,iBAAA,CACpBf,IAAI;MAAA,IAACuB,IAAIA,CAAA;QAAA,OAAEJ,IAAI,CAACK,MAAM;MAAA;MAAAN,QAAA,EAAIM,MAAM,IAAAjB,KAAA,CAAAkB,OAAA,EAAAhB,QAAA,CAAgDe,MAAM,CAAC,CAAC;IAAO;EAEnG;AAIT;AAEA,eAAevB,eAAe","ignoreList":[]}
|
|
@@ -7,12 +7,13 @@ var _tmpl$ = ["<span class=\"", "\"", ">", "<span class=\"k2b-status-badge__labe
|
|
|
7
7
|
_tmpl$3 = ["<i", " aria-hidden=\"true\"></i>"];
|
|
8
8
|
import { Show } from "solid-js";
|
|
9
9
|
const DEFAULT_ICONS = {
|
|
10
|
+
info: "ti ti-info-circle",
|
|
10
11
|
ok: "ti ti-check",
|
|
11
12
|
warning: "ti ti-alert-triangle",
|
|
12
13
|
error: "ti ti-alert-circle",
|
|
13
14
|
degraded: "ti ti-plug-connected-x",
|
|
14
15
|
running: "ti ti-loader-2",
|
|
15
|
-
neutral: "ti ti-
|
|
16
|
+
neutral: "ti ti-alert-square-rounded"
|
|
16
17
|
};
|
|
17
18
|
export function StatusBadge(props) {
|
|
18
19
|
const variant = () => props.variant ?? "chip";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Show","DEFAULT_ICONS","ok","warning","error","degraded","running","neutral","StatusBadge","props","variant","icon","undefined","tone","_$ssr","_tmpl$","_$escape","class","_$ssrAttribute","title","_$createComponent","when","fallback","_tmpl$2","children","glyph","_tmpl$3","label"],"sources":["surfaces/StatusBadge.tsx"],"sourcesContent":["import { type JSX, Show } from \"solid-js\";\n\nexport type StatusTone = \"ok\" | \"warning\" | \"error\" | \"degraded\" | \"running\" | \"neutral\";\n\nexport type StatusBadgeProps = {\n tone: StatusTone;\n label: JSX.Element;\n icon?: string | null;\n variant?: \"chip\" | \"dot\" | \"text\";\n title?: string;\n class?: string;\n};\n\nconst DEFAULT_ICONS: Record<StatusTone, string> = {\n ok: \"ti ti-check\",\n warning: \"ti ti-alert-triangle\",\n error: \"ti ti-alert-circle\",\n degraded: \"ti ti-plug-connected-x\",\n running: \"ti ti-loader-2\",\n neutral: \"ti ti-
|
|
1
|
+
{"version":3,"names":["Show","DEFAULT_ICONS","info","ok","warning","error","degraded","running","neutral","StatusBadge","props","variant","icon","undefined","tone","_$ssr","_tmpl$","_$escape","class","_$ssrAttribute","title","_$createComponent","when","fallback","_tmpl$2","children","glyph","_tmpl$3","label"],"sources":["surfaces/StatusBadge.tsx"],"sourcesContent":["import { type JSX, Show } from \"solid-js\";\n\nexport type StatusTone = \"info\" | \"ok\" | \"warning\" | \"error\" | \"degraded\" | \"running\" | \"neutral\";\n\nexport type StatusBadgeProps = {\n tone: StatusTone;\n label: JSX.Element;\n icon?: string | null;\n variant?: \"chip\" | \"dot\" | \"text\";\n title?: string;\n class?: string;\n};\n\nconst DEFAULT_ICONS: Record<StatusTone, string> = {\n info: \"ti ti-info-circle\",\n ok: \"ti ti-check\",\n warning: \"ti ti-alert-triangle\",\n error: \"ti ti-alert-circle\",\n degraded: \"ti ti-plug-connected-x\",\n running: \"ti ti-loader-2\",\n neutral: \"ti ti-alert-square-rounded\",\n};\n\nexport function StatusBadge(props: StatusBadgeProps): JSX.Element {\n const variant = () => props.variant ?? \"chip\";\n const icon = () => (props.icon === null ? undefined : (props.icon ?? DEFAULT_ICONS[props.tone]));\n return (\n <span class={`k2b-status-badge ${props.class ?? \"\"}`} data-tone={props.tone} data-variant={variant()} title={props.title}>\n <Show when={variant() !== \"dot\"} fallback={<span class=\"k2b-status-badge__dot\" aria-hidden=\"true\" />}>\n <Show when={icon()}>{(glyph) => <i class={glyph()} aria-hidden=\"true\" />}</Show>\n </Show>\n <span class=\"k2b-status-badge__label\">{props.label}</span>\n </span>\n );\n}\n\nexport default StatusBadge;\n"],"mappings":";;;;;;;AAAA,SAAmBA,IAAI,QAAQ,UAAU;AAazC,MAAMC,aAAyC,GAAG;EAChDC,IAAI,EAAE,mBAAmB;EACzBC,EAAE,EAAE,aAAa;EACjBC,OAAO,EAAE,sBAAsB;EAC/BC,KAAK,EAAE,oBAAoB;EAC3BC,QAAQ,EAAE,wBAAwB;EAClCC,OAAO,EAAE,gBAAgB;EACzBC,OAAO,EAAE;AACX,CAAC;AAED,OAAO,SAASC,WAAWA,CAACC,KAAuB,EAAe;EAChE,MAAMC,OAAO,GAAGA,CAAA,KAAMD,KAAK,CAACC,OAAO,IAAI,MAAM;EAC7C,MAAMC,IAAI,GAAGA,CAAA,KAAOF,KAAK,CAACE,IAAI,KAAK,IAAI,GAAGC,SAAS,GAAIH,KAAK,CAACE,IAAI,IAAIX,aAAa,CAACS,KAAK,CAACI,IAAI,CAAG;EAChG,OAAAC,KAAA,CAAAC,MAAA,EACe,oBAAAC,QAAA,CAAoBP,KAAK,CAACQ,KAAK,IAAI,EAAE,SAAE,EAAAC,cAAA,cAAAF,QAAA,CAAaP,KAAK,CAACI,IAAI,kBAAAK,cAAA,iBAAAF,QAAA,CAAgBN,OAAO,CAAC,CAAC,kBAAAQ,cAAA,UAAAF,QAAA,CAASP,KAAK,CAACU,KAAK,iBAAAH,QAAA,CAAAI,iBAAA,CACrHrB,IAAI;IAAA,IAACsB,IAAIA,CAAA;MAAA,OAAEX,OAAO,CAAC,CAAC,KAAK,KAAK;IAAA;IAAA,IAAEY,QAAQA,CAAA;MAAA,OAAAR,KAAA,CAAAS,OAAA;IAAA;IAAA,IAAAC,SAAA;MAAA,OAAAJ,iBAAA,CACtCrB,IAAI;QAAA,IAACsB,IAAIA,CAAA;UAAA,OAAEV,IAAI,CAAC,CAAC;QAAA;QAAAa,QAAA,EAAIC,KAAK,IAAAX,KAAA,CAAAY,OAAA,EAAAR,cAAA,UAAAF,QAAA,CAAeS,KAAK,CAAC,CAAC;MAAuB;IAAA;EAAA,KAAAT,QAAA,CAEnCP,KAAK,CAACkB,KAAK;AAGxD;AAEA,eAAenB,WAAW","ignoreList":[]}
|