@luzmo/lucero 2.5.0 → 2.5.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 (492) hide show
  1. package/components/accordion/index.cjs +1 -1
  2. package/components/accordion/index.js +1 -2
  3. package/components/{accordion-ciplqKwM.js → accordion-BJLsCC-2.js} +7 -8
  4. package/components/{accordion-BK0LfhmL.cjs → accordion-OQ0RoC_7.cjs} +1 -1
  5. package/components/action-bar/index.cjs +1 -1
  6. package/components/action-bar/index.js +1 -2
  7. package/components/{action-bar-BZBIeGo7.js → action-bar-B-Y-gJ8B.js} +9 -17
  8. package/components/{action-bar-DAqG_7VG.cjs → action-bar-Dyt2tyjr.cjs} +1 -1
  9. package/components/action-button/action-button.d.ts +3 -2
  10. package/components/action-button/index.cjs +1 -1
  11. package/components/action-button/index.js +1 -2
  12. package/components/action-button-BB3ZZFNN.js +136 -0
  13. package/components/action-button-CL4ZlryE.cjs +22 -0
  14. package/components/action-group/index.cjs +1 -1
  15. package/components/action-group/index.js +1 -2
  16. package/components/{action-group-oo7YV0EW.cjs → action-group-Doll-3Bf.cjs} +1 -1
  17. package/components/{action-group-DSiruuF0.js → action-group-HECoPCas.js} +7 -9
  18. package/components/action-menu/action-menu.d.ts +16 -1
  19. package/components/action-menu/index.cjs +1 -1
  20. package/components/action-menu/index.d.ts +1 -0
  21. package/components/action-menu/index.js +1 -2
  22. package/components/action-menu-BW-XpCVO.cjs +58 -0
  23. package/components/{action-menu-D1hTsg9A.js → action-menu-LnXQ7reF.js} +47 -31
  24. package/components/avatar/index.cjs +1 -1
  25. package/components/avatar/index.js +1 -2
  26. package/components/{avatar-CwSyYAKV.js → avatar-CVRQDsx6.js} +7 -9
  27. package/components/{avatar-DHS5UGTJ.cjs → avatar-DFzJbtId.cjs} +1 -1
  28. package/components/badge/index.cjs +1 -1
  29. package/components/badge/index.js +1 -2
  30. package/components/badge-BSfzmBRf.js +94 -0
  31. package/components/badge-DzElGOcl.cjs +23 -0
  32. package/components/button/index.cjs +1 -1
  33. package/components/button/index.js +2 -2
  34. package/components/button-BGEWdRbY.cjs +20 -0
  35. package/components/button-CpaltgRZ.js +125 -0
  36. package/components/{button-base-DiPzVpp4.js → button-base-BzakIKd0.js} +12 -35
  37. package/components/{button-base-DiNxrttk.cjs → button-base-CpK2ktvQ.cjs} +3 -3
  38. package/components/button-group/index.cjs +1 -1
  39. package/components/button-group/index.js +1 -2
  40. package/components/{button-group-Du7R4SxZ.cjs → button-group-C23OtGC0.cjs} +1 -1
  41. package/components/{button-group-Duf-Igst.js → button-group-DMsT6N0P.js} +4 -6
  42. package/components/calendar/index.cjs +1 -1
  43. package/components/calendar/index.js +1 -2
  44. package/components/{calendar-pQxEWdYC.cjs → calendar-BqyGW8gU.cjs} +3 -3
  45. package/components/{calendar-D1UtHvpY.js → calendar-D4x5gp_0.js} +14 -33
  46. package/components/chat-message/index.cjs +1 -1
  47. package/components/chat-message/index.js +1 -2
  48. package/components/{chat-message-D6U-sprD.js → chat-message-5gP_qbiz.js} +665 -654
  49. package/components/chat-message-Dn5GKsSD.cjs +148 -0
  50. package/components/chat-message-group/index.cjs +1 -1
  51. package/components/chat-message-group/index.js +1 -2
  52. package/components/{chat-message-group-k9lo-ZqD.js → chat-message-group-Bp4mshBY.js} +18 -18
  53. package/components/{chat-message-group-CvxdX3jt.cjs → chat-message-group-CJddlS85.cjs} +1 -1
  54. package/components/checkbox/index.cjs +1 -1
  55. package/components/checkbox/index.js +1 -2
  56. package/components/checkbox-CVi4GMoo.cjs +25 -0
  57. package/components/{checkbox-CydI9yXG.js → checkbox-CvRvgRzh.js} +7 -13
  58. package/components/{checkbox-mixin-jqmrh48O.js → checkbox-mixin-BIuvxtEt.js} +2 -3
  59. package/components/{checkbox-mixin-rFRXqyrK.cjs → checkbox-mixin-DAdnTm-F.cjs} +1 -1
  60. package/components/{close-button-Dlvtf9lB.js → close-button-7zS6PUzh.js} +5 -6
  61. package/components/{close-button-BAELImQY.cjs → close-button-B06i2hJn.cjs} +1 -1
  62. package/components/color-area/index.cjs +1 -1
  63. package/components/color-area/index.js +1 -2
  64. package/components/{color-area-CmKlQG1i.cjs → color-area-D1fRozE0.cjs} +1 -1
  65. package/components/{color-area-lbg8wwZG.js → color-area-qlEAp8ZN.js} +10 -20
  66. package/components/color-controller-BpdydwTO.cjs +18 -0
  67. package/components/{color-controller-Rg_Zl0sT.js → color-controller-CauSxC_r.js} +1 -2
  68. package/components/color-field/index.cjs +1 -1
  69. package/components/color-field/index.js +1 -2
  70. package/components/{color-field-BH9x46k_.cjs → color-field-CN8shDl_.cjs} +1 -1
  71. package/components/{color-field-C9S-Fv46.js → color-field-CVyDNZ4b.js} +5 -7
  72. package/components/color-handle/index.cjs +1 -1
  73. package/components/color-handle/index.js +1 -2
  74. package/components/{color-handle-2iFLp9FN.cjs → color-handle-BE0Z1gTU.cjs} +1 -1
  75. package/components/{color-handle-BEDQ1RcS.js → color-handle-Dc0uLgkf.js} +4 -6
  76. package/components/color-loupe/index.cjs +1 -1
  77. package/components/color-loupe/index.js +1 -2
  78. package/components/{color-loupe-6NcLbFco.cjs → color-loupe-2X1bCYU9.cjs} +1 -1
  79. package/components/{color-loupe-CqHyyvjQ.js → color-loupe-Bu37Uwk6.js} +3 -5
  80. package/components/color-menu/index.cjs +1 -1
  81. package/components/color-menu/index.js +1 -2
  82. package/components/{color-menu-qJK_clDq.js → color-menu-BxFQnH79.js} +12 -14
  83. package/components/{color-menu-BYTgxLQG.cjs → color-menu-Cus3S-Re.cjs} +1 -1
  84. package/components/color-palette/index.cjs +1 -1
  85. package/components/color-palette/index.js +1 -2
  86. package/components/{color-palette-x6W09EBL.cjs → color-palette-D5NZDz5I.cjs} +1 -1
  87. package/components/{color-palette-CqiO5ohz.js → color-palette-UU7Feiwh.js} +7 -8
  88. package/components/color-palette-group/index.cjs +1 -1
  89. package/components/color-palette-group/index.js +1 -2
  90. package/components/{color-palette-group-zByrO_qb.js → color-palette-group-CwmC9iR1.js} +5 -7
  91. package/components/{color-palette-group-D4k_7pW6.cjs → color-palette-group-DhGh0Db8.cjs} +1 -1
  92. package/components/color-picker/index.cjs +1 -1
  93. package/components/color-picker/index.js +1 -2
  94. package/components/{color-picker-BAikpqUT.cjs → color-picker-BTT1O-76.cjs} +1 -1
  95. package/components/{color-picker-CSuAPo5X.js → color-picker-orFSIqoZ.js} +9 -11
  96. package/components/color-slider/index.cjs +1 -1
  97. package/components/color-slider/index.js +1 -2
  98. package/components/{color-slider-CMW8gJ0Z.cjs → color-slider-9Ck28Qdk.cjs} +1 -1
  99. package/components/{color-slider-0JzdSRTy.js → color-slider-X1EArAnx.js} +8 -14
  100. package/components/{condition-attribute-with-id-BdnTdWKz.js → condition-attribute-with-id-v1wjKZc3.js} +1 -2
  101. package/components/date-range-picker/index.cjs +1 -1
  102. package/components/date-range-picker/index.js +1 -2
  103. package/components/{date-range-picker-DKVmGpUC.js → date-range-picker-CoCz3uDz.js} +28 -29
  104. package/components/{date-range-picker-D149LIGC.cjs → date-range-picker-DyJdcFiA.cjs} +3 -3
  105. package/components/date-time-picker/index.cjs +1 -1
  106. package/components/date-time-picker/index.js +1 -2
  107. package/components/{date-time-picker-CRpvRk9T.cjs → date-time-picker-CEEeMXGn.cjs} +3 -3
  108. package/components/{date-time-picker-6c19YzwF.js → date-time-picker-CsgO17tA.js} +23 -36
  109. package/components/{decorate-CkCg3wfh.js → decorate-CpKsOs9z.js} +18 -19
  110. package/components/{decorate-Dq34MBGe.cjs → decorate-SO02l0A6.cjs} +1 -1
  111. package/components/{dependency-manger-wHEXoU92.js → dependency-manger-BneVBZQi.js} +1 -2
  112. package/components/divider/index.cjs +1 -1
  113. package/components/divider/index.js +1 -2
  114. package/components/{divider-Cz5nyvP9.js → divider-Bt0NIqfu.js} +5 -7
  115. package/components/{divider-BcE8D-pH.cjs → divider-fWGUxO6A.cjs} +1 -1
  116. package/components/{divider.module-CPEKsaqR.js → divider.module-B_GRUJ4d.js} +1 -2
  117. package/components/{element-resolution-gap51AVo.js → element-resolution-BYvcpZwK.js} +1 -2
  118. package/components/field-group/index.cjs +1 -1
  119. package/components/field-group/index.js +2 -3
  120. package/components/{field-group-Dd5xYczm.cjs → field-group-B8mhEhNJ.cjs} +1 -1
  121. package/components/{field-group-C_kRq7pJ.js → field-group-CdDcdMO1.js} +3 -4
  122. package/components/field-label/index.cjs +1 -1
  123. package/components/field-label/index.js +1 -2
  124. package/components/{field-label-C0vfY1b6.cjs → field-label-B3IsGUTv.cjs} +2 -2
  125. package/components/{field-label-C28wWqC5.js → field-label-DOUnHwwh.js} +9 -15
  126. package/components/focus-group-C0ncbmUD.cjs +18 -0
  127. package/components/{focus-group-DVPa1zxz.js → focus-group-lQqPbdDl.js} +5 -7
  128. package/components/{focus-visible-DNHNlrty.cjs → focus-visible-BQAhwoxi.cjs} +1 -1
  129. package/components/{focus-visible-Bt2uDmuM.js → focus-visible-D6TRtUd7.js} +2 -3
  130. package/components/focusable-BIHTrJd6.cjs +18 -0
  131. package/components/{focusable-selectors-BWpiuXz5.js → focusable-selectors-BDNeWxbe.js} +1 -2
  132. package/components/{focusable-DuP0-Kuy.js → focusable-xjv79E40.js} +9 -17
  133. package/components/{get-label-from-slot-Bo9mqYCZ.js → get-label-from-slot-Bw5crGFw.js} +1 -2
  134. package/components/icon/index.cjs +1 -1
  135. package/components/icon/index.js +1 -2
  136. package/components/{icon-zOPAWCdx.cjs → icon-BlbMP3mJ.cjs} +1 -1
  137. package/components/{icon-CsJZMhIm.js → icon-DADJww_a.js} +4 -7
  138. package/components/index.cjs +1 -1
  139. package/components/index.js +72 -71
  140. package/components/infield-button/index.cjs +1 -1
  141. package/components/infield-button/index.js +1 -2
  142. package/components/{infield-button-DiE8R6ol.js → infield-button-CeE_JxR6.js} +5 -7
  143. package/components/{infield-button-kilVRjwB.cjs → infield-button-uD1GqTLW.cjs} +1 -1
  144. package/components/label/index.cjs +1 -1
  145. package/components/label/index.js +1 -2
  146. package/components/{label-e6Y13vrS.js → label-D1v4e6mN.js} +3 -5
  147. package/components/{label-B3zs6OX0.cjs → label-uuwIy_Ge.cjs} +1 -1
  148. package/components/{language-resolution-BaKYDD1a.js → language-resolution-7rc0khIK.js} +3 -4
  149. package/components/{language-resolution-CSjktYg5.cjs → language-resolution-B7D3hQ6_.cjs} +1 -1
  150. package/components/{like-anchor-DXCaEv7O.js → like-anchor-DcFv8rEo.js} +2 -3
  151. package/components/{like-anchor-BX4PSB3d.cjs → like-anchor-De9STeWr.cjs} +1 -1
  152. package/components/{manage-help-text-ByLb0QYX.js → manage-help-text-CFUaqINN.js} +4 -6
  153. package/components/{match-media-C5X2OZiD.js → match-media-UNh23w4s.js} +1 -2
  154. package/components/menu/index.cjs +1 -1
  155. package/components/menu/index.js +1 -2
  156. package/components/menu-BKwt6rnv.cjs +108 -0
  157. package/components/{menu-fdJseu1y.js → menu-L5qYivn6.js} +43 -67
  158. package/components/multi-language-field/index.cjs +1 -1
  159. package/components/multi-language-field/index.js +1 -2
  160. package/components/{multi-language-field-vJMK-osi.js → multi-language-field-NY2XwK2M.js} +6 -8
  161. package/components/{multi-language-field-BndVikur.cjs → multi-language-field-djoM4Okc.cjs} +1 -1
  162. package/components/notice/index.cjs +1 -1
  163. package/components/notice/index.js +1 -2
  164. package/components/{notice-N0-lxEf_.js → notice-CrLVNmqL.js} +6 -8
  165. package/components/{notice-CsWaqcq3.cjs → notice-f0p0TiGw.cjs} +1 -1
  166. package/components/number-field/index.cjs +1 -1
  167. package/components/number-field/index.js +1 -2
  168. package/components/{number-field-xxXgR70l.cjs → number-field-Ceeli_mh.cjs} +2 -2
  169. package/components/{number-field-DAOy_AvQ.js → number-field-D9UqpqpW.js} +12 -20
  170. package/components/{observe-slot-presence-BKY6n06-.js → observe-slot-presence-t2N_C6Ud.js} +1 -2
  171. package/components/{observe-slot-text-CvL-2ey3.cjs → observe-slot-text-BqwCIv2a.cjs} +1 -1
  172. package/components/{observe-slot-text-Db8Kx3P-.js → observe-slot-text-Dzkb_VqN.js} +2 -3
  173. package/components/options/index.cjs +1 -1
  174. package/components/options/index.js +1 -2
  175. package/components/{options-D_ifU0DH.js → options-BHDesKbF.js} +20 -31
  176. package/components/{options-CP9V2CSJ.cjs → options-Dk1uFeUT.cjs} +5 -5
  177. package/components/overlay/index.cjs +1 -1
  178. package/components/overlay/index.js +2 -2
  179. package/components/overlay-DAOyrYJL.cjs +102 -0
  180. package/components/{overlay-DpHIYJtd.js → overlay-D_Xfq92b.js} +62 -118
  181. package/components/{pending-state-CGHvTtKR.cjs → pending-state-A6NrvaQj.cjs} +1 -1
  182. package/components/{pending-state-D_b45qvi.js → pending-state-BuYmUP6G.js} +2 -3
  183. package/components/picker/index.cjs +1 -1
  184. package/components/picker/index.js +2 -3
  185. package/components/{picker-uKcRswTQ.js → picker-C5eX5WBl.js} +25 -41
  186. package/components/picker-CQCAt4Mx.cjs +124 -0
  187. package/components/picker-button/index.cjs +1 -1
  188. package/components/picker-button/index.js +1 -2
  189. package/components/{picker-button-B8Jbf9jK.cjs → picker-button-BWDfzx38.cjs} +2 -2
  190. package/components/{picker-button-CJQJshbo.js → picker-button-BhfY9gyk.js} +11 -12
  191. package/components/{platform-Ce9pNsR9.js → platform-CDW-WdXN.js} +1 -2
  192. package/components/popover/index.cjs +1 -1
  193. package/components/popover/index.js +1 -2
  194. package/components/{popover-BsdqkvKI.cjs → popover-CFzz83f8.cjs} +1 -1
  195. package/components/{popover-DC8tkee-.js → popover-CWrRLzOL.js} +4 -6
  196. package/components/progress-bar/index.cjs +1 -1
  197. package/components/progress-bar/index.js +1 -2
  198. package/components/{progress-bar-CrodWzcc.cjs → progress-bar-9Qg0PYAq.cjs} +2 -2
  199. package/components/{progress-bar-D4iFHkp7.js → progress-bar-D6wIZV5l.js} +16 -22
  200. package/components/progress-circle/index.cjs +1 -1
  201. package/components/progress-circle/index.js +1 -2
  202. package/components/{progress-circle-bO_VAX3N.cjs → progress-circle-C_9UZs2Y.cjs} +1 -1
  203. package/components/{progress-circle-By6qUQYe.js → progress-circle-DcGKwBTC.js} +5 -7
  204. package/components/progress-steps/index.cjs +1 -1
  205. package/components/progress-steps/index.js +1 -2
  206. package/components/progress-steps/progress-steps-model.d.ts +5 -0
  207. package/components/progress-steps/progress-steps.d.ts +4 -8
  208. package/components/progress-steps-5MhpnGKv.cjs +98 -0
  209. package/components/{progress-steps-BvCzsq9Z.js → progress-steps-Byem5ieS.js} +43 -54
  210. package/components/prompt-box/index.cjs +1 -1
  211. package/components/prompt-box/index.js +1 -2
  212. package/components/{prompt-box-Cz_m2wso.js → prompt-box-CrtFGmjm.js} +80 -112
  213. package/components/{prompt-box-sp9_-Hnx.cjs → prompt-box-D7owyhfG.cjs} +15 -15
  214. package/components/question-box/index.cjs +1 -1
  215. package/components/question-box/index.js +1 -2
  216. package/components/{question-box-Bcm-P-UV.js → question-box-BJYYLghb.js} +40 -86
  217. package/components/{question-box-DZnuGMBB.cjs → question-box-ym1eakXA.cjs} +3 -3
  218. package/components/radio/index.cjs +1 -1
  219. package/components/radio/index.js +1 -2
  220. package/components/{radio-B6hX9Klr.js → radio-CyxICbLM.js} +9 -15
  221. package/components/{radio-CRTfoEX_.cjs → radio-Dd-GgUMm.cjs} +2 -2
  222. package/components/{random-id-CiMDyX7v.js → random-id-CO3s9i3n.js} +1 -2
  223. package/components/{rolldown-runtime-Dy4uBu1J.js → rolldown-runtime-CGnMp29N.js} +1 -2
  224. package/components/{roving-tabindex-pomAn3z-.js → roving-tabindex-BKMkfzY0.js} +2 -3
  225. package/components/{roving-tabindex-BoPao4td.cjs → roving-tabindex-BUFR8hPH.cjs} +1 -1
  226. package/components/{scaled-indicator-C-TupV4L.js → scaled-indicator-CsfzvTDr.js} +1 -2
  227. package/components/search/index.cjs +1 -1
  228. package/components/search/index.js +1 -2
  229. package/components/{search-DEjLSJ96.js → search-C5uFmm6S.js} +7 -9
  230. package/components/{search-PxJEuwHt.cjs → search-DiCwSHFf.cjs} +1 -1
  231. package/components/segments-factory-BFgL5o9K.cjs +18 -0
  232. package/components/{segments-factory-BCRi1NKb.js → segments-factory-B_IBjpdp.js} +5 -12
  233. package/components/select/index.cjs +1 -1
  234. package/components/select/index.js +1 -2
  235. package/components/{select-CKMCEJf7.cjs → select-2Fvb7tpj.cjs} +6 -6
  236. package/components/{select-B86uAHme.js → select-HqF3tcHz.js} +31 -56
  237. package/components/{sized-mixin-DzQTebN-.js → sized-mixin-BmxIAuoH.js} +2 -3
  238. package/components/{sized-mixin-BT7cv-fT.cjs → sized-mixin-CSajkMro.cjs} +1 -1
  239. package/components/skeleton-loader/index.cjs +1 -1
  240. package/components/skeleton-loader/index.js +1 -2
  241. package/components/{skeleton-loader-CNcwCh4V.cjs → skeleton-loader-CEca0cqz.cjs} +1 -1
  242. package/components/{skeleton-loader-BeCsYADg.js → skeleton-loader-tin9y3xc.js} +3 -5
  243. package/components/slider/index.cjs +1 -1
  244. package/components/slider/index.js +1 -2
  245. package/components/{slider-C_8pSK4N.cjs → slider-C1AdDTfB.cjs} +2 -2
  246. package/components/{slider-Bsl8Xrme.js → slider-Ch7OgTdj.js} +13 -26
  247. package/components/{slottable-request-event-MRSZbgTu.js → slottable-request-event-24jJOhbh.js} +1 -2
  248. package/components/split-view/index.cjs +1 -1
  249. package/components/split-view/index.js +1 -2
  250. package/components/{split-view-CDwHDmII.js → split-view-DDwpoN2O.js} +8 -11
  251. package/components/{split-view-BwCFYey6.cjs → split-view-DNVlr5VD.cjs} +1 -1
  252. package/components/status-light/index.cjs +1 -1
  253. package/components/status-light/index.js +1 -2
  254. package/components/status-light-Do6z53mM.cjs +21 -0
  255. package/components/{status-light-DwUnjE3t.js → status-light-DqHhhZed.js} +6 -8
  256. package/components/strategies-C6hzAW86.cjs +18 -0
  257. package/components/{strategies-COS7mShJ.js → strategies-DgPG-vNk.js} +6 -13
  258. package/components/{streaming-listener-CtcMpYfS.js → streaming-listener-B6mDl4pZ.js} +1 -2
  259. package/components/swatch/index.cjs +1 -1
  260. package/components/swatch/index.js +1 -2
  261. package/components/{swatch-Bj2FARl1.js → swatch-BBVsuSAV.js} +25 -44
  262. package/components/{swatch-CQ0inIHK.cjs → swatch-DiNMN-SZ.cjs} +3 -3
  263. package/components/switch/index.cjs +1 -1
  264. package/components/switch/index.js +1 -2
  265. package/components/{switch-CpG-hSWY.js → switch-BBtewLDD.js} +6 -8
  266. package/components/{switch-qwpYXVnO.cjs → switch-DMhCYTgq.cjs} +1 -1
  267. package/components/table/index.cjs +1 -1
  268. package/components/table/index.js +1 -2
  269. package/components/table-CLMLGloR.cjs +180 -0
  270. package/components/{table-B75GjBhD.js → table-DlOWqm5C.js} +217 -264
  271. package/components/tabs/index.cjs +1 -1
  272. package/components/tabs/index.js +1 -2
  273. package/components/{tabs-DxOD4QNt.cjs → tabs-B0WHKMuF.cjs} +2 -2
  274. package/components/{tabs-BD_ATrBg.js → tabs-Dkt0B_-A.js} +17 -22
  275. package/components/tags/index.cjs +1 -1
  276. package/components/tags/index.js +1 -2
  277. package/components/tags-Be4yrNPw.js +206 -0
  278. package/components/tags-CHDNXpxh.cjs +47 -0
  279. package/components/template-property-Bks4Db5C.js +46 -0
  280. package/components/template-property-yhcAmPXk.cjs +18 -0
  281. package/components/text-field/index.cjs +1 -1
  282. package/components/text-field/index.js +2 -2
  283. package/components/{text-field-3fDtTQkR.cjs → text-field-BVl-HWzb.cjs} +1 -1
  284. package/components/{text-field-CmyqQxq0.js → text-field-D49lAD7L.js} +4 -5
  285. package/components/{text-field-CbN4nydd.cjs → text-field-DCcOZSvY.cjs} +1 -1
  286. package/components/{text-field-CmSym2QK.js → text-field-DpvP_tCP.js} +7 -10
  287. package/components/{text-field.module-BHhBReKL.js → text-field.module-hEHhPVFf.js} +1 -2
  288. package/components/toast/index.cjs +1 -1
  289. package/components/toast/index.js +1 -2
  290. package/components/{toast-DRrGgznK.cjs → toast-B6yesIcI.cjs} +1 -1
  291. package/components/{toast-KwHx-agn.js → toast-CXZUVaYz.js} +5 -7
  292. package/components/tokens.js +1 -2
  293. package/components/tooltip/index.cjs +1 -1
  294. package/components/tooltip/index.js +1 -2
  295. package/components/{tooltip-DjOW52n2.cjs → tooltip-BE01O3Sg.cjs} +1 -1
  296. package/components/{tooltip-xTa9Q5JW.js → tooltip-g2jd5Wsv.js} +19 -24
  297. package/components/top-nav/index.cjs +1 -1
  298. package/components/top-nav/index.js +1 -2
  299. package/components/{top-nav-81IKEGjR.cjs → top-nav-B0E1K_zf.cjs} +1 -1
  300. package/components/{top-nav-CXjnpdFR.js → top-nav-DiUCsUpZ.js} +9 -11
  301. package/components/utils.cjs +1 -1
  302. package/components/utils.js +9 -8
  303. package/components/{voice-recorder-CTg3kRxx.js → voice-recorder-BXY_l_78.js} +1 -2
  304. package/custom-elements.json +1 -1
  305. package/package.json +1 -1
  306. package/standalone/accordion.js +6 -2
  307. package/standalone/action-bar.js +1 -1
  308. package/standalone/action-button.js +1 -1
  309. package/standalone/action-group.js +1 -1
  310. package/standalone/action-menu.js +5 -3
  311. package/standalone/avatar.js +1 -1
  312. package/standalone/badge.js +1 -1
  313. package/standalone/button-group.js +1 -1
  314. package/standalone/button.js +1 -1
  315. package/standalone/calendar.js +1 -1
  316. package/standalone/chat-message-group.js +1 -1
  317. package/standalone/chat-message.js +31 -31
  318. package/standalone/checkbox.js +1 -1
  319. package/standalone/chunks/NumberFormatter-COykocAS.js +2 -0
  320. package/standalone/chunks/NumberParser--1Rm0Yk7.js +2 -0
  321. package/standalone/chunks/action-button-0d4u0dWv.js +6 -0
  322. package/standalone/chunks/{action-group-DTxf-0tP.js → action-group-DlClwXLO.js} +5 -1
  323. package/standalone/chunks/async-directive-ByLzVnWY.js +2 -0
  324. package/standalone/chunks/async-directive-DNgXlN7F.js +2 -0
  325. package/standalone/chunks/badge-DPFbBRCY.js +7 -0
  326. package/standalone/chunks/{button-Q1n9DH9a.js → button-Bgc3zdEa.js} +1 -1
  327. package/standalone/chunks/button-BhSe7abg.js +4 -0
  328. package/standalone/chunks/button-base-DLYrzCSm.js +9 -0
  329. package/standalone/chunks/calendar-BxARYymw.js +122 -0
  330. package/standalone/chunks/checkbox-Cl6YBcGA.js +9 -0
  331. package/standalone/chunks/{checkbox-mixin-BAQWmwps.js → checkbox-mixin-HnfmivU3.js} +1 -1
  332. package/standalone/chunks/class-map-E9JVium5.js +2 -0
  333. package/standalone/chunks/{clear-button-3zpCVxG5.js → clear-button-B4r_oxfc.js} +1 -1
  334. package/standalone/chunks/{close-button-C96dazyi.js → close-button-DVCeu3_f.js} +1 -1
  335. package/standalone/chunks/{color-area-Cj8oPsIF.js → color-area-BCI2oMGd.js} +3 -1
  336. package/standalone/chunks/color-controller-BlFueK6Y.js +2 -0
  337. package/standalone/chunks/{color-field-BFvUGE4L.js → color-field-BaVvupq0.js} +1 -1
  338. package/standalone/chunks/{color-handle-BHrAxEG2.js → color-handle-BLQiuRSS.js} +1 -1
  339. package/standalone/chunks/{color-loupe-C34cms5t.js → color-loupe-_dC69K1Z.js} +1 -1
  340. package/standalone/chunks/{color-menu-BIKuitbH.js → color-menu-BDZh85nX.js} +1 -1
  341. package/standalone/chunks/color-slider-Bipcekrc.js +49 -0
  342. package/standalone/chunks/{directive-helpers-Bu8icI7Y.js → directive-helpers-DM8VtBpR.js} +1 -1
  343. package/standalone/chunks/{divider-Bf9Drp2z.js → divider-vAjIOfo1.js} +1 -1
  344. package/standalone/chunks/{field-group-D8EjgC6F.js → field-group-C1oDgW9m.js} +1 -1
  345. package/standalone/chunks/{field-label-VWHDlW9_.js → field-label-Djcst_hn.js} +2 -2
  346. package/standalone/chunks/flow-CL5kBpdV.js +2 -0
  347. package/standalone/chunks/focus-group-xdTxdfaB.js +4 -0
  348. package/standalone/chunks/{icon-BypO7M7G.js → icon-6P1RsbD1.js} +1 -1
  349. package/standalone/chunks/{infield-button-D03MpU_s.js → infield-button-B8EkjwP9.js} +1 -1
  350. package/standalone/chunks/keyed-DYJaQjip.js +2 -0
  351. package/standalone/chunks/{language-resolution-BWHk9A73.js → language-resolution-BwIkGyuH.js} +1 -1
  352. package/standalone/chunks/lit-DWANyjiY.js +3 -0
  353. package/standalone/chunks/lucero-runtime-DMlHjBe_.js +18 -0
  354. package/standalone/chunks/{luzmo-icons-B-pCv-xg.js → luzmo-icons-vtQE0BSI.js} +1 -1
  355. package/standalone/chunks/{manage-help-text-Cl9OJ2xf.js → manage-help-text-DO3PkWgh.js} +1 -1
  356. package/standalone/chunks/menu-CefrRBIS.js +100 -0
  357. package/standalone/chunks/{number-field-B6BDXkL7.js → number-field-Dc4nBa6l.js} +2 -2
  358. package/standalone/chunks/observe-slot-presence-BxmG6A0m.js +2 -0
  359. package/standalone/chunks/options-rb_zaAJ6.js +89 -0
  360. package/standalone/chunks/overlay-CgQMEmrM.js +122 -0
  361. package/standalone/chunks/{pending-state-DxeRqe6Q.js → pending-state-DnTXKvtm.js} +1 -1
  362. package/standalone/chunks/picker-HoERLlkx.js +108 -0
  363. package/standalone/chunks/{picker-button-BZWqDoNQ.js → picker-button-DbamPU-T.js} +2 -2
  364. package/standalone/chunks/platform-wNs7qaiE.js +10 -0
  365. package/standalone/chunks/{popover-BsB3dmQe.js → popover-Ca-FBqiU.js} +1 -1
  366. package/standalone/chunks/{progress-circle-CEx1b5Sv.js → progress-circle-CFtVq9Ou.js} +1 -1
  367. package/standalone/chunks/property-BsDbx7Z2.js +2 -0
  368. package/standalone/chunks/{radio-2vHhfmHw.js → radio-BJ3RhyUD.js} +2 -2
  369. package/standalone/chunks/random-id-0GBXy8EY.js +2 -0
  370. package/standalone/chunks/repeat-CtNle5_O.js +2 -0
  371. package/standalone/chunks/{roving-tabindex-CB4xC55P.js → roving-tabindex-CivopiNn.js} +1 -1
  372. package/standalone/chunks/scaled-indicator-Do5uhz24.js +10 -0
  373. package/standalone/chunks/segments-factory-B6oGyosS.js +2 -0
  374. package/standalone/chunks/{skeleton-loader-BxYcRRJr.js → skeleton-loader-CymPdQl3.js} +1 -1
  375. package/standalone/chunks/strategies-yujlVHBS.js +4 -0
  376. package/standalone/chunks/streaming-listener-DbMoHlSj.js +8 -0
  377. package/standalone/chunks/style-map-DmBaq1-c.js +2 -0
  378. package/standalone/chunks/{swatch-CGR_GWqO.js → swatch-DivHeYOK.js} +4 -4
  379. package/standalone/chunks/template-property-CyrkVY0Q.js +2 -0
  380. package/standalone/chunks/{text-field-4OKvLOXG.js → text-field-D5ncaa2n.js} +1 -1
  381. package/standalone/chunks/{text-field-C2oROxum.js → text-field-DXzpM1Qn.js} +1 -1
  382. package/standalone/chunks/{tooltip-DB6jRVyB.js → tooltip-B-j8PrNl.js} +13 -1
  383. package/standalone/chunks/{unsafe-html-BPQaWy0v.js → unsafe-html-BeDipvu3.js} +1 -1
  384. package/standalone/clear-button.js +1 -1
  385. package/standalone/close-button.js +1 -1
  386. package/standalone/color-area.js +1 -1
  387. package/standalone/color-field.js +1 -1
  388. package/standalone/color-handle.js +1 -1
  389. package/standalone/color-loupe.js +1 -1
  390. package/standalone/color-menu.js +1 -1
  391. package/standalone/color-palette-group.js +1 -1
  392. package/standalone/color-palette.js +1 -1
  393. package/standalone/color-picker.js +1 -1
  394. package/standalone/color-slider.js +1 -1
  395. package/standalone/date-range-picker.js +3 -3
  396. package/standalone/date-time-picker.js +3 -3
  397. package/standalone/divider.js +1 -1
  398. package/standalone/field-group.js +1 -1
  399. package/standalone/field-label.js +1 -1
  400. package/standalone/icon.js +1 -1
  401. package/standalone/infield-button.js +1 -1
  402. package/standalone/label.js +1 -1
  403. package/standalone/lit.js +1 -1
  404. package/standalone/manifest.json +65 -65
  405. package/standalone/menu.js +1 -1
  406. package/standalone/multi-language-field.js +1 -1
  407. package/standalone/notice.js +1 -1
  408. package/standalone/number-field.js +1 -1
  409. package/standalone/options.js +1 -1
  410. package/standalone/overlay.js +1 -1
  411. package/standalone/picker-button.js +1 -1
  412. package/standalone/picker.js +1 -1
  413. package/standalone/popover.js +1 -1
  414. package/standalone/progress-bar.js +2 -2
  415. package/standalone/progress-circle.js +1 -1
  416. package/standalone/progress-steps.js +10 -10
  417. package/standalone/prompt-box.js +17 -17
  418. package/standalone/question-box.js +3 -3
  419. package/standalone/radio.js +1 -1
  420. package/standalone/search.js +1 -1
  421. package/standalone/select.js +6 -6
  422. package/standalone/skeleton-loader.js +1 -1
  423. package/standalone/slider.js +2 -2
  424. package/standalone/split-view.js +1 -1
  425. package/standalone/status-light.js +1 -1
  426. package/standalone/swatch.js +1 -1
  427. package/standalone/switch.js +1 -1
  428. package/standalone/table.js +32 -32
  429. package/standalone/tabs.js +2 -2
  430. package/standalone/tags.js +1 -1
  431. package/standalone/text-field.js +1 -1
  432. package/standalone/toast.js +1 -1
  433. package/standalone/tooltip.js +1 -1
  434. package/standalone/top-nav.js +1 -1
  435. package/standalone/utils.js +1 -1
  436. package/utils/index.d.ts +1 -0
  437. package/utils/template-property.d.ts +13 -0
  438. package/components/action-button-BRijXjEz.js +0 -138
  439. package/components/action-button-CX1uYbQp.cjs +0 -22
  440. package/components/action-menu-BNZWjeDd.cjs +0 -56
  441. package/components/badge-D2Hjf-Ww.js +0 -96
  442. package/components/badge-D8pIDEoq.cjs +0 -23
  443. package/components/button-Bvnidb4x.cjs +0 -20
  444. package/components/button-DIV_j_U3.js +0 -126
  445. package/components/chat-message-BDfomRm-.cjs +0 -148
  446. package/components/checkbox-JCvBro0K.cjs +0 -25
  447. package/components/color-controller-DbyPc33Y.cjs +0 -18
  448. package/components/focus-group-C8lOjbi9.cjs +0 -18
  449. package/components/focusable-B6h03pAe.cjs +0 -18
  450. package/components/menu-CrhA2iPZ.cjs +0 -108
  451. package/components/overlay-Dn7EbA_W.cjs +0 -102
  452. package/components/picker-COeWCv60.cjs +0 -124
  453. package/components/progress-steps-CvdQQwHc.cjs +0 -98
  454. package/components/segments-factory-DtPyN5sh.cjs +0 -18
  455. package/components/status-light-D3hdx8Pd.cjs +0 -21
  456. package/components/strategies-Bb7zEjrU.cjs +0 -18
  457. package/components/table-CHrAaVU1.cjs +0 -180
  458. package/components/tags-BIpFgOYy.js +0 -208
  459. package/components/tags-fLCGajv_.cjs +0 -47
  460. package/standalone/chunks/NumberFormatter-DMCfW685.js +0 -2
  461. package/standalone/chunks/NumberParser-r_jv94LA.js +0 -2
  462. package/standalone/chunks/action-button-FSsfXYe9.js +0 -6
  463. package/standalone/chunks/async-directive-BA2_dM-5.js +0 -2
  464. package/standalone/chunks/async-directive-CPdA0BOw.js +0 -2
  465. package/standalone/chunks/badge-DD-tMgzi.js +0 -7
  466. package/standalone/chunks/button-Bv3v7VbN.js +0 -4
  467. package/standalone/chunks/button-base-C7jeeyLp.js +0 -9
  468. package/standalone/chunks/calendar-DcFjY2tw.js +0 -122
  469. package/standalone/chunks/checkbox-DQ4wPgG_.js +0 -9
  470. package/standalone/chunks/class-map-CxQ0PcQP.js +0 -2
  471. package/standalone/chunks/color-controller-fJNWRHVI.js +0 -2
  472. package/standalone/chunks/color-slider-CAqvxsgS.js +0 -41
  473. package/standalone/chunks/flow-aCcJ5kgi.js +0 -2
  474. package/standalone/chunks/focus-group-Cl6MLy-C.js +0 -2
  475. package/standalone/chunks/keyed-CNWmQd2J.js +0 -2
  476. package/standalone/chunks/lit-BN_lRQbJ.js +0 -3
  477. package/standalone/chunks/lucero-runtime-DGJ9-isg.js +0 -16
  478. package/standalone/chunks/menu-DSMoQt1w.js +0 -92
  479. package/standalone/chunks/observe-slot-presence-DWPtw22K.js +0 -2
  480. package/standalone/chunks/options-CkmITqgV.js +0 -89
  481. package/standalone/chunks/overlay-C4ir0iyC.js +0 -31
  482. package/standalone/chunks/overlay-C_XW8yry.js +0 -57
  483. package/standalone/chunks/picker-FCQK0vdE.js +0 -108
  484. package/standalone/chunks/platform-BfrBbd97.js +0 -2
  485. package/standalone/chunks/property-CLXrnTGx.js +0 -2
  486. package/standalone/chunks/random-id-CeLe5NEk.js +0 -2
  487. package/standalone/chunks/repeat-CZdNcszA.js +0 -2
  488. package/standalone/chunks/scaled-indicator-k-1JmS0b.js +0 -10
  489. package/standalone/chunks/segments-factory-eS38mJRz.js +0 -2
  490. package/standalone/chunks/strategies-C-vW4MlK.js +0 -2
  491. package/standalone/chunks/streaming-listener-DFczLm8I.js +0 -2
  492. package/standalone/chunks/style-map-D4QeV3m0.js +0 -2
