@k2b/ui 0.1.1 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/actions/Button.js +11 -2
- package/dist/browser/actions/Button.js.map +1 -1
- package/dist/browser/actions/Disclosure.js +11 -8
- package/dist/browser/actions/Disclosure.js.map +1 -1
- package/dist/browser/actions/Dropdown.js +10 -4
- package/dist/browser/actions/Dropdown.js.map +1 -1
- package/dist/browser/actions/FilterChip.js +16 -2
- package/dist/browser/actions/FilterChip.js.map +1 -1
- package/dist/browser/actions/SplitButton.js +69 -22
- package/dist/browser/actions/SplitButton.js.map +1 -1
- package/dist/browser/actions/SpotlightSearch.js +3 -7
- package/dist/browser/actions/SpotlightSearch.js.map +1 -1
- package/dist/browser/actions/Tabs.js +132 -47
- package/dist/browser/actions/Tabs.js.map +1 -1
- package/dist/browser/actions/index.js +1 -1
- package/dist/browser/actions/index.js.map +1 -1
- package/dist/browser/chat/ChatComposer.js +751 -423
- package/dist/browser/chat/ChatComposer.js.map +1 -1
- package/dist/browser/chat/ChatContextPopup.js +123 -0
- package/dist/browser/chat/ChatContextPopup.js.map +1 -0
- package/dist/browser/chat/ChatPrimitives.js +143 -77
- package/dist/browser/chat/ChatPrimitives.js.map +1 -1
- package/dist/browser/chat/ChatTasks.js +112 -0
- package/dist/browser/chat/ChatTasks.js.map +1 -0
- package/dist/browser/chat/ChatTimeline.js +34 -15
- package/dist/browser/chat/ChatTimeline.js.map +1 -1
- package/dist/browser/chat/chat-behavior.js +0 -5
- package/dist/browser/chat/chat-behavior.js.map +1 -1
- package/dist/browser/chat/composer-document.js +55 -0
- package/dist/browser/chat/composer-document.js.map +1 -0
- package/dist/browser/chat/index.js +6 -1
- package/dist/browser/chat/index.js.map +1 -1
- package/dist/browser/chat/types.js.map +1 -1
- package/dist/browser/content/Chart.js +148 -239
- package/dist/browser/content/Chart.js.map +1 -1
- package/dist/browser/content/ChartExplorer.js +324 -0
- package/dist/browser/content/ChartExplorer.js.map +1 -0
- package/dist/browser/content/ChartExplorerControls.js +153 -0
- package/dist/browser/content/ChartExplorerControls.js.map +1 -0
- package/dist/browser/content/ChartFilterControls.js +200 -0
- package/dist/browser/content/ChartFilterControls.js.map +1 -0
- package/dist/browser/content/ChartSnapshotView.js +113 -0
- package/dist/browser/content/ChartSnapshotView.js.map +1 -0
- package/dist/browser/content/DataTable.js +48 -32
- package/dist/browser/content/DataTable.js.map +1 -1
- package/dist/browser/content/FileBrowser.js +3 -0
- package/dist/browser/content/FileBrowser.js.map +1 -1
- package/dist/browser/content/FileGrid.js +93 -0
- package/dist/browser/content/FileGrid.js.map +1 -0
- package/dist/browser/content/FileTree.js +2 -2
- package/dist/browser/content/FileTree.js.map +1 -1
- package/dist/browser/content/FileView.js +507 -162
- package/dist/browser/content/FileView.js.map +1 -1
- package/dist/browser/content/MarkdownView.js +20 -3
- package/dist/browser/content/MarkdownView.js.map +1 -1
- package/dist/browser/content/PdfPreview.js +107 -90
- package/dist/browser/content/PdfPreview.js.map +1 -1
- package/dist/browser/content/chart-cursor.js +33 -0
- package/dist/browser/content/chart-cursor.js.map +1 -0
- package/dist/browser/content/chart-explorer.js +147 -0
- package/dist/browser/content/chart-explorer.js.map +1 -0
- package/dist/browser/content/chart-inspection.js +447 -0
- package/dist/browser/content/chart-inspection.js.map +1 -0
- package/dist/browser/content/chart-line-gaps.js +53 -0
- package/dist/browser/content/chart-line-gaps.js.map +1 -0
- package/dist/browser/content/chart-map-viewport.js +5 -1
- package/dist/browser/content/chart-map-viewport.js.map +1 -1
- package/dist/browser/content/chart-snapshot.js +63 -0
- package/dist/browser/content/chart-snapshot.js.map +1 -0
- package/dist/browser/content/chart-state-timeline.js +32 -4
- package/dist/browser/content/chart-state-timeline.js.map +1 -1
- package/dist/browser/content/chart-svg.js +54 -0
- package/dist/browser/content/chart-svg.js.map +1 -0
- package/dist/browser/content/collection-selection.js +109 -0
- package/dist/browser/content/collection-selection.js.map +1 -0
- package/dist/browser/content/delimited-preferences.js +21 -0
- package/dist/browser/content/delimited-preferences.js.map +1 -0
- package/dist/browser/content/file-tree.js.map +1 -1
- package/dist/browser/content/file-view-preview.js +11 -7
- package/dist/browser/content/file-view-preview.js.map +1 -1
- package/dist/browser/content/index.js +9 -0
- package/dist/browser/content/index.js.map +1 -1
- package/dist/browser/feedback/InlineGuidance.js +17 -3
- package/dist/browser/feedback/InlineGuidance.js.map +1 -1
- package/dist/browser/feedback/Tooltip.js +6 -2
- package/dist/browser/feedback/Tooltip.js.map +1 -1
- package/dist/browser/feedback/dialog-core.js +102 -9
- package/dist/browser/feedback/dialog-core.js.map +1 -1
- package/dist/browser/feedback/prompts.js +6 -0
- package/dist/browser/feedback/prompts.js.map +1 -1
- package/dist/browser/feedback/toast.js +29 -6
- package/dist/browser/feedback/toast.js.map +1 -1
- package/dist/browser/feedback/tooltip-position.js +15 -0
- package/dist/browser/feedback/tooltip-position.js.map +1 -1
- package/dist/browser/inputs/ChoiceInputs.js +47 -38
- package/dist/browser/inputs/ChoiceInputs.js.map +1 -1
- package/dist/browser/inputs/SelectChip.js +3 -2
- package/dist/browser/inputs/SelectChip.js.map +1 -1
- package/dist/browser/inputs/TextInput.js +7 -1
- package/dist/browser/inputs/TextInput.js.map +1 -1
- package/dist/browser/inputs/markdown/MarkdownEditor.js +61 -37
- package/dist/browser/inputs/markdown/MarkdownEditor.js.map +1 -1
- package/dist/browser/internal/portal.js +1 -1
- package/dist/browser/internal/portal.js.map +1 -1
- package/dist/browser/intl/Format.js +89 -16
- package/dist/browser/intl/Format.js.map +1 -1
- package/dist/browser/intl/index.js.map +1 -1
- package/dist/browser/intl/messages.js +130 -2
- package/dist/browser/intl/messages.js.map +1 -1
- package/dist/browser/layout/AppWorkspace.js +712 -624
- package/dist/browser/layout/AppWorkspace.js.map +1 -1
- package/dist/browser/layout/BottomSheet.js +95 -0
- package/dist/browser/layout/BottomSheet.js.map +1 -0
- package/dist/browser/layout/DetailPanel.js +232 -107
- package/dist/browser/layout/DetailPanel.js.map +1 -1
- package/dist/browser/layout/Navigation.js +278 -0
- package/dist/browser/layout/Navigation.js.map +1 -0
- package/dist/browser/layout/PanelDialog.js +229 -72
- package/dist/browser/layout/PanelDialog.js.map +1 -1
- package/dist/browser/layout/ScrollArea.js +21 -1
- package/dist/browser/layout/ScrollArea.js.map +1 -1
- package/dist/browser/layout/Settings.js.map +1 -1
- package/dist/browser/layout/SidebarItemPreview.js +183 -0
- package/dist/browser/layout/SidebarItemPreview.js.map +1 -0
- package/dist/browser/layout/app-workspace-controller.js +3 -0
- package/dist/browser/layout/app-workspace-controller.js.map +1 -1
- package/dist/browser/layout/index.js +3 -0
- package/dist/browser/layout/index.js.map +1 -1
- package/dist/browser/layout/navigation-model.js +23 -0
- package/dist/browser/layout/navigation-model.js.map +1 -0
- package/dist/browser/layout/scroll-fade.js +100 -0
- package/dist/browser/layout/scroll-fade.js.map +1 -0
- package/dist/browser/surfaces/DescriptionList.js.map +1 -1
- package/dist/browser/surfaces/StatusBadge.js +2 -1
- package/dist/browser/surfaces/StatusBadge.js.map +1 -1
- package/dist/fonts/ibm-plex-mono-cyrillic-400-italic-4aded3f2f2a7d27d.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-400-normal-7635422bd10ddbbc.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-500-normal-1d89462e86cb8e87.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-600-normal-2b05a8695c7f9f4a.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-ext-400-italic-a0b3b8cbe5a516e7.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-ext-400-normal-f8c22ec1804bd696.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-ext-500-normal-3febe5c7f22e4b07.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-cyrillic-ext-600-normal-83109cdd4f8665b4.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-400-italic-0840095faae86403.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-400-normal-08949f728dc52d52.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-500-normal-01d285447409c8a5.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-600-normal-0d1f0b8d0722224e.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-ext-400-italic-1b07eee6df7d26b3.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-ext-400-normal-6bc0f226a5b7884a.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-ext-500-normal-6bb06407c97584b0.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-latin-ext-600-normal-32057cf50dd14bdb.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-vietnamese-400-italic-a6bab38af4f9c761.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-vietnamese-400-normal-62632b6375305e70.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-vietnamese-500-normal-781633d95de88040.woff2 +0 -0
- package/dist/fonts/ibm-plex-mono-vietnamese-600-normal-51b74d53e106ba8a.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-400-italic-e8731a7e2b00fc4f.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-400-normal-69afad88a0740b6e.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-500-normal-200be3a2a6b1789f.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-600-normal-730becc6f005c18c.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-700-normal-40540598b4c9eb2c.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-ext-400-italic-4ffb25726a7ce4cc.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-ext-400-normal-e2580ad78906551e.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-ext-500-normal-08578d906af6d986.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-ext-600-normal-d60d3d0b182753d5.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-cyrillic-ext-700-normal-d07dd53642480097.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-greek-400-italic-1bc10b01688ba9fa.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-greek-400-normal-02296067bc904d2a.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-greek-500-normal-8cb6e20b4dbbaa5f.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-greek-600-normal-0a9ebd9019415ee9.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-greek-700-normal-c949641d10a3bebc.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-400-italic-6de912e531b6c980.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-400-normal-3b646991d30055a9.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-500-normal-0717336fb31fcdcd.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-600-normal-8960851d691c054e.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-700-normal-42e7b0c143c19df9.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-ext-400-italic-c5c00e8a32022dfe.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-ext-400-normal-c93d2a12aaa280f6.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-ext-500-normal-2846035d85100f84.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-ext-600-normal-b25dfd4f979e442a.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-latin-ext-700-normal-92f0392bd74fa395.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-vietnamese-400-italic-675d4bace127bffb.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-vietnamese-400-normal-771538f7f26551bd.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-vietnamese-500-normal-85ba3d9c2488a813.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-vietnamese-600-normal-5d34b803637befe3.woff2 +0 -0
- package/dist/fonts/ibm-plex-sans-vietnamese-700-normal-b79d0c4b68b85007.woff2 +0 -0
- package/dist/plex.css +1 -1
- package/dist/ssr/actions/Button.js +11 -2
- package/dist/ssr/actions/Button.js.map +1 -1
- package/dist/ssr/actions/Disclosure.js +2 -2
- package/dist/ssr/actions/Disclosure.js.map +1 -1
- package/dist/ssr/actions/Dropdown.js +5 -2
- package/dist/ssr/actions/Dropdown.js.map +1 -1
- package/dist/ssr/actions/FilterChip.js +16 -2
- package/dist/ssr/actions/FilterChip.js.map +1 -1
- package/dist/ssr/actions/SplitButton.js +69 -22
- package/dist/ssr/actions/SplitButton.js.map +1 -1
- package/dist/ssr/actions/SpotlightSearch.js +3 -7
- package/dist/ssr/actions/SpotlightSearch.js.map +1 -1
- package/dist/ssr/actions/Tabs.js +58 -11
- package/dist/ssr/actions/Tabs.js.map +1 -1
- package/dist/ssr/actions/index.js +1 -1
- package/dist/ssr/actions/index.js.map +1 -1
- package/dist/ssr/chat/ChatComposer.js +366 -134
- package/dist/ssr/chat/ChatComposer.js.map +1 -1
- package/dist/ssr/chat/ChatContextPopup.js +86 -0
- package/dist/ssr/chat/ChatContextPopup.js.map +1 -0
- package/dist/ssr/chat/ChatPrimitives.js +50 -12
- package/dist/ssr/chat/ChatPrimitives.js.map +1 -1
- package/dist/ssr/chat/ChatTasks.js +48 -0
- package/dist/ssr/chat/ChatTasks.js.map +1 -0
- package/dist/ssr/chat/ChatTimeline.js +16 -4
- package/dist/ssr/chat/ChatTimeline.js.map +1 -1
- package/dist/ssr/chat/chat-behavior.js +0 -5
- package/dist/ssr/chat/chat-behavior.js.map +1 -1
- package/dist/ssr/chat/composer-document.js +55 -0
- package/dist/ssr/chat/composer-document.js.map +1 -0
- package/dist/ssr/chat/index.js +6 -1
- package/dist/ssr/chat/index.js.map +1 -1
- package/dist/ssr/chat/types.js.map +1 -1
- package/dist/ssr/content/Chart.js +121 -219
- package/dist/ssr/content/Chart.js.map +1 -1
- package/dist/ssr/content/ChartExplorer.js +257 -0
- package/dist/ssr/content/ChartExplorer.js.map +1 -0
- package/dist/ssr/content/ChartExplorerControls.js +105 -0
- package/dist/ssr/content/ChartExplorerControls.js.map +1 -0
- package/dist/ssr/content/ChartFilterControls.js +139 -0
- package/dist/ssr/content/ChartFilterControls.js.map +1 -0
- package/dist/ssr/content/ChartSnapshotView.js +57 -0
- package/dist/ssr/content/ChartSnapshotView.js.map +1 -0
- package/dist/ssr/content/DataTable.js +13 -9
- package/dist/ssr/content/DataTable.js.map +1 -1
- package/dist/ssr/content/FileBrowser.js +3 -0
- package/dist/ssr/content/FileBrowser.js.map +1 -1
- package/dist/ssr/content/FileGrid.js +38 -0
- package/dist/ssr/content/FileGrid.js.map +1 -0
- package/dist/ssr/content/FileTree.js +2 -2
- package/dist/ssr/content/FileTree.js.map +1 -1
- package/dist/ssr/content/FileView.js +352 -75
- package/dist/ssr/content/FileView.js.map +1 -1
- package/dist/ssr/content/MarkdownView.js +20 -3
- package/dist/ssr/content/MarkdownView.js.map +1 -1
- package/dist/ssr/content/PdfPreview.js +37 -24
- package/dist/ssr/content/PdfPreview.js.map +1 -1
- package/dist/ssr/content/chart-cursor.js +33 -0
- package/dist/ssr/content/chart-cursor.js.map +1 -0
- package/dist/ssr/content/chart-explorer.js +147 -0
- package/dist/ssr/content/chart-explorer.js.map +1 -0
- package/dist/ssr/content/chart-inspection.js +447 -0
- package/dist/ssr/content/chart-inspection.js.map +1 -0
- package/dist/ssr/content/chart-line-gaps.js +53 -0
- package/dist/ssr/content/chart-line-gaps.js.map +1 -0
- package/dist/ssr/content/chart-map-viewport.js +5 -1
- package/dist/ssr/content/chart-map-viewport.js.map +1 -1
- package/dist/ssr/content/chart-snapshot.js +63 -0
- package/dist/ssr/content/chart-snapshot.js.map +1 -0
- package/dist/ssr/content/chart-state-timeline.js +32 -4
- package/dist/ssr/content/chart-state-timeline.js.map +1 -1
- package/dist/ssr/content/chart-svg.js +54 -0
- package/dist/ssr/content/chart-svg.js.map +1 -0
- package/dist/ssr/content/collection-selection.js +109 -0
- package/dist/ssr/content/collection-selection.js.map +1 -0
- package/dist/ssr/content/delimited-preferences.js +21 -0
- package/dist/ssr/content/delimited-preferences.js.map +1 -0
- package/dist/ssr/content/file-tree.js.map +1 -1
- package/dist/ssr/content/file-view-preview.js +11 -7
- package/dist/ssr/content/file-view-preview.js.map +1 -1
- package/dist/ssr/content/index.js +9 -0
- package/dist/ssr/content/index.js.map +1 -1
- package/dist/ssr/feedback/InlineGuidance.js +17 -3
- package/dist/ssr/feedback/InlineGuidance.js.map +1 -1
- package/dist/ssr/feedback/Tooltip.js +6 -4
- package/dist/ssr/feedback/Tooltip.js.map +1 -1
- package/dist/ssr/feedback/dialog-core.js +102 -9
- package/dist/ssr/feedback/dialog-core.js.map +1 -1
- package/dist/ssr/feedback/prompts.js +6 -0
- package/dist/ssr/feedback/prompts.js.map +1 -1
- package/dist/ssr/feedback/toast.js +29 -6
- package/dist/ssr/feedback/toast.js.map +1 -1
- package/dist/ssr/feedback/tooltip-position.js +15 -0
- package/dist/ssr/feedback/tooltip-position.js.map +1 -1
- package/dist/ssr/inputs/ChoiceInputs.js +9 -6
- package/dist/ssr/inputs/ChoiceInputs.js.map +1 -1
- package/dist/ssr/inputs/SelectChip.js +3 -3
- package/dist/ssr/inputs/SelectChip.js.map +1 -1
- package/dist/ssr/inputs/TextInput.js.map +1 -1
- package/dist/ssr/inputs/markdown/MarkdownEditor.js +19 -11
- package/dist/ssr/inputs/markdown/MarkdownEditor.js.map +1 -1
- package/dist/ssr/internal/portal.js +1 -1
- package/dist/ssr/internal/portal.js.map +1 -1
- package/dist/ssr/intl/Format.js +61 -0
- package/dist/ssr/intl/Format.js.map +1 -1
- package/dist/ssr/intl/index.js.map +1 -1
- package/dist/ssr/intl/messages.js +130 -2
- package/dist/ssr/intl/messages.js.map +1 -1
- package/dist/ssr/layout/AppWorkspace.js +368 -275
- package/dist/ssr/layout/AppWorkspace.js.map +1 -1
- package/dist/ssr/layout/BottomSheet.js +43 -0
- package/dist/ssr/layout/BottomSheet.js.map +1 -0
- package/dist/ssr/layout/DetailPanel.js +95 -17
- package/dist/ssr/layout/DetailPanel.js.map +1 -1
- package/dist/ssr/layout/Navigation.js +181 -0
- package/dist/ssr/layout/Navigation.js.map +1 -0
- package/dist/ssr/layout/PanelDialog.js +112 -27
- package/dist/ssr/layout/PanelDialog.js.map +1 -1
- package/dist/ssr/layout/ScrollArea.js +16 -1
- package/dist/ssr/layout/ScrollArea.js.map +1 -1
- package/dist/ssr/layout/Settings.js.map +1 -1
- package/dist/ssr/layout/SidebarItemPreview.js +133 -0
- package/dist/ssr/layout/SidebarItemPreview.js.map +1 -0
- package/dist/ssr/layout/app-workspace-controller.js +3 -0
- package/dist/ssr/layout/app-workspace-controller.js.map +1 -1
- package/dist/ssr/layout/index.js +3 -0
- package/dist/ssr/layout/index.js.map +1 -1
- package/dist/ssr/layout/navigation-model.js +23 -0
- package/dist/ssr/layout/navigation-model.js.map +1 -0
- package/dist/ssr/layout/scroll-fade.js +100 -0
- package/dist/ssr/layout/scroll-fade.js.map +1 -0
- package/dist/ssr/surfaces/DescriptionList.js.map +1 -1
- package/dist/ssr/surfaces/StatusBadge.js +2 -1
- package/dist/ssr/surfaces/StatusBadge.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/tabler.css +1 -1
- package/dist/types/actions/Button.d.ts +4 -0
- package/dist/types/actions/Disclosure.d.ts +1 -0
- package/dist/types/actions/Dropdown.d.ts +3 -1
- package/dist/types/actions/FilterChip.d.ts +4 -0
- package/dist/types/actions/SplitButton.d.ts +6 -0
- package/dist/types/actions/SpotlightSearch.d.ts +0 -4
- package/dist/types/actions/Tabs.d.ts +4 -0
- package/dist/types/actions/index.d.ts +1 -1
- package/dist/types/chat/ChatComposer.d.ts +20 -2
- package/dist/types/chat/ChatContextPopup.d.ts +6 -0
- package/dist/types/chat/ChatPrimitives.d.ts +4 -0
- package/dist/types/chat/ChatTasks.d.ts +15 -0
- package/dist/types/chat/ChatTimeline.d.ts +2 -0
- package/dist/types/chat/chat-behavior.d.ts +0 -3
- package/dist/types/chat/composer-document.d.ts +14 -0
- package/dist/types/chat/index.d.ts +8 -1
- package/dist/types/chat/types.d.ts +9 -0
- package/dist/types/content/Chart.d.ts +42 -23
- package/dist/types/content/ChartExplorer.d.ts +34 -0
- package/dist/types/content/ChartExplorerControls.d.ts +10 -0
- package/dist/types/content/ChartFilterControls.d.ts +21 -0
- package/dist/types/content/ChartSnapshotView.d.ts +11 -0
- package/dist/types/content/DataTable.d.ts +4 -0
- package/dist/types/content/FileBrowser.d.ts +1 -0
- package/dist/types/content/FileGrid.d.ts +21 -0
- package/dist/types/content/FileView.d.ts +20 -0
- package/dist/types/content/MarkdownView.d.ts +6 -1
- package/dist/types/content/PdfPreview.d.ts +8 -1
- package/dist/types/content/chart-cursor.d.ts +15 -0
- package/dist/types/content/chart-explorer.d.ts +48 -0
- package/dist/types/content/chart-inspection.d.ts +40 -0
- package/dist/types/content/chart-line-gaps.d.ts +5 -0
- package/dist/types/content/chart-map-viewport.d.ts +1 -1
- package/dist/types/content/chart-snapshot.d.ts +26 -0
- package/dist/types/content/chart-svg.d.ts +21 -0
- package/dist/types/content/collection-selection.d.ts +24 -0
- package/dist/types/content/delimited-preferences.d.ts +11 -0
- package/dist/types/content/file-tree.d.ts +2 -0
- package/dist/types/content/file-view-preview.d.ts +4 -1
- package/dist/types/content/index.d.ts +15 -1
- package/dist/types/feedback/InlineGuidance.d.ts +1 -0
- package/dist/types/feedback/dialog-core.d.ts +13 -0
- package/dist/types/feedback/prompts.d.ts +2 -0
- package/dist/types/feedback/toast.d.ts +7 -1
- package/dist/types/feedback/tooltip-position.d.ts +1 -1
- package/dist/types/inputs/ChoiceInputs.d.ts +3 -0
- package/dist/types/inputs/markdown/MarkdownEditor.d.ts +5 -1
- package/dist/types/intl/Format.d.ts +9 -0
- package/dist/types/intl/index.d.ts +1 -1
- package/dist/types/intl/messages.d.ts +31 -1
- package/dist/types/layout/AppWorkspace.d.ts +35 -18
- package/dist/types/layout/BottomSheet.d.ts +23 -0
- package/dist/types/layout/DetailPanel.d.ts +7 -0
- package/dist/types/layout/Navigation.d.ts +8 -0
- package/dist/types/layout/PanelDialog.d.ts +14 -1
- package/dist/types/layout/ScrollArea.d.ts +4 -0
- package/dist/types/layout/Settings.d.ts +1 -1
- package/dist/types/layout/SidebarItemPreview.d.ts +11 -0
- package/dist/types/layout/index.d.ts +4 -1
- package/dist/types/layout/navigation-model.d.ts +48 -0
- package/dist/types/layout/scroll-fade.d.ts +3 -0
- package/dist/types/surfaces/DescriptionList.d.ts +1 -1
- package/dist/types/surfaces/StatusBadge.d.ts +1 -1
- package/package.json +8 -8
|
@@ -5,7 +5,7 @@ import { ssrElement as _$ssrElement } from "solid-js/web";
|
|
|
5
5
|
import { mergeProps as _$mergeProps } from "solid-js/web";
|
|
6
6
|
import { escape as _$escape } from "solid-js/web";
|
|
7
7
|
import { createComponent as _$createComponent } from "solid-js/web";
|
|
8
|
-
var _tmpl$ = ["<input class=\"k2b-control k2b-pin-input__digit\"", "
|
|
8
|
+
var _tmpl$ = ["<input class=\"k2b-control k2b-pin-input__digit\"", " inputmode=\"numeric\" autocomplete=\"off\" pattern=\"[0-9]\" maxlength=\"1\"", "", "", ">"],
|
|
9
9
|
_tmpl$2 = ["<input type=\"hidden\"", ">"],
|
|
10
10
|
_tmpl$3 = ["<output", ">", "</output>"],
|
|
11
11
|
_tmpl$4 = ["<div class=\"k2b-slider\">", "", "</div>"],
|
|
@@ -30,7 +30,7 @@ export function PinInput(props) {
|
|
|
30
30
|
if (value.length === length()) props.onValueCommit?.(value);
|
|
31
31
|
};
|
|
32
32
|
const updateDigit = (index, input) => {
|
|
33
|
-
if (props.disabled) return;
|
|
33
|
+
if (props.disabled || props.readOnly) return;
|
|
34
34
|
const digit = input.replace(/\D/g, "").slice(-1);
|
|
35
35
|
const current = digits();
|
|
36
36
|
emit(`${current.slice(0, index)}${digit}${current.slice(index + 1)}`);
|
|
@@ -40,8 +40,11 @@ export function PinInput(props) {
|
|
|
40
40
|
}
|
|
41
41
|
};
|
|
42
42
|
const handleKeyDown = (index, event) => {
|
|
43
|
-
if (props.disabled) return;
|
|
44
|
-
if (event.key === "
|
|
43
|
+
if (props.disabled || props.readOnly) return;
|
|
44
|
+
if (event.key === "Enter" && props.onSubmit && !event.shiftKey && !event.metaKey) {
|
|
45
|
+
event.preventDefault();
|
|
46
|
+
props.onSubmit();
|
|
47
|
+
} else if (event.key === "ArrowLeft" && index > 0) {
|
|
45
48
|
event.preventDefault();
|
|
46
49
|
inputs[index - 1]?.focus();
|
|
47
50
|
inputs[index - 1]?.select();
|
|
@@ -58,7 +61,7 @@ export function PinInput(props) {
|
|
|
58
61
|
}
|
|
59
62
|
};
|
|
60
63
|
const handlePaste = event => {
|
|
61
|
-
if (props.disabled) return;
|
|
64
|
+
if (props.disabled || props.readOnly) return;
|
|
62
65
|
const pasted = event.clipboardData?.getData("text").replace(/\D/g, "");
|
|
63
66
|
if (!pasted) return;
|
|
64
67
|
event.preventDefault();
|
|
@@ -108,7 +111,7 @@ export function PinInput(props) {
|
|
|
108
111
|
length: length()
|
|
109
112
|
});
|
|
110
113
|
},
|
|
111
|
-
children: (_, index) => _$ssr(_tmpl$, _$ssrAttribute("data-filled", digits()[index()] ? "true" : _$escape(undefined, true), false), _$ssrAttribute("value", _$escape(digits()[index()] ?? "", true), false), _$ssrAttribute("required", props.required, true), _$ssrAttribute("disabled", props.disabled, true) + _$ssrAttribute("aria-label", _$escape(messages().pinDigit({
|
|
114
|
+
children: (_, index) => _$ssr(_tmpl$, _$ssrAttribute("data-filled", digits()[index()] ? "true" : _$escape(undefined, true), false) + _$ssrAttribute("type", props.password ? "password" : "text", false), _$ssrAttribute("value", _$escape(digits()[index()] ?? "", true), false), _$ssrAttribute("required", props.required, true), _$ssrAttribute("disabled", props.disabled, true) + _$ssrAttribute("readonly", _$escape(props.readOnly, true), false) + _$ssrAttribute("aria-label", _$escape(messages().pinDigit({
|
|
112
115
|
index: index() + 1,
|
|
113
116
|
total: length()
|
|
114
117
|
}), true), false))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["For","Show","splitProps","createFieldMeta","Field","fieldControlAria","useUiMessages","commitFieldValue","resolveMaybeAccessor","PinInput","props","messages","meta","id","length","Math","max","inputs","digits","value","replace","slice","error","emit","onValueChange","onValueCommit","updateDigit","index","input","disabled","digit","current","focus","select","handleKeyDown","event","key","preventDefault","handlePaste","pasted","clipboardData","getData","focused","indexOf","document","activeElement","start","insert","next","min","_$createComponent","class","label","description","labelFor","required","children","_$ssrElement","_$mergeProps","controlId","data-stretch","stretch","undefined","role","_$escape","each","Array","from","_","_$ssr","_tmpl$","_$ssrAttribute","pinDigit","total","when","name","_tmpl$2","Slider","local","rest","Number","percentage","span","track","position","center","low","high","resetValue","defaultValue","_tmpl$4","type","style","background","showValue","_tmpl$3","formatValue","ColorInput","currentColor","isTransparent","transparentValue","compact","picker","control","_tmpl$5","_tmpl$9","_tmpl$6","_$ssrStyle","_tmpl$7","toUpperCase","transparent","_tmpl$8","useColor","useTransparent"],"sources":["inputs/ChoiceInputs.tsx"],"sourcesContent":["import { For, type JSX, Show, splitProps } from \"solid-js\";\nimport { createFieldMeta, Field, fieldControlAria } from \"../internal/field\";\nimport { useUiMessages } from \"../intl/messages\";\nimport type { FieldProps, MaybeAccessor, ValueFieldProps } from \"./field-contract\";\nimport { commitFieldValue, resolveMaybeAccessor } from \"./field-contract\";\n\nexport type PinInputProps = ValueFieldProps<string> & {\n length?: number;\n name?: string;\n stretch?: boolean;\n};\n\nexport function PinInput(props: PinInputProps): JSX.Element {\n const messages = useUiMessages();\n const meta = createFieldMeta(props.id);\n const length = () => Math.max(1, props.length ?? 6);\n let inputs: HTMLInputElement[] = [];\n const digits = () => (resolveMaybeAccessor(props.value) ?? \"\").replace(/\\D/g, \"\").slice(0, length());\n const error = () => resolveMaybeAccessor(props.error);\n const emit = (value: string) => {\n props.onValueChange?.(value);\n if (value.length === length()) props.onValueCommit?.(value);\n };\n\n const updateDigit = (index: number, input: string) => {\n if (props.disabled) return;\n const digit = input.replace(/\\D/g, \"\").slice(-1);\n const current = digits();\n emit(`${current.slice(0, index)}${digit}${current.slice(index + 1)}`);\n if (digit && index < length() - 1) {\n inputs[index + 1]?.focus();\n inputs[index + 1]?.select();\n }\n };\n\n const handleKeyDown = (index: number, event: KeyboardEvent) => {\n if (props.disabled) return;\n if (event.key === \"ArrowLeft\" && index > 0) {\n event.preventDefault();\n inputs[index - 1]?.focus();\n inputs[index - 1]?.select();\n } else if (event.key === \"ArrowRight\" && index < length() - 1) {\n event.preventDefault();\n inputs[index + 1]?.focus();\n inputs[index + 1]?.select();\n } else if (event.key === \"Backspace\" && !digits()[index] && index > 0) {\n event.preventDefault();\n const current = digits();\n emit(`${current.slice(0, index - 1)}${current.slice(index)}`);\n inputs[index - 1]?.focus();\n inputs[index - 1]?.select();\n }\n };\n\n const handlePaste = (event: ClipboardEvent) => {\n if (props.disabled) return;\n const pasted = event.clipboardData?.getData(\"text\").replace(/\\D/g, \"\");\n if (!pasted) return;\n event.preventDefault();\n const focused = inputs.indexOf(document.activeElement as HTMLInputElement);\n const start = focused >= 0 ? focused : 0;\n const insert = pasted.slice(0, length() - start);\n const current = digits();\n emit(`${current.slice(0, start)}${insert}${current.slice(start + insert.length)}`.slice(0, length()));\n const next = Math.min(start + insert.length, length() - 1);\n inputs[next]?.focus();\n inputs[next]?.select();\n };\n\n return (\n <Field\n class={props.class}\n label={props.label}\n description={props.description}\n error={error()}\n meta={meta}\n labelFor={false}\n required={props.required}\n disabled={props.disabled}\n >\n <div\n class=\"k2b-pin-input\"\n id={meta.controlId}\n data-stretch={props.stretch ? \"true\" : undefined}\n role=\"group\"\n {...fieldControlAria(meta, props)}\n onPaste={handlePaste}\n >\n <For each={Array.from({ length: length() })}>\n {(_, index) => (\n <input\n ref={(element) => {\n inputs[index()] = element;\n }}\n class=\"k2b-control k2b-pin-input__digit\"\n data-filled={digits()[index()] ? \"true\" : undefined}\n type=\"text\"\n inputmode=\"numeric\"\n autocomplete=\"off\"\n pattern=\"[0-9]\"\n maxlength={1}\n value={digits()[index()] ?? \"\"}\n required={props.required}\n disabled={props.disabled}\n aria-label={messages().pinDigit({ index: index() + 1, total: length() })}\n onInput={(event) => updateDigit(index(), event.currentTarget.value)}\n onKeyDown={(event) => handleKeyDown(index(), event)}\n onFocus={(event) => event.currentTarget.select()}\n />\n )}\n </For>\n </div>\n <Show when={props.name}>{(name) => <input type=\"hidden\" name={name()} value={digits()} />}</Show>\n </Field>\n );\n}\n\nexport type SliderProps = FieldProps &\n Omit<JSX.InputHTMLAttributes<HTMLInputElement>, \"type\" | \"value\" | \"onInput\" | \"onChange\" | keyof FieldProps> &\n ValueFieldProps<number> & {\n value: MaybeAccessor<number>;\n formatValue?: (value: number) => string;\n showValue?: boolean;\n center?: boolean;\n defaultValue?: number;\n };\n\nexport function Slider(props: SliderProps): JSX.Element {\n const [local, rest] = splitProps(props, [\n \"aria-describedby\",\n \"aria-label\",\n \"center\",\n \"class\",\n \"defaultValue\",\n \"description\",\n \"error\",\n \"id\",\n \"label\",\n \"onValueChange\",\n \"onValueCommit\",\n \"required\",\n \"showValue\",\n \"value\",\n \"formatValue\",\n ]);\n const meta = createFieldMeta(local.id);\n const min = () => Number(rest.min ?? 0);\n const max = () => Number(rest.max ?? 100);\n const value = () => resolveMaybeAccessor(local.value) ?? min();\n const error = () => resolveMaybeAccessor(local.error);\n const percentage = () => {\n const span = max() - min();\n return span <= 0 ? 0 : Math.min(100, Math.max(0, ((value() - min()) / span) * 100));\n };\n const track = () => {\n const position = percentage();\n if (local.center) {\n const low = Math.min(50, position);\n const high = Math.max(50, position);\n return `linear-gradient(to right, var(--k2b-surface-muted) 0 ${low}%, var(--k2b-action) ${low}% ${high}%, var(--k2b-surface-muted) ${high}% 100%)`;\n }\n return `linear-gradient(to right, var(--k2b-action) 0 ${position}%, var(--k2b-surface-muted) ${position}% 100%)`;\n };\n const resetValue = () => local.defaultValue ?? (local.center ? (min() + max()) / 2 : min());\n\n return (\n <Field\n class={local.class}\n label={local.label}\n description={local.description}\n error={error()}\n meta={meta}\n required={local.required}\n disabled={rest.disabled}\n >\n <div class=\"k2b-slider\">\n <input\n {...rest}\n id={meta.controlId}\n type=\"range\"\n value={value()}\n style={{ background: track() }}\n {...fieldControlAria(meta, local)}\n onInput={(event) => local.onValueChange?.(event.currentTarget.valueAsNumber)}\n onChange={(event) => local.onValueCommit?.(event.currentTarget.valueAsNumber)}\n onDblClick={() => {\n const next = resetValue();\n commitFieldValue(local, next);\n }}\n />\n <Show when={local.showValue ?? true}>\n <output for={meta.controlId}>{local.formatValue?.(value()) ?? value()}</output>\n </Show>\n </div>\n </Field>\n );\n}\n\nexport type ColorInputProps = ValueFieldProps<string> & {\n name?: string;\n compact?: boolean;\n transparent?: boolean;\n transparentValue?: MaybeAccessor<boolean>;\n onTransparentValueChange?: (value: boolean) => void;\n};\n\nexport function ColorInput(props: ColorInputProps): JSX.Element {\n const messages = useUiMessages();\n const meta = createFieldMeta(props.id);\n const currentColor = () => resolveMaybeAccessor(props.value) || \"#3b82f6\";\n const isTransparent = () => resolveMaybeAccessor(props.transparentValue) ?? false;\n const error = () => resolveMaybeAccessor(props.error);\n const compact = () => props.compact ?? !props.label;\n let picker: HTMLInputElement | undefined;\n\n const control = () =>\n compact() ? (\n <span class=\"k2b-color-input k2b-color-input--compact\">\n <button\n type=\"button\"\n class=\"k2b-color-input__swatch\"\n style={{ \"background-color\": currentColor() }}\n disabled={props.disabled}\n {...fieldControlAria(meta, props)}\n onClick={() => picker?.click()}\n />\n <input\n ref={picker}\n id={meta.controlId}\n class=\"k2b-color-input__native\"\n type=\"color\"\n name={props.name}\n value={currentColor()}\n disabled={props.disabled}\n onInput={(event) => props.onValueChange?.(event.currentTarget.value)}\n onChange={(event) => props.onValueCommit?.(event.currentTarget.value)}\n />\n </span>\n ) : (\n <div\n class=\"k2b-color-input\"\n data-disabled={props.disabled || isTransparent() ? \"true\" : undefined}\n data-invalid={error() ? \"true\" : undefined}\n >\n <button\n type=\"button\"\n class=\"k2b-color-input__value\"\n disabled={props.disabled || isTransparent()}\n {...fieldControlAria(meta, props)}\n onClick={() => picker?.click()}\n >\n <span\n class=\"k2b-color-input__swatch\"\n data-transparent={isTransparent() ? \"true\" : undefined}\n style={isTransparent() ? undefined : { \"background-color\": currentColor() }}\n />\n <code>{isTransparent() ? \"transparent\" : currentColor().toUpperCase()}</code>\n </button>\n <Show when={props.transparent}>\n <button\n type=\"button\"\n class=\"k2b-color-input__transparent\"\n aria-label={isTransparent() ? messages().useColor : messages().useTransparent}\n aria-pressed={isTransparent()}\n disabled={props.disabled}\n onClick={() => props.onTransparentValueChange?.(!isTransparent())}\n >\n <i class=\"ti ti-grid-dots\" aria-hidden=\"true\" />\n </button>\n </Show>\n <input\n ref={picker}\n id={meta.controlId}\n class=\"k2b-color-input__native\"\n type=\"color\"\n name={props.name}\n value={currentColor()}\n disabled={props.disabled || isTransparent()}\n onInput={(event) => props.onValueChange?.(event.currentTarget.value)}\n onChange={(event) => props.onValueCommit?.(event.currentTarget.value)}\n />\n </div>\n );\n\n return (\n <Field\n class={props.class}\n label={props.label}\n description={props.description}\n error={error()}\n meta={meta}\n required={props.required}\n disabled={props.disabled}\n >\n {control()}\n </Field>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["For","Show","splitProps","createFieldMeta","Field","fieldControlAria","useUiMessages","commitFieldValue","resolveMaybeAccessor","PinInput","props","messages","meta","id","length","Math","max","inputs","digits","value","replace","slice","error","emit","onValueChange","onValueCommit","updateDigit","index","input","disabled","readOnly","digit","current","focus","select","handleKeyDown","event","key","onSubmit","shiftKey","metaKey","preventDefault","handlePaste","pasted","clipboardData","getData","focused","indexOf","document","activeElement","start","insert","next","min","_$createComponent","class","label","description","labelFor","required","children","_$ssrElement","_$mergeProps","controlId","data-stretch","stretch","undefined","role","_$escape","each","Array","from","_","_$ssr","_tmpl$","_$ssrAttribute","password","pinDigit","total","when","name","_tmpl$2","Slider","local","rest","Number","percentage","span","track","position","center","low","high","resetValue","defaultValue","_tmpl$4","type","style","background","showValue","_tmpl$3","formatValue","ColorInput","currentColor","isTransparent","transparentValue","compact","picker","control","_tmpl$5","_tmpl$9","_tmpl$6","_$ssrStyle","_tmpl$7","toUpperCase","transparent","_tmpl$8","useColor","useTransparent"],"sources":["inputs/ChoiceInputs.tsx"],"sourcesContent":["import { For, type JSX, Show, splitProps } from \"solid-js\";\nimport { createFieldMeta, Field, fieldControlAria } from \"../internal/field\";\nimport { useUiMessages } from \"../intl/messages\";\nimport type { FieldProps, MaybeAccessor, ValueFieldProps } from \"./field-contract\";\nimport { commitFieldValue, resolveMaybeAccessor } from \"./field-contract\";\n\nexport type PinInputProps = ValueFieldProps<string> & {\n length?: number;\n name?: string;\n stretch?: boolean;\n password?: boolean;\n readOnly?: boolean;\n onSubmit?: () => void;\n};\n\nexport function PinInput(props: PinInputProps): JSX.Element {\n const messages = useUiMessages();\n const meta = createFieldMeta(props.id);\n const length = () => Math.max(1, props.length ?? 6);\n let inputs: HTMLInputElement[] = [];\n const digits = () => (resolveMaybeAccessor(props.value) ?? \"\").replace(/\\D/g, \"\").slice(0, length());\n const error = () => resolveMaybeAccessor(props.error);\n const emit = (value: string) => {\n props.onValueChange?.(value);\n if (value.length === length()) props.onValueCommit?.(value);\n };\n\n const updateDigit = (index: number, input: string) => {\n if (props.disabled || props.readOnly) return;\n const digit = input.replace(/\\D/g, \"\").slice(-1);\n const current = digits();\n emit(`${current.slice(0, index)}${digit}${current.slice(index + 1)}`);\n if (digit && index < length() - 1) {\n inputs[index + 1]?.focus();\n inputs[index + 1]?.select();\n }\n };\n\n const handleKeyDown = (index: number, event: KeyboardEvent) => {\n if (props.disabled || props.readOnly) return;\n if (event.key === \"Enter\" && props.onSubmit && !event.shiftKey && !event.metaKey) {\n event.preventDefault();\n props.onSubmit();\n } else if (event.key === \"ArrowLeft\" && index > 0) {\n event.preventDefault();\n inputs[index - 1]?.focus();\n inputs[index - 1]?.select();\n } else if (event.key === \"ArrowRight\" && index < length() - 1) {\n event.preventDefault();\n inputs[index + 1]?.focus();\n inputs[index + 1]?.select();\n } else if (event.key === \"Backspace\" && !digits()[index] && index > 0) {\n event.preventDefault();\n const current = digits();\n emit(`${current.slice(0, index - 1)}${current.slice(index)}`);\n inputs[index - 1]?.focus();\n inputs[index - 1]?.select();\n }\n };\n\n const handlePaste = (event: ClipboardEvent) => {\n if (props.disabled || props.readOnly) return;\n const pasted = event.clipboardData?.getData(\"text\").replace(/\\D/g, \"\");\n if (!pasted) return;\n event.preventDefault();\n const focused = inputs.indexOf(document.activeElement as HTMLInputElement);\n const start = focused >= 0 ? focused : 0;\n const insert = pasted.slice(0, length() - start);\n const current = digits();\n emit(`${current.slice(0, start)}${insert}${current.slice(start + insert.length)}`.slice(0, length()));\n const next = Math.min(start + insert.length, length() - 1);\n inputs[next]?.focus();\n inputs[next]?.select();\n };\n\n return (\n <Field\n class={props.class}\n label={props.label}\n description={props.description}\n error={error()}\n meta={meta}\n labelFor={false}\n required={props.required}\n disabled={props.disabled}\n >\n <div\n class=\"k2b-pin-input\"\n id={meta.controlId}\n data-stretch={props.stretch ? \"true\" : undefined}\n role=\"group\"\n {...fieldControlAria(meta, props)}\n onPaste={handlePaste}\n >\n <For each={Array.from({ length: length() })}>\n {(_, index) => (\n <input\n ref={(element) => {\n inputs[index()] = element;\n }}\n class=\"k2b-control k2b-pin-input__digit\"\n data-filled={digits()[index()] ? \"true\" : undefined}\n type={props.password ? \"password\" : \"text\"}\n inputmode=\"numeric\"\n autocomplete=\"off\"\n pattern=\"[0-9]\"\n maxlength={1}\n value={digits()[index()] ?? \"\"}\n required={props.required}\n disabled={props.disabled}\n readOnly={props.readOnly}\n aria-label={messages().pinDigit({ index: index() + 1, total: length() })}\n onInput={(event) => updateDigit(index(), event.currentTarget.value)}\n onKeyDown={(event) => handleKeyDown(index(), event)}\n onFocus={(event) => event.currentTarget.select()}\n />\n )}\n </For>\n </div>\n <Show when={props.name}>{(name) => <input type=\"hidden\" name={name()} value={digits()} />}</Show>\n </Field>\n );\n}\n\nexport type SliderProps = FieldProps &\n Omit<JSX.InputHTMLAttributes<HTMLInputElement>, \"type\" | \"value\" | \"onInput\" | \"onChange\" | keyof FieldProps> &\n ValueFieldProps<number> & {\n value: MaybeAccessor<number>;\n formatValue?: (value: number) => string;\n showValue?: boolean;\n center?: boolean;\n defaultValue?: number;\n };\n\nexport function Slider(props: SliderProps): JSX.Element {\n const [local, rest] = splitProps(props, [\n \"aria-describedby\",\n \"aria-label\",\n \"center\",\n \"class\",\n \"defaultValue\",\n \"description\",\n \"error\",\n \"id\",\n \"label\",\n \"onValueChange\",\n \"onValueCommit\",\n \"required\",\n \"showValue\",\n \"value\",\n \"formatValue\",\n ]);\n const meta = createFieldMeta(local.id);\n const min = () => Number(rest.min ?? 0);\n const max = () => Number(rest.max ?? 100);\n const value = () => resolveMaybeAccessor(local.value) ?? min();\n const error = () => resolveMaybeAccessor(local.error);\n const percentage = () => {\n const span = max() - min();\n return span <= 0 ? 0 : Math.min(100, Math.max(0, ((value() - min()) / span) * 100));\n };\n const track = () => {\n const position = percentage();\n if (local.center) {\n const low = Math.min(50, position);\n const high = Math.max(50, position);\n return `linear-gradient(to right, var(--k2b-surface-muted) 0 ${low}%, var(--k2b-action) ${low}% ${high}%, var(--k2b-surface-muted) ${high}% 100%)`;\n }\n return `linear-gradient(to right, var(--k2b-action) 0 ${position}%, var(--k2b-surface-muted) ${position}% 100%)`;\n };\n const resetValue = () => local.defaultValue ?? (local.center ? (min() + max()) / 2 : min());\n\n return (\n <Field\n class={local.class}\n label={local.label}\n description={local.description}\n error={error()}\n meta={meta}\n required={local.required}\n disabled={rest.disabled}\n >\n <div class=\"k2b-slider\">\n <input\n {...rest}\n id={meta.controlId}\n type=\"range\"\n value={value()}\n style={{ background: track() }}\n {...fieldControlAria(meta, local)}\n onInput={(event) => local.onValueChange?.(event.currentTarget.valueAsNumber)}\n onChange={(event) => local.onValueCommit?.(event.currentTarget.valueAsNumber)}\n onDblClick={() => {\n const next = resetValue();\n commitFieldValue(local, next);\n }}\n />\n <Show when={local.showValue ?? true}>\n <output for={meta.controlId}>{local.formatValue?.(value()) ?? value()}</output>\n </Show>\n </div>\n </Field>\n );\n}\n\nexport type ColorInputProps = ValueFieldProps<string> & {\n name?: string;\n compact?: boolean;\n transparent?: boolean;\n transparentValue?: MaybeAccessor<boolean>;\n onTransparentValueChange?: (value: boolean) => void;\n};\n\nexport function ColorInput(props: ColorInputProps): JSX.Element {\n const messages = useUiMessages();\n const meta = createFieldMeta(props.id);\n const currentColor = () => resolveMaybeAccessor(props.value) || \"#3b82f6\";\n const isTransparent = () => resolveMaybeAccessor(props.transparentValue) ?? false;\n const error = () => resolveMaybeAccessor(props.error);\n const compact = () => props.compact ?? !props.label;\n let picker: HTMLInputElement | undefined;\n\n const control = () =>\n compact() ? (\n <span class=\"k2b-color-input k2b-color-input--compact\">\n <button\n type=\"button\"\n class=\"k2b-color-input__swatch\"\n style={{ \"background-color\": currentColor() }}\n disabled={props.disabled}\n {...fieldControlAria(meta, props)}\n onClick={() => picker?.click()}\n />\n <input\n ref={picker}\n id={meta.controlId}\n class=\"k2b-color-input__native\"\n type=\"color\"\n name={props.name}\n value={currentColor()}\n disabled={props.disabled}\n onInput={(event) => props.onValueChange?.(event.currentTarget.value)}\n onChange={(event) => props.onValueCommit?.(event.currentTarget.value)}\n />\n </span>\n ) : (\n <div\n class=\"k2b-color-input\"\n data-disabled={props.disabled || isTransparent() ? \"true\" : undefined}\n data-invalid={error() ? \"true\" : undefined}\n >\n <button\n type=\"button\"\n class=\"k2b-color-input__value\"\n disabled={props.disabled || isTransparent()}\n {...fieldControlAria(meta, props)}\n onClick={() => picker?.click()}\n >\n <span\n class=\"k2b-color-input__swatch\"\n data-transparent={isTransparent() ? \"true\" : undefined}\n style={isTransparent() ? undefined : { \"background-color\": currentColor() }}\n />\n <code>{isTransparent() ? \"transparent\" : currentColor().toUpperCase()}</code>\n </button>\n <Show when={props.transparent}>\n <button\n type=\"button\"\n class=\"k2b-color-input__transparent\"\n aria-label={isTransparent() ? messages().useColor : messages().useTransparent}\n aria-pressed={isTransparent()}\n disabled={props.disabled}\n onClick={() => props.onTransparentValueChange?.(!isTransparent())}\n >\n <i class=\"ti ti-grid-dots\" aria-hidden=\"true\" />\n </button>\n </Show>\n <input\n ref={picker}\n id={meta.controlId}\n class=\"k2b-color-input__native\"\n type=\"color\"\n name={props.name}\n value={currentColor()}\n disabled={props.disabled || isTransparent()}\n onInput={(event) => props.onValueChange?.(event.currentTarget.value)}\n onChange={(event) => props.onValueCommit?.(event.currentTarget.value)}\n />\n </div>\n );\n\n return (\n <Field\n class={props.class}\n label={props.label}\n description={props.description}\n error={error()}\n meta={meta}\n required={props.required}\n disabled={props.disabled}\n >\n {control()}\n </Field>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { ssrAttribute as _$ssrAttribute } from "solid-js/web";
|
|
2
1
|
import { mergeProps as _$mergeProps } from "solid-js/web";
|
|
3
2
|
import { ssr as _$ssr } from "solid-js/web";
|
|
3
|
+
import { ssrAttribute as _$ssrAttribute } from "solid-js/web";
|
|
4
4
|
import { escape as _$escape } from "solid-js/web";
|
|
5
5
|
import { createComponent as _$createComponent } from "solid-js/web";
|
|
6
|
-
var _tmpl$ = ["<span>", "</span>"],
|
|
6
|
+
var _tmpl$ = ["<span", ">", "</span>"],
|
|
7
7
|
_tmpl$2 = "<i class=\"ti ti-chevron-down\" aria-hidden=\"true\"></i>",
|
|
8
8
|
_tmpl$3 = ["<i", " aria-hidden=\"true\"></i>"],
|
|
9
9
|
_tmpl$4 = ["<img", " alt>"],
|
|
@@ -110,7 +110,7 @@ export function SelectChip(props) {
|
|
|
110
110
|
return !props.iconOnly;
|
|
111
111
|
},
|
|
112
112
|
get children() {
|
|
113
|
-
return [_$ssr(_tmpl$, _$escape(selected()?.label ?? props.placeholder ?? "")), _$ssr(_tmpl$2)];
|
|
113
|
+
return [_$ssr(_tmpl$, _$ssrAttribute("data-placeholder", selected() ? _$escape(undefined, true) : "true", false), _$escape(selected()?.label ?? props.placeholder ?? "")), _$ssr(_tmpl$2)];
|
|
114
114
|
}
|
|
115
115
|
})];
|
|
116
116
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createMemo","Show","Dropdown","createFieldMeta","Field","fieldControlAria","useUiMessages","commitFieldValue","resolveMaybeAccessor","SelectChip","props","messages","meta","id","value","selected","options","find","option","triggerLabel","label","chooseOption","items","map","action","checked","choice","class","description","disabled","icon","image","_$createComponent","error","required","children","Root","position","width","menuWidth","Trigger","_$mergeProps","appearance","iconOnly","controlId","undefined","size","title","when","fallback","_$ssr","_tmpl$3","_$ssrAttribute","_$escape","_tmpl$4","_tmpl$","placeholder","_tmpl$2","name","_tmpl$5"],"sources":["inputs/SelectChip.tsx"],"sourcesContent":["import { createMemo, type JSX, Show } from \"solid-js\";\nimport type { ButtonSize } from \"../actions/Button\";\nimport { Dropdown, type DropdownItem, type DropdownPosition } from \"../actions/Dropdown\";\nimport { createFieldMeta, Field, fieldControlAria } from \"../internal/field\";\nimport { useUiMessages } from \"../intl/messages\";\nimport type { MaybeAccessor, ValueFieldProps } from \"./field-contract\";\nimport { commitFieldValue, resolveMaybeAccessor } from \"./field-contract\";\n\nexport type SelectChipOption<T extends string | number = string> = {\n value: T;\n label: string;\n description?: string;\n icon?: string;\n image?: string;\n disabled?: boolean;\n};\n\nexport type SelectChipProps<T extends string | number = string> = ValueFieldProps<T> & {\n value: MaybeAccessor<T>;\n options: SelectChipOption<T>[];\n icon?: string;\n iconOnly?: boolean;\n size?: ButtonSize;\n placeholder?: string;\n position?: DropdownPosition;\n menuWidth?: string;\n name?: string;\n};\n\nexport function SelectChip<T extends string | number = string>(props: SelectChipProps<T>): JSX.Element {\n const messages = useUiMessages();\n const meta = createFieldMeta(props.id);\n const value = () => resolveMaybeAccessor(props.value)!;\n const selected = () => props.options.find((option) => option.value === value());\n const triggerLabel = () => props[\"aria-label\"] ?? (typeof props.label === \"string\" ? props.label : messages().chooseOption);\n const items = createMemo<DropdownItem[]>(() =>\n props.options.map((option) => ({\n action: () => commitFieldValue(props, option.value),\n checked: () => option.value === value(),\n choice: \"radio\" as const,\n class: \"k2b-select-chip__option\",\n description: option.description,\n disabled: option.disabled,\n icon: option.icon,\n image: option.image,\n label: option.label,\n })),\n );\n\n return (\n <Field\n class={props.class}\n label={props.label}\n description={props.description}\n error={props.error}\n meta={meta}\n required={props.required}\n disabled={props.disabled}\n >\n <Dropdown.Root\n position={props.position ?? \"bottom-right\"}\n /* Cloud opens this menu at `w-40`. */\n width={props.menuWidth ?? \"10rem\"}\n label={triggerLabel()}\n items={items()}\n >\n <Dropdown.Trigger\n appearance={props.iconOnly ? \"button\" : \"plain\"}\n id={meta.controlId}\n class={props.iconOnly ? undefined : \"k2b-select-chip\"}\n disabled={props.disabled}\n iconOnly={props.iconOnly}\n label={triggerLabel()}\n size={props.iconOnly ? props.size : undefined}\n title={props.iconOnly ? triggerLabel() : undefined}\n {...fieldControlAria(meta, props)}\n >\n <Show\n when={selected()?.image}\n fallback={<Show when={selected()?.icon ?? props.icon}>{(icon) => <i class={icon()} aria-hidden=\"true\" />}</Show>}\n >\n {(image) => <img src={image()} alt=\"\" />}\n </Show>\n <Show when={!props.iconOnly}>\n <span>{selected()?.label ?? props.placeholder ?? \"\"}</span>\n <i class=\"ti ti-chevron-down\" aria-hidden=\"true\" />\n </Show>\n </Dropdown.Trigger>\n </Dropdown.Root>\n <Show when={props.name}>{(name) => <input type=\"hidden\" name={name()} value={value()} />}</Show>\n </Field>\n );\n}\n\nexport default SelectChip;\n"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["createMemo","Show","Dropdown","createFieldMeta","Field","fieldControlAria","useUiMessages","commitFieldValue","resolveMaybeAccessor","SelectChip","props","messages","meta","id","value","selected","options","find","option","triggerLabel","label","chooseOption","items","map","action","checked","choice","class","description","disabled","icon","image","_$createComponent","error","required","children","Root","position","width","menuWidth","Trigger","_$mergeProps","appearance","iconOnly","controlId","undefined","size","title","when","fallback","_$ssr","_tmpl$3","_$ssrAttribute","_$escape","_tmpl$4","_tmpl$","placeholder","_tmpl$2","name","_tmpl$5"],"sources":["inputs/SelectChip.tsx"],"sourcesContent":["import { createMemo, type JSX, Show } from \"solid-js\";\nimport type { ButtonSize } from \"../actions/Button\";\nimport { Dropdown, type DropdownItem, type DropdownPosition } from \"../actions/Dropdown\";\nimport { createFieldMeta, Field, fieldControlAria } from \"../internal/field\";\nimport { useUiMessages } from \"../intl/messages\";\nimport type { MaybeAccessor, ValueFieldProps } from \"./field-contract\";\nimport { commitFieldValue, resolveMaybeAccessor } from \"./field-contract\";\n\nexport type SelectChipOption<T extends string | number = string> = {\n value: T;\n label: string;\n description?: string;\n icon?: string;\n image?: string;\n disabled?: boolean;\n};\n\nexport type SelectChipProps<T extends string | number = string> = ValueFieldProps<T> & {\n value: MaybeAccessor<T>;\n options: SelectChipOption<T>[];\n icon?: string;\n iconOnly?: boolean;\n size?: ButtonSize;\n placeholder?: string;\n position?: DropdownPosition;\n menuWidth?: string;\n name?: string;\n};\n\nexport function SelectChip<T extends string | number = string>(props: SelectChipProps<T>): JSX.Element {\n const messages = useUiMessages();\n const meta = createFieldMeta(props.id);\n const value = () => resolveMaybeAccessor(props.value)!;\n const selected = () => props.options.find((option) => option.value === value());\n const triggerLabel = () => props[\"aria-label\"] ?? (typeof props.label === \"string\" ? props.label : messages().chooseOption);\n const items = createMemo<DropdownItem[]>(() =>\n props.options.map((option) => ({\n action: () => commitFieldValue(props, option.value),\n checked: () => option.value === value(),\n choice: \"radio\" as const,\n class: \"k2b-select-chip__option\",\n description: option.description,\n disabled: option.disabled,\n icon: option.icon,\n image: option.image,\n label: option.label,\n })),\n );\n\n return (\n <Field\n class={props.class}\n label={props.label}\n description={props.description}\n error={props.error}\n meta={meta}\n required={props.required}\n disabled={props.disabled}\n >\n <Dropdown.Root\n position={props.position ?? \"bottom-right\"}\n /* Cloud opens this menu at `w-40`. */\n width={props.menuWidth ?? \"10rem\"}\n label={triggerLabel()}\n items={items()}\n >\n <Dropdown.Trigger\n appearance={props.iconOnly ? \"button\" : \"plain\"}\n id={meta.controlId}\n class={props.iconOnly ? undefined : \"k2b-select-chip\"}\n disabled={props.disabled}\n iconOnly={props.iconOnly}\n label={triggerLabel()}\n size={props.iconOnly ? props.size : undefined}\n title={props.iconOnly ? triggerLabel() : undefined}\n {...fieldControlAria(meta, props)}\n >\n <Show\n when={selected()?.image}\n fallback={<Show when={selected()?.icon ?? props.icon}>{(icon) => <i class={icon()} aria-hidden=\"true\" />}</Show>}\n >\n {(image) => <img src={image()} alt=\"\" />}\n </Show>\n <Show when={!props.iconOnly}>\n <span data-placeholder={selected() ? undefined : \"true\"}>{selected()?.label ?? props.placeholder ?? \"\"}</span>\n <i class=\"ti ti-chevron-down\" aria-hidden=\"true\" />\n </Show>\n </Dropdown.Trigger>\n </Dropdown.Root>\n <Show when={props.name}>{(name) => <input type=\"hidden\" name={name()} value={value()} />}</Show>\n </Field>\n );\n}\n\nexport default SelectChip;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createSignal","Show","splitProps","createFieldMeta","Field","fieldControlAria","useUiMessages","commitFieldValue","resolveMaybeAccessor","MarkdownEditor","TextInput","props","messages","local","rest","meta","id","value","error","passwordVisible","setPasswordVisible","multiline","Boolean","markdown","icon","variant","activeIcon","input","next","onValueChange","commit","onValueCommit","clear","onClear","_$createComponent","when","fallback","class","label","description","required","disabled","children","_$ssr","_tmpl$4","_$ssrAttribute","_$escape","undefined","monospace","_$ssrStyle","String","lines","prefix","_tmpl$","_$ssrElement","_$mergeProps","controlId","type","password","minlength","minLength","maxlength","maxLength","rows","suffix","clearable","readOnly","_tmpl$2","clearLabel","_tmpl$3","hidePassword","showPassword","name","onSubmit","placeholder","spellcheck","abbreviations","completions","aria-label","aria-describedby"],"sources":["inputs/TextInput.tsx"],"sourcesContent":["import { createSignal, type JSX, Show, splitProps } from \"solid-js\";\nimport { createFieldMeta, Field, fieldControlAria } from \"../internal/field\";\nimport { useUiMessages } from \"../intl/messages\";\nimport type { Completion } from \"./completion\";\nimport type { ValueFieldProps } from \"./field-contract\";\nimport { commitFieldValue, resolveMaybeAccessor } from \"./field-contract\";\nimport { MarkdownEditor } from \"./markdown/MarkdownEditor\";\n\nexport type TextInputProps = Omit<\n JSX.InputHTMLAttributes<HTMLInputElement>,\n \"onChange\" | \"onInput\" | \"prefix\" | \"suffix\" | \"type\" | \"value\" | keyof ValueFieldProps<string>\n> &\n ValueFieldProps<string> & {\n minLength?: number;\n maxLength?: number;\n type?: \"text\" | \"search\" | \"email\" | \"url\" | \"tel\";\n variant?: \"default\" | \"ai\";\n icon?: string;\n activeIcon?: string;\n prefix?: JSX.Element;\n suffix?: JSX.Element;\n clearable?: boolean;\n onClear?: () => void;\n clearLabel?: string;\n multiline?: boolean;\n monospace?: boolean;\n password?: boolean;\n markdown?: boolean;\n onSubmit?: () => void;\n lines?: number;\n abbreviations?: Record<string, string>;\n completions?: readonly Completion[];\n };\n\nexport function TextInput(props: TextInputProps): JSX.Element {\n const messages = useUiMessages();\n const [local, rest] = splitProps(props, [\n \"activeIcon\",\n \"aria-describedby\",\n \"aria-label\",\n \"class\",\n \"clearLabel\",\n \"clearable\",\n \"completions\",\n \"description\",\n \"error\",\n \"icon\",\n \"id\",\n \"label\",\n \"lines\",\n \"markdown\",\n \"minLength\",\n \"maxLength\",\n \"monospace\",\n \"multiline\",\n \"onClear\",\n \"onValueCommit\",\n \"onSubmit\",\n \"onValueChange\",\n \"password\",\n \"prefix\",\n \"required\",\n \"suffix\",\n \"type\",\n \"value\",\n \"variant\",\n \"abbreviations\",\n ]);\n const meta = createFieldMeta(local.id);\n const value = () => resolveMaybeAccessor(local.value) ?? \"\";\n const error = () => resolveMaybeAccessor(local.error);\n const [passwordVisible, setPasswordVisible] = createSignal(false);\n const multiline = () => Boolean(local.multiline || local.markdown);\n const icon = () => local.icon ?? (local.variant === \"ai\" ? \"ti ti-sparkles\" : local.markdown ? \"ti ti-markdown\" : \"ti ti-cursor-text\");\n const activeIcon = () => local.activeIcon ?? (local.variant === \"ai\" ? \"ti ti-sparkles\" : \"ti ti-pencil\");\n const input = (next: string) => local.onValueChange?.(next);\n const commit = (next: string) => local.onValueCommit?.(next);\n const clear = () => {\n if (local.onClear) {\n local.onClear();\n return;\n }\n commitFieldValue(local, \"\");\n };\n\n return (\n <Show\n when={local.markdown}\n fallback={\n <Field\n class={local.class}\n label={local.label}\n description={local.description}\n error={error()}\n meta={meta}\n required={local.required}\n disabled={rest.disabled}\n >\n <div\n class=\"k2b-input-shell k2b-text-input\"\n data-invalid={error() ? \"true\" : undefined}\n data-ai={local.variant === \"ai\" ? \"true\" : undefined}\n data-multiline={multiline() ? \"true\" : undefined}\n data-monospace={local.monospace ? \"true\" : undefined}\n style={multiline() ? { \"--k2b-editor-lines\": String(local.lines ?? 3) } : undefined}\n >\n <span class=\"k2b-input-shell__icon k2b-text-input__icon\" aria-hidden=\"true\">\n <i class={icon()} />\n <i class={activeIcon()} />\n </span>\n <Show when={local.prefix}>\n <span class=\"k2b-input-shell__affix\">{local.prefix}</span>\n </Show>\n <Show\n when={multiline()}\n fallback={\n <input\n {...rest}\n id={meta.controlId}\n class=\"k2b-input\"\n type={local.password && !passwordVisible() ? \"password\" : (local.type ?? \"text\")}\n value={value()}\n minlength={local.minLength}\n maxlength={local.maxLength}\n required={local.required}\n {...fieldControlAria(meta, local)}\n onInput={(event) => {\n input(event.currentTarget.value);\n }}\n onChange={(event) => commit(event.currentTarget.value)}\n />\n }\n >\n <textarea\n {...(rest as unknown as JSX.TextareaHTMLAttributes<HTMLTextAreaElement>)}\n id={meta.controlId}\n class=\"k2b-input k2b-text-input__textarea\"\n value={value()}\n rows={local.lines ?? 3}\n required={local.required}\n minlength={local.minLength}\n maxlength={local.maxLength}\n {...fieldControlAria(meta, local)}\n onInput={(event) => {\n input(event.currentTarget.value);\n }}\n onChange={(event) => commit(event.currentTarget.value)}\n onKeyDown={(event) => {\n if (local.onSubmit && event.key === \"Enter\" && !event.shiftKey && !event.metaKey) {\n event.preventDefault();\n local.onSubmit();\n }\n }}\n />\n </Show>\n <Show when={local.suffix}>\n <span class=\"k2b-input-shell__affix\">{local.suffix}</span>\n </Show>\n <Show when={local.clearable && value() && !multiline() && !local.password && !rest.disabled && !rest.readOnly}>\n <button\n type=\"button\"\n class=\"k2b-input-shell__clear k2b-input-clear-action\"\n aria-label={local.clearLabel ?? messages().clear}\n onClick={clear}\n >\n <i class=\"ti ti-x\" aria-hidden=\"true\" />\n </button>\n </Show>\n <Show when={local.password && !multiline()}>\n <button\n type=\"button\"\n class=\"k2b-input-shell__clear\"\n aria-label={passwordVisible() ? messages().hidePassword : messages().showPassword}\n aria-pressed={passwordVisible()}\n disabled={rest.disabled}\n onClick={() => setPasswordVisible((visible) => !visible)}\n >\n <i class={passwordVisible() ? \"ti ti-eye-off\" : \"ti ti-eye\"} aria-hidden=\"true\" />\n </button>\n </Show>\n </div>\n </Field>\n }\n >\n <MarkdownEditor\n class={local.class}\n label={local.label}\n description={local.description}\n error={error()}\n id={meta.controlId}\n name={rest.name}\n value={value()}\n onValueChange={input}\n onValueCommit={local.onValueCommit}\n onSubmit={local.onSubmit}\n placeholder={rest.placeholder}\n disabled={rest.disabled}\n required={local.required}\n lines={local.lines}\n maxLength={local.maxLength}\n spellcheck={rest.spellcheck === undefined ? undefined : rest.spellcheck === true || rest.spellcheck === \"true\"}\n abbreviations={local.abbreviations}\n completions={local.completions}\n aria-label={local[\"aria-label\"]}\n aria-describedby={local[\"aria-describedby\"]}\n />\n </Show>\n );\n}\n\nexport default TextInput;\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createSignal","Show","splitProps","createFieldMeta","Field","fieldControlAria","useUiMessages","commitFieldValue","resolveMaybeAccessor","MarkdownEditor","TextInput","props","messages","local","rest","meta","id","value","error","passwordVisible","setPasswordVisible","multiline","Boolean","markdown","icon","variant","activeIcon","input","next","onValueChange","commit","onValueCommit","clear","onClear","_$createComponent","when","fallback","class","label","description","required","disabled","children","_$ssr","_tmpl$4","_$ssrAttribute","_$escape","undefined","monospace","_$ssrStyle","String","lines","prefix","_tmpl$","_$ssrElement","_$mergeProps","controlId","type","password","minlength","minLength","maxlength","maxLength","rows","suffix","clearable","readOnly","_tmpl$2","clearLabel","_tmpl$3","hidePassword","showPassword","name","onSubmit","placeholder","spellcheck","abbreviations","completions","aria-label","aria-describedby"],"sources":["inputs/TextInput.tsx"],"sourcesContent":["import { createSignal, type JSX, Show, splitProps } from \"solid-js\";\nimport { createFieldMeta, Field, fieldControlAria } from \"../internal/field\";\nimport { useUiMessages } from \"../intl/messages\";\nimport type { Completion } from \"./completion\";\nimport type { ValueFieldProps } from \"./field-contract\";\nimport { commitFieldValue, resolveMaybeAccessor } from \"./field-contract\";\nimport { MarkdownEditor } from \"./markdown/MarkdownEditor\";\n\nexport type TextInputProps = Omit<\n JSX.InputHTMLAttributes<HTMLInputElement>,\n \"onChange\" | \"onInput\" | \"prefix\" | \"suffix\" | \"type\" | \"value\" | keyof ValueFieldProps<string>\n> &\n ValueFieldProps<string> & {\n minLength?: number;\n maxLength?: number;\n type?: \"text\" | \"search\" | \"email\" | \"url\" | \"tel\";\n variant?: \"default\" | \"ai\";\n icon?: string;\n activeIcon?: string;\n prefix?: JSX.Element;\n suffix?: JSX.Element;\n clearable?: boolean;\n onClear?: () => void;\n clearLabel?: string;\n multiline?: boolean;\n monospace?: boolean;\n password?: boolean;\n markdown?: boolean;\n onSubmit?: () => void;\n lines?: number;\n abbreviations?: Record<string, string>;\n completions?: readonly Completion[];\n };\n\nexport function TextInput(props: TextInputProps): JSX.Element {\n const messages = useUiMessages();\n const [local, rest] = splitProps(props, [\n \"activeIcon\",\n \"aria-describedby\",\n \"aria-label\",\n \"class\",\n \"clearLabel\",\n \"clearable\",\n \"completions\",\n \"description\",\n \"error\",\n \"icon\",\n \"id\",\n \"label\",\n \"lines\",\n \"markdown\",\n \"minLength\",\n \"maxLength\",\n \"monospace\",\n \"multiline\",\n \"onClear\",\n \"onValueCommit\",\n \"onSubmit\",\n \"onValueChange\",\n \"password\",\n \"prefix\",\n \"required\",\n \"suffix\",\n \"type\",\n \"value\",\n \"variant\",\n \"abbreviations\",\n ]);\n const meta = createFieldMeta(local.id);\n const value = () => resolveMaybeAccessor(local.value) ?? \"\";\n const error = () => resolveMaybeAccessor(local.error);\n const [passwordVisible, setPasswordVisible] = createSignal(false);\n const multiline = () => Boolean(local.multiline || local.markdown);\n const icon = () => local.icon ?? (local.variant === \"ai\" ? \"ti ti-sparkles\" : local.markdown ? \"ti ti-markdown\" : \"ti ti-cursor-text\");\n const activeIcon = () => local.activeIcon ?? (local.variant === \"ai\" ? \"ti ti-sparkles\" : \"ti ti-pencil\");\n const input = (next: string) => local.onValueChange?.(next);\n const commit = (next: string) => local.onValueCommit?.(next);\n const clear = () => {\n if (local.onClear) {\n local.onClear();\n return;\n }\n commitFieldValue(local, \"\");\n };\n\n return (\n <Show\n when={local.markdown}\n fallback={\n <Field\n class={local.class}\n label={local.label}\n description={local.description}\n error={error()}\n meta={meta}\n required={local.required}\n disabled={rest.disabled}\n >\n <div\n class=\"k2b-input-shell k2b-text-input\"\n data-invalid={error() ? \"true\" : undefined}\n data-ai={local.variant === \"ai\" ? \"true\" : undefined}\n data-multiline={multiline() ? \"true\" : undefined}\n data-monospace={local.monospace ? \"true\" : undefined}\n style={multiline() ? { \"--k2b-editor-lines\": String(local.lines ?? 3) } : undefined}\n >\n <span class=\"k2b-input-shell__icon k2b-text-input__icon\" aria-hidden=\"true\">\n <i class={icon()} />\n <i class={activeIcon()} />\n </span>\n <Show when={local.prefix}>\n <span class=\"k2b-input-shell__affix\">{local.prefix}</span>\n </Show>\n <Show\n when={multiline()}\n fallback={\n <input\n {...rest}\n id={meta.controlId}\n class=\"k2b-input\"\n type={local.password && !passwordVisible() ? \"password\" : (local.type ?? \"text\")}\n value={value()}\n minlength={local.minLength}\n maxlength={local.maxLength}\n required={local.required}\n {...fieldControlAria(meta, local)}\n onInput={(event) => {\n input(event.currentTarget.value);\n }}\n onChange={(event) => commit(event.currentTarget.value)}\n onKeyDown={(event) => {\n if (local.onSubmit && event.key === \"Enter\" && !event.shiftKey && !event.metaKey) {\n event.preventDefault();\n local.onSubmit();\n }\n }}\n />\n }\n >\n <textarea\n {...(rest as unknown as JSX.TextareaHTMLAttributes<HTMLTextAreaElement>)}\n id={meta.controlId}\n class=\"k2b-input k2b-text-input__textarea\"\n value={value()}\n rows={local.lines ?? 3}\n required={local.required}\n minlength={local.minLength}\n maxlength={local.maxLength}\n {...fieldControlAria(meta, local)}\n onInput={(event) => {\n input(event.currentTarget.value);\n }}\n onChange={(event) => commit(event.currentTarget.value)}\n onKeyDown={(event) => {\n if (local.onSubmit && event.key === \"Enter\" && !event.shiftKey && !event.metaKey) {\n event.preventDefault();\n local.onSubmit();\n }\n }}\n />\n </Show>\n <Show when={local.suffix}>\n <span class=\"k2b-input-shell__affix\">{local.suffix}</span>\n </Show>\n <Show when={local.clearable && value() && !multiline() && !local.password && !rest.disabled && !rest.readOnly}>\n <button\n type=\"button\"\n class=\"k2b-input-shell__clear k2b-input-clear-action\"\n aria-label={local.clearLabel ?? messages().clear}\n onClick={clear}\n >\n <i class=\"ti ti-x\" aria-hidden=\"true\" />\n </button>\n </Show>\n <Show when={local.password && !multiline()}>\n <button\n type=\"button\"\n class=\"k2b-input-shell__clear\"\n aria-label={passwordVisible() ? messages().hidePassword : messages().showPassword}\n aria-pressed={passwordVisible()}\n disabled={rest.disabled}\n onClick={() => setPasswordVisible((visible) => !visible)}\n >\n <i class={passwordVisible() ? \"ti ti-eye-off\" : \"ti ti-eye\"} aria-hidden=\"true\" />\n </button>\n </Show>\n </div>\n </Field>\n }\n >\n <MarkdownEditor\n class={local.class}\n label={local.label}\n description={local.description}\n error={error()}\n id={meta.controlId}\n name={rest.name}\n value={value()}\n onValueChange={input}\n onValueCommit={local.onValueCommit}\n onSubmit={local.onSubmit}\n placeholder={rest.placeholder}\n disabled={rest.disabled}\n required={local.required}\n lines={local.lines}\n maxLength={local.maxLength}\n spellcheck={rest.spellcheck === undefined ? undefined : rest.spellcheck === true || rest.spellcheck === \"true\"}\n abbreviations={local.abbreviations}\n completions={local.completions}\n aria-label={local[\"aria-label\"]}\n aria-describedby={local[\"aria-describedby\"]}\n />\n </Show>\n );\n}\n\nexport default TextInput;\n"],"mappings":";;;;;;;;;;;AAAA,SAASA,YAAY,EAAYC,IAAI,EAAEC,UAAU,QAAQ,UAAU;AACnE,SAASC,eAAe,EAAEC,KAAK,EAAEC,gBAAgB,QAAQ,mBAAmB;AAC5E,SAASC,aAAa,QAAQ,kBAAkB;AAGhD,SAASC,gBAAgB,EAAEC,oBAAoB,QAAQ,kBAAkB;AACzE,SAASC,cAAc,QAAQ,2BAA2B;AA4B1D,OAAO,SAASC,SAASA,CAACC,KAAqB,EAAe;EAC5D,MAAMC,QAAQ,GAAGN,aAAa,CAAC,CAAC;EAChC,MAAM,CAACO,KAAK,EAAEC,IAAI,CAAC,GAAGZ,UAAU,CAACS,KAAK,EAAE,CACtC,YAAY,EACZ,kBAAkB,EAClB,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,WAAW,EACX,aAAa,EACb,aAAa,EACb,OAAO,EACP,MAAM,EACN,IAAI,EACJ,OAAO,EACP,OAAO,EACP,UAAU,EACV,WAAW,EACX,WAAW,EACX,WAAW,EACX,WAAW,EACX,SAAS,EACT,eAAe,EACf,UAAU,EACV,eAAe,EACf,UAAU,EACV,QAAQ,EACR,UAAU,EACV,QAAQ,EACR,MAAM,EACN,OAAO,EACP,SAAS,EACT,eAAe,CAChB,CAAC;EACF,MAAMI,IAAI,GAAGZ,eAAe,CAACU,KAAK,CAACG,EAAE,CAAC;EACtC,MAAMC,KAAK,GAAGA,CAAA,KAAMT,oBAAoB,CAACK,KAAK,CAACI,KAAK,CAAC,IAAI,EAAE;EAC3D,MAAMC,KAAK,GAAGA,CAAA,KAAMV,oBAAoB,CAACK,KAAK,CAACK,KAAK,CAAC;EACrD,MAAM,CAACC,eAAe,EAAEC,kBAAkB,CAAC,GAAGpB,YAAY,CAAC,KAAK,CAAC;EACjE,MAAMqB,SAAS,GAAGA,CAAA,KAAMC,OAAO,CAACT,KAAK,CAACQ,SAAS,IAAIR,KAAK,CAACU,QAAQ,CAAC;EAClE,MAAMC,IAAI,GAAGA,CAAA,KAAMX,KAAK,CAACW,IAAI,KAAKX,KAAK,CAACY,OAAO,KAAK,IAAI,GAAG,gBAAgB,GAAGZ,KAAK,CAACU,QAAQ,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;EACtI,MAAMG,UAAU,GAAGA,CAAA,KAAMb,KAAK,CAACa,UAAU,KAAKb,KAAK,CAACY,OAAO,KAAK,IAAI,GAAG,gBAAgB,GAAG,cAAc,CAAC;EACzG,MAAME,KAAK,GAAIC,IAAY,IAAKf,KAAK,CAACgB,aAAa,GAAGD,IAAI,CAAC;EAC3D,MAAME,MAAM,GAAIF,IAAY,IAAKf,KAAK,CAACkB,aAAa,GAAGH,IAAI,CAAC;EAC5D,MAAMI,KAAK,GAAGA,CAAA,KAAM;IAClB,IAAInB,KAAK,CAACoB,OAAO,EAAE;MACjBpB,KAAK,CAACoB,OAAO,CAAC,CAAC;MACf;IACF;IACA1B,gBAAgB,CAACM,KAAK,EAAE,EAAE,CAAC;EAC7B,CAAC;EAED,OAAAqB,iBAAA,CACGjC,IAAI;IAAA,IACHkC,IAAIA,CAAA;MAAA,OAAEtB,KAAK,CAACU,QAAQ;IAAA;IAAA,IACpBa,QAAQA,CAAA;MAAA,OAAAF,iBAAA,CACL9B,KAAK;QAAA,aAAAiC,CAAA;UAAA,OACGxB,KAAK,CAACwB,KAAK;QAAA;QAAA,IAClBC,KAAKA,CAAA;UAAA,OAAEzB,KAAK,CAACyB,KAAK;QAAA;QAAA,IAClBC,WAAWA,CAAA;UAAA,OAAE1B,KAAK,CAAC0B,WAAW;QAAA;QAAA,IAC9BrB,KAAKA,CAAA;UAAA,OAAEA,KAAK,CAAC,CAAC;QAAA;QACdH,IAAI,EAAEA,IAAI;QAAA,IACVyB,QAAQA,CAAA;UAAA,OAAE3B,KAAK,CAAC2B,QAAQ;QAAA;QAAA,IACxBC,QAAQA,CAAA;UAAA,OAAE3B,IAAI,CAAC2B,QAAQ;QAAA;QAAA,IAAAC,SAAA;UAAA,OAAAC,KAAA,CAAAC,OAAA,EAAAC,cAAA,iBAIP3B,KAAK,CAAC,CAAC,GAAG,MAAM,GAAA4B,QAAA,CAAGC,SAAS,kBAAAF,cAAA,YACjChC,KAAK,CAACY,OAAO,KAAK,IAAI,GAAG,MAAM,GAAAqB,QAAA,CAAGC,SAAS,kBAAAF,cAAA,mBACpCxB,SAAS,CAAC,CAAC,GAAG,MAAM,GAAAyB,QAAA,CAAGC,SAAS,kBAAAF,cAAA,mBAChChC,KAAK,CAACmC,SAAS,GAAG,MAAM,GAAAF,QAAA,CAAGC,SAAS,iBAAAE,UAAA,CAC7C5B,SAAS,CAAC,CAAC,GAAG;YAAE,oBAAoB,EAAE6B,MAAM,CAACrC,KAAK,CAACsC,KAAK,IAAI,CAAC;UAAE,CAAC,GAAGJ,SAAS,GAAAF,cAAA,UAAAC,QAAA,CAGvEtB,IAAI,CAAC,CAAC,iBAAAqB,cAAA,UAAAC,QAAA,CACNpB,UAAU,CAAC,CAAC,iBAAAoB,QAAA,CAAAZ,iBAAA,CAEvBjC,IAAI;YAAA,IAACkC,IAAIA,CAAA;cAAA,OAAEtB,KAAK,CAACuC,MAAM;YAAA;YAAA,IAAAV,SAAA;cAAA,OAAAC,KAAA,CAAAU,MAAA,EAAAP,QAAA,CACgBjC,KAAK,CAACuC,MAAM;YAAA;UAAA,KAAAN,QAAA,CAAAZ,iBAAA,CAEnDjC,IAAI;YAAA,IACHkC,IAAIA,CAAA;cAAA,OAAEd,SAAS,CAAC,CAAC;YAAA;YAAA,IACjBe,QAAQA,CAAA;cAAA,OAAAkB,YAAA,UAAAC,YAAA,CAEAzC,IAAI;gBAAA,IACRE,EAAEA,CAAA;kBAAA,OAAED,IAAI,CAACyC,SAAS;gBAAA;gBAAA,SACZ,WAAW;gBAAA,IACjBC,IAAIA,CAAA;kBAAA,OAAE5C,KAAK,CAAC6C,QAAQ,IAAI,CAACvC,eAAe,CAAC,CAAC,GAAG,UAAU,GAAIN,KAAK,CAAC4C,IAAI,IAAI,MAAO;gBAAA;gBAAA,IAChFxC,KAAKA,CAAA;kBAAA,OAAEA,KAAK,CAAC,CAAC;gBAAA;gBAAA,IACd0C,SAASA,CAAA;kBAAA,OAAE9C,KAAK,CAAC+C,SAAS;gBAAA;gBAAA,IAC1BC,SAASA,CAAA;kBAAA,OAAEhD,KAAK,CAACiD,SAAS;gBAAA;gBAAA,IAC1BtB,QAAQA,CAAA;kBAAA,OAAE3B,KAAK,CAAC2B,QAAQ;gBAAA;cAAA,SACpBnC,gBAAgB,CAACU,IAAI,EAAEF,KAAK,CAAC,GAAAkC,SAAA;YAAA;YAAA,IAAAL,SAAA;cAAA,OAAAY,YAAA,aAAAC,YAAA,CAe9BzC,IAAI;gBAAA,IACTE,EAAEA,CAAA;kBAAA,OAAED,IAAI,CAACyC,SAAS;gBAAA;gBAAA,SACZ,oCAAoC;gBAAA,IAC1CvC,KAAKA,CAAA;kBAAA,OAAEA,KAAK,CAAC,CAAC;gBAAA;gBAAA,IACd8C,IAAIA,CAAA;kBAAA,OAAElD,KAAK,CAACsC,KAAK,IAAI,CAAC;gBAAA;gBAAA,IACtBX,QAAQA,CAAA;kBAAA,OAAE3B,KAAK,CAAC2B,QAAQ;gBAAA;gBAAA,IACxBmB,SAASA,CAAA;kBAAA,OAAE9C,KAAK,CAAC+C,SAAS;gBAAA;gBAAA,IAC1BC,SAASA,CAAA;kBAAA,OAAEhD,KAAK,CAACiD,SAAS;gBAAA;cAAA,SACtBzD,gBAAgB,CAACU,IAAI,EAAEF,KAAK,CAAC,GAAAkC,SAAA;YAAA;UAAA,KAAAD,QAAA,CAAAZ,iBAAA,CAapCjC,IAAI;YAAA,IAACkC,IAAIA,CAAA;cAAA,OAAEtB,KAAK,CAACmD,MAAM;YAAA;YAAA,IAAAtB,SAAA;cAAA,OAAAC,KAAA,CAAAU,MAAA,EAAAP,QAAA,CACgBjC,KAAK,CAACmD,MAAM;YAAA;UAAA,KAAAlB,QAAA,CAAAZ,iBAAA,CAEnDjC,IAAI;YAAA,IAACkC,IAAIA,CAAA;cAAA,OAAEtB,KAAK,CAACoD,SAAS,IAAIhD,KAAK,CAAC,CAAC,IAAI,CAACI,SAAS,CAAC,CAAC,IAAI,CAACR,KAAK,CAAC6C,QAAQ,IAAI,CAAC5C,IAAI,CAAC2B,QAAQ,IAAI,CAAC3B,IAAI,CAACoD,QAAQ;YAAA;YAAA,IAAAxB,SAAA;cAAA,OAAAC,KAAA,CAAAwB,OAAA,EAAAtB,cAAA,eAAAC,QAAA,CAI7FjC,KAAK,CAACuD,UAAU,IAAIxD,QAAQ,CAAC,CAAC,CAACoB,KAAK;YAAA;UAAA,KAAAc,QAAA,CAAAZ,iBAAA,CAMnDjC,IAAI;YAAA,IAACkC,IAAIA,CAAA;cAAA,OAAEtB,KAAK,CAAC6C,QAAQ,IAAI,CAACrC,SAAS,CAAC,CAAC;YAAA;YAAA,IAAAqB,SAAA;cAAA,OAAAC,KAAA,CAAA0B,OAAA,EAAAxB,cAAA,eAI1B1B,eAAe,CAAC,CAAC,GAAA2B,QAAA,CAAGlC,QAAQ,CAAC,CAAC,CAAC0D,YAAY,UAAAxB,QAAA,CAAGlC,QAAQ,CAAC,CAAC,CAAC2D,YAAY,kBAAA1B,cAAA,iBAAAC,QAAA,CACnE3B,eAAe,CAAC,CAAC,iBAAA0B,cAAA,aACrB/B,IAAI,CAAC2B,QAAQ,SAAAI,cAAA,UAGb1B,eAAe,CAAC,CAAC,GAAG,eAAe,GAAG,WAAW;YAAA;UAAA;QAAA;MAAA;IAAA;IAAA,IAAAuB,SAAA;MAAA,OAAAR,iBAAA,CAOpEzB,cAAc;QAAA,aAAA4B,CAAA;UAAA,OACNxB,KAAK,CAACwB,KAAK;QAAA;QAAA,IAClBC,KAAKA,CAAA;UAAA,OAAEzB,KAAK,CAACyB,KAAK;QAAA;QAAA,IAClBC,WAAWA,CAAA;UAAA,OAAE1B,KAAK,CAAC0B,WAAW;QAAA;QAAA,IAC9BrB,KAAKA,CAAA;UAAA,OAAEA,KAAK,CAAC,CAAC;QAAA;QAAA,IACdF,EAAEA,CAAA;UAAA,OAAED,IAAI,CAACyC,SAAS;QAAA;QAAA,IAClBgB,IAAIA,CAAA;UAAA,OAAE1D,IAAI,CAAC0D,IAAI;QAAA;QAAA,IACfvD,KAAKA,CAAA;UAAA,OAAEA,KAAK,CAAC,CAAC;QAAA;QACdY,aAAa,EAAEF,KAAK;QAAA,IACpBI,aAAaA,CAAA;UAAA,OAAElB,KAAK,CAACkB,aAAa;QAAA;QAAA,IAClC0C,QAAQA,CAAA;UAAA,OAAE5D,KAAK,CAAC4D,QAAQ;QAAA;QAAA,IACxBC,WAAWA,CAAA;UAAA,OAAE5D,IAAI,CAAC4D,WAAW;QAAA;QAAA,IAC7BjC,QAAQA,CAAA;UAAA,OAAE3B,IAAI,CAAC2B,QAAQ;QAAA;QAAA,IACvBD,QAAQA,CAAA;UAAA,OAAE3B,KAAK,CAAC2B,QAAQ;QAAA;QAAA,IACxBW,KAAKA,CAAA;UAAA,OAAEtC,KAAK,CAACsC,KAAK;QAAA;QAAA,IAClBW,SAASA,CAAA;UAAA,OAAEjD,KAAK,CAACiD,SAAS;QAAA;QAAA,IAC1Ba,UAAUA,CAAA;UAAA,OAAE7D,IAAI,CAAC6D,UAAU,KAAK5B,SAAS,GAAGA,SAAS,GAAGjC,IAAI,CAAC6D,UAAU,KAAK,IAAI,IAAI7D,IAAI,CAAC6D,UAAU,KAAK,MAAM;QAAA;QAAA,IAC9GC,aAAaA,CAAA;UAAA,OAAE/D,KAAK,CAAC+D,aAAa;QAAA;QAAA,IAClCC,WAAWA,CAAA;UAAA,OAAEhE,KAAK,CAACgE,WAAW;QAAA;QAAA,kBAAAC,CAAA;UAAA,OAClBjE,KAAK,CAAC,YAAY,CAAC;QAAA;QAAA,wBAAAkE,CAAA;UAAA,OACblE,KAAK,CAAC,kBAAkB,CAAC;QAAA;MAAA;IAAA;EAAA;AAInD;AAEA,eAAeH,SAAS","ignoreList":[]}
|
|
@@ -11,9 +11,10 @@ var _tmpl$ = ["<button type=\"button\" class=\"k2b-markdown-editor__tool\"", " t
|
|
|
11
11
|
_tmpl$4 = "<div class=\"k2b-autocomplete__status\" role=\"status\"><i class=\"ti ti-loader-2 k2b-spin\" aria-hidden=\"true\"></i>Loading suggestions</div>",
|
|
12
12
|
_tmpl$5 = ["<div popover=\"manual\" class=\"k2b-autocomplete__options\" role=\"presentation\"", "><div", " class=\"k2b-autocomplete__listbox\" role=\"listbox\"", ">", "", "", "</div></div>"],
|
|
13
13
|
_tmpl$6 = ["<div class=\"k2b-markdown-editor\" role=\"group\"", " style=\"", "\">", "<div class=\"k2b-markdown-editor__surface\">", "<div class=\"k2b-markdown-editor__preview\" aria-hidden=\"true\"></div>", "</div>", "", "</div>"],
|
|
14
|
-
_tmpl$7 = ["<
|
|
15
|
-
_tmpl$8 = ["<div
|
|
16
|
-
_tmpl$9 = ["<
|
|
14
|
+
_tmpl$7 = ["<button type=\"button\" class=\"k2b-markdown-editor__tool\"", "><i class=\"ti ti-x\" aria-hidden=\"true\"></i></button>"],
|
|
15
|
+
_tmpl$8 = ["<div class=\"k2b-autocomplete__status\" data-error=\"true\" role=\"alert\"><i class=\"ti ti-alert-circle\" aria-hidden=\"true\"></i><span>", "</span><button type=\"button\">", "</button></div>"],
|
|
16
|
+
_tmpl$9 = ["<div", " class=\"k2b-autocomplete__option\" role=\"option\"", "><span>", "</span>", "</div>"],
|
|
17
|
+
_tmpl$0 = ["<small>", "</small>"];
|
|
17
18
|
import { highlight } from "@k2b/stdlib";
|
|
18
19
|
import { createEffect, createMemo, createSignal, createUniqueId, For, onCleanup, onMount, Show, untrack } from "solid-js";
|
|
19
20
|
import { createFieldMeta, Field, fieldControlAria } from "../../internal/field";
|
|
@@ -387,14 +388,14 @@ export function MarkdownEditor(props) {
|
|
|
387
388
|
event.preventDefault();
|
|
388
389
|
}
|
|
389
390
|
};
|
|
390
|
-
const saveControls = () =>
|
|
391
|
+
const saveControls = () => _$createComponent(Show, {
|
|
391
392
|
get when() {
|
|
392
393
|
return props.onSave;
|
|
393
394
|
},
|
|
394
395
|
get children() {
|
|
395
|
-
return _$ssr(_tmpl$, _$ssrAttribute("title", _$escape(messages().saveShortcut, true), false) + _$ssrAttribute("aria-label", _$escape(messages().save, true), false), _$ssrAttribute("disabled", props.disabled || props.saveDisabled || props.saving, true), _$ssrAttribute("class", props.saving ? "ti ti-loader-2 k2b-spin" : "ti ti-device-floppy", false));
|
|
396
|
+
return _$ssr(_tmpl$, _$ssrAttribute("title", _$escape(messages().saveShortcut, true), false) + _$ssrAttribute("aria-label", _$escape(messages().save, true), false), _$ssrAttribute("disabled", props.disabled || props.saveDisabled || props.saving, true), _$ssrAttribute("class", props.saving ? "ti ti-loader-2 k2b-spin" : props.saved ? "ti ti-check" : "ti ti-device-floppy", false));
|
|
396
397
|
}
|
|
397
|
-
})
|
|
398
|
+
});
|
|
398
399
|
return _$createComponent(Field, {
|
|
399
400
|
get ["class"]() {
|
|
400
401
|
return props.class;
|
|
@@ -419,7 +420,7 @@ export function MarkdownEditor(props) {
|
|
|
419
420
|
return props.disabled;
|
|
420
421
|
},
|
|
421
422
|
get children() {
|
|
422
|
-
return _$ssr(_tmpl$6, _$ssrAttribute("aria-labelledby", props.label ? _$escape(meta.labelId, true) : _$escape(undefined, true), false) + _$ssrAttribute("aria-label", !props.label ? _$escape(props["aria-label"], true) : _$escape(undefined, true), false) + _$ssrAttribute("data-disabled", props.disabled ? "true" : _$escape(undefined, true), false) + _$ssrAttribute("data-invalid", error() ? "true" : _$escape(undefined, true), false) + _$ssrAttribute("data-variant", props.variant === "
|
|
423
|
+
return _$ssr(_tmpl$6, _$ssrAttribute("aria-labelledby", props.label ? _$escape(meta.labelId, true) : _$escape(undefined, true), false) + _$ssrAttribute("aria-label", !props.label ? _$escape(props["aria-label"], true) : _$escape(undefined, true), false) + _$ssrAttribute("data-disabled", props.disabled ? "true" : _$escape(undefined, true), false) + _$ssrAttribute("data-invalid", error() ? "true" : _$escape(undefined, true), false) + _$ssrAttribute("data-variant", props.variant === "default" ? _$escape(undefined, true) : _$escape(props.variant, true), false) + _$ssrAttribute("data-fill", props.fill ? "true" : _$escape(undefined, true), false), _$ssrStyleProperty("--k2b-editor-lines:", _$escape(String(props.lines ?? 6), true)), _$escape(_$createComponent(Show, {
|
|
423
424
|
get when() {
|
|
424
425
|
return !props.noToolbar;
|
|
425
426
|
},
|
|
@@ -431,7 +432,14 @@ export function MarkdownEditor(props) {
|
|
|
431
432
|
return props.disabled;
|
|
432
433
|
},
|
|
433
434
|
get trailing() {
|
|
434
|
-
return saveControls()
|
|
435
|
+
return [props.toolbarTrailing, saveControls(), _$createComponent(Show, {
|
|
436
|
+
get when() {
|
|
437
|
+
return props.onClose;
|
|
438
|
+
},
|
|
439
|
+
get children() {
|
|
440
|
+
return _$ssr(_tmpl$7, _$ssrAttribute("title", _$escape(messages().close, true), false) + _$ssrAttribute("aria-label", _$escape(messages().close, true), false) + _$ssrAttribute("tabindex", props.disabled ? 0 : -1, false));
|
|
441
|
+
}
|
|
442
|
+
})];
|
|
435
443
|
}
|
|
436
444
|
});
|
|
437
445
|
}
|
|
@@ -494,17 +502,17 @@ export function MarkdownEditor(props) {
|
|
|
494
502
|
get when() {
|
|
495
503
|
return completionError();
|
|
496
504
|
},
|
|
497
|
-
children: message => _$ssr(_tmpl$
|
|
505
|
+
children: message => _$ssr(_tmpl$8, _$escape(message()), _$escape(messages().retry))
|
|
498
506
|
})), _$escape(_$createComponent(For, {
|
|
499
507
|
get each() {
|
|
500
508
|
return state()?.suggestions ?? [];
|
|
501
509
|
},
|
|
502
510
|
children: (suggestion, index) => // biome-ignore lint/a11y/useKeyWithClickEvents: the owning textarea handles keyboard activation through aria-activedescendant.
|
|
503
|
-
_$ssr(_tmpl$
|
|
511
|
+
_$ssr(_tmpl$9, _$ssrAttribute("id", _$escape(optionId(index()), true), false), _$ssrAttribute("aria-selected", _$escape(index(), true) === _$escape(state()?.selectedIndex, true), false), _$escape(displayLabel(suggestion, state().context.completion)), _$escape(_$createComponent(Show, {
|
|
504
512
|
get when() {
|
|
505
513
|
return suggestion.hint;
|
|
506
514
|
},
|
|
507
|
-
children: hint => _$ssr(_tmpl$
|
|
515
|
+
children: hint => _$ssr(_tmpl$0, _$escape(hint()))
|
|
508
516
|
})))
|
|
509
517
|
})));
|
|
510
518
|
}
|