@luzmo/analytics-components-kit 1.0.4-beta.2 → 1.0.4-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (440) hide show
  1. package/components/ai-chat/ai-chat.d.ts +29 -6
  2. package/components/ai-chat/index.cjs +1 -1
  3. package/components/ai-chat/index.d.ts +1 -1
  4. package/components/ai-chat/index.js +1 -1
  5. package/components/{ai-chat-BMDfKnEj.cjs → ai-chat-CpK99nb7.cjs} +62 -20
  6. package/components/{ai-chat-Cd26aDpX.js → ai-chat-e2lg3FLg.js} +310 -193
  7. package/components/ai-interaction-textarea/index.cjs +1 -1
  8. package/components/ai-interaction-textarea/index.js +1 -1
  9. package/components/{ai-interaction-textarea-CPfJqTB0.cjs → ai-interaction-textarea-CSrEsHXV.cjs} +1 -1
  10. package/components/{ai-interaction-textarea-DkBglh6Q.js → ai-interaction-textarea-cAXXLnoj.js} +3 -3
  11. package/components/{area-chart-options.config-4OY_kXkB.js → area-chart-options.config-DdYBA1_Q.js} +1 -1
  12. package/components/{area-chart-positioning.config-CfC43YUW.cjs → area-chart-positioning.config-CZgo9lkr.cjs} +1 -1
  13. package/components/{area-chart-positioning.config-CAPrtEZW.js → area-chart-positioning.config-DAEbeAVX.js} +1 -1
  14. package/components/{area-chart-slots.config--pd_dBTn.js → area-chart-slots.config-Cmdkui4v.js} +1 -1
  15. package/components/{bar-chart-options.config-C3puwFpi.js → bar-chart-options.config-Cx3n0tCr.js} +1 -1
  16. package/components/{bar-chart-positioning.config-C1MLYyl9.js → bar-chart-positioning.config-71sM-GEA.js} +1 -1
  17. package/components/{bar-chart-positioning.config-vJOALpQP.cjs → bar-chart-positioning.config-9_GWwUur.cjs} +1 -1
  18. package/components/{bar-chart-slots.config-Dr7v4xxd.js → bar-chart-slots.config-BWvrLYv5.js} +1 -1
  19. package/components/{base-kQ6cjcIZ.cjs → base-DbEAseAh.cjs} +1 -1
  20. package/components/{base-B_wdCOxV.js → base-vk9LuivN.js} +2 -2
  21. package/components/{box-plot-options.config-B486nCds.js → box-plot-options.config-DB9iCCZg.js} +1 -1
  22. package/components/{box-plot-positioning.config-DVNeh9kg.cjs → box-plot-positioning.config-BxIFcn-c.cjs} +1 -1
  23. package/components/{box-plot-positioning.config-CA27sCpO.js → box-plot-positioning.config-DIck_I13.js} +1 -1
  24. package/components/{box-plot-slots.config-Bdb7pkky.js → box-plot-slots.config-BknEys-m.js} +1 -1
  25. package/components/{bubble-chart-options.config-BymUqNR5.js → bubble-chart-options.config-D8o_9z0b.js} +1 -1
  26. package/components/{bubble-chart-positioning.config-OlbBZU4m.js → bubble-chart-positioning.config-BJi-Te33.js} +1 -1
  27. package/components/{bubble-chart-positioning.config-Dg92VJnB.cjs → bubble-chart-positioning.config-Cf7K70G6.cjs} +1 -1
  28. package/components/{bubble-chart-slots.config-B4tsJDuz.js → bubble-chart-slots.config-Djb-py0h.js} +1 -1
  29. package/components/{bullet-chart-options.config-BtyRdRk2.js → bullet-chart-options.config-CmC75LQ8.js} +1 -1
  30. package/components/{bullet-chart-positioning.config-BwqxpSSL.cjs → bullet-chart-positioning.config-3yE6MOJU.cjs} +1 -1
  31. package/components/{bullet-chart-positioning.config-Y18yvzoc.js → bullet-chart-positioning.config-ByVG8aFe.js} +1 -1
  32. package/components/{bullet-chart-slots.config-ccCSNJ5q.js → bullet-chart-slots.config-BECcf-yZ.js} +1 -1
  33. package/components/{choropleth-map-options.config-CqCciAvW.js → choropleth-map-options.config-Bt-vXkKW.js} +1 -1
  34. package/components/{choropleth-map-positioning.config-Dmzy3fMc.js → choropleth-map-positioning.config-BmUOKuYh.js} +1 -1
  35. package/components/{choropleth-map-positioning.config-y-bYMoxr.cjs → choropleth-map-positioning.config-QpuHLCDR.cjs} +1 -1
  36. package/components/{choropleth-map-slots.config-X2YYrSXc.js → choropleth-map-slots.config-DVrgJYSA.js} +1 -1
  37. package/components/{circle-pack-chart-options.config-D9C-ltHA.js → circle-pack-chart-options.config-CLA-ur8J.js} +1 -1
  38. package/components/{circle-pack-chart-positioning.config-wKIQDFe8.cjs → circle-pack-chart-positioning.config-EN3LKHeo.cjs} +1 -1
  39. package/components/{circle-pack-chart-positioning.config-YDdY2cc2.js → circle-pack-chart-positioning.config-K_yHBCSG.js} +1 -1
  40. package/components/{circle-pack-chart-slots.config-BIO1dZsK.js → circle-pack-chart-slots.config-BG6Gh03S.js} +1 -1
  41. package/components/{circular-gauge-options.config-De6SlTLT.js → circular-gauge-options.config-BFBmfsPn.js} +1 -1
  42. package/components/{circular-gauge-positioning.config-C41euPS9.js → circular-gauge-positioning.config-AH32vSIN.js} +1 -1
  43. package/components/{circular-gauge-positioning.config-CKNanoFX.cjs → circular-gauge-positioning.config-CurZIsZj.cjs} +1 -1
  44. package/components/{circular-gauge-slots.config-Dv_7fAD_.js → circular-gauge-slots.config-BSzOAb8B.js} +1 -1
  45. package/components/{column-chart-options.config-5Dbg3FmH.js → column-chart-options.config-V7v9PtQA.js} +1 -1
  46. package/components/{column-chart-positioning.config-BdyuErF8.js → column-chart-positioning.config-DS8sLc1p.js} +1 -1
  47. package/components/{column-chart-positioning.config-Enx15Dqh.cjs → column-chart-positioning.config-Dn7Ri3op.cjs} +1 -1
  48. package/components/{column-chart-slots.config-eHvTwZLX.js → column-chart-slots.config-5BjkTrbt.js} +1 -1
  49. package/components/{combination-chart-options.config-BzmLGCal.js → combination-chart-options.config-CgSqqLLE.js} +1 -1
  50. package/components/{combination-chart-positioning.config-CqlKA__j.cjs → combination-chart-positioning.config-RNhQd78t.cjs} +1 -1
  51. package/components/{combination-chart-positioning.config-BQRn0EfF.js → combination-chart-positioning.config-u9poMkSd.js} +1 -1
  52. package/components/{combination-chart-slots.config-CG40JjE3.js → combination-chart-slots.config-DgM_T-9r.js} +1 -1
  53. package/components/{conditional-number-options.config-CVgV7s7f.js → conditional-number-options.config-3_vXSC0j.js} +1 -1
  54. package/components/{conditional-number-positioning.config-CR45rPru.cjs → conditional-number-positioning.config-Cq4uJ35g.cjs} +1 -1
  55. package/components/{conditional-number-positioning.config-BBivi4ps.js → conditional-number-positioning.config-Dnq3OP76.js} +1 -1
  56. package/components/{conditional-number-slots.config-o22l-qLv.js → conditional-number-slots.config-CzVPP4me.js} +1 -1
  57. package/components/{default-acceptable-data-field-types-DFOFWWnT.js → convert-data-field-to-slot-content-C6IIqU7G.js} +12 -12
  58. package/components/convert-data-field-to-slot-content-DLzkk6dT.cjs +20 -0
  59. package/components/data-field/index.cjs +1 -1
  60. package/components/data-field/index.js +1 -1
  61. package/components/{data-field-CLfUWgK9.js → data-field-CGY-TeOZ.js} +3 -3
  62. package/components/{data-field-CAGprHjS.cjs → data-field-CXK_vezu.cjs} +1 -1
  63. package/components/data-field-level/index.cjs +1 -1
  64. package/components/data-field-level/index.js +1 -1
  65. package/components/{data-field-level-CfJ0dmxo.js → data-field-level-BsJ3eRQt.js} +4 -4
  66. package/components/data-field-level-CxF3DZmD.cjs +55 -0
  67. package/components/data-field-panel/index.cjs +1 -1
  68. package/components/data-field-panel/index.js +1 -1
  69. package/components/data-field-panel-Brzkhc5r.cjs +87 -0
  70. package/components/{data-field-panel-N7mukLj6.js → data-field-panel-CNiGw9_F.js} +3 -3
  71. package/components/data-fields-select/index.cjs +1 -1
  72. package/components/data-fields-select/index.js +1 -1
  73. package/components/{data-fields-select-B1pwPYt6.js → data-fields-select-BcMFFFJV.js} +8 -8
  74. package/components/{data-fields-select-qCWuzckJ.cjs → data-fields-select-D-nSjOep.cjs} +1 -1
  75. package/components/dataset-selector-list/index.cjs +1 -1
  76. package/components/dataset-selector-list/index.js +1 -1
  77. package/components/{dataset-selector-list-BPBZ04Lf.cjs → dataset-selector-list-2Kz1oNFa.cjs} +1 -1
  78. package/components/{dataset-selector-list-DmajZuNC.js → dataset-selector-list-CvjSPfPj.js} +1 -1
  79. package/components/dataset-selector-row/index.cjs +1 -1
  80. package/components/dataset-selector-row/index.js +1 -1
  81. package/components/{dataset-selector-row-SJzYIpO6.js → dataset-selector-row-Beo9owAy.js} +2 -2
  82. package/components/{dataset-selector-row-qxfmcxpm.cjs → dataset-selector-row-DOhPbfDh.cjs} +1 -1
  83. package/components/{date-comparison-filter-options.config-BJg_WqL4.js → date-comparison-filter-options.config-CsDlmT6L.js} +1 -1
  84. package/components/{date-comparison-filter-slots.config-BIK5aZ6P.js → date-comparison-filter-slots.config-EEgNP09x.js} +1 -1
  85. package/components/{date-filter-options.config-N6eGgPGL.js → date-filter-options.config-b8EHOjR1.js} +1 -1
  86. package/components/{date-filter-slots.config-CJJ4P0v6.js → date-filter-slots.config-PJ_h3Aj7.js} +1 -1
  87. package/components/{de-DnADyZVQ.cjs → de-BY1wWZE8.cjs} +1 -1
  88. package/components/{de-BHQ-FfU0.js → de-D-xQoqdB.js} +9 -1
  89. package/components/display-settings/index.cjs +1 -1
  90. package/components/display-settings/index.js +1 -1
  91. package/components/{display-settings-CkkjJjem.js → display-settings-BNoRfE1e.js} +9 -9
  92. package/components/display-settings-JuegpHpn.cjs +120 -0
  93. package/components/display-settings-binning/index.cjs +1 -1
  94. package/components/display-settings-binning/index.js +1 -1
  95. package/components/{display-settings-binning-BohjN2qK.js → display-settings-binning-D4fXWXY_.js} +3 -3
  96. package/components/{display-settings-binning-C7-gByrp.cjs → display-settings-binning-DFA-s8JY.cjs} +1 -1
  97. package/components/display-settings-datetime/index.cjs +1 -1
  98. package/components/display-settings-datetime/index.js +1 -1
  99. package/components/{display-settings-datetime-7pUcku_h.js → display-settings-datetime-CcZ-aQjs.js} +17 -17
  100. package/components/display-settings-datetime-DjfBfyzM.cjs +217 -0
  101. package/components/display-settings-grand-totals/index.cjs +1 -1
  102. package/components/display-settings-grand-totals/index.js +1 -1
  103. package/components/{display-settings-grand-totals-CV5guBhH.js → display-settings-grand-totals-CUlIPreM.js} +3 -3
  104. package/components/{display-settings-grand-totals-DHQSZqMI.cjs → display-settings-grand-totals-lf_RFqaR.cjs} +1 -1
  105. package/components/display-settings-numeric/index.cjs +1 -1
  106. package/components/display-settings-numeric/index.js +1 -1
  107. package/components/{display-settings-numeric--5zk8_7K.cjs → display-settings-numeric-C707pX1_.cjs} +1 -1
  108. package/components/{display-settings-numeric-D2LjMepO.js → display-settings-numeric-VVEUpoAy.js} +3 -3
  109. package/components/display-settings-period-over-period/index.cjs +1 -1
  110. package/components/display-settings-period-over-period/index.js +1 -1
  111. package/components/{display-settings-period-over-period-sqZU6Zj_.js → display-settings-period-over-period-02Elu2Rn.js} +3 -3
  112. package/components/{display-settings-period-over-period-BE22oHvV.cjs → display-settings-period-over-period-Be_A5whA.cjs} +1 -1
  113. package/components/{donut-chart-options.config-C66yOoed.js → donut-chart-options.config-N0MWtn-o.js} +1 -1
  114. package/components/{donut-chart-positioning.config-B9sm4yFV.cjs → donut-chart-positioning.config-ByXtDyY9.cjs} +1 -1
  115. package/components/{donut-chart-positioning.config-DtaPAgXE.js → donut-chart-positioning.config-CH5pTYpi.js} +1 -1
  116. package/components/{donut-chart-slots.config-2XbT9Uu8.js → donut-chart-slots.config-dQrT0g_x.js} +1 -1
  117. package/components/{dropdown-filter-options.config-Cm_wK0mn.js → dropdown-filter-options.config-CziqJFPz.js} +1 -1
  118. package/components/{dropdown-filter-slots.config-CnESCGuw.js → dropdown-filter-slots.config-CQo3-kIo.js} +1 -1
  119. package/components/{es-B4xWcOeJ.cjs → es-BIaD4kOL.cjs} +1 -1
  120. package/components/{es-CkCov6l7.js → es-CLnBAiLu.js} +9 -1
  121. package/components/{evolution-number-options.config-07Jd0oUL.js → evolution-number-options.config-BfYN1Qgk.js} +1 -1
  122. package/components/{evolution-number-positioning.config-v8_6kB1H.js → evolution-number-positioning.config-B2_CNZP0.js} +1 -1
  123. package/components/{evolution-number-positioning.config-DVXhBZYj.cjs → evolution-number-positioning.config-IFgvO_iZ.cjs} +1 -1
  124. package/components/{evolution-number-slots.config-BKdD3cKw.js → evolution-number-slots.config-CBS0b0Yk.js} +1 -1
  125. package/components/filter-expression-picker/index.cjs +1 -1
  126. package/components/filter-expression-picker/index.js +1 -1
  127. package/components/{filter-expression-picker-CF4Otpll.cjs → filter-expression-picker-0eNf_L9I.cjs} +1 -1
  128. package/components/{filter-expression-picker-DCrCAIhg.js → filter-expression-picker-C0FJhbHk.js} +2 -2
  129. package/components/filter-item/index.cjs +1 -1
  130. package/components/filter-item/index.js +1 -1
  131. package/components/{filter-item-D2Dct0a3.js → filter-item-C0AXDA_F.js} +8 -8
  132. package/components/{filter-item-BjRerEjB.cjs → filter-item-C5O2G3Um.cjs} +2 -2
  133. package/components/filter-value-picker/index.cjs +1 -1
  134. package/components/filter-value-picker/index.js +1 -1
  135. package/components/{filter-value-picker-enC3f3ja.cjs → filter-value-picker-BOL1zvCR.cjs} +1 -1
  136. package/components/{filter-value-picker-CCKV4PWs.js → filter-value-picker-DZORmKwM.js} +5 -5
  137. package/components/filter-value-picker-datetime/index.cjs +1 -1
  138. package/components/filter-value-picker-datetime/index.js +1 -1
  139. package/components/{filter-value-picker-datetime-CFCV2jkK.js → filter-value-picker-datetime-0gRfWBzr.js} +2 -2
  140. package/components/{filter-value-picker-datetime-D20WnWar.cjs → filter-value-picker-datetime-dCo1_pma.cjs} +1 -1
  141. package/components/filter-value-picker-hierarchy/index.cjs +1 -1
  142. package/components/filter-value-picker-hierarchy/index.js +1 -1
  143. package/components/{filter-value-picker-hierarchy-Drrm1ncu.cjs → filter-value-picker-hierarchy-D8n6gV78.cjs} +1 -1
  144. package/components/{filter-value-picker-hierarchy-ktVBIpcS.js → filter-value-picker-hierarchy-Dt7VNcSd.js} +3 -3
  145. package/components/filter-value-picker-numeric/index.cjs +1 -1
  146. package/components/filter-value-picker-numeric/index.js +1 -1
  147. package/components/{filter-value-picker-numeric-BYspQRSi.js → filter-value-picker-numeric-Cr7ll53O.js} +1 -1
  148. package/components/{filter-value-picker-numeric-BtZaQvkr.cjs → filter-value-picker-numeric-DBw1TZtm.cjs} +1 -1
  149. package/components/filters/index.cjs +1 -1
  150. package/components/filters/index.js +1 -1
  151. package/components/{filters-Ew0ARuxD.js → filters-B3zHSR73.js} +4 -4
  152. package/components/{filters-CfH_4MKZ.cjs → filters-DIDatBfn.cjs} +1 -1
  153. package/components/formula/index.cjs +1 -1
  154. package/components/formula/index.js +1 -1
  155. package/components/formula-CPrZC9BC.cjs +45 -0
  156. package/components/{formula-codemirror-CQonNhmd.js → formula-codemirror-DycN-ivp.js} +6 -6
  157. package/components/{formula-codemirror-CFgPlkN8.cjs → formula-codemirror-uXTVVacE.cjs} +1 -1
  158. package/components/{formula-display-store-BGzj13Cs.js → formula-display-store-B6dtlBPk.js} +3 -3
  159. package/components/{formula-display-store-DFAvw21p.cjs → formula-display-store-CCxSWPEB.cjs} +1 -1
  160. package/components/formula-editor/index.cjs +1 -1
  161. package/components/formula-editor/index.js +3 -3
  162. package/components/{formula-editor-CtCvJkyS.cjs → formula-editor-BPMeTS5F.cjs} +1 -1
  163. package/components/{formula-editor-KXxQlh2n.js → formula-editor-BqHWUVdh.js} +8 -8
  164. package/components/formula-field/index.cjs +1 -1
  165. package/components/formula-field/index.js +1 -1
  166. package/components/{formula-field-OcD4TWAn.js → formula-field-Bfy1qysp.js} +1 -1
  167. package/components/{formula-field-aiqX7nRp.cjs → formula-field-CAtaDtSP.cjs} +1 -1
  168. package/components/{formula-DYdcMG-v.js → formula-ibsKYWEh.js} +3 -3
  169. package/components/{formula-input-base-CQPGmISj.js → formula-input-base-Cs71sKh1.js} +7 -7
  170. package/components/formula-input-base-_-8MncrA.cjs +49 -0
  171. package/components/{fr-BOivrXqX.cjs → fr-CHG2Tcby.cjs} +1 -1
  172. package/components/{fr-BSFpJ50_.js → fr-DIwbOnwC.js} +9 -1
  173. package/components/{funnel-chart-options.config-PV1Hlu91.js → funnel-chart-options.config-D8fqrJvi.js} +1 -1
  174. package/components/{funnel-chart-positioning.config-BT-YoTgv.js → funnel-chart-positioning.config-BUMX4e-7.js} +1 -1
  175. package/components/{funnel-chart-positioning.config-C5Z3JkuS.cjs → funnel-chart-positioning.config-CY042Tro.cjs} +1 -1
  176. package/components/{funnel-chart-slots.config-_9HUPvTb.js → funnel-chart-slots.config-CeGu8stc.js} +1 -1
  177. package/components/{get-css-variable-CBXsAxR6.cjs → get-css-variable-B8sJUuig.cjs} +1 -1
  178. package/components/{get-css-variable-DYnldi15.js → get-css-variable-r1spgqX0.js} +1 -1
  179. package/components/{get-dataset-name-EkeeFzI3.cjs → get-dataset-name-Dwuh7DWE.cjs} +1 -1
  180. package/components/{get-dataset-name-BGCvfcdY.js → get-dataset-name-SfDNjsuR.js} +1 -1
  181. package/components/{groupings-dIFi0bJY.cjs → groupings-DuX9SnZa.cjs} +1 -1
  182. package/components/{groupings-CrE-yp0S.js → groupings-OLk5e7JO.js} +1 -1
  183. package/components/{heat-map-options.config-CQY6t9AL.js → heat-map-options.config-5zjlVaa0.js} +1 -1
  184. package/components/{heat-map-positioning.config-BpFis567.js → heat-map-positioning.config-C7W5YbvL.js} +1 -1
  185. package/components/{heat-map-positioning.config-HPftgmdz.cjs → heat-map-positioning.config-CjaNs9QU.cjs} +1 -1
  186. package/components/{heat-map-slots.config-B4AswVSo.js → heat-map-slots.config-DBkkcvMN.js} +1 -1
  187. package/components/{heat-table-options.config-IlVPk4Q4.js → heat-table-options.config-Blcs4JjF.js} +1 -1
  188. package/components/{heat-table-positioning.config-wkrm8Fbk.cjs → heat-table-positioning.config-B2ko43lN.cjs} +1 -1
  189. package/components/{heat-table-positioning.config-Canc3aEE.js → heat-table-positioning.config-C6d8wmTk.js} +1 -1
  190. package/components/{heat-table-slots.config-CB509zU4.js → heat-table-slots.config-CJOXI-Sf.js} +1 -1
  191. package/components/{hexbin-map-options.config-vzw6ovva.js → hexbin-map-options.config-D5o0k890.js} +1 -1
  192. package/components/{hexbin-map-positioning.config-CBv6Lij5.js → hexbin-map-positioning.config-B9Af5odq.js} +1 -1
  193. package/components/{hexbin-map-positioning.config-D0hAchxV.cjs → hexbin-map-positioning.config-CaP2fsiE.cjs} +1 -1
  194. package/components/{hexbin-map-slots.config-Dyse0pui.js → hexbin-map-slots.config-CpJIfl6o.js} +1 -1
  195. package/components/{image-options.config-Cmrsd8Yu.js → image-options.config-C46UQpMq.js} +1 -1
  196. package/components/{image-slots.config-CVj-DM07.js → image-slots.config-DjaT4mUk.js} +1 -1
  197. package/components/index.cjs +1 -1
  198. package/components/index.js +62 -61
  199. package/components/interactive-viz-item/helpers/chart-helpers.d.ts +7 -0
  200. package/components/interactive-viz-item/index.cjs +20 -0
  201. package/components/interactive-viz-item/index.d.ts +10 -0
  202. package/components/interactive-viz-item/index.js +28 -0
  203. package/components/interactive-viz-item/interactive-viz-item.d.ts +96 -0
  204. package/components/interactive-viz-item/types.d.ts +117 -0
  205. package/components/interactive-viz-item-CKRpHIwI.js +693 -0
  206. package/components/interactive-viz-item-D8btvzeg.cjs +247 -0
  207. package/components/item-grid/index.cjs +1 -1
  208. package/components/item-grid/index.js +1 -1
  209. package/components/item-grid-BEwohat_.js +4559 -0
  210. package/components/item-grid-CtW-2roU.cjs +113 -0
  211. package/components/item-option/index.cjs +1 -1
  212. package/components/item-option/index.js +1 -1
  213. package/components/{item-option-uyAsPcfE.js → item-option-CSc3jmeo.js} +52 -52
  214. package/components/{item-option-CEwjJc1p.cjs → item-option-DkqkbwtF.cjs} +5 -5
  215. package/components/item-option-action-button-group/index.cjs +1 -1
  216. package/components/item-option-action-button-group/index.js +1 -1
  217. package/components/item-option-action-button-group-BoZWUGPs.cjs +53 -0
  218. package/components/{item-option-action-button-group-BOxQFfBF.js → item-option-action-button-group-D_K-T_wB.js} +2 -2
  219. package/components/{item-option-base-Dr5-WxZ9.js → item-option-base-Do3zK0fN.js} +1 -1
  220. package/components/{item-option-base-DKieCS-Y.cjs → item-option-base-yH3-Snf-.cjs} +1 -1
  221. package/components/item-option-color-palette-picker/index.cjs +1 -1
  222. package/components/item-option-color-palette-picker/index.js +1 -1
  223. package/components/{item-option-color-palette-picker-7vSSpj5o.cjs → item-option-color-palette-picker-B9Umcsw_.cjs} +1 -1
  224. package/components/{item-option-color-palette-picker-D_mABGWh.js → item-option-color-palette-picker-CTvaiVJ1.js} +1 -1
  225. package/components/item-option-color-picker/index.cjs +1 -1
  226. package/components/item-option-color-picker/index.js +1 -1
  227. package/components/{item-option-color-picker-COLBYeRy.js → item-option-color-picker-BLF9-2WR.js} +1 -1
  228. package/components/{item-option-color-picker-DMyNeD2e.cjs → item-option-color-picker-FIPCBMIC.cjs} +1 -1
  229. package/components/item-option-color-range/index.cjs +1 -1
  230. package/components/item-option-color-range/index.js +1 -1
  231. package/components/item-option-color-range-BznRsx45.cjs +98 -0
  232. package/components/{item-option-color-range-CueVlyT2.js → item-option-color-range-mvlBVdZK.js} +3 -3
  233. package/components/item-option-multi-language-field/index.cjs +1 -1
  234. package/components/item-option-multi-language-field/index.js +1 -1
  235. package/components/{item-option-multi-language-field-CMuQwrwQ.js → item-option-multi-language-field-BMJdbHOd.js} +1 -1
  236. package/components/{item-option-multi-language-field-q7txF5xA.cjs → item-option-multi-language-field-Rypasjvk.cjs} +1 -1
  237. package/components/item-option-number-field/index.cjs +1 -1
  238. package/components/item-option-number-field/index.js +1 -1
  239. package/components/{item-option-number-field-BODNSx66.js → item-option-number-field-Bu4IYyNe.js} +1 -1
  240. package/components/{item-option-number-field-DWeJWUxY.cjs → item-option-number-field-sNlrQ5mG.cjs} +1 -1
  241. package/components/item-option-panel/index.cjs +1 -1
  242. package/components/item-option-panel/index.js +1 -1
  243. package/components/{item-option-panel-CxOfVI0z.js → item-option-panel-Bmm9IeZR.js} +3 -3
  244. package/components/{item-option-panel-D0dxyUfE.cjs → item-option-panel-DEPAMt-A.cjs} +1 -1
  245. package/components/item-option-picker/index.cjs +1 -1
  246. package/components/item-option-picker/index.js +1 -1
  247. package/components/{item-option-picker-CyX7qqrb.js → item-option-picker-6-VRIzb5.js} +1 -1
  248. package/components/{item-option-picker-BsP_0XyD.cjs → item-option-picker-DXZce4bl.cjs} +1 -1
  249. package/components/item-option-position-picker/index.cjs +1 -1
  250. package/components/item-option-position-picker/index.js +1 -1
  251. package/components/{item-option-position-picker-LOg6P4Gl.js → item-option-position-picker-DBy46OLT.js} +1 -1
  252. package/components/{item-option-position-picker-CcmBYyqF.cjs → item-option-position-picker-DW12bwRL.cjs} +1 -1
  253. package/components/item-option-positions-number-field/index.cjs +1 -1
  254. package/components/item-option-positions-number-field/index.js +1 -1
  255. package/components/{item-option-positions-number-field-BCbWb1R6.js → item-option-positions-number-field-BFW0c-PE.js} +1 -1
  256. package/components/{item-option-positions-number-field-o3Qckgwd.cjs → item-option-positions-number-field-HofP9ee6.cjs} +1 -1
  257. package/components/item-option-radio-button-group/index.cjs +1 -1
  258. package/components/item-option-radio-button-group/index.js +1 -1
  259. package/components/{item-option-radio-button-group-CjLhWTEJ.cjs → item-option-radio-button-group-BN_a7dSl.cjs} +1 -1
  260. package/components/{item-option-radio-button-group-CDebmEn3.js → item-option-radio-button-group-CpdXh9GA.js} +1 -1
  261. package/components/item-option-slider/index.cjs +1 -1
  262. package/components/item-option-slider/index.js +1 -1
  263. package/components/{item-option-slider-CHbkJHLK.cjs → item-option-slider-B-CM9FzR.cjs} +1 -1
  264. package/components/{item-option-slider-C9ZJZcdg.js → item-option-slider-CRjRQP3Z.js} +1 -1
  265. package/components/item-option-switch/index.cjs +1 -1
  266. package/components/item-option-switch/index.js +1 -1
  267. package/components/{item-option-switch-FRAZWozp.cjs → item-option-switch-CY6zMkI-.cjs} +1 -1
  268. package/components/{item-option-switch-BVMOOWya.js → item-option-switch-Q-IaH1Xr.js} +1 -1
  269. package/components/item-option-text-field/index.cjs +1 -1
  270. package/components/item-option-text-field/index.js +1 -1
  271. package/components/{item-option-text-field-e6NLDlSq.js → item-option-text-field-BzHaYPud.js} +1 -1
  272. package/components/{item-option-text-field-DkYqHfdJ.cjs → item-option-text-field-C2_1-zLs.cjs} +1 -1
  273. package/components/item-options-configs.js +45 -45
  274. package/components/item-slot-drop/index.cjs +1 -1
  275. package/components/item-slot-drop/index.js +1 -1
  276. package/components/{item-slot-drop-CoReI68M.js → item-slot-drop-CNX2TBXB.js} +24 -24
  277. package/components/item-slot-drop-CR-dvLaD.cjs +91 -0
  278. package/components/item-slot-drop-panel/index.cjs +1 -1
  279. package/components/item-slot-drop-panel/index.js +1 -1
  280. package/components/{item-slot-drop-panel-CEI1q060.js → item-slot-drop-panel-BaJoR9Zc.js} +48 -48
  281. package/components/{item-slot-drop-panel-DqekQtOr.cjs → item-slot-drop-panel-DTvbJtNW.cjs} +6 -6
  282. package/components/item-slot-picker/index.cjs +1 -1
  283. package/components/item-slot-picker/index.js +1 -1
  284. package/components/{item-slot-picker-CvbXFh6Z.cjs → item-slot-picker-CnKeeXp5.cjs} +13 -13
  285. package/components/item-slot-picker-panel/index.cjs +1 -1
  286. package/components/item-slot-picker-panel/index.js +1 -1
  287. package/components/{item-slot-picker-panel-CG0NyMDX.js → item-slot-picker-panel-BMapBAxj.js} +15 -15
  288. package/components/item-slot-picker-panel-Dw682RiT.cjs +81 -0
  289. package/components/{item-slot-picker-dy5hVID5.js → item-slot-picker-tHRu_jaI.js} +25 -25
  290. package/components/item-slots-configs.js +45 -45
  291. package/components/{line-chart-options.config-1TpSJqeb.js → line-chart-options.config-KFAaQqB_.js} +1 -1
  292. package/components/{line-chart-positioning.config-61uNfPZs.js → line-chart-positioning.config-Bwe9-1yw.js} +1 -1
  293. package/components/{line-chart-positioning.config-BNtGFWUK.cjs → line-chart-positioning.config-CfVRqaxT.cjs} +1 -1
  294. package/components/{line-chart-slots.config-CcCpwWzZ.js → line-chart-slots.config-D0jaC82U.js} +1 -1
  295. package/components/{localized-mixin-EpweDrTk.js → localized-mixin-BvQbkZEL.js} +1 -1
  296. package/components/{localized-mixin-CiBWThrZ.cjs → localized-mixin-DrK3QZNa.cjs} +1 -1
  297. package/components/{marker-map-options.config-DTaax79J.js → marker-map-options.config-D0RmFKKM.js} +1 -1
  298. package/components/{marker-map-positioning.config-C2cL7uZJ.cjs → marker-map-positioning.config-DLXbw6Yd.cjs} +1 -1
  299. package/components/{marker-map-positioning.config-Bi5WCVgJ.js → marker-map-positioning.config-DLehY4Lv.js} +1 -1
  300. package/components/{marker-map-slots.config-BOWmS_IZ.js → marker-map-slots.config-DsMklO0v.js} +1 -1
  301. package/components/{nl-D_MleIlk.js → nl-C_g1Le3t.js} +9 -1
  302. package/components/{nl-DS4Y_g8B.cjs → nl-PxN5EqzT.cjs} +1 -1
  303. package/components/{ohlc-chart-options.config-Dfes8ROC.js → ohlc-chart-options.config-BBdUKmJ9.js} +1 -1
  304. package/components/{ohlc-chart-positioning.config-IAOfu4ue.cjs → ohlc-chart-positioning.config-BGU-mDPW.cjs} +1 -1
  305. package/components/{ohlc-chart-positioning.config-DFx99k9A.js → ohlc-chart-positioning.config-Cz3zieDp.js} +1 -1
  306. package/components/{ohlc-chart-slots.config-JRztPEXL.js → ohlc-chart-slots.config-BiQn5Kdg.js} +1 -1
  307. package/components/{parallel-coordinates-plot-options.config-NSk_HC0H.js → parallel-coordinates-plot-options.config-KJrOL0Sr.js} +1 -1
  308. package/components/{parallel-coordinates-plot-positioning.config-Bf0Leksw.cjs → parallel-coordinates-plot-positioning.config-CXIMbncP.cjs} +1 -1
  309. package/components/{parallel-coordinates-plot-positioning.config-C9TqUuGC.js → parallel-coordinates-plot-positioning.config-Cc8k6gqG.js} +1 -1
  310. package/components/{parallel-coordinates-plot-slots.config-pmbO5DnL.js → parallel-coordinates-plot-slots.config-B7QY714-.js} +1 -1
  311. package/components/{pivot-table-options.config-B3wYlzEq.js → pivot-table-options.config-DEmZ_EQi.js} +1 -1
  312. package/components/{pivot-table-positioning.config-D1R3VO88.cjs → pivot-table-positioning.config-BBd6xf8q.cjs} +1 -1
  313. package/components/{pivot-table-positioning.config-CPXqqtcR.js → pivot-table-positioning.config-BK7wgw1A.js} +1 -1
  314. package/components/{pivot-table-slots.config-DaLfGOP9.js → pivot-table-slots.config-DpDaXLdw.js} +1 -1
  315. package/components/{pragmatic-element-adapter-D0LRKx5U.js → pragmatic-element-adapter-C_7HSvGV.js} +74 -75
  316. package/components/{pragmatic-element-adapter-DdyH32ix.cjs → pragmatic-element-adapter-DPWYJiW9.cjs} +4 -4
  317. package/components/{pyramid-chart-options.config-DIyiyqGM.js → pyramid-chart-options.config-DiD3QFps.js} +1 -1
  318. package/components/{pyramid-chart-positioning.config-BfXdJS8g.cjs → pyramid-chart-positioning.config-C7STytAm.cjs} +1 -1
  319. package/components/{pyramid-chart-positioning.config-JAUQpA0B.js → pyramid-chart-positioning.config-CGjiKyPG.js} +1 -1
  320. package/components/{pyramid-chart-slots.config-DtnUlw5y.js → pyramid-chart-slots.config-BrKgartT.js} +1 -1
  321. package/components/{radar-chart-options.config-UVOzUnVT.js → radar-chart-options.config-COBM2L3R.js} +1 -1
  322. package/components/{radar-chart-positioning.config-CdJSazt4.js → radar-chart-positioning.config-6xWEPHjC.js} +1 -1
  323. package/components/{radar-chart-positioning.config-Bixdrod2.cjs → radar-chart-positioning.config-p0s42Zyt.cjs} +1 -1
  324. package/components/{radar-chart-slots.config-CkLoeAV7.js → radar-chart-slots.config-SivEBhuj.js} +1 -1
  325. package/components/{regular-table-options.config-CBvnxTdd.js → regular-table-options.config-B0zRcsWM.js} +1 -1
  326. package/components/{regular-table-slots.config-Cc6hL7iu.js → regular-table-slots.config-M2axBXl4.js} +1 -1
  327. package/components/{route-map-options.config-DZrlGa5o.js → route-map-options.config-CrMrDQ_l.js} +1 -1
  328. package/components/{route-map-positioning.config-Bk_BndTS.js → route-map-positioning.config-B2qAh6WW.js} +1 -1
  329. package/components/{route-map-positioning.config-7aca5Iex.cjs → route-map-positioning.config-C8KmQ33c.cjs} +1 -1
  330. package/components/{route-map-slots.config-CQxB8gKC.js → route-map-slots.config-COCoP99E.js} +1 -1
  331. package/components/{sankey-diagram-options.config-s_QRVr1r.js → sankey-diagram-options.config-BYLiy1UX.js} +1 -1
  332. package/components/{sankey-diagram-positioning.config-DPgQELIu.js → sankey-diagram-positioning.config-CBLQktr4.js} +1 -1
  333. package/components/{sankey-diagram-positioning.config-Bvus3RDi.cjs → sankey-diagram-positioning.config-DAF803wR.cjs} +1 -1
  334. package/components/{sankey-diagram-slots.config-C9tIfWHU.js → sankey-diagram-slots.config-C-sqtrS-.js} +1 -1
  335. package/components/{scatter-plot-options.config-DI4hlqi5.js → scatter-plot-options.config-BpUYcLt-.js} +1 -1
  336. package/components/{scatter-plot-positioning.config-DBDCDDad.cjs → scatter-plot-positioning.config-0hj66nn4.cjs} +1 -1
  337. package/components/{scatter-plot-positioning.config-D-ifHW9P.js → scatter-plot-positioning.config-Be9hQ727.js} +1 -1
  338. package/components/{scatter-plot-slots.config-CUURijrN.js → scatter-plot-slots.config-Dg78lS25.js} +1 -1
  339. package/components/{search-filter-options.config-CPzfgUWV.js → search-filter-options.config-lGQ-biU5.js} +1 -1
  340. package/components/{search-filter-slots.config-DD119qkk.js → search-filter-slots.config-BhDSDpNd.js} +1 -1
  341. package/components/{set-locale-UK0ghkg9.js → set-locale-DB1FMgtK.js} +4 -4
  342. package/components/{set-locale-DTFOOSog.cjs → set-locale-DKCZkJVL.cjs} +1 -1
  343. package/components/{slicer-filter-options.config-F2CZ8ckV.js → slicer-filter-options.config-B6rxZYcl.js} +1 -1
  344. package/components/{slicer-filter-positioning.config-0uGZ8EgN.js → slicer-filter-positioning.config-BQoRGx8R.js} +1 -1
  345. package/components/{slicer-filter-positioning.config-Bx2_7jxp.cjs → slicer-filter-positioning.config-CvcZ3qkf.cjs} +1 -1
  346. package/components/{slicer-filter-slots.config-D-BhCuA9.js → slicer-filter-slots.config-XtuZoiId.js} +1 -1
  347. package/components/{slider-filter-options.config-DO0HHK2l.js → slider-filter-options.config-C7-5aoaC.js} +1 -1
  348. package/components/{slider-filter-slots.config-CGQG6JqK.js → slider-filter-slots.config-BYkIGVvh.js} +1 -1
  349. package/components/slot-menu/index.cjs +1 -1
  350. package/components/slot-menu/index.js +1 -1
  351. package/components/{slot-menu-DkyDLDSd.cjs → slot-menu-CkiIhk9e.cjs} +2 -2
  352. package/components/{slot-menu-Cw5HJ_bk.js → slot-menu-DZPe7qUA.js} +15 -15
  353. package/components/slot-menu-list/index.cjs +1 -1
  354. package/components/slot-menu-list/index.js +1 -1
  355. package/components/{slot-menu-list-CTJ-owp1.js → slot-menu-list-BRsAe3-b.js} +3 -3
  356. package/components/{slot-menu-list-BZllvntQ.cjs → slot-menu-list-CCrkNqq8.cjs} +1 -1
  357. package/components/slots-config-DMC15sjT.js +77 -0
  358. package/components/{speedometer-chart-options.config-jK_yQjy2.js → speedometer-chart-options.config-Bd3-G7S7.js} +1 -1
  359. package/components/{speedometer-chart-positioning.config-CNOKIw7e.cjs → speedometer-chart-positioning.config-CAsBGyZ7.cjs} +1 -1
  360. package/components/{speedometer-chart-positioning.config-FzFxMi0X.js → speedometer-chart-positioning.config-CsgmgREh.js} +1 -1
  361. package/components/{speedometer-chart-slots.config-CjkHAHNX.js → speedometer-chart-slots.config-CkeiXSCy.js} +1 -1
  362. package/components/{spike-map-options.config-cj07bETE.js → spike-map-options.config-B_2BXI_9.js} +1 -1
  363. package/components/{spike-map-positioning.config-B4NYfmEw.js → spike-map-positioning.config-BS8MuRkQ.js} +1 -1
  364. package/components/{spike-map-positioning.config-Bcdt8670.cjs → spike-map-positioning.config-D4isshlL.cjs} +1 -1
  365. package/components/{spike-map-slots.config-yMkdy-0w.js → spike-map-slots.config-C44Vxsit.js} +1 -1
  366. package/components/{strip-plot-options.config-DmAxeY2S.js → strip-plot-options.config-By62J2Jj.js} +1 -1
  367. package/components/{strip-plot-positioning.config-n9OIxpa_.js → strip-plot-positioning.config-CufC8vJi.js} +1 -1
  368. package/components/{strip-plot-positioning.config-BjcqWJoD.cjs → strip-plot-positioning.config-NpwP9QGU.cjs} +1 -1
  369. package/components/{strip-plot-slots.config-C07nIM5s.js → strip-plot-slots.config-xsNFXerT.js} +1 -1
  370. package/components/{sunburst-chart-options.config-CLyQG-8x.js → sunburst-chart-options.config-DwQwkQxR.js} +1 -1
  371. package/components/{sunburst-chart-positioning.config-BIpSCpSi.cjs → sunburst-chart-positioning.config-C5UCbZWE.cjs} +1 -1
  372. package/components/{sunburst-chart-positioning.config-CcGOcwOK.js → sunburst-chart-positioning.config-D60TNhUU.js} +1 -1
  373. package/components/{sunburst-chart-slots.config-BU9ma0xm.js → sunburst-chart-slots.config-D6Z2_Kh_.js} +1 -1
  374. package/components/{symbol-map-options.config-I_gykFhh.js → symbol-map-options.config-uXEbOHWD.js} +1 -1
  375. package/components/{symbol-map-positioning.config-H3n2ngaa.js → symbol-map-positioning.config-D1esOfIw.js} +1 -1
  376. package/components/{symbol-map-positioning.config-DPv89eCY.cjs → symbol-map-positioning.config-D__gPAF-.cjs} +1 -1
  377. package/components/{symbol-map-slots.config-CQJgV5bh.js → symbol-map-slots.config-CHTIkMw4.js} +1 -1
  378. package/components/{text-options.config-DUMx63Ol.js → text-options.config-B5y7YAqT.js} +1 -1
  379. package/components/{text-slots.config-YmmXsb-0.js → text-slots.config-sFoowMc6.js} +1 -1
  380. package/components/{treemap-chart-options.config-CAWPa5jK.js → treemap-chart-options.config-BouAbrk0.js} +1 -1
  381. package/components/{treemap-chart-positioning.config-W2sl4gZ0.cjs → treemap-chart-positioning.config-BZ1yMqy5.cjs} +1 -1
  382. package/components/{treemap-chart-positioning.config-Dzp4TodY.js → treemap-chart-positioning.config-DEnYiZKj.js} +1 -1
  383. package/components/{treemap-chart-slots.config-QEVbKZyS.js → treemap-chart-slots.config-BjHBRWDJ.js} +1 -1
  384. package/components/utils/base.cjs +1 -1
  385. package/components/utils/base.js +2 -2
  386. package/components/utils/store.js +1 -1
  387. package/components/{utils-C8VI4SiJ.cjs → utils-Bn8v7iuu.cjs} +1 -1
  388. package/components/{utils-BD_TKdii.js → utils-CIxpLDLh.js} +2 -2
  389. package/components/utils.cjs +1 -1
  390. package/components/utils.js +9 -9
  391. package/components/{venn-diagram-options.config-KKD89q3q.js → venn-diagram-options.config-BZWBYEhB.js} +1 -1
  392. package/components/{venn-diagram-positioning.config-BLSj3JqA.js → venn-diagram-positioning.config-DMceiBb8.js} +1 -1
  393. package/components/{venn-diagram-positioning.config-Bv3pFJIU.cjs → venn-diagram-positioning.config-DUvGRRSh.cjs} +1 -1
  394. package/components/{venn-diagram-slots.config-DsIqVOI2.js → venn-diagram-slots.config-CM0HPIPD.js} +1 -1
  395. package/components/{video-options.config-D2SEyNrP.js → video-options.config-DWuy1OHa.js} +1 -1
  396. package/components/{video-slots.config-B680gLmP.js → video-slots.config-B_aDlTp6.js} +1 -1
  397. package/components/viz-item-menu/index.cjs +1 -1
  398. package/components/viz-item-menu/index.js +1 -1
  399. package/components/{viz-item-menu-CiEJJddu.js → viz-item-menu-BisYrhhJ.js} +2 -2
  400. package/components/viz-item-menu-DEpm1w7U.cjs +55 -0
  401. package/components/{wordcloud-chart-options.config-DLN2RAEK.js → wordcloud-chart-options.config-D041tFDG.js} +1 -1
  402. package/components/{wordcloud-chart-positioning.config-ZTO2VLdY.cjs → wordcloud-chart-positioning.config-CeP0_j_m.cjs} +1 -1
  403. package/components/{wordcloud-chart-positioning.config-DVPWXJXb.js → wordcloud-chart-positioning.config-tVRXTpdQ.js} +1 -1
  404. package/components/{wordcloud-chart-slots.config-mFvqkiQE.js → wordcloud-chart-slots.config-Cy-Jgcaq.js} +1 -1
  405. package/custom-elements.json +498 -4
  406. package/index.d.ts +1 -0
  407. package/package.json +7 -2
  408. package/react/README.md +1 -0
  409. package/react/components/ai-chat.component.ts +6 -3
  410. package/react/components/interactive-viz-item/index.ts +1 -0
  411. package/react/components/interactive-viz-item/types.ts +122 -0
  412. package/react/components/interactive-viz-item.component.ts +33 -0
  413. package/react/esm/components/ai-chat.component.d.ts +4 -2
  414. package/react/esm/components/ai-chat.component.js +4 -2
  415. package/react/esm/components/interactive-viz-item/index.d.ts +1 -0
  416. package/react/esm/components/interactive-viz-item/index.js +1 -0
  417. package/react/esm/components/interactive-viz-item/types.d.ts +117 -0
  418. package/react/esm/components/interactive-viz-item/types.js +16 -0
  419. package/react/esm/components/interactive-viz-item.component.d.ts +16 -0
  420. package/react/esm/components/interactive-viz-item.component.js +21 -0
  421. package/react/esm/index.d.ts +3 -2
  422. package/react/esm/index.js +4 -0
  423. package/react/index.ts +4 -0
  424. package/react/luzmo-stub.d.ts +9 -0
  425. package/types/ai-chat.types.d.ts +27 -0
  426. package/components/data-field-level-7qi9K__S.cjs +0 -55
  427. package/components/data-field-panel-DUc8y4WA.cjs +0 -87
  428. package/components/default-acceptable-data-field-types-fPsz64ka.cjs +0 -20
  429. package/components/display-settings-DnzOjr-1.cjs +0 -120
  430. package/components/display-settings-datetime-DL0Qcz8Y.cjs +0 -217
  431. package/components/formula-BPHH_GKB.cjs +0 -45
  432. package/components/formula-input-base-CGe2ABn6.cjs +0 -49
  433. package/components/item-grid-BXZXJV3g.cjs +0 -339
  434. package/components/item-grid-uWM-Unjx.js +0 -8814
  435. package/components/item-option-action-button-group-DXCVJqpt.cjs +0 -53
  436. package/components/item-option-color-range-BFr0B6Vf.cjs +0 -98
  437. package/components/item-slot-drop-BUCjEfJf.cjs +0 -91
  438. package/components/item-slot-picker-panel-BUyp6Hbg.cjs +0 -81
  439. package/components/slots-config-BuHluMEl.js +0 -77
  440. package/components/viz-item-menu-Dry8xpRA.cjs +0 -55
