@threadlabs/looma 0.1.22 → 0.1.24

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 (326) hide show
  1. package/dist/chunk-HNFCGIBP.js +8 -0
  2. package/dist/{chunk-NIPNHZ5W.js → chunk-IMHSPETJ.js} +65 -31
  3. package/dist/chunk-NB6DBRXQ.js +323 -0
  4. package/dist/{chunk-SZJQ3NPX.js → chunk-TL4FIE7X.js} +4 -8
  5. package/dist/cjs/controlled-state-BFya8rAX.js +9 -0
  6. package/dist/cjs/icons-BAdjrnhS.js +680 -0
  7. package/dist/cjs/{index-D07f6BOw.js → index-BHG9Rpil.js} +33 -0
  8. package/dist/cjs/loader.cjs.js +2 -2
  9. package/dist/cjs/looma.cjs.js +2 -2
  10. package/dist/cjs/{manager-C9j3HZay.js → manager-Ce25WRtl.js} +6 -7
  11. package/dist/cjs/ui-affordance-scope.cjs.entry.js +2 -2
  12. package/dist/cjs/ui-avatar-group.cjs.entry.js +10 -18
  13. package/dist/cjs/ui-avatar.cjs.entry.js +3 -3
  14. package/dist/cjs/ui-badge.cjs.entry.js +3 -3
  15. package/dist/cjs/ui-button.cjs.entry.js +16 -5
  16. package/dist/cjs/ui-callout.cjs.entry.js +27 -0
  17. package/dist/cjs/ui-checkbox.cjs.entry.js +14 -8
  18. package/dist/cjs/ui-chip.cjs.entry.js +19 -0
  19. package/dist/cjs/ui-combobox.cjs.entry.js +541 -0
  20. package/dist/cjs/ui-context-menu.cjs.entry.js +3 -3
  21. package/dist/cjs/ui-dialog.cjs.entry.js +46 -10
  22. package/dist/cjs/ui-disclosure.cjs.entry.js +10 -7
  23. package/dist/cjs/ui-floating-action-button.cjs.entry.js +2 -2
  24. package/dist/cjs/ui-form-field.cjs.entry.js +61 -6
  25. package/dist/cjs/ui-icon-button.cjs.entry.js +2 -2
  26. package/dist/cjs/ui-input.cjs.entry.js +11 -6
  27. package/dist/cjs/ui-menu-item.cjs.entry.js +3 -3
  28. package/dist/cjs/ui-menu.cjs.entry.js +16 -11
  29. package/dist/cjs/ui-popover.cjs.entry.js +12 -9
  30. package/dist/cjs/ui-radio-group.cjs.entry.js +2 -2
  31. package/dist/cjs/ui-radio.cjs.entry.js +18 -9
  32. package/dist/cjs/ui-search-result-row.cjs.entry.js +2 -2
  33. package/dist/cjs/ui-search-shell.cjs.entry.js +2 -2
  34. package/dist/cjs/ui-select.cjs.entry.js +15 -7
  35. package/dist/cjs/ui-switch.cjs.entry.js +20 -11
  36. package/dist/cjs/ui-tabs.cjs.entry.js +11 -10
  37. package/dist/cjs/ui-textarea.cjs.entry.js +10 -6
  38. package/dist/cjs/ui-toast-region.cjs.entry.js +31 -20
  39. package/dist/cjs/ui-tooltip.cjs.entry.js +63 -23
  40. package/dist/cjs/ui-top-bar.cjs.entry.js +2 -2
  41. package/dist/cjs/ui-tree-item.cjs.entry.js +57 -616
  42. package/dist/cjs/ui-tree.cjs.entry.js +198 -14
  43. package/dist/collection/collection-manifest.json +3 -0
  44. package/dist/collection/components/ui-affordance-scope/ui-affordance-scope.js +1 -1
  45. package/dist/collection/components/ui-avatar/ui-avatar.css +4 -4
  46. package/dist/collection/components/ui-avatar/ui-avatar.js +1 -1
  47. package/dist/collection/components/ui-avatar-group/ui-avatar-group.css +2 -2
  48. package/dist/collection/components/ui-avatar-group/ui-avatar-group.js +8 -16
  49. package/dist/collection/components/ui-badge/ui-badge.css +64 -48
  50. package/dist/collection/components/ui-badge/ui-badge.js +1 -1
  51. package/dist/collection/components/ui-button/ui-button.css +36 -26
  52. package/dist/collection/components/ui-button/ui-button.js +14 -3
  53. package/dist/collection/components/ui-callout/ui-callout.css +74 -0
  54. package/dist/collection/components/ui-callout/ui-callout.js +59 -0
  55. package/dist/collection/components/ui-checkbox/ui-checkbox.js +16 -11
  56. package/dist/collection/components/ui-chip/ui-chip.css +43 -0
  57. package/dist/collection/components/ui-chip/ui-chip.js +45 -0
  58. package/dist/collection/components/ui-combobox/ui-combobox.css +24 -0
  59. package/dist/collection/components/ui-combobox/ui-combobox.js +973 -0
  60. package/dist/collection/components/ui-context-menu/ui-context-menu.js +1 -1
  61. package/dist/collection/components/ui-dialog/ui-dialog.js +49 -13
  62. package/dist/collection/components/ui-disclosure/ui-disclosure.js +12 -10
  63. package/dist/collection/components/ui-floating-action-button/ui-floating-action-button.js +1 -1
  64. package/dist/collection/components/ui-form-field/ui-form-field.css +4 -0
  65. package/dist/collection/components/ui-form-field/ui-form-field.js +59 -4
  66. package/dist/collection/components/ui-icon-button/ui-icon-button.js +1 -1
  67. package/dist/collection/components/ui-input/ui-input.css +8 -6
  68. package/dist/collection/components/ui-input/ui-input.js +11 -7
  69. package/dist/collection/components/ui-menu/ui-menu.css +12 -23
  70. package/dist/collection/components/ui-menu/ui-menu.js +16 -12
  71. package/dist/collection/components/ui-menu-item/ui-menu-item.css +9 -3
  72. package/dist/collection/components/ui-menu-item/ui-menu-item.js +1 -1
  73. package/dist/collection/components/ui-popover/ui-popover.css +14 -5
  74. package/dist/collection/components/ui-popover/ui-popover.js +12 -10
  75. package/dist/collection/components/ui-radio/ui-radio.js +25 -12
  76. package/dist/collection/components/ui-radio-group/ui-radio-group.js +1 -1
  77. package/dist/collection/components/ui-search-result-row/ui-search-result-row.js +1 -1
  78. package/dist/collection/components/ui-search-shell/ui-search-shell.js +1 -1
  79. package/dist/collection/components/ui-select/ui-select.css +8 -6
  80. package/dist/collection/components/ui-select/ui-select.js +17 -11
  81. package/dist/collection/components/ui-switch/ui-switch.js +22 -14
  82. package/dist/collection/components/ui-tabs/ui-tabs.js +13 -13
  83. package/dist/collection/components/ui-textarea/ui-textarea.css +7 -6
  84. package/dist/collection/components/ui-textarea/ui-textarea.js +10 -7
  85. package/dist/collection/components/ui-toast-region/ui-toast-region.js +30 -19
  86. package/dist/collection/components/ui-tooltip/ui-tooltip.css +16 -7
  87. package/dist/collection/components/ui-tooltip/ui-tooltip.js +115 -25
  88. package/dist/collection/components/ui-top-bar/ui-top-bar.js +1 -1
  89. package/dist/collection/components/ui-tree/ui-tree.css +2 -1
  90. package/dist/collection/components/ui-tree/ui-tree.js +216 -12
  91. package/dist/collection/components/ui-tree-item/ui-tree-item.js +84 -25
  92. package/dist/collection/field/combobox.js +4 -0
  93. package/dist/collection/field/valibot.js +5 -0
  94. package/dist/collection/field/validation.js +62 -0
  95. package/dist/collection/icons.js +6 -1
  96. package/dist/collection/overlay/manager.js +6 -7
  97. package/dist/collection/utils/controlled-state.js +4 -0
  98. package/dist/components/index.d.ts +6 -0
  99. package/dist/components/index.js +1 -1
  100. package/dist/components/p-Bh_1GxOD.js +1 -0
  101. package/dist/components/p-Bk55QiUK.js +1 -0
  102. package/dist/components/p-BnGhGgTH.js +1 -0
  103. package/dist/components/p-C-0syqXZ.js +1 -0
  104. package/dist/components/p-CoFximGM.js +13 -0
  105. package/dist/components/p-DIGcRYAW.js +1 -0
  106. package/dist/components/ui-affordance-scope.js +1 -1
  107. package/dist/components/ui-avatar-group.js +1 -1
  108. package/dist/components/ui-avatar.js +1 -1
  109. package/dist/components/ui-badge.js +1 -1
  110. package/dist/components/ui-button.js +1 -1
  111. package/dist/components/ui-callout.d.ts +11 -0
  112. package/dist/components/ui-callout.js +1 -0
  113. package/dist/components/ui-checkbox.js +1 -1
  114. package/dist/components/ui-chip.d.ts +11 -0
  115. package/dist/components/ui-chip.js +1 -0
  116. package/dist/components/ui-combobox.d.ts +11 -0
  117. package/dist/components/ui-combobox.js +1 -0
  118. package/dist/components/ui-context-menu.js +1 -1
  119. package/dist/components/ui-dialog.js +1 -1
  120. package/dist/components/ui-disclosure.js +1 -1
  121. package/dist/components/ui-floating-action-button.js +1 -1
  122. package/dist/components/ui-form-field.js +1 -1
  123. package/dist/components/ui-icon-button.js +1 -1
  124. package/dist/components/ui-input.js +1 -1
  125. package/dist/components/ui-menu-item.js +1 -1
  126. package/dist/components/ui-menu.js +1 -1
  127. package/dist/components/ui-popover.js +1 -1
  128. package/dist/components/ui-radio-group.js +1 -1
  129. package/dist/components/ui-radio.js +1 -1
  130. package/dist/components/ui-search-result-row.js +1 -1
  131. package/dist/components/ui-search-shell.js +1 -1
  132. package/dist/components/ui-select.js +1 -1
  133. package/dist/components/ui-switch.js +1 -1
  134. package/dist/components/ui-tabs.js +1 -1
  135. package/dist/components/ui-textarea.js +1 -1
  136. package/dist/components/ui-toast-region.js +1 -1
  137. package/dist/components/ui-tooltip.js +1 -1
  138. package/dist/components/ui-top-bar.js +1 -1
  139. package/dist/components/ui-tree-item.js +1 -13
  140. package/dist/components/ui-tree.js +1 -1
  141. package/dist/esm/controlled-state-BnGhGgTH.js +6 -0
  142. package/dist/esm/icons-CoFximGM.js +678 -0
  143. package/dist/esm/{index-CEeiinfk.js → index-8BGiMGQ0.js} +33 -1
  144. package/dist/esm/loader.js +3 -3
  145. package/dist/esm/looma.js +3 -3
  146. package/dist/esm/{manager-PM9a74r7.js → manager-C-0syqXZ.js} +6 -7
  147. package/dist/esm/ui-affordance-scope.entry.js +2 -2
  148. package/dist/esm/ui-avatar-group.entry.js +10 -18
  149. package/dist/esm/ui-avatar.entry.js +3 -3
  150. package/dist/esm/ui-badge.entry.js +3 -3
  151. package/dist/esm/ui-button.entry.js +16 -5
  152. package/dist/esm/ui-callout.entry.js +25 -0
  153. package/dist/esm/ui-checkbox.entry.js +14 -8
  154. package/dist/esm/ui-chip.entry.js +17 -0
  155. package/dist/esm/ui-combobox.entry.js +539 -0
  156. package/dist/esm/ui-context-menu.entry.js +3 -3
  157. package/dist/esm/ui-dialog.entry.js +46 -10
  158. package/dist/esm/ui-disclosure.entry.js +10 -7
  159. package/dist/esm/ui-floating-action-button.entry.js +2 -2
  160. package/dist/esm/ui-form-field.entry.js +61 -6
  161. package/dist/esm/ui-icon-button.entry.js +2 -2
  162. package/dist/esm/ui-input.entry.js +11 -6
  163. package/dist/esm/ui-menu-item.entry.js +3 -3
  164. package/dist/esm/ui-menu.entry.js +16 -11
  165. package/dist/esm/ui-popover.entry.js +12 -9
  166. package/dist/esm/ui-radio-group.entry.js +2 -2
  167. package/dist/esm/ui-radio.entry.js +18 -9
  168. package/dist/esm/ui-search-result-row.entry.js +2 -2
  169. package/dist/esm/ui-search-shell.entry.js +2 -2
  170. package/dist/esm/ui-select.entry.js +15 -7
  171. package/dist/esm/ui-switch.entry.js +20 -11
  172. package/dist/esm/ui-tabs.entry.js +11 -10
  173. package/dist/esm/ui-textarea.entry.js +10 -6
  174. package/dist/esm/ui-toast-region.entry.js +31 -20
  175. package/dist/esm/ui-tooltip.entry.js +63 -23
  176. package/dist/esm/ui-top-bar.entry.js +2 -2
  177. package/dist/esm/ui-tree-item.entry.js +57 -616
  178. package/dist/esm/ui-tree.entry.js +198 -14
  179. package/dist/index.cjs +2012 -870
  180. package/dist/index.d.cts +109 -1
  181. package/dist/index.d.ts +109 -1
  182. package/dist/index.js +72 -8
  183. package/dist/looma/looma.esm.js +1 -1
  184. package/dist/looma/p-03f44c45.entry.js +1 -0
  185. package/dist/looma/p-08f80207.entry.js +1 -0
  186. package/dist/looma/p-13f8195a.entry.js +1 -0
  187. package/dist/looma/{p-d273b857.entry.js → p-25e18ad6.entry.js} +1 -1
  188. package/dist/looma/p-2c03fa73.entry.js +1 -0
  189. package/dist/looma/p-314d5c7c.entry.js +1 -0
  190. package/dist/looma/{p-2ed7e241.entry.js → p-3ef2a21b.entry.js} +1 -1
  191. package/dist/looma/{p-063f5a89.entry.js → p-5a900d89.entry.js} +1 -1
  192. package/dist/looma/p-5fdcee1d.entry.js +1 -0
  193. package/dist/looma/{p-0198bb21.entry.js → p-672e3d16.entry.js} +1 -1
  194. package/dist/looma/p-68430534.entry.js +1 -0
  195. package/dist/looma/{p-2e6f791e.entry.js → p-72338f53.entry.js} +1 -1
  196. package/dist/looma/p-7ab661ec.entry.js +1 -0
  197. package/dist/looma/p-7c4a225f.entry.js +1 -0
  198. package/dist/looma/p-82f2fa3d.entry.js +1 -0
  199. package/dist/looma/p-839faf55.entry.js +1 -0
  200. package/dist/looma/p-8BGiMGQ0.js +2 -0
  201. package/dist/looma/p-8e254bc4.entry.js +1 -0
  202. package/dist/looma/p-8e6b1001.entry.js +1 -0
  203. package/dist/looma/p-920656cf.entry.js +1 -0
  204. package/dist/looma/p-97e8cb0e.entry.js +1 -0
  205. package/dist/looma/p-9d2662ca.entry.js +1 -0
  206. package/dist/looma/p-9e1c4020.entry.js +1 -0
  207. package/dist/looma/p-BnGhGgTH.js +1 -0
  208. package/dist/looma/p-C-0syqXZ.js +1 -0
  209. package/dist/looma/p-CoFximGM.js +13 -0
  210. package/dist/looma/{p-051f578c.entry.js → p-a63e2561.entry.js} +1 -1
  211. package/dist/looma/p-add67e4c.entry.js +1 -0
  212. package/dist/looma/p-b63f6d4f.entry.js +1 -0
  213. package/dist/looma/p-bd00d4e8.entry.js +1 -0
  214. package/dist/looma/p-cc915913.entry.js +1 -0
  215. package/dist/looma/p-cfba8f7c.entry.js +1 -0
  216. package/dist/looma/p-d56571a2.entry.js +1 -0
  217. package/dist/looma/{p-7e94d90d.entry.js → p-e0f241ab.entry.js} +1 -1
  218. package/dist/looma/p-f1750fd7.entry.js +1 -0
  219. package/dist/looma/p-fd1e4d22.entry.js +1 -0
  220. package/dist/types/components/ui-avatar-group/ui-avatar-group.d.ts +1 -2
  221. package/dist/types/components/ui-callout/ui-callout.d.ts +6 -0
  222. package/dist/types/components/ui-checkbox/ui-checkbox.d.ts +2 -1
  223. package/dist/types/components/ui-chip/ui-chip.d.ts +6 -0
  224. package/dist/types/components/ui-combobox/ui-combobox.d.ts +93 -0
  225. package/dist/types/components/ui-dialog/ui-dialog.d.ts +7 -1
  226. package/dist/types/components/ui-disclosure/ui-disclosure.d.ts +2 -1
  227. package/dist/types/components/ui-form-field/ui-form-field.d.ts +8 -0
  228. package/dist/types/components/ui-input/ui-input.d.ts +1 -1
  229. package/dist/types/components/ui-menu/ui-menu.d.ts +2 -1
  230. package/dist/types/components/ui-popover/ui-popover.d.ts +2 -1
  231. package/dist/types/components/ui-radio/ui-radio.d.ts +4 -1
  232. package/dist/types/components/ui-select/ui-select.d.ts +3 -2
  233. package/dist/types/components/ui-switch/ui-switch.d.ts +2 -1
  234. package/dist/types/components/ui-tabs/ui-tabs.d.ts +2 -1
  235. package/dist/types/components/ui-textarea/ui-textarea.d.ts +1 -1
  236. package/dist/types/components/ui-toast-region/ui-toast-region.d.ts +3 -1
  237. package/dist/types/components/ui-tooltip/ui-tooltip.d.ts +20 -2
  238. package/dist/types/components/ui-tree/ui-tree.d.ts +21 -1
  239. package/dist/types/components/ui-tree-item/ui-tree-item.d.ts +13 -5
  240. package/dist/types/components.d.ts +366 -71
  241. package/dist/types/field/combobox.d.ts +46 -0
  242. package/dist/types/field/valibot.d.ts +7 -0
  243. package/dist/types/field/validation.d.ts +56 -0
  244. package/dist/types/icons.d.ts +5 -0
  245. package/dist/types/utils/controlled-state.d.ts +4 -0
  246. package/dist/{ui-affordance-scope.entry-L533MECG.js → ui-affordance-scope.entry-3TUZ6GLW.js} +2 -2
  247. package/dist/ui-avatar-group.entry-XGJKN25W.js +51 -0
  248. package/dist/{ui-avatar.entry-3INAY3XP.js → ui-avatar.entry-SN3G44HW.js} +3 -3
  249. package/dist/ui-badge.entry-B6WDCWJX.js +22 -0
  250. package/dist/ui-button.entry-AZYUELLV.js +80 -0
  251. package/dist/ui-callout.entry-QRPWRMPC.js +32 -0
  252. package/dist/{ui-checkbox.entry-2PTBHSCQ.js → ui-checkbox.entry-OB6GFC4M.js} +17 -8
  253. package/dist/ui-chip.entry-XSNPJXX3.js +22 -0
  254. package/dist/ui-combobox.entry-IIMMUJF7.js +553 -0
  255. package/dist/{ui-context-menu.entry-AYDDCIZS.js → ui-context-menu.entry-AIULIE5Y.js} +3 -3
  256. package/dist/{ui-dialog.entry-I2XI3ZTZ.js → ui-dialog.entry-QSYWYHLY.js} +48 -10
  257. package/dist/{ui-disclosure.entry-5LY2BT7B.js → ui-disclosure.entry-3BJEYU3U.js} +13 -7
  258. package/dist/{ui-floating-action-button.entry-EJAMR5AM.js → ui-floating-action-button.entry-JEVNV6FI.js} +2 -2
  259. package/dist/ui-form-field.entry-PKSY7UU4.js +120 -0
  260. package/dist/{ui-icon-button.entry-7SD2LVXE.js → ui-icon-button.entry-TPX7BE7R.js} +2 -2
  261. package/dist/{ui-input.entry-7MM7GEQW.js → ui-input.entry-6NCLNW4E.js} +8 -6
  262. package/dist/ui-menu-item.entry-KA2K3PKV.js +22 -0
  263. package/dist/{ui-menu.entry-R4WK5QSX.js → ui-menu.entry-7GDO5L2T.js} +19 -11
  264. package/dist/{ui-popover.entry-ZRJRTXA7.js → ui-popover.entry-FR6YRNK6.js} +15 -9
  265. package/dist/{ui-radio-group.entry-S6RXHFSN.js → ui-radio-group.entry-7QHXQSNO.js} +2 -2
  266. package/dist/{ui-radio.entry-B73QZK2M.js → ui-radio.entry-YNMXKLDW.js} +21 -9
  267. package/dist/{ui-search-result-row.entry-DR2Y5S7P.js → ui-search-result-row.entry-AHVVAAIO.js} +2 -2
  268. package/dist/{ui-search-shell.entry-ST5IKJBC.js → ui-search-shell.entry-CNBEAMEZ.js} +2 -2
  269. package/dist/{ui-select.entry-7GPRFV67.js → ui-select.entry-TUY6TCTC.js} +13 -7
  270. package/dist/{ui-switch.entry-XQ5IRJRH.js → ui-switch.entry-26LFI7B5.js} +23 -11
  271. package/dist/{ui-tabs.entry-HPW5L5CY.js → ui-tabs.entry-LXB62RJJ.js} +14 -10
  272. package/dist/{ui-textarea.entry-W2PSRYVS.js → ui-textarea.entry-JYGMGPX2.js} +8 -6
  273. package/dist/{ui-toast-region.entry-FJUHFXKZ.js → ui-toast-region.entry-TOW4KZLZ.js} +29 -20
  274. package/dist/{ui-tooltip.entry-G5WHQW7K.js → ui-tooltip.entry-SKFNYXPH.js} +68 -25
  275. package/dist/{ui-top-bar.entry-3NCHFC4Y.js → ui-top-bar.entry-S3YP52EA.js} +2 -2
  276. package/dist/ui-tree-item.entry-LWYIPYLC.js +145 -0
  277. package/dist/{ui-tree.entry-SZW4Q5PY.js → ui-tree.entry-LXKUQFRU.js} +184 -13
  278. package/dist/valibot.d.ts +52 -0
  279. package/dist/valibot.js +7 -0
  280. package/editor/{chunk-QCOYOVQL.js → chunk-B5WVJOPV.js} +113 -97
  281. package/editor/extensions/index.d.ts +14 -6
  282. package/editor/extensions/index.js +1 -1
  283. package/editor/index.js +1 -1
  284. package/editor.css +37 -20
  285. package/package.json +11 -3
  286. package/styles.css +46 -20
  287. package/theme-high-contrast.css +12 -0
  288. package/tokens.css +26 -0
  289. package/vue/{chunk-5KWCMTXB.js → chunk-D4AJULDE.js} +116 -17
  290. package/vue/editor/index.d.ts +5 -15
  291. package/vue/editor/index.js +1 -1
  292. package/vue/index.d.ts +447 -115
  293. package/vue/index.js +7 -1
  294. package/dist/components/p-CEYIKqYc.js +0 -1
  295. package/dist/components/p-CIA4RyEp.js +0 -1
  296. package/dist/components/p-PM9a74r7.js +0 -1
  297. package/dist/looma/p-0584a051.entry.js +0 -1
  298. package/dist/looma/p-078f9fb8.entry.js +0 -1
  299. package/dist/looma/p-0f45c5f0.entry.js +0 -1
  300. package/dist/looma/p-11083743.entry.js +0 -1
  301. package/dist/looma/p-1674cda4.entry.js +0 -1
  302. package/dist/looma/p-1681b218.entry.js +0 -1
  303. package/dist/looma/p-34417499.entry.js +0 -1
  304. package/dist/looma/p-4b422d40.entry.js +0 -1
  305. package/dist/looma/p-54722713.entry.js +0 -13
  306. package/dist/looma/p-54c41576.entry.js +0 -1
  307. package/dist/looma/p-5ba9d496.entry.js +0 -1
  308. package/dist/looma/p-5d4713a6.entry.js +0 -1
  309. package/dist/looma/p-624ba086.entry.js +0 -1
  310. package/dist/looma/p-8d5adb17.entry.js +0 -1
  311. package/dist/looma/p-9194a99d.entry.js +0 -1
  312. package/dist/looma/p-CEeiinfk.js +0 -2
  313. package/dist/looma/p-PM9a74r7.js +0 -1
  314. package/dist/looma/p-a33522a2.entry.js +0 -1
  315. package/dist/looma/p-a5127c7d.entry.js +0 -1
  316. package/dist/looma/p-a9f46811.entry.js +0 -1
  317. package/dist/looma/p-b7aa4488.entry.js +0 -1
  318. package/dist/looma/p-caa8fc7b.entry.js +0 -1
  319. package/dist/looma/p-e3f99a24.entry.js +0 -1
  320. package/dist/looma/p-ed5abf6d.entry.js +0 -1
  321. package/dist/ui-avatar-group.entry-BWS7E2CM.js +0 -59
  322. package/dist/ui-badge.entry-2WOBVOYP.js +0 -22
  323. package/dist/ui-button.entry-VCGSEONK.js +0 -71
  324. package/dist/ui-form-field.entry-SJ6NNFXB.js +0 -67
  325. package/dist/ui-menu-item.entry-V3HIMR75.js +0 -22
  326. package/dist/ui-tree-item.entry-45RR3CMP.js +0 -385