@@ -17,7 +17,7 @@
17
17
  *
18
18
  */
19
19
 
20
- import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-BN_lRQbJ.js";import{c as r,l as i,u as a,v as o,y as s}from"./chunks/lucero-runtime-DGJ9-isg.js";import{C as c,R as l,i as u,o as d,u as f}from"./chunks/luzmo-icons-B-pCv-xg.js";import{r as p,t as m}from"./chunks/language-resolution-BWHk9A73.js";import{t as h}from"./chunks/class-map-CxQ0PcQP.js";import{t as g}from"./chunks/repeat-CZdNcszA.js";import{t as _}from"./chunks/keyed-CNWmQd2J.js";function v(e){for(let t=(e?.length??0)-1;t>=0;t--)if(e[t].status===`inProgress`)return e[t];return null}function y(e){let t=v(e.children);return t?y(t)??t:null}function b(e,t){return typeof e==`object`?e[t]??e.en??Object.values(e)[0]??``:String(e)}function x(e){return!!e?.children?.length}function S(e){let t=v(e?.children);return t?{mainStep:t,subStep:y(t)}:null}function C(e){let t=0;for(let n of e?.children??[])t+=+(n.status===`error`)+C(n);return t}function w(e){return!!e?.children?.some(e=>e.status===`success`||e.status===`error`)}function T(e){return e?.status===`success`||e?.status===`error`}function E(e,t){return e.description?e.description.replaceAll(/\{\{(\w+)\}\}/g,(n,r)=>{let i=e.descriptionMetadata?.[r];return i==null?n:Array.isArray(i)?i.map(e=>b(e,t)).join(`, `):b(i,t)}):e.step}var D=`:host{box-sizing:border-box;font-family:var(--luzmo-font-family);font-size:var(--luzmo-progress-steps-font-size,var(--progress-steps-font-size));line-height:var(--progress-steps-line-height);color:var(--luzmo-progress-steps-font-color-dimmed,var(--progress-steps-font-color-dimmed));display:block}.summary{box-sizing:border-box;align-items:flex-start;gap:var(--progress-steps-gap);max-inline-size:100%;min-block-size:var(--progress-steps-min-height);padding-block:max(0px, (var(--progress-steps-min-height) - var(--progress-steps-line-block-size)) / 2);padding-inline:var(--progress-steps-padding-inline);border-radius:var(--progress-steps-border-radius);color:inherit;font:inherit;text-align:start;cursor:pointer;appearance:none;background:0 0;border:0;margin:0;display:inline-flex}.summary:hover{background-color:var(--progress-steps-hover-background)}.summary:focus-visible{outline:var(--progress-steps-focus-ring-width) solid var(--highcontrast-progress-steps-focus-ring-color,var(--progress-steps-focus-ring-color));outline-offset:var(--progress-steps-focus-ring-gap)}.status-icon{inline-size:var(--progress-steps-icon-size);block-size:var(--progress-steps-icon-size);flex:none;justify-content:center;align-items:center;margin-block-start:calc((var(--progress-steps-line-block-size) - var(--progress-steps-icon-size)) / 2);display:inline-flex;position:relative;inset-block-start:var(--progress-steps-icon-offset)}.status-icon svg{block-size:100%;inline-size:100%}.status-icon-failed{color:var(--luzmo-progress-steps-warning-color,var(--progress-steps-warning-color))}.status-icon-finished{color:var(--luzmo-progress-steps-success-color,var(--progress-steps-success-color))}.spinner{box-sizing:border-box;border:calc(var(--luzmo-border-width) * 1.5) solid var(--highcontrast-progress-steps-spinner-track-color,var(--luzmo-progress-steps-substep-connector-color,var(--progress-steps-substep-connector-color)));border-block-start-color:var(--highcontrast-progress-steps-spinner-color,currentcolor);block-size:70%;inline-size:70%;animation:progress-steps-spin var(--progress-steps-spinner-duration) linear infinite;border-radius:50%}.headline{flex:0 auto;min-inline-size:0;display:block;position:relative;overflow:hidden}.headline-text{white-space:nowrap;flex-direction:column;min-inline-size:0;display:flex}.headline-text.entering{animation:progress-steps-enter var(--progress-steps-transition-duration) ease-out}.headline-text.leaving{inline-size:100%;animation:progress-steps-leave var(--progress-steps-transition-duration) ease-in forwards;position:absolute;inset-block-start:0;inset-inline-start:0}.main-step{text-overflow:ellipsis;color:var(--luzmo-progress-steps-font-color,var(--progress-steps-font-color));overflow:hidden}.sub-step{block-size:var(--progress-steps-sub-step-block-size);font-size:var(--luzmo-progress-steps-font-size-small,var(--progress-steps-font-size-small));display:block}.sub-step-texts{block-size:100%;display:block;position:relative;overflow:hidden}.sub-step-text{text-overflow:ellipsis;display:block;overflow:hidden}.sub-step-text.entering{animation:progress-steps-enter var(--progress-steps-transition-duration) ease-out}.sub-step-text.leaving{animation:progress-steps-leave var(--progress-steps-transition-duration) ease-in forwards;position:absolute;inset-block-start:0;inset-inline-start:0}.summary[data-state=done] .main-step{color:inherit}:where(.summary[data-state=done]) .headline-text.entering{animation:progress-steps-enter var(--progress-steps-transition-duration) ease-out, progress-steps-collapse var(--progress-steps-transition-duration) ease-in-out}.summary:hover .main-step{color:var(--luzmo-progress-steps-font-color,var(--progress-steps-font-color))}.failed-count:before{content:"·"/"";flex:none;padding-inline-end:.35em}.failed-count{white-space:nowrap;flex:none}.shimmer{-webkit-mask-image:linear-gradient(var(--progress-steps-shimmer-angle), currentcolor 38%, color-mix(in srgb, currentcolor 35%, transparent) 50%, currentcolor 62%);mask-image:linear-gradient(var(--progress-steps-shimmer-angle), currentcolor 38%, color-mix(in srgb, currentcolor 35%, transparent) 50%, currentcolor 62%);animation:progress-steps-shimmer var(--progress-steps-shimmer-duration) linear infinite;-webkit-mask-size:300% 100%;mask-size:300% 100%}.chevron{inline-size:var(--progress-steps-chevron-size);block-size:var(--progress-steps-chevron-size);transition:transform var(--progress-steps-transition-duration) ease, opacity var(--progress-steps-transition-duration) ease;flex:none;margin-block-start:calc((var(--progress-steps-line-block-size) - var(--progress-steps-chevron-size)) / 2);display:inline-flex}.chevron svg{block-size:100%;inline-size:100%}:host(:not([open])) .summary[data-state=running]:not(:hover,:focus-visible) .chevron{opacity:0}:host([open]) .chevron{transform:rotate(90deg)}:host([dir=rtl]) .chevron svg{transform:scaleX(-1)}:host([dir=rtl][open]) .chevron{transform:rotate(-90deg)}:host([dir=rtl]) .shimmer{animation-direction:reverse}.details{padding-block:var(--progress-steps-step-spacing);padding-inline:var(--progress-steps-padding-inline);font-size:var(--luzmo-progress-steps-font-size-small,var(--progress-steps-font-size-small));line-height:var(--progress-steps-details-line-height);animation:progress-steps-details-in var(--progress-steps-transition-duration) ease-out}.steps,.substeps{margin:0;padding:0;list-style:none}.step{grid-template-columns:var(--progress-steps-icon-size) minmax(0, 1fr);column-gap:var(--progress-steps-gap);padding-block:var(--progress-steps-step-spacing);display:grid;position:relative}.step:before,.step:after{content:"";border-inline-start:var(--luzmo-border-width) solid var(--luzmo-progress-steps-substep-connector-color,var(--progress-steps-substep-connector-color));position:absolute;inset-inline-start:calc(var(--progress-steps-icon-size) / 2 - var(--luzmo-border-width) / 2)}.step:before{block-size:calc(var(--progress-steps-marker-center) - var(--progress-steps-marker-radius));inset-block-start:0}.step:after{inset-block:calc(var(--progress-steps-marker-center) + var(--progress-steps-marker-radius)) 0}.step:first-child:before{display:none}.step:last-child:not(:has(>.substeps)):after{display:none}.step-marker{block-size:calc(1em * var(--progress-steps-details-line-height));color:var(--luzmo-progress-steps-font-color-dimmed,var(--progress-steps-font-color-dimmed));justify-content:center;align-items:center;display:inline-flex}.step-marker svg{inline-size:var(--progress-steps-marker-size);block-size:var(--progress-steps-marker-size)}.step-dot{box-sizing:border-box;inline-size:var(--progress-steps-dot-size);block-size:var(--progress-steps-dot-size);border:calc(var(--progress-steps-dot-size) / 2) solid currentcolor;border-radius:50%}.step-inProgress .step-marker{color:var(--luzmo-progress-steps-font-color,var(--progress-steps-font-color))}.step-inProgress .step-marker .step-dot{animation:1.2s ease-in-out infinite progress-steps-pulse}.step-pending .step-dot{border-width:var(--luzmo-border-width)}.step-error .step-marker{color:var(--luzmo-progress-steps-error-color,var(--progress-steps-error-color))}.step-label{color:var(--luzmo-progress-steps-font-color,var(--progress-steps-font-color));overflow-wrap:anywhere}.substeps{gap:var(--progress-steps-step-spacing);flex-direction:column;display:flex}.step>.substeps{grid-column:2;margin-block-start:calc(2 * var(--progress-steps-step-spacing))}.substep>.substeps{margin-block-start:var(--progress-steps-step-spacing);padding-inline-start:var(--progress-steps-substep-indent)}.substep{overflow-wrap:anywhere}.substep-inProgress{color:var(--luzmo-progress-steps-font-color,var(--progress-steps-font-color))}.substep-error{color:var(--luzmo-progress-steps-error-color,var(--progress-steps-error-color))}.substep-icon{vertical-align:-.1em;block-size:.85em;inline-size:.85em;margin-inline-end:.3em;display:inline-flex}.substep-icon svg{block-size:100%;inline-size:100%}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:host([no-animate]) .headline-text.entering,:host([no-animate]) .sub-step-text.entering,:host([no-animate]) .details,:host([no-animate]) .chevron,:host([no-animate]) .spinner,:host([no-animate]) .step-dot{transition:none;animation:none}:host([no-animate]) .leaving{display:none}@keyframes progress-steps-shimmer{0%{-webkit-mask-position:100% 0;mask-position:100% 0}to{-webkit-mask-position:0 0;mask-position:0 0}}@keyframes progress-steps-enter{0%{opacity:0;transform:translateY(60%)}}@keyframes progress-steps-collapse{0%{padding-block-end:var(--progress-steps-sub-step-block-size)}}@keyframes progress-steps-leave{to{opacity:0;transform:translateY(-60%)}}@keyframes progress-steps-details-in{0%{opacity:0;transform:translateY(calc(-1 * var(--luzmo-spacing-2)))}}@keyframes progress-steps-spin{to{transform:rotate(360deg)}}@keyframes progress-steps-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.shimmer,.headline-text.entering,.sub-step-text.entering,.details,.chevron,.spinner,.step-dot{transition:none;animation:none}.leaving{display:none}}@media (forced-colors:active){.shimmer{animation:none;-webkit-mask-image:none;mask-image:none}.spinner{forced-color-adjust:none}}:host{--progress-steps-font-size:var(--luzmo-font-size);--progress-steps-line-height:1.5;--progress-steps-font-color:color-mix(in oklch, var(--luzmo-font-color) 65%, var(--luzmo-font-color-extra-dimmed));--progress-steps-font-color-dimmed:color-mix(in oklch, var(--luzmo-font-color) 35%, var(--luzmo-font-color-extra-dimmed));--progress-steps-error-color:var(--luzmo-negative-color);--progress-steps-warning-color:var(--luzmo-notice-color);--progress-steps-success-color:var(--luzmo-positive-color);--progress-steps-substep-connector-color:var(--luzmo-border-color-down);--progress-steps-hover-background:var(--luzmo-background-color-hover);--progress-steps-border-radius:var(--luzmo-border-radius);--progress-steps-focus-ring-width:var(--luzmo-indicator-width);--progress-steps-focus-ring-gap:var(--luzmo-indicator-gap);--progress-steps-focus-ring-color:var(--luzmo-indicator-color);--progress-steps-min-height:var(--luzmo-component-height-s);--progress-steps-gap:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--progress-steps-padding-inline:var(--luzmo-spacing-2);--progress-steps-step-spacing:var(--luzmo-spacing-1);--progress-steps-icon-size:var(--luzmo-icon-size-m);--progress-steps-chevron-size:var(--luzmo-icon-size-s);--progress-steps-icon-offset:.04em;--progress-steps-font-size-small:var(--luzmo-font-size-s);--progress-steps-details-line-height:1.4;--progress-steps-marker-size:.8em;--progress-steps-dot-size:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--progress-steps-substep-indent:var(--luzmo-spacing-4);--progress-steps-transition-duration:.25s;--progress-steps-shimmer-duration:1.8s;--progress-steps-shimmer-angle:105deg;--progress-steps-line-block-size:calc(var(--luzmo-progress-steps-font-size,var(--progress-steps-font-size)) * var(--progress-steps-line-height));--progress-steps-sub-step-block-size:calc(var(--luzmo-progress-steps-font-size-small,var(--progress-steps-font-size-small)) * var(--progress-steps-line-height));--progress-steps-spinner-duration:.9s}:host([size=s]){--progress-steps-font-size:var(--luzmo-font-size-s);--progress-steps-font-size-small:var(--luzmo-font-size-s);--progress-steps-icon-size:var(--luzmo-icon-size-s);--progress-steps-chevron-size:var(--luzmo-icon-size-xs);--progress-steps-min-height:var(--luzmo-component-height-xs);--progress-steps-gap:var(--luzmo-spacing-2)}:host([size=l]){--progress-steps-font-size:var(--luzmo-font-size-l);--progress-steps-font-size-small:var(--luzmo-font-size-m);--progress-steps-icon-size:var(--luzmo-icon-size-l);--progress-steps-chevron-size:var(--luzmo-icon-size-m);--progress-steps-min-height:var(--luzmo-component-height);--progress-steps-step-spacing:var(--luzmo-spacing-2)}:host([size=xl]){--progress-steps-font-size:var(--luzmo-font-size-xl);--progress-steps-font-size-small:var(--luzmo-font-size-l);--progress-steps-icon-size:var(--luzmo-icon-size-xl);--progress-steps-chevron-size:var(--luzmo-icon-size-l);--progress-steps-min-height:var(--luzmo-component-height-l);--progress-steps-gap:var(--luzmo-spacing-3);--progress-steps-step-spacing:var(--luzmo-spacing-2)}:host([dir=rtl]){--progress-steps-shimmer-angle:255deg}.step{--progress-steps-marker-center:calc(var(--progress-steps-step-spacing) + .5em * var(--progress-steps-details-line-height));--progress-steps-marker-radius:calc(var(--progress-steps-dot-size) / 2)}.step-error{--progress-steps-marker-radius:calc(var(--progress-steps-marker-size) / 2)}@media (forced-colors:active){:host{--highcontrast-progress-steps-focus-ring-color:Highlight;--highcontrast-progress-steps-spinner-track-color:GrayText;--highcontrast-progress-steps-spinner-color:CanvasText}}`,O={condensedSingular:`Worked through {{count}} step`,condensedPlural:`Worked through {{count}} steps`,failedSingular:`{{count}} failed`,failedPlural:`{{count}} failed`,stepInProgress:`Step in progress`,stepPending:`Step pending`,stepCompleted:`Step completed`,stepFailed:`Step failed`},k=500,A=800,j=1e3,M=250,N={mainStep:null,subStep:null},P=(e,t)=>e?.mainStep===t.mainStep&&e?.subStep===t.subStep,F=class extends r(a,{defaultSize:`m`,validSizes:[`s`,`m`,`l`,`xl`]}){constructor(...e){super(...e),this.progress=null,this.locale=`en`,this.collapsed=!1,this.displayMode=`detailed`,this.condensed=!1,this.labels={...O},this.noAnimate=!1,this.open=!1,this._phase=`idle`,this._current=null,this._leaving=null,this._subStepTransition=null,this._announcement=``,this._languageResolver=new m(this),this._pending=null,this._shownAt=0}static get styles(){let e=super.styles;return[...Array.isArray(e)?e:e?[e]:[],n(D)]}connectedCallback(){super.connectedCallback(),this.hasUpdated&&this._syncPhase()}disconnectedCallback(){super.disconnectedCallback(),this._clearTimers(),this._leaving=null,this._subStepTransition=null}willUpdate(e){super.willUpdate(e),e.has(p)&&(this._numberFormatter=void 0),e.has(`progress`)?(e.get(`progress`)?.id!==this.progress?.id&&(this._resetRun(),this.hasUpdated&&(this.open=!1)),this._syncPhase()):(e.has(`collapsed`)&&this.collapsed||e.has(`locale`))&&this._syncPhase()}get _labels(){return{...O,...this.labels}}_syncPhase(){if(!x(this.progress)){this._resetRun();return}let e=T(this.progress)?null:S(this.progress);if(e){this._clearSettleTimer(),this._phase=`running`,this._queue(e);return}if(this._phase===`done`)return;let t=this.collapsed||T(this.progress);if(this._phase===`idle`){(t||w(this.progress))&&this._finish();return}if(t){this._finish();return}this._settleTimer??=setTimeout(()=>{this._settleTimer=void 0,this._finish()},A)}_queue(e){let t={mainStep:E(e.mainStep,this.locale),subStep:e.subStep?E(e.subStep,this.locale):null};if(P(this._current,t)){this._pending=null,this._clearDwellTimer();return}this._pending=t;let n=this._current?this._shownAt+k-Date.now():0;this.noAnimate||n<=0?this._showPending():this._dwellTimer??=setTimeout(()=>{this._dwellTimer=void 0,this._showPending()},n)}_showPending(){let e=this._pending;this._pending=null,e&&this._phase===`running`&&(this._show(e),this._announce(e.mainStep))}_finish(){let e=this._phase===`running`;this._clearDwellTimer(),this._clearSettleTimer(),this._pending=null,this._phase=`done`,this._show(N),e&&this._announce(this._summaryText())}_show(e){let t=this._current;t&&!this.noAnimate&&(t.mainStep!==null&&t.mainStep===e.mainStep?this._subStepTransition={leaving:t.subStep}:(this._leaving=t,this._subStepTransition=null),clearTimeout(this._leaveTimer),this._leaveTimer=setTimeout(()=>{this._leaving=null,this._subStepTransition=null},M)),this._current=e,this._shownAt=Date.now()}_announce(e){clearTimeout(this._announceTimer),this._announceTimer=setTimeout(()=>{this._announcement=e},j)}_resetRun(){this._clearTimers(),this._phase=`idle`,this._current=null,this._leaving=null,this._subStepTransition=null,this._pending=null,this._announcement=``}_clearDwellTimer(){clearTimeout(this._dwellTimer),this._dwellTimer=void 0}_clearSettleTimer(){clearTimeout(this._settleTimer),this._settleTimer=void 0}_clearTimers(){this._clearDwellTimer(),this._clearSettleTimer(),clearTimeout(this._leaveTimer),clearTimeout(this._announceTimer)}_formatCount(e,t){return e.replaceAll(`{{count}}`,this._numberFormat.format(t))}get _numberFormat(){if(!this._numberFormatter)try{this._numberFormatter=new Intl.NumberFormat(this._languageResolver.language)}catch{this._numberFormatter=new Intl.NumberFormat}return this._numberFormatter}_summaryText(){let e=this.progress?.children?.length??0,t=this._labels;return this._formatCount(e===1?t.condensedSingular:t.condensedPlural,e)}_setOpen(e){this.open=e,this.dispatchEvent(new CustomEvent(e?`luzmo-step-expanded`:`luzmo-step-collapsed`,{bubbles:!0,composed:!0,detail:{nodeId:this.progress?.id??``}}))}handleToggle(){this._setOpen(!this.open)}handleKeydown(e){e.key===`Escape`&&this.open&&(e.preventDefault(),this._setOpen(!1))}_statusLabel(e){let t=this._labels;switch(e){case`inProgress`:return t.stepInProgress;case`success`:return t.stepCompleted;case`error`:return t.stepFailed;default:return t.stepPending}}_renderStatusIcon(t){return t?e`<span
20
+ import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-DWANyjiY.js";import{c as r,l as i,u as a,v as o,y as s}from"./chunks/lucero-runtime-DMlHjBe_.js";import{C as c,R as l,i as u,o as d,u as f}from"./chunks/luzmo-icons-vtQE0BSI.js";import{r as p,t as m}from"./chunks/language-resolution-BwIkGyuH.js";import{t as h}from"./chunks/class-map-E9JVium5.js";import{t as g}from"./chunks/repeat-CtNle5_O.js";import{t as _}from"./chunks/keyed-DYJaQjip.js";function v(e){for(let t=(e?.length??0)-1;t>=0;t--)if(e[t].status===`inProgress`)return e[t];return null}function y(e){let t=v(e.children);return t?y(t)??t:null}function b(e,t){return typeof e==`object`?e[t]??e.en??Object.values(e)[0]??``:String(e)}function x(e){return!!e?.children?.length}function S(e){let t=v(e?.children);return t?{mainStep:t,subStep:y(t)}:null}function C(e){let t=0;for(let n of e?.children??[])t+=+(n.status===`error`)+C(n);return t}function w(e){return e?.status===`error`||e?.children?.at(-1)?.status===`error`}function T(e){return!!e?.children?.some(e=>e.status===`success`||e.status===`error`)}function E(e){return e?.status===`success`||e?.status===`error`}function D(e,t){return e.description?e.description.replaceAll(/\{\{(\w+)\}\}/g,(n,r)=>{let i=e.descriptionMetadata?.[r];return i==null?n:Array.isArray(i)?i.map(e=>b(e,t)).join(`, `):b(i,t)}):e.step}var O=`:host{box-sizing:border-box;font-family:var(--luzmo-font-family);font-size:var(--luzmo-progress-steps-font-size,var(--progress-steps-font-size));line-height:var(--progress-steps-line-height);color:var(--luzmo-progress-steps-font-color-dimmed,var(--progress-steps-font-color-dimmed));display:block}.summary{box-sizing:border-box;align-items:flex-start;gap:var(--progress-steps-gap);max-inline-size:100%;min-block-size:var(--progress-steps-min-height);padding-block:max(0px, (var(--progress-steps-min-height) - var(--progress-steps-line-block-size)) / 2);padding-inline:var(--progress-steps-padding-inline);border-radius:var(--progress-steps-border-radius);color:inherit;font:inherit;text-align:start;cursor:pointer;appearance:none;background:0 0;border:0;margin:0;display:inline-flex}.summary:hover{background-color:var(--progress-steps-hover-background)}.summary:focus-visible{outline:var(--progress-steps-focus-ring-width) solid var(--highcontrast-progress-steps-focus-ring-color,var(--progress-steps-focus-ring-color));outline-offset:var(--progress-steps-focus-ring-gap)}.status-icon{inline-size:var(--progress-steps-icon-size);block-size:var(--progress-steps-icon-size);flex:none;justify-content:center;align-items:center;margin-block-start:calc((var(--progress-steps-line-block-size) - var(--progress-steps-icon-size)) / 2);display:inline-flex;position:relative;inset-block-start:var(--progress-steps-icon-offset)}.status-icon svg{block-size:100%;inline-size:100%}.status-icon-failed{color:var(--luzmo-progress-steps-warning-color,var(--progress-steps-warning-color))}.status-icon-finished{color:var(--luzmo-progress-steps-success-color,var(--progress-steps-success-color))}.spinner{box-sizing:border-box;border:calc(var(--luzmo-border-width) * 1.5) solid var(--highcontrast-progress-steps-spinner-track-color,var(--luzmo-progress-steps-substep-connector-color,var(--progress-steps-substep-connector-color)));border-block-start-color:var(--highcontrast-progress-steps-spinner-color,currentcolor);block-size:70%;inline-size:70%;animation:progress-steps-spin var(--progress-steps-spinner-duration) linear infinite;border-radius:50%}.headline{flex:0 auto;min-inline-size:0;display:block;position:relative;overflow:hidden}.headline-text{white-space:nowrap;flex-direction:column;min-inline-size:0;display:flex}.headline-text.entering{animation:progress-steps-enter var(--progress-steps-transition-duration) ease-out}.headline-text.leaving{inline-size:100%;animation:progress-steps-leave var(--progress-steps-transition-duration) ease-in forwards;position:absolute;inset-block-start:0;inset-inline-start:0}.main-step{text-overflow:ellipsis;color:var(--luzmo-progress-steps-font-color,var(--progress-steps-font-color));overflow:hidden}.sub-step{block-size:var(--progress-steps-sub-step-block-size);font-size:var(--luzmo-progress-steps-font-size-small,var(--progress-steps-font-size-small));display:block}.sub-step-texts{block-size:100%;display:block;position:relative;overflow:hidden}.sub-step-text{text-overflow:ellipsis;display:block;overflow:hidden}.sub-step-text.entering{animation:progress-steps-enter var(--progress-steps-transition-duration) ease-out}.sub-step-text.leaving{animation:progress-steps-leave var(--progress-steps-transition-duration) ease-in forwards;position:absolute;inset-block-start:0;inset-inline-start:0}.summary[data-state=done] .main-step{color:inherit}:where(.summary[data-state=done]) .headline-text.entering{animation:progress-steps-enter var(--progress-steps-transition-duration) ease-out, progress-steps-collapse var(--progress-steps-transition-duration) ease-in-out}.summary:hover .main-step{color:var(--luzmo-progress-steps-font-color,var(--progress-steps-font-color))}.failed-count:before{content:"·"/"";flex:none;padding-inline-end:.35em}.failed-count{white-space:nowrap;flex:none}.shimmer{-webkit-mask-image:linear-gradient(var(--progress-steps-shimmer-angle), currentcolor 38%, color-mix(in srgb, currentcolor 35%, transparent) 50%, currentcolor 62%);mask-image:linear-gradient(var(--progress-steps-shimmer-angle), currentcolor 38%, color-mix(in srgb, currentcolor 35%, transparent) 50%, currentcolor 62%);animation:progress-steps-shimmer var(--progress-steps-shimmer-duration) linear infinite;-webkit-mask-size:300% 100%;mask-size:300% 100%}.chevron{inline-size:var(--progress-steps-chevron-size);block-size:var(--progress-steps-chevron-size);transition:transform var(--progress-steps-transition-duration) ease, opacity var(--progress-steps-transition-duration) ease;flex:none;margin-block-start:calc((var(--progress-steps-line-block-size) - var(--progress-steps-chevron-size)) / 2);display:inline-flex}.chevron svg{block-size:100%;inline-size:100%}:host(:not([open])) .summary[data-state=running]:not(:hover,:focus-visible) .chevron{opacity:0}:host([open]) .chevron{transform:rotate(90deg)}:host([dir=rtl]) .chevron svg{transform:scaleX(-1)}:host([dir=rtl][open]) .chevron{transform:rotate(-90deg)}:host([dir=rtl]) .shimmer{animation-direction:reverse}.details{padding-block:var(--progress-steps-step-spacing);padding-inline:var(--progress-steps-padding-inline);font-size:var(--luzmo-progress-steps-font-size-small,var(--progress-steps-font-size-small));line-height:var(--progress-steps-details-line-height);animation:progress-steps-details-in var(--progress-steps-transition-duration) ease-out}.steps,.substeps{margin:0;padding:0;list-style:none}.step{grid-template-columns:var(--progress-steps-icon-size) minmax(0, 1fr);column-gap:var(--progress-steps-gap);padding-block:var(--progress-steps-step-spacing);display:grid;position:relative}.step:before,.step:after{content:"";border-inline-start:var(--luzmo-border-width) solid var(--luzmo-progress-steps-substep-connector-color,var(--progress-steps-substep-connector-color));position:absolute;inset-inline-start:calc(var(--progress-steps-icon-size) / 2 - var(--luzmo-border-width) / 2)}.step:before{block-size:calc(var(--progress-steps-marker-center) - var(--progress-steps-marker-radius));inset-block-start:0}.step:after{inset-block:calc(var(--progress-steps-marker-center) + var(--progress-steps-marker-radius)) 0}.step:first-child:before{display:none}.step:last-child:not(:has(>.substeps)):after{display:none}.step-marker{block-size:calc(1em * var(--progress-steps-details-line-height));color:var(--luzmo-progress-steps-font-color-dimmed,var(--progress-steps-font-color-dimmed));justify-content:center;align-items:center;display:inline-flex}.step-marker svg{inline-size:var(--progress-steps-marker-size);block-size:var(--progress-steps-marker-size)}.step-dot{box-sizing:border-box;inline-size:var(--progress-steps-dot-size);block-size:var(--progress-steps-dot-size);border:calc(var(--progress-steps-dot-size) / 2) solid currentcolor;border-radius:50%}.step-inProgress .step-marker{color:var(--luzmo-progress-steps-font-color,var(--progress-steps-font-color))}.step-inProgress .step-marker .step-dot{animation:1.2s ease-in-out infinite progress-steps-pulse}.step-pending .step-dot{border-width:var(--luzmo-border-width)}.step-error .step-marker{color:var(--luzmo-progress-steps-error-color,var(--progress-steps-error-color))}.step-label{color:var(--luzmo-progress-steps-font-color,var(--progress-steps-font-color));overflow-wrap:anywhere}.substeps{gap:var(--progress-steps-step-spacing);flex-direction:column;display:flex}.step>.substeps{grid-column:2;margin-block-start:calc(2 * var(--progress-steps-step-spacing))}.substep>.substeps{margin-block-start:var(--progress-steps-step-spacing);padding-inline-start:var(--progress-steps-substep-indent)}.substep{overflow-wrap:anywhere}.substep-inProgress{color:var(--luzmo-progress-steps-font-color,var(--progress-steps-font-color))}.substep-error{color:var(--luzmo-progress-steps-error-color,var(--progress-steps-error-color))}.substep-icon{vertical-align:-.1em;block-size:.85em;inline-size:.85em;margin-inline-end:.3em;display:inline-flex}.substep-icon svg{block-size:100%;inline-size:100%}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:host([no-animate]) .headline-text.entering,:host([no-animate]) .sub-step-text.entering,:host([no-animate]) .details,:host([no-animate]) .chevron,:host([no-animate]) .spinner,:host([no-animate]) .step-dot{transition:none;animation:none}:host([no-animate]) .leaving{display:none}@keyframes progress-steps-shimmer{0%{-webkit-mask-position:100% 0;mask-position:100% 0}to{-webkit-mask-position:0 0;mask-position:0 0}}@keyframes progress-steps-enter{0%{opacity:0;transform:translateY(60%)}}@keyframes progress-steps-collapse{0%{padding-block-end:var(--progress-steps-sub-step-block-size)}}@keyframes progress-steps-leave{to{opacity:0;transform:translateY(-60%)}}@keyframes progress-steps-details-in{0%{opacity:0;transform:translateY(calc(-1 * var(--luzmo-spacing-2)))}}@keyframes progress-steps-spin{to{transform:rotate(360deg)}}@keyframes progress-steps-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.shimmer,.headline-text.entering,.sub-step-text.entering,.details,.chevron,.spinner,.step-dot{transition:none;animation:none}.leaving{display:none}}@media (forced-colors:active){.shimmer{animation:none;-webkit-mask-image:none;mask-image:none}.spinner{forced-color-adjust:none}}:host{--progress-steps-font-size:var(--luzmo-font-size);--progress-steps-line-height:1.5;--progress-steps-font-color:color-mix(in oklch, var(--luzmo-font-color) 65%, var(--luzmo-font-color-extra-dimmed));--progress-steps-font-color-dimmed:color-mix(in oklch, var(--luzmo-font-color) 35%, var(--luzmo-font-color-extra-dimmed));--progress-steps-error-color:var(--luzmo-negative-color);--progress-steps-warning-color:var(--luzmo-notice-color);--progress-steps-success-color:var(--luzmo-positive-color);--progress-steps-substep-connector-color:var(--luzmo-border-color-down);--progress-steps-hover-background:var(--luzmo-background-color-hover);--progress-steps-border-radius:var(--luzmo-border-radius);--progress-steps-focus-ring-width:var(--luzmo-indicator-width);--progress-steps-focus-ring-gap:var(--luzmo-indicator-gap);--progress-steps-focus-ring-color:var(--luzmo-indicator-color);--progress-steps-min-height:var(--luzmo-component-height-s);--progress-steps-gap:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--progress-steps-padding-inline:var(--luzmo-spacing-2);--progress-steps-step-spacing:var(--luzmo-spacing-1);--progress-steps-icon-size:var(--luzmo-icon-size-m);--progress-steps-chevron-size:var(--luzmo-icon-size-s);--progress-steps-icon-offset:.04em;--progress-steps-font-size-small:var(--luzmo-font-size-s);--progress-steps-details-line-height:1.4;--progress-steps-marker-size:.8em;--progress-steps-dot-size:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--progress-steps-substep-indent:var(--luzmo-spacing-4);--progress-steps-transition-duration:.25s;--progress-steps-shimmer-duration:1.8s;--progress-steps-shimmer-angle:105deg;--progress-steps-line-block-size:calc(var(--luzmo-progress-steps-font-size,var(--progress-steps-font-size)) * var(--progress-steps-line-height));--progress-steps-sub-step-block-size:calc(var(--luzmo-progress-steps-font-size-small,var(--progress-steps-font-size-small)) * var(--progress-steps-line-height));--progress-steps-spinner-duration:.9s}:host([size=s]){--progress-steps-font-size:var(--luzmo-font-size-s);--progress-steps-font-size-small:var(--luzmo-font-size-s);--progress-steps-icon-size:var(--luzmo-icon-size-s);--progress-steps-chevron-size:var(--luzmo-icon-size-xs);--progress-steps-min-height:var(--luzmo-component-height-xs);--progress-steps-gap:var(--luzmo-spacing-2)}:host([size=l]){--progress-steps-font-size:var(--luzmo-font-size-l);--progress-steps-font-size-small:var(--luzmo-font-size-m);--progress-steps-icon-size:var(--luzmo-icon-size-l);--progress-steps-chevron-size:var(--luzmo-icon-size-m);--progress-steps-min-height:var(--luzmo-component-height);--progress-steps-step-spacing:var(--luzmo-spacing-2)}:host([size=xl]){--progress-steps-font-size:var(--luzmo-font-size-xl);--progress-steps-font-size-small:var(--luzmo-font-size-l);--progress-steps-icon-size:var(--luzmo-icon-size-xl);--progress-steps-chevron-size:var(--luzmo-icon-size-l);--progress-steps-min-height:var(--luzmo-component-height-l);--progress-steps-gap:var(--luzmo-spacing-3);--progress-steps-step-spacing:var(--luzmo-spacing-2)}:host([dir=rtl]){--progress-steps-shimmer-angle:255deg}.step{--progress-steps-marker-center:calc(var(--progress-steps-step-spacing) + .5em * var(--progress-steps-details-line-height));--progress-steps-marker-radius:calc(var(--progress-steps-dot-size) / 2)}.step-error{--progress-steps-marker-radius:calc(var(--progress-steps-marker-size) / 2)}@media (forced-colors:active){:host{--highcontrast-progress-steps-focus-ring-color:Highlight;--highcontrast-progress-steps-spinner-track-color:GrayText;--highcontrast-progress-steps-spinner-color:CanvasText}}`,k={condensedSingular:`Worked through {{count}} step`,condensedPlural:`Worked through {{count}} steps`,failedSingular:`{{count}} failed`,failedPlural:`{{count}} failed`,stepInProgress:`Step in progress`,stepPending:`Step pending`,stepCompleted:`Step completed`,stepFailed:`Step failed`},A=500,j=800,M=1e3,N=250,P={mainStep:null,subStep:null},F=(e,t)=>e?.mainStep===t.mainStep&&e?.subStep===t.subStep,I=class extends r(a,{defaultSize:`m`,validSizes:[`s`,`m`,`l`,`xl`]}){constructor(...e){super(...e),this.progress=null,this.locale=`en`,this.collapsed=!1,this.displayMode=`detailed`,this.labels={...k},this.noAnimate=!1,this.open=!1,this._phase=`idle`,this._current=null,this._leaving=null,this._subStepTransition=null,this._announcement=``,this._languageResolver=new m(this),this._pending=null,this._shownAt=0}static get styles(){let e=super.styles;return[...Array.isArray(e)?e:e?[e]:[],n(O)]}connectedCallback(){super.connectedCallback(),this.hasUpdated&&this._syncPhase()}disconnectedCallback(){super.disconnectedCallback(),this._clearTimers(),this._leaving=null,this._subStepTransition=null}willUpdate(e){super.willUpdate(e),e.has(p)&&(this._numberFormatter=void 0),e.has(`progress`)?(e.get(`progress`)?.id!==this.progress?.id&&(this._resetRun(),this.hasUpdated&&(this.open=!1)),this._syncPhase()):(e.has(`collapsed`)&&this.collapsed||e.has(`locale`))&&this._syncPhase()}get _labels(){return{...k,...this.labels}}_syncPhase(){if(!x(this.progress)){this._resetRun();return}let e=E(this.progress)?null:S(this.progress);if(e){this._clearSettleTimer(),this._phase=`running`,this._queue(e);return}if(this._phase===`done`)return;let t=this.collapsed||E(this.progress);this._phase===`idle`?(t||T(this.progress))&&this._finish():t?this._finish():this._settleTimer??=setTimeout(()=>{this._settleTimer=void 0,this._finish()},j)}_queue(e){let t={mainStep:D(e.mainStep,this.locale),subStep:e.subStep?D(e.subStep,this.locale):null};if(F(this._current,t)){this._pending=null,this._clearDwellTimer();return}this._pending=t;let n=this._current?this._shownAt+A-Date.now():0;this.noAnimate||n<=0?this._showPending():this._dwellTimer??=setTimeout(()=>{this._dwellTimer=void 0,this._showPending()},n)}_showPending(){let e=this._pending;this._pending=null,e&&this._phase===`running`&&(this._show(e),this._announce(e.mainStep))}_finish(){let e=this._phase===`running`;this._clearDwellTimer(),this._clearSettleTimer(),this._pending=null,this._phase=`done`,this._show(P),e&&this._announce(this._summaryText())}_show(e){let t=this._current;t&&!this.noAnimate&&(t.mainStep!==null&&t.mainStep===e.mainStep?this._subStepTransition={leaving:t.subStep}:(this._leaving=t,this._subStepTransition=null),clearTimeout(this._leaveTimer),this._leaveTimer=setTimeout(()=>{this._leaving=null,this._subStepTransition=null},N)),this._current=e,this._shownAt=Date.now()}_announce(e){clearTimeout(this._announceTimer),this._announceTimer=setTimeout(()=>{this._announcement=e},M)}_resetRun(){this._clearTimers(),this._phase=`idle`,this._current=null,this._leaving=null,this._subStepTransition=null,this._pending=null,this._announcement=``}_clearDwellTimer(){clearTimeout(this._dwellTimer),this._dwellTimer=void 0}_clearSettleTimer(){clearTimeout(this._settleTimer),this._settleTimer=void 0}_clearTimers(){this._clearDwellTimer(),this._clearSettleTimer(),clearTimeout(this._leaveTimer),clearTimeout(this._announceTimer)}_formatCount(e,t){return e.replaceAll(`{{count}}`,this._numberFormat.format(t))}get _numberFormat(){if(!this._numberFormatter)try{this._numberFormatter=new Intl.NumberFormat(this._languageResolver.language)}catch{this._numberFormatter=new Intl.NumberFormat}return this._numberFormatter}_summaryText(){let e=this.progress?.children?.length??0,t=this._labels;return this._formatCount(e===1?t.condensedSingular:t.condensedPlural,e)}_setOpen(e){this.open=e,this.dispatchEvent(new CustomEvent(e?`luzmo-step-expanded`:`luzmo-step-collapsed`,{bubbles:!0,composed:!0,detail:{nodeId:this.progress?.id??``}}))}handleToggle(){this._setOpen(!this.open)}handleKeydown(e){e.key===`Escape`&&this.open&&(e.preventDefault(),this._setOpen(!1))}_statusLabel(e){let t=this._labels;switch(e){case`inProgress`:return t.stepInProgress;case`success`:return t.stepCompleted;case`error`:return t.stepFailed;default:return t.stepPending}}_renderStatusIcon(t){return t?e`<span
21
21
  class="status-icon status-icon-failed"