@@ -17,12 +17,14 @@
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 { i as e } from "./base-B_wdCOxV.js";
20
+ import { i as e } from "./base-vk9LuivN.js";
21
21
  import { t } from "./decorate-DyMgX_Uh.js";
22
- import "./ai-interaction-textarea-DkBglh6Q.js";
22
+ import "./ai-interaction-textarea-cAXXLnoj.js";
23
23
  import { msg as n } from "@lit/localize/lit-localize";
24
24
  import { luzmoEllipsisVertical as r, luzmoIcon as i, luzmoSpin as a } from "@luzmo/icons";
25
+ import "@luzmo/lucero/button";
25
26
  import "@luzmo/lucero/chat-message";
27
+ import "@luzmo/lucero/icon";
26
28
  import "@luzmo/lucero/overlay";
27
29
  import "@luzmo/lucero/popover";
28
30
  import "@luzmo/lucero/progress-steps";
@@ -2220,13 +2222,13 @@ Q.options = Q.setOptions = function(e) {
2220
2222
  return mn.walkTokens(e, t);
2221
2223
  }, Q.parseInline = mn.parseInline, Q.Parser = X, Q.parser = X.parse, Q.Renderer = J, Q.TextRenderer = Y, Q.Lexer = q, Q.lexer = q.lex, Q.Tokenizer = pn, Q.Hooks = Z, Q.parse = Q, Q.options, Q.setOptions, Q.use, Q.walkTokens, Q.parseInline, X.parse, q.lex;
