@luzmo/lucero 1.0.1-alpha.9 → 1.0.2

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 (487) hide show
  1. package/README.md +74 -9
  2. package/components/accordion/index.cjs +1 -26
  3. package/components/accordion/index.js +8 -164
  4. package/components/accordion-BHBIfsLU.cjs +43 -0
  5. package/components/accordion-DC7cjb1c.js +152 -0
  6. package/components/action-bar/index.cjs +1 -22
  7. package/components/action-bar/index.js +8 -90
  8. package/components/action-bar-BMHZ4e_p.cjs +39 -0
  9. package/components/action-bar-CmLjsljR.js +92 -0
  10. package/components/action-button/index.cjs +1 -7
  11. package/components/action-button/index.js +8 -144
  12. package/components/action-button-B4_UEJle.js +121 -0
  13. package/components/action-button-G0PWSrZo.cjs +24 -0
  14. package/components/action-group/index.cjs +1 -1
  15. package/components/action-group/index.js +11 -12
  16. package/components/action-group-CH8FTW0i.cjs +20 -0
  17. package/components/action-group-DYKpp-mz.js +211 -0
  18. package/components/action-menu/index.cjs +1 -39
  19. package/components/action-menu/index.js +8 -109
  20. package/components/action-menu-CJyB0mmO.cjs +56 -0
  21. package/components/action-menu-FiS1vhW7.js +105 -0
  22. package/components/avatar/avatar.d.ts +5 -0
  23. package/components/avatar/index.cjs +1 -7
  24. package/components/avatar/index.js +8 -64
  25. package/components/avatar-CyY_ZSD0.js +65 -0
  26. package/components/avatar-PulwjkMI.cjs +24 -0
  27. package/components/badge/badge.d.ts +35 -0
  28. package/components/{random-id-CqvckpWe.cjs → badge/index.cjs} +1 -1
  29. package/components/badge/index.d.ts +8 -0
  30. package/components/badge/index.js +25 -0
  31. package/components/badge-D1Ry32wi.cjs +23 -0
  32. package/components/badge-D6p2hPj8.js +94 -0
  33. package/components/button/button-base.d.ts +16 -0
  34. package/components/button/button.d.ts +38 -2
  35. package/components/button/index.cjs +1 -3
  36. package/components/button/index.js +9 -110
  37. package/components/button-CRNRP8P0.js +115 -0
  38. package/components/button-D3ZTogni.cjs +20 -0
  39. package/components/button-base-BYV3Lp3P.cjs +25 -0
  40. package/components/button-base-SHgEJgk2.js +123 -0
  41. package/components/button-group/index.cjs +1 -1
  42. package/components/button-group/index.js +8 -42
  43. package/components/button-group-CJVpgiLq.js +46 -0
  44. package/components/button-group-rEK_YaF3.cjs +18 -0
  45. package/components/calendar/calendar.d.ts +67 -0
  46. package/components/calendar/index.cjs +1 -1
  47. package/components/calendar/index.d.ts +1 -0
  48. package/components/calendar/index.js +8 -11
  49. package/components/calendar-CKr5T_zV.js +619 -0
  50. package/components/calendar-WRhzTEyZ.cjs +142 -0
  51. package/components/chat-message/chat-message.d.ts +139 -0
  52. package/components/{random-id-ByCz1xaq.js → chat-message/index.cjs} +1 -9
  53. package/components/chat-message/index.d.ts +8 -0
  54. package/components/chat-message/index.js +25 -0
  55. package/components/chat-message-CNE-mGuP.cjs +149 -0
  56. package/components/chat-message-DJgocVNj.js +2295 -0
  57. package/components/chat-message-group/chat-message-group.d.ts +50 -0
  58. package/components/{when-CDZyJPvd.cjs → chat-message-group/index.cjs} +1 -5
  59. package/components/chat-message-group/index.d.ts +7 -0
  60. package/components/chat-message-group/index.js +25 -0
  61. package/components/chat-message-group-B4U2MzHx.js +100 -0
  62. package/components/chat-message-group-COmhCN-R.cjs +24 -0
  63. package/components/checkbox/checkbox.d.ts +7 -0
  64. package/components/checkbox/index.cjs +1 -8
  65. package/components/checkbox/index.js +8 -79
  66. package/components/checkbox-CPS-tR_i.js +89 -0
  67. package/components/checkbox-DFwDrIdY.cjs +25 -0
  68. package/components/checkbox-mixin-C5sLMo5L.js +67 -0
  69. package/components/{checkbox-mixin-BDN0dBtS.cjs → checkbox-mixin-D4HeLrMj.cjs} +3 -3
  70. package/components/chunk-D-qHiVGv.cjs +18 -0
  71. package/components/close-button-BeXYep8K.js +42 -0
  72. package/components/close-button-BzapEpcF.cjs +18 -0
  73. package/components/color-area/index.cjs +1 -63
  74. package/components/color-area/index.js +8 -364
  75. package/components/color-area-DA3ps2-c.cjs +80 -0
  76. package/components/color-area-DViRjuKo.js +300 -0
  77. package/components/color-controller-DueaXfnX.cjs +18 -0
  78. package/components/color-controller-G2_v2xSl.js +247 -0
  79. package/components/color-field/color-field.d.ts +1 -0
  80. package/components/color-field/index.cjs +1 -6
  81. package/components/color-field/index.js +8 -68
  82. package/components/color-field-CxdIoSq6.js +75 -0
  83. package/components/color-field-D7_7z2A2.cjs +23 -0
  84. package/components/color-handle/index.cjs +1 -7
  85. package/components/color-handle/index.js +8 -56
  86. package/components/color-handle-BOusOFFx.js +62 -0
  87. package/components/color-handle-Cka48yPY.cjs +24 -0
  88. package/components/color-loupe/index.cjs +1 -1
  89. package/components/color-loupe/index.js +11 -12
  90. package/components/color-loupe-DMk8uWZW.cjs +56 -0
  91. package/components/color-loupe-bEzi2P0y.js +76 -0
  92. package/components/color-menu/index.cjs +1 -69
  93. package/components/color-menu/index.js +8 -189
  94. package/components/color-menu-DwbTxeqv.cjs +89 -0
  95. package/components/color-menu-Lxc9PTzl.js +183 -0
  96. package/components/color-palette/index.cjs +1 -1
  97. package/components/color-palette/index.js +8 -71
  98. package/components/color-palette-349EkPMg.cjs +18 -0
  99. package/components/color-palette-BAdaNySC.js +80 -0
  100. package/components/color-palette-group/index.cjs +1 -11
  101. package/components/color-palette-group/index.js +8 -188
  102. package/components/color-palette-group-BvP09zmT.cjs +28 -0
  103. package/components/color-palette-group-D8Mavsd2.js +163 -0
  104. package/components/color-picker/color-picker.d.ts +3 -3
  105. package/components/color-picker/index.cjs +1 -31
  106. package/components/color-picker/index.js +8 -128
  107. package/components/color-picker-CSWiU-X5.cjs +48 -0
  108. package/components/color-picker-DqjfTvYf.js +126 -0
  109. package/components/color-slider/index.cjs +1 -1
  110. package/components/color-slider/index.js +8 -11
  111. package/components/color-slider-DxjJ72ue.cjs +57 -0
  112. package/components/color-slider-ihAIFt5p.js +421 -0
  113. package/components/{condition-attribute-with-id-Dv4lSRbe.js → condition-attribute-with-id-DauPaLSS.cjs} +1 -14
  114. package/components/{query-assigned-nodes-C76XVPWY.js → condition-attribute-with-id-Duo51HZ7.js} +10 -18
  115. package/components/date-range-picker/date-range-picker.d.ts +184 -0
  116. package/components/{if-defined-C9YGdo33.cjs → date-range-picker/index.cjs} +1 -5
  117. package/components/date-range-picker/index.d.ts +8 -0
  118. package/components/date-range-picker/index.js +25 -0
  119. package/components/date-range-picker/types.d.ts +16 -0
  120. package/components/date-range-picker-BdRQep--.js +626 -0
  121. package/components/date-range-picker-CgitOe0i.cjs +187 -0
  122. package/components/date-time-picker/date-time-picker.d.ts +3 -3
  123. package/components/date-time-picker/index.cjs +1 -88
  124. package/components/date-time-picker/index.d.ts +1 -0
  125. package/components/date-time-picker/index.js +8 -1109
  126. package/components/date-time-picker/{types.d.ts → shared/types.d.ts} +1 -1
  127. package/components/date-time-picker-Bz8XwSOR.cjs +105 -0
  128. package/components/date-time-picker-Ct_ln8Ot.js +470 -0
  129. package/components/decorate-B2wePfNm.cjs +18 -0
  130. package/components/decorate-aGxJUVxg.js +91 -0
  131. package/components/{condition-attribute-with-id-DrQYZzFS.cjs → dependency-manger-CHy9t__e.cjs} +1 -1
  132. package/components/dependency-manger-DMrulWcJ.js +40 -0
  133. package/components/divider/index.cjs +1 -1
  134. package/components/divider/index.js +8 -44
  135. package/components/divider-Dn8XqbB6.cjs +18 -0
  136. package/components/divider-cU0lVwOp.js +59 -0
  137. package/components/divider.module-C65RfSUa.js +21 -0
  138. package/components/divider.module-CL60P_z8.cjs +18 -0
  139. package/components/element-resolution-Bs1x89vU.js +80 -0
  140. package/components/element-resolution-C0aiOB0Y.cjs +18 -0
  141. package/components/field-group/index.cjs +1 -1
  142. package/components/field-group/index.js +11 -12
  143. package/components/field-group-C7ROsWq3.js +57 -0
  144. package/components/field-group-OcI5Lgu7.cjs +23 -0
  145. package/components/field-label/index.cjs +1 -1
  146. package/components/field-label/index.js +11 -12
  147. package/components/field-label-BCl6R1uO.cjs +25 -0
  148. package/components/field-label-CtGCEmdp.js +87 -0
  149. package/components/focus-group-BshI1RpM.js +164 -0
  150. package/components/focus-group-SF8Kj7iB.cjs +18 -0
  151. package/components/focus-visible-B0NNezGc.cjs +18 -0
  152. package/components/focus-visible-CrooVCUu.js +58 -0
  153. package/components/focusable-BmS8IzhH.js +117 -0
  154. package/components/focusable-CupEoHmn.cjs +18 -0
  155. package/components/{base-BjTwmyRF.cjs → focusable-selectors-5n5liBn0.cjs} +1 -5
  156. package/components/{focusable-selectors-BgFlyFcY.cjs → focusable-selectors-Bg60_Kra.js} +13 -1
  157. package/components/{state-Deh-vKYE.js → get-label-from-slot-5vVnfSgN.js} +7 -11
  158. package/components/get-label-from-slot-LO_DZP60.cjs +18 -0
  159. package/components/icon/index.cjs +1 -1
  160. package/components/icon/index.js +8 -71
  161. package/components/icon-B7hKwn_q.cjs +18 -0
  162. package/components/icon-CwBAE1eU.js +59 -0
  163. package/components/index.cjs +1 -1
  164. package/components/index.js +78 -176
  165. package/components/infield-button/index.cjs +1 -5
  166. package/components/infield-button/index.js +8 -47
  167. package/components/infield-button-B2z0dLzq.js +54 -0
  168. package/components/infield-button-BVKotWqr.cjs +22 -0
  169. package/components/label/index.cjs +1 -1
  170. package/components/label/index.js +8 -34
  171. package/components/label-ClJE2esm.js +41 -0
  172. package/components/label-CqolZbJo.cjs +18 -0
  173. package/components/language-resolution-BYemISJC.cjs +18 -0
  174. package/components/language-resolution-BpfGTC29.js +43 -0
  175. package/components/like-anchor-BZJXts_H.cjs +32 -0
  176. package/components/like-anchor-DeOXX-MX.js +46 -0
  177. package/components/manage-help-text-CF0xBh0F.js +81 -0
  178. package/components/manage-help-text-D9VbYRf_.cjs +30 -0
  179. package/components/menu/index.cjs +1 -66
  180. package/components/menu/index.js +8 -879
  181. package/components/menu/menu-item.d.ts +8 -1
  182. package/components/menu/menu.d.ts +1 -0
  183. package/components/menu--ukVtSq7.js +749 -0
  184. package/components/menu-DAA51y45.cjs +108 -0
  185. package/components/multi-language-field/index.cjs +1 -22
  186. package/components/multi-language-field/index.js +8 -131
  187. package/components/multi-language-field/multi-language-field.d.ts +1 -0
  188. package/components/multi-language-field-BzY75rOY.js +122 -0
  189. package/components/multi-language-field-DmoMyCBH.cjs +40 -0
  190. package/components/number-field/index.cjs +1 -40
  191. package/components/number-field/index.js +8 -453
  192. package/components/number-field/number-field.d.ts +145 -0
  193. package/components/number-field-B4RSFeTR.cjs +57 -0
  194. package/components/number-field-C66dTUMM.js +402 -0
  195. package/components/observe-slot-presence-BCqd3VSd.js +55 -0
  196. package/components/observe-slot-presence-Dx8hzNzK.cjs +18 -0
  197. package/components/observe-slot-text-BhTcGuHY.cjs +18 -0
  198. package/components/observe-slot-text-Ddf1OC6F.js +71 -0
  199. package/components/options/index.cjs +1 -84
  200. package/components/options/index.js +8 -1160
  201. package/components/options/option.d.ts +16 -0
  202. package/components/options/options.d.ts +44 -4
  203. package/components/options-BPNAm4MW.cjs +101 -0
  204. package/components/options-Dz-ejkxF.js +484 -0
  205. package/components/overlay/index.cjs +1 -56
  206. package/components/overlay/index.js +10 -329
  207. package/components/overlay/overlay.d.ts +12 -1
  208. package/components/overlay/virtual-trigger.d.ts +3 -2
  209. package/components/overlay-8tN0KPbR.js +1115 -0
  210. package/components/overlay-CMd2Dnpv.cjs +73 -0
  211. package/components/overlay-CwR_36OV.js +227 -0
  212. package/components/overlay-DdrfkOry.cjs +47 -0
  213. package/components/pending-state-DFcNf5rd.js +50 -0
  214. package/components/{pending-state-CaH1si5b.cjs → pending-state-DIeF18qg.cjs} +4 -3
  215. package/components/picker/index.cjs +1 -1
  216. package/components/picker/index.js +11 -15
  217. package/components/picker/picker.d.ts +1 -0
  218. package/components/picker-C4RVOxLq.cjs +123 -0
  219. package/components/picker-agQW7YNo.js +394 -0
  220. package/components/picker-button/index.cjs +1 -20
  221. package/components/picker-button/index.js +8 -70
  222. package/components/picker-button-BLbeT3Yu.js +72 -0
  223. package/components/picker-button-D34YXyXp.cjs +37 -0
  224. package/components/platform-B7Sk7Qon.cjs +18 -0
  225. package/components/{platform-BM-uMWpX.js → platform-D4V_cOJF.js} +29 -38
  226. package/components/popover/index.cjs +1 -1
  227. package/components/popover/index.js +11 -12
  228. package/components/popover-DyC9xGhX.js +58 -0
  229. package/components/popover-dgL04x6P.cjs +30 -0
  230. package/components/progress-bar/index.cjs +18 -0
  231. package/components/progress-bar/index.d.ts +7 -0
  232. package/components/progress-bar/index.js +25 -0
  233. package/components/progress-bar/progress-bar.d.ts +34 -0
  234. package/components/progress-bar-BR28tISC.cjs +31 -0
  235. package/components/progress-bar-DHgFRml1.js +119 -0
  236. package/components/progress-circle/index.cjs +1 -1
  237. package/components/progress-circle/index.js +11 -12
  238. package/components/progress-circle-Cg_ua9Ff.js +78 -0
  239. package/components/progress-circle-DuzwUiGN.cjs +33 -0
  240. package/components/progress-steps/index.cjs +18 -0
  241. package/components/progress-steps/index.d.ts +8 -0
  242. package/components/progress-steps/index.js +25 -0
  243. package/components/progress-steps/progress-steps.d.ts +148 -0
  244. package/components/progress-steps/types.d.ts +32 -0
  245. package/components/progress-steps-Da8aZWx3.js +262 -0
  246. package/components/progress-steps-WriXaZpE.cjs +96 -0
  247. package/components/prompt-box/controllers/attachments-controller.d.ts +35 -0
  248. package/components/prompt-box/controllers/recording-controller.d.ts +23 -0
  249. package/components/prompt-box/controllers/rich-input-controller.d.ts +89 -0
  250. package/components/prompt-box/controllers/trigger-menu-controller.d.ts +107 -0
  251. package/components/prompt-box/index.cjs +18 -0
  252. package/components/prompt-box/index.d.ts +9 -0
  253. package/components/prompt-box/index.js +25 -0
  254. package/components/prompt-box/keyboard-focus-tracker.d.ts +3 -0
  255. package/components/prompt-box/prompt-box-templates.d.ts +10 -0
  256. package/components/prompt-box/prompt-box.d.ts +194 -0
  257. package/components/prompt-box/range-from-point.d.ts +21 -0
  258. package/components/prompt-box/selection-utils.d.ts +39 -0
  259. package/components/prompt-box/slot-state-sync.d.ts +10 -0
  260. package/components/prompt-box/types.d.ts +112 -0
  261. package/components/prompt-box-BEloQP-R.js +1506 -0
  262. package/components/prompt-box-DV8Smf3Q.cjs +282 -0
  263. package/components/radio/index.cjs +1 -5
  264. package/components/radio/index.js +8 -174
  265. package/components/radio-BzEPGUmQ.js +141 -0
  266. package/components/radio-d-2GUbYE.cjs +22 -0
  267. package/components/{if-defined-DOaE2coe.js → random-id-B51lUxUB.cjs} +1 -10
  268. package/components/{when-CDK1Tt5Y.js → random-id-Dd4boCPV.js} +5 -10
  269. package/components/{focusable-selectors-B4YgbghQ.js → rolldown-runtime-CAFD8bLK.js} +10 -13
  270. package/components/roving-tabindex-B7x5ePUB.cjs +18 -0
  271. package/components/roving-tabindex-BP6mQbXf.js +62 -0
  272. package/components/{directive-oAbCiebi.js → scaled-indicator-BcO2BOsf.js} +24 -26
  273. package/components/scaled-indicator-p8-3k2cJ.cjs +26 -0
  274. package/components/search/index.cjs +1 -28
  275. package/components/search/index.js +8 -114
  276. package/components/search-CmLfd2dF.js +94 -0
  277. package/components/search-DRTD4xsE.cjs +45 -0
  278. package/components/segments-factory-CHo9oQw7.cjs +18 -0
  279. package/components/segments-factory-D0IveW-q.js +417 -0
  280. package/components/select/index.cjs +1 -140
  281. package/components/select/index.js +8 -602
  282. package/components/select/select.d.ts +26 -17
  283. package/components/select--vrG59GQ.cjs +158 -0
  284. package/components/select-DPeI0jP9.js +518 -0
  285. package/components/{language-resolution-8yZa5r_P.js → sized-mixin-DaBoZkVS.js} +38 -35
  286. package/components/sized-mixin-StFA4y0J.cjs +18 -0
  287. package/components/skeleton-loader/index.cjs +18 -0
  288. package/components/skeleton-loader/index.d.ts +7 -0
  289. package/components/skeleton-loader/index.js +25 -0
  290. package/components/skeleton-loader/skeleton-loader.d.ts +22 -0
  291. package/components/skeleton-loader-B8NgELvX.cjs +18 -0
  292. package/components/skeleton-loader-C1XG3m_u.js +46 -0
  293. package/components/slider/index.cjs +1 -1
  294. package/components/slider/index.js +8 -1141
  295. package/components/slider/slider.d.ts +2 -0
  296. package/components/slider-3QBnq0S8.js +96 -0
  297. package/components/slider-uXRKcOz5.cjs +18 -0
  298. package/components/slottable-request-event-DZ2Z_BLk.js +29 -0
  299. package/components/{base-D76d76ww.js → slottable-request-event-gAcEQan2.cjs} +1 -9
  300. package/components/status-light/index.cjs +18 -0
  301. package/components/status-light/index.d.ts +8 -0
  302. package/components/status-light/index.js +25 -0
  303. package/components/status-light/status-light.d.ts +26 -0
  304. package/components/status-light-Bf8jGu4G.js +85 -0
  305. package/components/status-light-CBaAFRUc.cjs +21 -0
  306. package/components/strategies-DhxJGIZT.js +137 -0
  307. package/components/strategies-kuvLVIKO.cjs +18 -0
  308. package/components/streaming-listener-2NcP7ys7.js +77 -0
  309. package/components/streaming-listener-BnDW38lt.cjs +18 -0
  310. package/components/suggestion/index.cjs +18 -0
  311. package/components/suggestion/index.d.ts +8 -0
  312. package/components/suggestion/index.js +25 -0
  313. package/components/suggestion/suggestion.d.ts +45 -0
  314. package/components/suggestion-CEJiW_7y.cjs +23 -0
  315. package/components/suggestion-DK5gxxDI.js +76 -0
  316. package/components/swatch/index.cjs +1 -32
  317. package/components/swatch/index.js +8 -325
  318. package/components/swatch-BLuV-hlF.js +271 -0
  319. package/components/swatch-G70JUe6I.cjs +49 -0
  320. package/components/switch/index.cjs +1 -5
  321. package/components/switch/index.js +8 -56
  322. package/components/switch-BdE-hI69.js +60 -0
  323. package/components/switch-KzkrF-ob.cjs +22 -0
  324. package/components/tabs/index.cjs +1 -76
  325. package/components/tabs/index.js +8 -619
  326. package/components/tabs/tabs.d.ts +3 -9
  327. package/components/tabs-BfTgzdid.cjs +76 -0
  328. package/components/tabs-BthdwrmW.js +434 -0
  329. package/components/tags/index.cjs +1 -15
  330. package/components/tags/index.d.ts +1 -0
  331. package/components/tags/index.js +8 -156
  332. package/components/tags/tag.d.ts +28 -0
  333. package/components/tags/tags.d.ts +3 -1
  334. package/components/tags-B89eYzsB.js +203 -0
  335. package/components/tags-OBPAvjdV.cjs +47 -0
  336. package/components/text-field/index.cjs +1 -4
  337. package/components/text-field/index.js +9 -45
  338. package/components/text-field/text-field.d.ts +27 -0
  339. package/components/text-field-A4Obzs4l.cjs +21 -0
  340. package/components/text-field-BoGAvXvh.js +44 -0
  341. package/components/text-field-Cs8HYRYL.js +256 -0
  342. package/components/text-field-FJr8ZUhI.cjs +81 -0
  343. package/components/text-field.module-Btsve-VN.js +21 -0
  344. package/components/text-field.module-D5oDP7MB.cjs +18 -0
  345. package/components/toast/index.cjs +1 -34
  346. package/components/toast/index.js +8 -136
  347. package/components/toast-CJSQUzoW.cjs +51 -0
  348. package/components/toast-DKwphMrp.js +133 -0
  349. package/components/tooltip/index.cjs +1 -28
  350. package/components/tooltip/index.js +8 -205
  351. package/components/tooltip/tooltip.d.ts +12 -1
  352. package/components/tooltip-C3O4AQ1l.js +192 -0
  353. package/components/tooltip-DY1trLtg.cjs +45 -0
  354. package/components/top-nav/index.cjs +18 -0
  355. package/components/top-nav/index.d.ts +10 -0
  356. package/components/top-nav/index.js +25 -0
  357. package/components/top-nav/top-nav-item.d.ts +26 -0
  358. package/components/top-nav/top-nav.d.ts +45 -0
  359. package/components/top-nav-DVQ5ASMa.js +203 -0
  360. package/components/top-nav-DlTojz8S.cjs +45 -0
  361. package/components/utils.cjs +1 -1
  362. package/components/utils.js +8 -25
  363. package/components/voice-recorder-477xPHRU.js +134 -0
  364. package/components/voice-recorder-BUtmSvPO.cjs +18 -0
  365. package/custom-elements.json +1 -1
  366. package/index.d.ts +11 -1
  367. package/package.json +134 -5
  368. package/utils/button-interaction-controllers/interaction-controller.d.ts +1 -1
  369. package/utils/index.d.ts +1 -0
  370. package/utils/scaled-indicator.d.ts +8 -0
  371. package/utils/voice-recorder.d.ts +121 -0
  372. package/components/NumberFormatter-DewVDY5w.cjs +0 -18
  373. package/components/NumberFormatter-DgOUVrge.js +0 -136
  374. package/components/NumberParser-Dik4a0h-.cjs +0 -18
  375. package/components/NumberParser-ci9J5EKv.js +0 -173
  376. package/components/action-group-DBImibFn.js +0 -258
  377. package/components/action-group-DJGMcRHb.cjs +0 -20
  378. package/components/async-directive-BX1T1e1_.cjs +0 -22
  379. package/components/async-directive-BfcqVjDp.js +0 -82
  380. package/components/base-CBCg3yyw.cjs +0 -40
  381. package/components/base-WsynuqaS.js +0 -677
  382. package/components/button-base-DbkDzb71.js +0 -144
  383. package/components/button-base-XgPLmwP-.cjs +0 -25
  384. package/components/checkbox-mixin-Do7EgtpQ.js +0 -70
  385. package/components/class-map-Di1D_rCm.cjs +0 -22
  386. package/components/class-map-NbVXqBU0.js +0 -51
  387. package/components/clear-button-DQcRdcUa.js +0 -53
  388. package/components/clear-button-OFUFFe7G.cjs +0 -18
  389. package/components/close-button-Cbnb7XXj.cjs +0 -18
  390. package/components/close-button-CqHYZhum.js +0 -51
  391. package/components/color-controller-DTp1juRz.js +0 -3198
  392. package/components/color-controller-_ZwyhvaU.cjs +0 -18
  393. package/components/color-loupe-CaA_Lfkk.cjs +0 -56
  394. package/components/color-loupe-CmMsXbjT.js +0 -81
  395. package/components/dependency-manger-C5HCkMMB.cjs +0 -18
  396. package/components/dependency-manger-CEXvGQUV.js +0 -54
  397. package/components/directive-C7oCP5Bh.cjs +0 -22
  398. package/components/directive-helpers-Cm6gitnu.js +0 -62
  399. package/components/directive-helpers-DyIRTWwA.cjs +0 -22
  400. package/components/divider.module-DDvBo9zo.cjs +0 -18
  401. package/components/divider.module-DoQWQEIJ.js +0 -21
  402. package/components/element-resolution-BvRLGqIU.cjs +0 -18
  403. package/components/element-resolution-FCUT-wql.js +0 -91
  404. package/components/field-group-DXfBWrkO.js +0 -66
  405. package/components/field-group-DkGst3r5.cjs +0 -23
  406. package/components/field-label-CZ2zzChK.js +0 -106
  407. package/components/field-label-mO1AkUgR.cjs +0 -25
  408. package/components/flow-D-0MTYCm.js +0 -527
  409. package/components/flow-DM3dNAKs.cjs +0 -30
  410. package/components/focus-group-DHeTq18L.js +0 -218
  411. package/components/focus-group-DnxZUBhQ.cjs +0 -18
  412. package/components/focus-visible-B0P9aY_G.cjs +0 -18
  413. package/components/focus-visible-DBlJGoEW.js +0 -74
  414. package/components/focusable-BxtpnzWp.js +0 -153
  415. package/components/focusable-EbipgXRh.cjs +0 -18
  416. package/components/index-BwxgAdzi.cjs +0 -57
  417. package/components/index-Cl54m8Yh.js +0 -1490
  418. package/components/index-HjQa8tew.js +0 -1174
  419. package/components/index-Wq3qZJGh.cjs +0 -113
  420. package/components/language-resolution-DJzmyzZq.cjs +0 -18
  421. package/components/like-anchor-Bvn_vLQ8.js +0 -69
  422. package/components/like-anchor-sod1C1fR.cjs +0 -32
  423. package/components/luzmo-icons-4nDFv1Lq.js +0 -229
  424. package/components/luzmo-icons-D4IvHgVd.cjs +0 -29
  425. package/components/manage-help-text-DhgARkZX.cjs +0 -30
  426. package/components/manage-help-text-syYnjKGL.js +0 -92
  427. package/components/mutation-controller-DH7YOCyj.js +0 -52
  428. package/components/mutation-controller-DkOMCW-c.cjs +0 -22
  429. package/components/observe-slot-presence-CmVi0zTc.js +0 -68
  430. package/components/observe-slot-presence-bc9chhsi.cjs +0 -18
  431. package/components/observe-slot-text-BPfIQQtz.js +0 -87
  432. package/components/observe-slot-text-Ceb7SvYT.cjs +0 -18
  433. package/components/overlay-Cig9r6uU.js +0 -2747
  434. package/components/overlay-KSKMzzkh.cjs +0 -47
  435. package/components/pending-state-DTX7ggyF.js +0 -61
  436. package/components/picker-BfBP7XJN.js +0 -461
  437. package/components/picker-xIphqE6d.cjs +0 -123
  438. package/components/platform-BiXhwqk3.cjs +0 -18
  439. package/components/popover-DjX0aAnY.js +0 -67
  440. package/components/popover-KFfO0IYL.cjs +0 -30
  441. package/components/progress-circle-BvRJNuNo.cjs +0 -33
  442. package/components/progress-circle-DXH9z8-6.js +0 -97
  443. package/components/query-BL-TJj7K.cjs +0 -22
  444. package/components/query-D_KR_GUc.js +0 -51
  445. package/components/query-assigned-elements-DjfhL1cl.js +0 -36
  446. package/components/query-assigned-elements-DsKsfk7G.cjs +0 -22
  447. package/components/query-assigned-nodes-BcKWmGzy.cjs +0 -22
  448. package/components/roving-tabindex-By_fCy_e.cjs +0 -18
  449. package/components/roving-tabindex-DOg4z6ZU.js +0 -66
  450. package/components/sized-mixin-CPxE5C96.cjs +0 -18
  451. package/components/sized-mixin-D4ACoVUr.js +0 -63
  452. package/components/slottable-request-event-BfUUt1Mh.cjs +0 -18
  453. package/components/slottable-request-event-DggLA4Rx.js +0 -31
  454. package/components/state-D8JEtYqe.cjs +0 -22
  455. package/components/strategies-9indNIEb.js +0 -195
  456. package/components/strategies-BACP6MhR.cjs +0 -18
  457. package/components/streaming-listener-B00MvALi.cjs +0 -18
  458. package/components/streaming-listener-CP-JE6Fa.js +0 -91
  459. package/components/style-map-CeilmSgs.cjs +0 -22
  460. package/components/style-map-IgqIKvlE.js +0 -53
  461. package/components/text-field-BTkr42k4.cjs +0 -85
  462. package/components/text-field-ol9Ed5lQ.js +0 -314
  463. package/components/text-field.module-ColtFhf_.js +0 -21
  464. package/components/text-field.module-p_VF2tC_.cjs +0 -18
  465. package/components/unit-input/index.cjs +0 -43
  466. package/components/unit-input/index.d.ts +0 -7
  467. package/components/unit-input/index.js +0 -183
  468. package/components/unit-input/unit-input.d.ts +0 -33
  469. /package/components/date-time-picker/{helpers.d.ts → shared/helpers.d.ts} +0 -0
  470. /package/components/date-time-picker/{segments → shared/segments}/date/day-segment.d.ts +0 -0
  471. /package/components/date-time-picker/{segments → shared/segments}/date/month-segment.d.ts +0 -0
  472. /package/components/date-time-picker/{segments → shared/segments}/date/year-segment.d.ts +0 -0
  473. /package/components/date-time-picker/{segments → shared/segments}/date-time-segments.d.ts +0 -0
  474. /package/components/date-time-picker/{segments → shared/segments}/editable-segment.d.ts +0 -0
  475. /package/components/date-time-picker/{segments → shared/segments}/literal-segment.d.ts +0 -0
  476. /package/components/date-time-picker/{segments → shared/segments}/modifiers/clear-modifier.d.ts +0 -0
  477. /package/components/date-time-picker/{segments → shared/segments}/modifiers/decrement-modifier.d.ts +0 -0
  478. /package/components/date-time-picker/{segments → shared/segments}/modifiers/increment-modifier.d.ts +0 -0
  479. /package/components/date-time-picker/{segments → shared/segments}/modifiers/input-modifier.d.ts +0 -0
  480. /package/components/date-time-picker/{segments → shared/segments}/modifiers/segments-modifier.d.ts +0 -0
  481. /package/components/date-time-picker/{segments → shared/segments}/segments-factory.d.ts +0 -0
  482. /package/components/date-time-picker/{segments → shared/segments}/segments-formatter.d.ts +0 -0
  483. /package/components/date-time-picker/{segments → shared/segments}/time/day-period-segment.d.ts +0 -0
  484. /package/components/date-time-picker/{segments → shared/segments}/time/hour-segment.d.ts +0 -0
  485. /package/components/date-time-picker/{segments → shared/segments}/time/millisecond-segment.d.ts +0 -0
  486. /package/components/date-time-picker/{segments → shared/segments}/time/minute-segment.d.ts +0 -0
  487. /package/components/date-time-picker/{segments → shared/segments}/time/second-segment.d.ts +0 -0
