@k2b/ui 0.31.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/dist/base.css +2 -0
- package/dist/browser/actions/ViewTabs.js +8 -0
- package/dist/browser/actions/ViewTabs.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/MapView.js +4 -4
- package/dist/browser/content/MapView.js.map +1 -1
- 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 +1 -0
- package/dist/browser/content/index.js.map +1 -1
- package/dist/browser/content/map-view-live.js +47 -10
- package/dist/browser/content/map-view-live.js.map +1 -1
- package/dist/browser/content/map-view-types.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 +177 -135
- 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 +192 -31
- package/dist/browser/layout/app-workspace-controller.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/ssr/actions/ViewTabs.js +8 -0
- package/dist/ssr/actions/ViewTabs.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/MapView.js +4 -4
- package/dist/ssr/content/MapView.js.map +1 -1
- 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 +1 -0
- package/dist/ssr/content/index.js.map +1 -1
- package/dist/ssr/content/map-view-types.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 +36 -7
- 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 +192 -31
- package/dist/ssr/layout/app-workspace-controller.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/code-highlight.d.ts +3 -1
- package/dist/types/content/index.d.ts +1 -0
- package/dist/types/content/map-view-live.d.ts +1 -1
- package/dist/types/content/map-view-types.d.ts +2 -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 +7 -0
- package/dist/types/layout/DetailPanel.d.ts +2 -0
- package/dist/types/layout/app-workspace-controller.d.ts +2 -0
- 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/package.json +4 -4
|
@@ -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,7 +87,7 @@ 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
92
|
import { appWorkspaceInverseWidthCss, appWorkspaceWidthCss, appWorkspaceWidthToken, isAppWorkspaceWidthShare } from "./app-workspace-width";
|
|
93
93
|
import BottomSheet, { bottomSheetAdaptiveOptions } from "./BottomSheet";
|
|
@@ -657,15 +657,20 @@ function AppWorkspaceDetail(props) {
|
|
|
657
657
|
let aside;
|
|
658
658
|
onMount(() => {
|
|
659
659
|
const close = () => props.onClose?.();
|
|
660
|
+
const open = () => {
|
|
661
|
+
if (props.available !== false) props.onOpen?.();
|
|
662
|
+
};
|
|
660
663
|
const isStep = detail => typeof detail === "object" && detail !== null && "direction" in detail && (detail.direction === 1 || detail.direction === -1);
|
|
661
664
|
const step = event => {
|
|
662
665
|
if (!(event instanceof CustomEvent) || !isStep(event.detail)) return;
|
|
663
666
|
const item = props.onStep?.(event.detail.direction);
|
|
664
667
|
if (item instanceof HTMLElement) event.detail.item = item;
|
|
665
668
|
};
|
|
669
|
+
aside?.addEventListener(APP_WORKSPACE_DETAIL_OPEN_EVENT, open);
|
|
666
670
|
aside?.addEventListener(APP_WORKSPACE_DETAIL_CLOSE_EVENT, close);
|
|
667
671
|
aside?.addEventListener(APP_WORKSPACE_DETAIL_STEP_EVENT, step);
|
|
668
672
|
onCleanup(() => {
|
|
673
|
+
aside?.removeEventListener(APP_WORKSPACE_DETAIL_OPEN_EVENT, open);
|
|
669
674
|
aside?.removeEventListener(APP_WORKSPACE_DETAIL_CLOSE_EVENT, close);
|
|
670
675
|
aside?.removeEventListener(APP_WORKSPACE_DETAIL_STEP_EVENT, step);
|
|
671
676
|
});
|
|
@@ -682,6 +687,12 @@ function AppWorkspaceDetail(props) {
|
|
|
682
687
|
},
|
|
683
688
|
"aria-expanded": "false",
|
|
684
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
|
+
},
|
|
685
696
|
"class": "k2b-app-workspace__detail-toggle",
|
|
686
697
|
get children() {
|
|
687
698
|
return [_$getNextElement(_tmpl$1), _$memo(() => workspaceMessages().details)];
|
|
@@ -709,6 +720,7 @@ function AppWorkspaceDetail(props) {
|
|
|
709
720
|
get maxSize() {
|
|
710
721
|
return maxWidth();
|
|
711
722
|
},
|
|
723
|
+
shadow: true,
|
|
712
724
|
get style() {
|
|
713
725
|
return sizeStyle();
|
|
714
726
|
}
|
|
@@ -730,14 +742,15 @@ function AppWorkspaceDetail(props) {
|
|
|
730
742
|
_v$34 = props.openOnChoice === false ? "request" : undefined,
|
|
731
743
|
_v$35 = panelId(),
|
|
732
744
|
_v$36 = resizable() ? "true" : "false",
|
|
733
|
-
_v$37 = props.
|
|
734
|
-
_v$38 = props.
|
|
735
|
-
_v$39 =
|
|
736
|
-
_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 = {
|
|
737
750
|
...sizeStyle(),
|
|
738
751
|
"view-transition-name": props.viewTransitionName
|
|
739
752
|
},
|
|
740
|
-
_v$
|
|
753
|
+
_v$42 = workspaceMessages().detailFullHeight;
|
|
741
754
|
_v$30 !== _p$.e && _$setAttribute(_el$20, "id", _p$.e = _v$30);
|
|
742
755
|
_v$31 !== _p$.t && _$className(_el$20, _p$.t = _v$31);
|
|
743
756
|
_v$32 !== _p$.a && _$setAttribute(_el$20, "data-width", _p$.a = _v$32);
|
|
@@ -745,11 +758,12 @@ function AppWorkspaceDetail(props) {
|
|
|
745
758
|
_v$34 !== _p$.i && _$setAttribute(_el$20, "data-workspace-detail-choice", _p$.i = _v$34);
|
|
746
759
|
_v$35 !== _p$.n && _$setAttribute(_el$20, "data-workspace-panel-id", _p$.n = _v$35);
|
|
747
760
|
_v$36 !== _p$.s && _$setAttribute(_el$20, "data-workspace-resizable", _p$.s = _v$36);
|
|
748
|
-
_v$37 !== _p$.h && _$setAttribute(_el$20, "data-workspace-detail-
|
|
749
|
-
_v$38 !== _p$.r && _$setAttribute(_el$20, "data-workspace-detail-
|
|
750
|
-
_v$39 !== _p$.d && _$
|
|
751
|
-
_p$.l
|
|
752
|
-
|
|
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);
|
|
753
767
|
return _p$;
|
|
754
768
|
}, {
|
|
755
769
|
e: undefined,
|
|
@@ -763,7 +777,8 @@ function AppWorkspaceDetail(props) {
|
|
|
763
777
|
r: undefined,
|
|
764
778
|
d: undefined,
|
|
765
779
|
l: undefined,
|
|
766
|
-
u: undefined
|
|
780
|
+
u: undefined,
|
|
781
|
+
c: undefined
|
|
767
782
|
});
|
|
768
783
|
return _el$20;
|
|
769
784
|
})()];
|
|
@@ -818,22 +833,22 @@ function AppWorkspaceBottomDrawer(props) {
|
|
|
818
833
|
var _el$24 = _$getNextElement(_tmpl$11);
|
|
819
834
|
_$insert(_el$24, () => props.children);
|
|
820
835
|
_$effect(_p$ => {
|
|
821
|
-
var _v$
|
|
822
|
-
_v$
|
|
823
|
-
_v$
|
|
824
|
-
_v$
|
|
825
|
-
_v$
|
|
826
|
-
_v$
|
|
827
|
-
_v$
|
|
828
|
-
_v$
|
|
829
|
-
_v$
|
|
830
|
-
_v$
|
|
831
|
-
_v$
|
|
832
|
-
_v$
|
|
833
|
-
_v$
|
|
834
|
-
_v$
|
|
835
|
-
_v$
|
|
836
|
-
_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);
|
|
837
852
|
return _p$;
|
|
838
853
|
}, {
|
|
839
854
|
e: undefined,
|
|
@@ -936,10 +951,10 @@ function AppWorkspaceSidebar(props) {
|
|
|
936
951
|
_$addEventListener(_el$25, "click", event => choose(event, () => close()));
|
|
937
952
|
_$insert(_el$25, resolved);
|
|
938
953
|
_$effect(_p$ => {
|
|
939
|
-
var _v$
|
|
940
|
-
_v$
|
|
941
|
-
_v$
|
|
942
|
-
_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);
|
|
943
958
|
return _p$;
|
|
944
959
|
}, {
|
|
945
960
|
e: undefined,
|
|
@@ -1023,10 +1038,10 @@ function AppWorkspaceSidebar(props) {
|
|
|
1023
1038
|
typeof _ref$4 === "function" ? _$use(_ref$4, _el$26) : row = _el$26;
|
|
1024
1039
|
_$insert(_el$26, () => desktop()?.children);
|
|
1025
1040
|
_$effect(_p$ => {
|
|
1026
|
-
var _v$
|
|
1027
|
-
_v$
|
|
1028
|
-
_v$
|
|
1029
|
-
_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);
|
|
1030
1045
|
return _p$;
|
|
1031
1046
|
}, {
|
|
1032
1047
|
e: undefined,
|
|
@@ -1044,12 +1059,12 @@ function AppWorkspaceSidebar(props) {
|
|
|
1044
1059
|
_el$27.$$click = event => openAll(event.currentTarget);
|
|
1045
1060
|
_$insert(_el$28, () => workspaceMessages().sidebarAll);
|
|
1046
1061
|
_$effect(_p$ => {
|
|
1047
|
-
var _v$
|
|
1048
|
-
_v$
|
|
1062
|
+
var _v$55 = sheetOpen(),
|
|
1063
|
+
_v$56 = props.label ? workspaceMessages().sidebarAllLabel({
|
|
1049
1064
|
label: props.label
|
|
1050
1065
|
}) : undefined;
|
|
1051
|
-
_v$
|
|
1052
|
-
_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);
|
|
1053
1068
|
return _p$;
|
|
1054
1069
|
}, {
|
|
1055
1070
|
e: undefined,
|
|
@@ -1242,10 +1257,10 @@ const AppWorkspaceSidebarSection = props => {
|
|
|
1242
1257
|
_$setAttribute(_el$38, "aria-controls", id);
|
|
1243
1258
|
_$insert(_el$38, title, _el$41, _co$5);
|
|
1244
1259
|
_$effect(_p$ => {
|
|
1245
|
-
var _v$
|
|
1246
|
-
_v$
|
|
1247
|
-
_v$
|
|
1248
|
-
_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);
|
|
1249
1264
|
return _p$;
|
|
1250
1265
|
}, {
|
|
1251
1266
|
e: undefined,
|
|
@@ -1367,10 +1382,10 @@ const AppWorkspaceSidebarItemStatus = props => {
|
|
|
1367
1382
|
}
|
|
1368
1383
|
}));
|
|
1369
1384
|
_$effect(_p$ => {
|
|
1370
|
-
var _v$
|
|
1371
|
-
_v$
|
|
1372
|
-
_v$
|
|
1373
|
-
_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);
|
|
1374
1389
|
return _p$;
|
|
1375
1390
|
}, {
|
|
1376
1391
|
e: undefined,
|
|
@@ -1595,10 +1610,10 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1595
1610
|
}
|
|
1596
1611
|
}), _el$82, _co$12);
|
|
1597
1612
|
_$effect(_p$ => {
|
|
1598
|
-
var _v$
|
|
1599
|
-
_v$
|
|
1600
|
-
_v$
|
|
1601
|
-
_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);
|
|
1602
1617
|
return _p$;
|
|
1603
1618
|
}, {
|
|
1604
1619
|
e: undefined,
|
|
@@ -1613,10 +1628,10 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1613
1628
|
var _el$83 = _$getNextElement(_tmpl$40);
|
|
1614
1629
|
_$insert(_el$83, meta);
|
|
1615
1630
|
_$effect(_p$ => {
|
|
1616
|
-
var _v$
|
|
1617
|
-
_v$
|
|
1618
|
-
_v$
|
|
1619
|
-
_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);
|
|
1620
1635
|
return _p$;
|
|
1621
1636
|
}, {
|
|
1622
1637
|
e: undefined,
|
|
@@ -1657,12 +1672,12 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1657
1672
|
_el$87.$$click = select;
|
|
1658
1673
|
_$insert(_el$87, content);
|
|
1659
1674
|
_$effect(_p$ => {
|
|
1660
|
-
var _v$
|
|
1661
|
-
_v$
|
|
1662
|
-
_v$
|
|
1663
|
-
_v$
|
|
1664
|
-
_v$
|
|
1665
|
-
_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);
|
|
1666
1681
|
return _p$;
|
|
1667
1682
|
}, {
|
|
1668
1683
|
e: undefined,
|
|
@@ -1678,12 +1693,12 @@ function AppWorkspaceSidebarItem(props) {
|
|
|
1678
1693
|
_el$86.$$click = select;
|
|
1679
1694
|
_$insert(_el$86, content);
|
|
1680
1695
|
_$effect(_p$ => {
|
|
1681
|
-
var _v$
|
|
1682
|
-
_v$
|
|
1683
|
-
_v$
|
|
1684
|
-
_v$
|
|
1685
|
-
_v$
|
|
1686
|
-
_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);
|
|
1687
1702
|
return _p$;
|
|
1688
1703
|
}, {
|
|
1689
1704
|
e: undefined,
|
|
@@ -2034,10 +2049,10 @@ const AppWorkspaceNavTree = props => {
|
|
|
2034
2049
|
var _el$94 = _$getNextElement(_tmpl$46);
|
|
2035
2050
|
_$insert(_el$94, () => item.meta);
|
|
2036
2051
|
_$effect(_p$ => {
|
|
2037
|
-
var _v$
|
|
2038
|
-
_v$
|
|
2039
|
-
_v$
|
|
2040
|
-
_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);
|
|
2041
2056
|
return _p$;
|
|
2042
2057
|
}, {
|
|
2043
2058
|
e: undefined,
|
|
@@ -2189,28 +2204,28 @@ const AppWorkspaceNavTree = props => {
|
|
|
2189
2204
|
}
|
|
2190
2205
|
}), _el$104, _co$14);
|
|
2191
2206
|
_$effect(_p$ => {
|
|
2192
|
-
var _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$
|
|
2206
|
-
_v$
|
|
2207
|
-
_v$
|
|
2208
|
-
_v$
|
|
2209
|
-
_v$
|
|
2210
|
-
_v$
|
|
2211
|
-
_v$
|
|
2212
|
-
_v$
|
|
2213
|
-
_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);
|
|
2214
2229
|
return _p$;
|
|
2215
2230
|
}, {
|
|
2216
2231
|
e: undefined,
|
|
@@ -2264,10 +2279,10 @@ const AppWorkspaceNavTree = props => {
|
|
|
2264
2279
|
typeof _ref$7 === "function" ? _$use(_ref$7, _el$105) : root = _el$105;
|
|
2265
2280
|
_$insert(_el$105, () => renderItems(roots, 0));
|
|
2266
2281
|
_$effect(_p$ => {
|
|
2267
|
-
var _v$
|
|
2268
|
-
_v$
|
|
2269
|
-
_v$
|
|
2270
|
-
_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);
|
|
2271
2286
|
return _p$;
|
|
2272
2287
|
}, {
|
|
2273
2288
|
e: undefined,
|
|
@@ -2392,6 +2407,15 @@ function AppWorkspaceHead(props) {
|
|
|
2392
2407
|
const resolvedCount = children(() => props.head?.count);
|
|
2393
2408
|
// A nested workspace is part of a page that already shows its title.
|
|
2394
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
|
+
};
|
|
2395
2419
|
const resetContent = () => filters().reset;
|
|
2396
2420
|
const primaryContent = () => [(() => {
|
|
2397
2421
|
var _el$114 = _$getNextElement(_tmpl$53);
|
|
@@ -2404,7 +2428,9 @@ function AppWorkspaceHead(props) {
|
|
|
2404
2428
|
})()];
|
|
2405
2429
|
return (() => {
|
|
2406
2430
|
var _el$116 = _$getNextElement(_tmpl$60),
|
|
2407
|
-
_el$
|
|
2431
|
+
_el$142 = _el$116.firstChild,
|
|
2432
|
+
[_el$143, _co$25] = _$getNextMarker(_el$142.nextSibling),
|
|
2433
|
+
_el$117 = _el$143.nextSibling,
|
|
2408
2434
|
_el$127 = _el$117.firstChild,
|
|
2409
2435
|
[_el$128, _co$18] = _$getNextMarker(_el$127.nextSibling),
|
|
2410
2436
|
_el$129 = _el$128.nextSibling,
|
|
@@ -2415,8 +2441,18 @@ function AppWorkspaceHead(props) {
|
|
|
2415
2441
|
[_el$134, _co$21] = _$getNextMarker(_el$133.nextSibling),
|
|
2416
2442
|
_el$135 = _el$134.nextSibling,
|
|
2417
2443
|
[_el$136, _co$22] = _$getNextMarker(_el$135.nextSibling),
|
|
2418
|
-
_el$
|
|
2419
|
-
[_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);
|
|
2420
2456
|
_$insert(_el$117, _$createComponent(IconButton, {
|
|
2421
2457
|
"class": "k2b-app-workspace__head-toggle",
|
|
2422
2458
|
get label() {
|
|
@@ -2442,10 +2478,10 @@ function AppWorkspaceHead(props) {
|
|
|
2442
2478
|
as: "p",
|
|
2443
2479
|
fallback: true
|
|
2444
2480
|
}), (() => {
|
|
2445
|
-
var _el$
|
|
2446
|
-
_$setAttribute(_el$
|
|
2447
|
-
_$insert(_el$
|
|
2448
|
-
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;
|
|
2449
2485
|
})()]
|
|
2450
2486
|
}), _el$130, _co$19);
|
|
2451
2487
|
_$insert(_el$117, _$createComponent(Show, {
|
|
@@ -2577,16 +2613,19 @@ function AppWorkspaceHead(props) {
|
|
|
2577
2613
|
}), _el$141, _co$24);
|
|
2578
2614
|
return _el$137;
|
|
2579
2615
|
}
|
|
2580
|
-
}), _el$
|
|
2616
|
+
}), _el$145, _co$26);
|
|
2581
2617
|
_$effect(_p$ => {
|
|
2582
|
-
var _v$
|
|
2583
|
-
_v$
|
|
2584
|
-
|
|
2585
|
-
_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);
|
|
2586
2624
|
return _p$;
|
|
2587
2625
|
}, {
|
|
2588
2626
|
e: undefined,
|
|
2589
|
-
t: undefined
|
|
2627
|
+
t: undefined,
|
|
2628
|
+
a: undefined
|
|
2590
2629
|
});
|
|
2591
2630
|
return _el$116;
|
|
2592
2631
|
})();
|
|
@@ -2621,14 +2660,17 @@ const AppWorkspace = props => {
|
|
|
2621
2660
|
const slots = createMemo(() => flatten(resolved()));
|
|
2622
2661
|
// Same props object, same memo value: a sibling change must not rebuild the head's slots.
|
|
2623
2662
|
const head = createMemo(() => slots().find(headSlot)?.props);
|
|
2624
|
-
|
|
2625
|
-
|
|
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, {
|
|
2626
2667
|
sidebarId: sidebarId,
|
|
2627
2668
|
nested: nested,
|
|
2628
2669
|
get head() {
|
|
2629
2670
|
return head();
|
|
2630
2671
|
}
|
|
2631
|
-
})
|
|
2672
|
+
});
|
|
2673
|
+
return _$memo(() => head() ? slots().map(value => headSlot(value) ? value.props === head() ? renderedHead : null : value) : [renderedHead, ...slots()]);
|
|
2632
2674
|
};
|
|
2633
2675
|
return _$createComponent(ResizeContext.Provider, {
|
|
2634
2676
|
get value() {
|
|
@@ -2638,23 +2680,23 @@ const AppWorkspace = props => {
|
|
|
2638
2680
|
return _$createComponent(WorkspaceContext.Provider, {
|
|
2639
2681
|
value: workspace,
|
|
2640
2682
|
get children() {
|
|
2641
|
-
var _el$
|
|
2683
|
+
var _el$148 = _$getNextElement(_tmpl$62);
|
|
2642
2684
|
var _ref$8 = root;
|
|
2643
|
-
typeof _ref$8 === "function" ? _$use(_ref$8, _el$
|
|
2644
|
-
_$insert(_el$
|
|
2685
|
+
typeof _ref$8 === "function" ? _$use(_ref$8, _el$148) : root = _el$148;
|
|
2686
|
+
_$insert(_el$148, contents);
|
|
2645
2687
|
_$effect(_p$ => {
|
|
2646
|
-
var _v$
|
|
2647
|
-
_v$
|
|
2648
|
-
_v$
|
|
2649
|
-
_v$
|
|
2650
|
-
_v$
|
|
2651
|
-
_v$
|
|
2652
|
-
_v$
|
|
2653
|
-
_v$
|
|
2654
|
-
_v$
|
|
2655
|
-
_v$
|
|
2656
|
-
_v$
|
|
2657
|
-
_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);
|
|
2658
2700
|
return _p$;
|
|
2659
2701
|
}, {
|
|
2660
2702
|
e: undefined,
|
|
@@ -2664,7 +2706,7 @@ const AppWorkspace = props => {
|
|
|
2664
2706
|
i: undefined,
|
|
2665
2707
|
n: undefined
|
|
2666
2708
|
});
|
|
2667
|
-
return _el$
|
|
2709
|
+
return _el$148;
|
|
2668
2710
|
}
|
|
2669
2711
|
});
|
|
2670
2712
|
}
|
|
@@ -2680,10 +2722,10 @@ AppWorkspace.LayoutStateProvider = props => _$createComponent(LayoutStateContext
|
|
|
2680
2722
|
});
|
|
2681
2723
|
AppWorkspace.Head = AppWorkspaceHeadSlot;
|
|
2682
2724
|
AppWorkspace.Content = props => (() => {
|
|
2683
|
-
var _el$
|
|
2684
|
-
_$insert(_el$
|
|
2685
|
-
_$effect(() => _$className(_el$
|
|
2686
|
-
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;
|
|
2687
2729
|
})();
|
|
2688
2730
|
AppWorkspace.Main = AppWorkspaceMain;
|
|
2689
2731
|
AppWorkspace.MainPane = AppWorkspaceMainPane;
|