@luzmo/analytics-components-kit 1.0.8-beta.5 → 1.0.8-beta.7

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 (333) hide show
  1. package/components/ai-chat/ai-chat-events.d.ts +19 -3
  2. package/components/ai-chat/ai-chat-request.d.ts +5 -0
  3. package/components/ai-chat/ai-chat.d.ts +24 -5
  4. package/components/ai-chat/ai-prompt-types.d.ts +17 -2
  5. package/components/ai-chat/helpers/agent-config.d.ts +12 -0
  6. package/components/ai-chat/helpers/elicitation-template.d.ts +18 -0
  7. package/components/ai-chat/index.cjs +1 -1
  8. package/components/ai-chat/index.d.ts +2 -1
  9. package/components/ai-chat/index.js +3 -3
  10. package/components/ai-chat/session/ai-chat-session-controller.d.ts +3 -0
  11. package/components/ai-chat/session/ai-chat-session-types.d.ts +19 -3
  12. package/components/ai-chat/session/ai-chat-session.d.ts +17 -1
  13. package/components/ai-chat/stream/chunk-extractors.d.ts +3 -1
  14. package/components/ai-chat/stream/index.d.ts +1 -0
  15. package/components/ai-chat/stream/types.d.ts +5 -1
  16. package/components/ai-chat/types.d.ts +24 -0
  17. package/components/ai-chat-CG-eIiBr.cjs +337 -0
  18. package/components/{ai-chat-CI9l8ZOE.js → ai-chat-CMc_9Oo2.js} +917 -694
  19. package/components/ai-interaction-textarea/index.cjs +1 -1
  20. package/components/ai-interaction-textarea/index.js +1 -1
  21. package/components/{ai-interaction-textarea-Crcz4rCV.cjs → ai-interaction-textarea-B6tZgh5k.cjs} +1 -1
  22. package/components/{ai-interaction-textarea-BbVH-aF4.js → ai-interaction-textarea-D9g9G0T1.js} +3 -3
  23. package/components/{area-chart-positioning.config-DT7OiLe4.js → area-chart-positioning.config-BEwDQj3T.js} +1 -1
  24. package/components/{area-chart-positioning.config-D8_KYS-h.cjs → area-chart-positioning.config-CS-5H8-C.cjs} +1 -1
  25. package/components/{bar-chart-positioning.config-FEwWvMF6.js → bar-chart-positioning.config-CBbTYesB.js} +1 -1
  26. package/components/{bar-chart-positioning.config-CnMHGk5K.cjs → bar-chart-positioning.config-DkIvwJI5.cjs} +1 -1
  27. package/components/{base-XtzYH7G4.cjs → base-D6QPZnpu.cjs} +1 -1
  28. package/components/{base-BkD2CWTy.js → base-DSeXdW9S.js} +1 -1
  29. package/components/{box-plot-positioning.config-DxRLb2qS.js → box-plot-positioning.config-CNC-RTwl.js} +1 -1
  30. package/components/{box-plot-positioning.config-Cij5pfeH.cjs → box-plot-positioning.config-o5D-mRFr.cjs} +1 -1
  31. package/components/{bubble-chart-positioning.config-CVnk6LlN.js → bubble-chart-positioning.config-3ilPXLpZ.js} +1 -1
  32. package/components/{bubble-chart-positioning.config-BmNR5EQH.cjs → bubble-chart-positioning.config-CtreNdST.cjs} +1 -1
  33. package/components/{bullet-chart-positioning.config-7sPWksMT.js → bullet-chart-positioning.config-CkFhShBk.js} +1 -1
  34. package/components/{bullet-chart-positioning.config-CNkU3bzI.cjs → bullet-chart-positioning.config-dHj3YrT_.cjs} +1 -1
  35. package/components/{choropleth-map-positioning.config-CljoQanM.cjs → choropleth-map-positioning.config-BSs-bRGv.cjs} +1 -1
  36. package/components/{choropleth-map-positioning.config-CuaL7fSP.js → choropleth-map-positioning.config-DOt86t59.js} +1 -1
  37. package/components/{circle-pack-chart-positioning.config-maqHu5T2.js → circle-pack-chart-positioning.config-BkFATJjC.js} +1 -1
  38. package/components/{circle-pack-chart-positioning.config-CiF6h2TX.cjs → circle-pack-chart-positioning.config-CVNdIYau.cjs} +1 -1
  39. package/components/{circular-gauge-positioning.config-e9_VgpRY.js → circular-gauge-positioning.config-BV2xb5TF.js} +1 -1
  40. package/components/{circular-gauge-positioning.config-BK2YSDr1.cjs → circular-gauge-positioning.config-SrbCaaOr.cjs} +1 -1
  41. package/components/{column-chart-positioning.config-DdiwInY-.cjs → column-chart-positioning.config-DTQe3h_H.cjs} +1 -1
  42. package/components/{column-chart-positioning.config-DpPXllzx.js → column-chart-positioning.config-T7juV3XT.js} +1 -1
  43. package/components/{combination-chart-positioning.config-D7c6z5j6.js → combination-chart-positioning.config-78C7wKnS.js} +1 -1
  44. package/components/{combination-chart-positioning.config-5Qnm4ZYG.cjs → combination-chart-positioning.config-BrSmdan-.cjs} +1 -1
  45. package/components/{conditional-number-positioning.config-Bmc5b4Hr.cjs → conditional-number-positioning.config-_9ySKU1z.cjs} +1 -1
  46. package/components/{conditional-number-positioning.config-BnMcO9mu.js → conditional-number-positioning.config-z_eEfpud.js} +1 -1
  47. package/components/data-field/index.cjs +1 -1
  48. package/components/data-field/index.js +1 -1
  49. package/components/{data-field-BmpgtPX8.cjs → data-field-9ZZFw68C.cjs} +1 -1
  50. package/components/{data-field-DTQxvpeM.js → data-field-D1WW_V0N.js} +3 -3
  51. package/components/data-field-level/index.cjs +1 -1
  52. package/components/data-field-level/index.js +1 -1
  53. package/components/{data-field-level-EOj5KvoG.js → data-field-level-DR_dXjnL.js} +1 -1
  54. package/components/{data-field-level-D0RZHwqF.cjs → data-field-level-Dc-EMhC3.cjs} +1 -1
  55. package/components/data-field-panel/index.cjs +1 -1
  56. package/components/data-field-panel/index.js +1 -1
  57. package/components/{data-field-panel-Bc_4pQwc.cjs → data-field-panel-DFA97_8o.cjs} +1 -1
  58. package/components/{data-field-panel-Dya_9wHn.js → data-field-panel-U-5Q-TRp.js} +3 -3
  59. package/components/data-fields-select/index.cjs +1 -1
  60. package/components/data-fields-select/index.js +1 -1
  61. package/components/{data-fields-select-2Da7XC6m.js → data-fields-select-BYhAzdA6.js} +1 -1
  62. package/components/{data-fields-select-D4Sxxb_Z.cjs → data-fields-select-BtXNFZy9.cjs} +1 -1
  63. package/components/dataset-selector-list/index.cjs +1 -1
  64. package/components/dataset-selector-list/index.js +1 -1
  65. package/components/{dataset-selector-list-m1XmVt8T.cjs → dataset-selector-list-BXg6DIKI.cjs} +1 -1
  66. package/components/{dataset-selector-list-CK9KzC1a.js → dataset-selector-list-q6qWA7B-.js} +1 -1
  67. package/components/dataset-selector-row/index.cjs +1 -1
  68. package/components/dataset-selector-row/index.js +1 -1
  69. package/components/{dataset-selector-row-gBQl1Bza.js → dataset-selector-row-ZKET7lVc.js} +2 -2
  70. package/components/{dataset-selector-row-B78ZLWQS.cjs → dataset-selector-row-bqwY3zaf.cjs} +1 -1
  71. package/components/{de-_-1hLVI0.js → de-C5CMIy08.js} +3 -0
  72. package/components/de-CdZnQbKI.cjs +20 -0
  73. package/components/display-settings/index.cjs +1 -1
  74. package/components/display-settings/index.js +1 -1
  75. package/components/{display-settings-DLWnhQe0.cjs → display-settings-BlMhlvVS.cjs} +1 -1
  76. package/components/{display-settings-DgOPeUie.js → display-settings-D_wBgzm1.js} +2 -2
  77. package/components/display-settings-binning/index.cjs +1 -1
  78. package/components/display-settings-binning/index.js +1 -1
  79. package/components/{display-settings-binning-CE4hmdtx.js → display-settings-binning-GIE6ww1Q.js} +2 -2
  80. package/components/{display-settings-binning-CYM7FpXw.cjs → display-settings-binning-HrXOdGwO.cjs} +1 -1
  81. package/components/display-settings-datetime/index.cjs +1 -1
  82. package/components/display-settings-datetime/index.js +1 -1
  83. package/components/{display-settings-datetime-h8CvoTZ8.cjs → display-settings-datetime-DNeLEl3L.cjs} +1 -1
  84. package/components/{display-settings-datetime-D4f_o6NK.js → display-settings-datetime-YS7_TUet.js} +2 -2
  85. package/components/display-settings-grand-totals/index.cjs +1 -1
  86. package/components/display-settings-grand-totals/index.js +1 -1
  87. package/components/{display-settings-grand-totals-CnP8P-cu.js → display-settings-grand-totals-Bt_ju8jp.js} +2 -2
  88. package/components/{display-settings-grand-totals-D0YsVbSs.cjs → display-settings-grand-totals-C-7s1Tyo.cjs} +1 -1
  89. package/components/display-settings-numeric/index.cjs +1 -1
  90. package/components/display-settings-numeric/index.js +1 -1
  91. package/components/{display-settings-numeric-DF4zjmZj.cjs → display-settings-numeric--uwJWzC1.cjs} +1 -1
  92. package/components/{display-settings-numeric-DyAFuYTz.js → display-settings-numeric-OHmktQsz.js} +2 -2
  93. package/components/display-settings-period-over-period/index.cjs +1 -1
  94. package/components/display-settings-period-over-period/index.js +1 -1
  95. package/components/{display-settings-period-over-period-B634a88N.js → display-settings-period-over-period-B1_IJjWK.js} +2 -2
  96. package/components/{display-settings-period-over-period-DXuRHg-1.cjs → display-settings-period-over-period-C4X8c-_R.cjs} +1 -1
  97. package/components/{donut-chart-positioning.config-BhIwOPI0.cjs → donut-chart-positioning.config-BY2TIeeY.cjs} +1 -1
  98. package/components/{donut-chart-positioning.config-Peq3v9qK.js → donut-chart-positioning.config-D34HegyZ.js} +1 -1
  99. package/components/es-7RD7O4q3.cjs +20 -0
  100. package/components/{es-Cdl4GvQt.js → es-BCur0-77.js} +3 -0
  101. package/components/{evolution-number-positioning.config-ClGlayIt.cjs → evolution-number-positioning.config-BBvULr59.cjs} +1 -1
  102. package/components/{evolution-number-positioning.config-e90XUBQG.js → evolution-number-positioning.config-CKzCTjdO.js} +1 -1
  103. package/components/filter-expression-picker/index.cjs +1 -1
  104. package/components/filter-expression-picker/index.js +1 -1
  105. package/components/{filter-expression-picker-COCoT5LG.cjs → filter-expression-picker-BOLyxG2r.cjs} +1 -1
  106. package/components/{filter-expression-picker-BPAwOijt.js → filter-expression-picker-DurfSgRY.js} +1 -1
  107. package/components/filter-item/index.cjs +1 -1
  108. package/components/filter-item/index.js +1 -1
  109. package/components/{filter-item-CbDbNmni.js → filter-item-C58zIpPh.js} +5 -5
  110. package/components/{filter-item-cyApfc9M.cjs → filter-item-obyHcs9f.cjs} +1 -1
  111. package/components/filter-parameter-picker/index.cjs +1 -1
  112. package/components/filter-parameter-picker/index.js +1 -1
  113. package/components/{filter-parameter-picker-CCd77cYS.js → filter-parameter-picker-BWNBc8BI.js} +1 -1
  114. package/components/{filter-parameter-picker-F68BatwD.cjs → filter-parameter-picker-DSYaE9Sv.cjs} +1 -1
  115. package/components/filter-value-picker/index.cjs +1 -1
  116. package/components/filter-value-picker/index.js +1 -1
  117. package/components/{filter-value-picker-DADia7jo.cjs → filter-value-picker-DYl_1pis.cjs} +1 -1
  118. package/components/filter-value-picker-datetime/index.cjs +1 -1
  119. package/components/filter-value-picker-datetime/index.js +1 -1
  120. package/components/{filter-value-picker-datetime-CuMmWJFV.cjs → filter-value-picker-datetime-BFbmCKs3.cjs} +1 -1
  121. package/components/{filter-value-picker-datetime-DM2K7Nrv.js → filter-value-picker-datetime-CP5__ua6.js} +1 -1
  122. package/components/filter-value-picker-hierarchy/index.cjs +1 -1
  123. package/components/filter-value-picker-hierarchy/index.js +1 -1
  124. package/components/{filter-value-picker-hierarchy-BQTrc0ZU.cjs → filter-value-picker-hierarchy-BTf992WX.cjs} +1 -1
  125. package/components/{filter-value-picker-hierarchy-W-a9ycWV.js → filter-value-picker-hierarchy-j0LRYW1c.js} +2 -2
  126. package/components/{filter-value-picker-CLUUhn1d.js → filter-value-picker-kzIrnmdp.js} +4 -4
  127. package/components/filter-value-picker-numeric/index.cjs +1 -1
  128. package/components/filter-value-picker-numeric/index.js +1 -1
  129. package/components/{filter-value-picker-numeric-DL5cqR8I.js → filter-value-picker-numeric-BmKmeOol.js} +1 -1
  130. package/components/{filter-value-picker-numeric-CXfgDZ4W.cjs → filter-value-picker-numeric-DJi0Utk_.cjs} +1 -1
  131. package/components/filters/index.cjs +1 -1
  132. package/components/filters/index.js +1 -1
  133. package/components/{filters-bruSosZt.js → filters-BddhKRZC.js} +2 -2
  134. package/components/{filters-Dj4mQklp.cjs → filters-Dx6g0xl9.cjs} +1 -1
  135. package/components/formula/index.cjs +1 -1
  136. package/components/formula/index.js +1 -1
  137. package/components/{formula-CbApVbw7.js → formula-BYx4gH6i.js} +2 -2
  138. package/components/{formula-DkANj6Hi.cjs → formula-cc2AaiLt.cjs} +1 -1
  139. package/components/{formula-codemirror-C_wCMc2M.js → formula-codemirror-CVzyYNLO.js} +4 -4
  140. package/components/{formula-codemirror-DGxXJYCi.cjs → formula-codemirror-EMK3MCNZ.cjs} +1 -1
  141. package/components/{formula-display-store-SkrNDfyG.js → formula-display-store-BPn9m5TL.js} +3 -3
  142. package/components/{formula-display-store-B2DUrVwh.cjs → formula-display-store-DER7C0GG.cjs} +1 -1
  143. package/components/formula-editor/index.cjs +1 -1
  144. package/components/formula-editor/index.js +3 -3
  145. package/components/{formula-editor-DX5FRb2v.js → formula-editor-BxoIkARr.js} +5 -5
  146. package/components/{formula-editor-Dv4UIAe_.cjs → formula-editor-CWKXcUTF.cjs} +1 -1
  147. package/components/formula-field/index.cjs +1 -1
  148. package/components/formula-field/index.js +1 -1
  149. package/components/{formula-field-CwnAHHpw.js → formula-field-BtvaOWki.js} +1 -1
  150. package/components/{formula-field-tJsQsXic.cjs → formula-field-CzS2pKJI.cjs} +1 -1
  151. package/components/{formula-input-base-6iVykYb0.cjs → formula-input-base-CvD0b2cO.cjs} +1 -1
  152. package/components/{formula-input-base-mKhAiYM0.js → formula-input-base-DVtGLoyA.js} +1 -1
  153. package/components/{fr-qv7EjBRo.js → fr-BnECl1nx.js} +3 -0
  154. package/components/fr-CGw2IwXh.cjs +20 -0
  155. package/components/{funnel-chart-positioning.config-PrEIQPXg.cjs → funnel-chart-positioning.config-BPSmV76y.cjs} +1 -1
  156. package/components/{funnel-chart-positioning.config-Havc4gNs.js → funnel-chart-positioning.config-CvhpE7rN.js} +1 -1
  157. package/components/{get-dataset-name-CIf7x0nh.js → get-dataset-name-D53TN7N9.js} +1 -1
  158. package/components/{get-dataset-name-BR_H1MNL.cjs → get-dataset-name-DYLdbEs-.cjs} +1 -1
  159. package/components/{groupings-BKSBZ34s.cjs → groupings-Bn9384Zw.cjs} +1 -1
  160. package/components/{groupings-CIVQITJp.js → groupings-BtmmUlPK.js} +1 -1
  161. package/components/{heat-map-positioning.config-CF6XNksR.js → heat-map-positioning.config-AOHTEJf7.js} +1 -1
  162. package/components/{heat-map-positioning.config-L91C9c0t.cjs → heat-map-positioning.config-CHDHFIo2.cjs} +1 -1
  163. package/components/{heat-table-positioning.config-BuH8txu-.cjs → heat-table-positioning.config-DCLE9cy4.cjs} +1 -1
  164. package/components/{heat-table-positioning.config-0YNV-Whw.js → heat-table-positioning.config-DprOfmlW.js} +1 -1
  165. package/components/{hexbin-map-positioning.config-wKi8qbMF.js → hexbin-map-positioning.config-BjxkoqGh.js} +1 -1
  166. package/components/{hexbin-map-positioning.config-Dx42tGRj.cjs → hexbin-map-positioning.config-BmLljWez.cjs} +1 -1
  167. package/components/index.cjs +1 -1
  168. package/components/index.js +67 -67
  169. package/components/interactive-viz-item/index.cjs +1 -1
  170. package/components/interactive-viz-item/index.js +1 -1
  171. package/components/{interactive-viz-item-DMOsdrLN.js → interactive-viz-item-DL5aqkvx.js} +5 -5
  172. package/components/{interactive-viz-item-YwkjBGtN.cjs → interactive-viz-item-DTr14-9-.cjs} +1 -1
  173. package/components/item-grid/index.cjs +1 -1
  174. package/components/item-grid/index.js +1 -1
  175. package/components/{item-grid-iYxxuvvA.js → item-grid-C_OTtv4T.js} +6 -6
  176. package/components/{item-grid-B1ColM8x.cjs → item-grid-CcwnD_u5.cjs} +4 -4
  177. package/components/item-option/index.cjs +1 -1
  178. package/components/item-option/index.js +1 -1
  179. package/components/{item-option-BIWC5VRT.js → item-option-DRWLN89_.js} +1 -1
  180. package/components/item-option-action-button-group/index.cjs +1 -1
  181. package/components/item-option-action-button-group/index.js +1 -1
  182. package/components/{item-option-action-button-group-TPUU3sts.js → item-option-action-button-group-B9ghoHeh.js} +1 -1
  183. package/components/{item-option-action-button-group-Dq6xKpHi.cjs → item-option-action-button-group-Byg9h7uo.cjs} +1 -1
  184. package/components/{item-option-base-BKo7DBxK.cjs → item-option-base-Dwf3dByS.cjs} +1 -1
  185. package/components/{item-option-base-DcZILy3S.js → item-option-base-pYrkqt6q.js} +1 -1
  186. package/components/item-option-color-palette-picker/index.cjs +1 -1
  187. package/components/item-option-color-palette-picker/index.js +1 -1
  188. package/components/{item-option-color-palette-picker-i6Tnv4qN.js → item-option-color-palette-picker-DnVqGnm4.js} +1 -1
  189. package/components/{item-option-color-palette-picker-C_Jx5Prb.cjs → item-option-color-palette-picker-v6TBE-I0.cjs} +1 -1
  190. package/components/item-option-color-picker/index.cjs +1 -1
  191. package/components/item-option-color-picker/index.js +1 -1
  192. package/components/{item-option-color-picker-Co3iTjwo.cjs → item-option-color-picker-CNkNZ1p-.cjs} +1 -1
  193. package/components/{item-option-color-picker-BSXsKzZ-.js → item-option-color-picker-CO-OAFOs.js} +1 -1
  194. package/components/item-option-color-range/index.cjs +1 -1
  195. package/components/item-option-color-range/index.js +1 -1
  196. package/components/{item-option-color-range-CUYGCwQG.cjs → item-option-color-range-BveD6fsp.cjs} +1 -1
  197. package/components/{item-option-color-range-DE8-UNxr.js → item-option-color-range-bdYUxgQ9.js} +1 -1
  198. package/components/item-option-guidelines/index.cjs +1 -1
  199. package/components/item-option-guidelines/index.js +1 -1
  200. package/components/{item-option-guidelines-DWdPS45K.js → item-option-guidelines-Ce88dTV-.js} +3 -3
  201. package/components/{item-option-guidelines-DUjfN-eB.cjs → item-option-guidelines-D8UjylMx.cjs} +1 -1
  202. package/components/{item-option-Cz10G9yw.cjs → item-option-h8URFjZ2.cjs} +1 -1
  203. package/components/item-option-multi-language-field/index.cjs +1 -1
  204. package/components/item-option-multi-language-field/index.js +1 -1
  205. package/components/{item-option-multi-language-field-D5e36e1G.js → item-option-multi-language-field-0qfdBanp.js} +1 -1
  206. package/components/{item-option-multi-language-field-CWE9WrxP.cjs → item-option-multi-language-field-D0jRPAjY.cjs} +1 -1
  207. package/components/item-option-number-field/index.cjs +1 -1
  208. package/components/item-option-number-field/index.js +1 -1
  209. package/components/{item-option-number-field-BElZmdUU.js → item-option-number-field-CcEav5C3.js} +1 -1
  210. package/components/{item-option-number-field-RJ88VAyR.cjs → item-option-number-field-DYJ0eIf7.cjs} +1 -1
  211. package/components/item-option-panel/index.cjs +1 -1
  212. package/components/item-option-panel/index.js +1 -1
  213. package/components/{item-option-panel-BmaT4y_2.cjs → item-option-panel-6Voh87nt.cjs} +1 -1
  214. package/components/{item-option-panel-D7klHx03.js → item-option-panel-DrI7HYrY.js} +2 -2
  215. package/components/item-option-picker/index.cjs +1 -1
  216. package/components/item-option-picker/index.js +1 -1
  217. package/components/{item-option-picker-DnWKHPYS.js → item-option-picker-Bv4aGaCO.js} +1 -1
  218. package/components/{item-option-picker-C3M-7kWF.cjs → item-option-picker-DkEgfEE7.cjs} +1 -1
  219. package/components/item-option-position-picker/index.cjs +1 -1
  220. package/components/item-option-position-picker/index.js +1 -1
  221. package/components/{item-option-position-picker-CUTrYLPj.js → item-option-position-picker-1d7qZmDv.js} +1 -1
  222. package/components/{item-option-position-picker-B2qUrVJd.cjs → item-option-position-picker-CKgaqFJR.cjs} +1 -1
  223. package/components/item-option-positions-number-field/index.cjs +1 -1
  224. package/components/item-option-positions-number-field/index.js +1 -1
  225. package/components/{item-option-positions-number-field-EXPp_Vr4.cjs → item-option-positions-number-field-BJXer0y5.cjs} +1 -1
  226. package/components/{item-option-positions-number-field-B4zcS62B.js → item-option-positions-number-field-DUlBsbUL.js} +1 -1
  227. package/components/item-option-radio-button-group/index.cjs +1 -1
  228. package/components/item-option-radio-button-group/index.js +1 -1
  229. package/components/{item-option-radio-button-group-D8GbkHVX.cjs → item-option-radio-button-group-ChtTIO3B.cjs} +1 -1
  230. package/components/{item-option-radio-button-group-Cs1sSCVM.js → item-option-radio-button-group-DuMcIZvr.js} +1 -1
  231. package/components/item-option-slider/index.cjs +1 -1
  232. package/components/item-option-slider/index.js +1 -1
  233. package/components/{item-option-slider-Bo1ALP8q.cjs → item-option-slider-CBSnkHVq.cjs} +1 -1
  234. package/components/{item-option-slider-CcKLS-V5.js → item-option-slider-CWxRoAbA.js} +1 -1
  235. package/components/item-option-switch/index.cjs +1 -1
  236. package/components/item-option-switch/index.js +1 -1
  237. package/components/{item-option-switch-Ch6u9CAm.js → item-option-switch-DvMLATBO.js} +1 -1
  238. package/components/{item-option-switch-CpeC7Eh7.cjs → item-option-switch-dO66fjoD.cjs} +1 -1
  239. package/components/item-option-text-field/index.cjs +1 -1
  240. package/components/item-option-text-field/index.js +1 -1
  241. package/components/{item-option-text-field-DAbQegOZ.js → item-option-text-field-DS-gn_Gc.js} +1 -1
  242. package/components/{item-option-text-field-BxvQAHf3.cjs → item-option-text-field-Furz80ho.cjs} +1 -1
  243. package/components/item-slot-drop/index.cjs +1 -1
  244. package/components/item-slot-drop/index.js +1 -1
  245. package/components/{item-slot-drop-DDffbp-i.js → item-slot-drop-DE90FDdS.js} +5 -5
  246. package/components/{item-slot-drop-mKhyjodt.cjs → item-slot-drop-f8jm-34W.cjs} +1 -1
  247. package/components/item-slot-drop-panel/index.cjs +1 -1
  248. package/components/item-slot-drop-panel/index.js +1 -1
  249. package/components/{item-slot-drop-panel-BtrZehGL.js → item-slot-drop-panel-CyfhbUlE.js} +39 -39
  250. package/components/{item-slot-drop-panel-CKXMQCyt.cjs → item-slot-drop-panel-DLqyYvKj.cjs} +1 -1
  251. package/components/item-slot-picker/index.cjs +1 -1
  252. package/components/item-slot-picker/index.js +1 -1
  253. package/components/{item-slot-picker-CWqeOJ8R.js → item-slot-picker-BM03UNRE.js} +6 -6
  254. package/components/{item-slot-picker-CwMjRpkT.cjs → item-slot-picker-CgEtqhqe.cjs} +1 -1
  255. package/components/item-slot-picker-panel/index.cjs +1 -1
  256. package/components/item-slot-picker-panel/index.js +1 -1
  257. package/components/{item-slot-picker-panel-C6Hpc2rT.cjs → item-slot-picker-panel-CuH3OcmV.cjs} +1 -1
  258. package/components/{item-slot-picker-panel-cD3DvPbA.js → item-slot-picker-panel-DPaabfv5.js} +3 -3
  259. package/components/{line-chart-positioning.config-ZZid30rm.cjs → line-chart-positioning.config-BnDYCjGX.cjs} +1 -1
  260. package/components/{line-chart-positioning.config-DoHg1rwA.js → line-chart-positioning.config-CPGyHeJF.js} +1 -1
  261. package/components/{localized-mixin-DZFYG6RG.cjs → localized-mixin-CtNoCjjI.cjs} +1 -1
  262. package/components/{localized-mixin-CSF-kZFt.js → localized-mixin-DBUkUh0o.js} +1 -1
  263. package/components/{marker-map-positioning.config-DGZWoFAk.cjs → marker-map-positioning.config-Bq1EPg3J.cjs} +1 -1
  264. package/components/{marker-map-positioning.config-DX6bFQld.js → marker-map-positioning.config-CBERtxkG.js} +1 -1
  265. package/components/nl-BnzS_ZtB.cjs +20 -0
  266. package/components/{nl-MWgzbW0R.js → nl-h9vVAk2e.js} +3 -0
  267. package/components/{ohlc-chart-positioning.config-DaEUcXBJ.js → ohlc-chart-positioning.config-CpPJyyLB.js} +1 -1
  268. package/components/{ohlc-chart-positioning.config-Bev8Atsx.cjs → ohlc-chart-positioning.config-aCf-SEt7.cjs} +1 -1
  269. package/components/{parallel-coordinates-plot-positioning.config-DJ7K-dVp.cjs → parallel-coordinates-plot-positioning.config-D1CB7jOv.cjs} +1 -1
  270. package/components/{parallel-coordinates-plot-positioning.config-NWEEOd4d.js → parallel-coordinates-plot-positioning.config-DsNDp1G7.js} +1 -1
  271. package/components/{pivot-table-positioning.config-DpMiUVtd.js → pivot-table-positioning.config-BFWS3Yk_.js} +1 -1
  272. package/components/{pivot-table-positioning.config-U-M08Rwc.cjs → pivot-table-positioning.config-gBHM1_-K.cjs} +1 -1
  273. package/components/{pyramid-chart-positioning.config-CZwx_f40.js → pyramid-chart-positioning.config-B8dbZhvt.js} +1 -1
  274. package/components/{pyramid-chart-positioning.config-BpdI6jmg.cjs → pyramid-chart-positioning.config-DD64vCwl.cjs} +1 -1
  275. package/components/{radar-chart-positioning.config-IFacftgi.js → radar-chart-positioning.config-C2DWQu8V.js} +1 -1
  276. package/components/{radar-chart-positioning.config-IcaEKe9Q.cjs → radar-chart-positioning.config-DN51_Tzb.cjs} +1 -1
  277. package/components/{route-map-positioning.config-CHfz0eM_.js → route-map-positioning.config-D7X6QuWY.js} +1 -1
  278. package/components/{route-map-positioning.config-DKZvRmfJ.cjs → route-map-positioning.config-ryk_dUkh.cjs} +1 -1
  279. package/components/{sankey-diagram-positioning.config-BaCoBJXV.js → sankey-diagram-positioning.config-A_7xM06n.js} +1 -1
  280. package/components/{sankey-diagram-positioning.config-DJaK2xJX.cjs → sankey-diagram-positioning.config-CJfGpnPS.cjs} +1 -1
  281. package/components/{scatter-plot-positioning.config-DaNI54rh.cjs → scatter-plot-positioning.config-Duao2ftU.cjs} +1 -1
  282. package/components/{scatter-plot-positioning.config-PC47tloI.js → scatter-plot-positioning.config-qpwrugRe.js} +1 -1
  283. package/components/{set-locale-v6POkwmC.cjs → set-locale-B-GvqA1H.cjs} +1 -1
  284. package/components/{set-locale-Jz3DhqaW.js → set-locale-CgCeLPlb.js} +4 -4
  285. package/components/{slicer-filter-positioning.config-DMqYOG9Z.js → slicer-filter-positioning.config-93hC7jID.js} +1 -1
  286. package/components/{slicer-filter-positioning.config-KANe71ep.cjs → slicer-filter-positioning.config-DxhC39ak.cjs} +1 -1
  287. package/components/slot-menu/index.cjs +1 -1
  288. package/components/slot-menu/index.js +1 -1
  289. package/components/{slot-menu-CWMA97fn.cjs → slot-menu-CPxyyKSe.cjs} +6 -6
  290. package/components/{slot-menu-Cwee5fNa.js → slot-menu-DHJtAZ5_.js} +16 -16
  291. package/components/slot-menu-list/index.cjs +1 -1
  292. package/components/slot-menu-list/index.js +1 -1
  293. package/components/{slot-menu-list-BEou0QhK.cjs → slot-menu-list-CeWcE4KK.cjs} +1 -1
  294. package/components/{slot-menu-list-De2q0GGZ.js → slot-menu-list-QltpaoWh.js} +1 -1
  295. package/components/{speedometer-chart-positioning.config-CYVK0VnJ.js → speedometer-chart-positioning.config-CZbwyYsk.js} +1 -1
  296. package/components/{speedometer-chart-positioning.config-DW3dJD7n.cjs → speedometer-chart-positioning.config-DtRG3-e5.cjs} +1 -1
  297. package/components/{spike-map-positioning.config-Dl-Uf_O6.cjs → spike-map-positioning.config-CevjyQ5F.cjs} +1 -1
  298. package/components/{spike-map-positioning.config-CfVFEygx.js → spike-map-positioning.config-LBqSYD2n.js} +1 -1
  299. package/components/{strip-plot-positioning.config-eJ5MbyBk.cjs → strip-plot-positioning.config-DF5VxzvB.cjs} +1 -1
  300. package/components/{strip-plot-positioning.config-BMNtb-to.js → strip-plot-positioning.config-cCdQxMM_.js} +1 -1
  301. package/components/{sunburst-chart-positioning.config-CJgmPm-9.cjs → sunburst-chart-positioning.config-CERBvfoF.cjs} +1 -1
  302. package/components/{sunburst-chart-positioning.config-BRWF7dVf.js → sunburst-chart-positioning.config-DmkZEexM.js} +1 -1
  303. package/components/{symbol-map-positioning.config-_8L-oDxW.js → symbol-map-positioning.config-BwG_G6He.js} +1 -1
  304. package/components/{symbol-map-positioning.config-ONSN27l9.cjs → symbol-map-positioning.config-DhYxG8RC.cjs} +1 -1
  305. package/components/{treemap-chart-positioning.config-DrCRoNzf.cjs → treemap-chart-positioning.config-BwrrXs4a.cjs} +1 -1
  306. package/components/{treemap-chart-positioning.config-Bggn7Mqz.js → treemap-chart-positioning.config-arjPT6b_.js} +1 -1
  307. package/components/utils/base.cjs +1 -1
  308. package/components/utils/base.js +2 -2
  309. package/components/{utils-B2Eqs5i5.js → utils-B_rE5b7a.js} +1 -1
  310. package/components/{utils-CNH9xGyk.cjs → utils-BwJNkc-z.cjs} +1 -1
  311. package/components/utils.cjs +1 -1
  312. package/components/utils.js +2 -2
  313. package/components/{venn-diagram-positioning.config-BoH0wNEM.js → venn-diagram-positioning.config-DSh3Ns9L.js} +1 -1
  314. package/components/{venn-diagram-positioning.config-B-prEVEc.cjs → venn-diagram-positioning.config-GGLCcrqp.cjs} +1 -1
  315. package/components/viz-item-menu/index.cjs +1 -1
  316. package/components/viz-item-menu/index.js +1 -1
  317. package/components/viz-item-menu/viz-item-menu.d.ts +3 -0
  318. package/components/{viz-item-menu-BUSjo6j_.js → viz-item-menu-B7yRaSAU.js} +2 -2
  319. package/components/{viz-item-menu-C-kpX-Ft.cjs → viz-item-menu-hLdU-02Q.cjs} +1 -1
  320. package/components/{wordcloud-chart-positioning.config-B6pvD7_a.js → wordcloud-chart-positioning.config-B8ZzwIdd.js} +1 -1
  321. package/components/{wordcloud-chart-positioning.config-BJi5SVYf.cjs → wordcloud-chart-positioning.config-Cxyhs6gk.cjs} +1 -1
  322. package/custom-elements.json +268 -5
  323. package/package.json +1 -1
  324. package/react/components/ai-chat.component.ts +2 -2
  325. package/react/esm/components/ai-chat.component.d.ts +2 -2
  326. package/react/esm/components/ai-chat.component.js +2 -2
  327. package/react/package.json +2 -2
  328. package/types/ai-chat.types.d.ts +9 -0
  329. package/components/ai-chat-7kHoMVeu.cjs +0 -321
  330. package/components/de-g8uRTFxZ.cjs +0 -20
  331. package/components/es-C3dhJP2H.cjs +0 -20
  332. package/components/fr-WdV_fXl_.cjs +0 -20
  333. package/components/nl-D3gRr88b.cjs +0 -20
