@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
@@ -0,0 +1,693 @@
1
+ /*! * A kit of modern Luzmo Web Components for analytics in your web application.
2
+ *
3
+ * Copyright © 2026 Luzmo
4
+ * All rights reserved.
5
+ * Luzmo web components (“Luzmo Web Components”)
6
+ * must be used according to the Luzmo Terms of Service.
7
+ * This license allows users with a current active Luzmo account
8
+ * to use the Luzmo Web Components. This license terminates
9
+ * automatically if a user no longer has an active Luzmo account.
10
+ * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
11
+ *
12
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
14
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
15
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
16
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
17
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
+ * SOFTWARE.
19
+ * */
20
+ import { i as e, n as t, t as n } from "./base-vk9LuivN.js";
21
+ import { t as r } from "./decorate-DyMgX_Uh.js";
22
+ import { t as i } from "./localized-mixin-BvQbkZEL.js";
23
+ import "./filters-B3zHSR73.js";
24
+ import "./item-option-panel-Bmm9IeZR.js";
25
+ import "./item-slot-picker-panel-BMapBAxj.js";
26
+ import { luzmoAlignLeft as a, luzmoInfoCircle as o, luzmoThumbsDown as s, luzmoThumbsUp as c } from "@luzmo/icons";
27
+ import "@luzmo/lucero/icon";
28
+ import "@luzmo/lucero/overlay";
29
+ import "@luzmo/lucero/popover";
30
+ import { html as l, nothing as u, unsafeCSS as d } from "lit";
31
+ import { property as f, state as p } from "lit/decorators.js";
32
+ import { msg as m } from "@lit/localize";
33
+ import "@luzmo/lucero/action-button";
34
+ import "@luzmo/embed";
35
+ import "@luzmo/lucero/action-group";
36
+ import "@luzmo/lucero/field-label";
37
+ import "@luzmo/lucero/number-field";
38
+ import "@luzmo/lucero/picker";
39
+ import "@luzmo/lucero/tabs";
40
+ //#region src/components/interactive-viz-item/interactive-viz-item.module.scss?inline
41
+ var h = ":host{box-sizing:border-box;display:block;container-type:inline-size}.answer{width:100%;display:block}.chart-actions-bar{justify-content:space-between;align-items:center;gap:var(--luzmo-interactive-viz-item-actions-gap,var(--interactive-viz-item-actions-gap));padding-block:var(--luzmo-interactive-viz-item-actions-padding-block,var(--interactive-viz-item-actions-padding-block));flex-wrap:nowrap;margin-block-start:var(--luzmo-interactive-viz-item-actions-margin-block-start,var(--interactive-viz-item-actions-margin-block-start));display:flex}.chart-actions-primary{gap:var(--luzmo-interactive-viz-item-actions-gap,var(--interactive-viz-item-actions-gap));flex-wrap:wrap;flex:1;align-items:center;min-width:0;display:flex}.ranking-content{gap:var(--luzmo-spacing-3);padding:var(--luzmo-spacing-3);flex-direction:column;display:flex}.ranking-row{gap:var(--luzmo-spacing-3);align-items:center;display:flex}.ranking-number{width:4rem}.icon-flipped{transform:scaleY(-1)}.chart-container{border-radius:var(--luzmo-interactive-viz-item-chart-border-radius,var(--interactive-viz-item-chart-border-radius));height:var(--luzmo-interactive-viz-item-chart-height,var(--interactive-viz-item-chart-height));overflow:hidden}.chart-container luzmo-embed-viz-item{width:100%;height:100%;display:block}.feedback-row{padding-block:var(--luzmo-interactive-viz-item-feedback-padding-block,var(--interactive-viz-item-feedback-padding-block));justify-content:space-between;align-items:center;display:flex}.rating-btn-positive{--luzmo-action-button-content-color-default-selected:var(--luzmo-interactive-viz-item-rating-positive-color,var(--interactive-viz-item-rating-positive-color));--luzmo-action-button-content-color-hover-selected:var(--luzmo-interactive-viz-item-rating-positive-color,var(--interactive-viz-item-rating-positive-color));--luzmo-action-button-content-color-down-selected:var(--luzmo-interactive-viz-item-rating-positive-color,var(--interactive-viz-item-rating-positive-color));--luzmo-action-button-content-color-focus-selected:var(--luzmo-interactive-viz-item-rating-positive-color,var(--interactive-viz-item-rating-positive-color));--luzmo-action-button-background-color-default-selected:var(--luzmo-interactive-viz-item-rating-selected-background,var(--interactive-viz-item-rating-selected-background));--luzmo-action-button-background-color-hover-selected:var(--luzmo-interactive-viz-item-rating-selected-background,var(--interactive-viz-item-rating-selected-background));--luzmo-action-button-background-color-down-selected:var(--luzmo-interactive-viz-item-rating-selected-background,var(--interactive-viz-item-rating-selected-background));--luzmo-action-button-background-color-focus-selected:var(--luzmo-interactive-viz-item-rating-selected-background,var(--interactive-viz-item-rating-selected-background))}.rating-btn-negative{--luzmo-action-button-content-color-default-selected:var(--luzmo-interactive-viz-item-rating-negative-color,var(--interactive-viz-item-rating-negative-color));--luzmo-action-button-content-color-hover-selected:var(--luzmo-interactive-viz-item-rating-negative-color,var(--interactive-viz-item-rating-negative-color));--luzmo-action-button-content-color-down-selected:var(--luzmo-interactive-viz-item-rating-negative-color,var(--interactive-viz-item-rating-negative-color));--luzmo-action-button-content-color-focus-selected:var(--luzmo-interactive-viz-item-rating-negative-color,var(--interactive-viz-item-rating-negative-color));--luzmo-action-button-background-color-default-selected:var(--luzmo-interactive-viz-item-rating-selected-background,var(--interactive-viz-item-rating-selected-background));--luzmo-action-button-background-color-hover-selected:var(--luzmo-interactive-viz-item-rating-selected-background,var(--interactive-viz-item-rating-selected-background));--luzmo-action-button-background-color-down-selected:var(--luzmo-interactive-viz-item-rating-selected-background,var(--interactive-viz-item-rating-selected-background));--luzmo-action-button-background-color-focus-selected:var(--luzmo-interactive-viz-item-rating-selected-background,var(--interactive-viz-item-rating-selected-background))}.config-toggle{--luzmo-action-button-border-radius:32px;margin-inline-start:auto}.config-panel{border:1px solid var(--luzmo-interactive-viz-item-config-panel-border-color,var(--interactive-viz-item-config-panel-border-color));border-radius:var(--luzmo-interactive-viz-item-config-panel-border-radius,var(--interactive-viz-item-config-panel-border-radius));padding:var(--luzmo-interactive-viz-item-config-panel-padding,var(--interactive-viz-item-config-panel-padding));background:var(--luzmo-interactive-viz-item-config-panel-background,var(--interactive-viz-item-config-panel-background));margin-block-start:var(--luzmo-spacing-2)}.config-panel luzmo-tab-panel[selected]{padding-block-start:var(--luzmo-spacing-4);display:block}.config-panel luzmo-item-option-panel,.config-panel luzmo-item-slot-picker-panel,.config-panel luzmo-filters{width:100%;max-height:15rem;scrollbar-width:thin;scrollbar-color:var(--luzmo-interactive-viz-item-config-panel-border-color,var(--interactive-viz-item-config-panel-border-color)) transparent;padding-inline-end:var(--luzmo-spacing-3);overflow-y:auto}.edit-grid{min-height:12.5rem;display:flex}.edit-column{gap:var(--luzmo-spacing-3);flex-direction:column;display:flex}.edit-column:first-child{flex-shrink:0;max-width:15rem}.edit-column-filters{border-inline-start:1px solid var(--luzmo-interactive-viz-item-config-panel-border-color,var(--interactive-viz-item-config-panel-border-color));flex:1;min-width:18.75rem;padding-inline-start:var(--luzmo-spacing-5)}@container (width<=520px){.edit-grid{flex-direction:column}.edit-column,.edit-column:first-child{width:100%;min-width:0;max-width:100%}.edit-column-filters{border-inline-start:none;border-block-start:1px solid var(--luzmo-interactive-viz-item-config-panel-border-color,var(--interactive-viz-item-config-panel-border-color));min-width:0;margin-block-start:var(--luzmo-spacing-3);padding-block-start:var(--luzmo-spacing-4);padding-inline-start:0}}@container (width<=768px){.chart-container{height:calc(var(--luzmo-interactive-viz-item-chart-height,var(--interactive-viz-item-chart-height)) - 2.5rem)}}:host{--interactive-viz-item-actions-gap:var(--luzmo-spacing-3);--interactive-viz-item-actions-padding-block:var(--luzmo-spacing-3);--interactive-viz-item-actions-margin-block-start:var(--luzmo-spacing-5);--interactive-viz-item-chart-height:20rem;--interactive-viz-item-chart-border-radius:var(--luzmo-border-radius);--interactive-viz-item-feedback-padding-block:var(--luzmo-spacing-4);--interactive-viz-item-config-panel-padding:var(--luzmo-spacing-5);--interactive-viz-item-config-panel-border-color:var(--luzmo-border-color);--interactive-viz-item-config-panel-border-radius:var(--luzmo-border-radius);--interactive-viz-item-config-panel-background:var(--luzmo-background-color);--interactive-viz-item-rating-positive-color:var(--luzmo-positive-color,#12855a);--interactive-viz-item-rating-negative-color:var(--luzmo-negative-color,#ca221c);--interactive-viz-item-rating-selected-background:var(--luzmo-background-color-focus,#0000000f)}:host([size=s]){--interactive-viz-item-chart-height:17.5rem}:host([size=l]){--interactive-viz-item-chart-height:22rem}:host([size=xl]){--interactive-viz-item-chart-height:24rem}", g = /* @__PURE__ */ function(e) {
42
+ return e.Top = "top", e.Bottom = "bottom", e;
43
+ }({}), _ = /* @__PURE__ */ function(e) {
44
+ return e.Asc = "asc", e.Desc = "desc", e;
45
+ }({}), v = /* @__PURE__ */ function(e) {
46
+ return e.Measure = "measure", e.Category = "category", e;
47
+ }({}), y = 5, b = Array.isArray;
48
+ function x(e) {
49
+ return typeof e == "string";
50
+ }
51
+ function S(e) {
52
+ let t = { ...e };
53
+ return !t.datasetId && t.set && (t.datasetId = t.set), !t.set && t.datasetId && (t.set = t.datasetId), !t.columnId && t.column && (t.columnId = t.column), !t.column && t.columnId && (t.column = t.columnId), !t.formulaId && t.formula && (t.formulaId = t.formula), !t.formula && t.formulaId && (t.formula = t.formulaId), t;
54
+ }
55
+ function C(e) {
56
+ return b(e) ? e : Object.entries(e).map(([e, t]) => ({
57
+ name: e,
58
+ content: b(t) ? t : []
59
+ }));
60
+ }
61
+ function w(e) {
62
+ let t = /* @__PURE__ */ new Set();
63
+ for (let n of e) for (let e of n.content) {
64
+ let n = e.datasetId ?? e.set;
65
+ x(n) && t.add(n);
66
+ }
67
+ return [...t];
68
+ }
69
+ function T(e) {
70
+ let t = C(e.slots ?? []), n = e.options ?? {}, r = n.interactivity;
71
+ return {
72
+ type: e.type,
73
+ options: {
74
+ ...n,
75
+ interactivity: {
76
+ ...r,
77
+ scheduledExport: !1
78
+ }
79
+ },
80
+ slots: t.map((e) => ({
81
+ ...e,
82
+ content: b(e.content) ? e.content.map((e) => S(e)) : []
83
+ })),
84
+ filters: e.filters
85
+ };
86
+ }
87
+ function E(e, t) {
88
+ return {
89
+ ...e,
90
+ options: {
91
+ ...e.options,
92
+ theme: {
93
+ ...e.options.theme,
94
+ ...t
95
+ }
96
+ }
97
+ };
98
+ }
99
+ function D(e) {
100
+ let t = e.find((e) => e.name === "measure" || e.name === "measures");
101
+ if (t && t.content.length > 1) return !0;
102
+ let n = e.find((e) => e.name === "legend");
103
+ return n ? n.content.length > 0 : !1;
104
+ }
105
+ function O(e) {
106
+ let t = [], n = e.options;
107
+ switch (e.type) {
108
+ case "area-chart":
109
+ case "bar-chart":
110
+ case "column-chart":
111
+ if (t.push({
112
+ type: "rankingPicker",
113
+ mutationType: "rankAndSort",
114
+ ranking: n.ranking ?? {
115
+ active: !1,
116
+ number: 5,
117
+ direction: g.Top
118
+ },
119
+ sort: n.sort ?? {
120
+ direction: _.Desc,
121
+ by: v.Measure
122
+ },
123
+ importance: 100
124
+ }), D(e.slots)) {
125
+ let r = e.type === "area-chart", i = r ? [
126
+ {
127
+ key: "stacked",
128
+ label: "Stacked"
129
+ },
130
+ {
131
+ key: "unstacked",
132
+ label: "Unstacked"
133
+ },
134
+ {
135
+ key: "100",
136
+ label: "100%"
137
+ },
138
+ {
139
+ key: "stream",
140
+ label: "Stream"
141
+ }
142
+ ] : [
143
+ {
144
+ key: "grouped",
145
+ label: "Grouped"
146
+ },
147
+ {
148
+ key: "stacked",
149
+ label: "Stacked"
150
+ },
151
+ {
152
+ key: "100",
153
+ label: "100%"
154
+ }
155
+ ], a = r ? "stacked" : "grouped";
156
+ t.push({
157
+ type: "optionDropdown",
158
+ mutationType: "mode",
159
+ values: i,
160
+ currentValue: n.mode ?? a,
161
+ importance: 90
162
+ });
163
+ }
164
+ break;
165
+ case "donut-chart": {
166
+ let e = n.display ?? {};
167
+ t.push({
168
+ type: "optionDropdown",
169
+ mutationType: "donutLabelDisplay",
170
+ values: [{
171
+ key: "withLegend",
172
+ label: "With legend"
173
+ }, {
174
+ key: "withLabels",
175
+ label: "With labels"
176
+ }],
177
+ currentValue: e.categoryLabels === !0 ? "withLabels" : "withLegend",
178
+ importance: 90
179
+ });
180
+ break;
181
+ }
182
+ case "bubble-chart": {
183
+ let e = n.display ?? {};
184
+ t.push({
185
+ type: "optionDropdown",
186
+ mutationType: "bubbleValues",
187
+ values: [
188
+ {
189
+ key: "none",
190
+ label: "No values"
191
+ },
192
+ {
193
+ key: "absolute",
194
+ label: "Absolute"
195
+ },
196
+ {
197
+ key: "percentage",
198
+ label: "Percentage"
199
+ }
200
+ ],
201
+ currentValue: e.bubbleValues ?? e.values ?? "none",
202
+ importance: 100
203
+ });
204
+ break;
205
+ }
206
+ }
207
+ return t.sort((e, t) => t.importance - e.importance);
208
+ }
209
+ function k(e, t, n) {
210
+ let r = e.options;
211
+ switch (t) {
212
+ case "mode": return {
213
+ ...e,
214
+ options: {
215
+ ...r,
216
+ mode: n
217
+ }
218
+ };
219
+ case "donutLabelDisplay": {
220
+ let t = { ...r.display ?? {} };
221
+ return n === "withLabels" ? (t.legend = !1, t.categoryLabels = !0) : (t.legend = !0, t.categoryLabels = !1), {
222
+ ...e,
223
+ options: {
224
+ ...r,
225
+ display: t
226
+ }
227
+ };
228
+ }
229
+ case "bubbleValues": {
230
+ let t = { ...r.display ?? {} };
231
+ return t.bubbleLabels = t.bubbleLabels !== !1, t.bubbleValues = n, {
232
+ ...e,
233
+ options: {
234
+ ...r,
235
+ display: t
236
+ }
237
+ };
238
+ }
239
+ default: return e;
240
+ }
241
+ }
242
+ function A(e, t) {
243
+ switch (t.type) {
244
+ case "slots": return {
245
+ ...e,
246
+ slots: t.slotsContents
247
+ };
248
+ case "options": return {
249
+ ...e,
250
+ options: t.options
251
+ };
252
+ case "filters": return {
253
+ ...e,
254
+ filters: t.filters
255
+ };
256
+ case "chartAction": return k(e, t.actionType, t.key);
257
+ case "rankAndSort": return {
258
+ ...e,
259
+ options: {
260
+ ...e.options,
261
+ ranking: t.ranking,
262
+ sort: t.sort
263
+ }
264
+ };
265
+ case "fullReplace": return t.chart;
266
+ default: return e;
267
+ }
268
+ }
269
+ //#endregion
270
+ //#region src/components/interactive-viz-item/interactive-viz-item.ts
271
+ var j = 0, M = class extends i(t(e, { validSizes: Object.values(n) })) {
272
+ constructor(...e) {
273
+ super(...e), this.chart = null, this.feedback = null, this.messageId = "", this.authKey = "", this.authToken = "", this.apiUrl = "https://api.luzmo.com", this.appServer = "https://app.luzmo.com", this.contentLanguage = "", this.hideActions = !1, this.hideFeedback = !1, this.hideConfigPanel = !1, this._configPanelOpen = !1, this._rankingTriggerId = `interactive-viz-item-ranking-${++j}`, this._handleSlotsChanged = (e) => {
274
+ this.chart && this._emitChart({
275
+ ...this.chart,
276
+ slots: e.detail.slotsContents
277
+ });
278
+ }, this._handleFiltersChanged = (e) => {
279
+ this.chart && this._emitChart({
280
+ ...this.chart,
281
+ filters: e.detail.filters
282
+ });
283
+ }, this._handleOptionsChanged = (e) => {
284
+ if (!this.chart) return;
285
+ let t = e.detail.options;
286
+ if (!t) return;
287
+ let n = this.chart.options.theme ?? {};
288
+ this._emitChart({
289
+ ...this.chart,
290
+ options: {
291
+ ...t,
292
+ theme: { ...n }
293
+ }
294
+ });
295
+ };
296
+ }
297
+ static get styles() {
298
+ return [d(h)];
299
+ }
300
+ get _effectiveContentLanguage() {
301
+ return this.contentLanguage || this.language;
302
+ }
303
+ _dispatch(e, t) {
304
+ let n = new CustomEvent(e, {
305
+ detail: t,
306
+ bubbles: !0,
307
+ composed: !0
308
+ });
309
+ this.dispatchEvent(n);
310
+ }
311
+ get _chartActions() {
312
+ return this.chart ? O(T(this.chart)) : [];
313
+ }
314
+ get _rating() {
315
+ return this.feedback?.rating ?? 0;
316
+ }
317
+ _toggleConfigPanel() {
318
+ this._configPanelOpen = !this._configPanelOpen;
319
+ }
320
+ _emitOptions(e) {
321
+ this._dispatch("luzmo-chart-options-changed", { options: e });
322
+ }
323
+ _emitChart(e) {
324
+ this._dispatch("luzmo-chart-changed", { chart: e });
325
+ }
326
+ _handleDropdownChange(e, t) {
327
+ if (!this.chart) return;
328
+ t.stopPropagation();
329
+ let n = t.detail, r = typeof n == "string" ? n : n?.value ?? t.target?.value;
330
+ if (!r) return;
331
+ let i = A(T(this.chart), {
332
+ type: "chartAction",
333
+ actionType: e.mutationType,
334
+ key: r
335
+ });
336
+ this._emitOptions(i.options);
337
+ }
338
+ _currentRanking(e) {
339
+ return e.ranking ?? {
340
+ active: !1,
341
+ number: 5,
342
+ direction: g.Top
343
+ };
344
+ }
345
+ _currentSort(e) {
346
+ return e.sort ?? {
347
+ direction: _.Desc,
348
+ by: v.Measure
349
+ };
350
+ }
351
+ _emitRankAndSort(e, t) {
352
+ this.chart && this._emitOptions({
353
+ ...this.chart.options,
354
+ ranking: e,
355
+ sort: t
356
+ });
357
+ }
358
+ _renderOptionDropdown(e) {
359
+ let t = e.values ?? [], n = e.currentValue || t[0]?.key || "";
360
+ return l`
361
+ <luzmo-picker
362
+ size=${this.size}
363
+ variant="highlight"
364
+ value=${n}
365
+ @change=${(t) => this._handleDropdownChange(e, t)}
366
+ >
367
+ ${t.map((e) => l`<luzmo-menu-item value=${e.key}>${e.label}</luzmo-menu-item>`)}
368
+ </luzmo-picker>
369
+ `;
370
+ }
371
+ _renderRankingPicker(e) {
372
+ let t = this._currentRanking(e), n = this._currentSort(e);
373
+ if (!t.active) return l`
374
+ <luzmo-action-button
375
+ size=${this.size}
376
+ @click=${() => this._emitRankAndSort({
377
+ active: !0,
378
+ number: 5,
379
+ direction: g.Top
380
+ }, n)}
381
+ >
382
+ <luzmo-icon slot="icon" size="xs" .icon=${a}></luzmo-icon>
383
+ ${m("Show top 5", { desc: "Label to activate top-N ranking on a chart" })}
384
+ </luzmo-action-button>
385
+ `;
386
+ let r = t.direction === g.Bottom ? m("Bottom", { desc: "Ranking direction: keep the lowest values" }) : m("Top", { desc: "Ranking direction: keep the highest values" });
387
+ return l`
388
+ <luzmo-action-button size=${this.size} id=${this._rankingTriggerId}>
389
+ <luzmo-icon slot="icon" size="xs" .icon=${a}></luzmo-icon>
390
+ ${r} ${t.number || 5}
391
+ </luzmo-action-button>
392
+
393
+ <luzmo-overlay type="auto" placement="bottom-start" trigger=${`${this._rankingTriggerId}@click`}>
394
+ <luzmo-popover>
395
+ <div class="ranking-content">
396
+ <div class="ranking-row">
397
+ <luzmo-action-group
398
+ size=${this.size}
399
+ compact
400
+ selects="single"
401
+ .selected=${[t.direction]}
402
+ @change=${(t) => this._handleDirectionChange(e, t)}
403
+ >
404
+ <luzmo-action-button value="top" emphasized
405
+ >${m("Top", { desc: "Ranking direction: keep the highest values" })}</luzmo-action-button
406
+ >
407
+ <luzmo-action-button value="bottom" emphasized
408
+ >${m("Bottom", { desc: "Ranking direction: keep the lowest values" })}</luzmo-action-button
409
+ >
410
+ </luzmo-action-group>
411
+
412
+ <luzmo-number-field
413
+ class="ranking-number"
414
+ size=${this.size}
415
+ hide-stepper
416
+ min="1"
417
+ max="100"
418
+ step="1"
419
+ .value=${t.number}
420
+ @change=${(t) => this._handleNumberChange(e, t)}
421
+ @input=${(t) => this._handleNumberChange(e, t)}
422
+ ></luzmo-number-field>
423
+ </div>
424
+
425
+ <div class="ranking-row">
426
+ <luzmo-action-group
427
+ size=${this.size}
428
+ compact
429
+ selects="single"
430
+ .selected=${[n.by]}
431
+ @change=${(t) => this._handleSortByChange(e, t)}
432
+ >
433
+ <luzmo-action-button value="measure" emphasized>123</luzmo-action-button>
434
+ <luzmo-action-button value="category" emphasized>ABC</luzmo-action-button>
435
+ </luzmo-action-group>
436
+
437
+ <luzmo-action-group
438
+ size=${this.size}
439
+ compact
440
+ selects="single"
441
+ .selected=${[n.direction]}
442
+ @change=${(t) => this._handleSortDirectionChange(e, t)}
443
+ >
444
+ <luzmo-action-button
445
+ value="desc"
446
+ emphasized
447
+ label=${m("Sort descending", { desc: "Sort chart values in descending order" })}
448
+ >
449
+ <luzmo-icon slot="icon" size="xs" .icon=${a}></luzmo-icon>
450
+ </luzmo-action-button>
451
+ <luzmo-action-button
452
+ value="asc"
453
+ emphasized
454
+ label=${m("Sort ascending", { desc: "Sort chart values in ascending order" })}
455
+ >
456
+ <luzmo-icon slot="icon" size="xs" class="icon-flipped" .icon=${a}></luzmo-icon>
457
+ </luzmo-action-button>
458
+ </luzmo-action-group>
459
+ </div>
460
+ </div>
461
+ </luzmo-popover>
462
+ </luzmo-overlay>
463
+ `;
464
+ }
465
+ _handleDirectionChange(e, t) {
466
+ t.stopPropagation();
467
+ let n = t.target?.selected;
468
+ n?.length && this._emitRankAndSort({
469
+ ...this._currentRanking(e),
470
+ direction: n[0]
471
+ }, this._currentSort(e));
472
+ }
473
+ _handleNumberChange(e, t) {
474
+ t.stopPropagation();
475
+ let n = t.target?.value, r = typeof n == "number" ? n : Number.parseInt(String(n), 10);
476
+ !Number.isNaN(r) && r >= 1 && this._emitRankAndSort({
477
+ ...this._currentRanking(e),
478
+ number: r
479
+ }, this._currentSort(e));
480
+ }
481
+ _handleSortByChange(e, t) {
482
+ t.stopPropagation();
483
+ let n = t.target?.selected;
484
+ n?.length && this._emitRankAndSort(this._currentRanking(e), {
485
+ ...this._currentSort(e),
486
+ by: n[0]
487
+ });
488
+ }
489
+ _handleSortDirectionChange(e, t) {
490
+ t.stopPropagation();
491
+ let n = t.target?.selected;
492
+ n?.length && this._emitRankAndSort(this._currentRanking(e), {
493
+ ...this._currentSort(e),
494
+ direction: n[0]
495
+ });
496
+ }
497
+ _renderActions() {
498
+ return this.hideActions ? l`
499
+ <div class="chart-actions-bar">
500
+ <div class="chart-actions-primary"></div>
501
+ <slot name="chart-actions-extra"></slot>
502
+ </div>
503
+ ` : l`
504
+ <div class="chart-actions-bar">
505
+ <div class="chart-actions-primary">
506
+ ${this._chartActions.map((e) => e.type === "optionDropdown" ? this._renderOptionDropdown(e) : this._renderRankingPicker(e))}
507
+ </div>
508
+ <slot name="chart-actions-extra"></slot>
509
+ </div>
510
+ `;
511
+ }
512
+ _renderChart() {
513
+ if (!this.chart) return u;
514
+ let e = T(this.chart);
515
+ return l`
516
+ <div class="chart-container" part="chart-container">
517
+ <luzmo-embed-viz-item
518
+ .type=${e.type}
519
+ .options=${e.options}
520
+ .slots=${e.slots}
521
+ .filters=${e.filters ?? []}
522
+ .authKey=${this.authKey}
523
+ .authToken=${this.authToken}
524
+ .apiHost=${this.apiUrl}
525
+ .appServer=${this.appServer}
526
+ .language=${this._effectiveContentLanguage}
527
+ .canFilter=${!1}
528
+ ></luzmo-embed-viz-item>
529
+ </div>
530
+ `;
531
+ }
532
+ _renderFeedback() {
533
+ let e = !this.hideFeedback && !!this.messageId, t = !!this.chart && !this.hideConfigPanel;
534
+ return !e && !t ? u : l`
535
+ <div class="feedback-row">
536
+ ${e ? l`
537
+ <luzmo-action-group quiet size=${this.size}>
538
+ <luzmo-action-button
539
+ class="rating-btn-positive"
540
+ value="positive"
541
+ quiet
542
+ label=${m("Good response", { desc: "Accessible label for the positive feedback button" })}
543
+ ?selected=${this._rating === 1}
544
+ @click=${() => this._toggleRating(!0)}
545
+ >
546
+ <luzmo-icon slot="icon" size="s" .icon=${c}></luzmo-icon>
547
+ </luzmo-action-button>
548
+ <luzmo-action-button
549
+ class="rating-btn-negative"
550
+ value="negative"
551
+ quiet
552
+ label=${m("Bad response", { desc: "Accessible label for the negative feedback button" })}
553
+ ?selected=${this._rating === -1}
554
+ @click=${() => this._toggleRating(!1)}
555
+ >
556
+ <luzmo-icon slot="icon" size="s" .icon=${s}></luzmo-icon>
557
+ </luzmo-action-button>
558
+ </luzmo-action-group>
559
+ ` : u}
560
+ ${t ? l`
561
+ <luzmo-action-button
562
+ class="config-toggle"
563
+ size=${this.size}
564
+ quiet
565
+ ?selected=${this._configPanelOpen}
566
+ aria-expanded=${this._configPanelOpen}
567
+ aria-label=${m("Configure chart", { desc: "Accessible label for the chart config toggle" })}
568
+ @click=${() => this._toggleConfigPanel()}
569
+ >
570
+ <luzmo-icon slot="icon" size="s" .icon=${o}></luzmo-icon>
571
+ </luzmo-action-button>
572
+ ` : u}
573
+ </div>
574
+ `;
575
+ }
576
+ _toggleRating(e) {
577
+ let t = e ? 1 : -1, n = this._rating === t ? 0 : t;
578
+ this._dispatch("luzmo-feedback-changed", {
579
+ rating: n,
580
+ comment: this.feedback?.comment
581
+ });
582
+ }
583
+ _renderConfigPanel() {
584
+ if (!this.chart || this.hideConfigPanel || !this._configPanelOpen) return u;
585
+ let e = this.chart, t = C(e.slots ?? []), n = w(t), r = e.options.theme ?? {};
586
+ return l`
587
+ <div class="config-panel" part="config-panel">
588
+ <luzmo-tabs selected="data" size=${this.size}>
589
+ <luzmo-tab value="data">${m("Data", { desc: "Config panel tab: data slots and filters" })}</luzmo-tab>
590
+ <luzmo-tab value="options">${m("Options", { desc: "Config panel tab: chart options" })}</luzmo-tab>
591
+
592
+ <luzmo-tab-panel value="data">
593
+ <div class="edit-grid">
594
+ <div class="edit-column">
595
+ <luzmo-item-slot-picker-panel
596
+ size=${this.size}
597
+ slot-menu-placement="bottom-end"
598
+ .itemType=${e.type}
599
+ .slotsContents=${t}
600
+ .datasetIds=${n}
601
+ .authKey=${this.authKey}
602
+ .authToken=${this.authToken}
603
+ .apiUrl=${this.apiUrl}
604
+ .language=${this.language}
605
+ .contentLanguage=${this._effectiveContentLanguage}
606
+ @luzmo-slots-contents-changed=${this._handleSlotsChanged}
607
+ ></luzmo-item-slot-picker-panel>
608
+ </div>
609
+ <div class="edit-column edit-column-filters">
610
+ <luzmo-field-label size=${this.size}
611
+ >${m("Filters", { desc: "Config panel label for the filters section" })}</luzmo-field-label
612
+ >
613
+ <luzmo-filters
614
+ size=${this.size}
615
+ .datasetIds=${n}
616
+ .filters=${e.filters ?? []}
617
+ .authKey=${this.authKey}
618
+ .authToken=${this.authToken}
619
+ .apiUrl=${this.apiUrl}
620
+ .language=${this.language}
621
+ .contentLanguage=${this._effectiveContentLanguage}
622
+ @luzmo-filters-changed=${this._handleFiltersChanged}
623
+ ></luzmo-filters>
624
+ </div>
625
+ </div>
626
+ </luzmo-tab-panel>
627
+
628
+ <luzmo-tab-panel value="options">
629
+ <luzmo-item-option-panel
630
+ size=${this.size}
631
+ .itemType=${e.type}
632
+ .options=${e.options || {}}
633
+ .slots=${t}
634
+ .theme=${r}
635
+ .authKey=${this.authKey}
636
+ .authToken=${this.authToken}
637
+ .apiUrl=${this.apiUrl}
638
+ .language=${this.language}
639
+ @luzmo-options-changed=${this._handleOptionsChanged}
640
+ ></luzmo-item-option-panel>
641
+ </luzmo-tab-panel>
642
+ </luzmo-tabs>
643
+ </div>
644
+ `;
645
+ }
646
+ render() {
647
+ return this.chart ? l`
648
+ <div class="answer" part="container">
649
+ ${this._renderActions()} ${this._renderChart()} ${this._renderFeedback()} ${this._renderConfigPanel()}
650
+ </div>
651
+ ` : l`
652
+ <div
653
+ class="answer"
654
+ part="container"
655
+ ></div>
656
+ `;
657
+ }
658
+ };
659
+ //#endregion
660
+ //#region src/components/interactive-viz-item/index.ts
661
+ r([f({ type: Object })], M.prototype, "chart", void 0), r([f({ type: Object })], M.prototype, "feedback", void 0), r([f({
662
+ type: String,
663
+ attribute: "message-id"
664
+ })], M.prototype, "messageId", void 0), r([f({
665
+ type: String,
666
+ attribute: "auth-key"
667
+ })], M.prototype, "authKey", void 0), r([f({
668
+ type: String,
669
+ attribute: "auth-token"
670
+ })], M.prototype, "authToken", void 0), r([f({
671
+ type: String,
672
+ attribute: "api-url"
673
+ })], M.prototype, "apiUrl", void 0), r([f({
674
+ type: String,
675
+ attribute: "app-server"
676
+ })], M.prototype, "appServer", void 0), r([f({
677
+ type: String,
678
+ attribute: "content-language"
679
+ })], M.prototype, "contentLanguage", void 0), r([f({
680
+ type: Boolean,
681
+ attribute: "hide-actions",
682
+ reflect: !0
683
+ })], M.prototype, "hideActions", void 0), r([f({
684
+ type: Boolean,
685
+ attribute: "hide-feedback",
686
+ reflect: !0
687
+ })], M.prototype, "hideFeedback", void 0), r([f({
688
+ type: Boolean,
689
+ attribute: "hide-config-panel",
690
+ reflect: !0
691
+ })], M.prototype, "hideConfigPanel", void 0), r([p()], M.prototype, "_configPanelOpen", void 0), customElements.get("luzmo-interactive-viz-item") || customElements.define("luzmo-interactive-viz-item", M);
692
+ //#endregion
693
+ export { w as a, y as c, _ as d, C as i, g as l, A as n, E as o, O as r, T as s, M as t, v as u };