@trebired/frontend 1.11.0 → 1.13.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.
Files changed (179) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/layout/components/index.d.ts +1 -0
  3. package/dist/layout/components/index.d.ts.map +1 -1
  4. package/dist/layout/components/index.js +1 -0
  5. package/dist/layout/components/index.js.map +1 -1
  6. package/dist/layout/components/shell/index.d.ts +52 -0
  7. package/dist/layout/components/shell/index.d.ts.map +1 -0
  8. package/dist/layout/components/shell/index.js +52 -0
  9. package/dist/layout/components/shell/index.js.map +1 -0
  10. package/dist/layout/components/shell/links.d.ts +21 -0
  11. package/dist/layout/components/shell/links.d.ts.map +1 -0
  12. package/dist/layout/components/shell/links.js +41 -0
  13. package/dist/layout/components/shell/links.js.map +1 -0
  14. package/dist/layout/components/shell/state.d.ts +27 -0
  15. package/dist/layout/components/shell/state.d.ts.map +1 -0
  16. package/dist/layout/components/shell/state.js +35 -0
  17. package/dist/layout/components/shell/state.js.map +1 -0
  18. package/dist/layout/styles/chrome.scss +68 -0
  19. package/dist/sidebar/components/index.d.ts +2 -0
  20. package/dist/sidebar/components/index.d.ts.map +1 -1
  21. package/dist/sidebar/components/index.js +1 -0
  22. package/dist/sidebar/components/index.js.map +1 -1
  23. package/dist/sidebar/dynamic/components/defaults.d.ts +7 -0
  24. package/dist/sidebar/dynamic/components/defaults.d.ts.map +1 -0
  25. package/dist/sidebar/dynamic/components/defaults.js +44 -0
  26. package/dist/sidebar/dynamic/components/defaults.js.map +1 -0
  27. package/dist/sidebar/dynamic/components/index.d.ts +5 -0
  28. package/dist/sidebar/dynamic/components/index.d.ts.map +1 -0
  29. package/dist/sidebar/dynamic/components/index.js +5 -0
  30. package/dist/sidebar/dynamic/components/index.js.map +1 -0
  31. package/dist/sidebar/dynamic/components/list.d.ts +4 -0
  32. package/dist/sidebar/dynamic/components/list.d.ts.map +1 -0
  33. package/dist/sidebar/dynamic/components/list.js +19 -0
  34. package/dist/sidebar/dynamic/components/list.js.map +1 -0
  35. package/dist/sidebar/dynamic/components/row.d.ts +14 -0
  36. package/dist/sidebar/dynamic/components/row.d.ts.map +1 -0
  37. package/dist/sidebar/dynamic/components/row.js +60 -0
  38. package/dist/sidebar/dynamic/components/row.js.map +1 -0
  39. package/dist/sidebar/dynamic/components/slots.d.ts +31 -0
  40. package/dist/sidebar/dynamic/components/slots.d.ts.map +1 -0
  41. package/dist/sidebar/dynamic/components/slots.js +55 -0
  42. package/dist/sidebar/dynamic/components/slots.js.map +1 -0
  43. package/dist/sidebar/dynamic/index.d.ts +5 -0
  44. package/dist/sidebar/dynamic/index.d.ts.map +1 -0
  45. package/dist/sidebar/dynamic/index.js +4 -0
  46. package/dist/sidebar/dynamic/index.js.map +1 -0
  47. package/dist/sidebar/dynamic/runtime/apply.d.ts +10 -0
  48. package/dist/sidebar/dynamic/runtime/apply.d.ts.map +1 -0
  49. package/dist/sidebar/dynamic/runtime/apply.js +129 -0
  50. package/dist/sidebar/dynamic/runtime/apply.js.map +1 -0
  51. package/dist/sidebar/dynamic/runtime/dom.d.ts +9 -0
  52. package/dist/sidebar/dynamic/runtime/dom.d.ts.map +1 -0
  53. package/dist/sidebar/dynamic/runtime/dom.js +31 -0
  54. package/dist/sidebar/dynamic/runtime/dom.js.map +1 -0
  55. package/dist/sidebar/dynamic/runtime/guards.d.ts +3 -0
  56. package/dist/sidebar/dynamic/runtime/guards.d.ts.map +1 -0
  57. package/dist/sidebar/dynamic/runtime/guards.js +19 -0
  58. package/dist/sidebar/dynamic/runtime/guards.js.map +1 -0
  59. package/dist/sidebar/dynamic/runtime/index.d.ts +7 -0
  60. package/dist/sidebar/dynamic/runtime/index.d.ts.map +1 -0
  61. package/dist/sidebar/dynamic/runtime/index.js +6 -0
  62. package/dist/sidebar/dynamic/runtime/index.js.map +1 -0
  63. package/dist/sidebar/dynamic/runtime/live.d.ts +13 -0
  64. package/dist/sidebar/dynamic/runtime/live.d.ts.map +1 -0
  65. package/dist/sidebar/dynamic/runtime/live.js +165 -0
  66. package/dist/sidebar/dynamic/runtime/live.js.map +1 -0
  67. package/dist/sidebar/dynamic/runtime/renderers.d.ts +7 -0
  68. package/dist/sidebar/dynamic/runtime/renderers.d.ts.map +1 -0
  69. package/dist/sidebar/dynamic/runtime/renderers.js +43 -0
  70. package/dist/sidebar/dynamic/runtime/renderers.js.map +1 -0
  71. package/dist/sidebar/dynamic/runtime/selectors.d.ts +9 -0
  72. package/dist/sidebar/dynamic/runtime/selectors.d.ts.map +1 -0
  73. package/dist/sidebar/dynamic/runtime/selectors.js +9 -0
  74. package/dist/sidebar/dynamic/runtime/selectors.js.map +1 -0
  75. package/dist/sidebar/dynamic/runtime/types.d.ts +40 -0
  76. package/dist/sidebar/dynamic/runtime/types.d.ts.map +1 -0
  77. package/dist/sidebar/dynamic/runtime/types.js +2 -0
  78. package/dist/sidebar/dynamic/runtime/types.js.map +1 -0
  79. package/dist/sidebar/dynamic/tree.d.ts +18 -0
  80. package/dist/sidebar/dynamic/tree.d.ts.map +1 -0
  81. package/dist/sidebar/dynamic/tree.js +106 -0
  82. package/dist/sidebar/dynamic/tree.js.map +1 -0
  83. package/dist/sidebar/dynamic/types.d.ts +99 -0
  84. package/dist/sidebar/dynamic/types.d.ts.map +1 -0
  85. package/dist/sidebar/dynamic/types.js +2 -0
  86. package/dist/sidebar/dynamic/types.js.map +1 -0
  87. package/dist/sidebar/index.d.ts +3 -0
  88. package/dist/sidebar/index.d.ts.map +1 -1
  89. package/dist/sidebar/index.js +3 -0
  90. package/dist/sidebar/index.js.map +1 -1
  91. package/dist/src/layout/components/index.d.ts +1 -0
  92. package/dist/src/layout/components/index.d.ts.map +1 -1
  93. package/dist/src/layout/components/index.js +1 -0
  94. package/dist/src/layout/components/index.js.map +1 -1
  95. package/dist/src/layout/components/shell/index.d.ts +52 -0
  96. package/dist/src/layout/components/shell/index.d.ts.map +1 -0
  97. package/dist/src/layout/components/shell/index.js +52 -0
  98. package/dist/src/layout/components/shell/index.js.map +1 -0
  99. package/dist/src/layout/components/shell/links.d.ts +21 -0
  100. package/dist/src/layout/components/shell/links.d.ts.map +1 -0
  101. package/dist/src/layout/components/shell/links.js +41 -0
  102. package/dist/src/layout/components/shell/links.js.map +1 -0
  103. package/dist/src/layout/components/shell/state.d.ts +27 -0
  104. package/dist/src/layout/components/shell/state.d.ts.map +1 -0
  105. package/dist/src/layout/components/shell/state.js +35 -0
  106. package/dist/src/layout/components/shell/state.js.map +1 -0
  107. package/dist/src/sidebar/components/index.d.ts +2 -0
  108. package/dist/src/sidebar/components/index.d.ts.map +1 -1
  109. package/dist/src/sidebar/components/index.js +1 -0
  110. package/dist/src/sidebar/components/index.js.map +1 -1
  111. package/dist/src/sidebar/dynamic/components/defaults.d.ts +7 -0
  112. package/dist/src/sidebar/dynamic/components/defaults.d.ts.map +1 -0
  113. package/dist/src/sidebar/dynamic/components/defaults.js +44 -0
  114. package/dist/src/sidebar/dynamic/components/defaults.js.map +1 -0
  115. package/dist/src/sidebar/dynamic/components/index.d.ts +5 -0
  116. package/dist/src/sidebar/dynamic/components/index.d.ts.map +1 -0
  117. package/dist/src/sidebar/dynamic/components/index.js +5 -0
  118. package/dist/src/sidebar/dynamic/components/index.js.map +1 -0
  119. package/dist/src/sidebar/dynamic/components/list.d.ts +4 -0
  120. package/dist/src/sidebar/dynamic/components/list.d.ts.map +1 -0
  121. package/dist/src/sidebar/dynamic/components/list.js +19 -0
  122. package/dist/src/sidebar/dynamic/components/list.js.map +1 -0
  123. package/dist/src/sidebar/dynamic/components/row.d.ts +14 -0
  124. package/dist/src/sidebar/dynamic/components/row.d.ts.map +1 -0
  125. package/dist/src/sidebar/dynamic/components/row.js +60 -0
  126. package/dist/src/sidebar/dynamic/components/row.js.map +1 -0
  127. package/dist/src/sidebar/dynamic/components/slots.d.ts +31 -0
  128. package/dist/src/sidebar/dynamic/components/slots.d.ts.map +1 -0
  129. package/dist/src/sidebar/dynamic/components/slots.js +55 -0
  130. package/dist/src/sidebar/dynamic/components/slots.js.map +1 -0
  131. package/dist/src/sidebar/dynamic/index.d.ts +5 -0
  132. package/dist/src/sidebar/dynamic/index.d.ts.map +1 -0
  133. package/dist/src/sidebar/dynamic/index.js +4 -0
  134. package/dist/src/sidebar/dynamic/index.js.map +1 -0
  135. package/dist/src/sidebar/dynamic/runtime/apply.d.ts +10 -0
  136. package/dist/src/sidebar/dynamic/runtime/apply.d.ts.map +1 -0
  137. package/dist/src/sidebar/dynamic/runtime/apply.js +129 -0
  138. package/dist/src/sidebar/dynamic/runtime/apply.js.map +1 -0
  139. package/dist/src/sidebar/dynamic/runtime/dom.d.ts +9 -0
  140. package/dist/src/sidebar/dynamic/runtime/dom.d.ts.map +1 -0
  141. package/dist/src/sidebar/dynamic/runtime/dom.js +31 -0
  142. package/dist/src/sidebar/dynamic/runtime/dom.js.map +1 -0
  143. package/dist/src/sidebar/dynamic/runtime/guards.d.ts +3 -0
  144. package/dist/src/sidebar/dynamic/runtime/guards.d.ts.map +1 -0
  145. package/dist/src/sidebar/dynamic/runtime/guards.js +19 -0
  146. package/dist/src/sidebar/dynamic/runtime/guards.js.map +1 -0
  147. package/dist/src/sidebar/dynamic/runtime/index.d.ts +7 -0
  148. package/dist/src/sidebar/dynamic/runtime/index.d.ts.map +1 -0
  149. package/dist/src/sidebar/dynamic/runtime/index.js +6 -0
  150. package/dist/src/sidebar/dynamic/runtime/index.js.map +1 -0
  151. package/dist/src/sidebar/dynamic/runtime/live.d.ts +13 -0
  152. package/dist/src/sidebar/dynamic/runtime/live.d.ts.map +1 -0
  153. package/dist/src/sidebar/dynamic/runtime/live.js +165 -0
  154. package/dist/src/sidebar/dynamic/runtime/live.js.map +1 -0
  155. package/dist/src/sidebar/dynamic/runtime/renderers.d.ts +7 -0
  156. package/dist/src/sidebar/dynamic/runtime/renderers.d.ts.map +1 -0
  157. package/dist/src/sidebar/dynamic/runtime/renderers.js +43 -0
  158. package/dist/src/sidebar/dynamic/runtime/renderers.js.map +1 -0
  159. package/dist/src/sidebar/dynamic/runtime/selectors.d.ts +9 -0
  160. package/dist/src/sidebar/dynamic/runtime/selectors.d.ts.map +1 -0
  161. package/dist/src/sidebar/dynamic/runtime/selectors.js +9 -0
  162. package/dist/src/sidebar/dynamic/runtime/selectors.js.map +1 -0
  163. package/dist/src/sidebar/dynamic/runtime/types.d.ts +40 -0
  164. package/dist/src/sidebar/dynamic/runtime/types.d.ts.map +1 -0
  165. package/dist/src/sidebar/dynamic/runtime/types.js +2 -0
  166. package/dist/src/sidebar/dynamic/runtime/types.js.map +1 -0
  167. package/dist/src/sidebar/dynamic/tree.d.ts +18 -0
  168. package/dist/src/sidebar/dynamic/tree.d.ts.map +1 -0
  169. package/dist/src/sidebar/dynamic/tree.js +106 -0
  170. package/dist/src/sidebar/dynamic/tree.js.map +1 -0
  171. package/dist/src/sidebar/dynamic/types.d.ts +99 -0
  172. package/dist/src/sidebar/dynamic/types.d.ts.map +1 -0
  173. package/dist/src/sidebar/dynamic/types.js +2 -0
  174. package/dist/src/sidebar/dynamic/types.js.map +1 -0
  175. package/dist/src/sidebar/index.d.ts +3 -0
  176. package/dist/src/sidebar/index.d.ts.map +1 -1
  177. package/dist/src/sidebar/index.js +3 -0
  178. package/dist/src/sidebar/index.js.map +1 -1
  179. package/package.json +1 -1