package/dist/index.d.cts CHANGED
@@ -107,6 +107,8 @@ declare const LOOMA_ICONS: {
107
107
  'align-right': IconNode;
108
108
  bold: IconNode;
109
109
  braces: IconNode;
110
+ 'circle-check': IconNode;
111
+ 'circle-x': IconNode;
110
112
  'chevron-down': IconNode;
111
113
  'chevron-left': IconNode;
112
114
  'code-xml': IconNode;
@@ -120,11 +122,13 @@ declare const LOOMA_ICONS: {
120
122
  'heading-3': IconNode;
121
123
  highlighter: IconNode;
122
124
  image: IconNode;
125
+ info: IconNode;
123
126
  italic: IconNode;
124
127
  list: IconNode;
125
128
  'list-ordered': IconNode;
126
129
  'list-todo': IconNode;
127
130
  merge: IconNode;
131
+ 'notebook-pen': IconNode;
128
132
  minus: IconNode;
129
133
  'paint-bucket': IconNode;
130
134
  'panel-bottom': IconNode;
@@ -140,6 +144,7 @@ declare const LOOMA_ICONS: {
140
144
  strikethrough: IconNode;
141
145
  table: IconNode;
142
146
  trash: IconNode;
147
+ 'triangle-alert': IconNode;
143
148
  underline: IconNode;
144
149
  undo: IconNode;
145
150
  };
@@ -164,4 +169,107 @@ declare function setElementDragImage(dataTransfer: DataTransfer | null, element:
164
169
  /** A keyed, replaceable hover timer suitable for expansion and disclosure intent. */
165
170
  declare function createHoverIntent(delay: number, onIntent: (key: string) => void): HoverIntentController;
166
171
 
167
- export { type AnchoredPlacement, type AnchoredSurface, type AnchoredSurfaceOptions, DEFAULT_AFFORDANCE_NEAR_RADIUS, type DropPosition, type HoverIntentController, LOOMA_ICONS, type LoomaIconName, type LoomaIconNode, type OverlayCloseReason, type OverlayRecord, type OverlayTrigger, type Point, type ProximityCoordinator, type ProximityCoordinatorOptions, type RectLike, type ViewportRect, type ViewportSurface, clampRectToViewport, classifyDropPosition, closeOverlay, createAnchoredSurface, createHoverIntent, createProximityCoordinator, createViewportSurface, distanceFromPointToRect, getTopOverlay, getVisualViewportRect, initializeInputModality, isTopOverlay, loomaIconMarkup, openOverlay, requestTopOverlayClose, setElementDragImage };
172
+ /** Structural Standard Schema v1 boundary; no schema-library runtime dependency. */
173
+ interface FieldSchema<Output = unknown> {
174
+ readonly '~standard': {
175
+ readonly version: 1;
176
+ readonly vendor: string;
177
+ readonly validate: (value: unknown) => FieldSchemaResult<Output> | Promise<FieldSchemaResult<Output>>;
178
+ readonly types?: {
179
+ readonly input: unknown;
180
+ readonly output: Output;
181
+ };
182
+ };
183
+ }
184
+ interface FieldIssue {
185
+ readonly message: string;
186
+ readonly path?: ReadonlyArray<PropertyKey | {
187
+ readonly key: PropertyKey;
188
+ }>;
189
+ readonly severity?: 'error' | 'warning';
190
+ }
191
+ type FieldSchemaResult<T = unknown> = {
192
+ readonly value: T;
193
+ readonly issues?: undefined;
194
+ } | {
195
+ readonly issues: readonly FieldIssue[];
196
+ };
197
+ interface FieldRequest<Context = unknown> {
198
+ raw: string;
199
+ value: string | null;
200
+ context: Context;
201
+ signal: AbortSignal;
202
+ }
203
+ interface FieldResult<Output = unknown> {
204
+ output?: Output;
205
+ issues: readonly FieldIssue[];
206
+ }
207
+ interface FieldValidation {
208
+ schema?: FieldSchema;
209
+ parse?: (raw: string, request: FieldRequest) => unknown | Promise<unknown>;
210
+ normalize?: (value: unknown, request: FieldRequest) => unknown | Promise<unknown>;
211
+ validator?: (value: unknown, request: FieldRequest) => Partial<FieldResult> | Promise<Partial<FieldResult>>;
212
+ issues?: readonly FieldIssue[];
213
+ }
214
+ interface FieldSelection {
215
+ start: number;
216
+ end: number;
217
+ direction?: 'forward' | 'backward' | 'none';
218
+ }
219
+ interface FieldFormat {
220
+ display: string;
221
+ selection: FieldSelection;
222
+ }
223
+ type FieldFormatter = (raw: string, selection: FieldSelection) => FieldFormat | undefined;
224
+ /** Formatting is additive: every original character must survive in order.
225
+ * Normalization belongs to submitted output, never the visible editing buffer. */
226
+ declare function formatEditingValue(raw: string, selection: FieldSelection, format?: FieldFormatter): FieldFormat;
227
+ declare function validateField(request: FieldRequest, config: FieldValidation): Promise<FieldResult>;
228
+
229
+ interface ComboboxOption<Metadata = unknown> {
230
+ id: string;
231
+ value: string;
232
+ label: string;
233
+ description?: string;
234
+ metadata?: Metadata;
235
+ group?: string;
236
+ disabled?: boolean;
237
+ }
238
+ interface ComboboxRequest<Context = unknown> {
239
+ query: string;
240
+ context: Context;
241
+ signal: AbortSignal;
242
+ reason: 'input' | 'disclosure' | 'context';
243
+ }
244
+ type ComboboxProvider = (request: ComboboxRequest) => readonly ComboboxOption[] | Promise<readonly ComboboxOption[]>;
245
+ /** Map domain records at the boundary, preserving typed metadata for rich rows. */
246
+ declare function mapComboboxOptions<T>(rows: readonly T[], map: (row: T) => Omit<ComboboxOption<T>, 'metadata'>): ComboboxOption<T>[];
247
+ interface ComboboxConfig extends FieldValidation {
248
+ options?: readonly ComboboxOption[];
249
+ provider?: ComboboxProvider;
250
+ filter?: (option: ComboboxOption, query: string, context: unknown) => boolean;
251
+ context?: unknown;
252
+ invalidation?: 'clear' | 'retain-query' | 'retain';
253
+ debounce?: number;
254
+ allowFreeText?: boolean;
255
+ allowCreate?: boolean;
256
+ format?: FieldFormatter;
257
+ formatOn?: 'input' | 'blur';
258
+ validateOn?: 'input' | 'blur' | 'submit';
259
+ }
260
+ interface ComboboxChange {
261
+ value: string | null;
262
+ query: string;
263
+ option: ComboboxOption | null;
264
+ kind: 'selection' | 'clear' | 'free-entry' | 'create' | 'invalidation';
265
+ trigger: 'keyboard' | 'pointer' | 'programmatic';
266
+ }
267
+ interface ComboboxValidationState {
268
+ status: 'pristine' | 'pending' | 'valid' | 'warning' | 'error';
269
+ touched: boolean;
270
+ dirty: boolean;
271
+ issues: readonly FieldIssue[];
272
+ output?: unknown;
273
+ }
274
+
275
+ export { type AnchoredPlacement, type AnchoredSurface, type AnchoredSurfaceOptions, type ComboboxChange, type ComboboxConfig, type ComboboxOption, type ComboboxProvider, type ComboboxRequest, type ComboboxValidationState, DEFAULT_AFFORDANCE_NEAR_RADIUS, type DropPosition, type FieldFormat, type FieldFormatter, type FieldIssue, type FieldRequest, type FieldResult, type FieldSchema, type FieldSchemaResult, type FieldSelection, type FieldValidation, type HoverIntentController, LOOMA_ICONS, type LoomaIconName, type LoomaIconNode, type OverlayCloseReason, type OverlayRecord, type OverlayTrigger, type Point, type ProximityCoordinator, type ProximityCoordinatorOptions, type RectLike, type ViewportRect, type ViewportSurface, clampRectToViewport, classifyDropPosition, closeOverlay, createAnchoredSurface, createHoverIntent, createProximityCoordinator, createViewportSurface, distanceFromPointToRect, formatEditingValue, getTopOverlay, getVisualViewportRect, initializeInputModality, isTopOverlay, loomaIconMarkup, mapComboboxOptions, openOverlay, requestTopOverlayClose, setElementDragImage, validateField };
package/dist/index.d.ts CHANGED
@@ -107,6 +107,8 @@ declare const LOOMA_ICONS: {
107
107
  'align-right': IconNode;
108
108
  bold: IconNode;
109
109
  braces: IconNode;
110
+ 'circle-check': IconNode;
111
+ 'circle-x': IconNode;
110
112
  'chevron-down': IconNode;
111
113
  'chevron-left': IconNode;
112
114
  'code-xml': IconNode;
@@ -120,11 +122,13 @@ declare const LOOMA_ICONS: {
120
122
  'heading-3': IconNode;
121
123
  highlighter: IconNode;
122
124
  image: IconNode;
125
+ info: IconNode;
123
126
  italic: IconNode;
124
127
  list: IconNode;
125
128
  'list-ordered': IconNode;
126
129
  'list-todo': IconNode;
127
130
  merge: IconNode;
131
+ 'notebook-pen': IconNode;
128
132
  minus: IconNode;
129
133
  'paint-bucket': IconNode;
130
134
  'panel-bottom': IconNode;
@@ -140,6 +144,7 @@ declare const LOOMA_ICONS: {
140
144
  strikethrough: IconNode;
141
145
  table: IconNode;
142
146
  trash: IconNode;
147
+ 'triangle-alert': IconNode;
143
148
  underline: IconNode;
144
149
  undo: IconNode;
145
150
  };
@@ -164,4 +169,107 @@ declare function setElementDragImage(dataTransfer: DataTransfer | null, element:
164
169
  /** A keyed, replaceable hover timer suitable for expansion and disclosure intent. */
165
170
  declare function createHoverIntent(delay: number, onIntent: (key: string) => void): HoverIntentController;
166
171
 
167
- export { type AnchoredPlacement, type AnchoredSurface, type AnchoredSurfaceOptions, DEFAULT_AFFORDANCE_NEAR_RADIUS, type DropPosition, type HoverIntentController, LOOMA_ICONS, type LoomaIconName, type LoomaIconNode, type OverlayCloseReason, type OverlayRecord, type OverlayTrigger, type Point, type ProximityCoordinator, type ProximityCoordinatorOptions, type RectLike, type ViewportRect, type ViewportSurface, clampRectToViewport, classifyDropPosition, closeOverlay, createAnchoredSurface, createHoverIntent, createProximityCoordinator, createViewportSurface, distanceFromPointToRect, getTopOverlay, getVisualViewportRect, initializeInputModality, isTopOverlay, loomaIconMarkup, openOverlay, requestTopOverlayClose, setElementDragImage };
172
+ /** Structural Standard Schema v1 boundary; no schema-library runtime dependency. */
173
+ interface FieldSchema<Output = unknown> {
174
+ readonly '~standard': {
175
+ readonly version: 1;
176
+ readonly vendor: string;
177
+ readonly validate: (value: unknown) => FieldSchemaResult<Output> | Promise<FieldSchemaResult<Output>>;
178
+ readonly types?: {
179
+ readonly input: unknown;
180
+ readonly output: Output;
181
+ };
182
+ };
183
+ }
184
+ interface FieldIssue {
185
+ readonly message: string;
186
+ readonly path?: ReadonlyArray<PropertyKey | {
187
+ readonly key: PropertyKey;
188
+ }>;
189
+ readonly severity?: 'error' | 'warning';
190
+ }
191
+ type FieldSchemaResult<T = unknown> = {
192
+ readonly value: T;
193
+ readonly issues?: undefined;
194
+ } | {
195
+ readonly issues: readonly FieldIssue[];
196
+ };
197
+ interface FieldRequest<Context = unknown> {
198
+ raw: string;
199
+ value: string | null;
200
+ context: Context;
201
+ signal: AbortSignal;
202
+ }
203
+ interface FieldResult<Output = unknown> {
204
+ output?: Output;
205
+ issues: readonly FieldIssue[];
206
+ }
207
+ interface FieldValidation {
208
+ schema?: FieldSchema;
209
+ parse?: (raw: string, request: FieldRequest) => unknown | Promise<unknown>;
210
+ normalize?: (value: unknown, request: FieldRequest) => unknown | Promise<unknown>;
211
+ validator?: (value: unknown, request: FieldRequest) => Partial<FieldResult> | Promise<Partial<FieldResult>>;
212
+ issues?: readonly FieldIssue[];
213
+ }
214
+ interface FieldSelection {
215
+ start: number;
216
+ end: number;
217
+ direction?: 'forward' | 'backward' | 'none';
218
+ }
219
+ interface FieldFormat {
220
+ display: string;
221
+ selection: FieldSelection;
222
+ }
223
+ type FieldFormatter = (raw: string, selection: FieldSelection) => FieldFormat | undefined;
224
+ /** Formatting is additive: every original character must survive in order.
225
+ * Normalization belongs to submitted output, never the visible editing buffer. */
226
+ declare function formatEditingValue(raw: string, selection: FieldSelection, format?: FieldFormatter): FieldFormat;
227
+ declare function validateField(request: FieldRequest, config: FieldValidation): Promise<FieldResult>;
228
+
229
+ interface ComboboxOption<Metadata = unknown> {
230
+ id: string;
231
+ value: string;
232
+ label: string;
233
+ description?: string;
234
+ metadata?: Metadata;
235
+ group?: string;
236
+ disabled?: boolean;
237
+ }
238
+ interface ComboboxRequest<Context = unknown> {
239
+ query: string;
240
+ context: Context;
241
+ signal: AbortSignal;
242
+ reason: 'input' | 'disclosure' | 'context';
243
+ }
244
+ type ComboboxProvider = (request: ComboboxRequest) => readonly ComboboxOption[] | Promise<readonly ComboboxOption[]>;
245
+ /** Map domain records at the boundary, preserving typed metadata for rich rows. */
246
+ declare function mapComboboxOptions<T>(rows: readonly T[], map: (row: T) => Omit<ComboboxOption<T>, 'metadata'>): ComboboxOption<T>[];
247
+ interface ComboboxConfig extends FieldValidation {
248
+ options?: readonly ComboboxOption[];
249
+ provider?: ComboboxProvider;
250
+ filter?: (option: ComboboxOption, query: string, context: unknown) => boolean;
251
+ context?: unknown;
252
+ invalidation?: 'clear' | 'retain-query' | 'retain';
253
+ debounce?: number;
254
+ allowFreeText?: boolean;
255
+ allowCreate?: boolean;
256
+ format?: FieldFormatter;
257
+ formatOn?: 'input' | 'blur';
258
+ validateOn?: 'input' | 'blur' | 'submit';
259
+ }
260
+ interface ComboboxChange {
261
+ value: string | null;
262
+ query: string;
263
+ option: ComboboxOption | null;
264
+ kind: 'selection' | 'clear' | 'free-entry' | 'create' | 'invalidation';
265
+ trigger: 'keyboard' | 'pointer' | 'programmatic';
266
+ }
267
+ interface ComboboxValidationState {
268
+ status: 'pristine' | 'pending' | 'valid' | 'warning' | 'error';
269
+ touched: boolean;
270
+ dirty: boolean;
271
+ issues: readonly FieldIssue[];
272
+ output?: unknown;
273
+ }
274
+
275
+ export { type AnchoredPlacement, type AnchoredSurface, type AnchoredSurfaceOptions, type ComboboxChange, type ComboboxConfig, type ComboboxOption, type ComboboxProvider, type ComboboxRequest, type ComboboxValidationState, DEFAULT_AFFORDANCE_NEAR_RADIUS, type DropPosition, type FieldFormat, type FieldFormatter, type FieldIssue, type FieldRequest, type FieldResult, type FieldSchema, type FieldSchemaResult, type FieldSelection, type FieldValidation, type HoverIntentController, LOOMA_ICONS, type LoomaIconName, type LoomaIconNode, type OverlayCloseReason, type OverlayRecord, type OverlayTrigger, type Point, type ProximityCoordinator, type ProximityCoordinatorOptions, type RectLike, type ViewportRect, type ViewportSurface, clampRectToViewport, classifyDropPosition, closeOverlay, createAnchoredSurface, createHoverIntent, createProximityCoordinator, createViewportSurface, distanceFromPointToRect, formatEditingValue, getTopOverlay, getVisualViewportRect, initializeInputModality, isTopOverlay, loomaIconMarkup, mapComboboxOptions, openOverlay, requestTopOverlayClose, setElementDragImage, validateField };
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  bootstrapLazy
3
- } from "./chunk-NIPNHZ5W.js";
3
+ } from "./chunk-IMHSPETJ.js";
4
4
 
5
5
  // dist/esm/app-globals-DQuL1Twl.js
6
6
  var globalScripts = () => {
@@ -10,7 +10,7 @@ var globalScripts = () => {
10
10
  var defineCustomElements = async (win, options) => {
11
11
  if (typeof window === "undefined") return void 0;
12
12
  await globalScripts();
13
- return bootstrapLazy([["ui-context-menu", [[769, "ui-context-menu", { "open": [4], "defaultOpen": [4, "default-open"], "for": [1], "internalOpen": [32], "focusTrigger": [32] }, null, { "open": [{ "syncFromProp": 0 }], "for": [{ "syncTarget": 0 }], "internalOpen": [{ "syncOverlay": 0 }] }]]], ["ui-affordance-scope", [[769, "ui-affordance-scope", { "nearRadius": [514, "near-radius"] }, null, { "nearRadius": [{ "connectCoordinator": 0 }] }]]], ["ui-avatar", [[513, "ui-avatar", { "src": [1], "alt": [1], "name": [1], "fallback": [1], "hasImage": [32] }, null, { "src": [{ "watchSrc": 0 }] }]]], ["ui-avatar-group", [[769, "ui-avatar-group", { "max": [2], "label": [1], "overflowCount": [32] }, null, { "max": [{ "syncOverflow": 0 }] }]]], ["ui-badge", [[769, "ui-badge", { "variant": [1], "tone": [1] }]]], ["ui-button", [[769, "ui-button", { "variant": [1], "size": [1], "disabled": [4] }, null, { "variant": [{ "syncToButton": 0 }], "size": [{ "syncToButton": 0 }], "disabled": [{ "syncToButton": 0 }] }]]], ["ui-checkbox", [[769, "ui-checkbox", { "checked": [4], "defaultChecked": [4, "default-checked"], "disabled": [4], "indeterminate": [4], "required": [4], "value": [1], "internalChecked": [32] }, null, { "checked": [{ "syncFromProp": 0 }], "internalChecked": [{ "syncToInput": 0 }], "indeterminate": [{ "syncToInput": 0 }], "disabled": [{ "syncToInput": 0 }], "required": [{ "syncToInput": 0 }] }]]], ["ui-dialog", [[769, "ui-dialog", { "open": [4], "defaultOpen": [4, "default-open"], "modal": [4], "dismissible": [4], "label": [1], "internalOpen": [32] }, null, { "open": [{ "syncFromProp": 0 }], "internalOpen": [{ "syncOpen": 0 }] }]]], ["ui-disclosure", [[769, "ui-disclosure", { "open": [4], "defaultOpen": [4, "default-open"], "disabled": [4], "internalOpen": [32], "contentId": [32] }, null, { "open": [{ "syncFromProp": 0 }], "internalOpen": [{ "syncState": 0 }] }]]], ["ui-floating-action-button", [[769, "ui-floating-action-button", { "disabled": [516], "mobileOnly": [516, "mobile-only"], "label": [1] }]]], ["ui-form-field", [[769, "ui-form-field", { "invalid": [4], "disabled": [4], "required": [4] }]]], ["ui-icon-button", [[769, "ui-icon-button", { "disabled": [516], "label": [1], "size": [513], "variant": [513], "anticipatory": [516] }]]], ["ui-input", [[769, "ui-input", { "value": [1], "defaultValue": [1, "default-value"], "disabled": [4], "invalid": [4], "readOnly": [4, "readonly"], "internalValue": [32] }, null, { "value": [{ "syncFromProp": 0 }], "internalValue": [{ "syncToInput": 0 }], "defaultValue": [{ "syncToInput": 0 }], "disabled": [{ "syncToInput": 0 }], "invalid": [{ "syncToInput": 0 }], "readOnly": [{ "syncToInput": 0 }] }]]], ["ui-menu-item", [[769, "ui-menu-item", { "disabled": [516], "value": [1] }]]], ["ui-popover", [[769, "ui-popover", { "open": [4], "defaultOpen": [4, "default-open"], "for": [1], "placement": [1], "internalOpen": [32] }, null, { "open": [{ "syncFromProp": 0 }], "internalOpen": [{ "onOpenChange": 0 }], "for": [{ "resetSurface": 0 }], "placement": [{ "resetSurface": 0 }] }]]], ["ui-radio", [[769, "ui-radio", { "checked": [4], "defaultChecked": [4, "default-checked"], "disabled": [4], "name": [1], "required": [4], "value": [1] }, null, { "checked": [{ "syncToInput": 0 }], "disabled": [{ "syncToInput": 0 }], "name": [{ "syncToInput": 0 }], "required": [{ "syncToInput": 0 }], "value": [{ "syncToInput": 0 }] }]]], ["ui-radio-group", [[769, "ui-radio-group", { "value": [1], "name": [1], "orientation": [1], "disabled": [4], "required": [4], "internalValue": [32] }, null, { "value": [{ "syncFromProp": 0 }], "internalValue": [{ "syncToRadios": 0 }], "name": [{ "syncToRadios": 0 }], "orientation": [{ "syncToRadios": 0 }], "disabled": [{ "syncToRadios": 0 }] }]]], ["ui-search-result-row", [[769, "ui-search-result-row", { "disabled": [516], "selected": [516], "hasLeading": [32], "hasMeta": [32], "hasExcerpt": [32], "hasTrailing": [32] }]]], ["ui-search-shell", [[769, "ui-search-shell", { "hasStatus": [32], "hasFooter": [32] }]]], ["ui-select", [[769, "ui-select", { "value": [1], "defaultValue": [1, "default-value"], "disabled": [4], "invalid": [4], "required": [4], "internalValue": [32] }, null, { "value": [{ "syncFromProp": 0 }], "internalValue": [{ "syncToSelect": 0 }], "defaultValue": [{ "syncToSelect": 0 }], "disabled": [{ "syncToSelect": 0 }], "invalid": [{ "syncToSelect": 0 }], "required": [{ "syncToSelect": 0 }] }]]], ["ui-switch", [[769, "ui-switch", { "checked": [4], "defaultChecked": [4, "default-checked"], "disabled": [4], "required": [4], "value": [1], "internalChecked": [32] }, null, { "checked": [{ "syncFromProp": 0 }] }]]], ["ui-tabs", [[769, "ui-tabs", { "value": [1], "defaultValue": [1, "default-value"], "orientation": [1], "internalValue": [32] }, null, { "value": [{ "syncFromProp": 0 }], "internalValue": [{ "syncState": 0 }], "orientation": [{ "syncState": 0 }] }]]], ["ui-textarea", [[769, "ui-textarea", { "value": [1], "defaultValue": [1, "default-value"], "disabled": [4], "invalid": [4], "readOnly": [4, "readonly"], "rows": [2], "internalValue": [32] }, null, { "value": [{ "syncFromProp": 0 }], "internalValue": [{ "syncToTextarea": 0 }], "defaultValue": [{ "syncToTextarea": 0 }], "disabled": [{ "syncToTextarea": 0 }], "invalid": [{ "syncToTextarea": 0 }], "readOnly": [{ "syncToTextarea": 0 }], "rows": [{ "syncToTextarea": 0 }] }]]], ["ui-toast-region", [[769, "ui-toast-region", { "open": [4], "internalOpen": [32] }, null, { "open": [{ "syncFromProp": 0 }], "internalOpen": [{ "syncSurface": 0 }] }]]], ["ui-tooltip", [[769, "ui-tooltip", { "for": [1], "open": [4], "defaultOpen": [4, "default-open"], "placement": [1], "showDelay": [2, "show-delay"], "hideDelay": [2, "hide-delay"], "internalOpen": [32] }, null, { "open": [{ "syncFromProp": 0 }], "for": [{ "resetSurface": 0 }], "placement": [{ "resetSurface": 0 }], "internalOpen": [{ "syncOverlay": 0 }] }]]], ["ui-top-bar", [[769, "ui-top-bar", { "hasLeading": [32], "hasSearch": [32], "hasActions": [32] }]]], ["ui-tree", [[769, "ui-tree", { "label": [1], "hoverExpandDelay": [2, "hover-expand-delay"] }]]], ["ui-tree-item", [[769, "ui-tree-item", { "itemId": [1, "item-id"], "label": [1], "depth": [2], "container": [4], "sortable": [4], "dragType": [1, "drag-type"], "dropScope": [1, "drop-scope"], "accepts": [1], "expanded": [4], "defaultExpanded": [4, "default-expanded"], "selected": [4], "disabled": [4], "internalExpanded": [32] }, null, { "expanded": [{ "syncExpandedFromProp": 0 }] }]]], ["ui-menu", [[769, "ui-menu", { "open": [4], "defaultOpen": [4, "default-open"], "for": [1], "placement": [1], "internalOpen": [32] }, null, { "open": [{ "syncFromProp": 0 }], "for": [{ "resetSurface": 0 }], "placement": [{ "resetSurface": 0 }], "internalOpen": [{ "syncSurface": 0 }] }]]]], options);
13
+ return bootstrapLazy([["ui-combobox", [[769, "ui-combobox", { "label": [1], "placeholder": [1], "name": [1], "value": [1], "defaultValue": [1, "default-value"], "query": [1], "defaultQuery": [1, "default-query"], "config": [16], "disabled": [4], "readOnly": [4, "readonly"], "required": [4], "size": [1], "disclosure": [4], "clearable": [4], "help": [1], "raw": [32], "display": [32], "selected": [32], "expanded": [32], "rows": [32], "active": [32], "loading": [32], "helpOpen": [32], "lookupError": [32], "validation": [32], "validate": [64] }, null, { "value": [{ "syncValue": 0 }], "query": [{ "syncQuery": 0 }], "disabled": [{ "syncDisabled": 0 }], "readOnly": [{ "syncDisabled": 0 }], "config": [{ "syncConfig": 0 }] }]]], ["ui-context-menu", [[769, "ui-context-menu", { "open": [4], "defaultOpen": [4, "default-open"], "for": [1], "internalOpen": [32], "focusTrigger": [32] }, null, { "open": [{ "syncFromProp": 0 }], "for": [{ "syncTarget": 0 }], "internalOpen": [{ "syncOverlay": 0 }] }]]], ["ui-affordance-scope", [[769, "ui-affordance-scope", { "nearRadius": [514, "near-radius"] }, null, { "nearRadius": [{ "connectCoordinator": 0 }] }]]], ["ui-avatar", [[513, "ui-avatar", { "src": [1], "alt": [1], "name": [1], "fallback": [1], "hasImage": [32] }, null, { "src": [{ "watchSrc": 0 }] }]]], ["ui-avatar-group", [[769, "ui-avatar-group", { "max": [2], "label": [1], "overflowCount": [32] }, null, { "max": [{ "syncOverflow": 0 }] }]]], ["ui-badge", [[769, "ui-badge", { "variant": [1], "tone": [1] }]]], ["ui-button", [[769, "ui-button", { "variant": [1], "size": [1], "disabled": [4] }, null, { "variant": [{ "syncToButton": 0 }], "size": [{ "syncToButton": 0 }], "disabled": [{ "syncToButton": 0 }] }]]], ["ui-callout", [[769, "ui-callout", { "tone": [1] }]]], ["ui-checkbox", [[769, "ui-checkbox", { "checked": [4], "defaultChecked": [4, "default-checked"], "disabled": [4], "indeterminate": [4], "required": [4], "value": [1], "internalChecked": [32] }, null, { "checked": [{ "syncFromProp": 0 }], "internalChecked": [{ "syncToInput": 0 }], "indeterminate": [{ "syncToInput": 0 }], "disabled": [{ "syncToInput": 0 }], "required": [{ "syncToInput": 0 }] }]]], ["ui-chip", [[769, "ui-chip", { "appearance": [1] }]]], ["ui-dialog", [[769, "ui-dialog", { "open": [4], "defaultOpen": [4, "default-open"], "modal": [4], "dismissible": [4], "label": [1], "internalOpen": [32], "accessibleLabel": [32] }, null, { "open": [{ "syncFromProp": 0 }], "label": [{ "syncLabelFromProp": 0 }], "internalOpen": [{ "syncOpen": 0 }] }]]], ["ui-disclosure", [[769, "ui-disclosure", { "open": [4], "defaultOpen": [4, "default-open"], "disabled": [4], "internalOpen": [32], "contentId": [32] }, null, { "open": [{ "syncFromProp": 0 }], "internalOpen": [{ "syncState": 0 }] }]]], ["ui-floating-action-button", [[769, "ui-floating-action-button", { "disabled": [516], "mobileOnly": [516, "mobile-only"], "label": [1] }]]], ["ui-form-field", [[769, "ui-form-field", { "invalid": [4], "disabled": [4], "required": [4] }]]], ["ui-icon-button", [[769, "ui-icon-button", { "disabled": [516], "label": [1], "size": [513], "variant": [513], "anticipatory": [516] }]]], ["ui-input", [[769, "ui-input", { "value": [1], "defaultValue": [1, "default-value"], "disabled": [4], "invalid": [4], "readOnly": [4, "readonly"], "internalValue": [32] }, null, { "value": [{ "syncFromProp": 0 }], "internalValue": [{ "syncToInput": 0 }], "defaultValue": [{ "syncToInput": 0 }], "disabled": [{ "syncToInput": 0 }], "invalid": [{ "syncToInput": 0 }], "readOnly": [{ "syncToInput": 0 }] }]]], ["ui-menu-item", [[769, "ui-menu-item", { "disabled": [516], "value": [1] }]]], ["ui-popover", [[769, "ui-popover", { "open": [4], "defaultOpen": [4, "default-open"], "for": [1], "placement": [1], "internalOpen": [32] }, null, { "open": [{ "syncFromProp": 0 }], "internalOpen": [{ "onOpenChange": 0 }], "for": [{ "resetSurface": 0 }], "placement": [{ "resetSurface": 0 }] }]]], ["ui-radio", [[769, "ui-radio", { "checked": [4], "defaultChecked": [4, "default-checked"], "disabled": [4], "name": [1], "required": [4], "value": [1], "internalChecked": [32] }, null, { "checked": [{ "syncFromProp": 0 }], "disabled": [{ "syncToInput": 0 }], "name": [{ "syncToInput": 0 }], "required": [{ "syncToInput": 0 }], "value": [{ "syncToInput": 0 }] }]]], ["ui-radio-group", [[769, "ui-radio-group", { "value": [1], "name": [1], "orientation": [1], "disabled": [4], "required": [4], "internalValue": [32] }, null, { "value": [{ "syncFromProp": 0 }], "internalValue": [{ "syncToRadios": 0 }], "name": [{ "syncToRadios": 0 }], "orientation": [{ "syncToRadios": 0 }], "disabled": [{ "syncToRadios": 0 }] }]]], ["ui-search-result-row", [[769, "ui-search-result-row", { "disabled": [516], "selected": [516], "hasLeading": [32], "hasMeta": [32], "hasExcerpt": [32], "hasTrailing": [32] }]]], ["ui-search-shell", [[769, "ui-search-shell", { "hasStatus": [32], "hasFooter": [32] }]]], ["ui-select", [[769, "ui-select", { "value": [1], "defaultValue": [1, "default-value"], "disabled": [4], "invalid": [4], "required": [4], "internalValue": [32] }, null, { "value": [{ "syncFromProp": 0 }], "internalValue": [{ "syncToSelect": 0 }], "defaultValue": [{ "syncToSelect": 0 }], "disabled": [{ "syncToSelect": 0 }], "invalid": [{ "syncToSelect": 0 }], "required": [{ "syncToSelect": 0 }] }]]], ["ui-switch", [[769, "ui-switch", { "checked": [4], "defaultChecked": [4, "default-checked"], "disabled": [4], "required": [4], "value": [1], "internalChecked": [32] }, null, { "checked": [{ "syncFromProp": 0 }] }]]], ["ui-tabs", [[769, "ui-tabs", { "value": [1], "defaultValue": [1, "default-value"], "orientation": [1], "internalValue": [32] }, null, { "value": [{ "syncFromProp": 0 }], "internalValue": [{ "syncState": 0 }], "orientation": [{ "syncState": 0 }] }]]], ["ui-textarea", [[769, "ui-textarea", { "value": [1], "defaultValue": [1, "default-value"], "disabled": [4], "invalid": [4], "readOnly": [4, "readonly"], "rows": [2], "internalValue": [32] }, null, { "value": [{ "syncFromProp": 0 }], "internalValue": [{ "syncToTextarea": 0 }], "defaultValue": [{ "syncToTextarea": 0 }], "disabled": [{ "syncToTextarea": 0 }], "invalid": [{ "syncToTextarea": 0 }], "readOnly": [{ "syncToTextarea": 0 }], "rows": [{ "syncToTextarea": 0 }] }]]], ["ui-toast-region", [[769, "ui-toast-region", { "open": [4], "internalOpen": [32] }, null, { "open": [{ "syncFromProp": 0 }], "internalOpen": [{ "syncSurface": 0 }] }]]], ["ui-top-bar", [[769, "ui-top-bar", { "hasLeading": [32], "hasSearch": [32], "hasActions": [32] }]]], ["ui-tree", [[769, "ui-tree", { "label": [1], "hoverExpandDelay": [2, "hover-expand-delay"], "maxDepth": [2, "max-depth"] }]]], ["ui-tree-item", [[769, "ui-tree-item", { "itemId": [1, "item-id"], "label": [1], "dropDepth": [2, "drop-depth"], "subtreeDepth": [2, "subtree-depth"], "container": [4], "sortable": [4], "dragType": [1, "drag-type"], "dropScope": [1, "drop-scope"], "accepts": [1], "expanded": [4], "defaultExpanded": [4, "default-expanded"], "selected": [4], "disabled": [4], "internalExpanded": [32], "structuralLevel": [32], "tabStop": [32] }, null, { "expanded": [{ "syncExpandedFromProp": 0 }] }]]], ["ui-menu", [[769, "ui-menu", { "open": [4], "defaultOpen": [4, "default-open"], "for": [1], "placement": [1], "internalOpen": [32] }, null, { "open": [{ "syncFromProp": 0 }], "for": [{ "resetSurface": 0 }], "placement": [{ "resetSurface": 0 }], "internalOpen": [{ "syncSurface": 0 }] }]]], ["ui-tooltip", [[769, "ui-tooltip", { "for": [1], "open": [4], "defaultOpen": [4, "default-open"], "placement": [1], "showDelay": [2, "show-delay"], "hideDelay": [2, "hide-delay"], "toggleOnClick": [4, "toggle-on-click"], "internalOpen": [32] }, null, { "open": [{ "syncFromProp": 0 }], "for": [{ "resetSurface": 0 }], "placement": [{ "resetSurface": 0 }], "internalOpen": [{ "syncOverlay": 0 }] }]]]], options);
14
14
  };
15
15
 
16
16
  // loader/index.js
@@ -76,11 +76,8 @@ function handleLightDismiss(event) {
76
76
  if (!top || !getOverlayDismissible(top)) {
77
77
  return;
78
78
  }
79
- const target = event.target;
80
- if (target instanceof Node) {
81
- if (top.element.contains(target)) return;
82
- if (top.relatedElements?.some((element) => element.contains(target))) return;
83
- }
79
+ const boundary = [top.element, ...top.relatedElements ?? []];
80
+ if (event.composedPath().some((target) => target instanceof Node && boundary.some((element) => element.contains(target)))) return;
84
81
  requestTopOverlayClose("light-dismiss", "pointer");
85
82
  }
86
83
  function ensureListeners() {
@@ -477,6 +474,8 @@ import {
477
474
  ChevronDown,
478
475
  ChevronLeft,
479
476
  CodeXml,
477
+ CircleCheck,
478
+ CircleX,
480
479
  Columns3,
481
480
  Ellipsis,
482
481
  Eraser,
@@ -487,11 +486,13 @@ import {
487
486
  Heading3,
488
487
  Highlighter,
489
488
  Image,
489
+ Info,
490
490
  Italic,
491
491
  List,
492
492
  ListOrdered,
493
493
  ListTodo,
494
494
  Merge,
495
+ NotebookPen,
495
496
  Minus,
496
497
  PaintBucket,
497
498
  PanelBottom,
@@ -507,6 +508,7 @@ import {
507
508
  Strikethrough,
508
509
  Table2,
509
510
  Trash2,
511
+ TriangleAlert,
510
512
  Underline,
511
513
  Undo2
512
514
  } from "lucide";
@@ -516,6 +518,8 @@ var LOOMA_ICONS = {
516
518
  "align-right": AlignRight,
517
519
  bold: Bold,
518
520
  braces: Braces,
521
+ "circle-check": CircleCheck,
522
+ "circle-x": CircleX,
519
523
  "chevron-down": ChevronDown,
520
524
  "chevron-left": ChevronLeft,
521
525
  "code-xml": CodeXml,
@@ -529,11 +533,13 @@ var LOOMA_ICONS = {
529
533
  "heading-3": Heading3,
530
534
  highlighter: Highlighter,
531
535
  image: Image,
536
+ info: Info,
532
537
  italic: Italic,
533
538
  list: List,
534
539
  "list-ordered": ListOrdered,
535
540
  "list-todo": ListTodo,
536
541
  merge: Merge,
542
+ "notebook-pen": NotebookPen,
537
543
  minus: Minus,
538
544
  "paint-bucket": PaintBucket,
539
545
  "panel-bottom": PanelBottom,
@@ -549,6 +555,7 @@ var LOOMA_ICONS = {
549
555
  strikethrough: Strikethrough,
550
556
  table: Table2,
551
557
  trash: Trash2,
558
+ "triangle-alert": TriangleAlert,
552
559
  underline: Underline,
553
560
  undo: Undo2
554
561
  };
@@ -610,6 +617,60 @@ function createHoverIntent(delay, onIntent) {
610
617
  };
611
618
  }
612
619
 
620
+ // src/field/combobox.ts
621
+ function mapComboboxOptions(rows, map) {
622
+ return rows.map((row) => ({ ...map(row), metadata: row }));
623
+ }
624
+
625
+ // src/field/validation.ts
626
+ function formatEditingValue(raw, selection, format) {
627
+ const unchanged = { display: raw, selection };
628
+ if (!format) return unchanged;
629
+ let result;
630
+ try {
631
+ result = format(raw, selection);
632
+ } catch {
633
+ return unchanged;
634
+ }
635
+ if (!result) return unchanged;
636
+ const characters = Array.from(raw);
637
+ let cursor = 0;
638
+ for (const character of result.display) if (character === characters[cursor]) cursor += 1;
639
+ if (!Number.isInteger(result.selection.start) || !Number.isInteger(result.selection.end) || cursor !== characters.length || result.selection.start < 0 || result.selection.end < result.selection.start || result.selection.end > result.display.length) return unchanged;
640
+ return result;
641
+ }
642
+ async function validateField(request, config) {
643
+ let output = request.raw;
644
+ let issues = [];
645
+ const check = () => request.signal.throwIfAborted();
646
+ try {
647
+ check();
648
+ if (config.parse) output = await config.parse(request.raw, request);
649
+ check();
650
+ if (config.schema) {
651
+ const result = await config.schema["~standard"].validate(output);
652
+ check();
653
+ if (result.issues) issues = result.issues;
654
+ else if ("value" in result) output = result.value;
655
+ }
656
+ if (!issues.some((issue) => issue.severity !== "warning")) {
657
+ if (config.normalize) output = await config.normalize(output, request);
658
+ check();
659
+ if (config.validator) {
660
+ const result = await config.validator(output, request);
661
+ check();
662
+ issues = [...issues, ...result.issues ?? []];
663
+ if ("output" in result) output = result.output;
664
+ }
665
+ }
666
+ } catch (error) {
667
+ check();
668
+ issues = [{ message: error instanceof Error ? error.message : "Unable to validate this value." }];
669
+ }
670
+ issues = [...issues, ...config.issues ?? []];
671
+ return { output: issues.some((issue) => issue.severity !== "warning") ? void 0 : output, issues };
672
+ }
673
+
613
674
  // index.ts
614
675
  if (typeof document !== "undefined") initializeInputModality(document);
615
676
  defineCustomElements();
@@ -624,12 +685,15 @@ export {
624
685
  createProximityCoordinator,
625
686
  createViewportSurface,
626
687
  distanceFromPointToRect,
688
+ formatEditingValue,
627
689
  getTopOverlay,
628
690
  getVisualViewportRect,
629
691
  initializeInputModality,
630
692
  isTopOverlay,
631
693
  loomaIconMarkup,
694
+ mapComboboxOptions,
632
695
  openOverlay,
633
696
  requestTopOverlayClose,
634
- setElementDragImage
697
+ setElementDragImage,
698
+ validateField
635
699
  };
@@ -1 +1 @@
1
- import{p as e,b as a}from"./p-CEeiinfk.js";export{s as setNonce}from"./p-CEeiinfk.js";import{g as n}from"./p-DQuL1Twl.js";(()=>{const a=import.meta.url,n={};return""!==a&&(n.resourcesUrl=new URL(".",a).href),e(n)})().then((async e=>(await n(),a([["p-063f5a89",[[769,"ui-context-menu",{open:[4],defaultOpen:[4,"default-open"],for:[1],internalOpen:[32],focusTrigger:[32]},null,{open:[{syncFromProp:0}],for:[{syncTarget:0}],internalOpen:[{syncOverlay:0}]}]]],["p-2e6f791e",[[769,"ui-affordance-scope",{nearRadius:[514,"near-radius"]},null,{nearRadius:[{connectCoordinator:0}]}]]],["p-1681b218",[[513,"ui-avatar",{src:[1],alt:[1],name:[1],fallback:[1],hasImage:[32]},null,{src:[{watchSrc:0}]}]]],["p-5ba9d496",[[769,"ui-avatar-group",{max:[2],label:[1],overflowCount:[32]},null,{max:[{syncOverflow:0}]}]]],["p-0584a051",[[769,"ui-badge",{variant:[1],tone:[1]}]]],["p-34417499",[[769,"ui-button",{variant:[1],size:[1],disabled:[4]},null,{variant:[{syncToButton:0}],size:[{syncToButton:0}],disabled:[{syncToButton:0}]}]]],["p-0f45c5f0",[[769,"ui-checkbox",{checked:[4],defaultChecked:[4,"default-checked"],disabled:[4],indeterminate:[4],required:[4],value:[1],internalChecked:[32]},null,{checked:[{syncFromProp:0}],internalChecked:[{syncToInput:0}],indeterminate:[{syncToInput:0}],disabled:[{syncToInput:0}],required:[{syncToInput:0}]}]]],["p-11083743",[[769,"ui-dialog",{open:[4],defaultOpen:[4,"default-open"],modal:[4],dismissible:[4],label:[1],internalOpen:[32]},null,{open:[{syncFromProp:0}],internalOpen:[{syncOpen:0}]}]]],["p-a9f46811",[[769,"ui-disclosure",{open:[4],defaultOpen:[4,"default-open"],disabled:[4],internalOpen:[32],contentId:[32]},null,{open:[{syncFromProp:0}],internalOpen:[{syncState:0}]}]]],["p-051f578c",[[769,"ui-floating-action-button",{disabled:[516],mobileOnly:[516,"mobile-only"],label:[1]}]]],["p-5d4713a6",[[769,"ui-form-field",{invalid:[4],disabled:[4],required:[4]}]]],["p-0198bb21",[[769,"ui-icon-button",{disabled:[516],label:[1],size:[513],variant:[513],anticipatory:[516]}]]],["p-624ba086",[[769,"ui-input",{value:[1],defaultValue:[1,"default-value"],disabled:[4],invalid:[4],readOnly:[4,"readonly"],internalValue:[32]},null,{value:[{syncFromProp:0}],internalValue:[{syncToInput:0}],defaultValue:[{syncToInput:0}],disabled:[{syncToInput:0}],invalid:[{syncToInput:0}],readOnly:[{syncToInput:0}]}]]],["p-ed5abf6d",[[769,"ui-menu-item",{disabled:[516],value:[1]}]]],["p-caa8fc7b",[[769,"ui-popover",{open:[4],defaultOpen:[4,"default-open"],for:[1],placement:[1],internalOpen:[32]},null,{open:[{syncFromProp:0}],internalOpen:[{onOpenChange:0}],for:[{resetSurface:0}],placement:[{resetSurface:0}]}]]],["p-8d5adb17",[[769,"ui-radio",{checked:[4],defaultChecked:[4,"default-checked"],disabled:[4],name:[1],required:[4],value:[1]},null,{checked:[{syncToInput:0}],disabled:[{syncToInput:0}],name:[{syncToInput:0}],required:[{syncToInput:0}],value:[{syncToInput:0}]}]]],["p-7e94d90d",[[769,"ui-radio-group",{value:[1],name:[1],orientation:[1],disabled:[4],required:[4],internalValue:[32]},null,{value:[{syncFromProp:0}],internalValue:[{syncToRadios:0}],name:[{syncToRadios:0}],orientation:[{syncToRadios:0}],disabled:[{syncToRadios:0}]}]]],["p-2ed7e241",[[769,"ui-search-result-row",{disabled:[516],selected:[516],hasLeading:[32],hasMeta:[32],hasExcerpt:[32],hasTrailing:[32]}]]],["p-d273b857",[[769,"ui-search-shell",{hasStatus:[32],hasFooter:[32]}]]],["p-a5127c7d",[[769,"ui-select",{value:[1],defaultValue:[1,"default-value"],disabled:[4],invalid:[4],required:[4],internalValue:[32]},null,{value:[{syncFromProp:0}],internalValue:[{syncToSelect:0}],defaultValue:[{syncToSelect:0}],disabled:[{syncToSelect:0}],invalid:[{syncToSelect:0}],required:[{syncToSelect:0}]}]]],["p-b7aa4488",[[769,"ui-switch",{checked:[4],defaultChecked:[4,"default-checked"],disabled:[4],required:[4],value:[1],internalChecked:[32]},null,{checked:[{syncFromProp:0}]}]]],["p-078f9fb8",[[769,"ui-tabs",{value:[1],defaultValue:[1,"default-value"],orientation:[1],internalValue:[32]},null,{value:[{syncFromProp:0}],internalValue:[{syncState:0}],orientation:[{syncState:0}]}]]],["p-4b422d40",[[769,"ui-textarea",{value:[1],defaultValue:[1,"default-value"],disabled:[4],invalid:[4],readOnly:[4,"readonly"],rows:[2],internalValue:[32]},null,{value:[{syncFromProp:0}],internalValue:[{syncToTextarea:0}],defaultValue:[{syncToTextarea:0}],disabled:[{syncToTextarea:0}],invalid:[{syncToTextarea:0}],readOnly:[{syncToTextarea:0}],rows:[{syncToTextarea:0}]}]]],["p-54c41576",[[769,"ui-toast-region",{open:[4],internalOpen:[32]},null,{open:[{syncFromProp:0}],internalOpen:[{syncSurface:0}]}]]],["p-9194a99d",[[769,"ui-tooltip",{for:[1],open:[4],defaultOpen:[4,"default-open"],placement:[1],showDelay:[2,"show-delay"],hideDelay:[2,"hide-delay"],internalOpen:[32]},null,{open:[{syncFromProp:0}],for:[{resetSurface:0}],placement:[{resetSurface:0}],internalOpen:[{syncOverlay:0}]}]]],["p-a33522a2",[[769,"ui-top-bar",{hasLeading:[32],hasSearch:[32],hasActions:[32]}]]],["p-e3f99a24",[[769,"ui-tree",{label:[1],hoverExpandDelay:[2,"hover-expand-delay"]}]]],["p-54722713",[[769,"ui-tree-item",{itemId:[1,"item-id"],label:[1],depth:[2],container:[4],sortable:[4],dragType:[1,"drag-type"],dropScope:[1,"drop-scope"],accepts:[1],expanded:[4],defaultExpanded:[4,"default-expanded"],selected:[4],disabled:[4],internalExpanded:[32]},null,{expanded:[{syncExpandedFromProp:0}]}]]],["p-1674cda4",[[769,"ui-menu",{open:[4],defaultOpen:[4,"default-open"],for:[1],placement:[1],internalOpen:[32]},null,{open:[{syncFromProp:0}],for:[{resetSurface:0}],placement:[{resetSurface:0}],internalOpen:[{syncSurface:0}]}]]]],e))));
1
+ import{p as e,b as a}from"./p-8BGiMGQ0.js";export{s as setNonce}from"./p-8BGiMGQ0.js";import{g as n}from"./p-DQuL1Twl.js";(()=>{const a=import.meta.url,n={};return""!==a&&(n.resourcesUrl=new URL(".",a).href),e(n)})().then((async e=>(await n(),a([["p-97e8cb0e",[[769,"ui-combobox",{label:[1],placeholder:[1],name:[1],value:[1],defaultValue:[1,"default-value"],query:[1],defaultQuery:[1,"default-query"],config:[16],disabled:[4],readOnly:[4,"readonly"],required:[4],size:[1],disclosure:[4],clearable:[4],help:[1],raw:[32],display:[32],selected:[32],expanded:[32],rows:[32],active:[32],loading:[32],helpOpen:[32],lookupError:[32],validation:[32],validate:[64]},null,{value:[{syncValue:0}],query:[{syncQuery:0}],disabled:[{syncDisabled:0}],readOnly:[{syncDisabled:0}],config:[{syncConfig:0}]}]]],["p-5a900d89",[[769,"ui-context-menu",{open:[4],defaultOpen:[4,"default-open"],for:[1],internalOpen:[32],focusTrigger:[32]},null,{open:[{syncFromProp:0}],for:[{syncTarget:0}],internalOpen:[{syncOverlay:0}]}]]],["p-72338f53",[[769,"ui-affordance-scope",{nearRadius:[514,"near-radius"]},null,{nearRadius:[{connectCoordinator:0}]}]]],["p-08f80207",[[513,"ui-avatar",{src:[1],alt:[1],name:[1],fallback:[1],hasImage:[32]},null,{src:[{watchSrc:0}]}]]],["p-d56571a2",[[769,"ui-avatar-group",{max:[2],label:[1],overflowCount:[32]},null,{max:[{syncOverflow:0}]}]]],["p-5fdcee1d",[[769,"ui-badge",{variant:[1],tone:[1]}]]],["p-7ab661ec",[[769,"ui-button",{variant:[1],size:[1],disabled:[4]},null,{variant:[{syncToButton:0}],size:[{syncToButton:0}],disabled:[{syncToButton:0}]}]]],["p-add67e4c",[[769,"ui-callout",{tone:[1]}]]],["p-9d2662ca",[[769,"ui-checkbox",{checked:[4],defaultChecked:[4,"default-checked"],disabled:[4],indeterminate:[4],required:[4],value:[1],internalChecked:[32]},null,{checked:[{syncFromProp:0}],internalChecked:[{syncToInput:0}],indeterminate:[{syncToInput:0}],disabled:[{syncToInput:0}],required:[{syncToInput:0}]}]]],["p-82f2fa3d",[[769,"ui-chip",{appearance:[1]}]]],["p-fd1e4d22",[[769,"ui-dialog",{open:[4],defaultOpen:[4,"default-open"],modal:[4],dismissible:[4],label:[1],internalOpen:[32],accessibleLabel:[32]},null,{open:[{syncFromProp:0}],label:[{syncLabelFromProp:0}],internalOpen:[{syncOpen:0}]}]]],["p-2c03fa73",[[769,"ui-disclosure",{open:[4],defaultOpen:[4,"default-open"],disabled:[4],internalOpen:[32],contentId:[32]},null,{open:[{syncFromProp:0}],internalOpen:[{syncState:0}]}]]],["p-a63e2561",[[769,"ui-floating-action-button",{disabled:[516],mobileOnly:[516,"mobile-only"],label:[1]}]]],["p-b63f6d4f",[[769,"ui-form-field",{invalid:[4],disabled:[4],required:[4]}]]],["p-672e3d16",[[769,"ui-icon-button",{disabled:[516],label:[1],size:[513],variant:[513],anticipatory:[516]}]]],["p-314d5c7c",[[769,"ui-input",{value:[1],defaultValue:[1,"default-value"],disabled:[4],invalid:[4],readOnly:[4,"readonly"],internalValue:[32]},null,{value:[{syncFromProp:0}],internalValue:[{syncToInput:0}],defaultValue:[{syncToInput:0}],disabled:[{syncToInput:0}],invalid:[{syncToInput:0}],readOnly:[{syncToInput:0}]}]]],["p-7c4a225f",[[769,"ui-menu-item",{disabled:[516],value:[1]}]]],["p-cfba8f7c",[[769,"ui-popover",{open:[4],defaultOpen:[4,"default-open"],for:[1],placement:[1],internalOpen:[32]},null,{open:[{syncFromProp:0}],internalOpen:[{onOpenChange:0}],for:[{resetSurface:0}],placement:[{resetSurface:0}]}]]],["p-8e6b1001",[[769,"ui-radio",{checked:[4],defaultChecked:[4,"default-checked"],disabled:[4],name:[1],required:[4],value:[1],internalChecked:[32]},null,{checked:[{syncFromProp:0}],disabled:[{syncToInput:0}],name:[{syncToInput:0}],required:[{syncToInput:0}],value:[{syncToInput:0}]}]]],["p-e0f241ab",[[769,"ui-radio-group",{value:[1],name:[1],orientation:[1],disabled:[4],required:[4],internalValue:[32]},null,{value:[{syncFromProp:0}],internalValue:[{syncToRadios:0}],name:[{syncToRadios:0}],orientation:[{syncToRadios:0}],disabled:[{syncToRadios:0}]}]]],["p-3ef2a21b",[[769,"ui-search-result-row",{disabled:[516],selected:[516],hasLeading:[32],hasMeta:[32],hasExcerpt:[32],hasTrailing:[32]}]]],["p-25e18ad6",[[769,"ui-search-shell",{hasStatus:[32],hasFooter:[32]}]]],["p-8e254bc4",[[769,"ui-select",{value:[1],defaultValue:[1,"default-value"],disabled:[4],invalid:[4],required:[4],internalValue:[32]},null,{value:[{syncFromProp:0}],internalValue:[{syncToSelect:0}],defaultValue:[{syncToSelect:0}],disabled:[{syncToSelect:0}],invalid:[{syncToSelect:0}],required:[{syncToSelect:0}]}]]],["p-bd00d4e8",[[769,"ui-switch",{checked:[4],defaultChecked:[4,"default-checked"],disabled:[4],required:[4],value:[1],internalChecked:[32]},null,{checked:[{syncFromProp:0}]}]]],["p-920656cf",[[769,"ui-tabs",{value:[1],defaultValue:[1,"default-value"],orientation:[1],internalValue:[32]},null,{value:[{syncFromProp:0}],internalValue:[{syncState:0}],orientation:[{syncState:0}]}]]],["p-68430534",[[769,"ui-textarea",{value:[1],defaultValue:[1,"default-value"],disabled:[4],invalid:[4],readOnly:[4,"readonly"],rows:[2],internalValue:[32]},null,{value:[{syncFromProp:0}],internalValue:[{syncToTextarea:0}],defaultValue:[{syncToTextarea:0}],disabled:[{syncToTextarea:0}],invalid:[{syncToTextarea:0}],readOnly:[{syncToTextarea:0}],rows:[{syncToTextarea:0}]}]]],["p-f1750fd7",[[769,"ui-toast-region",{open:[4],internalOpen:[32]},null,{open:[{syncFromProp:0}],internalOpen:[{syncSurface:0}]}]]],["p-13f8195a",[[769,"ui-top-bar",{hasLeading:[32],hasSearch:[32],hasActions:[32]}]]],["p-839faf55",[[769,"ui-tree",{label:[1],hoverExpandDelay:[2,"hover-expand-delay"],maxDepth:[2,"max-depth"]}]]],["p-cc915913",[[769,"ui-tree-item",{itemId:[1,"item-id"],label:[1],dropDepth:[2,"drop-depth"],subtreeDepth:[2,"subtree-depth"],container:[4],sortable:[4],dragType:[1,"drag-type"],dropScope:[1,"drop-scope"],accepts:[1],expanded:[4],defaultExpanded:[4,"default-expanded"],selected:[4],disabled:[4],internalExpanded:[32],structuralLevel:[32],tabStop:[32]},null,{expanded:[{syncExpandedFromProp:0}]}]]],["p-03f44c45",[[769,"ui-menu",{open:[4],defaultOpen:[4,"default-open"],for:[1],placement:[1],internalOpen:[32]},null,{open:[{syncFromProp:0}],for:[{resetSurface:0}],placement:[{resetSurface:0}],internalOpen:[{syncSurface:0}]}]]],["p-9e1c4020",[[769,"ui-tooltip",{for:[1],open:[4],defaultOpen:[4,"default-open"],placement:[1],showDelay:[2,"show-delay"],hideDelay:[2,"hide-delay"],toggleOnClick:[4,"toggle-on-click"],internalOpen:[32]},null,{open:[{syncFromProp:0}],for:[{resetSurface:0}],placement:[{resetSurface:0}],internalOpen:[{syncOverlay:0}]}]]]],e))));
@@ -0,0 +1 @@
1
+ import{r as e,g as t,h as i,H as s}from"./p-8BGiMGQ0.js";import{d as a,e as r}from"./p-JwSoedEO.js";import{o,c as n,r as c}from"./p-C-0syqXZ.js";import{i as l,c as h}from"./p-BnGhGgTH.js";import{a as d}from"./p-Bu0dmLBE.js";const u=class{constructor(t){e(this,t)}get host(){return t(this)}open;defaultOpen=!1;for;placement="bottom-start";internalOpen=!1;overlayId=`ui-menu-${Math.random().toString(36).slice(2,11)}`;anchor=null;surface=null;syncFromProp(){l(this.open)&&(this.internalOpen=this.open)}resetSurface(){this.setupSurface(),this.syncSurface()}syncSurface(){this.syncAnchorState(),this.surface&&(this.internalOpen?(this.surface.show(),o({id:this.overlayId,modal:!1,element:this.host,relatedElements:this.anchor?[this.anchor]:void 0,dismissible:!0,requestClose:(e,t)=>this.closeMenu(e,t)})):(this.surface.hide(),n(this.overlayId)))}componentDidLoad(){this.internalOpen=h(this.open,this.defaultOpen),this.host.addEventListener("click",this.onItemClick),this.host.addEventListener("keydown",this.onKeydown),this.setupSurface(),this.syncSurface()}disconnectedCallback(){this.host.removeEventListener("click",this.onItemClick),this.host.removeEventListener("keydown",this.onKeydown),this.surface?.destroy(),this.surface=null,n(this.overlayId)}setupSurface(){this.surface?.destroy(),this.surface=null,this.anchor=this.for?this.host.ownerDocument.getElementById(this.for):null,this.anchor&&(this.surface=d(this.host,{anchor:this.anchor,placement:this.placement}))}syncAnchorState(){this.anchor&&(this.anchor.setAttribute("aria-haspopup","menu"),this.anchor.setAttribute("aria-expanded",this.internalOpen?"true":"false"))}closeMenu(e,t){this.internalOpen&&(l(this.open)||(this.internalOpen=!1),a(this.host,"close",{open:!1,reason:e,trigger:t}),"escape"===e&&this.anchor?.focus())}getItems(){return Array.from(this.host.querySelectorAll("ui-menu-item"))}isItemDisabled(e){return"true"===e.getAttribute("aria-disabled")||e.hasAttribute("disabled")||"true"===e.getAttribute("disabled")||!0===e.disabled}onItemClick=e=>{const t=e.target.closest?.("ui-menu-item");if(!t||t.getRootNode()!==this.host.getRootNode())return;if(this.isItemDisabled(t))return;const i=t.getAttribute("value")??t.getAttribute("data-value")??"";a(this.host,"select",{value:i,trigger:r(e)}),a(this.host,"close",{open:!1,reason:"action",trigger:r(e)}),l(this.open)||(this.internalOpen=!1)};onKeydown=e=>{if("Escape"===e.key)return e.preventDefault(),void c("escape","keyboard");const t=this.getItems().filter((e=>!this.isItemDisabled(e)));if(0===t.length)return;const i=e.target.closest?.("ui-menu-item"),s=i&&i instanceof HTMLElement?t.indexOf(i):-1;if("Enter"!==e.key&&" "!==e.key)"ArrowDown"!==e.key&&"ArrowUp"!==e.key||(e.preventDefault(),t["ArrowDown"===e.key?s<0?0:Math.min(s+1,t.length-1):s<=0?t.length-1:s-1].focus());else if(e.preventDefault(),i&&s>=0){const e=i.getAttribute("value")??i.getAttribute("data-value")??"";a(this.host,"select",{value:e,trigger:"keyboard"}),a(this.host,"close",{open:!1,reason:"action",trigger:"keyboard"}),l(this.open)||(this.internalOpen=!1)}};render(){return i(s,{key:"c5af7acaf41b75165e9f7cf47d65b7a1dcd4d1c0",role:"menu","aria-orientation":"vertical","data-open":this.internalOpen?"":void 0},i("div",{key:"058fff9a00a1dcba26f6db425096e7a96d889896",class:"menu__surface"},i("slot",{key:"dbbf9eb4ba2a348b6d85049e229ed0562ee17318"})))}static get watchers(){return{open:[{syncFromProp:0}],for:[{resetSurface:0}],placement:[{resetSurface:0}],internalOpen:[{syncSurface:0}]}}};u.style=":host{--ui-menu-viewport-gap:var(--ui-space-2, 0.5rem);display:flex;flex-direction:column;box-sizing:border-box;inline-size:max-content;min-inline-size:min(12rem, calc(100vw - (var(--ui-menu-viewport-gap) * 2)));max-inline-size:calc(100vw - (var(--ui-menu-viewport-gap) * 2));padding:0;border:0;border-radius:0;background:transparent;box-shadow:var(--ui-shadow-lg)}.menu__surface{display:flex;flex-direction:column;box-sizing:border-box;padding:var(--ui-space-1);background:var(--ui-surface-elevated);border:1px solid var(--ui-border-default);border-radius:var(--ui-radius-3)}:host(:not([data-open])){display:none}:host([popover]){position:fixed;inset:auto;margin:0;overflow:auto;max-block-size:calc(100dvh - (var(--ui-menu-viewport-gap) * 2));opacity:0;transform:translateY(-4px) scale(0.99);transition:opacity var(--ui-motion-fast) var(--ui-motion-ease), transform var(--ui-motion-fast) var(--ui-motion-ease), display var(--ui-motion-fast) allow-discrete, overlay var(--ui-motion-fast) allow-discrete}:host([popover]:popover-open){opacity:1;transform:translateY(0) scale(1)}@starting-style{:host([popover]:popover-open){opacity:0;transform:translateY(-4px) scale(0.99)}}:host([hidden]){display:none !important}@media (prefers-reduced-motion: reduce){:host([popover]){transition:none}}::slotted(ui-menu-item){display:block;width:100%}";export{u as ui_menu}
@@ -0,0 +1 @@
1
+ import{r as a,h as e,H as i}from"./p-8BGiMGQ0.js";const r=class{constructor(e){a(this,e)}src="";alt="";name="";fallback="";hasImage=!1;watchSrc(){this.hasImage=!1}onImageLoad=()=>{this.hasImage=!0};onImageError=()=>{this.hasImage=!1};render(){const a=this.fallback||function(a){const e=a.trim().split(/\s+/).filter((a=>a.length>0));return 0===e.length?"?":1===e.length?e[0].slice(0,2).toUpperCase():`${e[0][0]??""}${e[1][0]??""}`.toUpperCase()}(this.name||this.alt),r=this.alt||this.name||"Avatar";return e(i,{key:"bbe6c3a775702022a19d819a6cc9d81d798cb3e1",role:"img","aria-label":r,"data-has-image":this.hasImage?"":void 0},e("div",{key:"63402327ba5bde122bf5deaea09baf965ee9b047",class:"avatar"},e("img",{key:"e52b86773684b80d76efa459cb03ae40881f959b",src:this.src,alt:r,onLoad:this.onImageLoad,onError:this.onImageError,hidden:!this.hasImage,"aria-hidden":this.hasImage?"false":"true"}),e("span",{key:"82a6d8f0d0c69ca52f81d092a2292fc80238265b",class:"fallback",hidden:this.hasImage,"aria-hidden":this.hasImage?"true":"false"},a)))}static get watchers(){return{src:[{watchSrc:0}]}}};r.style=":host{display:inline-flex}.avatar{display:inline-grid;place-items:center;overflow:hidden;inline-size:2.5rem;block-size:2.5rem;border-radius:999px;border:1px solid var(--ui-border-default);background:var(--ui-surface-muted);color:var(--ui-text-secondary);font:inherit;font-size:0.875rem;font-weight:600;text-transform:uppercase}.avatar img{grid-area:1 / 1;inline-size:100%;block-size:100%;object-fit:cover}.avatar .fallback{grid-area:1 / 1;display:inline-flex;align-items:center;justify-content:center;inline-size:100%;block-size:100%}";export{r as ui_avatar}
@@ -0,0 +1 @@
1
+ import{r as a,g as e,h as i,H as t}from"./p-8BGiMGQ0.js";function s(a){return!!a&&a.assignedNodes({flatten:!0}).some((a=>a.nodeType!==Node.TEXT_NODE||Boolean(a.textContent?.trim())))}const r=class{constructor(e){a(this,e)}get host(){return e(this)}hasLeading=!1;hasSearch=!1;hasActions=!1;leadingSlot;searchSlot;actionsSlot;componentDidLoad(){this.syncSlots()}syncSlots=()=>{this.hasLeading=s(this.leadingSlot),this.hasSearch=s(this.searchSlot),this.hasActions=s(this.actionsSlot)};render(){return i(t,{key:"b92aa4e03475b3e623212a1e98f45d5532860b51"},i("header",{key:"a3552708b0e424e762e100ee55fc6bfac4cd830a",class:"top-bar",part:"base"},i("div",{key:"4c8a9e3a04ff23a615bf09e368f4212dd5b38157",class:"top-bar__leading",hidden:!this.hasLeading},i("slot",{key:"64ecc99672b8fd37305810e0776a24bf87ea6f08",name:"leading",ref:a=>this.leadingSlot=a,onSlotchange:this.syncSlots})),i("div",{key:"37fc003aba2b87f7c8c0e654cd6810d7f231f365",class:"top-bar__title"},i("slot",{key:"e6c901c15852e83340ca8ad1e264fd5e35445e84"})),i("div",{key:"37b1ac319367eeded4182ada401a31e0b9c2555a",class:"top-bar__search",hidden:!this.hasSearch},i("slot",{key:"0a8b5ef500dd843909bb35a1133be548411f3b71",name:"search",ref:a=>this.searchSlot=a,onSlotchange:this.syncSlots})),i("div",{key:"7e5054a3ed6ecfe8d9d8b1b36992843aa0fb62eb",class:"top-bar__actions",hidden:!this.hasActions},i("slot",{key:"19fe59c5ba4da7f0ceda764948f1288bfaa2a41d",name:"actions",ref:a=>this.actionsSlot=a,onSlotchange:this.syncSlots}))))}};r.style=":host{position:sticky;inset-block-start:0;z-index:var(--ui-top-bar-z-index, 100);display:block}.top-bar{min-block-size:calc(var(--ui-top-bar-height, 56px) + env(safe-area-inset-top));display:flex;align-items:center;gap:var(--ui-top-bar-gap, var(--ui-space-3, 0.75rem));padding-block-start:env(safe-area-inset-top);padding-inline-start:max( var(--ui-top-bar-padding-inline, var(--ui-space-4, 1rem)), env(safe-area-inset-left) );padding-inline-end:max( var(--ui-top-bar-padding-inline, var(--ui-space-4, 1rem)), env(safe-area-inset-right) );background:var(--ui-top-bar-bg, var(--ui-surface, #ffffff));border-block-end:1px solid var(--ui-top-bar-border, var(--ui-border, #e5e7eb))}.top-bar__leading,.top-bar__search,.top-bar__actions{display:flex;align-items:center;flex-shrink:0}.top-bar__actions{gap:var(--ui-top-bar-actions-gap, var(--ui-space-1, 0.25rem))}.top-bar__title{min-inline-size:0;flex:1}[hidden]{display:none}@media (min-width: 768px){:host{display:none}}";export{r as ui_top_bar}
@@ -1 +1 @@
1
- import{r as e,h as s}from"./p-CEeiinfk.js";function a(e){return!!e&&e.assignedNodes({flatten:!0}).some((e=>e.nodeType!==Node.TEXT_NODE||Boolean(e.textContent?.trim())))}const l=class{constructor(s){e(this,s)}hasStatus=!1;hasFooter=!1;statusSlot;footerSlot;componentDidLoad(){this.syncSlots()}syncSlots=()=>{this.hasStatus=a(this.statusSlot),this.hasFooter=a(this.footerSlot)};render(){return s("div",{key:"946e3575a3b48f83315a5299d144a10647c31189",class:"search-shell",part:"base"},s("slot",{key:"6146d441648a9cafca12b764e94373252b3940be",name:"backdrop"}),s("div",{key:"e4389c8f39994209e1f8dc4dbf913e3728295545",class:"search-shell__panel",part:"panel"},s("div",{key:"8c660767d3ac12e1d94086bb80bb459e2f45d173",class:"search-shell__search",part:"search"},s("slot",{key:"c870a4266f689654c76a1fc9e2bc23bf690a931c",name:"search"})),s("div",{key:"b5a68d509a92fec24603008514e938ba27655f4d",class:"search-shell__status",part:"status",hidden:!this.hasStatus},s("slot",{key:"bc3233c23289cb56ca8d4217c9b3c37df9570abc",name:"status",ref:e=>this.statusSlot=e,onSlotchange:this.syncSlots})),s("div",{key:"291b357ed1c7949001952813c950fbaab24cd0fc",class:"search-shell__body",part:"body"},s("slot",{key:"72ecf55e7267cef21e612c1aff840fef67442fb5",name:"body"})),s("div",{key:"e393d0cc4bd0bbbf349a135d9f352ec08bd523cb",class:"search-shell__footer",part:"footer",hidden:!this.hasFooter},s("slot",{key:"2468bdafc67f01094a4461a1a1e2fd474a88ffcf",name:"footer",ref:e=>this.footerSlot=e,onSlotchange:this.syncSlots}))))}};l.style=":host{position:fixed;inset:0;z-index:var(--ui-search-shell-z-index, 400);display:block}.search-shell{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding-block-start:var(--ui-search-shell-padding-top, 10vh)}.search-shell__panel{position:relative;inline-size:min( calc(100% - (var(--ui-search-shell-margin-inline, var(--ui-space-4, 1rem)) * 2)), var(--ui-search-shell-max-width, 640px) );max-block-size:var(--ui-search-shell-max-height, 80vh);display:flex;flex-direction:column;overflow:hidden;background:var(--ui-search-shell-bg, var(--ui-surface, #ffffff));border:1px solid var(--ui-search-shell-border, var(--ui-border, #e5e7eb));border-radius:var(--ui-search-shell-radius, var(--ui-radius-xl, 1rem));box-shadow:var(--ui-search-shell-shadow, var(--ui-shadow-lg, 0 8px 24px rgba(0, 0, 0, 0.12)))}.search-shell__search,.search-shell__status,.search-shell__footer{flex-shrink:0}.search-shell__body{flex:1;min-block-size:0}[hidden]{display:none}@media (max-width: 767px){.search-shell{padding-block-start:0;align-items:stretch}.search-shell__panel{inline-size:100%;block-size:100vh;block-size:100dvh;max-block-size:none;border-radius:0;border-inline:none;border-block-start:none}}";export{l as ui_search_shell}
1
+ import{r as e,h as s}from"./p-8BGiMGQ0.js";function a(e){return!!e&&e.assignedNodes({flatten:!0}).some((e=>e.nodeType!==Node.TEXT_NODE||Boolean(e.textContent?.trim())))}const l=class{constructor(s){e(this,s)}hasStatus=!1;hasFooter=!1;statusSlot;footerSlot;componentDidLoad(){this.syncSlots()}syncSlots=()=>{this.hasStatus=a(this.statusSlot),this.hasFooter=a(this.footerSlot)};render(){return s("div",{key:"c3a4366e1f22b249233e42fdc83f1620613cce52",class:"search-shell",part:"base"},s("slot",{key:"4f22e4a44fe7ae190a80a6e5cd695c15eb4f029d",name:"backdrop"}),s("div",{key:"bf452dae29f0ab31266d848a4dd4b794997b34a7",class:"search-shell__panel",part:"panel"},s("div",{key:"c0ef7d1d8ea95853404d39ddac1bff566d38d18e",class:"search-shell__search",part:"search"},s("slot",{key:"462532250d8ba36aad1d31fe10da642d79e59faf",name:"search"})),s("div",{key:"4f7d91272d15f6e37df6fba4ae563efae5701b93",class:"search-shell__status",part:"status",hidden:!this.hasStatus},s("slot",{key:"d761691c1dd2c3012075163bb7eb9ce7e5bf3ef4",name:"status",ref:e=>this.statusSlot=e,onSlotchange:this.syncSlots})),s("div",{key:"1427a10b3f43ea31c2a482beb17f78d70b5fb2cf",class:"search-shell__body",part:"body"},s("slot",{key:"6d6e8c2b4ee4833b5476795d4c7e184dda07f81e",name:"body"})),s("div",{key:"8f7d36040f7d21489c703b53581e392a2616963b",class:"search-shell__footer",part:"footer",hidden:!this.hasFooter},s("slot",{key:"08b84f01091d95895ee8693e9b322511bf614342",name:"footer",ref:e=>this.footerSlot=e,onSlotchange:this.syncSlots}))))}};l.style=":host{position:fixed;inset:0;z-index:var(--ui-search-shell-z-index, 400);display:block}.search-shell{position:absolute;inset:0;display:flex;align-items:flex-start;justify-content:center;padding-block-start:var(--ui-search-shell-padding-top, 10vh)}.search-shell__panel{position:relative;inline-size:min( calc(100% - (var(--ui-search-shell-margin-inline, var(--ui-space-4, 1rem)) * 2)), var(--ui-search-shell-max-width, 640px) );max-block-size:var(--ui-search-shell-max-height, 80vh);display:flex;flex-direction:column;overflow:hidden;background:var(--ui-search-shell-bg, var(--ui-surface, #ffffff));border:1px solid var(--ui-search-shell-border, var(--ui-border, #e5e7eb));border-radius:var(--ui-search-shell-radius, var(--ui-radius-xl, 1rem));box-shadow:var(--ui-search-shell-shadow, var(--ui-shadow-lg, 0 8px 24px rgba(0, 0, 0, 0.12)))}.search-shell__search,.search-shell__status,.search-shell__footer{flex-shrink:0}.search-shell__body{flex:1;min-block-size:0}[hidden]{display:none}@media (max-width: 767px){.search-shell{padding-block-start:0;align-items:stretch}.search-shell__panel{inline-size:100%;block-size:100vh;block-size:100dvh;max-block-size:none;border-radius:0;border-inline:none;border-block-start:none}}";export{l as ui_search_shell}
@@ -0,0 +1 @@
1
+ import{r as t,g as s,h as i,H as e}from"./p-8BGiMGQ0.js";import{c as n}from"./p-hgBUJRDa.js";import{d as o,e as r,i as h}from"./p-JwSoedEO.js";import{i as a,c}from"./p-BnGhGgTH.js";const d=class{constructor(s){t(this,s)}get host(){return s(this)}open;defaultOpen=!1;disabled=!1;internalOpen=!1;contentId="";trigger=null;content=null;syncFromProp(){a(this.open)&&(this.internalOpen=this.open)}syncState(){this.trigger&&this.trigger.setAttribute("aria-expanded",String(this.internalOpen)),this.content&&(this.content.hidden=!this.internalOpen)}componentDidLoad(){this.resolveParts(),this.internalOpen=c(this.open,this.defaultOpen),this.syncState(),this.trigger?.addEventListener("click",this.onTriggerClick),this.trigger?.addEventListener("keydown",this.onTriggerKeydown)}disconnectedCallback(){this.trigger?.removeEventListener("click",this.onTriggerClick),this.trigger?.removeEventListener("keydown",this.onTriggerKeydown)}componentDidUpdate(){this.syncState()}resolveParts(){this.trigger=this.host.querySelector("[data-ui-disclosure-trigger], button, [aria-controls]");const t=this.trigger?.getAttribute("aria-controls")??"";if(t)this.content=document.getElementById(t);else{const t=Array.from(this.host.children);this.content=t.find((t=>t!==this.trigger))??null}this.trigger&&this.content&&(this.content.id||(this.content.id=n("disclosure-content")),this.trigger.setAttribute("aria-controls",this.content.id),this.contentId=this.content.id),this.trigger instanceof HTMLButtonElement?this.trigger.disabled=this.disabled:this.trigger&&this.trigger.setAttribute("aria-disabled",String(this.disabled))}setOpen(t,s){this.internalOpen!==t&&(a(this.open)||(this.internalOpen=t),o(this.host,t?"open":"close",{open:t,reason:s.reason,trigger:s.trigger}))}onTriggerClick=t=>{this.disabled?t.preventDefault():this.setOpen(!this.internalOpen,{reason:"action",trigger:r(t)})};onTriggerKeydown=t=>{!this.disabled&&h(t)&&(t.preventDefault(),this.setOpen(!this.internalOpen,{reason:"action",trigger:"keyboard"}))};render(){return i(e,{key:"55a6fd71965104b96b55fd53870becce748a4116"},i("slot",{key:"542727e10d335ff44fc7cf8250e80f045f89b8f2"}))}static get watchers(){return{open:[{syncFromProp:0}],internalOpen:[{syncState:0}]}}};d.style=":host{display:block}::slotted([hidden]){display:none !important}";export{d as ui_disclosure}
@@ -0,0 +1 @@
1
+ import{r as t,g as i,h as o,H as r}from"./p-8BGiMGQ0.js";import{d as s,e as a}from"./p-JwSoedEO.js";const e=class{constructor(i){t(this,i)}get host(){return i(this)}value;defaultValue="";disabled=!1;invalid=!1;readOnly=!1;internalValue="";slotRef;syncFromProp(){void 0!==this.value&&(this.internalValue=this.value)}syncToInput(){const t=this.getInput();t&&(this.host.dataset.invalid=this.invalid?"true":"",void 0!==this.value&&(t.value=this.internalValue),t.defaultValue=this.defaultValue,t.disabled=this.disabled,t.readOnly=this.readOnly,t.setAttribute("aria-invalid",this.invalid?"true":"false"))}componentDidLoad(){this.syncFromProp(),this.slotRef?.addEventListener("slotchange",(()=>this.syncToInput())),this.syncToInput();const t=this.getInput();t?.addEventListener("input",this.onInput),t?.addEventListener("change",this.onChange)}disconnectedCallback(){const t=this.getInput();t?.removeEventListener("input",this.onInput),t?.removeEventListener("change",this.onChange)}componentDidUpdate(){this.syncToInput()}getInput(){const t=this.host.shadowRoot?.querySelector("slot");return(t?.assignedElements()??Array.from(this.host.children)).find((t=>"INPUT"===t.tagName))??null}onInput=t=>{const i=t.target;i&&(this.internalValue=i.value,s(this.host,"input",{value:this.internalValue,trigger:a(t)}))};onChange=t=>{const i=this.getInput();i&&(this.internalValue=i.value,s(this.host,"change",{value:this.internalValue,trigger:a(t)}))};render(){return o(r,{key:"fe125b4e8ec35e9ac0b0ca0434aa8439f515c51b","data-invalid":this.invalid?"":void 0},o("slot",{key:"ec0609f9143435cf0436abb98488b9f30b71530b",ref:t=>this.slotRef=t}))}static get watchers(){return{value:[{syncFromProp:0}],internalValue:[{syncToInput:0}],defaultValue:[{syncToInput:0}],disabled:[{syncToInput:0}],invalid:[{syncToInput:0}],readOnly:[{syncToInput:0}]}}};e.style=":host{display:inline-flex;min-inline-size:0;color:var(--ui-text-primary)}::slotted(input){width:100%;appearance:none;min-block-size:var(--ui-control-min-block-size, 2.75rem);border:1px solid var(--ui-control-border, var(--ui-border-default));border-radius:var(--ui-radius-2);background:var(--ui-control-surface, var(--ui-surface-default));color:inherit;font:inherit;line-height:var(--ui-line-height-md);padding:var(--ui-space-2) var(--ui-space-3);margin:0;transition:border-color var(--ui-motion-fast) var(--ui-motion-ease), box-shadow var(--ui-motion-fast) var(--ui-motion-ease), background-color var(--ui-motion-fast) var(--ui-motion-ease)}::slotted(input:hover:not(:focus):not(:disabled)){border-color:var(--ui-control-border-hover, var(--ui-border-strong))}::slotted(input:focus){border-color:var(--ui-control-focus, var(--ui-focus-ring));box-shadow:0 0 0 3px var(--ui-control-focus-halo, var(--ui-accent-soft))}:host([data-invalid='true'])::slotted(input),::slotted(input[aria-invalid='true']){border-color:var(--ui-accent-active)}::slotted(input:disabled){background:var(--ui-control-surface-disabled, var(--ui-surface-muted));color:var(--ui-text-muted);cursor:not-allowed}::slotted(input:focus-visible){outline:2px solid var(--ui-focus-ring);outline-offset:2px}";export{e as ui_input}
@@ -1 +1 @@
1
- import{r as e,h as r,H as a}from"./p-CEeiinfk.js";function s(e){return!!e&&e.assignedNodes({flatten:!0}).some((e=>e.nodeType!==Node.TEXT_NODE||Boolean(e.textContent?.trim())))}const t=class{constructor(r){e(this,r)}disabled=!1;selected=!1;hasLeading=!1;hasMeta=!1;hasExcerpt=!1;hasTrailing=!1;leadingSlot;metaSlot;excerptSlot;trailingSlot;componentDidLoad(){this.syncSlots()}syncSlots=()=>{this.hasLeading=s(this.leadingSlot),this.hasMeta=s(this.metaSlot),this.hasExcerpt=s(this.excerptSlot),this.hasTrailing=s(this.trailingSlot)};render(){return r(a,{key:"4fb3b963d73890850b58d03f225f125066412350"},r("button",{key:"55332d2d06d279e5c6d39d044cfb89256cffdf69",class:"search-result-row",type:"button",disabled:this.disabled,part:"button"},r("span",{key:"1c9178595fb6f54ffc4e55b3a7cb5fe7dea94b40",class:"search-result-row__leading",part:"leading",hidden:!this.hasLeading},r("slot",{key:"239d0a74e80e58f1b25d6b328293d9692a4483b6",name:"leading",ref:e=>this.leadingSlot=e,onSlotchange:this.syncSlots})),r("span",{key:"f80e39d4002bfa1ae7665857e27d184004654c03",class:"search-result-row__content",part:"content"},r("span",{key:"b1a1e7f378eee6db5a01949d8a299583556c79c1",class:"search-result-row__title",part:"title"},r("slot",{key:"4d94ed22c472309e0ece5f7a2a744f400589c87e",name:"title"})),r("span",{key:"3dbc540f67e11cca515208597b7b6bb75e2772f5",class:"search-result-row__meta",part:"meta",hidden:!this.hasMeta},r("slot",{key:"3ed5c8fd300a19801ac332d2e9516aadb19f664e",name:"meta",ref:e=>this.metaSlot=e,onSlotchange:this.syncSlots})),r("span",{key:"8403a7e6adc3b1fae04d659bfbf7ff5676ac113a",class:"search-result-row__excerpt",part:"excerpt",hidden:!this.hasExcerpt},r("slot",{key:"f0b0b07df739f780320394dae9b318f6676e9a94",name:"excerpt",ref:e=>this.excerptSlot=e,onSlotchange:this.syncSlots}))),r("span",{key:"2ebdf8d2ed7fefd31118052495503659c957d317",class:"search-result-row__trailing",part:"trailing",hidden:!this.hasTrailing},r("slot",{key:"60dfc20a47fff6aac28755bedb80e9a4b3fd93e0",name:"trailing",ref:e=>this.trailingSlot=e,onSlotchange:this.syncSlots}))))}};t.style=":host{display:block}.search-result-row{appearance:none;inline-size:100%;min-block-size:var(--ui-search-result-row-min-height, 56px);margin:0;padding-block:var(--ui-search-result-row-padding-block, var(--ui-space-3, 0.75rem));padding-inline:var(--ui-search-result-row-padding-inline, var(--ui-space-4, 1rem));display:flex;align-items:flex-start;gap:var(--ui-search-result-row-gap, var(--ui-space-3, 0.75rem));background:var(--ui-search-result-row-bg, transparent);border:none;border-block-end:1px solid var(--ui-search-result-row-border, var(--ui-border, #e5e7eb));color:inherit;cursor:pointer;text-align:left;transition:background-color var(--ui-motion-fast, 160ms) var(--ui-motion-ease, ease)}:host(:last-child) .search-result-row{border-block-end:none}.search-result-row:hover:enabled{background:var(--ui-search-result-row-hover-bg, color-mix(in srgb, var(--ui-surface, #ffffff) 85%, black 3%))}:host([selected]) .search-result-row{background:var( --ui-search-result-row-selected-bg, var(--ui-search-result-row-hover-bg, color-mix(in srgb, var(--ui-surface, #ffffff) 85%, black 3%)) )}.search-result-row:focus-visible{outline:2px solid var(--ui-focus-ring, #2563eb);outline-offset:-2px}.search-result-row:disabled,:host([disabled]) .search-result-row{opacity:0.6;cursor:not-allowed}.search-result-row__leading,.search-result-row__trailing{display:inline-flex;align-items:flex-start;flex-shrink:0}.search-result-row__content{min-inline-size:0;flex:1;display:flex;flex-direction:column}.search-result-row__title,.search-result-row__meta,.search-result-row__excerpt{display:block;min-inline-size:0}[hidden]{display:none}::slotted([slot='title']),::slotted([slot='meta']),::slotted([slot='excerpt']){display:block;margin:0}";export{t as ui_search_result_row}
1
+ import{r as e,h as a,H as r}from"./p-8BGiMGQ0.js";function s(e){return!!e&&e.assignedNodes({flatten:!0}).some((e=>e.nodeType!==Node.TEXT_NODE||Boolean(e.textContent?.trim())))}const t=class{constructor(a){e(this,a)}disabled=!1;selected=!1;hasLeading=!1;hasMeta=!1;hasExcerpt=!1;hasTrailing=!1;leadingSlot;metaSlot;excerptSlot;trailingSlot;componentDidLoad(){this.syncSlots()}syncSlots=()=>{this.hasLeading=s(this.leadingSlot),this.hasMeta=s(this.metaSlot),this.hasExcerpt=s(this.excerptSlot),this.hasTrailing=s(this.trailingSlot)};render(){return a(r,{key:"01e795d1c723c4e56f5648c429b40fc7841ff9b5"},a("button",{key:"7bdde5075c5a3112d14741aa87937e69a8f5fea9",class:"search-result-row",type:"button",disabled:this.disabled,part:"button"},a("span",{key:"39ba47af68a23875eebdbdf8f87ca7d94d42ec43",class:"search-result-row__leading",part:"leading",hidden:!this.hasLeading},a("slot",{key:"f108b1c5d284057d5979bf4897f056543a1ff092",name:"leading",ref:e=>this.leadingSlot=e,onSlotchange:this.syncSlots})),a("span",{key:"0daeb171b7010f37d959c91f2a87c1ae7e96a56f",class:"search-result-row__content",part:"content"},a("span",{key:"d7ec1b67a15fa9c79ea0fd23db73bd7bca40a8ce",class:"search-result-row__title",part:"title"},a("slot",{key:"8c4a45511580a655e0593c8c57fd98838f2cb896",name:"title"})),a("span",{key:"0d30a58a7079ea0c8992c9b0b02b516a65350425",class:"search-result-row__meta",part:"meta",hidden:!this.hasMeta},a("slot",{key:"8de66e3b6adf89ed765ccc1c341ccac1b5513a6f",name:"meta",ref:e=>this.metaSlot=e,onSlotchange:this.syncSlots})),a("span",{key:"7c24542b9bb634a55530952c329242a351e813c3",class:"search-result-row__excerpt",part:"excerpt",hidden:!this.hasExcerpt},a("slot",{key:"a5bfc4fd17b8535aa996e792498b33f25dd30ecd",name:"excerpt",ref:e=>this.excerptSlot=e,onSlotchange:this.syncSlots}))),a("span",{key:"25c74d8508a0b3b527ef5529a02e54e407cae5ae",class:"search-result-row__trailing",part:"trailing",hidden:!this.hasTrailing},a("slot",{key:"cba6f957de902b9ed3dc05c8b20794c9b69c85c6",name:"trailing",ref:e=>this.trailingSlot=e,onSlotchange:this.syncSlots}))))}};t.style=":host{display:block}.search-result-row{appearance:none;inline-size:100%;min-block-size:var(--ui-search-result-row-min-height, 56px);margin:0;padding-block:var(--ui-search-result-row-padding-block, var(--ui-space-3, 0.75rem));padding-inline:var(--ui-search-result-row-padding-inline, var(--ui-space-4, 1rem));display:flex;align-items:flex-start;gap:var(--ui-search-result-row-gap, var(--ui-space-3, 0.75rem));background:var(--ui-search-result-row-bg, transparent);border:none;border-block-end:1px solid var(--ui-search-result-row-border, var(--ui-border, #e5e7eb));color:inherit;cursor:pointer;text-align:left;transition:background-color var(--ui-motion-fast, 160ms) var(--ui-motion-ease, ease)}:host(:last-child) .search-result-row{border-block-end:none}.search-result-row:hover:enabled{background:var(--ui-search-result-row-hover-bg, color-mix(in srgb, var(--ui-surface, #ffffff) 85%, black 3%))}:host([selected]) .search-result-row{background:var( --ui-search-result-row-selected-bg, var(--ui-search-result-row-hover-bg, color-mix(in srgb, var(--ui-surface, #ffffff) 85%, black 3%)) )}.search-result-row:focus-visible{outline:2px solid var(--ui-focus-ring, #2563eb);outline-offset:-2px}.search-result-row:disabled,:host([disabled]) .search-result-row{opacity:0.6;cursor:not-allowed}.search-result-row__leading,.search-result-row__trailing{display:inline-flex;align-items:flex-start;flex-shrink:0}.search-result-row__content{min-inline-size:0;flex:1;display:flex;flex-direction:column}.search-result-row__title,.search-result-row__meta,.search-result-row__excerpt{display:block;min-inline-size:0}[hidden]{display:none}::slotted([slot='title']),::slotted([slot='meta']),::slotted([slot='excerpt']){display:block;margin:0}";export{t as ui_search_result_row}