2222
2224
  //#endregion
2223
- //#region src/components/ai-chat/empty-state/ai-chat-empty-state.module.scss?inline
2224
- var hn = ":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-strong,600);--ai-chat-empty-state-title-line-height:1.4;--ai-chat-empty-state-title-color:var(--luzmo-font-color);--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))}", gn = class extends e {
2225
+ //#region src/components/ai-chat/ai-chat.module.scss?inline
2226
+ var hn = ":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 .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)}", gn = ":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-strong,600);--ai-chat-empty-state-title-line-height:1.4;--ai-chat-empty-state-title-color:var(--luzmo-font-color);--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))}", _n = class extends e {
2225
2227
  constructor(...e) {
2226
2228
  super(...e), this.title = n("What can I help you with?", { desc: "Title for the AI chat empty state" }), this.subtitle = "", this.suggestions = [], this.disabled = !1;
2227
2229
  }
2228
2230
  static {
2229
- this.styles = c(hn);
2231
+ this.styles = c(gn);
2230
2232
  }
2231
2233
  static {
2232
2234
  this.tagName = "luzmo-ai-chat-empty-state";
@@ -2279,16 +2281,16 @@ var hn = ":host{box-sizing:border-box;width:100%;min-height:0;padding-block:var(
2279
2281
  };
2280
2282
  //#endregion
2281
2283
  //#region src/components/ai-chat/empty-state/index.ts
2282
- t([l({ type: String })], gn.prototype, "title", void 0), t([l({ type: String })], gn.prototype, "subtitle", void 0), t([l({ type: Array })], gn.prototype, "suggestions", void 0), t([l({
2284
+ t([l({ type: String })], _n.prototype, "title", void 0), t([l({ type: String })], _n.prototype, "subtitle", void 0), t([l({ type: Array })], _n.prototype, "suggestions", void 0), t([l({
2283
2285
  type: Boolean,
2284
2286
  reflect: !0
2285
- })], gn.prototype, "disabled", void 0), customElements.get("luzmo-ai-chat-empty-state") || customElements.define("luzmo-ai-chat-empty-state", gn);
2287
+ })], _n.prototype, "disabled", void 0), customElements.get("luzmo-ai-chat-empty-state") || customElements.define("luzmo-ai-chat-empty-state", _n);
2286
2288
  //#endregion
2287
2289
  //#region src/components/ai-chat/ai-chat-request.ts
2288
- function _n(e, t) {
2290
+ function vn(e, t) {
2289
2291
  return `${e.replace(/\/+$/, "")}/${t.replace(/^\/+|\/+$/g, "")}/aiprompt`;
2290
2292
  }
2291
- function vn(e) {
2293
+ function yn(e) {
2292
2294
  return e.type === "placeholder" ? null : {
2293
2295
  ...e,
2294
2296
  version: e.version || "",
@@ -2297,7 +2299,7 @@ function vn(e) {
2297
2299
  aichartId: e.aichartId || ""
2298
2300
  };
2299
2301
  }
2300
- function yn(e, t) {
2302
+ function bn(e, t) {
2301
2303
  return [{
2302
2304
  type: "text",
2303
2305
  text: e
@@ -2306,7 +2308,7 @@ function yn(e, t) {
2306
2308
  id: e
2307
2309
  }))];
2308
2310
  }
2309
- function bn(e, t, n) {
2311
+ function xn(e, t, n) {
2310
2312
  return {
2311
2313
  agent: e,
2312
2314
  task: t,
@@ -2316,52 +2318,52 @@ function bn(e, t, n) {
2316
2318
  ...n.localeId ? { locale_id: n.localeId } : {}
2317
2319
  };
2318
2320
  }
2319
- function xn(e) {
2320
- let t = yn(e.prompt, e.datasetIds), n = e.chart ? vn(e.chart) : null;
2321
+ function Sn(e) {
2322
+ let t = bn(e.prompt, e.datasetIds), n = e.chart ? yn(e.chart) : null;
2321
2323
  return n && t.push({
2322
2324
  type: "item",
2323
2325
  value: n
2324
2326
  }), {
2325
- ...bn("item", e.task ?? "generate", e),
2327
+ ...xn("item", e.task ?? "generate", e),
2326
2328
  input: t
2327
2329
  };
2328
2330
  }
2329
- function Sn(e) {
2330
- let t = yn(e.prompt, e.datasetIds);
2331
+ function Cn(e) {
2332
+ let t = bn(e.prompt, e.datasetIds);
2331
2333
  return e.dashboard && t.push({
2332
2334
  type: "dashboard",
2333
2335
  value: e.dashboard,
2334
2336
  ...e.currentScreenMode ? { current_screen_mode: e.currentScreenMode } : {}
2335
2337
  }), {
2336
- ...bn("dashboard", "generate", e),
2338
+ ...xn("dashboard", "generate", e),
2337
2339
  timezone_id: e.timezoneId ?? "UTC",
2338
2340
  input: t
2339
2341
  };
2340
2342
  }
2341
- function Cn(e) {
2343
+ function wn(e) {
2342
2344
  return {
2343
- ...bn("analyst", "generate", e),
2344
- input: yn(e.prompt, e.datasetIds)
2345
+ ...xn("analyst", "generate", e),
2346
+ input: bn(e.prompt, e.datasetIds)
2345
2347
  };
2346
2348
  }
2347
- function wn(e, t) {
2349
+ function Tn(e, t) {
2348
2350
  switch (e) {
2349
- case "dashboard": return Sn(t);
2350
- case "analyst": return Cn(t);
2351
- default: return xn(t);
2351
+ case "dashboard": return Cn(t);
2352
+ case "analyst": return wn(t);
2353
+ default: return Sn(t);
2352
2354
  }
2353
2355
  }
2354
- function Tn(e, t) {
2356
+ function En(e, t) {
2355
2357
  let { authKey: n, authToken: r, apiVersion: i = "0.1.0" } = t;
2356
2358
  return {
2357
2359
  key: n,
2358
2360
  token: r,
2359
2361
  action: "create",
2360
2362
  version: i,
2361
- properties: wn(e, t)
2363
+ properties: Tn(e, t)
2362
2364
  };
2363
2365
  }
2364
- function En(e, t, n, r = "0.1.0", i = null) {
2366
+ function Dn(e, t, n, r = "0.1.0", i = null) {
2365
2367
  return {
2366
2368
  key: t,
2367
2369
  token: n,
@@ -2376,7 +2378,7 @@ function En(e, t, n, r = "0.1.0", i = null) {
2376
2378
  }
2377
2379
  //#endregion
2378
2380
  //#region src/components/ai-chat/stream/transport.ts
2379
- async function Dn(e) {
2381
+ async function On(e) {
2380
2382
  let t = await fetch(e.url, {
2381
2383
  method: "POST",
2382
2384
  headers: { "Content-Type": "application/json" },
@@ -2394,21 +2396,21 @@ async function Dn(e) {
2394
2396
  conversationId: t.headers.get("x-conversation-id")
2395
2397
  };
2396
2398
  }
2397
- function On(e) {
2399
+ function kn(e) {
2398
2400
  let t = e.trim();
2399
2401
  if (!t || t.startsWith(":") || t.startsWith("event:") || t.startsWith("id:")) return null;
2400
2402
  let n = t;
2401
2403
  return n.startsWith("data:") && (n = n.slice(5).trimStart()), !n || n === "[DONE]" ? null : JSON.parse(n);
2402
2404
  }
2403
- function kn(e, t) {
2405
+ function An(e, t) {
2404
2406
  try {
2405
- let n = On(e);
2407
+ let n = kn(e);
2406
2408
  n && t(n);
2407
2409
  } catch {
2408
2410
  console.error("Failed to parse stream line");
2409
2411
  }
2410
2412
  }
2411
- async function An(e, t) {
2413
+ async function jn(e, t) {
2412
2414
  let n = e.getReader(), r = new TextDecoder(), i = "";
2413
2415
  try {
2414
2416
  for (;;) {
@@ -2417,18 +2419,18 @@ async function An(e, t) {
2417
2419
  i += r.decode(a, { stream: !0 });
2418
2420
  let o = i.split(/\r?\n/);
2419
2421
  i = o.pop() ?? "";
2420
- for (let e of o) kn(e, t);
2422
+ for (let e of o) An(e, t);
2421
2423
  }
2422
2424
  i += r.decode();
2423
2425
  let e = i.trim();
2424
- e && kn(e, t);
2426
+ e && An(e, t);
2425
2427
  } finally {
2426
2428
  n.releaseLock();
2427
2429
  }
2428
2430
  }
2429
2431
  //#endregion
2430
2432
  //#region src/components/ai-chat/stream/progress.ts
2431
- function jn() {
2433
+ function Mn() {
2432
2434
  return {
2433
2435
  id: "root",
2434
2436
  step: "root",
@@ -2441,13 +2443,13 @@ function jn() {
2441
2443
  }]
2442
2444
  };
2443
2445
  }
2444
- function Mn(e) {
2446
+ function Nn(e) {
2445
2447
  let t = e.progress;
2446
2448
  return typeof t != "object" || !t ? !1 : "id" in t && "step" in t && "status" in t;
2447
2449
  }
2448
2450
  //#endregion
2449
2451
  //#region src/components/ai-chat/stream/chunk-extractors.ts
2450
- function Nn(e) {
2452
+ function Pn(e) {
2451
2453
  if (!e || typeof e != "object") return "";
2452
2454
  let t = e.assistant_message;
2453
2455
  if (!t || typeof t != "object") return "";
@@ -2457,75 +2459,75 @@ function Nn(e) {
2457
2459
  let n = t.content;
2458
2460
  return typeof n == "string" ? n : n && typeof n == "object" && typeof n.text == "string" ? n.text : "";
2459
2461
  }
2460
- function Pn(e) {
2461
- 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 : "";
2462
- }
2463
2462
  function Fn(e) {
2464
- return Nn(e.result);
2463
+ 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 : "";
2465
2464
  }
2466
2465
  function In(e) {
2466
+ return Pn(e.result);
2467
+ }
2468
+ function Ln(e) {
2467
2469
  return !!e.done || e.type === "finish" || e.type === "done" || "question" in e;
2468
2470
  }
2469
- function Ln(e, t) {
2471
+ function Rn(e, t) {
2470
2472
  let n = typeof e.conversation_id == "string" && e.conversation_id || typeof e.conversationId == "string" && e.conversationId;
2471
2473
  n && t.callbacks.onConversationIdChange(n);
2472
2474
  }
2473
- function Rn(e) {
2475
+ function zn(e) {
2474
2476
  for (let t of e) if (t && typeof t == "object" && t.type === "item") {
2475
2477
  let e = t.value;
2476
2478
  if (e && typeof e == "object") return e;
2477
2479
  }
2478
2480
  return null;
2479
2481
  }
2480
- function zn(e) {
2482
+ function Bn(e) {
2481
2483
  let t = e.chart ?? e.generatedChart;
2482
2484
  if (t && typeof t == "object") return t;
2483
2485
  let n = e.aiMessageAssets ?? e.ai_message_assets;
2484
2486
  if (Array.isArray(n)) {
2485
- let e = Rn(n);
2487
+ let e = zn(n);
2486
2488
  if (e) return e;
2487
2489
  }
2488
2490
  let r = e.result;
2489
2491
  if (r && typeof r == "object") {
2490
2492
  let e = r.assistant_message, t = e?.aiMessageAssets ?? e?.ai_message_assets;
2491
- if (Array.isArray(t)) return Rn(t);
2493
+ if (Array.isArray(t)) return zn(t);
2492
2494
  }
2493
2495
  return null;
2494
2496
  }
2495
- function Bn(e) {
2497
+ function Vn(e) {
2496
2498
  for (let t of e) if (t && typeof t == "object" && t.type === "dashboard") {
2497
2499
  let e = t.value;
2498
2500
  if (e && typeof e == "object" && Array.isArray(e.views)) return e;
2499
2501
  }
2500
2502
  return null;
2501
2503
  }
2502
- function Vn(e) {
2504
+ function Hn(e) {
2503
2505
  for (let t of e) if (t && typeof t == "object" && t.type === "dashboard") {
2504
2506
  let e = t.name;
2505
2507
  if (e && typeof e == "object") return e;
2506
2508
  }
2507
2509
  }
2508
- function Hn(...e) {
2510
+ function Un(...e) {
2509
2511
  return e.find(Array.isArray);
2510
2512
  }
2511
- function Un(e) {
2513
+ function Wn(e) {
2512
2514
  if (e.views && Array.isArray(e.views)) return e;
2513
2515
  let t = e.aiMessageAssets ?? e.ai_message_assets;
2514
- if (Array.isArray(t)) return Bn(t);
2516
+ if (Array.isArray(t)) return Vn(t);
2515
2517
  let n = e.result;
2516
2518
  if (n && typeof n == "object") {
2517
2519
  let e = n.assistant_message, t = e?.aiMessageAssets ?? e?.ai_message_assets;
2518
- if (Array.isArray(t)) return Bn(t);
2520
+ if (Array.isArray(t)) return Vn(t);
2519
2521
  }
2520
2522
  return null;
2521
2523
  }
2522
- function Wn(e) {
2523
- let t = e.aiMessageAssets ?? e.ai_message_assets, n = e.result?.assistant_message, r = Hn(t, n?.aiMessageAssets ?? n?.ai_message_assets);
2524
- return r ? Vn(r) : void 0;
2524
+ function Gn(e) {
2525
+ let t = e.aiMessageAssets ?? e.ai_message_assets, n = e.result?.assistant_message, r = Un(t, n?.aiMessageAssets ?? n?.ai_message_assets);
2526
+ return r ? Hn(r) : void 0;
2525
2527
  }
2526
2528
  //#endregion
2527
2529
  //#region src/components/ai-chat/stream/stream-processor.ts
2528
- var Gn = /* @__PURE__ */ new Set([
2530
+ var Kn = /* @__PURE__ */ new Set([
2529
2531
  "conversation-id",
2530
2532
  "conversation_id",
2531
2533
  "keepalive",
@@ -2533,7 +2535,7 @@ var Gn = /* @__PURE__ */ new Set([
2533
2535
  "finish",
2534
2536
  "done"
2535
2537
  ]);
2536
- function Kn(e, t, n) {
2538
+ function qn(e, t, n) {
2537
2539
  return {
2538
2540
  agent: n.agent,
2539
2541
  conversationId: t.callbacks.getConversationId(),
@@ -2541,128 +2543,128 @@ function Kn(e, t, n) {
2541
2543
  raw: e
2542
2544
  };
2543
2545
  }
2544
- function qn(e, t, n, r, i) {
2546
+ function Jn(e, t, n, r, i) {
2545
2547
  let a = {
2546
- ...Kn(n, e, t),
2548
+ ...qn(n, e, t),
2547
2549
  recognized: !0,
2548
2550
  type: r,
2549
2551
  data: i
2550
2552
  };
2551
2553
  e.callbacks.onStep(a);
2552
2554
  }
2553
- function Jn(e, t, n, r, i) {
2555
+ function Yn(e, t, n, r, i) {
2554
2556
  let a = {
2555
- ...Kn(n, e, t),
2557
+ ...qn(n, e, t),
2556
2558
  recognized: !1,
2557
2559
  type: r,
2558
2560
  data: i
2559
2561
  };
2560
2562
  e.callbacks.onStep(a);
2561
2563
  }
2562
- function Yn(e) {
2564
+ function Xn(e) {
2563
2565
  e.state.progressCollapsed || (e.state.progressCollapsed = !0, e.callbacks.onProgressCollapsed(!0));
2564
2566
  }
2565
- function Xn(e, t) {
2566
- Yn(e), e.aiMessage.message = (e.aiMessage.message || "") + t, e.callbacks.onMessageUpdate(e.aiMessage);
2567
+ function Zn(e, t) {
2568
+ Xn(e), e.aiMessage.message = (e.aiMessage.message || "") + t, e.callbacks.onMessageUpdate(e.aiMessage);
2567
2569
  }
2568
- function Zn(e) {
2570
+ function Qn(e) {
2569
2571
  if (!e) return null;
2570
2572
  let t = e.descriptionMetadata?.decision;
2571
2573
  if (t === "create" || t === "edit" || t === "question") return t;
2572
2574
  for (let t of e.children ?? []) {
2573
- let e = Zn(t);
2575
+ let e = Qn(t);
2574
2576
  if (e) return e;
2575
2577
  }
2576
2578
  return null;
2577
2579
  }
2578
- function Qn(e, t, n) {
2579
- if (!Mn(e)) return !1;
2580
+ function $n(e, t, n) {
2581
+ if (!Nn(e)) return !1;
2580
2582
  let r = e.progress;
2581
- if (t.callbacks.onProgress(r), qn(t, n, e, "progress", r), t.state.decision === null) {
2582
- let i = Zn(r);
2583
- i && (t.state.decision = i, qn(t, n, e, "decision", { decision: i }));
2583
+ if (t.callbacks.onProgress(r), Jn(t, n, e, "progress", r), t.state.decision === null) {
2584
+ let i = Qn(r);
2585
+ i && (t.state.decision = i, Jn(t, n, e, "decision", { decision: i }));
2584
2586
  }
2585
2587
  return !0;
2586
2588
  }
2587
- function $n(e) {
2589
+ function er(e) {
2588
2590
  return !!e.error || e.type === "error" || typeof e.error_text == "string";
2589
2591
  }
2590
- function er(e) {
2592
+ function tr(e) {
2591
2593
  return typeof e.error_text == "string" && e.error_text ? e.error_text : typeof e.error == "string" && e.error ? e.error : n("Something went wrong. Please try again.", { desc: "Generic error message shown in ai chat when the API request fails" });
2592
2594
  }
2593
- function tr(e, t, n) {
2594
- if (!$n(e)) return !1;
2595
- let r = er(e);
2596
- return t.aiMessage.message = r, t.aiMessage.isError = !0, t.callbacks.onMessageUpdate(t.aiMessage), Sr(e, t, n, e.error ?? r), !0;
2595
+ function nr(e, t, n) {
2596
+ if (!er(e)) return !1;
2597
+ let r = tr(e);
2598
+ return t.aiMessage.message = r, t.aiMessage.isError = !0, t.callbacks.onMessageUpdate(t.aiMessage), Cr(e, t, n, e.error ?? r), !0;
2597
2599
  }
2598
- function nr(e) {
2600
+ function rr(e) {
2599
2601
  return typeof e.question == "string" && e.question ? e.question : typeof e.text == "string" && e.text ? e.text : "";
2600
2602
  }
2601
- function rr(e, t, n) {
2603
+ function ir(e, t, n) {
2602
2604
  if (e.type !== "interrupt") return !1;
2603
- let r = nr(e);
2604
- return r && (t.state.interruptQuestion = r, Xn(t, r), qn(t, n, e, "interrupt", { question: r })), Sr(e, t, n), !0;
2605
+ let r = rr(e);
2606
+ return r && (t.state.interruptQuestion = r, Zn(t, r), Jn(t, n, e, "interrupt", { question: r })), Cr(e, t, n), !0;
2605
2607
  }
2606
- function ir(e) {
2608
+ function ar(e) {
2607
2609
  return typeof e.asset_id == "string" ? e.asset_id : typeof e.asset_type == "string" ? e.asset_type : "default";
2608
2610
  }
2609
- function ar(e) {
2611
+ function or(e) {
2610
2612
  return typeof e.asset_type == "string" ? e.asset_type : "";
2611
2613
  }
2612
- function or(e) {
2614
+ function sr(e) {
2613
2615
  return {
2614
- assetType: ar(e),
2616
+ assetType: or(e),
2615
2617
  snapshot: {}
2616
2618
  };
2617
2619
  }
2618
- function sr(e, t) {
2620
+ function cr(e, t) {
2619
2621
  return {
2620
2622
  ...e,
2621
2623
  ...t
2622
2624
  };
2623
2625
  }
2624
- function cr(e) {
2626
+ function lr(e) {
2625
2627
  let t = e.asset_delta ?? e.delta;
2626
2628
  return t && typeof t == "object" ? t : null;
2627
2629
  }
2628
- function lr(e, t) {
2629
- t.state.assets[ir(e)] = or(e);
2630
- }
2631
2630
  function ur(e, t) {
2632
- let n = ir(e), r = t.state.assets[n] ?? or(e), i = cr(e);
2633
- i && (r.snapshot = sr(r.snapshot, i)), t.state.assets[n] = r;
2631
+ t.state.assets[ar(e)] = sr(e);
2634
2632
  }
2635
2633
  function dr(e, t) {
2636
- let n = e.asset ?? e.value ?? e.asset_delta ?? e.delta;
2637
- return n && typeof n == "object" ? sr(t?.snapshot ?? {}, n) : t?.snapshot ?? {};
2634
+ let n = ar(e), r = t.state.assets[n] ?? sr(e), i = lr(e);
2635
+ i && (r.snapshot = cr(r.snapshot, i)), t.state.assets[n] = r;
2638
2636
  }
2639
- function fr(e, t, n) {
2640
- let r = ir(e), i = t.state.assets[r], a = i?.assetType || ar(e), o = dr(e, i);
2641
- delete t.state.assets[r], hr(a, o, e, t, n);
2637
+ function fr(e, t) {
2638
+ let n = e.asset ?? e.value ?? e.asset_delta ?? e.delta;
2639
+ return n && typeof n == "object" ? cr(t?.snapshot ?? {}, n) : t?.snapshot ?? {};
2642
2640
  }
2643
2641
  function pr(e, t, n) {
2642
+ let r = ar(e), i = t.state.assets[r], a = i?.assetType || or(e), o = fr(e, i);
2643
+ delete t.state.assets[r], gr(a, o, e, t, n);
2644
+ }
2645
+ function mr(e, t, n) {
2644
2646
  switch (e.type) {
2645
- case "asset_start": return lr(e, t), !0;
2646
- case "asset_delta": return ur(e, t), !0;
2647
- case "asset_end": return fr(e, t, n), !0;
2647
+ case "asset_start": return ur(e, t), !0;
2648
+ case "asset_delta": return dr(e, t), !0;
2649
+ case "asset_end": return pr(e, t, n), !0;
2648
2650
  default: return !1;
2649
2651
  }
2650
2652
  }
2651
- function mr(e, t, n, r) {
2652
- n.state.chartSnapshot = e, n.aiMessage.hasChart = !0, typeof t.messageId == "string" && (n.aiMessage.apiMessageId = t.messageId), n.callbacks.onMessageUpdate(n.aiMessage), qn(n, r, t, "chart", e);
2653
+ function hr(e, t, n, r) {
2654
+ n.state.chartSnapshot = e, n.aiMessage.hasChart = !0, typeof t.messageId == "string" && (n.aiMessage.apiMessageId = t.messageId), n.callbacks.onMessageUpdate(n.aiMessage), Jn(n, r, t, "chart", e);
2653
2655
  }
2654
- function hr(e, t, n, r, i) {
2656
+ function gr(e, t, n, r, i) {
2655
2657
  switch (e) {
2656
2658
  case "dashboard-title": {
2657
2659
  let e = t.name;
2658
- e && typeof e == "object" && (r.state.dashboardName = e, qn(r, i, n, "dashboard-title", { name: e }));
2660
+ e && typeof e == "object" && (r.state.dashboardName = e, Jn(r, i, n, "dashboard-title", { name: e }));
2659
2661
  return;
2660
2662
  }
2661
2663
  case "dashboard-layout":
2662
- qn(r, i, n, "dashboard-layout", t);
2664
+ Jn(r, i, n, "dashboard-layout", t);
2663
2665
  return;
2664
2666
  case "dashboard-item":
2665
- qn(r, i, n, "dashboard-item", {
2667
+ Jn(r, i, n, "dashboard-item", {
2666
2668
  slot: Number(t.slot),
2667
2669
  chart: t.chart ?? t
2668
2670
  });
@@ -2670,68 +2672,68 @@ function hr(e, t, n, r, i) {
2670
2672
  case "dashboard":
2671
2673
  r.state.dashboardSnapshot = t;
2672
2674
  return;
2673
- default: gr(e, t, n, r, i);
2675
+ default: _r(e, t, n, r, i);
2674
2676
  }
2675
2677
  }
2676
- function gr(e, t, n, r, i) {
2678
+ function _r(e, t, n, r, i) {
2677
2679
  if (i.chartAssetType && e === i.chartAssetType) {
2678
- mr(t, n, r, i);
2680
+ hr(t, n, r, i);
2679
2681
  return;
2680
2682
  }
2681
2683
  if (i.dashboardAssetType && e === i.dashboardAssetType) {
2682
2684
  r.state.dashboardSnapshot = t;
2683
2685
  return;
2684
2686
  }
2685
- Jn(r, i, n, e || "asset", t);
2687
+ Yn(r, i, n, e || "asset", t);
2686
2688
  }
2687
- function _r(e, t, n) {
2689
+ function vr(e, t, n) {
2688
2690
  let r = !1;
2689
2691
  if (n.dashboardAssetType) {
2690
- let n = Un(e);
2692
+ let n = Wn(e);
2691
2693
  if (n) {
2692
2694
  t.state.dashboardSnapshot = n;
2693
- let i = Wn(e);
2695
+ let i = Gn(e);
2694
2696
  i && (t.state.dashboardName = i), r = !0;
2695
2697
  }
2696
2698
  }
2697
2699
  if (n.chartAssetType && !t.state.chartSnapshot) {
2698
- let i = zn(e);
2699
- i && (mr(i, e, t, n), r = !0);
2700
+ let i = Bn(e);
2701
+ i && (hr(i, e, t, n), r = !0);
2700
2702
  }
2701
2703
  return r;
2702
2704
  }
2703
- function vr(e, t, n) {
2705
+ function yr(e, t, n) {
2704
2706
  return {
2705
2707
  ...e,
2706
2708
  generatedChart: t,
2707
2709
  conversationId: n.callbacks.getConversationId()
2708
2710
  };
2709
2711
  }
2710
- function yr(e, t, n) {
2712
+ function br(e, t, n) {
2711
2713
  for (let r of Object.keys(t.state.assets)) {
2712
2714
  let i = t.state.assets[r];
2713
- delete t.state.assets[r], !(n.chartAssetType && i.assetType === n.chartAssetType && t.state.chartSnapshot || n.dashboardAssetType && i.assetType === n.dashboardAssetType && t.state.dashboardSnapshot) && hr(i.assetType, i.snapshot, e, t, n);
2715
+ delete t.state.assets[r], !(n.chartAssetType && i.assetType === n.chartAssetType && t.state.chartSnapshot || n.dashboardAssetType && i.assetType === n.dashboardAssetType && t.state.dashboardSnapshot) && gr(i.assetType, i.snapshot, e, t, n);
2714
2716
  }
2715
2717
  }
2716
- function br(e, t) {
2717
- let n = Fn(e);
2718
+ function xr(e, t) {
2719
+ let n = In(e);
2718
2720
  !n || t.aiMessage.message === n || (t.aiMessage.message = n, t.callbacks.onMessageUpdate(t.aiMessage));
2719
2721
  }
2720
- function xr(e, t, n) {
2721
- let r = t.state.dashboardSnapshot ?? (n.dashboardAssetType ? Un(e) : null), i = t.state.chartSnapshot ?? (n.chartAssetType ? zn(e) : null);
2722
+ function Sr(e, t, n) {
2723
+ let r = t.state.dashboardSnapshot ?? (n.dashboardAssetType ? Wn(e) : null), i = t.state.chartSnapshot ?? (n.chartAssetType ? Bn(e) : null);
2722
2724
  return {
2723
2725
  agent: n.agent,
2724
2726
  conversationId: t.callbacks.getConversationId(),
2725
2727
  message: t.aiMessage,
2726
2728
  ...r ? { dashboard: r } : {},
2727
- ...i ? { chart: vr(e, i, t) } : {},
2729
+ ...i ? { chart: yr(e, i, t) } : {},
2728
2730
  ...t.state.dashboardName ? { name: t.state.dashboardName } : {},
2729
2731
  raw: e
2730
2732
  };
2731
2733
  }
2732
- function Sr(e, t, n, r) {
2734
+ function Cr(e, t, n, r) {
2733
2735
  if (!t.state.completed) {
2734
- if (t.state.completed = !0, yr(e, t, n), Yn(t), r !== void 0) {
2736
+ if (t.state.completed = !0, br(e, t, n), Xn(t), r !== void 0) {
2735
2737
  t.callbacks.onComplete({
2736
2738
  agent: n.agent,
2737
2739
  conversationId: t.callbacks.getConversationId(),
@@ -2741,32 +2743,32 @@ function Sr(e, t, n, r) {
2741
2743
  });
2742
2744
  return;
2743
2745
  }
2744
- br(e, t), t.callbacks.onComplete(xr(e, t, n));
2746
+ xr(e, t), t.callbacks.onComplete(Sr(e, t, n));
2745
2747
  }
2746
2748
  }
2747
- function Cr(e) {
2749
+ function wr(e) {
2748
2750
  return typeof e.type == "string" && e.type ? e.type : typeof e.asset_type == "string" && e.asset_type ? e.asset_type : "";
2749
2751
  }
2750
- function wr(e, t, n) {
2751
- let r = Pn(e);
2752
- return r ? (t.state.accumulatedText += r, Xn(t, r), qn(t, n, e, "text", {
2752
+ function Tr(e, t, n) {
2753
+ let r = Fn(e);
2754
+ return r ? (t.state.accumulatedText += r, Zn(t, r), Jn(t, n, e, "text", {
2753
2755
  delta: r,
2754
2756
  text: t.state.accumulatedText
2755
2757
  }), !0) : !1;
2756
2758
  }
2757
- function Tr(e, t, n, r, i) {
2759
+ function Er(e, t, n, r, i) {
2758
2760
  if (r || i) return;
2759
- let a = Cr(e);
2760
- a && !Gn.has(a) && Jn(t, n, e, a, e);
2761
+ let a = wr(e);
2762
+ a && !Kn.has(a) && Yn(t, n, e, a, e);
2761
2763
  }
2762
- function Er(e, t, n) {
2763
- if (Ln(e, t), Qn(e, t, n) || tr(e, t, n) || rr(e, t, n) || pr(e, t, n)) return;
2764
- let r = wr(e, t, n), i = _r(e, t, n), a = r || i, o = In(e);
2765
- Tr(e, t, n, a, o), o && Sr(e, t, n);
2764
+ function Dr(e, t, n) {
2765
+ if (Rn(e, t), $n(e, t, n) || nr(e, t, n) || ir(e, t, n) || mr(e, t, n)) return;
2766
+ let r = Tr(e, t, n), i = vr(e, t, n), a = r || i, o = Ln(e);
2767
+ Er(e, t, n, a, o), o && Cr(e, t, n);
2766
2768
  }
2767
2769
  //#endregion
2768
2770
  //#region src/components/ai-chat/stream/registry.ts
2769
- function Dr(e) {
2771
+ function Or(e) {
2770
2772
  switch (e) {
2771
2773
  case "dashboard": return {
2772
2774
  agent: e,
@@ -2779,11 +2781,11 @@ function Dr(e) {
2779
2781
  default: return { agent: e };
2780
2782
  }
2781
2783
  }
2782
- function Or(e) {
2783
- let t = Dr(e);
2784
- return (e, n) => Er(e, n, t);
2784
+ function kr(e) {
2785
+ let t = Or(e);
2786
+ return (e, n) => Dr(e, n, t);
2785
2787
  }
2786
- function kr() {
2788
+ function Ar() {
2787
2789
  return {
2788
2790
  progressCollapsed: !1,
2789
2791
  accumulatedText: "",
@@ -2798,10 +2800,10 @@ function kr() {
2798
2800
  }
2799
2801
  //#endregion
2800
2802
  //#region src/components/ai-chat/session/ai-chat-session.ts
2801
- function Ar() {
2803
+ function jr() {
2802
2804
  return `msg-${Date.now()}-${Math.random().toString(36).slice(2, 9)}`;
2803
2805
  }
2804
- var jr = class {
2806
+ var Mr = class {
2805
2807
  constructor(e, t = {}) {
2806
2808
  this._uiBridgeCallbacks = {}, this._subscribers = /* @__PURE__ */ new Set(), this._state = {
2807
2809
  messages: [],
@@ -2874,10 +2876,10 @@ var jr = class {
2874
2876
  return !this._config.requireDataset || this._state.selectedDatasets.length > 0;
2875
2877
  }
2876
2878
  getAiPromptUrl() {
2877
- return _n(this._config.apiUrl ?? "https://api.luzmo.com", this._config.apiVersion ?? "0.1.0");
2879
+ return vn(this._config.apiUrl ?? "https://api.luzmo.com", this._config.apiVersion ?? "0.1.0");
2878
2880
  }
2879
2881
  buildRequestBody(e, t) {
2880
- return Tn(this._config.agent, {
2882
+ return En(this._config.agent, {
2881
2883
  prompt: e,
2882
2884
  datasetIds: t,
2883
2885
  authKey: this._config.authKey,
@@ -2910,13 +2912,13 @@ var jr = class {
2910
2912
  if (!this.isDatasetRequirementMet()) return;
2911
2913
  this._abortInflight();
2912
2914
  let n = {
2913
- id: e.aiMessageId ?? Ar(),
2915
+ id: e.aiMessageId ?? jr(),
2914
2916
  type: "ai",
2915
2917
  message: ""
2916
2918
  }, r = [...this._state.messages];
2917
2919
  if (!e.skipUserMessage) {
2918
2920
  let t = {
2919
- id: Ar(),
2921
+ id: jr(),
2920
2922
  type: "user",
2921
2923
  message: e.prompt
2922
2924
  };
@@ -2927,7 +2929,7 @@ var jr = class {
2927
2929
  this._abortController = i, this._patchState({
2928
2930
  messages: r,
2929
2931
  isGenerating: !0,
2930
- progress: jn(),
2932
+ progress: Mn(),
2931
2933
  progressCollapsed: !1,
2932
2934
  inflightMessage: n
2933
2935
  });
@@ -2941,18 +2943,18 @@ var jr = class {
2941
2943
  }
2942
2944
  return;
2943
2945
  }
2944
- let s = this.buildRequestBody(e.prompt, t), c = Or(this._config.agent), l = {
2946
+ let s = this.buildRequestBody(e.prompt, t), c = kr(this._config.agent), l = {
2945
2947
  aiMessage: n,
2946
2948
  callbacks: this._createStreamCallbacks(),
2947
- state: kr()
2948
- }, u = this._config.fetchStreaming ?? Dn, d = !1;
2949
+ state: Ar()
2950
+ }, u = this._config.fetchStreaming ?? On, d = !1;
2949
2951
  try {
2950
2952
  let { body: e, conversationId: t } = await u({
2951
2953
  url: this.getAiPromptUrl(),
2952
2954
  body: s,
2953
2955
  signal: i.signal
2954
2956
  });
2955
- t && this._setConversationId(t), await An(e, (e) => c(e, l)), d = !0;
2957
+ t && this._setConversationId(t), await jn(e, (e) => c(e, l)), d = !0;
2956
2958
  } catch (e) {
2957
2959
  e.name !== "AbortError" && (this._handleSubmitError(e, n), d = !0);
2958
2960
  } finally {
@@ -2961,7 +2963,7 @@ var jr = class {
2961
2963
  }
2962
2964
  async restore(e) {
2963
2965
  if (this._config.agent !== "item") return {};
2964
- let t = En(e.restoreToMessageId, this._config.authKey, this._config.authToken, this._config.apiVersion, this._state.conversationId);
2966
+ let t = Dn(e.restoreToMessageId, this._config.authKey, this._config.authToken, this._config.apiVersion, this._state.conversationId);
2965
2967
  if (this._patchState({
2966
2968
  isGenerating: !0,
2967
2969
  progress: null,
@@ -2991,7 +2993,7 @@ var jr = class {
2991
2993
  let e = await n.json().catch(() => null);
2992
2994
  throw Error(e?.message || `API request failed with status ${n.status}`);
2993
2995
  }
2994
- let r = await n.json().catch(() => null), i = r?.generatedChart ?? (r ? zn(r) : null), a = {
2996
+ let r = await n.json().catch(() => null), i = r?.generatedChart ?? (r ? Bn(r) : null), a = {
2995
2997
  ...typeof r?.message == "string" ? { message: r.message } : {},
2996
2998
  ...i ? { chart: {
2997
2999
  ...r,
@@ -3003,7 +3005,7 @@ var jr = class {
3003
3005
  message: a.message
3004
3006
  }), this._patchState({ messages: [...o] }), a.chart || a.message) {
3005
3007
  let t = o[e.messageIndex], n = t?.type === "ai" ? t : {
3006
- id: Ar(),
3008
+ id: jr(),
3007
3009
  type: "ai",
3008
3010
  message: a.message ?? ""
3009
3011
  };
@@ -3021,7 +3023,7 @@ var jr = class {
3021
3023
  }
3022
3024
  }
3023
3025
  buildRestoreRequest(e) {
3024
- return En(e, this._config.authKey, this._config.authToken, this._config.apiVersion, this._state.conversationId);
3026
+ return Dn(e, this._config.authKey, this._config.authToken, this._config.apiVersion, this._state.conversationId);
3025
3027
  }
3026
3028
  abort(e = {}) {
3027
3029
  this._abortController?.abort(), this._abortController = null, e.notify && this._inflightMessage ? this._markInflightCancelled(e.cancelledMessage) : this._discardInflightMessage(), this._patchState({
@@ -3121,16 +3123,16 @@ var jr = class {
3121
3123
  _areChatMessagesEqual(e, t) {
3122
3124
  return e.length === t.length && e.every((e, n) => {
3123
3125
  let r = t[n];
3124
- 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);
3126
+ 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);
3125
3127
  });
3126
3128
  }
3127
3129
  };
3128
- function Mr(e, t) {
3129
- return new jr(e, t);
3130
+ function Nr(e, t) {
3131
+ return new Mr(e, t);
3130
3132
  }
3131
3133
  //#endregion
3132
3134
  //#region src/components/ai-chat/session/ai-chat-session-controller.ts
3133
- var Nr = class {
3135
+ var Pr = class {
3134
3136
  constructor(e) {
3135
3137
  this.options = e, this._session = null, this._ownsSession = !1, this._seededFromProps = !1, this._unsubscribe = null;
3136
3138
  }
@@ -3181,7 +3183,7 @@ var Nr = class {
3181
3183
  _createSessionIfMissing() {
3182
3184
  if (this._session) return;
3183
3185
  let e = this.options.getSeed();
3184
- this._session = Mr({
3186
+ this._session = Nr({
3185
3187
  ...this.options.getConfig(),
3186
3188
  messages: e.messages.length > 0 ? [...e.messages] : void 0,
3187
3189
  selectedDatasets: e.selectedDatasets.length > 0 ? [...e.selectedDatasets] : void 0
@@ -3203,9 +3205,9 @@ var Nr = class {
3203
3205
  _unwire() {
3204
3206
  this._unsubscribe?.(), this._unsubscribe = null;
3205
3207
  }
3206
- }, Pr = ":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 .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 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-2);--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)}", $ = class t extends e {
3208
+ }, $ = class t extends e {
3207
3209
  constructor(...e) {
3208
- 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.flagOpendata = !1, this.hideDatasetButton = !1, this.hideDatasetIcons = !1, this.disableDatasetModification = !1, this.hideSelectedDatasets = !1, this.disableColumnMentions = !1, this.requireDataset = !1, 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._assistantMessageActionsHasContent = !1, this._lastProcessedInitialPrompt = null, this._session = new Nr({
3210
+ 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.flagOpendata = !1, this.hideDatasetButton = !1, this.hideDatasetIcons = !1, this.disableDatasetModification = !1, this.hideSelectedDatasets = !1, this.disableColumnMentions = !1, this.requireDataset = !1, 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 Pr({
3209
3211
  getConfig: () => this._buildSessionConfig(),
3210
3212
  getSeed: () => ({
3211
3213
  messages: this.messages,
@@ -3217,12 +3219,14 @@ var Nr = class {
3217
3219
  this.requestUpdate(), this.updateComplete.then(() => this._scrollToBottom());
3218
3220
  }
3219
3221
  }), this._handleAssistantMessageActionsSlotChange = (e) => {
3220
- let t = e.target;
3221
- this._setAssistantMessageActionsHasContent(t.assignedElements({ flatten: !0 }).length > 0);
3222
+ let t = e.target.assignedElements({ flatten: !0 }).length > 0;
3223
+ this._setAssistantMessageActionsSlotHasContent(t);
3224
+ }, this._handleAssistantMessageActionConfirmKeydown = (e) => {
3225
+ e.key !== "Escape" || !this._pendingAssistantMessageAction || (e.preventDefault(), e.stopPropagation(), this._cancelAssistantMessageActionConfirm());
3222
3226
  };
3223
3227
  }
3224
3228
  static {
3225
- this.styles = c(Pr);
3229
+ this.styles = c(hn);
3226
3230
  }
3227
3231
  static {
3228
3232
  this.tagName = "luzmo-ai-chat";
@@ -3375,8 +3379,13 @@ var Nr = class {
3375
3379
  });
3376
3380
  });
3377
3381
  }
3382
+ willUpdate(e) {
3383
+ super.willUpdate?.(e), this._syncPendingAssistantMessageAction();
3384
+ }
3378
3385
  updated(e) {
3379
- super.updated?.(e), this._syncSession(e), this._handleInitialPromptChange(), this.updateComplete.then(() => this._syncAssistantMessageActionsVisibility());
3386
+ super.updated?.(e), this._syncSession(e), this._handleInitialPromptChange(), this.updateComplete.then(() => {
3387
+ this._syncAssistantMessageActionsVisibility(), this._focusPendingAssistantMessageActionConfirm();
3388
+ });
3380
3389
  }
3381
3390
  _syncSession(e) {
3382
3391
  if (e.has("chatSession")) {
@@ -3435,25 +3444,133 @@ var Nr = class {
3435
3444
  return !1;
3436
3445
  }
3437
3446
  _syncAssistantMessageActionsVisibility() {
3438
- let e = this.shadowRoot?.querySelector(`slot[name="${t.assistantMessageActionsSlot}"]`);
3439
- if (!e) {
3440
- this._setAssistantMessageActionsHasContent(!1);
3441
- return;
3447
+ let e = ((this.shadowRoot?.querySelector(`slot[name="${t.assistantMessageActionsSlot}"]`) ?? null)?.assignedElements({ flatten: !0 }).length ?? 0) > 0;
3448
+ this._setAssistantMessageActionsSlotHasContent(e);
3449
+ }
3450
+ _setAssistantMessageActionsSlotHasContent(e) {
3451
+ e !== this._assistantMessageActionsSlotHasContent && (this._assistantMessageActionsSlotHasContent = e);
3452
+ }
3453
+ _isLatestAssistantMessage(e, t) {
3454
+ return !!(t && e === t);
3455
+ }
3456
+ _hasBuiltInAssistantMessageActions(e) {
3457
+ return (e.actions?.length ?? 0) > 0;
3458
+ }
3459
+ _assistantMessageActionsFooterHasContent(e, t) {
3460
+ return this._hasBuiltInAssistantMessageActions(e) || t && this._assistantMessageActionsSlotHasContent;
3461
+ }
3462
+ _syncPendingAssistantMessageAction() {
3463
+ let e = this._pendingAssistantMessageAction;
3464
+ if (!e) return;
3465
+ let { messages: t } = this._getRenderState(), n = t.find((t) => t.id === e.messageId), r = n?.actions?.find((t) => t.id === e.actionId);
3466
+ (!n || !r?.confirm) && (this._pendingAssistantMessageAction = null, this._shouldFocusAssistantMessageActionConfirm = !1);
3467
+ }
3468
+ _getDefaultAssistantMessageActionConfirmMessage() {
3469
+ return n("Are you sure?", { desc: "Default assistant message action confirmation prompt" });
3470
+ }
3471
+ _isAssistantMessageActionConfirming(e) {
3472
+ let t = this._pendingAssistantMessageAction, n = e.id;
3473
+ return !!(t && n && t.messageId === n);
3474
+ }
3475
+ _getPendingAssistantMessageAction(e) {
3476
+ let t = this._pendingAssistantMessageAction, n = e.id;
3477
+ if (!(!t || !n || t.messageId !== n)) return e.actions?.find((e) => e.id === t.actionId);
3478
+ }
3479
+ _handleAssistantMessageAction(e, t) {
3480
+ let n = e.id;
3481
+ n && this.dispatchEvent(new CustomEvent("luzmo-assistant-message-action", {
3482
+ detail: {
3483
+ messageId: n,
3484
+ actionId: t.id,
3485
+ message: e
3486
+ },
3487
+ bubbles: !0,
3488
+ composed: !0
3489
+ }));
3490
+ }
3491
+ _handleAssistantMessageActionClick(e, t) {
3492
+ let n = e.id;
3493
+ if (n) {
3494
+ if (t.confirm) {
3495
+ this._pendingAssistantMessageAction = {
3496
+ messageId: n,
3497
+ actionId: t.id
3498
+ }, this._shouldFocusAssistantMessageActionConfirm = !0;
3499
+ return;
3500
+ }
3501
+ this._handleAssistantMessageAction(e, t);
3442
3502
  }
3443
- this._setAssistantMessageActionsHasContent(e.assignedElements({ flatten: !0 }).length > 0);
3444
3503
  }
3445
- _setAssistantMessageActionsHasContent(e) {
3446
- e !== this._assistantMessageActionsHasContent && (this._assistantMessageActionsHasContent = e);
3504
+ _cancelAssistantMessageActionConfirm() {
3505
+ this._pendingAssistantMessageAction = null, this._shouldFocusAssistantMessageActionConfirm = !1;
3506
+ }
3507
+ _confirmAssistantMessageAction(e, t) {
3508
+ this._pendingAssistantMessageAction = null, this._shouldFocusAssistantMessageActionConfirm = !1, this._handleAssistantMessageAction(e, t);
3509
+ }
3510
+ _focusPendingAssistantMessageActionConfirm() {
3511
+ !this._shouldFocusAssistantMessageActionConfirm || !this._pendingAssistantMessageAction || (this._shouldFocusAssistantMessageActionConfirm = !1, (this.shadowRoot?.querySelector("luzmo-button.assistant-message-action-confirm-cancel"))?.focus?.());
3512
+ }
3513
+ _renderBuiltInAssistantMessageAction(e, t) {
3514
+ return o`
3515
+ <luzmo-button
3516
+ class="assistant-message-action"
3517
+ size="xs"
3518
+ variant="neutral"
3519
+ treatment="outline"
3520
+ ?disabled=${this.disabled || t.disabled || !e.id}
3521
+ @click=${() => this._handleAssistantMessageActionClick(e, t)}
3522
+ >
3523
+ ${t.icon ? o`<luzmo-icon slot="icon" .icon=${t.icon} size="xs"></luzmo-icon>` : s}
3524
+ ${t.label}
3525
+ </luzmo-button>
3526
+ `;
3527
+ }
3528
+ _renderAssistantMessageActionConfirm(e) {
3529
+ let t = this._getPendingAssistantMessageAction(e);
3530
+ if (!t) return s;
3531
+ let r = t.confirmMessage ?? this._getDefaultAssistantMessageActionConfirmMessage(), i = this.disabled || t.disabled || !e.id;
3532
+ return o`
3533
+ <span class="assistant-message-action-confirm-message" role="status" aria-live="polite">${r}</span>
3534
+ <div class="assistant-message-action-confirm-controls">
3535
+ <luzmo-button
3536
+ class="assistant-message-action-confirm-cancel"
3537
+ size="xs"
3538
+ variant="neutral"
3539
+ treatment="outline"
3540
+ quiet
3541
+ ?disabled=${this.disabled}
3542
+ @click=${this._cancelAssistantMessageActionConfirm}
3543
+ >
3544
+ ${n("Cancel", { desc: "Cancel assistant message action confirmation" })}
3545
+ </luzmo-button>
3546
+ <luzmo-button
3547
+ class="assistant-message-action-confirm-confirm"
3548
+ size="xs"
3549
+ variant=${t.confirmVariant ?? "negative"}
3550
+ ?disabled=${i}
3551
+ @click=${() => this._confirmAssistantMessageAction(e, t)}
3552
+ >
3553
+ ${t.label}
3554
+ </luzmo-button>
3555
+ </div>
3556
+ `;
3447
3557
  }
3448
3558
  _renderAssistantMessageActions(e, n) {
3449
- return !n || e.id !== n ? s : o`
3559
+ let r = e.actions ?? [], i = r.length > 0, a = this._isLatestAssistantMessage(e, n), c = this._isAssistantMessageActionConfirming(e);
3560
+ return !i && !a ? s : o`
3450
3561
  <div
3451
- class="assistant-message-actions ${this._assistantMessageActionsHasContent ? "assistant-message-actions--has-content" : ""}"
3562
+ class="assistant-message-actions ${this._assistantMessageActionsFooterHasContent(e, a) ? "assistant-message-actions--has-content" : ""} ${c ? "assistant-message-actions--confirming" : ""}"
3563
+ @keydown=${c ? this._handleAssistantMessageActionConfirmKeydown : s}
3452
3564
  >
3453
- <slot
3454
- name=${t.assistantMessageActionsSlot}
3455
- @slotchange=${this._handleAssistantMessageActionsSlotChange}
3456
- ></slot>
3565
+ ${c ? this._renderAssistantMessageActionConfirm(e) : o`
3566
+ ${r.map((t) => this._renderBuiltInAssistantMessageAction(e, t))}
3567
+ ${a ? o`
3568
+ <slot
3569
+ name=${t.assistantMessageActionsSlot}
3570
+ @slotchange=${this._handleAssistantMessageActionsSlotChange}
3571
+ ></slot>
3572
+ ` : s}
3573
+ `}
3457
3574
  </div>
3458
3575
  `;
3459
3576
  }
@@ -3491,12 +3608,12 @@ var Nr = class {
3491
3608
  `;
3492
3609
  }
3493
3610
  _renderMessages() {
3494
- let { messages: e, inflightMessage: t, isGenerating: n } = this._getRenderState(), r = t !== null, i = [...e].reverse().find((e) => e.type === "ai")?.id, a = e.filter((e) => !t || e.id !== t.id);
3495
- return a.map((t) => {
3496
- let c = !!t.progress?.children?.length, l = c && this._isLastAiMessageWithProgress(t, a), u = c && (r || n || !l), ee = c ? o`
3611
+ let { messages: e, inflightMessage: t, isGenerating: n } = this._getRenderState(), r = t !== null, i = e.filter((e) => !t || e.id !== t.id), a = [...i].reverse().find((e) => e.type === "ai"), c = a?.id;
3612
+ return i.map((t) => {
3613
+ let l = !!t.progress?.children?.length, u = l && this._isLastAiMessageWithProgress(t, i), ee = l && (r || n || !u), te = l ? o`
3497
3614
  <luzmo-progress-steps
3498
3615
  .progress=${t.progress}
3499
- ?condensed=${u}
3616
+ ?condensed=${ee}
3500
3617
  collapsed
3501
3618
  no-animate
3502
3619
  size="s"
@@ -3512,26 +3629,26 @@ var Nr = class {
3512
3629
  ${t.message}
3513
3630
  </luzmo-chat-message>
3514
3631
  `;
3515
- let te = e.indexOf(t), ne = t.isError ? "error" : t.isCancelled ? "cancelled" : "", re = t.isCancelled ? t.message : o`<div class="markdown-content">${d(this._renderMarkdown(t.message))}</div>`;
3632
+ let ne = e.indexOf(t), re = t.isError ? "error" : t.isCancelled ? "cancelled" : "", ie = t.isCancelled ? t.message : o`<div class="markdown-content">${d(this._renderMarkdown(t.message))}</div>`;
3516
3633
  return o`
3517
- ${ee}
3634
+ ${te}
3518
3635
  <div class="assistant-message-wrapper">
3519
3636
  <div class="assistant-message-body">
3520
3637
  <luzmo-chat-message
3521
- class=${ne}
3638
+ class=${re}
3522
3639
  role=${t.isError ? "alert" : s}
3523
3640
  avatar-placement="bottom"
3524
3641
  position="left"
3525
3642
  quiet
3526
3643
  size="s"
3527
3644
  >
3528
- ${re}
3645
+ ${ie}
3529
3646
  </luzmo-chat-message>
3530
3647
 
3531
- ${this._renderRestoreMenu(t, te, i, r)}
3648
+ ${this._renderRestoreMenu(t, ne, c, r)}
3532
3649
  </div>
3533
3650
 
3534
- ${this._renderAssistantMessageActions(t, i)}
3651
+ ${this._renderAssistantMessageActions(t, a)}
3535
3652
  </div>
3536
3653
  `;
3537
3654
  });
@@ -3705,7 +3822,7 @@ t([l({ type: Array })], $.prototype, "messages", void 0), t([l({
3705
3822
  })], $.prototype, "emptyStateSubtitle", void 0), t([l({
3706
3823
  type: Array,
3707
3824
  attribute: !1
3708
- })], $.prototype, "emptyStateSuggestions", void 0), t([u()], $.prototype, "_textareaValue", void 0), t([u()], $.prototype, "_assistantMessageActionsHasContent", void 0);
3825
+ })], $.prototype, "emptyStateSuggestions", void 0), t([u()], $.prototype, "_textareaValue", void 0), t([u()], $.prototype, "_assistantMessageActionsSlotHasContent", void 0), t([u()], $.prototype, "_pendingAssistantMessageAction", void 0);
3709
3826
  //#endregion
3710
3827
  //#region src/components/ai-chat/ai-chat-events.ts
3711
3828
  function Fr(e) {
@@ -3715,4 +3832,4 @@ function Fr(e) {
3715
3832
  //#region src/components/ai-chat/index.ts
3716
3833
  customElements.get("luzmo-ai-chat") || customElements.define("luzmo-ai-chat", $);
3717
3834
  //#endregion
3718
- export { vn as C, xn as S, gn as T, En as _, Mr as a, Cn as b, Dr as c, Un as d, jn as f, An as g, On as h, jr as i, Er as l, Dn as m, $ as n, kr as o, Mn as p, Nr as r, Or as s, Fr as t, zn as u, wn as v, _n as w, Sn as x, Tn as y };
3835
+ export { yn as C, Sn as S, _n as T, Dn as _, Nr as a, wn as b, Or as c, Wn as d, Mn as f, jn as g, kn as h, Mr as i, Dr as l, On as m, $ as n, Ar as o, Nn as p, Pr as r, kr as s, Fr as t, Bn as u, Tn as v, vn as w, Cn as x, En as y };