@k2b/ui 0.30.0 → 0.32.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 -0
- package/dist/browser/actions/Toolbar.js +2 -0
- package/dist/browser/actions/Toolbar.js.map +1 -1
- package/dist/browser/actions/ViewTabs.js +8 -0
- package/dist/browser/actions/ViewTabs.js.map +1 -1
- package/dist/browser/chat/ChatDecision.js +28 -2
- package/dist/browser/chat/ChatDecision.js.map +1 -1
- package/dist/browser/content/Chart.js +104 -55
- package/dist/browser/content/Chart.js.map +1 -1
- package/dist/browser/content/ChartExplorer.js +5 -3
- package/dist/browser/content/ChartExplorer.js.map +1 -1
- package/dist/browser/content/MapAttribution.js +27 -0
- package/dist/browser/content/MapAttribution.js.map +1 -0
- package/dist/browser/content/MapView.js +553 -0
- package/dist/browser/content/MapView.js.map +1 -0
- package/dist/browser/content/MapViewFrame.js +395 -0
- package/dist/browser/content/MapViewFrame.js.map +1 -0
- package/dist/browser/content/chart-inspection-core.js +4 -1
- package/dist/browser/content/chart-inspection-core.js.map +1 -1
- package/dist/browser/content/code-highlight.js +66 -0
- package/dist/browser/content/code-highlight.js.map +1 -1
- package/dist/browser/content/index.js +6 -0
- package/dist/browser/content/index.js.map +1 -1
- package/dist/browser/content/map-palette.js +39 -0
- package/dist/browser/content/map-palette.js.map +1 -0
- package/dist/browser/content/map-style.js +276 -0
- package/dist/browser/content/map-style.js.map +1 -0
- package/dist/browser/content/map-view-geometry.js +269 -0
- package/dist/browser/content/map-view-geometry.js.map +1 -0
- package/dist/browser/content/map-view-live.js +65 -0
- package/dist/browser/content/map-view-live.js.map +1 -0
- package/dist/browser/content/map-view-messages.js +53 -0
- package/dist/browser/content/map-view-messages.js.map +1 -0
- package/dist/browser/content/map-view-types.js +2 -0
- package/dist/browser/content/map-view-types.js.map +1 -0
- package/dist/browser/content/map-view-worker.js +10 -0
- package/dist/browser/feedback/dialog-core.js +19 -0
- package/dist/browser/feedback/dialog-core.js.map +1 -1
- package/dist/browser/inputs/AutocompleteEditor.js +167 -104
- package/dist/browser/inputs/AutocompleteEditor.js.map +1 -1
- package/dist/browser/inputs/RichSelect.js +1474 -0
- package/dist/browser/inputs/RichSelect.js.map +1 -0
- package/dist/browser/inputs/TextInput.js +95 -60
- package/dist/browser/inputs/TextInput.js.map +1 -1
- package/dist/browser/inputs/choice.js +19 -8
- package/dist/browser/inputs/choice.js.map +1 -1
- package/dist/browser/inputs/index.js +1 -0
- package/dist/browser/inputs/index.js.map +1 -1
- package/dist/browser/inputs/rich-select-messages.js +46 -0
- package/dist/browser/inputs/rich-select-messages.js.map +1 -0
- package/dist/browser/layout/AppWorkspace.js +194 -144
- package/dist/browser/layout/AppWorkspace.js.map +1 -1
- package/dist/browser/layout/DetailPanel.js +10 -1
- package/dist/browser/layout/DetailPanel.js.map +1 -1
- package/dist/browser/layout/Navigation.js +14 -5
- package/dist/browser/layout/Navigation.js.map +1 -1
- package/dist/browser/layout/PageTitle.js +9 -3
- package/dist/browser/layout/PageTitle.js.map +1 -1
- package/dist/browser/layout/ResizeSeparator.js +8 -2
- package/dist/browser/layout/ResizeSeparator.js.map +1 -1
- package/dist/browser/layout/app-workspace-controller.js +301 -34
- package/dist/browser/layout/app-workspace-controller.js.map +1 -1
- package/dist/browser/layout/app-workspace-width.js +26 -0
- package/dist/browser/layout/app-workspace-width.js.map +1 -0
- package/dist/browser/layout/index.js +1 -1
- package/dist/browser/layout/index.js.map +1 -1
- package/dist/browser/layout/navigation-model.js.map +1 -1
- package/dist/browser/layout/resize-separator.js +25 -1
- package/dist/browser/layout/resize-separator.js.map +1 -1
- package/dist/browser/surfaces/Skeleton.js +14 -0
- package/dist/browser/surfaces/Skeleton.js.map +1 -0
- package/dist/browser/surfaces/index.js +1 -0
- package/dist/browser/surfaces/index.js.map +1 -1
- package/dist/licenses/maplibre-gl.txt +116 -0
- package/dist/ssr/actions/Toolbar.js +2 -0
- package/dist/ssr/actions/Toolbar.js.map +1 -1
- package/dist/ssr/actions/ViewTabs.js +8 -0
- package/dist/ssr/actions/ViewTabs.js.map +1 -1
- package/dist/ssr/chat/ChatDecision.js +11 -0
- package/dist/ssr/chat/ChatDecision.js.map +1 -1
- package/dist/ssr/content/Chart.js +27 -7
- package/dist/ssr/content/Chart.js.map +1 -1
- package/dist/ssr/content/ChartExplorer.js +5 -3
- package/dist/ssr/content/ChartExplorer.js.map +1 -1
- package/dist/ssr/content/MapAttribution.js +19 -0
- package/dist/ssr/content/MapAttribution.js.map +1 -0
- package/dist/ssr/content/MapView.js +474 -0
- package/dist/ssr/content/MapView.js.map +1 -0
- package/dist/ssr/content/MapViewFrame.js +193 -0
- package/dist/ssr/content/MapViewFrame.js.map +1 -0
- package/dist/ssr/content/chart-inspection-core.js +4 -1
- package/dist/ssr/content/chart-inspection-core.js.map +1 -1
- package/dist/ssr/content/code-highlight.js +66 -0
- package/dist/ssr/content/code-highlight.js.map +1 -1
- package/dist/ssr/content/index.js +6 -0
- package/dist/ssr/content/index.js.map +1 -1
- package/dist/ssr/content/map-palette.js +39 -0
- package/dist/ssr/content/map-palette.js.map +1 -0
- package/dist/ssr/content/map-style.js +276 -0
- package/dist/ssr/content/map-style.js.map +1 -0
- package/dist/ssr/content/map-view-geometry.js +269 -0
- package/dist/ssr/content/map-view-geometry.js.map +1 -0
- package/dist/ssr/content/map-view-live.js +1 -0
- package/dist/ssr/content/map-view-messages.js +53 -0
- package/dist/ssr/content/map-view-messages.js.map +1 -0
- package/dist/ssr/content/map-view-types.js +2 -0
- package/dist/ssr/content/map-view-types.js.map +1 -0
- package/dist/ssr/feedback/dialog-core.js +19 -0
- package/dist/ssr/feedback/dialog-core.js.map +1 -1
- package/dist/ssr/inputs/AutocompleteEditor.js +64 -24
- package/dist/ssr/inputs/AutocompleteEditor.js.map +1 -1
- package/dist/ssr/inputs/RichSelect.js +950 -0
- package/dist/ssr/inputs/RichSelect.js.map +1 -0
- package/dist/ssr/inputs/TextInput.js +40 -16
- package/dist/ssr/inputs/TextInput.js.map +1 -1
- package/dist/ssr/inputs/choice.js +19 -8
- package/dist/ssr/inputs/choice.js.map +1 -1
- package/dist/ssr/inputs/index.js +1 -0
- package/dist/ssr/inputs/index.js.map +1 -1
- package/dist/ssr/inputs/rich-select-messages.js +46 -0
- package/dist/ssr/inputs/rich-select-messages.js.map +1 -0
- package/dist/ssr/layout/AppWorkspace.js +53 -16
- package/dist/ssr/layout/AppWorkspace.js.map +1 -1
- package/dist/ssr/layout/DetailPanel.js +1 -1
- package/dist/ssr/layout/DetailPanel.js.map +1 -1
- package/dist/ssr/layout/Navigation.js +1 -1
- package/dist/ssr/layout/Navigation.js.map +1 -1
- package/dist/ssr/layout/PageTitle.js +9 -3
- package/dist/ssr/layout/PageTitle.js.map +1 -1
- package/dist/ssr/layout/ResizeSeparator.js +4 -1
- package/dist/ssr/layout/ResizeSeparator.js.map +1 -1
- package/dist/ssr/layout/app-workspace-controller.js +301 -34
- package/dist/ssr/layout/app-workspace-controller.js.map +1 -1
- package/dist/ssr/layout/app-workspace-width.js +26 -0
- package/dist/ssr/layout/app-workspace-width.js.map +1 -0
- package/dist/ssr/layout/index.js +1 -1
- package/dist/ssr/layout/index.js.map +1 -1
- package/dist/ssr/layout/navigation-model.js.map +1 -1
- package/dist/ssr/layout/resize-separator.js +25 -1
- package/dist/ssr/layout/resize-separator.js.map +1 -1
- package/dist/ssr/surfaces/Skeleton.js +8 -0
- package/dist/ssr/surfaces/Skeleton.js.map +1 -0
- package/dist/ssr/surfaces/index.js +1 -0
- package/dist/ssr/surfaces/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/content/Chart.d.ts +4 -2
- package/dist/types/content/ChartExplorer.d.ts +0 -1
- package/dist/types/content/MapAttribution.d.ts +6 -0
- package/dist/types/content/MapView.d.ts +5 -0
- package/dist/types/content/MapViewFrame.d.ts +31 -0
- package/dist/types/content/code-highlight.d.ts +3 -1
- package/dist/types/content/index.d.ts +7 -0
- package/dist/types/content/map-palette.d.ts +58 -0
- package/dist/types/content/map-style.d.ts +29 -0
- package/dist/types/content/map-view-geometry.d.ts +55 -0
- package/dist/types/content/map-view-live.d.ts +2 -0
- package/dist/types/content/map-view-messages.d.ts +21 -0
- package/dist/types/content/map-view-types.d.ts +63 -0
- package/dist/types/feedback/dialog-core.d.ts +1 -0
- package/dist/types/inputs/AutocompleteEditor.d.ts +6 -1
- package/dist/types/inputs/RichSelect.d.ts +93 -0
- package/dist/types/inputs/TextInput.d.ts +5 -2
- package/dist/types/inputs/choice.d.ts +24 -4
- package/dist/types/inputs/index.d.ts +2 -0
- package/dist/types/inputs/rich-select-messages.d.ts +21 -0
- package/dist/types/layout/AppWorkspace.d.ts +14 -3
- package/dist/types/layout/DetailPanel.d.ts +2 -0
- package/dist/types/layout/app-workspace-controller.d.ts +2 -0
- package/dist/types/layout/app-workspace-width.d.ts +13 -0
- package/dist/types/layout/index.d.ts +2 -2
- package/dist/types/layout/navigation-model.d.ts +2 -0
- package/dist/types/layout/resize-separator.d.ts +1 -0
- package/dist/types/surfaces/Skeleton.d.ts +6 -0
- package/dist/types/surfaces/index.d.ts +1 -0
- package/map-glyphs/IBM Plex Sans Medium/0-255.pbf +0 -0
- package/map-glyphs/IBM Plex Sans Medium/1024-1279.pbf +0 -0
- package/map-glyphs/IBM Plex Sans Medium/256-511.pbf +0 -0
- package/map-glyphs/IBM Plex Sans Medium/512-767.pbf +0 -0
- package/map-glyphs/IBM Plex Sans Medium/768-1023.pbf +0 -0
- package/map-glyphs/IBM Plex Sans Medium/7680-7935.pbf +0 -0
- package/map-glyphs/IBM Plex Sans Medium/8192-8447.pbf +0 -0
- package/map-glyphs/IBM Plex Sans Medium/8448-8703.pbf +0 -0
- package/map-glyphs/IBM Plex Sans Medium/8704-8959.pbf +0 -0
- package/map-glyphs/OFL.txt +93 -0
- package/package.json +11 -6
|
@@ -77,7 +77,7 @@ var _tmpl$ = /*#__PURE__*/_$template(`<button type=button class=k2b-app-workspac
|
|
|
77
77
|
_tmpl$57 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__head-filters role=group><!$><!/><!$><!/>`),
|
|
78
78
|
_tmpl$58 = /*#__PURE__*/_$template(`<span class=k2b-app-workspace__head-count><span>`),
|
|
79
79
|
_tmpl$59 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__head-actions><!$><!/><!$><!/>`),
|
|
80
|
-
_tmpl$60 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__head
|
|
80
|
+
_tmpl$60 = /*#__PURE__*/_$template(`<div class=k2b-app-workspace__head><!$><!/><div class=k2b-app-workspace__head-lead><!$><!/><!$><!/><!$><!/><!$><!/><!$><!/></div><!$><!/>`),
|
|
81
81
|
_tmpl$61 = /*#__PURE__*/_$template(`<h1 class=k2b-app-workspace__head-heading data-k2b-page-trail-title>`),
|
|
82
82
|
_tmpl$62 = /*#__PURE__*/_$template(`<div data-k2b-app-workspace>`);
|
|
83
83
|
import { Link } from "@k2b/ssr/nav";
|
|
@@ -87,8 +87,9 @@ import { Button, ButtonLink, IconButton, IconButtonLink } from "../actions/Butto
|
|
|
87
87
|
import { useFilterMessages } from "../actions/filter-messages";
|
|
88
88
|
import { dialogCore } from "../feedback/dialog-core";
|
|
89
89
|
import { RenderErrorBoundary } from "../internal/render-error";
|
|
90
|
-
import { APP_WORKSPACE_DETAIL_CLOSE_EVENT, APP_WORKSPACE_DETAIL_STEP_EVENT, APP_WORKSPACE_SIDEBAR_HIDE_EVENT, installAppWorkspaceController } from "./app-workspace-controller";
|
|
90
|
+
import { APP_WORKSPACE_DETAIL_CLOSE_EVENT, APP_WORKSPACE_DETAIL_OPEN_EVENT, APP_WORKSPACE_DETAIL_STEP_EVENT, APP_WORKSPACE_SIDEBAR_HIDE_EVENT, installAppWorkspaceController } from "./app-workspace-controller";
|
|
91
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 { appWorkspaceInverseWidthCss, appWorkspaceWidthCss, appWorkspaceWidthToken, isAppWorkspaceWidthShare } from "./app-workspace-width";
|
|
92
93
|
import BottomSheet, { bottomSheetAdaptiveOptions } from "./BottomSheet";
|
|
93
94
|
import { PageTitle, usePageTrail } from "./PageTitle";
|
|
94
95
|
import { SidebarItemPreview } from "./SidebarItemPreview";
|
|
@@ -137,7 +138,7 @@ function ResizeHandle(props) {
|
|
|
137
138
|
const state = workspace?.initialLayoutState() ?? providerState;
|
|
138
139
|
const id = props.panelId ?? "primary";
|
|
139
140
|
const size = props.kind === "sidebar" ? state?.sidebarCollapsed ? APP_WORKSPACE_SIDEBAR_COLLAPSED : state?.sidebarWidth : props.kind === "pane" ? state?.paneWidths?.[id] : props.kind === "detail" ? state?.detailWidths?.[id] : state?.drawerHeights?.[id];
|
|
140
|
-
return Math.min(props.maxSize, Math.max(props.minSize, size ?? props.defaultSize));
|
|
141
|
+
return Math.min(props.maxSize, Math.max(props.minSize, size ?? (typeof props.defaultSize === "number" ? props.defaultSize : props.defaultSize.min)));
|
|
141
142
|
};
|
|
142
143
|
return (() => {
|
|
143
144
|
var _el$ = _$getNextElement(_tmpl$);
|
|
@@ -153,7 +154,7 @@ function ResizeHandle(props) {
|
|
|
153
154
|
_v$9 = props.panelId,
|
|
154
155
|
_v$0 = props.edge,
|
|
155
156
|
_v$1 = props.shadow ? "true" : undefined,
|
|
156
|
-
_v$10 = props.defaultSize,
|
|
157
|
+
_v$10 = appWorkspaceWidthToken(props.defaultSize),
|
|
157
158
|
_v$11 = props.minSize,
|
|
158
159
|
_v$12 = props.maxSize,
|
|
159
160
|
_v$13 = props.style;
|
|
@@ -361,11 +362,12 @@ function AppWorkspaceMain(props) {
|
|
|
361
362
|
// as `AppWorkspace.Detail` does with its width.
|
|
362
363
|
const minWidth = () => {
|
|
363
364
|
const value = props.minWidth;
|
|
364
|
-
return value
|
|
365
|
+
return isAppWorkspaceWidthShare(value) ? value : typeof value === "number" && Number.isFinite(value) && value > APP_WORKSPACE_MAIN_MIN ? Math.round(value) : undefined;
|
|
365
366
|
};
|
|
366
367
|
const minWidthRule = value => {
|
|
367
|
-
const main = `.k2b-app-workspace__main[data-workspace-main-min="${value}"]`;
|
|
368
|
-
|
|
368
|
+
const main = `.k2b-app-workspace__main[data-workspace-main-min="${appWorkspaceWidthToken(value)}"]`;
|
|
369
|
+
const inverse = typeof value === "number" ? "" : `;--k2b-workspace-main-min-grid:${appWorkspaceInverseWidthCss(value, "100%")};--k2b-workspace-main-min-cq:${appWorkspaceInverseWidthCss(value, "100cqi")}`;
|
|
370
|
+
return `.k2b-app-workspace:has(> .k2b-app-workspace__content > ${main}, > .k2b-app-workspace__content > :is(solid-island, solid-client) > ${main}){--k2b-workspace-main-min:${appWorkspaceWidthCss(value, "100%")}${inverse}}`;
|
|
369
371
|
};
|
|
370
372
|
return [_$createComponent(Show, {
|
|
371
373
|
get when() {
|
|
@@ -385,7 +387,7 @@ function AppWorkspaceMain(props) {
|
|
|
385
387
|
return `k2b-app-workspace__main ${hasPanes() ? "has-panes" : ""} ${props.class ?? ""}`;
|
|
386
388
|
},
|
|
387
389
|
get ["data-workspace-main-min"]() {
|
|
388
|
-
return minWidth();
|
|
390
|
+
return _$memo(() => minWidth() === undefined)() ? undefined : appWorkspaceWidthToken(minWidth());
|
|
389
391
|
},
|
|
390
392
|
get ["data-workspace-levels"]() {
|
|
391
393
|
return levelsMode() ? "" : undefined;
|
|
@@ -441,7 +443,10 @@ function AppWorkspaceMain(props) {
|
|
|
441
443
|
const variable = appWorkspacePanelVariable("pane", panelId);
|
|
442
444
|
const isAnchor = () => region === anchorRegion();
|
|
443
445
|
const resizable = () => !isAnchor() && (pane.props.resizable ?? rootResizable);
|
|
444
|
-
const defaultSize = () =>
|
|
446
|
+
const defaultSize = () => {
|
|
447
|
+
const value = pane.props.defaultSize;
|
|
448
|
+
return typeof value === "number" || isAppWorkspaceWidthShare(value) ? value : APP_WORKSPACE_PANE_DEFAULT;
|
|
449
|
+
};
|
|
445
450
|
const minSize = () => pane.props.minSize ?? APP_WORKSPACE_PANE_MIN;
|
|
446
451
|
const maxSize = () => Math.max(minSize(), pane.props.maxSize ?? APP_WORKSPACE_PANE_MAX);
|
|
447
452
|
const before = () => levelsMode() || region.index < (anchorRegion()?.index ?? 0);
|
|
@@ -561,7 +566,7 @@ function AppWorkspaceMain(props) {
|
|
|
561
566
|
_v$26 = !levelsMode() && pane.props.scroll !== false && pane.props.scrollFade !== false ? "both" : undefined,
|
|
562
567
|
_v$27 = isAnchor() ? undefined : {
|
|
563
568
|
// A stored width keeps to this pane's limits before the controller attaches.
|
|
564
|
-
"--k2b-workspace-panel-size": `clamp(${minSize()}px, var(${variable}, ${defaultSize()}
|
|
569
|
+
"--k2b-workspace-panel-size": `clamp(${minSize()}px, var(${variable}, ${appWorkspaceWidthCss(defaultSize(), "var(--k2b-workspace-width)")}), ${maxSize()}px)`,
|
|
565
570
|
"--k2b-workspace-panel-min": `${minSize()}px`
|
|
566
571
|
};
|
|
567
572
|
_v$14 !== _p$.e && _$setAttribute(_el$15, "id", _p$.e = _v$14);
|
|
@@ -614,11 +619,14 @@ function AppWorkspaceMain(props) {
|
|
|
614
619
|
return _el$12;
|
|
615
620
|
})()];
|
|
616
621
|
}
|
|
622
|
+
|
|
623
|
+
/** The Detail region's DOM id, for application controls that target it with aria-controls. */
|
|
624
|
+
export const appWorkspaceDetailElementId = id => `k2b-workspace-detail-${assertStableUiId(id, "AppWorkspace.Detail id")}`;
|
|
617
625
|
function AppWorkspaceDetail(props) {
|
|
618
626
|
const workspaceMessages = useWorkspaceMessages();
|
|
619
627
|
const rootResizable = useContext(ResizeContext);
|
|
620
628
|
const panelId = () => assertStableUiId(props.id, "AppWorkspace.Detail id");
|
|
621
|
-
const domId = () =>
|
|
629
|
+
const domId = () => appWorkspaceDetailElementId(props.id);
|
|
622
630
|
const variable = () => appWorkspacePanelVariable("detail", panelId());
|
|
623
631
|
// Start widths of 20, 26, 30, and 34 rem. They feed `aria-valuenow` and the
|
|
624
632
|
// `var(…, Npx)` first-paint fallback, so they are behaviour, not taste.
|
|
@@ -649,15 +657,20 @@ function AppWorkspaceDetail(props) {
|
|
|
649
657
|
let aside;
|
|
650
658
|
onMount(() => {
|
|
651
659
|
const close = () => props.onClose?.();
|
|
660
|
+
const open = () => {
|
|
661
|
+
if (props.available !== false) props.onOpen?.();
|
|
662
|
+
};
|
|
652
663
|
const isStep = detail => typeof detail === "object" && detail !== null && "direction" in detail && (detail.direction === 1 || detail.direction === -1);
|
|
653
664
|
const step = event => {
|
|
654
665
|
if (!(event instanceof CustomEvent) || !isStep(event.detail)) return;
|
|
655
666
|
const item = props.onStep?.(event.detail.direction);
|
|
656
667
|
if (item instanceof HTMLElement) event.detail.item = item;
|
|
657
668
|
};
|
|
669
|
+
aside?.addEventListener(APP_WORKSPACE_DETAIL_OPEN_EVENT, open);
|
|
658
670
|
aside?.addEventListener(APP_WORKSPACE_DETAIL_CLOSE_EVENT, close);
|
|
659
671
|
aside?.addEventListener(APP_WORKSPACE_DETAIL_STEP_EVENT, step);
|
|
660
672
|
onCleanup(() => {
|
|
673
|
+
aside?.removeEventListener(APP_WORKSPACE_DETAIL_OPEN_EVENT, open);
|
|
661
674
|
aside?.removeEventListener(APP_WORKSPACE_DETAIL_CLOSE_EVENT, close);
|
|
662
675
|
aside?.removeEventListener(APP_WORKSPACE_DETAIL_STEP_EVENT, step);
|
|
663
676
|
});
|
|
@@ -674,6 +687,12 @@ function AppWorkspaceDetail(props) {
|
|
|
674
687
|
},
|
|
675
688
|
"aria-expanded": "false",
|
|
676
689
|
"data-app-workspace-detail-toggle": "",
|
|
690
|
+
get ["data-workspace-detail-reopen"]() {
|
|
691
|
+
return props.onOpen ? "true" : undefined;
|
|
692
|
+
},
|
|
693
|
+
get disabled() {
|
|
694
|
+
return props.available === false;
|
|
695
|
+
},
|
|
677
696
|
"class": "k2b-app-workspace__detail-toggle",
|
|
678
697
|
get children() {
|
|
679
698
|
return [_$getNextElement(_tmpl$1), _$memo(() => workspaceMessages().details)];
|
|
@@ -701,6 +720,7 @@ function AppWorkspaceDetail(props) {
|
|
|
701
720
|
get maxSize() {
|
|
702
721
|
return maxWidth();
|
|
703
722
|
},
|
|
723
|
+
shadow: true,
|
|
704
724
|
get style() {
|
|
705
725
|
return sizeStyle();
|
|
706
726
|
}
|
|
@@ -722,14 +742,15 @@ function AppWorkspaceDetail(props) {
|
|
|
722
742
|
_v$34 = props.openOnChoice === false ? "request" : undefined,
|
|
723
743
|
_v$35 = panelId(),
|
|
724
744
|
_v$36 = resizable() ? "true" : "false",
|
|
725
|
-
_v$37 = props.
|
|
726
|
-
_v$38 = props.
|
|
727
|
-
_v$39 =
|
|
728
|
-
_v$40 =
|
|
745
|
+
_v$37 = props.onOpen ? "true" : undefined,
|
|
746
|
+
_v$38 = props.onClose ? "true" : undefined,
|
|
747
|
+
_v$39 = props.onStep ? "true" : undefined,
|
|
748
|
+
_v$40 = !props.open || props.available === false,
|
|
749
|
+
_v$41 = {
|
|
729
750
|
...sizeStyle(),
|
|
730
751
|
"view-transition-name": props.viewTransitionName
|
|
731
752
|
},
|
|
732
|
-
_v$
|
|
753
|
+
_v$42 = workspaceMessages().detailFullHeight;
|
|
733
754
|
_v$30 !== _p$.e && _$setAttribute(_el$20, "id", _p$.e = _v$30);
|
|
734
755
|
_v$31 !== _p$.t && _$className(_el$20, _p$.t = _v$31);
|
|
735
756
|
_v$32 !== _p$.a && _$setAttribute(_el$20, "data-width", _p$.a = _v$32);
|
|
@@ -737,11 +758,12 @@ function AppWorkspaceDetail(props) {
|
|
|
737
758
|
_v$34 !== _p$.i && _$setAttribute(_el$20, "data-workspace-detail-choice", _p$.i = _v$34);
|
|
738
759
|
_v$35 !== _p$.n && _$setAttribute(_el$20, "data-workspace-panel-id", _p$.n = _v$35);
|
|
739
760
|
_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-
|
|
741
|
-
_v$38 !== _p$.r && _$setAttribute(_el$20, "data-workspace-detail-
|
|
742
|
-
_v$39 !== _p$.d && _$
|
|
743
|
-
_p$.l
|
|
744
|
-
|
|
761
|
+
_v$37 !== _p$.h && _$setAttribute(_el$20, "data-workspace-detail-reopen", _p$.h = _v$37);
|
|
762
|
+
_v$38 !== _p$.r && _$setAttribute(_el$20, "data-workspace-detail-closable", _p$.r = _v$38);
|
|
763
|
+
_v$39 !== _p$.d && _$setAttribute(_el$20, "data-workspace-detail-steppable", _p$.d = _v$39);
|
|
764
|
+
_v$40 !== _p$.l && _$setProperty(_el$20, "hidden", _p$.l = _v$40);
|
|
765
|
+
_p$.u = _$style(_el$20, _v$41, _p$.u);
|
|
766
|
+
_v$42 !== _p$.c && _$setAttribute(_el$21, "aria-label", _p$.c = _v$42);
|
|
745
767
|
return _p$;
|
|
746
768
|
}, {
|
|
747
769
|
e: undefined,
|
|
@@ -755,7 +777,8 @@ function AppWorkspaceDetail(props) {
|
|
|
755
777
|
r: undefined,
|
|
756
778
|
d: undefined,
|
|
757
779
|
l: undefined,
|
|
758
|
-
u: undefined
|
|
780
|
+
u: undefined,
|
|
781
|
+
c: undefined
|
|
759
782
|
});
|
|
760
783
|
return _el$20;
|
|
761
784
|
})()];
|
|
@@ -810,22 +833,22 @@ function AppWorkspaceBottomDrawer(props) {
|
|
|
810
833
|
var _el$24 = _$getNextElement(_tmpl$11);
|
|
811
834
|
_$insert(_el$24, () => props.children);
|
|
812
835
|
_$effect(_p$ => {
|
|
813
|
-
var _v$
|
|
814
|
-
_v$
|
|
815
|
-
_v$
|
|
816
|
-
_v$
|
|
817
|
-
_v$
|
|
818
|
-
_v$
|
|
819
|
-
_v$
|
|
820
|
-
_v$
|
|
821
|
-
_v$
|
|
822
|
-
_v$
|
|
823
|
-
_v$
|
|
824
|
-
_v$
|
|
825
|
-
_v$
|
|
826
|
-
_v$
|
|
827
|
-
_v$
|
|
828
|
-
_v$
|
|
836
|
+
var _v$43 = domId(),
|
|
837
|
+
_v$44 = `k2b-app-workspace__drawer ${props.class ?? ""}`,
|
|
838
|
+
_v$45 = props.height ?? "md",
|
|
839
|
+
_v$46 = panelId(),
|
|
840
|
+
_v$47 = resizable() ? "true" : "false",
|
|
841
|
+
_v$48 = !props.open,
|
|
842
|
+
_v$49 = `var(${variable()}, ${defaultHeight()}px)`,
|
|
843
|
+
_v$50 = props.viewTransitionName;
|
|
844
|
+
_v$43 !== _p$.e && _$setAttribute(_el$24, "id", _p$.e = _v$43);
|
|
845
|
+
_v$44 !== _p$.t && _$className(_el$24, _p$.t = _v$44);
|
|
846
|
+
_v$45 !== _p$.a && _$setAttribute(_el$24, "data-height", _p$.a = _v$45);
|
|
847
|
+
_v$46 !== _p$.o && _$setAttribute(_el$24, "data-workspace-panel-id", _p$.o = _v$46);
|
|
848
|
+
_v$47 !== _p$.i && _$setAttribute(_el$24, "data-workspace-resizable", _p$.i = _v$47);
|
|
849
|
+
_v$48 !== _p$.n && _$setProperty(_el$24, "hidden", _p$.n = _v$48);
|
|
850
|
+
_v$49 !== _p$.s && _$setStyleProperty(_el$24, "--k2b-workspace-panel-size", _p$.s = _v$49);
|
|
851
|
+
_v$50 !== _p$.h && _$setStyleProperty(_el$24, "view-transition-name", _p$.h = _v$50);
|
|
829
852
|
return _p$;
|
|
830
853
|
}, {
|
|
831
854
|
e: undefined,
|
|
@@ -928,10 +951,10 @@ function AppWorkspaceSidebar(props) {
|
|
|
928
951
|
_$addEventListener(_el$25, "click", event => choose(event, () => close()));
|
|
929
952
|
_$insert(_el$25, resolved);
|
|
930
953
|
_$effect(_p$ => {
|
|
931
|
-
var _v$
|
|
932
|
-
_v$
|
|
933
|
-
_v$
|
|
934
|
-
_p$.t = _$style(_el$25, _v$
|
|
954
|
+
var _v$51 = props.label,
|
|
955
|
+
_v$52 = accent;
|
|
956
|
+
_v$51 !== _p$.e && _$setAttribute(_el$25, "aria-label", _p$.e = _v$51);
|
|
957
|
+
_p$.t = _$style(_el$25, _v$52, _p$.t);
|
|
935
958
|
return _p$;
|
|
936
959
|
}, {
|
|
937
960
|
e: undefined,
|
|
@@ -1015,10 +1038,10 @@ function AppWorkspaceSidebar(props) {
|
|
|
1015
1038
|
typeof _ref$4 === "function" ? _$use(_ref$4, _el$26) : row = _el$26;
|
|
1016
1039
|
_$insert(_el$26, () => desktop()?.children);
|
|
1017
1040
|
_$effect(_p$ => {
|
|
1018
|
-
var _v$
|
|
1019
|
-
_v$
|
|
1020
|
-
_v$
|
|
1021
|
-
_v$
|
|
1041
|
+
var _v$53 = stacked() ? "both" : undefined,
|
|
1042
|
+
_v$54 = stacked() ? "horizontal" : undefined;
|
|
1043
|
+
_v$53 !== _p$.e && _$setAttribute(_el$26, "data-scroll-fade-mode", _p$.e = _v$53);
|
|
1044
|
+
_v$54 !== _p$.t && _$setAttribute(_el$26, "data-scroll-fade-axis", _p$.t = _v$54);
|
|
1022
1045
|
return _p$;
|
|
1023
1046
|
}, {
|
|
1024
1047
|
e: undefined,
|
|
@@ -1036,12 +1059,12 @@ function AppWorkspaceSidebar(props) {
|
|
|
1036
1059
|
_el$27.$$click = event => openAll(event.currentTarget);
|
|
1037
1060
|
_$insert(_el$28, () => workspaceMessages().sidebarAll);
|
|
1038
1061
|
_$effect(_p$ => {
|
|
1039
|
-
var _v$
|
|
1040
|
-
_v$
|
|
1062
|
+
var _v$55 = sheetOpen(),
|
|
1063
|
+
_v$56 = props.label ? workspaceMessages().sidebarAllLabel({
|
|
1041
1064
|
label: props.label
|
|
1042
1065
|
}) : undefined;
|
|
1043
|
-
_v$
|
|
1044
|
-
_v$
|
|
1066
|
+
_v$55 !== _p$.e && _$setAttribute(_el$27, "aria-expanded", _p$.e = _v$55);
|
|
1067
|
+
_v$56 !== _p$.t && _$setAttribute(_el$27, "aria-label", _p$.t = _v$56);
|
|
1045
1068
|
return _p$;
|
|
1046
1069
|
}, {
|
|
1047
1070
|
e: undefined,
|
|
@@ -1234,10 +1257,10 @@ const AppWorkspaceSidebarSection = props => {
|
|
|
1234
1257
|
_$setAttribute(_el$38, "aria-controls", id);
|
|
1235
1258
|
_$insert(_el$38, title, _el$41, _co$5);
|
|
1236
1259
|
_$effect(_p$ => {
|
|
1237
|
-
var _v$
|
|
1238
|
-
_v$
|
|
1239
|
-
_v$
|
|
1240
|
-
_v$
|
|
1260
|
+
var _v$57 = open(),
|
|
1261
|
+
_v$58 = open() ? "ti ti-chevron-down" : "ti ti-chevron-right";
|
|
1262
|
+
_v$57 !== _p$.e && _$setAttribute(_el$38, "aria-expanded", _p$.e = _v$57);
|
|
1263
|
+
_v$58 !== _p$.t && _$className(_el$39, _p$.t = _v$58);
|
|
1241
1264
|
return _p$;
|
|
1242
1265
|
}, {
|
|
1243
1266
|
e: undefined,
|
|
@@ -1359,10 +1382,10 @@ const AppWorkspaceSidebarItemStatus = props => {
|
|
|
1359
1382
|
}
|
|
1360
1383
|
}));
|
|
1361
1384
|
_$effect(_p$ => {
|
|
1362
|
-
var _v$
|
|
1363
|
-
_v$
|
|
1364
|
-
_v$
|
|
1365
|
-
_v$
|
|
1385
|
+
var _v$59 = waiting() !== null ? undefined : count() ? "count" : dot() ? "dot" : undefined,
|
|
1386
|
+
_v$60 = waiting() === null ? undefined : waiting() ? "count" : "zero";
|
|
1387
|
+
_v$59 !== _p$.e && _$setAttribute(_el$52, "data-unread", _p$.e = _v$59);
|
|
1388
|
+
_v$60 !== _p$.t && _$setAttribute(_el$52, "data-waiting", _p$.t = _v$60);
|
|
1366
1389
|
return _p$;
|
|
1367
1390
|
}, {
|
|
1368
1391
|
e: undefined,
|
|
@@ -1587,10 +1610,10 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1587
1610
|
}
|
|
1588
1611
|
}), _el$82, _co$12);
|
|
1589
1612
|
_$effect(_p$ => {
|
|
1590
|
-
var _v$
|
|
1591
|
-
_v$
|
|
1592
|
-
_v$
|
|
1593
|
-
_v$
|
|
1613
|
+
var _v$61 = oneLine() ? "1" : undefined,
|
|
1614
|
+
_v$62 = !oneLine() && typeof label() === "string" ? label() : undefined;
|
|
1615
|
+
_v$61 !== _p$.e && _$setAttribute(_el$76, "data-lines", _p$.e = _v$61);
|
|
1616
|
+
_v$62 !== _p$.t && _$setAttribute(_el$76, "data-label", _p$.t = _v$62);
|
|
1594
1617
|
return _p$;
|
|
1595
1618
|
}, {
|
|
1596
1619
|
e: undefined,
|
|
@@ -1605,10 +1628,10 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1605
1628
|
var _el$83 = _$getNextElement(_tmpl$40);
|
|
1606
1629
|
_$insert(_el$83, meta);
|
|
1607
1630
|
_$effect(_p$ => {
|
|
1608
|
-
var _v$
|
|
1609
|
-
_v$
|
|
1610
|
-
_v$
|
|
1611
|
-
_v$
|
|
1631
|
+
var _v$63 = props.preview?.trigger === "row" ? metaId : undefined,
|
|
1632
|
+
_v$64 = metaVisibility() === "hover" ? "hover" : undefined;
|
|
1633
|
+
_v$63 !== _p$.e && _$setAttribute(_el$83, "id", _p$.e = _v$63);
|
|
1634
|
+
_v$64 !== _p$.t && _$setAttribute(_el$83, "data-visibility", _p$.t = _v$64);
|
|
1612
1635
|
return _p$;
|
|
1613
1636
|
}, {
|
|
1614
1637
|
e: undefined,
|
|
@@ -1649,12 +1672,12 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1649
1672
|
_el$87.$$click = select;
|
|
1650
1673
|
_$insert(_el$87, content);
|
|
1651
1674
|
_$effect(_p$ => {
|
|
1652
|
-
var _v$
|
|
1653
|
-
_v$
|
|
1654
|
-
_v$
|
|
1655
|
-
_v$
|
|
1656
|
-
_v$
|
|
1657
|
-
_v$
|
|
1675
|
+
var _v$68 = actionSlot()?.disabled,
|
|
1676
|
+
_v$69 = actionSlot()?.visibility === "hover" ? "hover" : undefined,
|
|
1677
|
+
_v$70 = label();
|
|
1678
|
+
_v$68 !== _p$.e && _$setProperty(_el$87, "disabled", _p$.e = _v$68);
|
|
1679
|
+
_v$69 !== _p$.t && _$setAttribute(_el$87, "data-visibility", _p$.t = _v$69);
|
|
1680
|
+
_v$70 !== _p$.a && _$setAttribute(_el$87, "aria-label", _p$.a = _v$70);
|
|
1658
1681
|
return _p$;
|
|
1659
1682
|
}, {
|
|
1660
1683
|
e: undefined,
|
|
@@ -1670,12 +1693,12 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1670
1693
|
_el$86.$$click = select;
|
|
1671
1694
|
_$insert(_el$86, content);
|
|
1672
1695
|
_$effect(_p$ => {
|
|
1673
|
-
var _v$
|
|
1674
|
-
_v$
|
|
1675
|
-
_v$
|
|
1676
|
-
_v$
|
|
1677
|
-
_v$
|
|
1678
|
-
_v$
|
|
1696
|
+
var _v$65 = actionSlot()?.href,
|
|
1697
|
+
_v$66 = actionSlot()?.visibility === "hover" ? "hover" : undefined,
|
|
1698
|
+
_v$67 = label();
|
|
1699
|
+
_v$65 !== _p$.e && _$setAttribute(_el$86, "href", _p$.e = _v$65);
|
|
1700
|
+
_v$66 !== _p$.t && _$setAttribute(_el$86, "data-visibility", _p$.t = _v$66);
|
|
1701
|
+
_v$67 !== _p$.a && _$setAttribute(_el$86, "aria-label", _p$.a = _v$67);
|
|
1679
1702
|
return _p$;
|
|
1680
1703
|
}, {
|
|
1681
1704
|
e: undefined,
|
|
@@ -2026,10 +2049,10 @@ const AppWorkspaceNavTree = props => {
|
|
|
2026
2049
|
var _el$94 = _$getNextElement(_tmpl$46);
|
|
2027
2050
|
_$insert(_el$94, () => item.meta);
|
|
2028
2051
|
_$effect(_p$ => {
|
|
2029
|
-
var _v$
|
|
2030
|
-
_v$
|
|
2031
|
-
_v$
|
|
2032
|
-
_v$
|
|
2052
|
+
var _v$71 = `k2b-app-workspace__sidebar-item-meta ${hasChildren() ? "" : "k2b-app-workspace__nav-tree-leaf-meta"}`,
|
|
2053
|
+
_v$72 = item.metaVisibility === "hover" ? "hover" : undefined;
|
|
2054
|
+
_v$71 !== _p$.e && _$className(_el$94, _p$.e = _v$71);
|
|
2055
|
+
_v$72 !== _p$.t && _$setAttribute(_el$94, "data-visibility", _p$.t = _v$72);
|
|
2033
2056
|
return _p$;
|
|
2034
2057
|
}, {
|
|
2035
2058
|
e: undefined,
|
|
@@ -2181,28 +2204,28 @@ const AppWorkspaceNavTree = props => {
|
|
|
2181
2204
|
}
|
|
2182
2205
|
}), _el$104, _co$14);
|
|
2183
2206
|
_$effect(_p$ => {
|
|
2184
|
-
var _v$
|
|
2185
|
-
_v$
|
|
2186
|
-
_v$
|
|
2187
|
-
_v$
|
|
2188
|
-
_v$
|
|
2189
|
-
_v$
|
|
2190
|
-
_v$
|
|
2191
|
-
_v$
|
|
2192
|
-
_v$
|
|
2193
|
-
_v$
|
|
2194
|
-
_v$
|
|
2195
|
-
_v$
|
|
2196
|
-
_v$
|
|
2197
|
-
_v$
|
|
2198
|
-
_v$
|
|
2199
|
-
_v$
|
|
2200
|
-
_v$
|
|
2201
|
-
_v$
|
|
2202
|
-
_v$
|
|
2203
|
-
_v$
|
|
2204
|
-
_v$
|
|
2205
|
-
_v$
|
|
2207
|
+
var _v$73 = siblings().length,
|
|
2208
|
+
_v$74 = place() + 1,
|
|
2209
|
+
_v$75 = selected(),
|
|
2210
|
+
_v$76 = hasChildren() ? isExpanded(item.id) : undefined,
|
|
2211
|
+
_v$77 = item.disabled ? "true" : undefined,
|
|
2212
|
+
_v$78 = item.disabled ? -1 : tabStopId() === item.id ? 0 : -1,
|
|
2213
|
+
_v$79 = movable() ? true : undefined,
|
|
2214
|
+
_v$80 = item.id,
|
|
2215
|
+
_v$81 = dragged()?.id === item.id ? "" : undefined,
|
|
2216
|
+
_v$82 = dropTarget()?.id === item.id ? dropTarget().side : undefined,
|
|
2217
|
+
_v$83 = String(props.indented === false ? 0 : depth);
|
|
2218
|
+
_v$73 !== _p$.e && _$setAttribute(_el$99, "aria-setsize", _p$.e = _v$73);
|
|
2219
|
+
_v$74 !== _p$.t && _$setAttribute(_el$99, "aria-posinset", _p$.t = _v$74);
|
|
2220
|
+
_v$75 !== _p$.a && _$setAttribute(_el$99, "aria-selected", _p$.a = _v$75);
|
|
2221
|
+
_v$76 !== _p$.o && _$setAttribute(_el$99, "aria-expanded", _p$.o = _v$76);
|
|
2222
|
+
_v$77 !== _p$.i && _$setAttribute(_el$99, "aria-disabled", _p$.i = _v$77);
|
|
2223
|
+
_v$78 !== _p$.n && _$setAttribute(_el$99, "tabindex", _p$.n = _v$78);
|
|
2224
|
+
_v$79 !== _p$.s && _$setAttribute(_el$99, "draggable", _p$.s = _v$79);
|
|
2225
|
+
_v$80 !== _p$.h && _$setAttribute(_el$99, "data-k2b-nav-tree-id", _p$.h = _v$80);
|
|
2226
|
+
_v$81 !== _p$.r && _$setAttribute(_el$99, "data-k2b-nav-tree-dragging", _p$.r = _v$81);
|
|
2227
|
+
_v$82 !== _p$.d && _$setAttribute(_el$99, "data-k2b-nav-tree-drop", _p$.d = _v$82);
|
|
2228
|
+
_v$83 !== _p$.l && _$setStyleProperty(_el$99, "--k2b-nav-tree-depth", _p$.l = _v$83);
|
|
2206
2229
|
return _p$;
|
|
2207
2230
|
}, {
|
|
2208
2231
|
e: undefined,
|
|
@@ -2256,10 +2279,10 @@ const AppWorkspaceNavTree = props => {
|
|
|
2256
2279
|
typeof _ref$7 === "function" ? _$use(_ref$7, _el$105) : root = _el$105;
|
|
2257
2280
|
_$insert(_el$105, () => renderItems(roots, 0));
|
|
2258
2281
|
_$effect(_p$ => {
|
|
2259
|
-
var _v$
|
|
2260
|
-
_v$
|
|
2261
|
-
_v$
|
|
2262
|
-
_v$
|
|
2282
|
+
var _v$84 = `k2b-app-workspace__nav-tree ${props.class ?? ""}`,
|
|
2283
|
+
_v$85 = props.ariaLabel;
|
|
2284
|
+
_v$84 !== _p$.e && _$className(_el$105, _p$.e = _v$84);
|
|
2285
|
+
_v$85 !== _p$.t && _$setAttribute(_el$105, "aria-label", _p$.t = _v$85);
|
|
2263
2286
|
return _p$;
|
|
2264
2287
|
}, {
|
|
2265
2288
|
e: undefined,
|
|
@@ -2384,6 +2407,15 @@ function AppWorkspaceHead(props) {
|
|
|
2384
2407
|
const resolvedCount = children(() => props.head?.count);
|
|
2385
2408
|
// A nested workspace is part of a page that already shows its title.
|
|
2386
2409
|
const trail = props.nested ? () => undefined : usePageTrail();
|
|
2410
|
+
// Main already publishes the active region in SSR and on each selection.
|
|
2411
|
+
// Scope both sides to this workspace, including transparent island hosts;
|
|
2412
|
+
// a nested Main must never decide whether its parent's head is visible.
|
|
2413
|
+
const mobilePane = () => props.head?.mobilePane === undefined ? undefined : assertStableUiId(props.head.mobilePane, "AppWorkspace.Head mobilePane");
|
|
2414
|
+
const mobilePaneRule = pane => {
|
|
2415
|
+
const main = `.k2b-app-workspace__main.has-panes:not([data-workspace-levels]) > [data-workspace-mobile-active="true"]:not([data-workspace-main-region="${pane}"])`;
|
|
2416
|
+
const host = `.k2b-ui .k2b-app-workspace:has(> .k2b-app-workspace__head[data-workspace-head-pane="${pane}"]):has(> .k2b-app-workspace__content > ${main}, > .k2b-app-workspace__content > :is(solid-island, solid-client) > ${main})`;
|
|
2417
|
+
return `@media not all and (min-width:48rem){${host} > .k2b-app-workspace__head,${host} > .k2b-app-workspace__content > .k2b-app-workspace__detail-toggle,${host} > .k2b-app-workspace__content > :is(solid-island, solid-client) > .k2b-app-workspace__detail-toggle{display:none}}`;
|
|
2418
|
+
};
|
|
2387
2419
|
const resetContent = () => filters().reset;
|
|
2388
2420
|
const primaryContent = () => [(() => {
|
|
2389
2421
|
var _el$114 = _$getNextElement(_tmpl$53);
|
|
@@ -2396,7 +2428,9 @@ function AppWorkspaceHead(props) {
|
|
|
2396
2428
|
})()];
|
|
2397
2429
|
return (() => {
|
|
2398
2430
|
var _el$116 = _$getNextElement(_tmpl$60),
|
|
2399
|
-
_el$
|
|
2431
|
+
_el$142 = _el$116.firstChild,
|
|
2432
|
+
[_el$143, _co$25] = _$getNextMarker(_el$142.nextSibling),
|
|
2433
|
+
_el$117 = _el$143.nextSibling,
|
|
2400
2434
|
_el$127 = _el$117.firstChild,
|
|
2401
2435
|
[_el$128, _co$18] = _$getNextMarker(_el$127.nextSibling),
|
|
2402
2436
|
_el$129 = _el$128.nextSibling,
|
|
@@ -2407,8 +2441,18 @@ function AppWorkspaceHead(props) {
|
|
|
2407
2441
|
[_el$134, _co$21] = _$getNextMarker(_el$133.nextSibling),
|
|
2408
2442
|
_el$135 = _el$134.nextSibling,
|
|
2409
2443
|
[_el$136, _co$22] = _$getNextMarker(_el$135.nextSibling),
|
|
2410
|
-
_el$
|
|
2411
|
-
[_el$
|
|
2444
|
+
_el$144 = _el$117.nextSibling,
|
|
2445
|
+
[_el$145, _co$26] = _$getNextMarker(_el$144.nextSibling);
|
|
2446
|
+
_$insert(_el$116, _$createComponent(Show, {
|
|
2447
|
+
get when() {
|
|
2448
|
+
return mobilePane();
|
|
2449
|
+
},
|
|
2450
|
+
children: pane => (() => {
|
|
2451
|
+
var _el$146 = _$getNextElement(_tmpl$6);
|
|
2452
|
+
_$effect(() => _$setProperty(_el$146, "innerHTML", mobilePaneRule(pane())));
|
|
2453
|
+
return _el$146;
|
|
2454
|
+
})()
|
|
2455
|
+
}), _el$143, _co$25);
|
|
2412
2456
|
_$insert(_el$117, _$createComponent(IconButton, {
|
|
2413
2457
|
"class": "k2b-app-workspace__head-toggle",
|
|
2414
2458
|
get label() {
|
|
@@ -2434,10 +2478,10 @@ function AppWorkspaceHead(props) {
|
|
|
2434
2478
|
as: "p",
|
|
2435
2479
|
fallback: true
|
|
2436
2480
|
}), (() => {
|
|
2437
|
-
var _el$
|
|
2438
|
-
_$setAttribute(_el$
|
|
2439
|
-
_$insert(_el$
|
|
2440
|
-
return _el$
|
|
2481
|
+
var _el$147 = _$getNextElement(_tmpl$61);
|
|
2482
|
+
_$setAttribute(_el$147, "data-k2b-server", isServer ? "" : undefined);
|
|
2483
|
+
_$insert(_el$147, () => current().title);
|
|
2484
|
+
return _el$147;
|
|
2441
2485
|
})()]
|
|
2442
2486
|
}), _el$130, _co$19);
|
|
2443
2487
|
_$insert(_el$117, _$createComponent(Show, {
|
|
@@ -2569,16 +2613,19 @@ function AppWorkspaceHead(props) {
|
|
|
2569
2613
|
}), _el$141, _co$24);
|
|
2570
2614
|
return _el$137;
|
|
2571
2615
|
}
|
|
2572
|
-
}), _el$
|
|
2616
|
+
}), _el$145, _co$26);
|
|
2573
2617
|
_$effect(_p$ => {
|
|
2574
|
-
var _v$
|
|
2575
|
-
_v$
|
|
2576
|
-
|
|
2577
|
-
_v$86 !== _p$.
|
|
2618
|
+
var _v$86 = trail()?.ancestors.length ? "up" : trail() ? "title" : undefined,
|
|
2619
|
+
_v$87 = props.head ? "" : undefined,
|
|
2620
|
+
_v$88 = mobilePane();
|
|
2621
|
+
_v$86 !== _p$.e && _$setAttribute(_el$116, "data-trail", _p$.e = _v$86);
|
|
2622
|
+
_v$87 !== _p$.t && _$setAttribute(_el$116, "data-row", _p$.t = _v$87);
|
|
2623
|
+
_v$88 !== _p$.a && _$setAttribute(_el$116, "data-workspace-head-pane", _p$.a = _v$88);
|
|
2578
2624
|
return _p$;
|
|
2579
2625
|
}, {
|
|
2580
2626
|
e: undefined,
|
|
2581
|
-
t: undefined
|
|
2627
|
+
t: undefined,
|
|
2628
|
+
a: undefined
|
|
2582
2629
|
});
|
|
2583
2630
|
return _el$116;
|
|
2584
2631
|
})();
|
|
@@ -2613,14 +2660,17 @@ const AppWorkspace = props => {
|
|
|
2613
2660
|
const slots = createMemo(() => flatten(resolved()));
|
|
2614
2661
|
// Same props object, same memo value: a sibling change must not rebuild the head's slots.
|
|
2615
2662
|
const head = createMemo(() => slots().find(headSlot)?.props);
|
|
2616
|
-
|
|
2617
|
-
|
|
2663
|
+
// Keep one head instance at the explicit slot's position. Object links
|
|
2664
|
+
// before it must also precede its view controls in SSR and keyboard order.
|
|
2665
|
+
// Callers without a slot retain the automatic leading head.
|
|
2666
|
+
const renderedHead = _$createComponent(AppWorkspaceHead, {
|
|
2618
2667
|
sidebarId: sidebarId,
|
|
2619
2668
|
nested: nested,
|
|
2620
2669
|
get head() {
|
|
2621
2670
|
return head();
|
|
2622
2671
|
}
|
|
2623
|
-
})
|
|
2672
|
+
});
|
|
2673
|
+
return _$memo(() => head() ? slots().map(value => headSlot(value) ? value.props === head() ? renderedHead : null : value) : [renderedHead, ...slots()]);
|
|
2624
2674
|
};
|
|
2625
2675
|
return _$createComponent(ResizeContext.Provider, {
|
|
2626
2676
|
get value() {
|
|
@@ -2630,23 +2680,23 @@ const AppWorkspace = props => {
|
|
|
2630
2680
|
return _$createComponent(WorkspaceContext.Provider, {
|
|
2631
2681
|
value: workspace,
|
|
2632
2682
|
get children() {
|
|
2633
|
-
var _el$
|
|
2683
|
+
var _el$148 = _$getNextElement(_tmpl$62);
|
|
2634
2684
|
var _ref$8 = root;
|
|
2635
|
-
typeof _ref$8 === "function" ? _$use(_ref$8, _el$
|
|
2636
|
-
_$insert(_el$
|
|
2685
|
+
typeof _ref$8 === "function" ? _$use(_ref$8, _el$148) : root = _el$148;
|
|
2686
|
+
_$insert(_el$148, contents);
|
|
2637
2687
|
_$effect(_p$ => {
|
|
2638
|
-
var _v$
|
|
2639
|
-
_v$
|
|
2640
|
-
_v$
|
|
2641
|
-
_v$
|
|
2642
|
-
_v$
|
|
2643
|
-
_v$
|
|
2644
|
-
_v$
|
|
2645
|
-
_v$
|
|
2646
|
-
_v$
|
|
2647
|
-
_v$
|
|
2648
|
-
_v$
|
|
2649
|
-
_p$.n = _$style(_el$
|
|
2688
|
+
var _v$89 = `k2b-app-workspace ${props.class ?? ""}`,
|
|
2689
|
+
_v$90 = props.mobileSurface,
|
|
2690
|
+
_v$91 = props.flat ? "true" : undefined,
|
|
2691
|
+
_v$92 = initialLayoutState()?.sidebarCollapsed === undefined ? undefined : String(initialLayoutState()?.sidebarCollapsed),
|
|
2692
|
+
_v$93 = props.resizable === false ? "false" : "true",
|
|
2693
|
+
_v$94 = appWorkspaceLayoutStyle(initialLayoutState());
|
|
2694
|
+
_v$89 !== _p$.e && _$className(_el$148, _p$.e = _v$89);
|
|
2695
|
+
_v$90 !== _p$.t && _$setAttribute(_el$148, "data-mobile-surface", _p$.t = _v$90);
|
|
2696
|
+
_v$91 !== _p$.a && _$setAttribute(_el$148, "data-flat", _p$.a = _v$91);
|
|
2697
|
+
_v$92 !== _p$.o && _$setAttribute(_el$148, "data-sidebar-collapsed", _p$.o = _v$92);
|
|
2698
|
+
_v$93 !== _p$.i && _$setAttribute(_el$148, "data-workspace-resizable", _p$.i = _v$93);
|
|
2699
|
+
_p$.n = _$style(_el$148, _v$94, _p$.n);
|
|
2650
2700
|
return _p$;
|
|
2651
2701
|
}, {
|
|
2652
2702
|
e: undefined,
|
|
@@ -2656,7 +2706,7 @@ const AppWorkspace = props => {
|
|
|
2656
2706
|
i: undefined,
|
|
2657
2707
|
n: undefined
|
|
2658
2708
|
});
|
|
2659
|
-
return _el$
|
|
2709
|
+
return _el$148;
|
|
2660
2710
|
}
|
|
2661
2711
|
});
|
|
2662
2712
|
}
|
|
@@ -2672,10 +2722,10 @@ AppWorkspace.LayoutStateProvider = props => _$createComponent(LayoutStateContext
|
|
|
2672
2722
|
});
|
|
2673
2723
|
AppWorkspace.Head = AppWorkspaceHeadSlot;
|
|
2674
2724
|
AppWorkspace.Content = props => (() => {
|
|
2675
|
-
var _el$
|
|
2676
|
-
_$insert(_el$
|
|
2677
|
-
_$effect(() => _$className(_el$
|
|
2678
|
-
return _el$
|
|
2725
|
+
var _el$149 = _$getNextElement(_tmpl$5);
|
|
2726
|
+
_$insert(_el$149, () => props.children);
|
|
2727
|
+
_$effect(() => _$className(_el$149, `k2b-app-workspace__content ${props.class ?? ""}`));
|
|
2728
|
+
return _el$149;
|
|
2679
2729
|
})();
|
|
2680
2730
|
AppWorkspace.Main = AppWorkspaceMain;
|
|
2681
2731
|
AppWorkspace.MainPane = AppWorkspaceMainPane;
|