@@ -0,0 +1,165 @@
1
+ import { queryAll, readElementJson, } from "../../../../dom/index.js";
2
+ import { applyDynamicSidebarCounts } from "./apply.js";
3
+ import { bindDynamicSidebarDisabledLinkGuard, } from "./guards.js";
4
+ import { liveRootContent } from "./dom.js";
5
+ import { DYNAMIC_SIDEBAR_LIVE_CONFIG_SELECTOR, DYNAMIC_SIDEBAR_LIVE_SELECTOR, } from "./selectors.js";
6
+ import { textValue } from "../../../../sidebar/dynamic/tree.js";
7
+ const liveRoots = new Set();
8
+ const liveConfigs = new WeakMap();
9
+ let liveOptions = {};
10
+ let unsubscribeRooms = [];
11
+ let refreshTimer = 0;
12
+ let refreshInFlight = false;
13
+ let refreshQueued = false;
14
+ function mergeLiveOptions(options) {
15
+ if (!options)
16
+ return liveOptions;
17
+ liveOptions = {
18
+ ...liveOptions,
19
+ ...options,
20
+ renderers: {
21
+ ...(liveOptions.renderers || {}),
22
+ ...(options.renderers || {}),
23
+ },
24
+ };
25
+ return liveOptions;
26
+ }
27
+ function visibleLiveRoots() {
28
+ return Array.from(liveRoots).filter((node) => node.isConnected);
29
+ }
30
+ function descriptorKeyFromConfig(config) {
31
+ const side = textValue(config.side, "left");
32
+ const type = textValue(config.type);
33
+ const path = textValue(config.path);
34
+ const params = JSON.stringify(config.params && typeof config.params === "object" ? config.params : {});
35
+ return `${side}:${type}:${path}:${params}`;
36
+ }
37
+ function descriptorFromRoot(root) {
38
+ const config = liveConfigs.get(root) || {};
39
+ const type = textValue(config.type);
40
+ const path = textValue(config.path);
41
+ if (!type || !path)
42
+ return null;
43
+ return {
44
+ key: descriptorKeyFromConfig(config),
45
+ params: config.params && typeof config.params === "object" ? config.params : {},
46
+ path,
47
+ rooms: Array.isArray(config.rooms)
48
+ ? config.rooms.map((item) => textValue(item)).filter(Boolean)
49
+ : [],
50
+ side: textValue(config.side, "left"),
51
+ type,
52
+ };
53
+ }
54
+ function collectDynamicSidebarDescriptors() {
55
+ const out = [];
56
+ const seen = new Set();
57
+ for (const root of visibleLiveRoots()) {
58
+ const descriptor = descriptorFromRoot(root);
59
+ if (!descriptor || seen.has(descriptor.key))
60
+ continue;
61
+ seen.add(descriptor.key);
62
+ out.push(descriptor);
63
+ }
64
+ return out;
65
+ }
66
+ function collectDynamicSidebarRooms() {
67
+ const rooms = [];
68
+ const seen = new Set();
69
+ for (const descriptor of collectDynamicSidebarDescriptors()) {
70
+ for (const room of descriptor.rooms) {
71
+ if (!room || seen.has(room))
72
+ continue;
73
+ seen.add(room);
74
+ rooms.push(room);
75
+ }
76
+ }
77
+ return rooms;
78
+ }
79
+ async function requestDynamicSidebarCounts() {
80
+ const descriptors = collectDynamicSidebarDescriptors();
81
+ if (!descriptors.length || typeof liveOptions.request !== "function")
82
+ return [];
83
+ return await liveOptions.request(descriptors);
84
+ }
85
+ function applyDynamicSidebarResponse(itemsInput) {
86
+ const items = Array.isArray(itemsInput) ? itemsInput : [];
87
+ const countsByKey = new Map();
88
+ items.forEach((itemInput) => {
89
+ const item = itemInput && typeof itemInput === "object"
90
+ ? itemInput
91
+ : null;
92
+ const key = textValue(item?.key);
93
+ if (!key || item?.resolved !== true)
94
+ return;
95
+ countsByKey.set(key, item.entity_counts || {});
96
+ });
97
+ for (const root of visibleLiveRoots()) {
98
+ const key = descriptorKeyFromConfig(liveConfigs.get(root) || {});
99
+ if (!countsByKey.has(key))
100
+ continue;
101
+ applyDynamicSidebarCounts(root, countsByKey.get(key) || {}, liveOptions.renderers || {});
102
+ }
103
+ }
104
+ async function refreshDynamicSidebarLive() {
105
+ if (refreshInFlight) {
106
+ refreshQueued = true;
107
+ return;
108
+ }
109
+ refreshInFlight = true;
110
+ try {
111
+ const items = await requestDynamicSidebarCounts();
112
+ if (items != null)
113
+ applyDynamicSidebarResponse(items);
114
+ }
115
+ finally {
116
+ refreshInFlight = false;
117
+ if (!refreshQueued)
118
+ return;
119
+ refreshQueued = false;
120
+ scheduleDynamicSidebarRefresh(liveOptions.refreshDelayMs || 120);
121
+ }
122
+ }
123
+ function scheduleDynamicSidebarRefresh(delayMs = liveOptions.refreshDelayMs || 120) {
124
+ if (refreshTimer)
125
+ window.clearTimeout(refreshTimer);
126
+ refreshTimer = window.setTimeout(() => {
127
+ refreshTimer = 0;
128
+ void refreshDynamicSidebarLive();
129
+ }, Math.max(0, delayMs));
130
+ }
131
+ function syncDynamicSidebarRooms() {
132
+ unsubscribeRooms.forEach((unsubscribe) => unsubscribe());
133
+ unsubscribeRooms = [];
134
+ if (typeof liveOptions.subscribe !== "function")
135
+ return;
136
+ const eventName = liveOptions.event || "sidebar";
137
+ unsubscribeRooms = collectDynamicSidebarRooms()
138
+ .map((room) => liveOptions.subscribe?.(room, (payload) => {
139
+ if (payload && typeof payload === "object" && "event" in payload &&
140
+ textValue(payload.event) !== eventName)
141
+ return;
142
+ scheduleDynamicSidebarRefresh(liveOptions.refreshDelayMs || 120);
143
+ }))
144
+ .filter((cleanup) => {
145
+ return typeof cleanup === "function";
146
+ });
147
+ }
148
+ function bindDynamicSidebarLiveHost(host) {
149
+ const root = liveRootContent(host) || host;
150
+ if (!(root instanceof HTMLElement))
151
+ return null;
152
+ liveRoots.add(root);
153
+ liveConfigs.set(root, readElementJson(host, DYNAMIC_SIDEBAR_LIVE_CONFIG_SELECTOR, {}));
154
+ bindDynamicSidebarDisabledLinkGuard(root);
155
+ syncDynamicSidebarRooms();
156
+ scheduleDynamicSidebarRefresh(0);
157
+ return root;
158
+ }
159
+ function bindDynamicSidebarLive(root = document, options) {
160
+ mergeLiveOptions(options);
161
+ queryAll(root, DYNAMIC_SIDEBAR_LIVE_SELECTOR)
162
+ .forEach(bindDynamicSidebarLiveHost);
163
+ }
164
+ export { applyDynamicSidebarResponse, bindDynamicSidebarLive, bindDynamicSidebarLiveHost, collectDynamicSidebarDescriptors, collectDynamicSidebarRooms, refreshDynamicSidebarLive, requestDynamicSidebarCounts, scheduleDynamicSidebarRefresh, };
165
+ //# sourceMappingURL=live.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"live.js","sourceRoot":"","sources":["../../../../../src/sidebar/dynamic/runtime/live.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { DynamicSidebarRuntimeCountContext, DynamicSidebarRuntimeLoaderContext, DynamicSidebarRuntimeStateContext } from "./types.js";
2
+ declare function defaultCountNode(context: DynamicSidebarRuntimeCountContext): HTMLSpanElement;
3
+ declare function loaderNode(documentRef: Document, size: string): HTMLDivElement;
4
+ declare function defaultLoaderNode(context: DynamicSidebarRuntimeLoaderContext): HTMLSpanElement;
5
+ declare function defaultStateNode(context: DynamicSidebarRuntimeStateContext): HTMLSpanElement;
6
+ export { defaultCountNode, defaultLoaderNode, defaultStateNode, loaderNode, };
7
+ //# sourceMappingURL=renderers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderers.d.ts","sourceRoot":"","sources":["../../../../../src/sidebar/dynamic/runtime/renderers.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,iCAAiC,EACjC,kCAAkC,EAClC,iCAAiC,EAClC,MAAM,YAAY,CAAC;AAGpB,iBAAS,gBAAgB,CAAC,OAAO,EAAE,iCAAiC,mBAKnE;AAED,iBAAS,UAAU,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAKtD;AAED,iBAAS,iBAAiB,CAAC,OAAO,EAAE,kCAAkC,mBAarE;AAED,iBAAS,gBAAgB,CAAC,OAAO,EAAE,iCAAiC,mBASnE;AAED,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,GACX,CAAC"}
@@ -0,0 +1,43 @@
1
+ import { formatWrappedCount } from "../../../../primitives/components/index.js";
2
+ import { textValue } from "../../../../sidebar/dynamic/tree.js";
3
+ function defaultCountNode(context) {
4
+ const node = context.document.createElement("span");
5
+ node.className = "time-counter";
6
+ node.textContent = formatWrappedCount(context.count);
7
+ return node;
8
+ }
9
+ function loaderNode(documentRef, size) {
10
+ const node = documentRef.createElement("div");
11
+ node.className = `loader-circle ${size}`;
12
+ node.setAttribute("aria-hidden", "true");
13
+ return node;
14
+ }
15
+ function defaultLoaderNode(context) {
16
+ if (context.repositoryId) {
17
+ if (context.running <= 0)
18
+ return null;
19
+ const host = context.document.createElement("span");
20
+ host.className = "text-muted no-select inline-row gap-xs ver-center";
21
+ host.appendChild(loaderNode(context.document, "xs"));
22
+ return host;
23
+ }
24
+ if (context.running <= 0)
25
+ return null;
26
+ const host = context.document.createElement("span");
27
+ host.className = "text-muted no-select inline-row gap-xs ver-center";
28
+ host.appendChild(loaderNode(context.document, "sm"));
29
+ return host;
30
+ }
31
+ function defaultStateNode(context) {
32
+ const state = textValue(context.state).toLowerCase();
33
+ if (!state)
34
+ return null;
35
+ const node = context.document.createElement("span");
36
+ node.className = `dot dot-sm ${state === "running" ? "green" : "red"}`;
37
+ node.setAttribute("aria-hidden", "true");
38
+ node.setAttribute("data-state", state);
39
+ node.setAttribute("data-tbf-sidebar-state-dot", "");
40
+ return node;
41
+ }
42
+ export { defaultCountNode, defaultLoaderNode, defaultStateNode, loaderNode, };
43
+ //# sourceMappingURL=renderers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderers.js","sourceRoot":"","sources":["../../../../../src/sidebar/dynamic/runtime/renderers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAMnD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,SAAS,gBAAgB,CAAC,OAA0C;IAClE,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACpD,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC;IAChC,IAAI,CAAC,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,WAAqB,EAAE,IAAY;IACrD,MAAM,IAAI,GAAG,WAAW,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,CAAC,SAAS,GAAG,iBAAiB,IAAI,EAAE,CAAC;IACzC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACzC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB,CAAC,OAA2C;IACpE,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACtC,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC,SAAS,GAAG,mDAAmD,CAAC;QACrE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;QACrD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACtC,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACpD,IAAI,CAAC,SAAS,GAAG,mDAAmD,CAAC;IACrE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;IACrD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,gBAAgB,CAAC,OAA0C;IAClE,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IACrD,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACpD,IAAI,CAAC,SAAS,GAAG,cAAc,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC;IACvE,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;IACzC,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IACvC,IAAI,CAAC,YAAY,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC;IACpD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,UAAU,GACX,CAAC"}
@@ -0,0 +1,9 @@
1
+ declare const DYNAMIC_SIDEBAR_LIVE_SELECTOR = "[data-tbf-sidebar-dynamic-live]";
2
+ declare const DYNAMIC_SIDEBAR_LIVE_CONFIG_SELECTOR = "script[type=\"application/json\"][data-tbf-sidebar-dynamic-live-config]";
3
+ declare const DYNAMIC_SIDEBAR_COUNT_SLOT_SELECTOR = "[data-tbf-sidebar-count-slot]";
4
+ declare const DYNAMIC_SIDEBAR_LOADER_SLOT_SELECTOR = "[data-tbf-sidebar-loader-slot]";
5
+ declare const DYNAMIC_SIDEBAR_STATE_SLOT_SELECTOR = "[data-tbf-sidebar-state-slot]";
6
+ declare const DYNAMIC_SIDEBAR_DYNAMIC_LINK_SELECTOR = "a[data-tbf-sidebar-link-dynamic='1']";
7
+ declare const DYNAMIC_SIDEBAR_DISABLED_LINK_SELECTOR = "a[data-tbf-sidebar-link-disabled='1']";
8
+ export { DYNAMIC_SIDEBAR_COUNT_SLOT_SELECTOR, DYNAMIC_SIDEBAR_DISABLED_LINK_SELECTOR, DYNAMIC_SIDEBAR_DYNAMIC_LINK_SELECTOR, DYNAMIC_SIDEBAR_LIVE_CONFIG_SELECTOR, DYNAMIC_SIDEBAR_LIVE_SELECTOR, DYNAMIC_SIDEBAR_LOADER_SLOT_SELECTOR, DYNAMIC_SIDEBAR_STATE_SLOT_SELECTOR, };
9
+ //# sourceMappingURL=selectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../../../../../src/sidebar/dynamic/runtime/selectors.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,6BAA6B,oCAAoC,CAAC;AACxE,QAAA,MAAM,oCAAoC,4EAC+B,CAAC;AAC1E,QAAA,MAAM,mCAAmC,kCAAkC,CAAC;AAC5E,QAAA,MAAM,oCAAoC,mCAAmC,CAAC;AAC9E,QAAA,MAAM,mCAAmC,kCAAkC,CAAC;AAC5E,QAAA,MAAM,qCAAqC,yCACH,CAAC;AACzC,QAAA,MAAM,sCAAsC,0CACH,CAAC;AAE1C,OAAO,EACL,mCAAmC,EACnC,sCAAsC,EACtC,qCAAqC,EACrC,oCAAoC,EACpC,6BAA6B,EAC7B,oCAAoC,EACpC,mCAAmC,GACpC,CAAC"}
@@ -0,0 +1,9 @@
1
+ const DYNAMIC_SIDEBAR_LIVE_SELECTOR = "[data-tbf-sidebar-dynamic-live]";
2
+ const DYNAMIC_SIDEBAR_LIVE_CONFIG_SELECTOR = 'script[type="application/json"][data-tbf-sidebar-dynamic-live-config]';
3
+ const DYNAMIC_SIDEBAR_COUNT_SLOT_SELECTOR = "[data-tbf-sidebar-count-slot]";
4
+ const DYNAMIC_SIDEBAR_LOADER_SLOT_SELECTOR = "[data-tbf-sidebar-loader-slot]";
5
+ const DYNAMIC_SIDEBAR_STATE_SLOT_SELECTOR = "[data-tbf-sidebar-state-slot]";
6
+ const DYNAMIC_SIDEBAR_DYNAMIC_LINK_SELECTOR = "a[data-tbf-sidebar-link-dynamic='1']";
7
+ const DYNAMIC_SIDEBAR_DISABLED_LINK_SELECTOR = "a[data-tbf-sidebar-link-disabled='1']";
8
+ export { DYNAMIC_SIDEBAR_COUNT_SLOT_SELECTOR, DYNAMIC_SIDEBAR_DISABLED_LINK_SELECTOR, DYNAMIC_SIDEBAR_DYNAMIC_LINK_SELECTOR, DYNAMIC_SIDEBAR_LIVE_CONFIG_SELECTOR, DYNAMIC_SIDEBAR_LIVE_SELECTOR, DYNAMIC_SIDEBAR_LOADER_SLOT_SELECTOR, DYNAMIC_SIDEBAR_STATE_SLOT_SELECTOR, };
9
+ //# sourceMappingURL=selectors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selectors.js","sourceRoot":"","sources":["../../../../../src/sidebar/dynamic/runtime/selectors.ts"],"names":[],"mappings":"AAAA,MAAM,6BAA6B,GAAG,iCAAiC,CAAC;AACxE,MAAM,oCAAoC,GACxC,uEAAuE,CAAC;AAC1E,MAAM,mCAAmC,GAAG,+BAA+B,CAAC;AAC5E,MAAM,oCAAoC,GAAG,gCAAgC,CAAC;AAC9E,MAAM,mCAAmC,GAAG,+BAA+B,CAAC;AAC5E,MAAM,qCAAqC,GACzC,sCAAsC,CAAC;AACzC,MAAM,sCAAsC,GAC1C,uCAAuC,CAAC;AAE1C,OAAO,EACL,mCAAmC,EACnC,sCAAsC,EACtC,qCAAqC,EACrC,oCAAoC,EACpC,6BAA6B,EAC7B,oCAAoC,EACpC,mCAAmC,GACpC,CAAC"}
@@ -0,0 +1,40 @@
1
+ import type { DynamicSidebarDescriptor, DynamicSidebarResponseItem } from "../../../../sidebar/dynamic/types.d.ts";
2
+ type DynamicSidebarRuntimeRenderContext = {
3
+ active: boolean;
4
+ counts: unknown;
5
+ disabled: boolean;
6
+ document: Document;
7
+ };
8
+ type DynamicSidebarRuntimeCountContext = DynamicSidebarRuntimeRenderContext & {
9
+ count: number;
10
+ path: string;
11
+ };
12
+ type DynamicSidebarRuntimeLoaderContext = DynamicSidebarRuntimeRenderContext & {
13
+ idleCount: number | null;
14
+ idleCountPath: string;
15
+ lastStatus: string;
16
+ loaderPath: string;
17
+ repositoryId: string;
18
+ running: number;
19
+ statusPath: string;
20
+ };
21
+ type DynamicSidebarRuntimeStateContext = DynamicSidebarRuntimeRenderContext & {
22
+ path: string;
23
+ state: string;
24
+ };
25
+ type DynamicSidebarRuntimeRenderers = {
26
+ count?: (context: DynamicSidebarRuntimeCountContext) => Node | null;
27
+ loader?: (context: DynamicSidebarRuntimeLoaderContext) => Node | null;
28
+ state?: (context: DynamicSidebarRuntimeStateContext) => Node | null;
29
+ };
30
+ type DynamicSidebarCleanup = () => void;
31
+ type DynamicSidebarSubscribe = (room: string, listener: (payload: unknown) => void) => DynamicSidebarCleanup | void;
32
+ type DynamicSidebarLiveOptions = {
33
+ event?: string;
34
+ refreshDelayMs?: number;
35
+ renderers?: DynamicSidebarRuntimeRenderers;
36
+ request?: (descriptors: DynamicSidebarDescriptor[]) => Promise<DynamicSidebarResponseItem[] | null | undefined> | DynamicSidebarResponseItem[] | null | undefined;
37
+ subscribe?: DynamicSidebarSubscribe;
38
+ };
39
+ export type { DynamicSidebarCleanup, DynamicSidebarLiveOptions, DynamicSidebarRuntimeCountContext, DynamicSidebarRuntimeLoaderContext, DynamicSidebarRuntimeRenderContext, DynamicSidebarRuntimeRenderers, DynamicSidebarRuntimeStateContext, DynamicSidebarSubscribe, };
40
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/sidebar/dynamic/runtime/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAE1F,KAAK,kCAAkC,GAAG;IACxC,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEF,KAAK,iCAAiC,GACpC,kCAAkC,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEJ,KAAK,kCAAkC,GACrC,kCAAkC,GAAG;IACnC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEJ,KAAK,iCAAiC,GACpC,kCAAkC,GAAG;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEJ,KAAK,8BAA8B,GAAG;IACpC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,iCAAiC,KAAK,IAAI,GAAG,IAAI,CAAC;IACpE,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,kCAAkC,KAAK,IAAI,GAAG,IAAI,CAAC;IACtE,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,iCAAiC,KAAK,IAAI,GAAG,IAAI,CAAC;CACrE,CAAC;AAEF,KAAK,qBAAqB,GAAG,MAAM,IAAI,CAAC;AAExC,KAAK,uBAAuB,GAAG,CAC7B,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,KACjC,qBAAqB,GAAG,IAAI,CAAC;AAElC,KAAK,yBAAyB,GAAG;IAC/B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,8BAA8B,CAAC;IAC3C,OAAO,CAAC,EAAE,CACR,WAAW,EAAE,wBAAwB,EAAE,KACpC,OAAO,CAAC,0BAA0B,EAAE,GAAG,IAAI,GAAG,SAAS,CAAC,GAC3D,0BAA0B,EAAE,GAC5B,IAAI,GACJ,SAAS,CAAC;IACZ,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC,CAAC;AAEF,YAAY,EACV,qBAAqB,EACrB,yBAAyB,EACzB,iCAAiC,EACjC,kCAAkC,EAClC,kCAAkC,EAClC,8BAA8B,EAC9B,iCAAiC,EACjC,uBAAuB,GACxB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/sidebar/dynamic/runtime/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,18 @@
1
+ import type { DynamicSidebarContext, DynamicSidebarItem, DynamicSidebarLinkItem, DynamicSidebarLiveConfig } from "./types.js";
2
+ declare function textValue(value: unknown, fallback?: string): string;
3
+ declare function sidebarCountsTree(sidebar: DynamicSidebarContext | null | undefined): object;
4
+ declare function dynamicSidebarTreeValue(tree: unknown, pathInput?: string): unknown;
5
+ declare function dynamicSidebarNumber(tree: unknown, pathInput?: string): number;
6
+ declare function dynamicSidebarText(tree: unknown, pathInput?: string): string;
7
+ declare function dynamicSidebarCount(sidebar: DynamicSidebarContext | null | undefined, pathInput?: string): number;
8
+ declare function dynamicSidebarTextValue(sidebar: DynamicSidebarContext | null | undefined, pathInput?: string): string;
9
+ declare function dynamicSidebarLinkDisabled(sidebar: DynamicSidebarContext | null | undefined, item: DynamicSidebarLinkItem): boolean;
10
+ declare function normalizeRoutePath(input: unknown): string;
11
+ declare function dynamicSidebarLinkActive(currentPathInput: unknown, item: DynamicSidebarLinkItem, disabled: boolean): boolean;
12
+ declare function isDynamicSidebarDivider(item: DynamicSidebarItem): item is Extract<DynamicSidebarItem, {
13
+ kind: "divider";
14
+ }>;
15
+ declare function normalizeDynamicSidebarItems(items: DynamicSidebarItem[]): DynamicSidebarItem[];
16
+ declare function dynamicSidebarLiveConfig(sidebar: DynamicSidebarContext | null | undefined): DynamicSidebarLiveConfig;
17
+ export { dynamicSidebarCount, dynamicSidebarLinkActive, dynamicSidebarLinkDisabled, dynamicSidebarLiveConfig, dynamicSidebarNumber, dynamicSidebarText, dynamicSidebarTextValue, dynamicSidebarTreeValue, isDynamicSidebarDivider, normalizeDynamicSidebarItems, normalizeRoutePath, sidebarCountsTree, textValue, };
18
+ //# sourceMappingURL=tree.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../../../src/sidebar/dynamic/tree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,wBAAwB,EACzB,MAAM,YAAY,CAAC;AAEpB,iBAAS,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,SAAK,UAG/C;AAED,iBAAS,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,UAG3E;AAED,iBAAS,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,WAajE;AAED,iBAAS,oBAAoB,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,UAI9D;AAED,iBAAS,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,MAAM,UAG5D;AAED,iBAAS,mBAAmB,CAC1B,OAAO,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,EACjD,SAAS,CAAC,EAAE,MAAM,UAGnB;AAED,iBAAS,uBAAuB,CAC9B,OAAO,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,EACjD,SAAS,CAAC,EAAE,MAAM,UAGnB;AAED,iBAAS,0BAA0B,CACjC,OAAO,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,EACjD,IAAI,EAAE,sBAAsB,WAK7B;AAED,iBAAS,kBAAkB,CAAC,KAAK,EAAE,OAAO,UAKzC;AAED,iBAAS,wBAAwB,CAC/B,gBAAgB,EAAE,OAAO,EACzB,IAAI,EAAE,sBAAsB,EAC5B,QAAQ,EAAE,OAAO,WAQlB;AAED,iBAAS,uBAAuB,CAC9B,IAAI,EAAE,kBAAkB,GACvB,IAAI,IAAI,OAAO,CAAC,kBAAkB,EAAE;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC,CAE1D;AAED,iBAAS,4BAA4B,CAAC,KAAK,EAAE,kBAAkB,EAAE,wBAoBhE;AAED,iBAAS,wBAAwB,CAC/B,OAAO,EAAE,qBAAqB,GAAG,IAAI,GAAG,SAAS,GAChD,wBAAwB,CAe1B;AAED,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,0BAA0B,EAC1B,wBAAwB,EACxB,oBAAoB,EACpB,kBAAkB,EAClB,uBAAuB,EACvB,uBAAuB,EACvB,uBAAuB,EACvB,4BAA4B,EAC5B,kBAAkB,EAClB,iBAAiB,EACjB,SAAS,GACV,CAAC"}
@@ -0,0 +1,106 @@
1
+ function textValue(value, fallback = "") {
2
+ const text = String(value ?? "").trim();
3
+ return text || fallback;
4
+ }
5
+ function sidebarCountsTree(sidebar) {
6
+ const counts = sidebar?.entity_counts;
7
+ return counts && typeof counts === "object" ? counts : {};
8
+ }
9
+ function dynamicSidebarTreeValue(tree, pathInput) {
10
+ const parts = textValue(pathInput)
11
+ .split(".")
12
+ .map((part) => textValue(part))
13
+ .filter(Boolean);
14
+ let current = tree && typeof tree === "object" ? tree : {};
15
+ for (const part of parts) {
16
+ if (!current || typeof current !== "object" || !(part in current)) {
17
+ return null;
18
+ }
19
+ current = current[part];
20
+ }
21
+ return current;
22
+ }
23
+ function dynamicSidebarNumber(tree, pathInput) {
24
+ const value = dynamicSidebarTreeValue(tree, pathInput);
25
+ const parsed = Number(value);
26
+ return Number.isFinite(parsed) ? parsed : null;
27
+ }
28
+ function dynamicSidebarText(tree, pathInput) {
29
+ const value = dynamicSidebarTreeValue(tree, pathInput);
30
+ return typeof value === "string" ? value : "";
31
+ }
32
+ function dynamicSidebarCount(sidebar, pathInput) {
33
+ return dynamicSidebarNumber(sidebarCountsTree(sidebar), pathInput) || 0;
34
+ }
35
+ function dynamicSidebarTextValue(sidebar, pathInput) {
36
+ return dynamicSidebarText(sidebarCountsTree(sidebar), pathInput);
37
+ }
38
+ function dynamicSidebarLinkDisabled(sidebar, item) {
39
+ if (item.disabled === true)
40
+ return true;
41
+ const disabledPath = textValue(item.disabledPath);
42
+ return disabledPath ? dynamicSidebarCount(sidebar, disabledPath) <= 0 : false;
43
+ }
44
+ function normalizeRoutePath(input) {
45
+ const text = textValue(input);
46
+ const path = text.split(/[?#]/u)[0] || "/";
47
+ const withSlash = path.startsWith("/") ? path : `/${path}`;
48
+ return withSlash.length > 1 ? withSlash.replace(/\/+$/u, "") : "/";
49
+ }
50
+ function dynamicSidebarLinkActive(currentPathInput, item, disabled) {
51
+ if (disabled || item.navIgnore === true)
52
+ return false;
53
+ const current = normalizeRoutePath(currentPathInput);
54
+ const target = normalizeRoutePath(item.href);
55
+ if (current === target)
56
+ return true;
57
+ if (item.exact === true || target === "/")
58
+ return false;
59
+ return current.startsWith(`${target}/`);
60
+ }
61
+ function isDynamicSidebarDivider(item) {
62
+ return item.kind === "divider";
63
+ }
64
+ function normalizeDynamicSidebarItems(items) {
65
+ const visibleItems = Array.isArray(items)
66
+ ? items.filter((item) => {
67
+ return item && item.show !== false &&
68
+ (isDynamicSidebarDivider(item) ||
69
+ !(item.hideWhenDisabled === true && item.disabled === true));
70
+ })
71
+ : [];
72
+ const out = [];
73
+ for (const item of visibleItems) {
74
+ if (isDynamicSidebarDivider(item)) {
75
+ if (!out.length)
76
+ continue;
77
+ if (isDynamicSidebarDivider(out[out.length - 1]))
78
+ continue;
79
+ out.push(item);
80
+ continue;
81
+ }
82
+ out.push(item);
83
+ }
84
+ while (out.length && isDynamicSidebarDivider(out[out.length - 1]))
85
+ out.pop();
86
+ return out;
87
+ }
88
+ function dynamicSidebarLiveConfig(sidebar) {
89
+ const live = sidebar?.live && typeof sidebar.live === "object"
90
+ ? sidebar.live
91
+ : null;
92
+ const type = textValue(live?.type, textValue(sidebar?.type));
93
+ if (!type)
94
+ return {};
95
+ return {
96
+ params: live?.params && typeof live.params === "object" ? live.params : {},
97
+ path: textValue(live?.path),
98
+ rooms: Array.isArray(live?.rooms)
99
+ ? live.rooms.map((item) => textValue(item)).filter(Boolean)
100
+ : [],
101
+ side: textValue(live?.side, "left"),
102
+ type,
103
+ };
104
+ }
105
+ export { dynamicSidebarCount, dynamicSidebarLinkActive, dynamicSidebarLinkDisabled, dynamicSidebarLiveConfig, dynamicSidebarNumber, dynamicSidebarText, dynamicSidebarTextValue, dynamicSidebarTreeValue, isDynamicSidebarDivider, normalizeDynamicSidebarItems, normalizeRoutePath, sidebarCountsTree, textValue, };
106
+ //# sourceMappingURL=tree.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../../src/sidebar/dynamic/tree.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,99 @@
1
+ import type { HTMLAttributes, ReactNode } from "react";
2
+ type DynamicSidebarVisibility = "active" | "always";
3
+ type DynamicSidebarLiveConfig = {
4
+ params?: Record<string, unknown>;
5
+ path?: string;
6
+ rooms?: string[];
7
+ side?: string;
8
+ type?: string;
9
+ };
10
+ type DynamicSidebarContext = {
11
+ entity_counts?: unknown;
12
+ live?: DynamicSidebarLiveConfig | null;
13
+ type?: string;
14
+ [key: string]: unknown;
15
+ };
16
+ type DynamicSidebarDividerItem = {
17
+ key?: string;
18
+ kind: "divider";
19
+ show?: boolean;
20
+ };
21
+ type DynamicSidebarLinkItem = {
22
+ countPath?: string;
23
+ countVisibility?: DynamicSidebarVisibility;
24
+ disabled?: boolean;
25
+ disabledPath?: string;
26
+ exact?: boolean;
27
+ hideWhenDisabled?: boolean;
28
+ href?: string;
29
+ icon?: ReactNode;
30
+ iconKey?: string;
31
+ iconSpec?: string;
32
+ key?: string;
33
+ kind: "link";
34
+ label?: ReactNode;
35
+ loaderPath?: string;
36
+ loaderVisibility?: DynamicSidebarVisibility;
37
+ navIgnore?: boolean;
38
+ show?: boolean;
39
+ statePath?: string;
40
+ statusIdleCountPath?: string;
41
+ statusPath?: string;
42
+ statusRepositoryId?: string;
43
+ };
44
+ type DynamicSidebarItem = DynamicSidebarDividerItem | DynamicSidebarLinkItem;
45
+ type DynamicSidebarItemContext = {
46
+ active: boolean;
47
+ disabled: boolean;
48
+ item: DynamicSidebarLinkItem;
49
+ sidebar: DynamicSidebarContext;
50
+ };
51
+ type DynamicSidebarCountContext = DynamicSidebarItemContext & {
52
+ count: number | null;
53
+ path: string;
54
+ };
55
+ type DynamicSidebarLoaderContext = DynamicSidebarItemContext & {
56
+ idleCount: number | null;
57
+ idleCountPath: string;
58
+ lastStatus: string;
59
+ loaderPath: string;
60
+ repositoryId: string;
61
+ running: number;
62
+ statusPath: string;
63
+ };
64
+ type DynamicSidebarStateContext = DynamicSidebarItemContext & {
65
+ path: string;
66
+ state: string;
67
+ };
68
+ type DynamicSidebarLinkListProps = Omit<HTMLAttributes<HTMLUListElement>, "children"> & {
69
+ actionTrigger?: boolean;
70
+ currentPath?: string;
71
+ items: DynamicSidebarItem[];
72
+ linksId?: string;
73
+ renderCount?: (context: DynamicSidebarCountContext) => ReactNode;
74
+ renderIcon?: (context: DynamicSidebarItemContext) => ReactNode;
75
+ renderLoader?: (context: DynamicSidebarLoaderContext) => ReactNode;
76
+ renderState?: (context: DynamicSidebarStateContext) => ReactNode;
77
+ sidebar?: DynamicSidebarContext | null;
78
+ wrapLink?: (node: ReactNode, context: DynamicSidebarItemContext & {
79
+ href: string;
80
+ }) => ReactNode;
81
+ };
82
+ type DynamicSidebarLiveRootProps = HTMLAttributes<HTMLDivElement> & {
83
+ config: DynamicSidebarLiveConfig;
84
+ };
85
+ type DynamicSidebarDescriptor = {
86
+ key: string;
87
+ params: Record<string, unknown>;
88
+ path: string;
89
+ rooms: string[];
90
+ side: string;
91
+ type: string;
92
+ };
93
+ type DynamicSidebarResponseItem = {
94
+ entity_counts?: unknown;
95
+ key?: string;
96
+ resolved?: boolean;
97
+ };
98
+ export type { DynamicSidebarContext, DynamicSidebarCountContext, DynamicSidebarDescriptor, DynamicSidebarDividerItem, DynamicSidebarItem, DynamicSidebarItemContext, DynamicSidebarLinkItem, DynamicSidebarLinkListProps, DynamicSidebarLiveConfig, DynamicSidebarLiveRootProps, DynamicSidebarLoaderContext, DynamicSidebarResponseItem, DynamicSidebarStateContext, DynamicSidebarVisibility, };
99
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/sidebar/dynamic/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/sidebar/dynamic/types.ts"],"names":[],"mappings":""}
@@ -1,4 +1,5 @@
1
1
  import { type BindRoot } from "../../dom/index.d.ts";
2
+ import { type DynamicSidebarLiveOptions } from "./dynamic/runtime/index.js";
2
3
  declare const SIDEBAR_SHELL_SELECTOR = "[data-tbf-sidebar-shell]";
3
4
  declare const SIDEBAR_MINIMIZE_SELECTOR = "[data-tbf-sidebar-minimize][aria-controls]";
4
5
  declare const SIDEBAR_OPEN_SELECTOR = "[data-tbf-sidebar-open][aria-controls]";
@@ -14,6 +15,7 @@ type SidebarState = {
14
15
  };
15
16
  type SidebarPersistenceAdapter = (state: SidebarState) => Promise<unknown> | unknown;
16
17
  type SidebarRuntimeOptions = {
18
+ dynamicLive?: DynamicSidebarLiveOptions;
17
19
  persistence?: SidebarPersistenceAdapter;
18
20
  };
19
21
  declare function setSidebarMinimized(shell: HTMLElement, minimized: boolean, options?: SidebarRuntimeOptions): Promise<{
@@ -59,5 +61,6 @@ declare function bindSidebars(root?: BindRoot, options?: SidebarRuntimeOptions):
59
61
  declare function createSidebarBootScript(sides?: SidebarSide[]): string;
60
62
  export { SIDEBAR_BOOT_ATTRIBUTE, SIDEBAR_CLOSE_SELECTOR, SIDEBAR_MINIMIZE_SELECTOR, SIDEBAR_OPEN_SELECTOR, SIDEBAR_SHELL_SELECTOR, SIDEBAR_STATE_EVENT, bindSidebarCloseButton, bindSidebarMinimizeButton, bindSidebarOpenButton, bindSidebarShell, bindSidebars, closeSidebar, createSidebarBootScript, openSidebar, setSidebarMinimized, setSidebarOpen, toggleSidebarMinimized, };
61
63
  export * from "./live.js";
64
+ export * from "./dynamic/index.js";
62
65
  export type { SidebarPersistenceAdapter, SidebarRuntimeOptions, SidebarSide, SidebarState };
63
66
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sidebar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,QAAQ,EACd,MAAM,eAAe,CAAC;AAGvB,QAAA,MAAM,sBAAsB,6BAA6B,CAAC;AAC1D,QAAA,MAAM,yBAAyB,+CAA+C,CAAC;AAC/E,QAAA,MAAM,qBAAqB,2CAA2C,CAAC;AACvE,QAAA,MAAM,sBAAsB,6BAA6B,CAAC;AAC1D,QAAA,MAAM,sBAAsB,0BAA0B,CAAC;AACvD,QAAA,MAAM,mBAAmB,sBAAsB,CAAC;AAGhD,KAAK,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAE7C,KAAK,YAAY,GAAG;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,WAAW,CAAC;CACnB,CAAC;AAEF,KAAK,yBAAyB,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAErF,KAAK,qBAAqB,GAAG;IAC3B,WAAW,CAAC,EAAE,yBAAyB,CAAC;CACzC,CAAC;AA4GF,iBAAe,mBAAmB,CAChC,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,OAAO,EAClB,OAAO,GAAE,qBAA0B;;;UAxH7B,OAAO;eADF,OAAO;GAoInB;AAED,iBAAS,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO;;;UArIjD,OAAO;eADF,OAAO;EAwInB;AAED,iBAAS,sBAAsB,CAC7B,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,qBAA0B;;;UA3I7B,OAAO;eADF,OAAO;GAiJnB;AAED,iBAAS,WAAW,CAAC,KAAK,EAAE,WAAW;;;UAlJ/B,OAAO;eADF,OAAO;EAqJnB;AAED,iBAAS,YAAY,CAAC,KAAK,EAAE,WAAW;;;UAtJhC,OAAO;eADF,OAAO;EAyJnB;AAED,iBAAS,gBAAgB,CACvB,KAAK,EAAE,WAAW,GAAG,IAAI,EACzB,OAAO,GAAE,qBAA0B;;;UA5J7B,OAAO;eADF,OAAO;EAyKnB;AAOD,iBAAS,yBAAyB,CAChC,MAAM,EAAE,WAAW,GAAG,IAAI,EAC1B,IAAI,GAAE,QAAmB,EACzB,OAAO,GAAE,qBAA0B,eAkBpC;AAED,iBAAS,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,EAAE,IAAI,GAAE,QAAmB,eAUnF;AAED,iBAAS,sBAAsB,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,eAUzD;AAuBD,iBAAS,YAAY,CAAC,IAAI,GAAE,QAAmB,EAAE,OAAO,GAAE,qBAA0B,QAanF;AAED,iBAAS,uBAAuB,CAAC,KAAK,GAAE,WAAW,EAAa,GAAG,MAAM,CAaxE;AAED,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,uBAAuB,EACvB,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,sBAAsB,GACvB,CAAC;AACF,cAAc,WAAW,CAAC;AAC1B,YAAY,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sidebar/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,QAAQ,EACd,MAAM,eAAe,CAAC;AACvB,OAAO,EAEL,KAAK,yBAAyB,EAC/B,MAAM,4BAA4B,CAAC;AAGpC,QAAA,MAAM,sBAAsB,6BAA6B,CAAC;AAC1D,QAAA,MAAM,yBAAyB,+CAA+C,CAAC;AAC/E,QAAA,MAAM,qBAAqB,2CAA2C,CAAC;AACvE,QAAA,MAAM,sBAAsB,6BAA6B,CAAC;AAC1D,QAAA,MAAM,sBAAsB,0BAA0B,CAAC;AACvD,QAAA,MAAM,mBAAmB,sBAAsB,CAAC;AAGhD,KAAK,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAE7C,KAAK,YAAY,GAAG;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,WAAW,CAAC;IACnB,IAAI,EAAE,WAAW,CAAC;CACnB,CAAC;AAEF,KAAK,yBAAyB,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;AAErF,KAAK,qBAAqB,GAAG;IAC3B,WAAW,CAAC,EAAE,yBAAyB,CAAC;IACxC,WAAW,CAAC,EAAE,yBAAyB,CAAC;CACzC,CAAC;AA4GF,iBAAe,mBAAmB,CAChC,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,OAAO,EAClB,OAAO,GAAE,qBAA0B;;;UAzH7B,OAAO;eADF,OAAO;GAqInB;AAED,iBAAS,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO;;;UAtIjD,OAAO;eADF,OAAO;EAyInB;AAED,iBAAS,sBAAsB,CAC7B,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,qBAA0B;;;UA5I7B,OAAO;eADF,OAAO;GAkJnB;AAED,iBAAS,WAAW,CAAC,KAAK,EAAE,WAAW;;;UAnJ/B,OAAO;eADF,OAAO;EAsJnB;AAED,iBAAS,YAAY,CAAC,KAAK,EAAE,WAAW;;;UAvJhC,OAAO;eADF,OAAO;EA0JnB;AAED,iBAAS,gBAAgB,CACvB,KAAK,EAAE,WAAW,GAAG,IAAI,EACzB,OAAO,GAAE,qBAA0B;;;UA7J7B,OAAO;eADF,OAAO;EA0KnB;AAOD,iBAAS,yBAAyB,CAChC,MAAM,EAAE,WAAW,GAAG,IAAI,EAC1B,IAAI,GAAE,QAAmB,EACzB,OAAO,GAAE,qBAA0B,eAkBpC;AAED,iBAAS,qBAAqB,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,EAAE,IAAI,GAAE,QAAmB,eAUnF;AAED,iBAAS,sBAAsB,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI,eAUzD;AAuBD,iBAAS,YAAY,CAAC,IAAI,GAAE,QAAmB,EAAE,OAAO,GAAE,qBAA0B,QAcnF;AAED,iBAAS,uBAAuB,CAAC,KAAK,GAAE,WAAW,EAAa,GAAG,MAAM,CAaxE;AAED,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,uBAAuB,EACvB,WAAW,EACX,mBAAmB,EACnB,cAAc,EACd,sBAAsB,GACvB,CAAC;AACF,cAAc,WAAW,CAAC;AAC1B,cAAc,oBAAoB,CAAC;AACnC,YAAY,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,WAAW,EAAE,YAAY,EAAE,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { cssEscape, queryAll, resolveDocumentTarget, setAriaExpanded, setControlDisabled, } from "../../dom/index.js";
2
+ import { bindDynamicSidebarLive, } from "./dynamic/runtime/index.js";
2
3
  import { bindSidebarLiveSlots } from "./live.js";
3
4
  const SIDEBAR_SHELL_SELECTOR = "[data-tbf-sidebar-shell]";
4
5
  const SIDEBAR_MINIMIZE_SELECTOR = "[data-tbf-sidebar-minimize][aria-controls]";
@@ -229,6 +230,7 @@ function bindSidebars(root = document, options = {}) {
229
230
  });
230
231
  queryAll(root, SIDEBAR_CLOSE_SELECTOR).forEach(bindSidebarCloseButton);
231
232
  bindSidebarLiveSlots(root);
233
+ bindDynamicSidebarLive(root, options.dynamicLive);
232
234
  installSharedSidebarListeners();
233
235
  }
234
236
  function createSidebarBootScript(sides = ["left"]) {
@@ -247,4 +249,5 @@ function createSidebarBootScript(sides = ["left"]) {
247
249
  }
248
250
  export { SIDEBAR_BOOT_ATTRIBUTE, SIDEBAR_CLOSE_SELECTOR, SIDEBAR_MINIMIZE_SELECTOR, SIDEBAR_OPEN_SELECTOR, SIDEBAR_SHELL_SELECTOR, SIDEBAR_STATE_EVENT, bindSidebarCloseButton, bindSidebarMinimizeButton, bindSidebarOpenButton, bindSidebarShell, bindSidebars, closeSidebar, createSidebarBootScript, openSidebar, setSidebarMinimized, setSidebarOpen, toggleSidebarMinimized, };
249
251
  export * from "./live.js";
252
+ export * from "./dynamic/index.js";
250
253
  //# sourceMappingURL=index.js.map