22
22
  aria-hidden="true"
23
23
  >${c(d)}</span
@@ -51,7 +51,7 @@ import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-BN_lRQbJ.js";i
51
51
  aria-label=${this._labels.stepFailed}
52
52
  >${c(f)}</span
53
53
  >`:t}<span class="substep-label"
54
- >${E(n,this.locale)}</span
54
+ >${D(n,this.locale)}</span
55
55
  >
56
56
  ${n.children?.length?this._renderSubsteps(n.children):t}
57
57
  </li>`}_renderSubsteps(t){return e`<ul class="substeps">
@@ -61,14 +61,14 @@ import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-BN_lRQbJ.js";i
61
61
  >
62
62
  ${this._renderStepMarker(n.status)}
63
63
  <span class="step-label"
64
- >${E(n,this.locale)}</span
64
+ >${D(n,this.locale)}</span
65
65
  >
66
66
  ${r&&n.children?.length?this._renderSubsteps(n.children):t}
67
67
  </li>`}_renderDetails(){let t=this.displayMode!==`compact`;return e`<div id="details" class="details">
68
68
  <ol class="steps">
69
69
  ${g(this.progress?.children??[],e=>e.id,e=>this._renderStep(e,t))}
70
70
  </ol>
71
- </div>`}render(){if(this._phase===`idle`||!this._current)return t;let n=C(this.progress),r=this._labels,i=this._phase===`running`&&!this.noAnimate;return e`
71
+ </div>`}render(){if(this._phase===`idle`||!this._current)return t;let n=C(this.progress),r=this._phase===`done`&&w(this.progress),i=this._labels,a=this._phase===`running`&&!this.noAnimate;return e`
72
72
  <button
73
73
  type="button"
74
74
  class="summary"
@@ -78,18 +78,18 @@ import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-BN_lRQbJ.js";i
78
78
  @click=${this.handleToggle}
79
79
  @keydown=${this.handleKeydown}
80
80
  >
81
- ${this._renderStatusIcon(n>0||this.progress?.status===`error`)}
82
- <span class=${h({headline:!0,shimmer:i})}>
81
+ ${this._renderStatusIcon(r)}
82
+ <span class=${h({headline:!0,shimmer:a})}>
83
83
  ${this._leaving?e`<span class="headline-text leaving" aria-hidden="true"
84
84
  >${this._renderContent(this._leaving)}</span
85
85
  >`:t}
86
- ${_(this._current.mainStep??N,e`<span
86
+ ${_(this._current.mainStep??P,e`<span
87
87
  class=${h({"headline-text":!0,entering:this._leaving!==null})}
88
88
  >${this._renderContent(this._current,this._subStepTransition)}</span
89
89
  >`)}
90
90
  </span>
91
- ${n>0?e`<span class="failed-count"
92
- >${this._formatCount(n===1?r.failedSingular:r.failedPlural,n)}</span
91
+ ${r&&n>0?e`<span class="failed-count"
92
+ >${this._formatCount(n===1?i.failedSingular:i.failedPlural,n)}</span
93
93
  >`:t}
94
94
  <span class="chevron" aria-hidden="true"
95
95
  >${c(u)}</span
@@ -97,4 +97,4 @@ import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-BN_lRQbJ.js";i
97
97
  </button>
98
98
  ${this.open?this._renderDetails():t}
99
99
  <span class="visually-hidden" role="status">${this._announcement}</span>
100
- `}};i([s({attribute:!1})],F.prototype,`progress`,void 0),i([s({type:String,reflect:!0})],F.prototype,`locale`,void 0),i([s({type:Boolean,reflect:!0})],F.prototype,`collapsed`,void 0),i([s({type:String,attribute:`display-mode`,reflect:!0})],F.prototype,`displayMode`,void 0),i([s({type:Boolean,reflect:!0})],F.prototype,`condensed`,void 0),i([s({attribute:!1})],F.prototype,`labels`,void 0),i([s({type:Boolean,attribute:`no-animate`,reflect:!0})],F.prototype,`noAnimate`,void 0),i([s({type:Boolean,reflect:!0})],F.prototype,`open`,void 0),i([o()],F.prototype,`_phase`,void 0),i([o()],F.prototype,`_current`,void 0),i([o()],F.prototype,`_leaving`,void 0),i([o()],F.prototype,`_subStepTransition`,void 0),i([o()],F.prototype,`_announcement`,void 0),typeof customElements<`u`&&!customElements.get(`luzmo-progress-steps`)&&customElements.define(`luzmo-progress-steps`,F);export{O as DEFAULT_PROGRESS_STEPS_LABELS,F as LuzmoProgressSteps};
100
+ `}};i([s({attribute:!1})],I.prototype,`progress`,void 0),i([s({type:String,reflect:!0})],I.prototype,`locale`,void 0),i([s({type:Boolean,reflect:!0})],I.prototype,`collapsed`,void 0),i([s({type:String,attribute:`display-mode`,reflect:!0})],I.prototype,`displayMode`,void 0),i([s({attribute:!1})],I.prototype,`labels`,void 0),i([s({type:Boolean,attribute:`no-animate`,reflect:!0})],I.prototype,`noAnimate`,void 0),i([s({type:Boolean,reflect:!0})],I.prototype,`open`,void 0),i([o()],I.prototype,`_phase`,void 0),i([o()],I.prototype,`_current`,void 0),i([o()],I.prototype,`_leaving`,void 0),i([o()],I.prototype,`_subStepTransition`,void 0),i([o()],I.prototype,`_announcement`,void 0),typeof customElements<`u`&&!customElements.get(`luzmo-progress-steps`)&&customElements.define(`luzmo-progress-steps`,I);export{k as DEFAULT_PROGRESS_STEPS_LABELS,I as LuzmoProgressSteps};
@@ -17,10 +17,10 @@
17
17
  *
18
18
  */
19
19
 
20
- import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-BN_lRQbJ.js";import{c as r,g as i,l as a,u as o,v as s,y as c}from"./chunks/lucero-runtime-DGJ9-isg.js";import{N as l,O as u,P as d,S as f,T as p,c as m,h,k as g,r as _,v as ee,y as v}from"./chunks/luzmo-icons-B-pCv-xg.js";import"./chunks/icon-BypO7M7G.js";import"./chunks/action-button-FSsfXYe9.js";import{p as y}from"./chunks/overlay-C4ir0iyC.js";import"./chunks/overlay-C_XW8yry.js";import"./chunks/text-field-4OKvLOXG.js";import"./chunks/clear-button-3zpCVxG5.js";import"./chunks/button-Q1n9DH9a.js";import"./chunks/skeleton-loader-BxYcRRJr.js";import{t as b}from"./chunks/voice-recorder--d34tYNu.js";var te=class{constructor(e){this._attachments=[],this._idCounter=0,this._host=e,e.addController(this)}hostConnected(){}hostDisconnected(){this._revokeAllPreviewUrls()}get attachments(){return this._attachments}get hasAttachments(){return this._attachments.length>0}get imageAttachments(){return this._attachments.filter(e=>this._isImageFile(e.file))}get fileAttachments(){return this._attachments.filter(e=>!this._isImageFile(e.file))}addFiles(e){if(this._host.disabled||this._host.readonly||this._host.pending)return[];let t=[];for(let n of e){if(this._isImageFile(n)&&!this._host.allowImages||!this._isImageFile(n)&&!this._host.allowFiles||!this._isFileTypeAccepted(n))continue;let e=this._generateId(),r={file:n,id:e};this._isImageFile(n)&&(r.previewUrl=URL.createObjectURL(n)),this._attachments=[...this._attachments,r],t.push(e)}return t.length>0&&(this._dispatchChange(),this._host.requestUpdate()),t}removeAttachment(e){let t=this._attachments.find(t=>t.id===e);t&&(t.previewUrl&&URL.revokeObjectURL(t.previewUrl),this._attachments=this._attachments.filter(t=>t.id!==e),this._dispatchChange(),this._host.requestUpdate())}setAttachmentLoading(e,t){let n=this._attachments.findIndex(t=>t.id===e);if(n===-1)return;let r=this._attachments[n];!!r.loading!==t&&(this._attachments=[...this._attachments.slice(0,n),{...r,loading:t},...this._attachments.slice(n+1)],this._dispatchChange(),this._host.requestUpdate())}clearAttachments(){this._revokeAllPreviewUrls(),this._attachments=[],this._dispatchChange(),this._host.requestUpdate()}getAttachments(){return[...this._attachments]}handlePastedImages(e){if(!this._host.allowImages||this._host.disabled||this._host.readonly||this._host.pending||!e)return!1;let t=[];for(let n of e.items)if(n.type.startsWith(`image/`)){let e=n.getAsFile();e&&t.push(e)}return t.length>0?(this.addFiles(t),!0):!1}getAcceptAttribute(){if(this._host.acceptedFileTypes.length>0)return this._host.acceptedFileTypes.join(`,`);let e=[];return this._host.allowImages&&e.push(`image/*`),this._host.allowFiles&&e.push(`*/*`),e.join(`,`)}isImageFile(e){return this._isImageFile(e)}_isImageFile(e){return e.type.startsWith(`image/`)}_isFileTypeAccepted(e){if(this._host.acceptedFileTypes.length===0)return!0;let t=e.name.toLowerCase(),n=e.type.toLowerCase();for(let e of this._host.acceptedFileTypes){let r=e.toLowerCase();if(r.endsWith(`/*`)){let e=r.slice(0,-2);if(n.startsWith(e+`/`))return!0}else if(n===r)return!0;else if(r.startsWith(`.`)&&t.endsWith(r))return!0}return!1}_generateId(){return`attachment-${++this._idCounter}-${Date.now()}`}_revokeAllPreviewUrls(){for(let e of this._attachments)e.previewUrl&&URL.revokeObjectURL(e.previewUrl)}_dispatchChange(){this._host.dispatchEvent(new CustomEvent(`luzmo-attachments-change`,{bubbles:!0,composed:!0,detail:{attachments:this._attachments}}))}},x=class{constructor(e){this._voiceRecorder=null,this.isRecording=!1,this.duration=0,this.audioLevel=0,this.shouldFocusFinishButton=!1,this._host=e,e.addController(this)}hostConnected(){}hostDisconnected(){this._destroy()}async start(e){if(!b.isSupported()){this._host.dispatchEvent(new CustomEvent(`luzmo-record-error`,{bubbles:!0,composed:!0,detail:{error:`Voice recording is not supported in this browser`}}));return}if(this.isRecording){this.stop();return}this.shouldFocusFinishButton=e,this._init(),this._voiceRecorder&&(await this._voiceRecorder.startRecording()&&(this.isRecording=!0,this.duration=0,this.audioLevel=0,this._host.requestUpdate()),this._host.dispatchEvent(new CustomEvent(`luzmo-record`,{bubbles:!0,composed:!0,detail:{isRecording:this.isRecording}})))}stop(){this._voiceRecorder?.stopRecording()}cancel(){this._voiceRecorder?.cancelRecording(),this.isRecording=!1,this.duration=0,this.audioLevel=0,this._host.requestUpdate(),this._host.dispatchEvent(new CustomEvent(`luzmo-record-cancel`,{bubbles:!0,composed:!0}))}formatDuration(){return b.formatDuration(this.duration)}static isSupported(){return b.isSupported()}_init(){this._voiceRecorder||(this._voiceRecorder=new b({maxDuration:3e5}),this._voiceRecorder.onStart(()=>{this.isRecording=!0,this._host.requestUpdate()}).onStop(e=>{this.isRecording=!1,this.duration=0,this.audioLevel=0,this._host.requestUpdate(),this._host.dispatchEvent(new CustomEvent(`luzmo-recording-complete`,{bubbles:!0,composed:!0,detail:{audioBlob:e.audioBlob,duration:e.duration,mimeType:e.mimeType}}))}).onError(e=>{this.isRecording=!1,this.duration=0,this.audioLevel=0,this._host.requestUpdate(),this._host.dispatchEvent(new CustomEvent(`luzmo-record-error`,{bubbles:!0,composed:!0,detail:{error:e}}))}).onAudioLevel(e=>{this.audioLevel=e,this._host.requestUpdate()}).onDurationUpdate(e=>{this.duration=e,this._host.requestUpdate()}))}_destroy(){this._voiceRecorder&&=(this._voiceRecorder.destroy(),null),this.isRecording=!1,this.duration=0,this.audioLevel=0}};function S(e,t){let n=document.createRange();return n.setStart(e,t),n.collapse(!0),n}function C(e,t,n){let r=e.getBoundingClientRect(),i=t-r.left,a=n-r.top;return i*i+a*a}function ne(e,t,n,r){let i=0,a=t;for(;a-i>1;){let t=i+a>>>1,r=document.createRange();r.setStart(e,t),r.collapse(!0),r.getBoundingClientRect().left<n?i=t:a=t}let o=S(e,i),s=C(o,n,r),c=S(e,a),l=C(c,n,r);return l<s&&(o=c,s=l),{range:o,distSq:s}}function w(e,t,n,r){let i=null,a=1/0;for(let[o,s]of e.childNodes.entries())if(s!==r){if(s.nodeType===Node.TEXT_NODE){let e=(s.textContent??``).length;if(e===0)continue;let r=ne(s,e,t,n);r.distSq<a&&(a=r.distSq,i=r.range)}else if(s.nodeType===Node.ELEMENT_NODE){let r=s.getBoundingClientRect();if(r.width===0&&r.height===0)continue;let c=r.left+r.width/2,l=S(e,o),u=S(e,o+1),d=t<c?l:u,f=n-(r.top+r.height/2),p=t<c?t-r.left:t-r.right,m=p*p+f*f;m<a&&(a=m,i=d)}}if(!i){let t=document.createRange();return t.selectNodeContents(e),t.collapse(!1),t}return i}function T(e,t,n,r,i){if(Number.isNaN(n)||Number.isNaN(r))return null;let a=null,o=e;if(o?.caretPositionFromPoint){let e=o.caretPositionFromPoint(n,r);e&&(a=S(e.offsetNode,e.offset))}else o?.caretRangeFromPoint&&(a=o.caretRangeFromPoint(n,r));if(!a)if(`caretPositionFromPoint`in document){let e=document.caretPositionFromPoint(n,r);e&&(a=S(e.offsetNode,e.offset))}else`caretRangeFromPoint`in document&&(a=document.caretRangeFromPoint(n,r));return(!a||!t.contains(a.startContainer))&&(a=w(t,n,r,i)),a}function E(e){if(e){let t=e.getSelection?.();if(t&&t.rangeCount>0)return t.getRangeAt(0)}let t=document.getSelection();if(!t||t.rangeCount===0)return null;let n=t.getRangeAt(0);if(!e||e.contains(n.startContainer))return n;let r=t;if(e&&r.getComposedRanges)try{let t=r.getComposedRanges(e);if(t.length>0){let e=t[0],n=document.createRange();return n.setStart(e.startContainer,e.startOffset),n.setEnd(e.endContainer,e.endOffset),n}}catch{}return null}function D(e,t){let n=document.getSelection();if(n)try{n.setBaseAndExtent(e,t,e,t)}catch{let r=document.createRange();r.setStart(e,t),r.collapse(!0),n.removeAllRanges(),n.addRange(r)}}function O(e){return e===` `||e===`
21
- `||e===`\xA0`}function re(e){let t=E(e);if(!t||!t.collapsed)return!1;let n=t.startContainer,r=t.startOffset;if(n.nodeType===Node.TEXT_NODE){if(r>=2)return O(n.textContent?.charAt(r-2)??``);let e=n.previousSibling;if(!e||e.nodeType===Node.ELEMENT_NODE&&e.classList?.contains(`element-badge`))return!0;let t=e.textContent??``;return t.length===0||O(t.at(-1)??``)}if(n.nodeType===Node.ELEMENT_NODE){if(r===0)return!0;let e=n.childNodes[r-1];if(!e||e.nodeType===Node.ELEMENT_NODE&&e.classList?.contains(`element-badge`))return!0;if(e.nodeType===Node.TEXT_NODE){let t=e.textContent??``;return t.length===0||O(t.at(-1)??``)}}return!1}function ie(e,t){let n=E(e);if(!n){if(!t)return null;let e=t.getBoundingClientRect();return{x:e.left,y:e.bottom}}let r=n.cloneRange();r.collapse(!0);let i=r.startContainer,a=r.startOffset;if(i.nodeType===Node.TEXT_NODE&&a>0){let e=document.createRange();e.setStart(i,a-1),e.setEnd(i,a);let t=e.getBoundingClientRect();if(t.width>0||t.height>0)return{x:t.left,y:t.bottom}}let o=r.getBoundingClientRect();if(o.width===0&&o.height===0&&o.x===0){if(t){let e=t.getBoundingClientRect();return{x:e.left,y:e.bottom}}return null}return{x:o.left,y:o.bottom}}function ae(e,t){let n=E(e);if(!n||!n.collapsed)return null;let r=n.startContainer,i=n.startOffset;if(r.nodeType!==Node.TEXT_NODE)return null;let a=(r.textContent??``).slice(0,Math.max(0,i)),o=a.lastIndexOf(t);return o===-1?null:a.slice(Math.max(0,o+1))}function k(e,t){if(e.focus(),!t)return;let n=e.querySelector(`[data-element-id="${t}"]`);if(!n)return;let r=n.nextSibling;if(r&&r.nodeType===Node.TEXT_NODE){let e=r.textContent??``,t=e.indexOf(` `);D(r,t===-1?e.length:t+1);return}let i=document.getSelection();if(!i)return;let a=document.createRange();a.setStartAfter(n),a.collapse(!0),i.removeAllRanges(),i.addRange(a)}function oe(e,t,n,r){let i=E(e);if(i){let e=i.startContainer,r=i.startOffset;if(e.nodeType===Node.TEXT_NODE&&t.contains(e)){let t=e.textContent??``,i=t.slice(0,Math.max(0,r)).lastIndexOf(n);if(i!==-1){e.textContent=t.slice(0,Math.max(0,i))+t.slice(Math.max(0,r)),D(e,i);return}}}let a=n+(r??``),o=document.createTreeWalker(t,NodeFilter.SHOW_TEXT),s;for(;s=o.nextNode();){let e=s.textContent??``,n=e.lastIndexOf(a);if(n!==-1){s.textContent=e.slice(0,Math.max(0,n))+e.slice(Math.max(0,n+a.length)),t.focus(),D(s,n);return}}}var A=`application/x-luzmo-element`,j=class{constructor(e){this._elements=new Map,this._idCounter=0,this._dragCaret=null,this.isDragOver=!1,this.richInputElement=null,this.handleRichInput=()=>{this.syncValue(),this._host.dispatchEvent(new Event(`input`,{bubbles:!0,composed:!0}))},this.handleRichPaste=e=>{if(e.preventDefault(),this._cannotEditRichContent())return;if(this._host.allowImages&&e.clipboardData&&this._host.handlePastedImages(e.clipboardData)){e.stopPropagation();return}let t=e.clipboardData?.getData(`text/plain`)??``;if(t){let e=E(this._host.shadowRoot);if(e){e.deleteContents(),e.insertNode(document.createTextNode(t)),e.collapse(!1);let n=document.getSelection();n&&(n.removeAllRanges(),n.addRange(e))}this.syncValue(),this._host.dispatchEvent(new Event(`input`,{bubbles:!0,composed:!0}))}},this.handleRichDragOver=e=>{this._cannotEditRichContent()||e.dataTransfer?.types.includes(`application/x-luzmo-element`)&&(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=`copy`),this.isDragOver=!0,this._host.requestUpdate(),this._positionCaretAtPoint(e.clientX,e.clientY),this._showDragCaret(e.clientX,e.clientY))},this.handleRichDragLeave=e=>{let t=e.relatedTarget;(!t||!this.richInputElement?.contains(t))&&(this.isDragOver=!1,this._hideDragCaret(),this._host.requestUpdate())},this.handleRichDrop=e=>{if(e.preventDefault(),this.isDragOver=!1,this._hideDragCaret(),this._cannotEditRichContent()){this._host.requestUpdate();return}let t=e.dataTransfer?.getData(A);if(!t){this._host.requestUpdate();return}try{let n=JSON.parse(t);if(n.elementType&&n.label){this.richInputElement?.focus();let t=this.richInputElement?T(this._host.shadowRoot,this.richInputElement,e.clientX,e.clientY,this._dragCaret):null;this._insertElementAtRange(n.elementType,n.label,n.data??null,void 0,t)}this._host.requestUpdate()}catch{this._host.requestUpdate()}},this._host=e,e.addController(this)}hostConnected(){}hostDisconnected(){}get elements(){return this._elements}get elementCount(){return this._elements.size}getSegments(){return!this._host.allowElements||!this.richInputElement?[{type:`text`,value:this._host.value}]:this._parseSegments()}setSegments(e){if(!this._host.allowElements){this._host.value=this._segmentsToPlainText(e);return}this._elements.clear(),this._host.updateComplete.then(()=>{if(this.richInputElement){this.richInputElement.innerHTML=``;for(let t of e)if(t.type===`text`&&t.value)this.richInputElement.append(document.createTextNode(t.value));else if(t.type===`element`&&t.value){let e={...t.value};e.id||=this._generateId(),this._elements.set(e.id,e),this.richInputElement.append(this._createBadgeNode(e))}this.syncValue()}})}insertElement(e,t,n,r){return this._insertElementAtRange(e,t,n,r,null)}_insertElementAtRange(e,t,n,r,i){if(this._cannotEditRichContent()||this._host.acceptedElementTypes.length>0&&!this._host.acceptedElementTypes.includes(e)||!this.richInputElement)return``;let a=this._generateId(),o={id:a,elementType:e,label:t,data:n,icon:r};this._elements.set(a,o);let s=this._createBadgeNode(o),c=this.richInputElement,l=!1,u=i===null?this._getSelectionRange():i;if(u&&c.contains(u.commonAncestorContainer)){u.deleteContents(),u.insertNode(s);let e=s.previousSibling;if(e?.nodeType===Node.TEXT_NODE){let t=e.previousSibling;t?.classList?.contains(`element-badge`)&&this._ensureSpaceAfter(t)}this._ensureSpaceAfter(s),k(c,a),l=!0}return l||(c.append(s),this._ensureSpaceAfter(s),k(c,a)),this.syncValue(),this._host.dispatchEvent(new CustomEvent(`luzmo-element-inserted`,{bubbles:!0,composed:!0,detail:{element:o}})),a}_getSelectionRange(){return E(this._host.shadowRoot)}removeElement(e){let t=this._elements.get(e);if(!t)return;this._elements.delete(e);let n=this.richInputElement?.querySelector(`[data-element-id="${e}"]`);if(n){let e=n.nextSibling;if(n.remove(),e&&e.nodeType===Node.TEXT_NODE){let t=(e.textContent??``).replaceAll(`​`,``);t?e.textContent=t:e.remove()}this.syncValue()}this._host.dispatchEvent(new CustomEvent(`luzmo-element-removed`,{bubbles:!0,composed:!0,detail:{element:t}}))}getElements(){return[...this._elements.values()]}clearElements(){this._elements.clear(),this.richInputElement&&(this.richInputElement.innerHTML=``)}handleBadgeDelete(e){let t=E(this._host.shadowRoot);if(!t||!t.collapsed)return!1;let n=e===`Backspace`?this._findBadgeBefore(t.startContainer,t.startOffset):e===`Delete`?this._findBadgeAfter(t.startContainer,t.startOffset):null;return n?.dataset.elementId?(this.removeElement(n.dataset.elementId),!0):!1}_findBadgeBefore(e,t){if(e.nodeType===Node.ELEMENT_NODE){let n=e.childNodes[t-1];if(n?.classList?.contains(`element-badge`))return n}else if(e.nodeType===Node.TEXT_NODE)if(t===0){let t=e.previousSibling;if(t?.classList?.contains(`element-badge`))return t}else{let n=(e.textContent??``).slice(0,t);if(/^[\u200B\uFEFF]*$/.test(n)){let t=e.previousSibling;if(t?.classList?.contains(`element-badge`))return t}}return null}_findBadgeAfter(e,t){if(e.nodeType===Node.ELEMENT_NODE){let n=e.childNodes[t];if(n?.classList?.contains(`element-badge`))return n}else if(e.nodeType===Node.TEXT_NODE){let n=e.textContent??``;if(t===n.length){let t=e.nextSibling;if(t?.classList?.contains(`element-badge`))return t}else{let r=n.slice(t);if(/^[\u200B\uFEFF]*$/.test(r)){let t=e.nextSibling;if(t?.classList?.contains(`element-badge`))return t}}}return null}_segmentsToPlainText(e){return e.map(e=>e.type===`text`?e.value??``:e.value?.label??``).join(``)}_cannotEditRichContent(){return!this._host.allowElements||this._host.disabled||this._host.readonly||this._host.pending}_cleanupSemanticallyEmptyRichInput(e){let t=this.richInputElement;if(!t)return;let n=this._elements.size===0&&e.trim().length===0,r=this._dragCaret?.parentNode===t;!n||r||t.innerHTML===``||(t.innerHTML=``,this._host.value=``)}syncValue(){if(!this.richInputElement)return;let e=this._parseSegments(),t=this._segmentsToPlainText(e);this._host.value=t,this._cleanupSemanticallyEmptyRichInput(t),this._host.requestUpdate()}_parseSegments(){if(!this.richInputElement)return[];let e=[];for(let t of this.richInputElement.childNodes)if(t.nodeType===Node.TEXT_NODE){let n=(t.textContent??``).replaceAll(`​`,``);n&&e.push({type:`text`,value:n})}else if(t.nodeType===Node.ELEMENT_NODE){let n=t;if(n.classList.contains(`drag-caret`))continue;if(n.classList.contains(`element-badge`)){let t=n.dataset.elementId??``,r=this._elements.get(t);r&&e.push({type:`element`,value:{...r}})}else if(n.tagName===`BR`)e.push({type:`text`,value:`
22
- `});else{let t=n.textContent??``;t&&e.push({type:`text`,value:t})}}return e}_createBadgeNode(e){let t=document.createElement(`span`);if(t.className=`element-badge`,t.setAttribute(`contenteditable`,`false`),t.dataset.elementId=e.id,t.dataset.elementType=e.elementType,e.icon){let n=document.createElement(`luzmo-icon`);n.icon=e.icon,n.setAttribute(`size`,`xxs`),n.className=`element-badge-icon`,t.append(n)}let n=document.createElement(`span`);n.className=`element-badge-label`,n.textContent=e.label,t.append(n);let r=document.createElement(`button`);return r.type=`button`,r.setAttribute(`role`,`button`),r.tabIndex=-1,r.className=`element-badge-remove`,r.setAttribute(`contenteditable`,`false`),r.setAttribute(`aria-label`,`Remove ${e.label}`),r.textContent=`×`,r.addEventListener(`click`,t=>{t.preventDefault(),t.stopPropagation(),this.removeElement(e.id)}),t.append(r),t}_ensureSpaceAfter(e){let t=e.nextSibling;if(t&&t.nodeType===Node.TEXT_NODE&&t.textContent){let e=t.textContent;if(e.startsWith(`​`)&&e.length>1)return;if(e.startsWith(` `)){t.textContent=`​`+e;return}if(/^\u200B+$/.test(e)){t.textContent=e+` `;return}}e.parentNode?.insertBefore(document.createTextNode(`​ `),t??null)}_showDragCaret(e,t){if(!this.richInputElement){this._hideDragCaret();return}let n=T(this._host.shadowRoot,this.richInputElement,e,t,this._dragCaret);if(!n){this._hideDragCaret();return}let r=n.getBoundingClientRect(),i=this.richInputElement.getBoundingClientRect(),a=r.left-i.left+this.richInputElement.scrollLeft,o=r.top-i.top+this.richInputElement.scrollTop,s=r.height;if(s===0){let e=getComputedStyle(this.richInputElement);s=Number.parseFloat(e.lineHeight)||Number.parseFloat(e.fontSize)||16,o=t-i.top+this.richInputElement.scrollTop-s/2}this._dragCaret||(this._dragCaret=document.createElement(`div`),this._dragCaret.className=`drag-caret`);let c=this._dragCaret;c.style.position=`absolute`,c.style.top=`${o}px`,c.style.left=`${a}px`,c.style.height=`${s}px`,c.parentNode||(this.richInputElement.style.position=`relative`,this.richInputElement.append(c))}_hideDragCaret(){this._dragCaret?.remove()}_generateId(){return`el-${++this._idCounter}-${Date.now()}`}_positionCaretAtPoint(e,t){if(!this.richInputElement)return;let n=T(this._host.shadowRoot,this.richInputElement,e,t,this._dragCaret);if(n){let e=document.getSelection();e&&(e.removeAllRanges(),e.addRange(n))}}},M=class{constructor(e){this._triggers=[],this.activeTrigger=null,this.searchString=``,this.virtualElement=null,this.highlightedIndex=0,this.pointerMovedSinceKeyNav=!0,this.hoveredIndex=-1,this.filteredOptions=[],this.richInputElement=null,this.handleOverlayClosed=()=>{this.close()},this.handleOverlayKeydown=e=>{e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),this.close(),this.richInputElement?.focus())},this.handlePointerMove=()=>{this.pointerMovedSinceKeyNav=!0},this._handleTriggerSelect=e=>{if(!this.activeTrigger)return;let{elementType:t,label:n,data:r,icon:i}=e.detail;this.selectOption({label:n,value:n,data:r,icon:i,elementType:t})},this._handleDocumentPointerDown=e=>{let t=e.composedPath(),n=this._host.shadowRoot?.querySelector(`luzmo-overlay[part="trigger-menu-overlay"]`);n&&t.includes(n)||this.richInputElement&&t.includes(this.richInputElement)||(this.close(),this.richInputElement?.focus())},this._host=e,e.addController(this)}hostConnected(){this._host.addEventListener(`luzmo-trigger-select`,this._handleTriggerSelect)}hostDisconnected(){document.removeEventListener(`pointerdown`,this._handleDocumentPointerDown,!0),this._host.removeEventListener(`luzmo-trigger-select`,this._handleTriggerSelect)}get triggers(){return this._triggers}set triggers(e){this._triggers=e,this.activeTrigger&&this._updateFilteredOptions()}get activeConfig(){if(this.activeTrigger)return this._triggers.find(e=>e.key===this.activeTrigger)}get hasTriggers(){return this._triggers.length>0}getSlotName(e){return this._triggers.find(t=>t.key===e)?.slotName}get allSlotNames(){return this._triggers.map(e=>e.slotName).filter(e=>!!e)}handleInput(e){if(this.activeTrigger){let e=ae(this._host.shadowRoot,this.activeTrigger)??this._extractTriggerSearchFromContent(this.activeTrigger);e===null?this.close():(this.searchString=e,this._updateFilteredOptions(),this.highlightedIndex=this._findSelectableIndex(0,1),this._dispatchChange(!0),this._host.requestUpdate(),document.dispatchEvent(new Event(`luzmo-update-overlays`)))}else this._detectTrigger(e)}open(e){if(!this._triggers.find(t=>t.key===e))return;let t=ie(this._host.shadowRoot,this.richInputElement);if(!t)return;this.activeTrigger=e,this.searchString=``,this._updateFilteredOptions(),this.highlightedIndex=this._findSelectableIndex(0,1);let n=this.richInputElement?.getBoundingClientRect().top??t.y;this.virtualElement?this.virtualElement.updateBoundingClientRect(t.x,t.y,n):this.virtualElement=new y(t.x,t.y,n),this._dispatchChange(!0),this._host.requestUpdate(),requestAnimationFrame(()=>{document.addEventListener(`pointerdown`,this._handleDocumentPointerDown,!0)})}close(){if(this.activeTrigger===null)return;document.removeEventListener(`pointerdown`,this._handleDocumentPointerDown,!0);let e=this.activeTrigger;this.activeTrigger=null,this.searchString=``,this.filteredOptions=[],this.highlightedIndex=0,this.hoveredIndex=-1,this._host.dispatchEvent(new CustomEvent(`luzmo-trigger-change`,{bubbles:!0,composed:!0,detail:{trigger:e,open:!1,searchString:``}})),this._host.requestUpdate()}handleKeydown(e){return this.activeTrigger?e.key===`Escape`?(e.preventDefault(),this.close(),this.richInputElement?.focus(),!0):e.key===`Tab`?(this.close(),!1):e.key===`ArrowDown`?(e.preventDefault(),this._moveHighlight(1),!0):e.key===`ArrowUp`?(e.preventDefault(),this._moveHighlight(-1),!0):e.key===`Enter`&&!e.shiftKey?(e.preventDefault(),this._selectHighlighted(),!0):!1:!1}_detectTrigger(e){if(this._host.disabled||this._host.readonly||this._host.pending)return;let t=e?.data??``;t.length!==1||!this._isTriggerKey(t)||re(this._host.shadowRoot)&&this.open(t)}_extractTriggerSearchFromContent(e){let t=this.richInputElement?.textContent??``;if(!t)return null;let n=t.lastIndexOf(e);if(n===-1)return null;let r=t.slice(n+1);return r.includes(` `)||r.includes(`
23
- `)?null:r}_isTriggerKey(e){return this._triggers.some(t=>t.key===e)}_updateFilteredOptions(){let e=this.activeConfig;if(!e?.options){this.filteredOptions=[];return}if(e.lazy){this.filteredOptions=e.options;return}if(!this.searchString){this.filteredOptions=e.options;return}let t=this.searchString.toLowerCase(),n=[],r=null;for(let i of e.options){if(i.header){r=i;continue}(i.label.toLowerCase().includes(t)||(i.description?.toLowerCase().includes(t)??!1))&&(r&&=(n.push(r),null),n.push(i))}this.filteredOptions=n}_findSelectableIndex(e,t){let n=this.filteredOptions.length;if(n===0)return-1;let r=(e%n+n)%n;for(let e=0;e<n;e++){if(!this.filteredOptions[r].header)return r;r=((r+t)%n+n)%n}return-1}_moveHighlight(e){let t=this.filteredOptions.length;if(t===0)return;let n=(this.highlightedIndex+e+t)%t;n=this._findSelectableIndex(n,e),n!==-1&&(this.pointerMovedSinceKeyNav=!1,this.hoveredIndex=-1,this.highlightedIndex=n,this._host.requestUpdate(),requestAnimationFrame(()=>{this._host.shadowRoot?.querySelector(`.trigger-option.highlighted`)?.scrollIntoView({block:`nearest`})}))}_selectHighlighted(){let e=this.filteredOptions[this.highlightedIndex];if(!e){this.close();return}this.selectOption(e)}selectOption(e){if(!this.activeTrigger||!this.richInputElement)return;let t=this.activeTrigger,n=this.richInputElement,r=this._host.shadowRoot;oe(r,n,t,this.searchString);let i=e.elementType??t,a=this._host.insertElement(i,e.label,e.data??null,e.icon);k(n,a),this.close(),this._host.updateComplete.then(()=>{requestAnimationFrame(()=>{k(n,a)})})}_dispatchChange(e){this.activeTrigger&&this._host.dispatchEvent(new CustomEvent(`luzmo-trigger-change`,{bubbles:!0,composed:!0,detail:{trigger:this.activeTrigger,open:e,searchString:this.searchString}}))}},N=!1,P=0;function F(){N=!0}function I(){N=!1}function L(){document.addEventListener(`keydown`,F,!0),document.addEventListener(`mousedown`,I,!0),document.addEventListener(`pointerdown`,I,!0)}function R(){document.removeEventListener(`keydown`,F,!0),document.removeEventListener(`mousedown`,I,!0),document.removeEventListener(`pointerdown`,I,!0)}function z(){P===0&&typeof window<`u`&&L(),P++}function B(){P--,P<=0&&(P=0,R())}function V(){return N}function H(t,n,r){return e`
20
+ import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-DWANyjiY.js";import{c as r,g as i,l as a,u as o,v as s,y as c}from"./chunks/lucero-runtime-DMlHjBe_.js";import{N as l,O as u,P as d,S as f,T as p,c as m,h,k as g,r as ee,v as te,y as _}from"./chunks/luzmo-icons-vtQE0BSI.js";import"./chunks/icon-6P1RsbD1.js";import"./chunks/action-button-0d4u0dWv.js";import{v}from"./chunks/overlay-CgQMEmrM.js";import"./chunks/text-field-D5ncaa2n.js";import"./chunks/clear-button-B4r_oxfc.js";import"./chunks/button-Bgc3zdEa.js";import"./chunks/skeleton-loader-CymPdQl3.js";import{t as y}from"./chunks/voice-recorder--d34tYNu.js";var ne=class{constructor(e){this._attachments=[],this._idCounter=0,this._host=e,e.addController(this)}hostConnected(){}hostDisconnected(){this._revokeAllPreviewUrls()}get attachments(){return this._attachments}get hasAttachments(){return this._attachments.length>0}get imageAttachments(){return this._attachments.filter(e=>this._isImageFile(e.file))}get fileAttachments(){return this._attachments.filter(e=>!this._isImageFile(e.file))}addFiles(e){if(this._host.disabled||this._host.readonly||this._host.pending)return[];let t=[];for(let n of e){if(this._isImageFile(n)&&!this._host.allowImages||!this._isImageFile(n)&&!this._host.allowFiles||!this._isFileTypeAccepted(n))continue;let e=this._generateId(),r={file:n,id:e};this._isImageFile(n)&&(r.previewUrl=URL.createObjectURL(n)),this._attachments=[...this._attachments,r],t.push(e)}return t.length>0&&(this._dispatchChange(),this._host.requestUpdate()),t}removeAttachment(e){let t=this._attachments.find(t=>t.id===e);t&&(t.previewUrl&&URL.revokeObjectURL(t.previewUrl),this._attachments=this._attachments.filter(t=>t.id!==e),this._dispatchChange(),this._host.requestUpdate())}setAttachmentLoading(e,t){let n=this._attachments.findIndex(t=>t.id===e);if(n===-1)return;let r=this._attachments[n];!!r.loading!==t&&(this._attachments=[...this._attachments.slice(0,n),{...r,loading:t},...this._attachments.slice(n+1)],this._dispatchChange(),this._host.requestUpdate())}clearAttachments(){this._revokeAllPreviewUrls(),this._attachments=[],this._dispatchChange(),this._host.requestUpdate()}getAttachments(){return[...this._attachments]}handlePastedImages(e){if(!this._host.allowImages||this._host.disabled||this._host.readonly||this._host.pending||!e)return!1;let t=[];for(let n of e.items)if(n.type.startsWith(`image/`)){let e=n.getAsFile();e&&t.push(e)}return t.length>0&&(this.addFiles(t),!0)}getAcceptAttribute(){if(this._host.acceptedFileTypes.length>0)return this._host.acceptedFileTypes.join(`,`);let e=[];return this._host.allowImages&&e.push(`image/*`),this._host.allowFiles&&e.push(`*/*`),e.join(`,`)}isImageFile(e){return this._isImageFile(e)}_isImageFile(e){return e.type.startsWith(`image/`)}_isFileTypeAccepted(e){if(this._host.acceptedFileTypes.length===0)return!0;let t=e.name.toLowerCase(),n=e.type.toLowerCase();for(let e of this._host.acceptedFileTypes){let r=e.toLowerCase();if(r.endsWith(`/*`)){let e=r.slice(0,-2);if(n.startsWith(e+`/`))return!0}else if(n===r)return!0;else if(r.startsWith(`.`)&&t.endsWith(r))return!0}return!1}_generateId(){return`attachment-${++this._idCounter}-${Date.now()}`}_revokeAllPreviewUrls(){for(let e of this._attachments)e.previewUrl&&URL.revokeObjectURL(e.previewUrl)}_dispatchChange(){this._host.dispatchEvent(new CustomEvent(`luzmo-attachments-change`,{bubbles:!0,composed:!0,detail:{attachments:this._attachments}}))}},b=class{constructor(e){this._voiceRecorder=null,this.isRecording=!1,this.duration=0,this.audioLevel=0,this.shouldFocusFinishButton=!1,this._host=e,e.addController(this)}hostConnected(){}hostDisconnected(){this._destroy()}async start(e){y.isSupported()?this.isRecording?this.stop():(this.shouldFocusFinishButton=e,this._init(),this._voiceRecorder&&(await this._voiceRecorder.startRecording()&&(this.isRecording=!0,this.duration=0,this.audioLevel=0,this._host.requestUpdate()),this._host.dispatchEvent(new CustomEvent(`luzmo-record`,{bubbles:!0,composed:!0,detail:{isRecording:this.isRecording}})))):this._host.dispatchEvent(new CustomEvent(`luzmo-record-error`,{bubbles:!0,composed:!0,detail:{error:`Voice recording is not supported in this browser`}}))}stop(){this._voiceRecorder?.stopRecording()}cancel(){this._voiceRecorder?.cancelRecording(),this.isRecording=!1,this.duration=0,this.audioLevel=0,this._host.requestUpdate(),this._host.dispatchEvent(new CustomEvent(`luzmo-record-cancel`,{bubbles:!0,composed:!0}))}formatDuration(){return y.formatDuration(this.duration)}static isSupported(){return y.isSupported()}_init(){this._voiceRecorder||(this._voiceRecorder=new y({maxDuration:3e5}),this._voiceRecorder.onStart(()=>{this.isRecording=!0,this._host.requestUpdate()}).onStop(e=>{this.isRecording=!1,this.duration=0,this.audioLevel=0,this._host.requestUpdate(),this._host.dispatchEvent(new CustomEvent(`luzmo-recording-complete`,{bubbles:!0,composed:!0,detail:{audioBlob:e.audioBlob,duration:e.duration,mimeType:e.mimeType}}))}).onError(e=>{this.isRecording=!1,this.duration=0,this.audioLevel=0,this._host.requestUpdate(),this._host.dispatchEvent(new CustomEvent(`luzmo-record-error`,{bubbles:!0,composed:!0,detail:{error:e}}))}).onAudioLevel(e=>{this.audioLevel=e,this._host.requestUpdate()}).onDurationUpdate(e=>{this.duration=e,this._host.requestUpdate()}))}_destroy(){this._voiceRecorder&&=(this._voiceRecorder.destroy(),null),this.isRecording=!1,this.duration=0,this.audioLevel=0}};function x(e,t){let n=document.createRange();return n.setStart(e,t),n.collapse(!0),n}function S(e,t,n){let r=e.getBoundingClientRect(),i=t-r.left,a=n-r.top;return i*i+a*a}function C(e,t,n,r){let i=0,a=t;for(;a-i>1;){let t=i+a>>>1,r=document.createRange();r.setStart(e,t),r.collapse(!0),r.getBoundingClientRect().left<n?i=t:a=t}let o=x(e,i),s=S(o,n,r),c=x(e,a),l=S(c,n,r);return l<s&&(o=c,s=l),{range:o,distSq:s}}function w(e,t,n,r){let i=null,a=1/0;for(let[o,s]of e.childNodes.entries())if(s!==r){if(s.nodeType===Node.TEXT_NODE){let e=(s.textContent??``).length;if(e===0)continue;let r=C(s,e,t,n);r.distSq<a&&(a=r.distSq,i=r.range)}else if(s.nodeType===Node.ELEMENT_NODE){let r=s.getBoundingClientRect();if(r.width===0&&r.height===0)continue;let c=r.left+r.width/2,l=x(e,o),u=x(e,o+1),d=t<c?l:u,f=n-(r.top+r.height/2),p=t<c?t-r.left:t-r.right,m=p*p+f*f;m<a&&(a=m,i=d)}}if(!i){let t=document.createRange();return t.selectNodeContents(e),t.collapse(!1),t}return i}function T(e,t,n,r,i){if(Number.isNaN(n)||Number.isNaN(r))return null;let a=null,o=e;if(o?.caretPositionFromPoint){let e=o.caretPositionFromPoint(n,r);e&&(a=x(e.offsetNode,e.offset))}else o?.caretRangeFromPoint&&(a=o.caretRangeFromPoint(n,r));if(!a){if(`caretPositionFromPoint`in document){let e=document.caretPositionFromPoint(n,r);e&&(a=x(e.offsetNode,e.offset))}else`caretRangeFromPoint`in document&&(a=document.caretRangeFromPoint(n,r))}return a&&t.contains(a.startContainer)||(a=w(t,n,r,i)),a}function E(e){if(e){let t=e.getSelection?.();if(t&&t.rangeCount>0)return t.getRangeAt(0)}let t=document.getSelection();if(!t||t.rangeCount===0)return null;let n=t.getRangeAt(0);if(!e||e.contains(n.startContainer))return n;let r=t;if(e&&r.getComposedRanges)try{let t=r.getComposedRanges(e);if(t.length>0){let e=t[0],n=document.createRange();return n.setStart(e.startContainer,e.startOffset),n.setEnd(e.endContainer,e.endOffset),n}}catch{}return null}function D(e,t){let n=document.getSelection();if(n)try{n.setBaseAndExtent(e,t,e,t)}catch{let r=document.createRange();r.setStart(e,t),r.collapse(!0),n.removeAllRanges(),n.addRange(r)}}function O(e){return e===` `||e===`
21
+ `||e===`\xA0`}function re(e){let t=E(e);if(!t||!t.collapsed)return!1;let n=t.startContainer,r=t.startOffset;if(n.nodeType===Node.TEXT_NODE){if(r>=2)return O(n.textContent?.charAt(r-2)??``);let e=n.previousSibling;if(!e||e.nodeType===Node.ELEMENT_NODE&&e.classList?.contains(`element-badge`))return!0;let t=e.textContent??``;return t.length===0||O(t.at(-1)??``)}if(n.nodeType===Node.ELEMENT_NODE){if(r===0)return!0;let e=n.childNodes[r-1];if(!e||e.nodeType===Node.ELEMENT_NODE&&e.classList?.contains(`element-badge`))return!0;if(e.nodeType===Node.TEXT_NODE){let t=e.textContent??``;return t.length===0||O(t.at(-1)??``)}}return!1}function ie(e,t){let n=E(e);if(!n){if(!t)return null;let e=t.getBoundingClientRect();return{x:e.left,y:e.bottom}}let r=n.cloneRange();r.collapse(!0);let i=r.startContainer,a=r.startOffset;if(i.nodeType===Node.TEXT_NODE&&a>0){let e=document.createRange();e.setStart(i,a-1),e.setEnd(i,a);let t=e.getBoundingClientRect();if(t.width>0||t.height>0)return{x:t.left,y:t.bottom}}let o=r.getBoundingClientRect();if(o.width===0&&o.height===0&&o.x===0){if(t){let e=t.getBoundingClientRect();return{x:e.left,y:e.bottom}}return null}return{x:o.left,y:o.bottom}}function ae(e,t){let n=E(e);if(!n||!n.collapsed)return null;let r=n.startContainer,i=n.startOffset;if(r.nodeType!==Node.TEXT_NODE)return null;let a=(r.textContent??``).slice(0,Math.max(0,i)),o=a.lastIndexOf(t);return o===-1?null:a.slice(Math.max(0,o+1))}function k(e,t){if(e.focus(),!t)return;let n=e.querySelector(`[data-element-id="${t}"]`);if(!n)return;let r=n.nextSibling;if(r&&r.nodeType===Node.TEXT_NODE){let e=r.textContent??``,t=e.indexOf(` `);D(r,t===-1?e.length:t+1);return}let i=document.getSelection();if(!i)return;let a=document.createRange();a.setStartAfter(n),a.collapse(!0),i.removeAllRanges(),i.addRange(a)}function oe(e,t,n,r){let i=E(e);if(i){let e=i.startContainer,r=i.startOffset;if(e.nodeType===Node.TEXT_NODE&&t.contains(e)){let t=e.textContent??``,i=t.slice(0,Math.max(0,r)).lastIndexOf(n);if(i!==-1){e.textContent=t.slice(0,Math.max(0,i))+t.slice(Math.max(0,r)),D(e,i);return}}}let a=n+(r??``),o=document.createTreeWalker(t,NodeFilter.SHOW_TEXT),s;for(;s=o.nextNode();){let e=s.textContent??``,n=e.lastIndexOf(a);if(n!==-1){s.textContent=e.slice(0,Math.max(0,n))+e.slice(Math.max(0,n+a.length)),t.focus(),D(s,n);return}}}var A=`application/x-luzmo-element`,j=class{constructor(e){this._elements=/* @__PURE__ */ new Map,this._idCounter=0,this._dragCaret=null,this.isDragOver=!1,this.richInputElement=null,this.handleRichInput=()=>{this.syncValue(),this._host.dispatchEvent(new Event(`input`,{bubbles:!0,composed:!0}))},this.handleRichPaste=e=>{if(e.preventDefault(),this._cannotEditRichContent())return;if(this._host.allowImages&&e.clipboardData&&this._host.handlePastedImages(e.clipboardData)){e.stopPropagation();return}let t=e.clipboardData?.getData(`text/plain`)??``;if(t){let e=E(this._host.shadowRoot);if(e){e.deleteContents(),e.insertNode(document.createTextNode(t)),e.collapse(!1);let n=document.getSelection();n&&(n.removeAllRanges(),n.addRange(e))}this.syncValue(),this._host.dispatchEvent(new Event(`input`,{bubbles:!0,composed:!0}))}},this.handleRichDragOver=e=>{this._cannotEditRichContent()||e.dataTransfer?.types.includes(`application/x-luzmo-element`)&&(e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect=`copy`),this.isDragOver=!0,this._host.requestUpdate(),this._positionCaretAtPoint(e.clientX,e.clientY),this._showDragCaret(e.clientX,e.clientY))},this.handleRichDragLeave=e=>{let t=e.relatedTarget;t&&this.richInputElement?.contains(t)||(this.isDragOver=!1,this._hideDragCaret(),this._host.requestUpdate())},this.handleRichDrop=e=>{if(e.preventDefault(),this.isDragOver=!1,this._hideDragCaret(),this._cannotEditRichContent()){this._host.requestUpdate();return}let t=e.dataTransfer?.getData(A);if(!t)this._host.requestUpdate();else try{let n=JSON.parse(t);if(n.elementType&&n.label){this.richInputElement?.focus();let t=this.richInputElement?T(this._host.shadowRoot,this.richInputElement,e.clientX,e.clientY,this._dragCaret):null;this._insertElementAtRange(n.elementType,n.label,n.data??null,void 0,t)}this._host.requestUpdate()}catch{this._host.requestUpdate()}},this._host=e,e.addController(this)}hostConnected(){}hostDisconnected(){}get elements(){return this._elements}get elementCount(){return this._elements.size}getSegments(){return!this._host.allowElements||!this.richInputElement?[{type:`text`,value:this._host.value}]:this._parseSegments()}setSegments(e){this._host.allowElements?(this._elements.clear(),this._host.updateComplete.then(()=>{if(this.richInputElement){this.richInputElement.innerHTML=``;for(let t of e)if(t.type===`text`&&t.value)this.richInputElement.append(document.createTextNode(t.value));else if(t.type===`element`&&t.value){let e={...t.value};e.id||=this._generateId(),this._elements.set(e.id,e),this.richInputElement.append(this._createBadgeNode(e))}this.syncValue()}})):this._host.value=this._segmentsToPlainText(e)}insertElement(e,t,n,r){return this._insertElementAtRange(e,t,n,r,null)}_insertElementAtRange(e,t,n,r,i){if(this._cannotEditRichContent()||this._host.acceptedElementTypes.length>0&&!this._host.acceptedElementTypes.includes(e)||!this.richInputElement)return``;let a=this._generateId(),o={id:a,elementType:e,label:t,data:n,icon:r};this._elements.set(a,o);let s=this._createBadgeNode(o),c=this.richInputElement,l=!1,u=i===null?this._getSelectionRange():i;if(u&&c.contains(u.commonAncestorContainer)){u.deleteContents(),u.insertNode(s);let e=s.previousSibling;if(e?.nodeType===Node.TEXT_NODE){let t=e.previousSibling;t?.classList?.contains(`element-badge`)&&this._ensureSpaceAfter(t)}this._ensureSpaceAfter(s),k(c,a),l=!0}return l||(c.append(s),this._ensureSpaceAfter(s),k(c,a)),this.syncValue(),this._host.dispatchEvent(new CustomEvent(`luzmo-element-inserted`,{bubbles:!0,composed:!0,detail:{element:o}})),a}_getSelectionRange(){return E(this._host.shadowRoot)}removeElement(e){let t=this._elements.get(e);if(!t)return;this._elements.delete(e);let n=this.richInputElement?.querySelector(`[data-element-id="${e}"]`);if(n){let e=n.nextSibling;if(n.remove(),e&&e.nodeType===Node.TEXT_NODE){let t=(e.textContent??``).replaceAll(`​`,``);t?e.textContent=t:e.remove()}this.syncValue()}this._host.dispatchEvent(new CustomEvent(`luzmo-element-removed`,{bubbles:!0,composed:!0,detail:{element:t}}))}getElements(){return[...this._elements.values()]}clearElements(){this._elements.clear(),this.richInputElement&&(this.richInputElement.innerHTML=``)}handleBadgeDelete(e){let t=E(this._host.shadowRoot);if(!t||!t.collapsed)return!1;let n=e===`Backspace`?this._findBadgeBefore(t.startContainer,t.startOffset):e===`Delete`?this._findBadgeAfter(t.startContainer,t.startOffset):null;return n?.dataset.elementId?(this.removeElement(n.dataset.elementId),!0):!1}_findBadgeBefore(e,t){if(e.nodeType===Node.ELEMENT_NODE){let n=e.childNodes[t-1];if(n?.classList?.contains(`element-badge`))return n}else if(e.nodeType===Node.TEXT_NODE){if(t===0){let t=e.previousSibling;if(t?.classList?.contains(`element-badge`))return t}else{let n=(e.textContent??``).slice(0,t);if(/^[\u200B\uFEFF]*$/.test(n)){let t=e.previousSibling;if(t?.classList?.contains(`element-badge`))return t}}}return null}_findBadgeAfter(e,t){if(e.nodeType===Node.ELEMENT_NODE){let n=e.childNodes[t];if(n?.classList?.contains(`element-badge`))return n}else if(e.nodeType===Node.TEXT_NODE){let n=e.textContent??``;if(t===n.length){let t=e.nextSibling;if(t?.classList?.contains(`element-badge`))return t}else{let r=n.slice(t);if(/^[\u200B\uFEFF]*$/.test(r)){let t=e.nextSibling;if(t?.classList?.contains(`element-badge`))return t}}}return null}_segmentsToPlainText(e){return e.map(e=>e.type===`text`?e.value??``:e.value?.label??``).join(``)}_cannotEditRichContent(){return!this._host.allowElements||this._host.disabled||this._host.readonly||this._host.pending}_cleanupSemanticallyEmptyRichInput(e){let t=this.richInputElement;if(!t)return;let n=this._elements.size===0&&e.trim().length===0,r=this._dragCaret?.parentNode===t;n&&!r&&t.innerHTML!==``&&(t.innerHTML=``,this._host.value=``)}syncValue(){if(!this.richInputElement)return;let e=this._parseSegments(),t=this._segmentsToPlainText(e);this._host.value=t,this._cleanupSemanticallyEmptyRichInput(t),this._host.requestUpdate()}_parseSegments(){if(!this.richInputElement)return[];let e=[];for(let t of this.richInputElement.childNodes)if(t.nodeType===Node.TEXT_NODE){let n=(t.textContent??``).replaceAll(`​`,``);n&&e.push({type:`text`,value:n})}else if(t.nodeType===Node.ELEMENT_NODE){let n=t;if(n.classList.contains(`drag-caret`))continue;if(n.classList.contains(`element-badge`)){let t=n.dataset.elementId??``,r=this._elements.get(t);r&&e.push({type:`element`,value:{...r}})}else if(n.tagName===`BR`)e.push({type:`text`,value:`
22
+ `});else{let t=n.textContent??``;t&&e.push({type:`text`,value:t})}}return e}_createBadgeNode(e){let t=document.createElement(`span`);if(t.className=`element-badge`,t.setAttribute(`contenteditable`,`false`),t.dataset.elementId=e.id,t.dataset.elementType=e.elementType,e.icon){let n=document.createElement(`luzmo-icon`);n.icon=e.icon,n.setAttribute(`size`,`xxs`),n.className=`element-badge-icon`,t.append(n)}let n=document.createElement(`span`);n.className=`element-badge-label`,n.textContent=e.label,t.append(n);let r=document.createElement(`button`);return r.type=`button`,r.setAttribute(`role`,`button`),r.tabIndex=-1,r.className=`element-badge-remove`,r.setAttribute(`contenteditable`,`false`),r.setAttribute(`aria-label`,`Remove ${e.label}`),r.textContent=`×`,r.addEventListener(`click`,t=>{t.preventDefault(),t.stopPropagation(),this.removeElement(e.id)}),t.append(r),t}_ensureSpaceAfter(e){let t=e.nextSibling;if(t&&t.nodeType===Node.TEXT_NODE&&t.textContent){let e=t.textContent;if(e.startsWith(`​`)&&e.length>1)return;if(e.startsWith(` `)){t.textContent=`​`+e;return}if(/^\u200B+$/.test(e)){t.textContent=e+` `;return}}e.parentNode?.insertBefore(document.createTextNode(`​ `),t??null)}_showDragCaret(e,t){if(!this.richInputElement){this._hideDragCaret();return}let n=T(this._host.shadowRoot,this.richInputElement,e,t,this._dragCaret);if(!n){this._hideDragCaret();return}let r=n.getBoundingClientRect(),i=this.richInputElement.getBoundingClientRect(),a=r.left-i.left+this.richInputElement.scrollLeft,o=r.top-i.top+this.richInputElement.scrollTop,s=r.height;if(s===0){let e=getComputedStyle(this.richInputElement);s=Number.parseFloat(e.lineHeight)||Number.parseFloat(e.fontSize)||16,o=t-i.top+this.richInputElement.scrollTop-s/2}this._dragCaret||(this._dragCaret=document.createElement(`div`),this._dragCaret.className=`drag-caret`);let c=this._dragCaret;c.style.position=`absolute`,c.style.top=`${o}px`,c.style.left=`${a}px`,c.style.height=`${s}px`,c.parentNode||(this.richInputElement.style.position=`relative`,this.richInputElement.append(c))}_hideDragCaret(){this._dragCaret?.remove()}_generateId(){return`el-${++this._idCounter}-${Date.now()}`}_positionCaretAtPoint(e,t){if(!this.richInputElement)return;let n=T(this._host.shadowRoot,this.richInputElement,e,t,this._dragCaret);if(n){let e=document.getSelection();e&&(e.removeAllRanges(),e.addRange(n))}}},M=class{constructor(e){this._triggers=[],this.activeTrigger=null,this.searchString=``,this.virtualElement=null,this.highlightedIndex=0,this.pointerMovedSinceKeyNav=!0,this.hoveredIndex=-1,this.filteredOptions=[],this.richInputElement=null,this.handleOverlayClosed=()=>{this.close()},this.handleOverlayKeydown=e=>{e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),this.close(),this.richInputElement?.focus())},this.handlePointerMove=()=>{this.pointerMovedSinceKeyNav=!0},this._handleTriggerSelect=e=>{if(!this.activeTrigger)return;let{elementType:t,label:n,data:r,icon:i}=e.detail;this.selectOption({label:n,value:n,data:r,icon:i,elementType:t})},this._handleDocumentPointerDown=e=>{let t=e.composedPath(),n=this._host.shadowRoot?.querySelector(`luzmo-overlay[part="trigger-menu-overlay"]`);n&&t.includes(n)||this.richInputElement&&t.includes(this.richInputElement)||(this.close(),this.richInputElement?.focus())},this._host=e,e.addController(this)}hostConnected(){this._host.addEventListener(`luzmo-trigger-select`,this._handleTriggerSelect)}hostDisconnected(){document.removeEventListener(`pointerdown`,this._handleDocumentPointerDown,!0),this._host.removeEventListener(`luzmo-trigger-select`,this._handleTriggerSelect)}get triggers(){return this._triggers}set triggers(e){this._triggers=e,this.activeTrigger&&this._updateFilteredOptions()}get activeConfig(){if(this.activeTrigger)return this._triggers.find(e=>e.key===this.activeTrigger)}get hasTriggers(){return this._triggers.length>0}getSlotName(e){return this._triggers.find(t=>t.key===e)?.slotName}get allSlotNames(){return this._triggers.map(e=>e.slotName).filter(e=>!!e)}handleInput(e){if(this.activeTrigger){let e=ae(this._host.shadowRoot,this.activeTrigger)??this._extractTriggerSearchFromContent(this.activeTrigger);e===null?this.close():(this.searchString=e,this._updateFilteredOptions(),this.highlightedIndex=this._findSelectableIndex(0,1),this._dispatchChange(!0),this._host.requestUpdate(),document.dispatchEvent(new Event(`luzmo-update-overlays`)))}else this._detectTrigger(e)}open(e){if(!this._triggers.find(t=>t.key===e))return;let t=ie(this._host.shadowRoot,this.richInputElement);if(!t)return;this.activeTrigger=e,this.searchString=``,this._updateFilteredOptions(),this.highlightedIndex=this._findSelectableIndex(0,1);let n=this.richInputElement?.getBoundingClientRect().top??t.y;this.virtualElement?this.virtualElement.updateBoundingClientRect(t.x,t.y,n):this.virtualElement=new v(t.x,t.y,n),this._dispatchChange(!0),this._host.requestUpdate(),requestAnimationFrame(()=>{document.addEventListener(`pointerdown`,this._handleDocumentPointerDown,!0)})}close(){if(this.activeTrigger===null)return;document.removeEventListener(`pointerdown`,this._handleDocumentPointerDown,!0);let e=this.activeTrigger;this.activeTrigger=null,this.searchString=``,this.filteredOptions=[],this.highlightedIndex=0,this.hoveredIndex=-1,this._host.dispatchEvent(new CustomEvent(`luzmo-trigger-change`,{bubbles:!0,composed:!0,detail:{trigger:e,open:!1,searchString:``}})),this._host.requestUpdate()}handleKeydown(e){return this.activeTrigger?e.key===`Escape`?(e.preventDefault(),this.close(),this.richInputElement?.focus(),!0):e.key===`Tab`?(this.close(),!1):e.key===`ArrowDown`?(e.preventDefault(),this._moveHighlight(1),!0):e.key===`ArrowUp`?(e.preventDefault(),this._moveHighlight(-1),!0):e.key===`Enter`&&!e.shiftKey&&(e.preventDefault(),this._selectHighlighted(),!0):!1}_detectTrigger(e){if(this._host.disabled||this._host.readonly||this._host.pending)return;let t=e?.data??``;t.length===1&&this._isTriggerKey(t)&&re(this._host.shadowRoot)&&this.open(t)}_extractTriggerSearchFromContent(e){let t=this.richInputElement?.textContent??``;if(!t)return null;let n=t.lastIndexOf(e);if(n===-1)return null;let r=t.slice(n+1);return r.includes(` `)||r.includes(`
23
+ `)?null:r}_isTriggerKey(e){return this._triggers.some(t=>t.key===e)}_updateFilteredOptions(){let e=this.activeConfig;if(!e?.options){this.filteredOptions=[];return}if(e.lazy||!this.searchString){this.filteredOptions=e.options;return}let t=this.searchString.toLowerCase(),n=[],r=null;for(let i of e.options)i.header?r=i:(i.label.toLowerCase().includes(t)||(i.description?.toLowerCase().includes(t)??!1))&&(r&&=(n.push(r),null),n.push(i));this.filteredOptions=n}_findSelectableIndex(e,t){let n=this.filteredOptions.length;if(n===0)return-1;let r=(e%n+n)%n;for(let e=0;e<n;e++){if(!this.filteredOptions[r].header)return r;r=((r+t)%n+n)%n}return-1}_moveHighlight(e){let t=this.filteredOptions.length;if(t===0)return;let n=(this.highlightedIndex+e+t)%t;n=this._findSelectableIndex(n,e),n!==-1&&(this.pointerMovedSinceKeyNav=!1,this.hoveredIndex=-1,this.highlightedIndex=n,this._host.requestUpdate(),requestAnimationFrame(()=>{this._host.shadowRoot?.querySelector(`.trigger-option.highlighted`)?.scrollIntoView({block:`nearest`})}))}_selectHighlighted(){let e=this.filteredOptions[this.highlightedIndex];e?this.selectOption(e):this.close()}selectOption(e){if(!this.activeTrigger||!this.richInputElement)return;let t=this.activeTrigger,n=this.richInputElement,r=this._host.shadowRoot;oe(r,n,t,this.searchString);let i=e.elementType??t,a=this._host.insertElement(i,e.label,e.data??null,e.icon);k(n,a),this.close(),this._host.updateComplete.then(()=>{requestAnimationFrame(()=>{k(n,a)})})}_dispatchChange(e){this.activeTrigger&&this._host.dispatchEvent(new CustomEvent(`luzmo-trigger-change`,{bubbles:!0,composed:!0,detail:{trigger:this.activeTrigger,open:e,searchString:this.searchString}}))}},N=!1,P=0;function F(){N=!0}function I(){N=!1}function L(){document.addEventListener(`keydown`,F,!0),document.addEventListener(`mousedown`,I,!0),document.addEventListener(`pointerdown`,I,!0)}function R(){document.removeEventListener(`keydown`,F,!0),document.removeEventListener(`mousedown`,I,!0),document.removeEventListener(`pointerdown`,I,!0)}function z(){P===0&&typeof window<`u`&&L(),P++}function B(){P--,P<=0&&(P=0,R())}function V(){return N}function H(t,n,r){return e`
24
24
  <div class="top-actions ${n?``:`empty`}" part="top-actions">
25
25
  <slot name="top-actions" @slotchange=${r}></slot>
26
26
  </div>
@@ -56,7 +56,7 @@ import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-BN_lRQbJ.js";i
56
56
  @click=${a}
57
57
  aria-label="Cancel recording"
58
58
  >
59
- <luzmo-icon slot="icon" .icon=${ee}></luzmo-icon>
59
+ <luzmo-icon slot="icon" .icon=${te}></luzmo-icon>
60
60
  </luzmo-button>
61
61
  ${G(t)}
62
62
  <span class="recording-duration" part="recording-duration">
@@ -87,7 +87,7 @@ import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-BN_lRQbJ.js";i
87
87
  @click=${o}
88
88
  aria-label="Record"
89
89
  >
90
- <luzmo-icon slot="icon" .icon=${_}></luzmo-icon>
90
+ <luzmo-icon slot="icon" .icon=${ee}></luzmo-icon>
91
91
  </luzmo-button>
92
92
  `}function q(t){let n=t.handleSubmitButtonSlotChange,r=t.recordingController.isRecording,i=()=>{t.submit()},a=()=>{t.handleStopClick()};if(r||t.hasSubmitButton||t.hideSubmit&&!t.hasSubmitButton)return e`<slot name="submit-button" @slotchange=${n}></slot>`;let o=!!t.value.trim()||t.richInputController.elementCount>0;return t.pending&&t.stoppable?e`
93
93
  <slot name="submit-button" @slotchange=${n}></slot>
@@ -121,24 +121,24 @@ import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-BN_lRQbJ.js";i
121
121
  >
122
122
  <luzmo-icon slot="icon" .icon=${d}></luzmo-icon>
123
123
  </luzmo-button>
124
- `}function se(t,n){if(!n)return t;let r=t.toLowerCase().indexOf(n.toLowerCase());return r===-1?t:e`${t.slice(0,r)}<mark class="trigger-option-highlight">${t.slice(r,r+n.length)}</mark>${t.slice(r+n.length)}`}function ce(n,r){return e`
124
+ `}function se(t,n){if(!n)return t;let r=t.toLowerCase().indexOf(n.toLowerCase());if(r===-1)return t;let i=t.slice(0,r),a=t.slice(r,r+n.length),o=t.slice(r+n.length);return e`${i}<mark class="trigger-option-highlight">${a}</mark>${o}`}function ce(n,r){let i=r?.iconTemplate?e`<span class="trigger-option-header-icon">${r.iconTemplate(n)}</span>`:n.icon?e`<luzmo-icon
125
+ class="trigger-option-header-icon"
126
+ .icon=${n.icon}
127
+ size="s"
128
+ ></luzmo-icon>`:t;return e`
125
129
  <div
126
130
  class="trigger-option-header"
127
131
  part="trigger-option-header"
128
132
  role="presentation"
129
133
  >
130
- ${r?.iconTemplate?e`<span class="trigger-option-header-icon">${r.iconTemplate(n)}</span>`:n.icon?e`<luzmo-icon
131
- class="trigger-option-header-icon"
132
- .icon=${n.icon}
133
- size="s"
134
- ></luzmo-icon>`:t}
134
+ ${i}
135
135
  <span class="trigger-option-header-label">${n.label}</span>
136
136
  </div>
137
- `}function le(n,r,i,a,o){let s=()=>{n.selectTriggerOption(r)},c=()=>{n.triggerMenuController.pointerMovedSinceKeyNav&&(n.triggerMenuController.hoveredIndex=i,n.highlightTriggerOption(i))},u=()=>{n.triggerMenuController.hoveredIndex===i&&(n.triggerMenuController.hoveredIndex=-1,n.requestUpdate())},d=i===a,f=i===n.triggerMenuController.hoveredIndex,p=n.triggerMenuController.searchString,m=e`${o?.iconTemplate?e`<span class="trigger-option-icon">${o.iconTemplate(r)}</span>`:r.icon?e`<luzmo-icon
137
+ `}function le(n,r,i,a,o){let s=()=>{n.selectTriggerOption(r)},c=()=>{n.triggerMenuController.pointerMovedSinceKeyNav&&(n.triggerMenuController.hoveredIndex=i,n.highlightTriggerOption(i))},u=()=>{n.triggerMenuController.hoveredIndex===i&&(n.triggerMenuController.hoveredIndex=-1,n.requestUpdate())},d=i===a,f=i===n.triggerMenuController.hoveredIndex,p=n.triggerMenuController.searchString,m=o?.iconTemplate?e`<span class="trigger-option-icon">${o.iconTemplate(r)}</span>`:r.icon?e`<luzmo-icon
138
138
  class="trigger-option-icon"
139
139
  .icon=${r.icon}
140
140
  size="s"
141
- ></luzmo-icon>`:t}
141
+ ></luzmo-icon>`:t,h=e`${m}
142
142
  <div class="trigger-option-content">
143
143
  <span class="trigger-option-label"
144
144
  >${o?.highlightSearch&&p?se(r.label,p):r.label}</span
@@ -156,7 +156,7 @@ import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-BN_lRQbJ.js";i
156
156
  @pointerenter=${c}
157
157
  @pointerleave=${u}
158
158
  >
159
- ${m}
159
+ ${h}
160
160
  ${d?e`<luzmo-icon
161
161
  class="trigger-option-enter-icon"
162
162
  .icon=${l}
@@ -226,7 +226,7 @@ import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-BN_lRQbJ.js";i
226
226
  @focusout=${t.handleInputFocusOut}
227
227
  hide-validation-icons
228
228
  ></luzmo-text-field>
229
- `}var Y={pdf:v,csv:f,xls:p,xlsx:p,mp4:u,mov:u,webm:u,avi:u,mkv:u},me=new Set([`__proto__`,`constructor`,`prototype`]);function X(e){return e.trim().toLowerCase().replace(/^\./,``)}function he(e){let t=e.lastIndexOf(`.`);if(!(t<=0||t===e.length-1))return X(e.slice(t+1))}function ge(e){if(!e||Object.keys(e).length===0)return Y;let t={...Y};for(let[n,r]of Object.entries(e)){let e=X(n);!e||me.has(e)||(t[e]=r)}return t}function _e(e,t){let n=he(e.name);return n?t[n]??g:g}function ve(n,r){return e`
229
+ `}var Y={pdf:_,csv:f,xls:p,xlsx:p,mp4:u,mov:u,webm:u,avi:u,mkv:u},me=/* @__PURE__ */ new Set([`__proto__`,`constructor`,`prototype`]);function X(e){return e.trim().toLowerCase().replace(/^\./,``)}function he(e){let t=e.lastIndexOf(`.`);if(!(t<=0||t===e.length-1))return X(e.slice(t+1))}function ge(e){if(!e||Object.keys(e).length===0)return Y;let t={...Y};for(let[n,r]of Object.entries(e)){let e=X(n);e&&!me.has(e)&&(t[e]=r)}return t}function _e(e,t){let n=he(e.name);return n?t[n]??g:g}function ve(n,r){return e`
230
230
  <div
231
231
  class="image-attachment"
232
232
  part="image-attachment"
@@ -293,7 +293,7 @@ import"./tokens.js";import{c as e,i as t,y as n}from"./chunks/lit-BN_lRQbJ.js";i
293
293
  aria-hidden="true"
294
294
  tabindex="-1"
295
295
  />
296
- `}var Z=`luzmo-button, luzmo-action-button, luzmo-switch, luzmo-picker, luzmo-picker-button, luzmo-select, luzmo-text-field, luzmo-number-field`;function Q(e){let t=[];return e.matches(Z)&&t.push(e),t.push(...e.querySelectorAll(Z)),t}function Se(e,t,n){if(!e)return;let r=e.querySelector(`slot[name="submit-button"]`);for(let e of r?.assignedElements()??[])for(let r of Q(e))n?(r.setAttribute(`pending`,``),r.removeAttribute(`disabled`),r.removeAttribute(`readonly`)):t?(r.removeAttribute(`pending`),r.setAttribute(`disabled`,``),r.removeAttribute(`readonly`)):(r.removeAttribute(`pending`),r.removeAttribute(`disabled`),r.removeAttribute(`readonly`));for(let r of[`slot[name="top-actions"]`,`slot[name="bottom-actions"]`,`slot[name="record-button"]`]){let i=e.querySelector(r);for(let e of i?.assignedElements()??[])for(let r of Q(e))t||n?(r.setAttribute(`disabled`,``),r.removeAttribute(`readonly`)):(r.removeAttribute(`disabled`),r.removeAttribute(`readonly`))}}function Ce(e){let t=[],n=new Set([`luzmo-switch`,`luzmo-checkbox`,`luzmo-radio`]);for(let r of e)for(let e of Q(r)){let r={element:e,name:e.getAttribute(`name`)||e.getAttribute(`label`)||void 0};`value`in e&&(r.value=e.value);let i=e.tagName.toLowerCase();n.has(i)&&`checked`in e&&(r.checked=e.checked),t.push(r)}return t}var we=`:host{font-family:var(--luzmo-prompt-box-font-family,var(--prompt-box-font-family));font-size:var(--luzmo-prompt-box-font-size,var(--prompt-box-font-size));line-height:var(--luzmo-prompt-box-line-height,var(--prompt-box-line-height));color:var(--highcontrast-prompt-box-text-color,var(--luzmo-prompt-box-text-color,var(--prompt-box-text-color)));flex-direction:column;width:100%;display:flex}:host([disabled]){opacity:var(--luzmo-prompt-box-disabled-opacity,var(--prompt-box-disabled-opacity));pointer-events:none}.container{gap:var(--luzmo-prompt-box-gap,var(--prompt-box-gap));padding:var(--luzmo-prompt-box-vertical-padding,var(--prompt-box-vertical-padding)) var(--luzmo-prompt-box-horizontal-padding,var(--prompt-box-horizontal-padding));background-color:var(--highcontrast-prompt-box-background-color,var(--luzmo-prompt-box-background-color,var(--prompt-box-background-color)));border-radius:var(--luzmo-prompt-box-border-radius,var(--prompt-box-border-radius));border-width:var(--luzmo-prompt-box-border-width,var(--prompt-box-border-width));border-style:solid;border-color:var(--highcontrast-prompt-box-border-color,var(--luzmo-prompt-box-border-color,var(--prompt-box-border-color)));box-shadow:var(--luzmo-prompt-box-shadow,var(--prompt-box-shadow));transition:border-color var(--luzmo-prompt-box-animation-duration,var(--prompt-box-animation-duration)) ease-in-out, box-shadow var(--luzmo-prompt-box-animation-duration,var(--prompt-box-animation-duration)) ease-in-out;flex-direction:column;display:flex}.container.input-focused{border-color:var(--highcontrast-prompt-box-border-color-focus,var(--luzmo-prompt-box-border-color-focus,var(--prompt-box-border-color-focus)))}.container.drag-over{border-color:var(--luzmo-prompt-box-border-color-drag,var(--luzmo-primary,#0064fa))}:host(:focus-visible) .container,:host(.focus-visible) .container{border-color:var(--highcontrast-prompt-box-border-color-focus,var(--luzmo-prompt-box-border-color-focus,var(--prompt-box-border-color-focus)));box-shadow:var(--luzmo-prompt-box-shadow-focus,var(--prompt-box-shadow-focus))}:host(:focus){outline:none}.top-actions{align-items:center;gap:var(--luzmo-prompt-box-top-actions-gap,var(--prompt-box-top-actions-gap));opacity:var(--luzmo-prompt-box-actions-opacity,var(--prompt-box-actions-opacity,1));transition:opacity var(--luzmo-prompt-box-animation-duration,var(--prompt-box-animation-duration)) ease-in-out;flex-wrap:wrap;display:flex}.top-actions.empty{display:none}.hidden-file-input{opacity:0;pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.attachments{align-items:center;gap:var(--luzmo-prompt-box-attachments-gap,var(--prompt-box-attachments-gap,8px));flex-flow:row;display:flex;overflow:auto hidden}.attachments::-webkit-scrollbar{width:var(--luzmo-prompt-box-scrollbar-width,var(--prompt-box-scrollbar-width));height:var(--luzmo-prompt-box-scrollbar-width,var(--prompt-box-scrollbar-width))}.attachments::-webkit-scrollbar-track{background:var(--luzmo-prompt-box-scrollbar-track-background,var(--prompt-box-scrollbar-track-background));border-radius:var(--luzmo-prompt-box-scrollbar-track-border-radius,var(--prompt-box-scrollbar-track-border-radius))}.attachments::-webkit-scrollbar-thumb{background:var(--luzmo-prompt-box-scrollbar-thumb-background,var(--prompt-box-scrollbar-thumb-background));border-radius:var(--luzmo-prompt-box-scrollbar-thumb-border-radius,var(--prompt-box-scrollbar-thumb-border-radius))}.attachments::-webkit-scrollbar-thumb:hover{background:var(--luzmo-prompt-box-scrollbar-thumb-hover-background,var(--prompt-box-scrollbar-thumb-hover-background))}.attachments{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-prompt-box-scrollbar-thumb-background,var(--prompt-box-scrollbar-thumb-background)) var(--luzmo-prompt-box-scrollbar-track-background,var(--prompt-box-scrollbar-track-background))}.image-attachment,.file-attachment{width:var(--luzmo-prompt-box-image-preview-size,var(--prompt-box-image-preview-size,80px));height:var(--luzmo-prompt-box-image-preview-size,var(--prompt-box-image-preview-size,80px));border-radius:var(--luzmo-prompt-box-image-border-radius,var(--prompt-box-image-border-radius,8px));background-color:var(--luzmo-prompt-box-image-background,var(--prompt-box-image-background,#0000000d));flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden}.image-preview{object-fit:cover;width:100%;height:100%}.file-attachment-icon{--luzmo-icon-size:var(--luzmo-prompt-box-file-icon-size,var(--prompt-box-file-icon-size,28px));color:var(--luzmo-prompt-box-file-icon-color,var(--prompt-box-file-icon-color,var(--luzmo-font-color-extra-dimmed)))}.attachment-skeleton{--luzmo-skeleton-loader-border-radius:var(--luzmo-prompt-box-image-border-radius,var(--prompt-box-image-border-radius,8px));block-size:100%;inline-size:100%}.attachment-remove{width:var(--luzmo-prompt-box-remove-button-size,var(--prompt-box-remove-button-size,24px));height:var(--luzmo-prompt-box-remove-button-size,var(--prompt-box-remove-button-size,24px));background-color:var(--luzmo-prompt-box-remove-button-background,var(--prompt-box-remove-button-background,#00000080));--luzmo-clear-button-icon-color:var(--luzmo-prompt-box-remove-button-icon-color,var(--prompt-box-remove-button-icon-color,#fff));border-radius:50%;position:absolute;top:4px;right:4px}.attachment-remove:hover{background-color:var(--luzmo-prompt-box-remove-button-background-hover,var(--prompt-box-remove-button-background-hover,#000000b3))}.input-wrapper{flex:1;display:flex;position:relative}.input-field{--luzmo-text-field-focus-indicator-width:0;--luzmo-text-field-border-width:0;--luzmo-text-field-width:100%;--luzmo-text-field-min-width:0;--luzmo-text-field-placeholder-text-color-default:var(--luzmo-prompt-box-placeholder-color,var(--prompt-box-placeholder-color));flex:1;width:100%;min-width:0}.error{color:var(--luzmo-prompt-box-error-color,var(--prompt-box-error-color,var(--luzmo-negative-color)));font-size:var(--luzmo-prompt-box-error-font-size,var(--prompt-box-error-font-size,var(--luzmo-font-size-s)));line-height:var(--luzmo-prompt-box-error-line-height,var(--prompt-box-error-line-height,1.4))}.error.empty{display:none}::slotted([slot=error]){color:inherit;font-size:inherit;line-height:inherit}.actions-row{justify-content:space-between;align-items:center;gap:var(--luzmo-prompt-box-actions-gap,var(--prompt-box-actions-gap));display:flex}.bottom-actions{align-items:center;gap:var(--luzmo-prompt-box-bottom-actions-gap,var(--prompt-box-bottom-actions-gap));opacity:var(--luzmo-prompt-box-actions-opacity,var(--prompt-box-actions-opacity,1));transition:opacity var(--luzmo-prompt-box-animation-duration,var(--prompt-box-animation-duration)) ease-in-out;flex-wrap:wrap;flex:1;display:flex}.button-group{align-items:center;gap:var(--luzmo-prompt-box-button-group-gap,var(--prompt-box-button-group-gap));margin-left:auto;display:flex}.submit-button{margin-inline-start:var(--luzmo-prompt-box-submit-button-margin-inline-start,var(--prompt-box-submit-button-margin-inline-start))}.recording-ui{align-items:center;gap:var(--luzmo-prompt-box-recording-gap,var(--prompt-box-recording-gap));display:flex}.waveform{align-items:center;gap:var(--luzmo-prompt-box-waveform-gap,var(--prompt-box-waveform-gap,3px));height:var(--luzmo-prompt-box-waveform-height,var(--prompt-box-waveform-height,24px));padding:0 4px;display:flex}.waveform-bar{width:var(--luzmo-prompt-box-waveform-bar-width,var(--prompt-box-waveform-bar-width,3px));height:calc(var(--bar-height,.3) * var(--luzmo-prompt-box-waveform-height,var(--prompt-box-waveform-height,24px)));background-color:var(--luzmo-prompt-box-waveform-bar-color,var(--prompt-box-waveform-bar-color,currentColor));border-radius:var(--luzmo-prompt-box-waveform-bar-radius,var(--prompt-box-waveform-bar-radius,2px));min-height:4px;transition:height 50ms ease-out;animation:1s ease-in-out infinite waveform-pulse}.waveform-bar:first-child{animation-delay:0s}.waveform-bar:nth-child(2){animation-delay:.1s}.waveform-bar:nth-child(3){animation-delay:.2s}.waveform-bar:nth-child(4){animation-delay:.1s}.waveform-bar:nth-child(5){animation-delay:0s}@keyframes waveform-pulse{0%,to{opacity:.6}50%{opacity:1}}.recording-duration{font-family:var(--luzmo-prompt-box-recording-duration-font-family,var(--prompt-box-recording-duration-font-family,monospace));font-size:var(--luzmo-prompt-box-recording-duration-font-size,var(--prompt-box-recording-duration-font-size,14px));font-weight:var(--luzmo-prompt-box-recording-duration-font-weight,var(--prompt-box-recording-duration-font-weight,500));color:var(--luzmo-prompt-box-recording-duration-color,var(--prompt-box-recording-duration-color,currentColor));text-align:center}.rich-input{width:100%;min-width:0;min-height:1.5em;max-height:var(--luzmo-prompt-box-max-height,var(--prompt-box-max-height,200px));flex:1;overflow-y:auto}.rich-input::-webkit-scrollbar{width:var(--luzmo-prompt-box-scrollbar-width,var(--prompt-box-scrollbar-width));height:var(--luzmo-prompt-box-scrollbar-width,var(--prompt-box-scrollbar-width))}.rich-input::-webkit-scrollbar-track{background:var(--luzmo-prompt-box-scrollbar-track-background,var(--prompt-box-scrollbar-track-background));border-radius:var(--luzmo-prompt-box-scrollbar-track-border-radius,var(--prompt-box-scrollbar-track-border-radius))}.rich-input::-webkit-scrollbar-thumb{background:var(--luzmo-prompt-box-scrollbar-thumb-background,var(--prompt-box-scrollbar-thumb-background));border-radius:var(--luzmo-prompt-box-scrollbar-thumb-border-radius,var(--prompt-box-scrollbar-thumb-border-radius))}.rich-input::-webkit-scrollbar-thumb:hover{background:var(--luzmo-prompt-box-scrollbar-thumb-hover-background,var(--prompt-box-scrollbar-thumb-hover-background))}.rich-input{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-prompt-box-scrollbar-thumb-background,var(--prompt-box-scrollbar-thumb-background)) var(--luzmo-prompt-box-scrollbar-track-background,var(--prompt-box-scrollbar-track-background));padding:var(--luzmo-prompt-box-rich-input-padding,var(--prompt-box-rich-input-padding,4px 0));font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;white-space:pre-wrap;word-break:break-word;background:0 0;border:none;outline:none}.rich-input:empty:before{content:attr(data-placeholder);color:var(--luzmo-prompt-box-placeholder-color,var(--prompt-box-placeholder-color));pointer-events:none}.rich-input[contenteditable=false]{opacity:.5;cursor:default}.drag-caret{background:var(--luzmo-primary,#0064fa);pointer-events:none;border-radius:1px;width:2px}.element-badge{align-items:center;gap:var(--luzmo-prompt-box-badge-gap,var(--prompt-box-badge-gap,6px));vertical-align:baseline;padding:var(--luzmo-prompt-box-badge-padding,var(--prompt-box-badge-padding,1px 6px));background-color:var(--luzmo-prompt-box-badge-background,var(--prompt-box-badge-background,rgba(var(--luzmo-primary-rgb,0, 100, 250), .1)));color:var(--luzmo-prompt-box-badge-color,var(--prompt-box-badge-color,var(--luzmo-primary,#0064fa)));border-radius:var(--luzmo-prompt-box-badge-border-radius,var(--prompt-box-badge-border-radius,4px));font-size:var(--luzmo-prompt-box-badge-font-size,var(--prompt-box-badge-font-size,.9em));font-weight:var(--luzmo-prompt-box-badge-font-weight,var(--prompt-box-badge-font-weight,500));cursor:default;-webkit-user-select:none;user-select:none;white-space:nowrap;max-width:var(--luzmo-prompt-box-badge-max-width,var(--prompt-box-badge-max-width,200px));margin:0 1px;line-height:1.4;display:inline-flex}.element-badge-icon{flex-shrink:0;display:inline-flex}.element-badge-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.element-badge-remove{appearance:none;font:inherit;color:inherit;width:var(--luzmo-prompt-box-badge-remove-size,var(--prompt-box-badge-remove-size,14px));height:var(--luzmo-prompt-box-badge-remove-size,var(--prompt-box-badge-remove-size,14px));font-size:var(--luzmo-prompt-box-badge-remove-font-size,var(--prompt-box-badge-remove-font-size,12px));cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;line-height:1;transition:opacity .1s,background-color .1s;display:inline-flex}.element-badge-remove:hover{opacity:1;background-color:var(--luzmo-prompt-box-badge-remove-hover-background,var(--prompt-box-badge-remove-hover-background,#0000001a))}.element-badge-remove:focus-visible{opacity:1;outline:2px solid var(--luzmo-primary,#0064fa);outline-offset:1px}:host([single-line]) .container{align-items:center;gap:var(--luzmo-prompt-box-single-line-gap,var(--prompt-box-single-line-gap));flex-flow:wrap}:host([single-line]) .top-actions{flex-wrap:nowrap;flex-shrink:0}:host([single-line]) .attachments{max-height:var(--luzmo-prompt-box-single-line-attachments-max-height,var(--prompt-box-single-line-attachments-max-height));flex-direction:row;flex-shrink:0;align-items:center;overflow:auto hidden}:host([single-line]) .image-attachment,:host([single-line]) .file-attachment{width:var(--luzmo-prompt-box-single-line-image-size,var(--prompt-box-single-line-image-size));height:var(--luzmo-prompt-box-single-line-image-size,var(--prompt-box-single-line-image-size))}:host([single-line]) .file-attachment-icon{--luzmo-icon-size:var(--luzmo-prompt-box-single-line-file-icon-size,var(--prompt-box-single-line-file-icon-size,14px))}:host([single-line]) .input-wrapper{min-width:0}:host([single-line]) .input-field{--luzmo-text-area-min-block-size-quiet:auto;--luzmo-text-field-spacing-block-start:0px;--luzmo-text-field-spacing-block-end:0px}:host([single-line]) .rich-input{min-height:unset;padding:0}:host([single-line]) .actions-row{flex-shrink:0}:host([single-line]) .bottom-actions{flex-wrap:nowrap;flex:0}:host([single-line]) .error:not(.empty){flex-basis:100%;order:1;inline-size:100%}::slotted([slot=top-actions]),::slotted([slot=bottom-actions]){align-items:center;display:inline-flex}::slotted([slot=record-button]){display:inline-flex}::slotted([slot=submit-button]){margin-inline-start:var(--luzmo-prompt-box-submit-button-margin-inline-start,var(--prompt-box-submit-button-margin-inline-start));display:inline-flex}luzmo-overlay[part=trigger-menu-overlay]{--luzmo-overlay-min-width:0}.trigger-options{min-width:var(--luzmo-prompt-box-trigger-menu-min-width,var(--prompt-box-trigger-menu-min-width,250px));max-width:var(--luzmo-prompt-box-trigger-menu-max-width,var(--prompt-box-trigger-menu-max-width,400px));max-height:var(--luzmo-prompt-box-trigger-menu-max-height,var(--prompt-box-trigger-menu-max-height,300px));flex-direction:column;display:flex;overflow-y:auto}.trigger-options::-webkit-scrollbar{width:var(--luzmo-prompt-box-scrollbar-width,var(--prompt-box-scrollbar-width));height:var(--luzmo-prompt-box-scrollbar-width,var(--prompt-box-scrollbar-width))}.trigger-options::-webkit-scrollbar-track{background:var(--luzmo-prompt-box-scrollbar-track-background,var(--prompt-box-scrollbar-track-background));border-radius:var(--luzmo-prompt-box-scrollbar-track-border-radius,var(--prompt-box-scrollbar-track-border-radius))}.trigger-options::-webkit-scrollbar-thumb{background:var(--luzmo-prompt-box-scrollbar-thumb-background,var(--prompt-box-scrollbar-thumb-background));border-radius:var(--luzmo-prompt-box-scrollbar-thumb-border-radius,var(--prompt-box-scrollbar-thumb-border-radius))}.trigger-options::-webkit-scrollbar-thumb:hover{background:var(--luzmo-prompt-box-scrollbar-thumb-hover-background,var(--prompt-box-scrollbar-thumb-hover-background))}.trigger-options{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-prompt-box-scrollbar-thumb-background,var(--prompt-box-scrollbar-thumb-background)) var(--luzmo-prompt-box-scrollbar-track-background,var(--prompt-box-scrollbar-track-background));background-color:var(--luzmo-prompt-box-trigger-menu-background,var(--prompt-box-trigger-menu-background,var(--luzmo-background-color,#fff)));border:1px solid var(--luzmo-prompt-box-trigger-menu-border-color,var(--prompt-box-trigger-menu-border-color,var(--luzmo-border-color,#0000001a)));border-radius:var(--luzmo-prompt-box-trigger-menu-border-radius,var(--prompt-box-trigger-menu-border-radius,var(--luzmo-border-radius-100,8px)));box-shadow:0 2px 8px var(--luzmo-prompt-box-trigger-menu-shadow-color,var(--prompt-box-trigger-menu-shadow-color,var(--luzmo-shadow-color)))}.trigger-option{align-items:center;gap:var(--luzmo-prompt-box-trigger-option-gap,var(--prompt-box-trigger-option-gap,10px));min-block-size:var(--luzmo-prompt-box-trigger-option-min-height,var(--prompt-box-trigger-option-min-height,var(--luzmo-component-height,32px)));padding-block:var(--luzmo-prompt-box-trigger-option-padding-block,var(--prompt-box-trigger-option-padding-block,4px));padding-inline:var(--luzmo-prompt-box-trigger-option-padding-inline,var(--prompt-box-trigger-option-padding-inline,10px));cursor:pointer;box-sizing:border-box;scroll-margin-block:var(--luzmo-prompt-box-trigger-option-min-height,var(--prompt-box-trigger-option-min-height,var(--luzmo-component-height,32px)));transition:background-color .1s;display:flex}.trigger-option.has-description{padding-block:var(--luzmo-prompt-box-trigger-option-description-padding-block,var(--prompt-box-trigger-option-description-padding-block,4px));min-block-size:auto}.trigger-option.hovered,.trigger-option.highlighted{background-color:var(--luzmo-prompt-box-trigger-option-background-hover,var(--prompt-box-trigger-option-background-hover,var(--luzmo-background-color-hover,#0000000f)))}.trigger-option-icon{width:var(--luzmo-prompt-box-trigger-option-icon-width,var(--prompt-box-trigger-option-icon-width,20px));color:var(--luzmo-prompt-box-trigger-option-icon-color,var(--prompt-box-trigger-option-icon-color,var(--luzmo-font-color,inherit)));font-size:var(--luzmo-prompt-box-trigger-option-icon-size,var(--prompt-box-trigger-option-icon-size,var(--luzmo-font-size,14px)));flex-shrink:0;justify-content:center;align-items:center;display:flex}.trigger-option-content{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.trigger-option-label{font-size:var(--luzmo-prompt-box-trigger-option-font-size,var(--prompt-box-trigger-option-font-size,var(--luzmo-font-size,14px)));line-height:var(--luzmo-prompt-box-trigger-option-line-height,var(--prompt-box-trigger-option-line-height,var(--luzmo-line-height,1.4)));color:var(--luzmo-prompt-box-trigger-option-color,var(--prompt-box-trigger-option-color,var(--luzmo-font-color,#333)));white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.trigger-option-description{font-size:var(--luzmo-prompt-box-trigger-option-description-font-size,var(--prompt-box-trigger-option-description-font-size,var(--luzmo-font-size-xs,12px)));line-height:var(--luzmo-prompt-box-trigger-option-description-line-height,var(--prompt-box-trigger-option-description-line-height,var(--luzmo-line-height,1.4)));color:var(--luzmo-prompt-box-trigger-option-description-color,var(--prompt-box-trigger-option-description-color,var(--luzmo-font-color,#6e6e6e)));white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.trigger-option-enter-icon{color:var(--luzmo-prompt-box-trigger-option-enter-icon-color,var(--prompt-box-trigger-option-enter-icon-color,var(--luzmo-font-color-dimmed,#0006)));flex-shrink:0;justify-content:center;align-items:center;margin-inline-start:auto;display:flex}.trigger-option-highlight{background-color:var(--luzmo-prompt-box-trigger-option-highlight-background,var(--prompt-box-trigger-option-highlight-background,rgba(var(--luzmo-primary-rgb,0, 100, 250), .12)));color:inherit;border-radius:2px;padding:0 1px}.trigger-option-header{align-items:center;gap:var(--luzmo-prompt-box-trigger-option-header-gap,var(--prompt-box-trigger-option-header-gap,10px));min-block-size:var(--luzmo-prompt-box-trigger-option-min-height,var(--prompt-box-trigger-option-min-height,var(--luzmo-component-height,32px)));padding-block:var(--luzmo-prompt-box-trigger-option-header-padding-block,var(--prompt-box-trigger-option-header-padding-block,4px));padding-inline:var(--luzmo-prompt-box-trigger-option-header-padding-inline,var(--prompt-box-trigger-option-header-padding-inline,10px));background-color:var(--luzmo-prompt-box-trigger-option-header-background,var(--prompt-box-trigger-option-header-background));border-block-start:1px solid var(--luzmo-prompt-box-trigger-option-header-border-color,var(--prompt-box-trigger-option-header-border-color,var(--luzmo-border-color,#0000001f)));border-block-end:1px solid var(--luzmo-prompt-box-trigger-option-header-border-color,var(--prompt-box-trigger-option-header-border-color,var(--luzmo-border-color,#0000001f)));box-sizing:border-box;-webkit-user-select:none;user-select:none;display:flex}.trigger-options>.trigger-option-header:first-child{border-block-start:none}.trigger-option-header-icon{width:var(--luzmo-prompt-box-trigger-option-icon-width,var(--prompt-box-trigger-option-icon-width,20px));color:var(--luzmo-prompt-box-trigger-option-header-icon-color,var(--prompt-box-trigger-option-header-icon-color,var(--luzmo-font-color,#333)));flex-shrink:0;justify-content:center;align-items:center;display:flex}.trigger-option-header-label{font-size:var(--luzmo-prompt-box-trigger-option-header-font-size,var(--prompt-box-trigger-option-header-font-size,var(--luzmo-font-size,14px)));font-weight:var(--luzmo-prompt-box-trigger-option-header-font-weight,var(--prompt-box-trigger-option-header-font-weight,normal));line-height:var(--luzmo-prompt-box-trigger-option-header-line-height,var(--prompt-box-trigger-option-header-line-height,var(--luzmo-line-height,1.4)));color:var(--luzmo-prompt-box-trigger-option-header-color,var(--prompt-box-trigger-option-header-color,var(--luzmo-font-color,#333)));white-space:nowrap;text-overflow:ellipsis;overflow:hidden}luzmo-overlay[part=trigger-menu-overlay] ::slotted(*){min-width:var(--luzmo-prompt-box-trigger-menu-min-width,var(--prompt-box-trigger-menu-min-width,250px));max-height:var(--luzmo-prompt-box-trigger-menu-max-height,var(--prompt-box-trigger-menu-max-height,300px));visibility:visible!important;opacity:1!important;pointer-events:auto!important;position:relative!important}@media (forced-colors:active){:host{--highcontrast-prompt-box-background-color:Canvas;--highcontrast-prompt-box-border-color:CanvasText;--highcontrast-prompt-box-border-color-focus:Highlight;--highcontrast-prompt-box-text-color:CanvasText}}:host{--prompt-box-font-family:var(--luzmo-font-family);--prompt-box-font-size:var(--luzmo-font-size);--prompt-box-line-height:1.5;--prompt-box-text-color:var(--luzmo-font-color);--prompt-box-background-color:var(--luzmo-background-color);--prompt-box-border-radius:var(--luzmo-border-radius-xl);--prompt-box-border-width:var(--luzmo-border-width);--prompt-box-border-color:var(--luzmo-border-color);--prompt-box-border-color-focus:var(--luzmo-primary);--prompt-box-shadow:0 2px 8px var(--luzmo-shadow-color);--prompt-box-shadow-focus:0 2px 12px rgba(var(--luzmo-primary-rgb), .15);--prompt-box-gap:var(--luzmo-spacing-5);--prompt-box-recording-gap:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--prompt-box-vertical-padding:var(--luzmo-spacing-4);--prompt-box-horizontal-padding:var(--luzmo-spacing-5);--prompt-box-actions-gap:var(--luzmo-spacing-3);--prompt-box-top-actions-gap:var(--luzmo-spacing-2);--prompt-box-bottom-actions-gap:var(--luzmo-spacing-2);--prompt-box-button-group-gap:var(--luzmo-spacing-2);--prompt-box-submit-button-margin-inline-start:var(--luzmo-spacing-3);--prompt-box-max-height:200px;--prompt-box-rich-input-padding:4px 0;--prompt-box-placeholder-color:var(--luzmo-font-color-extra-dimmed);--prompt-box-animation-duration:var(--luzmo-animation-duration,.15s);--prompt-box-disabled-opacity:.5;--prompt-box-error-color:var(--luzmo-negative-color);--prompt-box-error-font-size:var(--luzmo-font-size-s);--prompt-box-error-line-height:1.4;--prompt-box-attachments-gap:var(--luzmo-spacing-2);--prompt-box-image-preview-size:64px;--prompt-box-image-border-radius:var(--luzmo-border-radius);--prompt-box-image-background:#0000000d;--prompt-box-file-icon-size:var(--luzmo-icon-size-xl);--prompt-box-file-icon-color:var(--luzmo-font-color-extra-dimmed);--prompt-box-remove-button-size:20px;--prompt-box-remove-button-background:#00000080;--prompt-box-remove-button-background-hover:#000000b3;--prompt-box-remove-button-icon-color:#fff;--prompt-box-scrollbar-width:var(--luzmo-scrollbar-size);--prompt-box-scrollbar-track-background:var(--luzmo-scrollbar-track-background);--prompt-box-scrollbar-track-border-radius:var(--luzmo-scrollbar-track-border-radius);--prompt-box-scrollbar-thumb-background:var(--luzmo-scrollbar-thumb-background);--prompt-box-scrollbar-thumb-border-radius:var(--luzmo-scrollbar-thumb-border-radius);--prompt-box-scrollbar-thumb-hover-background:var(--luzmo-scrollbar-thumb-hover-background);--prompt-box-badge-gap:6px;--prompt-box-badge-padding:1px 6px;--prompt-box-badge-background:rgba(var(--luzmo-primary-rgb,0, 100, 250), .1);--prompt-box-badge-color:var(--luzmo-primary,#0064fa);--prompt-box-badge-border-radius:4px;--prompt-box-badge-font-size:.9em;--prompt-box-badge-font-weight:500;--prompt-box-badge-max-width:200px;--prompt-box-badge-remove-size:14px;--prompt-box-badge-remove-font-size:12px;--prompt-box-badge-remove-hover-background:#0000001a;--prompt-box-waveform-gap:3px;--prompt-box-waveform-height:24px;--prompt-box-waveform-bar-width:3px;--prompt-box-waveform-bar-color:currentColor;--prompt-box-waveform-bar-radius:2px;--prompt-box-recording-duration-font-family:monospace;--prompt-box-recording-duration-font-size:14px;--prompt-box-recording-duration-font-weight:500;--prompt-box-recording-duration-color:currentColor;--prompt-box-trigger-menu-min-width:250px;--prompt-box-trigger-menu-max-width:300px;--prompt-box-trigger-menu-max-height:300px;--prompt-box-trigger-menu-background:var(--luzmo-background-color,#fff);--prompt-box-trigger-menu-border-color:var(--luzmo-border-color,#0000001a);--prompt-box-trigger-menu-border-radius:var(--luzmo-border-radius-100,8px);--prompt-box-trigger-menu-shadow-color:var(--luzmo-shadow-color);--prompt-box-single-line-gap:var(--luzmo-spacing-3);--prompt-box-single-line-attachments-max-height:32px;--prompt-box-single-line-image-size:28px;--prompt-box-single-line-file-icon-size:var(--luzmo-icon-size-s);--prompt-box-trigger-option-gap:10px;--prompt-box-trigger-option-min-height:var(--luzmo-component-height,32px);--prompt-box-trigger-option-padding-block:4px;--prompt-box-trigger-option-padding-inline:10px;--prompt-box-trigger-option-description-padding-block:4px;--prompt-box-trigger-option-background-hover:var(--luzmo-background-color-highlight,#f5f5f5);--prompt-box-trigger-option-icon-color:var(--luzmo-font-color,inherit);--prompt-box-trigger-option-icon-width:20px;--prompt-box-trigger-option-icon-size:var(--luzmo-font-size,14px);--prompt-box-trigger-option-font-size:var(--luzmo-font-size,14px);--prompt-box-trigger-option-line-height:var(--luzmo-line-height,1.4);--prompt-box-trigger-option-color:var(--luzmo-font-color,#333);--prompt-box-trigger-option-description-font-size:var(--luzmo-font-size-xs,12px);--prompt-box-trigger-option-description-line-height:var(--luzmo-line-height,1.4);--prompt-box-trigger-option-description-color:var(--luzmo-font-color,#6e6e6e);--prompt-box-trigger-option-enter-icon-color:var(--prompt-box-trigger-option-icon-color,var(--luzmo-font-color,inherit));--prompt-box-trigger-option-highlight-background:rgba(var(--luzmo-primary-rgb,0, 100, 250), .12);--prompt-box-trigger-option-header-gap:10px;--prompt-box-trigger-option-header-padding-block:4px;--prompt-box-trigger-option-header-padding-inline:10px;--prompt-box-trigger-option-header-background:var(--luzmo-background-color-highlight,#f5f5f5);--prompt-box-trigger-option-header-border-color:var(--luzmo-border-color,#0000001f);--prompt-box-trigger-option-header-icon-color:var(--luzmo-font-color,#333);--prompt-box-trigger-option-header-font-size:var(--luzmo-font-size,14px);--prompt-box-trigger-option-header-font-weight:normal;--prompt-box-trigger-option-header-line-height:var(--luzmo-line-height,1.4);--prompt-box-trigger-option-header-color:var(--luzmo-font-color,#333)}:host([size=xs]){--prompt-box-font-size:var(--luzmo-font-size-xs);--prompt-box-border-radius:var(--luzmo-border-radius);--prompt-box-vertical-padding:var(--luzmo-spacing-2);--prompt-box-horizontal-padding:var(--luzmo-spacing-3);--prompt-box-gap:var(--luzmo-spacing-3);--prompt-box-attachments-gap:var(--luzmo-spacing-1);--prompt-box-recording-gap:var(--luzmo-spacing-3);--prompt-box-max-height:120px;--prompt-box-image-preview-size:40px;--prompt-box-file-icon-size:var(--luzmo-icon-size-m);--prompt-box-remove-button-size:16px;--prompt-box-badge-font-size:.8em;--prompt-box-badge-padding:0px 3px;--prompt-box-badge-remove-size:10px;--prompt-box-badge-remove-font-size:9px}:host([size=s]){--prompt-box-font-size:var(--luzmo-font-size-s);--prompt-box-border-radius:var(--luzmo-border-radius-l);--prompt-box-vertical-padding:var(--luzmo-spacing-3);--prompt-box-horizontal-padding:var(--luzmo-spacing-4);--prompt-box-gap:var(--luzmo-spacing-4);--prompt-box-attachments-gap:var(--luzmo-spacing-1);--prompt-box-recording-gap:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--prompt-box-max-height:150px;--prompt-box-image-preview-size:48px;--prompt-box-file-icon-size:var(--luzmo-icon-size-l);--prompt-box-remove-button-size:18px;--prompt-box-badge-font-size:.85em;--prompt-box-badge-padding:0px 4px;--prompt-box-badge-remove-size:12px;--prompt-box-badge-remove-font-size:10px}:host([size=l]){--prompt-box-font-size:var(--luzmo-font-size-l);--prompt-box-border-radius:var(--luzmo-border-radius-xl);--prompt-box-vertical-padding:var(--luzmo-spacing-5);--prompt-box-horizontal-padding:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-1));--prompt-box-gap:var(--luzmo-spacing-4);--prompt-box-attachments-gap:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--prompt-box-recording-gap:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--prompt-box-max-height:250px;--prompt-box-image-preview-size:72px;--prompt-box-file-icon-size:var(--luzmo-icon-size-xxl);--prompt-box-remove-button-size:24px;--prompt-box-badge-font-size:.9em;--prompt-box-badge-padding:2px 8px;--prompt-box-badge-remove-size:16px;--prompt-box-badge-remove-font-size:13px}:host([size=xl]){--prompt-box-font-size:var(--luzmo-font-size-xl);--prompt-box-border-radius:var(--luzmo-border-radius-xl);--prompt-box-vertical-padding:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-1));--prompt-box-horizontal-padding:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-2));--prompt-box-gap:var(--luzmo-spacing-5);--prompt-box-attachments-gap:var(--luzmo-spacing-3);--prompt-box-max-height:300px;--prompt-box-image-preview-size:96px;--prompt-box-file-icon-size:var(--luzmo-icon-size-xxl);--prompt-box-remove-button-size:28px;--prompt-box-badge-font-size:.9em;--prompt-box-badge-padding:2px 10px;--prompt-box-badge-remove-size:18px;--prompt-box-badge-remove-font-size:14px}:host([pending]){--prompt-box-actions-opacity:.75}`,$=class extends r(o,{validSizes:[`xs`,`s`,`m`,`l`,`xl`],defaultSize:`m`}){constructor(...e){super(...e),this.rows=1,this.grows=!1,this.maxRows=-1,this.recording=!1,this.hideSubmit=!1,this.disableSubmit=!1,this.singleLine=!1,this.placeholder=``,this.value=``,this.disabled=!1,this.readonly=!1,this.maxlength=-1,this.pending=!1,this.stoppable=!1,this.allowImages=!1,this.allowFiles=!1,this.acceptedFileTypes=[],this.fileIcons={},this.removeAttachmentLabel=e=>`Remove ${e}`,this.allowElements=!1,this.acceptedElementTypes=[],this._hasTopActions=!1,this._hasBottomActions=!1,this._hasError=!1,this._hasRecordButton=!1,this._hasSubmitButton=!1,this._inputFocused=!1,this._attachments=new te(this),this._recording=new x(this),this._richInput=new j(this),this._triggerMenu=new M(this),this.handleRecordButtonSlotChange=this._slotPresenceHandler(e=>this._hasRecordButton=e),this.handleSubmitButtonSlotChange=this._slotPresenceHandler(e=>this._hasSubmitButton=e),this.handleRecordClick=e=>{let t=e.currentTarget.matches(`:focus-visible`);this._recording.start(t)},this.handleAttachmentRemoveClick=e=>{let t=e.currentTarget.dataset.attachmentId;t&&this._attachments.removeAttachment(t)},this.handleInput=e=>{let t=e.target;this.value=t.value,this.dispatchEvent(new Event(`input`,{bubbles:!0,composed:!0}))},this.handleKeydown=e=>{if(e.key===`Enter`&&!e.shiftKey){if(e.preventDefault(),this.disableSubmit)return;this._submit()}},this.handleInputFocusIn=()=>{this._inputFocused=!0},this.handleInputFocusOut=()=>{this._inputFocused=!1},this.handleRichInputEvent=e=>{this._richInput.syncValue(),this._triggerMenu.handleInput(e),this.dispatchEvent(new Event(`input`,{bubbles:!0,composed:!0}))},this.handleRichKeydown=e=>{if(!this._triggerMenu.handleKeydown(e)){if(e.key===`Enter`&&!e.shiftKey){if(e.preventDefault(),this.disableSubmit)return;this._submit();return}(e.key===`Backspace`||e.key===`Delete`)&&this._richInput.handleBadgeDelete(e.key)&&e.preventDefault()}},this.handleStopClick=()=>{this.disabled||!this.pending||!this.stoppable||this.dispatchEvent(new CustomEvent(`luzmo-stop`,{bubbles:!0,composed:!0}))},this._handleComponentFocusIn=()=>{V()&&this.classList.add(`focus-visible`)},this._handleComponentFocusOut=e=>{let t=e.relatedTarget;t instanceof Node&&(this.contains(t)||this.shadowRoot?.contains(t))||this.classList.remove(`focus-visible`)},this._handlePaste=e=>{this.handlePastedImages(e.clipboardData)},this._handleTopActionsSlotChange=this._slotPresenceHandler(e=>this._hasTopActions=e),this._handleBottomActionsSlotChange=this._slotPresenceHandler(e=>this._hasBottomActions=e),this._handleErrorSlotChange=this._slotPresenceHandler(e=>this._hasError=e)}static get styles(){return[n(we)]}get triggers(){return this._triggerMenu.triggers}set triggers(e){let t=this._triggerMenu.triggers,n=Array.isArray(e)?e:[];n.length>0&&!this.allowElements&&console.warn("[luzmo-prompt-box] `triggers` only work when `allow-elements` / allowElements is enabled (rich input is required for trigger menus)."),this._triggerMenu.triggers=n,this.requestUpdate(`triggers`,t)}get attachmentsController(){return this._attachments}get recordingController(){return this._recording}get richInputController(){return this._richInput}get triggerMenuController(){return this._triggerMenu}get hasRecordButton(){return this._hasRecordButton}get hasSubmitButton(){return this._hasSubmitButton}get segments(){return this._richInput.getSegments()}set segments(e){this._richInput.setSegments(e)}connectedCallback(){super.connectedCallback(),z(),this.addEventListener(`focusin`,this._handleComponentFocusIn),this.addEventListener(`focusout`,this._handleComponentFocusOut),this.addEventListener(`paste`,this._handlePaste)}disconnectedCallback(){super.disconnectedCallback(),B(),this.removeEventListener(`focusin`,this._handleComponentFocusIn),this.removeEventListener(`focusout`,this._handleComponentFocusOut),this.removeEventListener(`paste`,this._handlePaste)}updated(e){super.updated(e),this._richInputElement&&(this._richInput.richInputElement=this._richInputElement,this._triggerMenu.richInputElement=this._richInputElement),(e.has(`pending`)||e.has(`disabled`))&&Se(this.shadowRoot,this.disabled,this.pending),this._recording.shouldFocusFinishButton&&this._recording.isRecording&&(this._recording.shouldFocusFinishButton=!1,requestAnimationFrame(()=>{this._finishRecordingButton?.focus()}))}focus(){this.allowElements&&this._richInputElement?this._richInputElement.focus():this._inputElement?.focus()}clear(){this._triggerMenu.close(),this.value=``,this._attachments.clearAttachments(),this.allowElements&&this._richInput.clearElements()}addFiles(e){return this._attachments.addFiles(e)}removeAttachment(e){this._attachments.removeAttachment(e)}setAttachmentLoading(e,t){this._attachments.setAttachmentLoading(e,t)}clearAttachments(){this._attachments.clearAttachments()}getAttachments(){return this._attachments.getAttachments()}openFilePicker(){this._fileInput?.click()}insertElement(e,t,n,r){return this._richInput.insertElement(e,t,n,r)}removeElement(e){this._richInput.removeElement(e)}getElements(){return this._richInput.getElements()}getTopActions(){return(this.shadowRoot?.querySelector(`slot[name="top-actions"]`))?.assignedElements()??[]}getBottomActions(){return(this.shadowRoot?.querySelector(`slot[name="bottom-actions"]`))?.assignedElements()??[]}submit(){this._submit()}selectTriggerOption(e){this._triggerMenu.selectOption(e)}highlightTriggerOption(e){this._triggerMenu.highlightedIndex=e,this.requestUpdate()}_slotPresenceHandler(e){return t=>{let n=t.target;e(n.assignedNodes().length>0)}}handlePastedImages(e){return this._attachments.handlePastedImages(e)}_submit(){if(this.disabled||this.readonly||this.pending||this.disableSubmit)return;let e=this.shadowRoot?.querySelector(`slot[name="top-actions"]`),t=this.shadowRoot?.querySelector(`slot[name="bottom-actions"]`),n=e?.assignedElements()??[],r=t?.assignedElements()??[],i=Ce([...n,...r]),a={value:this.value,segments:this.segments,topActions:[...n],bottomActions:[...r],actionValues:i,attachments:[...this._attachments.getAttachments()]};this.dispatchEvent(new CustomEvent(`luzmo-submit`,{bubbles:!0,composed:!0,detail:a}))}render(){return e`
296
+ `}var Z=`luzmo-button, luzmo-action-button, luzmo-switch, luzmo-picker, luzmo-picker-button, luzmo-select, luzmo-text-field, luzmo-number-field`;function Q(e){let t=[];return e.matches(Z)&&t.push(e),t.push(...e.querySelectorAll(Z)),t}function Se(e,t,n){if(!e)return;let r=e.querySelector(`slot[name="submit-button"]`);for(let e of r?.assignedElements()??[])for(let r of Q(e))n?(r.setAttribute(`pending`,``),r.removeAttribute(`disabled`),r.removeAttribute(`readonly`)):t?(r.removeAttribute(`pending`),r.setAttribute(`disabled`,``),r.removeAttribute(`readonly`)):(r.removeAttribute(`pending`),r.removeAttribute(`disabled`),r.removeAttribute(`readonly`));for(let r of[`slot[name="top-actions"]`,`slot[name="bottom-actions"]`,`slot[name="record-button"]`]){let i=e.querySelector(r);for(let e of i?.assignedElements()??[])for(let r of Q(e))t||n?(r.setAttribute(`disabled`,``),r.removeAttribute(`readonly`)):(r.removeAttribute(`disabled`),r.removeAttribute(`readonly`))}}function Ce(e){let t=[],n=/* @__PURE__ */ new Set([`luzmo-switch`,`luzmo-checkbox`,`luzmo-radio`]);for(let r of e)for(let e of Q(r)){let r={element:e,name:e.getAttribute(`name`)||e.getAttribute(`label`)||void 0};`value`in e&&(r.value=e.value);let i=e.tagName.toLowerCase();n.has(i)&&`checked`in e&&(r.checked=e.checked),t.push(r)}return t}var we=`:host{font-family:var(--luzmo-prompt-box-font-family,var(--prompt-box-font-family));font-size:var(--luzmo-prompt-box-font-size,var(--prompt-box-font-size));line-height:var(--luzmo-prompt-box-line-height,var(--prompt-box-line-height));color:var(--highcontrast-prompt-box-text-color,var(--luzmo-prompt-box-text-color,var(--prompt-box-text-color)));flex-direction:column;width:100%;display:flex}:host([disabled]){opacity:var(--luzmo-prompt-box-disabled-opacity,var(--prompt-box-disabled-opacity));pointer-events:none}.container{gap:var(--luzmo-prompt-box-gap,var(--prompt-box-gap));padding:var(--luzmo-prompt-box-vertical-padding,var(--prompt-box-vertical-padding)) var(--luzmo-prompt-box-horizontal-padding,var(--prompt-box-horizontal-padding));background-color:var(--highcontrast-prompt-box-background-color,var(--luzmo-prompt-box-background-color,var(--prompt-box-background-color)));border-radius:var(--luzmo-prompt-box-border-radius,var(--prompt-box-border-radius));border-width:var(--luzmo-prompt-box-border-width,var(--prompt-box-border-width));border-style:solid;border-color:var(--highcontrast-prompt-box-border-color,var(--luzmo-prompt-box-border-color,var(--prompt-box-border-color)));box-shadow:var(--luzmo-prompt-box-shadow,var(--prompt-box-shadow));transition:border-color var(--luzmo-prompt-box-animation-duration,var(--prompt-box-animation-duration)) ease-in-out, box-shadow var(--luzmo-prompt-box-animation-duration,var(--prompt-box-animation-duration)) ease-in-out;flex-direction:column;display:flex}.container.input-focused{border-color:var(--highcontrast-prompt-box-border-color-focus,var(--luzmo-prompt-box-border-color-focus,var(--prompt-box-border-color-focus)))}.container.drag-over{border-color:var(--luzmo-prompt-box-border-color-drag,var(--luzmo-primary,#0064fa))}:host(:focus-visible) .container,:host(.focus-visible) .container{border-color:var(--highcontrast-prompt-box-border-color-focus,var(--luzmo-prompt-box-border-color-focus,var(--prompt-box-border-color-focus)));box-shadow:var(--luzmo-prompt-box-shadow-focus,var(--prompt-box-shadow-focus))}:host(:focus){outline:none}.top-actions{align-items:center;gap:var(--luzmo-prompt-box-top-actions-gap,var(--prompt-box-top-actions-gap));opacity:var(--luzmo-prompt-box-actions-opacity,var(--prompt-box-actions-opacity,1));transition:opacity var(--luzmo-prompt-box-animation-duration,var(--prompt-box-animation-duration)) ease-in-out;flex-wrap:wrap;display:flex}.top-actions.empty{display:none}.hidden-file-input{opacity:0;pointer-events:none;width:0;height:0;position:absolute;overflow:hidden}.attachments{align-items:center;gap:var(--luzmo-prompt-box-attachments-gap,var(--prompt-box-attachments-gap,8px));flex-flow:row;display:flex;overflow:auto hidden}.attachments::-webkit-scrollbar{width:var(--luzmo-prompt-box-scrollbar-width,var(--prompt-box-scrollbar-width));height:var(--luzmo-prompt-box-scrollbar-width,var(--prompt-box-scrollbar-width))}.attachments::-webkit-scrollbar-track{background:var(--luzmo-prompt-box-scrollbar-track-background,var(--prompt-box-scrollbar-track-background));border-radius:var(--luzmo-prompt-box-scrollbar-track-border-radius,var(--prompt-box-scrollbar-track-border-radius))}.attachments::-webkit-scrollbar-thumb{background:var(--luzmo-prompt-box-scrollbar-thumb-background,var(--prompt-box-scrollbar-thumb-background));border-radius:var(--luzmo-prompt-box-scrollbar-thumb-border-radius,var(--prompt-box-scrollbar-thumb-border-radius))}.attachments::-webkit-scrollbar-thumb:hover{background:var(--luzmo-prompt-box-scrollbar-thumb-hover-background,var(--prompt-box-scrollbar-thumb-hover-background))}.attachments{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-prompt-box-scrollbar-thumb-background,var(--prompt-box-scrollbar-thumb-background)) var(--luzmo-prompt-box-scrollbar-track-background,var(--prompt-box-scrollbar-track-background))}.image-attachment,.file-attachment{width:var(--luzmo-prompt-box-image-preview-size,var(--prompt-box-image-preview-size,80px));height:var(--luzmo-prompt-box-image-preview-size,var(--prompt-box-image-preview-size,80px));border-radius:var(--luzmo-prompt-box-image-border-radius,var(--prompt-box-image-border-radius,8px));background-color:var(--luzmo-prompt-box-image-background,var(--prompt-box-image-background,#0000000d));flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden}.image-preview{object-fit:cover;width:100%;height:100%}.file-attachment-icon{--luzmo-icon-size:var(--luzmo-prompt-box-file-icon-size,var(--prompt-box-file-icon-size,28px));color:var(--luzmo-prompt-box-file-icon-color,var(--prompt-box-file-icon-color,var(--luzmo-font-color-extra-dimmed)))}.attachment-skeleton{--luzmo-skeleton-loader-border-radius:var(--luzmo-prompt-box-image-border-radius,var(--prompt-box-image-border-radius,8px));block-size:100%;inline-size:100%}.attachment-remove{width:var(--luzmo-prompt-box-remove-button-size,var(--prompt-box-remove-button-size,24px));height:var(--luzmo-prompt-box-remove-button-size,var(--prompt-box-remove-button-size,24px));background-color:var(--luzmo-prompt-box-remove-button-background,var(--prompt-box-remove-button-background,#00000080));--luzmo-clear-button-icon-color:var(--luzmo-prompt-box-remove-button-icon-color,var(--prompt-box-remove-button-icon-color,#fff));border-radius:50%;position:absolute;top:4px;right:4px}.attachment-remove:hover{background-color:var(--luzmo-prompt-box-remove-button-background-hover,var(--prompt-box-remove-button-background-hover,#000000b3))}.input-wrapper{flex:1;display:flex;position:relative}.input-field{--luzmo-text-field-focus-indicator-width:0;--luzmo-text-field-border-width:0;--luzmo-text-field-width:100%;--luzmo-text-field-min-width:0;--luzmo-text-field-placeholder-text-color-default:var(--luzmo-prompt-box-placeholder-color,var(--prompt-box-placeholder-color));flex:1;width:100%;min-width:0}.error{color:var(--luzmo-prompt-box-error-color,var(--prompt-box-error-color,var(--luzmo-negative-color)));font-size:var(--luzmo-prompt-box-error-font-size,var(--prompt-box-error-font-size,var(--luzmo-font-size-s)));line-height:var(--luzmo-prompt-box-error-line-height,var(--prompt-box-error-line-height,1.4))}.error.empty{display:none}::slotted([slot=error]){color:inherit;font-size:inherit;line-height:inherit}.actions-row{justify-content:space-between;align-items:center;gap:var(--luzmo-prompt-box-actions-gap,var(--prompt-box-actions-gap));display:flex}.bottom-actions{align-items:center;gap:var(--luzmo-prompt-box-bottom-actions-gap,var(--prompt-box-bottom-actions-gap));opacity:var(--luzmo-prompt-box-actions-opacity,var(--prompt-box-actions-opacity,1));transition:opacity var(--luzmo-prompt-box-animation-duration,var(--prompt-box-animation-duration)) ease-in-out;flex-wrap:wrap;flex:1;display:flex}.button-group{align-items:center;gap:var(--luzmo-prompt-box-button-group-gap,var(--prompt-box-button-group-gap));margin-left:auto;display:flex}.submit-button{margin-inline-start:var(--luzmo-prompt-box-submit-button-margin-inline-start,var(--prompt-box-submit-button-margin-inline-start))}.recording-ui{align-items:center;gap:var(--luzmo-prompt-box-recording-gap,var(--prompt-box-recording-gap));display:flex}.waveform{align-items:center;gap:var(--luzmo-prompt-box-waveform-gap,var(--prompt-box-waveform-gap,3px));height:var(--luzmo-prompt-box-waveform-height,var(--prompt-box-waveform-height,24px));padding:0 4px;display:flex}.waveform-bar{width:var(--luzmo-prompt-box-waveform-bar-width,var(--prompt-box-waveform-bar-width,3px));height:calc(var(--bar-height,.3) * var(--luzmo-prompt-box-waveform-height,var(--prompt-box-waveform-height,24px)));background-color:var(--luzmo-prompt-box-waveform-bar-color,var(--prompt-box-waveform-bar-color,currentColor));border-radius:var(--luzmo-prompt-box-waveform-bar-radius,var(--prompt-box-waveform-bar-radius,2px));min-height:4px;transition:height 50ms ease-out;animation:1s ease-in-out infinite waveform-pulse}.waveform-bar:first-child{animation-delay:0s}.waveform-bar:nth-child(2){animation-delay:.1s}.waveform-bar:nth-child(3){animation-delay:.2s}.waveform-bar:nth-child(4){animation-delay:.1s}.waveform-bar:nth-child(5){animation-delay:0s}@keyframes waveform-pulse{0%,to{opacity:.6}50%{opacity:1}}.recording-duration{font-family:var(--luzmo-prompt-box-recording-duration-font-family,var(--prompt-box-recording-duration-font-family,monospace));font-size:var(--luzmo-prompt-box-recording-duration-font-size,var(--prompt-box-recording-duration-font-size,14px));font-weight:var(--luzmo-prompt-box-recording-duration-font-weight,var(--prompt-box-recording-duration-font-weight,500));color:var(--luzmo-prompt-box-recording-duration-color,var(--prompt-box-recording-duration-color,currentColor));text-align:center}.rich-input{width:100%;min-width:0;min-height:1.5em;max-height:var(--luzmo-prompt-box-max-height,var(--prompt-box-max-height,200px));flex:1;overflow-y:auto}.rich-input::-webkit-scrollbar{width:var(--luzmo-prompt-box-scrollbar-width,var(--prompt-box-scrollbar-width));height:var(--luzmo-prompt-box-scrollbar-width,var(--prompt-box-scrollbar-width))}.rich-input::-webkit-scrollbar-track{background:var(--luzmo-prompt-box-scrollbar-track-background,var(--prompt-box-scrollbar-track-background));border-radius:var(--luzmo-prompt-box-scrollbar-track-border-radius,var(--prompt-box-scrollbar-track-border-radius))}.rich-input::-webkit-scrollbar-thumb{background:var(--luzmo-prompt-box-scrollbar-thumb-background,var(--prompt-box-scrollbar-thumb-background));border-radius:var(--luzmo-prompt-box-scrollbar-thumb-border-radius,var(--prompt-box-scrollbar-thumb-border-radius))}.rich-input::-webkit-scrollbar-thumb:hover{background:var(--luzmo-prompt-box-scrollbar-thumb-hover-background,var(--prompt-box-scrollbar-thumb-hover-background))}.rich-input{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-prompt-box-scrollbar-thumb-background,var(--prompt-box-scrollbar-thumb-background)) var(--luzmo-prompt-box-scrollbar-track-background,var(--prompt-box-scrollbar-track-background));padding:var(--luzmo-prompt-box-rich-input-padding,var(--prompt-box-rich-input-padding,4px 0));font-family:inherit;font-size:inherit;line-height:inherit;color:inherit;white-space:pre-wrap;word-break:break-word;background:0 0;border:none;outline:none}.rich-input:empty:before{content:attr(data-placeholder);color:var(--luzmo-prompt-box-placeholder-color,var(--prompt-box-placeholder-color));pointer-events:none}.rich-input[contenteditable=false]{opacity:.5;cursor:default}.drag-caret{background:var(--luzmo-primary,#0064fa);pointer-events:none;border-radius:1px;width:2px}.element-badge{align-items:center;gap:var(--luzmo-prompt-box-badge-gap,var(--prompt-box-badge-gap,6px));vertical-align:baseline;padding:var(--luzmo-prompt-box-badge-padding,var(--prompt-box-badge-padding,1px 6px));background-color:var(--luzmo-prompt-box-badge-background,var(--prompt-box-badge-background,rgba(var(--luzmo-primary-rgb,0, 100, 250), .1)));color:var(--luzmo-prompt-box-badge-color,var(--prompt-box-badge-color,var(--luzmo-primary,#0064fa)));border-radius:var(--luzmo-prompt-box-badge-border-radius,var(--prompt-box-badge-border-radius,4px));font-size:var(--luzmo-prompt-box-badge-font-size,var(--prompt-box-badge-font-size,.9em));font-weight:var(--luzmo-prompt-box-badge-font-weight,var(--prompt-box-badge-font-weight,500));cursor:default;-webkit-user-select:none;user-select:none;white-space:nowrap;max-width:var(--luzmo-prompt-box-badge-max-width,var(--prompt-box-badge-max-width,200px));margin:0 1px;line-height:1.4;display:inline-flex}.element-badge-icon{flex-shrink:0;display:inline-flex}.element-badge-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.element-badge-remove{appearance:none;font:inherit;color:inherit;width:var(--luzmo-prompt-box-badge-remove-size,var(--prompt-box-badge-remove-size,14px));height:var(--luzmo-prompt-box-badge-remove-size,var(--prompt-box-badge-remove-size,14px));font-size:var(--luzmo-prompt-box-badge-remove-font-size,var(--prompt-box-badge-remove-font-size,12px));cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;line-height:1;transition:opacity .1s,background-color .1s;display:inline-flex}.element-badge-remove:hover{opacity:1;background-color:var(--luzmo-prompt-box-badge-remove-hover-background,var(--prompt-box-badge-remove-hover-background,#0000001a))}.element-badge-remove:focus-visible{opacity:1;outline:2px solid var(--luzmo-primary,#0064fa);outline-offset:1px}:host([single-line]) .container{align-items:center;gap:var(--luzmo-prompt-box-single-line-gap,var(--prompt-box-single-line-gap));flex-flow:wrap}:host([single-line]) .top-actions{flex-wrap:nowrap;flex-shrink:0}:host([single-line]) .attachments{max-height:var(--luzmo-prompt-box-single-line-attachments-max-height,var(--prompt-box-single-line-attachments-max-height));flex-direction:row;flex-shrink:0;align-items:center;overflow:auto hidden}:host([single-line]) .image-attachment,:host([single-line]) .file-attachment{width:var(--luzmo-prompt-box-single-line-image-size,var(--prompt-box-single-line-image-size));height:var(--luzmo-prompt-box-single-line-image-size,var(--prompt-box-single-line-image-size))}:host([single-line]) .file-attachment-icon{--luzmo-icon-size:var(--luzmo-prompt-box-single-line-file-icon-size,var(--prompt-box-single-line-file-icon-size,14px))}:host([single-line]) .input-wrapper{min-width:0}:host([single-line]) .input-field{--luzmo-text-area-min-block-size-quiet:auto;--luzmo-text-field-spacing-block-start:0px;--luzmo-text-field-spacing-block-end:0px}:host([single-line]) .rich-input{min-height:unset;padding:0}:host([single-line]) .actions-row{flex-shrink:0}:host([single-line]) .bottom-actions{flex-wrap:nowrap;flex:0}:host([single-line]) .error:not(.empty){flex-basis:100%;order:1;inline-size:100%}::slotted([slot=top-actions]),::slotted([slot=bottom-actions]){align-items:center;display:inline-flex}::slotted([slot=record-button]){display:inline-flex}::slotted([slot=submit-button]){margin-inline-start:var(--luzmo-prompt-box-submit-button-margin-inline-start,var(--prompt-box-submit-button-margin-inline-start));display:inline-flex}luzmo-overlay[part=trigger-menu-overlay]{--luzmo-overlay-min-width:0}.trigger-options{min-width:var(--luzmo-prompt-box-trigger-menu-min-width,var(--prompt-box-trigger-menu-min-width,250px));max-width:var(--luzmo-prompt-box-trigger-menu-max-width,var(--prompt-box-trigger-menu-max-width,400px));max-height:var(--luzmo-prompt-box-trigger-menu-max-height,var(--prompt-box-trigger-menu-max-height,300px));flex-direction:column;display:flex;overflow-y:auto}.trigger-options::-webkit-scrollbar{width:var(--luzmo-prompt-box-scrollbar-width,var(--prompt-box-scrollbar-width));height:var(--luzmo-prompt-box-scrollbar-width,var(--prompt-box-scrollbar-width))}.trigger-options::-webkit-scrollbar-track{background:var(--luzmo-prompt-box-scrollbar-track-background,var(--prompt-box-scrollbar-track-background));border-radius:var(--luzmo-prompt-box-scrollbar-track-border-radius,var(--prompt-box-scrollbar-track-border-radius))}.trigger-options::-webkit-scrollbar-thumb{background:var(--luzmo-prompt-box-scrollbar-thumb-background,var(--prompt-box-scrollbar-thumb-background));border-radius:var(--luzmo-prompt-box-scrollbar-thumb-border-radius,var(--prompt-box-scrollbar-thumb-border-radius))}.trigger-options::-webkit-scrollbar-thumb:hover{background:var(--luzmo-prompt-box-scrollbar-thumb-hover-background,var(--prompt-box-scrollbar-thumb-hover-background))}.trigger-options{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-prompt-box-scrollbar-thumb-background,var(--prompt-box-scrollbar-thumb-background)) var(--luzmo-prompt-box-scrollbar-track-background,var(--prompt-box-scrollbar-track-background));background-color:var(--luzmo-prompt-box-trigger-menu-background,var(--prompt-box-trigger-menu-background,var(--luzmo-background-color,#fff)));border:1px solid var(--luzmo-prompt-box-trigger-menu-border-color,var(--prompt-box-trigger-menu-border-color,var(--luzmo-border-color,#0000001a)));border-radius:var(--luzmo-prompt-box-trigger-menu-border-radius,var(--prompt-box-trigger-menu-border-radius,var(--luzmo-border-radius-100,8px)));box-shadow:0 2px 8px var(--luzmo-prompt-box-trigger-menu-shadow-color,var(--prompt-box-trigger-menu-shadow-color,var(--luzmo-shadow-color)))}.trigger-option{align-items:center;gap:var(--luzmo-prompt-box-trigger-option-gap,var(--prompt-box-trigger-option-gap,10px));min-block-size:var(--luzmo-prompt-box-trigger-option-min-height,var(--prompt-box-trigger-option-min-height,var(--luzmo-component-height,32px)));padding-block:var(--luzmo-prompt-box-trigger-option-padding-block,var(--prompt-box-trigger-option-padding-block,4px));padding-inline:var(--luzmo-prompt-box-trigger-option-padding-inline,var(--prompt-box-trigger-option-padding-inline,10px));cursor:pointer;box-sizing:border-box;scroll-margin-block:var(--luzmo-prompt-box-trigger-option-min-height,var(--prompt-box-trigger-option-min-height,var(--luzmo-component-height,32px)));transition:background-color .1s;display:flex}.trigger-option.has-description{padding-block:var(--luzmo-prompt-box-trigger-option-description-padding-block,var(--prompt-box-trigger-option-description-padding-block,4px));min-block-size:auto}.trigger-option.hovered,.trigger-option.highlighted{background-color:var(--luzmo-prompt-box-trigger-option-background-hover,var(--prompt-box-trigger-option-background-hover,var(--luzmo-background-color-hover,#0000000f)))}.trigger-option-icon{width:var(--luzmo-prompt-box-trigger-option-icon-width,var(--prompt-box-trigger-option-icon-width,20px));color:var(--luzmo-prompt-box-trigger-option-icon-color,var(--prompt-box-trigger-option-icon-color,var(--luzmo-font-color,inherit)));font-size:var(--luzmo-prompt-box-trigger-option-icon-size,var(--prompt-box-trigger-option-icon-size,var(--luzmo-font-size,14px)));flex-shrink:0;justify-content:center;align-items:center;display:flex}.trigger-option-content{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.trigger-option-label{font-size:var(--luzmo-prompt-box-trigger-option-font-size,var(--prompt-box-trigger-option-font-size,var(--luzmo-font-size,14px)));line-height:var(--luzmo-prompt-box-trigger-option-line-height,var(--prompt-box-trigger-option-line-height,var(--luzmo-line-height,1.4)));color:var(--luzmo-prompt-box-trigger-option-color,var(--prompt-box-trigger-option-color,var(--luzmo-font-color,#333)));white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.trigger-option-description{font-size:var(--luzmo-prompt-box-trigger-option-description-font-size,var(--prompt-box-trigger-option-description-font-size,var(--luzmo-font-size-xs,12px)));line-height:var(--luzmo-prompt-box-trigger-option-description-line-height,var(--prompt-box-trigger-option-description-line-height,var(--luzmo-line-height,1.4)));color:var(--luzmo-prompt-box-trigger-option-description-color,var(--prompt-box-trigger-option-description-color,var(--luzmo-font-color,#6e6e6e)));white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.trigger-option-enter-icon{color:var(--luzmo-prompt-box-trigger-option-enter-icon-color,var(--prompt-box-trigger-option-enter-icon-color,var(--luzmo-font-color-dimmed,#0006)));flex-shrink:0;justify-content:center;align-items:center;margin-inline-start:auto;display:flex}.trigger-option-highlight{background-color:var(--luzmo-prompt-box-trigger-option-highlight-background,var(--prompt-box-trigger-option-highlight-background,rgba(var(--luzmo-primary-rgb,0, 100, 250), .12)));color:inherit;border-radius:2px;padding:0 1px}.trigger-option-header{align-items:center;gap:var(--luzmo-prompt-box-trigger-option-header-gap,var(--prompt-box-trigger-option-header-gap,10px));min-block-size:var(--luzmo-prompt-box-trigger-option-min-height,var(--prompt-box-trigger-option-min-height,var(--luzmo-component-height,32px)));padding-block:var(--luzmo-prompt-box-trigger-option-header-padding-block,var(--prompt-box-trigger-option-header-padding-block,4px));padding-inline:var(--luzmo-prompt-box-trigger-option-header-padding-inline,var(--prompt-box-trigger-option-header-padding-inline,10px));background-color:var(--luzmo-prompt-box-trigger-option-header-background,var(--prompt-box-trigger-option-header-background));border-block-start:1px solid var(--luzmo-prompt-box-trigger-option-header-border-color,var(--prompt-box-trigger-option-header-border-color,var(--luzmo-border-color,#0000001f)));border-block-end:1px solid var(--luzmo-prompt-box-trigger-option-header-border-color,var(--prompt-box-trigger-option-header-border-color,var(--luzmo-border-color,#0000001f)));box-sizing:border-box;-webkit-user-select:none;user-select:none;display:flex}.trigger-options>.trigger-option-header:first-child{border-block-start:none}.trigger-option-header-icon{width:var(--luzmo-prompt-box-trigger-option-icon-width,var(--prompt-box-trigger-option-icon-width,20px));color:var(--luzmo-prompt-box-trigger-option-header-icon-color,var(--prompt-box-trigger-option-header-icon-color,var(--luzmo-font-color,#333)));flex-shrink:0;justify-content:center;align-items:center;display:flex}.trigger-option-header-label{font-size:var(--luzmo-prompt-box-trigger-option-header-font-size,var(--prompt-box-trigger-option-header-font-size,var(--luzmo-font-size,14px)));font-weight:var(--luzmo-prompt-box-trigger-option-header-font-weight,var(--prompt-box-trigger-option-header-font-weight,normal));line-height:var(--luzmo-prompt-box-trigger-option-header-line-height,var(--prompt-box-trigger-option-header-line-height,var(--luzmo-line-height,1.4)));color:var(--luzmo-prompt-box-trigger-option-header-color,var(--prompt-box-trigger-option-header-color,var(--luzmo-font-color,#333)));white-space:nowrap;text-overflow:ellipsis;overflow:hidden}luzmo-overlay[part=trigger-menu-overlay] ::slotted(*){min-width:var(--luzmo-prompt-box-trigger-menu-min-width,var(--prompt-box-trigger-menu-min-width,250px));max-height:var(--luzmo-prompt-box-trigger-menu-max-height,var(--prompt-box-trigger-menu-max-height,300px));visibility:visible!important;opacity:1!important;pointer-events:auto!important;position:relative!important}@media (forced-colors:active){:host{--highcontrast-prompt-box-background-color:Canvas;--highcontrast-prompt-box-border-color:CanvasText;--highcontrast-prompt-box-border-color-focus:Highlight;--highcontrast-prompt-box-text-color:CanvasText}}:host{--prompt-box-font-family:var(--luzmo-font-family);--prompt-box-font-size:var(--luzmo-font-size);--prompt-box-line-height:1.5;--prompt-box-text-color:var(--luzmo-font-color);--prompt-box-background-color:var(--luzmo-background-color);--prompt-box-border-radius:var(--luzmo-border-radius-xl);--prompt-box-border-width:var(--luzmo-border-width);--prompt-box-border-color:var(--luzmo-border-color);--prompt-box-border-color-focus:var(--luzmo-primary);--prompt-box-shadow:0 2px 8px var(--luzmo-shadow-color);--prompt-box-shadow-focus:0 2px 12px rgba(var(--luzmo-primary-rgb), .15);--prompt-box-gap:var(--luzmo-spacing-5);--prompt-box-recording-gap:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--prompt-box-vertical-padding:var(--luzmo-spacing-4);--prompt-box-horizontal-padding:var(--luzmo-spacing-5);--prompt-box-actions-gap:var(--luzmo-spacing-3);--prompt-box-top-actions-gap:var(--luzmo-spacing-2);--prompt-box-bottom-actions-gap:var(--luzmo-spacing-2);--prompt-box-button-group-gap:var(--luzmo-spacing-2);--prompt-box-submit-button-margin-inline-start:var(--luzmo-spacing-3);--prompt-box-max-height:200px;--prompt-box-rich-input-padding:4px 0;--prompt-box-placeholder-color:var(--luzmo-font-color-extra-dimmed);--prompt-box-animation-duration:var(--luzmo-animation-duration,.15s);--prompt-box-disabled-opacity:.5;--prompt-box-error-color:var(--luzmo-negative-color);--prompt-box-error-font-size:var(--luzmo-font-size-s);--prompt-box-error-line-height:1.4;--prompt-box-attachments-gap:var(--luzmo-spacing-2);--prompt-box-image-preview-size:64px;--prompt-box-image-border-radius:var(--luzmo-border-radius);--prompt-box-image-background:#0000000d;--prompt-box-file-icon-size:var(--luzmo-icon-size-xl);--prompt-box-file-icon-color:var(--luzmo-font-color-extra-dimmed);--prompt-box-remove-button-size:20px;--prompt-box-remove-button-background:#00000080;--prompt-box-remove-button-background-hover:#000000b3;--prompt-box-remove-button-icon-color:#fff;--prompt-box-scrollbar-width:var(--luzmo-scrollbar-size);--prompt-box-scrollbar-track-background:var(--luzmo-scrollbar-track-background);--prompt-box-scrollbar-track-border-radius:var(--luzmo-scrollbar-track-border-radius);--prompt-box-scrollbar-thumb-background:var(--luzmo-scrollbar-thumb-background);--prompt-box-scrollbar-thumb-border-radius:var(--luzmo-scrollbar-thumb-border-radius);--prompt-box-scrollbar-thumb-hover-background:var(--luzmo-scrollbar-thumb-hover-background);--prompt-box-badge-gap:6px;--prompt-box-badge-padding:1px 6px;--prompt-box-badge-background:rgba(var(--luzmo-primary-rgb,0, 100, 250), .1);--prompt-box-badge-color:var(--luzmo-primary,#0064fa);--prompt-box-badge-border-radius:4px;--prompt-box-badge-font-size:.9em;--prompt-box-badge-font-weight:500;--prompt-box-badge-max-width:200px;--prompt-box-badge-remove-size:14px;--prompt-box-badge-remove-font-size:12px;--prompt-box-badge-remove-hover-background:#0000001a;--prompt-box-waveform-gap:3px;--prompt-box-waveform-height:24px;--prompt-box-waveform-bar-width:3px;--prompt-box-waveform-bar-color:currentColor;--prompt-box-waveform-bar-radius:2px;--prompt-box-recording-duration-font-family:monospace;--prompt-box-recording-duration-font-size:14px;--prompt-box-recording-duration-font-weight:500;--prompt-box-recording-duration-color:currentColor;--prompt-box-trigger-menu-min-width:250px;--prompt-box-trigger-menu-max-width:300px;--prompt-box-trigger-menu-max-height:300px;--prompt-box-trigger-menu-background:var(--luzmo-background-color,#fff);--prompt-box-trigger-menu-border-color:var(--luzmo-border-color,#0000001a);--prompt-box-trigger-menu-border-radius:var(--luzmo-border-radius-100,8px);--prompt-box-trigger-menu-shadow-color:var(--luzmo-shadow-color);--prompt-box-single-line-gap:var(--luzmo-spacing-3);--prompt-box-single-line-attachments-max-height:32px;--prompt-box-single-line-image-size:28px;--prompt-box-single-line-file-icon-size:var(--luzmo-icon-size-s);--prompt-box-trigger-option-gap:10px;--prompt-box-trigger-option-min-height:var(--luzmo-component-height,32px);--prompt-box-trigger-option-padding-block:4px;--prompt-box-trigger-option-padding-inline:10px;--prompt-box-trigger-option-description-padding-block:4px;--prompt-box-trigger-option-background-hover:var(--luzmo-background-color-highlight,#f5f5f5);--prompt-box-trigger-option-icon-color:var(--luzmo-font-color,inherit);--prompt-box-trigger-option-icon-width:20px;--prompt-box-trigger-option-icon-size:var(--luzmo-font-size,14px);--prompt-box-trigger-option-font-size:var(--luzmo-font-size,14px);--prompt-box-trigger-option-line-height:var(--luzmo-line-height,1.4);--prompt-box-trigger-option-color:var(--luzmo-font-color,#333);--prompt-box-trigger-option-description-font-size:var(--luzmo-font-size-xs,12px);--prompt-box-trigger-option-description-line-height:var(--luzmo-line-height,1.4);--prompt-box-trigger-option-description-color:var(--luzmo-font-color,#6e6e6e);--prompt-box-trigger-option-enter-icon-color:var(--prompt-box-trigger-option-icon-color,var(--luzmo-font-color,inherit));--prompt-box-trigger-option-highlight-background:rgba(var(--luzmo-primary-rgb,0, 100, 250), .12);--prompt-box-trigger-option-header-gap:10px;--prompt-box-trigger-option-header-padding-block:4px;--prompt-box-trigger-option-header-padding-inline:10px;--prompt-box-trigger-option-header-background:var(--luzmo-background-color-highlight,#f5f5f5);--prompt-box-trigger-option-header-border-color:var(--luzmo-border-color,#0000001f);--prompt-box-trigger-option-header-icon-color:var(--luzmo-font-color,#333);--prompt-box-trigger-option-header-font-size:var(--luzmo-font-size,14px);--prompt-box-trigger-option-header-font-weight:normal;--prompt-box-trigger-option-header-line-height:var(--luzmo-line-height,1.4);--prompt-box-trigger-option-header-color:var(--luzmo-font-color,#333)}:host([size=xs]){--prompt-box-font-size:var(--luzmo-font-size-xs);--prompt-box-border-radius:var(--luzmo-border-radius);--prompt-box-vertical-padding:var(--luzmo-spacing-2);--prompt-box-horizontal-padding:var(--luzmo-spacing-3);--prompt-box-gap:var(--luzmo-spacing-3);--prompt-box-attachments-gap:var(--luzmo-spacing-1);--prompt-box-recording-gap:var(--luzmo-spacing-3);--prompt-box-max-height:120px;--prompt-box-image-preview-size:40px;--prompt-box-file-icon-size:var(--luzmo-icon-size-m);--prompt-box-remove-button-size:16px;--prompt-box-badge-font-size:.8em;--prompt-box-badge-padding:0px 3px;--prompt-box-badge-remove-size:10px;--prompt-box-badge-remove-font-size:9px}:host([size=s]){--prompt-box-font-size:var(--luzmo-font-size-s);--prompt-box-border-radius:var(--luzmo-border-radius-l);--prompt-box-vertical-padding:var(--luzmo-spacing-3);--prompt-box-horizontal-padding:var(--luzmo-spacing-4);--prompt-box-gap:var(--luzmo-spacing-4);--prompt-box-attachments-gap:var(--luzmo-spacing-1);--prompt-box-recording-gap:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--prompt-box-max-height:150px;--prompt-box-image-preview-size:48px;--prompt-box-file-icon-size:var(--luzmo-icon-size-l);--prompt-box-remove-button-size:18px;--prompt-box-badge-font-size:.85em;--prompt-box-badge-padding:0px 4px;--prompt-box-badge-remove-size:12px;--prompt-box-badge-remove-font-size:10px}:host([size=l]){--prompt-box-font-size:var(--luzmo-font-size-l);--prompt-box-border-radius:var(--luzmo-border-radius-xl);--prompt-box-vertical-padding:var(--luzmo-spacing-5);--prompt-box-horizontal-padding:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-1));--prompt-box-gap:var(--luzmo-spacing-4);--prompt-box-attachments-gap:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--prompt-box-recording-gap:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--prompt-box-max-height:250px;--prompt-box-image-preview-size:72px;--prompt-box-file-icon-size:var(--luzmo-icon-size-xxl);--prompt-box-remove-button-size:24px;--prompt-box-badge-font-size:.9em;--prompt-box-badge-padding:2px 8px;--prompt-box-badge-remove-size:16px;--prompt-box-badge-remove-font-size:13px}:host([size=xl]){--prompt-box-font-size:var(--luzmo-font-size-xl);--prompt-box-border-radius:var(--luzmo-border-radius-xl);--prompt-box-vertical-padding:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-1));--prompt-box-horizontal-padding:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-2));--prompt-box-gap:var(--luzmo-spacing-5);--prompt-box-attachments-gap:var(--luzmo-spacing-3);--prompt-box-max-height:300px;--prompt-box-image-preview-size:96px;--prompt-box-file-icon-size:var(--luzmo-icon-size-xxl);--prompt-box-remove-button-size:28px;--prompt-box-badge-font-size:.9em;--prompt-box-badge-padding:2px 10px;--prompt-box-badge-remove-size:18px;--prompt-box-badge-remove-font-size:14px}:host([pending]){--prompt-box-actions-opacity:.75}`,$=class extends r(o,{validSizes:[`xs`,`s`,`m`,`l`,`xl`],defaultSize:`m`}){constructor(...e){super(...e),this.rows=1,this.grows=!1,this.maxRows=-1,this.recording=!1,this.hideSubmit=!1,this.disableSubmit=!1,this.singleLine=!1,this.placeholder=``,this.value=``,this.disabled=!1,this.readonly=!1,this.maxlength=-1,this.pending=!1,this.stoppable=!1,this.allowImages=!1,this.allowFiles=!1,this.acceptedFileTypes=[],this.fileIcons={},this.removeAttachmentLabel=e=>`Remove ${e}`,this.allowElements=!1,this.acceptedElementTypes=[],this._hasTopActions=!1,this._hasBottomActions=!1,this._hasError=!1,this._hasRecordButton=!1,this._hasSubmitButton=!1,this._inputFocused=!1,this._attachments=new ne(this),this._recording=new b(this),this._richInput=new j(this),this._triggerMenu=new M(this),this.handleRecordButtonSlotChange=this._slotPresenceHandler(e=>this._hasRecordButton=e),this.handleSubmitButtonSlotChange=this._slotPresenceHandler(e=>this._hasSubmitButton=e),this.handleRecordClick=e=>{let t=e.currentTarget.matches(`:focus-visible`);this._recording.start(t)},this.handleAttachmentRemoveClick=e=>{let t=e.currentTarget.dataset.attachmentId;t&&this._attachments.removeAttachment(t)},this.handleInput=e=>{let t=e.target;this.value=t.value,this.dispatchEvent(new Event(`input`,{bubbles:!0,composed:!0}))},this.handleKeydown=e=>{if(e.key===`Enter`&&!e.shiftKey){if(e.preventDefault(),this.disableSubmit)return;this._submit()}},this.handleInputFocusIn=()=>{this._inputFocused=!0},this.handleInputFocusOut=()=>{this._inputFocused=!1},this.handleRichInputEvent=e=>{this._richInput.syncValue(),this._triggerMenu.handleInput(e),this.dispatchEvent(new Event(`input`,{bubbles:!0,composed:!0}))},this.handleRichKeydown=e=>{if(!this._triggerMenu.handleKeydown(e)){if(e.key===`Enter`&&!e.shiftKey){if(e.preventDefault(),this.disableSubmit)return;this._submit()}else(e.key===`Backspace`||e.key===`Delete`)&&this._richInput.handleBadgeDelete(e.key)&&e.preventDefault()}},this.handleStopClick=()=>{!this.disabled&&this.pending&&this.stoppable&&this.dispatchEvent(new CustomEvent(`luzmo-stop`,{bubbles:!0,composed:!0}))},this._handleComponentFocusIn=()=>{V()&&this.classList.add(`focus-visible`)},this._handleComponentFocusOut=e=>{let t=e.relatedTarget;t instanceof Node&&(this.contains(t)||this.shadowRoot?.contains(t))||this.classList.remove(`focus-visible`)},this._handlePaste=e=>{this.handlePastedImages(e.clipboardData)},this._handleTopActionsSlotChange=this._slotPresenceHandler(e=>this._hasTopActions=e),this._handleBottomActionsSlotChange=this._slotPresenceHandler(e=>this._hasBottomActions=e),this._handleErrorSlotChange=this._slotPresenceHandler(e=>this._hasError=e)}static get styles(){return[n(we)]}get triggers(){return this._triggerMenu.triggers}set triggers(e){let t=this._triggerMenu.triggers,n=Array.isArray(e)?e:[];n.length>0&&!this.allowElements&&console.warn("[luzmo-prompt-box] `triggers` only work when `allow-elements` / allowElements is enabled (rich input is required for trigger menus)."),this._triggerMenu.triggers=n,this.requestUpdate(`triggers`,t)}get attachmentsController(){return this._attachments}get recordingController(){return this._recording}get richInputController(){return this._richInput}get triggerMenuController(){return this._triggerMenu}get hasRecordButton(){return this._hasRecordButton}get hasSubmitButton(){return this._hasSubmitButton}get segments(){return this._richInput.getSegments()}set segments(e){this._richInput.setSegments(e)}connectedCallback(){super.connectedCallback(),z(),this.addEventListener(`focusin`,this._handleComponentFocusIn),this.addEventListener(`focusout`,this._handleComponentFocusOut),this.addEventListener(`paste`,this._handlePaste)}disconnectedCallback(){super.disconnectedCallback(),B(),this.removeEventListener(`focusin`,this._handleComponentFocusIn),this.removeEventListener(`focusout`,this._handleComponentFocusOut),this.removeEventListener(`paste`,this._handlePaste)}updated(e){super.updated(e),this._richInputElement&&(this._richInput.richInputElement=this._richInputElement,this._triggerMenu.richInputElement=this._richInputElement),(e.has(`pending`)||e.has(`disabled`))&&Se(this.shadowRoot,this.disabled,this.pending),this._recording.shouldFocusFinishButton&&this._recording.isRecording&&(this._recording.shouldFocusFinishButton=!1,requestAnimationFrame(()=>{this._finishRecordingButton?.focus()}))}focus(){this.allowElements&&this._richInputElement?this._richInputElement.focus():this._inputElement?.focus()}clear(){this._triggerMenu.close(),this.value=``,this._attachments.clearAttachments(),this.allowElements&&this._richInput.clearElements()}addFiles(e){return this._attachments.addFiles(e)}removeAttachment(e){this._attachments.removeAttachment(e)}setAttachmentLoading(e,t){this._attachments.setAttachmentLoading(e,t)}clearAttachments(){this._attachments.clearAttachments()}getAttachments(){return this._attachments.getAttachments()}openFilePicker(){this._fileInput?.click()}insertElement(e,t,n,r){return this._richInput.insertElement(e,t,n,r)}removeElement(e){this._richInput.removeElement(e)}getElements(){return this._richInput.getElements()}getTopActions(){return(this.shadowRoot?.querySelector(`slot[name="top-actions"]`))?.assignedElements()??[]}getBottomActions(){return(this.shadowRoot?.querySelector(`slot[name="bottom-actions"]`))?.assignedElements()??[]}submit(){this._submit()}selectTriggerOption(e){this._triggerMenu.selectOption(e)}highlightTriggerOption(e){this._triggerMenu.highlightedIndex=e,this.requestUpdate()}_slotPresenceHandler(e){return t=>{let n=t.target;e(n.assignedNodes().length>0)}}handlePastedImages(e){return this._attachments.handlePastedImages(e)}_submit(){if(this.disabled||this.readonly||this.pending||this.disableSubmit)return;let e=this.shadowRoot?.querySelector(`slot[name="top-actions"]`),t=this.shadowRoot?.querySelector(`slot[name="bottom-actions"]`),n=e?.assignedElements()??[],r=t?.assignedElements()??[],i=Ce([...n,...r]),a={value:this.value,segments:this.segments,topActions:[...n],bottomActions:[...r],actionValues:i,attachments:[...this._attachments.getAttachments()]};this.dispatchEvent(new CustomEvent(`luzmo-submit`,{bubbles:!0,composed:!0,detail:a}))}render(){return e`
297
297
  ${xe(this)}
298
298
  <div
299
299
  class="container ${this._inputFocused?`input-focused`:``} ${this._richInput?.isDragOver?`drag-over`:``}"