@ixfx/components 0.5.20 → 0.6.1

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 (285) hide show
  1. package/bundle/index.d.ts +586 -261
  2. package/bundle/index.d.ts.map +1 -1
  3. package/bundle/index.js +8306 -6624
  4. package/bundle/index.js.map +1 -1
  5. package/dist/ac-text.d.ts +12 -7
  6. package/dist/ac-text.d.ts.map +1 -1
  7. package/dist/ac-text.js +3 -4
  8. package/dist/ac-text.js.map +1 -1
  9. package/dist/ac-token-DVbmHmky.d.ts +107 -0
  10. package/dist/ac-token-DVbmHmky.d.ts.map +1 -0
  11. package/dist/ac-token.d.ts +2 -0
  12. package/dist/ac-token.js +646 -0
  13. package/dist/ac-token.js.map +1 -0
  14. package/dist/{button-pcDaCemT.js → button-Bn0BuLpO.js} +3 -4
  15. package/dist/{button-pcDaCemT.js.map → button-Bn0BuLpO.js.map} +1 -1
  16. package/dist/button.d.ts +2 -3
  17. package/dist/button.d.ts.map +1 -1
  18. package/dist/button.js +1 -1
  19. package/dist/checkbox.d.ts +0 -1
  20. package/dist/checkbox.d.ts.map +1 -1
  21. package/dist/checkbox.js +1 -1
  22. package/dist/checkbox.js.map +1 -1
  23. package/dist/{colour-picker-D43Q96r0.js → colour-picker-0stHB90J.js} +11 -14
  24. package/dist/{colour-picker-D43Q96r0.js.map → colour-picker-0stHB90J.js.map} +1 -1
  25. package/dist/colour-picker.d.ts +1 -1
  26. package/dist/colour-picker.js +1 -1
  27. package/dist/crumbs.d.ts +4 -2
  28. package/dist/crumbs.d.ts.map +1 -1
  29. package/dist/crumbs.js +1152 -1
  30. package/dist/crumbs.js.map +1 -0
  31. package/dist/data-controller-DOlmqNKb.js +171 -0
  32. package/dist/data-controller-DOlmqNKb.js.map +1 -0
  33. package/dist/data-display.d.ts +1 -2
  34. package/dist/data-display.d.ts.map +1 -1
  35. package/dist/data-display.js +24 -22
  36. package/dist/data-display.js.map +1 -1
  37. package/dist/data-grid-BeAkORz2.d.ts +215 -0
  38. package/dist/data-grid-BeAkORz2.d.ts.map +1 -0
  39. package/dist/data-grid.d.ts +2 -0
  40. package/dist/data-grid.js +1225 -0
  41. package/dist/data-grid.js.map +1 -0
  42. package/dist/data-provider-BAn_-oR1.d.ts +61 -0
  43. package/dist/data-provider-BAn_-oR1.d.ts.map +1 -0
  44. package/dist/{decorate-DdjvVHS-.js → decorate-VRK8rslU.js} +2 -2
  45. package/dist/{decorate-DdjvVHS-.js.map → decorate-VRK8rslU.js.map} +1 -1
  46. package/dist/{defaults-BkWCPJFL.js → defaults-BCiDhZbF.js} +20 -3
  47. package/dist/defaults-BCiDhZbF.js.map +1 -0
  48. package/dist/drag-ghost-DtSDvjri.js +85 -0
  49. package/dist/drag-ghost-DtSDvjri.js.map +1 -0
  50. package/dist/editable-label.d.ts +1 -2
  51. package/dist/editable-label.d.ts.map +1 -1
  52. package/dist/editable-label.js +1 -1
  53. package/dist/editable-label.js.map +1 -1
  54. package/dist/{incr-search-CeERfijK.js → element-search-Y8SRfPGM.js} +7 -135
  55. package/dist/element-search-Y8SRfPGM.js.map +1 -0
  56. package/dist/form-CsXJX15p.js +64 -0
  57. package/dist/form-CsXJX15p.js.map +1 -0
  58. package/dist/form.d.ts +15 -0
  59. package/dist/form.d.ts.map +1 -0
  60. package/dist/form.js +2 -0
  61. package/dist/grouped-item-lister-CNLMgdIr.d.ts +121 -0
  62. package/dist/grouped-item-lister-CNLMgdIr.d.ts.map +1 -0
  63. package/dist/grouped-item-lister.d.ts +2 -0
  64. package/dist/grouped-item-lister.js +177 -0
  65. package/dist/grouped-item-lister.js.map +1 -0
  66. package/dist/{hex-editor-B-UI4OZu.js → hex-editor-Bk6rxhfg.js} +6 -8
  67. package/dist/{hex-editor-B-UI4OZu.js.map → hex-editor-Bk6rxhfg.js.map} +1 -1
  68. package/dist/{hex-editor-CMIxtNgT.d.ts → hex-editor-Caq8vNQk.d.ts} +2 -3
  69. package/dist/hex-editor-Caq8vNQk.d.ts.map +1 -0
  70. package/dist/hex.d.ts +1 -1
  71. package/dist/hex.js +1 -1
  72. package/dist/highlight-B-eQrhhb.js.map +1 -1
  73. package/dist/{icon-Bd5BiU4b.d.ts → icon-BUwP1CZ1.d.ts} +3 -4
  74. package/dist/icon-BUwP1CZ1.d.ts.map +1 -0
  75. package/dist/{icon-CK14NUcE.js → icons-Bm2ByQ3s.js} +10 -5
  76. package/dist/icons-Bm2ByQ3s.js.map +1 -0
  77. package/dist/icons.d.ts +2 -2
  78. package/dist/icons.js +2 -8
  79. package/dist/incr-search-vCzuao-2.js +137 -0
  80. package/dist/incr-search-vCzuao-2.js.map +1 -0
  81. package/dist/incr-search.d.ts +1 -1
  82. package/dist/incr-search.js +2 -1
  83. package/dist/{index-DrKRD8_a.d.ts → index-BOUaDIW-.d.ts} +4 -4
  84. package/dist/index-BOUaDIW-.d.ts.map +1 -0
  85. package/dist/{index-CkMIKEWp.d.ts → index-BUB5SICW.d.ts} +3 -4
  86. package/dist/index-BUB5SICW.d.ts.map +1 -0
  87. package/dist/{index-tX6fKF8m.d.ts → index-BeuCXtiO.d.ts} +3 -3
  88. package/dist/index-BeuCXtiO.d.ts.map +1 -0
  89. package/dist/{index-BslNaMLo.d.ts → index-Cu5i8zZY.d.ts} +3 -3
  90. package/dist/index-Cu5i8zZY.d.ts.map +1 -0
  91. package/dist/{index-D87kRcEs.d.ts → index-RqMh1i-O.d.ts} +2 -1
  92. package/dist/index-RqMh1i-O.d.ts.map +1 -0
  93. package/dist/{index-Cdmrn0SZ.d.ts → index-ovq_GTdl.d.ts} +11 -11
  94. package/dist/index-ovq_GTdl.d.ts.map +1 -0
  95. package/dist/index.d.ts +139 -599
  96. package/dist/index.d.ts.map +1 -1
  97. package/dist/index.js +789 -2845
  98. package/dist/index.js.map +1 -1
  99. package/dist/{labelled-input-base-ORb1rGq6.d.ts → labelled-input-base-Dp_9KP0G.d.ts} +2 -3
  100. package/dist/labelled-input-base-Dp_9KP0G.d.ts.map +1 -0
  101. package/dist/{labelled-input-base-9K_w3oLj.js → labelled-input-base-hoKGwyKT.js} +2 -2
  102. package/dist/{labelled-input-base-9K_w3oLj.js.map → labelled-input-base-hoKGwyKT.js.map} +1 -1
  103. package/dist/labelled-radial-input.d.ts +4 -5
  104. package/dist/labelled-radial-input.d.ts.map +1 -1
  105. package/dist/labelled-radial-input.js +2 -3
  106. package/dist/labelled-radial-input.js.map +1 -1
  107. package/dist/labelled-range-input.d.ts +1 -1
  108. package/dist/labelled-range-input.js +2 -2
  109. package/dist/labelled-range-input.js.map +1 -1
  110. package/dist/led.d.ts +1 -2
  111. package/dist/led.d.ts.map +1 -1
  112. package/dist/led.js +1 -1
  113. package/dist/led.js.map +1 -1
  114. package/dist/menu-DIfU70AA.js +1609 -0
  115. package/dist/menu-DIfU70AA.js.map +1 -0
  116. package/dist/{menu-item-AtoP6bD4.d.ts → menu-item-BG5w7fi4.d.ts} +4 -4
  117. package/dist/menu-item-BG5w7fi4.d.ts.map +1 -0
  118. package/dist/menu.d.ts +2 -2
  119. package/dist/menu.js +1 -2
  120. package/dist/miller.d.ts +7 -5
  121. package/dist/miller.d.ts.map +1 -1
  122. package/dist/miller.js +23 -25
  123. package/dist/miller.js.map +1 -1
  124. package/dist/narrowed-text.d.ts +1 -2
  125. package/dist/narrowed-text.d.ts.map +1 -1
  126. package/dist/narrowed-text.js +14 -13
  127. package/dist/narrowed-text.js.map +1 -1
  128. package/dist/notification-pill-DyZydXoZ.d.ts +68 -0
  129. package/dist/notification-pill-DyZydXoZ.d.ts.map +1 -0
  130. package/dist/notifier.d.ts +2 -0
  131. package/dist/notifier.js +146 -0
  132. package/dist/notifier.js.map +1 -0
  133. package/dist/panel.d.ts +1 -1
  134. package/dist/panel.d.ts.map +1 -1
  135. package/dist/panel.js +1 -2
  136. package/dist/panel.js.map +1 -1
  137. package/dist/plots.d.ts +1 -1
  138. package/dist/plots.js +1 -1
  139. package/dist/polar-pad.d.ts +1 -2
  140. package/dist/polar-pad.d.ts.map +1 -1
  141. package/dist/polar-pad.js +2 -2
  142. package/dist/polar-pad.js.map +1 -1
  143. package/dist/{radial-input-Dhu5ZGP5.d.ts → radial-input-BhZeyyP-.d.ts} +2 -3
  144. package/dist/radial-input-BhZeyyP-.d.ts.map +1 -0
  145. package/dist/{radial-input-C4f-2Bya.js → radial-input-Dk8Wydp5.js} +26 -16
  146. package/dist/radial-input-Dk8Wydp5.js.map +1 -0
  147. package/dist/radial-input.d.ts +1 -1
  148. package/dist/radial-input.js +1 -1
  149. package/dist/range-input.d.ts +2 -3
  150. package/dist/range-input.d.ts.map +1 -1
  151. package/dist/range-input.js +2 -2
  152. package/dist/range-input.js.map +1 -1
  153. package/dist/range.d.ts +2 -3
  154. package/dist/range.d.ts.map +1 -1
  155. package/dist/range.js +2 -2
  156. package/dist/range.js.map +1 -1
  157. package/dist/scroll-fade-CAs1EabA.js +70 -0
  158. package/dist/scroll-fade-CAs1EabA.js.map +1 -0
  159. package/dist/select-horiz.d.ts +50 -0
  160. package/dist/select-horiz.d.ts.map +1 -0
  161. package/dist/select-horiz.js +263 -0
  162. package/dist/select-horiz.js.map +1 -0
  163. package/dist/{slider-input-SW7e2Ac2.js → slider-input-CT4gcF-o.js} +30 -27
  164. package/dist/{slider-input-SW7e2Ac2.js.map → slider-input-CT4gcF-o.js.map} +1 -1
  165. package/dist/{slider-input-BEaztT-g.d.ts → slider-input-TidGhvXt.d.ts} +2 -3
  166. package/dist/slider-input-TidGhvXt.d.ts.map +1 -0
  167. package/dist/slider-input.d.ts +1 -1
  168. package/dist/slider-input.js +1 -1
  169. package/dist/snackbar.d.ts +58 -0
  170. package/dist/snackbar.d.ts.map +1 -0
  171. package/dist/snackbar.js +265 -0
  172. package/dist/snackbar.js.map +1 -0
  173. package/dist/snap-container.d.ts +1 -2
  174. package/dist/snap-container.d.ts.map +1 -1
  175. package/dist/snap-container.js +6 -5
  176. package/dist/snap-container.js.map +1 -1
  177. package/dist/split-layout.d.ts +1 -2
  178. package/dist/split-layout.d.ts.map +1 -1
  179. package/dist/split-layout.js +5 -3
  180. package/dist/split-layout.js.map +1 -1
  181. package/dist/swipe.d.ts +1 -2
  182. package/dist/swipe.d.ts.map +1 -1
  183. package/dist/swipe.js +4 -3
  184. package/dist/swipe.js.map +1 -1
  185. package/dist/{tab-list-B8v9KntS.d.ts → tab-list-Beuh2nom.d.ts} +4 -4
  186. package/dist/tab-list-Beuh2nom.d.ts.map +1 -0
  187. package/dist/tabs.d.ts +1 -1
  188. package/dist/tabs.js +533 -1
  189. package/dist/tabs.js.map +1 -0
  190. package/dist/{tickled-controller-JDOR9B8V.d.ts → tickled-controller-BtevrRLV.d.ts} +1 -2
  191. package/dist/tickled-controller-BtevrRLV.d.ts.map +1 -0
  192. package/dist/{tickled-styles-Bgo_Lpw-.js → tickled-controller-DkAU-0qL.js} +2 -88
  193. package/dist/tickled-controller-DkAU-0qL.js.map +1 -0
  194. package/dist/tickled-styles-BrAHEj1q.js +89 -0
  195. package/dist/tickled-styles-BrAHEj1q.js.map +1 -0
  196. package/dist/{timeline-CdSI003L.js → timeline-B2fgDL4U.js} +3 -3
  197. package/dist/{timeline-CdSI003L.js.map → timeline-B2fgDL4U.js.map} +1 -1
  198. package/dist/timeline.d.ts +1 -1
  199. package/dist/timeline.js +1 -1
  200. package/dist/{tooltip-BMTSUPBU.d.ts → tooltip-BlvBUQxx.d.ts} +2 -3
  201. package/dist/tooltip-BlvBUQxx.d.ts.map +1 -0
  202. package/dist/transitory-label.d.ts +30 -0
  203. package/dist/transitory-label.d.ts.map +1 -0
  204. package/dist/transitory-label.js +249 -0
  205. package/dist/transitory-label.js.map +1 -0
  206. package/dist/{tree-CqPhQRHo.js → tree-BO6BXI2b.js} +9 -10
  207. package/dist/{tree-CqPhQRHo.js.map → tree-BO6BXI2b.js.map} +1 -1
  208. package/dist/{tree-component-CDLO1ITF.d.ts → tree-component-BvV4muxx.d.ts} +8 -124
  209. package/dist/tree-component-BvV4muxx.d.ts.map +1 -0
  210. package/dist/tree.d.ts +9 -4
  211. package/dist/tree.d.ts.map +1 -1
  212. package/dist/tree.js +1 -1
  213. package/dist/types-Bc23SI94.d.ts +72 -0
  214. package/dist/types-Bc23SI94.d.ts.map +1 -0
  215. package/dist/types-DlVNJez_.d.ts +41 -0
  216. package/dist/types-DlVNJez_.d.ts.map +1 -0
  217. package/dist/vertical-list.d.ts +122 -0
  218. package/dist/vertical-list.d.ts.map +1 -0
  219. package/dist/vertical-list.js +737 -0
  220. package/dist/vertical-list.js.map +1 -0
  221. package/dist/{wheel-nudge-Dhzi5nHc.js → wheel-nudge-BlSCe_hD.js} +2 -2
  222. package/dist/{wheel-nudge-Dhzi5nHc.js.map → wheel-nudge-BlSCe_hD.js.map} +1 -1
  223. package/dist/{wheel-nudge-C-ra_1os.d.ts → wheel-nudge-DgMTRYlh.d.ts} +1 -2
  224. package/dist/wheel-nudge-DgMTRYlh.d.ts.map +1 -0
  225. package/dist/{xy-axis-CtDDQzGZ.d.ts → xy-axis-5KhVTNoX.d.ts} +8 -6
  226. package/dist/xy-axis-5KhVTNoX.d.ts.map +1 -0
  227. package/dist/{xy-axis-BpA2eJq6.js → xy-axis-B6yMjckW.js} +8 -112
  228. package/dist/xy-axis-B6yMjckW.js.map +1 -0
  229. package/dist/xy-pad.d.ts +1 -2
  230. package/dist/xy-pad.d.ts.map +1 -1
  231. package/dist/xy-pad.js +2 -2
  232. package/dist/xy-pad.js.map +1 -1
  233. package/docs-user/README.md +4 -2
  234. package/docs-user/data-grid.md +248 -0
  235. package/docs-user/index.json +222 -0
  236. package/docs-user/llms.txt +58 -0
  237. package/docs-user/rating.md +102 -0
  238. package/docs-user/toolbar.md +135 -0
  239. package/llms.txt +58 -0
  240. package/package.json +21 -11
  241. package/dist/crumb-navigation-Pif-kupA.js +0 -1221
  242. package/dist/crumb-navigation-Pif-kupA.js.map +0 -1
  243. package/dist/defaults-BkWCPJFL.js.map +0 -1
  244. package/dist/hex-editor-CMIxtNgT.d.ts.map +0 -1
  245. package/dist/icon-Bd5BiU4b.d.ts.map +0 -1
  246. package/dist/icon-CK14NUcE.js.map +0 -1
  247. package/dist/icons.js.map +0 -1
  248. package/dist/incr-search-CeERfijK.js.map +0 -1
  249. package/dist/index-BslNaMLo.d.ts.map +0 -1
  250. package/dist/index-Cdmrn0SZ.d.ts.map +0 -1
  251. package/dist/index-CkMIKEWp.d.ts.map +0 -1
  252. package/dist/index-D87kRcEs.d.ts.map +0 -1
  253. package/dist/index-DrKRD8_a.d.ts.map +0 -1
  254. package/dist/index-tX6fKF8m.d.ts.map +0 -1
  255. package/dist/interaction-_Y2qO3QI.js +0 -1
  256. package/dist/labelled-input-base-ORb1rGq6.d.ts.map +0 -1
  257. package/dist/menu-BiFarLUA.js +0 -826
  258. package/dist/menu-BiFarLUA.js.map +0 -1
  259. package/dist/menu-item-AtoP6bD4.d.ts.map +0 -1
  260. package/dist/menu-item-yHSPV8nS.js +0 -783
  261. package/dist/menu-item-yHSPV8nS.js.map +0 -1
  262. package/dist/radial-input-C4f-2Bya.js.map +0 -1
  263. package/dist/radial-input-Dhu5ZGP5.d.ts.map +0 -1
  264. package/dist/registry-CkW7q09Q.js +0 -21
  265. package/dist/registry-CkW7q09Q.js.map +0 -1
  266. package/dist/selecthorizontal.d.ts +0 -16
  267. package/dist/selecthorizontal.d.ts.map +0 -1
  268. package/dist/selecthorizontal.js +0 -43
  269. package/dist/selecthorizontal.js.map +0 -1
  270. package/dist/slider-input-BEaztT-g.d.ts.map +0 -1
  271. package/dist/tab-list-B8v9KntS.d.ts.map +0 -1
  272. package/dist/tab-list-CR0v53KJ.js +0 -615
  273. package/dist/tab-list-CR0v53KJ.js.map +0 -1
  274. package/dist/tickled-controller-JDOR9B8V.d.ts.map +0 -1
  275. package/dist/tickled-styles-Bgo_Lpw-.js.map +0 -1
  276. package/dist/tooltip-BMTSUPBU.d.ts.map +0 -1
  277. package/dist/tree-component-CDLO1ITF.d.ts.map +0 -1
  278. package/dist/types-DSfbtHs3.d.ts +0 -8
  279. package/dist/types-DSfbtHs3.d.ts.map +0 -1
  280. package/dist/wheel-nudge-C-ra_1os.d.ts.map +0 -1
  281. package/dist/xy-axis-BpA2eJq6.js.map +0 -1
  282. package/dist/xy-axis-CtDDQzGZ.d.ts.map +0 -1
  283. package/docs-user/selecthorizontal.md +0 -32
  284. /package/bundle/{chunk-D7D4PA-g.js → rolldown-runtime-D7D4PA-g.js} +0 -0
  285. /package/dist/{chunk-D7D4PA-g.js → rolldown-runtime-D7D4PA-g.js} +0 -0
