@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 @@
|
|
|
1
|
+
{"version":3,"names":["Link","dates","calendar","createMemo","createSignal","For","mergeProps","onCleanup","onMount","Show","Button","SegmentedControl","useDateConfigLocale","useUiMessages","layoutCalendarIntervals","calendarDayIndexAtPoint","calendarMinuteAtPoint","startCalendarPointerSession","ownerDateConfig","owner","dateConfig","timeZone","firstDayOfWeek","weekStartsOn","dateOnlyPattern","parseDate","value","context","Date","test","parseCalendarDate","normalized","includes","replace","parsed","Number","isNaN","getTime","year","month","day","split","validDate","weekNumber","date","target","UTC","getFullYear","getMonth","getDate","getUTCDay","setUTCDate","getUTCDate","yearStart","getUTCFullYear","Math","ceil","zonedWeekNumber","formatDateKey","formatTime","formatDay","toLocaleDateString","locale","weekday","formatMonth","formatMonthYear","zonedYearMonth","zonedMonthDate","String","padStart","zonedDateTimeToInstant","disambiguation","startOfDay","endOfDay","isStartOfDay","addMinutes","minutes","zonedHour","getHours","getMinutes","instantToZonedInput","slice","zonedSlot","hour","zonedMinuteSlot","minuteOfDay","bounded","max","min","floor","minute","normalizeEvents","events","flatMap","event","startDate","start","parsedEnd","end","endDate","duration","rangeEnd","startKey","endKey","allDay","sourceStartDate","sourceEndDate","dayKey","lastDay","addDays","days","segmentStart","segmentEnd","push","eventHref","props","getEventHref","href","moveEventTo","setSeconds","moveEventToDay","localStart","eventTimeChanged","next","Boolean","previewSegments","preview","id","title","color","filter","some","timedEventLayouts","map","item","lane","lanes","groupId","groupStart","groupEnd","groupStartDate","groupEndDate","EventChip","selected","selectedEventId","style","colorHex","undefined","isInteractive","onEventActivate","durationHours","short","fill","showTime","compact","showLocation","location","showDescription","description","trim","timeLabel","renderedEvent","renderEvent","defaultContent","_el$","_$getNextElement","_tmpl$","_$insert","_$createComponent","when","children","_el$2","_tmpl$2","_el$3","_el$4","_tmpl$3","content","isActionable","onMovePointerDown","suppressClickUntil","onClick","performance","now","preventDefault","stopPropagation","eventActivation","onDoubleClick","onButtonKeyDown","key","onPointerDown","pointerType","_el$5","_tmpl$4","$$pointerdown","_$addEventListener","$$dblclick","$$click","_$effect","_p$","_v$","_v$2","_v$3","_v$4","_v$5","_v$6","_v$7","moving","_v$8","_v$9","display","_v$0","dataSpaceItemId","_v$1","_v$10","_v$11","e","_$setAttribute","t","a","o","i","n","s","h","r","d","l","_$style","u","c","_$runHydrationEvents","_el$6","_tmpl$5","$$keydown","_v$12","_v$13","_v$14","_v$15","_v$16","_v$17","_v$18","_v$19","_v$20","_el$7","_tmpl$6","_v$21","_v$22","_v$23","_v$24","_v$25","_v$26","_v$27","_v$28","_v$29","slotInteractionProps","slot","suppressed","nativeControl","isSlotChild","Element","control","closest","currentTarget","interactive","onSlotActivate","activate","role","tabIndex","slotActivation","onDblClick","onKeyDown","CalendarNavigationLink","preload","onPrefetch","navigateHref","anchor","defaultPrevented","button","metaKey","ctrlKey","shiftKey","altKey","hasAttribute","URL","origin","window","onNavigateHref","_el$8","_tmpl$7","_$spread","_$mergeProps","anchorProps","onNavigate","scroll","onPointerEnter","onFocus","_el$9","CalendarViewLinks","messages","refs","selectRelative","currentIndex","direction","options","length","click","index","_el$0","_tmpl$8","each","option","active","view","getViewHref","ref","element","class","label","calendarView","adjacentCalendarDate","addMonths","CalendarHeader","previous","Intl","DateTimeFormat","format","startOfWeek","goDate","onDateChange","goView","onViewChange","navButton","icon","getDateHref","_el$1","_tmpl$9","_$className","_el$10","_tmpl$0","_el$11","firstChild","_el$12","todayButton","today","_el$13","_tmpl$1","labels","type","variant","size","viewOptions","week","views","_el$14","_tmpl$11","_el$15","_el$17","_el$18","_co$","_$getNextMarker","nextSibling","_el$19","_el$20","_co$2","_el$16","_el$21","_el$22","_el$23","_co$3","_el$24","_el$25","_co$4","_el$26","_el$27","_co$5","_el$29","_el$30","_co$6","_$memo","fallback","onValueChange","ariaLabel","toolbarActions","navigationPending","_tmpl$10","MonthView","movePreview","setMovePreview","movingEventId","setMovingEventId","cancelInteraction","suppressSlotClickUntil","weeks","getMonthGrid","weekdays","todayKey","eventsByDay","grouped","Map","get","set","clearMove","dayAtPoint","clientX","clientY","document","elementFromPoint","dataset","calendarDayKey","startMove","pointerEvent","markDragged","onEventDrop","resolve","onActivate","onPreview","onCommit","onCancel","_el$31","_tmpl$13","_el$32","_el$34","_el$35","_co$7","_el$36","_el$37","_co$8","_el$38","_el$39","_co$9","withWeekNumbers","_el$33","_tmpl$12","weekShort","_el$40","_el$41","_tmpl$15","_el$43","_el$44","_co$0","_el$45","_el$46","_co$1","_el$42","_tmpl$14","dayBadge","dayBadges","sameMonth","isSameMonth","isToday","dayLabel","eventStack","previewForDay","candidates","visibleLimit","visibleEvents","hiddenCount","_el$47","_tmpl$18","_el$63","_el$64","_co$15","_el$49","_el$50","_el$51","_co$10","_el$52","_el$53","_co$11","_el$54","_el$56","_el$57","_co$12","_el$58","_el$59","_co$13","_el$60","_el$61","_co$14","_el$62","dayHref","openDate","_el$48","_tmpl$16","aria-label","createEventOn","_el$65","_tmpl$19","formatDayNumber","badge","_el$66","_tmpl$20","_el$67","_el$68","_co$16","_el$69","_el$70","_co$17","_el$71","_el$55","_tmpl$17","find","moveEvent","_el$72","_tmpl$21","_v$32","_v$33","_v$30","_v$31","_$setStyleProperty","TimeGridView","gridStartHour","visibleStartHour","gridEndHour","visibleEndHour","businessStartHour","startHour","businessEndHour","endHour","hours","Array","from","_","timePreview","setTimePreview","expandedOverflow","setExpandedOverflow","scrollContainer","timeGrid","timeGutter","defaultHourMarker","slotEnd","previewEvents","bucket","timed","clearInteraction","timeAtPoint","gridRect","getBoundingClientRect","gutterRect","dayIndex","right","top","height","beginInteraction","startTimedMove","pointerStart","offsetMinutes","round","pointer","startAllDayMove","startRange","current","endBase","timeRangeLayout","visibleStart","visibleEnd","total","eventLayout","isDayView","visibleLaneCount","overflowLayouts","layouts","groups","layout","existing","hiddenEvents","values","dayColumnMinWidth","laneStyle","layoutItem","laneWidth","left","width","visibleLanes","currentTimeLine","requestAnimationFrame","targetTop","scrollTo","scrollTop","behavior","_el$73","_tmpl$23","_el$74","_el$75","_el$76","_el$77","_co$18","_el$87","_el$88","_co$21","_el$82","_el$83","_el$84","_el$85","_el$86","_co$20","_el$89","_tmpl$24","_el$90","_tmpl$25","_el$91","_el$92","_co$22","_el$93","_el$94","_co$23","_el$95","hideAllDay","_el$78","_tmpl$22","_el$79","_el$80","_el$81","_co$19","previewAllDay","_el$96","_tmpl$26","_el$97","_el$98","_el$99","_co$24","_el$100","_el$101","_co$25","data-drop-preview","data-interactive","_el$102","_v$34","_v$35","allDayMaxHeightRem","_ref$","_$use","_ref$2","_ref$3","_el$103","_tmpl$27","_el$105","_el$106","_co$26","_el$104","_el$107","_tmpl$29","_el$109","_el$110","_co$27","_el$111","_el$112","_co$28","_el$113","_el$114","_co$29","_el$115","_el$116","_co$30","_el$117","_el$118","_co$31","_el$108","_tmpl$28","_$p","_el$119","_tmpl$30","data-outside-business","_el$120","_tmpl$32","_el$121","_el$129","_el$130","_co$34","_el$123","_el$125","_el$126","_co$32","_el$124","_el$127","_el$128","_co$33","_el$122","_tmpl$31","_v$41","_v$42","position","resizeStart","onEventResize","threshold","minimumEnd","_el$131","_tmpl$34","_el$132","_el$134","_el$135","_co$35","_el$136","_el$137","_co$36","_el$133","_tmpl$33","addEventListener","resizeEvent","_v$43","_v$44","_v$45","_v$46","_v$47","overflow","hiddenTitle","join","_el$138","_tmpl$35","_el$139","_el$140","_el$141","_el$142","_co$37","_v$48","_v$49","_v$50","_v$51","hiddenOverlappingEvents","count","_el$143","_tmpl$36","_el$144","_el$146","_el$147","_co$38","_el$145","_el$148","_el$149","_co$39","_el$150","_el$151","_co$40","_v$39","_v$40","_v$36","_v$37","_v$38","YearView","months","flat","outside","number","_el$152","_tmpl$37","_el$153","_tmpl$38","_el$154","_el$155","_el$156","_tmpl$39","_v$52","_v$53","_v$54","MobileMonthView","selectedDateKey","selectedDate","selectedEvents","_el$157","_tmpl$41","_el$163","_el$164","_co$42","_el$158","_el$159","_el$161","_el$162","_co$41","_el$165","_tmpl$42","noEvents","_el$160","_tmpl$40","CalendarBody","_el$166","_tmpl$43","Calendar","localizedConfig","safeDate","setNow","normalizedEvents","mergedLabels","getWeekDays","updateNow","interval","setInterval","clearInterval","removeEventListener","_el$167","_tmpl$44","_el$168","_el$169","_co$43","_el$170","_el$171","_co$44","_el$172","_el$173","_co$45","toolbarContent","_v$55","_v$56","_$delegateEvents"],"sources":["content/Calendar.tsx"],"sourcesContent":["import { Link, type LinkNavigateEvent } from \"@k2b/ssr/nav\";\nimport { dates as calendar, type DateContext } from \"@k2b/stdlib\";\nimport type { JSX, ParentProps } from \"solid-js\";\nimport { createMemo, createSignal, For, mergeProps, onCleanup, onMount, Show } from \"solid-js\";\nimport { Button } from \"../actions/Button\";\nimport SegmentedControl from \"../actions/SegmentedControl\";\nimport { useDateConfigLocale } from \"../intl/locale\";\nimport { useUiMessages } from \"../intl/messages\";\nimport { layoutCalendarIntervals } from \"./calendar-event-layout\";\nimport { calendarDayIndexAtPoint, calendarMinuteAtPoint, startCalendarPointerSession } from \"./calendar-pointer\";\n\nexport type CalendarView = \"day\" | \"week\" | \"month\" | \"year\" | \"mobile-month\";\n\nexport type CalendarEventColor = \"blue\" | \"emerald\" | \"amber\" | \"red\" | \"violet\" | \"cyan\" | \"zinc\";\n\nexport type CalendarEvent = {\n id: string;\n title: string;\n start: Date | string;\n end?: Date | string;\n allDay?: boolean;\n color?: CalendarEventColor;\n colorHex?: string;\n href?: string;\n dataSpaceItemId?: string;\n meta?: string;\n description?: string;\n display?: \"event\" | \"background\";\n location?: string;\n calendarName?: string;\n attendees?: CalendarAttendee[];\n resources?: CalendarResource[];\n recurrence?: CalendarRecurrence;\n};\n\nexport type CalendarAttendee = {\n name: string;\n status?: \"accepted\" | \"declined\" | \"tentative\" | \"needs-action\";\n};\n\nexport type CalendarResource = {\n name: string;\n kind?: \"room\" | \"equipment\" | \"link\" | \"other\";\n};\n\nexport type CalendarRecurrence = {\n rrule: string;\n exdate?: Array<Date | string>;\n recurrenceId?: Date | string;\n};\n\nexport type CalendarLabels = Partial<{\n today: string;\n day: string;\n week: string;\n month: string;\n year: string;\n allDay: string;\n noEvents: string;\n previous: string;\n next: string;\n}>;\n\nexport type CalendarEventRenderContext = {\n compact: boolean;\n fill: boolean;\n start: Date;\n end: Date;\n allDay: boolean;\n durationHours: number;\n timeLabel: string;\n};\n\nexport type CalendarProps = {\n date: Date | string;\n events: CalendarEvent[];\n view?: CalendarView;\n views?: CalendarView[];\n labels?: CalendarLabels;\n /** stdlib date context used for timezone-aware rendering and calendar math. */\n dateConfig?: DateContext;\n /** Convenience override for dateConfig.timeZone. */\n timeZone?: string;\n firstDayOfWeek?: 0 | 1;\n withWeekNumbers?: boolean;\n startHour?: number;\n endHour?: number;\n visibleStartHour?: number;\n visibleEndHour?: number;\n allDayMaxHeightRem?: number;\n hideAllDay?: boolean;\n selectedDate?: Date | string;\n selectedEventId?: string;\n dayBadges?: Record<string, CalendarDayBadge>;\n getViewHref?: (view: CalendarView) => string;\n getDateHref?: (date: Date, view: CalendarView) => string;\n getEventHref?: (event: CalendarEvent) => string | undefined;\n renderEvent?: (event: CalendarEvent, context: CalendarEventRenderContext) => JSX.Element;\n /** Progressively enhance canonical calendar links after the app has loaded their target state. */\n onNavigate?: (event: LinkNavigateEvent) => void | Promise<void>;\n /** Progressively enhance canonical links without a document view transition. */\n onNavigateHref?: (href: string) => void;\n /** Optionally preload the target behind a canonical calendar link. */\n onPrefetch?: (href: string) => void;\n navigationPending?: boolean;\n onViewChange?: (view: CalendarView) => void;\n onDateChange?: (date: Date, view: CalendarView) => void;\n /** One activation contract for pointer and keyboard input. */\n onEventActivate?: (event: CalendarEvent) => void;\n /** Pointer gesture used for activation. Keyboard activation is always immediate. */\n eventActivation?: \"single\" | \"double\";\n onEventDrop?: (event: CalendarEvent, next: CalendarEventTimeChange) => void;\n onEventResize?: (event: CalendarEvent, next: CalendarEventTimeChange) => void;\n onSlotActivate?: (slot: CalendarEventTimeChange) => void;\n /** Pointer gesture used for empty slots. Keyboard activation is always immediate. */\n slotActivation?: \"single\" | \"double\";\n toolbarActions?: JSX.Element;\n toolbarContent?: JSX.Element;\n class?: string;\n};\n\nexport type CalendarEventTimeChange = {\n start: Date;\n end: Date;\n allDay?: boolean;\n};\n\nexport type CalendarDayBadge = {\n icon?: string;\n label: string;\n};\n\ntype NormalizedEvent = CalendarEvent & {\n startDate: Date;\n endDate: Date;\n dayKey: string;\n sourceStartDate: Date;\n sourceEndDate: Date;\n};\n\ntype CalendarPreview = CalendarEventTimeChange & {\n id: string;\n title?: string;\n};\n\ntype TimedEventLayout = {\n event: NormalizedEvent;\n lane: number;\n lanes: number;\n groupId: number;\n groupStartDate: Date;\n groupEndDate: Date;\n};\n\ntype TimedOverflowLayout = {\n groupId: number;\n hiddenEvents: NormalizedEvent[];\n groupStartDate: Date;\n groupEndDate: Date;\n};\n\nconst ownerDateConfig = (owner: CalendarProps): DateContext => ({\n ...owner.dateConfig,\n timeZone: owner.timeZone ?? owner.dateConfig?.timeZone,\n firstDayOfWeek: owner.firstDayOfWeek ?? owner.dateConfig?.firstDayOfWeek ?? owner.dateConfig?.weekStartsOn ?? 1,\n});\n\nconst dateOnlyPattern = /^\\d{4}-\\d{2}-\\d{2}$/;\n\nconst parseDate = (value: Date | string, context?: DateContext): Date => {\n if (value instanceof Date) return new Date(value);\n if (dateOnlyPattern.test(value)) return calendar.parseCalendarDate(value, context);\n const normalized = value.includes(\"T\") ? value : value.replace(\" \", \"T\");\n const parsed = new Date(normalized);\n if (!Number.isNaN(parsed.getTime())) return parsed;\n const [year, month = \"1\", day = \"1\"] = value.split(\"-\");\n return new Date(Number(year), Number(month) - 1, Number(day), 12);\n};\n\nconst validDate = (value: Date): boolean => !Number.isNaN(value.getTime());\n\nconst weekNumber = (date: Date): number => {\n const target = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()));\n const day = target.getUTCDay() || 7;\n target.setUTCDate(target.getUTCDate() + 4 - day);\n const yearStart = new Date(Date.UTC(target.getUTCFullYear(), 0, 1));\n return Math.ceil(((target.getTime() - yearStart.getTime()) / 86400000 + 1) / 7);\n};\nconst zonedWeekNumber = (date: Date, context?: DateContext): number => {\n if (!context?.timeZone) return weekNumber(date);\n const [year = \"1970\", month = \"1\", day = \"1\"] = calendar.formatDateKey(date, context).split(\"-\");\n return weekNumber(new Date(Date.UTC(Number(year), Number(month) - 1, Number(day))));\n};\n\nconst formatTime = (date: Date, context?: DateContext): string => calendar.formatTime(date, context);\nconst formatDay = (date: Date, context?: DateContext): string =>\n date.toLocaleDateString(context?.locale ?? \"en\", { weekday: \"short\", day: \"numeric\", timeZone: context?.timeZone });\nconst formatMonth = (date: Date, context?: DateContext): string => calendar.formatMonthYear(date, context);\nconst zonedYearMonth = (date: Date, context?: DateContext): { year: number; month: number } => {\n const [year = \"1970\", month = \"1\"] = calendar.formatDateKey(date, context).split(\"-\");\n return { year: Number(year), month: Number(month) - 1 };\n};\nconst zonedMonthDate = (year: number, month: number, context?: DateContext): Date => {\n const value = `${year}-${String(month + 1).padStart(2, \"0\")}-01T12:00`;\n if (!context?.timeZone) return parseDate(value);\n return new Date(calendar.zonedDateTimeToInstant(value, context.timeZone, { disambiguation: \"compatible\" }));\n};\n\nconst startOfDay = (date: Date, context?: DateContext): Date => calendar.startOfDay(date, context);\nconst endOfDay = (date: Date, context?: DateContext): Date => calendar.endOfDay(date, context);\nconst isStartOfDay = (date: Date, context?: DateContext): boolean => date.getTime() === startOfDay(date, context).getTime();\nconst addMinutes = (date: Date, minutes: number): Date => new Date(date.getTime() + minutes * 60 * 1000);\nconst zonedHour = (date: Date, context?: DateContext): number => {\n if (!context?.timeZone) return date.getHours() + date.getMinutes() / 60;\n const value = calendar.instantToZonedInput(date, context.timeZone);\n return Number(value.slice(11, 13)) + Number(value.slice(14, 16)) / 60;\n};\nconst zonedSlot = (day: Date, hour: number, context?: DateContext): Date => {\n return zonedMinuteSlot(day, hour * 60, context);\n};\nconst zonedMinuteSlot = (day: Date, minuteOfDay: number, context?: DateContext): Date => {\n const bounded = Math.max(0, Math.min(23 * 60 + 59, minuteOfDay));\n const hour = Math.floor(bounded / 60);\n const minute = bounded % 60;\n const value = `${calendar.formatDateKey(day, context)}T${String(hour).padStart(2, \"0\")}:${String(minute).padStart(2, \"0\")}`;\n if (!context?.timeZone) return parseDate(value);\n return new Date(calendar.zonedDateTimeToInstant(value, context.timeZone, { disambiguation: \"compatible\" }));\n};\nconst normalizeEvents = (events: CalendarEvent[], context?: DateContext): NormalizedEvent[] =>\n events.flatMap((event) => {\n const startDate = parseDate(event.start, context);\n if (!validDate(startDate)) return [];\n const parsedEnd = event.end ? parseDate(event.end, context) : null;\n const endDate = parsedEnd && validDate(parsedEnd) ? parsedEnd : new Date(startDate.getTime() + 60 * 60 * 1000);\n const duration = Math.max(60 * 60 * 1000, endDate.getTime() - startDate.getTime());\n const rangeEnd = endDate > startDate ? endDate : new Date(startDate.getTime() + duration);\n const startKey = calendar.formatDateKey(startDate, context);\n const endKey = calendar.formatDateKey(rangeEnd, context);\n if (!event.allDay && startKey === endKey) {\n return [\n {\n ...event,\n startDate,\n endDate: rangeEnd,\n sourceStartDate: startDate,\n sourceEndDate: rangeEnd,\n dayKey: startKey,\n },\n ];\n }\n const lastDay =\n event.allDay && isStartOfDay(rangeEnd, context)\n ? calendar.addDays(startOfDay(rangeEnd, context), -1, context)\n : startOfDay(rangeEnd, context);\n const days: NormalizedEvent[] = [];\n for (let day = startOfDay(startDate, context); day <= lastDay; day = calendar.addDays(day, 1, context)) {\n const segmentStart = day.getTime() === startOfDay(startDate, context).getTime() ? startDate : startOfDay(day, context);\n const segmentEnd = day.getTime() === startOfDay(rangeEnd, context).getTime() ? rangeEnd : endOfDay(day, context);\n days.push({\n ...event,\n startDate: segmentStart,\n endDate: segmentEnd,\n sourceStartDate: startDate,\n sourceEndDate: rangeEnd,\n dayKey: calendar.formatDateKey(day, context),\n allDay: event.allDay,\n });\n }\n return days;\n });\n\nconst eventHref = (props: CalendarProps, event: CalendarEvent): string | undefined => props.getEventHref?.(event) ?? event.href;\n\nconst moveEventTo = (event: NormalizedEvent, target: Date, allDay = false, context?: DateContext): CalendarEventTimeChange => {\n const duration = Math.max(30 * 60 * 1000, event.sourceEndDate.getTime() - event.sourceStartDate.getTime());\n const start = allDay ? startOfDay(target, context) : new Date(target);\n start.setSeconds(0, 0);\n return { start, end: new Date(start.getTime() + duration), allDay };\n};\n\nconst moveEventToDay = (event: NormalizedEvent, day: Date, context?: DateContext): CalendarEventTimeChange => {\n if (event.allDay) return moveEventTo(event, startOfDay(day, context), true, context);\n const localStart = context?.timeZone ? calendar.instantToZonedInput(event.sourceStartDate, context.timeZone) : null;\n const hour = localStart ? Number(localStart.slice(11, 13)) : event.sourceStartDate.getHours();\n const minute = localStart ? Number(localStart.slice(14, 16)) : event.sourceStartDate.getMinutes();\n return moveEventTo(event, zonedMinuteSlot(day, hour * 60 + minute, context), false, context);\n};\n\nconst eventTimeChanged = (event: NormalizedEvent, next: CalendarEventTimeChange): boolean =>\n event.sourceStartDate.getTime() !== next.start.getTime() ||\n event.sourceEndDate.getTime() !== next.end.getTime() ||\n Boolean(event.allDay) !== Boolean(next.allDay);\n\nconst previewSegments = (preview: CalendarPreview | null, days: Date[], context?: DateContext): NormalizedEvent[] =>\n preview\n ? normalizeEvents(\n [\n {\n id: `preview-${preview.id}`,\n title: preview.title ?? \"\",\n start: preview.start,\n end: preview.end,\n allDay: preview.allDay,\n color: \"blue\",\n },\n ],\n context,\n ).filter((event) => days.some((day) => event.dayKey === calendar.formatDateKey(day, context)))\n : [];\n\nconst timedEventLayouts = (events: NormalizedEvent[]): TimedEventLayout[] => {\n return layoutCalendarIntervals(events, (event) => ({\n start: event.startDate.getTime(),\n end: event.endDate.getTime(),\n })).map(({ item: event, lane, lanes, groupId, groupStart, groupEnd }) => ({\n event,\n lane,\n lanes,\n groupId,\n groupStartDate: new Date(groupStart),\n groupEndDate: new Date(groupEnd),\n }));\n};\n\nconst EventChip = (props: {\n event: NormalizedEvent;\n owner: CalendarProps;\n href?: string;\n compact?: boolean;\n fill?: boolean;\n moving?: boolean;\n onMovePointerDown?: (event: PointerEvent, onActivate: () => void) => void;\n}): JSX.Element => {\n const dateConfig = createMemo(() => ownerDateConfig(props.owner));\n const color = () => props.event.color ?? \"blue\";\n const selected = () => Boolean(props.owner.selectedEventId) && props.owner.selectedEventId === props.event.id;\n const style = () => (props.event.colorHex ? { \"--k2b-calendar-accent\": props.event.colorHex } : undefined);\n const isInteractive = () => Boolean(props.owner.onEventActivate);\n const durationHours = () => (props.event.endDate.getTime() - props.event.startDate.getTime()) / 3_600_000;\n const short = () => Boolean(props.fill && !props.event.allDay && durationHours() < 0.75);\n const showTime = () => !props.event.allDay && !props.compact && durationHours() >= 0.75;\n const showLocation = () => Boolean(props.event.location && !props.compact && durationHours() >= 1.25);\n const showDescription = () =>\n Boolean(props.event.description?.trim() && props.fill && !props.event.allDay && !props.compact && durationHours() >= 1.5);\n const timeLabel = () => `${formatTime(props.event.startDate, dateConfig())} - ${formatTime(props.event.endDate, dateConfig())}`;\n const renderedEvent = () =>\n props.owner.renderEvent?.(props.event, {\n compact: props.compact ?? false,\n fill: props.fill ?? false,\n start: props.event.startDate,\n end: props.event.endDate,\n allDay: props.event.allDay ?? false,\n durationHours: durationHours(),\n timeLabel: timeLabel(),\n });\n const defaultContent = (\n <>\n <span class=\"k2b-calendar-event__title\">{props.event.title}</span>\n <Show when={showTime()}>\n <span class=\"k2b-calendar-event__meta\">{timeLabel()}</span>\n </Show>\n <Show when={showLocation()}>\n <span class=\"k2b-calendar-event__meta\">{props.event.location}</span>\n </Show>\n <Show when={showDescription()}>\n <span class=\"k2b-calendar-event__description\">{props.event.description}</span>\n </Show>\n </>\n );\n const content = () => renderedEvent() ?? defaultContent;\n const isActionable = () => isInteractive() || Boolean(props.onMovePointerDown);\n let suppressClickUntil = 0;\n const onClick = (event: MouseEvent) => {\n if (performance.now() < suppressClickUntil) {\n event.preventDefault();\n event.stopPropagation();\n return;\n }\n if (!props.owner.onEventActivate || props.owner.eventActivation === \"double\") return;\n event.preventDefault();\n event.stopPropagation();\n props.owner.onEventActivate(props.event);\n };\n const onDoubleClick = (event: MouseEvent) => {\n if (!props.owner.onEventActivate || props.owner.eventActivation !== \"double\") return;\n event.preventDefault();\n event.stopPropagation();\n props.owner.onEventActivate(props.event);\n };\n const onButtonKeyDown = (event: KeyboardEvent) => {\n if (!isInteractive() || (event.key !== \"Enter\" && event.key !== \" \")) return;\n event.preventDefault();\n props.owner.onEventActivate?.(props.event);\n };\n const onPointerDown = (event: PointerEvent) => {\n if (event.pointerType === \"touch\") return;\n if (props.onMovePointerDown) event.stopPropagation();\n props.onMovePointerDown?.(event, () => {\n suppressClickUntil = performance.now() + 400;\n });\n };\n\n return props.href ? (\n <a\n href={props.href}\n class=\"k2b-calendar-event\"\n data-calendar-event=\"\"\n data-color={props.event.colorHex ? undefined : color()}\n data-selected={selected() ? \"true\" : undefined}\n data-compact={props.compact ? \"true\" : undefined}\n data-fill={props.fill ? \"true\" : undefined}\n data-short={short() ? \"true\" : undefined}\n data-moving={props.moving ? \"true\" : undefined}\n data-interactive={isInteractive() ? \"true\" : undefined}\n data-display={props.event.display}\n data-space-item-id={props.event.dataSpaceItemId}\n style={style()}\n draggable={props.onMovePointerDown ? false : undefined}\n onClick={onClick}\n onDblClick={onDoubleClick}\n onDragStart={props.onMovePointerDown ? (event) => event.preventDefault() : undefined}\n onPointerDown={onPointerDown}\n aria-label={`${props.event.title}${props.event.allDay ? \"\" : `, ${formatTime(props.event.startDate, dateConfig())} to ${formatTime(props.event.endDate, dateConfig())}`}`}\n >\n {content()}\n </a>\n ) : isActionable() ? (\n <button\n type=\"button\"\n class=\"k2b-calendar-event\"\n data-calendar-event=\"\"\n data-color={props.event.colorHex ? undefined : color()}\n data-selected={selected() ? \"true\" : undefined}\n data-compact={props.compact ? \"true\" : undefined}\n data-fill={props.fill ? \"true\" : undefined}\n data-short={short() ? \"true\" : undefined}\n data-moving={props.moving ? \"true\" : undefined}\n data-interactive=\"true\"\n data-display={props.event.display}\n style={style()}\n onClick={onClick}\n onDblClick={onDoubleClick}\n onPointerDown={onPointerDown}\n onKeyDown={onButtonKeyDown}\n aria-label={`${props.event.title}${props.event.allDay ? \"\" : `, ${formatTime(props.event.startDate, dateConfig())} to ${formatTime(props.event.endDate, dateConfig())}`}`}\n >\n {content()}\n </button>\n ) : (\n <div\n class=\"k2b-calendar-event\"\n role=\"group\"\n data-calendar-event=\"\"\n data-color={props.event.colorHex ? undefined : color()}\n data-selected={selected() ? \"true\" : undefined}\n data-compact={props.compact ? \"true\" : undefined}\n data-fill={props.fill ? \"true\" : undefined}\n data-short={short() ? \"true\" : undefined}\n data-moving={props.moving ? \"true\" : undefined}\n data-interactive={undefined}\n data-display={props.event.display}\n style={style()}\n aria-label={`${props.event.title}${props.event.allDay ? \"\" : `, ${formatTime(props.event.startDate, dateConfig())} to ${formatTime(props.event.endDate, dateConfig())}`}`}\n >\n {content()}\n </div>\n );\n};\n\nconst slotInteractionProps = (\n owner: CalendarProps,\n slot: () => CalendarEventTimeChange,\n suppressed?: () => boolean,\n nativeControl = false,\n) => {\n const isSlotChild = (event: Event) => {\n if (!(event.target instanceof Element)) return false;\n const control = event.target.closest(\"a,button,[data-calendar-event]\");\n return Boolean(control && control !== event.currentTarget);\n };\n const interactive = Boolean(owner.onSlotActivate);\n const activate = (event: Event) => {\n if (!owner.onSlotActivate || isSlotChild(event) || suppressed?.()) return;\n event.preventDefault();\n owner.onSlotActivate(slot());\n };\n return {\n role: interactive && !nativeControl ? (\"button\" as const) : undefined,\n tabIndex: interactive && !nativeControl ? 0 : undefined,\n onClick: (event: MouseEvent) => {\n if (owner.slotActivation === \"double\") return;\n activate(event);\n },\n onDblClick: (event: MouseEvent) => {\n if (owner.slotActivation !== \"double\") return;\n activate(event);\n },\n onKeyDown: nativeControl\n ? undefined\n : (event: KeyboardEvent) => {\n if (event.key === \"Enter\" || event.key === \" \") activate(event);\n },\n };\n};\n\ntype CalendarNavigationLinkProps = ParentProps<{\n owner: CalendarProps;\n href: string;\n anchorProps?: Omit<JSX.AnchorHTMLAttributes<HTMLAnchorElement>, \"children\" | \"href\" | \"onClick\"> & {\n \"data-divider\"?: string;\n \"data-outside\"?: string;\n \"data-size\"?: string;\n \"data-today\"?: string;\n \"data-variant\"?: string;\n };\n}>;\n\n/** A real anchor is the baseline; the optional handler only enhances it after hydration. */\nconst CalendarNavigationLink = (props: CalendarNavigationLinkProps): JSX.Element => {\n const preload = () => props.owner.onPrefetch?.(props.href);\n const navigateHref: JSX.EventHandler<HTMLAnchorElement, MouseEvent> = (event) => {\n const anchor = event.currentTarget;\n if (\n event.defaultPrevented ||\n event.button !== 0 ||\n event.metaKey ||\n event.ctrlKey ||\n event.shiftKey ||\n event.altKey ||\n (anchor.target && anchor.target !== \"_self\") ||\n anchor.hasAttribute(\"download\") ||\n new URL(anchor.href).origin !== window.location.origin\n ) {\n return;\n }\n event.preventDefault();\n props.owner.onNavigateHref?.(props.href);\n };\n return props.owner.onNavigateHref ? (\n <a {...props.anchorProps} href={props.href} onClick={navigateHref} onPointerEnter={preload} onFocus={preload}>\n {props.children}\n </a>\n ) : props.owner.onNavigate ? (\n <Link\n {...props.anchorProps}\n href={props.href}\n scroll=\"preserve\"\n onNavigate={props.owner.onNavigate}\n onPointerEnter={preload}\n onFocus={preload}\n >\n {props.children}\n </Link>\n ) : (\n <a {...props.anchorProps} href={props.href} onPointerEnter={preload} onFocus={preload}>\n {props.children}\n </a>\n );\n};\n\nconst CalendarViewLinks = (props: {\n owner: CalendarProps;\n view: CalendarView;\n options: Array<{ value: CalendarView; label: string }>;\n}): JSX.Element => {\n const messages = useUiMessages();\n const refs: HTMLAnchorElement[] = [];\n const selectRelative = (currentIndex: number, direction: -1 | 1) => {\n if (props.options.length === 0) return;\n refs[(currentIndex + direction + props.options.length) % props.options.length]?.click();\n };\n const onKeyDown = (event: KeyboardEvent, index: number) => {\n if (event.key === \"ArrowRight\" || event.key === \"ArrowDown\") {\n event.preventDefault();\n selectRelative(index, 1);\n } else if (event.key === \"ArrowLeft\" || event.key === \"ArrowUp\") {\n event.preventDefault();\n selectRelative(index, -1);\n } else if (event.key === \"Home\" || event.key === \"End\") {\n event.preventDefault();\n refs[event.key === \"Home\" ? 0 : props.options.length - 1]?.click();\n }\n };\n\n return (\n <div\n role=\"radiogroup\"\n aria-label={messages().calendarView}\n aria-orientation=\"horizontal\"\n class=\"k2b-segmented-control k2b-calendar-view-switcher\"\n >\n <For each={props.options}>\n {(option, index) => {\n const active = () => (props.view === \"mobile-month\" ? \"month\" : props.view) === option.value;\n const href = () => props.owner.getViewHref?.(option.value) ?? \"#\";\n return (\n <CalendarNavigationLink\n owner={props.owner}\n href={href()}\n anchorProps={{\n ref: (element) => {\n refs[index()] = element;\n },\n role: \"radio\",\n \"aria-checked\": active(),\n tabIndex: active() ? 0 : -1,\n class: \"k2b-segmented-control__option\",\n \"data-divider\":\n index() < props.options.length - 1 &&\n !active() &&\n (props.view === \"mobile-month\" ? \"month\" : props.view) !== props.options[index() + 1]?.value\n ? \"true\"\n : undefined,\n onKeyDown: (event) => onKeyDown(event, index()),\n }}\n >\n {option.label}\n </CalendarNavigationLink>\n );\n }}\n </For>\n </div>\n );\n};\n\nconst adjacentCalendarDate = (date: Date, view: CalendarView, direction: -1 | 1, dateConfig: DateContext) => {\n if (view === \"year\") return calendar.addMonths(date, direction * 12, dateConfig);\n if (view === \"month\" || view === \"mobile-month\") return calendar.addMonths(date, direction, dateConfig);\n return calendar.addDays(date, direction * (view === \"day\" ? 1 : 7), dateConfig);\n};\n\nconst CalendarHeader = (props: { date: Date; view: CalendarView; labels: Required<CalendarLabels>; owner: CalendarProps }): JSX.Element => {\n const messages = useUiMessages();\n const dateConfig = () => ownerDateConfig(props.owner);\n const previous = () => adjacentCalendarDate(props.date, props.view, -1, dateConfig());\n const next = () => adjacentCalendarDate(props.date, props.view, 1, dateConfig());\n const title = () => {\n if (props.view === \"year\")\n return new Intl.DateTimeFormat(dateConfig().locale ?? \"en\", { year: \"numeric\", timeZone: dateConfig().timeZone }).format(props.date);\n if (props.view === \"day\")\n return props.date.toLocaleDateString(dateConfig().locale ?? \"en\", {\n weekday: \"long\",\n month: \"long\",\n day: \"numeric\",\n year: \"numeric\",\n timeZone: dateConfig().timeZone,\n });\n if (props.view === \"week\")\n return `${formatDay(calendar.startOfWeek(props.date, dateConfig()), dateConfig())} - ${formatDay(calendar.addDays(calendar.startOfWeek(props.date, dateConfig()), 6, dateConfig()), dateConfig())}`;\n return formatMonth(props.date, dateConfig());\n };\n const goDate = (date: Date) => props.owner.onDateChange?.(date, props.view);\n const goView = (view: CalendarView) => {\n if (props.owner.onViewChange) {\n props.owner.onViewChange(view);\n return;\n }\n const href = props.owner.getViewHref?.(view);\n if (href) window.location.href = href;\n };\n const navButton = (date: Date, icon: string, label: string) => {\n const href = props.owner.getDateHref?.(date, props.view);\n return (props.owner.onNavigateHref || props.owner.onNavigate) && href ? (\n <CalendarNavigationLink\n owner={props.owner}\n href={href}\n anchorProps={{ \"aria-label\": label, title: label, class: \"k2b-calendar-header__nav-button\" }}\n >\n <i class={`ti ${icon}`} />\n </CalendarNavigationLink>\n ) : props.owner.onDateChange ? (\n <button type=\"button\" aria-label={label} class=\"k2b-calendar-header__nav-button\" onClick={() => goDate(date)}>\n <i class={`ti ${icon}`} />\n </button>\n ) : (\n <CalendarNavigationLink\n owner={props.owner}\n href={href ?? \"#\"}\n anchorProps={{ \"aria-label\": label, title: label, class: \"k2b-calendar-header__nav-button\" }}\n >\n <i class={`ti ${icon}`} />\n </CalendarNavigationLink>\n );\n };\n const todayButton = () => {\n const today = calendar.today(dateConfig());\n const href = props.owner.getDateHref?.(today, props.view);\n const label = <span class=\"k2b-button__label\">{props.labels.today}</span>;\n return (props.owner.onNavigateHref || props.owner.onNavigate) && href ? (\n <CalendarNavigationLink\n owner={props.owner}\n href={href}\n anchorProps={{ class: \"k2b-button k2b-calendar-header__today\", \"data-size\": \"sm\", \"data-variant\": \"input\" }}\n >\n {label}\n </CalendarNavigationLink>\n ) : props.owner.onDateChange ? (\n <Button type=\"button\" variant=\"input\" size=\"sm\" class=\"k2b-calendar-header__today\" onClick={() => goDate(today)}>\n {props.labels.today}\n </Button>\n ) : (\n <CalendarNavigationLink\n owner={props.owner}\n href={href ?? \"#\"}\n anchorProps={{ class: \"k2b-button k2b-calendar-header__today\", \"data-size\": \"sm\", \"data-variant\": \"input\" }}\n >\n {label}\n </CalendarNavigationLink>\n );\n };\n const viewOptions = createMemo(() =>\n (\n [\n { value: \"day\", label: props.labels.day },\n { value: \"week\", label: props.labels.week },\n { value: \"month\", label: props.labels.month },\n { value: \"year\", label: props.labels.year },\n ] satisfies Array<{ value: CalendarView; label: string }>\n ).filter((option) => !props.owner.views || props.owner.views.includes(option.value)),\n );\n\n return (\n <header class=\"k2b-calendar-header\">\n <div class=\"k2b-calendar-header__navigation\">\n {navButton(previous(), \"ti-chevron-left\", props.labels.previous)}\n {navButton(next(), \"ti-chevron-right\", props.labels.next)}\n <div class=\"k2b-calendar-header__title\">{title()}</div>\n </div>\n <div class=\"k2b-calendar-header__actions\">\n {todayButton()}\n <Show\n when={!props.owner.onViewChange && props.owner.getViewHref}\n fallback={\n <SegmentedControl\n value={() => (props.view === \"mobile-month\" ? \"month\" : props.view)}\n onValueChange={goView}\n ariaLabel={messages().calendarView}\n options={viewOptions()}\n />\n }\n >\n <CalendarViewLinks owner={props.owner} view={props.view} options={viewOptions()} />\n </Show>\n {props.owner.toolbarActions}\n </div>\n <Show when={props.owner.navigationPending}>\n <span class=\"k2b-calendar-header__progress\" aria-hidden=\"true\" />\n </Show>\n </header>\n );\n};\n\nconst MonthView = (props: {\n owner: CalendarProps;\n date: Date;\n now: Date;\n events: NormalizedEvent[];\n labels: Required<CalendarLabels>;\n}): JSX.Element => {\n const messages = useUiMessages();\n const dateConfig = createMemo(() => ownerDateConfig(props.owner));\n const [movePreview, setMovePreview] = createSignal<CalendarPreview | null>(null);\n const [movingEventId, setMovingEventId] = createSignal(\"\");\n let cancelInteraction: (() => void) | undefined;\n let suppressSlotClickUntil = 0;\n const month = createMemo(() => zonedYearMonth(props.date, dateConfig()));\n const weeks = createMemo(() => calendar.getMonthGrid(month().year, month().month, dateConfig()));\n const weekdays = createMemo(() => calendar.weekdays(dateConfig()));\n const todayKey = createMemo(() => calendar.formatDateKey(props.now, dateConfig()));\n const eventsByDay = createMemo(() => {\n const grouped = new Map<string, NormalizedEvent[]>();\n for (const event of props.events) {\n const events = grouped.get(event.dayKey);\n if (events) events.push(event);\n else grouped.set(event.dayKey, [event]);\n }\n return grouped;\n });\n const clearMove = () => {\n setMovePreview(null);\n setMovingEventId(\"\");\n };\n const dayAtPoint = (clientX: number, clientY: number): Date | null => {\n const target = document.elementFromPoint(clientX, clientY)?.closest<HTMLElement>(\"[data-calendar-day-key]\");\n const dayKey = target?.dataset.calendarDayKey;\n return dayKey ? calendar.parseCalendarDate(dayKey, dateConfig()) : null;\n };\n const startMove = (pointerEvent: PointerEvent, event: NormalizedEvent, markDragged: () => void) => {\n if (!props.owner.onEventDrop) return;\n cancelInteraction?.();\n cancelInteraction = startCalendarPointerSession({\n event: pointerEvent,\n resolve: (clientX, clientY) => {\n const day = dayAtPoint(clientX, clientY);\n return day ? { id: event.id, ...moveEventToDay(event, day, dateConfig()) } : null;\n },\n onActivate: () => {\n markDragged();\n suppressSlotClickUntil = performance.now() + 400;\n setMovingEventId(event.id);\n },\n onPreview: setMovePreview,\n onCommit: (next) => {\n clearMove();\n if (eventTimeChanged(event, next)) props.owner.onEventDrop?.(event, next);\n },\n onCancel: clearMove,\n });\n };\n onCleanup(() => cancelInteraction?.());\n return (\n <div class=\"k2b-calendar-month\" style={{ \"grid-template-rows\": `auto repeat(${weeks().length}, minmax(5rem, 1fr))` }}>\n <div class=\"k2b-calendar-month__weekdays\" data-week-numbers={props.owner.withWeekNumbers ? \"true\" : undefined}>\n <Show when={props.owner.withWeekNumbers}>\n <div class=\"k2b-calendar-month__weekday\">{messages().weekShort}</div>\n </Show>\n <For each={weekdays()}>{(day) => <div class=\"k2b-calendar-month__weekday\">{day}</div>}</For>\n </div>\n <For each={weeks()}>\n {(week) => (\n <div class=\"k2b-calendar-month__week\" data-week-numbers={props.owner.withWeekNumbers ? \"true\" : undefined}>\n <Show when={props.owner.withWeekNumbers}>\n <div class=\"k2b-calendar-month__week-number\">{zonedWeekNumber(week[0]!, dateConfig())}</div>\n </Show>\n <For each={week}>\n {(day) => {\n const dayKey = calendar.formatDateKey(day, dateConfig());\n const events = eventsByDay().get(dayKey) ?? [];\n const href = props.owner.getDateHref?.(day, \"day\");\n const dayBadge = props.owner.dayBadges?.[dayKey];\n const sameMonth = calendar.isSameMonth(day, props.date, dateConfig());\n const isToday = dayKey === todayKey();\n const dayLabel = day.toLocaleDateString(dateConfig().locale ?? \"en\", {\n weekday: \"long\",\n year: \"numeric\",\n month: \"long\",\n day: \"numeric\",\n timeZone: dateConfig().timeZone,\n });\n const eventStack = createMemo(() => {\n const preview = movePreview();\n const previewForDay = preview && calendar.formatDateKey(preview.start, dateConfig()) === dayKey ? preview : null;\n const candidates = previewForDay ? events.filter((event) => event.id !== previewForDay.id) : events;\n const visibleLimit = previewForDay ? 2 : 3;\n return {\n preview: previewForDay,\n visibleEvents: candidates.slice(0, visibleLimit),\n hiddenCount: Math.max(0, candidates.length - visibleLimit),\n };\n });\n return (\n <div\n class=\"k2b-calendar-month__day\"\n data-calendar-day-key={dayKey}\n data-outside={!sameMonth ? \"true\" : undefined}\n data-drop-preview={\n movePreview()?.start && calendar.formatDateKey(movePreview()!.start, dateConfig()) === dayKey ? \"true\" : undefined\n }\n >\n <Show\n when={props.owner.onSlotActivate}\n fallback={\n <Show when={href}>\n {(dayHref) => (\n <CalendarNavigationLink\n owner={props.owner}\n href={dayHref()}\n anchorProps={{\n class: \"k2b-calendar-month__day-target\",\n \"aria-label\": messages().openDate({ label: dayLabel }),\n }}\n />\n )}\n </Show>\n }\n >\n <button\n type=\"button\"\n class=\"k2b-calendar-month__day-target\"\n data-interactive=\"true\"\n aria-label={messages().createEventOn({ label: dayLabel })}\n {...slotInteractionProps(\n props.owner,\n () => {\n const start = startOfDay(day, dateConfig());\n return { start, end: calendar.addDays(start, 1, dateConfig()), allDay: true };\n },\n () => performance.now() < suppressSlotClickUntil,\n true,\n )}\n />\n </Show>\n <div class=\"k2b-calendar-month__day-header\">\n <Show\n when={props.owner.onSlotActivate && href}\n fallback={\n <span\n class=\"k2b-calendar-month__day-number\"\n data-today={isToday ? \"true\" : undefined}\n data-outside={!sameMonth ? \"true\" : undefined}\n >\n {calendar.formatDayNumber(day, dateConfig())}\n </span>\n }\n >\n {(dayHref) => (\n <CalendarNavigationLink\n owner={props.owner}\n href={dayHref()}\n anchorProps={{\n class: \"k2b-calendar-month__day-number\",\n \"data-today\": isToday ? \"true\" : undefined,\n \"data-outside\": !sameMonth ? \"true\" : undefined,\n \"aria-label\": messages().openDate({ label: dayLabel }),\n }}\n >\n {calendar.formatDayNumber(day, dateConfig())}\n </CalendarNavigationLink>\n )}\n </Show>\n <Show when={dayBadge}>\n {(badge) => (\n <span class=\"k2b-calendar-month__badge\">\n <Show when={badge().icon}>{(icon) => <i class={`k2b-calendar-month__badge-icon ti ti-${icon()}`} />}</Show>\n {badge().label}\n </span>\n )}\n </Show>\n </div>\n <div class=\"k2b-calendar-month__events\">\n <Show when={eventStack().preview}>\n <div class=\"k2b-calendar-preview\">\n {props.events.find((event) => event.id === eventStack().preview!.id)?.title ?? messages().moveEvent}\n </div>\n </Show>\n <For each={eventStack().visibleEvents}>\n {(event) => (\n <EventChip\n event={event}\n owner={props.owner}\n href={eventHref(props.owner, event)}\n compact\n moving={movingEventId() === event.id}\n onMovePointerDown={\n props.owner.onEventDrop\n ? (pointerEvent, markDragged) => startMove(pointerEvent, event, markDragged)\n : undefined\n }\n />\n )}\n </For>\n <Show when={eventStack().hiddenCount > 0}>\n <CalendarNavigationLink owner={props.owner} href={href ?? \"#\"} anchorProps={{ class: \"k2b-calendar-month__more\" }}>\n +{eventStack().hiddenCount} more\n </CalendarNavigationLink>\n </Show>\n </div>\n <div class=\"k2b-calendar-month__dots\">\n <For each={events.slice(0, 4)}>\n {(event) => (\n <span\n class=\"k2b-calendar-dot\"\n data-color={event.colorHex ? undefined : (event.color ?? \"blue\")}\n style={event.colorHex ? { \"background-color\": event.colorHex } : undefined}\n />\n )}\n </For>\n </div>\n </div>\n );\n }}\n </For>\n </div>\n )}\n </For>\n </div>\n );\n};\n\nconst TimeGridView = (props: {\n owner: CalendarProps;\n date: Date;\n now: Date;\n events: NormalizedEvent[];\n labels: Required<CalendarLabels>;\n days: Date[];\n}): JSX.Element => {\n const messages = useUiMessages();\n const dateConfig = createMemo(() => ownerDateConfig(props.owner));\n const gridStartHour = () => props.owner.visibleStartHour ?? 0;\n const gridEndHour = () => props.owner.visibleEndHour ?? 23;\n const businessStartHour = () => props.owner.startHour ?? 8;\n const businessEndHour = () => props.owner.endHour ?? 18;\n const hours = createMemo(() => Array.from({ length: gridEndHour() - gridStartHour() + 1 }, (_, index) => gridStartHour() + index));\n const [timePreview, setTimePreview] = createSignal<CalendarPreview | null>(null);\n const [movingEventId, setMovingEventId] = createSignal(\"\");\n const [expandedOverflow, setExpandedOverflow] = createSignal(\"\");\n let scrollContainer: HTMLDivElement | undefined;\n let timeGrid: HTMLDivElement | undefined;\n let timeGutter: HTMLDivElement | undefined;\n let defaultHourMarker: HTMLDivElement | undefined;\n let cancelInteraction: (() => void) | undefined;\n let suppressSlotClickUntil = 0;\n const slotEnd = (start: Date) => addMinutes(start, 60);\n const previewEvents = createMemo(() => previewSegments(timePreview(), props.days, dateConfig()));\n const eventsByDay = createMemo(() => {\n const grouped = new Map<string, { allDay: NormalizedEvent[]; timed: NormalizedEvent[] }>();\n for (const event of props.events) {\n const bucket = grouped.get(event.dayKey) ?? { allDay: [], timed: [] };\n (event.allDay ? bucket.allDay : bucket.timed).push(event);\n grouped.set(event.dayKey, bucket);\n }\n return grouped;\n });\n const clearInteraction = () => {\n setTimePreview(null);\n setMovingEventId(\"\");\n };\n const dayAtPoint = (clientX: number, clientY: number): Date | null => {\n const target = document.elementFromPoint(clientX, clientY)?.closest<HTMLElement>(\"[data-calendar-day-key]\");\n const dayKey = target?.dataset.calendarDayKey;\n return dayKey ? calendar.parseCalendarDate(dayKey, dateConfig()) : null;\n };\n const timeAtPoint = (clientX: number, clientY: number): Date | null => {\n if (!timeGrid || !timeGutter) return null;\n const gridRect = timeGrid.getBoundingClientRect();\n const gutterRect = timeGutter.getBoundingClientRect();\n const dayIndex = calendarDayIndexAtPoint(clientX, gutterRect.right, gridRect.right - gutterRect.right, props.days.length);\n if (dayIndex === null) return null;\n const minute = Math.min(\n gridEndHour() * 60 + 45,\n calendarMinuteAtPoint(clientY, gridRect.top, gridRect.height, gridStartHour(), gridEndHour()),\n );\n return zonedMinuteSlot(props.days[dayIndex]!, minute, dateConfig());\n };\n const beginInteraction = (options: Parameters<typeof startCalendarPointerSession<CalendarPreview>>[0]) => {\n cancelInteraction?.();\n cancelInteraction = startCalendarPointerSession(options);\n };\n const startTimedMove = (pointerEvent: PointerEvent, event: NormalizedEvent, markDragged: () => void) => {\n if (!props.owner.onEventDrop) return;\n const pointerStart = timeAtPoint(pointerEvent.clientX, pointerEvent.clientY) ?? event.sourceStartDate;\n const duration = Math.max(15 * 60_000, event.sourceEndDate.getTime() - event.sourceStartDate.getTime());\n const offsetMinutes = Math.max(\n 0,\n Math.min(duration / 60_000, Math.round((pointerStart.getTime() - event.sourceStartDate.getTime()) / 900_000) * 15),\n );\n beginInteraction({\n event: pointerEvent,\n scrollContainer,\n resolve: (clientX, clientY) => {\n const pointer = timeAtPoint(clientX, clientY);\n if (!pointer) return null;\n const start = new Date(pointer.getTime() - offsetMinutes * 60_000);\n return { id: event.id, title: event.title, start, end: new Date(start.getTime() + duration), allDay: false };\n },\n onActivate: () => {\n markDragged();\n suppressSlotClickUntil = performance.now() + 400;\n setMovingEventId(event.id);\n },\n onPreview: setTimePreview,\n onCommit: (next) => {\n clearInteraction();\n if (eventTimeChanged(event, next)) props.owner.onEventDrop?.(event, next);\n },\n onCancel: clearInteraction,\n });\n };\n const startAllDayMove = (pointerEvent: PointerEvent, event: NormalizedEvent, markDragged: () => void) => {\n if (!props.owner.onEventDrop) return;\n beginInteraction({\n event: pointerEvent,\n resolve: (clientX, clientY) => {\n const day = dayAtPoint(clientX, clientY);\n return day ? { id: event.id, title: event.title, ...moveEventTo(event, startOfDay(day, dateConfig()), true, dateConfig()) } : null;\n },\n onActivate: () => {\n markDragged();\n suppressSlotClickUntil = performance.now() + 400;\n setMovingEventId(event.id);\n },\n onPreview: setTimePreview,\n onCommit: (next) => {\n clearInteraction();\n if (eventTimeChanged(event, next)) props.owner.onEventDrop?.(event, next);\n },\n onCancel: clearInteraction,\n });\n };\n const startRange = (pointerEvent: PointerEvent) => {\n if (!props.owner.onSlotActivate || pointerEvent.pointerType === \"touch\") return;\n const anchor = timeAtPoint(pointerEvent.clientX, pointerEvent.clientY);\n if (!anchor) return;\n beginInteraction({\n event: pointerEvent,\n scrollContainer,\n resolve: (clientX, clientY) => {\n const current = timeAtPoint(clientX, clientY);\n if (!current) return null;\n const start = current < anchor ? current : anchor;\n const endBase = current < anchor ? anchor : current;\n return { id: \"calendar-create-preview\", start, end: addMinutes(endBase, 15), allDay: false };\n },\n onActivate: () => {\n suppressSlotClickUntil = performance.now() + 400;\n },\n onPreview: setTimePreview,\n onCommit: (next) => {\n clearInteraction();\n props.owner.onSlotActivate?.(next);\n },\n onCancel: clearInteraction,\n });\n };\n const timeRangeLayout = (startDate: Date, endDate: Date) => {\n const start = zonedHour(startDate, dateConfig());\n const end = zonedHour(endDate, dateConfig());\n const visibleStart = Math.max(gridStartHour(), start);\n const visibleEnd = Math.min(gridEndHour() + 1, end);\n const total = Math.max(1, gridEndHour() - gridStartHour() + 1);\n return {\n top: Math.max(0, ((visibleStart - gridStartHour()) / total) * 100),\n height: Math.max(1.25, ((visibleEnd - visibleStart) / total) * 100),\n };\n };\n const eventLayout = (event: NormalizedEvent) => timeRangeLayout(event.startDate, event.endDate);\n const isDayView = () => props.days.length === 1;\n const visibleLaneCount = (lanes: number) => (isDayView() ? lanes : Math.min(lanes, 3));\n const overflowLayouts = (layouts: TimedEventLayout[]): TimedOverflowLayout[] => {\n if (isDayView()) return [];\n const groups = new Map<number, TimedOverflowLayout>();\n for (const layout of layouts) {\n if (layout.lane < visibleLaneCount(layout.lanes)) continue;\n const existing = groups.get(layout.groupId);\n if (existing) existing.hiddenEvents.push(layout.event);\n else\n groups.set(layout.groupId, {\n groupId: layout.groupId,\n hiddenEvents: [layout.event],\n groupStartDate: layout.groupStartDate,\n groupEndDate: layout.groupEndDate,\n });\n }\n return [...groups.values()];\n };\n const dayColumnMinWidth = (layouts: TimedEventLayout[]) => {\n if (!isDayView()) return undefined;\n const lanes = Math.max(1, ...layouts.map((layout) => layout.lanes));\n return `${Math.max(32, lanes * 12)}rem`;\n };\n const laneStyle = (layoutItem: TimedEventLayout) => {\n if (isDayView()) {\n const laneWidth = 100 / layoutItem.lanes;\n return {\n left: `calc(${layoutItem.lane * laneWidth}% + 0.25rem)`,\n width: `calc(${laneWidth}% - 0.5rem)`,\n };\n }\n const visibleLanes = visibleLaneCount(layoutItem.lanes);\n return {\n left: `${layoutItem.lanes <= 1 ? 0 : (28 / Math.max(1, visibleLanes - 1)) * layoutItem.lane}%`,\n width: `${layoutItem.lanes <= 1 ? 100 : layoutItem.lanes > visibleLanes ? 68 : 72}%`,\n };\n };\n const currentTimeLine = (day: Date) => {\n const now = props.now;\n if (calendar.formatDateKey(day, dateConfig()) !== calendar.formatDateKey(now, dateConfig())) return null;\n const hour = zonedHour(now, dateConfig());\n if (hour < gridStartHour() || hour > gridEndHour() + 1) return null;\n return ((hour - gridStartHour()) / Math.max(1, gridEndHour() - gridStartHour() + 1)) * 100;\n };\n onCleanup(() => cancelInteraction?.());\n onMount(() => {\n requestAnimationFrame(() => {\n if (!scrollContainer || !defaultHourMarker) return;\n const targetTop = defaultHourMarker.getBoundingClientRect().top - scrollContainer.getBoundingClientRect().top;\n scrollContainer.scrollTo({ top: Math.max(0, scrollContainer.scrollTop + targetTop), behavior: \"smooth\" });\n });\n });\n return (\n <div class=\"k2b-calendar-time-grid\">\n <div class=\"k2b-calendar-time-grid__days\" style={{ \"grid-template-columns\": `4rem repeat(${props.days.length}, minmax(0, 1fr))` }}>\n <div />\n <For each={props.days}>\n {(day) => {\n const dayBadge = props.owner.dayBadges?.[calendar.formatDateKey(day, dateConfig())];\n const today = () => calendar.isToday(day, dateConfig());\n return (\n <CalendarNavigationLink\n owner={props.owner}\n href={props.owner.getDateHref?.(day, \"day\") ?? \"#\"}\n anchorProps={{ class: \"k2b-calendar-time-grid__day\" }}\n >\n <span class=\"k2b-calendar-time-grid__day-label\" data-today={today() ? \"true\" : undefined}>\n {formatDay(day, dateConfig())}\n </span>\n <Show when={dayBadge}>\n {(badge) => (\n <span class=\"k2b-calendar-time-grid__badge\">\n <Show when={badge().icon}>{(icon) => <i class={`k2b-calendar-time-grid__badge-icon ti ti-${icon()}`} />}</Show>\n {badge().label}\n </span>\n )}\n </Show>\n </CalendarNavigationLink>\n );\n }}\n </For>\n </div>\n <Show when={!props.owner.hideAllDay}>\n <div\n class=\"k2b-calendar-time-grid__all-day\"\n style={{\n \"grid-template-columns\": `4rem repeat(${props.days.length}, minmax(0, 1fr))`,\n \"max-height\": `${props.owner.allDayMaxHeightRem ?? 7}rem`,\n }}\n >\n <div class=\"k2b-calendar-time-grid__all-day-label\">{props.labels.allDay}</div>\n <For each={props.days}>\n {(day) => {\n const dayKey = calendar.formatDateKey(day, dateConfig());\n const allDay = () => eventsByDay().get(dayKey)?.allDay ?? [];\n const previewAllDay = previewEvents().filter((event) => event.dayKey === dayKey && event.allDay);\n return (\n <div\n class=\"k2b-calendar-time-grid__all-day-cell\"\n data-calendar-day-key={dayKey}\n data-drop-preview={\n timePreview()?.allDay && calendar.formatDateKey(timePreview()!.start, dateConfig()) === dayKey ? \"true\" : undefined\n }\n data-interactive={props.owner.onSlotActivate ? \"true\" : undefined}\n {...slotInteractionProps(\n props.owner,\n () => {\n const start = startOfDay(day, dateConfig());\n return { start, end: calendar.addDays(start, 1, dateConfig()), allDay: true };\n },\n () => performance.now() < suppressSlotClickUntil,\n )}\n >\n <div class=\"k2b-calendar-time-grid__all-day-events\">\n <For each={previewAllDay}>{(event) => <div class=\"k2b-calendar-preview\">{event.title}</div>}</For>\n <For each={allDay()}>\n {(event) => (\n <EventChip\n event={event}\n owner={props.owner}\n href={eventHref(props.owner, event)}\n compact\n moving={movingEventId() === event.id}\n onMovePointerDown={\n props.owner.onEventDrop\n ? (pointerEvent, markDragged) => startAllDayMove(pointerEvent, event, markDragged)\n : undefined\n }\n />\n )}\n </For>\n </div>\n </div>\n );\n }}\n </For>\n </div>\n </Show>\n <div ref={scrollContainer} class=\"k2b-calendar-time-grid__scroll\">\n <div\n ref={timeGrid}\n class=\"k2b-calendar-time-grid__grid\"\n style={{ \"grid-template-columns\": `4rem repeat(${props.days.length}, minmax(0, 1fr))` }}\n >\n <div\n ref={timeGutter}\n class=\"k2b-calendar-time-grid__gutter\"\n style={{ \"grid-template-rows\": `repeat(${hours().length}, minmax(4rem, 1fr))` }}\n >\n <For each={hours()}>\n {(hour) => (\n <div\n ref={(element) => {\n if (hour === businessStartHour()) defaultHourMarker = element;\n }}\n class=\"k2b-calendar-time-grid__hour\"\n data-outside-business={hour < businessStartHour() || hour > businessEndHour() ? \"true\" : undefined}\n >\n {`${hour}`.padStart(2, \"0\")}:00\n </div>\n )}\n </For>\n </div>\n <For each={props.days}>\n {(day) => {\n const dayKey = calendar.formatDateKey(day, dateConfig());\n const layouts = createMemo(() => timedEventLayouts(eventsByDay().get(dayKey)?.timed ?? []));\n return (\n <div\n class=\"k2b-calendar-time-grid__column\"\n style={{\n \"min-width\": dayColumnMinWidth(layouts()),\n \"grid-template-rows\": `repeat(${hours().length}, minmax(4rem, 1fr))`,\n }}\n >\n <Show when={currentTimeLine(day) !== null}>\n <div class=\"k2b-calendar-time-grid__now\" style={{ top: `${currentTimeLine(day) ?? 0}%` }} />\n </Show>\n <For each={hours()}>\n {(hour) => (\n <div\n class=\"k2b-calendar-time-grid__slot\"\n data-outside-business={hour < businessStartHour() || hour > businessEndHour() ? \"true\" : undefined}\n data-interactive={props.owner.onSlotActivate ? \"true\" : undefined}\n {...slotInteractionProps(\n props.owner,\n () => {\n const start = zonedSlot(day, hour, dateConfig());\n return { start, end: slotEnd(start), allDay: false };\n },\n () => performance.now() < suppressSlotClickUntil,\n )}\n onPointerDown={startRange}\n />\n )}\n </For>\n <For each={previewEvents().filter((event) => event.dayKey === dayKey && !event.allDay)}>\n {(event) => {\n const layout = eventLayout(event);\n const short = event.endDate.getTime() - event.startDate.getTime() < 60 * 60_000;\n return (\n <div\n class=\"k2b-calendar-preview k2b-calendar-preview--timed\"\n data-short={short ? \"true\" : undefined}\n style={{ top: `${layout.top}%`, height: `${layout.height}%` }}\n >\n <div class=\"k2b-calendar-preview__content\">\n <Show when={event.title}>\n <div class=\"k2b-calendar-preview__title\">{event.title}</div>\n </Show>\n <div class=\"k2b-calendar-preview__label\">\n {formatTime(event.startDate, dateConfig())} - {formatTime(event.endDate, dateConfig())}\n </div>\n </div>\n </div>\n );\n }}\n </For>\n <For each={layouts()}>\n {(layoutItem) => {\n if (!isDayView() && layoutItem.lane >= visibleLaneCount(layoutItem.lanes)) return null;\n const event = layoutItem.event;\n const layout = eventLayout(event);\n const position = laneStyle(layoutItem);\n const resizeStart = (pointerEvent: PointerEvent) => {\n if (!props.owner.onEventResize) return;\n pointerEvent.preventDefault();\n pointerEvent.stopPropagation();\n beginInteraction({\n event: pointerEvent,\n scrollContainer,\n threshold: 1,\n resolve: (clientX, clientY) => {\n const pointer = timeAtPoint(clientX, clientY);\n if (!pointer) return null;\n const minimumEnd = addMinutes(event.sourceStartDate, 15);\n const end = pointer > minimumEnd ? pointer : minimumEnd;\n return { id: event.id, title: event.title, start: event.sourceStartDate, end, allDay: false };\n },\n onActivate: () => {\n suppressSlotClickUntil = performance.now() + 400;\n setMovingEventId(event.id);\n },\n onPreview: setTimePreview,\n onCommit: (next) => {\n clearInteraction();\n if (eventTimeChanged(event, next)) props.owner.onEventResize?.(event, next);\n },\n onCancel: clearInteraction,\n });\n };\n return (\n <div\n class=\"k2b-calendar-time-grid__event-position\"\n style={{\n top: `${layout.top}%`,\n height: `${layout.height}%`,\n left: position.left,\n width: position.width,\n \"z-index\": String(20 + layoutItem.lane),\n }}\n >\n <div class=\"k2b-calendar-time-grid__event-frame\">\n <EventChip\n event={event}\n owner={props.owner}\n href={eventHref(props.owner, event)}\n fill\n moving={movingEventId() === event.id}\n onMovePointerDown={\n props.owner.onEventDrop\n ? (pointerEvent, markDragged) => startTimedMove(pointerEvent, event, markDragged)\n : undefined\n }\n />\n <Show when={props.owner.onEventResize}>\n <button\n type=\"button\"\n aria-label={messages().resizeEvent}\n draggable={false}\n class=\"k2b-calendar-time-grid__resize\"\n onPointerDown={resizeStart}\n onDragStart={(event) => event.preventDefault()}\n >\n <span class=\"k2b-calendar-time-grid__resize-icon\" aria-hidden=\"true\" />\n </button>\n </Show>\n </div>\n </div>\n );\n }}\n </For>\n <For each={overflowLayouts(layouts())}>\n {(overflow) => {\n const layout = timeRangeLayout(overflow.groupStartDate, overflow.groupEndDate);\n const key = `${dayKey}-${overflow.groupId}`;\n const hiddenTitle = () =>\n overflow.hiddenEvents.map((event) => `${formatTime(event.startDate, dateConfig())} ${event.title}`).join(\"\\n\");\n return (\n <>\n <button\n type=\"button\"\n class=\"k2b-calendar-time-grid__overflow\"\n style={{ top: `${layout.top}%`, height: `${layout.height}%` }}\n title={hiddenTitle()}\n aria-label={messages().hiddenOverlappingEvents({ count: overflow.hiddenEvents.length })}\n onClick={(event) => {\n event.stopPropagation();\n setExpandedOverflow(expandedOverflow() === key ? \"\" : key);\n }}\n >\n <span class=\"k2b-calendar-time-grid__overflow-count\">+{overflow.hiddenEvents.length}</span>\n </button>\n <Show when={expandedOverflow() === key}>\n <div class=\"k2b-calendar-time-grid__overflow-menu\" style={{ top: `${layout.top}%` }}>\n <div class=\"k2b-calendar-time-grid__overflow-title\">\n {formatTime(overflow.groupStartDate, dateConfig())} - {formatTime(overflow.groupEndDate, dateConfig())}\n </div>\n <For each={overflow.hiddenEvents}>\n {(event) => <EventChip event={event} owner={props.owner} href={eventHref(props.owner, event)} compact />}\n </For>\n </div>\n </Show>\n </>\n );\n }}\n </For>\n </div>\n );\n }}\n </For>\n </div>\n </div>\n </div>\n );\n};\n\nconst YearView = (props: { owner: CalendarProps; date: Date; now: Date; events: NormalizedEvent[] }): JSX.Element => {\n const dateConfig = createMemo(() => ownerDateConfig(props.owner));\n const year = createMemo(() => zonedYearMonth(props.date, dateConfig()).year);\n const todayKey = createMemo(() => calendar.formatDateKey(props.now, dateConfig()));\n const eventsByDay = createMemo(() => {\n const grouped = new Map<string, NormalizedEvent[]>();\n for (const event of props.events) {\n const events = grouped.get(event.dayKey);\n if (events) events.push(event);\n else grouped.set(event.dayKey, [event]);\n }\n return grouped;\n });\n const months = createMemo(() => {\n const context = dateConfig();\n return Array.from({ length: 12 }, (_, month) => {\n const date = zonedMonthDate(year(), month, context);\n return {\n date,\n label: date.toLocaleDateString(context.locale ?? \"en\", { month: \"long\", timeZone: context.timeZone }),\n days: calendar\n .getMonthGrid(year(), month, context)\n .flat()\n .map((day) => {\n const key = calendar.formatDateKey(day, context);\n return {\n date: day,\n events: eventsByDay().get(key) ?? [],\n isToday: key === todayKey(),\n outside: !calendar.isSameMonth(day, date, context),\n number: calendar.formatDayNumber(day, context),\n };\n }),\n };\n });\n });\n\n return (\n <div class=\"k2b-calendar-year\">\n <For each={months()}>\n {(month) => (\n <div class=\"k2b-calendar-year__month\">\n <div class=\"k2b-calendar-year__title\">{month.label}</div>\n <div class=\"k2b-calendar-year__grid\">\n <For each={month.days}>\n {(day) => (\n <CalendarNavigationLink\n owner={props.owner}\n href={props.owner.getDateHref?.(day.date, \"day\") ?? \"#\"}\n anchorProps={{\n class: \"k2b-calendar-year__day\",\n \"data-today\": day.isToday ? \"true\" : undefined,\n \"data-outside\": day.outside ? \"true\" : undefined,\n }}\n >\n {day.number}\n <Show when={day.events[0]}>\n {(event) => (\n <span\n class=\"k2b-calendar-year__indicator\"\n data-color={event().colorHex ? undefined : (event().color ?? \"blue\")}\n data-today={day.isToday ? \"true\" : undefined}\n style={event().colorHex ? { \"background-color\": day.isToday ? \"white\" : event().colorHex } : undefined}\n />\n )}\n </Show>\n </CalendarNavigationLink>\n )}\n </For>\n </div>\n </div>\n )}\n </For>\n </div>\n );\n};\n\nconst MobileMonthView = (props: {\n owner: CalendarProps;\n date: Date;\n now: Date;\n selectedDate: Date;\n events: NormalizedEvent[];\n labels: Required<CalendarLabels>;\n}): JSX.Element => {\n const dateConfig = createMemo(() => ownerDateConfig(props.owner));\n const selectedDateKey = createMemo(() => calendar.formatDateKey(props.selectedDate, dateConfig()));\n const selectedEvents = createMemo(() => props.events.filter((event) => event.dayKey === selectedDateKey()));\n return (\n <div class=\"k2b-calendar-mobile-month\">\n <MonthView\n owner={{ ...props.owner, withWeekNumbers: false }}\n date={props.date}\n now={props.now}\n events={props.events}\n labels={props.labels}\n />\n <div class=\"k2b-calendar-mobile-month__agenda\">\n <div class=\"k2b-calendar-mobile-month__title\">\n {props.selectedDate.toLocaleDateString(dateConfig().locale ?? \"en\", {\n weekday: \"long\",\n month: \"long\",\n day: \"numeric\",\n timeZone: dateConfig().timeZone,\n })}\n </div>\n <Show when={selectedEvents().length > 0} fallback={<div class=\"k2b-calendar-mobile-month__empty\">{props.labels.noEvents}</div>}>\n <div class=\"k2b-calendar-mobile-month__events\">\n <For each={selectedEvents()}>\n {(event) => <EventChip event={event} owner={props.owner} href={eventHref(props.owner, event)} />}\n </For>\n </div>\n </Show>\n </div>\n </div>\n );\n};\n\nconst CalendarBody = (props: { children: JSX.Element }): JSX.Element => <div class=\"k2b-calendar-body\">{props.children}</div>;\n\nconst Calendar = (props: CalendarProps): JSX.Element => {\n const messages = useUiMessages();\n // Subviews derive their date config from the owner props, so the inherited\n // render locale is merged here once; an explicit dateConfig.locale wins.\n const localizedConfig = useDateConfigLocale(() => props.dateConfig);\n const owner = mergeProps(props, {\n get dateConfig(): DateContext {\n return localizedConfig();\n },\n });\n const view = () => props.view ?? \"month\";\n const dateConfig = createMemo(() => ownerDateConfig(owner));\n const safeDate = (value: Date | string) => {\n const parsed = parseDate(value, dateConfig());\n return validDate(parsed) ? parsed : calendar.today(dateConfig());\n };\n const date = createMemo(() => safeDate(props.date));\n const selectedDate = createMemo(() => safeDate(props.selectedDate ?? props.date));\n const [now, setNow] = createSignal(new Date());\n const normalizedEvents = createMemo(() => normalizeEvents(props.events, dateConfig()));\n const mergedLabels = createMemo<Required<CalendarLabels>>(() => ({\n today: messages().today,\n day: messages().day,\n week: messages().week,\n month: messages().month,\n year: messages().year,\n allDay: messages().allDay,\n noEvents: messages().noEvents,\n previous: messages().previous,\n next: messages().next,\n ...props.labels,\n }));\n const days = createMemo(() => {\n if (view() === \"day\") return [date()];\n return calendar.getWeekDays(date(), dateConfig());\n });\n onMount(() => {\n const updateNow = () => setNow(new Date());\n const interval = window.setInterval(updateNow, 60_000);\n document.addEventListener(\"visibilitychange\", updateNow);\n onCleanup(() => {\n window.clearInterval(interval);\n document.removeEventListener(\"visibilitychange\", updateNow);\n });\n });\n\n return (\n <section class={`k2b-content-calendar ${props.class ?? \"\"}`} aria-busy={props.navigationPending ? \"true\" : undefined}>\n <CalendarHeader date={date()} view={view()} labels={mergedLabels()} owner={owner} />\n {props.toolbarContent}\n <Show\n when={view() !== \"month\"}\n fallback={\n <CalendarBody>\n <MonthView owner={owner} date={date()} now={now()} events={normalizedEvents()} labels={mergedLabels()} />\n </CalendarBody>\n }\n >\n <Show\n when={view() !== \"year\"}\n fallback={\n <CalendarBody>\n <YearView owner={owner} date={date()} now={now()} events={normalizedEvents()} />\n </CalendarBody>\n }\n >\n <Show\n when={view() !== \"mobile-month\"}\n fallback={\n <CalendarBody>\n <MobileMonthView\n owner={owner}\n date={date()}\n now={now()}\n selectedDate={selectedDate()}\n events={normalizedEvents()}\n labels={mergedLabels()}\n />\n </CalendarBody>\n }\n >\n <TimeGridView owner={owner} date={date()} now={now()} events={normalizedEvents()} labels={mergedLabels()} days={days()} />\n </Show>\n </Show>\n </Show>\n </section>\n );\n};\n\nexport default Calendar;\n"],"mappings":"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","ignoreList":[]}
|