@k2b/ui 0.28.0 → 0.30.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/README.md +1 -1
- package/dist/base.css +2 -2
- package/dist/browser/actions/ContextMenu.js +5 -0
- package/dist/browser/actions/ContextMenu.js.map +1 -1
- package/dist/browser/actions/DragAndDrop.js +89 -0
- package/dist/browser/actions/DragAndDrop.js.map +1 -0
- package/dist/browser/actions/Dropdown.js +6 -3
- package/dist/browser/actions/Dropdown.js.map +1 -1
- package/dist/browser/actions/FilterChip.js +137 -7
- package/dist/browser/actions/FilterChip.js.map +1 -1
- package/dist/browser/actions/GestureMenu.js +26 -3
- package/dist/browser/actions/GestureMenu.js.map +1 -1
- package/dist/browser/actions/SegmentedControl.js +5 -9
- package/dist/browser/actions/SegmentedControl.js.map +1 -1
- package/dist/browser/actions/SpotlightSearch.js +6 -3
- package/dist/browser/actions/SpotlightSearch.js.map +1 -1
- package/dist/browser/actions/Tabs.js +5 -2
- package/dist/browser/actions/Tabs.js.map +1 -1
- package/dist/browser/actions/ViewTabs.js +294 -0
- package/dist/browser/actions/ViewTabs.js.map +1 -0
- package/dist/browser/actions/drag-and-drop-messages.js +75 -0
- package/dist/browser/actions/drag-and-drop-messages.js.map +1 -0
- package/dist/browser/actions/drag-and-drop.js +692 -0
- package/dist/browser/actions/drag-and-drop.js.map +1 -0
- package/dist/browser/actions/filter-messages.js +6 -2
- package/dist/browser/actions/filter-messages.js.map +1 -1
- package/dist/browser/actions/index.js +3 -1
- package/dist/browser/actions/index.js.map +1 -1
- package/dist/browser/chat/ChatComposer.js +1229 -605
- package/dist/browser/chat/ChatComposer.js.map +1 -1
- package/dist/browser/chat/ChatDecision.js +814 -0
- package/dist/browser/chat/ChatDecision.js.map +1 -0
- package/dist/browser/chat/ChatPrimitives.js +292 -153
- package/dist/browser/chat/ChatPrimitives.js.map +1 -1
- package/dist/browser/chat/ChatTimeline.js.map +1 -1
- package/dist/browser/chat/chat-messages.js +14 -0
- package/dist/browser/chat/chat-messages.js.map +1 -1
- package/dist/browser/chat/command-search.js +35 -17
- package/dist/browser/chat/command-search.js.map +1 -1
- package/dist/browser/chat/index.js +10 -3
- package/dist/browser/chat/index.js.map +1 -1
- package/dist/browser/chat/types.js.map +1 -1
- package/dist/browser/content/Calendar.js +146 -119
- package/dist/browser/content/Calendar.js.map +1 -1
- package/dist/browser/content/CalendarWeekView.js +291 -266
- package/dist/browser/content/CalendarWeekView.js.map +1 -1
- package/dist/browser/content/Chart.js +54 -71
- package/dist/browser/content/Chart.js.map +1 -1
- package/dist/browser/content/DataTable.js +224 -155
- package/dist/browser/content/DataTable.js.map +1 -1
- package/dist/browser/content/FileBrowser.js +2 -2
- package/dist/browser/content/FileBrowser.js.map +1 -1
- package/dist/browser/content/FileTree.js +42 -36
- package/dist/browser/content/FileTree.js.map +1 -1
- package/dist/browser/content/FileTypeIcon.js +72 -0
- package/dist/browser/content/FileTypeIcon.js.map +1 -0
- package/dist/browser/content/FileView.js +2 -2
- package/dist/browser/content/FileView.js.map +1 -1
- package/dist/browser/content/ReferenceChip.js +162 -0
- package/dist/browser/content/ReferenceChip.js.map +1 -0
- package/dist/browser/content/calendar-pointer.js +9 -0
- package/dist/browser/content/calendar-pointer.js.map +1 -1
- package/dist/browser/content/calendar-time-view.js +6 -3
- package/dist/browser/content/calendar-time-view.js.map +1 -1
- package/dist/browser/content/data-table-messages.js +4 -2
- package/dist/browser/content/data-table-messages.js.map +1 -1
- package/dist/browser/content/index.js +2 -0
- package/dist/browser/content/index.js.map +1 -1
- package/dist/browser/feedback/MovedHint.js +197 -0
- package/dist/browser/feedback/MovedHint.js.map +1 -0
- package/dist/browser/feedback/dialog-core.js +66 -9
- package/dist/browser/feedback/dialog-core.js.map +1 -1
- package/dist/browser/feedback/index.js +1 -0
- package/dist/browser/feedback/index.js.map +1 -1
- package/dist/browser/feedback/prompts.js +6 -1
- package/dist/browser/feedback/prompts.js.map +1 -1
- package/dist/browser/inputs/DatePicker.js +337 -212
- package/dist/browser/inputs/DatePicker.js.map +1 -1
- package/dist/browser/inputs/date-picker.js +59 -5
- package/dist/browser/inputs/date-picker.js.map +1 -1
- package/dist/browser/intl/messages.js +12 -0
- package/dist/browser/intl/messages.js.map +1 -1
- package/dist/browser/intl/weekend.js +39 -0
- package/dist/browser/intl/weekend.js.map +1 -0
- package/dist/browser/layout/AppOverview.js +1 -2
- package/dist/browser/layout/AppOverview.js.map +1 -1
- package/dist/browser/layout/AppWorkspace.js +947 -531
- package/dist/browser/layout/AppWorkspace.js.map +1 -1
- package/dist/browser/layout/PageTitle.js +3 -2
- package/dist/browser/layout/PageTitle.js.map +1 -1
- package/dist/browser/layout/PanelDialog.js +88 -86
- package/dist/browser/layout/PanelDialog.js.map +1 -1
- package/dist/browser/layout/ResizeSeparator.js +81 -0
- package/dist/browser/layout/ResizeSeparator.js.map +1 -0
- package/dist/browser/layout/SettingsModal.js +2 -2
- package/dist/browser/layout/SettingsModal.js.map +1 -1
- package/dist/browser/layout/SidebarSwitcher.js +19 -11
- package/dist/browser/layout/SidebarSwitcher.js.map +1 -1
- package/dist/browser/layout/TabBar.js +16 -13
- package/dist/browser/layout/TabBar.js.map +1 -1
- package/dist/browser/layout/app-host-width.js +44 -0
- package/dist/browser/layout/app-host-width.js.map +1 -0
- package/dist/browser/layout/app-workspace-controller.js +337 -44
- package/dist/browser/layout/app-workspace-controller.js.map +1 -1
- package/dist/browser/layout/index.js +4 -1
- package/dist/browser/layout/index.js.map +1 -1
- package/dist/browser/layout/resize-separator.js +90 -0
- package/dist/browser/layout/resize-separator.js.map +1 -0
- package/dist/browser/layout/workspace-messages.js +12 -2
- package/dist/browser/layout/workspace-messages.js.map +1 -1
- package/dist/browser/surfaces/LinkCard.js +1 -1
- package/dist/browser/surfaces/LinkCard.js.map +1 -1
- package/dist/browser/surfaces/Placeholder.js +45 -11
- package/dist/browser/surfaces/Placeholder.js.map +1 -1
- package/dist/browser/surfaces/StatCell.js +23 -0
- package/dist/browser/surfaces/StatCell.js.map +1 -1
- package/dist/browser/widgets/Widget.js +1 -1
- package/dist/browser/widgets/Widget.js.map +1 -1
- package/dist/ssr/actions/ContextMenu.js +5 -0
- package/dist/ssr/actions/ContextMenu.js.map +1 -1
- package/dist/ssr/actions/DragAndDrop.js +63 -0
- package/dist/ssr/actions/DragAndDrop.js.map +1 -0
- package/dist/ssr/actions/Dropdown.js +5 -2
- package/dist/ssr/actions/Dropdown.js.map +1 -1
- package/dist/ssr/actions/FilterChip.js +59 -7
- package/dist/ssr/actions/FilterChip.js.map +1 -1
- package/dist/ssr/actions/GestureMenu.js +26 -3
- package/dist/ssr/actions/GestureMenu.js.map +1 -1
- package/dist/ssr/actions/SegmentedControl.js +1 -2
- package/dist/ssr/actions/SegmentedControl.js.map +1 -1
- package/dist/ssr/actions/SpotlightSearch.js +2 -2
- package/dist/ssr/actions/SpotlightSearch.js.map +1 -1
- package/dist/ssr/actions/Tabs.js +2 -2
- package/dist/ssr/actions/Tabs.js.map +1 -1
- package/dist/ssr/actions/ViewTabs.js +211 -0
- package/dist/ssr/actions/ViewTabs.js.map +1 -0
- package/dist/ssr/actions/drag-and-drop-messages.js +75 -0
- package/dist/ssr/actions/drag-and-drop-messages.js.map +1 -0
- package/dist/ssr/actions/drag-and-drop.js +692 -0
- package/dist/ssr/actions/drag-and-drop.js.map +1 -0
- package/dist/ssr/actions/filter-messages.js +6 -2
- package/dist/ssr/actions/filter-messages.js.map +1 -1
- package/dist/ssr/actions/index.js +3 -1
- package/dist/ssr/actions/index.js.map +1 -1
- package/dist/ssr/chat/ChatComposer.js +668 -136
- package/dist/ssr/chat/ChatComposer.js.map +1 -1
- package/dist/ssr/chat/ChatDecision.js +479 -0
- package/dist/ssr/chat/ChatDecision.js.map +1 -0
- package/dist/ssr/chat/ChatPrimitives.js +95 -24
- package/dist/ssr/chat/ChatPrimitives.js.map +1 -1
- package/dist/ssr/chat/ChatTimeline.js.map +1 -1
- package/dist/ssr/chat/chat-messages.js +14 -0
- package/dist/ssr/chat/chat-messages.js.map +1 -1
- package/dist/ssr/chat/command-search.js +35 -17
- package/dist/ssr/chat/command-search.js.map +1 -1
- package/dist/ssr/chat/index.js +10 -3
- package/dist/ssr/chat/index.js.map +1 -1
- package/dist/ssr/chat/types.js.map +1 -1
- package/dist/ssr/content/Calendar.js +112 -103
- package/dist/ssr/content/Calendar.js.map +1 -1
- package/dist/ssr/content/CalendarWeekView.js +42 -28
- package/dist/ssr/content/CalendarWeekView.js.map +1 -1
- package/dist/ssr/content/Chart.js +19 -23
- package/dist/ssr/content/Chart.js.map +1 -1
- package/dist/ssr/content/DataTable.js +78 -31
- package/dist/ssr/content/DataTable.js.map +1 -1
- package/dist/ssr/content/FileBrowser.js +2 -2
- package/dist/ssr/content/FileBrowser.js.map +1 -1
- package/dist/ssr/content/FileTree.js +21 -14
- package/dist/ssr/content/FileTree.js.map +1 -1
- package/dist/ssr/content/FileTypeIcon.js +50 -0
- package/dist/ssr/content/FileTypeIcon.js.map +1 -0
- package/dist/ssr/content/FileView.js +2 -2
- package/dist/ssr/content/FileView.js.map +1 -1
- package/dist/ssr/content/ReferenceChip.js +121 -0
- package/dist/ssr/content/ReferenceChip.js.map +1 -0
- package/dist/ssr/content/calendar-pointer.js +9 -0
- package/dist/ssr/content/calendar-pointer.js.map +1 -1
- package/dist/ssr/content/calendar-time-view.js +6 -3
- package/dist/ssr/content/calendar-time-view.js.map +1 -1
- package/dist/ssr/content/data-table-messages.js +4 -2
- package/dist/ssr/content/data-table-messages.js.map +1 -1
- package/dist/ssr/content/index.js +2 -0
- package/dist/ssr/content/index.js.map +1 -1
- package/dist/ssr/feedback/MovedHint.js +166 -0
- package/dist/ssr/feedback/MovedHint.js.map +1 -0
- package/dist/ssr/feedback/dialog-core.js +66 -9
- package/dist/ssr/feedback/dialog-core.js.map +1 -1
- package/dist/ssr/feedback/index.js +1 -0
- package/dist/ssr/feedback/index.js.map +1 -1
- package/dist/ssr/feedback/prompts.js +6 -1
- package/dist/ssr/feedback/prompts.js.map +1 -1
- package/dist/ssr/inputs/DatePicker.js +138 -69
- package/dist/ssr/inputs/DatePicker.js.map +1 -1
- package/dist/ssr/inputs/date-picker.js +59 -5
- package/dist/ssr/inputs/date-picker.js.map +1 -1
- package/dist/ssr/intl/messages.js +12 -0
- package/dist/ssr/intl/messages.js.map +1 -1
- package/dist/ssr/intl/weekend.js +39 -0
- package/dist/ssr/intl/weekend.js.map +1 -0
- package/dist/ssr/layout/AppOverview.js +1 -2
- package/dist/ssr/layout/AppOverview.js.map +1 -1
- package/dist/ssr/layout/AppWorkspace.js +457 -116
- package/dist/ssr/layout/AppWorkspace.js.map +1 -1
- package/dist/ssr/layout/PageTitle.js +3 -2
- package/dist/ssr/layout/PageTitle.js.map +1 -1
- package/dist/ssr/layout/PanelDialog.js +7 -6
- package/dist/ssr/layout/PanelDialog.js.map +1 -1
- package/dist/ssr/layout/ResizeSeparator.js +45 -0
- package/dist/ssr/layout/ResizeSeparator.js.map +1 -0
- package/dist/ssr/layout/SettingsModal.js +2 -2
- package/dist/ssr/layout/SettingsModal.js.map +1 -1
- package/dist/ssr/layout/SidebarSwitcher.js +19 -11
- package/dist/ssr/layout/SidebarSwitcher.js.map +1 -1
- package/dist/ssr/layout/TabBar.js +2 -2
- package/dist/ssr/layout/TabBar.js.map +1 -1
- package/dist/ssr/layout/app-host-width.js +44 -0
- package/dist/ssr/layout/app-host-width.js.map +1 -0
- package/dist/ssr/layout/app-workspace-controller.js +337 -44
- package/dist/ssr/layout/app-workspace-controller.js.map +1 -1
- package/dist/ssr/layout/index.js +4 -1
- package/dist/ssr/layout/index.js.map +1 -1
- package/dist/ssr/layout/resize-separator.js +90 -0
- package/dist/ssr/layout/resize-separator.js.map +1 -0
- package/dist/ssr/layout/workspace-messages.js +12 -2
- package/dist/ssr/layout/workspace-messages.js.map +1 -1
- package/dist/ssr/surfaces/LinkCard.js +1 -1
- package/dist/ssr/surfaces/LinkCard.js.map +1 -1
- package/dist/ssr/surfaces/Placeholder.js +25 -6
- package/dist/ssr/surfaces/Placeholder.js.map +1 -1
- package/dist/ssr/surfaces/StatCell.js +23 -0
- package/dist/ssr/surfaces/StatCell.js.map +1 -1
- package/dist/ssr/widgets/Widget.js +1 -1
- package/dist/ssr/widgets/Widget.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/actions/ContextMenu.d.ts +1 -0
- package/dist/types/actions/DragAndDrop.d.ts +29 -0
- package/dist/types/actions/Dropdown.d.ts +4 -0
- package/dist/types/actions/FilterChip.d.ts +22 -0
- package/dist/types/actions/ViewTabs.d.ts +30 -0
- package/dist/types/actions/drag-and-drop-messages.d.ts +35 -0
- package/dist/types/actions/drag-and-drop.d.ts +36 -0
- package/dist/types/actions/filter-messages.d.ts +2 -0
- package/dist/types/actions/index.d.ts +6 -2
- package/dist/types/chat/ChatComposer.d.ts +71 -1
- package/dist/types/chat/ChatDecision.d.ts +149 -0
- package/dist/types/chat/ChatPrimitives.d.ts +14 -1
- package/dist/types/chat/ChatTimeline.d.ts +2 -1
- package/dist/types/chat/chat-messages.d.ts +7 -0
- package/dist/types/chat/command-search.d.ts +5 -0
- package/dist/types/chat/index.d.ts +28 -5
- package/dist/types/chat/types.d.ts +54 -1
- package/dist/types/content/Chart.d.ts +9 -3
- package/dist/types/content/DataTable.d.ts +3 -0
- package/dist/types/content/FileTypeIcon.d.ts +27 -0
- package/dist/types/content/ReferenceChip.d.ts +49 -0
- package/dist/types/content/calendar-pointer.d.ts +6 -0
- package/dist/types/content/data-table-messages.d.ts +1 -0
- package/dist/types/content/index.d.ts +3 -0
- package/dist/types/feedback/MovedHint.d.ts +25 -0
- package/dist/types/feedback/dialog-core.d.ts +5 -2
- package/dist/types/feedback/index.d.ts +2 -0
- package/dist/types/feedback/prompts.d.ts +2 -0
- package/dist/types/inputs/DatePicker.d.ts +7 -0
- package/dist/types/inputs/date-picker.d.ts +25 -1
- package/dist/types/intl/messages.d.ts +6 -0
- package/dist/types/intl/weekend.d.ts +12 -0
- package/dist/types/layout/AppWorkspace.d.ts +48 -10
- package/dist/types/layout/ResizeSeparator.d.ts +9 -0
- package/dist/types/layout/TabBar.d.ts +7 -0
- package/dist/types/layout/app-host-width.d.ts +6 -0
- package/dist/types/layout/app-workspace-controller.d.ts +2 -0
- package/dist/types/layout/index.d.ts +5 -2
- package/dist/types/layout/resize-separator.d.ts +18 -0
- package/dist/types/layout/workspace-messages.d.ts +5 -0
- package/dist/types/surfaces/Placeholder.d.ts +2 -1
- package/dist/types/surfaces/StatCell.d.ts +6 -0
- package/package.json +5 -5
|
@@ -2,8 +2,8 @@ import { template as _$template } from "solid-js/web";
|
|
|
2
2
|
import { delegateEvents as _$delegateEvents } from "solid-js/web";
|
|
3
3
|
import { addEventListener as _$addEventListener } from "solid-js/web";
|
|
4
4
|
import { setStyleProperty as _$setStyleProperty } from "solid-js/web";
|
|
5
|
-
import { setProperty as _$setProperty } from "solid-js/web";
|
|
6
5
|
import { className as _$className } from "solid-js/web";
|
|
6
|
+
import { setProperty as _$setProperty } from "solid-js/web";
|
|
7
7
|
import { runHydrationEvents as _$runHydrationEvents } from "solid-js/web";
|
|
8
8
|
import { use as _$use } from "solid-js/web";
|
|
9
9
|
import { spread as _$spread } from "solid-js/web";
|
|
@@ -17,67 +17,79 @@ import { setAttribute as _$setAttribute } from "solid-js/web";
|
|
|
17
17
|
import { effect as _$effect } from "solid-js/web";
|
|
18
18
|
import { getNextElement as _$getNextElement } from "solid-js/web";
|
|
19
19
|
var _tmpl$ = /*#__PURE__*/_$template(`<button type=button class=k2b-app-workspace__resize role=separator><span aria-hidden=true>`),
|
|
20
|
-
_tmpl$2 = /*#__PURE__*/_$template(`<p>`),
|
|
20
|
+
_tmpl$2 = /*#__PURE__*/_$template(`<p class=k2b-truncate-fade>`),
|
|
21
21
|
_tmpl$3 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__level-actions>`),
|
|
22
|
-
_tmpl$4 = /*#__PURE__*/_$template(`<header class=k2b-app-workspace__level-head><!$><!/><div class=k2b-app-workspace__level-title><h2 tabindex=-1></h2><!$><!/></div><!$><!/>`),
|
|
22
|
+
_tmpl$4 = /*#__PURE__*/_$template(`<header class=k2b-app-workspace__level-head><!$><!/><div class=k2b-app-workspace__level-title><h2 tabindex=-1><span class=k2b-truncate-fade></span></h2><!$><!/></div><!$><!/>`),
|
|
23
23
|
_tmpl$5 = /*#__PURE__*/_$template(`<div>`),
|
|
24
|
-
_tmpl$6 = /*#__PURE__*/_$template(`<
|
|
25
|
-
_tmpl$7 = /*#__PURE__*/_$template(`<
|
|
26
|
-
_tmpl$8 = /*#__PURE__*/_$template(`<
|
|
27
|
-
_tmpl$9 = /*#__PURE__*/_$template(`<
|
|
28
|
-
_tmpl$0 = /*#__PURE__*/_$template(`<
|
|
29
|
-
_tmpl$1 = /*#__PURE__*/_$template(`<
|
|
30
|
-
_tmpl$10 = /*#__PURE__*/_$template(`<aside
|
|
31
|
-
_tmpl$11 = /*#__PURE__*/_$template(`<
|
|
32
|
-
_tmpl$12 = /*#__PURE__*/_$template(`<
|
|
33
|
-
_tmpl$13 = /*#__PURE__*/_$template(`<
|
|
34
|
-
_tmpl$14 = /*#__PURE__*/_$template(`<span aria-hidden=true
|
|
35
|
-
_tmpl$15 = /*#__PURE__*/_$template(`<
|
|
36
|
-
_tmpl$16 = /*#__PURE__*/_$template(`<
|
|
37
|
-
_tmpl$17 = /*#__PURE__*/_$template(`<
|
|
38
|
-
_tmpl$18 = /*#__PURE__*/_$template(`<
|
|
39
|
-
_tmpl$19 = /*#__PURE__*/_$template(`<
|
|
40
|
-
_tmpl$20 = /*#__PURE__*/_$template(`<
|
|
41
|
-
_tmpl$21 = /*#__PURE__*/_$template(`<
|
|
42
|
-
_tmpl$22 = /*#__PURE__*/_$template(`<
|
|
43
|
-
_tmpl$23 = /*#__PURE__*/_$template(`<
|
|
44
|
-
_tmpl$24 = /*#__PURE__*/_$template(`<
|
|
45
|
-
_tmpl$25 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-status-
|
|
46
|
-
_tmpl$26 = /*#__PURE__*/_$template(`<span class=k2b-
|
|
47
|
-
_tmpl$27 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-status>`),
|
|
48
|
-
_tmpl$28 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-status-
|
|
49
|
-
_tmpl$29 = /*#__PURE__*/_$template(`<
|
|
50
|
-
_tmpl$30 = /*#__PURE__*/_$template(`<
|
|
51
|
-
_tmpl$31 = /*#__PURE__*/_$template(`<
|
|
52
|
-
_tmpl$32 = /*#__PURE__*/_$template(`<
|
|
53
|
-
_tmpl$33 = /*#__PURE__*/_$template(`<
|
|
54
|
-
_tmpl$34 = /*#__PURE__*/_$template(`<
|
|
55
|
-
_tmpl$35 = /*#__PURE__*/_$template(`<span
|
|
56
|
-
_tmpl$36 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-item-
|
|
57
|
-
_tmpl$37 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-item-
|
|
58
|
-
_tmpl$38 = /*#__PURE__*/_$template(`<
|
|
59
|
-
_tmpl$39 = /*#__PURE__*/_$template(`<
|
|
60
|
-
_tmpl$40 = /*#__PURE__*/_$template(`<
|
|
61
|
-
_tmpl$41 = /*#__PURE__*/_$template(`<
|
|
62
|
-
_tmpl$42 = /*#__PURE__*/_$template(`<
|
|
63
|
-
_tmpl$43 = /*#__PURE__*/_$template(`<
|
|
64
|
-
_tmpl$44 = /*#__PURE__*/_$template(`<span class=k2b-app-
|
|
65
|
-
_tmpl$45 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-item-label><span class=k2b-app-workspace__sidebar-item-label-text>`),
|
|
66
|
-
_tmpl$46 = /*#__PURE__*/_$template(`<
|
|
67
|
-
_tmpl$47 = /*#__PURE__*/_$template(`<
|
|
68
|
-
_tmpl$48 = /*#__PURE__*/_$template(`<
|
|
69
|
-
_tmpl$49 = /*#__PURE__*/_$template(`<
|
|
70
|
-
_tmpl$50 = /*#__PURE__*/_$template(`<
|
|
71
|
-
_tmpl$51 = /*#__PURE__*/_$template(`<
|
|
72
|
-
_tmpl$52 = /*#__PURE__*/_$template(`<div class=k2b-app-
|
|
73
|
-
_tmpl$53 = /*#__PURE__*/_$template(`<
|
|
74
|
-
_tmpl$54 = /*#__PURE__*/_$template(`<
|
|
24
|
+
_tmpl$6 = /*#__PURE__*/_$template(`<style>`),
|
|
25
|
+
_tmpl$7 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__main-primary data-workspace-main-region=main>`),
|
|
26
|
+
_tmpl$8 = /*#__PURE__*/_$template(`<section>`),
|
|
27
|
+
_tmpl$9 = /*#__PURE__*/_$template(`<i class="ti ti-chevron-left"aria-hidden=true>`),
|
|
28
|
+
_tmpl$0 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__level-body>`),
|
|
29
|
+
_tmpl$1 = /*#__PURE__*/_$template(`<i class="ti ti-layout-sidebar-right"aria-hidden=true>`),
|
|
30
|
+
_tmpl$10 = /*#__PURE__*/_$template(`<aside><button type=button class=k2b-app-workspace__detail-grabber aria-pressed=false><span aria-hidden=true></span></button><!$><!/>`),
|
|
31
|
+
_tmpl$11 = /*#__PURE__*/_$template(`<aside>`),
|
|
32
|
+
_tmpl$12 = /*#__PURE__*/_$template(`<nav class=k2b-app-workspace__sidebar-sheet>`),
|
|
33
|
+
_tmpl$13 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__sidebar-desktop>`),
|
|
34
|
+
_tmpl$14 = /*#__PURE__*/_$template(`<button type=button class=k2b-app-workspace__sidebar-all aria-haspopup=dialog><span></span><i class="ti ti-chevron-down"aria-hidden=true>`),
|
|
35
|
+
_tmpl$15 = /*#__PURE__*/_$template(`<script>`),
|
|
36
|
+
_tmpl$16 = /*#__PURE__*/_$template(`<footer>`),
|
|
37
|
+
_tmpl$17 = /*#__PURE__*/_$template(`<span aria-hidden=true><i>`),
|
|
38
|
+
_tmpl$18 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-section-count>`),
|
|
39
|
+
_tmpl$19 = /*#__PURE__*/_$template(`<button type=button class=k2b-app-workspace__sidebar-section-toggle><!$><!/><i aria-hidden=true>`),
|
|
40
|
+
_tmpl$20 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__sidebar-section-actions>`),
|
|
41
|
+
_tmpl$21 = /*#__PURE__*/_$template(`<header class=k2b-app-workspace__sidebar-section-header><!$><!/><!$><!/>`),
|
|
42
|
+
_tmpl$22 = /*#__PURE__*/_$template(`<section><!$><!/><div class=k2b-app-workspace__sidebar-section-content>`),
|
|
43
|
+
_tmpl$23 = /*#__PURE__*/_$template(`<h2>`),
|
|
44
|
+
_tmpl$24 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__sidebar-item-actions>`),
|
|
45
|
+
_tmpl$25 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-status-mention aria-hidden=true>@`),
|
|
46
|
+
_tmpl$26 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-status-muted aria-hidden=true><i class="ti ti-bell-off">`),
|
|
47
|
+
_tmpl$27 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-status-count>`),
|
|
48
|
+
_tmpl$28 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-status-unread aria-hidden=true>`),
|
|
49
|
+
_tmpl$29 = /*#__PURE__*/_$template(`<span class=k2b-sr-only>, <!$><!/>`),
|
|
50
|
+
_tmpl$30 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-status>`),
|
|
51
|
+
_tmpl$31 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-status-dot>`),
|
|
52
|
+
_tmpl$32 = /*#__PURE__*/_$template(`<button type=button>`),
|
|
53
|
+
_tmpl$33 = /*#__PURE__*/_$template(`<a>`),
|
|
54
|
+
_tmpl$34 = /*#__PURE__*/_$template(`<div><!$><!/><!$><!/>`),
|
|
55
|
+
_tmpl$35 = /*#__PURE__*/_$template(`<span aria-hidden=true>`),
|
|
56
|
+
_tmpl$36 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-item-context-meta>`),
|
|
57
|
+
_tmpl$37 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-item-context><span class="k2b-app-workspace__sidebar-item-context-label k2b-truncate-fade"></span><!$><!/>`),
|
|
58
|
+
_tmpl$38 = /*#__PURE__*/_$template(`<span class="k2b-app-workspace__sidebar-item-description k2b-truncate-fade">`),
|
|
59
|
+
_tmpl$39 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-item-copy><!$><!/><span class=k2b-app-workspace__sidebar-item-label><span class="k2b-app-workspace__sidebar-item-label-text k2b-truncate-fade-lines"></span></span><!$><!/>`),
|
|
60
|
+
_tmpl$40 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-item-meta>`),
|
|
61
|
+
_tmpl$41 = /*#__PURE__*/_$template(`<i>`),
|
|
62
|
+
_tmpl$42 = /*#__PURE__*/_$template(`<a class=k2b-app-workspace__sidebar-item-action>`),
|
|
63
|
+
_tmpl$43 = /*#__PURE__*/_$template(`<button type=button class=k2b-app-workspace__sidebar-item-action>`),
|
|
64
|
+
_tmpl$44 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-item-icon><i>`),
|
|
65
|
+
_tmpl$45 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-item-copy><span class=k2b-app-workspace__sidebar-item-label><span class="k2b-app-workspace__sidebar-item-label-text k2b-truncate-fade-lines"></span></span><span class="k2b-app-workspace__sidebar-item-description k2b-truncate-fade">`),
|
|
66
|
+
_tmpl$46 = /*#__PURE__*/_$template(`<span>`),
|
|
67
|
+
_tmpl$47 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__nav-tree-toggle data-k2b-nav-tree-toggle aria-hidden=true><i>`),
|
|
68
|
+
_tmpl$48 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__sidebar-item-label><span class="k2b-app-workspace__sidebar-item-label-text k2b-truncate-fade-lines">`),
|
|
69
|
+
_tmpl$49 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__nav-tree-group role=group>`),
|
|
70
|
+
_tmpl$50 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__nav-tree-node role=treeitem><!$><!/><!$><!/>`),
|
|
71
|
+
_tmpl$51 = /*#__PURE__*/_$template(`<div role=tree>`),
|
|
72
|
+
_tmpl$52 = /*#__PURE__*/_$template(`<section><!$><!/><div class=k2b-app-workspace__sidebar-icon-grid>`),
|
|
73
|
+
_tmpl$53 = /*#__PURE__*/_$template(`<i aria-hidden=true>`),
|
|
74
|
+
_tmpl$54 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__head-primary-label>`),
|
|
75
|
+
_tmpl$55 = /*#__PURE__*/_$template(`<i class="ti ti-layout-sidebar"aria-hidden=true>`),
|
|
76
|
+
_tmpl$56 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__head-views>`),
|
|
77
|
+
_tmpl$57 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__head-filters role=group><!$><!/><!$><!/>`),
|
|
78
|
+
_tmpl$58 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__head-count><span>`),
|
|
79
|
+
_tmpl$59 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__head-actions><!$><!/><!$><!/>`),
|
|
80
|
+
_tmpl$60 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__head><div class=k2b-app-workspace__head-lead><!$><!/><!$><!/><!$><!/><!$><!/><!$><!/></div><!$><!/>`),
|
|
81
|
+
_tmpl$61 = /*#__PURE__*/_$template(`<h1 class=k2b-app-workspace__head-heading data-k2b-page-trail-title>`),
|
|
82
|
+
_tmpl$62 = /*#__PURE__*/_$template(`<div data-k2b-app-workspace>`);
|
|
75
83
|
import { Link } from "@k2b/ssr/nav";
|
|
76
|
-
import { children, createContext, createEffect, createMemo, createSignal, createUniqueId, For, mergeProps, on, onCleanup, onMount, Show, useContext } from "solid-js";
|
|
77
|
-
import { isServer } from "solid-js/web";
|
|
78
|
-
import { IconButton, IconButtonLink } from "../actions/Button";
|
|
84
|
+
import { children, createContext, createEffect, createMemo, createRoot, createSignal, createUniqueId, For, getOwner, mergeProps, on, onCleanup, onMount, Show, useContext } from "solid-js";
|
|
85
|
+
import { Dynamic, isServer } from "solid-js/web";
|
|
86
|
+
import { Button, ButtonLink, IconButton, IconButtonLink } from "../actions/Button";
|
|
87
|
+
import { useFilterMessages } from "../actions/filter-messages";
|
|
88
|
+
import { dialogCore } from "../feedback/dialog-core";
|
|
89
|
+
import { RenderErrorBoundary } from "../internal/render-error";
|
|
79
90
|
import { APP_WORKSPACE_DETAIL_CLOSE_EVENT, APP_WORKSPACE_DETAIL_STEP_EVENT, APP_WORKSPACE_SIDEBAR_HIDE_EVENT, installAppWorkspaceController } from "./app-workspace-controller";
|
|
80
|
-
import { APP_WORKSPACE_DETAIL_DEFAULT, APP_WORKSPACE_DETAIL_MAX, APP_WORKSPACE_DETAIL_MIN, APP_WORKSPACE_DRAWER_DEFAULT, APP_WORKSPACE_DRAWER_MAX, APP_WORKSPACE_DRAWER_MIN, APP_WORKSPACE_PANE_DEFAULT, APP_WORKSPACE_PANE_MAX, APP_WORKSPACE_PANE_MIN, APP_WORKSPACE_SIDEBAR_COLLAPSED, APP_WORKSPACE_SIDEBAR_DEFAULT, APP_WORKSPACE_SIDEBAR_MAX, APP_WORKSPACE_SIDEBAR_MIN, appWorkspaceLayoutStyle, appWorkspacePanelVariable } from "./app-workspace-state";
|
|
91
|
+
import { APP_WORKSPACE_DETAIL_DEFAULT, APP_WORKSPACE_DETAIL_MAX, APP_WORKSPACE_DETAIL_MIN, APP_WORKSPACE_DRAWER_DEFAULT, APP_WORKSPACE_DRAWER_MAX, APP_WORKSPACE_DRAWER_MIN, APP_WORKSPACE_MAIN_MIN, APP_WORKSPACE_PANE_DEFAULT, APP_WORKSPACE_PANE_MAX, APP_WORKSPACE_PANE_MIN, APP_WORKSPACE_SIDEBAR_COLLAPSED, APP_WORKSPACE_SIDEBAR_DEFAULT, APP_WORKSPACE_SIDEBAR_MAX, APP_WORKSPACE_SIDEBAR_MIN, appWorkspaceLayoutStyle, appWorkspacePanelVariable } from "./app-workspace-state";
|
|
92
|
+
import BottomSheet, { bottomSheetAdaptiveOptions } from "./BottomSheet";
|
|
81
93
|
import { PageTitle, usePageTrail } from "./PageTitle";
|
|
82
94
|
import { SidebarItemPreview } from "./SidebarItemPreview";
|
|
83
95
|
import { AppWorkspaceSidebarSwitcher } from "./SidebarSwitcher";
|
|
@@ -89,6 +101,8 @@ const ResizeContext = createContext(true);
|
|
|
89
101
|
/** The enclosing workspace: its head names the sidebar, and a nested workspace leaves the page title to it. */
|
|
90
102
|
const WorkspaceContext = createContext();
|
|
91
103
|
const LayoutStateContext = createContext(null);
|
|
104
|
+
const HEAD = Symbol("AppWorkspace.Head");
|
|
105
|
+
const headSlot = value => !!value && typeof value === "object" && "kind" in value && value.kind === HEAD;
|
|
92
106
|
const MAIN_PANE = Symbol("AppWorkspace.MainPane");
|
|
93
107
|
const SIDEBAR_DESKTOP = Symbol("AppWorkspace.SidebarDesktop");
|
|
94
108
|
const SIDEBAR_ITEM_ICON = Symbol("AppWorkspace.SidebarItemIcon");
|
|
@@ -108,6 +122,13 @@ const mainPaneSlot = value => Boolean(value && typeof value === "object" && "kin
|
|
|
108
122
|
const sidebarChildSlot = value => Boolean(value && typeof value === "object" && "kind" in value && value.kind === SIDEBAR_DESKTOP);
|
|
109
123
|
const sidebarItemSlot = value => Boolean(value && typeof value === "object" && "kind" in value && [SIDEBAR_ITEM_ICON, SIDEBAR_ITEM_LABEL, SIDEBAR_ITEM_META, SIDEBAR_ITEM_ACTION].includes(value.kind));
|
|
110
124
|
const navTreeItemSlot = value => Boolean(value && typeof value === "object" && "kind" in value && value.kind === NAV_TREE_ITEM);
|
|
125
|
+
/** Head row slot. Must be a direct child of AppWorkspace; its parts may be islands. */
|
|
126
|
+
function AppWorkspaceHeadSlot(props) {
|
|
127
|
+
return {
|
|
128
|
+
kind: HEAD,
|
|
129
|
+
props
|
|
130
|
+
};
|
|
131
|
+
}
|
|
111
132
|
function ResizeHandle(props) {
|
|
112
133
|
const workspaceMessages = useWorkspaceMessages();
|
|
113
134
|
const workspace = useContext(WorkspaceContext);
|
|
@@ -214,36 +235,37 @@ function LevelHead(props) {
|
|
|
214
235
|
const actions = children(() => props.actions);
|
|
215
236
|
return (() => {
|
|
216
237
|
var _el$2 = _$getNextElement(_tmpl$4),
|
|
217
|
-
_el$
|
|
218
|
-
[_el$
|
|
219
|
-
_el$3 = _el$
|
|
238
|
+
_el$0 = _el$2.firstChild,
|
|
239
|
+
[_el$1, _co$2] = _$getNextMarker(_el$0.nextSibling),
|
|
240
|
+
_el$3 = _el$1.nextSibling,
|
|
220
241
|
_el$4 = _el$3.firstChild,
|
|
221
|
-
_el$
|
|
222
|
-
|
|
223
|
-
_el$
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
_$insert(_el$
|
|
242
|
+
_el$5 = _el$4.firstChild,
|
|
243
|
+
_el$7 = _el$4.nextSibling,
|
|
244
|
+
[_el$8, _co$] = _$getNextMarker(_el$7.nextSibling),
|
|
245
|
+
_el$10 = _el$3.nextSibling,
|
|
246
|
+
[_el$11, _co$3] = _$getNextMarker(_el$10.nextSibling);
|
|
247
|
+
_$insert(_el$2, () => props.children, _el$1, _co$2);
|
|
248
|
+
_$insert(_el$5, () => props.label);
|
|
227
249
|
_$insert(_el$3, _$createComponent(Show, {
|
|
228
250
|
get when() {
|
|
229
251
|
return description();
|
|
230
252
|
},
|
|
231
253
|
get children() {
|
|
232
|
-
var _el$
|
|
233
|
-
_$insert(_el$
|
|
234
|
-
return _el$
|
|
254
|
+
var _el$6 = _$getNextElement(_tmpl$2);
|
|
255
|
+
_$insert(_el$6, description);
|
|
256
|
+
return _el$6;
|
|
235
257
|
}
|
|
236
|
-
}), _el$
|
|
258
|
+
}), _el$8, _co$);
|
|
237
259
|
_$insert(_el$2, _$createComponent(Show, {
|
|
238
260
|
get when() {
|
|
239
261
|
return actions();
|
|
240
262
|
},
|
|
241
263
|
get children() {
|
|
242
|
-
var _el$
|
|
243
|
-
_$insert(_el$
|
|
244
|
-
return _el$
|
|
264
|
+
var _el$9 = _$getNextElement(_tmpl$3);
|
|
265
|
+
_$insert(_el$9, actions);
|
|
266
|
+
return _el$9;
|
|
245
267
|
}
|
|
246
|
-
}), _el$
|
|
268
|
+
}), _el$11, _co$3);
|
|
247
269
|
return _el$2;
|
|
248
270
|
})();
|
|
249
271
|
}
|
|
@@ -334,14 +356,37 @@ function AppWorkspaceMain(props) {
|
|
|
334
356
|
// layout. Deriving it from `regions()` made a workspace whose panes are all
|
|
335
357
|
// closed fall back to `resolved()`, which renders the raw slot objects.
|
|
336
358
|
const hasPanes = createMemo(() => paneIds().length > 0);
|
|
337
|
-
|
|
338
|
-
|
|
359
|
+
// The workspace's tracks and queries read Main's minimum on the workspace
|
|
360
|
+
// itself, which cannot read Main's own variables, so this rule hands it up,
|
|
361
|
+
// as `AppWorkspace.Detail` does with its width.
|
|
362
|
+
const minWidth = () => {
|
|
363
|
+
const value = props.minWidth;
|
|
364
|
+
return value !== undefined && Number.isFinite(value) && value > APP_WORKSPACE_MAIN_MIN ? Math.round(value) : undefined;
|
|
365
|
+
};
|
|
366
|
+
const minWidthRule = value => {
|
|
367
|
+
const main = `.k2b-app-workspace__main[data-workspace-main-min="${value}"]`;
|
|
368
|
+
return `.k2b-app-workspace:has(> .k2b-app-workspace__content > ${main}, > .k2b-app-workspace__content > :is(solid-island, solid-client) > ${main}){--k2b-workspace-main-min:${value}px}`;
|
|
369
|
+
};
|
|
370
|
+
return [_$createComponent(Show, {
|
|
371
|
+
get when() {
|
|
372
|
+
return minWidth();
|
|
373
|
+
},
|
|
374
|
+
children: value => (() => {
|
|
375
|
+
var _el$13 = _$getNextElement(_tmpl$6);
|
|
376
|
+
_$effect(() => _$setProperty(_el$13, "innerHTML", minWidthRule(value())));
|
|
377
|
+
return _el$13;
|
|
378
|
+
})()
|
|
379
|
+
}), (() => {
|
|
380
|
+
var _el$12 = _$getNextElement(_tmpl$5);
|
|
339
381
|
var _ref$ = mainElement;
|
|
340
|
-
typeof _ref$ === "function" ? _$use(_ref$, _el$
|
|
341
|
-
_$spread(_el$
|
|
382
|
+
typeof _ref$ === "function" ? _$use(_ref$, _el$12) : mainElement = _el$12;
|
|
383
|
+
_$spread(_el$12, _$mergeProps({
|
|
342
384
|
get ["class"]() {
|
|
343
385
|
return `k2b-app-workspace__main ${hasPanes() ? "has-panes" : ""} ${props.class ?? ""}`;
|
|
344
386
|
},
|
|
387
|
+
get ["data-workspace-main-min"]() {
|
|
388
|
+
return minWidth();
|
|
389
|
+
},
|
|
345
390
|
get ["data-workspace-levels"]() {
|
|
346
391
|
return levelsMode() ? "" : undefined;
|
|
347
392
|
},
|
|
@@ -364,7 +409,7 @@ function AppWorkspaceMain(props) {
|
|
|
364
409
|
return props["aria-busy"];
|
|
365
410
|
}
|
|
366
411
|
}, () => scrollAttrs(props.scrollPreserveKey)), false, true);
|
|
367
|
-
_$insert(_el$
|
|
412
|
+
_$insert(_el$12, _$createComponent(Show, {
|
|
368
413
|
get when() {
|
|
369
414
|
return hasPanes();
|
|
370
415
|
},
|
|
@@ -383,10 +428,10 @@ function AppWorkspaceMain(props) {
|
|
|
383
428
|
};
|
|
384
429
|
if (region.type === "primary") {
|
|
385
430
|
return (() => {
|
|
386
|
-
var _el$
|
|
387
|
-
_$insert(_el$
|
|
388
|
-
_$effect(() => _$setAttribute(_el$
|
|
389
|
-
return _el$
|
|
431
|
+
var _el$14 = _$getNextElement(_tmpl$7);
|
|
432
|
+
_$insert(_el$14, () => region.children);
|
|
433
|
+
_$effect(() => _$setAttribute(_el$14, "data-workspace-mobile-active", activeMobilePane() === "main" ? "true" : "false"));
|
|
434
|
+
return _el$14;
|
|
390
435
|
})();
|
|
391
436
|
}
|
|
392
437
|
const pane = region.slot;
|
|
@@ -441,9 +486,9 @@ function AppWorkspaceMain(props) {
|
|
|
441
486
|
return handle();
|
|
442
487
|
}
|
|
443
488
|
}), (() => {
|
|
444
|
-
var _el$
|
|
445
|
-
_$setAttribute(_el$
|
|
446
|
-
_$insert(_el$
|
|
489
|
+
var _el$15 = _$getNextElement(_tmpl$8);
|
|
490
|
+
_$setAttribute(_el$15, "data-workspace-panel-id", panelId);
|
|
491
|
+
_$insert(_el$15, (() => {
|
|
447
492
|
var _c$ = _$memo(() => !!levelsMode());
|
|
448
493
|
return () => _c$() ? [_$createComponent(LevelHead, {
|
|
449
494
|
get label() {
|
|
@@ -478,26 +523,26 @@ function AppWorkspaceMain(props) {
|
|
|
478
523
|
return props.onLevelNavigate ? navigateBack : undefined;
|
|
479
524
|
},
|
|
480
525
|
get children() {
|
|
481
|
-
return _$getNextElement(_tmpl$
|
|
526
|
+
return _$getNextElement(_tmpl$9);
|
|
482
527
|
}
|
|
483
528
|
});
|
|
484
529
|
}
|
|
485
530
|
});
|
|
486
531
|
}
|
|
487
532
|
}), (() => {
|
|
488
|
-
var _el$
|
|
489
|
-
_$insert(_el$
|
|
533
|
+
var _el$17 = _$getNextElement(_tmpl$0);
|
|
534
|
+
_$insert(_el$17, () => pane.props.children);
|
|
490
535
|
_$effect(_p$ => {
|
|
491
536
|
var _v$28 = pane.props.scroll === false ? "false" : undefined,
|
|
492
537
|
_v$29 = pane.props.scroll !== false && pane.props.scrollFade !== false ? "both" : undefined;
|
|
493
|
-
_v$28 !== _p$.e && _$setAttribute(_el$
|
|
494
|
-
_v$29 !== _p$.t && _$setAttribute(_el$
|
|
538
|
+
_v$28 !== _p$.e && _$setAttribute(_el$17, "data-scroll", _p$.e = _v$28);
|
|
539
|
+
_v$29 !== _p$.t && _$setAttribute(_el$17, "data-scroll-fade-mode", _p$.t = _v$29);
|
|
495
540
|
return _p$;
|
|
496
541
|
}, {
|
|
497
542
|
e: undefined,
|
|
498
543
|
t: undefined
|
|
499
544
|
});
|
|
500
|
-
return _el$
|
|
545
|
+
return _el$17;
|
|
501
546
|
})()] : pane.props.children;
|
|
502
547
|
})());
|
|
503
548
|
_$effect(_p$ => {
|
|
@@ -519,20 +564,20 @@ function AppWorkspaceMain(props) {
|
|
|
519
564
|
"--k2b-workspace-panel-size": `clamp(${minSize()}px, var(${variable}, ${defaultSize()}px), ${maxSize()}px)`,
|
|
520
565
|
"--k2b-workspace-panel-min": `${minSize()}px`
|
|
521
566
|
};
|
|
522
|
-
_v$14 !== _p$.e && _$setAttribute(_el$
|
|
523
|
-
_v$15 !== _p$.t && _$className(_el$
|
|
524
|
-
_v$16 !== _p$.a && _$setAttribute(_el$
|
|
525
|
-
_v$17 !== _p$.o && _$setAttribute(_el$
|
|
526
|
-
_v$18 !== _p$.i && _$setAttribute(_el$
|
|
527
|
-
_v$19 !== _p$.n && _$setAttribute(_el$
|
|
528
|
-
_v$20 !== _p$.s && _$setAttribute(_el$
|
|
529
|
-
_v$21 !== _p$.h && _$setAttribute(_el$
|
|
530
|
-
_v$22 !== _p$.r && _$setAttribute(_el$
|
|
531
|
-
_v$23 !== _p$.d && _$setAttribute(_el$
|
|
532
|
-
_v$24 !== _p$.l && _$setAttribute(_el$
|
|
533
|
-
_v$25 !== _p$.u && _$setAttribute(_el$
|
|
534
|
-
_v$26 !== _p$.c && _$setAttribute(_el$
|
|
535
|
-
_p$.w = _$style(_el$
|
|
567
|
+
_v$14 !== _p$.e && _$setAttribute(_el$15, "id", _p$.e = _v$14);
|
|
568
|
+
_v$15 !== _p$.t && _$className(_el$15, _p$.t = _v$15);
|
|
569
|
+
_v$16 !== _p$.a && _$setAttribute(_el$15, "aria-label", _p$.a = _v$16);
|
|
570
|
+
_v$17 !== _p$.o && _$setAttribute(_el$15, "data-workspace-level", _p$.o = _v$17);
|
|
571
|
+
_v$18 !== _p$.i && _$setAttribute(_el$15, "data-workspace-level-shown", _p$.i = _v$18);
|
|
572
|
+
_v$19 !== _p$.n && _$setAttribute(_el$15, "data-workspace-level-first", _p$.n = _v$19);
|
|
573
|
+
_v$20 !== _p$.s && _$setAttribute(_el$15, "data-workspace-level-last", _p$.s = _v$20);
|
|
574
|
+
_v$21 !== _p$.h && _$setAttribute(_el$15, "data-workspace-main-region", _p$.h = _v$21);
|
|
575
|
+
_v$22 !== _p$.r && _$setAttribute(_el$15, "data-workspace-mobile-active", _p$.r = _v$22);
|
|
576
|
+
_v$23 !== _p$.d && _$setAttribute(_el$15, "data-workspace-resizable", _p$.d = _v$23);
|
|
577
|
+
_v$24 !== _p$.l && _$setAttribute(_el$15, "data-surface", _p$.l = _v$24);
|
|
578
|
+
_v$25 !== _p$.u && _$setAttribute(_el$15, "data-scroll", _p$.u = _v$25);
|
|
579
|
+
_v$26 !== _p$.c && _$setAttribute(_el$15, "data-scroll-fade-mode", _p$.c = _v$26);
|
|
580
|
+
_p$.w = _$style(_el$15, _v$27, _p$.w);
|
|
536
581
|
return _p$;
|
|
537
582
|
}, {
|
|
538
583
|
e: undefined,
|
|
@@ -550,7 +595,7 @@ function AppWorkspaceMain(props) {
|
|
|
550
595
|
c: undefined,
|
|
551
596
|
w: undefined
|
|
552
597
|
});
|
|
553
|
-
return _el$
|
|
598
|
+
return _el$15;
|
|
554
599
|
})(), _$createComponent(Show, {
|
|
555
600
|
get when() {
|
|
556
601
|
return _$memo(() => !!resizable())() && before();
|
|
@@ -566,8 +611,8 @@ function AppWorkspaceMain(props) {
|
|
|
566
611
|
}
|
|
567
612
|
}));
|
|
568
613
|
_$runHydrationEvents();
|
|
569
|
-
return _el$
|
|
570
|
-
})();
|
|
614
|
+
return _el$12;
|
|
615
|
+
})()];
|
|
571
616
|
}
|
|
572
617
|
function AppWorkspaceDetail(props) {
|
|
573
618
|
const workspaceMessages = useWorkspaceMessages();
|
|
@@ -618,10 +663,22 @@ function AppWorkspaceDetail(props) {
|
|
|
618
663
|
});
|
|
619
664
|
});
|
|
620
665
|
return [(() => {
|
|
621
|
-
var _el$
|
|
622
|
-
_$effect(() => _$setProperty(_el$
|
|
623
|
-
return _el$
|
|
624
|
-
})(), _$createComponent(
|
|
666
|
+
var _el$18 = _$getNextElement(_tmpl$6);
|
|
667
|
+
_$effect(() => _$setProperty(_el$18, "innerHTML", workspaceRule()));
|
|
668
|
+
return _el$18;
|
|
669
|
+
})(), _$createComponent(Button, {
|
|
670
|
+
type: "button",
|
|
671
|
+
variant: "ghost",
|
|
672
|
+
get ["aria-controls"]() {
|
|
673
|
+
return domId();
|
|
674
|
+
},
|
|
675
|
+
"aria-expanded": "false",
|
|
676
|
+
"data-app-workspace-detail-toggle": "",
|
|
677
|
+
"class": "k2b-app-workspace__detail-toggle",
|
|
678
|
+
get children() {
|
|
679
|
+
return [_$getNextElement(_tmpl$1), _$memo(() => workspaceMessages().details)];
|
|
680
|
+
}
|
|
681
|
+
}), _$createComponent(Show, {
|
|
625
682
|
get when() {
|
|
626
683
|
return resizable();
|
|
627
684
|
},
|
|
@@ -650,39 +707,41 @@ function AppWorkspaceDetail(props) {
|
|
|
650
707
|
});
|
|
651
708
|
}
|
|
652
709
|
}), (() => {
|
|
653
|
-
var _el$
|
|
654
|
-
_el$
|
|
655
|
-
_el$
|
|
656
|
-
[_el$
|
|
710
|
+
var _el$20 = _$getNextElement(_tmpl$10),
|
|
711
|
+
_el$21 = _el$20.firstChild,
|
|
712
|
+
_el$22 = _el$21.nextSibling,
|
|
713
|
+
[_el$23, _co$4] = _$getNextMarker(_el$22.nextSibling);
|
|
657
714
|
var _ref$2 = aside;
|
|
658
|
-
typeof _ref$2 === "function" ? _$use(_ref$2, _el$
|
|
659
|
-
_$insert(_el$
|
|
715
|
+
typeof _ref$2 === "function" ? _$use(_ref$2, _el$20) : aside = _el$20;
|
|
716
|
+
_$insert(_el$20, () => props.children, _el$23, _co$4);
|
|
660
717
|
_$effect(_p$ => {
|
|
661
718
|
var _v$30 = domId(),
|
|
662
719
|
_v$31 = `k2b-app-workspace__detail ${props.class ?? ""}`,
|
|
663
720
|
_v$32 = props.width ?? "md",
|
|
664
721
|
_v$33 = props.phone === "page" ? "page" : undefined,
|
|
665
|
-
_v$34 =
|
|
666
|
-
_v$35 =
|
|
667
|
-
_v$36 =
|
|
668
|
-
_v$37 = props.
|
|
669
|
-
_v$38 =
|
|
670
|
-
_v$39 =
|
|
722
|
+
_v$34 = props.openOnChoice === false ? "request" : undefined,
|
|
723
|
+
_v$35 = panelId(),
|
|
724
|
+
_v$36 = resizable() ? "true" : "false",
|
|
725
|
+
_v$37 = props.onClose ? "true" : undefined,
|
|
726
|
+
_v$38 = props.onStep ? "true" : undefined,
|
|
727
|
+
_v$39 = !props.open,
|
|
728
|
+
_v$40 = {
|
|
671
729
|
...sizeStyle(),
|
|
672
730
|
"view-transition-name": props.viewTransitionName
|
|
673
731
|
},
|
|
674
|
-
_v$
|
|
675
|
-
_v$30 !== _p$.e && _$setAttribute(_el$
|
|
676
|
-
_v$31 !== _p$.t && _$className(_el$
|
|
677
|
-
_v$32 !== _p$.a && _$setAttribute(_el$
|
|
678
|
-
_v$33 !== _p$.o && _$setAttribute(_el$
|
|
679
|
-
_v$34 !== _p$.i && _$setAttribute(_el$
|
|
680
|
-
_v$35 !== _p$.n && _$setAttribute(_el$
|
|
681
|
-
_v$36 !== _p$.s && _$setAttribute(_el$
|
|
682
|
-
_v$37 !== _p$.h && _$setAttribute(_el$
|
|
683
|
-
_v$38 !== _p$.r && _$
|
|
684
|
-
_p$.d
|
|
685
|
-
|
|
732
|
+
_v$41 = workspaceMessages().detailFullHeight;
|
|
733
|
+
_v$30 !== _p$.e && _$setAttribute(_el$20, "id", _p$.e = _v$30);
|
|
734
|
+
_v$31 !== _p$.t && _$className(_el$20, _p$.t = _v$31);
|
|
735
|
+
_v$32 !== _p$.a && _$setAttribute(_el$20, "data-width", _p$.a = _v$32);
|
|
736
|
+
_v$33 !== _p$.o && _$setAttribute(_el$20, "data-workspace-detail-phone", _p$.o = _v$33);
|
|
737
|
+
_v$34 !== _p$.i && _$setAttribute(_el$20, "data-workspace-detail-choice", _p$.i = _v$34);
|
|
738
|
+
_v$35 !== _p$.n && _$setAttribute(_el$20, "data-workspace-panel-id", _p$.n = _v$35);
|
|
739
|
+
_v$36 !== _p$.s && _$setAttribute(_el$20, "data-workspace-resizable", _p$.s = _v$36);
|
|
740
|
+
_v$37 !== _p$.h && _$setAttribute(_el$20, "data-workspace-detail-closable", _p$.h = _v$37);
|
|
741
|
+
_v$38 !== _p$.r && _$setAttribute(_el$20, "data-workspace-detail-steppable", _p$.r = _v$38);
|
|
742
|
+
_v$39 !== _p$.d && _$setProperty(_el$20, "hidden", _p$.d = _v$39);
|
|
743
|
+
_p$.l = _$style(_el$20, _v$40, _p$.l);
|
|
744
|
+
_v$41 !== _p$.u && _$setAttribute(_el$21, "aria-label", _p$.u = _v$41);
|
|
686
745
|
return _p$;
|
|
687
746
|
}, {
|
|
688
747
|
e: undefined,
|
|
@@ -695,9 +754,10 @@ function AppWorkspaceDetail(props) {
|
|
|
695
754
|
h: undefined,
|
|
696
755
|
r: undefined,
|
|
697
756
|
d: undefined,
|
|
698
|
-
l: undefined
|
|
757
|
+
l: undefined,
|
|
758
|
+
u: undefined
|
|
699
759
|
});
|
|
700
|
-
return _el$
|
|
760
|
+
return _el$20;
|
|
701
761
|
})()];
|
|
702
762
|
}
|
|
703
763
|
function AppWorkspaceBottomDrawer(props) {
|
|
@@ -747,25 +807,25 @@ function AppWorkspaceBottomDrawer(props) {
|
|
|
747
807
|
});
|
|
748
808
|
}
|
|
749
809
|
}), (() => {
|
|
750
|
-
var _el$
|
|
751
|
-
_$insert(_el$
|
|
810
|
+
var _el$24 = _$getNextElement(_tmpl$11);
|
|
811
|
+
_$insert(_el$24, () => props.children);
|
|
752
812
|
_$effect(_p$ => {
|
|
753
|
-
var _v$
|
|
754
|
-
_v$
|
|
755
|
-
_v$
|
|
756
|
-
_v$
|
|
757
|
-
_v$
|
|
758
|
-
_v$
|
|
759
|
-
_v$
|
|
760
|
-
_v$
|
|
761
|
-
_v$
|
|
762
|
-
_v$
|
|
763
|
-
_v$
|
|
764
|
-
_v$
|
|
765
|
-
_v$
|
|
766
|
-
_v$
|
|
767
|
-
_v$
|
|
768
|
-
_v$
|
|
813
|
+
var _v$42 = domId(),
|
|
814
|
+
_v$43 = `k2b-app-workspace__drawer ${props.class ?? ""}`,
|
|
815
|
+
_v$44 = props.height ?? "md",
|
|
816
|
+
_v$45 = panelId(),
|
|
817
|
+
_v$46 = resizable() ? "true" : "false",
|
|
818
|
+
_v$47 = !props.open,
|
|
819
|
+
_v$48 = `var(${variable()}, ${defaultHeight()}px)`,
|
|
820
|
+
_v$49 = props.viewTransitionName;
|
|
821
|
+
_v$42 !== _p$.e && _$setAttribute(_el$24, "id", _p$.e = _v$42);
|
|
822
|
+
_v$43 !== _p$.t && _$className(_el$24, _p$.t = _v$43);
|
|
823
|
+
_v$44 !== _p$.a && _$setAttribute(_el$24, "data-height", _p$.a = _v$44);
|
|
824
|
+
_v$45 !== _p$.o && _$setAttribute(_el$24, "data-workspace-panel-id", _p$.o = _v$45);
|
|
825
|
+
_v$46 !== _p$.i && _$setAttribute(_el$24, "data-workspace-resizable", _p$.i = _v$46);
|
|
826
|
+
_v$47 !== _p$.n && _$setProperty(_el$24, "hidden", _p$.n = _v$47);
|
|
827
|
+
_v$48 !== _p$.s && _$setStyleProperty(_el$24, "--k2b-workspace-panel-size", _p$.s = _v$48);
|
|
828
|
+
_v$49 !== _p$.h && _$setStyleProperty(_el$24, "view-transition-name", _p$.h = _v$49);
|
|
769
829
|
return _p$;
|
|
770
830
|
}, {
|
|
771
831
|
e: undefined,
|
|
@@ -777,7 +837,7 @@ function AppWorkspaceBottomDrawer(props) {
|
|
|
777
837
|
s: undefined,
|
|
778
838
|
h: undefined
|
|
779
839
|
});
|
|
780
|
-
return _el$
|
|
840
|
+
return _el$24;
|
|
781
841
|
})()];
|
|
782
842
|
}
|
|
783
843
|
function AppWorkspaceSidebar(props) {
|
|
@@ -796,56 +856,210 @@ function AppWorkspaceSidebar(props) {
|
|
|
796
856
|
const resolved = children(() => props.hidden ? undefined : props.children);
|
|
797
857
|
const slots = createMemo(() => flatten(resolved()).filter(sidebarChildSlot));
|
|
798
858
|
const desktop = createMemo(() => slots().find(slot => slot.kind === SIDEBAR_DESKTOP));
|
|
859
|
+
const stacked = () => props.mobile === "stacked";
|
|
860
|
+
const workspaceMessages = useWorkspaceMessages();
|
|
861
|
+
const owner = getOwner();
|
|
862
|
+
const [sheetOpen, setSheetOpen] = createSignal(false);
|
|
799
863
|
let aside;
|
|
864
|
+
let row;
|
|
865
|
+
// Fades mark the row's cut edges; the sidebar column never scrolls sideways, so it never shows one.
|
|
866
|
+
createScrollFade(() => row, () => stacked());
|
|
800
867
|
onMount(() => {
|
|
801
868
|
const requestHide = () => props.onHiddenChange?.(true);
|
|
802
869
|
aside?.addEventListener(APP_WORKSPACE_SIDEBAR_HIDE_EVENT, requestHide);
|
|
803
870
|
onCleanup(() => aside?.removeEventListener(APP_WORKSPACE_SIDEBAR_HIDE_EVENT, requestHide));
|
|
871
|
+
// A client-rendered row settles here; server markup settled in its inline script.
|
|
872
|
+
if (stacked() && row) settleChipRow(row, scrollFadeEdges);
|
|
804
873
|
});
|
|
805
|
-
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
874
|
+
/**
|
|
875
|
+
* The complete sidebar for a chip row: a second rendering of the same
|
|
876
|
+
* children in a sheet. It shares the application's state through its
|
|
877
|
+
* signals, inherits this sidebar's context and accent, and is disposed with
|
|
878
|
+
* the sheet. A chosen link runs its own handlers in the sheet and closes it.
|
|
879
|
+
*/
|
|
880
|
+
const openAll = button => {
|
|
881
|
+
if (sheetOpen() || !aside) return;
|
|
882
|
+
setSheetOpen(true);
|
|
883
|
+
const computed = getComputedStyle(aside);
|
|
884
|
+
const accent = Object.fromEntries(["--k2b-app-workspace-active", "--k2b-app-workspace-selected", "--k2b-link-accent", "--k2b-detail-panel-accent"].map(name => [name, computed.getPropertyValue(name).trim()]).filter(([, value]) => value));
|
|
885
|
+
// The sheet belongs to the chip row: when the workspace widens into the sidebar column, All disappears and the sheet closes.
|
|
886
|
+
const leave = new AbortController();
|
|
887
|
+
const watch = new ResizeObserver(() => {
|
|
888
|
+
if (button.getClientRects().length === 0) leave.abort();
|
|
889
|
+
});
|
|
890
|
+
watch.observe(button);
|
|
891
|
+
/** A chosen link closes the sheet once its own handlers ran, an enhanced navigation's included. */
|
|
892
|
+
const choose = (event, close) => {
|
|
893
|
+
const target = event.target;
|
|
894
|
+
if (!target?.closest?.("a[href]")) return;
|
|
895
|
+
if (event.button !== 0 || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey) return;
|
|
896
|
+
// A tree branch's disclosure inside its link only expands the branch.
|
|
897
|
+
if (target.closest("[data-k2b-nav-tree-toggle]")) return;
|
|
898
|
+
// A task, not a microtask: the document's delegated handlers run later in this dispatch.
|
|
899
|
+
setTimeout(close);
|
|
900
|
+
};
|
|
901
|
+
void dialogCore.open((close, context) => {
|
|
902
|
+
let dispose;
|
|
903
|
+
const view = createRoot(disposeRoot => {
|
|
904
|
+
dispose = disposeRoot;
|
|
905
|
+
return _$createComponent(BottomSheet, {
|
|
906
|
+
get onDismiss() {
|
|
907
|
+
return context.requestDismiss;
|
|
908
|
+
},
|
|
909
|
+
get children() {
|
|
910
|
+
return [_$createComponent(BottomSheet.Header, {
|
|
911
|
+
get title() {
|
|
912
|
+
return props.label;
|
|
913
|
+
},
|
|
914
|
+
close: () => void context.requestDismiss()
|
|
915
|
+
}), _$createComponent(BottomSheet.Body, {
|
|
916
|
+
get children() {
|
|
917
|
+
return _$createComponent(RenderErrorBoundary, {
|
|
918
|
+
onClose: () => void context.requestDismiss(),
|
|
919
|
+
content: () => {
|
|
920
|
+
const resolved = children(() => flatten(props.hidden ? undefined : props.children).filter(sidebarChildSlot).find(slot => slot.kind === SIDEBAR_DESKTOP)?.children);
|
|
921
|
+
// Pre-resolved children belong to the row; inserting them here would move its nodes into the sheet.
|
|
922
|
+
if (resolved.toArray().some(node => node instanceof Node && aside?.contains(node))) {
|
|
923
|
+
console.error("AppWorkspace.Sidebar: write the sidebar children as JSX inside AppWorkspace.Sidebar so they can render a second time in the All sheet; pre-resolved children cannot be reused.");
|
|
924
|
+
return null;
|
|
925
|
+
}
|
|
926
|
+
return (() => {
|
|
927
|
+
var _el$25 = _$getNextElement(_tmpl$12);
|
|
928
|
+
_$addEventListener(_el$25, "click", event => choose(event, () => close()));
|
|
929
|
+
_$insert(_el$25, resolved);
|
|
930
|
+
_$effect(_p$ => {
|
|
931
|
+
var _v$50 = props.label,
|
|
932
|
+
_v$51 = accent;
|
|
933
|
+
_v$50 !== _p$.e && _$setAttribute(_el$25, "aria-label", _p$.e = _v$50);
|
|
934
|
+
_p$.t = _$style(_el$25, _v$51, _p$.t);
|
|
935
|
+
return _p$;
|
|
936
|
+
}, {
|
|
937
|
+
e: undefined,
|
|
938
|
+
t: undefined
|
|
939
|
+
});
|
|
940
|
+
return _el$25;
|
|
941
|
+
})();
|
|
942
|
+
}
|
|
943
|
+
});
|
|
944
|
+
}
|
|
945
|
+
})];
|
|
946
|
+
}
|
|
947
|
+
});
|
|
948
|
+
}, owner);
|
|
949
|
+
onCleanup(() => dispose?.());
|
|
950
|
+
return view;
|
|
951
|
+
},
|
|
952
|
+
// No history entry: an application may replace the URL from inside the sidebar, such as a search, and an
|
|
953
|
+
// entry of the sheet would then outlive it. So Back leaves the page here, unlike other phone sheets.
|
|
954
|
+
{
|
|
955
|
+
...bottomSheetAdaptiveOptions,
|
|
956
|
+
ariaLabel: props.label,
|
|
957
|
+
signal: leave.signal
|
|
958
|
+
}).finally(() => {
|
|
959
|
+
watch.disconnect();
|
|
960
|
+
setSheetOpen(false);
|
|
961
|
+
if (button.isConnected && !aside?.contains(document.activeElement)) {
|
|
962
|
+
if (button.getClientRects().length) button.focus({
|
|
963
|
+
preventScroll: true
|
|
964
|
+
});else {
|
|
965
|
+
const current = aside?.querySelector("[aria-current], .k2b-app-workspace__sidebar-item.is-active");
|
|
966
|
+
const link = current?.matches("a[href]") ? current : current?.querySelector("a[href]");
|
|
967
|
+
(link ?? aside?.querySelector("a[href]"))?.focus({
|
|
968
|
+
preventScroll: true
|
|
969
|
+
});
|
|
970
|
+
}
|
|
817
971
|
}
|
|
818
|
-
}));
|
|
819
|
-
_$effect(_p$ => {
|
|
820
|
-
var _v$49 = domId(),
|
|
821
|
-
_v$50 = `k2b-app-workspace__sidebar ${props.class ?? ""}`,
|
|
822
|
-
_v$51 = props.label,
|
|
823
|
-
_v$52 = props.hidden || undefined,
|
|
824
|
-
_v$53 = props.mobile === "stacked" ? "stacked" : undefined,
|
|
825
|
-
_v$54 = resizable() ? "true" : "false",
|
|
826
|
-
_v$55 = props.collapsible ? "true" : "false",
|
|
827
|
-
_v$56 = props.onHiddenChange ? "true" : undefined;
|
|
828
|
-
_v$49 !== _p$.e && _$setAttribute(_el$22, "id", _p$.e = _v$49);
|
|
829
|
-
_v$50 !== _p$.t && _$className(_el$22, _p$.t = _v$50);
|
|
830
|
-
_v$51 !== _p$.a && _$setAttribute(_el$22, "aria-label", _p$.a = _v$51);
|
|
831
|
-
_v$52 !== _p$.o && _$setProperty(_el$22, "hidden", _p$.o = _v$52);
|
|
832
|
-
_v$53 !== _p$.i && _$setAttribute(_el$22, "data-mobile", _p$.i = _v$53);
|
|
833
|
-
_v$54 !== _p$.n && _$setAttribute(_el$22, "data-workspace-resizable", _p$.n = _v$54);
|
|
834
|
-
_v$55 !== _p$.s && _$setAttribute(_el$22, "data-workspace-collapsible", _p$.s = _v$55);
|
|
835
|
-
_v$56 !== _p$.h && _$setAttribute(_el$22, "data-workspace-hideable", _p$.h = _v$56);
|
|
836
|
-
return _p$;
|
|
837
|
-
}, {
|
|
838
|
-
e: undefined,
|
|
839
|
-
t: undefined,
|
|
840
|
-
a: undefined,
|
|
841
|
-
o: undefined,
|
|
842
|
-
i: undefined,
|
|
843
|
-
n: undefined,
|
|
844
|
-
s: undefined,
|
|
845
|
-
h: undefined
|
|
846
972
|
});
|
|
847
|
-
|
|
848
|
-
|
|
973
|
+
};
|
|
974
|
+
return [_$createComponent(Dynamic, {
|
|
975
|
+
get component() {
|
|
976
|
+
return stacked() ? "nav" : "aside";
|
|
977
|
+
},
|
|
978
|
+
ref(r$) {
|
|
979
|
+
var _ref$3 = aside;
|
|
980
|
+
typeof _ref$3 === "function" ? _ref$3(r$) : aside = r$;
|
|
981
|
+
},
|
|
982
|
+
get id() {
|
|
983
|
+
return domId();
|
|
984
|
+
},
|
|
985
|
+
get ["class"]() {
|
|
986
|
+
return `k2b-app-workspace__sidebar ${props.class ?? ""}`;
|
|
987
|
+
},
|
|
988
|
+
get ["aria-label"]() {
|
|
989
|
+
return props.label;
|
|
990
|
+
},
|
|
991
|
+
get hidden() {
|
|
992
|
+
return props.hidden || undefined;
|
|
993
|
+
},
|
|
994
|
+
get ["data-mobile"]() {
|
|
995
|
+
return stacked() ? "stacked" : undefined;
|
|
996
|
+
},
|
|
997
|
+
get ["data-workspace-resizable"]() {
|
|
998
|
+
return resizable() ? "true" : "false";
|
|
999
|
+
},
|
|
1000
|
+
get ["data-workspace-collapsible"]() {
|
|
1001
|
+
return props.collapsible ? "true" : "false";
|
|
1002
|
+
},
|
|
1003
|
+
get ["data-workspace-hideable"]() {
|
|
1004
|
+
return props.onHiddenChange ? "true" : undefined;
|
|
1005
|
+
},
|
|
1006
|
+
get children() {
|
|
1007
|
+
return _$createComponent(Show, {
|
|
1008
|
+
get when() {
|
|
1009
|
+
return !props.hidden;
|
|
1010
|
+
},
|
|
1011
|
+
get children() {
|
|
1012
|
+
return [(() => {
|
|
1013
|
+
var _el$26 = _$getNextElement(_tmpl$13);
|
|
1014
|
+
var _ref$4 = row;
|
|
1015
|
+
typeof _ref$4 === "function" ? _$use(_ref$4, _el$26) : row = _el$26;
|
|
1016
|
+
_$insert(_el$26, () => desktop()?.children);
|
|
1017
|
+
_$effect(_p$ => {
|
|
1018
|
+
var _v$52 = stacked() ? "both" : undefined,
|
|
1019
|
+
_v$53 = stacked() ? "horizontal" : undefined;
|
|
1020
|
+
_v$52 !== _p$.e && _$setAttribute(_el$26, "data-scroll-fade-mode", _p$.e = _v$52);
|
|
1021
|
+
_v$53 !== _p$.t && _$setAttribute(_el$26, "data-scroll-fade-axis", _p$.t = _v$53);
|
|
1022
|
+
return _p$;
|
|
1023
|
+
}, {
|
|
1024
|
+
e: undefined,
|
|
1025
|
+
t: undefined
|
|
1026
|
+
});
|
|
1027
|
+
return _el$26;
|
|
1028
|
+
})(), _$createComponent(Show, {
|
|
1029
|
+
get when() {
|
|
1030
|
+
return stacked();
|
|
1031
|
+
},
|
|
1032
|
+
get children() {
|
|
1033
|
+
return [(() => {
|
|
1034
|
+
var _el$27 = _$getNextElement(_tmpl$14),
|
|
1035
|
+
_el$28 = _el$27.firstChild;
|
|
1036
|
+
_el$27.$$click = event => openAll(event.currentTarget);
|
|
1037
|
+
_$insert(_el$28, () => workspaceMessages().sidebarAll);
|
|
1038
|
+
_$effect(_p$ => {
|
|
1039
|
+
var _v$54 = sheetOpen(),
|
|
1040
|
+
_v$55 = props.label ? workspaceMessages().sidebarAllLabel({
|
|
1041
|
+
label: props.label
|
|
1042
|
+
}) : undefined;
|
|
1043
|
+
_v$54 !== _p$.e && _$setAttribute(_el$27, "aria-expanded", _p$.e = _v$54);
|
|
1044
|
+
_v$55 !== _p$.t && _$setAttribute(_el$27, "aria-label", _p$.t = _v$55);
|
|
1045
|
+
return _p$;
|
|
1046
|
+
}, {
|
|
1047
|
+
e: undefined,
|
|
1048
|
+
t: undefined
|
|
1049
|
+
});
|
|
1050
|
+
_$runHydrationEvents();
|
|
1051
|
+
return _el$27;
|
|
1052
|
+
})(), (() => {
|
|
1053
|
+
var _el$29 = _$getNextElement(_tmpl$15);
|
|
1054
|
+
_$setProperty(_el$29, "innerHTML", CHIP_ROW_SCRIPT);
|
|
1055
|
+
return _el$29;
|
|
1056
|
+
})()];
|
|
1057
|
+
}
|
|
1058
|
+
})];
|
|
1059
|
+
}
|
|
1060
|
+
});
|
|
1061
|
+
}
|
|
1062
|
+
}), _$createComponent(Show, {
|
|
849
1063
|
get when() {
|
|
850
1064
|
return _$memo(() => !!resizable())() && !props.hidden;
|
|
851
1065
|
},
|
|
@@ -872,6 +1086,29 @@ function AppWorkspaceSidebar(props) {
|
|
|
872
1086
|
}
|
|
873
1087
|
})];
|
|
874
1088
|
}
|
|
1089
|
+
|
|
1090
|
+
/**
|
|
1091
|
+
* A chip row that overflows shows the current object, centered when it is
|
|
1092
|
+
* not in view from the row's start, and fades its cut edges. Self-contained, because the inline script after server markup
|
|
1093
|
+
* embeds its source and runs it before the first paint; at 64 rem the column
|
|
1094
|
+
* does not overflow sideways and nothing changes.
|
|
1095
|
+
*/
|
|
1096
|
+
function settleChipRow(row, edges) {
|
|
1097
|
+
if (!(row instanceof HTMLElement) || row.scrollWidth - row.clientWidth <= 1) return;
|
|
1098
|
+
const current = row.querySelector(".k2b-app-workspace__sidebar-item.is-active, [aria-current]");
|
|
1099
|
+
const chip = current && (current.closest(".k2b-app-workspace__sidebar-item") || current);
|
|
1100
|
+
if (chip) {
|
|
1101
|
+
// From the row's start, whatever scrolled it before (a body's own restore
|
|
1102
|
+
// runs first on the client, last on the server), so both paths agree.
|
|
1103
|
+
row.scrollLeft = 0;
|
|
1104
|
+
const bounds = row.getBoundingClientRect();
|
|
1105
|
+
const item = chip.getBoundingClientRect();
|
|
1106
|
+
if (item.left < bounds.left || item.right > bounds.right) row.scrollLeft += item.left - bounds.left - (bounds.width - item.width) / 2;
|
|
1107
|
+
}
|
|
1108
|
+
const fade = edges(row);
|
|
1109
|
+
if (fade) row.setAttribute("data-scroll-fade", fade);
|
|
1110
|
+
}
|
|
1111
|
+
const CHIP_ROW_SCRIPT = `(${settleChipRow})(document.currentScript&&document.currentScript.parentElement.querySelector(":scope>.k2b-app-workspace__sidebar-desktop"),${scrollFadeEdges})`;
|
|
875
1112
|
const AppWorkspaceSidebarDesktop = props => ({
|
|
876
1113
|
kind: SIDEBAR_DESKTOP,
|
|
877
1114
|
children: props.children
|
|
@@ -890,10 +1127,10 @@ const AppWorkspaceSidebarBody = props => {
|
|
|
890
1127
|
onMount(() => onCleanup(rememberSidebarScroll(body, scrollFadeEdges)));
|
|
891
1128
|
createScrollFade(() => body, () => props.scrollFade !== false);
|
|
892
1129
|
return [(() => {
|
|
893
|
-
var _el$
|
|
894
|
-
var _ref$
|
|
895
|
-
typeof _ref$
|
|
896
|
-
_$spread(_el$
|
|
1130
|
+
var _el$30 = _$getNextElement(_tmpl$5);
|
|
1131
|
+
var _ref$5 = body;
|
|
1132
|
+
typeof _ref$5 === "function" ? _$use(_ref$5, _el$30) : body = _el$30;
|
|
1133
|
+
_$spread(_el$30, _$mergeProps({
|
|
897
1134
|
get ["class"]() {
|
|
898
1135
|
return `k2b-app-workspace__sidebar-body ${props.class ?? ""}`;
|
|
899
1136
|
},
|
|
@@ -901,25 +1138,25 @@ const AppWorkspaceSidebarBody = props => {
|
|
|
901
1138
|
return props.scrollFade !== false ? "both" : undefined;
|
|
902
1139
|
}
|
|
903
1140
|
}, () => scrollAttrs(props.scrollPreserveKey), () => modeAttrs(props.sidebarMode)), false, true);
|
|
904
|
-
_$insert(_el$
|
|
1141
|
+
_$insert(_el$30, () => props.children);
|
|
905
1142
|
_$runHydrationEvents();
|
|
906
|
-
return _el$
|
|
1143
|
+
return _el$30;
|
|
907
1144
|
})(), (() => {
|
|
908
|
-
var _el$
|
|
909
|
-
_$setProperty(_el$
|
|
910
|
-
return _el$
|
|
1145
|
+
var _el$31 = _$getNextElement(_tmpl$15);
|
|
1146
|
+
_$setProperty(_el$31, "innerHTML", SIDEBAR_SCROLL_MEMORY_SCRIPT);
|
|
1147
|
+
return _el$31;
|
|
911
1148
|
})()];
|
|
912
1149
|
};
|
|
913
1150
|
const AppWorkspaceSidebarFooter = props => (() => {
|
|
914
|
-
var _el$
|
|
915
|
-
_$spread(_el$
|
|
1151
|
+
var _el$32 = _$getNextElement(_tmpl$16);
|
|
1152
|
+
_$spread(_el$32, _$mergeProps({
|
|
916
1153
|
get ["class"]() {
|
|
917
1154
|
return `k2b-app-workspace__sidebar-footer ${props.class ?? ""}`;
|
|
918
1155
|
}
|
|
919
1156
|
}, () => modeAttrs(props.sidebarMode)), false, true);
|
|
920
|
-
_$insert(_el$
|
|
1157
|
+
_$insert(_el$32, () => props.children);
|
|
921
1158
|
_$runHydrationEvents();
|
|
922
|
-
return _el$
|
|
1159
|
+
return _el$32;
|
|
923
1160
|
})();
|
|
924
1161
|
const AppWorkspaceSidebarSection = props => {
|
|
925
1162
|
const [expanded, setExpanded] = createSignal(props.defaultOpen ?? true);
|
|
@@ -930,27 +1167,27 @@ const AppWorkspaceSidebarSection = props => {
|
|
|
930
1167
|
return props.icon;
|
|
931
1168
|
},
|
|
932
1169
|
get children() {
|
|
933
|
-
var _el$
|
|
934
|
-
_el$
|
|
935
|
-
_$effect(() => _$className(_el$
|
|
936
|
-
return _el$
|
|
1170
|
+
var _el$33 = _$getNextElement(_tmpl$17),
|
|
1171
|
+
_el$34 = _el$33.firstChild;
|
|
1172
|
+
_$effect(() => _$className(_el$34, iconClass(props.icon)));
|
|
1173
|
+
return _el$33;
|
|
937
1174
|
}
|
|
938
1175
|
}), _$memo(() => props.title), _$createComponent(Show, {
|
|
939
1176
|
get when() {
|
|
940
1177
|
return props.count !== undefined;
|
|
941
1178
|
},
|
|
942
1179
|
get children() {
|
|
943
|
-
var _el$
|
|
944
|
-
_$insert(_el$
|
|
945
|
-
return _el$
|
|
1180
|
+
var _el$35 = _$getNextElement(_tmpl$18);
|
|
1181
|
+
_$insert(_el$35, () => props.count);
|
|
1182
|
+
return _el$35;
|
|
946
1183
|
}
|
|
947
1184
|
})];
|
|
948
1185
|
return (() => {
|
|
949
|
-
var _el$
|
|
950
|
-
_el$
|
|
951
|
-
[_el$
|
|
952
|
-
_el$
|
|
953
|
-
_$spread(_el$
|
|
1186
|
+
var _el$36 = _$getNextElement(_tmpl$22),
|
|
1187
|
+
_el$48 = _el$36.firstChild,
|
|
1188
|
+
[_el$49, _co$8] = _$getNextMarker(_el$48.nextSibling),
|
|
1189
|
+
_el$47 = _el$49.nextSibling;
|
|
1190
|
+
_$spread(_el$36, _$mergeProps({
|
|
954
1191
|
get ["class"]() {
|
|
955
1192
|
return `k2b-app-workspace__sidebar-section ${props.class ?? ""}`;
|
|
956
1193
|
},
|
|
@@ -958,17 +1195,17 @@ const AppWorkspaceSidebarSection = props => {
|
|
|
958
1195
|
return props.collapsible ? "true" : undefined;
|
|
959
1196
|
}
|
|
960
1197
|
}, () => modeAttrs(props.sidebarMode)), false, true);
|
|
961
|
-
_$insert(_el$
|
|
1198
|
+
_$insert(_el$36, _$createComponent(Show, {
|
|
962
1199
|
get when() {
|
|
963
1200
|
return props.title || props.actions;
|
|
964
1201
|
},
|
|
965
1202
|
get children() {
|
|
966
|
-
var _el$
|
|
967
|
-
_el$
|
|
968
|
-
[_el$
|
|
969
|
-
_el$
|
|
970
|
-
[_el$
|
|
971
|
-
_$insert(_el$
|
|
1203
|
+
var _el$37 = _$getNextElement(_tmpl$21),
|
|
1204
|
+
_el$43 = _el$37.firstChild,
|
|
1205
|
+
[_el$44, _co$6] = _$getNextMarker(_el$43.nextSibling),
|
|
1206
|
+
_el$45 = _el$44.nextSibling,
|
|
1207
|
+
[_el$46, _co$7] = _$getNextMarker(_el$45.nextSibling);
|
|
1208
|
+
_$insert(_el$37, _$createComponent(Show, {
|
|
972
1209
|
get when() {
|
|
973
1210
|
return props.collapsible;
|
|
974
1211
|
},
|
|
@@ -978,56 +1215,56 @@ const AppWorkspaceSidebarSection = props => {
|
|
|
978
1215
|
return props.title;
|
|
979
1216
|
},
|
|
980
1217
|
get children() {
|
|
981
|
-
var _el$
|
|
982
|
-
_$insert(_el$
|
|
983
|
-
return _el$
|
|
1218
|
+
var _el$50 = _$getNextElement(_tmpl$23);
|
|
1219
|
+
_$insert(_el$50, title);
|
|
1220
|
+
return _el$50;
|
|
984
1221
|
}
|
|
985
1222
|
});
|
|
986
1223
|
},
|
|
987
1224
|
get children() {
|
|
988
|
-
var _el$
|
|
989
|
-
_el$
|
|
990
|
-
[_el$
|
|
991
|
-
_el$
|
|
992
|
-
_el$
|
|
1225
|
+
var _el$38 = _$getNextElement(_tmpl$19),
|
|
1226
|
+
_el$40 = _el$38.firstChild,
|
|
1227
|
+
[_el$41, _co$5] = _$getNextMarker(_el$40.nextSibling),
|
|
1228
|
+
_el$39 = _el$41.nextSibling;
|
|
1229
|
+
_el$38.$$click = () => {
|
|
993
1230
|
const next = !open();
|
|
994
1231
|
setExpanded(next);
|
|
995
1232
|
props.onOpenChange?.(next);
|
|
996
1233
|
};
|
|
997
|
-
_$setAttribute(_el$
|
|
998
|
-
_$insert(_el$
|
|
1234
|
+
_$setAttribute(_el$38, "aria-controls", id);
|
|
1235
|
+
_$insert(_el$38, title, _el$41, _co$5);
|
|
999
1236
|
_$effect(_p$ => {
|
|
1000
|
-
var _v$
|
|
1001
|
-
_v$
|
|
1002
|
-
_v$
|
|
1003
|
-
_v$
|
|
1237
|
+
var _v$56 = open(),
|
|
1238
|
+
_v$57 = open() ? "ti ti-chevron-down" : "ti ti-chevron-right";
|
|
1239
|
+
_v$56 !== _p$.e && _$setAttribute(_el$38, "aria-expanded", _p$.e = _v$56);
|
|
1240
|
+
_v$57 !== _p$.t && _$className(_el$39, _p$.t = _v$57);
|
|
1004
1241
|
return _p$;
|
|
1005
1242
|
}, {
|
|
1006
1243
|
e: undefined,
|
|
1007
1244
|
t: undefined
|
|
1008
1245
|
});
|
|
1009
1246
|
_$runHydrationEvents();
|
|
1010
|
-
return _el$
|
|
1247
|
+
return _el$38;
|
|
1011
1248
|
}
|
|
1012
|
-
}), _el$
|
|
1013
|
-
_$insert(_el$
|
|
1249
|
+
}), _el$44, _co$6);
|
|
1250
|
+
_$insert(_el$37, _$createComponent(Show, {
|
|
1014
1251
|
get when() {
|
|
1015
1252
|
return props.actions;
|
|
1016
1253
|
},
|
|
1017
1254
|
get children() {
|
|
1018
|
-
var _el$
|
|
1019
|
-
_$insert(_el$
|
|
1020
|
-
return _el$
|
|
1255
|
+
var _el$42 = _$getNextElement(_tmpl$20);
|
|
1256
|
+
_$insert(_el$42, () => props.actions);
|
|
1257
|
+
return _el$42;
|
|
1021
1258
|
}
|
|
1022
|
-
}), _el$
|
|
1023
|
-
return _el$
|
|
1259
|
+
}), _el$46, _co$7);
|
|
1260
|
+
return _el$37;
|
|
1024
1261
|
}
|
|
1025
|
-
}), _el$
|
|
1026
|
-
_$setAttribute(_el$
|
|
1027
|
-
_$insert(_el$
|
|
1028
|
-
_$effect(() => _$setProperty(_el$
|
|
1262
|
+
}), _el$49, _co$8);
|
|
1263
|
+
_$setAttribute(_el$47, "id", id);
|
|
1264
|
+
_$insert(_el$47, () => props.children);
|
|
1265
|
+
_$effect(() => _$setProperty(_el$47, "hidden", !open()));
|
|
1029
1266
|
_$runHydrationEvents();
|
|
1030
|
-
return _el$
|
|
1267
|
+
return _el$36;
|
|
1031
1268
|
})();
|
|
1032
1269
|
};
|
|
1033
1270
|
const AppWorkspaceSidebarItemIcon = props => mergeProps({
|
|
@@ -1043,10 +1280,10 @@ const AppWorkspaceSidebarItemAction = props => mergeProps({
|
|
|
1043
1280
|
kind: SIDEBAR_ITEM_ACTION
|
|
1044
1281
|
}, props);
|
|
1045
1282
|
const AppWorkspaceSidebarItemActions = props => (() => {
|
|
1046
|
-
var _el$
|
|
1047
|
-
_$insert(_el$
|
|
1048
|
-
_$effect(() => _$setAttribute(_el$
|
|
1049
|
-
return _el$
|
|
1283
|
+
var _el$51 = _$getNextElement(_tmpl$24);
|
|
1284
|
+
_$insert(_el$51, () => props.children);
|
|
1285
|
+
_$effect(() => _$setAttribute(_el$51, "data-visibility", props.visibility === "hover" ? "hover" : undefined));
|
|
1286
|
+
return _el$51;
|
|
1050
1287
|
})();
|
|
1051
1288
|
const AppWorkspaceSidebarItemStatus = props => {
|
|
1052
1289
|
const workspaceMessages = useWorkspaceMessages();
|
|
@@ -1064,8 +1301,8 @@ const AppWorkspaceSidebarItemStatus = props => {
|
|
|
1064
1301
|
// space, and it still keeps the row's label on one line, so the first count
|
|
1065
1302
|
// never re-wraps the label and moves the rows below.
|
|
1066
1303
|
return (() => {
|
|
1067
|
-
var _el$
|
|
1068
|
-
_$insert(_el$
|
|
1304
|
+
var _el$52 = _$getNextElement(_tmpl$30);
|
|
1305
|
+
_$insert(_el$52, _$createComponent(Show, {
|
|
1069
1306
|
get when() {
|
|
1070
1307
|
return description();
|
|
1071
1308
|
},
|
|
@@ -1075,18 +1312,18 @@ const AppWorkspaceSidebarItemStatus = props => {
|
|
|
1075
1312
|
return props.mention;
|
|
1076
1313
|
},
|
|
1077
1314
|
get children() {
|
|
1078
|
-
return _$getNextElement(_tmpl$
|
|
1315
|
+
return _$getNextElement(_tmpl$25);
|
|
1079
1316
|
}
|
|
1080
1317
|
}), _$createComponent(Show, {
|
|
1081
1318
|
get when() {
|
|
1082
1319
|
return props.muted;
|
|
1083
1320
|
},
|
|
1084
1321
|
get children() {
|
|
1085
|
-
return _$getNextElement(_tmpl$
|
|
1322
|
+
return _$getNextElement(_tmpl$26);
|
|
1086
1323
|
}
|
|
1087
1324
|
}), (() => {
|
|
1088
|
-
var _el$
|
|
1089
|
-
_$insert(_el$
|
|
1325
|
+
var _el$55 = _$getNextElement(_tmpl$28);
|
|
1326
|
+
_$insert(_el$55, _$createComponent(Show, {
|
|
1090
1327
|
get when() {
|
|
1091
1328
|
return count() || waiting() === 0;
|
|
1092
1329
|
},
|
|
@@ -1096,42 +1333,42 @@ const AppWorkspaceSidebarItemStatus = props => {
|
|
|
1096
1333
|
return dot();
|
|
1097
1334
|
},
|
|
1098
1335
|
get children() {
|
|
1099
|
-
return _$getNextElement(_tmpl$
|
|
1336
|
+
return _$getNextElement(_tmpl$31);
|
|
1100
1337
|
}
|
|
1101
1338
|
});
|
|
1102
1339
|
},
|
|
1103
1340
|
get children() {
|
|
1104
|
-
var _el$
|
|
1105
|
-
_$insert(_el$
|
|
1341
|
+
var _el$56 = _$getNextElement(_tmpl$27);
|
|
1342
|
+
_$insert(_el$56, (() => {
|
|
1106
1343
|
var _c$2 = _$memo(() => count() > 99);
|
|
1107
1344
|
return () => _c$2() ? "99+" : count();
|
|
1108
1345
|
})());
|
|
1109
|
-
_$effect(() => _$setAttribute(_el$
|
|
1110
|
-
return _el$
|
|
1346
|
+
_$effect(() => _$setAttribute(_el$56, "data-mention", props.mention ? "true" : undefined));
|
|
1347
|
+
return _el$56;
|
|
1111
1348
|
}
|
|
1112
1349
|
}));
|
|
1113
|
-
return _el$
|
|
1350
|
+
return _el$55;
|
|
1114
1351
|
})(), (() => {
|
|
1115
|
-
var _el$
|
|
1116
|
-
_el$
|
|
1117
|
-
_el$
|
|
1118
|
-
[_el$
|
|
1119
|
-
_$insert(_el$
|
|
1120
|
-
return _el$
|
|
1352
|
+
var _el$57 = _$getNextElement(_tmpl$29),
|
|
1353
|
+
_el$58 = _el$57.firstChild,
|
|
1354
|
+
_el$59 = _el$58.nextSibling,
|
|
1355
|
+
[_el$60, _co$9] = _$getNextMarker(_el$59.nextSibling);
|
|
1356
|
+
_$insert(_el$57, description, _el$60, _co$9);
|
|
1357
|
+
return _el$57;
|
|
1121
1358
|
})()];
|
|
1122
1359
|
}
|
|
1123
1360
|
}));
|
|
1124
1361
|
_$effect(_p$ => {
|
|
1125
|
-
var _v$
|
|
1126
|
-
_v$
|
|
1127
|
-
_v$
|
|
1128
|
-
_v$
|
|
1362
|
+
var _v$58 = waiting() !== null ? undefined : count() ? "count" : dot() ? "dot" : undefined,
|
|
1363
|
+
_v$59 = waiting() === null ? undefined : waiting() ? "count" : "zero";
|
|
1364
|
+
_v$58 !== _p$.e && _$setAttribute(_el$52, "data-unread", _p$.e = _v$58);
|
|
1365
|
+
_v$59 !== _p$.t && _$setAttribute(_el$52, "data-waiting", _p$.t = _v$59);
|
|
1129
1366
|
return _p$;
|
|
1130
1367
|
}, {
|
|
1131
1368
|
e: undefined,
|
|
1132
1369
|
t: undefined
|
|
1133
1370
|
});
|
|
1134
|
-
return _el$
|
|
1371
|
+
return _el$52;
|
|
1135
1372
|
})();
|
|
1136
1373
|
};
|
|
1137
1374
|
/** Shared visual and semantic row frame for flat sidebar items and tree items. */
|
|
@@ -1159,8 +1396,8 @@ function AppWorkspaceSidebarRow(props) {
|
|
|
1159
1396
|
},
|
|
1160
1397
|
get fallback() {
|
|
1161
1398
|
return (() => {
|
|
1162
|
-
var _el$
|
|
1163
|
-
_$spread(_el$
|
|
1399
|
+
var _el$62 = _$getNextElement(_tmpl$32);
|
|
1400
|
+
_$spread(_el$62, _$mergeProps(attrs, {
|
|
1164
1401
|
get tabIndex() {
|
|
1165
1402
|
return props.tabIndex;
|
|
1166
1403
|
},
|
|
@@ -1171,9 +1408,9 @@ function AppWorkspaceSidebarRow(props) {
|
|
|
1171
1408
|
return props.onClick;
|
|
1172
1409
|
}
|
|
1173
1410
|
}), false, true);
|
|
1174
|
-
_$insert(_el$
|
|
1411
|
+
_$insert(_el$62, () => props.children);
|
|
1175
1412
|
_$runHydrationEvents();
|
|
1176
|
-
return _el$
|
|
1413
|
+
return _el$62;
|
|
1177
1414
|
})();
|
|
1178
1415
|
},
|
|
1179
1416
|
get children() {
|
|
@@ -1183,8 +1420,8 @@ function AppWorkspaceSidebarRow(props) {
|
|
|
1183
1420
|
},
|
|
1184
1421
|
get fallback() {
|
|
1185
1422
|
return (() => {
|
|
1186
|
-
var _el$
|
|
1187
|
-
_$spread(_el$
|
|
1423
|
+
var _el$63 = _$getNextElement(_tmpl$33);
|
|
1424
|
+
_$spread(_el$63, _$mergeProps({
|
|
1188
1425
|
get href() {
|
|
1189
1426
|
return props.href;
|
|
1190
1427
|
}
|
|
@@ -1199,9 +1436,9 @@ function AppWorkspaceSidebarRow(props) {
|
|
|
1199
1436
|
return props.onClick;
|
|
1200
1437
|
}
|
|
1201
1438
|
}), false, true);
|
|
1202
|
-
_$insert(_el$
|
|
1439
|
+
_$insert(_el$63, () => props.children);
|
|
1203
1440
|
_$runHydrationEvents();
|
|
1204
|
-
return _el$
|
|
1441
|
+
return _el$63;
|
|
1205
1442
|
})();
|
|
1206
1443
|
},
|
|
1207
1444
|
get children() {
|
|
@@ -1247,22 +1484,22 @@ function AppWorkspaceSidebarRow(props) {
|
|
|
1247
1484
|
});
|
|
1248
1485
|
},
|
|
1249
1486
|
get children() {
|
|
1250
|
-
var _el$
|
|
1251
|
-
_el$
|
|
1252
|
-
[_el$
|
|
1253
|
-
_el$
|
|
1254
|
-
[_el$
|
|
1255
|
-
_$spread(_el$
|
|
1487
|
+
var _el$64 = _$getNextElement(_tmpl$34),
|
|
1488
|
+
_el$65 = _el$64.firstChild,
|
|
1489
|
+
[_el$66, _co$0] = _$getNextMarker(_el$65.nextSibling),
|
|
1490
|
+
_el$67 = _el$66.nextSibling,
|
|
1491
|
+
[_el$68, _co$1] = _$getNextMarker(_el$67.nextSibling);
|
|
1492
|
+
_$spread(_el$64, _$mergeProps(common, {
|
|
1256
1493
|
get ["data-disabled"]() {
|
|
1257
1494
|
return props.disabled ? "true" : undefined;
|
|
1258
1495
|
}
|
|
1259
1496
|
}), false, true);
|
|
1260
|
-
_$insert(_el$
|
|
1497
|
+
_$insert(_el$64, _$createComponent(Control, {
|
|
1261
1498
|
grouped: true
|
|
1262
|
-
}), _el$
|
|
1263
|
-
_$insert(_el$
|
|
1499
|
+
}), _el$66, _co$0);
|
|
1500
|
+
_$insert(_el$64, () => props.actions, _el$68, _co$1);
|
|
1264
1501
|
_$runHydrationEvents();
|
|
1265
|
-
return _el$
|
|
1502
|
+
return _el$64;
|
|
1266
1503
|
}
|
|
1267
1504
|
});
|
|
1268
1505
|
}
|
|
@@ -1295,85 +1532,89 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1295
1532
|
return iconContent() || icon();
|
|
1296
1533
|
},
|
|
1297
1534
|
get children() {
|
|
1298
|
-
var _el$
|
|
1299
|
-
_$insert(_el$
|
|
1300
|
-
var _el$
|
|
1301
|
-
_$effect(() => _$className(_el$
|
|
1302
|
-
return _el$
|
|
1535
|
+
var _el$69 = _$getNextElement(_tmpl$35);
|
|
1536
|
+
_$insert(_el$69, () => iconContent() ?? (() => {
|
|
1537
|
+
var _el$84 = _$getNextElement(_tmpl$41);
|
|
1538
|
+
_$effect(() => _$className(_el$84, iconClass(icon())));
|
|
1539
|
+
return _el$84;
|
|
1303
1540
|
})());
|
|
1304
|
-
|
|
1541
|
+
_$effect(() => _$className(_el$69,
|
|
1542
|
+
// An object row's own glyph sits in a soft chip of the app colour; custom content such as an avatar keeps
|
|
1543
|
+
// its own look.
|
|
1544
|
+
props.variant === "object" && !iconContent() ? "k2b-app-workspace__sidebar-item-icon k2b-icon-tile" : "k2b-app-workspace__sidebar-item-icon"));
|
|
1545
|
+
return _el$69;
|
|
1305
1546
|
}
|
|
1306
1547
|
}), (() => {
|
|
1307
|
-
var _el$
|
|
1308
|
-
_el$
|
|
1309
|
-
[_el$
|
|
1310
|
-
_el$
|
|
1311
|
-
_el$
|
|
1312
|
-
_el$
|
|
1313
|
-
[_el$
|
|
1314
|
-
_$insert(_el$
|
|
1548
|
+
var _el$70 = _$getNextElement(_tmpl$39),
|
|
1549
|
+
_el$79 = _el$70.firstChild,
|
|
1550
|
+
[_el$80, _co$11] = _$getNextMarker(_el$79.nextSibling),
|
|
1551
|
+
_el$76 = _el$80.nextSibling,
|
|
1552
|
+
_el$77 = _el$76.firstChild,
|
|
1553
|
+
_el$81 = _el$76.nextSibling,
|
|
1554
|
+
[_el$82, _co$12] = _$getNextMarker(_el$81.nextSibling);
|
|
1555
|
+
_$insert(_el$70, _$createComponent(Show, {
|
|
1315
1556
|
get when() {
|
|
1316
1557
|
return props.context || props.contextMeta;
|
|
1317
1558
|
},
|
|
1318
1559
|
get children() {
|
|
1319
|
-
var _el$
|
|
1320
|
-
_el$
|
|
1321
|
-
_el$
|
|
1322
|
-
[_el$
|
|
1323
|
-
_$insert(_el$
|
|
1324
|
-
_$insert(_el$
|
|
1560
|
+
var _el$71 = _$getNextElement(_tmpl$37),
|
|
1561
|
+
_el$72 = _el$71.firstChild,
|
|
1562
|
+
_el$74 = _el$72.nextSibling,
|
|
1563
|
+
[_el$75, _co$10] = _$getNextMarker(_el$74.nextSibling);
|
|
1564
|
+
_$insert(_el$72, () => props.context);
|
|
1565
|
+
_$insert(_el$71, _$createComponent(Show, {
|
|
1325
1566
|
get when() {
|
|
1326
1567
|
return props.contextMeta;
|
|
1327
1568
|
},
|
|
1328
1569
|
get children() {
|
|
1329
|
-
var _el$
|
|
1330
|
-
_$insert(_el$
|
|
1331
|
-
return _el$
|
|
1570
|
+
var _el$73 = _$getNextElement(_tmpl$36);
|
|
1571
|
+
_$insert(_el$73, () => props.contextMeta);
|
|
1572
|
+
return _el$73;
|
|
1332
1573
|
}
|
|
1333
|
-
}), _el$
|
|
1334
|
-
return _el$
|
|
1574
|
+
}), _el$75, _co$10);
|
|
1575
|
+
return _el$71;
|
|
1335
1576
|
}
|
|
1336
|
-
}), _el$
|
|
1337
|
-
_$insert(_el$
|
|
1338
|
-
_$insert(_el$
|
|
1577
|
+
}), _el$80, _co$11);
|
|
1578
|
+
_$insert(_el$77, () => label());
|
|
1579
|
+
_$insert(_el$70, _$createComponent(Show, {
|
|
1339
1580
|
get when() {
|
|
1340
1581
|
return props.description;
|
|
1341
1582
|
},
|
|
1342
1583
|
get children() {
|
|
1343
|
-
var _el$
|
|
1344
|
-
_$insert(_el$
|
|
1345
|
-
return _el$
|
|
1584
|
+
var _el$78 = _$getNextElement(_tmpl$38);
|
|
1585
|
+
_$insert(_el$78, () => props.description);
|
|
1586
|
+
return _el$78;
|
|
1346
1587
|
}
|
|
1347
|
-
}), _el$
|
|
1588
|
+
}), _el$82, _co$12);
|
|
1348
1589
|
_$effect(_p$ => {
|
|
1349
|
-
var _v$
|
|
1350
|
-
_v$
|
|
1351
|
-
_v$
|
|
1352
|
-
_v$
|
|
1590
|
+
var _v$60 = oneLine() ? "1" : undefined,
|
|
1591
|
+
_v$61 = !oneLine() && typeof label() === "string" ? label() : undefined;
|
|
1592
|
+
_v$60 !== _p$.e && _$setAttribute(_el$76, "data-lines", _p$.e = _v$60);
|
|
1593
|
+
_v$61 !== _p$.t && _$setAttribute(_el$76, "data-label", _p$.t = _v$61);
|
|
1353
1594
|
return _p$;
|
|
1354
1595
|
}, {
|
|
1355
1596
|
e: undefined,
|
|
1356
1597
|
t: undefined
|
|
1357
1598
|
});
|
|
1358
|
-
return _el$
|
|
1599
|
+
return _el$70;
|
|
1359
1600
|
})(), _$createComponent(Show, {
|
|
1360
1601
|
get when() {
|
|
1361
1602
|
return hasMeta();
|
|
1362
1603
|
},
|
|
1363
1604
|
get children() {
|
|
1364
|
-
var _el$
|
|
1365
|
-
_$insert(_el$
|
|
1605
|
+
var _el$83 = _$getNextElement(_tmpl$40);
|
|
1606
|
+
_$insert(_el$83, meta);
|
|
1366
1607
|
_$effect(_p$ => {
|
|
1367
|
-
var _v$
|
|
1368
|
-
_v$
|
|
1369
|
-
_v$
|
|
1370
|
-
_v$
|
|
1608
|
+
var _v$62 = props.preview?.trigger === "row" ? metaId : undefined,
|
|
1609
|
+
_v$63 = metaVisibility() === "hover" ? "hover" : undefined;
|
|
1610
|
+
_v$62 !== _p$.e && _$setAttribute(_el$83, "id", _p$.e = _v$62);
|
|
1611
|
+
_v$63 !== _p$.t && _$setAttribute(_el$83, "data-visibility", _p$.t = _v$63);
|
|
1371
1612
|
return _p$;
|
|
1372
1613
|
}, {
|
|
1373
1614
|
e: undefined,
|
|
1374
1615
|
t: undefined
|
|
1375
1616
|
});
|
|
1376
|
-
return _el$
|
|
1617
|
+
return _el$83;
|
|
1377
1618
|
}
|
|
1378
1619
|
})];
|
|
1379
1620
|
const singleAction = () => {
|
|
@@ -1389,9 +1630,9 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1389
1630
|
props.onActionClick?.(event);
|
|
1390
1631
|
};
|
|
1391
1632
|
const content = () => actionSlot()?.children ?? (() => {
|
|
1392
|
-
var _el$
|
|
1393
|
-
_$effect(() => _$className(_el$
|
|
1394
|
-
return _el$
|
|
1633
|
+
var _el$85 = _$getNextElement(_tmpl$41);
|
|
1634
|
+
_$effect(() => _$className(_el$85, iconClass(actionSlot()?.icon ?? props.actionIcon, "ti-dots")));
|
|
1635
|
+
return _el$85;
|
|
1395
1636
|
})();
|
|
1396
1637
|
return _$createComponent(Show, {
|
|
1397
1638
|
get when() {
|
|
@@ -1404,16 +1645,16 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1404
1645
|
},
|
|
1405
1646
|
get fallback() {
|
|
1406
1647
|
return (() => {
|
|
1407
|
-
var _el$
|
|
1408
|
-
_el$
|
|
1409
|
-
_$insert(_el$
|
|
1648
|
+
var _el$87 = _$getNextElement(_tmpl$43);
|
|
1649
|
+
_el$87.$$click = select;
|
|
1650
|
+
_$insert(_el$87, content);
|
|
1410
1651
|
_$effect(_p$ => {
|
|
1411
|
-
var _v$
|
|
1412
|
-
_v$
|
|
1413
|
-
_v$
|
|
1414
|
-
_v$
|
|
1415
|
-
_v$
|
|
1416
|
-
_v$
|
|
1652
|
+
var _v$67 = actionSlot()?.disabled,
|
|
1653
|
+
_v$68 = actionSlot()?.visibility === "hover" ? "hover" : undefined,
|
|
1654
|
+
_v$69 = label();
|
|
1655
|
+
_v$67 !== _p$.e && _$setProperty(_el$87, "disabled", _p$.e = _v$67);
|
|
1656
|
+
_v$68 !== _p$.t && _$setAttribute(_el$87, "data-visibility", _p$.t = _v$68);
|
|
1657
|
+
_v$69 !== _p$.a && _$setAttribute(_el$87, "aria-label", _p$.a = _v$69);
|
|
1417
1658
|
return _p$;
|
|
1418
1659
|
}, {
|
|
1419
1660
|
e: undefined,
|
|
@@ -1421,20 +1662,20 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1421
1662
|
a: undefined
|
|
1422
1663
|
});
|
|
1423
1664
|
_$runHydrationEvents();
|
|
1424
|
-
return _el$
|
|
1665
|
+
return _el$87;
|
|
1425
1666
|
})();
|
|
1426
1667
|
},
|
|
1427
1668
|
get children() {
|
|
1428
|
-
var _el$
|
|
1429
|
-
_el$
|
|
1430
|
-
_$insert(_el$
|
|
1669
|
+
var _el$86 = _$getNextElement(_tmpl$42);
|
|
1670
|
+
_el$86.$$click = select;
|
|
1671
|
+
_$insert(_el$86, content);
|
|
1431
1672
|
_$effect(_p$ => {
|
|
1432
|
-
var _v$
|
|
1433
|
-
_v$
|
|
1434
|
-
_v$
|
|
1435
|
-
_v$
|
|
1436
|
-
_v$
|
|
1437
|
-
_v$
|
|
1673
|
+
var _v$64 = actionSlot()?.href,
|
|
1674
|
+
_v$65 = actionSlot()?.visibility === "hover" ? "hover" : undefined,
|
|
1675
|
+
_v$66 = label();
|
|
1676
|
+
_v$64 !== _p$.e && _$setAttribute(_el$86, "href", _p$.e = _v$64);
|
|
1677
|
+
_v$65 !== _p$.t && _$setAttribute(_el$86, "data-visibility", _p$.t = _v$65);
|
|
1678
|
+
_v$66 !== _p$.a && _$setAttribute(_el$86, "aria-label", _p$.a = _v$66);
|
|
1438
1679
|
return _p$;
|
|
1439
1680
|
}, {
|
|
1440
1681
|
e: undefined,
|
|
@@ -1442,7 +1683,7 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1442
1683
|
a: undefined
|
|
1443
1684
|
});
|
|
1444
1685
|
_$runHydrationEvents();
|
|
1445
|
-
return _el$
|
|
1686
|
+
return _el$86;
|
|
1446
1687
|
}
|
|
1447
1688
|
});
|
|
1448
1689
|
}
|
|
@@ -1743,16 +1984,16 @@ const AppWorkspaceNavTree = props => {
|
|
|
1743
1984
|
return rowIcon();
|
|
1744
1985
|
},
|
|
1745
1986
|
get children() {
|
|
1746
|
-
var _el$
|
|
1747
|
-
_el$
|
|
1748
|
-
_$spread(_el$
|
|
1987
|
+
var _el$88 = _$getNextElement(_tmpl$44),
|
|
1988
|
+
_el$89 = _el$88.firstChild;
|
|
1989
|
+
_$spread(_el$88, _$mergeProps({
|
|
1749
1990
|
get ["data-k2b-nav-tree-toggle"]() {
|
|
1750
1991
|
return usesIconDisclosure() ? "" : undefined;
|
|
1751
1992
|
}
|
|
1752
1993
|
}, () => iconAccessibility(item.iconLabel)), false, true);
|
|
1753
|
-
_$effect(() => _$className(_el$
|
|
1994
|
+
_$effect(() => _$className(_el$89, iconClass(rowIcon())));
|
|
1754
1995
|
_$runHydrationEvents();
|
|
1755
|
-
return _el$
|
|
1996
|
+
return _el$88;
|
|
1756
1997
|
}
|
|
1757
1998
|
}), _$createComponent(Show, {
|
|
1758
1999
|
get when() {
|
|
@@ -1760,51 +2001,51 @@ const AppWorkspaceNavTree = props => {
|
|
|
1760
2001
|
},
|
|
1761
2002
|
get fallback() {
|
|
1762
2003
|
return (() => {
|
|
1763
|
-
var _el$
|
|
1764
|
-
_el$
|
|
1765
|
-
_$insert(_el$
|
|
1766
|
-
_$effect(() => _$setAttribute(_el$
|
|
1767
|
-
return _el$
|
|
2004
|
+
var _el$97 = _$getNextElement(_tmpl$48),
|
|
2005
|
+
_el$98 = _el$97.firstChild;
|
|
2006
|
+
_$insert(_el$98, () => item.label);
|
|
2007
|
+
_$effect(() => _$setAttribute(_el$97, "data-label", typeof item.label === "string" ? item.label : undefined));
|
|
2008
|
+
return _el$97;
|
|
1768
2009
|
})();
|
|
1769
2010
|
},
|
|
1770
2011
|
get children() {
|
|
1771
|
-
var _el$
|
|
1772
|
-
_el$
|
|
1773
|
-
_el$
|
|
1774
|
-
_el$
|
|
1775
|
-
_$insert(_el$
|
|
1776
|
-
_$insert(_el$
|
|
1777
|
-
_$effect(() => _$setAttribute(_el$
|
|
1778
|
-
return _el$
|
|
2012
|
+
var _el$90 = _$getNextElement(_tmpl$45),
|
|
2013
|
+
_el$91 = _el$90.firstChild,
|
|
2014
|
+
_el$92 = _el$91.firstChild,
|
|
2015
|
+
_el$93 = _el$91.nextSibling;
|
|
2016
|
+
_$insert(_el$92, () => item.label);
|
|
2017
|
+
_$insert(_el$93, () => item.description);
|
|
2018
|
+
_$effect(() => _$setAttribute(_el$91, "data-label", typeof item.label === "string" ? item.label : undefined));
|
|
2019
|
+
return _el$90;
|
|
1779
2020
|
}
|
|
1780
2021
|
}), _$createComponent(Show, {
|
|
1781
2022
|
get when() {
|
|
1782
2023
|
return item.meta !== undefined;
|
|
1783
2024
|
},
|
|
1784
2025
|
get children() {
|
|
1785
|
-
var _el$
|
|
1786
|
-
_$insert(_el$
|
|
2026
|
+
var _el$94 = _$getNextElement(_tmpl$46);
|
|
2027
|
+
_$insert(_el$94, () => item.meta);
|
|
1787
2028
|
_$effect(_p$ => {
|
|
1788
|
-
var _v$
|
|
1789
|
-
_v$
|
|
1790
|
-
_v$
|
|
1791
|
-
_v$
|
|
2029
|
+
var _v$70 = `k2b-app-workspace__sidebar-item-meta ${hasChildren() ? "" : "k2b-app-workspace__nav-tree-leaf-meta"}`,
|
|
2030
|
+
_v$71 = item.metaVisibility === "hover" ? "hover" : undefined;
|
|
2031
|
+
_v$70 !== _p$.e && _$className(_el$94, _p$.e = _v$70);
|
|
2032
|
+
_v$71 !== _p$.t && _$setAttribute(_el$94, "data-visibility", _p$.t = _v$71);
|
|
1792
2033
|
return _p$;
|
|
1793
2034
|
}, {
|
|
1794
2035
|
e: undefined,
|
|
1795
2036
|
t: undefined
|
|
1796
2037
|
});
|
|
1797
|
-
return _el$
|
|
2038
|
+
return _el$94;
|
|
1798
2039
|
}
|
|
1799
2040
|
}), _$createComponent(Show, {
|
|
1800
2041
|
get when() {
|
|
1801
2042
|
return _$memo(() => !!hasChildren())() && !usesIconDisclosure();
|
|
1802
2043
|
},
|
|
1803
2044
|
get children() {
|
|
1804
|
-
var _el$
|
|
1805
|
-
_el$
|
|
1806
|
-
_$effect(() => _$className(_el$
|
|
1807
|
-
return _el$
|
|
2045
|
+
var _el$95 = _$getNextElement(_tmpl$47),
|
|
2046
|
+
_el$96 = _el$95.firstChild;
|
|
2047
|
+
_$effect(() => _$className(_el$96, `ti ${isExpanded(item.id) ? "ti-chevron-down" : "ti-chevron-right"}`));
|
|
2048
|
+
return _el$95;
|
|
1808
2049
|
}
|
|
1809
2050
|
})];
|
|
1810
2051
|
const row = () => _$createComponent(AppWorkspaceSidebarRow, {
|
|
@@ -1912,56 +2153,56 @@ const AppWorkspaceNavTree = props => {
|
|
|
1912
2153
|
requestMove(target.move, false);
|
|
1913
2154
|
};
|
|
1914
2155
|
return (() => {
|
|
1915
|
-
var _el$
|
|
1916
|
-
_el$
|
|
1917
|
-
[_el$
|
|
1918
|
-
_el$
|
|
1919
|
-
[_el$
|
|
1920
|
-
_el$
|
|
1921
|
-
_$addEventListener(_el$
|
|
1922
|
-
_el$
|
|
1923
|
-
_$addEventListener(_el$
|
|
1924
|
-
_el$
|
|
1925
|
-
_el$
|
|
1926
|
-
_el$
|
|
1927
|
-
var _ref$
|
|
1928
|
-
typeof _ref$
|
|
1929
|
-
_$setAttribute(_el$
|
|
1930
|
-
_$setAttribute(_el$
|
|
1931
|
-
_$insert(_el$
|
|
1932
|
-
_$insert(_el$
|
|
2156
|
+
var _el$99 = _$getNextElement(_tmpl$50),
|
|
2157
|
+
_el$101 = _el$99.firstChild,
|
|
2158
|
+
[_el$102, _co$13] = _$getNextMarker(_el$101.nextSibling),
|
|
2159
|
+
_el$103 = _el$102.nextSibling,
|
|
2160
|
+
[_el$104, _co$14] = _$getNextMarker(_el$103.nextSibling);
|
|
2161
|
+
_el$99.addEventListener("drop", onDrop);
|
|
2162
|
+
_$addEventListener(_el$99, "dragleave", item.onDragLeave);
|
|
2163
|
+
_el$99.addEventListener("dragover", onDragOver);
|
|
2164
|
+
_$addEventListener(_el$99, "dragenter", item.onDragEnter);
|
|
2165
|
+
_el$99.addEventListener("dragstart", onDragStart);
|
|
2166
|
+
_el$99.$$keydown = onKeyDown;
|
|
2167
|
+
_el$99.addEventListener("focus", () => setFocusedId(item.id));
|
|
2168
|
+
var _ref$6 = treeItem;
|
|
2169
|
+
typeof _ref$6 === "function" ? _$use(_ref$6, _el$99) : treeItem = _el$99;
|
|
2170
|
+
_$setAttribute(_el$99, "aria-level", depth + 1);
|
|
2171
|
+
_$setAttribute(_el$99, "data-k2b-nav-tree-parent-id", parentId);
|
|
2172
|
+
_$insert(_el$99, row, _el$102, _co$13);
|
|
2173
|
+
_$insert(_el$99, _$createComponent(Show, {
|
|
1933
2174
|
get when() {
|
|
1934
2175
|
return _$memo(() => !!hasChildren())() && isExpanded(item.id);
|
|
1935
2176
|
},
|
|
1936
2177
|
get children() {
|
|
1937
|
-
var _el$
|
|
1938
|
-
_$insert(_el$
|
|
1939
|
-
return _el$
|
|
2178
|
+
var _el$100 = _$getNextElement(_tmpl$49);
|
|
2179
|
+
_$insert(_el$100, () => renderItems(nested, depth + 1, item.id));
|
|
2180
|
+
return _el$100;
|
|
1940
2181
|
}
|
|
1941
|
-
}), _el$
|
|
2182
|
+
}), _el$104, _co$14);
|
|
1942
2183
|
_$effect(_p$ => {
|
|
1943
|
-
var _v$
|
|
1944
|
-
_v$
|
|
1945
|
-
_v$
|
|
1946
|
-
_v$
|
|
1947
|
-
_v$
|
|
1948
|
-
_v$
|
|
1949
|
-
_v$
|
|
1950
|
-
_v$
|
|
1951
|
-
_v$
|
|
1952
|
-
_v$
|
|
1953
|
-
_v$
|
|
1954
|
-
_v$
|
|
1955
|
-
_v$
|
|
1956
|
-
_v$
|
|
1957
|
-
_v$
|
|
1958
|
-
_v$
|
|
1959
|
-
_v$
|
|
1960
|
-
_v$
|
|
1961
|
-
_v$
|
|
1962
|
-
_v$
|
|
1963
|
-
_v$
|
|
1964
|
-
_v$
|
|
2184
|
+
var _v$72 = siblings().length,
|
|
2185
|
+
_v$73 = place() + 1,
|
|
2186
|
+
_v$74 = selected(),
|
|
2187
|
+
_v$75 = hasChildren() ? isExpanded(item.id) : undefined,
|
|
2188
|
+
_v$76 = item.disabled ? "true" : undefined,
|
|
2189
|
+
_v$77 = item.disabled ? -1 : tabStopId() === item.id ? 0 : -1,
|
|
2190
|
+
_v$78 = movable() ? true : undefined,
|
|
2191
|
+
_v$79 = item.id,
|
|
2192
|
+
_v$80 = dragged()?.id === item.id ? "" : undefined,
|
|
2193
|
+
_v$81 = dropTarget()?.id === item.id ? dropTarget().side : undefined,
|
|
2194
|
+
_v$82 = String(props.indented === false ? 0 : depth);
|
|
2195
|
+
_v$72 !== _p$.e && _$setAttribute(_el$99, "aria-setsize", _p$.e = _v$72);
|
|
2196
|
+
_v$73 !== _p$.t && _$setAttribute(_el$99, "aria-posinset", _p$.t = _v$73);
|
|
2197
|
+
_v$74 !== _p$.a && _$setAttribute(_el$99, "aria-selected", _p$.a = _v$74);
|
|
2198
|
+
_v$75 !== _p$.o && _$setAttribute(_el$99, "aria-expanded", _p$.o = _v$75);
|
|
2199
|
+
_v$76 !== _p$.i && _$setAttribute(_el$99, "aria-disabled", _p$.i = _v$76);
|
|
2200
|
+
_v$77 !== _p$.n && _$setAttribute(_el$99, "tabindex", _p$.n = _v$77);
|
|
2201
|
+
_v$78 !== _p$.s && _$setAttribute(_el$99, "draggable", _p$.s = _v$78);
|
|
2202
|
+
_v$79 !== _p$.h && _$setAttribute(_el$99, "data-k2b-nav-tree-id", _p$.h = _v$79);
|
|
2203
|
+
_v$80 !== _p$.r && _$setAttribute(_el$99, "data-k2b-nav-tree-dragging", _p$.r = _v$80);
|
|
2204
|
+
_v$81 !== _p$.d && _$setAttribute(_el$99, "data-k2b-nav-tree-drop", _p$.d = _v$81);
|
|
2205
|
+
_v$82 !== _p$.l && _$setStyleProperty(_el$99, "--k2b-nav-tree-depth", _p$.l = _v$82);
|
|
1965
2206
|
return _p$;
|
|
1966
2207
|
}, {
|
|
1967
2208
|
e: undefined,
|
|
@@ -1977,7 +2218,7 @@ const AppWorkspaceNavTree = props => {
|
|
|
1977
2218
|
l: undefined
|
|
1978
2219
|
});
|
|
1979
2220
|
_$runHydrationEvents();
|
|
1980
|
-
return _el$
|
|
2221
|
+
return _el$99;
|
|
1981
2222
|
})();
|
|
1982
2223
|
}
|
|
1983
2224
|
});
|
|
@@ -2002,62 +2243,62 @@ const AppWorkspaceNavTree = props => {
|
|
|
2002
2243
|
});
|
|
2003
2244
|
});
|
|
2004
2245
|
return (() => {
|
|
2005
|
-
var _el$
|
|
2006
|
-
_el$
|
|
2007
|
-
_el$
|
|
2246
|
+
var _el$105 = _$getNextElement(_tmpl$51);
|
|
2247
|
+
_el$105.addEventListener("dragend", endDrag);
|
|
2248
|
+
_el$105.addEventListener("dragleave", event => {
|
|
2008
2249
|
if (!root?.contains(event.relatedTarget)) setDropTarget(null);
|
|
2009
2250
|
});
|
|
2010
|
-
_el$
|
|
2251
|
+
_el$105.addEventListener("dragover", event => {
|
|
2011
2252
|
// Runs after the rows: a position no row claimed shows no gap.
|
|
2012
2253
|
if (claimedDragOver !== event) setDropTarget(null);
|
|
2013
2254
|
});
|
|
2014
|
-
var _ref$
|
|
2015
|
-
typeof _ref$
|
|
2016
|
-
_$insert(_el$
|
|
2255
|
+
var _ref$7 = root;
|
|
2256
|
+
typeof _ref$7 === "function" ? _$use(_ref$7, _el$105) : root = _el$105;
|
|
2257
|
+
_$insert(_el$105, () => renderItems(roots, 0));
|
|
2017
2258
|
_$effect(_p$ => {
|
|
2018
|
-
var _v$
|
|
2019
|
-
_v$
|
|
2020
|
-
_v$
|
|
2021
|
-
_v$
|
|
2259
|
+
var _v$83 = `k2b-app-workspace__nav-tree ${props.class ?? ""}`,
|
|
2260
|
+
_v$84 = props.ariaLabel;
|
|
2261
|
+
_v$83 !== _p$.e && _$className(_el$105, _p$.e = _v$83);
|
|
2262
|
+
_v$84 !== _p$.t && _$setAttribute(_el$105, "aria-label", _p$.t = _v$84);
|
|
2022
2263
|
return _p$;
|
|
2023
2264
|
}, {
|
|
2024
2265
|
e: undefined,
|
|
2025
2266
|
t: undefined
|
|
2026
2267
|
});
|
|
2027
|
-
return _el$
|
|
2268
|
+
return _el$105;
|
|
2028
2269
|
})();
|
|
2029
2270
|
};
|
|
2030
2271
|
AppWorkspaceNavTree.Item = AppWorkspaceNavTreeItem;
|
|
2031
2272
|
const AppWorkspaceSidebarIconGrid = props => (() => {
|
|
2032
|
-
var _el$
|
|
2033
|
-
_el$
|
|
2034
|
-
[_el$
|
|
2035
|
-
_el$
|
|
2036
|
-
_$spread(_el$
|
|
2273
|
+
var _el$106 = _$getNextElement(_tmpl$52),
|
|
2274
|
+
_el$108 = _el$106.firstChild,
|
|
2275
|
+
[_el$109, _co$15] = _$getNextMarker(_el$108.nextSibling),
|
|
2276
|
+
_el$107 = _el$109.nextSibling;
|
|
2277
|
+
_$spread(_el$106, _$mergeProps({
|
|
2037
2278
|
get ["class"]() {
|
|
2038
2279
|
return `k2b-app-workspace__sidebar-icon-grid-wrap ${props.class ?? ""}`;
|
|
2039
2280
|
}
|
|
2040
2281
|
}, () => modeAttrs(props.sidebarMode)), false, true);
|
|
2041
|
-
_$insert(_el$
|
|
2282
|
+
_$insert(_el$106, _$createComponent(Show, {
|
|
2042
2283
|
get when() {
|
|
2043
2284
|
return props.title;
|
|
2044
2285
|
},
|
|
2045
2286
|
children: title => (() => {
|
|
2046
|
-
var _el$
|
|
2047
|
-
_$insert(_el$
|
|
2048
|
-
return _el$
|
|
2287
|
+
var _el$110 = _$getNextElement(_tmpl$23);
|
|
2288
|
+
_$insert(_el$110, title);
|
|
2289
|
+
return _el$110;
|
|
2049
2290
|
})()
|
|
2050
|
-
}), _el$
|
|
2051
|
-
_$insert(_el$
|
|
2052
|
-
_$effect(() => _$setAttribute(_el$
|
|
2291
|
+
}), _el$109, _co$15);
|
|
2292
|
+
_$insert(_el$107, () => props.children);
|
|
2293
|
+
_$effect(() => _$setAttribute(_el$107, "data-columns", props.columns ?? 2));
|
|
2053
2294
|
_$runHydrationEvents();
|
|
2054
|
-
return _el$
|
|
2295
|
+
return _el$106;
|
|
2055
2296
|
})();
|
|
2056
2297
|
const AppWorkspaceSidebarIconAction = props => {
|
|
2057
2298
|
const content = (() => {
|
|
2058
|
-
var _el$
|
|
2059
|
-
_$effect(() => _$className(_el$
|
|
2060
|
-
return _el$
|
|
2299
|
+
var _el$111 = _$getNextElement(_tmpl$53);
|
|
2300
|
+
_$effect(() => _$className(_el$111, iconClass(props.icon)));
|
|
2301
|
+
return _el$111;
|
|
2061
2302
|
})();
|
|
2062
2303
|
const attrs = () => ({
|
|
2063
2304
|
class: `k2b-app-workspace__sidebar-icon-action ${props.active ? "is-active" : ""}`,
|
|
@@ -2070,8 +2311,8 @@ const AppWorkspaceSidebarIconAction = props => {
|
|
|
2070
2311
|
...modeAttrs(props.sidebarMode)
|
|
2071
2312
|
});
|
|
2072
2313
|
if (!props.href || props.disabled) return (() => {
|
|
2073
|
-
var _el$
|
|
2074
|
-
_$spread(_el$
|
|
2314
|
+
var _el$112 = _$getNextElement(_tmpl$32);
|
|
2315
|
+
_$spread(_el$112, _$mergeProps(attrs, {
|
|
2075
2316
|
get disabled() {
|
|
2076
2317
|
return props.disabled;
|
|
2077
2318
|
},
|
|
@@ -2079,13 +2320,13 @@ const AppWorkspaceSidebarIconAction = props => {
|
|
|
2079
2320
|
return props.onClick;
|
|
2080
2321
|
}
|
|
2081
2322
|
}), false, true);
|
|
2082
|
-
_$insert(_el$
|
|
2323
|
+
_$insert(_el$112, content);
|
|
2083
2324
|
_$runHydrationEvents();
|
|
2084
|
-
return _el$
|
|
2325
|
+
return _el$112;
|
|
2085
2326
|
})();
|
|
2086
2327
|
if (props.navigation !== "enhanced" || !props.onNavigate) return (() => {
|
|
2087
|
-
var _el$
|
|
2088
|
-
_$spread(_el$
|
|
2328
|
+
var _el$113 = _$getNextElement(_tmpl$33);
|
|
2329
|
+
_$spread(_el$113, _$mergeProps({
|
|
2089
2330
|
get href() {
|
|
2090
2331
|
return props.href;
|
|
2091
2332
|
}
|
|
@@ -2094,9 +2335,9 @@ const AppWorkspaceSidebarIconAction = props => {
|
|
|
2094
2335
|
return props.onClick;
|
|
2095
2336
|
}
|
|
2096
2337
|
}), false, true);
|
|
2097
|
-
_$insert(_el$
|
|
2338
|
+
_$insert(_el$113, content);
|
|
2098
2339
|
_$runHydrationEvents();
|
|
2099
|
-
return _el$
|
|
2340
|
+
return _el$113;
|
|
2100
2341
|
})();
|
|
2101
2342
|
return _$createComponent(Link, _$mergeProps({
|
|
2102
2343
|
get href() {
|
|
@@ -2124,22 +2365,51 @@ const AppWorkspaceSidebarIconAction = props => {
|
|
|
2124
2365
|
* host's page title with the way up (see `PageTitle`); the page's own
|
|
2125
2366
|
* `PageTitle` takes its place. The visible title is no heading, because many
|
|
2126
2367
|
* pages render their own `h1`. From 64 rem a sidebar that marks the current
|
|
2127
|
-
* page names it already: the
|
|
2128
|
-
* `h1` its heading stays for assistive technology.
|
|
2129
|
-
*
|
|
2130
|
-
*
|
|
2368
|
+
* page names it already: the title and the way up hide, and only on a page
|
|
2369
|
+
* without its own `h1` its heading stays for assistive technology. With an
|
|
2370
|
+
* `AppWorkspace.Head` slot the row is always there and also carries the
|
|
2371
|
+
* views, the filters, the result count, and the actions; only its title
|
|
2372
|
+
* follows the rules above. It draws no line; CSS decides what shows and when
|
|
2373
|
+
* the filters wrap, so the server-rendered page already has its final
|
|
2374
|
+
* geometry.
|
|
2131
2375
|
*/
|
|
2132
2376
|
function AppWorkspaceHead(props) {
|
|
2133
2377
|
const messages = useWorkspaceMessages();
|
|
2378
|
+
const filters = useFilterMessages();
|
|
2379
|
+
// JSX prop getters construct their elements on every read. Share each
|
|
2380
|
+
// resolved slot between its presence check and its rendered content.
|
|
2381
|
+
const resolvedViews = children(() => props.head?.views);
|
|
2382
|
+
const resolvedFilters = children(() => props.head?.filters);
|
|
2383
|
+
const resolvedActions = children(() => props.head?.actions);
|
|
2384
|
+
const resolvedCount = children(() => props.head?.count);
|
|
2134
2385
|
// A nested workspace is part of a page that already shows its title.
|
|
2135
2386
|
const trail = props.nested ? () => undefined : usePageTrail();
|
|
2387
|
+
const resetContent = () => filters().reset;
|
|
2388
|
+
const primaryContent = () => [(() => {
|
|
2389
|
+
var _el$114 = _$getNextElement(_tmpl$53);
|
|
2390
|
+
_$effect(() => _$className(_el$114, props.head?.primary?.icon));
|
|
2391
|
+
return _el$114;
|
|
2392
|
+
})(), (() => {
|
|
2393
|
+
var _el$115 = _$getNextElement(_tmpl$54);
|
|
2394
|
+
_$insert(_el$115, () => props.head?.primary?.label);
|
|
2395
|
+
return _el$115;
|
|
2396
|
+
})()];
|
|
2136
2397
|
return (() => {
|
|
2137
|
-
var _el$
|
|
2138
|
-
_el$
|
|
2139
|
-
|
|
2140
|
-
_el$
|
|
2141
|
-
|
|
2142
|
-
|
|
2398
|
+
var _el$116 = _$getNextElement(_tmpl$60),
|
|
2399
|
+
_el$117 = _el$116.firstChild,
|
|
2400
|
+
_el$127 = _el$117.firstChild,
|
|
2401
|
+
[_el$128, _co$18] = _$getNextMarker(_el$127.nextSibling),
|
|
2402
|
+
_el$129 = _el$128.nextSibling,
|
|
2403
|
+
[_el$130, _co$19] = _$getNextMarker(_el$129.nextSibling),
|
|
2404
|
+
_el$131 = _el$130.nextSibling,
|
|
2405
|
+
[_el$132, _co$20] = _$getNextMarker(_el$131.nextSibling),
|
|
2406
|
+
_el$133 = _el$132.nextSibling,
|
|
2407
|
+
[_el$134, _co$21] = _$getNextMarker(_el$133.nextSibling),
|
|
2408
|
+
_el$135 = _el$134.nextSibling,
|
|
2409
|
+
[_el$136, _co$22] = _$getNextMarker(_el$135.nextSibling),
|
|
2410
|
+
_el$142 = _el$117.nextSibling,
|
|
2411
|
+
[_el$143, _co$25] = _$getNextMarker(_el$142.nextSibling);
|
|
2412
|
+
_$insert(_el$117, _$createComponent(IconButton, {
|
|
2143
2413
|
"class": "k2b-app-workspace__head-toggle",
|
|
2144
2414
|
get label() {
|
|
2145
2415
|
return messages().showNavigation;
|
|
@@ -2150,10 +2420,10 @@ function AppWorkspaceHead(props) {
|
|
|
2150
2420
|
"aria-expanded": "false",
|
|
2151
2421
|
"data-app-workspace-sidebar-toggle": "",
|
|
2152
2422
|
get children() {
|
|
2153
|
-
return _$getNextElement(_tmpl$
|
|
2423
|
+
return _$getNextElement(_tmpl$55);
|
|
2154
2424
|
}
|
|
2155
|
-
}), _el$
|
|
2156
|
-
_$insert(_el$
|
|
2425
|
+
}), _el$128, _co$18);
|
|
2426
|
+
_$insert(_el$117, _$createComponent(Show, {
|
|
2157
2427
|
get when() {
|
|
2158
2428
|
return trail();
|
|
2159
2429
|
},
|
|
@@ -2164,14 +2434,153 @@ function AppWorkspaceHead(props) {
|
|
|
2164
2434
|
as: "p",
|
|
2165
2435
|
fallback: true
|
|
2166
2436
|
}), (() => {
|
|
2167
|
-
var _el$
|
|
2168
|
-
_$setAttribute(_el$
|
|
2169
|
-
_$insert(_el$
|
|
2170
|
-
return _el$
|
|
2437
|
+
var _el$144 = _$getNextElement(_tmpl$61);
|
|
2438
|
+
_$setAttribute(_el$144, "data-k2b-server", isServer ? "" : undefined);
|
|
2439
|
+
_$insert(_el$144, () => current().title);
|
|
2440
|
+
return _el$144;
|
|
2171
2441
|
})()]
|
|
2172
|
-
}), _el$
|
|
2173
|
-
_$
|
|
2174
|
-
|
|
2442
|
+
}), _el$130, _co$19);
|
|
2443
|
+
_$insert(_el$117, _$createComponent(Show, {
|
|
2444
|
+
get when() {
|
|
2445
|
+
return resolvedViews.toArray().some(Boolean);
|
|
2446
|
+
},
|
|
2447
|
+
get children() {
|
|
2448
|
+
var _el$119 = _$getNextElement(_tmpl$56);
|
|
2449
|
+
_$insert(_el$119, resolvedViews);
|
|
2450
|
+
return _el$119;
|
|
2451
|
+
}
|
|
2452
|
+
}), _el$132, _co$20);
|
|
2453
|
+
_$insert(_el$117, _$createComponent(Show, {
|
|
2454
|
+
get when() {
|
|
2455
|
+
return resolvedFilters.toArray().some(Boolean) || props.head?.filtered;
|
|
2456
|
+
},
|
|
2457
|
+
get children() {
|
|
2458
|
+
var _el$120 = _$getNextElement(_tmpl$57),
|
|
2459
|
+
_el$121 = _el$120.firstChild,
|
|
2460
|
+
[_el$122, _co$16] = _$getNextMarker(_el$121.nextSibling),
|
|
2461
|
+
_el$123 = _el$122.nextSibling,
|
|
2462
|
+
[_el$124, _co$17] = _$getNextMarker(_el$123.nextSibling);
|
|
2463
|
+
_$insert(_el$120, resolvedFilters, _el$122, _co$16);
|
|
2464
|
+
_$insert(_el$120, _$createComponent(Show, {
|
|
2465
|
+
get when() {
|
|
2466
|
+
return props.head?.filtered;
|
|
2467
|
+
},
|
|
2468
|
+
get children() {
|
|
2469
|
+
return _$createComponent(Show, {
|
|
2470
|
+
get when() {
|
|
2471
|
+
return props.head?.resetHref;
|
|
2472
|
+
},
|
|
2473
|
+
get fallback() {
|
|
2474
|
+
return _$createComponent(Button, {
|
|
2475
|
+
variant: "ghost",
|
|
2476
|
+
size: "sm",
|
|
2477
|
+
"class": "k2b-app-workspace__head-reset",
|
|
2478
|
+
onClick: () => props.head?.onReset?.(),
|
|
2479
|
+
get children() {
|
|
2480
|
+
return resetContent();
|
|
2481
|
+
}
|
|
2482
|
+
});
|
|
2483
|
+
},
|
|
2484
|
+
children: href => _$createComponent(ButtonLink, {
|
|
2485
|
+
variant: "ghost",
|
|
2486
|
+
size: "sm",
|
|
2487
|
+
"class": "k2b-app-workspace__head-reset",
|
|
2488
|
+
get href() {
|
|
2489
|
+
return href();
|
|
2490
|
+
},
|
|
2491
|
+
get onClick() {
|
|
2492
|
+
return props.head?.onReset ? event => {
|
|
2493
|
+
if (event.button !== 0 || event.metaKey || event.ctrlKey || event.shiftKey || event.altKey) return;
|
|
2494
|
+
event.preventDefault();
|
|
2495
|
+
props.head?.onReset?.();
|
|
2496
|
+
} : undefined;
|
|
2497
|
+
},
|
|
2498
|
+
get children() {
|
|
2499
|
+
return resetContent();
|
|
2500
|
+
}
|
|
2501
|
+
})
|
|
2502
|
+
});
|
|
2503
|
+
}
|
|
2504
|
+
}), _el$124, _co$17);
|
|
2505
|
+
_$effect(() => _$setAttribute(_el$120, "aria-label", filters().filters));
|
|
2506
|
+
return _el$120;
|
|
2507
|
+
}
|
|
2508
|
+
}), _el$134, _co$21);
|
|
2509
|
+
_$insert(_el$117, _$createComponent(Show, {
|
|
2510
|
+
get when() {
|
|
2511
|
+
return _$memo(() => !!props.head?.filtered)() && resolvedCount.toArray().some(value => value !== undefined && value !== null && value !== false);
|
|
2512
|
+
},
|
|
2513
|
+
get children() {
|
|
2514
|
+
var _el$125 = _$getNextElement(_tmpl$58),
|
|
2515
|
+
_el$126 = _el$125.firstChild;
|
|
2516
|
+
_$insert(_el$126, resolvedCount);
|
|
2517
|
+
return _el$125;
|
|
2518
|
+
}
|
|
2519
|
+
}), _el$136, _co$22);
|
|
2520
|
+
_$insert(_el$116, _$createComponent(Show, {
|
|
2521
|
+
get when() {
|
|
2522
|
+
return resolvedActions.toArray().some(Boolean) || props.head?.primary;
|
|
2523
|
+
},
|
|
2524
|
+
get children() {
|
|
2525
|
+
var _el$137 = _$getNextElement(_tmpl$59),
|
|
2526
|
+
_el$138 = _el$137.firstChild,
|
|
2527
|
+
[_el$139, _co$23] = _$getNextMarker(_el$138.nextSibling),
|
|
2528
|
+
_el$140 = _el$139.nextSibling,
|
|
2529
|
+
[_el$141, _co$24] = _$getNextMarker(_el$140.nextSibling);
|
|
2530
|
+
_$insert(_el$137, resolvedActions, _el$139, _co$23);
|
|
2531
|
+
_$insert(_el$137, _$createComponent(Show, {
|
|
2532
|
+
get when() {
|
|
2533
|
+
return props.head?.primary;
|
|
2534
|
+
},
|
|
2535
|
+
children: primary => _$createComponent(Show, {
|
|
2536
|
+
get when() {
|
|
2537
|
+
return primary().href;
|
|
2538
|
+
},
|
|
2539
|
+
get fallback() {
|
|
2540
|
+
return _$createComponent(Button, {
|
|
2541
|
+
variant: "primary",
|
|
2542
|
+
size: "sm",
|
|
2543
|
+
"class": "k2b-app-workspace__head-primary",
|
|
2544
|
+
"data-workspace-primary": "",
|
|
2545
|
+
get onClick() {
|
|
2546
|
+
return primary().onClick;
|
|
2547
|
+
},
|
|
2548
|
+
get children() {
|
|
2549
|
+
return primaryContent();
|
|
2550
|
+
}
|
|
2551
|
+
});
|
|
2552
|
+
},
|
|
2553
|
+
children: href => _$createComponent(ButtonLink, {
|
|
2554
|
+
variant: "primary",
|
|
2555
|
+
size: "sm",
|
|
2556
|
+
"class": "k2b-app-workspace__head-primary",
|
|
2557
|
+
"data-workspace-primary": "",
|
|
2558
|
+
get href() {
|
|
2559
|
+
return href();
|
|
2560
|
+
},
|
|
2561
|
+
get onClick() {
|
|
2562
|
+
return primary().onClick;
|
|
2563
|
+
},
|
|
2564
|
+
get children() {
|
|
2565
|
+
return primaryContent();
|
|
2566
|
+
}
|
|
2567
|
+
})
|
|
2568
|
+
})
|
|
2569
|
+
}), _el$141, _co$24);
|
|
2570
|
+
return _el$137;
|
|
2571
|
+
}
|
|
2572
|
+
}), _el$143, _co$25);
|
|
2573
|
+
_$effect(_p$ => {
|
|
2574
|
+
var _v$85 = trail()?.ancestors.length ? "up" : trail() ? "title" : undefined,
|
|
2575
|
+
_v$86 = props.head ? "" : undefined;
|
|
2576
|
+
_v$85 !== _p$.e && _$setAttribute(_el$116, "data-trail", _p$.e = _v$85);
|
|
2577
|
+
_v$86 !== _p$.t && _$setAttribute(_el$116, "data-row", _p$.t = _v$86);
|
|
2578
|
+
return _p$;
|
|
2579
|
+
}, {
|
|
2580
|
+
e: undefined,
|
|
2581
|
+
t: undefined
|
|
2582
|
+
});
|
|
2583
|
+
return _el$116;
|
|
2175
2584
|
})();
|
|
2176
2585
|
}
|
|
2177
2586
|
const AppWorkspace = props => {
|
|
@@ -2199,6 +2608,20 @@ const AppWorkspace = props => {
|
|
|
2199
2608
|
writeState: state => props.onLayoutChange?.(state)
|
|
2200
2609
|
}));
|
|
2201
2610
|
});
|
|
2611
|
+
const contents = () => {
|
|
2612
|
+
const resolved = children(() => props.children);
|
|
2613
|
+
const slots = createMemo(() => flatten(resolved()));
|
|
2614
|
+
// Same props object, same memo value: a sibling change must not rebuild the head's slots.
|
|
2615
|
+
const head = createMemo(() => slots().find(headSlot)?.props);
|
|
2616
|
+
const content = () => slots().filter(value => !headSlot(value));
|
|
2617
|
+
return [_$createComponent(AppWorkspaceHead, {
|
|
2618
|
+
sidebarId: sidebarId,
|
|
2619
|
+
nested: nested,
|
|
2620
|
+
get head() {
|
|
2621
|
+
return head();
|
|
2622
|
+
}
|
|
2623
|
+
}), _$memo(content)];
|
|
2624
|
+
};
|
|
2202
2625
|
return _$createComponent(ResizeContext.Provider, {
|
|
2203
2626
|
get value() {
|
|
2204
2627
|
return props.resizable !== false;
|
|
@@ -2207,31 +2630,23 @@ const AppWorkspace = props => {
|
|
|
2207
2630
|
return _$createComponent(WorkspaceContext.Provider, {
|
|
2208
2631
|
value: workspace,
|
|
2209
2632
|
get children() {
|
|
2210
|
-
var _el$
|
|
2211
|
-
|
|
2212
|
-
|
|
2213
|
-
|
|
2214
|
-
[_el$119, _co$19] = _$getNextMarker(_el$118.nextSibling);
|
|
2215
|
-
var _ref$7 = root;
|
|
2216
|
-
typeof _ref$7 === "function" ? _$use(_ref$7, _el$115) : root = _el$115;
|
|
2217
|
-
_$insert(_el$115, _$createComponent(AppWorkspaceHead, {
|
|
2218
|
-
sidebarId: sidebarId,
|
|
2219
|
-
nested: nested
|
|
2220
|
-
}), _el$117, _co$18);
|
|
2221
|
-
_$insert(_el$115, () => props.children, _el$119, _co$19);
|
|
2633
|
+
var _el$145 = _$getNextElement(_tmpl$62);
|
|
2634
|
+
var _ref$8 = root;
|
|
2635
|
+
typeof _ref$8 === "function" ? _$use(_ref$8, _el$145) : root = _el$145;
|
|
2636
|
+
_$insert(_el$145, contents);
|
|
2222
2637
|
_$effect(_p$ => {
|
|
2223
|
-
var _v$
|
|
2224
|
-
_v$
|
|
2225
|
-
_v$
|
|
2226
|
-
_v$
|
|
2227
|
-
_v$
|
|
2228
|
-
_v$
|
|
2229
|
-
_v$
|
|
2230
|
-
_v$
|
|
2231
|
-
_v$
|
|
2232
|
-
_v$
|
|
2233
|
-
_v$
|
|
2234
|
-
_p$.n = _$style(_el$
|
|
2638
|
+
var _v$87 = `k2b-app-workspace ${props.class ?? ""}`,
|
|
2639
|
+
_v$88 = props.mobileSurface,
|
|
2640
|
+
_v$89 = props.flat ? "true" : undefined,
|
|
2641
|
+
_v$90 = initialLayoutState()?.sidebarCollapsed === undefined ? undefined : String(initialLayoutState()?.sidebarCollapsed),
|
|
2642
|
+
_v$91 = props.resizable === false ? "false" : "true",
|
|
2643
|
+
_v$92 = appWorkspaceLayoutStyle(initialLayoutState());
|
|
2644
|
+
_v$87 !== _p$.e && _$className(_el$145, _p$.e = _v$87);
|
|
2645
|
+
_v$88 !== _p$.t && _$setAttribute(_el$145, "data-mobile-surface", _p$.t = _v$88);
|
|
2646
|
+
_v$89 !== _p$.a && _$setAttribute(_el$145, "data-flat", _p$.a = _v$89);
|
|
2647
|
+
_v$90 !== _p$.o && _$setAttribute(_el$145, "data-sidebar-collapsed", _p$.o = _v$90);
|
|
2648
|
+
_v$91 !== _p$.i && _$setAttribute(_el$145, "data-workspace-resizable", _p$.i = _v$91);
|
|
2649
|
+
_p$.n = _$style(_el$145, _v$92, _p$.n);
|
|
2235
2650
|
return _p$;
|
|
2236
2651
|
}, {
|
|
2237
2652
|
e: undefined,
|
|
@@ -2241,7 +2656,7 @@ const AppWorkspace = props => {
|
|
|
2241
2656
|
i: undefined,
|
|
2242
2657
|
n: undefined
|
|
2243
2658
|
});
|
|
2244
|
-
return _el$
|
|
2659
|
+
return _el$145;
|
|
2245
2660
|
}
|
|
2246
2661
|
});
|
|
2247
2662
|
}
|
|
@@ -2255,11 +2670,12 @@ AppWorkspace.LayoutStateProvider = props => _$createComponent(LayoutStateContext
|
|
|
2255
2670
|
return props.children;
|
|
2256
2671
|
}
|
|
2257
2672
|
});
|
|
2673
|
+
AppWorkspace.Head = AppWorkspaceHeadSlot;
|
|
2258
2674
|
AppWorkspace.Content = props => (() => {
|
|
2259
|
-
var _el$
|
|
2260
|
-
_$insert(_el$
|
|
2261
|
-
_$effect(() => _$className(_el$
|
|
2262
|
-
return _el$
|
|
2675
|
+
var _el$146 = _$getNextElement(_tmpl$5);
|
|
2676
|
+
_$insert(_el$146, () => props.children);
|
|
2677
|
+
_$effect(() => _$className(_el$146, `k2b-app-workspace__content ${props.class ?? ""}`));
|
|
2678
|
+
return _el$146;
|
|
2263
2679
|
})();
|
|
2264
2680
|
AppWorkspace.Main = AppWorkspaceMain;
|
|
2265
2681
|
AppWorkspace.MainPane = AppWorkspaceMainPane;
|