@ixfx/components 0.2.3 → 0.2.4

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 (579) hide show
  1. package/LICENSE +1 -1
  2. package/bundle/chunk-pbuEa-1d.js +13 -0
  3. package/bundle/index.d.ts +4702 -569
  4. package/bundle/index.d.ts.map +1 -1
  5. package/bundle/index.js +34929 -2800
  6. package/bundle/index.js.map +1 -1
  7. package/bundle/style.css +133 -0
  8. package/dist/ac-text/ac-text.d.ts +99 -0
  9. package/dist/ac-text/ac-text.d.ts.map +1 -0
  10. package/dist/ac-text/ac-text.js +571 -0
  11. package/dist/ac-text/ac-text.js.map +1 -0
  12. package/dist/button/button-styles.d.ts +2 -0
  13. package/dist/button/button-styles.d.ts.map +1 -0
  14. package/dist/button/button-styles.js +75 -0
  15. package/dist/button/button-styles.js.map +1 -0
  16. package/dist/button/button.d.ts +16 -0
  17. package/dist/button/button.d.ts.map +1 -0
  18. package/dist/button/button.js +58 -0
  19. package/dist/button/button.js.map +1 -0
  20. package/dist/button/radio-group.d.ts +44 -0
  21. package/dist/button/radio-group.d.ts.map +1 -0
  22. package/dist/button/radio-group.js +385 -0
  23. package/dist/button/radio-group.js.map +1 -0
  24. package/dist/button/split-button.d.ts +59 -0
  25. package/dist/button/split-button.d.ts.map +1 -0
  26. package/dist/button/split-button.js +480 -0
  27. package/dist/button/split-button.js.map +1 -0
  28. package/dist/button/types.d.ts +18 -0
  29. package/dist/button/types.d.ts.map +1 -0
  30. package/dist/button/types.js +2 -0
  31. package/dist/button/types.js.map +1 -0
  32. package/dist/checkbox.d.ts +64 -0
  33. package/dist/checkbox.d.ts.map +1 -0
  34. package/dist/checkbox.js +265 -0
  35. package/dist/checkbox.js.map +1 -0
  36. package/dist/colour-picker/colour-picker-popup.d.ts +102 -0
  37. package/dist/colour-picker/colour-picker-popup.d.ts.map +1 -0
  38. package/dist/colour-picker/colour-picker-popup.js +399 -0
  39. package/dist/colour-picker/colour-picker-popup.js.map +1 -0
  40. package/dist/colour-picker/colour-picker.d.ts +100 -0
  41. package/dist/colour-picker/colour-picker.d.ts.map +1 -0
  42. package/dist/colour-picker/colour-picker.js +567 -0
  43. package/dist/colour-picker/colour-picker.js.map +1 -0
  44. package/dist/colour-picker/index.d.ts +4 -0
  45. package/dist/colour-picker/index.d.ts.map +1 -0
  46. package/dist/colour-picker/index.js +3 -0
  47. package/dist/colour-picker/index.js.map +1 -0
  48. package/dist/colour-picker/styles.d.ts +2 -0
  49. package/dist/colour-picker/styles.d.ts.map +1 -0
  50. package/dist/colour-picker/styles.js +139 -0
  51. package/dist/colour-picker/styles.js.map +1 -0
  52. package/dist/colour-picker/types.d.ts +33 -0
  53. package/dist/colour-picker/types.d.ts.map +1 -0
  54. package/dist/colour-picker/types.js +2 -0
  55. package/dist/colour-picker/types.js.map +1 -0
  56. package/dist/colour-picker/util.d.ts +15 -0
  57. package/dist/colour-picker/util.d.ts.map +1 -0
  58. package/dist/colour-picker/util.js +35 -0
  59. package/dist/colour-picker/util.js.map +1 -0
  60. package/dist/common/searchable.d.ts +9 -0
  61. package/dist/common/searchable.d.ts.map +1 -0
  62. package/dist/common/searchable.js +9 -0
  63. package/dist/common/searchable.js.map +1 -0
  64. package/dist/common/tree-component.d.ts +172 -0
  65. package/dist/common/tree-component.d.ts.map +1 -0
  66. package/dist/common/tree-component.js +8 -0
  67. package/dist/common/tree-component.js.map +1 -0
  68. package/dist/common/tree-data-model.d.ts +100 -0
  69. package/dist/common/tree-data-model.d.ts.map +1 -0
  70. package/dist/common/tree-data-model.js +207 -0
  71. package/dist/common/tree-data-model.js.map +1 -0
  72. package/dist/common/tree-item.d.ts +7 -0
  73. package/dist/common/tree-item.d.ts.map +1 -0
  74. package/dist/common/tree-item.js +2 -0
  75. package/dist/common/tree-item.js.map +1 -0
  76. package/dist/common/types.d.ts +69 -0
  77. package/dist/common/types.d.ts.map +1 -0
  78. package/dist/common/types.js +6 -0
  79. package/dist/common/types.js.map +1 -0
  80. package/dist/crumbs/crumb-navigation.d.ts +96 -0
  81. package/dist/crumbs/crumb-navigation.d.ts.map +1 -0
  82. package/dist/crumbs/crumb-navigation.js +911 -0
  83. package/dist/crumbs/crumb-navigation.js.map +1 -0
  84. package/dist/crumbs/crumb-path-controller.d.ts +18 -0
  85. package/dist/crumbs/crumb-path-controller.d.ts.map +1 -0
  86. package/dist/crumbs/crumb-path-controller.js +81 -0
  87. package/dist/crumbs/crumb-path-controller.js.map +1 -0
  88. package/dist/crumbs/crumb-path.d.ts +65 -0
  89. package/dist/crumbs/crumb-path.d.ts.map +1 -0
  90. package/dist/crumbs/crumb-path.js +691 -0
  91. package/dist/crumbs/crumb-path.js.map +1 -0
  92. package/dist/data-display.d.ts +10 -3
  93. package/dist/data-display.d.ts.map +1 -1
  94. package/dist/data-display.js +45 -28
  95. package/dist/data-display.js.map +1 -1
  96. package/dist/editable-label/editable-label.d.ts +98 -0
  97. package/dist/editable-label/editable-label.d.ts.map +1 -0
  98. package/dist/editable-label/editable-label.js +348 -0
  99. package/dist/editable-label/editable-label.js.map +1 -0
  100. package/dist/editable-label/editable-number.d.ts +96 -0
  101. package/dist/editable-label/editable-number.d.ts.map +1 -0
  102. package/dist/editable-label/editable-number.js +702 -0
  103. package/dist/editable-label/editable-number.js.map +1 -0
  104. package/dist/hex/colour.d.ts +6 -0
  105. package/dist/hex/colour.d.ts.map +1 -0
  106. package/dist/hex/colour.js +33 -0
  107. package/dist/hex/colour.js.map +1 -0
  108. package/dist/hex/data.d.ts +18 -0
  109. package/dist/hex/data.d.ts.map +1 -0
  110. package/dist/hex/data.js +61 -0
  111. package/dist/hex/data.js.map +1 -0
  112. package/dist/hex/diff.d.ts +14 -0
  113. package/dist/hex/diff.d.ts.map +1 -0
  114. package/dist/hex/diff.js +31 -0
  115. package/dist/hex/diff.js.map +1 -0
  116. package/dist/hex/hex-editor.d.ts +101 -0
  117. package/dist/hex/hex-editor.d.ts.map +1 -0
  118. package/dist/hex/hex-editor.js +894 -0
  119. package/dist/hex/hex-editor.js.map +1 -0
  120. package/dist/hex/selection.d.ts +11 -0
  121. package/dist/hex/selection.d.ts.map +1 -0
  122. package/dist/hex/selection.js +218 -0
  123. package/dist/hex/selection.js.map +1 -0
  124. package/dist/hex/types.d.ts +34 -0
  125. package/dist/hex/types.d.ts.map +1 -0
  126. package/dist/hex/types.js +4 -0
  127. package/dist/hex/types.js.map +1 -0
  128. package/dist/icons/defaults.d.ts +27 -0
  129. package/dist/icons/defaults.d.ts.map +1 -0
  130. package/dist/icons/defaults.js +34 -0
  131. package/dist/icons/defaults.js.map +1 -0
  132. package/dist/icons/icon.d.ts +31 -0
  133. package/dist/icons/icon.d.ts.map +1 -0
  134. package/dist/icons/icon.js +125 -0
  135. package/dist/icons/icon.js.map +1 -0
  136. package/dist/icons/index.d.ts +5 -0
  137. package/dist/icons/index.d.ts.map +1 -0
  138. package/dist/icons/index.js +6 -0
  139. package/dist/icons/index.js.map +1 -0
  140. package/dist/icons/registry.d.ts +11 -0
  141. package/dist/icons/registry.d.ts.map +1 -0
  142. package/dist/icons/registry.js +17 -0
  143. package/dist/icons/registry.js.map +1 -0
  144. package/dist/incr-search/ac-adapter.d.ts +18 -0
  145. package/dist/incr-search/ac-adapter.d.ts.map +1 -0
  146. package/dist/incr-search/ac-adapter.js +29 -0
  147. package/dist/incr-search/ac-adapter.js.map +1 -0
  148. package/dist/incr-search/controller-miller.d.ts +9 -0
  149. package/dist/incr-search/controller-miller.d.ts.map +1 -0
  150. package/dist/incr-search/controller-miller.js +8 -0
  151. package/dist/incr-search/controller-miller.js.map +1 -0
  152. package/dist/incr-search/controller-tree.d.ts +55 -0
  153. package/dist/incr-search/controller-tree.d.ts.map +1 -0
  154. package/dist/incr-search/controller-tree.js +106 -0
  155. package/dist/incr-search/controller-tree.js.map +1 -0
  156. package/dist/incr-search/element-search.d.ts +15 -0
  157. package/dist/incr-search/element-search.d.ts.map +1 -0
  158. package/dist/incr-search/element-search.js +82 -0
  159. package/dist/incr-search/element-search.js.map +1 -0
  160. package/dist/incr-search/fuzzy.d.ts +3 -0
  161. package/dist/incr-search/fuzzy.d.ts.map +1 -0
  162. package/dist/incr-search/fuzzy.js +37 -0
  163. package/dist/incr-search/fuzzy.js.map +1 -0
  164. package/dist/incr-search/highlight.d.ts +5 -0
  165. package/dist/incr-search/highlight.d.ts.map +1 -0
  166. package/dist/incr-search/highlight.js +54 -0
  167. package/dist/incr-search/highlight.js.map +1 -0
  168. package/dist/incr-search/incr-search.d.ts +3 -0
  169. package/dist/incr-search/incr-search.d.ts.map +1 -0
  170. package/dist/incr-search/incr-search.js +73 -0
  171. package/dist/incr-search/incr-search.js.map +1 -0
  172. package/dist/incr-search/index.d.ts +12 -0
  173. package/dist/incr-search/index.d.ts.map +1 -0
  174. package/dist/incr-search/index.js +8 -0
  175. package/dist/incr-search/index.js.map +1 -0
  176. package/dist/incr-search/types.d.ts +59 -0
  177. package/dist/incr-search/types.d.ts.map +1 -0
  178. package/dist/incr-search/types.js +2 -0
  179. package/dist/incr-search/types.js.map +1 -0
  180. package/dist/index.d.ts +49 -9
  181. package/dist/index.d.ts.map +1 -1
  182. package/dist/index.js +50 -10
  183. package/dist/index.js.map +1 -1
  184. package/dist/interaction/index.d.ts +10 -0
  185. package/dist/interaction/index.d.ts.map +1 -0
  186. package/dist/interaction/index.js +10 -0
  187. package/dist/interaction/index.js.map +1 -0
  188. package/dist/interaction/tickled-controller.d.ts +186 -0
  189. package/dist/interaction/tickled-controller.d.ts.map +1 -0
  190. package/dist/interaction/tickled-controller.js +256 -0
  191. package/dist/interaction/tickled-controller.js.map +1 -0
  192. package/dist/interaction/tickled-styles.d.ts +53 -0
  193. package/dist/interaction/tickled-styles.d.ts.map +1 -0
  194. package/dist/interaction/tickled-styles.js +106 -0
  195. package/dist/interaction/tickled-styles.js.map +1 -0
  196. package/dist/interaction/tree-keyboard-controller.d.ts +30 -0
  197. package/dist/interaction/tree-keyboard-controller.d.ts.map +1 -0
  198. package/dist/interaction/tree-keyboard-controller.js +105 -0
  199. package/dist/interaction/tree-keyboard-controller.js.map +1 -0
  200. package/dist/keyboard.d.ts +16 -0
  201. package/dist/keyboard.d.ts.map +1 -0
  202. package/dist/keyboard.js +22 -0
  203. package/dist/keyboard.js.map +1 -0
  204. package/dist/labelled-radial-input/index.d.ts +2 -0
  205. package/dist/labelled-radial-input/index.d.ts.map +1 -0
  206. package/dist/labelled-radial-input/index.js +2 -0
  207. package/dist/labelled-radial-input/index.js.map +1 -0
  208. package/dist/labelled-radial-input/labelled-radial-input.d.ts +77 -0
  209. package/dist/labelled-radial-input/labelled-radial-input.d.ts.map +1 -0
  210. package/dist/labelled-radial-input/labelled-radial-input.js +214 -0
  211. package/dist/labelled-radial-input/labelled-radial-input.js.map +1 -0
  212. package/dist/labelled-range-input/index.d.ts +2 -0
  213. package/dist/labelled-range-input/index.d.ts.map +1 -0
  214. package/dist/labelled-range-input/index.js +2 -0
  215. package/dist/labelled-range-input/index.js.map +1 -0
  216. package/dist/labelled-range-input/labelled-range-input.d.ts +80 -0
  217. package/dist/labelled-range-input/labelled-range-input.d.ts.map +1 -0
  218. package/dist/labelled-range-input/labelled-range-input.js +137 -0
  219. package/dist/labelled-range-input/labelled-range-input.js.map +1 -0
  220. package/dist/led.d.ts +20 -0
  221. package/dist/led.d.ts.map +1 -0
  222. package/dist/led.js +100 -0
  223. package/dist/led.js.map +1 -0
  224. package/dist/menu/index.d.ts +14 -0
  225. package/dist/menu/index.d.ts.map +1 -0
  226. package/dist/menu/index.js +13 -0
  227. package/dist/menu/index.js.map +1 -0
  228. package/dist/menu/menu-bar.d.ts +23 -0
  229. package/dist/menu/menu-bar.d.ts.map +1 -0
  230. package/dist/menu/menu-bar.js +110 -0
  231. package/dist/menu/menu-bar.js.map +1 -0
  232. package/dist/menu/menu-check-item.d.ts +33 -0
  233. package/dist/menu/menu-check-item.d.ts.map +1 -0
  234. package/dist/menu/menu-check-item.js +175 -0
  235. package/dist/menu/menu-check-item.js.map +1 -0
  236. package/dist/menu/menu-command-controller.d.ts +14 -0
  237. package/dist/menu/menu-command-controller.d.ts.map +1 -0
  238. package/dist/menu/menu-command-controller.js +22 -0
  239. package/dist/menu/menu-command-controller.js.map +1 -0
  240. package/dist/menu/menu-container.d.ts +36 -0
  241. package/dist/menu/menu-container.d.ts.map +1 -0
  242. package/dist/menu/menu-container.js +351 -0
  243. package/dist/menu/menu-container.js.map +1 -0
  244. package/dist/menu/menu-from-tree.d.ts +17 -0
  245. package/dist/menu/menu-from-tree.d.ts.map +1 -0
  246. package/dist/menu/menu-from-tree.js +103 -0
  247. package/dist/menu/menu-from-tree.js.map +1 -0
  248. package/dist/menu/menu-header.d.ts +12 -0
  249. package/dist/menu/menu-header.d.ts.map +1 -0
  250. package/dist/menu/menu-header.js +36 -0
  251. package/dist/menu/menu-header.js.map +1 -0
  252. package/dist/menu/menu-item.d.ts +41 -0
  253. package/dist/menu/menu-item.d.ts.map +1 -0
  254. package/dist/menu/menu-item.js +240 -0
  255. package/dist/menu/menu-item.js.map +1 -0
  256. package/dist/menu/menu-radio-group.d.ts +24 -0
  257. package/dist/menu/menu-radio-group.d.ts.map +1 -0
  258. package/dist/menu/menu-radio-group.js +71 -0
  259. package/dist/menu/menu-radio-group.js.map +1 -0
  260. package/dist/menu/menu-radio-item.d.ts +22 -0
  261. package/dist/menu/menu-radio-item.d.ts.map +1 -0
  262. package/dist/menu/menu-radio-item.js +116 -0
  263. package/dist/menu/menu-radio-item.js.map +1 -0
  264. package/dist/menu/menu-separator.d.ts +11 -0
  265. package/dist/menu/menu-separator.d.ts.map +1 -0
  266. package/dist/menu/menu-separator.js +29 -0
  267. package/dist/menu/menu-separator.js.map +1 -0
  268. package/dist/menu/menu-sub-trigger.d.ts +46 -0
  269. package/dist/menu/menu-sub-trigger.d.ts.map +1 -0
  270. package/dist/menu/menu-sub-trigger.js +302 -0
  271. package/dist/menu/menu-sub-trigger.js.map +1 -0
  272. package/dist/menu/menu-trigger.d.ts +57 -0
  273. package/dist/menu/menu-trigger.d.ts.map +1 -0
  274. package/dist/menu/menu-trigger.js +351 -0
  275. package/dist/menu/menu-trigger.js.map +1 -0
  276. package/dist/miller/index.d.ts +5 -0
  277. package/dist/miller/index.d.ts.map +1 -0
  278. package/dist/miller/index.js +5 -0
  279. package/dist/miller/index.js.map +1 -0
  280. package/dist/miller/miller-base.d.ts +184 -0
  281. package/dist/miller/miller-base.d.ts.map +1 -0
  282. package/dist/miller/miller-base.js +1249 -0
  283. package/dist/miller/miller-base.js.map +1 -0
  284. package/dist/miller/miller-list.d.ts +30 -0
  285. package/dist/miller/miller-list.d.ts.map +1 -0
  286. package/dist/miller/miller-list.js +192 -0
  287. package/dist/miller/miller-list.js.map +1 -0
  288. package/dist/miller/miller-tree-controller.d.ts +58 -0
  289. package/dist/miller/miller-tree-controller.d.ts.map +1 -0
  290. package/dist/miller/miller-tree-controller.js +134 -0
  291. package/dist/miller/miller-tree-controller.js.map +1 -0
  292. package/dist/miller/types.d.ts +63 -0
  293. package/dist/miller/types.d.ts.map +1 -0
  294. package/dist/miller/types.js +6 -0
  295. package/dist/miller/types.js.map +1 -0
  296. package/dist/mixins/labelled-input-base.d.ts +38 -0
  297. package/dist/mixins/labelled-input-base.d.ts.map +1 -0
  298. package/dist/mixins/labelled-input-base.js +171 -0
  299. package/dist/mixins/labelled-input-base.js.map +1 -0
  300. package/dist/mixins/labelled-input-util.d.ts +3 -0
  301. package/dist/mixins/labelled-input-util.d.ts.map +1 -0
  302. package/dist/mixins/labelled-input-util.js +10 -0
  303. package/dist/mixins/labelled-input-util.js.map +1 -0
  304. package/dist/my-element.d.ts.map +1 -1
  305. package/dist/my-element.js +1 -1
  306. package/dist/my-element.js.map +1 -1
  307. package/dist/narrowed-text/index.d.ts +3 -0
  308. package/dist/narrowed-text/index.d.ts.map +1 -0
  309. package/dist/narrowed-text/index.js +3 -0
  310. package/dist/narrowed-text/index.js.map +1 -0
  311. package/dist/narrowed-text/narrowed-text.d.ts +48 -0
  312. package/dist/narrowed-text/narrowed-text.d.ts.map +1 -0
  313. package/dist/narrowed-text/narrowed-text.js +668 -0
  314. package/dist/narrowed-text/narrowed-text.js.map +1 -0
  315. package/dist/narrowed-text/types.d.ts +20 -0
  316. package/dist/narrowed-text/types.d.ts.map +1 -0
  317. package/dist/narrowed-text/types.js +2 -0
  318. package/dist/narrowed-text/types.js.map +1 -0
  319. package/dist/panel/panel-group.d.ts +23 -0
  320. package/dist/panel/panel-group.d.ts.map +1 -0
  321. package/dist/panel/panel-group.js +109 -0
  322. package/dist/panel/panel-group.js.map +1 -0
  323. package/dist/panel/panel.d.ts +39 -0
  324. package/dist/panel/panel.d.ts.map +1 -0
  325. package/dist/panel/panel.js +417 -0
  326. package/dist/panel/panel.js.map +1 -0
  327. package/dist/plots/colour-map.d.ts +31 -0
  328. package/dist/plots/colour-map.d.ts.map +1 -0
  329. package/dist/plots/colour-map.js +133 -0
  330. package/dist/plots/colour-map.js.map +1 -0
  331. package/dist/plots/data.d.ts +27 -0
  332. package/dist/plots/data.d.ts.map +1 -0
  333. package/dist/plots/data.js +47 -0
  334. package/dist/plots/data.js.map +1 -0
  335. package/dist/plots/single-axis.d.ts +41 -0
  336. package/dist/plots/single-axis.d.ts.map +1 -0
  337. package/dist/plots/single-axis.js +428 -0
  338. package/dist/plots/single-axis.js.map +1 -0
  339. package/dist/plots/svg-utils.d.ts +12 -0
  340. package/dist/plots/svg-utils.d.ts.map +1 -0
  341. package/dist/plots/svg-utils.js +64 -0
  342. package/dist/plots/svg-utils.js.map +1 -0
  343. package/dist/plots/xy-axis.d.ts +42 -0
  344. package/dist/plots/xy-axis.d.ts.map +1 -0
  345. package/dist/plots/xy-axis.js +307 -0
  346. package/dist/plots/xy-axis.js.map +1 -0
  347. package/dist/polar-pad/polar-pad.d.ts +132 -0
  348. package/dist/polar-pad/polar-pad.d.ts.map +1 -0
  349. package/dist/polar-pad/polar-pad.js +598 -0
  350. package/dist/polar-pad/polar-pad.js.map +1 -0
  351. package/dist/radial-input/radial-input.d.ts +45 -0
  352. package/dist/radial-input/radial-input.d.ts.map +1 -0
  353. package/dist/radial-input/radial-input.js +692 -0
  354. package/dist/radial-input/radial-input.js.map +1 -0
  355. package/dist/radial-input/svg-utils.d.ts +147 -0
  356. package/dist/radial-input/svg-utils.d.ts.map +1 -0
  357. package/dist/radial-input/svg-utils.js +346 -0
  358. package/dist/radial-input/svg-utils.js.map +1 -0
  359. package/dist/radial-input/types.d.ts +25 -0
  360. package/dist/radial-input/types.d.ts.map +1 -0
  361. package/dist/radial-input/types.js +5 -0
  362. package/dist/radial-input/types.js.map +1 -0
  363. package/dist/range/range-multi.d.ts +62 -0
  364. package/dist/range/range-multi.d.ts.map +1 -0
  365. package/dist/range/range-multi.js +652 -0
  366. package/dist/range/range-multi.js.map +1 -0
  367. package/dist/range/range.d.ts +23 -0
  368. package/dist/range/range.d.ts.map +1 -0
  369. package/dist/range/range.js +153 -0
  370. package/dist/range/range.js.map +1 -0
  371. package/dist/range-input/index.d.ts +2 -0
  372. package/dist/range-input/index.d.ts.map +1 -0
  373. package/dist/range-input/index.js +2 -0
  374. package/dist/range-input/index.js.map +1 -0
  375. package/dist/range-input/range-input.d.ts +92 -0
  376. package/dist/range-input/range-input.d.ts.map +1 -0
  377. package/dist/range-input/range-input.js +472 -0
  378. package/dist/range-input/range-input.js.map +1 -0
  379. package/dist/selecthorizontal.d.ts +1 -1
  380. package/dist/selecthorizontal.d.ts.map +1 -1
  381. package/dist/selecthorizontal.js +3 -3
  382. package/dist/selecthorizontal.js.map +1 -1
  383. package/dist/snap-container/snap-container.d.ts +45 -0
  384. package/dist/snap-container/snap-container.d.ts.map +1 -0
  385. package/dist/snap-container/snap-container.js +352 -0
  386. package/dist/snap-container/snap-container.js.map +1 -0
  387. package/dist/split-layout/split-layout.d.ts +25 -9
  388. package/dist/split-layout/split-layout.d.ts.map +1 -1
  389. package/dist/split-layout/split-layout.js +520 -66
  390. package/dist/split-layout/split-layout.js.map +1 -1
  391. package/dist/styles/popup.d.ts +11 -0
  392. package/dist/styles/popup.d.ts.map +1 -0
  393. package/dist/styles/popup.js +20 -0
  394. package/dist/styles/popup.js.map +1 -0
  395. package/dist/styles/prominence.d.ts +58 -0
  396. package/dist/styles/prominence.d.ts.map +1 -0
  397. package/dist/styles/prominence.js +94 -0
  398. package/dist/styles/prominence.js.map +1 -0
  399. package/dist/styles/tooltip.d.ts +2 -0
  400. package/dist/styles/tooltip.d.ts.map +1 -0
  401. package/dist/styles/tooltip.js +100 -0
  402. package/dist/styles/tooltip.js.map +1 -0
  403. package/dist/svg-edit-label.js +1 -1
  404. package/dist/svg-edit-label.js.map +1 -1
  405. package/dist/swipe/index.d.ts +2 -0
  406. package/dist/swipe/index.d.ts.map +1 -0
  407. package/dist/swipe/index.js +2 -0
  408. package/dist/swipe/index.js.map +1 -0
  409. package/dist/swipe/swipe.d.ts +65 -0
  410. package/dist/swipe/swipe.d.ts.map +1 -0
  411. package/dist/swipe/swipe.js +229 -0
  412. package/dist/swipe/swipe.js.map +1 -0
  413. package/dist/tabs/tab-layout-item.d.ts.map +1 -1
  414. package/dist/tabs/tab-layout-item.js +1 -1
  415. package/dist/tabs/tab-layout-item.js.map +1 -1
  416. package/dist/tabs/tab-layout.d.ts.map +1 -1
  417. package/dist/tabs/tab-layout.js +1 -1
  418. package/dist/tabs/tab-layout.js.map +1 -1
  419. package/dist/tabs/tab-list-item.d.ts +22 -6
  420. package/dist/tabs/tab-list-item.d.ts.map +1 -1
  421. package/dist/tabs/tab-list-item.js +174 -42
  422. package/dist/tabs/tab-list-item.js.map +1 -1
  423. package/dist/tabs/tab-list.d.ts +15 -5
  424. package/dist/tabs/tab-list.d.ts.map +1 -1
  425. package/dist/tabs/tab-list.js +159 -50
  426. package/dist/tabs/tab-list.js.map +1 -1
  427. package/dist/tabs/tab-panel.d.ts +1 -1
  428. package/dist/tabs/tab-panel.d.ts.map +1 -1
  429. package/dist/tabs/tab-panel.js +2 -2
  430. package/dist/tabs/tab-panel.js.map +1 -1
  431. package/dist/tabs/tab-panels.d.ts +3 -3
  432. package/dist/tabs/tab-panels.d.ts.map +1 -1
  433. package/dist/tabs/tab-panels.js +6 -6
  434. package/dist/tabs/tab-panels.js.map +1 -1
  435. package/dist/timeline/index.d.ts +9 -0
  436. package/dist/timeline/index.d.ts.map +1 -0
  437. package/dist/timeline/index.js +8 -0
  438. package/dist/timeline/index.js.map +1 -0
  439. package/dist/timeline/timeline-controller.d.ts +48 -0
  440. package/dist/timeline/timeline-controller.d.ts.map +1 -0
  441. package/dist/timeline/timeline-controller.js +81 -0
  442. package/dist/timeline/timeline-controller.js.map +1 -0
  443. package/dist/timeline/timeline-draw.d.ts +28 -0
  444. package/dist/timeline/timeline-draw.d.ts.map +1 -0
  445. package/dist/timeline/timeline-draw.js +330 -0
  446. package/dist/timeline/timeline-draw.js.map +1 -0
  447. package/dist/timeline/timeline-element.d.ts +140 -0
  448. package/dist/timeline/timeline-element.d.ts.map +1 -0
  449. package/dist/timeline/timeline-element.js +888 -0
  450. package/dist/timeline/timeline-element.js.map +1 -0
  451. package/dist/timeline/timeline-interactions.d.ts +40 -0
  452. package/dist/timeline/timeline-interactions.d.ts.map +1 -0
  453. package/dist/timeline/timeline-interactions.js +393 -0
  454. package/dist/timeline/timeline-interactions.js.map +1 -0
  455. package/dist/timeline/timeline-styles.d.ts +2 -0
  456. package/dist/timeline/timeline-styles.d.ts.map +1 -0
  457. package/dist/timeline/timeline-styles.js +153 -0
  458. package/dist/timeline/timeline-styles.js.map +1 -0
  459. package/dist/timeline/timeline-track-tabs.d.ts +30 -0
  460. package/dist/timeline/timeline-track-tabs.d.ts.map +1 -0
  461. package/dist/timeline/timeline-track-tabs.js +204 -0
  462. package/dist/timeline/timeline-track-tabs.js.map +1 -0
  463. package/dist/timeline/types.d.ts +144 -0
  464. package/dist/timeline/types.d.ts.map +1 -0
  465. package/dist/timeline/types.js +3 -0
  466. package/dist/timeline/types.js.map +1 -0
  467. package/dist/tree/index.d.ts +5 -0
  468. package/dist/tree/index.d.ts.map +1 -0
  469. package/dist/tree/index.js +5 -0
  470. package/dist/tree/index.js.map +1 -0
  471. package/dist/tree/tree-base.d.ts +70 -0
  472. package/dist/tree/tree-base.d.ts.map +1 -0
  473. package/dist/tree/tree-base.js +1028 -0
  474. package/dist/tree/tree-base.js.map +1 -0
  475. package/dist/tree/tree-controller.d.ts +14 -0
  476. package/dist/tree/tree-controller.d.ts.map +1 -0
  477. package/dist/tree/tree-controller.js +96 -0
  478. package/dist/tree/tree-controller.js.map +1 -0
  479. package/dist/tree/tree-list.d.ts +20 -0
  480. package/dist/tree/tree-list.d.ts.map +1 -0
  481. package/dist/tree/tree-list.js +174 -0
  482. package/dist/tree/tree-list.js.map +1 -0
  483. package/dist/tree/types.d.ts +14 -0
  484. package/dist/tree/types.d.ts.map +1 -0
  485. package/dist/tree/types.js +7 -0
  486. package/dist/tree/types.js.map +1 -0
  487. package/dist/util/checkbox.d.ts +2 -0
  488. package/dist/util/checkbox.d.ts.map +1 -0
  489. package/dist/util/checkbox.js +69 -0
  490. package/dist/util/checkbox.js.map +1 -0
  491. package/dist/util/circle-arc.d.ts +6 -6
  492. package/dist/util/circle-arc.d.ts.map +1 -1
  493. package/dist/util/circle-arc.js +28 -20
  494. package/dist/util/circle-arc.js.map +1 -1
  495. package/dist/util/clamp.d.ts +4 -0
  496. package/dist/util/clamp.d.ts.map +1 -0
  497. package/dist/util/clamp.js +23 -0
  498. package/dist/util/clamp.js.map +1 -0
  499. package/dist/util/compare.d.ts +8 -8
  500. package/dist/util/compare.d.ts.map +1 -1
  501. package/dist/util/compare.js +13 -13
  502. package/dist/util/compare.js.map +1 -1
  503. package/dist/util/content-editable.d.ts +1 -1
  504. package/dist/util/content-editable.d.ts.map +1 -1
  505. package/dist/util/content-editable.js +2 -2
  506. package/dist/util/content-editable.js.map +1 -1
  507. package/dist/util/coordinates.d.ts +3 -0
  508. package/dist/util/coordinates.d.ts.map +1 -0
  509. package/dist/util/coordinates.js +11 -0
  510. package/dist/util/coordinates.js.map +1 -0
  511. package/dist/util/drag.d.ts +16 -0
  512. package/dist/util/drag.d.ts.map +1 -0
  513. package/dist/util/drag.js +20 -0
  514. package/dist/util/drag.js.map +1 -0
  515. package/dist/util/is-numeric.d.ts +2 -0
  516. package/dist/util/is-numeric.d.ts.map +1 -0
  517. package/dist/util/is-numeric.js +9 -0
  518. package/dist/util/is-numeric.js.map +1 -0
  519. package/dist/util/key-value.d.ts +2 -2
  520. package/dist/util/key-value.d.ts.map +1 -1
  521. package/dist/util/key-value.js +4 -5
  522. package/dist/util/key-value.js.map +1 -1
  523. package/dist/util/near.d.ts +2 -0
  524. package/dist/util/near.d.ts.map +1 -0
  525. package/dist/util/near.js +6 -0
  526. package/dist/util/near.js.map +1 -0
  527. package/dist/util/svg-editable-text.d.ts +6 -2
  528. package/dist/util/svg-editable-text.d.ts.map +1 -1
  529. package/dist/util/svg-editable-text.js +5 -7
  530. package/dist/util/svg-editable-text.js.map +1 -1
  531. package/dist/util/time.d.ts.map +1 -1
  532. package/dist/util/time.js +1 -1
  533. package/dist/util/time.js.map +1 -1
  534. package/dist/util/tooltip-controller.d.ts +10 -0
  535. package/dist/util/tooltip-controller.d.ts.map +1 -0
  536. package/dist/util/tooltip-controller.js +237 -0
  537. package/dist/util/tooltip-controller.js.map +1 -0
  538. package/dist/util/tooltip.d.ts +21 -0
  539. package/dist/util/tooltip.d.ts.map +1 -0
  540. package/dist/util/tooltip.js +98 -0
  541. package/dist/util/tooltip.js.map +1 -0
  542. package/dist/util/value-drag.d.ts +33 -0
  543. package/dist/util/value-drag.d.ts.map +1 -0
  544. package/dist/util/value-drag.js +154 -0
  545. package/dist/util/value-drag.js.map +1 -0
  546. package/dist/xy-pad.d.ts +117 -0
  547. package/dist/xy-pad.d.ts.map +1 -0
  548. package/dist/xy-pad.js +455 -0
  549. package/dist/xy-pad.js.map +1 -0
  550. package/package.json +47 -30
  551. package/README.md +0 -14
  552. package/dist/charts/frequency-histogram-plot.d.ts +0 -33
  553. package/dist/charts/frequency-histogram-plot.d.ts.map +0 -1
  554. package/dist/charts/frequency-histogram-plot.js +0 -54
  555. package/dist/charts/frequency-histogram-plot.js.map +0 -1
  556. package/dist/charts/histogram-vis.d.ts +0 -57
  557. package/dist/charts/histogram-vis.d.ts.map +0 -1
  558. package/dist/charts/histogram-vis.js +0 -222
  559. package/dist/charts/histogram-vis.js.map +0 -1
  560. package/dist/charts/plot.d.ts +0 -199
  561. package/dist/charts/plot.d.ts.map +0 -1
  562. package/dist/charts/plot.js +0 -914
  563. package/dist/charts/plot.js.map +0 -1
  564. package/dist/crumb-nav.d.ts +0 -41
  565. package/dist/crumb-nav.d.ts.map +0 -1
  566. package/dist/crumb-nav.js +0 -198
  567. package/dist/crumb-nav.js.map +0 -1
  568. package/dist/crumb-navigation.d.ts +0 -30
  569. package/dist/crumb-navigation.d.ts.map +0 -1
  570. package/dist/crumb-navigation.js +0 -307
  571. package/dist/crumb-navigation.js.map +0 -1
  572. package/dist/dial.d.ts +0 -89
  573. package/dist/dial.d.ts.map +0 -1
  574. package/dist/dial.js +0 -506
  575. package/dist/dial.js.map +0 -1
  576. package/dist/util/drag-controller.d.ts +0 -13
  577. package/dist/util/drag-controller.d.ts.map +0 -1
  578. package/dist/util/drag-controller.js +0 -21
  579. package/dist/util/drag-controller.js.map +0 -1
