@k2b/ui 0.1.0-rc.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/LICENSE +661 -0
- package/README.md +343 -0
- package/dist/.build-complete +0 -0
- package/dist/browser/actions/Button.js +236 -0
- package/dist/browser/actions/Button.js.map +1 -0
- package/dist/browser/actions/ContextMenu.js +199 -0
- package/dist/browser/actions/ContextMenu.js.map +1 -0
- package/dist/browser/actions/CopyButton.js +97 -0
- package/dist/browser/actions/CopyButton.js.map +1 -0
- package/dist/browser/actions/Disclosure.js +83 -0
- package/dist/browser/actions/Disclosure.js.map +1 -0
- package/dist/browser/actions/Dropdown.js +669 -0
- package/dist/browser/actions/Dropdown.js.map +1 -0
- package/dist/browser/actions/FilterChip.js +149 -0
- package/dist/browser/actions/FilterChip.js.map +1 -0
- package/dist/browser/actions/RemoveButton.js +47 -0
- package/dist/browser/actions/RemoveButton.js.map +1 -0
- package/dist/browser/actions/SegmentedControl.js +138 -0
- package/dist/browser/actions/SegmentedControl.js.map +1 -0
- package/dist/browser/actions/SplitButton.js +76 -0
- package/dist/browser/actions/SplitButton.js.map +1 -0
- package/dist/browser/actions/SpotlightSearch.js +87 -0
- package/dist/browser/actions/SpotlightSearch.js.map +1 -0
- package/dist/browser/actions/Tabs.js +185 -0
- package/dist/browser/actions/Tabs.js.map +1 -0
- package/dist/browser/actions/Toolbar.js +87 -0
- package/dist/browser/actions/Toolbar.js.map +1 -0
- package/dist/browser/actions/index.js +13 -0
- package/dist/browser/actions/index.js.map +1 -0
- package/dist/browser/chat/ChatComposer.js +760 -0
- package/dist/browser/chat/ChatComposer.js.map +1 -0
- package/dist/browser/chat/ChatPrimitives.js +688 -0
- package/dist/browser/chat/ChatPrimitives.js.map +1 -0
- package/dist/browser/chat/ChatRoot.js +27 -0
- package/dist/browser/chat/ChatRoot.js.map +1 -0
- package/dist/browser/chat/ChatTimeline.js +404 -0
- package/dist/browser/chat/ChatTimeline.js.map +1 -0
- package/dist/browser/chat/chat-behavior.js +53 -0
- package/dist/browser/chat/chat-behavior.js.map +1 -0
- package/dist/browser/chat/index.js +17 -0
- package/dist/browser/chat/index.js.map +1 -0
- package/dist/browser/chat/types.js +2 -0
- package/dist/browser/chat/types.js.map +1 -0
- package/dist/browser/content/Calendar.js +2168 -0
- package/dist/browser/content/Calendar.js.map +1 -0
- package/dist/browser/content/Chart.js +680 -0
- package/dist/browser/content/Chart.js.map +1 -0
- package/dist/browser/content/CodeDisplay.js +104 -0
- package/dist/browser/content/CodeDisplay.js.map +1 -0
- package/dist/browser/content/DataTable.js +724 -0
- package/dist/browser/content/DataTable.js.map +1 -0
- package/dist/browser/content/Docs.js +227 -0
- package/dist/browser/content/Docs.js.map +1 -0
- package/dist/browser/content/FileBrowser.js +462 -0
- package/dist/browser/content/FileBrowser.js.map +1 -0
- package/dist/browser/content/FileTree.js +453 -0
- package/dist/browser/content/FileTree.js.map +1 -0
- package/dist/browser/content/FileView.js +842 -0
- package/dist/browser/content/FileView.js.map +1 -0
- package/dist/browser/content/Lightbox.js +285 -0
- package/dist/browser/content/Lightbox.js.map +1 -0
- package/dist/browser/content/LogEntriesTable.js +139 -0
- package/dist/browser/content/LogEntriesTable.js.map +1 -0
- package/dist/browser/content/MarkdownView.js +138 -0
- package/dist/browser/content/MarkdownView.js.map +1 -0
- package/dist/browser/content/Pagination.js +182 -0
- package/dist/browser/content/Pagination.js.map +1 -0
- package/dist/browser/content/PdfPreview.js +204 -0
- package/dist/browser/content/PdfPreview.js.map +1 -0
- package/dist/browser/content/RangePicker.js +83 -0
- package/dist/browser/content/RangePicker.js.map +1 -0
- package/dist/browser/content/StructuredDataPreview.js +194 -0
- package/dist/browser/content/StructuredDataPreview.js.map +1 -0
- package/dist/browser/content/calendar-event-layout.js +92 -0
- package/dist/browser/content/calendar-event-layout.js.map +1 -0
- package/dist/browser/content/calendar-pointer.js +114 -0
- package/dist/browser/content/calendar-pointer.js.map +1 -0
- package/dist/browser/content/chart-map-viewport.js +33 -0
- package/dist/browser/content/chart-map-viewport.js.map +1 -0
- package/dist/browser/content/chart-state-timeline.js +124 -0
- package/dist/browser/content/chart-state-timeline.js.map +1 -0
- package/dist/browser/content/code-highlight.js +144 -0
- package/dist/browser/content/code-highlight.js.map +1 -0
- package/dist/browser/content/file-tree.js +93 -0
- package/dist/browser/content/file-tree.js.map +1 -0
- package/dist/browser/content/file-view-preview.js +112 -0
- package/dist/browser/content/file-view-preview.js.map +1 -0
- package/dist/browser/content/index.js +16 -0
- package/dist/browser/content/index.js.map +1 -0
- package/dist/browser/feedback/InlineGuidance.js +46 -0
- package/dist/browser/feedback/InlineGuidance.js.map +1 -0
- package/dist/browser/feedback/Tooltip.js +189 -0
- package/dist/browser/feedback/Tooltip.js.map +1 -0
- package/dist/browser/feedback/dialog-core.js +207 -0
- package/dist/browser/feedback/dialog-core.js.map +1 -0
- package/dist/browser/feedback/index.js +6 -0
- package/dist/browser/feedback/index.js.map +1 -0
- package/dist/browser/feedback/prompts.js +991 -0
- package/dist/browser/feedback/prompts.js.map +1 -0
- package/dist/browser/feedback/toast.js +271 -0
- package/dist/browser/feedback/toast.js.map +1 -0
- package/dist/browser/feedback/tooltip-position.js +25 -0
- package/dist/browser/feedback/tooltip-position.js.map +1 -0
- package/dist/browser/index.js +11 -0
- package/dist/browser/index.js.map +1 -0
- package/dist/browser/inputs/AutocompleteEditor.js +610 -0
- package/dist/browser/inputs/AutocompleteEditor.js.map +1 -0
- package/dist/browser/inputs/AutocompleteSelect.js +632 -0
- package/dist/browser/inputs/AutocompleteSelect.js.map +1 -0
- package/dist/browser/inputs/Checkbox.js +137 -0
- package/dist/browser/inputs/Checkbox.js.map +1 -0
- package/dist/browser/inputs/CheckboxCard.js +130 -0
- package/dist/browser/inputs/CheckboxCard.js.map +1 -0
- package/dist/browser/inputs/ChoiceGroups.js +174 -0
- package/dist/browser/inputs/ChoiceGroups.js.map +1 -0
- package/dist/browser/inputs/ChoiceInputs.js +400 -0
- package/dist/browser/inputs/ChoiceInputs.js.map +1 -0
- package/dist/browser/inputs/Combobox.js +274 -0
- package/dist/browser/inputs/Combobox.js.map +1 -0
- package/dist/browser/inputs/DatePicker.js +923 -0
- package/dist/browser/inputs/DatePicker.js.map +1 -0
- package/dist/browser/inputs/FileInputs.js +736 -0
- package/dist/browser/inputs/FileInputs.js.map +1 -0
- package/dist/browser/inputs/MultiSelectInput.js +565 -0
- package/dist/browser/inputs/MultiSelectInput.js.map +1 -0
- package/dist/browser/inputs/NumberInput.js +288 -0
- package/dist/browser/inputs/NumberInput.js.map +1 -0
- package/dist/browser/inputs/Select.js +507 -0
- package/dist/browser/inputs/Select.js.map +1 -0
- package/dist/browser/inputs/SelectChip.js +151 -0
- package/dist/browser/inputs/SelectChip.js.map +1 -0
- package/dist/browser/inputs/SpecialInputs.js +117 -0
- package/dist/browser/inputs/SpecialInputs.js.map +1 -0
- package/dist/browser/inputs/Switch.js +117 -0
- package/dist/browser/inputs/Switch.js.map +1 -0
- package/dist/browser/inputs/TagEditor.js +358 -0
- package/dist/browser/inputs/TagEditor.js.map +1 -0
- package/dist/browser/inputs/TagsInput.js +195 -0
- package/dist/browser/inputs/TagsInput.js.map +1 -0
- package/dist/browser/inputs/TemplateEditor.js +190 -0
- package/dist/browser/inputs/TemplateEditor.js.map +1 -0
- package/dist/browser/inputs/TextInput.js +318 -0
- package/dist/browser/inputs/TextInput.js.map +1 -0
- package/dist/browser/inputs/choice.js +188 -0
- package/dist/browser/inputs/choice.js.map +1 -0
- package/dist/browser/inputs/completion/behaviors.js +108 -0
- package/dist/browser/inputs/completion/behaviors.js.map +1 -0
- package/dist/browser/inputs/completion/engine.js +103 -0
- package/dist/browser/inputs/completion/engine.js.map +1 -0
- package/dist/browser/inputs/completion/index.js +4 -0
- package/dist/browser/inputs/completion/index.js.map +1 -0
- package/dist/browser/inputs/completion/overlay.js +25 -0
- package/dist/browser/inputs/completion/overlay.js.map +1 -0
- package/dist/browser/inputs/date-picker.js +123 -0
- package/dist/browser/inputs/date-picker.js.map +1 -0
- package/dist/browser/inputs/editor-dom.js +26 -0
- package/dist/browser/inputs/editor-dom.js.map +1 -0
- package/dist/browser/inputs/field-contract.js +9 -0
- package/dist/browser/inputs/field-contract.js.map +1 -0
- package/dist/browser/inputs/icon-options.js +46 -0
- package/dist/browser/inputs/icon-options.js.map +1 -0
- package/dist/browser/inputs/image-crop.js +145 -0
- package/dist/browser/inputs/image-crop.js.map +1 -0
- package/dist/browser/inputs/index.js +23 -0
- package/dist/browser/inputs/index.js.map +1 -0
- package/dist/browser/inputs/markdown/MarkdownEditor.js +725 -0
- package/dist/browser/inputs/markdown/MarkdownEditor.js.map +1 -0
- package/dist/browser/inputs/markdown/Toolbar.js +172 -0
- package/dist/browser/inputs/markdown/Toolbar.js.map +1 -0
- package/dist/browser/inputs/markdown/actions.js +140 -0
- package/dist/browser/inputs/markdown/actions.js.map +1 -0
- package/dist/browser/inputs/markdown/active-formats.js +36 -0
- package/dist/browser/inputs/markdown/active-formats.js.map +1 -0
- package/dist/browser/inputs/markdown/behaviors.js +63 -0
- package/dist/browser/inputs/markdown/behaviors.js.map +1 -0
- package/dist/browser/inputs/markdown/code-zone.js +8 -0
- package/dist/browser/inputs/markdown/code-zone.js.map +1 -0
- package/dist/browser/internal/color.js +18 -0
- package/dist/browser/internal/color.js.map +1 -0
- package/dist/browser/internal/field.js +158 -0
- package/dist/browser/internal/field.js.map +1 -0
- package/dist/browser/internal/portal.js +17 -0
- package/dist/browser/internal/portal.js.map +1 -0
- package/dist/browser/intl/Format.js +273 -0
- package/dist/browser/intl/Format.js.map +1 -0
- package/dist/browser/intl/index.js +3 -0
- package/dist/browser/intl/index.js.map +1 -0
- package/dist/browser/intl/locale.js +63 -0
- package/dist/browser/intl/locale.js.map +1 -0
- package/dist/browser/intl/messages.js +753 -0
- package/dist/browser/intl/messages.js.map +1 -0
- package/dist/browser/layout/AppOverview.js +151 -0
- package/dist/browser/layout/AppOverview.js.map +1 -0
- package/dist/browser/layout/AppWorkspace.js +1502 -0
- package/dist/browser/layout/AppWorkspace.js.map +1 -0
- package/dist/browser/layout/DataPanel.js +122 -0
- package/dist/browser/layout/DataPanel.js.map +1 -0
- package/dist/browser/layout/DetailPanel.js +484 -0
- package/dist/browser/layout/DetailPanel.js.map +1 -0
- package/dist/browser/layout/Discussion.js +511 -0
- package/dist/browser/layout/Discussion.js.map +1 -0
- package/dist/browser/layout/FloatingWindow.js +332 -0
- package/dist/browser/layout/FloatingWindow.js.map +1 -0
- package/dist/browser/layout/PanelDialog.js +236 -0
- package/dist/browser/layout/PanelDialog.js.map +1 -0
- package/dist/browser/layout/PanelHeader.js +91 -0
- package/dist/browser/layout/PanelHeader.js.map +1 -0
- package/dist/browser/layout/Panes.js +978 -0
- package/dist/browser/layout/Panes.js.map +1 -0
- package/dist/browser/layout/ScrollArea.js +29 -0
- package/dist/browser/layout/ScrollArea.js.map +1 -0
- package/dist/browser/layout/Settings.js +381 -0
- package/dist/browser/layout/Settings.js.map +1 -0
- package/dist/browser/layout/SettingsCollection.js +212 -0
- package/dist/browser/layout/SettingsCollection.js.map +1 -0
- package/dist/browser/layout/SettingsModal.js +281 -0
- package/dist/browser/layout/SettingsModal.js.map +1 -0
- package/dist/browser/layout/app-workspace-controller.js +419 -0
- package/dist/browser/layout/app-workspace-controller.js.map +1 -0
- package/dist/browser/layout/app-workspace-state.js +125 -0
- package/dist/browser/layout/app-workspace-state.js.map +1 -0
- package/dist/browser/layout/floating-window-geometry.js +15 -0
- package/dist/browser/layout/floating-window-geometry.js.map +1 -0
- package/dist/browser/layout/index.js +17 -0
- package/dist/browser/layout/index.js.map +1 -0
- package/dist/browser/layout/panes-layout.js +436 -0
- package/dist/browser/layout/panes-layout.js.map +1 -0
- package/dist/browser/layout/stable-id.js +17 -0
- package/dist/browser/layout/stable-id.js.map +1 -0
- package/dist/browser/semantics.js +2 -0
- package/dist/browser/semantics.js.map +1 -0
- package/dist/browser/surfaces/Avatar.js +97 -0
- package/dist/browser/surfaces/Avatar.js.map +1 -0
- package/dist/browser/surfaces/DescriptionList.js +66 -0
- package/dist/browser/surfaces/DescriptionList.js.map +1 -0
- package/dist/browser/surfaces/LinkCard.js +40 -0
- package/dist/browser/surfaces/LinkCard.js.map +1 -0
- package/dist/browser/surfaces/NotFoundState.js +85 -0
- package/dist/browser/surfaces/NotFoundState.js.map +1 -0
- package/dist/browser/surfaces/NoticeCard.js +145 -0
- package/dist/browser/surfaces/NoticeCard.js.map +1 -0
- package/dist/browser/surfaces/Paper.js +33 -0
- package/dist/browser/surfaces/Paper.js.map +1 -0
- package/dist/browser/surfaces/Placeholder.js +90 -0
- package/dist/browser/surfaces/Placeholder.js.map +1 -0
- package/dist/browser/surfaces/ProgressBar.js +58 -0
- package/dist/browser/surfaces/ProgressBar.js.map +1 -0
- package/dist/browser/surfaces/StatCell.js +172 -0
- package/dist/browser/surfaces/StatCell.js.map +1 -0
- package/dist/browser/surfaces/StatGrid.js +80 -0
- package/dist/browser/surfaces/StatGrid.js.map +1 -0
- package/dist/browser/surfaces/StatusBadge.js +70 -0
- package/dist/browser/surfaces/StatusBadge.js.map +1 -0
- package/dist/browser/surfaces/Tag.js +94 -0
- package/dist/browser/surfaces/Tag.js.map +1 -0
- package/dist/browser/surfaces/index.js +13 -0
- package/dist/browser/surfaces/index.js.map +1 -0
- package/dist/browser/widgets/Widget.js +89 -0
- package/dist/browser/widgets/Widget.js.map +1 -0
- package/dist/browser/widgets/WidgetHero.js +47 -0
- package/dist/browser/widgets/WidgetHero.js.map +1 -0
- package/dist/browser/widgets/WidgetList.js +125 -0
- package/dist/browser/widgets/WidgetList.js.map +1 -0
- package/dist/browser/widgets/WidgetPills.js +78 -0
- package/dist/browser/widgets/WidgetPills.js.map +1 -0
- package/dist/browser/widgets/WidgetStat.js +114 -0
- package/dist/browser/widgets/WidgetStat.js.map +1 -0
- package/dist/browser/widgets/WidgetStatus.js +54 -0
- package/dist/browser/widgets/WidgetStatus.js.map +1 -0
- package/dist/browser/widgets/index.js +7 -0
- package/dist/browser/widgets/index.js.map +1 -0
- package/dist/global.css +3 -0
- package/dist/licenses/ibm-plex-mono.txt +93 -0
- package/dist/licenses/ibm-plex-sans.txt +93 -0
- package/dist/licenses/tabler-icons.txt +21 -0
- package/dist/plex.css +1 -0
- package/dist/ssr/actions/Button.js +203 -0
- package/dist/ssr/actions/Button.js.map +1 -0
- package/dist/ssr/actions/ContextMenu.js +128 -0
- package/dist/ssr/actions/ContextMenu.js.map +1 -0
- package/dist/ssr/actions/CopyButton.js +79 -0
- package/dist/ssr/actions/CopyButton.js.map +1 -0
- package/dist/ssr/actions/Disclosure.js +26 -0
- package/dist/ssr/actions/Disclosure.js.map +1 -0
- package/dist/ssr/actions/Dropdown.js +443 -0
- package/dist/ssr/actions/Dropdown.js.map +1 -0
- package/dist/ssr/actions/FilterChip.js +132 -0
- package/dist/ssr/actions/FilterChip.js.map +1 -0
- package/dist/ssr/actions/RemoveButton.js +45 -0
- package/dist/ssr/actions/RemoveButton.js.map +1 -0
- package/dist/ssr/actions/SegmentedControl.js +57 -0
- package/dist/ssr/actions/SegmentedControl.js.map +1 -0
- package/dist/ssr/actions/SplitButton.js +74 -0
- package/dist/ssr/actions/SplitButton.js.map +1 -0
- package/dist/ssr/actions/SpotlightSearch.js +38 -0
- package/dist/ssr/actions/SpotlightSearch.js.map +1 -0
- package/dist/ssr/actions/Tabs.js +91 -0
- package/dist/ssr/actions/Tabs.js.map +1 -0
- package/dist/ssr/actions/Toolbar.js +33 -0
- package/dist/ssr/actions/Toolbar.js.map +1 -0
- package/dist/ssr/actions/index.js +13 -0
- package/dist/ssr/actions/index.js.map +1 -0
- package/dist/ssr/chat/ChatComposer.js +392 -0
- package/dist/ssr/chat/ChatComposer.js.map +1 -0
- package/dist/ssr/chat/ChatPrimitives.js +377 -0
- package/dist/ssr/chat/ChatPrimitives.js.map +1 -0
- package/dist/ssr/chat/ChatRoot.js +10 -0
- package/dist/ssr/chat/ChatRoot.js.map +1 -0
- package/dist/ssr/chat/ChatTimeline.js +301 -0
- package/dist/ssr/chat/ChatTimeline.js.map +1 -0
- package/dist/ssr/chat/chat-behavior.js +53 -0
- package/dist/ssr/chat/chat-behavior.js.map +1 -0
- package/dist/ssr/chat/index.js +17 -0
- package/dist/ssr/chat/index.js.map +1 -0
- package/dist/ssr/chat/types.js +2 -0
- package/dist/ssr/chat/types.js.map +1 -0
- package/dist/ssr/content/Calendar.js +1542 -0
- package/dist/ssr/content/Calendar.js.map +1 -0
- package/dist/ssr/content/Chart.js +552 -0
- package/dist/ssr/content/Chart.js.map +1 -0
- package/dist/ssr/content/CodeDisplay.js +55 -0
- package/dist/ssr/content/CodeDisplay.js.map +1 -0
- package/dist/ssr/content/DataTable.js +470 -0
- package/dist/ssr/content/DataTable.js.map +1 -0
- package/dist/ssr/content/Docs.js +108 -0
- package/dist/ssr/content/Docs.js.map +1 -0
- package/dist/ssr/content/FileBrowser.js +422 -0
- package/dist/ssr/content/FileBrowser.js.map +1 -0
- package/dist/ssr/content/FileTree.js +299 -0
- package/dist/ssr/content/FileTree.js.map +1 -0
- package/dist/ssr/content/FileView.js +612 -0
- package/dist/ssr/content/FileView.js.map +1 -0
- package/dist/ssr/content/Lightbox.js +164 -0
- package/dist/ssr/content/Lightbox.js.map +1 -0
- package/dist/ssr/content/LogEntriesTable.js +106 -0
- package/dist/ssr/content/LogEntriesTable.js.map +1 -0
- package/dist/ssr/content/MarkdownView.js +119 -0
- package/dist/ssr/content/MarkdownView.js.map +1 -0
- package/dist/ssr/content/Pagination.js +141 -0
- package/dist/ssr/content/Pagination.js.map +1 -0
- package/dist/ssr/content/PdfPreview.js +126 -0
- package/dist/ssr/content/PdfPreview.js.map +1 -0
- package/dist/ssr/content/RangePicker.js +35 -0
- package/dist/ssr/content/RangePicker.js.map +1 -0
- package/dist/ssr/content/StructuredDataPreview.js +127 -0
- package/dist/ssr/content/StructuredDataPreview.js.map +1 -0
- package/dist/ssr/content/calendar-event-layout.js +92 -0
- package/dist/ssr/content/calendar-event-layout.js.map +1 -0
- package/dist/ssr/content/calendar-pointer.js +114 -0
- package/dist/ssr/content/calendar-pointer.js.map +1 -0
- package/dist/ssr/content/chart-map-viewport.js +33 -0
- package/dist/ssr/content/chart-map-viewport.js.map +1 -0
- package/dist/ssr/content/chart-state-timeline.js +124 -0
- package/dist/ssr/content/chart-state-timeline.js.map +1 -0
- package/dist/ssr/content/code-highlight.js +144 -0
- package/dist/ssr/content/code-highlight.js.map +1 -0
- package/dist/ssr/content/file-tree.js +93 -0
- package/dist/ssr/content/file-tree.js.map +1 -0
- package/dist/ssr/content/file-view-preview.js +112 -0
- package/dist/ssr/content/file-view-preview.js.map +1 -0
- package/dist/ssr/content/index.js +16 -0
- package/dist/ssr/content/index.js.map +1 -0
- package/dist/ssr/feedback/InlineGuidance.js +26 -0
- package/dist/ssr/feedback/InlineGuidance.js.map +1 -0
- package/dist/ssr/feedback/Tooltip.js +156 -0
- package/dist/ssr/feedback/Tooltip.js.map +1 -0
- package/dist/ssr/feedback/dialog-core.js +207 -0
- package/dist/ssr/feedback/dialog-core.js.map +1 -0
- package/dist/ssr/feedback/index.js +6 -0
- package/dist/ssr/feedback/index.js.map +1 -0
- package/dist/ssr/feedback/prompts.js +703 -0
- package/dist/ssr/feedback/prompts.js.map +1 -0
- package/dist/ssr/feedback/toast.js +271 -0
- package/dist/ssr/feedback/toast.js.map +1 -0
- package/dist/ssr/feedback/tooltip-position.js +25 -0
- package/dist/ssr/feedback/tooltip-position.js.map +1 -0
- package/dist/ssr/index.js +11 -0
- package/dist/ssr/index.js.map +1 -0
- package/dist/ssr/inputs/AutocompleteEditor.js +463 -0
- package/dist/ssr/inputs/AutocompleteEditor.js.map +1 -0
- package/dist/ssr/inputs/AutocompleteSelect.js +420 -0
- package/dist/ssr/inputs/AutocompleteSelect.js.map +1 -0
- package/dist/ssr/inputs/Checkbox.js +75 -0
- package/dist/ssr/inputs/Checkbox.js.map +1 -0
- package/dist/ssr/inputs/CheckboxCard.js +69 -0
- package/dist/ssr/inputs/CheckboxCard.js.map +1 -0
- package/dist/ssr/inputs/ChoiceGroups.js +101 -0
- package/dist/ssr/inputs/ChoiceGroups.js.map +1 -0
- package/dist/ssr/inputs/ChoiceInputs.js +250 -0
- package/dist/ssr/inputs/ChoiceInputs.js.map +1 -0
- package/dist/ssr/inputs/Combobox.js +177 -0
- package/dist/ssr/inputs/Combobox.js.map +1 -0
- package/dist/ssr/inputs/DatePicker.js +629 -0
- package/dist/ssr/inputs/DatePicker.js.map +1 -0
- package/dist/ssr/inputs/FileInputs.js +543 -0
- package/dist/ssr/inputs/FileInputs.js.map +1 -0
- package/dist/ssr/inputs/MultiSelectInput.js +347 -0
- package/dist/ssr/inputs/MultiSelectInput.js.map +1 -0
- package/dist/ssr/inputs/NumberInput.js +177 -0
- package/dist/ssr/inputs/NumberInput.js.map +1 -0
- package/dist/ssr/inputs/Select.js +308 -0
- package/dist/ssr/inputs/Select.js.map +1 -0
- package/dist/ssr/inputs/SelectChip.js +129 -0
- package/dist/ssr/inputs/SelectChip.js.map +1 -0
- package/dist/ssr/inputs/SpecialInputs.js +116 -0
- package/dist/ssr/inputs/SpecialInputs.js.map +1 -0
- package/dist/ssr/inputs/Switch.js +62 -0
- package/dist/ssr/inputs/Switch.js.map +1 -0
- package/dist/ssr/inputs/TagEditor.js +280 -0
- package/dist/ssr/inputs/TagEditor.js.map +1 -0
- package/dist/ssr/inputs/TagsInput.js +122 -0
- package/dist/ssr/inputs/TagsInput.js.map +1 -0
- package/dist/ssr/inputs/TemplateEditor.js +164 -0
- package/dist/ssr/inputs/TemplateEditor.js.map +1 -0
- package/dist/ssr/inputs/TextInput.js +211 -0
- package/dist/ssr/inputs/TextInput.js.map +1 -0
- package/dist/ssr/inputs/choice.js +188 -0
- package/dist/ssr/inputs/choice.js.map +1 -0
- package/dist/ssr/inputs/completion/behaviors.js +108 -0
- package/dist/ssr/inputs/completion/behaviors.js.map +1 -0
- package/dist/ssr/inputs/completion/engine.js +103 -0
- package/dist/ssr/inputs/completion/engine.js.map +1 -0
- package/dist/ssr/inputs/completion/index.js +4 -0
- package/dist/ssr/inputs/completion/index.js.map +1 -0
- package/dist/ssr/inputs/completion/overlay.js +25 -0
- package/dist/ssr/inputs/completion/overlay.js.map +1 -0
- package/dist/ssr/inputs/date-picker.js +123 -0
- package/dist/ssr/inputs/date-picker.js.map +1 -0
- package/dist/ssr/inputs/editor-dom.js +26 -0
- package/dist/ssr/inputs/editor-dom.js.map +1 -0
- package/dist/ssr/inputs/field-contract.js +9 -0
- package/dist/ssr/inputs/field-contract.js.map +1 -0
- package/dist/ssr/inputs/icon-options.js +46 -0
- package/dist/ssr/inputs/icon-options.js.map +1 -0
- package/dist/ssr/inputs/image-crop.js +145 -0
- package/dist/ssr/inputs/image-crop.js.map +1 -0
- package/dist/ssr/inputs/index.js +23 -0
- package/dist/ssr/inputs/index.js.map +1 -0
- package/dist/ssr/inputs/markdown/MarkdownEditor.js +516 -0
- package/dist/ssr/inputs/markdown/MarkdownEditor.js.map +1 -0
- package/dist/ssr/inputs/markdown/Toolbar.js +115 -0
- package/dist/ssr/inputs/markdown/Toolbar.js.map +1 -0
- package/dist/ssr/inputs/markdown/actions.js +140 -0
- package/dist/ssr/inputs/markdown/actions.js.map +1 -0
- package/dist/ssr/inputs/markdown/active-formats.js +36 -0
- package/dist/ssr/inputs/markdown/active-formats.js.map +1 -0
- package/dist/ssr/inputs/markdown/behaviors.js +63 -0
- package/dist/ssr/inputs/markdown/behaviors.js.map +1 -0
- package/dist/ssr/inputs/markdown/code-zone.js +8 -0
- package/dist/ssr/inputs/markdown/code-zone.js.map +1 -0
- package/dist/ssr/internal/color.js +18 -0
- package/dist/ssr/internal/color.js.map +1 -0
- package/dist/ssr/internal/field.js +90 -0
- package/dist/ssr/internal/field.js.map +1 -0
- package/dist/ssr/internal/portal.js +17 -0
- package/dist/ssr/internal/portal.js.map +1 -0
- package/dist/ssr/intl/Format.js +192 -0
- package/dist/ssr/intl/Format.js.map +1 -0
- package/dist/ssr/intl/index.js +3 -0
- package/dist/ssr/intl/index.js.map +1 -0
- package/dist/ssr/intl/locale.js +63 -0
- package/dist/ssr/intl/locale.js.map +1 -0
- package/dist/ssr/intl/messages.js +753 -0
- package/dist/ssr/intl/messages.js.map +1 -0
- package/dist/ssr/layout/AppOverview.js +85 -0
- package/dist/ssr/layout/AppOverview.js.map +1 -0
- package/dist/ssr/layout/AppWorkspace.js +976 -0
- package/dist/ssr/layout/AppWorkspace.js.map +1 -0
- package/dist/ssr/layout/DataPanel.js +101 -0
- package/dist/ssr/layout/DataPanel.js.map +1 -0
- package/dist/ssr/layout/DetailPanel.js +284 -0
- package/dist/ssr/layout/DetailPanel.js.map +1 -0
- package/dist/ssr/layout/Discussion.js +319 -0
- package/dist/ssr/layout/Discussion.js.map +1 -0
- package/dist/ssr/layout/FloatingWindow.js +259 -0
- package/dist/ssr/layout/FloatingWindow.js.map +1 -0
- package/dist/ssr/layout/PanelDialog.js +136 -0
- package/dist/ssr/layout/PanelDialog.js.map +1 -0
- package/dist/ssr/layout/PanelHeader.js +45 -0
- package/dist/ssr/layout/PanelHeader.js.map +1 -0
- package/dist/ssr/layout/Panes.js +678 -0
- package/dist/ssr/layout/Panes.js.map +1 -0
- package/dist/ssr/layout/ScrollArea.js +18 -0
- package/dist/ssr/layout/ScrollArea.js.map +1 -0
- package/dist/ssr/layout/Settings.js +219 -0
- package/dist/ssr/layout/Settings.js.map +1 -0
- package/dist/ssr/layout/SettingsCollection.js +150 -0
- package/dist/ssr/layout/SettingsCollection.js.map +1 -0
- package/dist/ssr/layout/SettingsModal.js +156 -0
- package/dist/ssr/layout/SettingsModal.js.map +1 -0
- package/dist/ssr/layout/app-workspace-controller.js +419 -0
- package/dist/ssr/layout/app-workspace-controller.js.map +1 -0
- package/dist/ssr/layout/app-workspace-state.js +125 -0
- package/dist/ssr/layout/app-workspace-state.js.map +1 -0
- package/dist/ssr/layout/floating-window-geometry.js +15 -0
- package/dist/ssr/layout/floating-window-geometry.js.map +1 -0
- package/dist/ssr/layout/index.js +17 -0
- package/dist/ssr/layout/index.js.map +1 -0
- package/dist/ssr/layout/panes-layout.js +436 -0
- package/dist/ssr/layout/panes-layout.js.map +1 -0
- package/dist/ssr/layout/stable-id.js +17 -0
- package/dist/ssr/layout/stable-id.js.map +1 -0
- package/dist/ssr/semantics.js +2 -0
- package/dist/ssr/semantics.js.map +1 -0
- package/dist/ssr/surfaces/Avatar.js +43 -0
- package/dist/ssr/surfaces/Avatar.js.map +1 -0
- package/dist/ssr/surfaces/DescriptionList.js +25 -0
- package/dist/ssr/surfaces/DescriptionList.js.map +1 -0
- package/dist/ssr/surfaces/LinkCard.js +25 -0
- package/dist/ssr/surfaces/LinkCard.js.map +1 -0
- package/dist/ssr/surfaces/NotFoundState.js +38 -0
- package/dist/ssr/surfaces/NotFoundState.js.map +1 -0
- package/dist/ssr/surfaces/NoticeCard.js +83 -0
- package/dist/ssr/surfaces/NoticeCard.js.map +1 -0
- package/dist/ssr/surfaces/Paper.js +32 -0
- package/dist/ssr/surfaces/Paper.js.map +1 -0
- package/dist/ssr/surfaces/Placeholder.js +76 -0
- package/dist/ssr/surfaces/Placeholder.js.map +1 -0
- package/dist/ssr/surfaces/ProgressBar.js +13 -0
- package/dist/ssr/surfaces/ProgressBar.js.map +1 -0
- package/dist/ssr/surfaces/StatCell.js +80 -0
- package/dist/ssr/surfaces/StatCell.js.map +1 -0
- package/dist/ssr/surfaces/StatGrid.js +62 -0
- package/dist/ssr/surfaces/StatGrid.js.map +1 -0
- package/dist/ssr/surfaces/StatusBadge.js +38 -0
- package/dist/ssr/surfaces/StatusBadge.js.map +1 -0
- package/dist/ssr/surfaces/Tag.js +32 -0
- package/dist/ssr/surfaces/Tag.js.map +1 -0
- package/dist/ssr/surfaces/index.js +13 -0
- package/dist/ssr/surfaces/index.js.map +1 -0
- package/dist/ssr/widgets/Widget.js +54 -0
- package/dist/ssr/widgets/Widget.js.map +1 -0
- package/dist/ssr/widgets/WidgetHero.js +23 -0
- package/dist/ssr/widgets/WidgetHero.js.map +1 -0
- package/dist/ssr/widgets/WidgetList.js +73 -0
- package/dist/ssr/widgets/WidgetList.js.map +1 -0
- package/dist/ssr/widgets/WidgetPills.js +40 -0
- package/dist/ssr/widgets/WidgetPills.js.map +1 -0
- package/dist/ssr/widgets/WidgetStat.js +45 -0
- package/dist/ssr/widgets/WidgetStat.js.map +1 -0
- package/dist/ssr/widgets/WidgetStatus.js +23 -0
- package/dist/ssr/widgets/WidgetStatus.js.map +1 -0
- package/dist/ssr/widgets/index.js +7 -0
- package/dist/ssr/widgets/index.js.map +1 -0
- package/dist/styles.css +1 -0
- package/dist/tabler-icons-q30jt7jk.woff2 +0 -0
- package/dist/tabler.css +4 -0
- package/package.json +77 -0
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import { template as _$template } from "solid-js/web";
|
|
2
|
+
import { setProperty as _$setProperty } from "solid-js/web";
|
|
3
|
+
import { setAttribute as _$setAttribute } from "solid-js/web";
|
|
4
|
+
import { className as _$className } from "solid-js/web";
|
|
5
|
+
import { effect as _$effect } from "solid-js/web";
|
|
6
|
+
import { mergeProps as _$mergeProps } from "solid-js/web";
|
|
7
|
+
import { getNextElement as _$getNextElement } from "solid-js/web";
|
|
8
|
+
import { insert as _$insert } from "solid-js/web";
|
|
9
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
10
|
+
import { memo as _$memo } from "solid-js/web";
|
|
11
|
+
var _tmpl$ = /*#__PURE__*/_$template(`<span>`),
|
|
12
|
+
_tmpl$2 = /*#__PURE__*/_$template(`<i class="ti ti-chevron-down"aria-hidden=true>`),
|
|
13
|
+
_tmpl$3 = /*#__PURE__*/_$template(`<i aria-hidden=true>`),
|
|
14
|
+
_tmpl$4 = /*#__PURE__*/_$template(`<img alt>`),
|
|
15
|
+
_tmpl$5 = /*#__PURE__*/_$template(`<input type=hidden>`);
|
|
16
|
+
import { createMemo, Show } from "solid-js";
|
|
17
|
+
import { Dropdown } from "../actions/Dropdown";
|
|
18
|
+
import { createFieldMeta, Field, fieldControlAria } from "../internal/field";
|
|
19
|
+
import { useUiMessages } from "../intl/messages";
|
|
20
|
+
import { commitFieldValue, resolveMaybeAccessor } from "./field-contract";
|
|
21
|
+
export function SelectChip(props) {
|
|
22
|
+
const messages = useUiMessages();
|
|
23
|
+
const meta = createFieldMeta(props.id);
|
|
24
|
+
const value = () => resolveMaybeAccessor(props.value);
|
|
25
|
+
const selected = () => props.options.find(option => option.value === value());
|
|
26
|
+
const triggerLabel = () => props["aria-label"] ?? (typeof props.label === "string" ? props.label : messages().chooseOption);
|
|
27
|
+
const items = createMemo(() => props.options.map(option => ({
|
|
28
|
+
action: () => commitFieldValue(props, option.value),
|
|
29
|
+
checked: () => option.value === value(),
|
|
30
|
+
choice: "radio",
|
|
31
|
+
class: "k2b-select-chip__option",
|
|
32
|
+
description: option.description,
|
|
33
|
+
disabled: option.disabled,
|
|
34
|
+
icon: option.icon,
|
|
35
|
+
image: option.image,
|
|
36
|
+
label: option.label
|
|
37
|
+
})));
|
|
38
|
+
return _$createComponent(Field, {
|
|
39
|
+
get ["class"]() {
|
|
40
|
+
return props.class;
|
|
41
|
+
},
|
|
42
|
+
get label() {
|
|
43
|
+
return props.label;
|
|
44
|
+
},
|
|
45
|
+
get description() {
|
|
46
|
+
return props.description;
|
|
47
|
+
},
|
|
48
|
+
get error() {
|
|
49
|
+
return props.error;
|
|
50
|
+
},
|
|
51
|
+
meta: meta,
|
|
52
|
+
get required() {
|
|
53
|
+
return props.required;
|
|
54
|
+
},
|
|
55
|
+
get disabled() {
|
|
56
|
+
return props.disabled;
|
|
57
|
+
},
|
|
58
|
+
get children() {
|
|
59
|
+
return [_$createComponent(Dropdown.Root, {
|
|
60
|
+
get position() {
|
|
61
|
+
return props.position ?? "bottom-right";
|
|
62
|
+
},
|
|
63
|
+
get width() {
|
|
64
|
+
return props.menuWidth ?? "10rem";
|
|
65
|
+
},
|
|
66
|
+
get label() {
|
|
67
|
+
return triggerLabel();
|
|
68
|
+
},
|
|
69
|
+
get items() {
|
|
70
|
+
return items();
|
|
71
|
+
},
|
|
72
|
+
get children() {
|
|
73
|
+
return _$createComponent(Dropdown.Trigger, _$mergeProps({
|
|
74
|
+
get appearance() {
|
|
75
|
+
return props.iconOnly ? "button" : "plain";
|
|
76
|
+
},
|
|
77
|
+
get id() {
|
|
78
|
+
return meta.controlId;
|
|
79
|
+
},
|
|
80
|
+
get ["class"]() {
|
|
81
|
+
return props.iconOnly ? undefined : "k2b-select-chip";
|
|
82
|
+
},
|
|
83
|
+
get disabled() {
|
|
84
|
+
return props.disabled;
|
|
85
|
+
},
|
|
86
|
+
get iconOnly() {
|
|
87
|
+
return props.iconOnly;
|
|
88
|
+
},
|
|
89
|
+
get label() {
|
|
90
|
+
return triggerLabel();
|
|
91
|
+
},
|
|
92
|
+
get size() {
|
|
93
|
+
return _$memo(() => !!props.iconOnly)() ? props.size : undefined;
|
|
94
|
+
},
|
|
95
|
+
get title() {
|
|
96
|
+
return _$memo(() => !!props.iconOnly)() ? triggerLabel() : undefined;
|
|
97
|
+
}
|
|
98
|
+
}, () => fieldControlAria(meta, props), {
|
|
99
|
+
get children() {
|
|
100
|
+
return [_$createComponent(Show, {
|
|
101
|
+
get when() {
|
|
102
|
+
return selected()?.image;
|
|
103
|
+
},
|
|
104
|
+
get fallback() {
|
|
105
|
+
return _$createComponent(Show, {
|
|
106
|
+
get when() {
|
|
107
|
+
return selected()?.icon ?? props.icon;
|
|
108
|
+
},
|
|
109
|
+
children: icon => (() => {
|
|
110
|
+
var _el$3 = _$getNextElement(_tmpl$3);
|
|
111
|
+
_$effect(() => _$className(_el$3, icon()));
|
|
112
|
+
return _el$3;
|
|
113
|
+
})()
|
|
114
|
+
});
|
|
115
|
+
},
|
|
116
|
+
children: image => (() => {
|
|
117
|
+
var _el$4 = _$getNextElement(_tmpl$4);
|
|
118
|
+
_$effect(() => _$setAttribute(_el$4, "src", image()));
|
|
119
|
+
return _el$4;
|
|
120
|
+
})()
|
|
121
|
+
}), _$createComponent(Show, {
|
|
122
|
+
get when() {
|
|
123
|
+
return !props.iconOnly;
|
|
124
|
+
},
|
|
125
|
+
get children() {
|
|
126
|
+
return [(() => {
|
|
127
|
+
var _el$ = _$getNextElement(_tmpl$);
|
|
128
|
+
_$insert(_el$, () => selected()?.label ?? props.placeholder ?? "");
|
|
129
|
+
return _el$;
|
|
130
|
+
})(), _$getNextElement(_tmpl$2)];
|
|
131
|
+
}
|
|
132
|
+
})];
|
|
133
|
+
}
|
|
134
|
+
}));
|
|
135
|
+
}
|
|
136
|
+
}), _$createComponent(Show, {
|
|
137
|
+
get when() {
|
|
138
|
+
return props.name;
|
|
139
|
+
},
|
|
140
|
+
children: name => (() => {
|
|
141
|
+
var _el$5 = _$getNextElement(_tmpl$5);
|
|
142
|
+
_$effect(() => _$setAttribute(_el$5, "name", name()));
|
|
143
|
+
_$effect(() => _$setProperty(_el$5, "value", value()));
|
|
144
|
+
return _el$5;
|
|
145
|
+
})()
|
|
146
|
+
})];
|
|
147
|
+
}
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
export default SelectChip;
|
|
151
|
+
//# sourceMappingURL=SelectChip.js.map
|
|
@@ -0,0 +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","_$memo","title","when","fallback","_el$3","_$getNextElement","_tmpl$3","_$effect","_$className","_el$4","_tmpl$4","_$setAttribute","_el$","_tmpl$","_$insert","placeholder","_tmpl$2","name","_el$5","_tmpl$5","_$setProperty"],"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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","ignoreList":[]}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
2
|
+
import { memo as _$memo } from "solid-js/web";
|
|
3
|
+
import { fuzzy } from "@k2b/stdlib";
|
|
4
|
+
import { createMemo } from "solid-js";
|
|
5
|
+
import { useUiMessages } from "../intl/messages";
|
|
6
|
+
import { resolveMaybeAccessor } from "./field-contract";
|
|
7
|
+
import { DEFAULT_ICON_GROUPS, DEFAULT_ICON_OPTIONS } from "./icon-options";
|
|
8
|
+
import { Select } from "./Select";
|
|
9
|
+
export function IconInput(props) {
|
|
10
|
+
const messages = useUiMessages();
|
|
11
|
+
const options = () => props.options ?? DEFAULT_ICON_OPTIONS;
|
|
12
|
+
const groups = () => props.groups ?? (props.options === undefined ? DEFAULT_ICON_GROUPS : undefined);
|
|
13
|
+
const filterOptions = (source, query) => {
|
|
14
|
+
const normalized = query.trim().toLowerCase();
|
|
15
|
+
if (!normalized) {
|
|
16
|
+
return [...source].sort((left, right) => String(left.label).localeCompare(String(right.label), undefined, {
|
|
17
|
+
sensitivity: "base"
|
|
18
|
+
}));
|
|
19
|
+
}
|
|
20
|
+
return fuzzy.filter(normalized, source, {
|
|
21
|
+
// Cloud's key is `[label, ...keywords]`. Including `value` as well put
|
|
22
|
+
// the literal "ti ti-" in front of every entry, so short queries matched
|
|
23
|
+
// the whole catalogue and fuzzy scores were skewed. The bare glyph name
|
|
24
|
+
// is already the first keyword (see `icon()` in ./icon-options), so
|
|
25
|
+
// nothing is lost by dropping it.
|
|
26
|
+
key: option => {
|
|
27
|
+
const keywords = "keywords" in option && Array.isArray(option.keywords) ? option.keywords.join(" ") : "";
|
|
28
|
+
return `${String(option.label)} ${keywords}`.toLowerCase();
|
|
29
|
+
},
|
|
30
|
+
limit: props.searchLimit ?? 50
|
|
31
|
+
}).map(match => match.item);
|
|
32
|
+
};
|
|
33
|
+
const selectedOption = createMemo(() => options().find(option => option.value === resolveMaybeAccessor(props.value)));
|
|
34
|
+
return _$createComponent(Select, {
|
|
35
|
+
get id() {
|
|
36
|
+
return props.id;
|
|
37
|
+
},
|
|
38
|
+
get name() {
|
|
39
|
+
return props.name;
|
|
40
|
+
},
|
|
41
|
+
get ["class"]() {
|
|
42
|
+
return props.class;
|
|
43
|
+
},
|
|
44
|
+
get label() {
|
|
45
|
+
return props.label;
|
|
46
|
+
},
|
|
47
|
+
get description() {
|
|
48
|
+
return props.description;
|
|
49
|
+
},
|
|
50
|
+
get error() {
|
|
51
|
+
return props.error;
|
|
52
|
+
},
|
|
53
|
+
get ["aria-label"]() {
|
|
54
|
+
return props["aria-label"];
|
|
55
|
+
},
|
|
56
|
+
get ["aria-describedby"]() {
|
|
57
|
+
return props["aria-describedby"];
|
|
58
|
+
},
|
|
59
|
+
get placeholder() {
|
|
60
|
+
return props.placeholder ?? messages().pickIcon;
|
|
61
|
+
},
|
|
62
|
+
get disabled() {
|
|
63
|
+
return props.disabled;
|
|
64
|
+
},
|
|
65
|
+
get required() {
|
|
66
|
+
return props.required;
|
|
67
|
+
},
|
|
68
|
+
get clearable() {
|
|
69
|
+
return props.clearable ?? true;
|
|
70
|
+
},
|
|
71
|
+
get value() {
|
|
72
|
+
return resolveMaybeAccessor(props.value);
|
|
73
|
+
},
|
|
74
|
+
get selectedOption() {
|
|
75
|
+
return selectedOption();
|
|
76
|
+
},
|
|
77
|
+
get onValueChange() {
|
|
78
|
+
return props.onValueChange;
|
|
79
|
+
},
|
|
80
|
+
get onValueCommit() {
|
|
81
|
+
return props.onValueCommit;
|
|
82
|
+
},
|
|
83
|
+
get options() {
|
|
84
|
+
return [...options()];
|
|
85
|
+
},
|
|
86
|
+
get groups() {
|
|
87
|
+
return groups();
|
|
88
|
+
},
|
|
89
|
+
get defaultGroup() {
|
|
90
|
+
return props.defaultGroup ?? (props.options === undefined ? "recommended" : undefined);
|
|
91
|
+
},
|
|
92
|
+
get groupsAriaLabel() {
|
|
93
|
+
return props.groupsAriaLabel ?? messages().filterIcons;
|
|
94
|
+
},
|
|
95
|
+
get allGroupLabel() {
|
|
96
|
+
return props.allGroupLabel;
|
|
97
|
+
},
|
|
98
|
+
get viewToggle() {
|
|
99
|
+
return props.viewToggle ?? true;
|
|
100
|
+
},
|
|
101
|
+
get defaultView() {
|
|
102
|
+
return props.defaultView ?? "grid";
|
|
103
|
+
},
|
|
104
|
+
get gridSize() {
|
|
105
|
+
return props.gridSize ?? "sm";
|
|
106
|
+
},
|
|
107
|
+
searchable: true,
|
|
108
|
+
filterOptions: filterOptions,
|
|
109
|
+
get searchPlaceholder() {
|
|
110
|
+
return messages().search;
|
|
111
|
+
},
|
|
112
|
+
get icon() {
|
|
113
|
+
return selectedOption()?.icon ?? "ti ti-icons";
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=SpecialInputs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["fuzzy","createMemo","useUiMessages","resolveMaybeAccessor","DEFAULT_ICON_GROUPS","DEFAULT_ICON_OPTIONS","Select","IconInput","props","messages","options","groups","undefined","filterOptions","source","query","normalized","trim","toLowerCase","sort","left","right","String","label","localeCompare","sensitivity","filter","key","option","keywords","Array","isArray","join","limit","searchLimit","map","match","item","selectedOption","find","value","_$createComponent","id","name","class","description","error","aria-label","aria-describedby","placeholder","pickIcon","disabled","required","clearable","onValueChange","onValueCommit","defaultGroup","groupsAriaLabel","filterIcons","allGroupLabel","viewToggle","defaultView","gridSize","searchable","searchPlaceholder","search","icon"],"sources":["inputs/SpecialInputs.tsx"],"sourcesContent":["import { fuzzy } from \"@k2b/stdlib\";\nimport { createMemo, type JSX } from \"solid-js\";\nimport { useUiMessages } from \"../intl/messages\";\nimport type { ValueFieldProps } from \"./field-contract\";\nimport { resolveMaybeAccessor } from \"./field-contract\";\nimport { DEFAULT_ICON_GROUPS, DEFAULT_ICON_OPTIONS } from \"./icon-options\";\nimport { Select, type SelectGridSize, type SelectGroup, type SelectOption, type SelectView } from \"./Select\";\n\nexport type IconOption = SelectOption & { keywords?: readonly string[] };\nexport type IconInputProps = ValueFieldProps<string | null> & {\n options?: readonly IconOption[];\n placeholder?: string;\n clearable?: boolean;\n searchLimit?: number;\n groups?: readonly SelectGroup[];\n defaultGroup?: string;\n groupsAriaLabel?: string;\n allGroupLabel?: string;\n viewToggle?: boolean;\n defaultView?: SelectView;\n gridSize?: SelectGridSize;\n name?: string;\n};\n\nexport function IconInput(props: IconInputProps): JSX.Element {\n const messages = useUiMessages();\n const options = () => props.options ?? DEFAULT_ICON_OPTIONS;\n const groups = () => props.groups ?? (props.options === undefined ? DEFAULT_ICON_GROUPS : undefined);\n const filterOptions = (source: readonly SelectOption[], query: string): readonly SelectOption[] => {\n const normalized = query.trim().toLowerCase();\n if (!normalized) {\n return [...source].sort((left, right) => String(left.label).localeCompare(String(right.label), undefined, { sensitivity: \"base\" }));\n }\n return fuzzy\n .filter(normalized, source, {\n // Cloud's key is `[label, ...keywords]`. Including `value` as well put\n // the literal \"ti ti-\" in front of every entry, so short queries matched\n // the whole catalogue and fuzzy scores were skewed. The bare glyph name\n // is already the first keyword (see `icon()` in ./icon-options), so\n // nothing is lost by dropping it.\n key: (option) => {\n const keywords = \"keywords\" in option && Array.isArray(option.keywords) ? option.keywords.join(\" \") : \"\";\n return `${String(option.label)} ${keywords}`.toLowerCase();\n },\n limit: props.searchLimit ?? 50,\n })\n .map((match) => match.item);\n };\n const selectedOption = createMemo(() => options().find((option) => option.value === resolveMaybeAccessor(props.value)));\n\n return (\n <Select\n id={props.id}\n name={props.name}\n class={props.class}\n label={props.label}\n description={props.description}\n error={props.error}\n aria-label={props[\"aria-label\"]}\n aria-describedby={props[\"aria-describedby\"]}\n placeholder={props.placeholder ?? messages().pickIcon}\n disabled={props.disabled}\n required={props.required}\n clearable={props.clearable ?? true}\n value={resolveMaybeAccessor(props.value)}\n selectedOption={selectedOption()}\n onValueChange={props.onValueChange}\n onValueCommit={props.onValueCommit}\n options={[...options()]}\n groups={groups()}\n defaultGroup={props.defaultGroup ?? (props.options === undefined ? \"recommended\" : undefined)}\n groupsAriaLabel={props.groupsAriaLabel ?? messages().filterIcons}\n allGroupLabel={props.allGroupLabel}\n viewToggle={props.viewToggle ?? true}\n defaultView={props.defaultView ?? \"grid\"}\n gridSize={props.gridSize ?? \"sm\"}\n searchable\n filterOptions={filterOptions}\n searchPlaceholder={messages().search}\n icon={selectedOption()?.icon ?? \"ti ti-icons\"}\n />\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
import { template as _$template } from "solid-js/web";
|
|
2
|
+
import { className as _$className } from "solid-js/web";
|
|
3
|
+
import { runHydrationEvents as _$runHydrationEvents } from "solid-js/web";
|
|
4
|
+
import { createComponent as _$createComponent } from "solid-js/web";
|
|
5
|
+
import { setAttribute as _$setAttribute } from "solid-js/web";
|
|
6
|
+
import { effect as _$effect } from "solid-js/web";
|
|
7
|
+
import { getNextElement as _$getNextElement } from "solid-js/web";
|
|
8
|
+
import { getNextMarker as _$getNextMarker } from "solid-js/web";
|
|
9
|
+
import { insert as _$insert } from "solid-js/web";
|
|
10
|
+
import { memo as _$memo } from "solid-js/web";
|
|
11
|
+
import { spread as _$spread } from "solid-js/web";
|
|
12
|
+
import { mergeProps as _$mergeProps } from "solid-js/web";
|
|
13
|
+
var _tmpl$ = /*#__PURE__*/_$template(`<span class=k2b-field__description>`),
|
|
14
|
+
_tmpl$2 = /*#__PURE__*/_$template(`<p class=k2b-field__error role=alert aria-live=polite>`),
|
|
15
|
+
_tmpl$3 = /*#__PURE__*/_$template(`<div><label class=k2b-switch><input type=checkbox role=switch><span class=k2b-switch__track aria-hidden=true><span class=k2b-switch__thumb></span></span><!$><!/></label><!$><!/><!$><!/>`),
|
|
16
|
+
_tmpl$4 = /*#__PURE__*/_$template(`<span class=k2b-field__required aria-hidden=true>*`),
|
|
17
|
+
_tmpl$5 = /*#__PURE__*/_$template(`<span class=k2b-switch__label><!$><!/><!$><!/>`);
|
|
18
|
+
import { Show, splitProps } from "solid-js";
|
|
19
|
+
import { createFieldMeta, fieldControlAria } from "../internal/field";
|
|
20
|
+
import { commitFieldValue, resolveMaybeAccessor } from "./field-contract";
|
|
21
|
+
export function Switch(props) {
|
|
22
|
+
const [local, rest] = splitProps(props, ["label", "onValueChange", "onValueCommit", "value"]);
|
|
23
|
+
const meta = createFieldMeta(props.id);
|
|
24
|
+
const checked = () => resolveMaybeAccessor(local.value) ?? false;
|
|
25
|
+
const error = () => resolveMaybeAccessor(props.error);
|
|
26
|
+
return (() => {
|
|
27
|
+
var _el$ = _$getNextElement(_tmpl$3),
|
|
28
|
+
_el$2 = _el$.firstChild,
|
|
29
|
+
_el$3 = _el$2.firstChild,
|
|
30
|
+
_el$4 = _el$3.nextSibling,
|
|
31
|
+
_el$5 = _el$4.nextSibling,
|
|
32
|
+
[_el$6, _co$] = _$getNextMarker(_el$5.nextSibling),
|
|
33
|
+
_el$9 = _el$2.nextSibling,
|
|
34
|
+
[_el$0, _co$2] = _$getNextMarker(_el$9.nextSibling),
|
|
35
|
+
_el$1 = _el$0.nextSibling,
|
|
36
|
+
[_el$10, _co$3] = _$getNextMarker(_el$1.nextSibling);
|
|
37
|
+
_$spread(_el$3, _$mergeProps({
|
|
38
|
+
get id() {
|
|
39
|
+
return meta.controlId;
|
|
40
|
+
},
|
|
41
|
+
get name() {
|
|
42
|
+
return props.name;
|
|
43
|
+
},
|
|
44
|
+
get checked() {
|
|
45
|
+
return checked();
|
|
46
|
+
},
|
|
47
|
+
get disabled() {
|
|
48
|
+
return rest.disabled;
|
|
49
|
+
},
|
|
50
|
+
get required() {
|
|
51
|
+
return rest.required;
|
|
52
|
+
}
|
|
53
|
+
}, () => fieldControlAria(meta, props), {
|
|
54
|
+
"onChange": event => commitFieldValue(local, event.currentTarget.checked)
|
|
55
|
+
}), false, false);
|
|
56
|
+
_$insert(_el$2, (() => {
|
|
57
|
+
var _c$ = _$memo(() => !!local.label);
|
|
58
|
+
return () => _c$() && (() => {
|
|
59
|
+
var _el$11 = _$getNextElement(_tmpl$5),
|
|
60
|
+
_el$13 = _el$11.firstChild,
|
|
61
|
+
[_el$14, _co$4] = _$getNextMarker(_el$13.nextSibling),
|
|
62
|
+
_el$15 = _el$14.nextSibling,
|
|
63
|
+
[_el$16, _co$5] = _$getNextMarker(_el$15.nextSibling);
|
|
64
|
+
_$insert(_el$11, () => local.label, _el$14, _co$4);
|
|
65
|
+
_$insert(_el$11, _$createComponent(Show, {
|
|
66
|
+
get when() {
|
|
67
|
+
return rest.required;
|
|
68
|
+
},
|
|
69
|
+
get children() {
|
|
70
|
+
return _$getNextElement(_tmpl$4);
|
|
71
|
+
}
|
|
72
|
+
}), _el$16, _co$5);
|
|
73
|
+
_$effect(() => _$setAttribute(_el$11, "id", meta.labelId));
|
|
74
|
+
return _el$11;
|
|
75
|
+
})();
|
|
76
|
+
})(), _el$6, _co$);
|
|
77
|
+
_$insert(_el$, _$createComponent(Show, {
|
|
78
|
+
get when() {
|
|
79
|
+
return props.description;
|
|
80
|
+
},
|
|
81
|
+
get children() {
|
|
82
|
+
var _el$7 = _$getNextElement(_tmpl$);
|
|
83
|
+
_$insert(_el$7, () => props.description);
|
|
84
|
+
_$effect(() => _$setAttribute(_el$7, "id", meta.descriptionId));
|
|
85
|
+
return _el$7;
|
|
86
|
+
}
|
|
87
|
+
}), _el$0, _co$2);
|
|
88
|
+
_$insert(_el$, _$createComponent(Show, {
|
|
89
|
+
get when() {
|
|
90
|
+
return error();
|
|
91
|
+
},
|
|
92
|
+
get children() {
|
|
93
|
+
var _el$8 = _$getNextElement(_tmpl$2);
|
|
94
|
+
_$insert(_el$8, error);
|
|
95
|
+
_$effect(() => _$setAttribute(_el$8, "id", meta.errorId));
|
|
96
|
+
return _el$8;
|
|
97
|
+
}
|
|
98
|
+
}), _el$10, _co$3);
|
|
99
|
+
_$effect(_p$ => {
|
|
100
|
+
var _v$ = `k2b-switch-field ${props.class ?? ""}`,
|
|
101
|
+
_v$2 = rest.disabled ? "true" : undefined,
|
|
102
|
+
_v$3 = error() ? "true" : undefined;
|
|
103
|
+
_v$ !== _p$.e && _$className(_el$, _p$.e = _v$);
|
|
104
|
+
_v$2 !== _p$.t && _$setAttribute(_el$, "data-disabled", _p$.t = _v$2);
|
|
105
|
+
_v$3 !== _p$.a && _$setAttribute(_el$, "data-invalid", _p$.a = _v$3);
|
|
106
|
+
return _p$;
|
|
107
|
+
}, {
|
|
108
|
+
e: undefined,
|
|
109
|
+
t: undefined,
|
|
110
|
+
a: undefined
|
|
111
|
+
});
|
|
112
|
+
_$runHydrationEvents();
|
|
113
|
+
return _el$;
|
|
114
|
+
})();
|
|
115
|
+
}
|
|
116
|
+
export default Switch;
|
|
117
|
+
//# sourceMappingURL=Switch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Show","splitProps","createFieldMeta","fieldControlAria","commitFieldValue","resolveMaybeAccessor","Switch","props","local","rest","meta","id","checked","value","error","_el$","_$getNextElement","_tmpl$3","_el$2","firstChild","_el$3","_el$4","nextSibling","_el$5","_el$6","_co$","_$getNextMarker","_el$9","_el$0","_co$2","_el$1","_el$10","_co$3","_$spread","_$mergeProps","controlId","name","disabled","required","event","currentTarget","_$insert","_c$","_$memo","label","_el$11","_tmpl$5","_el$13","_el$14","_co$4","_el$15","_el$16","_co$5","_$createComponent","when","children","_tmpl$4","_$effect","_$setAttribute","labelId","description","_el$7","_tmpl$","descriptionId","_el$8","_tmpl$2","errorId","_p$","_v$","class","_v$2","undefined","_v$3","e","_$className","t","a","_$runHydrationEvents"],"sources":["inputs/Switch.tsx"],"sourcesContent":["import { type JSX, Show, splitProps } from \"solid-js\";\nimport { createFieldMeta, fieldControlAria } from \"../internal/field\";\nimport type { ValueFieldProps } from \"./field-contract\";\nimport { commitFieldValue, resolveMaybeAccessor } from \"./field-contract\";\n\nexport type SwitchProps = ValueFieldProps<boolean> & {\n name?: string;\n};\n\nexport function Switch(props: SwitchProps): JSX.Element {\n const [local, rest] = splitProps(props, [\"label\", \"onValueChange\", \"onValueCommit\", \"value\"]);\n const meta = createFieldMeta(props.id);\n const checked = () => resolveMaybeAccessor(local.value) ?? false;\n const error = () => resolveMaybeAccessor(props.error);\n\n return (\n <div\n class={`k2b-switch-field ${props.class ?? \"\"}`}\n data-disabled={rest.disabled ? \"true\" : undefined}\n data-invalid={error() ? \"true\" : undefined}\n >\n <label class=\"k2b-switch\">\n <input\n id={meta.controlId}\n name={props.name}\n type=\"checkbox\"\n role=\"switch\"\n checked={checked()}\n disabled={rest.disabled}\n required={rest.required}\n {...fieldControlAria(meta, props)}\n onChange={(event) => commitFieldValue(local, event.currentTarget.checked)}\n />\n <span class=\"k2b-switch__track\" aria-hidden=\"true\">\n <span class=\"k2b-switch__thumb\" />\n </span>\n {local.label && (\n <span id={meta.labelId} class=\"k2b-switch__label\">\n {local.label}\n <Show when={rest.required}>\n <span class=\"k2b-field__required\" aria-hidden=\"true\">\n *\n </span>\n </Show>\n </span>\n )}\n </label>\n <Show when={props.description}>\n <span id={meta.descriptionId} class=\"k2b-field__description\">\n {props.description}\n </span>\n </Show>\n <Show when={error()}>\n <p id={meta.errorId} class=\"k2b-field__error\" role=\"alert\" aria-live=\"polite\">\n {error()}\n </p>\n </Show>\n </div>\n );\n}\n\nexport default Switch;\n"],"mappings":"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","ignoreList":[]}
|