@@ -17,8 +17,8 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- import { c as e, d as t, s as n, u as r } from "./ai-interaction-textarea-BbVH-aF4.js";
21
- import { i } from "./base-BkD2CWTy.js";
20
+ import { c as e, d as t, s as n, u as r } from "./ai-interaction-textarea-D9g9G0T1.js";
21
+ import { i } from "./base-DSeXdW9S.js";
22
22
  import { t as a } from "./decorate-DyMgX_Uh.js";
23
23
  import { msg as o } from "@lit/localize/lit-localize";
24
24
  import { luzmoEllipsisVertical as s, luzmoIcon as c, luzmoSpin as l } from "@luzmo/icons";
@@ -32,19 +32,22 @@ import { html as u, nothing as d, unsafeCSS as f } from "lit";
32
32
  import { property as p, state as m } from "lit/decorators.js";
33
33
  import { unsafeHTML as ee } from "lit/directives/unsafe-html.js";
34
34
  import "@luzmo/lucero/action-button";
35
+ import "@luzmo/lucero/question-box";
36
+ import { guard as h } from "lit/directives/guard.js";
37
+ import { keyed as te } from "lit/directives/keyed.js";
35
38
  //#region node_modules/dompurify/dist/purify.es.mjs
36
- function h(e, t) {
39
+ function ne(e, t) {
37
40
  this.v = e, this.k = t;
38
41
  }
39
- function g(e, t) {
42
+ function re(e, t) {
40
43
  (t == null || t > e.length) && (t = e.length);
41
44
  for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
42
45
  return r;
43
46
  }
44
- function te(e) {
47
+ function ie(e) {
45
48
  if (Array.isArray(e)) return e;
46
49
  }
47
- function ne(e, t) {
50
+ function ae(e, t) {
48
51
  var n = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
49
52
  if (n != null) {
50
53
  var r, i, a, o, s = [], c = !0, l = !1;
@@ -65,24 +68,24 @@ function ne(e, t) {
65
68
  return s;
66
69
  }
67
70
  }
68
- function re() {
71
+ function oe() {
69
72
  throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
70
73
  }
71
- function ie(e, t) {
72
- return te(e) || ne(e, t) || ae(e, t) || re();
74
+ function se(e, t) {
75
+ return ie(e) || ae(e, t) || ce(e, t) || oe();
73
76
  }
74
- function ae(e, t) {
77
+ function ce(e, t) {
75
78
  if (e) {
76
- if (typeof e == "string") return g(e, t);
79
+ if (typeof e == "string") return re(e, t);
77
80
  var n = {}.toString.call(e).slice(8, -1);
78
- return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? g(e, t) : void 0;
81
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? re(e, t) : void 0;
79
82
  }
80
83
  }
81
- function _(e) {
84
+ function g(e) {
82
85
  var t, n;
83
86
  function r(t, n) {
84
87
  try {
85
- var a = e[t](n), o = a.value, s = o instanceof h;
88
+ var a = e[t](n), o = a.value, s = o instanceof ne;
86
89
  Promise.resolve(s ? o.v : o).then(function(n) {
87
90
  if (s) {
88
91
  var c = t === "return" && o.k ? t : "next";
@@ -116,113 +119,113 @@ function _(e) {
116
119
  });
117
120
  }, typeof e.return != "function" && (this.return = void 0);
118
121
  }
119
- _.prototype[typeof Symbol == "function" && Symbol.asyncIterator || "@@asyncIterator"] = function() {
122
+ g.prototype[typeof Symbol == "function" && Symbol.asyncIterator || "@@asyncIterator"] = function() {
120
123
  return this;
121
- }, _.prototype.next = function(e) {
124
+ }, g.prototype.next = function(e) {
122
125
  return this._invoke("next", e);
123
- }, _.prototype.throw = function(e) {
126
+ }, g.prototype.throw = function(e) {
124
127
  return this._invoke("throw", e);
125
- }, _.prototype.return = function(e) {
128
+ }, g.prototype.return = function(e) {
126
129
  return this._invoke("return", e);
127
130
  };
128
- var oe = Object.entries, se = Object.setPrototypeOf, v = Object.isFrozen, ce = Object.getPrototypeOf, le = Object.getOwnPropertyDescriptor, y = Object.freeze, b = Object.seal, ue = Object.create, de = typeof Reflect < "u" && Reflect, fe = de.apply, pe = de.construct;
129
- y ||= function(e) {
131
+ var le = Object.entries, _ = Object.setPrototypeOf, ue = Object.isFrozen, de = Object.getPrototypeOf, fe = Object.getOwnPropertyDescriptor, v = Object.freeze, y = Object.seal, pe = Object.create, me = typeof Reflect < "u" && Reflect, he = me.apply, ge = me.construct;
132
+ v ||= function(e) {
130
133
  return e;
131
- }, b ||= function(e) {
134
+ }, y ||= function(e) {
132
135
  return e;
133
- }, fe ||= function(e, t) {
136
+ }, he ||= function(e, t) {
134
137
  var n = [...arguments].slice(2);
135
138
  return e.apply(t, n);
136
- }, pe ||= function(e) {
139
+ }, ge ||= function(e) {
137
140
  return new e(...[...arguments].slice(1));
138
141
  };
139
- var me = C(Array.prototype.forEach);
142
+ var _e = C(Array.prototype.forEach);
140
143
  Array.prototype.indexOf;
141
- var he = C(Array.prototype.lastIndexOf), ge = C(Array.prototype.pop), _e = C(Array.prototype.push);
144
+ var ve = C(Array.prototype.lastIndexOf), ye = C(Array.prototype.pop), be = C(Array.prototype.push);
142
145
  Array.prototype.slice;
143
- var ve = C(Array.prototype.splice), ye = Array.isArray, be = C(String.prototype.toLowerCase), xe = C(String.prototype.toString), Se = C(String.prototype.match), Ce = C(String.prototype.replace), we = C(String.prototype.indexOf), Te = C(String.prototype.trim), Ee = C(Number.prototype.toString), De = C(Boolean.prototype.toString), Oe = typeof BigInt > "u" ? null : C(BigInt.prototype.toString), ke = typeof Symbol > "u" ? null : C(Symbol.prototype.toString), x = C(Object.prototype.hasOwnProperty), Ae = C(Object.prototype.toString), S = C(RegExp.prototype.test), je = Me(TypeError);
146
+ var xe = C(Array.prototype.splice), Se = Array.isArray, Ce = C(String.prototype.toLowerCase), we = C(String.prototype.toString), Te = C(String.prototype.match), Ee = C(String.prototype.replace), De = C(String.prototype.indexOf), Oe = C(String.prototype.trim), ke = C(Number.prototype.toString), Ae = C(Boolean.prototype.toString), je = typeof BigInt > "u" ? null : C(BigInt.prototype.toString), Me = typeof Symbol > "u" ? null : C(Symbol.prototype.toString), b = C(Object.prototype.hasOwnProperty), Ne = C(Object.prototype.toString), x = C(RegExp.prototype.test), S = Pe(TypeError);
144
147
  function C(e) {
145
148
  return function(t) {
146
149
  t instanceof RegExp && (t.lastIndex = 0);
147
150
  var n = [...arguments].slice(1);
148
- return fe(e, t, n);
151
+ return he(e, t, n);
149
152
  };
150
153
  }
151
- function Me(e) {
154
+ function Pe(e) {
152
155
  return function() {
153
- return pe(e, [...arguments]);
156
+ return ge(e, [...arguments]);
154
157
  };
155
158
  }
156
159
  function w(e, t) {
157
- let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : be;
158
- if (se && se(e, null), !ye(t)) return e;
160
+ let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : Ce;
161
+ if (_ && _(e, null), !Se(t)) return e;
159
162
  let r = t.length;
160
163
  for (; r--;) {
161
164
  let i = t[r];
162
165
  if (typeof i == "string") {
163
166
  let e = n(i);
164
- e !== i && (v(t) || (t[r] = e), i = e);
167
+ e !== i && (ue(t) || (t[r] = e), i = e);
165
168
  }
166
169
  e[i] = !0;
167
170
  }
168
171
  return e;
169
172
  }
170
- function Ne(e) {
171
- for (let t = 0; t < e.length; t++) x(e, t) || (e[t] = null);
173
+ function T(e) {
174
+ for (let t = 0; t < e.length; t++) b(e, t) || (e[t] = null);
172
175
  return e;
173
176
  }
174
- function T(e) {
175
- let t = ue(null);
176
- for (let r of oe(e)) {
177
- var n = ie(r, 2);
177
+ function E(e) {
178
+ let t = pe(null);
179
+ for (let r of le(e)) {
180
+ var n = se(r, 2);
178
181
  let i = n[0], a = n[1];
179
- x(e, i) && (ye(a) ? t[i] = Ne(a) : a && typeof a == "object" && a.constructor === Object ? t[i] = T(a) : t[i] = a);
182
+ b(e, i) && (Se(a) ? t[i] = T(a) : a && typeof a == "object" && a.constructor === Object ? t[i] = E(a) : t[i] = a);
180
183
  }
181
184
  return t;
182
185
  }
183
- function Pe(e) {
186
+ function Fe(e) {
184
187
  switch (typeof e) {
185
188
  case "string": return e;
186
- case "number": return Ee(e);
187
- case "boolean": return De(e);
188
- case "bigint": return Oe ? Oe(e) : "0";
189
- case "symbol": return ke ? ke(e) : "Symbol()";
190
- case "undefined": return Ae(e);
189
+ case "number": return ke(e);
190
+ case "boolean": return Ae(e);
191
+ case "bigint": return je ? je(e) : "0";
192
+ case "symbol": return Me ? Me(e) : "Symbol()";
193
+ case "undefined": return Ne(e);
191
194
  case "function":
192
195
  case "object": {
193
- if (e === null) return Ae(e);
194
- let t = e, n = E(t, "toString");
196
+ if (e === null) return Ne(e);
197
+ let t = e, n = D(t, "toString");
195
198
  if (typeof n == "function") {
196
199
  let e = n(t);
197
- return typeof e == "string" ? e : Ae(e);
200
+ return typeof e == "string" ? e : Ne(e);
198
201
  }
199
- return Ae(e);
202
+ return Ne(e);
200
203
  }
201
- default: return Ae(e);
204
+ default: return Ne(e);
202
205
  }
203
206
  }
204
- function E(e, t) {
207
+ function D(e, t) {
205
208
  for (; e !== null;) {
206
- let n = le(e, t);
209
+ let n = fe(e, t);
207
210
  if (n) {
208
211
  if (n.get) return C(n.get);
209
212
  if (typeof n.value == "function") return C(n.value);
210
213
  }
211
- e = ce(e);
214
+ e = de(e);
212
215
  }
213
216
  function n() {
214
217
  return null;
215
218
  }
216
219
  return n;
217
220
  }
218
- function Fe(e) {
221
+ function Ie(e) {
219
222
  try {
220
- return S(e, ""), !0;
223
+ return x(e, ""), !0;
221
224
  } catch {
222
225
  return !1;
223
226
  }
224
227
  }
225
- var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr".split(".")), Le = y(/* @__PURE__ */ "svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern".split(".")), Re = y([
228
+ var Le = v(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr".split(".")), Re = v(/* @__PURE__ */ "svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern".split(".")), ze = v([
226
229
  "feBlend",
227
230
  "feColorMatrix",
228
231
  "feComponentTransfer",
@@ -248,7 +251,7 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
248
251
  "feSpotLight",
249
252
  "feTile",
250
253
  "feTurbulence"
251
- ]), ze = y([
254
+ ]), Be = v([
252
255
  "animate",
253
256
  "color-profile",
254
257
  "cursor",
@@ -271,7 +274,7 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
271
274
  "solidcolor",
272
275
  "unknown",
273
276
  "use"
274
- ]), Be = y(/* @__PURE__ */ "math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts".split(".")), Ve = y([
277
+ ]), Ve = v(/* @__PURE__ */ "math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts".split(".")), He = v([
275
278
  "maction",
276
279
  "maligngroup",
277
280
  "malignmark",
@@ -287,13 +290,13 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
287
290
  "annotation-xml",
288
291
  "mprescripts",
289
292
  "none"
290
- ]), He = y(["#text"]), Ue = y(/* @__PURE__ */ "accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.command.commandfor.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns".split(".")), We = y(/* @__PURE__ */ "accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dominant-baseline.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.pointer-events.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-orientation.text-rendering.textlength.type.u1.u2.unicode.values.vector-effect.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan".split(".")), Ge = y(/* @__PURE__ */ "accent.accentunder.align.bevelled.close.columnalign.columnlines.columnspacing.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lquote.lspace.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns".split(".")), Ke = y([
293
+ ]), Ue = v(["#text"]), We = v(/* @__PURE__ */ "accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.command.commandfor.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns".split(".")), Ge = v(/* @__PURE__ */ "accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dominant-baseline.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.pointer-events.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-orientation.text-rendering.textlength.type.u1.u2.unicode.values.vector-effect.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan".split(".")), Ke = v(/* @__PURE__ */ "accent.accentunder.align.bevelled.close.columnalign.columnlines.columnspacing.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lquote.lspace.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns".split(".")), qe = v([
291
294
  "xlink:href",
292
295
  "xml:id",
293
296
  "xlink:title",
294
297
  "xml:space",
295
298
  "xmlns:xlink"
296
- ]), qe = b(/{{[\w\W]*|^[\w\W]*}}/g), Je = b(/<%[\w\W]*|^[\w\W]*%>/g), Ye = b(/\${[\w\W]*/g), Xe = b(/^data-[\-\w.\u00B7-\uFFFF]+$/), Ze = b(/^aria-[\-\w]+$/), Qe = b(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i), $e = b(/^(?:\w+script|data):/i), et = b(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g), tt = b(/^html$/i), nt = b(/^[a-z][.\w]*(-[.\w]+)+$/i), rt = b(/<[/\w!]/g), it = b(/<[/\w]/g), at = b(/<\/no(script|embed|frames)/i), ot = b(/\/>/i), D = {
299
+ ]), Je = y(/{{[\w\W]*|^[\w\W]*}}/g), Ye = y(/<%[\w\W]*|^[\w\W]*%>/g), Xe = y(/\${[\w\W]*/g), Ze = y(/^data-[\-\w.\u00B7-\uFFFF]+$/), Qe = y(/^aria-[\-\w]+$/), $e = y(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i), et = y(/^(?:\w+script|data):/i), tt = y(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g), nt = y(/^html$/i), rt = y(/^[a-z][.\w]*(-[.\w]+)+$/i), it = y(/<[/\w!]/g), at = y(/<[/\w]/g), ot = y(/<\/no(script|embed|frames)/i), st = y(/\/>/i), O = {
297
300
  element: 1,
298
301
  attribute: 2,
299
302
  text: 3,
@@ -306,7 +309,7 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
306
309
  documentType: 10,
307
310
  documentFragment: 11,
308
311
  notation: 12
309
- }, st = [
312
+ }, ct = [
310
313
  "style",
311
314
  "script",
312
315
  "xmp",
@@ -315,14 +318,14 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
315
318
  "noframes",
316
319
  "plaintext",
317
320
  "noscript"
318
- ], ct = y(w({}, st)), lt = function() {
321
+ ], lt = v(w({}, ct)), ut = function() {
319
322
  let e = {};
320
- return me(st, (t) => {
321
- e[t] = b(RegExp("</" + t + "(?=[\\t\\n\\f\\r />])", "i"));
322
- }), y(e);
323
- }(), ut = function() {
323
+ return _e(ct, (t) => {
324
+ e[t] = y(RegExp("</" + t + "(?=[\\t\\n\\f\\r />])", "i"));
325
+ }), v(e);
326
+ }(), dt = function() {
324
327
  return typeof window > "u" ? null : window;
325
- }, dt = function(e, t) {
328
+ }, ft = function(e, t) {
326
329
  if (typeof e != "object" || typeof e.createPolicy != "function") return null;
327
330
  let n = null, r = "data-tt-policy-suffix";
328
331
  t && t.hasAttribute(r) && (n = t.getAttribute(r));
@@ -339,7 +342,7 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
339
342
  } catch {
340
343
  return console.warn("TrustedTypes policy " + i + " could not be created."), null;
341
344
  }
342
- }, ft = function() {
345
+ }, pt = function() {
343
346
  return {
344
347
  afterSanitizeAttributes: [],
345
348
  afterSanitizeElements: [],
@@ -351,60 +354,60 @@ var Ie = y(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
351
354
  uponSanitizeElement: [],
352
355
  uponSanitizeShadowNode: []
353
356
  };
354
- }, pt = function(e, t, n, r) {
355
- return x(e, t) && ye(e[t]) ? w(r.base ? T(r.base) : {}, e[t], r.transform) : n;
356
- }, mt = function(e, t, n) {
357
- let r = x(e, t) ? e[t] : void 0;
358
- return r && typeof r == "object" ? T(r) : n();
357
+ }, mt = function(e, t, n, r) {
358
+ return b(e, t) && Se(e[t]) ? w(r.base ? E(r.base) : {}, e[t], r.transform) : n;
359
+ }, ht = function(e, t, n) {
360
+ let r = b(e, t) ? e[t] : void 0;
361
+ return r && typeof r == "object" ? E(r) : n();
359
362
  };
360
- function ht() {
361
- let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : ut(), t = (e) => ht(e);
362
- if (t.version = "3.4.16", t.removed = [], !e || !e.document || e.document.nodeType !== D.document || !e.Element) return t.isSupported = !1, t;
363
+ function gt() {
364
+ let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : dt(), t = (e) => gt(e);
365
+ if (t.version = "3.4.16", t.removed = [], !e || !e.document || e.document.nodeType !== O.document || !e.Element) return t.isSupported = !1, t;
363
366
  let n = e.document, r = n, i = r.currentScript;
364
367
  e.DocumentFragment;
365
368
  let a = e.HTMLTemplateElement, o = e.Node, s = e.Element, c = e.NodeFilter;
366
369
  e.NamedNodeMap === void 0 && (e.NamedNodeMap || e.MozNamedAttrMap), e.HTMLFormElement;
367
- let l = e.DOMParser, u = e.trustedTypes, d = s.prototype, f = E(d, "cloneNode"), p = E(d, "remove"), m = E(d, "removeAttributeNode"), ee = E(d, "nextSibling"), h = E(d, "childNodes"), g = E(d, "parentNode"), te = E(d, "shadowRoot"), ne = E(d, "attributes"), re = o && o.prototype ? E(o.prototype, "nodeType") : null, ie = o && o.prototype ? E(o.prototype, "nodeName") : null, ae = o && o.prototype ? E(o.prototype, "ownerDocument") : null, _ = function(e) {
368
- return re ? re(e) : e.nodeType;
369
- }, se = function(e) {
370
- return ie ? ie(e) : e.nodeName;
370
+ let l = e.DOMParser, u = e.trustedTypes, d = s.prototype, f = D(d, "cloneNode"), p = D(d, "remove"), m = D(d, "removeAttributeNode"), ee = D(d, "nextSibling"), h = D(d, "childNodes"), te = D(d, "parentNode"), ne = D(d, "shadowRoot"), re = D(d, "attributes"), ie = o && o.prototype ? D(o.prototype, "nodeType") : null, ae = o && o.prototype ? D(o.prototype, "nodeName") : null, oe = o && o.prototype ? D(o.prototype, "ownerDocument") : null, se = function(e) {
371
+ return ie ? ie(e) : e.nodeType;
372
+ }, ce = function(e) {
373
+ return ae ? ae(e) : e.nodeName;
371
374
  };
372
375
  if (typeof a == "function") {
373
376
  let e = n.createElement("template");
374
377
  e.content && e.content.ownerDocument && (n = e.content.ownerDocument);
375
378
  }
376
- let v, ce = "", le, de = !1, fe = 0, pe = function() {
377
- if (fe > 0) throw je("A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the \"DOMPurify and Trusted Types\" section of the README.");
378
- }, Ee = function(e) {
379
- pe(), fe++;
379
+ let g, _ = "", ue, de = !1, fe = 0, me = function() {
380
+ if (fe > 0) throw S("A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the \"DOMPurify and Trusted Types\" section of the README.");
381
+ }, he = function(e) {
382
+ me(), fe++;
380
383
  try {
381
- return v.createHTML(e);
384
+ return g.createHTML(e);
382
385
  } finally {
383
386
  fe--;
384
387
  }
385
- }, De = function(e) {
386
- pe(), fe++;
388
+ }, ge = function(e) {
389
+ me(), fe++;
387
390
  try {
388
- return v.createScriptURL(e);
391
+ return g.createScriptURL(e);
389
392
  } finally {
390
393
  fe--;
391
394
  }
392
- }, Oe = function() {
393
- return de ||= (le = dt(u, i), !0), le;
394
- }, ke = n, Ae = ke.implementation, C = ke.createNodeIterator, Me = ke.createDocumentFragment, Ne = ke.getElementsByTagName, st = r.importNode, O = ft();
395
- t.isSupported = typeof oe == "function" && typeof g == "function" && Ae && Ae.createHTMLDocument !== void 0;
396
- let gt = qe, _t = Je, vt = Ye, yt = Xe, bt = Ze, k = $e, xt = et, A = nt, St = Qe, j = null, Ct = w({}, [
397
- ...Ie,
395
+ }, ke = function() {
396
+ return de ||= (ue = ft(u, i), !0), ue;
397
+ }, Ae = n, je = Ae.implementation, Me = Ae.createNodeIterator, Ne = Ae.createDocumentFragment, C = Ae.getElementsByTagName, Pe = r.importNode, T = pt();
398
+ t.isSupported = typeof le == "function" && typeof te == "function" && je && je.createHTMLDocument !== void 0;
399
+ let ct = Je, _t = Ye, vt = Xe, yt = Ze, bt = Qe, xt = et, St = tt, k = rt, Ct = $e, A = null, wt = w({}, [
398
400
  ...Le,
399
401
  ...Re,
400
- ...Be,
401
- ...He
402
- ]), M = null, wt = w({}, [
403
- ...Ue,
402
+ ...ze,
403
+ ...Ve,
404
+ ...Ue
405
+ ]), j = null, Tt = w({}, [
404
406
  ...We,
405
407
  ...Ge,
406
- ...Ke
407
- ]), N = Object.seal(ue(null, {
408
+ ...Ke,
409
+ ...qe
410
+ ]), M = Object.seal(pe(null, {
408
411
  tagNameCheck: {
409
412
  writable: !0,
410
413
  configurable: !1,
@@ -423,7 +426,7 @@ function ht() {
423
426
  enumerable: !0,
424
427
  value: !1
425
428
  }
426
- })), Tt = null, Et = null, P = Object.seal(ue(null, {
429
+ })), Et = null, Dt = null, N = Object.seal(pe(null, {
427
430
  tagCheck: {
428
431
  writable: !0,
429
432
  configurable: !1,
@@ -436,7 +439,7 @@ function ht() {
436
439
  enumerable: !0,
437
440
  value: null
438
441
  }
439
- })), Dt = !0, Ot = !0, kt = !1, At = !0, F = !1, I = !0, L = !1, jt = !1, Mt = null, Nt = null, Pt = !1, Ft = !1, It = !1, Lt = !1, Rt = !0, zt = !1, Bt = "user-content-", R = !0, Vt = !1, z = {}, Ht = null, Ut = w({}, /* @__PURE__ */ "annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp".split(".")), Wt = null, Gt = w({}, [
442
+ })), Ot = !0, kt = !0, At = !1, jt = !0, P = !1, F = !0, I = !1, Mt = !1, Nt = null, Pt = null, Ft = !1, L = !1, It = !1, Lt = !1, Rt = !0, zt = !1, Bt = "user-content-", Vt = !0, Ht = !1, R = {}, z = null, Ut = w({}, /* @__PURE__ */ "annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp".split(".")), Wt = null, Gt = w({}, [
440
443
  "audio",
441
444
  "video",
442
445
  "img",
@@ -462,73 +465,73 @@ function ht() {
462
465
  Jt,
463
466
  Yt,
464
467
  B
465
- ], xe), en = y([
468
+ ], we), en = v([
466
469
  "mi",
467
470
  "mo",
468
471
  "mn",
469
472
  "ms",
470
473
  "mtext"
471
- ]), tn = w({}, en), nn = y(["annotation-xml"]), rn = w({}, nn), an = w({}, [
474
+ ]), tn = w({}, en), nn = v(["annotation-xml"]), rn = w({}, nn), an = w({}, [
472
475
  "title",
473
476
  "style",
474
477
  "font",
475
478
  "a",
476
479
  "script"
477
- ]), V = null, on = ["application/xhtml+xml", "text/html"], H = null, sn = null, cn = n.createElement("form"), ln = function(e) {
480
+ ]), on = null, sn = ["application/xhtml+xml", "text/html"], V = null, cn = null, ln = n.createElement("form"), un = function(e) {
478
481
  return e instanceof RegExp || e instanceof Function;
479
- }, un = function() {
482
+ }, dn = function() {
480
483
  let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
481
- if (sn && sn === e) return;
482
- (!e || typeof e != "object") && (e = {}), e = T(e), V = on.indexOf(e.PARSER_MEDIA_TYPE) === -1 ? "text/html" : e.PARSER_MEDIA_TYPE, H = V === "application/xhtml+xml" ? xe : be, j = pt(e, "ALLOWED_TAGS", Ct, { transform: H }), M = pt(e, "ALLOWED_ATTR", wt, { transform: H }), Qt = pt(e, "ALLOWED_NAMESPACES", $t, { transform: xe }), Kt = pt(e, "ADD_URI_SAFE_ATTR", qt, {
483
- transform: H,
484
+ if (cn && cn === e) return;
485
+ (!e || typeof e != "object") && (e = {}), e = E(e), on = sn.indexOf(e.PARSER_MEDIA_TYPE) === -1 ? "text/html" : e.PARSER_MEDIA_TYPE, V = on === "application/xhtml+xml" ? we : Ce, A = mt(e, "ALLOWED_TAGS", wt, { transform: V }), j = mt(e, "ALLOWED_ATTR", Tt, { transform: V }), Qt = mt(e, "ALLOWED_NAMESPACES", $t, { transform: we }), Kt = mt(e, "ADD_URI_SAFE_ATTR", qt, {
486
+ transform: V,
484
487
  base: qt
485
- }), Wt = pt(e, "ADD_DATA_URI_TAGS", Gt, {
486
- transform: H,
488
+ }), Wt = mt(e, "ADD_DATA_URI_TAGS", Gt, {
489
+ transform: V,
487
490
  base: Gt
488
- }), Ht = pt(e, "FORBID_CONTENTS", Ut, { transform: H }), Tt = pt(e, "FORBID_TAGS", T({}), { transform: H }), Et = pt(e, "FORBID_ATTR", T({}), { transform: H }), z = x(e, "USE_PROFILES") ? e.USE_PROFILES && typeof e.USE_PROFILES == "object" ? T(e.USE_PROFILES) : e.USE_PROFILES : !1, Dt = e.ALLOW_ARIA_ATTR !== !1, Ot = e.ALLOW_DATA_ATTR !== !1, kt = e.ALLOW_UNKNOWN_PROTOCOLS || !1, At = e.ALLOW_SELF_CLOSE_IN_ATTR !== !1, F = e.SAFE_FOR_TEMPLATES || !1, I = e.SAFE_FOR_XML !== !1, L = e.WHOLE_DOCUMENT || !1, Ft = e.RETURN_DOM || !1, It = e.RETURN_DOM_FRAGMENT || !1, Lt = e.RETURN_TRUSTED_TYPE || !1, Pt = e.FORCE_BODY || !1, Rt = e.SANITIZE_DOM !== !1, zt = e.SANITIZE_NAMED_PROPS || !1, R = e.KEEP_CONTENT !== !1, Vt = e.IN_PLACE || !1, St = Fe(e.ALLOWED_URI_REGEXP) ? e.ALLOWED_URI_REGEXP : Qe, Xt = typeof e.NAMESPACE == "string" ? e.NAMESPACE : B, tn = mt(e, "MATHML_TEXT_INTEGRATION_POINTS", () => w({}, en)), rn = mt(e, "HTML_INTEGRATION_POINTS", () => w({}, nn));
489
- let t = mt(e, "CUSTOM_ELEMENT_HANDLING", () => ue(null));
490
- if (N = ue(null), x(t, "tagNameCheck") && ln(t.tagNameCheck) && (N.tagNameCheck = t.tagNameCheck), x(t, "attributeNameCheck") && ln(t.attributeNameCheck) && (N.attributeNameCheck = t.attributeNameCheck), x(t, "allowCustomizedBuiltInElements") && typeof t.allowCustomizedBuiltInElements == "boolean" && (N.allowCustomizedBuiltInElements = t.allowCustomizedBuiltInElements), b(N), F && (Ot = !1), It && (Ft = !0), z && (j = w({}, He), M = ue(null), z.html === !0 && (w(j, Ie), w(M, Ue)), z.svg === !0 && (w(j, Le), w(M, We), w(M, Ke)), z.svgFilters === !0 && (w(j, Re), w(M, We), w(M, Ke)), z.mathMl === !0 && (w(j, Be), w(M, Ge), w(M, Ke))), P.tagCheck = null, P.attributeCheck = null, x(e, "ADD_TAGS") && (typeof e.ADD_TAGS == "function" ? P.tagCheck = e.ADD_TAGS : ye(e.ADD_TAGS) && (j === Ct && (j = T(j)), w(j, e.ADD_TAGS, H))), x(e, "ADD_ATTR") && (typeof e.ADD_ATTR == "function" ? P.attributeCheck = e.ADD_ATTR : ye(e.ADD_ATTR) && (M === wt && (M = T(M)), w(M, e.ADD_ATTR, H))), x(e, "ADD_FORBID_CONTENTS") && ye(e.ADD_FORBID_CONTENTS) && (Ht === Ut && (Ht = T(Ht)), w(Ht, e.ADD_FORBID_CONTENTS, H)), R && (j["#text"] = !0), L && w(j, [
491
+ }), z = mt(e, "FORBID_CONTENTS", Ut, { transform: V }), Et = mt(e, "FORBID_TAGS", E({}), { transform: V }), Dt = mt(e, "FORBID_ATTR", E({}), { transform: V }), R = b(e, "USE_PROFILES") ? e.USE_PROFILES && typeof e.USE_PROFILES == "object" ? E(e.USE_PROFILES) : e.USE_PROFILES : !1, Ot = e.ALLOW_ARIA_ATTR !== !1, kt = e.ALLOW_DATA_ATTR !== !1, At = e.ALLOW_UNKNOWN_PROTOCOLS || !1, jt = e.ALLOW_SELF_CLOSE_IN_ATTR !== !1, P = e.SAFE_FOR_TEMPLATES || !1, F = e.SAFE_FOR_XML !== !1, I = e.WHOLE_DOCUMENT || !1, L = e.RETURN_DOM || !1, It = e.RETURN_DOM_FRAGMENT || !1, Lt = e.RETURN_TRUSTED_TYPE || !1, Ft = e.FORCE_BODY || !1, Rt = e.SANITIZE_DOM !== !1, zt = e.SANITIZE_NAMED_PROPS || !1, Vt = e.KEEP_CONTENT !== !1, Ht = e.IN_PLACE || !1, Ct = Ie(e.ALLOWED_URI_REGEXP) ? e.ALLOWED_URI_REGEXP : $e, Xt = typeof e.NAMESPACE == "string" ? e.NAMESPACE : B, tn = ht(e, "MATHML_TEXT_INTEGRATION_POINTS", () => w({}, en)), rn = ht(e, "HTML_INTEGRATION_POINTS", () => w({}, nn));
492
+ let t = ht(e, "CUSTOM_ELEMENT_HANDLING", () => pe(null));
493
+ if (M = pe(null), b(t, "tagNameCheck") && un(t.tagNameCheck) && (M.tagNameCheck = t.tagNameCheck), b(t, "attributeNameCheck") && un(t.attributeNameCheck) && (M.attributeNameCheck = t.attributeNameCheck), b(t, "allowCustomizedBuiltInElements") && typeof t.allowCustomizedBuiltInElements == "boolean" && (M.allowCustomizedBuiltInElements = t.allowCustomizedBuiltInElements), y(M), P && (kt = !1), It && (L = !0), R && (A = w({}, Ue), j = pe(null), R.html === !0 && (w(A, Le), w(j, We)), R.svg === !0 && (w(A, Re), w(j, Ge), w(j, qe)), R.svgFilters === !0 && (w(A, ze), w(j, Ge), w(j, qe)), R.mathMl === !0 && (w(A, Ve), w(j, Ke), w(j, qe))), N.tagCheck = null, N.attributeCheck = null, b(e, "ADD_TAGS") && (typeof e.ADD_TAGS == "function" ? N.tagCheck = e.ADD_TAGS : Se(e.ADD_TAGS) && (A === wt && (A = E(A)), w(A, e.ADD_TAGS, V))), b(e, "ADD_ATTR") && (typeof e.ADD_ATTR == "function" ? N.attributeCheck = e.ADD_ATTR : Se(e.ADD_ATTR) && (j === Tt && (j = E(j)), w(j, e.ADD_ATTR, V))), b(e, "ADD_FORBID_CONTENTS") && Se(e.ADD_FORBID_CONTENTS) && (z === Ut && (z = E(z)), w(z, e.ADD_FORBID_CONTENTS, V)), Vt && (A["#text"] = !0), I && w(A, [
491
494
  "html",
492
495
  "head",
493
496
  "body"
494
- ]), j.table && (w(j, ["tbody"]), delete Tt.tbody), e.TRUSTED_TYPES_POLICY) {
495
- if (typeof e.TRUSTED_TYPES_POLICY.createHTML != "function") throw je("TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.");
496
- if (typeof e.TRUSTED_TYPES_POLICY.createScriptURL != "function") throw je("TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.");
497
- let t = v;
498
- v = e.TRUSTED_TYPES_POLICY;
497
+ ]), A.table && (w(A, ["tbody"]), delete Et.tbody), e.TRUSTED_TYPES_POLICY) {
498
+ if (typeof e.TRUSTED_TYPES_POLICY.createHTML != "function") throw S("TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.");
499
+ if (typeof e.TRUSTED_TYPES_POLICY.createScriptURL != "function") throw S("TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.");
500
+ let t = g;
501
+ g = e.TRUSTED_TYPES_POLICY;
499
502
  try {
500
- ce = Ee("");
503
+ _ = he("");
501
504
  } catch (e) {
502
- throw v = t, e;
505
+ throw g = t, e;
503
506
  }
504
- } else e.TRUSTED_TYPES_POLICY === null ? (v = void 0, ce = "") : (v === void 0 && (v = Oe()), v && typeof ce == "string" && (ce = Ee("")));
505
- y && y(e), sn = e;
506
- }, dn = w({}, [
507
- ...Le,
507
+ } else e.TRUSTED_TYPES_POLICY === null ? (g = void 0, _ = "") : (g === void 0 && (g = ke()), g && typeof _ == "string" && (_ = he("")));
508
+ v && v(e), cn = e;
509
+ }, fn = w({}, [
508
510
  ...Re,
509
- ...ze
510
- ]), fn = w({}, [...Be, ...Ve]), pn = function(e, t, n) {
511
- return t.namespaceURI === B ? e === "svg" : t.namespaceURI === Jt ? e === "svg" && (n === "annotation-xml" || tn[n]) : !!dn[e];
512
- }, mn = function(e, t, n) {
513
- return t.namespaceURI === B ? e === "math" : t.namespaceURI === Yt ? e === "math" && rn[n] : !!fn[e];
511
+ ...ze,
512
+ ...Be
513
+ ]), pn = w({}, [...Ve, ...He]), mn = function(e, t, n) {
514
+ return t.namespaceURI === B ? e === "svg" : t.namespaceURI === Jt ? e === "svg" && (n === "annotation-xml" || tn[n]) : !!fn[e];
514
515
  }, hn = function(e, t, n) {
515
- return t.namespaceURI === Yt && !rn[n] || t.namespaceURI === Jt && !tn[n] ? !1 : !fn[e] && (an[e] || !dn[e]);
516
- }, gn = function(e) {
517
- let t = g(e);
516
+ return t.namespaceURI === B ? e === "math" : t.namespaceURI === Yt ? e === "math" && rn[n] : !!pn[e];
517
+ }, gn = function(e, t, n) {
518
+ return t.namespaceURI === Yt && !rn[n] || t.namespaceURI === Jt && !tn[n] ? !1 : !pn[e] && (an[e] || !fn[e]);
519
+ }, _n = function(e) {
520
+ let t = te(e);
518
521
  (!t || !t.tagName) && (t = {
519
522
  namespaceURI: Xt,
520
523
  tagName: "template"
521
524
  });
522
- let n = be(e.tagName), r = be(t.tagName);
523
- return Qt[e.namespaceURI] ? e.namespaceURI === Yt ? pn(n, t, r) : e.namespaceURI === Jt ? mn(n, t, r) : e.namespaceURI === B ? hn(n, t, r) : !!(V === "application/xhtml+xml" && Qt[e.namespaceURI]) : !1;
524
- }, U = function(e) {
525
- _e(t.removed, { element: e });
525
+ let n = Ce(e.tagName), r = Ce(t.tagName);
526
+ return Qt[e.namespaceURI] ? e.namespaceURI === Yt ? mn(n, t, r) : e.namespaceURI === Jt ? hn(n, t, r) : e.namespaceURI === B ? gn(n, t, r) : !!(on === "application/xhtml+xml" && Qt[e.namespaceURI]) : !1;
527
+ }, H = function(e) {
528
+ be(t.removed, { element: e });
526
529
  try {
527
- g(e).removeChild(e);
530
+ te(e).removeChild(e);
528
531
  } catch {
529
- if (p(e), !g(e)) throw je("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place");
532
+ if (p(e), !te(e)) throw S("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place");
530
533
  }
531
- }, W = function(e, t, n) {
534
+ }, vn = function(e, t, n) {
532
535
  try {
533
536
  m(e, t);
534
537
  } catch {
@@ -536,31 +539,31 @@ function ht() {
536
539
  e.removeAttribute(n);
537
540
  } catch {}
538
541
  }
539
- }, _n = function(e) {
540
- vn(e);
542
+ }, yn = function(e) {
543
+ xn(e);
541
544
  let t = h(e);
542
545
  if (t) {
543
546
  let e = [];
544
- me(t, (t) => {
545
- _e(e, t);
546
- }), me(e, (e) => {
547
+ _e(t, (t) => {
548
+ be(e, t);
549
+ }), _e(e, (e) => {
547
550
  try {
548
551
  p(e);
549
552
  } catch {}
550
553
  });
551
554
  }
552
- let n = ne(e);
555
+ let n = re(e);
553
556
  if (n) for (let t = n.length - 1; t >= 0; --t) {
554
557
  let r = n[t], i = r && r.name;
555
- typeof i == "string" && W(e, r, i);
558
+ typeof i == "string" && vn(e, r, i);
556
559
  }
557
- }, G = function(e, n, r) {
560
+ }, U = function(e, n, r) {
558
561
  if (!r) try {
559
562
  r = n.getAttributeNode(e);
560
563
  } catch {
561
564
  r = null;
562
565
  }
563
- _e(t.removed, {
566
+ be(t.removed, {
564
567
  attribute: r || null,
565
568
  from: n
566
569
  });
@@ -571,112 +574,112 @@ function ht() {
571
574
  n.removeAttribute(e);
572
575
  } catch {}
573
576
  }
574
- if (e === "is") if (Ft || It) try {
575
- U(n);
577
+ if (e === "is") if (L || It) try {
578
+ H(n);
576
579
  } catch {}
577
580
  else try {
578
581
  n.setAttribute(e, "");
579
582
  } catch {}
580
- }, K = function(e) {
581
- let t = ne(e);
583
+ }, bn = function(e) {
584
+ let t = re(e);
582
585
  if (t) for (let n = t.length - 1; n >= 0; --n) {
583
586
  let r = t[n], i = r && r.name;
584
- typeof i != "string" || M[H(i)] || W(e, r, i);
587
+ typeof i != "string" || j[V(i)] || vn(e, r, i);
585
588
  }
586
- }, vn = function(e) {
589
+ }, xn = function(e) {
587
590
  let t = [e];
588
591
  for (; t.length > 0;) {
589
592
  let e = t.pop();
590
- _(e) === D.element && K(e);
593
+ se(e) === O.element && bn(e);
591
594
  let n = h(e);
592
595
  if (n) for (let e = n.length - 1; e >= 0; --e) t.push(n[e]);
593
596
  }
594
- }, yn = function(e, t) {
595
- return I ? e === "patchsrc" || e === "for" && t !== "label" && t !== "output" : !1;
596
- }, bn = function(e) {
597
- if (!I) return;
597
+ }, W = function(e, t) {
598
+ return F ? e === "patchsrc" || e === "for" && t !== "label" && t !== "output" : !1;
599
+ }, Sn = function(e) {
600
+ if (!F) return;
598
601
  let t = [e];
599
602
  for (; t.length > 0;) {
600
- let e = t.pop(), n = _(e);
601
- if (n === D.processingInstruction || n === D.comment && S(it, e.data)) {
603
+ let e = t.pop(), n = se(e);
604
+ if (n === O.processingInstruction || n === O.comment && x(at, e.data)) {
602
605
  try {
603
606
  p(e);
604
607
  } catch {}
605
608
  continue;
606
609
  }
607
- if (n === D.element) {
608
- let t = e, n = H(se(e));
610
+ if (n === O.element) {
611
+ let t = e, n = V(ce(e));
609
612
  try {
610
- t.hasAttribute && t.hasAttribute("patchsrc") && t.removeAttribute("patchsrc"), t.hasAttribute && t.hasAttribute("for") && yn("for", n) && t.removeAttribute("for");
613
+ t.hasAttribute && t.hasAttribute("patchsrc") && t.removeAttribute("patchsrc"), t.hasAttribute && t.hasAttribute("for") && W("for", n) && t.removeAttribute("for");
611
614
  } catch {}
612
615
  }
613
616
  let r = h(e);
614
617
  if (r) for (let e = r.length - 1; e >= 0; --e) t.push(r[e]);
615
618
  }
616
- }, xn = function(e) {
619
+ }, Cn = function(e) {
617
620
  let t = null, r = null;
618
- if (Pt) e = "<remove></remove>" + e;
621
+ if (Ft) e = "<remove></remove>" + e;
619
622
  else {
620
- let t = Se(e, /^[\r\n\t ]+/);
623
+ let t = Te(e, /^[\r\n\t ]+/);
621
624
  r = t && t[0];
622
625
  }
623
- V === "application/xhtml+xml" && Xt === B && (e = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body>" + e + "</body></html>");
624
- let i = v ? Ee(e) : e;
626
+ on === "application/xhtml+xml" && Xt === B && (e = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body>" + e + "</body></html>");
627
+ let i = g ? he(e) : e;
625
628
  if (Xt === B) try {
626
- t = new l().parseFromString(i, V);
629
+ t = new l().parseFromString(i, on);
627
630
  } catch {}
628
631
  if (!t || !t.documentElement) {
629
- t = Ae.createDocument(Xt, "template", null);
632
+ t = je.createDocument(Xt, "template", null);
630
633
  try {
631
- t.documentElement.innerHTML = Zt ? ce : i;
634
+ t.documentElement.innerHTML = Zt ? _ : i;
632
635
  } catch {}
633
636
  }
634
637
  let a = t.body || t.documentElement;
635
- return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null), Xt === B ? Ne.call(t, L ? "html" : "body")[0] : L ? t.documentElement : a;
636
- }, Sn = function(e) {
637
- let t = ae ? ae(e) : e.ownerDocument;
638
- return C.call(t || e, e, c.SHOW_ELEMENT | c.SHOW_COMMENT | c.SHOW_TEXT | c.SHOW_PROCESSING_INSTRUCTION | c.SHOW_CDATA_SECTION, null);
639
- }, Cn = function(e) {
640
- return e = Ce(e, gt, " "), e = Ce(e, _t, " "), e = Ce(e, vt, " "), e;
641
- }, q = function(e) {
638
+ return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null), Xt === B ? C.call(t, I ? "html" : "body")[0] : I ? t.documentElement : a;
639
+ }, wn = function(e) {
640
+ let t = oe ? oe(e) : e.ownerDocument;
641
+ return Me.call(t || e, e, c.SHOW_ELEMENT | c.SHOW_COMMENT | c.SHOW_TEXT | c.SHOW_PROCESSING_INSTRUCTION | c.SHOW_CDATA_SECTION, null);
642
+ }, Tn = function(e) {
643
+ return e = Ee(e, ct, " "), e = Ee(e, _t, " "), e = Ee(e, vt, " "), e;
644
+ }, En = function(e) {
642
645
  e.normalize();
643
- let t = ae ? ae(e) : e.ownerDocument, n = C.call(t || e, e, c.SHOW_TEXT | c.SHOW_COMMENT | c.SHOW_CDATA_SECTION | c.SHOW_PROCESSING_INSTRUCTION, null), r = n.nextNode();
644
- for (; r;) r.data = Cn(r.data), r = n.nextNode();
646
+ let t = oe ? oe(e) : e.ownerDocument, n = Me.call(t || e, e, c.SHOW_TEXT | c.SHOW_COMMENT | c.SHOW_CDATA_SECTION | c.SHOW_PROCESSING_INSTRUCTION, null), r = n.nextNode();
647
+ for (; r;) r.data = Tn(r.data), r = n.nextNode();
645
648
  let i = e.querySelectorAll?.call(e, "template");
646
- i && me(i, (e) => {
647
- J(e.content) && q(e.content);
649
+ i && _e(i, (e) => {
650
+ K(e.content) && En(e.content);
648
651
  });
649
- }, wn = function(e) {
650
- let t = ie ? ie(e) : null;
651
- return typeof t != "string" || H(t) !== "form" ? !1 : typeof e.nodeName != "string" || typeof e.textContent != "string" || typeof e.removeChild != "function" || e.attributes !== ne(e) || typeof e.removeAttribute != "function" || typeof e.removeAttributeNode != "function" || typeof e.getAttributeNode != "function" || typeof e.setAttribute != "function" || typeof e.namespaceURI != "string" || typeof e.insertBefore != "function" || typeof e.hasChildNodes != "function" || e.nodeType !== re(e) || e.childNodes !== h(e);
652
- }, J = function(e) {
653
- if (!re || typeof e != "object" || !e) return !1;
652
+ }, G = function(e) {
653
+ let t = ae ? ae(e) : null;
654
+ return typeof t != "string" || V(t) !== "form" ? !1 : typeof e.nodeName != "string" || typeof e.textContent != "string" || typeof e.removeChild != "function" || e.attributes !== re(e) || typeof e.removeAttribute != "function" || typeof e.removeAttributeNode != "function" || typeof e.getAttributeNode != "function" || typeof e.setAttribute != "function" || typeof e.namespaceURI != "string" || typeof e.insertBefore != "function" || typeof e.hasChildNodes != "function" || e.nodeType !== ie(e) || e.childNodes !== h(e);
655
+ }, K = function(e) {
656
+ if (!ie || typeof e != "object" || !e) return !1;
654
657
  try {
655
- return re(e) === D.documentFragment;
658
+ return ie(e) === O.documentFragment;
656
659
  } catch {
657
660
  return !1;
658
661
  }
659
- }, Y = function(e) {
660
- if (!re || typeof e != "object" || !e) return !1;
662
+ }, q = function(e) {
663
+ if (!ie || typeof e != "object" || !e) return !1;
661
664
  try {
662
- return typeof re(e) == "number";
665
+ return typeof ie(e) == "number";
663
666
  } catch {
664
667
  return !1;
665
668
  }
666
669
  };
667
- function X(e, n, r) {
668
- e.length !== 0 && me(e, (e) => {
669
- e.call(t, n, r, sn);
670
+ function J(e, n, r) {
671
+ e.length !== 0 && _e(e, (e) => {
672
+ e.call(t, n, r, cn);
670
673
  });
671
674
  }
672
- let Tn = function(e, t) {
673
- return !!(I && e.hasChildNodes() && !Y(e.firstElementChild) && S(rt, e.textContent) && S(rt, e.innerHTML) || I && e.namespaceURI === B && ct[t] && (Y(e.firstElementChild) || typeof e.textContent == "string" && S(lt[t], e.textContent)) || e.nodeType === D.processingInstruction || I && e.nodeType === D.comment && S(it, e.data));
674
- }, Z = function(e, t) {
675
- return e instanceof RegExp ? S(e, t) : e instanceof Function && !!e(t, ...[...arguments].slice(2));
676
- }, En = function(e, t, n) {
677
- if (!Tt[t] && jn(t) && Z(N.tagNameCheck, t)) return !1;
678
- if (R && !Ht[t]) {
679
- let t = g(e), r = h(e);
675
+ let Y = function(e, t) {
676
+ return !!(F && e.hasChildNodes() && !q(e.firstElementChild) && x(it, e.textContent) && x(it, e.innerHTML) || F && e.namespaceURI === B && lt[t] && (q(e.firstElementChild) || typeof e.textContent == "string" && x(ut[t], e.textContent)) || e.nodeType === O.processingInstruction || F && e.nodeType === O.comment && x(at, e.data));
677
+ }, X = function(e, t) {
678
+ return e instanceof RegExp ? x(e, t) : e instanceof Function && !!e(t, ...[...arguments].slice(2));
679
+ }, Dn = function(e, t, n) {
680
+ if (!Et[t] && Mn(t) && X(M.tagNameCheck, t)) return !1;
681
+ if (Vt && !z[t]) {
682
+ let t = te(e), r = h(e);
680
683
  if (r && t) {
681
684
  let i = r.length;
682
685
  for (let a = i - 1; a >= 0; --a) {
@@ -685,35 +688,35 @@ function ht() {
685
688
  }
686
689
  }
687
690
  }
688
- return U(e), !0;
689
- }, Dn = function(e, t, n, r) {
690
- return e.length === 0 ? t : t === n || t === r ? T(t) : t;
691
- }, Q = function(e, t) {
692
- return e === t || g(e) !== null ? !1 : (Vt && vn(e), !0);
693
- }, On = function(e, n) {
694
- if (X(O.beforeSanitizeElements, e, null), Q(e, n)) return !0;
695
- if (wn(e)) return U(e), !0;
696
- let r = H(se(e));
697
- if (j = Dn(O.uponSanitizeElement, j, Ct, Mt), X(O.uponSanitizeElement, e, {
691
+ return H(e), !0;
692
+ }, Z = function(e, t, n, r) {
693
+ return e.length === 0 ? t : t === n || t === r ? E(t) : t;
694
+ }, On = function(e, t) {
695
+ return e === t || te(e) !== null ? !1 : (Ht && xn(e), !0);
696
+ }, kn = function(e, n) {
697
+ if (J(T.beforeSanitizeElements, e, null), On(e, n)) return !0;
698
+ if (G(e)) return H(e), !0;
699
+ let r = V(ce(e));
700
+ if (A = Z(T.uponSanitizeElement, A, wt, Nt), J(T.uponSanitizeElement, e, {
698
701
  tagName: r,
699
- allowedTags: j
700
- }), Q(e, n)) return !0;
701
- if (Tn(e, r)) return U(e), !0;
702
- if (Tt[r] || !(P.tagCheck instanceof Function && P.tagCheck(r)) && !j[r]) {
703
- let t = En(e, r, n);
704
- return t === !1 && (X(O.afterSanitizeElements, e, null), Q(e, n)) ? !0 : t;
702
+ allowedTags: A
703
+ }), On(e, n)) return !0;
704
+ if (Y(e, r)) return H(e), !0;
705
+ if (Et[r] || !(N.tagCheck instanceof Function && N.tagCheck(r)) && !A[r]) {
706
+ let t = Dn(e, r, n);
707
+ return t === !1 && (J(T.afterSanitizeElements, e, null), On(e, n)) ? !0 : t;
705
708
  }
706
- if (_(e) === D.element && !gn(e) || (r === "noscript" || r === "noembed" || r === "noframes") && S(at, e.innerHTML)) return U(e), !0;
707
- if (F && e.nodeType === D.text) {
708
- let n = Cn(e.textContent);
709
- e.textContent !== n && (_e(t.removed, { element: e.cloneNode() }), e.textContent = n);
709
+ if (se(e) === O.element && !_n(e) || (r === "noscript" || r === "noembed" || r === "noframes") && x(ot, e.innerHTML)) return H(e), !0;
710
+ if (P && e.nodeType === O.text) {
711
+ let n = Tn(e.textContent);
712
+ e.textContent !== n && (be(t.removed, { element: e.cloneNode() }), e.textContent = n);
710
713
  }
711
- return X(O.afterSanitizeElements, e, null), Q(e, n);
712
- }, kn = function(e, t, r) {
713
- if (Et[t] || yn(t, e) || Rt && (t === "id" || t === "name") && (r in n || r in cn)) return !1;
714
- let i = M[t] || P.attributeCheck instanceof Function && P.attributeCheck(t, e);
715
- return Ot && S(yt, t) || Dt && S(bt, t) ? !0 : i ? Kt[t] || S(St, Ce(r, xt, "")) || (t === "src" || t === "xlink:href" || t === "href") && e !== "script" && we(r, "data:") === 0 && Wt[e] || kt && !S(k, Ce(r, xt, "")) ? !0 : !r : jn(e) && Z(N.tagNameCheck, e) && Z(N.attributeNameCheck, t, e) || t === "is" && N.allowCustomizedBuiltInElements && Z(N.tagNameCheck, r);
716
- }, An = w({}, [
714
+ return J(T.afterSanitizeElements, e, null), On(e, n);
715
+ }, An = function(e, t, r) {
716
+ if (Dt[t] || W(t, e) || Rt && (t === "id" || t === "name") && (r in n || r in ln)) return !1;
717
+ let i = j[t] || N.attributeCheck instanceof Function && N.attributeCheck(t, e);
718
+ return kt && x(yt, t) || Ot && x(bt, t) ? !0 : i ? Kt[t] || x(Ct, Ee(r, St, "")) || (t === "src" || t === "xlink:href" || t === "href") && e !== "script" && De(r, "data:") === 0 && Wt[e] || At && !x(xt, Ee(r, St, "")) ? !0 : !r : Mn(e) && X(M.tagNameCheck, e) && X(M.attributeNameCheck, t, e) || t === "is" && M.allowCustomizedBuiltInElements && X(M.tagNameCheck, r);
719
+ }, jn = w({}, [
717
720
  "annotation-xml",
718
721
  "color-profile",
719
722
  "font-face",
@@ -722,67 +725,67 @@ function ht() {
722
725
  "font-face-src",
723
726
  "font-face-uri",
724
727
  "missing-glyph"
725
- ]), jn = function(e) {
726
- return !An[be(e)] && S(A, e);
727
- }, Mn = function(e, t, n, r) {
728
- if (v && typeof u == "object" && typeof u.getAttributeType == "function" && !n) switch (u.getAttributeType(e, t)) {
729
- case "TrustedHTML": return Ee(r);
730
- case "TrustedScriptURL": return De(r);
728
+ ]), Mn = function(e) {
729
+ return !jn[Ce(e)] && x(k, e);
730
+ }, Nn = function(e, t, n, r) {
731
+ if (g && typeof u == "object" && typeof u.getAttributeType == "function" && !n) switch (u.getAttributeType(e, t)) {
732
+ case "TrustedHTML": return he(r);
733
+ case "TrustedScriptURL": return ge(r);
731
734
  }
732
735
  return r;
733
- }, Nn = function(e, t, n, r) {
736
+ }, Pn = function(e, t, n, r) {
734
737
  try {
735
- return n ? e.setAttributeNS(n, t, r) : e.setAttribute(t, r), wn(e) ? (U(e), !1) : !0;
738
+ return n ? e.setAttributeNS(n, t, r) : e.setAttribute(t, r), G(e) ? (H(e), !1) : !0;
736
739
  } catch {
737
- return G(t, e), !1;
740
+ return U(t, e), !1;
738
741
  }
739
- }, Pn = function(e, n) {
740
- if (X(O.beforeSanitizeAttributes, e, null), Q(e, n)) return;
742
+ }, Fn = function(e, n) {
743
+ if (J(T.beforeSanitizeAttributes, e, null), On(e, n)) return;
741
744
  let r = e.attributes;
742
- if (!r || wn(e)) return;
743
- M = Dn(O.uponSanitizeAttribute, M, wt, Nt);
745
+ if (!r || G(e)) return;
746
+ j = Z(T.uponSanitizeAttribute, j, Tt, Pt);
744
747
  let i = {
745
748
  attrName: "",
746
749
  attrValue: "",
747
750
  keepAttr: !0,
748
- allowedAttributes: M,
751
+ allowedAttributes: j,
749
752
  forceKeepAttr: void 0
750
- }, a = r.length, o = H(e.nodeName);
753
+ }, a = r.length, o = V(e.nodeName);
751
754
  for (; a--;) {
752
- let n = r[a], s = n.name, c = n.namespaceURI, l = n.value, u = H(s), d = l, f = s === "value" ? d : Te(d), p = !1;
753
- if (i.attrName = u, i.attrValue = f, i.keepAttr = !0, i.forceKeepAttr = void 0, X(O.uponSanitizeAttribute, e, i), f = i.attrValue, zt && (u === "id" || u === "name") && we(f, Bt) !== 0 && (G(s, e, n), f = Bt + f, p = !0), I && S(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i, f)) {
754
- G(s, e, n);
755
+ let n = r[a], s = n.name, c = n.namespaceURI, l = n.value, u = V(s), d = l, f = s === "value" ? d : Oe(d), p = !1;
756
+ if (i.attrName = u, i.attrValue = f, i.keepAttr = !0, i.forceKeepAttr = void 0, J(T.uponSanitizeAttribute, e, i), f = i.attrValue, zt && (u === "id" || u === "name") && De(f, Bt) !== 0 && (U(s, e, n), f = Bt + f, p = !0), F && x(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i, f)) {
757
+ U(s, e, n);
755
758
  continue;
756
759
  }
757
- if (u === "attributename" && Se(f, "href")) {
758
- G(s, e, n);
760
+ if (u === "attributename" && Te(f, "href")) {
761
+ U(s, e, n);
759
762
  continue;
760
763
  }
761
764
  if (!i.forceKeepAttr) {
762
765
  if (!i.keepAttr) {
763
- G(s, e, n);
766
+ U(s, e, n);
764
767
  continue;
765
768
  }
766
- if (!At && S(ot, f)) {
767
- G(s, e, n);
769
+ if (!jt && x(st, f)) {
770
+ U(s, e, n);
768
771
  continue;
769
772
  }
770
- if (F && (f = Cn(f)), !kn(o, u, f)) {
771
- G(s, e, n);
773
+ if (P && (f = Tn(f)), !An(o, u, f)) {
774
+ U(s, e, n);
772
775
  continue;
773
776
  }
774
- f = Mn(o, u, c, f), f !== d && Nn(e, s, c, f) && p && ge(t.removed);
777
+ f = Nn(o, u, c, f), f !== d && Pn(e, s, c, f) && p && ye(t.removed);
775
778
  }
776
779
  }
777
- X(O.afterSanitizeAttributes, e, null), Q(e, n);
778
- }, Fn = function(e) {
779
- let t = null, n = Sn(e);
780
- for (X(O.beforeSanitizeShadowDOM, e, null); t = n.nextNode();) if (X(O.uponSanitizeShadowNode, t, null), On(t, e), Pn(t, e), J(t.content) && Fn(t.content), _(t) === D.element) {
781
- let e = te(t);
782
- J(e) && (In(e), Fn(e));
783
- }
784
- X(O.afterSanitizeShadowDOM, e, null);
780
+ J(T.afterSanitizeAttributes, e, null), On(e, n);
785
781
  }, In = function(e) {
782
+ let t = null, n = wn(e);
783
+ for (J(T.beforeSanitizeShadowDOM, e, null); t = n.nextNode();) if (J(T.uponSanitizeShadowNode, t, null), kn(t, e), Fn(t, e), K(t.content) && In(t.content), se(t) === O.element) {
784
+ let e = ne(t);
785
+ K(e) && (Ln(e), In(e));
786
+ }
787
+ J(T.afterSanitizeShadowDOM, e, null);
788
+ }, Ln = function(e) {
786
789
  let t = [{
787
790
  node: e,
788
791
  shadow: null
@@ -790,27 +793,27 @@ function ht() {
790
793
  for (; t.length > 0;) {
791
794
  let e = t.pop();
792
795
  if (e.shadow) {
793
- Fn(e.shadow);
796
+ In(e.shadow);
794
797
  continue;
795
798
  }
796
- let n = e.node, r = _(n) === D.element, i = h(n);
799
+ let n = e.node, r = se(n) === O.element, i = h(n);
797
800
  if (i) for (let e = i.length - 1; e >= 0; --e) t.push({
798
801
  node: i[e],
799
802
  shadow: null
800
803
  });
801
804
  if (r) {
802
- let e = ie ? ie(n) : null;
803
- if (typeof e == "string" && H(e) === "template") {
805
+ let e = ae ? ae(n) : null;
806
+ if (typeof e == "string" && V(e) === "template") {
804
807
  let e = n.content;
805
- J(e) && t.push({
808
+ K(e) && t.push({
806
809
  node: e,
807
810
  shadow: null
808
811
  });
809
812
  }
810
813
  }
811
814
  if (r) {
812
- let e = te(n);
813
- J(e) && t.push({
815
+ let e = ne(n);
816
+ K(e) && t.push({
814
817
  node: null,
815
818
  shadow: e
816
819
  }, {
@@ -822,81 +825,81 @@ function ht() {
822
825
  };
823
826
  return t.sanitize = function(e) {
824
827
  let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, i = null, a = null, o = null, s = null;
825
- if (Zt = !e, Zt && (e = "<!-->"), typeof e != "string" && !Y(e) && (e = Pe(e), typeof e != "string")) throw je("dirty is not a string, aborting");
828
+ if (Zt = !e, Zt && (e = "<!-->"), typeof e != "string" && !q(e) && (e = Fe(e), typeof e != "string")) throw S("dirty is not a string, aborting");
826
829
  if (!t.isSupported) return e;
827
- jt ? (j = Mt, M = Nt) : un(n), (O.uponSanitizeElement.length > 0 || O.uponSanitizeAttribute.length > 0) && (j = T(j)), O.uponSanitizeAttribute.length > 0 && (M = T(M)), t.removed = [];
828
- let c = Vt && typeof e != "string" && Y(e);
830
+ Mt ? (A = Nt, j = Pt) : dn(n), (T.uponSanitizeElement.length > 0 || T.uponSanitizeAttribute.length > 0) && (A = E(A)), T.uponSanitizeAttribute.length > 0 && (j = E(j)), t.removed = [];
831
+ let c = Ht && typeof e != "string" && q(e);
829
832
  if (c) {
830
- bn(e);
831
- let t = se(e);
833
+ Sn(e);
834
+ let t = ce(e);
832
835
  if (typeof t == "string") {
833
- let n = H(t);
834
- if (!j[n] || Tt[n]) throw _n(e), je("root node is forbidden and cannot be sanitized in-place");
836
+ let n = V(t);
837
+ if (!A[n] || Et[n]) throw yn(e), S("root node is forbidden and cannot be sanitized in-place");
835
838
  }
836
- if (wn(e)) throw _n(e), je("root node is clobbered and cannot be sanitized in-place");
839
+ if (G(e)) throw yn(e), S("root node is clobbered and cannot be sanitized in-place");
837
840
  try {
838
- In(e);
841
+ Ln(e);
839
842
  } catch (t) {
840
- throw _n(e), t;
843
+ throw yn(e), t;
841
844
  }
842
- } else if (Y(e)) i = xn("<!---->"), a = i.ownerDocument.importNode(e, !0), a.nodeType === D.element && a.nodeName === "BODY" || a.nodeName === "HTML" ? i = a : i.appendChild(a), In(i);
845
+ } else if (q(e)) i = Cn("<!---->"), a = i.ownerDocument.importNode(e, !0), a.nodeType === O.element && a.nodeName === "BODY" || a.nodeName === "HTML" ? i = a : i.appendChild(a), Ln(i);
843
846
  else {
844
- if (!Ft && !F && !L && e.indexOf("<") === -1) return v && Lt ? Ee(e) : e;
845
- if (i = xn(e), !i) return Ft ? null : Lt ? ce : "";
847
+ if (!L && !P && !I && e.indexOf("<") === -1) return g && Lt ? he(e) : e;
848
+ if (i = Cn(e), !i) return L ? null : Lt ? _ : "";
846
849
  }
847
- i && Pt && U(i.firstChild);
850
+ i && Ft && H(i.firstChild);
848
851
  let l = c ? e : i;
849
852
  try {
850
- let e = Sn(l);
851
- for (; o = e.nextNode();) On(o, l), Pn(o, l), J(o.content) && Fn(o.content);
853
+ let e = wn(l);
854
+ for (; o = e.nextNode();) kn(o, l), Fn(o, l), K(o.content) && In(o.content);
852
855
  } catch (n) {
853
- throw c && (_n(e), me(t.removed, (e) => {
854
- e.element && vn(e.element);
856
+ throw c && (yn(e), _e(t.removed, (e) => {
857
+ e.element && xn(e.element);
855
858
  })), n;
856
859
  }
857
860
  if (c) {
858
861
  let n = !1;
859
- if (me(t.removed, (t) => {
860
- t.element && (t.element === e && (n = !0), vn(t.element));
861
- }), n) throw je("a node selected for removal could not be safely returned; refusing to sanitize in place");
862
- return F && q(e), e;
862
+ if (_e(t.removed, (t) => {
863
+ t.element && (t.element === e && (n = !0), xn(t.element));
864
+ }), n) throw S("a node selected for removal could not be safely returned; refusing to sanitize in place");
865
+ return P && En(e), e;
863
866
  }
864
- if (Ft) {
865
- if (F && q(i), It) for (s = Me.call(i.ownerDocument); i.firstChild;) s.appendChild(i.firstChild);
867
+ if (L) {
868
+ if (P && En(i), It) for (s = Ne.call(i.ownerDocument); i.firstChild;) s.appendChild(i.firstChild);
866
869
  else s = i;
867
- return (M.shadowroot || M.shadowrootmode) && (s = st.call(r, s, !0)), s;
870
+ return (j.shadowroot || j.shadowrootmode) && (s = Pe.call(r, s, !0)), s;
868
871
  }
869
- let u = L ? i.outerHTML : i.innerHTML;
870
- return L && j["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name && S(tt, i.ownerDocument.doctype.name) && (u = "<!DOCTYPE " + i.ownerDocument.doctype.name + ">\n" + u), F && (u = Cn(u)), v && Lt ? Ee(u) : u;
872
+ let u = I ? i.outerHTML : i.innerHTML;
873
+ return I && A["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name && x(nt, i.ownerDocument.doctype.name) && (u = "<!DOCTYPE " + i.ownerDocument.doctype.name + ">\n" + u), P && (u = Tn(u)), g && Lt ? he(u) : u;
871
874
  }, t.setConfig = function() {
872
875
  let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
873
- un(e), jt = !0, Mt = j, Nt = M;
876
+ dn(e), Mt = !0, Nt = A, Pt = j;
874
877
  }, t.clearConfig = function() {
875
- sn = null, jt = !1, Mt = null, Nt = null, v = le, ce = "";
878
+ cn = null, Mt = !1, Nt = null, Pt = null, g = ue, _ = "";
876
879
  }, t.isValidAttribute = function(e, t, n) {
877
- sn || un({});
878
- let r = H(e), i = H(t);
879
- return kn(r, i, n);
880
+ cn || dn({});
881
+ let r = V(e), i = V(t);
882
+ return An(r, i, n);
880
883
  }, t.addHook = function(e, t) {
881
- typeof t == "function" && x(O, e) && _e(O[e], t);
884
+ typeof t == "function" && b(T, e) && be(T[e], t);
882
885
  }, t.removeHook = function(e, t) {
883
- if (x(O, e)) {
886
+ if (b(T, e)) {
884
887
  if (t !== void 0) {
885
- let n = he(O[e], t);
886
- return n === -1 ? void 0 : ve(O[e], n, 1)[0];
888
+ let n = ve(T[e], t);
889
+ return n === -1 ? void 0 : xe(T[e], n, 1)[0];
887
890
  }
888
- return ge(O[e]);
891
+ return ye(T[e]);
889
892
  }
890
893
  }, t.removeHooks = function(e) {
891
- x(O, e) && (O[e] = []);
894
+ b(T, e) && (T[e] = []);
892
895
  }, t.removeAllHooks = function() {
893
- O = ft();
896
+ T = pt();
894
897
  }, t;
895
898
  }
896
- var O = ht();
899
+ var _t = gt();
897
900
  //#endregion
898
901
  //#region node_modules/marked/lib/marked.esm.js
899
- function gt() {
902
+ function vt() {
900
903
  return {
901
904
  async: !1,
902
905
  breaks: !1,
@@ -910,12 +913,12 @@ function gt() {
910
913
  walkTokens: null
911
914
  };
912
915
  }
913
- var _t = gt();
914
- function vt(e) {
915
- _t = e;
916
- }
917
- var yt = { exec: () => null };
916
+ var yt = vt();
918
917
  function bt(e) {
918
+ yt = e;
919
+ }
920
+ var xt = { exec: () => null };
921
+ function St(e) {
919
922
  let t = [];
920
923
  return (n) => {
921
924
  let r = Math.max(0, Math.min(3, n - 1)), i = t[r];
@@ -932,7 +935,7 @@ function k(e, t = "") {
932
935
  };
933
936
  return r;
934
937
  }
935
- var xt = ((e = "") => {
938
+ var Ct = ((e = "") => {
936
939
  try {
937
940
  return !!RegExp("(?<=1)(?<!1)" + e);
938
941
  } catch {
@@ -989,102 +992,102 @@ var xt = ((e = "") => {
989
992
  notSpaceStart: /^\S*/,
990
993
  endingNewline: /\n$/,
991
994
  listItemRegex: (e) => RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),
992
- nextBulletRegex: bt((e) => RegExp(`^ {0,${e}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),
993
- hrRegex: bt((e) => RegExp(`^ {0,${e}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)),
994
- fencesBeginRegex: bt((e) => RegExp(`^ {0,${e}}(?:\`\`\`|~~~)`)),
995
- headingBeginRegex: bt((e) => RegExp(`^ {0,${e}}#`)),
996
- htmlBeginRegex: bt((e) => RegExp(`^ {0,${e}}<(?:[a-z].*>|!--)`, "i")),
997
- blockquoteBeginRegex: bt((e) => RegExp(`^ {0,${e}}>`))
998
- }, St = /^(?:[ \t]*(?:\n|$))+/, j = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, Ct = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, M = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, wt = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, N = / {0,3}(?:[*+-]|\d{1,9}[.)])/, Tt = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, Et = k(Tt).replace(/bull/g, N).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), P = k(Tt).replace(/bull/g, N).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), Dt = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, Ot = /^[^\n]+/, kt = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, At = k(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", kt).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), F = k(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g, N).getRegex(), I = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", L = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, jt = k("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", L).replace("tag", I).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), Mt = k(Dt).replace("hr", M).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", I).getRegex(), Nt = {
999
- blockquote: k(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", Mt).getRegex(),
995
+ nextBulletRegex: St((e) => RegExp(`^ {0,${e}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),
996
+ hrRegex: St((e) => RegExp(`^ {0,${e}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)),
997
+ fencesBeginRegex: St((e) => RegExp(`^ {0,${e}}(?:\`\`\`|~~~)`)),
998
+ headingBeginRegex: St((e) => RegExp(`^ {0,${e}}#`)),
999
+ htmlBeginRegex: St((e) => RegExp(`^ {0,${e}}<(?:[a-z].*>|!--)`, "i")),
1000
+ blockquoteBeginRegex: St((e) => RegExp(`^ {0,${e}}>`))
1001
+ }, wt = /^(?:[ \t]*(?:\n|$))+/, j = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, Tt = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, M = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Et = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, Dt = / {0,3}(?:[*+-]|\d{1,9}[.)])/, N = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, Ot = k(N).replace(/bull/g, Dt).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), kt = k(N).replace(/bull/g, Dt).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), At = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, jt = /^[^\n]+/, P = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, F = k(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", P).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), I = k(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g, Dt).getRegex(), Mt = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", Nt = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, Pt = k("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", Nt).replace("tag", Mt).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), Ft = k(At).replace("hr", M).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Mt).getRegex(), L = {
1002
+ blockquote: k(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", Ft).getRegex(),
1000
1003
  code: j,
1001
- def: At,
1002
- fences: Ct,
1003
- heading: wt,
1004
+ def: F,
1005
+ fences: Tt,
1006
+ heading: Et,
1004
1007
  hr: M,
1005
- html: jt,
1006
- lheading: Et,
1007
- list: F,
1008
- newline: St,
1009
- paragraph: Mt,
1010
- table: yt,
1011
- text: Ot
1012
- }, Pt = k("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", M).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", I).getRegex(), Ft = {
1013
- ...Nt,
1014
- lheading: P,
1015
- table: Pt,
1016
- paragraph: k(Dt).replace("hr", M).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", Pt).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", I).getRegex()
1017
- }, It = {
1018
- ...Nt,
1019
- html: k("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment", L).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
1008
+ html: Pt,
1009
+ lheading: Ot,
1010
+ list: I,
1011
+ newline: wt,
1012
+ paragraph: Ft,
1013
+ table: xt,
1014
+ text: jt
1015
+ }, It = k("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", M).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Mt).getRegex(), Lt = {
1016
+ ...L,
1017
+ lheading: kt,
1018
+ table: It,
1019
+ paragraph: k(At).replace("hr", M).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", It).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", Mt).getRegex()
1020
+ }, Rt = {
1021
+ ...L,
1022
+ html: k("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment", Nt).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
1020
1023
  def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
1021
1024
  heading: /^(#{1,6})(.*)(?:\n+|$)/,
1022
- fences: yt,
1025
+ fences: xt,
1023
1026
  lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,
1024
- paragraph: k(Dt).replace("hr", M).replace("heading", " *#{1,6} *[^\n]").replace("lheading", Et).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex()
1025
- }, Lt = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, Rt = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, zt = /^( {2,}|\\)\n(?!\s*$)/, Bt = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, R = /[\p{P}\p{S}]/u, Vt = /[\s\p{P}\p{S}]/u, z = /[^\s\p{P}\p{S}]/u, Ht = k(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, Vt).getRegex(), Ut = /(?!~)[\p{P}\p{S}]/u, Wt = /(?!~)[\s\p{P}\p{S}]/u, Gt = /(?:[^\s\p{P}\p{S}]|~)/u, Kt = k(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", xt ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), qt = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/, Jt = k(qt, "u").replace(/punct/g, R).getRegex(), Yt = k(qt, "u").replace(/punct/g, Ut).getRegex(), B = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", Xt = k(B, "gu").replace(/notPunctSpace/g, z).replace(/punctSpace/g, Vt).replace(/punct/g, R).getRegex(), Zt = k(B, "gu").replace(/notPunctSpace/g, Gt).replace(/punctSpace/g, Wt).replace(/punct/g, Ut).getRegex(), Qt = k("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, z).replace(/punctSpace/g, Vt).replace(/punct/g, R).getRegex(), $t = k(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, R).getRegex(), en = k("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, z).replace(/punctSpace/g, Vt).replace(/punct/g, R).getRegex(), tn = k(/\\(punct)/, "gu").replace(/punct/g, R).getRegex(), nn = k(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), rn = k(L).replace("(?:-->|$)", "-->").getRegex(), an = k("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", rn).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), V = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/, on = k(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", V).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), H = k(/^!?\[(label)\]\[(ref)\]/).replace("label", V).replace("ref", kt).getRegex(), sn = k(/^!?\[(ref)\](?:\[\])?/).replace("ref", kt).getRegex(), cn = k("reflink|nolink(?!\\()", "g").replace("reflink", H).replace("nolink", sn).getRegex(), ln = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, un = {
1026
- _backpedal: yt,
1027
- anyPunctuation: tn,
1028
- autolink: nn,
1029
- blockSkip: Kt,
1030
- br: zt,
1031
- code: Rt,
1032
- del: yt,
1033
- delLDelim: yt,
1034
- delRDelim: yt,
1035
- emStrongLDelim: Jt,
1036
- emStrongRDelimAst: Xt,
1037
- emStrongRDelimUnd: Qt,
1038
- escape: Lt,
1039
- link: on,
1040
- nolink: sn,
1041
- punctuation: Ht,
1042
- reflink: H,
1043
- reflinkSearch: cn,
1044
- tag: an,
1045
- text: Bt,
1046
- url: yt
1047
- }, dn = {
1048
- ...un,
1027
+ paragraph: k(At).replace("hr", M).replace("heading", " *#{1,6} *[^\n]").replace("lheading", Ot).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex()
1028
+ }, zt = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, Bt = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, Vt = /^( {2,}|\\)\n(?!\s*$)/, Ht = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, R = /[\p{P}\p{S}]/u, z = /[\s\p{P}\p{S}]/u, Ut = /[^\s\p{P}\p{S}]/u, Wt = k(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, z).getRegex(), Gt = /(?!~)[\p{P}\p{S}]/u, Kt = /(?!~)[\s\p{P}\p{S}]/u, qt = /(?:[^\s\p{P}\p{S}]|~)/u, Jt = k(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", Ct ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), Yt = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/, B = k(Yt, "u").replace(/punct/g, R).getRegex(), Xt = k(Yt, "u").replace(/punct/g, Gt).getRegex(), Zt = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", Qt = k(Zt, "gu").replace(/notPunctSpace/g, Ut).replace(/punctSpace/g, z).replace(/punct/g, R).getRegex(), $t = k(Zt, "gu").replace(/notPunctSpace/g, qt).replace(/punctSpace/g, Kt).replace(/punct/g, Gt).getRegex(), en = k("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, Ut).replace(/punctSpace/g, z).replace(/punct/g, R).getRegex(), tn = k(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, R).getRegex(), nn = k("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, Ut).replace(/punctSpace/g, z).replace(/punct/g, R).getRegex(), rn = k(/\\(punct)/, "gu").replace(/punct/g, R).getRegex(), an = k(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), on = k(Nt).replace("(?:-->|$)", "-->").getRegex(), sn = k("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", on).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), V = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/, cn = k(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", V).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), ln = k(/^!?\[(label)\]\[(ref)\]/).replace("label", V).replace("ref", P).getRegex(), un = k(/^!?\[(ref)\](?:\[\])?/).replace("ref", P).getRegex(), dn = k("reflink|nolink(?!\\()", "g").replace("reflink", ln).replace("nolink", un).getRegex(), fn = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, pn = {
1029
+ _backpedal: xt,
1030
+ anyPunctuation: rn,
1031
+ autolink: an,
1032
+ blockSkip: Jt,
1033
+ br: Vt,
1034
+ code: Bt,
1035
+ del: xt,
1036
+ delLDelim: xt,
1037
+ delRDelim: xt,
1038
+ emStrongLDelim: B,
1039
+ emStrongRDelimAst: Qt,
1040
+ emStrongRDelimUnd: en,
1041
+ escape: zt,
1042
+ link: cn,
1043
+ nolink: un,
1044
+ punctuation: Wt,
1045
+ reflink: ln,
1046
+ reflinkSearch: dn,
1047
+ tag: sn,
1048
+ text: Ht,
1049
+ url: xt
1050
+ }, mn = {
1051
+ ...pn,
1049
1052
  link: k(/^!?\[(label)\]\((.*?)\)/).replace("label", V).getRegex(),
1050
1053
  reflink: k(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", V).getRegex()
1051
- }, fn = {
1052
- ...un,
1053
- emStrongRDelimAst: Zt,
1054
- emStrongLDelim: Yt,
1055
- delLDelim: $t,
1056
- delRDelim: en,
1057
- url: k(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol", ln).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),
1054
+ }, hn = {
1055
+ ...pn,
1056
+ emStrongRDelimAst: $t,
1057
+ emStrongLDelim: Xt,
1058
+ delLDelim: tn,
1059
+ delRDelim: nn,
1060
+ url: k(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol", fn).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),
1058
1061
  _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,
1059
1062
  del: /^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,
1060
- text: k(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol", ln).getRegex()
1061
- }, pn = {
1062
- ...fn,
1063
- br: k(zt).replace("{2,}", "*").getRegex(),
1064
- text: k(fn.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
1065
- }, mn = {
1066
- normal: Nt,
1067
- gfm: Ft,
1068
- pedantic: It
1069
- }, hn = {
1070
- normal: un,
1071
- gfm: fn,
1072
- breaks: pn,
1073
- pedantic: dn
1063
+ text: k(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol", fn).getRegex()
1074
1064
  }, gn = {
1065
+ ...hn,
1066
+ br: k(Vt).replace("{2,}", "*").getRegex(),
1067
+ text: k(hn.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
1068
+ }, _n = {
1069
+ normal: L,
1070
+ gfm: Lt,
1071
+ pedantic: Rt
1072
+ }, H = {
1073
+ normal: pn,
1074
+ gfm: hn,
1075
+ breaks: gn,
1076
+ pedantic: mn
1077
+ }, vn = {
1075
1078
  "&": "&amp;",
1076
1079
  "<": "&lt;",
1077
1080
  ">": "&gt;",
1078
1081
  "\"": "&quot;",
1079
1082
  "'": "&#39;"
1080
- }, U = (e) => gn[e];
1081
- function W(e, t) {
1083
+ }, yn = (e) => vn[e];
1084
+ function U(e, t) {
1082
1085
  if (t) {
1083
- if (A.escapeTest.test(e)) return e.replace(A.escapeReplace, U);
1084
- } else if (A.escapeTestNoEncode.test(e)) return e.replace(A.escapeReplaceNoEncode, U);
1086
+ if (A.escapeTest.test(e)) return e.replace(A.escapeReplace, yn);
1087
+ } else if (A.escapeTestNoEncode.test(e)) return e.replace(A.escapeReplaceNoEncode, yn);
1085
1088
  return e;
1086
1089
  }
1087
- function _n(e) {
1090
+ function bn(e) {
1088
1091
  try {
1089
1092
  e = encodeURI(e).replace(A.percentDecode, "%");
1090
1093
  } catch {
@@ -1092,7 +1095,7 @@ function _n(e) {
1092
1095
  }
1093
1096
  return e;
1094
1097
  }
1095
- function G(e, t) {
1098
+ function xn(e, t) {
1096
1099
  let n = e.replace(A.findPipe, (e, t, n) => {
1097
1100
  let r = !1, i = t;
1098
1101
  for (; --i >= 0 && n[i] === "\\";) r = !r;
@@ -1103,7 +1106,7 @@ function G(e, t) {
1103
1106
  for (; r < n.length; r++) n[r] = n[r].trim().replace(A.slashPipe, "|");
1104
1107
  return n;
1105
1108
  }
1106
- function K(e, t, n) {
1109
+ function W(e, t, n) {
1107
1110
  let r = e.length;
1108
1111
  if (r === 0) return "";
1109
1112
  let i = 0;
@@ -1115,12 +1118,12 @@ function K(e, t, n) {
1115
1118
  }
1116
1119
  return e.slice(0, r - i);
1117
1120
  }
1118
- function vn(e) {
1121
+ function Sn(e) {
1119
1122
  let t = e.split("\n"), n = t.length - 1;
1120
1123
  for (; n >= 0 && A.blankLine.test(t[n]);) n--;
1121
1124
  return t.length - n <= 2 ? e : t.slice(0, n + 1).join("\n");
1122
1125
  }
1123
- function yn(e, t) {
1126
+ function Cn(e, t) {
1124
1127
  if (e.indexOf(t[1]) === -1) return -1;
1125
1128
  let n = 0;
1126
1129
  for (let r = 0; r < e.length; r++) if (e[r] === "\\") r++;
@@ -1128,7 +1131,7 @@ function yn(e, t) {
1128
1131
  else if (e[r] === t[1] && (n--, n < 0)) return r;
1129
1132
  return n > 0 ? -2 : -1;
1130
1133
  }
1131
- function bn(e, t = 0) {
1134
+ function wn(e, t = 0) {
1132
1135
  let n = t, r = "";
1133
1136
  for (let t of e) if (t === " ") {
1134
1137
  let e = 4 - n % 4;
@@ -1136,7 +1139,7 @@ function bn(e, t = 0) {
1136
1139
  } else r += t, n++;
1137
1140
  return r;
1138
1141
  }
1139
- function xn(e, t, n, r, i) {
1142
+ function Tn(e, t, n, r, i) {
1140
1143
  let a = t.href, o = t.title || null, s = e[1].replace(i.other.outputLinkReplace, "$1");
1141
1144
  r.state.inLink = !0;
1142
1145
  let c = {
@@ -1149,7 +1152,7 @@ function xn(e, t, n, r, i) {
1149
1152
  };
1150
1153
  return r.state.inLink = !1, c;
1151
1154
  }
1152
- function Sn(e, t, n) {
1155
+ function En(e, t, n) {
1153
1156
  let r = e.match(n.other.indentCodeCompensation);
1154
1157
  if (r === null) return t;
1155
1158
  let i = r[1];
@@ -1160,12 +1163,12 @@ function Sn(e, t, n) {
1160
1163
  return r.length >= i.length ? e.slice(i.length) : e;
1161
1164
  }).join("\n");
1162
1165
  }
1163
- var Cn = class {
1166
+ var G = class {
1164
1167
  options;
1165
1168
  rules;
1166
1169
  lexer;
1167
1170
  constructor(e) {
1168
- this.options = e || _t;
1171
+ this.options = e || yt;
1169
1172
  }
1170
1173
  space(e) {
1171
1174
  let t = this.rules.block.newline.exec(e);
@@ -1177,7 +1180,7 @@ var Cn = class {
1177
1180
  code(e) {
1178
1181
  let t = this.rules.block.code.exec(e);
1179
1182
  if (t) {
1180
- let e = this.options.pedantic ? t[0] : vn(t[0]);
1183
+ let e = this.options.pedantic ? t[0] : Sn(t[0]);
1181
1184
  return {
1182
1185
  type: "code",
1183
1186
  raw: e,
@@ -1189,7 +1192,7 @@ var Cn = class {
1189
1192
  fences(e) {
1190
1193
  let t = this.rules.block.fences.exec(e);
1191
1194
  if (t) {
1192
- let e = t[0], n = Sn(e, t[3] || "", this.rules);
1195
+ let e = t[0], n = En(e, t[3] || "", this.rules);
1193
1196
  return {
1194
1197
  type: "code",
1195
1198
  raw: e,
@@ -1203,12 +1206,12 @@ var Cn = class {
1203
1206
  if (t) {
1204
1207
  let e = t[2].trim();
1205
1208
  if (this.rules.other.endingHash.test(e)) {
1206
- let t = K(e, "#");
1209
+ let t = W(e, "#");
1207
1210
  (this.options.pedantic || !t || this.rules.other.endingSpaceChar.test(t)) && (e = t.trim());
1208
1211
  }
1209
1212
  return {
1210
1213
  type: "heading",
1211
- raw: K(t[0], "\n"),
1214
+ raw: W(t[0], "\n"),
1212
1215
  depth: t[1].length,
1213
1216
  text: e,
1214
1217
  tokens: this.lexer.inline(e)
@@ -1219,13 +1222,13 @@ var Cn = class {
1219
1222
  let t = this.rules.block.hr.exec(e);
1220
1223
  if (t) return {
1221
1224
  type: "hr",
1222
- raw: K(t[0], "\n")
1225
+ raw: W(t[0], "\n")
1223
1226
  };
1224
1227
  }
1225
1228
  blockquote(e) {
1226
1229
  let t = this.rules.block.blockquote.exec(e);
1227
1230
  if (t) {
1228
- let e = K(t[0], "\n").split("\n"), n = "", r = "", i = [];
1231
+ let e = W(t[0], "\n").split("\n"), n = "", r = "", i = [];
1229
1232
  for (; e.length > 0;) {
1230
1233
  let t = !1, a = [], o;
1231
1234
  for (o = 0; o < e.length; o++) if (this.rules.other.blockquoteStart.test(e[o])) a.push(e[o]), t = !0;
@@ -1275,7 +1278,7 @@ ${c}` : c;
1275
1278
  let n = !1, r = "", s = "";
1276
1279
  if (!(t = a.exec(e)) || this.rules.block.hr.test(e)) break;
1277
1280
  r = t[0], e = e.substring(r.length);
1278
- let c = bn(t[2].split("\n", 1)[0], t[1].length), l = e.split("\n", 1)[0], u = !c.trim(), d = 0;
1281
+ let c = wn(t[2].split("\n", 1)[0], t[1].length), l = e.split("\n", 1)[0], u = !c.trim(), d = 0;
1279
1282
  if (this.options.pedantic ? (d = 2, s = c.trimStart()) : u ? d = t[1].length + 1 : (d = c.search(this.rules.other.nonSpaceChar), d = d > 4 ? 1 : d, s = c.slice(d), d += t[1].length), u && this.rules.other.blankLine.test(l) && (r += l + "\n", e = e.substring(l.length + 1), n = !0), !n) {
1280
1283
  let t = this.rules.other.nextBulletRegex(d), n = this.rules.other.hrRegex(d), i = this.rules.other.fencesBeginRegex(d), a = this.rules.other.headingBeginRegex(d), o = this.rules.other.htmlBeginRegex(d), f = this.rules.other.blockquoteBeginRegex(d);
1281
1284
  for (; e;) {
@@ -1341,7 +1344,7 @@ ${c}` : c;
1341
1344
  html(e) {
1342
1345
  let t = this.rules.block.html.exec(e);
1343
1346
  if (t) {
1344
- let e = vn(t[0]);
1347
+ let e = Sn(t[0]);
1345
1348
  return {
1346
1349
  type: "html",
1347
1350
  block: !0,
@@ -1358,7 +1361,7 @@ ${c}` : c;
1358
1361
  return {
1359
1362
  type: "def",
1360
1363
  tag: e,
1361
- raw: K(t[0], "\n"),
1364
+ raw: W(t[0], "\n"),
1362
1365
  href: n,
1363
1366
  title: r
1364
1367
  };
@@ -1367,9 +1370,9 @@ ${c}` : c;
1367
1370
  table(e) {
1368
1371
  let t = this.rules.block.table.exec(e);
1369
1372
  if (!t || !this.rules.other.tableDelimiter.test(t[2])) return;
1370
- let n = G(t[1]), r = t[2].replace(this.rules.other.tableAlignChars, "").split("|"), i = t[3]?.trim() ? t[3].replace(this.rules.other.tableRowBlankLine, "").split("\n") : [], a = {
1373
+ let n = xn(t[1]), r = t[2].replace(this.rules.other.tableAlignChars, "").split("|"), i = t[3]?.trim() ? t[3].replace(this.rules.other.tableRowBlankLine, "").split("\n") : [], a = {
1371
1374
  type: "table",
1372
- raw: K(t[0], "\n"),
1375
+ raw: W(t[0], "\n"),
1373
1376
  header: [],
1374
1377
  align: [],
1375
1378
  rows: []
@@ -1382,7 +1385,7 @@ ${c}` : c;
1382
1385
  header: !0,
1383
1386
  align: a.align[e]
1384
1387
  });
1385
- for (let e of i) a.rows.push(G(e, a.header.length).map((e, t) => ({
1388
+ for (let e of i) a.rows.push(xn(e, a.header.length).map((e, t) => ({
1386
1389
  text: e,
1387
1390
  tokens: this.lexer.inline(e),
1388
1391
  header: !1,
@@ -1397,7 +1400,7 @@ ${c}` : c;
1397
1400
  let e = t[1].trim();
1398
1401
  return {
1399
1402
  type: "heading",
1400
- raw: K(t[0], "\n"),
1403
+ raw: W(t[0], "\n"),
1401
1404
  depth: t[2].charAt(0) === "=" ? 1 : 2,
1402
1405
  text: e,
1403
1406
  tokens: this.lexer.inline(e)
@@ -1450,10 +1453,10 @@ ${c}` : c;
1450
1453
  let e = t[2].trim();
1451
1454
  if (!this.options.pedantic && this.rules.other.startAngleBracket.test(e)) {
1452
1455
  if (!this.rules.other.endAngleBracket.test(e)) return;
1453
- let t = K(e.slice(0, -1), "\\");
1456
+ let t = W(e.slice(0, -1), "\\");
1454
1457
  if ((e.length - t.length) % 2 == 0) return;
1455
1458
  } else {
1456
- let e = yn(t[2], "()");
1459
+ let e = Cn(t[2], "()");
1457
1460
  if (e === -2) return;
1458
1461
  if (e > -1) {
1459
1462
  let n = (t[0].indexOf("!") === 0 ? 5 : 4) + t[1].length + e;
@@ -1465,7 +1468,7 @@ ${c}` : c;
1465
1468
  let e = this.rules.other.pedanticHrefTitle.exec(n);
1466
1469
  e && (n = e[1], r = e[3]);
1467
1470
  } else r = t[3] ? t[3].slice(1, -1) : "";
1468
- return n = n.trim(), this.rules.other.startAngleBracket.test(n) && (n = this.options.pedantic && !this.rules.other.endAngleBracket.test(e) ? n.slice(1) : n.slice(1, -1)), xn(t, {
1471
+ return n = n.trim(), this.rules.other.startAngleBracket.test(n) && (n = this.options.pedantic && !this.rules.other.endAngleBracket.test(e) ? n.slice(1) : n.slice(1, -1)), Tn(t, {
1469
1472
  href: n && n.replace(this.rules.inline.anyPunctuation, "$1"),
1470
1473
  title: r && r.replace(this.rules.inline.anyPunctuation, "$1")
1471
1474
  }, t[0], this.lexer, this.rules);
@@ -1483,7 +1486,7 @@ ${c}` : c;
1483
1486
  text: e
1484
1487
  };
1485
1488
  }
1486
- return xn(n, e, n[0], this.lexer, this.rules);
1489
+ return Tn(n, e, n[0], this.lexer, this.rules);
1487
1490
  }
1488
1491
  }
1489
1492
  emStrong(e, t, n = "") {
@@ -1615,29 +1618,29 @@ ${c}` : c;
1615
1618
  };
1616
1619
  }
1617
1620
  }
1618
- }, q = class e {
1621
+ }, K = class e {
1619
1622
  tokens;
1620
1623
  options;
1621
1624
  state;
1622
1625
  inlineQueue;
1623
1626
  tokenizer;
1624
1627
  constructor(e) {
1625
- this.tokens = [], this.tokens.links = Object.create(null), this.options = e || _t, this.options.tokenizer = this.options.tokenizer || new Cn(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = {
1628
+ this.tokens = [], this.tokens.links = Object.create(null), this.options = e || yt, this.options.tokenizer = this.options.tokenizer || new G(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = {
1626
1629
  inLink: !1,
1627
1630
  inRawBlock: !1,
1628
1631
  top: !0
1629
1632
  };
1630
1633
  let t = {
1631
1634
  other: A,
1632
- block: mn.normal,
1633
- inline: hn.normal
1635
+ block: _n.normal,
1636
+ inline: H.normal
1634
1637
  };
1635
- this.options.pedantic ? (t.block = mn.pedantic, t.inline = hn.pedantic) : this.options.gfm && (t.block = mn.gfm, this.options.breaks ? t.inline = hn.breaks : t.inline = hn.gfm), this.tokenizer.rules = t;
1638
+ this.options.pedantic ? (t.block = _n.pedantic, t.inline = H.pedantic) : this.options.gfm && (t.block = _n.gfm, this.options.breaks ? t.inline = H.breaks : t.inline = H.gfm), this.tokenizer.rules = t;
1636
1639
  }
1637
1640
  static get rules() {
1638
1641
  return {
1639
- block: mn,
1640
- inline: hn
1642
+ block: _n,
1643
+ inline: H
1641
1644
  };
1642
1645
  }
1643
1646
  static lex(t, n) {
@@ -1837,18 +1840,18 @@ ${c}` : c;
1837
1840
  if (this.options.silent) console.error(t);
1838
1841
  else throw Error(t);
1839
1842
  }
1840
- }, wn = class {
1843
+ }, q = class {
1841
1844
  options;
1842
1845
  parser;
1843
1846
  constructor(e) {
1844
- this.options = e || _t;
1847
+ this.options = e || yt;
1845
1848
  }
1846
1849
  space(e) {
1847
1850
  return "";
1848
1851
  }
1849
1852
  code({ text: e, lang: t, escaped: n }) {
1850
1853
  let r = (t || "").match(A.notSpaceStart)?.[0], i = e.replace(A.endingNewline, "") + "\n";
1851
- return r ? "<pre><code class=\"language-" + W(r) + "\">" + (n ? i : W(i, !0)) + "</code></pre>\n" : "<pre><code>" + (n ? i : W(i, !0)) + "</code></pre>\n";
1854
+ return r ? "<pre><code class=\"language-" + U(r) + "\">" + (n ? i : U(i, !0)) + "</code></pre>\n" : "<pre><code>" + (n ? i : U(i, !0)) + "</code></pre>\n";
1852
1855
  }
1853
1856
  blockquote({ tokens: e }) {
1854
1857
  return `<blockquote>
@@ -1918,7 +1921,7 @@ ${e}</tr>
1918
1921
  return `<em>${this.parser.parseInline(e)}</em>`;
1919
1922
  }
1920
1923
  codespan({ text: e }) {
1921
- return `<code>${W(e, !0)}</code>`;
1924
+ return `<code>${U(e, !0)}</code>`;
1922
1925
  }
1923
1926
  br(e) {
1924
1927
  return "<br>";
@@ -1927,22 +1930,22 @@ ${e}</tr>
1927
1930
  return `<del>${this.parser.parseInline(e)}</del>`;
1928
1931
  }
1929
1932
  link({ href: e, title: t, tokens: n }) {
1930
- let r = this.parser.parseInline(n), i = _n(e);
1933
+ let r = this.parser.parseInline(n), i = bn(e);
1931
1934
  if (i === null) return r;
1932
1935
  e = i;
1933
1936
  let a = "<a href=\"" + e + "\"";
1934
- return t && (a += " title=\"" + W(t) + "\""), a += ">" + r + "</a>", a;
1937
+ return t && (a += " title=\"" + U(t) + "\""), a += ">" + r + "</a>", a;
1935
1938
  }
1936
1939
  image({ href: e, title: t, text: n, tokens: r }) {
1937
1940
  r && (n = this.parser.parseInline(r, this.parser.textRenderer));
1938
- let i = _n(e);
1939
- if (i === null) return W(n);
1941
+ let i = bn(e);
1942
+ if (i === null) return U(n);
1940
1943
  e = i;
1941
- let a = `<img src="${e}" alt="${W(n)}"`;
1942
- return t && (a += ` title="${W(t)}"`), a += ">", a;
1944
+ let a = `<img src="${e}" alt="${U(n)}"`;
1945
+ return t && (a += ` title="${U(t)}"`), a += ">", a;
1943
1946
  }
1944
1947
  text(e) {
1945
- return "tokens" in e && e.tokens ? this.parser.parseInline(e.tokens) : "escaped" in e && e.escaped ? e.text : W(e.text);
1948
+ return "tokens" in e && e.tokens ? this.parser.parseInline(e.tokens) : "escaped" in e && e.escaped ? e.text : U(e.text);
1946
1949
  }
1947
1950
  }, J = class {
1948
1951
  strong({ text: e }) {
@@ -1980,7 +1983,7 @@ ${e}</tr>
1980
1983
  renderer;
1981
1984
  textRenderer;
1982
1985
  constructor(e) {
1983
- this.options = e || _t, this.options.renderer = this.options.renderer || new wn(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new J();
1986
+ this.options = e || yt, this.options.renderer = this.options.renderer || new q(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new J();
1984
1987
  }
1985
1988
  static parse(t, n) {
1986
1989
  return new e(n).parse(t);
@@ -2130,7 +2133,7 @@ ${e}</tr>
2130
2133
  options;
2131
2134
  block;
2132
2135
  constructor(e) {
2133
- this.options = e || _t;
2136
+ this.options = e || yt;
2134
2137
  }
2135
2138
  static passThroughHooks = /* @__PURE__ */ new Set([
2136
2139
  "preprocess",
@@ -2156,21 +2159,21 @@ ${e}</tr>
2156
2159
  return e;
2157
2160
  }
2158
2161
  provideLexer(e = this.block) {
2159
- return e ? q.lex : q.lexInline;
2162
+ return e ? K.lex : K.lexInline;
2160
2163
  }
2161
2164
  provideParser(e = this.block) {
2162
2165
  return e ? Y.parse : Y.parseInline;
2163
2166
  }
2164
- }, Tn = new class {
2165
- defaults = gt();
2167
+ }, Dn = new class {
2168
+ defaults = vt();
2166
2169
  options = this.setOptions;
2167
2170
  parse = this.parseMarkdown(!0);
2168
2171
  parseInline = this.parseMarkdown(!1);
2169
2172
  Parser = Y;
2170
- Renderer = wn;
2173
+ Renderer = q;
2171
2174
  TextRenderer = J;
2172
- Lexer = q;
2173
- Tokenizer = Cn;
2175
+ Lexer = K;
2176
+ Tokenizer = G;
2174
2177
  Hooks = X;
2175
2178
  constructor(...e) {
2176
2179
  this.use(...e);
@@ -2222,7 +2225,7 @@ ${e}</tr>
2222
2225
  }
2223
2226
  "childTokens" in e && e.childTokens && (t.childTokens[e.name] = e.childTokens);
2224
2227
  }), n.extensions = t), e.renderer) {
2225
- let t = this.defaults.renderer || new wn(this.defaults);
2228
+ let t = this.defaults.renderer || new q(this.defaults);
2226
2229
  for (let n in e.renderer) {
2227
2230
  if (!(n in t)) throw Error(`renderer '${n}' does not exist`);
2228
2231
  if (["options", "parser"].includes(n)) continue;
@@ -2235,7 +2238,7 @@ ${e}</tr>
2235
2238
  n.renderer = t;
2236
2239
  }
2237
2240
  if (e.tokenizer) {
2238
- let t = this.defaults.tokenizer || new Cn(this.defaults);
2241
+ let t = this.defaults.tokenizer || new G(this.defaults);
2239
2242
  for (let n in e.tokenizer) {
2240
2243
  if (!(n in t)) throw Error(`tokenizer '${n}' does not exist`);
2241
2244
  if ([
@@ -2295,7 +2298,7 @@ ${e}</tr>
2295
2298
  }, this;
2296
2299
  }
2297
2300
  lexer(e, t) {
2298
- return q.lex(e, t ?? this.defaults);
2301
+ return K.lex(e, t ?? this.defaults);
2299
2302
  }
2300
2303
  parser(e, t) {
2301
2304
  return Y.parse(e, t ?? this.defaults);
@@ -2310,14 +2313,14 @@ ${e}</tr>
2310
2313
  if (typeof t > "u" || t === null) return a(/* @__PURE__ */ Error("marked(): input parameter is undefined or null"));
2311
2314
  if (typeof t != "string") return a(/* @__PURE__ */ Error("marked(): input parameter is of type " + Object.prototype.toString.call(t) + ", string expected"));
2312
2315
  if (i.hooks && (i.hooks.options = i, i.hooks.block = e), i.async) return (async () => {
2313
- let n = i.hooks ? await i.hooks.preprocess(t) : t, r = await (i.hooks ? await i.hooks.provideLexer(e) : e ? q.lex : q.lexInline)(n, i), a = i.hooks ? await i.hooks.processAllTokens(r) : r;
2316
+ let n = i.hooks ? await i.hooks.preprocess(t) : t, r = await (i.hooks ? await i.hooks.provideLexer(e) : e ? K.lex : K.lexInline)(n, i), a = i.hooks ? await i.hooks.processAllTokens(r) : r;
2314
2317
  i.walkTokens && await Promise.all(this.walkTokens(a, i.walkTokens));
2315
2318
  let o = await (i.hooks ? await i.hooks.provideParser(e) : e ? Y.parse : Y.parseInline)(a, i);
2316
2319
  return i.hooks ? await i.hooks.postprocess(o) : o;
2317
2320
  })().catch(a);
2318
2321
  try {
2319
2322
  i.hooks && (t = i.hooks.preprocess(t));
2320
- let n = (i.hooks ? i.hooks.provideLexer(e) : e ? q.lex : q.lexInline)(t, i);
2323
+ let n = (i.hooks ? i.hooks.provideLexer(e) : e ? K.lex : K.lexInline)(t, i);
2321
2324
  i.hooks && (n = i.hooks.processAllTokens(n)), i.walkTokens && this.walkTokens(n, i.walkTokens);
2322
2325
  let r = (i.hooks ? i.hooks.provideParser(e) : e ? Y.parse : Y.parseInline)(n, i);
2323
2326
  return i.hooks && (r = i.hooks.postprocess(r)), r;
@@ -2329,7 +2332,7 @@ ${e}</tr>
2329
2332
  onError(e, t) {
2330
2333
  return (n) => {
2331
2334
  if (n.message += "\nPlease report this to https://github.com/markedjs/marked.", e) {
2332
- let e = "<p>An error occurred:</p><pre>" + W(n.message + "", !0) + "</pre>";
2335
+ let e = "<p>An error occurred:</p><pre>" + U(n.message + "", !0) + "</pre>";
2333
2336
  return t ? Promise.resolve(e) : e;
2334
2337
  }
2335
2338
  if (t) return Promise.reject(n);
@@ -2338,23 +2341,76 @@ ${e}</tr>
2338
2341
  }
2339
2342
  }();
2340
2343
  function Z(e, t) {
2341
- return Tn.parse(e, t);
2344
+ return Dn.parse(e, t);
2342
2345
  }
2343
2346
  Z.options = Z.setOptions = function(e) {
2344
- return Tn.setOptions(e), Z.defaults = Tn.defaults, vt(Z.defaults), Z;
2345
- }, Z.getDefaults = gt, Z.defaults = _t, Z.use = function(...e) {
2346
- return Tn.use(...e), Z.defaults = Tn.defaults, vt(Z.defaults), Z;
2347
+ return Dn.setOptions(e), Z.defaults = Dn.defaults, bt(Z.defaults), Z;
2348
+ }, Z.getDefaults = vt, Z.defaults = yt, Z.use = function(...e) {
2349
+ return Dn.use(...e), Z.defaults = Dn.defaults, bt(Z.defaults), Z;
2347
2350
  }, Z.walkTokens = function(e, t) {
2348
- return Tn.walkTokens(e, t);
2349
- }, Z.parseInline = Tn.parseInline, Z.Parser = Y, Z.parser = Y.parse, Z.Renderer = wn, Z.TextRenderer = J, Z.Lexer = q, Z.lexer = q.lex, Z.Tokenizer = Cn, Z.Hooks = X, Z.parse = Z, Z.options, Z.setOptions, Z.use, Z.walkTokens, Z.parseInline, Y.parse, q.lex;
2351
+ return Dn.walkTokens(e, t);
2352
+ }, Z.parseInline = Dn.parseInline, Z.Parser = Y, Z.parser = Y.parse, Z.Renderer = q, Z.TextRenderer = J, Z.Lexer = K, Z.lexer = K.lex, Z.Tokenizer = G, Z.Hooks = X, Z.parse = Z, Z.options, Z.setOptions, Z.use, Z.walkTokens, Z.parseInline, Y.parse, K.lex;
2350
2353
  //#endregion
2351
2354
  //#region src/components/ai-chat/ai-chat.module.scss?inline
2352
- var En = ":host{box-sizing:border-box;flex-direction:column;width:100%;height:100%;display:flex}:host .chat-container{background:var(--luzmo-ai-chat-background,var(--ai-chat-background));border-radius:var(--luzmo-ai-chat-border-radius,var(--ai-chat-border-radius));width:100%;height:100%;min-height:0;padding:var(--luzmo-ai-chat-padding,var(--ai-chat-padding));gap:var(--luzmo-ai-chat-gap,var(--ai-chat-gap));border:var(--luzmo-ai-chat-border,var(--ai-chat-border));box-shadow:var(--luzmo-ai-chat-box-shadow,var(--ai-chat-box-shadow));box-sizing:border-box;flex-direction:column;flex:1;display:flex;overflow:hidden}:host .chat-messages-container{gap:var(--luzmo-ai-chat-gap,var(--ai-chat-gap));flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}:host .chat-messages-container luzmo-ai-chat-empty-state{flex:1;min-height:0}:host .chat-messages-container::-webkit-scrollbar{width:var(--luzmo-ai-chat-scrollbar-width,var(--ai-chat-scrollbar-width))}:host .chat-messages-container::-webkit-scrollbar-track{background:var(--luzmo-ai-chat-scrollbar-track-background,var(--ai-chat-scrollbar-track-background));border-radius:var(--luzmo-ai-chat-scrollbar-track-border-radius,var(--ai-chat-scrollbar-track-border-radius))}:host .chat-messages-container::-webkit-scrollbar-thumb{background:var(--luzmo-ai-chat-scrollbar-thumb-background,var(--ai-chat-scrollbar-thumb-background));border-radius:var(--luzmo-ai-chat-scrollbar-thumb-border-radius,var(--ai-chat-scrollbar-thumb-border-radius))}:host .chat-messages-container::-webkit-scrollbar-thumb:hover{background:var(--luzmo-ai-chat-scrollbar-thumb-hover-background,var(--ai-chat-scrollbar-thumb-hover-background))}:host .chat-messages-container{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-ai-chat-scrollbar-thumb-background,var(--ai-chat-scrollbar-thumb-background)) var(--luzmo-ai-chat-scrollbar-track-background,var(--ai-chat-scrollbar-track-background))}:host luzmo-chat-message{--luzmo-primary:rgba(var(--luzmo-primary-rgb), .08);--chat-message-primary-text-color:var(--luzmo-font-color);--chat-message-primary-border-color:transparent}:host luzmo-chat-message.error{color:var(--luzmo-ai-chat-error-message-color,var(--ai-chat-error-message-color))}:host luzmo-chat-message.cancelled{color:var(--luzmo-ai-chat-cancelled-message-color,var(--ai-chat-cancelled-message-color));font-style:italic}:host .user-message-content{gap:var(--luzmo-spacing-3,8px);flex-direction:column;display:flex}:host .user-message-attachments{gap:var(--luzmo-spacing-2,4px);flex-wrap:wrap;display:flex}:host .user-message-attachment{width:var(--luzmo-ai-chat-user-message-attachment-size,var(--ai-chat-user-message-attachment-size));height:var(--luzmo-ai-chat-user-message-attachment-size,var(--ai-chat-user-message-attachment-size));object-fit:cover;object-position:center;border-radius:var(--luzmo-border-radius-s,4px);pointer-events:none;display:block}:host .user-message-text{white-space:pre-wrap;overflow-wrap:anywhere}:host .markdown-content{line-height:var(--luzmo-ai-chat-markdown-line-height,var(--ai-chat-markdown-line-height))}:host .markdown-content>:first-child{margin-top:0}:host .markdown-content>:last-child{margin-bottom:0}:host .markdown-content p,:host .markdown-content ul,:host .markdown-content ol,:host .markdown-content blockquote,:host .markdown-content pre,:host .markdown-content table{margin:0 0 var(--luzmo-ai-chat-markdown-spacing,var(--ai-chat-markdown-spacing))}:host .markdown-content h1,:host .markdown-content h2,:host .markdown-content h3,:host .markdown-content h4,:host .markdown-content h5,:host .markdown-content h6{margin:var(--luzmo-ai-chat-markdown-heading-spacing,var(--ai-chat-markdown-heading-spacing)) 0 var(--luzmo-ai-chat-markdown-spacing,var(--ai-chat-markdown-spacing));font-weight:var(--luzmo-ai-chat-markdown-heading-font-weight,var(--ai-chat-markdown-heading-font-weight))}:host .markdown-content ul,:host .markdown-content ol{padding-inline-start:var(--luzmo-ai-chat-markdown-list-indent,var(--ai-chat-markdown-list-indent))}:host .markdown-content a{color:var(--luzmo-ai-chat-markdown-link-color,var(--ai-chat-markdown-link-color))}:host .markdown-content code{font-family:var(--luzmo-ai-chat-markdown-code-font-family,var(--ai-chat-markdown-code-font-family));font-size:var(--luzmo-ai-chat-markdown-code-font-size,var(--ai-chat-markdown-code-font-size));background:var(--luzmo-ai-chat-markdown-code-background,var(--ai-chat-markdown-code-background));border-radius:var(--luzmo-ai-chat-markdown-code-border-radius,var(--ai-chat-markdown-code-border-radius));padding:.1em .3em}:host .markdown-content pre{background:var(--luzmo-ai-chat-markdown-code-background,var(--ai-chat-markdown-code-background));border-radius:var(--luzmo-ai-chat-markdown-code-border-radius,var(--ai-chat-markdown-code-border-radius));padding:.75em 1em;overflow-x:auto}:host .markdown-content pre code{background:0 0;padding:0}:host .markdown-content blockquote{border-inline-start:.1875rem solid var(--luzmo-ai-chat-markdown-border-color,var(--ai-chat-markdown-border-color));padding-inline-start:.75rem}:host .markdown-content hr{border:0;border-top:.0625rem solid var(--luzmo-ai-chat-markdown-border-color,var(--ai-chat-markdown-border-color));margin:var(--luzmo-ai-chat-markdown-heading-spacing,var(--ai-chat-markdown-heading-spacing)) 0}:host .markdown-content table{border-collapse:collapse;width:100%}:host .markdown-content th,:host .markdown-content td{border:.0625rem solid var(--luzmo-ai-chat-markdown-border-color,var(--ai-chat-markdown-border-color));text-align:start;padding:.375rem .625rem}:host .markdown-content th{background:var(--luzmo-ai-chat-markdown-table-header-background,var(--ai-chat-markdown-table-header-background));font-weight:600}:host .assistant-message-wrapper{gap:var(--luzmo-ai-chat-assistant-message-actions-margin-top,var(--ai-chat-assistant-message-actions-margin-top));font-family:var(--luzmo-ai-chat-assistant-message-font-family,var(--ai-chat-assistant-message-font-family));font-size:var(--luzmo-ai-chat-assistant-message-font-size,var(--ai-chat-assistant-message-font-size));line-height:var(--luzmo-ai-chat-assistant-message-line-height,var(--ai-chat-assistant-message-line-height));--chat-message-font-family:var(--luzmo-ai-chat-assistant-message-font-family,var(--ai-chat-assistant-message-font-family));--luzmo-chat-message-font-family:var(--luzmo-ai-chat-assistant-message-font-family,var(--ai-chat-assistant-message-font-family));--chat-message-font-size:var(--luzmo-ai-chat-assistant-message-font-size,var(--ai-chat-assistant-message-font-size));--luzmo-chat-message-font-size:var(--luzmo-ai-chat-assistant-message-font-size,var(--ai-chat-assistant-message-font-size));--chat-message-line-height:var(--luzmo-ai-chat-assistant-message-line-height,var(--ai-chat-assistant-message-line-height));--luzmo-chat-message-line-height:var(--luzmo-ai-chat-assistant-message-line-height,var(--ai-chat-assistant-message-line-height));flex-direction:column;display:flex}:host .assistant-message-body{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}:host .assistant-message-actions{align-items:center;gap:var(--luzmo-ai-chat-assistant-message-actions-gap,var(--ai-chat-assistant-message-actions-gap));flex-wrap:wrap;display:none}:host .assistant-message-actions.assistant-message-actions--has-content{display:flex}:host .assistant-message-actions.assistant-message-actions--confirming{flex-direction:column;align-items:flex-start}:host .assistant-message-actions .assistant-message-action-confirm-message{font-style:var(--luzmo-ai-chat-assistant-message-actions-font-style,var(--ai-chat-assistant-message-actions-font-style));color:var(--luzmo-ai-chat-assistant-message-actions-color,var(--ai-chat-assistant-message-actions-color));white-space:pre-line}:host .assistant-message-actions .assistant-message-action-confirm-controls{align-items:center;gap:var(--luzmo-ai-chat-assistant-message-actions-gap,var(--ai-chat-assistant-message-actions-gap));flex-wrap:wrap;display:flex}:host .assistant-message-actions luzmo-button.assistant-message-action,:host .assistant-message-actions slot::slotted(luzmo-button),:host .assistant-message-actions slot::slotted(button),:host .assistant-message-actions slot::slotted(a),:host .assistant-message-actions slot::slotted(input),:host .assistant-message-actions slot::slotted(select),:host .assistant-message-actions slot::slotted(textarea){font-style:normal}:host .assistant-message-actions slot::slotted(:not(luzmo-button):not(button):not(a):not(input):not(select):not(textarea)){font-style:var(--luzmo-ai-chat-assistant-message-actions-font-style,var(--ai-chat-assistant-message-actions-font-style));color:var(--luzmo-ai-chat-assistant-message-actions-color,var(--ai-chat-assistant-message-actions-color))}:host .assistant-context-menu-trigger{width:var(--luzmo-ai-chat-context-menu-trigger-size,var(--ai-chat-context-menu-trigger-size));height:var(--luzmo-ai-chat-context-menu-trigger-size,var(--ai-chat-context-menu-trigger-size));border:.0625rem solid var(--luzmo-ai-chat-context-menu-trigger-border-color,var(--ai-chat-context-menu-trigger-border-color));border-radius:var(--luzmo-ai-chat-context-menu-trigger-border-radius,var(--ai-chat-context-menu-trigger-border-radius));background:var(--luzmo-ai-chat-context-menu-trigger-background,var(--ai-chat-context-menu-trigger-background));color:var(--luzmo-ai-chat-context-menu-trigger-color,var(--ai-chat-context-menu-trigger-color));cursor:pointer;justify-content:center;align-items:center;padding:0;font-size:.875rem;line-height:1;transition:all .15s;display:inline-flex}:host .assistant-context-menu-trigger:hover{background:var(--luzmo-ai-chat-context-menu-trigger-hover-background,var(--ai-chat-context-menu-trigger-hover-background));border-color:var(--luzmo-ai-chat-context-menu-trigger-hover-border-color,var(--ai-chat-context-menu-trigger-hover-border-color));color:var(--luzmo-ai-chat-context-menu-trigger-hover-color,var(--ai-chat-context-menu-trigger-hover-color))}:host .assistant-context-menu-trigger:disabled{cursor:not-allowed;opacity:.6}:host .assistant-context-menu-trigger:disabled:hover{background:var(--luzmo-ai-chat-context-menu-trigger-background,var(--ai-chat-context-menu-trigger-background));border-color:var(--luzmo-ai-chat-context-menu-trigger-border-color,var(--ai-chat-context-menu-trigger-border-color));color:var(--luzmo-ai-chat-context-menu-trigger-color,var(--ai-chat-context-menu-trigger-color))}:host .assistant-context-menu-item{width:100%;color:var(--luzmo-font-color);text-align:start;cursor:pointer;font-family:var(--luzmo-ai-chat-context-menu-item-font-family,var(--ai-chat-context-menu-item-font-family));background:0 0;border:0;padding:.5rem .75rem}:host .assistant-context-menu-item:hover{background:var(--luzmo-ai-chat-context-menu-item-hover-background,var(--ai-chat-context-menu-item-hover-background))}:host .assistant-context-menu-item:disabled{opacity:.4;cursor:not-allowed}:host .assistant-context-menu-item:disabled:hover{background:0 0}:host luzmo-ai-interaction-textarea{flex-grow:0;flex-shrink:0}:host luzmo-progress-steps{padding:0 .25rem}:host .loading-message{color:var(--luzmo-font-color);align-items:center;gap:.5rem;display:flex}:host .loading-message svg{color:var(--luzmo-ai-chat-loading-message-color,var(--ai-chat-loading-message-color));font-size:var(--luzmo-ai-chat-loading-message-icon-font-size,var(--ai-chat-loading-message-icon-font-size,1rem));justify-content:center;align-items:center;display:flex}:host .loading-message svg.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){:host .assistant-context-menu-trigger{transition:none}:host .loading-message svg.spin{animation:none}}:host{--ai-chat-background:var(--luzmo-background-color);--ai-chat-border-radius:0;--ai-chat-padding:0;--ai-chat-gap:1rem;--ai-chat-border:none;--ai-chat-box-shadow:none;--ai-chat-loading-message-color:var(--luzmo-primary);--ai-chat-loading-message-icon-font-size:1rem;--ai-chat-error-message-color:var(--luzmo-danger,#dc3545);--ai-chat-cancelled-message-color:var(--luzmo-font-color-dimmed,var(--luzmo-font-color-extra-dimmed));--ai-chat-scrollbar-width:var(--luzmo-scrollbar-size);--ai-chat-scrollbar-track-background:var(--luzmo-scrollbar-track-background);--ai-chat-scrollbar-track-border-radius:var(--luzmo-scrollbar-track-border-radius);--ai-chat-scrollbar-thumb-background:var(--luzmo-scrollbar-thumb-background);--ai-chat-scrollbar-thumb-border-radius:var(--luzmo-scrollbar-thumb-border-radius);--ai-chat-scrollbar-thumb-hover-background:var(--luzmo-scrollbar-thumb-hover-background);--ai-chat-context-menu-trigger-size:1.5rem;--ai-chat-context-menu-trigger-border-color:var(--luzmo-border-color);--ai-chat-context-menu-trigger-border-radius:.375rem;--ai-chat-context-menu-trigger-background:var(--luzmo-background-color,transparent);--ai-chat-context-menu-trigger-color:var(--luzmo-font-color,#5a5a5a);--ai-chat-context-menu-trigger-hover-background:var(--luzmo-background-color-hover,#4434ff14);--ai-chat-context-menu-trigger-hover-border-color:var(--luzmo-border-color-hover,var(--luzmo-border-color));--ai-chat-context-menu-trigger-hover-color:var(--luzmo-font-color,#5a5a5a);--ai-chat-context-menu-item-hover-background:var(--luzmo-background-color-hover,#4434ff14);--ai-chat-context-menu-item-font-family:var(--luzmo-font-family);--ai-chat-markdown-line-height:1.5;--ai-chat-markdown-spacing:var(--luzmo-spacing-3);--ai-chat-markdown-heading-spacing:var(--luzmo-spacing-4);--ai-chat-markdown-heading-font-weight:var(--luzmo-font-weight-bold);--ai-chat-markdown-list-indent:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-3));--ai-chat-markdown-link-color:var(--luzmo-primary);--ai-chat-markdown-code-font-family:var(--luzmo-font-family-mono,ui-monospace, monospace);--ai-chat-markdown-code-font-size:.875em;--ai-chat-markdown-code-background:var(--luzmo-background-color-highlight);--ai-chat-markdown-code-border-radius:var(--luzmo-border-radius-s);--ai-chat-markdown-border-color:var(--luzmo-border-color);--ai-chat-markdown-table-header-background:var(--luzmo-background-color-highlight);--ai-chat-assistant-message-actions-gap:var(--luzmo-spacing-2);--ai-chat-assistant-message-actions-margin-top:var(--luzmo-spacing-3);--ai-chat-assistant-message-actions-color:var(--luzmo-font-color-extra-dimmed);--ai-chat-assistant-message-actions-font-style:italic;--ai-chat-assistant-message-font-family:var(--luzmo-font-family);--ai-chat-assistant-message-font-size:var(--luzmo-font-size-s,12px);--ai-chat-assistant-message-line-height:var(--ai-chat-markdown-line-height);--ai-chat-user-message-attachment-size:64px}", Dn = ":host{box-sizing:border-box;width:100%;min-height:0;padding-block:var(--luzmo-ai-chat-empty-state-padding-block,var(--ai-chat-empty-state-padding-block));padding-inline:var(--luzmo-ai-chat-empty-state-padding-inline,var(--ai-chat-empty-state-padding-inline));flex:1;justify-content:center;align-items:center;display:flex}.empty-state{justify-content:center;align-items:center;gap:var(--luzmo-ai-chat-empty-state-header-actions-gap,var(--ai-chat-empty-state-header-actions-gap));width:100%;max-width:var(--luzmo-ai-chat-empty-state-max-width,var(--ai-chat-empty-state-max-width));text-align:center;flex-direction:column;display:flex}.header{flex-direction:column;align-items:center;width:100%;display:flex}.actions{align-items:center;gap:var(--luzmo-ai-chat-empty-state-actions-gap,var(--ai-chat-empty-state-actions-gap));flex-direction:column;width:100%;display:flex}.title{font-family:var(--luzmo-font-family);font-size:var(--luzmo-ai-chat-empty-state-title-font-size,var(--ai-chat-empty-state-title-font-size));font-weight:var(--luzmo-ai-chat-empty-state-title-font-weight,var(--ai-chat-empty-state-title-font-weight));line-height:var(--luzmo-ai-chat-empty-state-title-line-height,var(--ai-chat-empty-state-title-line-height));color:var(--luzmo-ai-chat-empty-state-title-color,var(--ai-chat-empty-state-title-color));text-wrap:balance;margin:0}.subtitle{font-family:var(--luzmo-font-family);font-size:var(--luzmo-ai-chat-empty-state-subtitle-font-size,var(--ai-chat-empty-state-subtitle-font-size));font-weight:var(--luzmo-ai-chat-empty-state-subtitle-font-weight,var(--ai-chat-empty-state-subtitle-font-weight));line-height:var(--luzmo-ai-chat-empty-state-subtitle-line-height,var(--ai-chat-empty-state-subtitle-line-height));color:var(--luzmo-ai-chat-empty-state-subtitle-color,var(--ai-chat-empty-state-subtitle-color));margin:0}.suggestions{justify-content:center;align-items:center;gap:var(--luzmo-ai-chat-empty-state-suggestions-gap,var(--ai-chat-empty-state-suggestions-gap));flex-wrap:wrap;width:100%;display:flex}luzmo-action-button{max-width:100%}:host{--ai-chat-empty-state-header-actions-gap:1.5rem;--ai-chat-empty-state-actions-gap:var(--luzmo-spacing-4);--ai-chat-empty-state-suggestions-gap:var(--luzmo-spacing-3);--ai-chat-empty-state-max-width:22.5rem;--ai-chat-empty-state-padding-block:2rem;--ai-chat-empty-state-padding-inline:var(--luzmo-spacing-5);--ai-chat-empty-state-title-font-size:var(--luzmo-font-size-l);--ai-chat-empty-state-title-font-weight:var(--luzmo-font-weight);--ai-chat-empty-state-title-line-height:1.4;--ai-chat-empty-state-title-color:var(--luzmo-font-color-hard);--ai-chat-empty-state-subtitle-font-size:var(--luzmo-font-size-s);--ai-chat-empty-state-subtitle-font-weight:var(--luzmo-font-weight);--ai-chat-empty-state-subtitle-line-height:var(--luzmo-line-height);--ai-chat-empty-state-subtitle-color:var(--luzmo-font-color-dimmed,var(--luzmo-font-color-extra-dimmed))}", Q = class extends i {
2355
+ var On = ":host{box-sizing:border-box;flex-direction:column;width:100%;height:100%;display:flex}:host .chat-container{background:var(--luzmo-ai-chat-background,var(--ai-chat-background));border-radius:var(--luzmo-ai-chat-border-radius,var(--ai-chat-border-radius));width:100%;height:100%;min-height:0;padding:var(--luzmo-ai-chat-padding,var(--ai-chat-padding));gap:var(--luzmo-ai-chat-gap,var(--ai-chat-gap));border:var(--luzmo-ai-chat-border,var(--ai-chat-border));box-shadow:var(--luzmo-ai-chat-box-shadow,var(--ai-chat-box-shadow));box-sizing:border-box;flex-direction:column;flex:1;display:flex;overflow:hidden}:host .chat-messages-container{gap:var(--luzmo-ai-chat-gap,var(--ai-chat-gap));flex-direction:column;flex:1;min-height:0;display:flex;overflow:auto}:host .chat-messages-container luzmo-ai-chat-empty-state{flex:1;min-height:0}:host .chat-messages-container::-webkit-scrollbar{width:var(--luzmo-ai-chat-scrollbar-width,var(--ai-chat-scrollbar-width))}:host .chat-messages-container::-webkit-scrollbar-track{background:var(--luzmo-ai-chat-scrollbar-track-background,var(--ai-chat-scrollbar-track-background));border-radius:var(--luzmo-ai-chat-scrollbar-track-border-radius,var(--ai-chat-scrollbar-track-border-radius))}:host .chat-messages-container::-webkit-scrollbar-thumb{background:var(--luzmo-ai-chat-scrollbar-thumb-background,var(--ai-chat-scrollbar-thumb-background));border-radius:var(--luzmo-ai-chat-scrollbar-thumb-border-radius,var(--ai-chat-scrollbar-thumb-border-radius))}:host .chat-messages-container::-webkit-scrollbar-thumb:hover{background:var(--luzmo-ai-chat-scrollbar-thumb-hover-background,var(--ai-chat-scrollbar-thumb-hover-background))}:host .chat-messages-container{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-ai-chat-scrollbar-thumb-background,var(--ai-chat-scrollbar-thumb-background)) var(--luzmo-ai-chat-scrollbar-track-background,var(--ai-chat-scrollbar-track-background))}:host luzmo-chat-message{--luzmo-primary:rgba(var(--luzmo-primary-rgb), .08);--chat-message-primary-text-color:var(--luzmo-font-color);--chat-message-primary-border-color:transparent}:host luzmo-chat-message.error{color:var(--luzmo-ai-chat-error-message-color,var(--ai-chat-error-message-color))}:host luzmo-chat-message.cancelled{color:var(--luzmo-ai-chat-cancelled-message-color,var(--ai-chat-cancelled-message-color));font-style:italic}:host .user-message-content{gap:var(--luzmo-spacing-3,8px);flex-direction:column;display:flex}:host .user-message-attachments{gap:var(--luzmo-spacing-2,4px);flex-wrap:wrap;display:flex}:host .user-message-attachment{width:var(--luzmo-ai-chat-user-message-attachment-size,var(--ai-chat-user-message-attachment-size));height:var(--luzmo-ai-chat-user-message-attachment-size,var(--ai-chat-user-message-attachment-size));object-fit:cover;object-position:center;border-radius:var(--luzmo-border-radius-s,4px);pointer-events:none;display:block}:host .user-message-text{white-space:pre-wrap;overflow-wrap:anywhere}:host .markdown-content{line-height:var(--luzmo-ai-chat-markdown-line-height,var(--ai-chat-markdown-line-height))}:host .markdown-content>:first-child{margin-top:0}:host .markdown-content>:last-child{margin-bottom:0}:host .markdown-content p,:host .markdown-content ul,:host .markdown-content ol,:host .markdown-content blockquote,:host .markdown-content pre,:host .markdown-content table{margin:0 0 var(--luzmo-ai-chat-markdown-spacing,var(--ai-chat-markdown-spacing))}:host .markdown-content h1,:host .markdown-content h2,:host .markdown-content h3,:host .markdown-content h4,:host .markdown-content h5,:host .markdown-content h6{margin:var(--luzmo-ai-chat-markdown-heading-spacing,var(--ai-chat-markdown-heading-spacing)) 0 var(--luzmo-ai-chat-markdown-spacing,var(--ai-chat-markdown-spacing));font-weight:var(--luzmo-ai-chat-markdown-heading-font-weight,var(--ai-chat-markdown-heading-font-weight))}:host .markdown-content ul,:host .markdown-content ol{padding-inline-start:var(--luzmo-ai-chat-markdown-list-indent,var(--ai-chat-markdown-list-indent))}:host .markdown-content a{color:var(--luzmo-ai-chat-markdown-link-color,var(--ai-chat-markdown-link-color))}:host .markdown-content code{font-family:var(--luzmo-ai-chat-markdown-code-font-family,var(--ai-chat-markdown-code-font-family));font-size:var(--luzmo-ai-chat-markdown-code-font-size,var(--ai-chat-markdown-code-font-size));background:var(--luzmo-ai-chat-markdown-code-background,var(--ai-chat-markdown-code-background));border-radius:var(--luzmo-ai-chat-markdown-code-border-radius,var(--ai-chat-markdown-code-border-radius));padding:.1em .3em}:host .markdown-content pre{background:var(--luzmo-ai-chat-markdown-code-background,var(--ai-chat-markdown-code-background));border-radius:var(--luzmo-ai-chat-markdown-code-border-radius,var(--ai-chat-markdown-code-border-radius));padding:.75em 1em;overflow-x:auto}:host .markdown-content pre code{background:0 0;padding:0}:host .markdown-content blockquote{border-inline-start:.1875rem solid var(--luzmo-ai-chat-markdown-border-color,var(--ai-chat-markdown-border-color));padding-inline-start:.75rem}:host .markdown-content hr{border:0;border-top:.0625rem solid var(--luzmo-ai-chat-markdown-border-color,var(--ai-chat-markdown-border-color));margin:var(--luzmo-ai-chat-markdown-heading-spacing,var(--ai-chat-markdown-heading-spacing)) 0}:host .markdown-content table{border-collapse:collapse;width:100%}:host .markdown-content th,:host .markdown-content td{border:.0625rem solid var(--luzmo-ai-chat-markdown-border-color,var(--ai-chat-markdown-border-color));text-align:start;padding:.375rem .625rem}:host .markdown-content th{background:var(--luzmo-ai-chat-markdown-table-header-background,var(--ai-chat-markdown-table-header-background));font-weight:600}:host .assistant-message-wrapper{gap:var(--luzmo-ai-chat-assistant-message-actions-margin-top,var(--ai-chat-assistant-message-actions-margin-top));font-family:var(--luzmo-ai-chat-assistant-message-font-family,var(--ai-chat-assistant-message-font-family));font-size:var(--luzmo-ai-chat-assistant-message-font-size,var(--ai-chat-assistant-message-font-size));line-height:var(--luzmo-ai-chat-assistant-message-line-height,var(--ai-chat-assistant-message-line-height));--chat-message-font-family:var(--luzmo-ai-chat-assistant-message-font-family,var(--ai-chat-assistant-message-font-family));--luzmo-chat-message-font-family:var(--luzmo-ai-chat-assistant-message-font-family,var(--ai-chat-assistant-message-font-family));--chat-message-font-size:var(--luzmo-ai-chat-assistant-message-font-size,var(--ai-chat-assistant-message-font-size));--luzmo-chat-message-font-size:var(--luzmo-ai-chat-assistant-message-font-size,var(--ai-chat-assistant-message-font-size));--chat-message-line-height:var(--luzmo-ai-chat-assistant-message-line-height,var(--ai-chat-assistant-message-line-height));--luzmo-chat-message-line-height:var(--luzmo-ai-chat-assistant-message-line-height,var(--ai-chat-assistant-message-line-height));flex-direction:column;display:flex}:host .assistant-message-body{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}:host .assistant-message-actions{align-items:center;gap:var(--luzmo-ai-chat-assistant-message-actions-gap,var(--ai-chat-assistant-message-actions-gap));flex-wrap:wrap;display:none}:host .assistant-message-actions.assistant-message-actions--has-content{display:flex}:host .assistant-message-actions.assistant-message-actions--confirming{flex-direction:column;align-items:flex-start}:host .assistant-message-actions .assistant-message-action-confirm-message{font-style:var(--luzmo-ai-chat-assistant-message-actions-font-style,var(--ai-chat-assistant-message-actions-font-style));color:var(--luzmo-ai-chat-assistant-message-actions-color,var(--ai-chat-assistant-message-actions-color));white-space:pre-line}:host .assistant-message-actions .assistant-message-action-confirm-controls{align-items:center;gap:var(--luzmo-ai-chat-assistant-message-actions-gap,var(--ai-chat-assistant-message-actions-gap));flex-wrap:wrap;display:flex}:host .assistant-message-actions luzmo-button.assistant-message-action,:host .assistant-message-actions slot::slotted(luzmo-button),:host .assistant-message-actions slot::slotted(button),:host .assistant-message-actions slot::slotted(a),:host .assistant-message-actions slot::slotted(input),:host .assistant-message-actions slot::slotted(select),:host .assistant-message-actions slot::slotted(textarea){font-style:normal}:host .assistant-message-actions slot::slotted(:not(luzmo-button):not(button):not(a):not(input):not(select):not(textarea)){font-style:var(--luzmo-ai-chat-assistant-message-actions-font-style,var(--ai-chat-assistant-message-actions-font-style));color:var(--luzmo-ai-chat-assistant-message-actions-color,var(--ai-chat-assistant-message-actions-color))}:host .assistant-context-menu-trigger{width:var(--luzmo-ai-chat-context-menu-trigger-size,var(--ai-chat-context-menu-trigger-size));height:var(--luzmo-ai-chat-context-menu-trigger-size,var(--ai-chat-context-menu-trigger-size));border:.0625rem solid var(--luzmo-ai-chat-context-menu-trigger-border-color,var(--ai-chat-context-menu-trigger-border-color));border-radius:var(--luzmo-ai-chat-context-menu-trigger-border-radius,var(--ai-chat-context-menu-trigger-border-radius));background:var(--luzmo-ai-chat-context-menu-trigger-background,var(--ai-chat-context-menu-trigger-background));color:var(--luzmo-ai-chat-context-menu-trigger-color,var(--ai-chat-context-menu-trigger-color));cursor:pointer;justify-content:center;align-items:center;padding:0;font-size:.875rem;line-height:1;transition:all .15s;display:inline-flex}:host .assistant-context-menu-trigger:hover{background:var(--luzmo-ai-chat-context-menu-trigger-hover-background,var(--ai-chat-context-menu-trigger-hover-background));border-color:var(--luzmo-ai-chat-context-menu-trigger-hover-border-color,var(--ai-chat-context-menu-trigger-hover-border-color));color:var(--luzmo-ai-chat-context-menu-trigger-hover-color,var(--ai-chat-context-menu-trigger-hover-color))}:host .assistant-context-menu-trigger:disabled{cursor:not-allowed;opacity:.6}:host .assistant-context-menu-trigger:disabled:hover{background:var(--luzmo-ai-chat-context-menu-trigger-background,var(--ai-chat-context-menu-trigger-background));border-color:var(--luzmo-ai-chat-context-menu-trigger-border-color,var(--ai-chat-context-menu-trigger-border-color));color:var(--luzmo-ai-chat-context-menu-trigger-color,var(--ai-chat-context-menu-trigger-color))}:host .assistant-context-menu-item{width:100%;color:var(--luzmo-font-color);text-align:start;cursor:pointer;font-family:var(--luzmo-ai-chat-context-menu-item-font-family,var(--ai-chat-context-menu-item-font-family));background:0 0;border:0;padding:.5rem .75rem}:host .assistant-context-menu-item:hover{background:var(--luzmo-ai-chat-context-menu-item-hover-background,var(--ai-chat-context-menu-item-hover-background))}:host .assistant-context-menu-item:disabled{opacity:.4;cursor:not-allowed}:host .assistant-context-menu-item:disabled:hover{background:0 0}:host luzmo-ai-interaction-textarea{flex-grow:0;flex-shrink:0}:host luzmo-progress-steps{padding:0 .25rem}:host .loading-message{color:var(--luzmo-font-color);align-items:center;gap:.5rem;display:flex}:host .loading-message svg{color:var(--luzmo-ai-chat-loading-message-color,var(--ai-chat-loading-message-color));font-size:var(--luzmo-ai-chat-loading-message-icon-font-size,var(--ai-chat-loading-message-icon-font-size,1rem));justify-content:center;align-items:center;display:flex}:host .loading-message svg.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){:host .assistant-context-menu-trigger{transition:none}:host .loading-message svg.spin{animation:none}}:host{--ai-chat-background:var(--luzmo-background-color);--ai-chat-border-radius:0;--ai-chat-padding:0;--ai-chat-gap:1rem;--ai-chat-border:none;--ai-chat-box-shadow:none;--ai-chat-loading-message-color:var(--luzmo-primary);--ai-chat-loading-message-icon-font-size:1rem;--ai-chat-error-message-color:var(--luzmo-danger,#dc3545);--ai-chat-cancelled-message-color:var(--luzmo-font-color-dimmed,var(--luzmo-font-color-extra-dimmed));--ai-chat-scrollbar-width:var(--luzmo-scrollbar-size);--ai-chat-scrollbar-track-background:var(--luzmo-scrollbar-track-background);--ai-chat-scrollbar-track-border-radius:var(--luzmo-scrollbar-track-border-radius);--ai-chat-scrollbar-thumb-background:var(--luzmo-scrollbar-thumb-background);--ai-chat-scrollbar-thumb-border-radius:var(--luzmo-scrollbar-thumb-border-radius);--ai-chat-scrollbar-thumb-hover-background:var(--luzmo-scrollbar-thumb-hover-background);--ai-chat-context-menu-trigger-size:1.5rem;--ai-chat-context-menu-trigger-border-color:var(--luzmo-border-color);--ai-chat-context-menu-trigger-border-radius:.375rem;--ai-chat-context-menu-trigger-background:var(--luzmo-background-color,transparent);--ai-chat-context-menu-trigger-color:var(--luzmo-font-color,#5a5a5a);--ai-chat-context-menu-trigger-hover-background:var(--luzmo-background-color-hover,#4434ff14);--ai-chat-context-menu-trigger-hover-border-color:var(--luzmo-border-color-hover,var(--luzmo-border-color));--ai-chat-context-menu-trigger-hover-color:var(--luzmo-font-color,#5a5a5a);--ai-chat-context-menu-item-hover-background:var(--luzmo-background-color-hover,#4434ff14);--ai-chat-context-menu-item-font-family:var(--luzmo-font-family);--ai-chat-markdown-line-height:1.5;--ai-chat-markdown-spacing:var(--luzmo-spacing-3);--ai-chat-markdown-heading-spacing:var(--luzmo-spacing-4);--ai-chat-markdown-heading-font-weight:var(--luzmo-font-weight-bold);--ai-chat-markdown-list-indent:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-3));--ai-chat-markdown-link-color:var(--luzmo-primary);--ai-chat-markdown-code-font-family:var(--luzmo-font-family-mono,ui-monospace, monospace);--ai-chat-markdown-code-font-size:.875em;--ai-chat-markdown-code-background:var(--luzmo-background-color-highlight);--ai-chat-markdown-code-border-radius:var(--luzmo-border-radius-s);--ai-chat-markdown-border-color:var(--luzmo-border-color);--ai-chat-markdown-table-header-background:var(--luzmo-background-color-highlight);--ai-chat-assistant-message-actions-gap:var(--luzmo-spacing-2);--ai-chat-assistant-message-actions-margin-top:var(--luzmo-spacing-3);--ai-chat-assistant-message-actions-color:var(--luzmo-font-color-extra-dimmed);--ai-chat-assistant-message-actions-font-style:italic;--ai-chat-assistant-message-font-family:var(--luzmo-font-family);--ai-chat-assistant-message-font-size:var(--luzmo-font-size-s,12px);--ai-chat-assistant-message-line-height:var(--ai-chat-markdown-line-height);--ai-chat-user-message-attachment-size:64px}";
2356
+ //#endregion
2357
+ //#region src/components/ai-chat/helpers/agent-config.ts
2358
+ function kn(e, t) {
2359
+ if (e.agentConfig) {
2360
+ let n = e.agentConfig, r = t ?? kn({
2361
+ ...e,
2362
+ agentConfig: void 0
2363
+ });
2364
+ return n.context === void 0 && n.type === r.type ? {
2365
+ ...r,
2366
+ ...n,
2367
+ context: r.context
2368
+ } : n.context === void 0 ? {
2369
+ ...n,
2370
+ context: null
2371
+ } : n;
2372
+ }
2373
+ switch (e.agent ?? "item") {
2374
+ case "item":
2375
+ default: return {
2376
+ type: "item",
2377
+ context: {
2378
+ chart: e.chart,
2379
+ task: e.task
2380
+ }
2381
+ };
2382
+ case "dashboard": return {
2383
+ type: "dashboard",
2384
+ context: {
2385
+ dashboard: e.dashboard,
2386
+ currentScreenMode: e.currentScreenMode
2387
+ }
2388
+ };
2389
+ case "custom-item": return {
2390
+ type: "custom-item",
2391
+ context: { customItem: e.customItem }
2392
+ };
2393
+ case "analyst": return { type: "analyst" };
2394
+ }
2395
+ }
2396
+ function An(e) {
2397
+ return {
2398
+ chart: null,
2399
+ dashboard: null,
2400
+ customItem: null,
2401
+ currentScreenMode: void 0,
2402
+ task: void 0,
2403
+ ...e.context
2404
+ };
2405
+ }
2406
+ //#endregion
2407
+ //#region src/components/ai-chat/empty-state/ai-chat-empty-state.module.scss?inline
2408
+ var jn = ":host{box-sizing:border-box;width:100%;min-height:0;padding-block:var(--luzmo-ai-chat-empty-state-padding-block,var(--ai-chat-empty-state-padding-block));padding-inline:var(--luzmo-ai-chat-empty-state-padding-inline,var(--ai-chat-empty-state-padding-inline));flex:1;justify-content:center;align-items:center;display:flex}.empty-state{justify-content:center;align-items:center;gap:var(--luzmo-ai-chat-empty-state-header-actions-gap,var(--ai-chat-empty-state-header-actions-gap));width:100%;max-width:var(--luzmo-ai-chat-empty-state-max-width,var(--ai-chat-empty-state-max-width));text-align:center;flex-direction:column;display:flex}.header{flex-direction:column;align-items:center;width:100%;display:flex}.actions{align-items:center;gap:var(--luzmo-ai-chat-empty-state-actions-gap,var(--ai-chat-empty-state-actions-gap));flex-direction:column;width:100%;display:flex}.title{font-family:var(--luzmo-font-family);font-size:var(--luzmo-ai-chat-empty-state-title-font-size,var(--ai-chat-empty-state-title-font-size));font-weight:var(--luzmo-ai-chat-empty-state-title-font-weight,var(--ai-chat-empty-state-title-font-weight));line-height:var(--luzmo-ai-chat-empty-state-title-line-height,var(--ai-chat-empty-state-title-line-height));color:var(--luzmo-ai-chat-empty-state-title-color,var(--ai-chat-empty-state-title-color));text-wrap:balance;margin:0}.subtitle{font-family:var(--luzmo-font-family);font-size:var(--luzmo-ai-chat-empty-state-subtitle-font-size,var(--ai-chat-empty-state-subtitle-font-size));font-weight:var(--luzmo-ai-chat-empty-state-subtitle-font-weight,var(--ai-chat-empty-state-subtitle-font-weight));line-height:var(--luzmo-ai-chat-empty-state-subtitle-line-height,var(--ai-chat-empty-state-subtitle-line-height));color:var(--luzmo-ai-chat-empty-state-subtitle-color,var(--ai-chat-empty-state-subtitle-color));margin:0}.suggestions{justify-content:center;align-items:center;gap:var(--luzmo-ai-chat-empty-state-suggestions-gap,var(--ai-chat-empty-state-suggestions-gap));flex-wrap:wrap;width:100%;display:flex}luzmo-action-button{max-width:100%}:host{--ai-chat-empty-state-header-actions-gap:1.5rem;--ai-chat-empty-state-actions-gap:var(--luzmo-spacing-4);--ai-chat-empty-state-suggestions-gap:var(--luzmo-spacing-3);--ai-chat-empty-state-max-width:22.5rem;--ai-chat-empty-state-padding-block:2rem;--ai-chat-empty-state-padding-inline:var(--luzmo-spacing-5);--ai-chat-empty-state-title-font-size:var(--luzmo-font-size-l);--ai-chat-empty-state-title-font-weight:var(--luzmo-font-weight);--ai-chat-empty-state-title-line-height:1.4;--ai-chat-empty-state-title-color:var(--luzmo-font-color-hard);--ai-chat-empty-state-subtitle-font-size:var(--luzmo-font-size-s);--ai-chat-empty-state-subtitle-font-weight:var(--luzmo-font-weight);--ai-chat-empty-state-subtitle-line-height:var(--luzmo-line-height);--ai-chat-empty-state-subtitle-color:var(--luzmo-font-color-dimmed,var(--luzmo-font-color-extra-dimmed))}", Mn = class extends i {
2353
2409
  constructor(...e) {
2354
2410
  super(...e), this.title = o("What can I help you with?", { desc: "Title for the AI chat empty state" }), this.subtitle = "", this.suggestions = [], this.disabled = !1;
2355
2411
  }
2356
2412
  static {
2357
- this.styles = f(Dn);
2413
+ this.styles = f(jn);
2358
2414
  }
2359
2415
  static {
2360
2416
  this.tagName = "luzmo-ai-chat-empty-state";
@@ -2407,16 +2463,62 @@ var En = ":host{box-sizing:border-box;flex-direction:column;width:100%;height:10
2407
2463
  };
2408
2464
  //#endregion
2409
2465
  //#region src/components/ai-chat/empty-state/index.ts
2410
- a([p({ type: String })], Q.prototype, "title", void 0), a([p({ type: String })], Q.prototype, "subtitle", void 0), a([p({ type: Array })], Q.prototype, "suggestions", void 0), a([p({
2466
+ a([p({ type: String })], Mn.prototype, "title", void 0), a([p({ type: String })], Mn.prototype, "subtitle", void 0), a([p({ type: Array })], Mn.prototype, "suggestions", void 0), a([p({
2411
2467
  type: Boolean,
2412
2468
  reflect: !0
2413
- })], Q.prototype, "disabled", void 0), customElements.get("luzmo-ai-chat-empty-state") || customElements.define("luzmo-ai-chat-empty-state", Q);
2469
+ })], Mn.prototype, "disabled", void 0), customElements.get("luzmo-ai-chat-empty-state") || customElements.define("luzmo-ai-chat-empty-state", Mn);
2470
+ //#endregion
2471
+ //#region src/components/ai-chat/helpers/elicitation-template.ts
2472
+ var Nn = "answer", Pn = (e) => e.stopPropagation();
2473
+ function Fn(e) {
2474
+ let t = e.content?.[Nn];
2475
+ return typeof t == "string" ? t : void 0;
2476
+ }
2477
+ async function In(e) {
2478
+ e.stopPropagation();
2479
+ let t = e.currentTarget;
2480
+ await t.updateComplete, t.submit();
2481
+ }
2482
+ function Ln({ message: e, state: t, onSubmit: n }) {
2483
+ let r = e.elicitation;
2484
+ if (!r) return d;
2485
+ let i = [{
2486
+ id: Nn,
2487
+ type: "single",
2488
+ title: r.question,
2489
+ required: !0,
2490
+ options: r.options.map((e) => ({
2491
+ value: e,
2492
+ label: e
2493
+ }))
2494
+ }];
2495
+ return te(`${e.id}:${t}`, u`
2496
+ <luzmo-question-box
2497
+ size="s"
2498
+ .questions=${i}
2499
+ .value=${h([r.answer], () => r.answer ? { [Nn]: r.answer } : {})}
2500
+ .labels=${{
2501
+ submit: o("Submit", { desc: "Button that sends the chosen answer to an AI agent question" }),
2502
+ answerTitle: o("Answer", { desc: "Heading above the answer chosen for an AI agent question" }),
2503
+ change: o("Change", { desc: "Button that goes back to pick another answer for an AI agent question" })
2504
+ }}
2505
+ ?readonly=${t === "answered"}
2506
+ ?disabled=${t === "closed"}
2507
+ hide-close
2508
+ hide-skip
2509
+ @luzmo-submit=${n}
2510
+ @input=${Pn}
2511
+ @change=${In}
2512
+ @luzmo-cancel=${Pn}
2513
+ ></luzmo-question-box>
2514
+ `);
2515
+ }
2414
2516
  //#endregion
2415
2517
  //#region src/components/ai-chat/ai-chat-request.ts
2416
- function On(e, t) {
2518
+ function Rn(e, t) {
2417
2519
  return `${e.replace(/\/+$/, "")}/${t.replace(/^\/+|\/+$/g, "")}/aiprompt`;
2418
2520
  }
2419
- function kn(e) {
2521
+ function zn(e) {
2420
2522
  return e.type === "placeholder" ? null : {
2421
2523
  ...e,
2422
2524
  version: e.version || "",
@@ -2425,7 +2527,7 @@ function kn(e) {
2425
2527
  aichartId: e.aichartId || ""
2426
2528
  };
2427
2529
  }
2428
- function An(e, t, n = []) {
2530
+ function Bn(e, t, n = []) {
2429
2531
  return [
2430
2532
  {
2431
2533
  type: "text",
@@ -2441,7 +2543,7 @@ function An(e, t, n = []) {
2441
2543
  }))
2442
2544
  ];
2443
2545
  }
2444
- function jn(e) {
2546
+ function Vn(e) {
2445
2547
  return {
2446
2548
  stream: e.stream ?? !0,
2447
2549
  response_mode: "mixed",
@@ -2449,43 +2551,55 @@ function jn(e) {
2449
2551
  ...e.localeId ? { locale_id: e.localeId } : {}
2450
2552
  };
2451
2553
  }
2452
- function Mn(e, t, n) {
2554
+ function Hn(e, t, n) {
2453
2555
  return {
2454
2556
  agent: e,
2455
2557
  task: t,
2456
- ...jn(n)
2558
+ ...Vn(n)
2457
2559
  };
2458
2560
  }
2459
- function Nn(e) {
2460
- let t = An(e.prompt, e.datasetIds, e.attachmentUrls), n = e.chart ? kn(e.chart) : null;
2561
+ function Un(e) {
2562
+ let t = Bn(e.prompt, e.datasetIds, e.attachmentUrls), n = e.chart ? zn(e.chart) : null;
2461
2563
  return n && t.push({
2462
2564
  type: "item",
2463
2565
  value: n
2464
2566
  }), {
2465
- ...Mn("item", e.task ?? "generate", e),
2567
+ ...Hn("item", e.task ?? "generate", e),
2466
2568
  input: t
2467
2569
  };
2468
2570
  }
2469
- function Pn(e) {
2470
- let t = An(e.prompt, e.datasetIds, e.attachmentUrls);
2571
+ function Wn(e) {
2572
+ let t = Bn(e.prompt, e.datasetIds, e.attachmentUrls);
2471
2573
  return e.dashboard && t.push({
2472
2574
  type: "dashboard",
2473
2575
  value: e.dashboard,
2474
2576
  ...e.currentScreenMode ? { current_screen_mode: e.currentScreenMode } : {}
2475
2577
  }), {
2476
- ...Mn("dashboard", "generate", e),
2578
+ ...Hn("dashboard", "generate", e),
2477
2579
  timezone_id: e.timezoneId ?? "UTC",
2478
2580
  input: t
2479
2581
  };
2480
2582
  }
2481
- function Fn(e) {
2583
+ function Gn(e) {
2482
2584
  return {
2483
- ...Mn("analyst", "generate", e),
2484
- input: An(e.prompt, e.datasetIds, e.attachmentUrls)
2585
+ ...Hn("analyst", "generate", e),
2586
+ input: Bn(e.prompt, e.datasetIds, e.attachmentUrls)
2587
+ };
2588
+ }
2589
+ function Kn(e) {
2590
+ let t = Bn(e.prompt, [], e.attachmentUrls);
2591
+ return e.customItem && t.push({
2592
+ type: "custom-item",
2593
+ value: e.customItem
2594
+ }), {
2595
+ ...Hn("custom-item", "generate", e),
2596
+ text_format: "markdown",
2597
+ ...e.internal ? { internal: !0 } : {},
2598
+ input: t
2485
2599
  };
2486
2600
  }
2487
- function In(e, t) {
2488
- let n = An(t.prompt, t.datasetIds, t.attachmentUrls), r = t.chart ? kn(t.chart) : null;
2601
+ function qn(e, t) {
2602
+ let n = Bn(t.prompt, t.datasetIds, t.attachmentUrls), r = t.chart ? zn(t.chart) : null;
2489
2603
  return r && n.push({
2490
2604
  type: "item",
2491
2605
  value: r
@@ -2495,29 +2609,30 @@ function In(e, t) {
2495
2609
  ...t.currentScreenMode ? { current_screen_mode: t.currentScreenMode } : {}
2496
2610
  }), {
2497
2611
  agent_id: e,
2498
- ...jn(t),
2612
+ ...Vn(t),
2499
2613
  input: n
2500
2614
  };
2501
2615
  }
2502
- function Ln(e, t) {
2503
- if (t.agentId) return In(t.agentId, t);
2616
+ function Jn(e, t) {
2617
+ if (t.agentId) return qn(t.agentId, t);
2504
2618
  switch (e) {
2505
- case "dashboard": return Pn(t);
2506
- case "analyst": return Fn(t);
2507
- default: return Nn(t);
2619
+ case "dashboard": return Wn(t);
2620
+ case "analyst": return Gn(t);
2621
+ case "custom-item": return Kn(t);
2622
+ default: return Un(t);
2508
2623
  }
2509
2624
  }
2510
- function Rn(e, n) {
2625
+ function Yn(e, n) {
2511
2626
  let { authKey: r, authToken: i, apiVersion: a = "0.1.0" } = n;
2512
2627
  return n.attachmentUrls?.length && t(n.attachmentUrls), {
2513
2628
  key: r,
2514
2629
  token: i,
2515
2630
  action: "create",
2516
2631
  version: a,
2517
- properties: Ln(e, n)
2632
+ properties: Jn(e, n)
2518
2633
  };
2519
2634
  }
2520
- function zn(e, t, n, r = "0.1.0", i = null) {
2635
+ function Xn(e, t, n, r = "0.1.0", i = null) {
2521
2636
  return {
2522
2637
  key: t,
2523
2638
  token: n,
@@ -2532,7 +2647,7 @@ function zn(e, t, n, r = "0.1.0", i = null) {
2532
2647
  }
2533
2648
  //#endregion
2534
2649
  //#region src/components/ai-chat/stream/transport.ts
2535
- async function Bn(e) {
2650
+ async function Zn(e) {
2536
2651
  let t = await fetch(e.url, {
2537
2652
  method: "POST",
2538
2653
  headers: { "Content-Type": "application/json" },
@@ -2550,21 +2665,21 @@ async function Bn(e) {
2550
2665
  conversationId: t.headers.get("x-conversation-id")
2551
2666
  };
2552
2667
  }
2553
- function Vn(e) {
2668
+ function Qn(e) {
2554
2669
  let t = e.trim();
2555
2670
  if (!t || t.startsWith(":") || t.startsWith("event:") || t.startsWith("id:")) return null;
2556
2671
  let n = t;
2557
2672
  return n.startsWith("data:") && (n = n.slice(5).trimStart()), !n || n === "[DONE]" ? null : JSON.parse(n);
2558
2673
  }
2559
- function Hn(e, t) {
2674
+ function $n(e, t) {
2560
2675
  try {
2561
- let n = Vn(e);
2676
+ let n = Qn(e);
2562
2677
  n && t(n);
2563
2678
  } catch {
2564
2679
  console.error("Failed to parse stream line");
2565
2680
  }
2566
2681
  }
2567
- async function Un(e, t) {
2682
+ async function er(e, t) {
2568
2683
  let n = e.getReader(), r = new TextDecoder(), i = "";
2569
2684
  try {
2570
2685
  for (;;) {
@@ -2573,18 +2688,18 @@ async function Un(e, t) {
2573
2688
  i += r.decode(a, { stream: !0 });
2574
2689
  let o = i.split(/\r?\n/);
2575
2690
  i = o.pop() ?? "";
2576
- for (let e of o) Hn(e, t);
2691
+ for (let e of o) $n(e, t);
2577
2692
  }
2578
2693
  i += r.decode();
2579
2694
  let e = i.trim();
2580
- e && Hn(e, t);
2695
+ e && $n(e, t);
2581
2696
  } finally {
2582
2697
  n.releaseLock();
2583
2698
  }
2584
2699
  }
2585
2700
  //#endregion
2586
2701
  //#region src/components/ai-chat/stream/progress.ts
2587
- function Wn() {
2702
+ function tr() {
2588
2703
  return {
2589
2704
  id: "root",
2590
2705
  step: "root",
@@ -2597,13 +2712,13 @@ function Wn() {
2597
2712
  }]
2598
2713
  };
2599
2714
  }
2600
- function Gn(e) {
2715
+ function nr(e) {
2601
2716
  let t = e.progress;
2602
2717
  return typeof t != "object" || !t ? !1 : "id" in t && "step" in t && "status" in t;
2603
2718
  }
2604
2719
  //#endregion
2605
2720
  //#region src/components/ai-chat/stream/chunk-extractors.ts
2606
- function Kn(e) {
2721
+ function rr(e) {
2607
2722
  if (!e || typeof e != "object") return "";
2608
2723
  let t = e.assistant_message;
2609
2724
  if (!t || typeof t != "object") return "";
@@ -2613,75 +2728,82 @@ function Kn(e) {
2613
2728
  let n = t.content;
2614
2729
  return typeof n == "string" ? n : n && typeof n == "object" && typeof n.text == "string" ? n.text : "";
2615
2730
  }
2616
- function qn(e) {
2731
+ function ir(e) {
2617
2732
  return e.type === "text_delta" && typeof e.delta == "string" ? e.delta : typeof e.text_delta == "string" ? e.text_delta : typeof e.chunk == "string" ? e.chunk : typeof e.message == "string" ? e.message : typeof e.summary == "string" ? e.summary : "";
2618
2733
  }
2619
- function Jn(e) {
2620
- return Kn(e.result);
2734
+ function ar(e) {
2735
+ return rr(e.result);
2621
2736
  }
2622
- function Yn(e) {
2737
+ function or(e) {
2623
2738
  return !!e.done || e.type === "finish" || e.type === "done" || "question" in e;
2624
2739
  }
2625
- function Xn(e, t) {
2740
+ function sr(e, t) {
2626
2741
  let n = typeof e.conversation_id == "string" && e.conversation_id || typeof e.conversationId == "string" && e.conversationId;
2627
2742
  n && t.callbacks.onConversationIdChange(n);
2628
2743
  }
2629
- function Zn(e) {
2744
+ function cr(e) {
2630
2745
  for (let t of e) if (t && typeof t == "object" && t.type === "item") {
2631
2746
  let e = t.value;
2632
2747
  if (e && typeof e == "object") return e;
2633
2748
  }
2634
2749
  return null;
2635
2750
  }
2636
- function Qn(e) {
2751
+ function lr(e) {
2637
2752
  let t = e.chart ?? e.generatedChart;
2638
2753
  if (t && typeof t == "object") return t;
2639
2754
  let n = e.aiMessageAssets ?? e.ai_message_assets;
2640
2755
  if (Array.isArray(n)) {
2641
- let e = Zn(n);
2756
+ let e = cr(n);
2642
2757
  if (e) return e;
2643
2758
  }
2644
2759
  let r = e.result;
2645
2760
  if (r && typeof r == "object") {
2646
2761
  let e = r.assistant_message, t = e?.aiMessageAssets ?? e?.ai_message_assets;
2647
- if (Array.isArray(t)) return Zn(t);
2762
+ if (Array.isArray(t)) return cr(t);
2648
2763
  }
2649
2764
  return null;
2650
2765
  }
2651
- function $n(e) {
2766
+ function ur(e) {
2652
2767
  for (let t of e) if (t && typeof t == "object" && t.type === "dashboard") {
2653
2768
  let e = t.value;
2654
2769
  if (e && typeof e == "object" && Array.isArray(e.views)) return e;
2655
2770
  }
2656
2771
  return null;
2657
2772
  }
2658
- function er(e) {
2773
+ function dr(e) {
2659
2774
  for (let t of e) if (t && typeof t == "object" && t.type === "dashboard") {
2660
2775
  let e = t.name;
2661
2776
  if (e && typeof e == "object") return e;
2662
2777
  }
2663
2778
  }
2664
- function tr(...e) {
2779
+ function fr(...e) {
2665
2780
  return e.find(Array.isArray);
2666
2781
  }
2667
- function nr(e) {
2782
+ function pr(e) {
2668
2783
  if (e.views && Array.isArray(e.views)) return e;
2669
2784
  let t = e.aiMessageAssets ?? e.ai_message_assets;
2670
- if (Array.isArray(t)) return $n(t);
2785
+ if (Array.isArray(t)) return ur(t);
2671
2786
  let n = e.result;
2672
2787
  if (n && typeof n == "object") {
2673
2788
  let e = n.assistant_message, t = e?.aiMessageAssets ?? e?.ai_message_assets;
2674
- if (Array.isArray(t)) return $n(t);
2789
+ if (Array.isArray(t)) return ur(t);
2675
2790
  }
2676
2791
  return null;
2677
2792
  }
2678
- function rr(e) {
2679
- let t = e.aiMessageAssets ?? e.ai_message_assets, n = e.result?.assistant_message, r = tr(t, n?.aiMessageAssets ?? n?.ai_message_assets);
2680
- return r ? er(r) : void 0;
2793
+ function mr(e) {
2794
+ let t = e.aiMessageAssets ?? e.ai_message_assets, n = e.result?.assistant_message, r = fr(t, n?.aiMessageAssets ?? n?.ai_message_assets);
2795
+ return r ? dr(r) : void 0;
2796
+ }
2797
+ function hr(e) {
2798
+ let t = e.result?.assistant_message;
2799
+ for (let n of [e.aiMessageAssets ?? e.ai_message_assets, t?.aiMessageAssets ?? t?.ai_message_assets]) if (Array.isArray(n)) {
2800
+ for (let e of n) if (e && typeof e == "object" && e.type === "custom-item" && e.value && typeof e.value == "object" && !Array.isArray(e.value)) return e.value;
2801
+ }
2802
+ return null;
2681
2803
  }
2682
2804
  //#endregion
2683
2805
  //#region src/components/ai-chat/stream/stream-processor.ts
2684
- var ir = /* @__PURE__ */ new Set([
2806
+ var gr = /* @__PURE__ */ new Set([
2685
2807
  "conversation-id",
2686
2808
  "conversation_id",
2687
2809
  "keepalive",
@@ -2689,7 +2811,7 @@ var ir = /* @__PURE__ */ new Set([
2689
2811
  "finish",
2690
2812
  "done"
2691
2813
  ]);
2692
- function ar(e, t, n) {
2814
+ function _r(e, t, n) {
2693
2815
  return {
2694
2816
  agent: n.agent,
2695
2817
  conversationId: t.callbacks.getConversationId(),
@@ -2697,128 +2819,148 @@ function ar(e, t, n) {
2697
2819
  raw: e
2698
2820
  };
2699
2821
  }
2700
- function or(e, t, n, r, i) {
2822
+ function Q(e, t, n, r, i) {
2701
2823
  let a = {
2702
- ...ar(n, e, t),
2824
+ ..._r(n, e, t),
2703
2825
  recognized: !0,
2704
2826
  type: r,
2705
2827
  data: i
2706
2828
  };
2707
2829
  e.callbacks.onStep(a);
2708
2830
  }
2709
- function sr(e, t, n, r, i) {
2831
+ function vr(e, t, n, r, i) {
2710
2832
  let a = {
2711
- ...ar(n, e, t),
2833
+ ..._r(n, e, t),
2712
2834
  recognized: !1,
2713
2835
  type: r,
2714
2836
  data: i
2715
2837
  };
2716
2838
  e.callbacks.onStep(a);
2717
2839
  }
2718
- function cr(e) {
2840
+ function yr(e) {
2719
2841
  e.state.progressCollapsed || (e.state.progressCollapsed = !0, e.callbacks.onProgressCollapsed(!0));
2720
2842
  }
2721
- function lr(e, t) {
2722
- cr(e), e.aiMessage.message = (e.aiMessage.message || "") + t, e.callbacks.onMessageUpdate(e.aiMessage);
2843
+ function br(e, t) {
2844
+ yr(e), e.aiMessage.message = (e.aiMessage.message || "") + t, e.callbacks.onMessageUpdate(e.aiMessage);
2723
2845
  }
2724
- function ur(e) {
2846
+ function xr(e) {
2725
2847
  if (!e) return null;
2726
2848
  let t = e.descriptionMetadata?.decision;
2727
2849
  if (t === "create" || t === "edit" || t === "question") return t;
2728
2850
  for (let t of e.children ?? []) {
2729
- let e = ur(t);
2851
+ let e = xr(t);
2730
2852
  if (e) return e;
2731
2853
  }
2732
2854
  return null;
2733
2855
  }
2734
- function dr(e, t, n) {
2735
- if (!Gn(e)) return !1;
2856
+ function Sr(e, t, n) {
2857
+ if (!nr(e)) return !1;
2736
2858
  let r = e.progress;
2737
- if (t.callbacks.onProgress(r), or(t, n, e, "progress", r), t.state.decision === null) {
2738
- let i = ur(r);
2739
- i && (t.state.decision = i, or(t, n, e, "decision", { decision: i }));
2859
+ if (t.callbacks.onProgress(r), Q(t, n, e, "progress", r), t.state.decision === null) {
2860
+ let i = xr(r);
2861
+ i && (t.state.decision = i, Q(t, n, e, "decision", { decision: i }));
2740
2862
  }
2741
2863
  return !0;
2742
2864
  }
2743
- function fr(e) {
2865
+ function Cr(e) {
2744
2866
  return !!e.error || e.type === "error" || typeof e.error_text == "string";
2745
2867
  }
2746
- function pr(e) {
2868
+ function wr(e) {
2747
2869
  return typeof e.error_text == "string" && e.error_text ? e.error_text : typeof e.error == "string" && e.error ? e.error : o("Something went wrong. Please try again.", { desc: "Generic error message shown in ai chat when the API request fails" });
2748
2870
  }
2749
- function mr(e, t, n) {
2750
- if (!fr(e)) return !1;
2751
- let r = pr(e);
2752
- return t.aiMessage.message = r, t.aiMessage.isError = !0, t.callbacks.onMessageUpdate(t.aiMessage), Fr(e, t, n, e.error ?? r), !0;
2871
+ function Tr(e, t, n) {
2872
+ if (!Cr(e)) return !1;
2873
+ let r = wr(e);
2874
+ return t.aiMessage.message = r, t.aiMessage.isError = !0, delete t.aiMessage.elicitation, t.callbacks.onMessageUpdate(t.aiMessage), Yr(e, t, n, e.error ?? r), !0;
2753
2875
  }
2754
- function hr(e) {
2876
+ function Er(e) {
2755
2877
  return typeof e.question == "string" && e.question ? e.question : typeof e.text == "string" && e.text ? e.text : "";
2756
2878
  }
2757
- function gr(e, t, n) {
2879
+ function Dr(e, t, n) {
2758
2880
  if (e.type !== "interrupt") return !1;
2759
- let r = hr(e);
2760
- return r && (t.state.interruptQuestion = r, lr(t, r), or(t, n, e, "interrupt", { question: r })), Fr(e, t, n), !0;
2881
+ let r = Er(e);
2882
+ return r && (t.state.interruptQuestion = r, br(t, r), Q(t, n, e, "interrupt", { question: r })), Yr(e, t, n), !0;
2883
+ }
2884
+ function Or(e) {
2885
+ let t = e.elicitation;
2886
+ if (!t || typeof t != "object") return null;
2887
+ let { question: n, options: r } = t, i = typeof n == "string" ? n.trim() : "", a = Array.isArray(r) ? [...new Set(r.filter((e) => typeof e == "string").map((e) => e.trim()))].filter(Boolean) : [];
2888
+ return i && a.length >= 2 ? {
2889
+ question: i,
2890
+ options: a
2891
+ } : null;
2892
+ }
2893
+ function kr(e, t, n) {
2894
+ if (e.type !== "elicitation") return !1;
2895
+ let r = Or(e);
2896
+ return r ? (yr(t), t.aiMessage.elicitation = r, t.callbacks.onMessageUpdate(t.aiMessage), Q(t, n, e, "elicitation", {
2897
+ question: r.question,
2898
+ options: r.options
2899
+ }), !0) : (vr(t, n, e, "elicitation", e), !0);
2761
2900
  }
2762
- function _r(e) {
2901
+ function Ar(e) {
2763
2902
  return typeof e.asset_id == "string" ? e.asset_id : typeof e.asset_type == "string" ? e.asset_type : "default";
2764
2903
  }
2765
- function vr(e) {
2904
+ function jr(e) {
2766
2905
  return typeof e.asset_type == "string" ? e.asset_type : "";
2767
2906
  }
2768
- function yr(e) {
2907
+ function Mr(e) {
2769
2908
  return {
2770
- assetType: vr(e),
2909
+ assetType: jr(e),
2771
2910
  snapshot: {}
2772
2911
  };
2773
2912
  }
2774
- function br(e, t) {
2913
+ function Nr(e, t) {
2775
2914
  return {
2776
2915
  ...e,
2777
2916
  ...t
2778
2917
  };
2779
2918
  }
2780
- function xr(e) {
2919
+ function Pr(e) {
2781
2920
  let t = e.asset_delta ?? e.delta;
2782
2921
  return t && typeof t == "object" ? t : null;
2783
2922
  }
2784
- function Sr(e, t) {
2785
- t.state.assets[_r(e)] = yr(e);
2923
+ function Fr(e, t) {
2924
+ t.state.assets[Ar(e)] = Mr(e);
2786
2925
  }
2787
- function Cr(e, t) {
2788
- let n = _r(e), r = t.state.assets[n] ?? yr(e), i = xr(e);
2789
- i && (r.snapshot = br(r.snapshot, i)), t.state.assets[n] = r;
2926
+ function Ir(e, t) {
2927
+ let n = Ar(e), r = t.state.assets[n] ?? Mr(e), i = Pr(e);
2928
+ i && (r.snapshot = Nr(r.snapshot, i)), t.state.assets[n] = r;
2790
2929
  }
2791
- function wr(e, t) {
2930
+ function Lr(e, t) {
2792
2931
  let n = e.asset ?? e.value ?? e.asset_delta ?? e.delta;
2793
- return n && typeof n == "object" ? br(t?.snapshot ?? {}, n) : t?.snapshot ?? {};
2932
+ return n && typeof n == "object" ? Nr(t?.snapshot ?? {}, n) : t?.snapshot ?? {};
2794
2933
  }
2795
- function Tr(e, t, n) {
2796
- let r = _r(e), i = t.state.assets[r], a = i?.assetType || vr(e), o = wr(e, i);
2797
- delete t.state.assets[r], Or(a, o, e, t, n);
2934
+ function Rr(e, t, n) {
2935
+ let r = Ar(e), i = t.state.assets[r], a = i?.assetType || jr(e), o = Lr(e, i);
2936
+ delete t.state.assets[r], Hr(a, o, e, t, n);
2798
2937
  }
2799
- function Er(e, t, n) {
2938
+ function zr(e, t, n) {
2800
2939
  switch (e.type) {
2801
- case "asset_start": return Sr(e, t), !0;
2802
- case "asset_delta": return Cr(e, t), !0;
2803
- case "asset_end": return Tr(e, t, n), !0;
2940
+ case "asset_start": return Fr(e, t), !0;
2941
+ case "asset_delta": return Ir(e, t), !0;
2942
+ case "asset_end": return Rr(e, t, n), !0;
2804
2943
  default: return !1;
2805
2944
  }
2806
2945
  }
2807
- function Dr(e, t, n, r) {
2808
- n.state.chartSnapshot = e, n.aiMessage.hasChart = !0, typeof t.messageId == "string" && (n.aiMessage.apiMessageId = t.messageId), n.callbacks.onMessageUpdate(n.aiMessage), or(n, r, t, "chart", e);
2946
+ function Br(e, t, n, r) {
2947
+ n.state.chartSnapshot = e, n.aiMessage.hasChart = !0, typeof t.messageId == "string" && (n.aiMessage.apiMessageId = t.messageId), n.callbacks.onMessageUpdate(n.aiMessage), Q(n, r, t, "chart", e);
2809
2948
  }
2810
- function Or(e, t, n, r, i) {
2949
+ function Vr(e, t, n, r) {
2950
+ n.state.customItemSnapshot = e, Q(n, r, t, "custom-item", e);
2951
+ }
2952
+ function Hr(e, t, n, r, i) {
2811
2953
  switch (e) {
2812
2954
  case "dashboard-title": {
2813
2955
  let e = t.name;
2814
- e && typeof e == "object" && (r.state.dashboardName = e, or(r, i, n, "dashboard-title", { name: e }));
2956
+ e && typeof e == "object" && (r.state.dashboardName = e, Q(r, i, n, "dashboard-title", { name: e }));
2815
2957
  return;
2816
2958
  }
2817
2959
  case "dashboard-layout":
2818
- or(r, i, n, "dashboard-layout", t);
2960
+ Q(r, i, n, "dashboard-layout", t);
2819
2961
  return;
2820
2962
  case "dashboard-item":
2821
- or(r, i, n, "dashboard-item", {
2963
+ Q(r, i, n, "dashboard-item", {
2822
2964
  slot: Number(t.slot),
2823
2965
  chart: t.chart ?? t
2824
2966
  });
@@ -2826,68 +2968,77 @@ function Or(e, t, n, r, i) {
2826
2968
  case "dashboard":
2827
2969
  r.state.dashboardSnapshot = t;
2828
2970
  return;
2829
- default: kr(e, t, n, r, i);
2971
+ default: Ur(e, t, n, r, i);
2830
2972
  }
2831
2973
  }
2832
- function kr(e, t, n, r, i) {
2974
+ function Ur(e, t, n, r, i) {
2833
2975
  if (i.chartAssetType && e === i.chartAssetType) {
2834
- Dr(t, n, r, i);
2976
+ Br(t, n, r, i);
2835
2977
  return;
2836
2978
  }
2837
2979
  if (i.dashboardAssetType && e === i.dashboardAssetType) {
2838
2980
  r.state.dashboardSnapshot = t;
2839
2981
  return;
2840
2982
  }
2841
- sr(r, i, n, e || "asset", t);
2983
+ if (i.customItemAssetType && e === i.customItemAssetType) {
2984
+ Vr(t, n, r, i);
2985
+ return;
2986
+ }
2987
+ vr(r, i, n, e || "asset", t);
2842
2988
  }
2843
- function Ar(e, t, n) {
2989
+ function Wr(e, t, n) {
2844
2990
  let r = !1;
2845
2991
  if (n.dashboardAssetType) {
2846
- let n = nr(e);
2992
+ let n = pr(e);
2847
2993
  if (n) {
2848
2994
  t.state.dashboardSnapshot = n;
2849
- let i = rr(e);
2995
+ let i = mr(e);
2850
2996
  i && (t.state.dashboardName = i), r = !0;
2851
2997
  }
2852
2998
  }
2853
2999
  if (n.chartAssetType && !t.state.chartSnapshot) {
2854
- let i = Qn(e);
2855
- i && (Dr(i, e, t, n), r = !0);
3000
+ let i = lr(e);
3001
+ i && (Br(i, e, t, n), r = !0);
3002
+ }
3003
+ if (n.customItemAssetType && !t.state.customItemSnapshot) {
3004
+ let i = hr(e);
3005
+ i && (Vr(i, e, t, n), r = !0);
2856
3006
  }
2857
3007
  return r;
2858
3008
  }
2859
- function jr(e, t, n) {
3009
+ function Gr(e, t, n) {
2860
3010
  return {
2861
3011
  ...e,
2862
3012
  generatedChart: t,
2863
3013
  conversationId: n.callbacks.getConversationId()
2864
3014
  };
2865
3015
  }
2866
- function Mr(e, t, n) {
3016
+ function Kr(e, t, n) {
2867
3017
  for (let r of Object.keys(t.state.assets)) {
2868
3018
  let i = t.state.assets[r];
2869
- delete t.state.assets[r], !(n.chartAssetType && i.assetType === n.chartAssetType && t.state.chartSnapshot || n.dashboardAssetType && i.assetType === n.dashboardAssetType && t.state.dashboardSnapshot) && Or(i.assetType, i.snapshot, e, t, n);
3019
+ delete t.state.assets[r], !(n.chartAssetType && i.assetType === n.chartAssetType && t.state.chartSnapshot || n.dashboardAssetType && i.assetType === n.dashboardAssetType && t.state.dashboardSnapshot || n.customItemAssetType && i.assetType === n.customItemAssetType && t.state.customItemSnapshot) && Hr(i.assetType, i.snapshot, e, t, n);
2870
3020
  }
2871
3021
  }
2872
- function Nr(e, t) {
2873
- let n = Jn(e);
3022
+ function qr(e, t) {
3023
+ let n = ar(e);
2874
3024
  !n || t.aiMessage.message === n || (t.aiMessage.message = n, t.callbacks.onMessageUpdate(t.aiMessage));
2875
3025
  }
2876
- function Pr(e, t, n) {
2877
- let r = t.state.dashboardSnapshot ?? (n.dashboardAssetType ? nr(e) : null), i = t.state.chartSnapshot ?? (n.chartAssetType ? Qn(e) : null);
3026
+ function Jr(e, t, n) {
3027
+ let r = t.state.dashboardSnapshot ?? (n.dashboardAssetType ? pr(e) : null), i = t.state.chartSnapshot ?? (n.chartAssetType ? lr(e) : null);
2878
3028
  return {
2879
3029
  agent: n.agent,
2880
3030
  conversationId: t.callbacks.getConversationId(),
2881
3031
  message: t.aiMessage,
2882
3032
  ...r ? { dashboard: r } : {},
2883
- ...i ? { chart: jr(e, i, t) } : {},
3033
+ ...i ? { chart: Gr(e, i, t) } : {},
3034
+ ...t.state.customItemSnapshot ? { customItem: t.state.customItemSnapshot } : {},
2884
3035
  ...t.state.dashboardName ? { name: t.state.dashboardName } : {},
2885
3036
  raw: e
2886
3037
  };
2887
3038
  }
2888
- function Fr(e, t, n, r) {
3039
+ function Yr(e, t, n, r) {
2889
3040
  if (!t.state.completed) {
2890
- if (t.state.completed = !0, Mr(e, t, n), cr(t), r !== void 0) {
3041
+ if (t.state.completed = !0, Kr(e, t, n), yr(t), r !== void 0) {
2891
3042
  t.callbacks.onComplete({
2892
3043
  agent: n.agent,
2893
3044
  conversationId: t.callbacks.getConversationId(),
@@ -2897,32 +3048,32 @@ function Fr(e, t, n, r) {
2897
3048
  });
2898
3049
  return;
2899
3050
  }
2900
- Nr(e, t), t.callbacks.onComplete(Pr(e, t, n));
3051
+ qr(e, t), t.callbacks.onComplete(Jr(e, t, n));
2901
3052
  }
2902
3053
  }
2903
- function Ir(e) {
3054
+ function Xr(e) {
2904
3055
  return typeof e.type == "string" && e.type ? e.type : typeof e.asset_type == "string" && e.asset_type ? e.asset_type : "";
2905
3056
  }
2906
- function Lr(e, t, n) {
2907
- let r = qn(e);
2908
- return r ? (t.state.accumulatedText += r, lr(t, r), or(t, n, e, "text", {
3057
+ function Zr(e, t, n) {
3058
+ let r = ir(e);
3059
+ return r ? (t.state.accumulatedText += r, br(t, r), Q(t, n, e, "text", {
2909
3060
  delta: r,
2910
3061
  text: t.state.accumulatedText
2911
3062
  }), !0) : !1;
2912
3063
  }
2913
- function Rr(e, t, n, r, i) {
3064
+ function Qr(e, t, n, r, i) {
2914
3065
  if (r || i) return;
2915
- let a = Ir(e);
2916
- a && !ir.has(a) && sr(t, n, e, a, e);
3066
+ let a = Xr(e);
3067
+ a && !gr.has(a) && vr(t, n, e, a, e);
2917
3068
  }
2918
- function zr(e, t, n) {
2919
- if (Xn(e, t), dr(e, t, n) || mr(e, t, n) || gr(e, t, n) || Er(e, t, n)) return;
2920
- let r = Lr(e, t, n), i = Ar(e, t, n), a = r || i, o = Yn(e);
2921
- Rr(e, t, n, a, o), o && Fr(e, t, n);
3069
+ function $r(e, t, n) {
3070
+ if (sr(e, t), Sr(e, t, n) || Tr(e, t, n) || Dr(e, t, n) || kr(e, t, n) || zr(e, t, n)) return;
3071
+ let r = Zr(e, t, n), i = Wr(e, t, n), a = r || i, o = or(e);
3072
+ Qr(e, t, n, a, o), o && Yr(e, t, n);
2922
3073
  }
2923
3074
  //#endregion
2924
3075
  //#region src/components/ai-chat/stream/registry.ts
2925
- function Br(e) {
3076
+ function ei(e) {
2926
3077
  switch (e) {
2927
3078
  case "dashboard": return {
2928
3079
  agent: e,
@@ -2932,14 +3083,18 @@ function Br(e) {
2932
3083
  agent: e,
2933
3084
  chartAssetType: "item"
2934
3085
  };
3086
+ case "custom-item": return {
3087
+ agent: e,
3088
+ customItemAssetType: "custom-item"
3089
+ };
2935
3090
  default: return { agent: e };
2936
3091
  }
2937
3092
  }
2938
- function Vr(e) {
2939
- let t = Br(e);
2940
- return (e, n) => zr(e, n, t);
3093
+ function ti(e) {
3094
+ let t = ei(e);
3095
+ return (e, n) => $r(e, n, t);
2941
3096
  }
2942
- function Hr() {
3097
+ function ni() {
2943
3098
  return {
2944
3099
  progressCollapsed: !1,
2945
3100
  accumulatedText: "",
@@ -2948,16 +3103,17 @@ function Hr() {
2948
3103
  dashboardSnapshot: null,
2949
3104
  dashboardName: void 0,
2950
3105
  chartSnapshot: null,
3106
+ customItemSnapshot: null,
2951
3107
  interruptQuestion: null,
2952
3108
  completed: !1
2953
3109
  };
2954
3110
  }
2955
3111
  //#endregion
2956
3112
  //#region src/components/ai-chat/session/ai-chat-session.ts
2957
- function Ur() {
3113
+ function ri() {
2958
3114
  return `msg-${Date.now()}-${Math.random().toString(36).slice(2, 9)}`;
2959
3115
  }
2960
- var Wr = class {
3116
+ var ii = class {
2961
3117
  constructor(e, t = {}) {
2962
3118
  this._uiBridgeCallbacks = {}, this._subscribers = /* @__PURE__ */ new Set(), this._state = {
2963
3119
  messages: [],
@@ -2972,7 +3128,7 @@ var Wr = class {
2972
3128
  apiVersion: "0.1.0",
2973
3129
  stream: !0,
2974
3130
  ...e
2975
- }, this._hostCallbacks = t, this._state = {
3131
+ }, e.agentConfig && (this._config.agentConfig = kn(e)), this._hostCallbacks = t, this._state = {
2976
3132
  ...this._state,
2977
3133
  messages: e.messages ? [...e.messages] : [],
2978
3134
  selectedDatasets: e.selectedDatasets ? [...e.selectedDatasets] : [],
@@ -2988,6 +3144,9 @@ var Wr = class {
2988
3144
  get isGenerating() {
2989
3145
  return this._state.isGenerating;
2990
3146
  }
3147
+ get agentConfig() {
3148
+ return kn(this._config);
3149
+ }
2991
3150
  subscribe(e) {
2992
3151
  return this._subscribers.add(e), e(this._state), () => {
2993
3152
  this._subscribers.delete(e);
@@ -2997,24 +3156,29 @@ var Wr = class {
2997
3156
  this._uiBridgeCallbacks = e;
2998
3157
  }
2999
3158
  updateConfig(e) {
3159
+ let t = this.agentConfig, n = this._config.agentConfig !== void 0;
3000
3160
  this._config = {
3001
3161
  ...this._config,
3002
3162
  ...e
3003
- };
3004
- let t = {};
3163
+ }, e.agentConfig && (this._config.agentConfig = kn(this._config, t));
3164
+ let r = {};
3005
3165
  if ("conversationId" in e) {
3006
- let n = e.conversationId ?? null;
3007
- n !== this._state.conversationId && (t.conversationId = n);
3166
+ let t = e.conversationId ?? null;
3167
+ t !== this._state.conversationId && (r.conversationId = t);
3008
3168
  }
3009
3169
  if ("selectedDatasets" in e && e.selectedDatasets) {
3010
- let n = [...e.selectedDatasets];
3011
- this._areSelectedDatasetsEqual(n, this._state.selectedDatasets) || (t.selectedDatasets = n);
3170
+ let t = [...e.selectedDatasets];
3171
+ this._areSelectedDatasetsEqual(t, this._state.selectedDatasets) || (r.selectedDatasets = t);
3012
3172
  }
3013
3173
  if ("messages" in e && e.messages) {
3014
- let n = [...e.messages];
3015
- this._areChatMessagesEqual(n, this._state.messages) || (t.messages = n);
3174
+ let t = [...e.messages];
3175
+ this._areChatMessagesEqual(t, this._state.messages) || (r.messages = t);
3176
+ }
3177
+ if ("isGenerating" in e && e.isGenerating !== this._state.isGenerating && (r.isGenerating = e.isGenerating), "progress" in e && (r.progress = e.progress ?? null), "progressCollapsed" in e && e.progressCollapsed !== this._state.progressCollapsed && (r.progressCollapsed = e.progressCollapsed), Object.keys(r).length > 0) this._patchState(r);
3178
+ else if ("agentConfig" in e && (n || this._config.agentConfig !== void 0)) {
3179
+ let e = this.agentConfig;
3180
+ (e.type !== t.type || e.context !== t.context) && this._notifySubscribers();
3016
3181
  }
3017
- "isGenerating" in e && e.isGenerating !== this._state.isGenerating && (t.isGenerating = e.isGenerating), "progress" in e && (t.progress = e.progress ?? null), "progressCollapsed" in e && e.progressCollapsed !== this._state.progressCollapsed && (t.progressCollapsed = e.progressCollapsed), Object.keys(t).length > 0 && this._patchState(t);
3018
3182
  }
3019
3183
  setSelectedDatasets(e) {
3020
3184
  this._patchState({ selectedDatasets: [...e] }), this._emit("onDatasetsChanged", this._state.selectedDatasets);
@@ -3030,10 +3194,10 @@ var Wr = class {
3030
3194
  return !this._config.requireDataset || this._state.selectedDatasets.length > 0 || !!e;
3031
3195
  }
3032
3196
  getAiPromptUrl() {
3033
- return On(this._config.apiUrl ?? "https://api.luzmo.com", this._config.apiVersion ?? "0.1.0");
3197
+ return Rn(this._config.apiUrl ?? "https://api.luzmo.com", this._config.apiVersion ?? "0.1.0");
3034
3198
  }
3035
- buildRequestBody(e, t, n = [], r = this._config.agentId) {
3036
- return Rn(this._config.agent, {
3199
+ buildRequestBody(e, t, n = [], r = this._config.agentId, i = {}) {
3200
+ return Yn(this.agentConfig.type, {
3037
3201
  prompt: e,
3038
3202
  datasetIds: t,
3039
3203
  authKey: this._config.authKey,
@@ -3042,14 +3206,17 @@ var Wr = class {
3042
3206
  agentId: r,
3043
3207
  chart: this._config.chart ?? null,
3044
3208
  dashboard: this._config.dashboard ?? null,
3209
+ customItem: this._config.customItem ?? null,
3045
3210
  currentScreenMode: this._config.currentScreenMode,
3046
3211
  localeId: this._config.localeId,
3047
3212
  timezoneId: this._config.timezoneId,
3048
3213
  task: this._config.task,
3214
+ ...this._config.agentConfig ? An(this.agentConfig) : {},
3049
3215
  modelPreference: this._config.modelPreference,
3050
3216
  apiVersion: this._config.apiVersion,
3051
3217
  stream: this._config.stream,
3052
- attachmentUrls: n
3218
+ attachmentUrls: n,
3219
+ internal: i.internal
3053
3220
  });
3054
3221
  }
3055
3222
  buildPromptSubmittedDetail(e) {
@@ -3058,8 +3225,8 @@ var Wr = class {
3058
3225
  prompt: e.prompt,
3059
3226
  selectedDatasets: e.selectedDatasets,
3060
3227
  datasetIds: e.datasetIds,
3061
- agent: this._config.agent,
3062
- request: this.buildRequestBody(e.prompt, e.datasetIds, t, e.agentId),
3228
+ agent: this.agentConfig.type,
3229
+ request: this.buildRequestBody(e.prompt, e.datasetIds, t, e.agentId, { internal: e.internal }),
3063
3230
  url: this.getAiPromptUrl(),
3064
3231
  ...e.signal ? { signal: e.signal } : {},
3065
3232
  ...e.attachments?.length ? { attachments: e.attachments } : {},
@@ -3093,8 +3260,11 @@ var Wr = class {
3093
3260
  return t(r), r;
3094
3261
  }
3095
3262
  async submit(e) {
3263
+ await this._submit(e);
3264
+ }
3265
+ async _submit(e) {
3096
3266
  let t = e.datasetIds ?? this._state.selectedDatasets.map((e) => e.id);
3097
- if (!this.isDatasetRequirementMet(e.agentId)) return;
3267
+ if (!this.isDatasetRequirementMet(e.agentId)) return !1;
3098
3268
  this._abortInflight();
3099
3269
  let n = new AbortController();
3100
3270
  this._abortController = n;
@@ -3102,18 +3272,18 @@ var Wr = class {
3102
3272
  try {
3103
3273
  r = await this._resolveAttachmentUrls(e, n.signal);
3104
3274
  } catch (e) {
3105
- if (this._abortController === n && (this._abortController = null), n.signal.aborted || e.name === "AbortError") return;
3275
+ if (this._abortController === n && (this._abortController = null), n.signal.aborted || e.name === "AbortError") return !1;
3106
3276
  throw e;
3107
3277
  }
3108
- if (n.signal.aborted || this._abortController !== n) return;
3278
+ if (n.signal.aborted || this._abortController !== n) return !1;
3109
3279
  let i = {
3110
- id: e.aiMessageId ?? Ur(),
3280
+ id: e.aiMessageId ?? ri(),
3111
3281
  type: "ai",
3112
3282
  message: ""
3113
3283
  }, a = [...this._state.messages];
3114
3284
  if (!e.skipUserMessage) {
3115
3285
  let t = {
3116
- id: Ur(),
3286
+ id: ri(),
3117
3287
  type: "user",
3118
3288
  message: e.prompt,
3119
3289
  ...r.length ? { attachmentUrls: r } : {}
@@ -3123,7 +3293,7 @@ var Wr = class {
3123
3293
  a = [...a, i], this._inflightMessage = i, this._receivedProgress = !1, this._patchState({
3124
3294
  messages: a,
3125
3295
  isGenerating: !0,
3126
- progress: Wn(),
3296
+ progress: tr(),
3127
3297
  progressCollapsed: !1,
3128
3298
  inflightMessage: i
3129
3299
  });
@@ -3136,96 +3306,123 @@ var Wr = class {
3136
3306
  signal: n.signal,
3137
3307
  attachments: e.attachments,
3138
3308
  attachmentUrls: r,
3139
- agentId: e.agentId
3309
+ agentId: e.agentId,
3310
+ internal: e.internal
3140
3311
  });
3141
3312
  try {
3142
3313
  await this._invokeCallback("onPromptSubmitted", t);
3143
3314
  } catch (e) {
3144
- e.name === "AbortError" ? this.abort() : (this._handleSubmitError(e, i), this._finalizeInflightMessage()), this._patchState({ isGenerating: !1 });
3315
+ e.name === "AbortError" ? this.abort() : (this._handleSubmitError(e, i, t.agent), this._finalizeInflightMessage()), this._patchState({ isGenerating: !1 });
3145
3316
  }
3146
- return;
3317
+ return !0;
3147
3318
  }
3148
- let c = this.buildRequestBody(e.prompt, t, r, e.agentId), l = Vr(this._config.agent), u = {
3319
+ let c = this.buildRequestBody(e.prompt, t, r, e.agentId, { internal: e.internal }), l = this.agentConfig.type, u = ti(l), d = {
3149
3320
  aiMessage: i,
3150
3321
  callbacks: this._createStreamCallbacks(),
3151
- state: Hr()
3152
- }, d = this._config.fetchStreaming ?? Bn, f = !1;
3322
+ state: ni()
3323
+ }, f = this._config.fetchStreaming ?? Zn, p = !1;
3153
3324
  try {
3154
- let { body: e, conversationId: t } = await d({
3325
+ let { body: e, conversationId: t } = await f({
3155
3326
  url: this.getAiPromptUrl(),
3156
3327
  body: c,
3157
3328
  signal: n.signal
3158
3329
  });
3159
- t && this._setConversationId(t), await Un(e, (e) => l(e, u)), f = !0;
3330
+ t && this._setConversationId(t), await er(e, (e) => u(e, d)), p = !0;
3160
3331
  } catch (e) {
3161
- e.name !== "AbortError" && (this._handleSubmitError(e, i), f = !0);
3332
+ e.name !== "AbortError" && (this._handleSubmitError(e, i, l), p = !0);
3333
+ } finally {
3334
+ this._abortController === n && (p ? this._finalizeInflightMessage() : this._discardInflightMessage(), this._patchState({ isGenerating: !1 }), this._abortController = null);
3335
+ }
3336
+ return !0;
3337
+ }
3338
+ async answerElicitation(e, t, n = {}) {
3339
+ let r = this._state.messages.at(-1), i = r?.id === e ? r.elicitation : void 0;
3340
+ if (this._state.isGenerating || !i || i.answer || !i.options.includes(t) || !this.isDatasetRequirementMet(n.agentId)) return !1;
3341
+ let a = (t) => {
3342
+ this._patchState({ messages: this._state.messages.map((n) => n.id === e ? {
3343
+ ...n,
3344
+ elicitation: {
3345
+ ...i,
3346
+ answer: t
3347
+ }
3348
+ } : n) });
3349
+ };
3350
+ a(t);
3351
+ let o = !1;
3352
+ try {
3353
+ o = await this._submit({
3354
+ ...n,
3355
+ prompt: t
3356
+ });
3162
3357
  } finally {
3163
- this._abortController === n && (f ? this._finalizeInflightMessage() : this._discardInflightMessage(), this._patchState({ isGenerating: !1 }), this._abortController = null);
3358
+ o || a(void 0);
3164
3359
  }
3360
+ return o;
3165
3361
  }
3166
3362
  async restore(e) {
3167
- if (this._config.agent !== "item") return {};
3168
- let t = zn(e.restoreToMessageId, this._config.authKey, this._config.authToken, this._config.apiVersion, this._state.conversationId);
3363
+ let t = this.agentConfig.type;
3364
+ if (t !== "item") return {};
3365
+ let n = Xn(e.restoreToMessageId, this._config.authKey, this._config.authToken, this._config.apiVersion, this._state.conversationId);
3169
3366
  if (this._patchState({
3170
3367
  isGenerating: !0,
3171
3368
  progress: null,
3172
3369
  progressCollapsed: !1
3173
3370
  }), this._hasCallback("onRestoreRequested")) {
3174
- let n = {
3371
+ let t = {
3175
3372
  apiMessageId: e.restoreToMessageId,
3176
3373
  messageIndex: e.messageIndex,
3177
- request: t,
3374
+ request: n,
3178
3375
  url: this.getAiPromptUrl()
3179
3376
  };
3180
3377
  try {
3181
- await this._invokeCallback("onRestoreRequested", n);
3378
+ await this._invokeCallback("onRestoreRequested", t);
3182
3379
  } finally {
3183
3380
  this._patchState({ isGenerating: !1 });
3184
3381
  }
3185
3382
  return {};
3186
3383
  }
3187
3384
  try {
3188
- let n = await fetch(this.getAiPromptUrl(), {
3385
+ let r = await fetch(this.getAiPromptUrl(), {
3189
3386
  method: "POST",
3190
3387
  headers: { "Content-Type": "application/json" },
3191
3388
  mode: "cors",
3192
- body: JSON.stringify(t)
3389
+ body: JSON.stringify(n)
3193
3390
  });
3194
- if (!n.ok) {
3195
- let e = await n.json().catch(() => null);
3196
- throw Error(e?.message || `API request failed with status ${n.status}`);
3391
+ if (!r.ok) {
3392
+ let e = await r.json().catch(() => null);
3393
+ throw Error(e?.message || `API request failed with status ${r.status}`);
3197
3394
  }
3198
- let r = await n.json().catch(() => null), i = r?.generatedChart ?? (r ? Qn(r) : null), a = {
3199
- ...typeof r?.message == "string" ? { message: r.message } : {},
3200
- ...i ? { chart: {
3201
- ...r,
3202
- generatedChart: i
3395
+ let i = await r.json().catch(() => null), a = i?.generatedChart ?? (i ? lr(i) : null), o = {
3396
+ ...typeof i?.message == "string" ? { message: i.message } : {},
3397
+ ...a ? { chart: {
3398
+ ...i,
3399
+ generatedChart: a
3203
3400
  } } : {}
3204
- }, o = e.messageIndex >= 0 && e.messageIndex < this._state.messages.length ? this._state.messages.slice(0, e.messageIndex + 1) : this._state.messages;
3205
- if (a.message && o[e.messageIndex]?.type === "ai" && (o[e.messageIndex] = {
3206
- ...o[e.messageIndex],
3207
- message: a.message
3208
- }), this._patchState({ messages: [...o] }), a.chart || a.message) {
3209
- let t = o[e.messageIndex], n = t?.type === "ai" ? t : {
3210
- id: Ur(),
3401
+ }, s = e.messageIndex >= 0 && e.messageIndex < this._state.messages.length ? this._state.messages.slice(0, e.messageIndex + 1) : this._state.messages;
3402
+ if (o.message && s[e.messageIndex]?.type === "ai" && (s[e.messageIndex] = {
3403
+ ...s[e.messageIndex],
3404
+ message: o.message
3405
+ }), this._patchState({ messages: [...s] }), o.chart || o.message) {
3406
+ let n = s[e.messageIndex], r = n?.type === "ai" ? n : {
3407
+ id: ri(),
3211
3408
  type: "ai",
3212
- message: a.message ?? ""
3409
+ message: o.message ?? ""
3213
3410
  };
3214
3411
  this._emit("onComplete", {
3215
- agent: this._config.agent,
3412
+ agent: t,
3216
3413
  conversationId: this._state.conversationId,
3217
- message: n,
3218
- ...a.chart ? { chart: a.chart } : {},
3219
- ...r ? { raw: r } : {}
3414
+ message: r,
3415
+ ...o.chart ? { chart: o.chart } : {},
3416
+ ...i ? { raw: i } : {}
3220
3417
  });
3221
3418
  }
3222
- return a;
3419
+ return o;
3223
3420
  } finally {
3224
3421
  this._patchState({ isGenerating: !1 });
3225
3422
  }
3226
3423
  }
3227
3424
  buildRestoreRequest(e) {
3228
- return zn(e, this._config.authKey, this._config.authToken, this._config.apiVersion, this._state.conversationId);
3425
+ return Xn(e, this._config.authKey, this._config.authToken, this._config.apiVersion, this._state.conversationId);
3229
3426
  }
3230
3427
  abort(e = {}) {
3231
3428
  this._abortController?.abort(), this._abortController = null, e.notify && this._inflightMessage ? this._markInflightCancelled(e.cancelledMessage) : this._discardInflightMessage(), this._patchState({
@@ -3284,19 +3481,19 @@ var Wr = class {
3284
3481
  this._inflightMessage && this._patchState({ messages: this._state.messages.filter((e) => e.id !== this._inflightMessage.id) });
3285
3482
  }
3286
3483
  _markInflightCancelled(e) {
3287
- this._inflightMessage && (this._inflightMessage.message = e ?? o("Response cancelled.", { desc: "Placeholder shown in ai chat where the assistant reply would appear when the user stops an in-flight response" }), this._inflightMessage.isCancelled = !0, this._inflightMessage.hasChart = !1, delete this._inflightMessage.progress, this._upsertMessage(this._inflightMessage), this._inflightMessage = null, this._receivedProgress = !1, this._patchState({ inflightMessage: null }));
3484
+ this._inflightMessage && (this._inflightMessage.message = e ?? o("Response cancelled.", { desc: "Placeholder shown in ai chat where the assistant reply would appear when the user stops an in-flight response" }), this._inflightMessage.isCancelled = !0, this._inflightMessage.hasChart = !1, delete this._inflightMessage.progress, delete this._inflightMessage.elicitation, this._upsertMessage(this._inflightMessage), this._inflightMessage = null, this._receivedProgress = !1, this._patchState({ inflightMessage: null }));
3288
3485
  }
3289
3486
  _discardInflightMessage() {
3290
3487
  let e = !!(this._inflightMessage || this._state.inflightMessage);
3291
3488
  this._removeInflightFromMessages(), this._inflightMessage = null, this._receivedProgress = !1, e && this._patchState({ inflightMessage: null });
3292
3489
  }
3293
- _handleSubmitError(e, t) {
3294
- t.message = o("Something went wrong. Please try again.", { desc: "Generic error message shown in ai chat when the API request fails" }), t.isError = !0, delete t.progress, this._inflightMessage = t, this._upsertMessage(t), this._patchState({
3490
+ _handleSubmitError(e, t, n) {
3491
+ t.message = o("Something went wrong. Please try again.", { desc: "Generic error message shown in ai chat when the API request fails" }), t.isError = !0, delete t.progress, delete t.elicitation, this._inflightMessage = t, this._upsertMessage(t), this._patchState({
3295
3492
  inflightMessage: { ...t },
3296
3493
  progress: null,
3297
3494
  progressCollapsed: !1
3298
3495
  }), this._emit("onComplete", {
3299
- agent: this._config.agent,
3496
+ agent: n,
3300
3497
  conversationId: this._state.conversationId,
3301
3498
  message: t,
3302
3499
  error: e
@@ -3316,7 +3513,9 @@ var Wr = class {
3316
3513
  this._state = {
3317
3514
  ...this._state,
3318
3515
  ...e
3319
- }, this._emit("onStateChange", this._state);
3516
+ }, this._emit("onStateChange", this._state), this._notifySubscribers();
3517
+ }
3518
+ _notifySubscribers() {
3320
3519
  for (let e of this._subscribers) e(this._state);
3321
3520
  }
3322
3521
  _areSelectedDatasetsEqual(e, t) {
@@ -3325,18 +3524,18 @@ var Wr = class {
3325
3524
  _areChatMessagesEqual(e, t) {
3326
3525
  return e.length === t.length && e.every((e, n) => {
3327
3526
  let r = t[n];
3328
- return e.id === r?.id && e.apiMessageId === r?.apiMessageId && e.type === r?.type && e.message === r?.message && e.isError === r?.isError && e.isCancelled === r?.isCancelled && e.hasChart === r?.hasChart && JSON.stringify(e.progress ?? null) === JSON.stringify(r?.progress ?? null) && JSON.stringify(e.actions ?? null) === JSON.stringify(r?.actions ?? null) && JSON.stringify(e.attachmentUrls ?? null) === JSON.stringify(r?.attachmentUrls ?? null);
3527
+ return e.id === r?.id && e.apiMessageId === r?.apiMessageId && e.type === r?.type && e.message === r?.message && e.isError === r?.isError && e.isCancelled === r?.isCancelled && e.hasChart === r?.hasChart && JSON.stringify(e.progress ?? null) === JSON.stringify(r?.progress ?? null) && JSON.stringify(e.actions ?? null) === JSON.stringify(r?.actions ?? null) && JSON.stringify(e.attachmentUrls ?? null) === JSON.stringify(r?.attachmentUrls ?? null) && JSON.stringify(e.elicitation ?? null) === JSON.stringify(r?.elicitation ?? null);
3329
3528
  });
3330
3529
  }
3331
3530
  };
3332
- function Gr(e, t) {
3333
- return new Wr(e, t);
3531
+ function ai(e, t) {
3532
+ return new ii(e, t);
3334
3533
  }
3335
3534
  //#endregion
3336
3535
  //#region src/components/ai-chat/session/ai-chat-session-controller.ts
3337
- var Kr = class {
3536
+ var oi = class {
3338
3537
  constructor(e) {
3339
- this.options = e, this._session = null, this._ownsSession = !1, this._seededFromProps = !1, this._unsubscribe = null;
3538
+ this.options = e, this._session = null, this._ownsSession = !1, this._customItemFromProps = !1, this._seededFromProps = !1, this._unsubscribe = null;
3340
3539
  }
3341
3540
  get current() {
3342
3541
  return this._session;
@@ -3392,7 +3591,7 @@ var Kr = class {
3392
3591
  requireDataset: t.requireDataset,
3393
3592
  agent: t.agent
3394
3593
  };
3395
- t.task !== void 0 && (n.task = t.task), t.chart != null && (n.chart = t.chart), t.dashboard != null && (n.dashboard = t.dashboard), t.currentScreenMode != null && (n.currentScreenMode = t.currentScreenMode), t.conversationId != null && (n.conversationId = t.conversationId), e.updateConfig(n);
3594
+ t.agentConfig !== void 0 && (n.agentConfig = t.agentConfig), t.task !== void 0 && (n.task = t.task), t.chart != null && (n.chart = t.chart), t.dashboard != null && (n.dashboard = t.dashboard), t.customItem != null && (this._customItemFromProps = !0), this._customItemFromProps && (n.customItem = t.customItem ?? null), t.currentScreenMode != null && (n.currentScreenMode = t.currentScreenMode), t.conversationId != null && (n.conversationId = t.conversationId), e.updateConfig(n);
3396
3595
  }
3397
3596
  connect() {
3398
3597
  this._session && this._wire(this._session);
@@ -3403,7 +3602,7 @@ var Kr = class {
3403
3602
  _createSessionIfMissing() {
3404
3603
  if (this._session) return;
3405
3604
  let e = this.options.getSeed();
3406
- this._session = Gr({
3605
+ this._session = ai({
3407
3606
  ...this.options.getConfig(),
3408
3607
  messages: e.messages.length > 0 ? [...e.messages] : void 0,
3409
3608
  selectedDatasets: e.selectedDatasets.length > 0 ? [...e.selectedDatasets] : void 0
@@ -3427,7 +3626,7 @@ var Kr = class {
3427
3626
  }
3428
3627
  }, $ = class t extends i {
3429
3628
  constructor(...e) {
3430
- super(...e), this.messages = [], this.selectedDatasets = [], this.placeholder = "Describe your change", this.disabled = !1, this.stoppable = !1, this.showAssistantContextMenu = !1, this.authKey = "", this.authToken = "", this.apiUrl = "https://api.luzmo.com", this.appServer = "https://app.luzmo.com", this.includePublicDatasets = !1, this.hideDatasetButton = !1, this.hideDatasetIcons = !1, this.disableDatasetModification = !1, this.hideSelectedDatasets = !1, this.hideAgents = !1, this.disableColumnMentions = !1, this.requireDataset = !1, this.allowImages = !1, this.allowVoiceInput = !1, this.acceptedFileTypes = [], this.agent = "item", this.task = "generate", this.modelPreference = "performance", this.chatSession = null, this.conversationId = null, this.chart = null, this.dashboard = null, this.timezoneId = "UTC", this.apiVersion = "0.1.0", this.stream = !0, this.loadingMessage = null, this.cancelledMessage = null, this.initialPrompt = null, this.emptyStateTitle = "", this.emptyStateSubtitle = "", this.emptyStateSuggestions = [], this._textareaValue = "", this._assistantMessageActionsSlotHasContent = !1, this._pendingAssistantMessageAction = null, this._shouldFocusAssistantMessageActionConfirm = !1, this._lastProcessedInitialPrompt = null, this._session = new Kr({
3629
+ super(...e), this.messages = [], this.selectedDatasets = [], this.placeholder = "Describe your change", this.disabled = !1, this.stoppable = !1, this.showAssistantContextMenu = !1, this.authKey = "", this.authToken = "", this.apiUrl = "https://api.luzmo.com", this.appServer = "https://app.luzmo.com", this.includePublicDatasets = !1, this.hideDatasetButton = !1, this.hideDatasetIcons = !1, this.disableDatasetModification = !1, this.hideSelectedDatasets = !1, this.hideAgents = !1, this.disableColumnMentions = !1, this.requireDataset = !1, this.allowImages = !1, this.allowVoiceInput = !1, this.acceptedFileTypes = [], this.agent = "item", this.task = "generate", this.modelPreference = "performance", this.chatSession = null, this.conversationId = null, this.chart = null, this.dashboard = null, this.customItem = null, this.timezoneId = "UTC", this.apiVersion = "0.1.0", this.stream = !0, this.loadingMessage = null, this.cancelledMessage = null, this.initialPrompt = null, this.emptyStateTitle = "", this.emptyStateSubtitle = "", this.emptyStateSuggestions = [], this._textareaValue = "", this._assistantMessageActionsSlotHasContent = !1, this._pendingAssistantMessageAction = null, this._shouldFocusAssistantMessageActionConfirm = !1, this._lastProcessedInitialPrompt = null, this._session = new oi({
3431
3630
  getConfig: () => this._buildSessionConfig(),
3432
3631
  getSeed: () => ({
3433
3632
  messages: this.messages,
@@ -3446,7 +3645,7 @@ var Kr = class {
3446
3645
  };
3447
3646
  }
3448
3647
  static {
3449
- this.styles = f(En);
3648
+ this.styles = f(On);
3450
3649
  }
3451
3650
  static {
3452
3651
  this.tagName = "luzmo-ai-chat";
@@ -3518,6 +3717,7 @@ var Kr = class {
3518
3717
  _buildSessionConfig() {
3519
3718
  return {
3520
3719
  agent: this.agent,
3720
+ agentConfig: this.agentConfig,
3521
3721
  agentId: this.agentId,
3522
3722
  authKey: this.authKey,
3523
3723
  authToken: this.authToken,
@@ -3527,6 +3727,7 @@ var Kr = class {
3527
3727
  conversationId: this.conversationId,
3528
3728
  chart: this.chart,
3529
3729
  dashboard: this.dashboard,
3730
+ customItem: this.customItem,
3530
3731
  currentScreenMode: this.currentScreenMode,
3531
3732
  localeId: this.localeId,
3532
3733
  timezoneId: this.timezoneId,
@@ -3535,6 +3736,10 @@ var Kr = class {
3535
3736
  requireDataset: this.requireDataset
3536
3737
  };
3537
3738
  }
3739
+ _getAgentConfig() {
3740
+ let e = this._session.current?.agentConfig;
3741
+ return this.agentConfig === void 0 && this.chatSession && e ? e : kn(this._buildSessionConfig(), e);
3742
+ }
3538
3743
  _emitConversationIdChanged(e) {
3539
3744
  this.conversationId = e, this.dispatchEvent(new CustomEvent("luzmo-conversation-id-changed", {
3540
3745
  detail: { conversationId: e },
@@ -3549,7 +3754,7 @@ var Kr = class {
3549
3754
  });
3550
3755
  }
3551
3756
  async _handleRestoreState(e, t) {
3552
- if (e.apiMessageId && this.agent === "item") try {
3757
+ if (e.apiMessageId && this._getAgentConfig().type === "item") try {
3553
3758
  await this._restoreViaSession(e.apiMessageId, t);
3554
3759
  } catch (e) {
3555
3760
  console.error("AI restore error:", e);
@@ -3645,7 +3850,7 @@ var Kr = class {
3645
3850
  }
3646
3851
  _renderMarkdown(e) {
3647
3852
  let t = String(Z.parse(e, { async: !1 }));
3648
- return O.sanitize(t, {
3853
+ return _t.sanitize(t, {
3649
3854
  ALLOWED_TAGS: /* @__PURE__ */ "p.br.strong.em.b.i.u.s.code.pre.blockquote.hr.ul.ol.li.h1.h2.h3.h4.h5.h6.table.thead.tbody.tr.th.td.a".split("."),
3650
3855
  ALLOWED_ATTR: [
3651
3856
  "href",
@@ -3820,7 +4025,7 @@ var Kr = class {
3820
4025
  `;
3821
4026
  }
3822
4027
  _renderRestoreMenu(e, t, n, r = !1) {
3823
- if (!(this.agent === "item" && this.showAssistantContextMenu && e.hasChart && e.apiMessageId && !e.isError && e.id !== n)) return d;
4028
+ if (!(this._getAgentConfig().type === "item" && this.showAssistantContextMenu && e.hasChart && e.apiMessageId && !e.isError && e.id !== n)) return d;
3824
4029
  let i = `context-menu-trigger-${e.apiMessageId}`;
3825
4030
  return u`
3826
4031
  <div class="assistant-context-menu">
@@ -3892,7 +4097,7 @@ var Kr = class {
3892
4097
  </luzmo-chat-message>
3893
4098
  `;
3894
4099
  }
3895
- let m = e.indexOf(t), h = t.isError ? "error" : t.isCancelled ? "cancelled" : "", g = t.isCancelled ? t.message : u`<div class="markdown-content">${ee(this._renderMarkdown(t.message))}</div>`;
4100
+ let m = e.indexOf(t), h = t.isError ? "error" : t.isCancelled ? "cancelled" : "", te = !!t.elicitation && (!t.message.trim() || t.message.trim() === t.elicitation?.question), ne = t.isCancelled ? t.message : te ? d : u`<div class="markdown-content">${ee(this._renderMarkdown(t.message))}</div>`;
3896
4101
  return u`
3897
4102
  ${p}
3898
4103
  <div class="assistant-message-wrapper">
@@ -3905,7 +4110,12 @@ var Kr = class {
3905
4110
  quiet
3906
4111
  size="s"
3907
4112
  >
3908
- ${g}
4113
+ ${ne}
4114
+ ${Ln({
4115
+ message: t,
4116
+ state: t.elicitation?.answer ? "answered" : t.id && t === i.at(-1) && !n && !this.disabled ? "open" : "closed",
4117
+ onSubmit: (e) => this._handleElicitationSubmit(t, e)
4118
+ })}
3909
4119
  </luzmo-chat-message>
3910
4120
 
3911
4121
  ${this._renderRestoreMenu(t, m, s, r)}
@@ -3916,6 +4126,19 @@ var Kr = class {
3916
4126
  `;
3917
4127
  });
3918
4128
  }
4129
+ async _handleElicitationSubmit(e, t) {
4130
+ t.stopPropagation();
4131
+ let n = t.currentTarget, r = n.parentElement, i = Fn(t.detail), a = !1;
4132
+ if (e.id && i) try {
4133
+ let t = this._session.requireSession().answerElicitation(e.id, i, { agentId: this._pickedAgentId });
4134
+ await this.updateComplete;
4135
+ let n = r?.querySelector("luzmo-question-box[readonly]");
4136
+ await n?.updateComplete, n?.focus(), a = await t;
4137
+ } catch (e) {
4138
+ e.name !== "AbortError" && console.error("AI prompt session error:", e);
4139
+ }
4140
+ a || (n.reset(), await n.updateComplete, n.focus());
4141
+ }
3919
4142
  _renderStreamingResponse() {
3920
4143
  let { inflightMessage: e } = this._getRenderState();
3921
4144
  return e?.message ? u`
@@ -3932,7 +4155,7 @@ var Kr = class {
3932
4155
  _renderLoadingMessage() {
3933
4156
  let { isGenerating: e, progress: t, inflightMessage: n } = this._getRenderState();
3934
4157
  if (!e || t?.children?.length || n?.message) return d;
3935
- let r = this.agent === "dashboard" ? !this.dashboard : this.chart?.type === "placeholder", i = this.agent === "dashboard" ? r ? o("Creating dashboard...", { desc: "Label for ai chat creating dashboard message" }) : o("Updating dashboard...", { desc: "Label for ai chat updating dashboard message" }) : r ? o("Creating item...", { desc: "Label for ai chat creating item message" }) : o("Updating item...", { desc: "Label for ai chat updating item message" });
4158
+ let r = this._getAgentConfig(), i = An(r), a = r.type === "dashboard" ? !i.dashboard : i.chart?.type === "placeholder", s = r.type === "dashboard" ? a ? o("Creating dashboard...", { desc: "Label for ai chat creating dashboard message" }) : o("Updating dashboard...", { desc: "Label for ai chat updating dashboard message" }) : a ? o("Creating item...", { desc: "Label for ai chat creating item message" }) : o("Updating item...", { desc: "Label for ai chat updating item message" });
3936
4159
  return u`
3937
4160
  <luzmo-chat-message
3938
4161
  avatar-placement="bottom"
@@ -3942,7 +4165,7 @@ var Kr = class {
3942
4165
  >
3943
4166
  <div class="loading-message" role="status" aria-live="polite">
3944
4167
  <span class="icon-lg">${c(l, { className: "spin" })}</span>
3945
- <span class="loading-message-text">${this.loadingMessage || i}</span>
4168
+ <span class="loading-message-text">${this.loadingMessage || s}</span>
3946
4169
  </div>
3947
4170
  </luzmo-chat-message>
3948
4171
  `;
@@ -4072,7 +4295,7 @@ a([p({ type: Array })], $.prototype, "messages", void 0), a([p({
4072
4295
  })], $.prototype, "allowVoiceInput", void 0), a([p({
4073
4296
  type: Array,
4074
4297
  attribute: "accepted-file-types"
4075
- })], $.prototype, "acceptedFileTypes", void 0), a([p({ attribute: !1 })], $.prototype, "uploadAttachments", void 0), a([p({ type: String })], $.prototype, "agent", void 0), a([p({
4298
+ })], $.prototype, "acceptedFileTypes", void 0), a([p({ attribute: !1 })], $.prototype, "uploadAttachments", void 0), a([p({ type: String })], $.prototype, "agent", void 0), a([p({ attribute: !1 })], $.prototype, "agentConfig", void 0), a([p({
4076
4299
  type: String,
4077
4300
  attribute: "agent-id"
4078
4301
  })], $.prototype, "agentId", void 0), a([p({ type: String })], $.prototype, "task", void 0), a([p({
@@ -4084,7 +4307,7 @@ a([p({ type: Array })], $.prototype, "messages", void 0), a([p({
4084
4307
  })], $.prototype, "conversationId", void 0), a([p({
4085
4308
  type: Object,
4086
4309
  attribute: "chart"
4087
- })], $.prototype, "chart", void 0), a([p({ type: Object })], $.prototype, "dashboard", void 0), a([p({
4310
+ })], $.prototype, "chart", void 0), a([p({ type: Object })], $.prototype, "dashboard", void 0), a([p({ attribute: !1 })], $.prototype, "customItem", void 0), a([p({
4088
4311
  type: String,
4089
4312
  attribute: "current-screen-mode"
4090
4313
  })], $.prototype, "currentScreenMode", void 0), a([p({
@@ -4117,11 +4340,11 @@ a([p({ type: Array })], $.prototype, "messages", void 0), a([p({
4117
4340
  })], $.prototype, "emptyStateSuggestions", void 0), a([m()], $.prototype, "_textareaValue", void 0), a([m()], $.prototype, "_assistantMessageActionsSlotHasContent", void 0), a([m()], $.prototype, "_pendingAssistantMessageAction", void 0);
4118
4341
  //#endregion
4119
4342
  //#region src/components/ai-chat/ai-chat-events.ts
4120
- function qr(e) {
4343
+ function si(e) {
4121
4344
  return e.recognized === !0;
4122
4345
  }
4123
4346
  //#endregion
4124
4347
  //#region src/components/ai-chat/index.ts
4125
4348
  customElements.get("luzmo-ai-chat") || customElements.define("luzmo-ai-chat", $);
4126
4349
  //#endregion
4127
- export { In as C, Q as E, Nn as S, On as T, zn as _, Gr as a, Fn as b, Br as c, nr as d, Wn as f, Un as g, Vn as h, Wr as i, zr as l, Bn as m, $ as n, Hr as o, Gn as p, Kr as r, Vr as s, qr as t, Qn as u, Ln as v, kn as w, Pn as x, Rn as y };
4350
+ export { Un as C, Mn as D, Rn as E, Wn as S, zn as T, Xn as _, ai as a, Gn as b, ei as c, pr as d, tr as f, er as g, Qn as h, ii as i, $r as l, Zn as m, $ as n, ni as o, nr as p, oi as r, ti as s, si as t, lr as u, Jn as v, qn as w, Kn as x, Yn as y };