@@ -0,0 +1,139 @@
1
+ import { css } from 'lit';
2
+ export const styles = css `
3
+ :host {
4
+ display: inline-flex;
5
+ max-width: 100%;
6
+ --_slider-height: var(--picker-slider-height, 24px);
7
+ --_slider-gap: var(--picker-slider-gap, 8px);
8
+ --_handle-size: var(--picker-handle-size, 16px);
9
+ --_handle-stroke-light: var(--picker-handle-stroke-light, #fff);
10
+ --_handle-stroke-dark: var(--picker-handle-stroke-dark, #000);
11
+ --_handle-stroke-width: var(--picker-handle-stroke-width, 2px);
12
+ --_preview-height: var(--picker-preview-height, 48px);
13
+ --_checker-light: var(--picker-checker-light, #fff);
14
+ --_checker-dark: var(--picker-checker-dark, #ccc);
15
+ }
16
+
17
+ .lch-container {
18
+ display: flex;
19
+ flex-direction: column;
20
+ width: 100%;
21
+ min-width: 0;
22
+ }
23
+
24
+ .lch-container[horizontal] {
25
+ flex-direction: row;
26
+ align-items: flex-start;
27
+ }
28
+
29
+ .lch-container[horizontal] .lch-preview {
30
+ width: var(--_preview-height);
31
+ height: var(--_preview-height);
32
+ margin-bottom: 0;
33
+ margin-right: var(--_slider-gap);
34
+ flex-shrink: 0;
35
+ }
36
+
37
+ .lch-preview {
38
+ height: var(--_preview-height);
39
+ border-radius: 2px;
40
+ margin-bottom: var(--_slider-gap);
41
+ position: relative;
42
+ overflow: hidden;
43
+ }
44
+
45
+ .lch-preview::before,.lch-alpha::before {
46
+ content: '';
47
+ position: absolute;
48
+ inset: 0;
49
+ background-image:
50
+ linear-gradient(45deg, var(--_checker-dark) 25%, transparent 25%),
51
+ linear-gradient(-45deg, var(--_checker-dark) 25%, transparent 25%),
52
+ linear-gradient(45deg, transparent 75%, var(--_checker-dark) 75%),
53
+ linear-gradient(-45deg, transparent 75%, var(--_checker-dark) 75%);
54
+ background-size: 16px 16px;
55
+ background-position: 0 0, 0 8px, 8px -8px, -8px 0px;
56
+ background-color: var(--_checker-light);
57
+ z-index: 0;
58
+ }
59
+
60
+ .lch-preview canvas,.lch-alpha canvas {
61
+ display: block;
62
+ width: 100%;
63
+ height: 100%;
64
+ border-radius: 2px;
65
+ position: relative;
66
+ z-index: 1;
67
+ }
68
+
69
+ .lch-preview[hidden] {
70
+ display: none;
71
+ }
72
+
73
+ .lch-sliders {
74
+ display: flex;
75
+ flex-direction: column;
76
+ gap: var(--_slider-gap);
77
+ min-width: 0;
78
+ flex: 1;
79
+ }
80
+
81
+ .lch-slider {
82
+ position: relative;
83
+ height: var(--_slider-height);
84
+ cursor: pointer;
85
+ touch-action: none;
86
+ }
87
+
88
+ .lch-slider canvas {
89
+ display: block;
90
+ width: 100%;
91
+ height: 100%;
92
+ border-radius: 2px;
93
+ }
94
+
95
+ .lch-slider svg {
96
+ position: absolute;
97
+ top: 0;
98
+ left: 0;
99
+ width: 100%;
100
+ height: 100%;
101
+ pointer-events: none;
102
+ }
103
+
104
+ .lch-slider .handle {
105
+ pointer-events: auto;
106
+ cursor: grab;
107
+ }
108
+
109
+ .lch-slider .handle:active {
110
+ cursor: grabbing;
111
+ }
112
+
113
+ .handle-circle {
114
+ fill: transparent;
115
+ stroke-width: var(--_handle-stroke-width);
116
+ }
117
+
118
+ /* Hidden state for toggled-off sliders */
119
+ .lch-slider[hidden] {
120
+ display: none;
121
+ }
122
+
123
+ :host([hide-preview]) .lch-preview {
124
+ display: none;
125
+ }
126
+
127
+ :host([hide-h]) .lch-hue {
128
+ display: none;
129
+ }
130
+
131
+ :host([hide-l]) .lch-lightness {
132
+ display: none;
133
+ }
134
+
135
+ :host([hide-c]) .lch-chroma {
136
+ display: none;
137
+ }
138
+ `;
139
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/colour-picker/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwIxB,CAAC"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * OKLCH colour value representation
3
+ */
4
+ export type OklchValue = {
5
+ readonly l: number;
6
+ readonly c: number;
7
+ readonly h: number;
8
+ readonly a?: number;
9
+ };
10
+ /**
11
+ * Event detail for colour picker input/change events
12
+ */
13
+ export type ColourPickerEventDetail = OklchValue;
14
+ /**
15
+ * Colour picker custom events
16
+ */
17
+ export type ColourPickerInputEvent = CustomEvent<ColourPickerEventDetail>;
18
+ export type ColourPickerChangeEvent = CustomEvent<ColourPickerEventDetail>;
19
+ /**
20
+ * Type declaration for color-parse module
21
+ */
22
+ export type SliderType = `l` | `c` | `h` | `a`;
23
+ export type Range = readonly [number, number];
24
+ export type RangeInput = readonly [number, number] | readonly number[];
25
+ /**
26
+ * Augment HTMLElementTagNameMap for the custom element
27
+ */
28
+ declare global {
29
+ interface HTMLElementTagNameMap {
30
+ 'ixfx-colour-picker': import('./colour-picker.js').ColourPicker;
31
+ }
32
+ }
33
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/colour-picker/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC;AAEjD;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG,WAAW,CAAC,uBAAuB,CAAC,CAAC;AAC1E,MAAM,MAAM,uBAAuB,GAAG,WAAW,CAAC,uBAAuB,CAAC,CAAC;AAE3E;;GAEG;AAWH,MAAM,MAAM,UAAU,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAE/C,MAAM,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC9C,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,MAAM,EAAE,CAAC;AAEvE;;GAEG;AACH,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,oBAAoB,EAAE,OAAO,oBAAoB,EAAE,YAAY,CAAC;KACjE;CACF"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/colour-picker/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import type { Range, SliderType } from "./types";
2
+ export declare const MAX_CHROMA = 0.4;
3
+ export declare const RANGE_LIMITS: Record<SliderType, Range>;
4
+ export declare const DEFAULT_RANGES: Record<SliderType, Range>;
5
+ export declare function rangeSpan([min, max]: Range): number;
6
+ export declare function cloneRange(range: Range): Range;
7
+ /**
8
+ * Convert OKLCH to a CSS string
9
+ */
10
+ export declare function oklchToCss(l: number, c: number, h: number, a?: number): string;
11
+ /**
12
+ * Clamp a value between min and max
13
+ */
14
+ export declare function clamp(value: number, min: number, max: number): number;
15
+ //# sourceMappingURL=util.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/colour-picker/util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAEjD,eAAO,MAAM,UAAU,MAAM,CAAC;AAC9B,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,UAAU,EAAE,KAAK,CAKzC,CAAC;AACX,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,UAAU,EAAE,KAAK,CAK3C,CAAC;AAEX,wBAAgB,SAAS,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,CAEnD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,KAAK,CAE9C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,GAAE,MAAU,GAAG,MAAM,CAKjF;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAErE"}
@@ -0,0 +1,35 @@
1
+ export const MAX_CHROMA = 0.4;
2
+ export const RANGE_LIMITS = {
3
+ l: [0, 1],
4
+ c: [0, MAX_CHROMA],
5
+ h: [0, 360],
6
+ a: [0, 1],
7
+ };
8
+ export const DEFAULT_RANGES = {
9
+ l: RANGE_LIMITS.l,
10
+ c: RANGE_LIMITS.c,
11
+ h: RANGE_LIMITS.h,
12
+ a: RANGE_LIMITS.a,
13
+ };
14
+ export function rangeSpan([min, max]) {
15
+ return Math.max(max - min, 0);
16
+ }
17
+ export function cloneRange(range) {
18
+ return [range[0], range[1]];
19
+ }
20
+ /**
21
+ * Convert OKLCH to a CSS string
22
+ */
23
+ export function oklchToCss(l, c, h, a = 1) {
24
+ if (a < 1) {
25
+ return `oklch(${l} ${c} ${h} / ${a})`;
26
+ }
27
+ return `oklch(${l} ${c} ${h})`;
28
+ }
29
+ /**
30
+ * Clamp a value between min and max
31
+ */
32
+ export function clamp(value, min, max) {
33
+ return Math.min(Math.max(value, min), max);
34
+ }
35
+ //# sourceMappingURL=util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/colour-picker/util.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,UAAU,GAAG,GAAG,CAAC;AAC9B,MAAM,CAAC,MAAM,YAAY,GAA8B;IACrD,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACT,CAAC,EAAE,CAAC,CAAC,EAAE,UAAU,CAAC;IAClB,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC;IACX,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;CACD,CAAC;AACX,MAAM,CAAC,MAAM,cAAc,GAA8B;IACvD,CAAC,EAAE,YAAY,CAAC,CAAC;IACjB,CAAC,EAAE,YAAY,CAAC,CAAC;IACjB,CAAC,EAAE,YAAY,CAAC,CAAC;IACjB,CAAC,EAAE,YAAY,CAAC,CAAC;CACT,CAAC;AAEX,MAAM,UAAU,SAAS,CAAC,CAAC,GAAG,EAAE,GAAG,CAAQ;IACzC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,KAAY;IACrC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAU,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,IAAY,CAAC;IACvE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACV,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;IACxC,CAAC;IACD,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;IAC3D,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;AAC7C,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Incremental-search host interface for tree-like components.
3
+ *
4
+ * The unified `TreeSearchHost` (with a depth-aware `filterPredicate`) replaces the
5
+ * previous separate `TreeSearchHost` / `MillerSearchHost` types, allowing a single
6
+ * search controller to work with all tree components.
7
+ */
8
+ export type { TreeSearchHost } from './tree-component.js';
9
+ //# sourceMappingURL=searchable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"searchable.d.ts","sourceRoot":"","sources":["../../src/common/searchable.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Incremental-search host interface for tree-like components.
3
+ *
4
+ * The unified `TreeSearchHost` (with a depth-aware `filterPredicate`) replaces the
5
+ * previous separate `TreeSearchHost` / `MillerSearchHost` types, allowing a single
6
+ * search controller to work with all tree components.
7
+ */
8
+ export {};
9
+ //# sourceMappingURL=searchable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"searchable.js","sourceRoot":"","sources":["../../src/common/searchable.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
@@ -0,0 +1,172 @@
1
+ /**
2
+ * Common interface and event types for all tree-like components:
3
+ * ixfx-tree-list, ixfx-miller-list, ixfx-crumb-navigation.
4
+ *
5
+ * Import canonical data types from `./types.js`.
6
+ */
7
+ import type { TreeDataModel } from './tree-data-model.js';
8
+ import type { LoadChildrenCallback, TreeExclusivity, TreeFilterPredicate, TreeNode, TreeSelectionFilter } from './types.js';
9
+ /**
10
+ * Fired when the selection set changes by any means (click, keyboard, programmatic).
11
+ * Event name: `select`
12
+ */
13
+ export type TreeSelectDetail = {
14
+ /** The new selection set. */
15
+ readonly selected: ReadonlySet<TreeNode>;
16
+ /** The previous selection set (empty set if there was no prior selection). */
17
+ readonly previous: ReadonlySet<TreeNode>;
18
+ };
19
+ /**
20
+ * Fired when an item enters cursor focus — either the pointer hovers over it, or
21
+ * the keyboard navigation cursor moves to it.
22
+ * Event name: `tickle`
23
+ */
24
+ export type TreeTickleDetail = {
25
+ readonly node: TreeNode;
26
+ readonly depth: number;
27
+ };
28
+ /**
29
+ * Fired when the user explicitly activates an item (Enter key or double-click).
30
+ * Event name: `activate`
31
+ */
32
+ export type TreeActivateDetail = {
33
+ readonly node: TreeNode;
34
+ readonly depth: number;
35
+ };
36
+ /**
37
+ * Fired when the user clicks an item (raw pointer event, before any selection change).
38
+ * Event name: `item-click`
39
+ */
40
+ export type TreeItemClickDetail = {
41
+ readonly node: TreeNode;
42
+ readonly depth: number;
43
+ };
44
+ /**
45
+ * Fired when a node or column is expanded.
46
+ * Event name: `expand`
47
+ */
48
+ export type TreeExpandDetail = {
49
+ readonly node: TreeNode;
50
+ readonly depth: number;
51
+ };
52
+ /**
53
+ * Fired when a node or column is collapsed.
54
+ * Event name: `collapse`
55
+ */
56
+ export type TreeCollapseDetail = {
57
+ readonly node: TreeNode;
58
+ readonly depth: number;
59
+ };
60
+ export type TreeSelectEvent = CustomEvent<TreeSelectDetail>;
61
+ export type TreeTickleEvent = CustomEvent<TreeTickleDetail>;
62
+ export type TreeActivateEvent = CustomEvent<TreeActivateDetail>;
63
+ export type TreeItemClickEvent = CustomEvent<TreeItemClickDetail>;
64
+ export type TreeExpandEvent = CustomEvent<TreeExpandDetail>;
65
+ export type TreeCollapseEvent = CustomEvent<TreeCollapseDetail>;
66
+ export interface TreeComponentEventMap {
67
+ 'select': TreeSelectEvent;
68
+ 'tickle': TreeTickleEvent;
69
+ 'activate': TreeActivateEvent;
70
+ 'item-click': TreeItemClickEvent;
71
+ 'expand': TreeExpandEvent;
72
+ 'collapse': TreeCollapseEvent;
73
+ }
74
+ /**
75
+ * The common interface all tree-like components must implement.
76
+ *
77
+ * Use this interface when writing controllers or utilities that should work
78
+ * across different tree component implementations.
79
+ *
80
+ * @example Writing a controller that works with any tree component:
81
+ * ```typescript
82
+ * function attachMyController(component: TreeComponent) {
83
+ * component.addEventListener('select', e => console.log(e.detail.selected));
84
+ * }
85
+ * ```
86
+ */
87
+ export interface TreeComponent extends EventTarget {
88
+ /**
89
+ * Root node of the tree.
90
+ * Set this directly for static/fully-known trees.
91
+ * Use `model` for lazy-loaded or programmatically mutated trees.
92
+ */
93
+ root: TreeNode | undefined;
94
+ /**
95
+ * Optional data model providing lazy loading, caching, and mutation helpers.
96
+ * When set, the component uses `model.getChildren()` instead of `loadChildren`,
97
+ * and re-renders when the model notifies of root or invalidation changes.
98
+ * `model` takes precedence over `loadChildren` when both are set.
99
+ */
100
+ model: TreeDataModel | undefined;
101
+ /**
102
+ * Callback for lazily loading children of a node.
103
+ * Superseded by `model` when both are set.
104
+ * Kept for backwards compatibility and simple use-cases.
105
+ */
106
+ loadChildren: LoadChildrenCallback | undefined;
107
+ /**
108
+ * The primary/most-recently selected node, or `undefined` if nothing is selected.
109
+ * In multi-selection modes (e.g. `interactionMode='standard'` with Ctrl+click) this is the most recently added node.
110
+ */
111
+ selectedNode: TreeNode | undefined;
112
+ /**
113
+ * The full selection set. Always in sync with `selectedNode`.
114
+ * Empty set when nothing is selected.
115
+ */
116
+ readonly selectedNodes: ReadonlySet<TreeNode>;
117
+ /**
118
+ * Restricts which kinds of nodes may be selected. Applied as a guard in all interaction modes.
119
+ * Reflected as the `selection-filter` attribute.
120
+ * @default 'leaf'
121
+ */
122
+ selectionFilter: TreeSelectionFilter;
123
+ /**
124
+ * Predicate used by search/filter controllers.
125
+ * When set, nodes for which the predicate returns `false` (and which have no
126
+ * matching descendants) are hidden from the rendered output.
127
+ */
128
+ filterPredicate: TreeFilterPredicate | undefined;
129
+ /**
130
+ * Controls how expanding one node affects other expanded nodes.
131
+ * Reflected as the `exclusivity` attribute.
132
+ * @default 'none'
133
+ */
134
+ exclusivity: TreeExclusivity;
135
+ /** Select `node`, replacing any current selection. Respects `selectionFilter` — no-op if the node is not selectable. */
136
+ select(node: TreeNode): void;
137
+ /** Remove `node` from the selection. */
138
+ deselect(node: TreeNode): void;
139
+ /** Clear the entire selection. */
140
+ clearSelection(): void;
141
+ /**
142
+ * Expand ancestors and select the node reached by following `keys` from the root's children.
143
+ * Returns `true` if the path was found and applied.
144
+ */
145
+ navigateTo(keys: readonly string[]): boolean;
146
+ /**
147
+ * Expand ancestors and select the first node for which `predicate` returns `true`.
148
+ * Returns `true` if a matching node was found.
149
+ */
150
+ navigateToNode(predicate: (node: TreeNode) => boolean): boolean;
151
+ /**
152
+ * Returns all nodes currently visible in the rendered output, in render order,
153
+ * with their depth (0-based, root's children are depth 0).
154
+ */
155
+ getNodes(): ReadonlyArray<{
156
+ node: TreeNode;
157
+ depth: number;
158
+ }>;
159
+ }
160
+ /**
161
+ * Extended interface used by search/filter controllers.
162
+ * Both TreeBaseElement and MillerBaseElement implement this.
163
+ *
164
+ * Replaces the previous separate `TreeSearchHost` / `MillerSearchHost` types
165
+ * in `searchable.ts`. The unified `filterPredicate` signature (with `depth`)
166
+ * allows a single search controller implementation to work with all tree components.
167
+ */
168
+ export interface TreeSearchHost extends TreeComponent {
169
+ readonly shadowRoot: ShadowRoot | null;
170
+ readonly updateComplete: Promise<boolean>;
171
+ }
172
+ //# sourceMappingURL=tree-component.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree-component.d.ts","sourceRoot":"","sources":["../../src/common/tree-component.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Common interface and event types for all tree-like components:
3
+ * ixfx-tree-list, ixfx-miller-list, ixfx-crumb-navigation.
4
+ *
5
+ * Import canonical data types from `./types.js`.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=tree-component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree-component.js","sourceRoot":"","sources":["../../src/common/tree-component.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,100 @@
1
+ import type { LoadChildrenCallback, TreeItem, TreeNode } from './types.js';
2
+ type InvalidateEvent = {
3
+ type: 'invalidate';
4
+ key: string;
5
+ };
6
+ type RootEvent = {
7
+ type: 'root';
8
+ root: TreeNode;
9
+ };
10
+ type ModelEvent = InvalidateEvent | RootEvent;
11
+ type ModelSubscriber = (event: ModelEvent) => void;
12
+ export type TreeDataModelOptions = {
13
+ /** The initial root node. Required. */
14
+ root: TreeNode;
15
+ /**
16
+ * Optional callback for lazily loading children.
17
+ * If omitted, nodes with `children === undefined` are treated as empty branches.
18
+ */
19
+ loadChildren?: LoadChildrenCallback;
20
+ };
21
+ /**
22
+ * Manages tree data for tree-like components.
23
+ *
24
+ * Handles two concerns:
25
+ * 1. **Lazy loading** — caches children fetched via `loadChildren` and can invalidate
26
+ * specific branches so they are re-fetched on next expand.
27
+ * 2. **Structural mutations** — convenience methods to add, remove, update, or move
28
+ * nodes. Each mutation produces a new immutable root and notifies connected components.
29
+ *
30
+ * Assign an instance to a component's `model` property instead of setting `root`/`loadChildren`
31
+ * directly. The same model instance can be shared across multiple components.
32
+ *
33
+ * @example
34
+ * ```typescript
35
+ * const model = new TreeDataModel({
36
+ * root: { item: { key: 'root', label: 'Root' }, children: [] },
37
+ * loadChildren: async (node, depth, signal) => fetchChildren(node.item.key),
38
+ * });
39
+ * myTreeList.model = model;
40
+ * myMillerList.model = model;
41
+ *
42
+ * // Later — invalidate a branch to force a re-fetch on next expand:
43
+ * model.invalidate('some-key');
44
+ * ```
45
+ */
46
+ export declare class TreeDataModel {
47
+ #private;
48
+ constructor(options: TreeDataModelOptions);
49
+ /** The current immutable root snapshot. */
50
+ get root(): TreeNode;
51
+ /**
52
+ * Replace the entire root with a new immutable snapshot.
53
+ * All cached children are cleared. Connected components re-render.
54
+ */
55
+ setRoot(root: TreeNode): void;
56
+ /**
57
+ * Returns children for the given node.
58
+ * If children are cached, they are returned immediately (as a resolved Promise).
59
+ * Otherwise the `loadChildren` callback is invoked and the result is cached.
60
+ * If no `loadChildren` is set and no cache entry exists, returns `[]`.
61
+ *
62
+ * Called by components internally — not typically called by application code.
63
+ */
64
+ getChildren(node: TreeNode, depth: number, signal: AbortSignal): Promise<TreeNode[]>;
65
+ /**
66
+ * Clears the cached children for the node with the given key.
67
+ * Connected components will collapse that node (if currently expanded), so that
68
+ * the next expand triggers a fresh `loadChildren` call.
69
+ */
70
+ invalidate(key: string): void;
71
+ /**
72
+ * Adds `node` as a child of the node identified by `parentKey`.
73
+ * Returns the new root (connected components are notified automatically).
74
+ */
75
+ addNode(parentKey: string, node: TreeNode): TreeNode;
76
+ /**
77
+ * Removes the node with the given key and all its descendants.
78
+ * Returns the new root (connected components are notified automatically).
79
+ */
80
+ removeNode(key: string): TreeNode;
81
+ /**
82
+ * Applies a partial update to the `item` of the node with the given key.
83
+ * Returns the new root (connected components are notified automatically).
84
+ */
85
+ updateItem(key: string, patch: Partial<TreeItem>): TreeNode;
86
+ /**
87
+ * Moves the node with the given key to become a child of `newParentKey`.
88
+ * Returns the new root (connected components are notified automatically).
89
+ */
90
+ moveNode(key: string, newParentKey: string): TreeNode;
91
+ /**
92
+ * Subscribe to model events. Returns an unsubscribe function.
93
+ * Components call this when the `model` property is set, and unsubscribe when it is unset.
94
+ *
95
+ * @internal
96
+ */
97
+ _subscribe(callback: ModelSubscriber): () => void;
98
+ }
99
+ export {};
100
+ //# sourceMappingURL=tree-data-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree-data-model.d.ts","sourceRoot":"","sources":["../../src/common/tree-data-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAM3E,KAAK,eAAe,GAAG;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAC3D,KAAK,SAAS,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAClD,KAAK,UAAU,GAAG,eAAe,GAAG,SAAS,CAAC;AAE9C,KAAK,eAAe,GAAG,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;AA2DnD,MAAM,MAAM,oBAAoB,GAAG;IACjC,uCAAuC;IACvC,IAAI,EAAE,QAAQ,CAAC;IACf;;;OAGG;IACH,YAAY,CAAC,EAAE,oBAAoB,CAAC;CACrC,CAAC;AAMF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,aAAa;;gBAMZ,OAAO,EAAE,oBAAoB;IASzC,2CAA2C;IAC3C,IAAI,IAAI,IAAI,QAAQ,CAEnB;IAED;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,QAAQ,GAAG,IAAI;IAU7B;;;;;;;OAOG;IACG,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAmB1F;;;;OAIG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAS7B;;;OAGG;IACH,OAAO,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ;IAMpD;;;OAGG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ;IAOjC;;;OAGG;IACH,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,QAAQ;IAS3D;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,QAAQ;IAUrD;;;;;OAKG;IACH,UAAU,CAAC,QAAQ,EAAE,eAAe,GAAG,MAAM,IAAI;CAUlD"}