@@ -0,0 +1,137 @@
1
+ import { n as buildHighlightTargets, r as clearHighlights, t as applyHighlights } from "./highlight-B-eQrhhb.js";
2
+ import { n as createIncrSearch, r as createFuzzySearch } from "./element-search-Y8SRfPGM.js";
3
+ //#region src/incr-search/ac-adapter.ts
4
+ /**
5
+ * Creates an ixfx-ac-text-compatible `completionProvider` function from a
6
+ * static item list. Uses synchronous fuzzy search wrapped in a Promise so it
7
+ * fits the async provider signature.
8
+ *
9
+ * Each returned item has `positions` populated with matched character indices,
10
+ * which `ixfx-ac-text` uses to render CSS Custom Highlights on the label.
11
+ *
12
+ * Empty query returns all items in original order (no positions).
13
+ * A cancelled signal causes the returned promise to reject with an AbortError.
14
+ */
15
+ function createAcCompletionProvider(items, options = {}) {
16
+ const selector = options.selector ?? ((item) => item.label);
17
+ const fuzzy = createFuzzySearch(items, { selector });
18
+ return (query, signal) => new Promise((resolve, reject) => {
19
+ if (signal.aborted) {
20
+ reject(new DOMException(`Aborted`, `AbortError`));
21
+ return;
22
+ }
23
+ const results = fuzzy.find(query).map((r) => ({
24
+ ...r.item,
25
+ positions: r.positions
26
+ }));
27
+ if (signal.aborted) {
28
+ reject(new DOMException(`Aborted`, `AbortError`));
29
+ return;
30
+ }
31
+ resolve(results);
32
+ });
33
+ }
34
+ //#endregion
35
+ //#region src/incr-search/controller-tree.ts
36
+ const DEFAULT_HIGHLIGHT_KEY = `incr-search-highlight`;
37
+ /**
38
+ * Incremental-search controller for any component implementing `TreeSearchHost`
39
+ * (i.e. `ixfx-tree-list`, `ixfx-miller-list`, `ixfx-crumb-navigation`).
40
+ *
41
+ * Replaces the previous separate `IncrSearchTreeController` / `IncrSearchMillerController`
42
+ * classes — the unified `TreeFilterPredicate` (with depth) means one implementation works
43
+ * for all tree-like components.
44
+ *
45
+ * @example Using with ixfx-tree-list:
46
+ * ```typescript
47
+ * const ctrl = new IncrSearchTreeController(myTreeList, {
48
+ * selector: item => item.node.item.label,
49
+ * });
50
+ * ctrl.connect();
51
+ * ```
52
+ *
53
+ * @example Using with ixfx-miller-list (different label selector):
54
+ * ```typescript
55
+ * const ctrl = new IncrSearchTreeController(myMillerList, {
56
+ * selector: item => item.node.item.label,
57
+ * labelSelector: '.label',
58
+ * });
59
+ * ctrl.connect();
60
+ * ```
61
+ */
62
+ var IncrSearchTreeController = class {
63
+ #el;
64
+ #opts;
65
+ #search;
66
+ #unsub;
67
+ #labelMap = /* @__PURE__ */ new Map();
68
+ constructor(el, opts) {
69
+ this.#el = el;
70
+ this.#opts = opts;
71
+ this.#search = createIncrSearch({
72
+ selector: opts.selector,
73
+ fzf: opts.fzf
74
+ });
75
+ }
76
+ connect() {
77
+ this.disconnect();
78
+ const items = this.#el.getNodes();
79
+ for (const item of items) this.#labelMap.set(this.#opts.selector(item), item);
80
+ this.#search.setItems(items);
81
+ if (this.#opts.input) {
82
+ this.#opts.input.addEventListener(`input`, this.#onInput);
83
+ this.#opts.input.addEventListener(`keydown`, this.#onKeydown);
84
+ }
85
+ this.#unsub = this.#search.onChange((state) => this.#onStateChange(state));
86
+ }
87
+ disconnect() {
88
+ if (this.#unsub) {
89
+ this.#unsub();
90
+ this.#unsub = void 0;
91
+ }
92
+ if (this.#opts.input) {
93
+ this.#opts.input.removeEventListener(`input`, this.#onInput);
94
+ this.#opts.input.removeEventListener(`keydown`, this.#onKeydown);
95
+ }
96
+ this.#el.filterPredicate = void 0;
97
+ clearHighlights({ key: this.#opts.highlightKey ?? DEFAULT_HIGHLIGHT_KEY });
98
+ this.#labelMap.clear();
99
+ }
100
+ async setQuery(query) {
101
+ await this.#search.setQuery(query);
102
+ }
103
+ async clearQuery() {
104
+ await this.#search.clearQuery();
105
+ }
106
+ #onInput = () => {
107
+ const value = this.#opts.input?.value ?? ``;
108
+ this.setQuery(value);
109
+ };
110
+ #onKeydown = (e) => {
111
+ if (e.key === `Escape` && this.#opts.input) {
112
+ this.#opts.input.value = ``;
113
+ this.clearQuery();
114
+ }
115
+ };
116
+ #onStateChange(state) {
117
+ const matched = new Set(state.results.map((r) => r.item.node.item.key));
118
+ const hasQuery = state.query.trim().length > 0;
119
+ this.#el.filterPredicate = hasQuery && matched.size > 0 ? (node, _depth) => matched.has(node.item.key) : void 0;
120
+ const key = this.#opts.highlightKey ?? DEFAULT_HIGHLIGHT_KEY;
121
+ if (!this.#el.shadowRoot) return;
122
+ if (!state.query.trim()) {
123
+ clearHighlights({ key });
124
+ return;
125
+ }
126
+ const labelSelector = this.#opts.labelSelector ?? `.tree-label`;
127
+ const targets = buildHighlightTargets(this.#el.shadowRoot, labelSelector, state.positionsByItem, (labelEl) => {
128
+ const text = labelEl.textContent ?? ``;
129
+ return this.#labelMap.get(text);
130
+ }, (labelEl) => labelEl.textContent ?? ``);
131
+ applyHighlights(targets, { key });
132
+ }
133
+ };
134
+ //#endregion
135
+ export { createAcCompletionProvider as n, IncrSearchTreeController as t };
136
+
137
+ //# sourceMappingURL=incr-search-vCzuao-2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"incr-search-vCzuao-2.js","names":["#el","#opts","#search","#labelMap","#onInput","#onKeydown","#unsub","#onStateChange"],"sources":["../src/incr-search/ac-adapter.ts","../src/incr-search/controller-tree.ts"],"sourcesContent":["import type { FuzzySearchOptions } from './types.js';\nimport { createFuzzySearch } from './fuzzy.js';\n\n/**\n * Creates an ixfx-ac-text-compatible `completionProvider` function from a\n * static item list. Uses synchronous fuzzy search wrapped in a Promise so it\n * fits the async provider signature.\n *\n * Each returned item has `positions` populated with matched character indices,\n * which `ixfx-ac-text` uses to render CSS Custom Highlights on the label.\n *\n * Empty query returns all items in original order (no positions).\n * A cancelled signal causes the returned promise to reject with an AbortError.\n */\nexport function createAcCompletionProvider<T extends { label: string }>(\n items: readonly T[],\n options: Pick<FuzzySearchOptions<T>, `selector`> = {},\n): (query: string, signal: AbortSignal) => Promise<Array<T & { positions: ReadonlySet<number> }>> {\n const selector = options.selector ?? ((item: T) => item.label);\n const fuzzy = createFuzzySearch(items, { selector });\n\n return (\n query: string,\n signal: AbortSignal,\n ): Promise<Array<T & { positions: ReadonlySet<number> }>> =>\n new Promise((resolve, reject) => {\n if (signal.aborted) {\n reject(new DOMException(`Aborted`, `AbortError`));\n return;\n }\n\n const results = fuzzy.find(query).map(r => ({ ...r.item, positions: r.positions }));\n\n if (signal.aborted) {\n reject(new DOMException(`Aborted`, `AbortError`));\n return;\n }\n\n resolve(results);\n });\n}\n","import type { FzfOptions } from 'fzf';\nimport type { TreeSearchHost } from '../common/searchable.js';\nimport type { TreeNode } from '../common/types.js';\nimport type { IncrSearchState } from './types.js';\nimport { applyHighlights, buildHighlightTargets, clearHighlights } from './highlight.js';\nimport { createIncrSearch } from './incr-search.js';\n\nconst DEFAULT_HIGHLIGHT_KEY = `incr-search-highlight`;\n\nexport type IncrSearchTreeOptions = {\n selector: (item: { node: TreeNode; depth: number }) => string;\n /**\n * CSS selector for the label elements inside the shadow root.\n * Defaults to `.tree-label` (suitable for ixfx-tree-list).\n * Use `.label` for ixfx-miller-list.\n */\n labelSelector?: string;\n highlightKey?: string;\n input?: HTMLInputElement;\n fzf?: Partial<FzfOptions<{ node: TreeNode; depth: number }>>;\n};\n\ntype SearchItem = { node: TreeNode; depth: number };\n\n/**\n * Incremental-search controller for any component implementing `TreeSearchHost`\n * (i.e. `ixfx-tree-list`, `ixfx-miller-list`, `ixfx-crumb-navigation`).\n *\n * Replaces the previous separate `IncrSearchTreeController` / `IncrSearchMillerController`\n * classes — the unified `TreeFilterPredicate` (with depth) means one implementation works\n * for all tree-like components.\n *\n * @example Using with ixfx-tree-list:\n * ```typescript\n * const ctrl = new IncrSearchTreeController(myTreeList, {\n * selector: item => item.node.item.label,\n * });\n * ctrl.connect();\n * ```\n *\n * @example Using with ixfx-miller-list (different label selector):\n * ```typescript\n * const ctrl = new IncrSearchTreeController(myMillerList, {\n * selector: item => item.node.item.label,\n * labelSelector: '.label',\n * });\n * ctrl.connect();\n * ```\n */\nexport class IncrSearchTreeController {\n #el: TreeSearchHost;\n #opts: IncrSearchTreeOptions;\n #search: ReturnType<typeof createIncrSearch<SearchItem>>;\n #unsub: (() => void) | undefined;\n #labelMap = new Map<string, SearchItem>();\n\n constructor(el: TreeSearchHost, opts: IncrSearchTreeOptions) {\n this.#el = el;\n this.#opts = opts;\n this.#search = createIncrSearch<SearchItem>({\n selector: opts.selector,\n fzf: opts.fzf,\n });\n }\n\n connect(): void {\n this.disconnect();\n\n const items = this.#el.getNodes();\n for (const item of items) {\n this.#labelMap.set(this.#opts.selector(item), item);\n }\n void this.#search.setItems(items);\n\n if (this.#opts.input) {\n this.#opts.input.addEventListener(`input`, this.#onInput);\n this.#opts.input.addEventListener(`keydown`, this.#onKeydown);\n }\n\n this.#unsub = this.#search.onChange(state => this.#onStateChange(state));\n }\n\n disconnect(): void {\n if (this.#unsub) {\n this.#unsub();\n this.#unsub = undefined;\n }\n if (this.#opts.input) {\n this.#opts.input.removeEventListener(`input`, this.#onInput);\n this.#opts.input.removeEventListener(`keydown`, this.#onKeydown);\n }\n this.#el.filterPredicate = undefined;\n clearHighlights({ key: this.#opts.highlightKey ?? DEFAULT_HIGHLIGHT_KEY });\n this.#labelMap.clear();\n }\n\n async setQuery(query: string): Promise<void> {\n await this.#search.setQuery(query);\n }\n\n async clearQuery(): Promise<void> {\n await this.#search.clearQuery();\n }\n\n #onInput = () => {\n const value = this.#opts.input?.value ?? ``;\n void this.setQuery(value);\n };\n\n #onKeydown = (e: KeyboardEvent) => {\n if (e.key === `Escape` && this.#opts.input) {\n this.#opts.input.value = ``;\n void this.clearQuery();\n }\n };\n\n #onStateChange(state: IncrSearchState<SearchItem>): void {\n const matched = new Set(state.results.map(r => r.item.node.item.key));\n const hasQuery = state.query.trim().length > 0;\n this.#el.filterPredicate = hasQuery && matched.size > 0\n ? (node: TreeNode, _depth: number) => matched.has(node.item.key)\n : undefined;\n\n const key = this.#opts.highlightKey ?? DEFAULT_HIGHLIGHT_KEY;\n if (!this.#el.shadowRoot)\n return;\n\n if (!state.query.trim()) {\n clearHighlights({ key });\n return;\n }\n\n const labelSelector = this.#opts.labelSelector ?? `.tree-label`;\n const targets = buildHighlightTargets(\n this.#el.shadowRoot,\n labelSelector,\n state.positionsByItem,\n (labelEl) => {\n const text = labelEl.textContent ?? ``;\n return this.#labelMap.get(text);\n },\n labelEl => labelEl.textContent ?? ``,\n );\n applyHighlights(targets, { key });\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAcA,SAAgB,2BACd,OACA,UAAmD,CAAC,GAC4C;CAChG,MAAM,WAAW,QAAQ,cAAc,SAAY,KAAK;CACxD,MAAM,QAAQ,kBAAkB,OAAO,EAAE,SAAS,CAAC;CAEnD,QACE,OACA,WAEA,IAAI,SAAS,SAAS,WAAW;EAC/B,IAAI,OAAO,SAAS;GAClB,OAAO,IAAI,aAAa,WAAW,YAAY,CAAC;GAChD;EACF;EAEA,MAAM,UAAU,MAAM,KAAK,KAAK,CAAC,CAAC,KAAI,OAAM;GAAE,GAAG,EAAE;GAAM,WAAW,EAAE;EAAU,EAAE;EAElF,IAAI,OAAO,SAAS;GAClB,OAAO,IAAI,aAAa,WAAW,YAAY,CAAC;GAChD;EACF;EAEA,QAAQ,OAAO;CACjB,CAAC;AACL;;;ACjCA,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;AA0C9B,IAAa,2BAAb,MAAsC;CACpC;CACA;CACA;CACA;CACA,4BAAY,IAAI,IAAwB;CAExC,YAAY,IAAoB,MAA6B;EAC3D,KAAKA,MAAM;EACX,KAAKC,QAAQ;EACb,KAAKC,UAAU,iBAA6B;GAC1C,UAAU,KAAK;GACf,KAAK,KAAK;EACZ,CAAC;CACH;CAEA,UAAgB;EACd,KAAK,WAAW;EAEhB,MAAM,QAAQ,KAAKF,IAAI,SAAS;EAChC,KAAK,MAAM,QAAQ,OACjB,KAAKG,UAAU,IAAI,KAAKF,MAAM,SAAS,IAAI,GAAG,IAAI;EAEpD,KAAUC,QAAQ,SAAS,KAAK;EAEhC,IAAI,KAAKD,MAAM,OAAO;GACpB,KAAKA,MAAM,MAAM,iBAAiB,SAAS,KAAKG,QAAQ;GACxD,KAAKH,MAAM,MAAM,iBAAiB,WAAW,KAAKI,UAAU;EAC9D;EAEA,KAAKC,SAAS,KAAKJ,QAAQ,UAAS,UAAS,KAAKK,eAAe,KAAK,CAAC;CACzE;CAEA,aAAmB;EACjB,IAAI,KAAKD,QAAQ;GACf,KAAKA,OAAO;GACZ,KAAKA,SAAS,KAAA;EAChB;EACA,IAAI,KAAKL,MAAM,OAAO;GACpB,KAAKA,MAAM,MAAM,oBAAoB,SAAS,KAAKG,QAAQ;GAC3D,KAAKH,MAAM,MAAM,oBAAoB,WAAW,KAAKI,UAAU;EACjE;EACA,KAAKL,IAAI,kBAAkB,KAAA;EAC3B,gBAAgB,EAAE,KAAK,KAAKC,MAAM,gBAAgB,sBAAsB,CAAC;EACzE,KAAKE,UAAU,MAAM;CACvB;CAEA,MAAM,SAAS,OAA8B;EAC3C,MAAM,KAAKD,QAAQ,SAAS,KAAK;CACnC;CAEA,MAAM,aAA4B;EAChC,MAAM,KAAKA,QAAQ,WAAW;CAChC;CAEA,iBAAiB;EACf,MAAM,QAAQ,KAAKD,MAAM,OAAO,SAAS;EACzC,KAAU,SAAS,KAAK;CAC1B;CAEA,cAAc,MAAqB;EACjC,IAAI,EAAE,QAAQ,YAAY,KAAKA,MAAM,OAAO;GAC1C,KAAKA,MAAM,MAAM,QAAQ;GACzB,KAAU,WAAW;EACvB;CACF;CAEA,eAAe,OAA0C;EACvD,MAAM,UAAU,IAAI,IAAI,MAAM,QAAQ,KAAI,MAAK,EAAE,KAAK,KAAK,KAAK,GAAG,CAAC;EACpE,MAAM,WAAW,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS;EAC7C,KAAKD,IAAI,kBAAkB,YAAY,QAAQ,OAAO,KACjD,MAAgB,WAAmB,QAAQ,IAAI,KAAK,KAAK,GAAG,IAC7D,KAAA;EAEJ,MAAM,MAAM,KAAKC,MAAM,gBAAgB;EACvC,IAAI,CAAC,KAAKD,IAAI,YACZ;EAEF,IAAI,CAAC,MAAM,MAAM,KAAK,GAAG;GACvB,gBAAgB,EAAE,IAAI,CAAC;GACvB;EACF;EAEA,MAAM,gBAAgB,KAAKC,MAAM,iBAAiB;EAClD,MAAM,UAAU,sBACd,KAAKD,IAAI,YACT,eACA,MAAM,kBACL,YAAY;GACX,MAAM,OAAO,QAAQ,eAAe;GACpC,OAAO,KAAKG,UAAU,IAAI,IAAI;EAChC,IACA,YAAW,QAAQ,eAAe,EACpC;EACA,gBAAgB,SAAS,EAAE,IAAI,CAAC;CAClC;AACF"}
@@ -1,2 +1,2 @@
1
- import { _ as IncrSearchChangeCallback, a as createFuzzySearch, b as IncrSearchState, c as IncrSearchTreeController, d as ElementIncrSearchOptions, f as FuzzySearch, g as IncrSearch, h as HighlightTarget, i as clearHighlights, l as IncrSearchTreeOptions, m as HighlightOptions, n as applyHighlights, o as ElementIncrSearch, p as FuzzySearchOptions, r as buildHighlightTargets, s as createElementIncrSearch, t as createIncrSearch, u as createAcCompletionProvider, v as IncrSearchOptions, y as IncrSearchResult } from "./index-BslNaMLo.js";
1
+ import { _ as IncrSearchChangeCallback, a as createFuzzySearch, b as IncrSearchState, c as IncrSearchTreeController, d as ElementIncrSearchOptions, f as FuzzySearch, g as IncrSearch, h as HighlightTarget, i as clearHighlights, l as IncrSearchTreeOptions, m as HighlightOptions, n as applyHighlights, o as ElementIncrSearch, p as FuzzySearchOptions, r as buildHighlightTargets, s as createElementIncrSearch, t as createIncrSearch, u as createAcCompletionProvider, v as IncrSearchOptions, y as IncrSearchResult } from "./index-Cu5i8zZY.js";
2
2
  export { type ElementIncrSearch, type ElementIncrSearchOptions, type FuzzySearch, type FuzzySearchOptions, type HighlightOptions, type HighlightTarget, type IncrSearch, type IncrSearchChangeCallback, IncrSearchTreeController as IncrSearchMillerController, IncrSearchTreeController, type IncrSearchTreeOptions as IncrSearchMillerOptions, type IncrSearchTreeOptions, type IncrSearchOptions, type IncrSearchResult, type IncrSearchState, applyHighlights, buildHighlightTargets, clearHighlights, createAcCompletionProvider, createElementIncrSearch, createFuzzySearch, createIncrSearch };