@@ -29,6 +29,22 @@ export declare class LuzmoOption extends LuzmoOption_base {
29
29
  focused: boolean;
30
30
  selected: boolean;
31
31
  emphasized: boolean;
32
+ /**
33
+ * Whether this option has children and can be expanded/collapsed.
34
+ */
35
+ expandable: boolean;
36
+ /**
37
+ * Whether this expandable option is currently expanded.
38
+ */
39
+ expanded: boolean;
40
+ /**
41
+ * Whether this option is a child of an expandable parent.
42
+ */
43
+ childOption: boolean;
44
+ /**
45
+ * Whether this expandable parent has at least one selected child.
46
+ */
47
+ hasSelectedChild: boolean;
32
48
  /**
33
49
  * Type of visual selection
34
50
  */
@@ -1,4 +1,3 @@
1
- import '@lit-labs/virtualizer';
2
1
  import { LitVirtualizer } from '@lit-labs/virtualizer/LitVirtualizer.js';
3
2
  import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
4
3
  import { LuzmoElement } from '../../utils/base';
@@ -16,7 +15,19 @@ export type OptionValue = {
16
15
  shortLabel?: string;
17
16
  disabled?: boolean;
18
17
  selected?: boolean;
18
+ children?: OptionValue[];
19
19
  };
20
+ /**
21
+ * @internal
22
+ * Extended option type used internally for flattened rendering of hierarchical options.
23
+ */
24
+ export type FlatOptionValue = OptionValue & {
25
+ _isChild?: boolean;
26
+ _parentValue?: string | number;
27
+ };
28
+ export type OptionIconRenderer = (option: OptionValue, ctx: {
29
+ size: string;
30
+ }) => TemplateResult | null;
20
31
  export declare const VIRTUALIZE_AS_OF_NUM_ITEMS = 25;
21
32
  declare const LuzmoOptions_base: typeof LuzmoElement & {
22
33
  new (...args: any[]): import("../..").SizedElementInterface;
@@ -90,6 +101,11 @@ export declare class LuzmoOptions extends LuzmoOptions_base {
90
101
  * @default []
91
102
  */
92
103
  value: (string | number | null)[];
104
+ /**
105
+ * Optional icon renderer callback for option icon area.
106
+ * When it returns null, default icon rendering is used.
107
+ */
108
+ optionIconRenderer?: OptionIconRenderer;
93
109
  /**
94
110
  * @internal
95
111
  */
@@ -111,15 +127,34 @@ export declare class LuzmoOptions extends LuzmoOptions_base {
111
127
  /**
112
128
  * @internal
113
129
  */
114
- private get _virtualizeActive();
130
+ private _selectedOptions;
115
131
  /**
116
132
  * @internal
117
133
  */
118
- private _selectedOptions;
134
+ private _firstVisibleIndex;
119
135
  /**
136
+ * Tracks which parent options are currently expanded (by value).
120
137
  * @internal
121
138
  */
122
- private _firstVisibleIndex;
139
+ private _expandedValues;
140
+ /**
141
+ * Returns a flattened list of options where expanded parents have their children
142
+ * injected immediately after them. Used for rendering and keyboard navigation.
143
+ * @internal
144
+ */
145
+ private get _flattenedOptions();
146
+ /**
147
+ * Returns true if the maximum possible options count (all children expanded)
148
+ * exceeds the virtualization threshold. Uses the total potential count so that
149
+ * expanding/collapsing parents does not toggle the rendering strategy.
150
+ * @internal
151
+ */
152
+ private get _flatVirtualizeActive();
153
+ /**
154
+ * Toggles the expand/collapse state of a parent option.
155
+ * @internal
156
+ */
157
+ private toggleExpand;
123
158
  constructor();
124
159
  protected firstUpdated(changed: PropertyValues): void;
125
160
  protected willUpdate(changes: PropertyValues<this>): void;
@@ -144,6 +179,11 @@ export declare class LuzmoOptions extends LuzmoOptions_base {
144
179
  protected rangeChange(event: any): void;
145
180
  private toggleOption;
146
181
  protected handleOptionClick(option: OptionValue, event: Event): void;
182
+ /**
183
+ * Handles click on an expandable parent option.
184
+ * @internal
185
+ */
186
+ protected handleExpandClick(option: OptionValue): void;
147
187
  render(): TemplateResult;
148
188
  connectedCallback(): void;
149
189
  disconnectedCallback(): void;
@@ -0,0 +1,101 @@
1
+ /*! * Lucero - The design system for Luzmo.
2
+ *
3
+ * Copyright © 2025 Luzmo
4
+ * All rights reserved.
5
+ * Lucero (“Luzmo Design System”) must be used according to the Luzmo Terms of Service.
6
+ * This license allows users with a current active Luzmo account to use Lucero.
7
+ * This license terminates automatically if a user no longer has an active Luzmo account.
8
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
9
+ *
10
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
11
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
12
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
13
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
14
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
15
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
16
+ * SOFTWARE.
17
+ * */
18
+ require(`./chunk-D-qHiVGv.cjs`);const e=require(`./decorate-B2wePfNm.cjs`),t=require(`./sized-mixin-StFA4y0J.cjs`),n=require(`./focusable-CupEoHmn.cjs`),r=require(`./like-anchor-BZJXts_H.cjs`),i=require(`./observe-slot-text-BhTcGuHY.cjs`),a=require(`./random-id-B51lUxUB.cjs`),o=require(`./observe-slot-presence-Dx8hzNzK.cjs`),s=require(`./divider.module-CL60P_z8.cjs`);require(`./progress-circle/index.cjs`);let c=require(`lit`),l=require(`lit/decorators.js`),u=require(`@luzmo/icons`),d=require(`@lit-labs/observers/mutation-controller.js`),f=require(`@lit-labs/virtualizer/LitVirtualizer.js`),p=require(`lit/directives/repeat.js`);var m=`#icon{height:var(--luzmo-option-icon-container-height,var(--option-icon-container-height));min-height:var(--luzmo-option-icon-size,var(--option-icon-height));color:var(--highcontrast-option-color-default,var(--luzmo-option-label-icon-color-default,var(--option-label-icon-color-default)));grid-area:iconArea;justify-content:center;align-self:start;align-items:center;display:flex}::slotted([slot=icon]){fill:var(--highcontrast-option-color-default,var(--luzmo-option-label-icon-color-default,var(--option-label-icon-color-default)));block-size:var(--luzmo-option-icon-size,var(--option-icon-height));inline-size:var(--luzmo-option-icon-width,var(--option-icon-width));font-size:var(--luzmo-option-icon-size,var(--option-icon-height));border-radius:var(--luzmo-option-icon-border-radius,0);border-width:var(--luzmo-option-icon-border-width,0);border-style:var(--luzmo-option-icon-border-style,solid);border-color:var(--luzmo-option-icon-border-color,transparent);text-align:center;--luzmo-icon-vertical-align:0;--luzmo-icon-img-object-fit:var(--luzmo-option-icon-object-fit,var(--option-icon-object-fit,fill));--luzmo-icon-img-object-position:var(--luzmo-option-icon-object-position,var(--option-icon-object-position,50% 50%));justify-content:center;align-items:center;margin-inline-end:max(var(--luzmo-option-label-text-to-visual,var(--option-label-text-to-visual)), var(--luzmo-option-icon-size,var(--option-icon-height)) * .35);display:flex;overflow:hidden}::slotted([slot=icon][data-option-thumbnail]){border-radius:var(--luzmo-option-thumbnail-border-radius,var(--luzmo-option-icon-border-radius,var(--luzmo-border-radius-s,4px)));border-width:var(--luzmo-option-thumbnail-border-width,1px);border-style:var(--luzmo-option-thumbnail-border-style,solid);border-color:var(--luzmo-option-thumbnail-border-color,var(--luzmo-option-icon-border-color,var(--luzmo-border-color-full,var(--luzmo-border-color,#0000001f))))}:host{cursor:pointer;box-sizing:border-box;background-color:var(--highcontrast-option-background-color-default,var(--luzmo-option-background-color-default,var(--option-background-color-default)));line-height:var(--luzmo-option-label-line-height,var(--option-label-line-height));min-block-size:max(var(--luzmo-option-min-height,var(--option-min-height)), var(--luzmo-option-icon-size,var(--option-icon-height)) + var(--luzmo-option-top-edge-to-text,var(--option-top-edge-to-text)) + var(--luzmo-option-bottom-edge-to-text,var(--option-bottom-edge-to-text)));padding-block-start:var(--luzmo-option-top-edge-to-text,var(--option-top-edge-to-text));padding-block-end:var(--luzmo-option-bottom-edge-to-text,var(--option-bottom-edge-to-text));padding-inline:var(--luzmo-option-label-inline-edge-to-content,var(--option-label-inline-edge-to-content));outline:none;flex-shrink:0;grid-template:". .headingIconArea sectionHeadingArea. .""selectedArea checkArea iconArea labelArea valueArea actionsArea"1fr". . .descriptionArea. ."". . . . . ."/auto auto auto 1fr auto auto;justify-content:start;align-items:center;margin:0;-webkit-text-decoration:none;text-decoration:none;display:grid;position:relative}:host:focus-visible{outline:none}#label{grid-area:submenuItemLabelArea}.checkmark,.checkbox{opacity:1;grid-area:checkArea;align-self:start;display:block}.checkmark{font-size:var(--luzmo-option-checkmark-size,var(--option-checkmark-size));fill:var(--highcontrast-options-checkmark-icon-color-default,var(--luzmo-options-checkmark-icon-color-default,var(--options-checkmark-icon-color-default)));color:var(--highcontrast-options-checkmark-icon-color-default,var(--luzmo-options-checkmark-icon-color-default,var(--options-checkmark-icon-color-default)));margin-block-start:calc(var(--luzmo-option-top-to-checkmark,var(--option-top-to-checkmark)) - var(--luzmo-option-top-edge-to-text,var(--option-top-edge-to-text)));margin-inline-end:var(--luzmo-option-text-to-control,var(--option-label-text-to-control))}.checkbox{font-size:var(--luzmo-option-checkbox-size,var(--option-checkbox-size));fill:var(--highcontrast-options-checkbox-icon-color-default,var(--luzmo-options-checkbox-icon-color-default,var(--options-checkbox-icon-color-default)));color:var(--highcontrast-options-checkbox-icon-color-default,var(--luzmo-options-checkbox-icon-color-default,var(--options-checkbox-icon-color-default)));margin-block-start:calc(var(--luzmo-option-top-to-checkbox,var(--option-top-to-checkbox)) - var(--luzmo-option-top-edge-to-text,var(--option-top-edge-to-text)));margin-inline-end:var(--luzmo-option-text-to-control,var(--option-label-text-to-control))}::slotted([slot=value]){grid-area:submenuItemValueArea}:host([focused]){background-color:var(--highcontrast-option-background-color-focus,var(--luzmo-option-background-color-key-focus,var(--option-background-color-key-focus)));outline:none}:host([focused])>#label,:host(:focus)>#label{color:var(--highcontrast-option-color-focus,var(--luzmo-option-label-content-color-focus,var(--option-label-content-color-focus)))}:host([focused])>[name=description]::slotted(*),:host(:focus)>[name=description]::slotted(*){color:var(--highcontrast-option-color-focus,var(--luzmo-option-description-color-focus,var(--option-description-color-focus)))}:host([focused])>::slotted([slot=value]),:host(:focus)>::slotted([slot=value]){color:var(--highcontrast-option-color-focus,var(--luzmo-option-value-color-focus,var(--option-value-color-focus)))}:host([focused])>.icon:not(.checkmark,.checkbox),:host(:focus)>.icon:not(.checkmark,.checkbox){fill:var(--highcontrast-option-color-focus,var(--luzmo-option-label-icon-color-focus,var(--option-label-icon-color-focus)));color:var(--highcontrast-option-color-focus,var(--luzmo-option-label-icon-color-focus,var(--option-label-icon-color-focus)))}:host([focused])>.checkmark,:host(:focus)>.checkmark{fill:var(--highcontrast-option-color-focus,var(--luzmo-options-checkmark-icon-color-focus,var(--options-checkmark-icon-color-focus)));color:var(--highcontrast-option-color-focus,var(--luzmo-options-checkmark-icon-color-focus,var(--options-checkmark-icon-color-focus)))}:host([focused])>.checkbox,:host(:focus)>.checkbox{fill:var(--highcontrast-option-color-focus,var(--luzmo-options-checkbox-icon-color-focus,var(--options-checkbox-icon-color-focus)));color:var(--highcontrast-option-color-focus,var(--luzmo-options-checkbox-icon-color-focus,var(--options-checkbox-icon-color-focus)))}:is(:host:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),:host([dir=rtl])){--option-focus-indicator-direction-scalar:-1}:host(:is(:active,[active])){background-color:var(--highcontrast-option-background-color-focus,var(--luzmo-option-background-color-down,var(--option-background-color-down)))}:host(:is(:active,[active]))>#label{color:var(--highcontrast-option-color-focus,var(--luzmo-option-label-content-color-down,var(--option-label-content-color-down)))}:host(:is(:active,[active]))>[name=description]::slotted(*){color:var(--highcontrast-option-color-focus,var(--luzmo-option-description-color-down,var(--option-description-color-down)))}:host(:is(:active,[active]))>::slotted([slot=value]){color:var(--highcontrast-option-color-focus,var(--luzmo-option-value-color-down,var(--option-value-color-down)))}:host(:is(:active,[active]))>.icon:not(.checkmark,.checkbox){fill:var(--highcontrast-option-color-focus,var(--luzmo-option-label-icon-color-down,var(--option-label-icon-color-down)));color:var(--highcontrast-option-color-focus,var(--luzmo-option-label-icon-color-down,var(--option-label-icon-color-down)))}:host(:is(:active,[active]))>.checkmark{fill:var(--highcontrast-option-color-focus,var(--luzmo-options-checkmark-icon-color-down,var(--options-checkmark-icon-color-down)));color:var(--highcontrast-option-color-focus,var(--luzmo-options-checkmark-icon-color-down,var(--options-checkmark-icon-color-down)))}:host(:is(:active,[active]))>.checkbox{fill:var(--highcontrast-option-color-focus,var(--luzmo-options-checkbox-icon-color-down,var(--options-checkbox-icon-color-down)));color:var(--highcontrast-option-color-focus,var(--luzmo-options-checkbox-icon-color-down,var(--options-checkbox-icon-color-down)))}:host([disabled]),:host([aria-disabled=true]){background-color:initial}:host([disabled]) #label,:host([disabled]) ::slotted([slot=value]),:host([aria-disabled=true]) #label,:host([aria-disabled=true]) ::slotted([slot=value]){color:var(--highcontrast-option-color-disabled,var(--luzmo-option-label-content-color-disabled,var(--option-label-content-color-disabled)))}:host([disabled]) [name=description]::slotted(*),:host([aria-disabled=true]) [name=description]::slotted(*){color:var(--highcontrast-option-color-disabled,var(--luzmo-option-description-color-disabled,var(--option-description-color-disabled)))}:host([disabled]) ::slotted([slot=icon]),:host([aria-disabled=true]) ::slotted([slot=icon]){color:var(--highcontrast-option-color-disabled,var(--luzmo-option-label-icon-color-disabled,var(--option-label-icon-color-disabled)));fill:var(--highcontrast-option-color-disabled,var(--luzmo-option-label-icon-color-disabled,var(--option-label-icon-color-disabled)))}:host([focused]){box-shadow:inset calc(var(--luzmo-option-focus-indicator-width,var(--option-focus-indicator-width)) * 1) 0 0 0 var(--highcontrast-option-focus-indicator-color,var(--luzmo-option-focus-indicator-color,var(--option-focus-indicator-color)));box-shadow:inset calc(var(--luzmo-option-focus-indicator-width,var(--option-focus-indicator-width)) * var(--option-focus-indicator-direction-scalar,1)) 0 0 0 var(--highcontrast-option-focus-indicator-color,var(--luzmo-option-focus-indicator-color,var(--option-focus-indicator-color)))}#label{font-size:var(--luzmo-option-label-font-size,var(--option-label-font-size));color:var(--highcontrast-option-color-default,var(--luzmo-option-label-content-color-default,var(--option-label-content-color-default)));-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;grid-area:labelArea}:host([variant=highlight][selected]){background-color:var(--luzmo-option-highlight-selected-label-background-color,var(--option-highlight-selected-label-background-color))}:host([variant=highlight][selected]) #label{color:var(--luzmo-option-highlight-selected-label-content-color,var(--option-highlight-selected-label-content-color))}:host([variant=highlight][selected]) [name=description]::slotted(*){color:var(--luzmo-option-highlight-selected-description-color,var(--option-highlight-selected-label-content-color))}:host([variant=highlight][selected]):hover #label{color:var(--luzmo-option-highlight-selected-label-content-color-hover,var(--option-highlight-selected-label-content-color-hover))}:host([variant=highlight][selected]):hover [name=description]::slotted(*){color:var(--luzmo-option-highlight-selected-description-color-hover,var(--option-highlight-selected-label-content-color-hover))}:host([variant=highlight][selected]):active #label{color:var(--luzmo-option-highlight-selected-label-content-color-down,var(--option-highlight-selected-label-content-color-down))}:host([variant=highlight][selected]):active [name=description]::slotted(*){color:var(--luzmo-option-highlight-selected-description-color-down,var(--option-highlight-selected-label-content-color-down))}:host([variant=highlight][selected]):focus #label{color:var(--luzmo-option-highlight-selected-label-content-color-focus,var(--option-highlight-selected-label-content-color-focus))}:host([variant=highlight][selected]):focus [name=description]::slotted(*){color:var(--luzmo-option-highlight-selected-description-color-focus,var(--option-highlight-selected-label-content-color-focus))}:host([variant=highlight][selected]) ::slotted([slot=icon]){color:var(--highcontrast-option-color-disabled,var(--luzmo-option-highlight-selected-label-content-color,var(--option-highlight-selected-label-content-color)));fill:var(--highcontrast-option-color-disabled,var(--luzmo-option-highlight-selected-label-content-color,var(--option-highlight-selected-label-content-color)))}::slotted([slot=value]){color:var(--highcontrast-option-color-default,var(--luzmo-option-value-color-default,var(--option-value-color-default)));font-size:var(--luzmo-option-label-font-size,var(--option-label-font-size));grid-area:valueArea;justify-self:end}[name=description]::slotted(*){color:var(--highcontrast-option-color-default,var(--luzmo-option-description-color-default,var(--option-description-color-default)));font-size:var(--luzmo-option-description-font-size,var(--option-description-font-size));-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word;line-height:var(--luzmo-option-description-line-height,var(--option-description-line-height));grid-area:descriptionArea;margin-block-start:var(--luzmo-option-label-to-description-spacing,var(--option-label-to-description-spacing))}:host([no-wrap]) #label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:host([expandable]){cursor:pointer}:host([expandable][has-selected-child][variant=highlight]:not([expanded])){background-color:color-mix(in srgb, var(--luzmo-option-highlight-selected-label-background-color,var(--option-highlight-selected-label-background-color)) 12%, transparent)}:host([expandable])>.checkmark{color:color-mix(in srgb, var(--highcontrast-options-checkmark-icon-color-default,var(--luzmo-options-checkmark-icon-color-default,var(--options-checkmark-icon-color-default))) 50%, transparent);fill:color-mix(in srgb, var(--highcontrast-options-checkmark-icon-color-default,var(--luzmo-options-checkmark-icon-color-default,var(--options-checkmark-icon-color-default))) 50%, transparent)}:host([expandable])>.checkbox{color:color-mix(in srgb, var(--highcontrast-options-checkbox-icon-color-default,var(--luzmo-options-checkbox-icon-color-default,var(--options-checkbox-icon-color-default))) 50%, transparent);fill:color-mix(in srgb, var(--highcontrast-options-checkbox-icon-color-default,var(--luzmo-options-checkbox-icon-color-default,var(--options-checkbox-icon-color-default))) 50%, transparent)}:host([expandable][has-selected-child])>.checkmark{color:color-mix(in srgb, var(--highcontrast-options-checkmark-icon-color-default,var(--luzmo-options-checkmark-icon-color-default,var(--options-checkmark-icon-color-default))) 50%, transparent);fill:color-mix(in srgb, var(--highcontrast-options-checkmark-icon-color-default,var(--luzmo-options-checkmark-icon-color-default,var(--options-checkmark-icon-color-default))) 50%, transparent)}:host([expandable][has-selected-child])>.checkbox{color:color-mix(in srgb, var(--highcontrast-options-checkbox-icon-color-default,var(--luzmo-options-checkbox-icon-color-default,var(--options-checkbox-icon-color-default))) 50%, transparent);fill:color-mix(in srgb, var(--highcontrast-options-checkbox-icon-color-default,var(--luzmo-options-checkbox-icon-color-default,var(--options-checkbox-icon-color-default))) 50%, transparent)}:host([child-option]){padding-inline-start:calc(var(--luzmo-option-label-inline-edge-to-content,var(--option-label-inline-edge-to-content)) + 24px)}@media (hover:hover){:host(:hover){background-color:var(--highcontrast-option-background-color-focus,var(--luzmo-option-background-color-hover,var(--option-background-color-hover)))}:host(:hover)>#label{color:var(--highcontrast-option-color-focus,var(--luzmo-option-label-content-color-hover,var(--option-label-content-color-hover)))}:host([variant=highlight][selected]:hover)>#label{color:var(--luzmo-option-highlight-selected-label-content-color-hover,var(--option-highlight-selected-label-content-color-hover))}:host([variant=highlight][selected]:hover)>[name=description]::slotted(*){color:var(--luzmo-option-highlight-selected-description-color-hover,var(--option-highlight-selected-label-content-color-hover))}:host(:hover)>[name=description]::slotted(*){color:var(--highcontrast-option-color-focus,var(--luzmo-option-description-color-hover,var(--option-description-color-hover)))}:host(:hover)>::slotted([slot=value]){color:var(--highcontrast-option-color-focus,var(--luzmo-option-value-color-hover,var(--option-value-color-hover)))}:host(:hover)>.icon:not(.checkmark,.checkbox){fill:var(--highcontrast-option-color-focus,var(--luzmo-option-label-icon-color-hover,var(--option-label-icon-color-hover)));color:var(--highcontrast-option-color-focus,var(--luzmo-option-label-icon-color-hover,var(--option-label-icon-color-hover)))}:host([variant=highlight][selected]:hover)>.icon:not(.checkmark,.checkbox){fill:var(--luzmo-option-highlight-selected-label-icon-color-hover,var(--option-highlight-selected-label-icon-color-hover))}:host(:hover)>.checkmark{fill:var(--highcontrast-option-color-focus,var(--luzmo-options-checkmark-icon-color-hover,var(--options-checkmark-icon-color-hover)));color:var(--highcontrast-option-color-focus,var(--luzmo-options-checkmark-icon-color-hover,var(--options-checkmark-icon-color-hover)))}:host(:hover)>.checkbox{fill:var(--highcontrast-option-color-focus,var(--luzmo-options-checkbox-icon-color-hover,var(--options-checkbox-icon-color-hover)));color:var(--highcontrast-option-color-focus,var(--luzmo-options-checkbox-icon-color-hover,var(--options-checkbox-icon-color-hover)))}:host([disabled]:hover),:host([aria-disabled=true]:hover){cursor:default;background-color:initial}:host([disabled]:hover) #label,:host([disabled]:hover) ::slotted([slot=value]),:host([aria-disabled=true]:hover) #label,:host([aria-disabled=true]:hover) ::slotted([slot=value]){color:var(--highcontrast-option-color-disabled,var(--luzmo-option-label-content-color-disabled,var(--option-label-content-color-disabled)))}:host([disabled]:hover) [name=description]::slotted(*),:host([aria-disabled=true]:hover) [name=description]::slotted(*){color:var(--highcontrast-option-color-disabled,var(--luzmo-option-description-color-disabled,var(--option-description-color-disabled)))}:host([disabled]:hover) ::slotted([slot=icon]),:host([aria-disabled=true]:hover) ::slotted([slot=icon]){color:var(--highcontrast-option-color-disabled,var(--luzmo-option-label-icon-color-disabled,var(--option-label-icon-color-disabled)));fill:var(--highcontrast-option-color-disabled,var(--luzmo-option-label-icon-color-disabled,var(--option-label-icon-color-disabled)))}}:host([emphasized]){--options-checkmark-icon-color-default:var(--luzmo-primary);--options-checkmark-icon-color-hover:var(--luzmo-primary-hover);--options-checkmark-icon-color-down:var(--luzmo-primary-down);--options-checkmark-icon-color-focus:var(--luzmo-primary-focus);--options-checkbox-icon-color-default:var(--luzmo-primary);--options-checkbox-icon-color-hover:var(--luzmo-primary-hover);--options-checkbox-icon-color-down:var(--luzmo-primary-down);--options-checkbox-icon-color-focus:var(--luzmo-primary-focus)}:host{text-align:initial;font-family:var(--luzmo-option-font-family,var(--luzmo-font-family))}:host([hidden]){display:none}:host([disabled]){pointer-events:none}:host([disabled]) [name=value]::slotted(*){color:var(--luzmo-option-label-icon-color-disabled,var(--luzmo-disabled-color))}#button{position:absolute;inset:0}.icon-container>svg{vertical-align:top}:host([dir=ltr]) [icon-only]::slotted(:last-of-type){margin-right:auto}:host([dir=rtl]) [icon-only]::slotted(:last-of-type){margin-left:auto}@media (forced-colors:active){:host{forced-color-adjust:none}}:host([no-wrap]) #label{display:block}`,h=e=>c.html`
19
+ <span class="icon-container icon checkmark ${e.join(` `)}">
20
+ ${(0,u.luzmoIcon)(u.luzmoCheck)}
21
+ </span>
22
+ `,g=e=>c.html`
23
+ <span class="icon-container icon checkbox ${e.join(` `)}">
24
+ ${(0,u.luzmoIcon)(u.luzmoCheckbox)}
25
+ </span>
26
+ `,_=e=>c.html`
27
+ <span class="icon-container icon checkbox ${e.join(` `)}">
28
+ ${(0,u.luzmoIcon)(u.luzmoCheckboxChecked)}
29
+ </span>
30
+ `,v=class extends r.t(i.t(o.t(n.t,`[slot="icon"]`))){static get styles(){return[(0,c.unsafeCSS)(m)]}get value(){return this._value||this.itemText}set value(e){e!==this._value&&(this._value=e||``,this._value?this.setAttribute(`value`,this._value):this.removeAttribute(`value`))}get itemText(){return this.itemChildren.content.reduce((e,t)=>e+(t.textContent||``).trim(),``)}get focusElement(){return this}get hasIcon(){return this.slotContentIsPresent}get itemChildren(){if(!this.iconSlot||!this.contentSlot)return{icon:[],content:[]};if(this._itemChildren)return this._itemChildren;let e=this.iconSlot.assignedElements().map(e=>{let t=e.cloneNode(!0);return t.removeAttribute(`slot`),t.classList.toggle(`icon`),t}),t=this.contentSlot.assignedNodes().map(e=>e.cloneNode(!0));return this._itemChildren={icon:e,content:t},this._itemChildren}constructor(){super(),this.active=!1,this.focused=!1,this.selected=!1,this.emphasized=!1,this.expandable=!1,this.expanded=!1,this.childOption=!1,this.hasSelectedChild=!1,this.variant=`checkmarks`,this._value=``,this.noWrap=!1,this.renderCheckIcon=(e,t)=>{let n=t?[`check-icon--with-adjacent-icon`]:[];return this.variant===`checkboxes`?e?_(n):g(n):e&&this.variant!==`highlight`?h(n):c.html``},this.proxyFocus=()=>{this.focus()},this.willDispatchUpdate=!1,this.addEventListener(`click`,this.handleClickCapture,{capture:!0}),new d.MutationController(this,{config:{characterData:!0,childList:!0,subtree:!0},callback:()=>{this.breakItemChildrenCache()}})}click(){this.disabled||this.shouldProxyClick()||super.click()}handleClickCapture(e){if(this.disabled)return e.preventDefault(),e.stopImmediatePropagation(),e.stopPropagation(),!1}shouldProxyClick(){let e=!1;return this.anchorElement&&(this.anchorElement.click(),e=!0),e}breakItemChildrenCache(){this._itemChildren=void 0,this.triggerUpdate()}render(){return c.html`
31
+ ${this.renderCheckIcon(this.selected||this.hasSelectedChild,this.hasIcon)}
32
+ <div id="icon">
33
+ <slot name="icon"></slot>
34
+ </div>
35
+ <div id="label">
36
+ <slot id="slot"></slot>
37
+ </div>
38
+ <slot name="description"></slot>
39
+ <slot name="value"></slot>
40
+ ${this.href&&this.href.length>0?super.renderAnchor({id:`button`,ariaHidden:!0,className:`button anchor hidden`}):c.nothing}
41
+ `}handlePointerdown(){}firstUpdated(e){super.firstUpdated(e),this.setAttribute(`tabindex`,`-1`),this.addEventListener(`pointerdown`,this.handlePointerdown),this.hasAttribute(`id`)||(this.id=`luzmo-option-${a.t()}`)}updateAriaSelected(){let e=this.getAttribute(`role`);e===`option`?this.setAttribute(`aria-selected`,this.selected?`true`:`false`):e===`optioncheckbox`&&this.setAttribute(`aria-checked`,this.selected?`true`:`false`)}setRole(e){this.setAttribute(`role`,e),this.updateAriaSelected()}updated(e){super.updated(e),e.has(`label`)&&(this.label||e.get(`label`)!==void 0)&&this.setAttribute(`aria-label`,this.label||``),this.anchorElement&&(this.anchorElement.addEventListener(`focus`,this.proxyFocus),this.anchorElement.tabIndex=-1),e.has(`selected`)&&this.updateAriaSelected()}connectedCallback(){super.connectedCallback(),this.triggerUpdate()}async triggerUpdate(){this.willDispatchUpdate||(this.willDispatchUpdate=!0,await new Promise(e=>requestAnimationFrame(e)),this.dispatchUpdate())}dispatchUpdate(){this.isConnected&&(this.willDispatchUpdate=!1)}};e.t([(0,l.property)({type:Boolean,reflect:!0})],v.prototype,`active`,void 0),e.t([(0,l.property)({type:Boolean,reflect:!0})],v.prototype,`focused`,void 0),e.t([(0,l.property)({type:Boolean,reflect:!0})],v.prototype,`selected`,void 0),e.t([(0,l.property)({type:Boolean,reflect:!0})],v.prototype,`emphasized`,void 0),e.t([(0,l.property)({type:Boolean,reflect:!0})],v.prototype,`expandable`,void 0),e.t([(0,l.property)({type:Boolean,reflect:!0})],v.prototype,`expanded`,void 0),e.t([(0,l.property)({type:Boolean,reflect:!0,attribute:`child-option`})],v.prototype,`childOption`,void 0),e.t([(0,l.property)({type:Boolean,reflect:!0,attribute:`has-selected-child`})],v.prototype,`hasSelectedChild`,void 0),e.t([(0,l.property)({type:String,reflect:!0})],v.prototype,`variant`,void 0),e.t([(0,l.property)({type:String})],v.prototype,`value`,null),e.t([(0,l.query)(`slot:not([name])`)],v.prototype,`contentSlot`,void 0),e.t([(0,l.query)(`slot[name="icon"]`)],v.prototype,`iconSlot`,void 0),e.t([(0,l.property)({type:Boolean,reflect:!0,attribute:`no-wrap`,hasChanged(){return!1}})],v.prototype,`noWrap`,void 0),e.t([(0,l.query)(`.anchor`)],v.prototype,`anchorElement`,void 0);var y=`:host{--options-divider-thickness:var(--divider-thickness-medium,var(--luzmo-border-width));inline-size:auto;margin-block:var(--luzmo-options-section-divider-margin-block,max(0px, (var(--option-section-divider-height) - var(--options-divider-thickness)) / 2));margin-inline:var(--luzmo-option-label-inline-edge-to-content,var(--option-label-inline-edge-to-content));flex-shrink:0;display:block;overflow:visible}`,b=class extends t.n(e.n,{validSizes:[`s`,`m`,`l`]}){static get styles(){return[(0,c.unsafeCSS)(s.t),(0,c.unsafeCSS)(y)]}firstUpdated(e){super.firstUpdated(e),this.hasAttribute(`role`)||this.setAttribute(`role`,`separator`)}},x=`:host{--option-top-to-action:var(--luzmo-spacing-1);--option-top-to-checkbox:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--option-label-line-height:var(--luzmo-line-height);--option-label-line-height-cjk:1.5;--option-label-to-description-spacing:1px;--option-focus-indicator-width:var(--luzmo-indicator-width);--option-focus-indicator-color:var(--luzmo-indicator-color);--option-label-to-value-area-min-spacing:var(--luzmo-spacing-3);--option-label-content-color-default:var(--luzmo-font-color);--option-label-content-color-hover:var(--luzmo-font-color-hover);--option-label-content-color-down:var(--luzmo-font-color-down);--option-label-content-color-focus:var(--luzmo-font-color-focus);--option-label-icon-color-default:var(--luzmo-font-color);--option-label-icon-color-hover:var(--luzmo-font-color-hover);--option-label-icon-color-down:var(--luzmo-font-color-down);--option-label-icon-color-focus:var(--luzmo-font-color-focus);--option-highlight-selected-label-background-color:var(--luzmo-primary);--option-highlight-selected-label-content-color:var(--luzmo-primary-inverse-color);--option-highlight-selected-label-content-color-hover:var(--luzmo-primary-inverse-color);--option-highlight-selected-label-content-color-down:var(--luzmo-primary-inverse-color);--option-highlight-selected-label-content-color-focus:var(--luzmo-primary-inverse-color);--option-label-content-color-disabled:var(--luzmo-font-color-disabled);--option-label-icon-color-disabled:var(--luzmo-font-color-disabled);--option-description-line-height:var(--luzmo-line-height);--option-description-line-height-cjk:1.5;--option-description-color-default:var(--luzmo-font-color);--option-description-color-hover:var(--luzmo-font-color-hover);--option-description-color-down:var(--luzmo-font-color-down);--option-description-color-focus:var(--luzmo-font-color-focus);--option-description-color-disabled:var(--luzmo-disabled-color);--options-section-header-line-height:var(--luzmo-line-height);--options-section-header-line-height-cjk:1.5;--options-section-header-font-weight:bold;--options-section-header-color:var(--luzmo-font-color-down);--options-collapsible-icon-color:var(--luzmo-font-color-down);--options-checkmark-icon-color-default:var(--luzmo-font-color);--options-checkmark-icon-color-hover:var(--luzmo-font-color-hover);--options-checkmark-icon-color-down:var(--luzmo-font-color-down);--options-checkmark-icon-color-focus:var(--luzmo-font-color-focus);--options-checkbox-icon-color-default:var(--luzmo-font-color);--options-checkbox-icon-color-hover:var(--luzmo-font-color-hover);--options-checkbox-icon-color-down:var(--luzmo-font-color-down);--options-checkbox-icon-color-focus:var(--luzmo-font-color-focus);--options-drillin-icon-color-default:var(--luzmo-font-color);--options-drillin-icon-color-hover:var(--luzmo-font-color-hover);--options-drillin-icon-color-down:var(--luzmo-font-color-down);--options-drillin-icon-color-focus:var(--luzmo-font-color-focus);--option-value-color-default:var(--luzmo-font-color);--option-value-color-hover:var(--luzmo-font-color-hover);--option-value-color-down:var(--luzmo-font-color-down);--option-value-color-focus:var(--luzmo-font-color-focus);--option-collapsible-no-icon-suboption-padding-x-start:28px;--option-background-color-selected:var(--luzmo-background-color);--option-background-color-default:var(--luzmo-background-color);--option-background-color-hover:var(--luzmo-background-color-hover);--option-background-color-down:var(--luzmo-background-color-down);--option-background-color-key-focus:var(--luzmo-background-color-focus);--options-scrollbar-width:var(--luzmo-scrollbar-size);--options-scrollbar-track-background:var(--luzmo-scrollbar-track-background);--options-scrollbar-track-border-radius:var(--luzmo-scrollbar-track-border-radius);--options-scrollbar-thumb-background:var(--luzmo-scrollbar-thumb-background);--options-scrollbar-thumb-border-radius:var(--luzmo-scrollbar-thumb-border-radius);--options-scrollbar-thumb-hover-background:var(--luzmo-scrollbar-thumb-hover-background);--luzmo-option-thumbnail-border-radius:var(--luzmo-border-radius-s,4px);--luzmo-option-thumbnail-border-width:1px;--luzmo-option-thumbnail-border-style:solid;--luzmo-option-thumbnail-border-color:var(--luzmo-border-color-full,var(--luzmo-border-color,#0000001f));--option-min-height:var(--luzmo-component-height);--options-max-height:calc(8 * var(--option-min-height));--option-icon-container-height:18px;--options-pending-height:var(--option-min-height);--progress-circle-size:calc(var(--options-pending-height) - var(--option-top-edge-to-text) - var(--option-bottom-edge-to-text));--option-icon-height:var(--luzmo-font-size);--option-icon-width:var(--luzmo-font-size);--option-label-font-size:var(--luzmo-font-size);--option-label-text-to-visual:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--option-label-text-to-control:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--option-label-inline-edge-to-content:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--pending-inline-edge-to-content:var(--option-label-inline-edge-to-content);--option-top-edge-to-text:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--option-bottom-edge-to-text:var(--luzmo-spacing-3);--option-description-font-size:var(--luzmo-font-size-xs);--options-section-header-font-size:var(--luzmo-font-size);--options-section-header-min-width:var(--luzmo-component-height);--option-selectable-edge-to-text-not-selected:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--option-checkmark-size:var(--luzmo-font-size-xs);--option-checkbox-size:var(--luzmo-font-size-xs);--option-top-to-checkmark:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1))}:host([size=s]){--option-min-height:var(--luzmo-component-height-s);--option-icon-container-height:17px;--option-icon-height:var(--luzmo-font-size-s);--option-icon-width:var(--luzmo-font-size-s);--option-label-font-size:var(--luzmo-font-size-s);--option-label-text-to-visual:var(--luzmo-spacing-3);--option-label-text-to-control:var(--luzmo-spacing-3);--option-label-inline-edge-to-content:var(--luzmo-spacing-3);--option-top-edge-to-text:calc(var(--luzmo-spacing-1) + var(--luzmo-spacing-2));--option-bottom-edge-to-text:var(--luzmo-spacing-2);--option-description-font-size:var(--luzmo-font-size-xs);--options-section-header-font-size:var(--luzmo-font-size-s);--options-section-header-min-width:var(--luzmo-component-height-s);--option-selectable-edge-to-text-not-selected:var(--luzmo-spacing-3);--option-checkmark-size:var(--luzmo-font-size-xs);--option-checkbox-size:var(--luzmo-font-size-xs);--option-top-to-checkmark:var(--luzmo-spacing-3);--option-top-to-checkbox:var(--luzmo-spacing-3)}:host([size=l]){--option-min-height:var(--luzmo-component-height-l);--option-icon-container-height:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-1));--option-icon-height:var(--luzmo-font-size-l);--option-icon-width:var(--luzmo-font-size-l);--option-label-font-size:var(--luzmo-font-size-l);--option-label-text-to-visual:var(--luzmo-spacing-4);--option-label-text-to-control:var(--luzmo-spacing-4);--option-label-inline-edge-to-content:var(--luzmo-spacing-4);--option-top-edge-to-text:var(--luzmo-spacing-4);--option-bottom-edge-to-text:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--option-description-font-size:var(--luzmo-font-size-s);--options-section-header-font-size:var(--luzmo-font-size-l);--options-section-header-min-width:var(--luzmo-component-height-l);--option-selectable-edge-to-text-not-selected:var(--luzmo-spacing-4);--option-checkmark-size:var(--luzmo-font-size-s);--option-checkbox-size:var(--luzmo-font-size-s);--option-top-to-checkmark:var(--luzmo-spacing-4);--option-top-to-checkbox:var(--luzmo-spacing-4)}:host([size=xl]){--option-min-height:var(--luzmo-component-height-xl);--option-icon-container-height:26px;--option-icon-height:var(--luzmo-font-size-xl);--option-icon-width:var(--luzmo-font-size-xl);--option-label-font-size:var(--luzmo-font-size-xl);--option-label-text-to-visual:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--option-label-text-to-control:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--option-label-inline-edge-to-content:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--option-top-edge-to-text:var(--luzmo-spacing-4);--option-bottom-edge-to-text:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--option-description-font-size:var(--luzmo-font-size);--options-section-header-font-size:var(--luzmo-font-size-xl);--options-section-header-min-width:var(--luzmo-component-height-xl);--option-selectable-edge-to-text-not-selected:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--option-checkmark-size:var(--luzmo-font-size);--option-checkbox-size:var(--luzmo-font-size);--option-top-to-checkmark:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--option-top-to-checkbox:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1))}@media (forced-colors:active){:host{--highcontrast-option-background-color-default:ButtonFace;--highcontrast-option-color-default:ButtonText;--highcontrast-option-background-color-focus:Highlight;--highcontrast-option-color-focus:HighlightText;--highcontrast-options-checkmark-icon-color-default:Highlight;--highcontrast-options-checkbox-icon-color-default:Highlight;--highcontrast-option-color-disabled:GrayText;--highcontrast-option-focus-indicator-color:Highlight;--highcontrast-option-selected-background-color:Highlight;--highcontrast-option-selected-color:HighlightText}@supports (color:SelectedItem){:host{--highcontrast-option-selected-background-color:SelectedItem;--highcontrast-option-selected-color:SelectedItemText}}}:host{inline-size:auto;inline-size:var(--luzmo-options-inline-size,auto);box-sizing:border-box;max-height:var(--luzmo-options-max-height,var(--options-max-height));margin:0;padding:0;list-style-type:none;display:inline-block;overflow:auto}:host::-webkit-scrollbar{width:var(--luzmo-options-scrollbar-width,var(--options-scrollbar-width))}:host::-webkit-scrollbar-track{background:var(--luzmo-options-scrollbar-track-background,var(--options-scrollbar-track-background));border-radius:var(--luzmo-options-scrollbar-track-border-radius,var(--options-scrollbar-track-border-radius))}:host::-webkit-scrollbar-thumb{background:var(--luzmo-options-scrollbar-thumb-background,var(--options-scrollbar-thumb-background));border-radius:var(--luzmo-options-scrollbar-thumb-border-radius,var(--options-scrollbar-thumb-border-radius))}:host::-webkit-scrollbar-thumb:hover{background:var(--luzmo-options-scrollbar-thumb-hover-background,var(--options-scrollbar-thumb-hover-background))}:host{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-options-scrollbar-thumb-background,var(--options-scrollbar-thumb-background)) var(--luzmo-options-scrollbar-track-background,var(--options-scrollbar-track-background))}:host:lang(ja),:host:lang(ko),:host:lang(zh){--option-label-line-height:var(--luzmo-option-label-line-height-cjk,var(--option-label-line-height-cjk));--option-description-line-height:var(--luzmo-option-description-line-height-cjk,var(--option-description-line-height-cjk));--options-section-header-line-height:var(--luzmo-options-section-header-line-height-cjk,var(--options-section-header-line-height-cjk))}luzmo-option{width:100%}#pending{height:var(--options-pending-height);padding-inline:var(--pending-inline-edge-to-content);flex-shrink:0;align-items:center;display:flex}:host{flex-direction:column;width:100%;display:inline-flex}:host(:focus){outline:none}::slotted(*){flex-shrink:0}`;customElements.get(`lit-virtualizer`)||customElements.define(`lit-virtualizer`,f.LitVirtualizer);var S=e=>c.html`
42
+ <luzmo-icon
43
+ block
44
+ .icon=${u.luzmoAngleRight}
45
+ style="transition: transform var(--luzmo-animation-duration, 130ms) ease; transform: rotate(${e?`90deg`:`0deg`})"
46
+ ></luzmo-icon>
47
+ `,C=25;function w(e,t){return!!t&&(e===t||e.contains(t))}var T=class extends t.n(e.n,{noDefaultSize:!0}){static get styles(){return[(0,c.unsafeCSS)(x)]}get _flattenedOptions(){let e=[];for(let t of this.options)if(e.push(t),t.children?.length&&t.value!==void 0&&this._expandedValues.has(t.value))for(let n of t.children)e.push({...n,_isChild:!0,_parentValue:t.value});return e}get _flatVirtualizeActive(){let e=this.options.length;for(let t of this.options)t.children?.length&&(e+=t.children.length);return e>25}toggleExpand(e){let t=e.value;if(t===void 0)return;let n=new Set(this._expandedValues);n.has(t)?n.delete(t):n.add(t),this._expandedValues=n}constructor(){super(),this.label=``,this.variant=`highlight`,this.selects=`single`,this.emphasized=!1,this.pending=!1,this.options=[],this.value=[],this.focusedOptionIndex=0,this._selectedOptions=[],this._firstVisibleIndex=0,this._expandedValues=new Set,this.addEventListener(`focusin`,this.handleFocusin),this.addEventListener(`blur`,this.handleBlur)}firstUpdated(e){super.firstUpdated(e),this.hasAttribute(`tabindex`)||(this.tabIndex=0);let t=[new Promise(e=>requestAnimationFrame(()=>e(!0)))];[...this.children].forEach(e=>{e.localName===`luzmo-option`&&t.push(e.updateComplete)}),this.optionElementsUpdated=Promise.all(t)}willUpdate(e){e.has(`selects`)&&this.selects===`single`&&this.value?.length>1&&(this.value=this.value.slice(0,1))}updated(e){super.updated(e),e.has(`label`)&&(this.label||e.get(`label`)!==void 0)&&(this.label?this.setAttribute(`aria-label`,this.label):this.removeAttribute(`aria-label`)),e.has(`pending`)&&(this.pending?this.setAttribute(`aria-busy`,`true`):this.removeAttribute(`aria-busy`))}async getUpdateComplete(){let e=await super.getUpdateComplete();return await this.optionElementsUpdated,e}focus({preventScroll:e}={}){super.focus({preventScroll:e}),this.focusOptionByOffset(0)}_removeFocusedPropertyOnOptions(){requestAnimationFrame(()=>{this.visibleOptionElements.forEach(e=>{e.focused=!1})})}scrollToTop(){this.scrollTop=0}handleFocusin(){this.startListeningToKeyboard()}handleBlur(e){w(this,e.relatedTarget)||(this.stopListeningToKeyboard(),this._removeFocusedPropertyOnOptions(),this.removeAttribute(`aria-activedescendant`))}startListeningToKeyboard(){this.addEventListener(`keydown`,this.handleKeydown)}stopListeningToKeyboard(){this.removeEventListener(`keydown`,this.handleKeydown)}handleKeydown(e){if(e.defaultPrevented)return;let t=this._flattenedOptions,n=this.focusedOptionIndex,r=[...this.visibleOptionElements].find(e=>e.value?.toString()===t?.[n]?.value?.toString()),{key:i}=e;if(i===`Tab`){this.prepareToCleanUp();return}if(i===` `||i===`Enter`){e.preventDefault();let i=t?.[n];r&&i&&(i.children?.length?this.toggleExpand(i):this.toggleOption(e,i));return}if(i===`ArrowDown`||i===`ArrowUp`){e.preventDefault(),this.navigateWithinOptions(e,r);return}}navigateWithinOptions(e,t){let{key:n}=e,r=n===`ArrowDown`?1:-1;e.preventDefault(),e.stopPropagation();let i=this.focusOptionByOffset(r,t,!0);i!==t&&(this._flatVirtualizeActive||i?.scrollIntoView({block:`nearest`}))}focusOptionByOffset(e,t,n){let r=this._flattenedOptions,i=e||1;t&&(t.focused=!1);let a=this.focusedOptionIndex;this.focusedOptionIndex=r.length>0?(r.length+this.focusedOptionIndex+e)%r.length:0;let o=r[this.focusedOptionIndex],s=r.length;for(;(o?.disabled||o?.divider)&&s;)--s,this.focusedOptionIndex=(r.length+this.focusedOptionIndex+i)%r.length,o=r[this.focusedOptionIndex];let c=a<this.focusedOptionIndex&&e===-1,l=a>this.focusedOptionIndex&&e===1;(c||l)&&(this.focusedOptionIndex=a,this.dispatchEvent(new Event(`luzmo-exceeded-${c?`top`:`bottom`}`,{bubbles:!0,composed:!0,cancelable:!0})));let u;return n&&this._flatVirtualizeActive&&(u=[...this.visibleOptionElements].find(e=>e.value?.toString()===r[this.focusedOptionIndex]?.value?.toString()),u||(this.focusedOptionIndex=this._firstVisibleIndex)),this._flatVirtualizeActive&&n&&this.virtualizer.element(this.focusedOptionIndex)?.scrollIntoView({behavior:`smooth`,block:`nearest`}),u??=[...this.visibleOptionElements].find(e=>(e.value===null?null:e.value?.toString())===(r[this.focusedOptionIndex]?.value===null?r[this.focusedOptionIndex]?.value:r[this.focusedOptionIndex]?.value?.toString())),o?.disabled||this.setFocusedAndActiveDescendant(u),u}updateSelectedItemIndex(){this.focusedOptionIndex=this._flatVirtualizeActive?this._firstVisibleIndex:0}setSelectedOptionsFromValue(){this._selectedOptions=this.options.filter(e=>Array.isArray(this.value)&&this.value?.includes(e?.value??null))}visibilityChanged(e){this._firstVisibleIndex=e?.first??0}rangeChange(e){e.stopPropagation(),e.preventDefault(),e?.first!==-1&&e?.last!==-1&&this.dispatchEvent(new CustomEvent(`luzmo-scrolled`,{bubbles:!0,composed:!0,cancelable:!0,detail:{first:e.first,last:e.last}}))}async toggleOption(e,t){let n=e instanceof KeyboardEvent,r=this._flattenedOptions.findIndex(e=>e?.value===t?.value);this.focusedOptionIndex=r,this.visibleOptionElements.forEach(e=>{if(n){let n=(e?.value===null?null:e.value?.toString())===(t?.value===null?null:t?.value?.toString());e.focused=n,n&&this.setFocusedAndActiveDescendant(e)}else e.focused=!1});let i=Array.isArray(this.value)&&this.value?.includes(t?.value??null);this.selects===`single`?(this.value=[t?.value],this._selectedOptions=[t]):(this.value=i?this.value.filter(e=>e!==t?.value):[...this.value??[],t?.value],this._selectedOptions=i?this._selectedOptions.filter(e=>e.value!==t.value):[...this._selectedOptions,t]),await this.updateComplete,this.dispatchEvent(new CustomEvent(`change`,{bubbles:!0,cancelable:!0,composed:!0,detail:{value:this.value??[]}})),this.prepareToCleanUp()}handleOptionClick(e,t){this.toggleOption(t,e)}handleExpandClick(e){this.toggleExpand(e)}render(){let e=e=>c.html`<luzmo-icon
48
+ slot="icon"
49
+ .icon=${e}
50
+ .size=${this.size}
51
+ ></luzmo-icon>`,t=e=>c.html`<span slot="description">${e}</span>`,n=e=>c.html`<luzmo-icon
52
+ slot="icon"
53
+ data-option-thumbnail
54
+ .src=${e}
55
+ .size=${this.size}
56
+ ></luzmo-icon>`,r=r=>{let i=r?.value,a=r?.label,o=r?.description,s=r?.icon,l=r?.imgSrc,u=r?.divider,d=typeof r==`string`?void 0:r?.disabled,f=!!(r.children&&r.children.length>0),p=!!r._isChild,m=f&&i!==void 0&&this._expandedValues.has(i);if(u)return c.html`<luzmo-options-divider
57
+ role="presentation"
58
+ ></luzmo-options-divider>`;let h=this.optionIconRenderer?.(r,{size:this.size??`m`})??(s?e(s):l?n(l):c.nothing);if(f){let e=Array.isArray(this.value)&&r.children.some(e=>this.value.includes(e.value));return c.html`<luzmo-option
59
+ .value=${i}
60
+ .size=${this.size}
61
+ .variant=${this.variant}
62
+ ?emphasized=${this.emphasized}
63
+ ?no-wrap=${this.noWrap}
64
+ ?disabled=${d}
65
+ expandable
66
+ ?expanded=${m}
67
+ ?has-selected-child=${e}
68
+ .selected=${!1}
69
+ role="option"
70
+ aria-expanded=${m?`true`:`false`}
71
+ @click=${e=>{e.stopPropagation(),this.handleExpandClick(r)}}
72
+ >
73
+ ${h} ${a}
74
+ ${o?t(o):c.nothing}
75
+ <span slot="value">${S(m)}</span>
76
+ </luzmo-option>`}return c.html`<luzmo-option
77
+ .value=${i}
78
+ .size=${this.size}
79
+ .variant=${this.variant}
80
+ ?emphasized=${this.emphasized}
81
+ ?no-wrap=${this.noWrap}
82
+ ?disabled=${d}
83
+ ?child-option=${p}
84
+ .selected=${Array.isArray(this.value)?this.value?.includes(i):!1}
85
+ .role=${this.selects===`single`?`option`:`optioncheckbox`}
86
+ @click=${this.handleOptionClick.bind(this,r)}
87
+ >
88
+ ${h} ${a}
89
+ ${o?t(o):c.nothing}
90
+ </luzmo-option>`},i=this._flattenedOptions;return c.html`${this._flatVirtualizeActive?c.html`<lit-virtualizer
91
+ role="presentation"
92
+ .items=${i}
93
+ .renderItem=${r}
94
+ @rangeChanged=${this.rangeChange}
95
+ @visibilityChanged=${this.visibilityChanged}
96
+ ></lit-virtualizer>`:(0,p.repeat)(i,r)} ${this.pending?c.html`<div id="pending" aria-hidden="true">
97
+ <luzmo-progress-circle
98
+ indeterminate
99
+ label="Loading"
100
+ ></luzmo-progress-circle>
101
+ </div>`:c.nothing}`}connectedCallback(){super.connectedCallback(),this.setAttribute(`role`,`listbox`),this.updateComplete.then(()=>this.updateItemFocus())}disconnectedCallback(){super.disconnectedCallback()}prepareToCleanUp(){document.addEventListener(`focusout`,()=>{requestAnimationFrame(()=>{this.updateSelectedItemIndex()})},{once:!0})}updateItemFocus(){if(this.visibleOptionElements.length===0)return;let e=this._flattenedOptions,t=this.focusedOptionIndex,n=[...this.visibleOptionElements].find(n=>(n.value===null?null:n.value?.toString())===(e?.[t]?.value===null?null:e?.[t]?.value?.toString()));this.setFocusedAndActiveDescendant(n)}setFocusedAndActiveDescendant(e){if(!e)return;let t=this.hasVisibleFocusInTree()||!!(this.visibleOptionElements?.some&&this.visibleOptionElements?.some(e=>e.hasVisibleFocusInTree()));e.focused=t,t&&this.setAttribute(`aria-activedescendant`,e.id)}};e.t([(0,l.property)({type:String,reflect:!0})],T.prototype,`label`,void 0),e.t([(0,l.property)({type:String,reflect:!0})],T.prototype,`variant`,void 0),e.t([(0,l.property)({type:String,reflect:!0})],T.prototype,`selects`,void 0),e.t([(0,l.property)({type:Boolean,reflect:!0})],T.prototype,`emphasized`,void 0),e.t([(0,l.property)({type:Boolean,reflect:!0})],T.prototype,`pending`,void 0),e.t([(0,l.property)({type:Array})],T.prototype,`options`,void 0),e.t([(0,l.property)({type:Boolean,reflect:!0,attribute:`no-wrap`})],T.prototype,`noWrap`,void 0),e.t([(0,l.property)({type:Array})],T.prototype,`value`,void 0),e.t([(0,l.property)({attribute:!1})],T.prototype,`optionIconRenderer`,void 0),e.t([(0,l.query)(`lit-virtualizer`)],T.prototype,`virtualizer`,void 0),e.t([(0,l.queryAll)(`luzmo-option`)],T.prototype,`visibleOptionElements`,void 0),e.t([(0,l.state)()],T.prototype,`_expandedValues`,void 0),customElements.get(`luzmo-options`)||customElements.define(`luzmo-options`,T),customElements.get(`luzmo-options-divider`)||customElements.define(`luzmo-options-divider`,b),customElements.get(`luzmo-option`)||customElements.define(`luzmo-option`,v),Object.defineProperty(exports,`i`,{enumerable:!0,get:function(){return v}}),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,`r`,{enumerable:!0,get:function(){return b}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return T}});