@@ -1,3 +1,4 @@
1
1
  import { n as buildHighlightTargets, r as clearHighlights, t as applyHighlights } from "./highlight-B-eQrhhb.js";
2
- import { a as createFuzzySearch, i as createAcCompletionProvider, n as IncrSearchTreeController, r as createIncrSearch, t as createElementIncrSearch } from "./incr-search-CeERfijK.js";
2
+ import { n as createIncrSearch, r as createFuzzySearch, t as createElementIncrSearch } from "./element-search-Y8SRfPGM.js";
3
+ import { n as createAcCompletionProvider, t as IncrSearchTreeController } from "./incr-search-vCzuao-2.js";
3
4
  export { IncrSearchTreeController as IncrSearchMillerController, IncrSearchTreeController, applyHighlights, buildHighlightTargets, clearHighlights, createAcCompletionProvider, createElementIncrSearch, createFuzzySearch, createIncrSearch };
@@ -1,6 +1,6 @@
1
+ import "./index-BUB5SICW.js";
1
2
  import { CSSResultGroup, LitElement, PropertyValues } from "lit";
2
3
  import { Colour } from "@ixfx/visual";
3
-
4
4
  //#region src/colour-picker/types.d.ts
5
5
  /**
6
6
  * OKLCH colour value representation
@@ -31,7 +31,7 @@ declare global {
31
31
  interface HTMLElementTagNameMap {
32
32
  'ixfx-colour-picker': ColourPicker;
33
33
  }
34
- } //# sourceMappingURL=types.d.ts.map
34
+ }
35
35
  //#endregion
36
36
  //#region src/colour-picker/colour-picker.d.ts
37
37
  declare class ColourPicker extends LitElement {
@@ -106,7 +106,7 @@ declare global {
106
106
  interface HTMLElementTagNameMap {
107
107
  'ixfx-colour-picker': ColourPicker;
108
108
  }
109
- } //# sourceMappingURL=colour-picker.d.ts.map
109
+ }
110
110
  //#endregion
111
111
  //#region src/colour-picker/colour-picker-popup.d.ts
112
112
  declare const PICKER_SIZES: {
@@ -184,4 +184,4 @@ declare global {
184
184
  }
185
185
  //#endregion
186
186
  export { ColourPickerInputEvent as a, ColourPickerEventDetail as i, ColourPicker as n, OklchValue as o, ColourPickerChangeEvent as r, ColourPickerPopup as t };
187
- //# sourceMappingURL=index-DrKRD8_a.d.ts.map
187
+ //# sourceMappingURL=index-BOUaDIW-.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-BOUaDIW-.d.ts","names":[],"sources":["../src/colour-picker/types.ts","../src/colour-picker/colour-picker.ts","../src/colour-picker/colour-picker-popup.ts"],"mappings":";;;;;;;KAGY;WACD;WACA;WACA;WACA;WACA;WACA;;;;;KAMC,0BAA0B;;;;KAK1B,yBAAyB,YAAY;KACrC,0BAA0B,YAAY;KAiBtC;KACA;;;;QAKJ;YACI;IACR,sBAAmD;;;;;cCZ1C,qBAAqB;EACJ;EACA;EACA;EACA;EAE2C;EACN;EACA;EACA;EACf;EACmB;EACM;EACH;UAGhE;EAE0C;EACA;EACA;EACA;UAE1C;EAOY,UAAW;EACX,UAAW;EACX,UAAW;EACX,UAAW;EACZ,YAAa;UAIxB;UACA;UACA;UACA;mBAKS;MAEb;MAIA,MAAM;;;;;;EAcV,UAAU,QAAQ,OAAO;MASrB,UAAU;MAIV,OAAO,OAAO;MAId,UAAU;MAIV,OAAO,OAAO;MAId,UAAU;MAIV,OAAO,OAAO;MAId,UAAU;MAIV,OAAO,OAAO;EAIlB,UAAU,OAAO;EAIjB,UAAU,OAAO;EAIjB,UAAU,OAAO;EAIjB,UAAU,OAAO;EAIR,WAAW,mBAAmB;UAY/B;UAOA;UASA;UAUA;UA0BA;UAIA;UAYA;UAWA;EAKC,wBAAM;EAoCN,aAAa,mBAAmB;EAKhC,QAAQ,mBAAmB;EAqBpC;EA4FA,WAAY,GAAG,OAAO;EAQtB,YAAa,GAAG,OAAO;EAevB;EAKA;SAKO,QAAQ;;QAoIT;YACI;IACR,sBAAsB;;;;;cCthBpB;;;;;;;;;;;;;;;;;;KAOD,0BAA0B;cAgBlB,0BAA0B;EACT;EAEA;EACA;EACA;EACA;EAE4B;EACS;EACA;EACA;EACf;EACI;EAC1B,MAAM;UAEjB;UACA;EAEA,UAAW;EACC,WAAY;mBAExB;mBACA;mBACA;UAGT;UACA;UACA;UACA;UAGA;UACA;UACA;UACA;UAGA;;MAUJ;MAIA,MAAM,QAAQ,OAAO;cAIb;cAQA;EAIZ,UAAU,QAAQ,OAAO;EAQhB,aAAa,mBAAmB;EAMhC,QAAQ,mBAAmB;UAS5B;UAUA;UAOA;UAoBA;UAmBA;UAmBA;UAcA;UAYA;UAKA;EAKC,wBAAM;SAiDR,QAAQ;;QAmGT;YACI;IACR,4BAA4B"}
@@ -1,6 +1,5 @@
1
- import { t as LabelledInputBase } from "./labelled-input-base-ORb1rGq6.js";
1
+ import { t as LabelledInputBase } from "./labelled-input-base-Dp_9KP0G.js";
2
2
  import { CSSResultGroup } from "lit";
3
-
4
3
  //#region src/labelled-range-input/labelled-range-input.d.ts
5
4
  declare class LabelledRangeInput extends LabelledInputBase {
6
5
  readonly inputSelector = "ixfx-range-input";
@@ -19,7 +18,7 @@ declare global {
19
18
  interface HTMLElementTagNameMap {
20
19
  'ixfx-labelled-range-input': LabelledRangeInput;
21
20
  }
22
- } //# sourceMappingURL=labelled-range-input.d.ts.map
21
+ }
23
22
  //#endregion
24
23
  export { LabelledRangeInput as t };
25
- //# sourceMappingURL=index-CkMIKEWp.d.ts.map
24
+ //# sourceMappingURL=index-BUB5SICW.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-BUB5SICW.d.ts","names":[],"sources":["../src/labelled-range-input/labelled-range-input.ts"],"mappings":";;;cAuEa,2BAA2B;WAC7B;EAEmB;EACC;EACyB;EACQ;;EAEjC;EAE2B;YAErC,uCAAqB;EA2B/B,wBAAM;SA2BR,QAAQ;;QA2ET;YACI;IACR,6BAA6B"}
@@ -1,4 +1,5 @@
1
1
  import { LitElement, PropertyValues } from "lit";
2
+ import "@clinth/vcanvas";
2
3
  //#region src/timeline/types.d.ts
3
4
  type TimelineTrack = {
4
5
  readonly key: string;
@@ -233,7 +234,7 @@ declare global {
233
234
  interface HTMLElementTagNameMap {
234
235
  'ixfx-timeline-track-tab': TimelineTrackTabElement;
235
236
  }
236
- } //# sourceMappingURL=timeline-track-tabs.d.ts.map
237
+ }
237
238
  //#endregion
238
239
  //#region src/timeline/timeline-element.d.ts
239
240
  type VCanvasElement$1 = HTMLElement & {
@@ -381,7 +382,6 @@ type VCanvasElement = HTMLElement & {
381
382
  invalidateAll: () => void;
382
383
  invalidateRegion: (x: number, y: number, w: number, h: number) => void;
383
384
  };
384
- /** Total pointer movement (px) before an axis drag activates */
385
385
  /**
386
386
  * Attaches pointer and keyboard interaction handlers to the timeline.
387
387
  * Returns a cleanup function.
@@ -392,4 +392,4 @@ declare function attachTimelineInteractions(host: IxfxTimelineElement, vcanvasEl
392
392
  declare const timelineStyles: import("lit").CSSResult;
393
393
  //#endregion
394
394
  export { TimelineTrackReorderEvent as A, TimelineEventResizeEvent as C, TimelineTickleChangeEvent as D, TimelineTickleChangeDetail as E, TrackHeightMode as F, TrackLayout as I, UserScale as L, TimelineTrackResizeEvent as M, TimelineTrackSelectDetail as N, TimelineTrack as O, TimelineTrackSelectEvent as P, ViewRange as R, TimelineEventResizeDetail as S, TimelineSelectionChangeEvent as T, TimelineDraggingEvent as _, CssVars as a, TimelineEventMoveDetail as b, resolveGrid as c, DragSnappingFn as d, DragTarget as f, TimelineDraggingDetail as g, TimelineDraggingCallbackDetail as h, TimelineTrackTabElement as i, TimelineTrackResizeDetail as j, TimelineTrackReorderDetail as k, TimelineController as l, GridResolution as m, attachTimelineInteractions as n, Rect as o, GridMode as p, IxfxTimelineElement as r, resolveCssVars as s, timelineStyles as t, TimelineControllerConfig as u, TimelineElementEventMap as v, TimelineSelectionChangeDetail as w, TimelineEventMoveEvent as x, TimelineEvent as y };
395
- //# sourceMappingURL=index-tX6fKF8m.d.ts.map
395
+ //# sourceMappingURL=index-BeuCXtiO.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-BeuCXtiO.d.ts","names":[],"sources":["../src/timeline/types.ts","../src/timeline/timeline-controller.ts","../src/timeline/timeline-draw.ts","../src/timeline/timeline-track-tabs.ts","../src/timeline/timeline-element.ts","../src/timeline/timeline-interactions.ts","../src/timeline/timeline-styles.ts"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { C as TreeNode, d as TreeSearchHost } from "./tree-component-CDLO1ITF.js";
1
+ import { o as TreeNode } from "./types-Bc23SI94.js";
2
+ import { d as TreeSearchHost } from "./tree-component-BvV4muxx.js";
2
3
  import { FzfOptions } from "fzf";
3
-
4
4
  //#region src/incr-search/types.d.ts
5
5
  type IncrSearchResult<T> = {
6
6
  readonly item: T;
@@ -157,4 +157,4 @@ declare function buildHighlightTargets<T>(root: ShadowRoot | Element, itemSelect
157
157
  declare function createIncrSearch<T>(options?: IncrSearchOptions<T>): IncrSearch<T>;
158
158
  //#endregion
159
159
  export { IncrSearchChangeCallback as _, createFuzzySearch as a, IncrSearchState as b, IncrSearchTreeController as c, ElementIncrSearchOptions as d, FuzzySearch as f, IncrSearch as g, HighlightTarget as h, clearHighlights as i, IncrSearchTreeOptions as l, HighlightOptions as m, applyHighlights as n, ElementIncrSearch as o, FuzzySearchOptions as p, buildHighlightTargets as r, createElementIncrSearch as s, createIncrSearch as t, createAcCompletionProvider as u, IncrSearchOptions as v, IncrSearchResult as y };
160
- //# sourceMappingURL=index-BslNaMLo.d.ts.map
160
+ //# sourceMappingURL=index-Cu5i8zZY.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-Cu5i8zZY.d.ts","names":[],"sources":["../src/incr-search/types.ts","../src/incr-search/ac-adapter.ts","../src/incr-search/controller-tree.ts","../src/incr-search/element-search.ts","../src/incr-search/fuzzy.ts","../src/incr-search/highlight.ts","../src/incr-search/incr-search.ts"],"mappings":";;;;KAGY,iBAAiB;WAClB,MAAM;WACN,WAAW;WACX;;KAIC,gBAAgB;WACjB;WACA,SAAS,cAAc,iBAAiB;WAExC,iBAAiB,YAAY,GAAG;;KAG/B,yBAAyB,MAAM,OAAO,gBAAgB;KAEtD,kBAAkB;WACnB,iBAAiB;WACjB,YAAY,MAAM;WAClB,MAAM,QAAQ,WAAW;WACzB,WAAW,yBAAyB;;KAInC,WAAW;WACZ,WAAW,gBAAgB,KAAK,SAAS,gBAAgB;WACzD,WAAW,eAAe,SAAS,gBAAgB,QAAQ,gBAAgB;WAC3E,kBAAkB;WAClB,OAAO,gBAAgB;WACvB,WAAW,IAAI,yBAAyB;WACxC;;KAGC,mBAAmB;WACpB,YAAY,MAAM;WAClB,MAAM,QAAQ,WAAW;;KAGxB,YAAY;WACb,OAAO,kBAAkB,cAAc,iBAAiB;WACxD,gBAAgB;;KAIf;WACD,SAAS;WACT;WACA,WAAW;;KAGV;WACD;;KAGC;WACD,WAAW;WACX;WACA,YAAY,IAAI;WAChB,UAAU,IAAI;WACd;WACA;WACA,MAAM,QAAQ;IAAa;IAAa;;WACxC,WAAW;IAA2B;IAAa;;;;;;;;;;;;;;;;iBCnD9C,2BAA2B;EAAY;GACrD,gBAAgB,KAChB,UAAS,KAAK,mBAAmB,mBAC/B,eAAe,QAAQ,gBAAgB,QAAQ,MAAM;EAAM,WAAW;;;;KCR9D;EACV,WAAW;IAAQ,MAAM;IAAU;;;;;;;EAMnC;EACA;EACA,QAAQ;EACR,MAAM,QAAQ;IAAa,MAAM;IAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;cA8BhC;;EAOC,YAAA,IAAI,gBAAgB,MAAM;EAStC;EAiBA;EAcM,SAAS,gBAAgB;EAIzB,cAAc;;;;KC5FjB;WAAyB;WAAsB;;KAWxC;WACD,WAAW,eAAe,SAAS,gBAAgB;WACnD,kBAAkB;WAClB;WACA,WAAW,IAAI,yBAAyB;WACxC;;iBAGK,wBAAwB,MAAM,2BAA2B;;;iBCXzD,kBAAkB,GAChC,gBAAgB,KAChB,UAAS,mBAAmB,KAC3B,YAAY;;;iBCfC,gBACd,kBAAkB,mBAClB,UAAS;iBA+BK,gBAAgB,UAAS;iBAMzB,sBAAsB,GACpC,MAAM,aAAa,SACnB,sBACA,iBAAiB,YAAY,GAAG,sBAChC,UAAU,IAAI,YAAY,eAC1B,UAAU,IAAI,qBACb;;;iBC7Ba,iBAAiB,GAAG,UAAS,kBAAkB,KAAU,WAAW"}
@@ -1,3 +1,4 @@
1
+ import "./icon-BUwP1CZ1.js";
1
2
  //#region src/icons/defaults.d.ts
2
3
  /**
3
4
  * Chevron pointing down. Used for split-button dropdown toggle.
@@ -33,4 +34,4 @@ declare function hasIcon(name: string): boolean;
33
34
  declare function svgToDataUri(svg: string): string;
34
35
  //#endregion
35
36
  export { iconBus as a, ICON_CARET_RIGHT as c, ICON_CLOSE as d, hasIcon as i, ICON_CHECK as l, IconChangedEvent as n, registerIcon as o, getIcon as r, svgToDataUri as s, IconChangedDetail as t, ICON_CHEVRON_DOWN as u };
36
- //# sourceMappingURL=index-D87kRcEs.d.ts.map
37
+ //# sourceMappingURL=index-RqMh1i-O.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-RqMh1i-O.d.ts","names":[],"sources":["../src/icons/defaults.ts","../src/icons/registry.ts"],"mappings":";;;;;;cAMa;;;;;cAMA;;;;;cAMA;;;;;cAMA;;;cCtBA,SAAO;KAER;WAA+B;;KAC/B,mBAAmB,YAAY;iBAE3B,aAAa,cAAc;iBAK3B,QAAQ;iBAIR,QAAQ;;iBAKR,aAAa"}
@@ -1,8 +1,8 @@
1
- import { C as TreeNode } from "./tree-component-CDLO1ITF.js";
2
- import { i as MenuContainer, n as MenuTrigger, r as MenuTriggerCommandDetail, t as MenuItem } from "./menu-item-AtoP6bD4.js";
1
+ import "./icon-BUwP1CZ1.js";
2
+ import { o as TreeNode } from "./types-Bc23SI94.js";
3
+ import { i as MenuContainer, n as MenuTrigger, r as MenuTriggerCommandDetail, t as MenuItem } from "./menu-item-BG5w7fi4.js";
3
4
  import { LitElement, TemplateResult } from "lit";
4
5
  import { CommandRegistry, KeyboardManager } from "@clinth/ui-commands";
5
-
6
6
  //#region src/menu/menu-bar.d.ts
7
7
  declare class MenuBar extends LitElement {
8
8
  private _openTrigger;
@@ -23,7 +23,7 @@ declare global {
23
23
  interface HTMLElementTagNameMap {
24
24
  'ixfx-menu-bar': MenuBar;
25
25
  }
26
- } //# sourceMappingURL=menu-bar.d.ts.map
26
+ }
27
27
  //#endregion
28
28
  //#region src/menu/menu-check-item.d.ts
29
29
  declare class MenuCheckItem extends LitElement {
@@ -48,7 +48,7 @@ declare global {
48
48
  interface HTMLElementTagNameMap {
49
49
  'ixfx-menu-check-item': MenuCheckItem;
50
50
  }
51
- } //# sourceMappingURL=menu-check-item.d.ts.map
51
+ }
52
52
  //#endregion
53
53
  //#region src/menu/menu-command-controller.d.ts
54
54
  declare class MenuCommandController {
@@ -106,7 +106,7 @@ declare global {
106
106
  interface HTMLElementTagNameMap {
107
107
  'ixfx-menu-sub-trigger': MenuSubTrigger;
108
108
  }
109
- } //# sourceMappingURL=menu-sub-trigger.d.ts.map
109
+ }
110
110
  //#endregion
111
111
  //#region src/menu/menu-separator.d.ts
112
112
  declare class MenuSeparator extends LitElement {
@@ -117,7 +117,7 @@ declare global {
117
117
  interface HTMLElementTagNameMap {
118
118
  'ixfx-menu-separator': MenuSeparator;
119
119
  }
120
- } //# sourceMappingURL=menu-separator.d.ts.map
120
+ }
121
121
  //#endregion
122
122
  //#region src/menu/menu-header.d.ts
123
123
  declare class MenuHeader extends LitElement {
@@ -129,7 +129,7 @@ declare global {
129
129
  interface HTMLElementTagNameMap {
130
130
  'ixfx-menu-header': MenuHeader;
131
131
  }
132
- } //# sourceMappingURL=menu-header.d.ts.map
132
+ }
133
133
  //#endregion
134
134
  //#region src/menu/menu-from-tree.d.ts
135
135
  type MenuFromTreeOptions = {
@@ -155,7 +155,7 @@ declare global {
155
155
  interface HTMLElementTagNameMap {
156
156
  'ixfx-menu-radio-item': MenuRadioItem;
157
157
  }
158
- } //# sourceMappingURL=menu-radio-item.d.ts.map
158
+ }
159
159
  //#endregion
160
160
  //#region src/menu/menu-radio-group.d.ts
161
161
  declare class MenuRadioGroup extends LitElement {
@@ -173,10 +173,10 @@ declare global {
173
173
  interface HTMLElementTagNameMap {
174
174
  'ixfx-menu-radio-group': MenuRadioGroup;
175
175
  }
176
- } //# sourceMappingURL=menu-radio-group.d.ts.map
176
+ }
177
177
  declare namespace index_d_exports {
178
178
  export { MenuBar, MenuCheckItem, MenuCommandController, MenuContainer, MenuFromTreeOptions, MenuHeader, MenuItem, MenuRadioGroup, MenuRadioItem, MenuSeparator, MenuSubTrigger, MenuTrigger, menuFromTree, menuFromTreeToElements };
179
179
  }
180
180
  //#endregion
181
181
  export { menuFromTree as a, MenuSeparator as c, MenuCheckItem as d, MenuBar as f, MenuFromTreeOptions as i, MenuSubTrigger as l, MenuRadioGroup as n, menuFromTreeToElements as o, MenuRadioItem as r, MenuHeader as s, index_d_exports as t, MenuCommandController as u };
182
- //# sourceMappingURL=index-Cdmrn0SZ.d.ts.map
182
+ //# sourceMappingURL=index-ovq_GTdl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-ovq_GTdl.d.ts","names":[],"sources":["../src/menu/menu-bar.ts","../src/menu/menu-check-item.ts","../src/menu/menu-command-controller.ts","../src/menu/menu-sub-trigger.ts","../src/menu/menu-separator.ts","../src/menu/menu-header.ts","../src/menu/menu-from-tree.ts","../src/menu/menu-radio-item.ts","../src/menu/menu-radio-group.ts","../src/menu/index.ts"],"mappings":";;;;;;cAMa,gBAAgB;UACnB;UACA;EAER;EASA;UASQ;UAOA;UAIA;UAMA;UAIA;UAQA;UASA;SAkCD,sBAAM;EAab,wBAAM;;QAKA;YACI;IACR,iBAAiB;;;;;cCvGR,sBAAsB;EACL;EAC2B;EAC3B;EACC;EACA;EACuB;EACpB,WAAW;EACX,kBAAkB;UAE1C;UAYA;UASA;EASR,WAAW,mBAAmB;EAU9B,QAAQ,mBAAmB;UAInB;SAaQ,sBAAM;EA0DtB,wBAAM;;QAoBA;YACI;IACR,wBAAwB;;;;;cClKf;UACH;UACA;UACA;EAEI,YAAA;IAAW,UAAU;IAA0B,SAAS;;EAMpE;EAIA;UAIQ;;;;cCZG,uBAAuB;EACN;EAC2B;EAC3B;EACC;EACuB;EACpB,WAAW;EACX,kBAAkB;UAEjC;UACsB;UACJ;UACX;iBAET;UACP;UACA;UACA;EAER;EAKA;EAIA;UAWQ;EAUC,QAAQ,mBAAmB;EAMpC,WAAW,mBAAmB;UAUtB;UASA;UAKA;UAQA;UAQA;UAOA;UAQA;UAYA;UAQA;UAIA;UAIA;UAWA;SAiCQ,sBAAM;EAmEtB,wBAAM;;QA2BA;YACI;IACR,yBAAyB;;;;;cC1RhB,sBAAsB;SAC1B,sBAAM;EAYb,wBAAM;;QAKA;YACI;IACR,uBAAuB;;;;;cCnBd,mBAAmB;EACF;SAErB,sBAAM;EAYb,wBAAM;;QAKA;YACI;IACR,oBAAoB;;;;;KCjBZ;EACV,aAAa,QAAQ;EACrB,WAAW;EACX,kBAAkB;;iBAOJ,aACd,OAAO,YACP,UAAS,sBACR;iBAmGa,uBACd,OAAO,YACP,UAAS,sBACR;;;cChHU,sBAAsB;EACL;EACA;EACC;EACD;EACwB;UAE5C;SAWQ,sBAAM;EAoDtB,wBAAM;;QAmBA;YACI;IACR,wBAAwB;;;;;cC5Ff,uBAAuB;EACN;EACA;UAEX;UAET;UAMA;UAMA;EAYR,QAAQ,mBAAmB;SAMpB,sBAAM;EAUb,wBAAM;;QAOA;YACI;IACR,yBAAyB"}