@luzmo/analytics-components-kit 1.0.9-beta.11 → 1.0.9-beta.12

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 (378) hide show
  1. package/components/add-to-dashboard/index.cjs +1 -1
  2. package/components/add-to-dashboard/index.js +1 -1
  3. package/components/{add-to-dashboard-nYUaDghN.cjs → add-to-dashboard-D11b-HS7.cjs} +1 -1
  4. package/components/{add-to-dashboard-BY70QBzE.js → add-to-dashboard-KLYGiqKE.js} +4 -4
  5. package/components/ai-chat/ai-chat-events.d.ts +5 -1
  6. package/components/ai-chat/ai-chat.d.ts +36 -1
  7. package/components/ai-chat/helpers/assistant-message-feedback.d.ts +26 -0
  8. package/components/ai-chat/index.cjs +1 -1
  9. package/components/ai-chat/index.d.ts +1 -1
  10. package/components/ai-chat/index.js +2 -2
  11. package/components/ai-chat/session/ai-chat-session.d.ts +8 -1
  12. package/components/ai-chat/stream/chunk-extractors.d.ts +8 -0
  13. package/components/ai-chat/stream/index.d.ts +1 -1
  14. package/components/ai-chat/stream/types.d.ts +6 -0
  15. package/components/ai-chat-C0XZ_pvG.cjs +393 -0
  16. package/components/{ai-chat-DmDtBF47.js → ai-chat-CYrWJ8Wa.js} +873 -734
  17. package/components/ai-interaction-textarea/index.cjs +1 -1
  18. package/components/ai-interaction-textarea/index.js +1 -1
  19. package/components/{ai-interaction-textarea-6ECwAdeT.js → ai-interaction-textarea-CT698Pph.js} +5 -5
  20. package/components/{ai-interaction-textarea-CRyyTj_B.cjs → ai-interaction-textarea-Da1ErRHy.cjs} +1 -1
  21. package/components/{area-chart-positioning.config-CoCdjr2E.cjs → area-chart-positioning.config-DWLy-uS1.cjs} +1 -1
  22. package/components/{area-chart-positioning.config-o-uJPEr5.js → area-chart-positioning.config-Dpi4gakJ.js} +1 -1
  23. package/components/{bar-chart-positioning.config-fsB82756.cjs → bar-chart-positioning.config-B3U1-22D.cjs} +1 -1
  24. package/components/{bar-chart-positioning.config-CZgrS6lc.js → bar-chart-positioning.config-DDv8hNyi.js} +1 -1
  25. package/components/{base-BmvsQ-s1.cjs → base-BdkFbMZR.cjs} +1 -1
  26. package/components/{base-CrpOMVeU.js → base-Cvcpdy0h.js} +1 -1
  27. package/components/{box-plot-positioning.config-CDq460FI.js → box-plot-positioning.config-1BuF6Gjj.js} +1 -1
  28. package/components/{box-plot-positioning.config-BMfGGDfe.cjs → box-plot-positioning.config-lfqDTCdY.cjs} +1 -1
  29. package/components/{bubble-chart-positioning.config-C9MmTtTX.cjs → bubble-chart-positioning.config-DVBuVeSs.cjs} +1 -1
  30. package/components/{bubble-chart-positioning.config-DWfz4tud.js → bubble-chart-positioning.config-V8KfvCkY.js} +1 -1
  31. package/components/{bullet-chart-positioning.config-BwHPM5ui.cjs → bullet-chart-positioning.config-CtlmKdzp.cjs} +1 -1
  32. package/components/{bullet-chart-positioning.config-DmSlVIjL.js → bullet-chart-positioning.config-IrK6KYbE.js} +1 -1
  33. package/components/{choropleth-map-positioning.config-cjBzi_Db.js → choropleth-map-positioning.config-BSb0ig5Y.js} +1 -1
  34. package/components/{choropleth-map-positioning.config-C0m6zzD3.cjs → choropleth-map-positioning.config-ahRkoZNv.cjs} +1 -1
  35. package/components/{circle-pack-chart-positioning.config-BAFFQSHe.cjs → circle-pack-chart-positioning.config-CS1dbWgR.cjs} +1 -1
  36. package/components/{circle-pack-chart-positioning.config-CY2rLb57.js → circle-pack-chart-positioning.config-DfQztqxL.js} +1 -1
  37. package/components/{circular-gauge-positioning.config-6pZUNxYa.js → circular-gauge-positioning.config-1HH3Rw2L.js} +1 -1
  38. package/components/{circular-gauge-positioning.config-BfWAjAY2.cjs → circular-gauge-positioning.config-BeLsxbow.cjs} +1 -1
  39. package/components/{column-chart-positioning.config-xgRuA_l5.cjs → column-chart-positioning.config-CLZuZiVa.cjs} +1 -1
  40. package/components/{column-chart-positioning.config-hrAvNd7T.js → column-chart-positioning.config-DVeVPtzS.js} +1 -1
  41. package/components/{combination-chart-positioning.config-BI8HroaG.js → combination-chart-positioning.config-BPXqur2s.js} +1 -1
  42. package/components/{combination-chart-positioning.config-D0TU4hge.cjs → combination-chart-positioning.config-DKNRMoZN.cjs} +1 -1
  43. package/components/{conditional-number-positioning.config-CWaDhMLA.js → conditional-number-positioning.config-BWJAnFTq.js} +1 -1
  44. package/components/{conditional-number-positioning.config-B_yISWne.cjs → conditional-number-positioning.config-HXcO-Ej5.cjs} +1 -1
  45. package/components/data-field/index.cjs +1 -1
  46. package/components/data-field/index.js +1 -1
  47. package/components/{data-field-D4YFqg1H.js → data-field-BMeV_pUL.js} +3 -3
  48. package/components/{data-field-Hi-ITTzx.cjs → data-field-C204ZKd3.cjs} +1 -1
  49. package/components/data-field-level/index.cjs +1 -1
  50. package/components/data-field-level/index.js +1 -1
  51. package/components/{data-field-level-BWQPtFP5.cjs → data-field-level-Cv4Vgi_o.cjs} +1 -1
  52. package/components/{data-field-level-CB5GtdU5.js → data-field-level-Dpta9m5I.js} +2 -2
  53. package/components/data-field-panel/index.cjs +1 -1
  54. package/components/data-field-panel/index.js +1 -1
  55. package/components/{data-field-panel-64HoViNT.js → data-field-panel-Beg-fx10.js} +3 -3
  56. package/components/{data-field-panel-DzKwmQi_.cjs → data-field-panel-D71J7_IE.cjs} +1 -1
  57. package/components/data-fields-select/data-fields-select.d.ts +2 -0
  58. package/components/data-fields-select/index.cjs +1 -1
  59. package/components/data-fields-select/index.js +1 -1
  60. package/components/{data-fields-select-BOwoWq0j.js → data-fields-select-BKoQMwZd.js} +4 -1
  61. package/components/{data-fields-select-DXv6PQHG.cjs → data-fields-select-CBTGcYRL.cjs} +1 -1
  62. package/components/dataset-selector-list/index.cjs +1 -1
  63. package/components/dataset-selector-list/index.js +1 -1
  64. package/components/{dataset-selector-list-_AL1-GWw.cjs → dataset-selector-list-D9ZmjTyU.cjs} +1 -1
  65. package/components/{dataset-selector-list-DFC2bvn0.js → dataset-selector-list-DFMfknD5.js} +1 -1
  66. package/components/dataset-selector-row/index.cjs +1 -1
  67. package/components/dataset-selector-row/index.js +1 -1
  68. package/components/{dataset-selector-row-By2ko-Rd.cjs → dataset-selector-row-Bq_yYpb9.cjs} +1 -1
  69. package/components/{dataset-selector-row-DC6mrVyF.js → dataset-selector-row-DFPwXde5.js} +5 -5
  70. package/components/{de-Yl3kqB03.js → de-DPhR2zPG.js} +4 -0
  71. package/components/de-DUAXVtRS.cjs +20 -0
  72. package/components/display-settings/index.cjs +1 -1
  73. package/components/display-settings/index.js +1 -1
  74. package/components/display-settings-BkbdgMvh.cjs +143 -0
  75. package/components/{display-settings-BsCKV9ae.js → display-settings-MnSyqIog.js} +17 -16
  76. package/components/display-settings-binning/index.cjs +1 -1
  77. package/components/display-settings-binning/index.js +1 -1
  78. package/components/{display-settings-binning-CkrbhPVB.js → display-settings-binning-BQYxWvFI.js} +3 -3
  79. package/components/{display-settings-binning-BdtxayZT.cjs → display-settings-binning-DqcCzBrG.cjs} +1 -1
  80. package/components/display-settings-datetime/index.cjs +1 -1
  81. package/components/display-settings-datetime/index.js +1 -1
  82. package/components/{display-settings-datetime-CpFyrcGk.cjs → display-settings-datetime-9WraOyqr.cjs} +1 -1
  83. package/components/{display-settings-datetime-mVh5Tjrx.js → display-settings-datetime-D5UwdwAI.js} +3 -3
  84. package/components/display-settings-grand-totals/index.cjs +1 -1
  85. package/components/display-settings-grand-totals/index.js +1 -1
  86. package/components/{display-settings-grand-totals-D7unOEKl.js → display-settings-grand-totals-DYSVU-9G.js} +3 -3
  87. package/components/{display-settings-grand-totals-CwOGoE06.cjs → display-settings-grand-totals-w2Zbxwt4.cjs} +1 -1
  88. package/components/display-settings-numeric/index.cjs +1 -1
  89. package/components/display-settings-numeric/index.js +1 -1
  90. package/components/{display-settings-numeric-DhiXPU3f.cjs → display-settings-numeric-DGyMDswg.cjs} +1 -1
  91. package/components/{display-settings-numeric-DDZyFNFF.js → display-settings-numeric-YOsAAqyJ.js} +4 -4
  92. package/components/display-settings-period-over-period/index.cjs +1 -1
  93. package/components/display-settings-period-over-period/index.js +1 -1
  94. package/components/{display-settings-period-over-period-Hd172SzT.js → display-settings-period-over-period-CYwQ6KQI.js} +3 -3
  95. package/components/{display-settings-period-over-period-BNFjbgP0.cjs → display-settings-period-over-period-zme6yEAi.cjs} +1 -1
  96. package/components/{donut-chart-positioning.config-B2CrxOig.js → donut-chart-positioning.config-ovPyzL2x.js} +1 -1
  97. package/components/{donut-chart-positioning.config-DQb53kWI.cjs → donut-chart-positioning.config-xwoqdu-c.cjs} +1 -1
  98. package/components/{es-Ctf1SIsp.js → es-C9faREu_.js} +4 -0
  99. package/components/es-DKP3YRmv.cjs +20 -0
  100. package/components/{evolution-number-positioning.config-BdH8pv6_.js → evolution-number-positioning.config-B-H5aEXI.js} +1 -1
  101. package/components/{evolution-number-positioning.config-BzBsGcD4.cjs → evolution-number-positioning.config-CfcajD4B.cjs} +1 -1
  102. package/components/filter-expression-picker/index.cjs +1 -1
  103. package/components/filter-expression-picker/index.js +1 -1
  104. package/components/{filter-expression-picker-Bn_jAdQX.cjs → filter-expression-picker-BBZ7KHqG.cjs} +1 -1
  105. package/components/{filter-expression-picker-Cjr8xWxy.js → filter-expression-picker-kLhzHUEW.js} +1 -1
  106. package/components/filter-item/index.cjs +1 -1
  107. package/components/filter-item/index.js +1 -1
  108. package/components/{filter-item-D6y8eCmG.js → filter-item-Dgh9nHGz.js} +6 -6
  109. package/components/{filter-item-CHJDVOju.cjs → filter-item-DnYGrUzZ.cjs} +1 -1
  110. package/components/filter-parameter-picker/index.cjs +1 -1
  111. package/components/filter-parameter-picker/index.js +1 -1
  112. package/components/{filter-parameter-picker-C955tF0T.js → filter-parameter-picker-DhTMuymq.js} +3 -3
  113. package/components/{filter-parameter-picker-jyrh3POQ.cjs → filter-parameter-picker-UwSmMkoB.cjs} +1 -1
  114. package/components/filter-value-picker/index.cjs +1 -1
  115. package/components/filter-value-picker/index.js +1 -1
  116. package/components/{filter-value-picker-DmWiNLZH.cjs → filter-value-picker-CPuUfjLo.cjs} +1 -1
  117. package/components/{filter-value-picker-B8nA8hTV.js → filter-value-picker-Ch4k6xIK.js} +4 -4
  118. package/components/filter-value-picker-datetime/index.cjs +1 -1
  119. package/components/filter-value-picker-datetime/index.js +1 -1
  120. package/components/{filter-value-picker-datetime-U4XWKSFx.cjs → filter-value-picker-datetime-BHtjVhx1.cjs} +1 -1
  121. package/components/{filter-value-picker-datetime-BAhXn1BS.js → filter-value-picker-datetime-hTOIBHMi.js} +1 -1
  122. package/components/filter-value-picker-hierarchy/index.cjs +1 -1
  123. package/components/filter-value-picker-hierarchy/index.js +1 -1
  124. package/components/{filter-value-picker-hierarchy-CUPz5Ggs.js → filter-value-picker-hierarchy-Bu1OiV4T.js} +2 -2
  125. package/components/{filter-value-picker-hierarchy-1ya1_rS3.cjs → filter-value-picker-hierarchy-CTZQfWEJ.cjs} +1 -1
  126. package/components/filter-value-picker-numeric/index.cjs +1 -1
  127. package/components/filter-value-picker-numeric/index.js +1 -1
  128. package/components/{filter-value-picker-numeric-DrHdHj31.cjs → filter-value-picker-numeric-BOY9I-y3.cjs} +1 -1
  129. package/components/{filter-value-picker-numeric-D8mLaxzj.js → filter-value-picker-numeric-tstYPaES.js} +1 -1
  130. package/components/filters/index.cjs +1 -1
  131. package/components/filters/index.js +1 -1
  132. package/components/filters-B_43Qb_P.cjs +199 -0
  133. package/components/{filters-Byy8HE19.js → filters-ESeCEQPQ.js} +4 -4
  134. package/components/formula/index.cjs +1 -1
  135. package/components/formula/index.js +1 -1
  136. package/components/{formula-D_ipR6d1.js → formula--lmxX7EE.js} +2 -2
  137. package/components/{formula-C6dPJyKm.cjs → formula-CC33nJ0T.cjs} +1 -1
  138. package/components/{formula-codemirror-CdlIly66.js → formula-codemirror-CD2ejhzw.js} +6 -6
  139. package/components/{formula-codemirror-C1UFMf6i.cjs → formula-codemirror-za5kEnKc.cjs} +1 -1
  140. package/components/{formula-display-store-B0ifmvCi.cjs → formula-display-store-B1qQtQbU.cjs} +1 -1
  141. package/components/{formula-display-store-CfObcBCd.js → formula-display-store-dxzteJ_B.js} +3 -3
  142. package/components/formula-editor/index.cjs +1 -1
  143. package/components/formula-editor/index.js +3 -3
  144. package/components/{formula-editor-B9ikCsLK.cjs → formula-editor-BDckEUnh.cjs} +1 -1
  145. package/components/{formula-editor-DJ-0AVCl.js → formula-editor-DNduncPi.js} +6 -6
  146. package/components/formula-field/index.cjs +1 -1
  147. package/components/formula-field/index.js +1 -1
  148. package/components/{formula-field-CNqn6Xbh.cjs → formula-field-Cs7SaL-J.cjs} +1 -1
  149. package/components/{formula-field-Bq-RYt0H.js → formula-field-dSYKahSQ.js} +1 -1
  150. package/components/{formula-input-base-Dple-9bo.js → formula-input-base-CzMOxMBx.js} +1 -1
  151. package/components/{formula-input-base-KSmmN1uI.cjs → formula-input-base-DCI3s_eW.cjs} +1 -1
  152. package/components/fr-BNVUrX6D.cjs +20 -0
  153. package/components/{fr-zWhjQv4B.js → fr-Dfp7e-Vj.js} +4 -0
  154. package/components/{funnel-chart-positioning.config-DleNZIG-.cjs → funnel-chart-positioning.config-2mR2EyN4.cjs} +1 -1
  155. package/components/{funnel-chart-positioning.config-DgRle8n1.js → funnel-chart-positioning.config-Bth5tggl.js} +1 -1
  156. package/components/{get-dataset-name-trrlomzY.js → get-dataset-name-CSvAYeJM.js} +1 -1
  157. package/components/{get-dataset-name-3UfKdy0m.cjs → get-dataset-name-DhYRY3e-.cjs} +1 -1
  158. package/components/{groupings-B55Oba6e.js → groupings-14w1cCc3.js} +1 -1
  159. package/components/{groupings-DEpTt8DV.cjs → groupings-DxuknvWu.cjs} +1 -1
  160. package/components/{heat-map-positioning.config-BTabq_f9.js → heat-map-positioning.config-B4bGYbFk.js} +1 -1
  161. package/components/{heat-map-positioning.config-DCB3Eagz.cjs → heat-map-positioning.config-CwcQrF53.cjs} +1 -1
  162. package/components/{heat-table-positioning.config-pK8Wn1dw.js → heat-table-positioning.config-BXCOZwaN.js} +1 -1
  163. package/components/{heat-table-positioning.config-Dnu133l4.cjs → heat-table-positioning.config-D8UNVnTk.cjs} +1 -1
  164. package/components/{hexbin-map-positioning.config-DjYp-lX8.js → hexbin-map-positioning.config-B-WZWfLq.js} +1 -1
  165. package/components/{hexbin-map-positioning.config-IqRt8f29.cjs → hexbin-map-positioning.config-Dn-bgQZ8.cjs} +1 -1
  166. package/components/index.cjs +1 -1
  167. package/components/index.js +55 -55
  168. package/components/interactive-viz-item/index.cjs +1 -1
  169. package/components/interactive-viz-item/index.js +1 -1
  170. package/components/{interactive-viz-item-D6lWVMHb.js → interactive-viz-item-CMxReAvq.js} +3 -3
  171. package/components/{interactive-viz-item-CM-LoEa5.cjs → interactive-viz-item-CQz2XYj8.cjs} +1 -1
  172. package/components/item-grid/index.cjs +1 -1
  173. package/components/item-grid/index.js +2 -2
  174. package/components/{item-grid-CbXKsQm4.js → item-grid-BYqUrmJa.js} +2 -2
  175. package/components/{item-grid-DTishUCb.cjs → item-grid-DKpxUsMo.cjs} +1 -1
  176. package/components/item-grid-item-actions-menu/index.cjs +1 -1
  177. package/components/item-grid-item-actions-menu/index.js +1 -1
  178. package/components/{item-grid-item-actions-menu-B7ylgTwO.js → item-grid-item-actions-menu-D3WeDgxI.js} +2 -2
  179. package/components/item-grid-item-actions-menu-Dhv9sTNi.cjs +52 -0
  180. package/components/item-option/index.cjs +1 -1
  181. package/components/item-option/index.js +1 -1
  182. package/components/{item-option-BTSV33ft.cjs → item-option-BWGwUzLt.cjs} +1 -1
  183. package/components/{item-option-BUju6ZE1.js → item-option-DYXzQ13_.js} +1 -1
  184. package/components/item-option-action-button-group/index.cjs +1 -1
  185. package/components/item-option-action-button-group/index.js +1 -1
  186. package/components/{item-option-action-button-group-DnTBh3R4.js → item-option-action-button-group-B3PD2K1l.js} +2 -2
  187. package/components/{item-option-action-button-group-CuDeyDRi.cjs → item-option-action-button-group-Bc26loDM.cjs} +1 -1
  188. package/components/{item-option-base-C6RQH9M8.cjs → item-option-base-B6axTng-.cjs} +1 -1
  189. package/components/{item-option-base-BIDIiNfI.js → item-option-base-BJdtApx5.js} +2 -2
  190. package/components/item-option-color-palette-picker/index.cjs +1 -1
  191. package/components/item-option-color-palette-picker/index.js +1 -1
  192. package/components/{item-option-color-palette-picker-DbsqP2zA.js → item-option-color-palette-picker-BxIWdQLy.js} +1 -1
  193. package/components/{item-option-color-palette-picker-DsG-wxGB.cjs → item-option-color-palette-picker-C1t_nY1O.cjs} +1 -1
  194. package/components/item-option-color-picker/index.cjs +1 -1
  195. package/components/item-option-color-picker/index.js +1 -1
  196. package/components/{item-option-color-picker-BUN5YK-t.cjs → item-option-color-picker-1BzUBXz-.cjs} +1 -1
  197. package/components/{item-option-color-picker-CKGUj3cW.js → item-option-color-picker-9DEx5w-z.js} +1 -1
  198. package/components/item-option-color-range/index.cjs +1 -1
  199. package/components/item-option-color-range/index.js +1 -1
  200. package/components/{item-option-color-range-BN81ePAI.cjs → item-option-color-range-B_gmxlEl.cjs} +1 -1
  201. package/components/{item-option-color-range-dMehrwqA.js → item-option-color-range-DBtnzfJa.js} +2 -2
  202. package/components/item-option-guidelines/index.cjs +1 -1
  203. package/components/item-option-guidelines/index.js +1 -1
  204. package/components/{item-option-guidelines-Bn1HSCgL.js → item-option-guidelines-DhuU5VZu.js} +4 -4
  205. package/components/item-option-guidelines-Dv4EoY3s.cjs +135 -0
  206. package/components/item-option-multi-language-field/index.cjs +1 -1
  207. package/components/item-option-multi-language-field/index.js +1 -1
  208. package/components/{item-option-multi-language-field-BFgbOzMM.js → item-option-multi-language-field-BoXUM6-u.js} +1 -1
  209. package/components/{item-option-multi-language-field-Du609wC_.cjs → item-option-multi-language-field-C_eP2I2u.cjs} +1 -1
  210. package/components/item-option-number-field/index.cjs +1 -1
  211. package/components/item-option-number-field/index.js +1 -1
  212. package/components/{item-option-number-field-CDcf6_4D.js → item-option-number-field-BrEXkjWl.js} +1 -1
  213. package/components/{item-option-number-field-CVAtj0UX.cjs → item-option-number-field-kXpCE4FI.cjs} +1 -1
  214. package/components/item-option-panel/index.cjs +1 -1
  215. package/components/item-option-panel/index.js +1 -1
  216. package/components/{item-option-panel-0iHLl9-q.cjs → item-option-panel-CB338Rgo.cjs} +1 -1
  217. package/components/{item-option-panel-DUlIB6qj.js → item-option-panel-CUoozNxD.js} +2 -2
  218. package/components/item-option-picker/index.cjs +1 -1
  219. package/components/item-option-picker/index.js +1 -1
  220. package/components/{item-option-picker-Dkc3nd3x.cjs → item-option-picker-BvT4ITzX.cjs} +1 -1
  221. package/components/{item-option-picker-ClKAGpgs.js → item-option-picker-fKn763j4.js} +1 -1
  222. package/components/item-option-position-picker/index.cjs +1 -1
  223. package/components/item-option-position-picker/index.js +1 -1
  224. package/components/{item-option-position-picker-O8PpyiRv.js → item-option-position-picker-D7smHuW7.js} +1 -1
  225. package/components/{item-option-position-picker-qCKh0Mfs.cjs → item-option-position-picker-D96vKNTF.cjs} +1 -1
  226. package/components/item-option-positions-number-field/index.cjs +1 -1
  227. package/components/item-option-positions-number-field/index.js +1 -1
  228. package/components/{item-option-positions-number-field-CBx4uQ39.js → item-option-positions-number-field-BPEATH4R.js} +1 -1
  229. package/components/{item-option-positions-number-field-Dfe4ufnF.cjs → item-option-positions-number-field-C4IOForB.cjs} +1 -1
  230. package/components/item-option-radio-button-group/index.cjs +1 -1
  231. package/components/item-option-radio-button-group/index.js +1 -1
  232. package/components/{item-option-radio-button-group-B5OVbLRg.cjs → item-option-radio-button-group-Bb-Rc5nv.cjs} +1 -1
  233. package/components/{item-option-radio-button-group-J_ZusHOP.js → item-option-radio-button-group-DQ0knjcY.js} +2 -2
  234. package/components/item-option-slider/index.cjs +1 -1
  235. package/components/item-option-slider/index.js +1 -1
  236. package/components/{item-option-slider-V9z4qqyE.js → item-option-slider-BuA7tdbc.js} +1 -1
  237. package/components/{item-option-slider-BDAEs7Fk.cjs → item-option-slider-CLqtmYAE.cjs} +1 -1
  238. package/components/item-option-switch/index.cjs +1 -1
  239. package/components/item-option-switch/index.js +1 -1
  240. package/components/{item-option-switch-BA4ifIHK.js → item-option-switch-CvzS-KN9.js} +1 -1
  241. package/components/{item-option-switch-Bzy2VRLg.cjs → item-option-switch-DtRz_zTM.cjs} +1 -1
  242. package/components/item-option-text-field/index.cjs +1 -1
  243. package/components/item-option-text-field/index.js +1 -1
  244. package/components/{item-option-text-field-Cf0khC48.js → item-option-text-field-CW3R8voC.js} +1 -1
  245. package/components/{item-option-text-field-C-sTkUre.cjs → item-option-text-field-D1NFqoms.cjs} +1 -1
  246. package/components/item-slot-drop/index.cjs +1 -1
  247. package/components/item-slot-drop/index.js +1 -1
  248. package/components/{item-slot-drop-DrJRtG7b.cjs → item-slot-drop-B7JmgKMJ.cjs} +1 -1
  249. package/components/{item-slot-drop-D2VDgqYS.js → item-slot-drop-DaTJ-Gym.js} +6 -6
  250. package/components/item-slot-drop-panel/index.cjs +1 -1
  251. package/components/item-slot-drop-panel/index.js +1 -1
  252. package/components/{item-slot-drop-panel-CCCOwtYM.js → item-slot-drop-panel-0wUkaWiM.js} +39 -39
  253. package/components/{item-slot-drop-panel-CFerKcdH.cjs → item-slot-drop-panel-CdCEWBGb.cjs} +1 -1
  254. package/components/item-slot-picker/index.cjs +1 -1
  255. package/components/item-slot-picker/index.js +1 -1
  256. package/components/item-slot-picker/item-slot-picker.d.ts +8 -2
  257. package/components/{item-slot-picker-BdfYcBKT.js → item-slot-picker-BiHy7QX1.js} +142 -121
  258. package/components/{item-slot-picker-aqePvZ9B.cjs → item-slot-picker-BvrK1U4h.cjs} +42 -47
  259. package/components/item-slot-picker-panel/index.cjs +1 -1
  260. package/components/item-slot-picker-panel/index.js +1 -1
  261. package/components/item-slot-picker-panel/item-slot-picker-panel.d.ts +1 -1
  262. package/components/{item-slot-picker-panel-DC3i7XZP.js → item-slot-picker-panel-BmlCimZ9.js} +5 -5
  263. package/components/{item-slot-picker-panel-dU6NywBo.cjs → item-slot-picker-panel-CeT847QM.cjs} +2 -2
  264. package/components/{line-chart-positioning.config-DX5mLAP7.cjs → line-chart-positioning.config-DaDYXk9Z.cjs} +1 -1
  265. package/components/{line-chart-positioning.config-BW19v66B.js → line-chart-positioning.config-Imvzv3EC.js} +1 -1
  266. package/components/{localized-mixin-CYMFnS-n.js → localized-mixin-BLUbrY_Z.js} +1 -1
  267. package/components/{localized-mixin-Bt25Frg1.cjs → localized-mixin-DceE4W-d.cjs} +1 -1
  268. package/components/{marker-map-positioning.config-C0V5LZG-.cjs → marker-map-positioning.config-BGDRklk5.cjs} +1 -1
  269. package/components/{marker-map-positioning.config-BJGwlWKz.js → marker-map-positioning.config-DouILqTQ.js} +1 -1
  270. package/components/nl-BFAURMxk.cjs +20 -0
  271. package/components/{nl-TUFktGm6.js → nl-Cs2_7YBI.js} +4 -0
  272. package/components/{ohlc-chart-positioning.config-CFvbZzCR.js → ohlc-chart-positioning.config-Bcpj8NAt.js} +1 -1
  273. package/components/{ohlc-chart-positioning.config-Bu1_IBVK.cjs → ohlc-chart-positioning.config-CHJbhqWA.cjs} +1 -1
  274. package/components/{parallel-coordinates-plot-positioning.config-Bc3qCyxq.js → parallel-coordinates-plot-positioning.config-BRPawZLg.js} +1 -1
  275. package/components/{parallel-coordinates-plot-positioning.config-EJz1XA1k.cjs → parallel-coordinates-plot-positioning.config-CnyUP9E-.cjs} +1 -1
  276. package/components/{pivot-table-positioning.config-Bay8gxV-.js → pivot-table-positioning.config-8rROPmIw.js} +1 -1
  277. package/components/{pivot-table-positioning.config-CMzGb-BR.cjs → pivot-table-positioning.config-BvD825Uc.cjs} +1 -1
  278. package/components/{pyramid-chart-positioning.config-BUSeYxYH.js → pyramid-chart-positioning.config-CqL_Z0Ok.js} +1 -1
  279. package/components/{pyramid-chart-positioning.config-CrU2vKM-.cjs → pyramid-chart-positioning.config-DKd65Pdf.cjs} +1 -1
  280. package/components/{radar-chart-positioning.config-DOLpdn-d.js → radar-chart-positioning.config-CpYbMIeY.js} +1 -1
  281. package/components/{radar-chart-positioning.config-BEzqTXyr.cjs → radar-chart-positioning.config-oPyZCdrF.cjs} +1 -1
  282. package/components/{route-map-positioning.config-BgjizdWh.cjs → route-map-positioning.config-BCOVbseo.cjs} +1 -1
  283. package/components/{route-map-positioning.config-Brg6_eCi.js → route-map-positioning.config-DPspLTzr.js} +1 -1
  284. package/components/{sankey-diagram-positioning.config-DJlWiNYL.js → sankey-diagram-positioning.config-BVNDJhvU.js} +1 -1
  285. package/components/{sankey-diagram-positioning.config-vccTz1pG.cjs → sankey-diagram-positioning.config-Da0e_DAS.cjs} +1 -1
  286. package/components/{scatter-plot-positioning.config-BKqPHMrS.js → scatter-plot-positioning.config-DMZuAjXU.js} +1 -1
  287. package/components/{scatter-plot-positioning.config-D7uFFBVZ.cjs → scatter-plot-positioning.config-vR2_9XYh.cjs} +1 -1
  288. package/components/{set-locale-s-1X7Jce.js → set-locale-B9greCq4.js} +4 -4
  289. package/components/{set-locale-Bgz1WNGE.cjs → set-locale-BkbSlaQk.cjs} +1 -1
  290. package/components/{slicer-filter-positioning.config-D1kR4xly.cjs → slicer-filter-positioning.config-Byf9Q8gT.cjs} +1 -1
  291. package/components/{slicer-filter-positioning.config-Gl9jhO_G.js → slicer-filter-positioning.config-CzzuCQDP.js} +1 -1
  292. package/components/slot-menu/index.cjs +1 -1
  293. package/components/slot-menu/index.js +1 -1
  294. package/components/{slot-menu-Dw53Y-iu.js → slot-menu-BAtOYWxs.js} +3 -3
  295. package/components/{slot-menu-CAhxaK5-.cjs → slot-menu-C_iIcdDw.cjs} +1 -1
  296. package/components/slot-menu-list/index.cjs +1 -1
  297. package/components/slot-menu-list/index.js +1 -1
  298. package/components/{slot-menu-list-5NsRo9XD.js → slot-menu-list-DoRLtT2d.js} +1 -1
  299. package/components/{slot-menu-list-CUsmYkiV.cjs → slot-menu-list-K4_pghrC.cjs} +1 -1
  300. package/components/{speedometer-chart-positioning.config-fa90zZdb.cjs → speedometer-chart-positioning.config-DfnWIx7U.cjs} +1 -1
  301. package/components/{speedometer-chart-positioning.config-VBLrLNmO.js → speedometer-chart-positioning.config-DsCodDVP.js} +1 -1
  302. package/components/{spike-map-positioning.config-DrxdeFsj.cjs → spike-map-positioning.config-DPbVWLF7.cjs} +1 -1
  303. package/components/{spike-map-positioning.config-oYjk3n9a.js → spike-map-positioning.config-sSSQuxIm.js} +1 -1
  304. package/components/{strip-plot-positioning.config-lMn33cM4.js → strip-plot-positioning.config-C01KV7Er.js} +1 -1
  305. package/components/{strip-plot-positioning.config-Bx_fqmEj.cjs → strip-plot-positioning.config-Czz4B-U5.cjs} +1 -1
  306. package/components/{sunburst-chart-positioning.config-C-We-zZF.js → sunburst-chart-positioning.config-C4u-zAIV.js} +1 -1
  307. package/components/{sunburst-chart-positioning.config-D-GRWmyF.cjs → sunburst-chart-positioning.config-g8eXAhP4.cjs} +1 -1
  308. package/components/{symbol-map-positioning.config-B0sLlLzK.cjs → symbol-map-positioning.config-Be2wvwUD.cjs} +1 -1
  309. package/components/{symbol-map-positioning.config-_TJSfpVj.js → symbol-map-positioning.config-CRZwvQS5.js} +1 -1
  310. package/components/{treemap-chart-positioning.config-CO05Gv7X.cjs → treemap-chart-positioning.config-CvMw2lMe.cjs} +1 -1
  311. package/components/{treemap-chart-positioning.config-DAdvoS2I.js → treemap-chart-positioning.config-Dq1nuvca.js} +1 -1
  312. package/components/utils/base.cjs +1 -1
  313. package/components/utils/base.js +2 -2
  314. package/components/{utils-CGJh0jrq.cjs → utils-Bkykodi1.cjs} +1 -1
  315. package/components/{utils-Dk4dM9xv.js → utils-C3-82TMs.js} +1 -1
  316. package/components/utils.cjs +1 -1
  317. package/components/utils.js +2 -2
  318. package/components/{venn-diagram-positioning.config-DKXWVaUI.cjs → venn-diagram-positioning.config-CJbmXy8r.cjs} +1 -1
  319. package/components/{venn-diagram-positioning.config-DUwmPQ1A.js → venn-diagram-positioning.config-DoYvs8k_.js} +1 -1
  320. package/components/{wordcloud-chart-positioning.config-CgbB_SI0.cjs → wordcloud-chart-positioning.config-BYz4mqOF.cjs} +1 -1
  321. package/components/{wordcloud-chart-positioning.config-qK5_CF7v.js → wordcloud-chart-positioning.config-C5gc4v7C.js} +1 -1
  322. package/custom-elements.json +180 -5
  323. package/package.json +1 -1
  324. package/react/components/ai-chat.component.ts +5 -2
  325. package/react/esm/components/ai-chat.component.d.ts +3 -1
  326. package/react/esm/components/ai-chat.component.js +3 -1
  327. package/react/luzmo-stub.d.ts +1 -0
  328. package/react/package.json +2 -2
  329. package/standalone/chunks/{add-to-dashboard-BrWieRxp.js → add-to-dashboard-BitIAbse.js} +1 -1
  330. package/standalone/chunks/{base-CLcNr-fQ.js → base-DetXzglI.js} +1 -1
  331. package/standalone/chunks/de-DasXCtPF.js +2 -0
  332. package/standalone/chunks/{display-settings-binning-B_lKObyP.js → display-settings-binning-D7udCQZB.js} +1 -1
  333. package/standalone/chunks/{display-settings-datetime-CTmJyEOX.js → display-settings-datetime-DoDqA4cJ.js} +1 -1
  334. package/standalone/chunks/{display-settings-grand-totals-IjcbBoyZ.js → display-settings-grand-totals-LZT2gYJu.js} +1 -1
  335. package/standalone/chunks/{display-settings-numeric-D9hvRtfN.js → display-settings-numeric-7Vq_f1D0.js} +1 -1
  336. package/standalone/chunks/{display-settings-period-over-period-Dnstsyqe.js → display-settings-period-over-period-CBjYIyKC.js} +1 -1
  337. package/standalone/chunks/es-cQV58zLc.js +2 -0
  338. package/standalone/chunks/{filters-CBmZhipt.js → filters-CF1JZIC1.js} +1 -1
  339. package/standalone/chunks/{formula-codemirror-D2F6Aj2h.js → formula-codemirror-DSKNnuLg.js} +1 -1
  340. package/standalone/chunks/fr-DzRE2NaZ.js +2 -0
  341. package/standalone/chunks/{item-option-action-button-group-BZyiRTfe.js → item-option-action-button-group-CM3q7mFJ.js} +1 -1
  342. package/standalone/chunks/{item-option-base-Bk5qxdcQ.js → item-option-base-BoBGd2zN.js} +1 -1
  343. package/standalone/chunks/{item-option-color-palette-picker-O8kT0i8p.js → item-option-color-palette-picker-BTGLKRU6.js} +1 -1
  344. package/standalone/chunks/{item-option-color-picker-CUTCc_yN.js → item-option-color-picker-WIaAaoWa.js} +1 -1
  345. package/standalone/chunks/{item-option-color-range-DsKPvjLj.js → item-option-color-range-DP8KXyD7.js} +1 -1
  346. package/standalone/chunks/{item-option-guidelines-CZyvhgtN.js → item-option-guidelines-CvvRU02d.js} +1 -1
  347. package/standalone/chunks/{item-option-multi-language-field-DlC-cCD7.js → item-option-multi-language-field-DOc_5pUa.js} +1 -1
  348. package/standalone/chunks/{item-option-number-field-BW9VpN9_.js → item-option-number-field-fj7jIBZ4.js} +1 -1
  349. package/standalone/chunks/{item-option-panel-BXA3sIYG.js → item-option-panel-C1GmQ9SW.js} +2 -2
  350. package/standalone/chunks/{item-option-picker-B2KmO7a6.js → item-option-picker-D0d0BXk7.js} +1 -1
  351. package/standalone/chunks/{item-option-position-picker-C9C9SKDD.js → item-option-position-picker-BpYLyMS7.js} +1 -1
  352. package/standalone/chunks/{item-option-positions-number-field-C2ahVlxe.js → item-option-positions-number-field-p6ghB0uD.js} +1 -1
  353. package/standalone/chunks/{item-option-radio-button-group-2q3doUXH.js → item-option-radio-button-group-DinqecBS.js} +1 -1
  354. package/standalone/chunks/{item-option-slider-C7TT3CqL.js → item-option-slider--YXct33p.js} +1 -1
  355. package/standalone/chunks/{item-option-switch-CZR2_Bs9.js → item-option-switch-BRuMJhT2.js} +1 -1
  356. package/standalone/chunks/{item-option-text-field-DBUOD_fv.js → item-option-text-field-Cvu0fi5x.js} +1 -1
  357. package/standalone/chunks/{item-slot-picker-panel-CTePASjI.js → item-slot-picker-panel-4ATGR7nP.js} +58 -62
  358. package/standalone/chunks/{load-data-fields-for-datasets-CPf_Q7p4.js → load-data-fields-for-datasets-DWys6Xqn.js} +1 -1
  359. package/standalone/chunks/{load-formula-codemirror-CA7NW4Zq.js → load-formula-codemirror-BP6dGYyV.js} +1 -1
  360. package/standalone/chunks/{localized-mixin-DN2aV3CC.js → localized-mixin-D3GVo182.js} +1 -1
  361. package/standalone/chunks/nl-Bzvdbvjs.js +2 -0
  362. package/standalone/interactive-viz-item.js +1 -1
  363. package/standalone/item-grid.js +1 -1
  364. package/standalone/manifest.json +33 -33
  365. package/types/ai-chat.types.d.ts +39 -2
  366. package/components/ai-chat-DfuJOWao.cjs +0 -338
  367. package/components/de-CjQMTFtl.cjs +0 -20
  368. package/components/display-settings-B2V_F_CU.cjs +0 -142
  369. package/components/es-DmmTP7D0.cjs +0 -20
  370. package/components/filters-C8xz8DV-.cjs +0 -199
  371. package/components/fr-DKDPLLAZ.cjs +0 -20
  372. package/components/item-grid-item-actions-menu-C3BUxZJc.cjs +0 -52
  373. package/components/item-option-guidelines-CmPaMdqb.cjs +0 -135
  374. package/components/nl-BrjaaktE.cjs +0 -20
  375. package/standalone/chunks/de-BtQ1ecN1.js +0 -2
  376. package/standalone/chunks/es-CAWreooi.js +0 -2
  377. package/standalone/chunks/fr-BG0nQk8g.js +0 -2
  378. package/standalone/chunks/nl-BXPduS2Q.js +0 -2
@@ -17,7 +17,7 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- require("./tokens-BWMfo_w4.cjs");const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-Bt25Frg1.cjs");require("./filter-value-picker-datetime-U4XWKSFx.cjs"),require("./filter-value-picker-hierarchy-1ya1_rS3.cjs"),require("./filter-value-picker-numeric-DrHdHj31.cjs");let n=require("lit"),r=require("lit/decorators.js"),i=require("@lit/localize");require("@luzmo/lucero/picker"),require("@luzmo/lucero/text-field");let a=require("@luzmo/lucero/utils");var o=`:host{flex-direction:row;min-width:0;max-width:100%;display:flex}luzmo-text-field{min-width:var(--luzmo-filter-value-picker-control-min-width,var(--filter-value-picker-control-min-width));max-width:100%}luzmo-filter-value-picker-datetime,luzmo-filter-value-picker-hierarchy,luzmo-filter-value-picker-numeric{flex:1;min-width:0;max-width:100%}:host{--filter-value-picker-control-min-width:0}`,s=class extends t.t((0,a.SizedMixin)(a.LuzmoElement,{validSizes:Object.values(a.ElementSizes)})){constructor(...e){super(...e),this.contentLanguage=`en`,this.quiet=!1,this.readonly=!1,this.disabled=!1,this._expressionsWithoutValuePicker=new Set([`? is null`,`? is not null`,`to_date`])}static get styles(){return[(0,n.unsafeCSS)(o)]}_sendChangeEvent(e){this.dispatchEvent(new CustomEvent(`luzmo-filter-value-changed`,{bubbles:!0,composed:!0,cancelable:!0,detail:{value:e}}))}setFilterValue(e){e.stopPropagation(),!(this.readonly||this.disabled)&&this._sendChangeEvent(e?.detail?.value)}renderNumericValuePicker(){return n.html`<luzmo-filter-value-picker-numeric
20
+ require("./tokens-BWMfo_w4.cjs");const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-DceE4W-d.cjs");require("./filter-value-picker-datetime-BHtjVhx1.cjs"),require("./filter-value-picker-hierarchy-CTZQfWEJ.cjs"),require("./filter-value-picker-numeric-BOY9I-y3.cjs");let n=require("lit"),r=require("lit/decorators.js"),i=require("@lit/localize");require("@luzmo/lucero/picker"),require("@luzmo/lucero/text-field");let a=require("@luzmo/lucero/utils");var o=`:host{flex-direction:row;min-width:0;max-width:100%;display:flex}luzmo-text-field{min-width:var(--luzmo-filter-value-picker-control-min-width,var(--filter-value-picker-control-min-width));max-width:100%}luzmo-filter-value-picker-datetime,luzmo-filter-value-picker-hierarchy,luzmo-filter-value-picker-numeric{flex:1;min-width:0;max-width:100%}:host{--filter-value-picker-control-min-width:0}`,s=class extends t.t((0,a.SizedMixin)(a.LuzmoElement,{validSizes:Object.values(a.ElementSizes)})){constructor(...e){super(...e),this.contentLanguage=`en`,this.quiet=!1,this.readonly=!1,this.disabled=!1,this._expressionsWithoutValuePicker=new Set([`? is null`,`? is not null`,`to_date`])}static get styles(){return[(0,n.unsafeCSS)(o)]}_sendChangeEvent(e){this.dispatchEvent(new CustomEvent(`luzmo-filter-value-changed`,{bubbles:!0,composed:!0,cancelable:!0,detail:{value:e}}))}setFilterValue(e){e.stopPropagation(),!(this.readonly||this.disabled)&&this._sendChangeEvent(e?.detail?.value)}renderNumericValuePicker(){return n.html`<luzmo-filter-value-picker-numeric
21
21
  .apiUrl=${this.apiUrl}
22
22
  .authKey=${this.authKey}
23
23
  .authToken=${this.authToken}
@@ -19,10 +19,10 @@
19
19
  * */
20
20
  import "./tokens-Ov1pCR4Y.js";
21
21
  import { t as e } from "./decorate-DyMgX_Uh.js";
22
- import { t } from "./localized-mixin-CYMFnS-n.js";
23
- import "./filter-value-picker-datetime-BAhXn1BS.js";
24
- import "./filter-value-picker-hierarchy-CUPz5Ggs.js";
25
- import "./filter-value-picker-numeric-D8mLaxzj.js";
22
+ import { t } from "./localized-mixin-BLUbrY_Z.js";
23
+ import "./filter-value-picker-datetime-hTOIBHMi.js";
24
+ import "./filter-value-picker-hierarchy-Bu1OiV4T.js";
25
+ import "./filter-value-picker-numeric-tstYPaES.js";
26
26
  import { html as n, unsafeCSS as r } from "lit";
27
27
  import { property as i } from "lit/decorators.js";
28
28
  import { msg as a } from "@lit/localize";
@@ -17,4 +17,4 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../filter-value-picker-datetime-U4XWKSFx.cjs");Object.defineProperty(exports,"LuzmoFilterValuePickerDatetime",{enumerable:!0,get:function(){return e.t}});
20
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../filter-value-picker-datetime-BHtjVhx1.cjs");Object.defineProperty(exports,"LuzmoFilterValuePickerDatetime",{enumerable:!0,get:function(){return e.t}});
@@ -17,5 +17,5 @@
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 { t as e } from "../filter-value-picker-datetime-BAhXn1BS.js";
20
+ import { t as e } from "../filter-value-picker-datetime-hTOIBHMi.js";
21
21
  export { e as LuzmoFilterValuePickerDatetime };
@@ -17,7 +17,7 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- require("./tokens-BWMfo_w4.cjs");const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-Bt25Frg1.cjs"),n=require("./periods.const-Db0nXrwr.cjs");let r=require("lit"),i=require("lit/decorators.js"),a=require("@lit/localize");require("@luzmo/lucero/number-field"),require("@luzmo/lucero/picker"),require("@luzmo/lucero/text-field");let o=require("@luzmo/lucero/utils");require("@luzmo/lucero/date-time-picker");var s=`:host{gap:var(--luzmo-filter-value-picker-datetime-gap,var(--filter-value-picker-datetime-gap));flex-flow:row;width:100%;min-width:0;max-width:100%;display:flex}luzmo-date-time-picker{--luzmo-date-time-picker-min-width:var(--luzmo-filter-value-picker-datetime-control-min-width,var(--filter-value-picker-datetime-control-min-width));flex:auto;min-width:0;max-width:100%}luzmo-number-field{flex:0 1 var(--luzmo-filter-value-picker-datetime-quantity-width,var(--filter-value-picker-datetime-quantity-width));min-width:0;max-width:100%}luzmo-picker{flex:1 1 var(--luzmo-filter-value-picker-datetime-control-min-width,var(--filter-value-picker-datetime-control-min-width));min-width:0;max-width:100%}:host{--filter-value-picker-datetime-gap:var(--luzmo-spacing-3);--filter-value-picker-datetime-control-min-width:5rem;--filter-value-picker-datetime-quantity-width:4.5rem}:host([size=s]){--filter-value-picker-datetime-gap:var(--luzmo-spacing-2)}:host([size=m]){--filter-value-picker-datetime-gap:var(--luzmo-spacing-3)}:host([size=l]){--filter-value-picker-datetime-gap:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1))}:host([size=xl]){--filter-value-picker-datetime-gap:var(--luzmo-spacing-4)}`,c=class extends t.t((0,o.SizedMixin)(o.LuzmoElement,{validSizes:Object.values(o.ElementSizes)})){constructor(...e){super(...e),this.contentLanguage=`en`,this.quiet=!1,this.readonly=!1,this.disabled=!1}static get styles(){return[(0,r.unsafeCSS)(s)]}willUpdate(e){super.willUpdate(e),e.get(`filter`)&&([`last_now`,`last_available`,`next_now`,`more_than_ago`,`or_more_ago`].includes(this.filter?.expression)?this.filter.parameters[1]={quantity:this.filter?.parameters?.[1]?.quantity??1,unit:this.filter?.parameters?.[1]?.unit??1}:[`last_completed`,`next_full`,`to_date`].includes(this.filter?.expression)?this.filter.parameters[1]={unit:this.filter?.parameters?.[1]?.unit??1}:this.filter.parameters[1]=typeof this.filter.parameters[1]==`string`?this.filter.parameters[1]:new Date().toISOString())}_sendChangeEvent(){this.filter.parameters=[{...this.filter?.parameters?.[0]},this._value],this.dispatchEvent(new CustomEvent(`luzmo-filter-value-changed`,{bubbles:!0,composed:!0,cancelable:!0,detail:{value:this._value}}))}setDate(e){this.readonly||this.disabled||(this._value=e.detail.value,this._value!==this.filter?.parameters?.[1]&&this._sendChangeEvent())}setUnit(e){if(this.readonly||this.disabled)return;let t=n.n.find(t=>t.key===e?.target?.value)?.level;this.filter?.parameters?.[1]?.unit!==t&&(this._value={unit:t??1,quantity:this.filter?.parameters?.[1]?.quantity??1},this._sendChangeEvent())}setQuantity(e){if(this.readonly||this.disabled)return;let t=e?.target?.value;this.filter?.parameters?.[1]?.quantity!==t&&(this._value={quantity:t,unit:this.filter?.parameters?.[1]?.unit??1},this._sendChangeEvent())}renderDatePicker(){let e=`second`;return this.filter?.parameters?.[0]?.lowestLevel>4&&(e=this.filter?.parameters?.[0]?.lowestLevel===5?`day`:this.filter?.parameters?.[0]?.lowestLevel===6?`hour`:this.filter?.parameters?.[0]?.lowestLevel===7?`minute`:`second`),r.html`<luzmo-date-time-picker
20
+ require("./tokens-BWMfo_w4.cjs");const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-DceE4W-d.cjs"),n=require("./periods.const-Db0nXrwr.cjs");let r=require("lit"),i=require("lit/decorators.js"),a=require("@lit/localize");require("@luzmo/lucero/number-field"),require("@luzmo/lucero/picker"),require("@luzmo/lucero/text-field");let o=require("@luzmo/lucero/utils");require("@luzmo/lucero/date-time-picker");var s=`:host{gap:var(--luzmo-filter-value-picker-datetime-gap,var(--filter-value-picker-datetime-gap));flex-flow:row;width:100%;min-width:0;max-width:100%;display:flex}luzmo-date-time-picker{--luzmo-date-time-picker-min-width:var(--luzmo-filter-value-picker-datetime-control-min-width,var(--filter-value-picker-datetime-control-min-width));flex:auto;min-width:0;max-width:100%}luzmo-number-field{flex:0 1 var(--luzmo-filter-value-picker-datetime-quantity-width,var(--filter-value-picker-datetime-quantity-width));min-width:0;max-width:100%}luzmo-picker{flex:1 1 var(--luzmo-filter-value-picker-datetime-control-min-width,var(--filter-value-picker-datetime-control-min-width));min-width:0;max-width:100%}:host{--filter-value-picker-datetime-gap:var(--luzmo-spacing-3);--filter-value-picker-datetime-control-min-width:5rem;--filter-value-picker-datetime-quantity-width:4.5rem}:host([size=s]){--filter-value-picker-datetime-gap:var(--luzmo-spacing-2)}:host([size=m]){--filter-value-picker-datetime-gap:var(--luzmo-spacing-3)}:host([size=l]){--filter-value-picker-datetime-gap:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1))}:host([size=xl]){--filter-value-picker-datetime-gap:var(--luzmo-spacing-4)}`,c=class extends t.t((0,o.SizedMixin)(o.LuzmoElement,{validSizes:Object.values(o.ElementSizes)})){constructor(...e){super(...e),this.contentLanguage=`en`,this.quiet=!1,this.readonly=!1,this.disabled=!1}static get styles(){return[(0,r.unsafeCSS)(s)]}willUpdate(e){super.willUpdate(e),e.get(`filter`)&&([`last_now`,`last_available`,`next_now`,`more_than_ago`,`or_more_ago`].includes(this.filter?.expression)?this.filter.parameters[1]={quantity:this.filter?.parameters?.[1]?.quantity??1,unit:this.filter?.parameters?.[1]?.unit??1}:[`last_completed`,`next_full`,`to_date`].includes(this.filter?.expression)?this.filter.parameters[1]={unit:this.filter?.parameters?.[1]?.unit??1}:this.filter.parameters[1]=typeof this.filter.parameters[1]==`string`?this.filter.parameters[1]:new Date().toISOString())}_sendChangeEvent(){this.filter.parameters=[{...this.filter?.parameters?.[0]},this._value],this.dispatchEvent(new CustomEvent(`luzmo-filter-value-changed`,{bubbles:!0,composed:!0,cancelable:!0,detail:{value:this._value}}))}setDate(e){this.readonly||this.disabled||(this._value=e.detail.value,this._value!==this.filter?.parameters?.[1]&&this._sendChangeEvent())}setUnit(e){if(this.readonly||this.disabled)return;let t=n.n.find(t=>t.key===e?.target?.value)?.level;this.filter?.parameters?.[1]?.unit!==t&&(this._value={unit:t??1,quantity:this.filter?.parameters?.[1]?.quantity??1},this._sendChangeEvent())}setQuantity(e){if(this.readonly||this.disabled)return;let t=e?.target?.value;this.filter?.parameters?.[1]?.quantity!==t&&(this._value={quantity:t,unit:this.filter?.parameters?.[1]?.unit??1},this._sendChangeEvent())}renderDatePicker(){let e=`second`;return this.filter?.parameters?.[0]?.lowestLevel>4&&(e=this.filter?.parameters?.[0]?.lowestLevel===5?`day`:this.filter?.parameters?.[0]?.lowestLevel===6?`hour`:this.filter?.parameters?.[0]?.lowestLevel===7?`minute`:`second`),r.html`<luzmo-date-time-picker
21
21
  aria-label=${(0,a.msg)(`Filter date`,{desc:`Aria label for filter date picker`})}
22
22
  .size=${this.size}
23
23
  .quiet=${this.quiet}
@@ -19,7 +19,7 @@
19
19
  * */
20
20
  import "./tokens-Ov1pCR4Y.js";
21
21
  import { t as e } from "./decorate-DyMgX_Uh.js";
22
- import { t } from "./localized-mixin-CYMFnS-n.js";
22
+ import { t } from "./localized-mixin-BLUbrY_Z.js";
23
23
  import { n } from "./periods.const-NCTkxnvG.js";
24
24
  import { html as r, unsafeCSS as i } from "lit";
25
25
  import { property as a } from "lit/decorators.js";
@@ -17,4 +17,4 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../filter-value-picker-hierarchy-1ya1_rS3.cjs");Object.defineProperty(exports,"LuzmoFilterValuePickerHierarchy",{enumerable:!0,get:function(){return e.t}});
20
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../filter-value-picker-hierarchy-CTZQfWEJ.cjs");Object.defineProperty(exports,"LuzmoFilterValuePickerHierarchy",{enumerable:!0,get:function(){return e.t}});
@@ -17,5 +17,5 @@
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 { t as e } from "../filter-value-picker-hierarchy-CUPz5Ggs.js";
20
+ import { t as e } from "../filter-value-picker-hierarchy-Bu1OiV4T.js";
21
21
  export { e as LuzmoFilterValuePickerHierarchy };
@@ -19,10 +19,10 @@
19
19
  * */
20
20
  import "./tokens-Ov1pCR4Y.js";
21
21
  import { t as e } from "./decorate-DyMgX_Uh.js";
22
- import { t } from "./localized-mixin-CYMFnS-n.js";
22
+ import { t } from "./localized-mixin-BLUbrY_Z.js";
23
23
  import { n } from "./data-broker-DNfq_8Lg.js";
24
24
  import { t as r } from "./localize-BT7REYBY.js";
25
- import "./utils-Dk4dM9xv.js";
25
+ import "./utils-C3-82TMs.js";
26
26
  import { html as i, unsafeCSS as a } from "lit";
27
27
  import { property as o, state as s } from "lit/decorators.js";
28
28
  import { localized as c, msg as l } from "@lit/localize";
@@ -17,7 +17,7 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- require("./tokens-BWMfo_w4.cjs");const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-Bt25Frg1.cjs"),n=require("./data-broker-Cb-Fq9xy.cjs"),r=require("./localize-D3i4Epy_.cjs");require("./utils-CGJh0jrq.cjs");let i=require("lit"),a=require("lit/decorators.js"),o=require("@lit/localize");require("@luzmo/lucero/select"),require("@luzmo/lucero/text-field");let s=require("@luzmo/lucero/utils");var c=`:host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-select,luzmo-text-field{min-width:var(--luzmo-filter-value-picker-hierarchy-control-min-width,var(--filter-value-picker-hierarchy-control-min-width));flex:auto;max-width:100%}.missing-value{color:var(--luzmo-filter-value-picker-hierarchy-missing-value-color,#767676)}:host{--filter-value-picker-hierarchy-control-min-width:0}`,l=5e3,u=class extends t.t((0,s.SizedMixin)(s.LuzmoElement,{validSizes:Object.values(s.ElementSizes)})){constructor(...e){super(...e),this.contentLanguage=`en`,this.quiet=!1,this.readonly=!1,this.disabled=!1,this._hierarchyValues=[],this._retrieving=!1,this._search=``,this._error=null,this._pending=!1,this._allValuesRetrieved=!1,this._hierarchyRequestGeneration=0,this._runningQueries=[]}static get styles(){return[(0,i.unsafeCSS)(c)]}connectedCallback(){super.connectedCallback();let e={};this.apiUrl&&(e.apiUrl=this.apiUrl),this.cacheTime&&(e.staleTime=this.cacheTime,e.gcTime=this.cacheTime*2),this.authKey&&this.authToken&&(e.authKey=this.authKey,e.authToken=this.authToken),n.n.configure(e)}willUpdate(e){if(super.willUpdate(e),e.has(`filter`)&&this.filter){let t=e.get(`filter`),n=t?.expression,r=t?.parameters?.[0],i=this.filter?.parameters?.[0],a=(r?.columnId||r?.formulaId)!==(this.filter?.parameters?.[0]?.columnId||this.filter?.parameters?.[0]?.formulaId)||r?.datasetId!==i?.datasetId;this.filter?.parameters?.[1]!==this._lastResolvedOutput&&(this._lastResolutionKey=void 0),a&&(this._hierarchyRequestGeneration++,this._pending=!1,this._retrieving=!1),a&&([`? in ?`,`? not in ?`,`? = ?`,`? != ?`].includes(this.filter?.expression)||![`? in ?`,`? not in ?`,`? = ?`,`? != ?`].includes(n))&&(this._hierarchyValues=[],this._allValuesRetrieved=!1),[`? in ?`,`? not in ?`,`? = ?`,`? != ?`].includes(this.filter.expression)&&this._hierarchyValues.length===0&&this._restoreCachedFirstPage()}}updated(e){if(super.updated(e),!e.has(`filter`)||!this.filter)return;let t=e.get(`filter`)?.expression,n=[`? = ?`,`? != ?`].includes(this.filter.expression)&&t!==void 0&&![`? in ?`,`? not in ?`,`? = ?`,`? != ?`].includes(t);n&&this._hierarchyValues.length>0?this._resolveSingleSelectValue():n&&!this._retrieving&&queueMicrotask(()=>{[`? = ?`,`? != ?`].includes(this.filter?.expression)&&this._hierarchyValues.length===0&&!this._retrieving&&this._fetchHierarchyValues(0,!0)})}_buildHierarchyQuery(e=0,t=this._search){let n=this.filter?.parameters?.[0];if(!n?.datasetId||!n.columnId&&!n.formulaId)return null;let r={column_id:n.columnId,formula_id:n.formulaId,dataset_id:n.datasetId},i={dimensions:[r],where:[],order:[{...r,order:`asc`}],limit:{by:l,offset:e}};return t&&i.where.push({expression:`? like ?`,parameters:[r,t]}),i}_getValues(e){return e&&Array.isArray(e.data)?e.data.map(e=>e[0]):[]}_applyHierarchyResult(e,t,n){let r=this._getValues(e);n||(this._allValuesRetrieved=r.length<l),this._hierarchyValues=t>0?[...this._hierarchyValues,...r]:r}_restoreCachedFirstPage(){let e=this._buildHierarchyQuery(0,``);if(!e)return!1;let t=n.n.getCachedData(e);return t?(this._applyHierarchyResult(t,0,``),this._retrieving=!1,this._error=null,!0):!1}_getMemberLabel(e){let t=r.t(e?.name,this.contentLanguage,{allowEmpty:!0});return typeof t==`string`?t:``}_findExactMember(e){return this._hierarchyValues.find(t=>String(t?.id)===e||this._getMemberLabel(t)===e)}_resolveSingleSelectValue(){if(![`? = ?`,`? != ?`].includes(this.filter?.expression)||this._hierarchyValues.length===0)return;let e=this.filter?.parameters?.[1];if(typeof e!=`string`&&typeof e!=`number`)return;let t=String(e),n=this._findExactMember(t),r=t.toLocaleLowerCase(this.contentLanguage),i=n??this._hierarchyValues.find(e=>String(e?.id).toLocaleLowerCase(this.contentLanguage).includes(r)||this._getMemberLabel(e).toLocaleLowerCase(this.contentLanguage).includes(r)),a=(n??i??this._hierarchyValues[0])?.id;if(typeof a!=`string`&&typeof a!=`number`)return;let o=this.filter.parameters[0],s=[o.datasetId,o.columnId??o.formulaId,this.filter.expression,String(e),String(a)].join(`|`);s!==this._lastResolutionKey&&(this._lastResolutionKey=s,this._lastResolvedOutput=a,this._value=a,this.filter={...this.filter,parameters:[{...this.filter.parameters[0]},a]},this._sendChangeEvent())}async _fetchHierarchyValues(e=0,t=!1){let r=this._search;if(!r&&this._allValuesRetrieved){this._retrieving=!1;return}if(e===0&&!r&&(this._restoreCachedFirstPage()||this._hierarchyValues.length>0)){this._retrieving=!1;return}if(!this.filter?.parameters?.[0]){this._retrieving=!1,this._error=`Missing column parameters`;return}let i=this.filter.parameters[0],a=i.columnId,o=i.formulaId,s=i.datasetId;if(!a&&!o){this._retrieving=!1,this._error=`Missing column id or formula id`;return}else if(!s){this._retrieving=!1,this._error=`Missing dataset id`;return}let c=this._buildHierarchyQuery(e,r);if(!c)return;let l=this._hierarchyRequestGeneration;this._pending=t,this._retrieving=!0,this._error=null;let u=new AbortController,d=new Promise((e,t)=>{n.n.fetchData(c).then(e).catch(t),u.signal.addEventListener(`abort`,()=>{console.warn(`Request aborted`),t({status:`aborted`})})}),f={promise:d,abortController:u};this._runningQueries.push(f);try{let n=await d;if(l!==this._hierarchyRequestGeneration)return;this._applyHierarchyResult(n,e,r),t&&!r&&this._resolveSingleSelectValue()}catch(e){if(l!==this._hierarchyRequestGeneration||e?.status===`aborted`)return;this._error=e instanceof Error?e.message:`Unknown error`,this._hierarchyValues=[]}finally{this._runningQueries=this._runningQueries.filter(e=>e.promise!==d),l===this._hierarchyRequestGeneration&&(this._pending=!1,this._retrieving=!1)}}_sendChangeEvent(){this.dispatchEvent(new CustomEvent(`luzmo-filter-value-changed`,{bubbles:!0,composed:!0,cancelable:!0,detail:{value:this._value}}))}setHierarchy(e){if(this.readonly||this.disabled)return;let t;t=[`? in ?`,`? not in ?`].includes(this.filter?.expression)?e?.detail?.value:[`? = ?`,`? != ?`].includes(this.filter?.expression)?e?.detail?.value?.[0]:e?.target?.value,this._value!==t&&(this._value=t,this.filter={...this.filter,parameters:[{...this.filter?.parameters?.[0]},this._value]},this._sendChangeEvent())}onScrolled(e){!this._retrieving&&!this._allValuesRetrieved&&e?.detail?.last===this._hierarchyValues.length-1&&this._fetchHierarchyValues(this._hierarchyValues.length)}renderTextField(){return i.html`<luzmo-text-field
20
+ require("./tokens-BWMfo_w4.cjs");const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-DceE4W-d.cjs"),n=require("./data-broker-Cb-Fq9xy.cjs"),r=require("./localize-D3i4Epy_.cjs");require("./utils-Bkykodi1.cjs");let i=require("lit"),a=require("lit/decorators.js"),o=require("@lit/localize");require("@luzmo/lucero/select"),require("@luzmo/lucero/text-field");let s=require("@luzmo/lucero/utils");var c=`:host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-select,luzmo-text-field{min-width:var(--luzmo-filter-value-picker-hierarchy-control-min-width,var(--filter-value-picker-hierarchy-control-min-width));flex:auto;max-width:100%}.missing-value{color:var(--luzmo-filter-value-picker-hierarchy-missing-value-color,#767676)}:host{--filter-value-picker-hierarchy-control-min-width:0}`,l=5e3,u=class extends t.t((0,s.SizedMixin)(s.LuzmoElement,{validSizes:Object.values(s.ElementSizes)})){constructor(...e){super(...e),this.contentLanguage=`en`,this.quiet=!1,this.readonly=!1,this.disabled=!1,this._hierarchyValues=[],this._retrieving=!1,this._search=``,this._error=null,this._pending=!1,this._allValuesRetrieved=!1,this._hierarchyRequestGeneration=0,this._runningQueries=[]}static get styles(){return[(0,i.unsafeCSS)(c)]}connectedCallback(){super.connectedCallback();let e={};this.apiUrl&&(e.apiUrl=this.apiUrl),this.cacheTime&&(e.staleTime=this.cacheTime,e.gcTime=this.cacheTime*2),this.authKey&&this.authToken&&(e.authKey=this.authKey,e.authToken=this.authToken),n.n.configure(e)}willUpdate(e){if(super.willUpdate(e),e.has(`filter`)&&this.filter){let t=e.get(`filter`),n=t?.expression,r=t?.parameters?.[0],i=this.filter?.parameters?.[0],a=(r?.columnId||r?.formulaId)!==(this.filter?.parameters?.[0]?.columnId||this.filter?.parameters?.[0]?.formulaId)||r?.datasetId!==i?.datasetId;this.filter?.parameters?.[1]!==this._lastResolvedOutput&&(this._lastResolutionKey=void 0),a&&(this._hierarchyRequestGeneration++,this._pending=!1,this._retrieving=!1),a&&([`? in ?`,`? not in ?`,`? = ?`,`? != ?`].includes(this.filter?.expression)||![`? in ?`,`? not in ?`,`? = ?`,`? != ?`].includes(n))&&(this._hierarchyValues=[],this._allValuesRetrieved=!1),[`? in ?`,`? not in ?`,`? = ?`,`? != ?`].includes(this.filter.expression)&&this._hierarchyValues.length===0&&this._restoreCachedFirstPage()}}updated(e){if(super.updated(e),!e.has(`filter`)||!this.filter)return;let t=e.get(`filter`)?.expression,n=[`? = ?`,`? != ?`].includes(this.filter.expression)&&t!==void 0&&![`? in ?`,`? not in ?`,`? = ?`,`? != ?`].includes(t);n&&this._hierarchyValues.length>0?this._resolveSingleSelectValue():n&&!this._retrieving&&queueMicrotask(()=>{[`? = ?`,`? != ?`].includes(this.filter?.expression)&&this._hierarchyValues.length===0&&!this._retrieving&&this._fetchHierarchyValues(0,!0)})}_buildHierarchyQuery(e=0,t=this._search){let n=this.filter?.parameters?.[0];if(!n?.datasetId||!n.columnId&&!n.formulaId)return null;let r={column_id:n.columnId,formula_id:n.formulaId,dataset_id:n.datasetId},i={dimensions:[r],where:[],order:[{...r,order:`asc`}],limit:{by:l,offset:e}};return t&&i.where.push({expression:`? like ?`,parameters:[r,t]}),i}_getValues(e){return e&&Array.isArray(e.data)?e.data.map(e=>e[0]):[]}_applyHierarchyResult(e,t,n){let r=this._getValues(e);n||(this._allValuesRetrieved=r.length<l),this._hierarchyValues=t>0?[...this._hierarchyValues,...r]:r}_restoreCachedFirstPage(){let e=this._buildHierarchyQuery(0,``);if(!e)return!1;let t=n.n.getCachedData(e);return t?(this._applyHierarchyResult(t,0,``),this._retrieving=!1,this._error=null,!0):!1}_getMemberLabel(e){let t=r.t(e?.name,this.contentLanguage,{allowEmpty:!0});return typeof t==`string`?t:``}_findExactMember(e){return this._hierarchyValues.find(t=>String(t?.id)===e||this._getMemberLabel(t)===e)}_resolveSingleSelectValue(){if(![`? = ?`,`? != ?`].includes(this.filter?.expression)||this._hierarchyValues.length===0)return;let e=this.filter?.parameters?.[1];if(typeof e!=`string`&&typeof e!=`number`)return;let t=String(e),n=this._findExactMember(t),r=t.toLocaleLowerCase(this.contentLanguage),i=n??this._hierarchyValues.find(e=>String(e?.id).toLocaleLowerCase(this.contentLanguage).includes(r)||this._getMemberLabel(e).toLocaleLowerCase(this.contentLanguage).includes(r)),a=(n??i??this._hierarchyValues[0])?.id;if(typeof a!=`string`&&typeof a!=`number`)return;let o=this.filter.parameters[0],s=[o.datasetId,o.columnId??o.formulaId,this.filter.expression,String(e),String(a)].join(`|`);s!==this._lastResolutionKey&&(this._lastResolutionKey=s,this._lastResolvedOutput=a,this._value=a,this.filter={...this.filter,parameters:[{...this.filter.parameters[0]},a]},this._sendChangeEvent())}async _fetchHierarchyValues(e=0,t=!1){let r=this._search;if(!r&&this._allValuesRetrieved){this._retrieving=!1;return}if(e===0&&!r&&(this._restoreCachedFirstPage()||this._hierarchyValues.length>0)){this._retrieving=!1;return}if(!this.filter?.parameters?.[0]){this._retrieving=!1,this._error=`Missing column parameters`;return}let i=this.filter.parameters[0],a=i.columnId,o=i.formulaId,s=i.datasetId;if(!a&&!o){this._retrieving=!1,this._error=`Missing column id or formula id`;return}else if(!s){this._retrieving=!1,this._error=`Missing dataset id`;return}let c=this._buildHierarchyQuery(e,r);if(!c)return;let l=this._hierarchyRequestGeneration;this._pending=t,this._retrieving=!0,this._error=null;let u=new AbortController,d=new Promise((e,t)=>{n.n.fetchData(c).then(e).catch(t),u.signal.addEventListener(`abort`,()=>{console.warn(`Request aborted`),t({status:`aborted`})})}),f={promise:d,abortController:u};this._runningQueries.push(f);try{let n=await d;if(l!==this._hierarchyRequestGeneration)return;this._applyHierarchyResult(n,e,r),t&&!r&&this._resolveSingleSelectValue()}catch(e){if(l!==this._hierarchyRequestGeneration||e?.status===`aborted`)return;this._error=e instanceof Error?e.message:`Unknown error`,this._hierarchyValues=[]}finally{this._runningQueries=this._runningQueries.filter(e=>e.promise!==d),l===this._hierarchyRequestGeneration&&(this._pending=!1,this._retrieving=!1)}}_sendChangeEvent(){this.dispatchEvent(new CustomEvent(`luzmo-filter-value-changed`,{bubbles:!0,composed:!0,cancelable:!0,detail:{value:this._value}}))}setHierarchy(e){if(this.readonly||this.disabled)return;let t;t=[`? in ?`,`? not in ?`].includes(this.filter?.expression)?e?.detail?.value:[`? = ?`,`? != ?`].includes(this.filter?.expression)?e?.detail?.value?.[0]:e?.target?.value,this._value!==t&&(this._value=t,this.filter={...this.filter,parameters:[{...this.filter?.parameters?.[0]},this._value]},this._sendChangeEvent())}onScrolled(e){!this._retrieving&&!this._allValuesRetrieved&&e?.detail?.last===this._hierarchyValues.length-1&&this._fetchHierarchyValues(this._hierarchyValues.length)}renderTextField(){return i.html`<luzmo-text-field
21
21
  label=${(0,o.msg)(`Filter value`,{desc:`Label for filter value text field`})}
22
22
  .size=${this.size}
23
23
  .quiet=${this.quiet}
@@ -17,4 +17,4 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../filter-value-picker-numeric-DrHdHj31.cjs");Object.defineProperty(exports,"LuzmoFilterValuePickerNumeric",{enumerable:!0,get:function(){return e.t}});
20
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../filter-value-picker-numeric-BOY9I-y3.cjs");Object.defineProperty(exports,"LuzmoFilterValuePickerNumeric",{enumerable:!0,get:function(){return e.t}});
@@ -17,5 +17,5 @@
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 { t as e } from "../filter-value-picker-numeric-D8mLaxzj.js";
20
+ import { t as e } from "../filter-value-picker-numeric-tstYPaES.js";
21
21
  export { e as LuzmoFilterValuePickerNumeric };
@@ -17,7 +17,7 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- require("./tokens-BWMfo_w4.cjs");const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-Bt25Frg1.cjs"),n=require("./data-broker-Cb-Fq9xy.cjs");let r=require("lit"),i=require("lit/decorators.js"),a=require("@lit/localize");require("@luzmo/lucero/select"),require("@luzmo/lucero/number-field");let o=require("@luzmo/lucero/utils");var s=`:host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-number-field,luzmo-select{min-width:var(--luzmo-filter-value-picker-numeric-control-min-width,var(--filter-value-picker-numeric-control-min-width));flex:auto;max-width:100%}.missing-value{opacity:.4}:host{--filter-value-picker-numeric-control-min-width:0}`,c=5e3,l=class extends t.t((0,o.SizedMixin)(o.LuzmoElement,{validSizes:Object.values(o.ElementSizes)})){constructor(...e){super(...e),this.contentLanguage=`en`,this.quiet=!1,this.readonly=!1,this.disabled=!1,this._numericValues=[],this._retrieving=!0,this._search=``,this._error=null,this._allValuesRetrieved=!1,this._runningQueries=[]}static get styles(){return[(0,r.unsafeCSS)(s)]}connectedCallback(){super.connectedCallback();let e={};this.apiUrl&&(e.apiUrl=this.apiUrl),this.cacheTime&&(e.staleTime=this.cacheTime,e.gcTime=this.cacheTime*2),this.authKey&&this.authToken&&(e.authKey=this.authKey,e.authToken=this.authToken),n.n.configure(e)}willUpdate(e){if(super.willUpdate(e),e.has(`filter`)&&this.filter){let t=e.get(`filter`)?.expression,n=this.filter?.expression;((e.get(`filter`)?.parameters?.[0]?.columnId||e.get(`filter`)?.parameters?.[0]?.formulaId)!==(this.filter?.parameters?.[0]?.columnId||this.filter?.parameters?.[0]?.formulaId)||![`? in ?`,`? not in ?`].includes(t))&&[`? in ?`,`? not in ?`].includes(n)&&(this._numericValues=[],this._allValuesRetrieved=!1,this._retrieving=!0)}}async _fetchNumericValues(e=0){if(this._allValuesRetrieved){this._retrieving=!1;return}if(!this.filter?.parameters?.[0]){this._retrieving=!1,this._error=`Missing column parameters`;return}let t=this.filter.parameters[0],r=t.columnId,i=t.formulaId,a=t.datasetId;if(!r&&!i){this._retrieving=!1,this._error=`Missing column id or formula id`;return}else if(!a){this._retrieving=!1,this._error=`Missing dataset id`;return}this._retrieving=!0,this._error=null;let o={expression:`? like ?`,parameters:[{dataset_id:a,expression:`CAST({${a}:${r??i}},hierarchy)`},this._search]},s={dimensions:[{column_id:r,formula_id:i,dataset_id:a}],where:[],order:[{column_id:r,formula_id:i,dataset_id:a,order:`asc`}],limit:{by:c,offset:e}};this._search&&!this._allValuesRetrieved&&s.where.push(o);let l=new AbortController,u=new Promise((e,t)=>{n.n.fetchData(s).then(e).catch(t),l.signal.addEventListener(`abort`,()=>{console.warn(`Request aborted`),t({status:`aborted`})})}),d={promise:u,abortController:l};this._runningQueries.push(d);try{let t=await u,n=t&&Array.isArray(t.data)?t.data.map(e=>e[0]):[];this._search||(this._allValuesRetrieved=n.length<c),this._numericValues=e>0?[...this._numericValues,...n]:n}catch(e){if(e?.status===`aborted`)return;this._error=e instanceof Error?e.message:`Unknown error`,this._numericValues=[]}finally{this._runningQueries=this._runningQueries.filter(e=>e.promise!==u),this._retrieving=!1}}_sendChangeEvent(){this.dispatchEvent(new CustomEvent(`luzmo-filter-value-changed`,{bubbles:!0,composed:!0,cancelable:!0,detail:{value:this._value}}))}setValue(e){if(this.readonly||this.disabled)return;let t=[`? in ?`,`? not in ?`].includes(this.filter?.expression)?e?.detail?.value:e?.target?.value;this._value!==t&&(this._value=t,this.filter={...this.filter,parameters:[{...this.filter?.parameters?.[0]},t]},this._sendChangeEvent())}selectValue(e){if(this.readonly||this.disabled)return;let t=(e.detail?.value??``).map(e=>Number.parseFloat(e));this.filter={...this.filter,parameters:[{...this.filter?.parameters?.[0]},t]},this._value=t,this._sendChangeEvent()}onScrolled(e){!this._retrieving&&!this._allValuesRetrieved&&e?.detail?.last===this._numericValues.length-1&&this._fetchNumericValues(this._numericValues.length)}renderNumberField(){return r.html`<luzmo-number-field
20
+ require("./tokens-BWMfo_w4.cjs");const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-DceE4W-d.cjs"),n=require("./data-broker-Cb-Fq9xy.cjs");let r=require("lit"),i=require("lit/decorators.js"),a=require("@lit/localize");require("@luzmo/lucero/select"),require("@luzmo/lucero/number-field");let o=require("@luzmo/lucero/utils");var s=`:host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-number-field,luzmo-select{min-width:var(--luzmo-filter-value-picker-numeric-control-min-width,var(--filter-value-picker-numeric-control-min-width));flex:auto;max-width:100%}.missing-value{opacity:.4}:host{--filter-value-picker-numeric-control-min-width:0}`,c=5e3,l=class extends t.t((0,o.SizedMixin)(o.LuzmoElement,{validSizes:Object.values(o.ElementSizes)})){constructor(...e){super(...e),this.contentLanguage=`en`,this.quiet=!1,this.readonly=!1,this.disabled=!1,this._numericValues=[],this._retrieving=!0,this._search=``,this._error=null,this._allValuesRetrieved=!1,this._runningQueries=[]}static get styles(){return[(0,r.unsafeCSS)(s)]}connectedCallback(){super.connectedCallback();let e={};this.apiUrl&&(e.apiUrl=this.apiUrl),this.cacheTime&&(e.staleTime=this.cacheTime,e.gcTime=this.cacheTime*2),this.authKey&&this.authToken&&(e.authKey=this.authKey,e.authToken=this.authToken),n.n.configure(e)}willUpdate(e){if(super.willUpdate(e),e.has(`filter`)&&this.filter){let t=e.get(`filter`)?.expression,n=this.filter?.expression;((e.get(`filter`)?.parameters?.[0]?.columnId||e.get(`filter`)?.parameters?.[0]?.formulaId)!==(this.filter?.parameters?.[0]?.columnId||this.filter?.parameters?.[0]?.formulaId)||![`? in ?`,`? not in ?`].includes(t))&&[`? in ?`,`? not in ?`].includes(n)&&(this._numericValues=[],this._allValuesRetrieved=!1,this._retrieving=!0)}}async _fetchNumericValues(e=0){if(this._allValuesRetrieved){this._retrieving=!1;return}if(!this.filter?.parameters?.[0]){this._retrieving=!1,this._error=`Missing column parameters`;return}let t=this.filter.parameters[0],r=t.columnId,i=t.formulaId,a=t.datasetId;if(!r&&!i){this._retrieving=!1,this._error=`Missing column id or formula id`;return}else if(!a){this._retrieving=!1,this._error=`Missing dataset id`;return}this._retrieving=!0,this._error=null;let o={expression:`? like ?`,parameters:[{dataset_id:a,expression:`CAST({${a}:${r??i}},hierarchy)`},this._search]},s={dimensions:[{column_id:r,formula_id:i,dataset_id:a}],where:[],order:[{column_id:r,formula_id:i,dataset_id:a,order:`asc`}],limit:{by:c,offset:e}};this._search&&!this._allValuesRetrieved&&s.where.push(o);let l=new AbortController,u=new Promise((e,t)=>{n.n.fetchData(s).then(e).catch(t),l.signal.addEventListener(`abort`,()=>{console.warn(`Request aborted`),t({status:`aborted`})})}),d={promise:u,abortController:l};this._runningQueries.push(d);try{let t=await u,n=t&&Array.isArray(t.data)?t.data.map(e=>e[0]):[];this._search||(this._allValuesRetrieved=n.length<c),this._numericValues=e>0?[...this._numericValues,...n]:n}catch(e){if(e?.status===`aborted`)return;this._error=e instanceof Error?e.message:`Unknown error`,this._numericValues=[]}finally{this._runningQueries=this._runningQueries.filter(e=>e.promise!==u),this._retrieving=!1}}_sendChangeEvent(){this.dispatchEvent(new CustomEvent(`luzmo-filter-value-changed`,{bubbles:!0,composed:!0,cancelable:!0,detail:{value:this._value}}))}setValue(e){if(this.readonly||this.disabled)return;let t=[`? in ?`,`? not in ?`].includes(this.filter?.expression)?e?.detail?.value:e?.target?.value;this._value!==t&&(this._value=t,this.filter={...this.filter,parameters:[{...this.filter?.parameters?.[0]},t]},this._sendChangeEvent())}selectValue(e){if(this.readonly||this.disabled)return;let t=(e.detail?.value??``).map(e=>Number.parseFloat(e));this.filter={...this.filter,parameters:[{...this.filter?.parameters?.[0]},t]},this._value=t,this._sendChangeEvent()}onScrolled(e){!this._retrieving&&!this._allValuesRetrieved&&e?.detail?.last===this._numericValues.length-1&&this._fetchNumericValues(this._numericValues.length)}renderNumberField(){return r.html`<luzmo-number-field
21
21
  label="Numeric filter value"
22
22
  grows
23
23
  .size=${this.size}
@@ -19,7 +19,7 @@
19
19
  * */
20
20
  import "./tokens-Ov1pCR4Y.js";
21
21
  import { t as e } from "./decorate-DyMgX_Uh.js";
22
- import { t } from "./localized-mixin-CYMFnS-n.js";
22
+ import { t } from "./localized-mixin-BLUbrY_Z.js";
23
23
  import { n } from "./data-broker-DNfq_8Lg.js";
24
24
  import { html as r, unsafeCSS as i } from "lit";
25
25
  import { property as a, state as o } from "lit/decorators.js";
@@ -17,4 +17,4 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../filters-C8xz8DV-.cjs");exports.FilterUnrepresentableError=e.a,Object.defineProperty(exports,"LuzmoFilters",{enumerable:!0,get:function(){return e.t}}),exports.MAX_FILTER_NESTING_DEPTH=e.o,exports.detectFiltersFormat=e.s,exports.reverseTransformFilters=e.n,exports.toLogicalCondition=e.r,exports.transformFilters=e.i;
20
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../filters-B_43Qb_P.cjs");exports.FilterUnrepresentableError=e.a,Object.defineProperty(exports,"LuzmoFilters",{enumerable:!0,get:function(){return e.t}}),exports.MAX_FILTER_NESTING_DEPTH=e.o,exports.detectFiltersFormat=e.s,exports.reverseTransformFilters=e.n,exports.toLogicalCondition=e.r,exports.transformFilters=e.i;
@@ -17,5 +17,5 @@
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 { a as e, i as t, n, o as r, r as i, s as a, t as o } from "../filters-Byy8HE19.js";
20
+ import { a as e, i as t, n, o as r, r as i, s as a, t as o } from "../filters-ESeCEQPQ.js";
21
21
  export { e as FilterUnrepresentableError, o as LuzmoFilters, r as MAX_FILTER_NESTING_DEPTH, a as detectFiltersFormat, n as reverseTransformFilters, i as toLogicalCondition, t as transformFilters };
@@ -0,0 +1,199 @@
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
+ require("./tokens-BWMfo_w4.cjs");const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-DceE4W-d.cjs"),n=require("./data-broker-Cb-Fq9xy.cjs"),r=require("./type-check-BehV9ZL1.cjs"),i=require("./v4-Dyp-SQ1c.cjs"),a=require("./filter-item-DnYGrUzZ.cjs");let o=require("@luzmo/icons");require("@luzmo/lucero/action-button"),require("@luzmo/lucero/button"),require("@luzmo/lucero/icon"),require("@luzmo/lucero/tooltip");let s=require("lit"),c=require("lit/decorators.js"),l=require("@lit/localize"),u=require("lit/directives/repeat.js");require("@luzmo/lucero/progress-circle");let d=require("@luzmo/lucero/utils");var ee=20,f=class extends Error{constructor(e){super(e),this.name=`FilterUnrepresentableError`}},te=new Set([`and`,`or`]),p=[`datasetId`,`dataset_id`,`columnId`,`column_id`,`formulaId`,`formula_id`,`formula`,`columnExpression`,`value`,`ignoredItemIds`];function m(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function h(e){return!m(e)||e.condition!==void 0&&(typeof e.condition!=`string`||!te.has(e.condition.toLowerCase()))?!1:`filters`in e||`subGroups`in e}function g(e){return m(e)&&`expression`in e&&!(`condition`in e)}function _(e){return p.some(t=>t in e)}function ne(e,t=!1){let n=[e.columnId!==void 0||e.column_id!==void 0,e.formulaId!==void 0||e.formula_id!==void 0,e.formula!==void 0].filter(Boolean).length;return n===1?!0:n>1?!1:e.columnExpression!==void 0||t&&e.expression!==void 0}function v(e){return!g(e)||typeof e.expression!=`string`||e.expression.length===0||`parameters`in e||typeof e.datasetId!=`string`&&typeof e.dataset_id!=`string`?!1:ne(e)}function y(e){return!g(e)||!Array.isArray(e.parameters)?!1:!_(e)}function re(e){if(!(`parameters`in e))return;let t=p.find(t=>t in e);if(t!==void 0)throw new f(`Filter leaf mixes "parameters" with the clean inline key "${t}".`)}function b(e){throw typeof e.expression!=`string`||e.expression.length===0?new f(`Clean filter leaf is missing a non-empty "expression".`):typeof e.datasetId!=`string`&&typeof e.dataset_id!=`string`?new f(`Clean filter leaf "${e.expression}" is missing a "datasetId".`):new f(`Clean filter leaf "${e.expression}" must name exactly one of "columnId", "formulaId", "formula", or "columnExpression".`)}function x(e){return e===`where`||e===`having`}function S(e){if(e>20)throw new f(`Filter nesting exceeds the maximum depth of 20.`)}function ie(e){if(e==null)return`empty`;if(!Array.isArray(e))return`unknown`;if(e.length===0)return`empty`;let t=!1,n=!1,r=!1,i=(e,a)=>{if(a>20){r=!0;return}if(h(e)){x(e.clause)&&(n=!0);let t=[...Array.isArray(e.filters)?e.filters:[],...Array.isArray(e.subGroups)?e.subGroups:[]];for(let e of t)i(e,a+1);return}if(g(e)){`parameters`in e&&_(e)?r=!0:v(e)?n=!0:y(e)?t=!0:r=!0;return}r=!0};for(let t of e)i(t,1);return r?`unknown`:n&&t?`mixed`:n?`clean`:t?`canonical`:`empty`}var C=new Set([`? is null`,`? is not null`]),w=new Set([`? = ?`,`? != ?`,`? < ?`,`? <= ?`,`? > ?`,`? >= ?`]),ae=new Set([`? in ?`,`? not in ?`,`? between ?`]),oe={"array[numeric]":`numeric[]`,"array[hierarchy]":`hierarchy[]`,"array[datetime]":`datetime[]`},T=new Set([`level`,`lowestLevel`,`unnest`,`discretization`,`aggregation`,`index`,`include_nonoccurring`,`simplification`]);function E(e,t){return e!==`lowestLevel`&&!(t===null&&T.has(e))}function D(e){return structuredClone(e)}function O(e){let t=e.datasetId??e.dataset_id;if(typeof t!=`string`||t.length===0)throw new f(`Filter reference is missing a "datasetId".`);return t}function k(e){return m(e)?typeof e.columnId==`string`||typeof e.column_id==`string`||typeof e.formulaId==`string`||typeof e.formula_id==`string`||typeof e.formula==`string`||(typeof e.datasetId==`string`||typeof e.dataset_id==`string`)&&(e.columnExpression!==void 0||e.expression!==void 0):!1}function A(e){let t={type:e.type};return e.bins!==void 0&&(t.bins=e.bins),Array.isArray(e.over)&&(t.over=e.over.map(e=>L(e))),t}function j(e){let t={type:e.type},n=e.datasetId??e.dataset_id,r=e.columnId??e.column_id;return n!==void 0&&(t.datasetId=n),r!==void 0&&(t.columnId=r),e.level!==void 0&&E(`level`,e.level)&&(t.level=e.level),m(e.discretization)&&(t.discretization=A(e.discretization)),e.unnest!==void 0&&E(`unnest`,e.unnest)&&(t.unnest=e.unnest),t}function M(e){let t={type:e.type};return e.bins!==void 0&&(t.bins=e.bins),Array.isArray(e.over)&&(t.over=e.over.map(e=>m(e)?I(e):e)),t}function N(e){let t={type:e.type},n=e.datasetId??e.dataset_id,r=e.columnId??e.column_id;return n!==void 0&&(t.datasetId=n),r!==void 0&&(t.columnId=r),e.level!==void 0&&(t.level=e.level),m(e.discretization)&&(t.discretization=M(e.discretization)),e.unnest!==void 0&&(t.unnest=e.unnest),t}function P(e,t){e.level!==void 0&&(t.level=D(e.level)),m(e.discretization)&&(t.discretization=M(e.discretization)),m(e.aggregation)&&(t.aggregation=N(e.aggregation)),e.unnest!==void 0&&(t.unnest=D(e.unnest))}function F(e,t){let n=e.columnId??e.column_id;if(n!==void 0)return{kind:`columnId`,value:n};let r=e.formulaId??e.formula_id;if(r!==void 0)return{kind:`formulaId`,value:r};if(e.formula!==void 0)return{kind:`formula`,value:e.formula};let i=e.columnExpression??(t?e.expression:void 0);if(i!==void 0)return{kind:`expression`,value:i}}function I(e,t=!0){let n={datasetId:O(e)},r=F(e,t);return r!==void 0&&(r.kind===`expression`?n.expression=r.value:n[r.kind]=r.value),P(e,n),n}function L(e){if(!m(e))throw new f(`Cannot emit a clean filter reference.`);let t={datasetId:O(e)};e.level!==void 0&&E(`level`,e.level)&&(t.level=e.level),m(e.discretization)&&(t.discretization=A(e.discretization)),m(e.aggregation)&&(t.aggregation=j(e.aggregation)),e.unnest!==void 0&&E(`unnest`,e.unnest)&&(t.unnest=e.unnest);let n=F(e,!0);if(n===void 0)throw new f(`Cannot emit a clean filter reference: no column, formula, or expression.`);return n.kind===`expression`?t.columnExpression=n.value:t[n.kind]=n.value,t}function se(e){if(!m(e)||typeof e.parameter!=`string`||typeof e.type!=`string`)return e;let t=oe[e.type];return t===void 0?e:{...e,type:t}}function ce(e,t){return m(t)&&typeof t.parameter==`string`?!0:Array.isArray(t)?e!==`? between ?`||t.length===2:!1}function le(e,t){let n=e.expression,r=[I(e,!1)];if(!C.has(n)&&e.value!==void 0){let t=w.has(n)&&k(e.value);r.push(t?I(e.value):D(e.value))}let i={};typeof e.id==`string`&&(i.id=e.id),`ignoredItemIds`in e&&(i.ignore=D(e.ignoredItemIds)),t!==void 0&&(i.type=t);let a={expression:n,parameters:r};return Object.keys(i).length>0&&(a.properties=i),a}function ue(e){let{expression:t}=e;if(typeof t!=`string`||t.length===0)return null;let n=Array.isArray(e.parameters)?e.parameters:[];if(!m(n[0]))throw new f(`Cannot emit a clean filter reference for "${t}".`);let r={...L(n[0]),expression:t};if(!C.has(t)){let e=n[1];if(e===void 0)throw new f(`Filter "${t}" is missing its value operand.`);if(r.value=k(e)&&w.has(t)?L(e):se(D(e)),ae.has(t)&&!ce(t,r.value))throw new f(`Cannot emit an invalid clean filter value for "${t}".`)}let{properties:i}=e;return i?.id!==void 0&&(r.id=i.id),i!==void 0&&`ignore`in i&&(r.ignoredItemIds=D(i.ignore)),r}function R(e){return h(e)}function z(e){return Array.isArray(e.filters)?e.filters:[]}function B(e,t){return e.properties?.type===`having`||e.properties?.type===`where`?e.properties.type:t??`where`}function V(e,t,n=1,r=new Set){S(n);let i=e.clause??t;for(let t of z(e))R(t)?V(t,i,n+1,r):typeof t.expression==`string`&&t.expression.length>0&&r.add(B(t,i));return r}function H(e,t,n=1){S(n);let r=e.clause??t;if(e.condition===`or`&&V(e,r,n).size>1)throw new f(`An "or" group mixes "where" and "having" filters, which clean output cannot represent.`);for(let t of z(e))R(t)&&H(t,r,n+1)}function U(e,t,n,r=1){S(r);let i=e.clause??n,a=[];for(let n of z(e)){if(R(n)){let e=U(n,t,i,r+1);e.filters.length>0&&a.push(e);continue}if(B(n,i)!==t)continue;let e=ue(n);e&&a.push(e)}let o={condition:e.condition===`or`?`or`:`and`,filters:a};return e.id!==void 0&&V(e,i,r).size<=1&&(o.id=e.id),o}function de(e){let t=e.clause;H(e,t);let n=V(e,t);return n.size===0&&n.add(t??`where`),[`where`,`having`].filter(e=>n.has(e)).map(n=>({...U(e,n,t),clause:n})).filter(e=>e.filters.length>0)}var fe=[`origin`,`datasetId`,`vizId`,`itemId`,`isDrilldown`,`type`];function W(e){return typeof e==`string`&&e.toLowerCase()===`or`?`or`:`and`}function pe(e){return h(e)}function me(e){if(!Array.isArray(e)||e.length===0)return[];let t=m(e[0])?e[0]:void 0,n=e.length>1?e[1]:void 0;return e.length>1?[t,n]:[t]}function he(e){if(typeof e.expression!=`string`||e.expression.length===0)return null;let t={expression:e.expression,parameters:me(e.parameters)};return e.properties!==void 0&&Object.keys(e.properties).length>0&&(t.properties=structuredClone(e.properties)),t}function G(e,t){let n=e,r=t;for(let e of fe)n[e]!==void 0&&(r[e]=n[e])}function K(e){if(!e||!e.filters)return{condition:`and`,filters:[],subGroups:[]};let t=[],n=[];for(let r of e.filters)if(pe(r))n.push(K(r));else{let e=he(r);e&&t.push(e)}let r={condition:W(e.condition),filters:t,subGroups:n};return e.id!==void 0&&(r.id=e.id),G(e,r),r}function q(e,t){return e?t?.format===`clean`?de(e):[K(e)]:[]}function ge(e,t){let n={expression:typeof e.expression==`string`?e.expression:void 0,parameters:Array.isArray(e.parameters)?[...e.parameters]:[]},r=m(e.properties)?structuredClone(e.properties):{};return t!==void 0&&r.type===void 0&&(r.type=t),Object.keys(r).length>0&&(n.properties=r),n}function _e(e,t,n){if(h(e))return J(e,t,n);if(!m(e))return;let r=e.expression;if(re(e),v(e))return le(e,t);if(_(e)&&b(e),y(e))return ge(e,t);throw new f(`Filter leaf "${String(r)}" matches neither a complete clean nor a complete canonical encoding.`)}function J(e,t,n){S(n);let r=x(e.clause)?e.clause:void 0,i=r??t,a=[];for(let t of Array.isArray(e.filters)?e.filters:[]){let e=_e(t,i,n+1);e!==void 0&&a.push(e)}for(let t of Array.isArray(e.subGroups)?e.subGroups:[])h(t)&&a.push(J(t,i,n+1));let o={condition:W(e.condition),filters:a};return typeof e.id==`string`&&(o.id=e.id),r!==void 0&&(o.clause=r),G(e,o),o}function Y(e){return!e||e.length===0?[]:e.filter(e=>h(e)).map(e=>J(e,void 0,1))}var ve=`:host{font-family:var(--luzmo-filters-font-family,var(--luzmo-font-family));color:var(--luzmo-filters-font-color,var(--luzmo-font-color));max-width:100%;display:block;container-type:inline-size}.filter-group-container{max-width:100%;padding:calc(var(--luzmo-indicator-gap) + 2 * var(--luzmo-indicator-width));overflow-x:hidden}.filter-group{flex-direction:row;min-width:0;max-width:100%;display:flex}.filter-group.nested{margin-top:var(--luzmo-filters-nested-group-margin-top,var(--filters-nested-group-margin-top));margin-bottom:var(--luzmo-filters-nested-group-margin-bottom,var(--filters-nested-group-margin-bottom))}.group-content{flex-direction:column;flex:1;min-width:0;display:flex}.filters-list{gap:var(--luzmo-filters-filters-list-gap,var(--filters-filters-list-gap));flex-direction:column;min-width:0;max-width:100%;display:flex}.filter-item-wrapper{align-items:flex-start;min-width:0;max-width:100%;display:flex;position:relative}.filter-item-content{align-items:flex-start;gap:var(--luzmo-filters-filter-line-gap,var(--filters-filter-line-gap));flex-wrap:nowrap;flex:1;min-width:0;display:flex}.filter-item-content luzmo-filter-item{flex:1;min-width:0}.filter-item-content .delete-filter-button{flex-shrink:0;align-self:flex-end;margin-inline-start:auto}.condition-wrapper{flex:0 0 var(--luzmo-filters-condition-warpper-width,var(--filters-condition-warpper-width));justify-content:center;align-items:center;display:flex;position:relative}.condition-wrapper:before{content:"";left:50%;top:var(--luzmo-filters-vertical-line-top,var(--filters-vertical-line-top));bottom:var(--luzmo-filters-vertical-line-bottom,var(--filters-vertical-line-bottom));width:var(--luzmo-filters-vertical-line-width,var(--filters-vertical-line-width));background:var(--luzmo-filters-vertical-line-color,var(--luzmo-border-color));position:absolute}.condition-badge{min-width:auto;padding-inline:var(--luzmo-filters-condition-padding-horizontal,var(--filters-condition-padding-horizontal));font-weight:var(--luzmo-filters-condition-font-weight,var(--filters-condition-font-weight-emphasized));text-transform:uppercase;background:var(--luzmo-filters-condition-badge-background,var(--luzmo-primary));color:var(--luzmo-filters-condition-badge-color,var(--luzmo-primary-inverse-color));border-radius:var(--luzmo-filters-condition-badge-border-radius,var(--luzmo-border-radius));box-shadow:0 0 0 var(--luzmo-filters-condition-badge-halo,var(--filters-condition-badge-halo)) var(--luzmo-filters-condition-badge-background,var(--luzmo-background-color))}.condition-badge:hover{background:var(--luzmo-filters-condition-badge-background-hover,var(--luzmo-primary-hover))}.group-actions{margin-top:var(--luzmo-filters-group-actions-margin-top,var(--filters-group-actions-margin-top));gap:var(--luzmo-filters-group-actions-gap,var(--filters-group-actions-gap));flex-wrap:wrap;display:flex}.delete-group-button{margin-left:auto}.add-root-group-container{margin-top:var(--luzmo-filters-add-root-group-container-margin-top,var(--filters-add-root-group-container-margin-top));padding-left:0}.add-subgroup-button,.add-filter-button{--luzmo-action-button-text-to-visual:var(--luzmo-filters-group-actions-text-to-visual,var(--filters-group-actions-text-to-visual));--luzmo-action-button-content-color-default:var(--luzmo-filters-group-actions-color,var(--luzmo-primary-hover));--luzmo-action-button-content-color-hover:var(--luzmo-filters-group-actions-color-hover,var(--luzmo-primary-hover));--luzmo-action-button-content-color-down:var(--luzmo-filters-group-actions-color-down,var(--luzmo-primary-down));--luzmo-action-button-content-color-focus:var(--luzmo-filters-group-actions-color-focus,var(--luzmo-primary-focus))}.add-group-button{--luzmo-button-padding-label-to-icon:var(--luzmo-filters-add-group-button-text-to-visual,var(--filters-add-group-button-text-to-visual))}.dataset-ids-empty-message{color:var(--luzmo-filters-error-message-color,var(--luzmo-disabled-color));font-size:var(--luzmo-filters-error-message-font-size,var(--filters-font-size))}@container (width<=480px){.condition-badge{--luzmo-action-button-font-size:.6875rem;--luzmo-action-button-height:1.2rem;--luzmo-button-line-height:1.2rem;font-size:.6875rem;line-height:1.2rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-90deg)}:host([dir=rtl]) .condition-badge{transform:translate(-50%,-50%)rotate(90deg)}}.filters-loading{min-height:var(--filters-progress-circle-size);align-items:center;display:inline-flex}.filters-loading luzmo-progress-circle{--luzmo-progress-circle-size:var(--filters-progress-circle-size)}.filters-text,.filters-outline{font-size:var(--luzmo-filters-text-font-size,var(--filters-text-font-size));line-height:1.5}.filters-outline{--filters-outline-sentence-padding-block:calc((var(--filters-outline-row-min-height) - 1lh) / 2)}luzmo-filter-item[display=text]{--luzmo-filter-item-column-badge-color:var(--luzmo-filters-column-badge-color);--luzmo-filter-item-column-badge-font-color:var(--luzmo-filters-column-badge-font-color);--luzmo-filter-item-text-font-size:var(--luzmo-filters-text-font-size,var(--filters-text-font-size));--luzmo-filter-item-text-expression-color:var(--luzmo-filters-expression-color,var(--filters-expression-color));--luzmo-filter-item-text-expression-font-weight:var(--luzmo-filters-expression-font-weight,var(--filters-expression-font-weight))}.filters-text luzmo-filter-item[display=text],.filters-text-group luzmo-filter-item[display=text]{--luzmo-filter-item-text-icon-gap:var(--luzmo-filters-text-icon-gap,var(--filters-text-icon-gap))}.outline-sentence>luzmo-filter-item[display=text]{--luzmo-filter-item-text-icon-gap:var(--luzmo-filters-text-part-gap,var(--filters-text-part-gap))}.filters-text{white-space:pre-wrap;word-break:break-word}.filters-text .filters-text-condition{margin-inline-start:0;margin-inline-end:0}.filters-text-condition,.filters-text-paren{vertical-align:middle}.filters-text-condition{color:var(--luzmo-filters-condition-color,var(--filters-condition-color));font-weight:var(--luzmo-filters-condition-font-weight,var(--filters-condition-font-weight))}.outline-group{gap:var(--luzmo-spacing-1);flex-direction:column;min-width:0;display:flex}.outline-children>.outline-group:not(:first-child){margin-top:calc(var(--luzmo-spacing-1) + var(--filters-outline-sentence-padding-block) + var(--filters-outline-join-spacing) - var(--luzmo-spacing-2))}.outline-condition{color:var(--luzmo-filters-condition-color,var(--filters-condition-color));font-size:var(--luzmo-filters-outline-condition-font-size,var(--filters-outline-condition-font-size));font-weight:var(--luzmo-filters-condition-font-weight,var(--filters-condition-font-weight-emphasized));letter-spacing:.04em}.outline-children{gap:var(--luzmo-spacing-2);min-width:0;flex-direction:column;margin-inline-start:var(--luzmo-filters-outline-children-margin-inline-start,var(--filters-outline-children-margin-inline-start));padding-inline-start:var(--luzmo-filters-outline-children-padding-inline-start,var(--filters-outline-children-padding-inline-start));display:flex;position:relative}.outline-children:not(.outline-children--single):before{content:"";inset-block:var(--luzmo-filters-outline-bracket-inset,var(--filters-outline-bracket-inset));width:var(--luzmo-spacing-2);border-inline-start:1px solid var(--luzmo-border-color);border-block-start:1px solid var(--luzmo-border-color);border-block-end:1px solid var(--luzmo-border-color);position:absolute}.outline-children:not(.outline-children--single):not(:-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):before{border-top-left-radius:var(--luzmo-border-radius);border-bottom-left-radius:var(--luzmo-border-radius);left:0}.outline-children:not(.outline-children--single):not(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi))):before{border-top-left-radius:var(--luzmo-border-radius);border-bottom-left-radius:var(--luzmo-border-radius);left:0}.outline-children:not(.outline-children--single):-webkit-any(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):before{border-top-right-radius:var(--luzmo-border-radius);border-bottom-right-radius:var(--luzmo-border-radius);right:0}.outline-children:not(.outline-children--single):is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)):before{border-top-right-radius:var(--luzmo-border-radius);border-bottom-right-radius:var(--luzmo-border-radius);right:0}.outline-children--single{margin-inline-start:0;padding-inline-start:0}.outline-row{align-items:flex-start;column-gap:var(--luzmo-spacing-2);min-width:0;min-height:var(--filters-outline-row-min-height);flex-wrap:nowrap;display:flex}.outline-sentence{align-items:center;gap:var(--luzmo-filters-text-part-gap,var(--filters-text-part-gap));min-width:0;padding-block:var(--filters-outline-sentence-padding-block);flex-wrap:wrap;flex:auto;display:flex}.outline-delete{flex:none;align-self:flex-end;margin-inline-start:auto}:host{--filters-condition-warpper-width:56px;--filters-condition-padding-horizontal:var(--luzmo-spacing-2);--filters-condition-badge-halo:var(--luzmo-spacing-3);--filters-filters-list-gap:var(--luzmo-spacing-3);--filters-nested-group-margin-top:var(--luzmo-spacing-3);--filters-nested-group-margin-bottom:var(--luzmo-spacing-3);--filters-vertical-line-top:var(--luzmo-spacing-2);--filters-vertical-line-bottom:var(--luzmo-spacing-2);--filters-vertical-line-width:1px;--filters-group-actions-text-to-visual:var(--luzmo-spacing-2);--filters-add-group-button-text-to-visual:var(--luzmo-spacing-3);--filters-group-actions-gap:var(--luzmo-spacing-3);--filters-add-root-group-container-margin-top:var(--luzmo-spacing-4);--filters-filter-line-gap:var(--luzmo-spacing-3);--filters-group-actions-margin-top:var(--luzmo-spacing-3);--filters-error-message-font-size:var(--luzmo-font-size);--filters-text-font-size:var(--luzmo-font-size-m);--filters-outline-row-min-height:var(--luzmo-component-height);--filters-progress-circle-size:var(--luzmo-component-height);--filters-text-part-gap:var(--luzmo-spacing-2);--filters-text-icon-gap:var(--luzmo-spacing-1);--filters-outline-children-margin-inline-start:var(--luzmo-spacing-2);--filters-outline-children-padding-inline-start:var(--luzmo-spacing-3);--filters-outline-bracket-inset:var(--luzmo-spacing-2);--filters-outline-join-spacing:var(--luzmo-spacing-2);--filters-expression-color:var(--luzmo-filters-font-color,var(--luzmo-font-color));--filters-expression-font-weight:var(--luzmo-font-weight);--filters-condition-color:var(--luzmo-filters-font-color,var(--luzmo-font-color));--filters-condition-font-weight:var(--luzmo-font-weight);--filters-condition-font-weight-emphasized:var(--luzmo-font-weight-bold);--filters-outline-condition-font-size:var(--luzmo-font-size-s)}:host([size=s]){--filters-condition-warpper-width:48px;--filters-condition-padding-horizontal:var(--luzmo-spacing-2);--filters-condition-badge-halo:var(--luzmo-spacing-2);--filters-filters-list-gap:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--filters-nested-group-margin-top:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--filters-nested-group-margin-bottom:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--filters-vertical-line-top:var(--luzmo-spacing-2);--filters-vertical-line-bottom:var(--luzmo-spacing-2);--filters-group-actions-text-to-visual:var(--luzmo-spacing-1);--filters-add-group-button-text-to-visual:var(--luzmo-spacing-2);--filters-group-actions-gap:var(--luzmo-spacing-2);--filters-add-root-group-container-margin-top:var(--luzmo-spacing-3);--filters-filter-line-gap:var(--luzmo-spacing-2);--filters-group-actions-margin-top:var(--luzmo-spacing-2);--filters-error-message-font-size:var(--luzmo-font-size-s);--filters-text-font-size:var(--luzmo-font-size-s);--filters-outline-row-min-height:var(--luzmo-component-height-s);--filters-progress-circle-size:var(--luzmo-component-height-s);--filters-text-part-gap:var(--luzmo-spacing-1);--filters-text-icon-gap:var(--luzmo-spacing-1);--filters-outline-children-margin-inline-start:var(--luzmo-spacing-1);--filters-outline-children-padding-inline-start:var(--luzmo-spacing-3);--filters-outline-bracket-inset:var(--luzmo-spacing-1);--filters-outline-join-spacing:var(--luzmo-spacing-1);--filters-outline-condition-font-size:var(--luzmo-font-size-xs)}:host([size=l]){--filters-condition-warpper-width:64px;--filters-condition-padding-horizontal:var(--luzmo-spacing-3);--filters-condition-badge-halo:var(--luzmo-spacing-4);--filters-filters-list-gap:var(--luzmo-spacing-4);--filters-nested-group-margin-top:var(--luzmo-spacing-4);--filters-nested-group-margin-bottom:var(--luzmo-spacing-4);--filters-vertical-line-top:var(--luzmo-spacing-3);--filters-vertical-line-bottom:var(--luzmo-spacing-3);--filters-group-actions-text-to-visual:var(--luzmo-spacing-2);--filters-add-group-button-text-to-visual:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--filters-group-actions-gap:var(--luzmo-spacing-3);--filters-add-root-group-container-margin-top:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--filters-filter-line-gap:var(--luzmo-spacing-3);--filters-group-actions-margin-top:var(--luzmo-spacing-3);--filters-error-message-font-size:var(--luzmo-font-size-l);--filters-text-font-size:var(--luzmo-font-size-l);--filters-outline-row-min-height:var(--luzmo-component-height-l);--filters-progress-circle-size:var(--luzmo-component-height-l);--filters-text-part-gap:var(--luzmo-spacing-3);--filters-text-icon-gap:var(--luzmo-spacing-2);--filters-outline-children-margin-inline-start:var(--luzmo-spacing-3);--filters-outline-children-padding-inline-start:var(--luzmo-spacing-4);--filters-outline-bracket-inset:var(--luzmo-spacing-2);--filters-outline-join-spacing:var(--luzmo-spacing-3);--filters-outline-condition-font-size:var(--luzmo-font-size-m)}:host([size=xl]){--filters-condition-warpper-width:72px;--filters-condition-padding-horizontal:var(--luzmo-spacing-3);--filters-condition-badge-halo:var(--luzmo-spacing-4);--filters-filters-list-gap:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--filters-nested-group-margin-top:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--filters-nested-group-margin-bottom:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--filters-vertical-line-top:var(--luzmo-spacing-3);--filters-vertical-line-bottom:var(--luzmo-spacing-3);--filters-group-actions-text-to-visual:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--filters-add-group-button-text-to-visual:var(--luzmo-spacing-4);--filters-group-actions-gap:var(--luzmo-spacing-4);--filters-add-root-group-container-margin-top:var(--luzmo-spacing-5);--filters-filter-line-gap:var(--luzmo-spacing-4);--filters-group-actions-margin-top:var(--luzmo-spacing-4);--filters-error-message-font-size:var(--luzmo-font-size-xl);--filters-text-font-size:var(--luzmo-font-size-xl);--filters-outline-row-min-height:var(--luzmo-component-height-xl);--filters-progress-circle-size:var(--luzmo-component-height-xl);--filters-text-part-gap:var(--luzmo-spacing-4);--filters-text-icon-gap:var(--luzmo-spacing-2);--filters-outline-children-margin-inline-start:var(--luzmo-spacing-4);--filters-outline-children-padding-inline-start:var(--luzmo-spacing-5);--filters-outline-bracket-inset:var(--luzmo-spacing-3);--filters-outline-join-spacing:var(--luzmo-spacing-3);--filters-outline-condition-font-size:var(--luzmo-font-size-l)}@container (width<=480px){.filter-group-container{--filters-condition-warpper-width:32px;--filters-condition-padding-horizontal:var(--luzmo-spacing-2);--filters-condition-badge-halo:var(--luzmo-spacing-2);--filters-filters-list-gap:var(--luzmo-spacing-5)}}`;function X(e){if(e instanceof f)return e;throw e}var Z={and:()=>(0,l.msg)(`AND`,{desc:`Logical AND condition for combining filters`}),or:()=>(0,l.msg)(`OR`,{desc:`Logical OR condition for combining filters`})};function Q(e){return e===`and`?`or`:`and`}var $=class extends t.t((0,d.SizedMixin)(d.LuzmoElement,{validSizes:Object.values(d.ElementSizes)})){constructor(...e){super(...e),this.apiUrl=`https://api.luzmo.com`,this.contentLanguage=`en`,this.filters=[],this.format=`canonical`,this.display=`rich`,this.columnDisplay=`text`,this.quiet=!1,this.readonly=!1,this.allowParameters=!1,this.parameters=[],this.debounce=300,this._internalFilterGroup=null,this._datasets=[],this._datasetsLoading=!1,this._hierarchyLabels=new Map,this._hierarchyLabelsLoading=!1,this._hasSyntheticRoot=!1,this._datasetRequest=0,this._hierarchyRequest=0,this._debounceTimeout=null}static get styles(){return[(0,s.unsafeCSS)(ve)]}get _oneSizeSmaller(){return{xxs:`xxs`,xs:`xs`,s:`xs`,m:`s`,l:`m`,xl:`l`,xxl:`xl`}[this.size]||`s`}get _isDatasetIdsEmpty(){return!this.datasetIds||this.datasetIds.length===0}connectedCallback(){super.connectedCallback(),this.hasUpdated&&this.display!==`rich`&&this._loadDatasetsForDisplay()}disconnectedCallback(){super.disconnectedCallback(),this._datasetRequest+=1,this._hierarchyRequest+=1,this._debounceTimeout&&=(clearTimeout(this._debounceTimeout),null)}willUpdate(e){if(super.willUpdate(e),e.has(`filters`))try{let e=Y(this.filters);e.length===0?(this._internalFilterGroup=null,this._hasSyntheticRoot=!1):e.length===1?(this._internalFilterGroup=structuredClone(e[0]),this._hasSyntheticRoot=!1):(this._internalFilterGroup={condition:`and`,filters:structuredClone(e)},this._hasSyntheticRoot=!0)}catch(t){console.warn(`[${this.localName}] Keeping the current filters, the new value cannot be normalized:`,X(t)),this.filters=e.get(`filters`)??[]}this.display!==`rich`&&(e.has(`display`)||e.has(`datasetIds`)||e.has(`authKey`)||e.has(`authToken`)||e.has(`apiUrl`)||e.has(`cacheTime`))&&this._loadDatasetsForDisplay(),this.display!==`rich`&&(e.has(`filters`)||e.has(`display`)||e.has(`contentLanguage`))&&this._loadHierarchyLabelsForDisplay()}async _loadDatasetsForDisplay(){let e=++this._datasetRequest;if(!this.datasetIds||this.datasetIds.length===0){this._datasets=[],this._datasetsLoading=!1,this._loadHierarchyLabelsForDisplay();return}let{valid:t,invalid:i}=r.c(this.datasetIds);if(i.length>0&&console.warn(`[${this.localName}] Invalid dataset IDs provided (not valid UUIDs): ${i.join(`, `)}. These will be skipped.`),t.length===0){this._datasets=[],this._datasetsLoading=!1,this._loadHierarchyLabelsForDisplay();return}this._datasetsLoading=!0,this._configureDataBroker();try{let r=await n.n.fetchDatasetsWithColumnsAndFormulas(t);if(!this.isConnected||e!==this._datasetRequest)return;this._datasets=r}catch(t){if(!this.isConnected||e!==this._datasetRequest)return;console.error(`[${this.localName}] Error fetching dataset columns & formulas:`,t),this._datasets=[]}finally{this.isConnected&&e===this._datasetRequest&&(this._datasetsLoading=!1,this._loadHierarchyLabelsForDisplay())}}_configureDataBroker(){let e={authKey:this.authKey||``,authToken:this.authToken||``};this.apiUrl&&(e.apiUrl=this.apiUrl),this.cacheTime&&(e.staleTime=this.cacheTime,e.gcTime=this.cacheTime*2),n.n.configure(e)}async _loadHierarchyLabelsForDisplay(){let e=++this._hierarchyRequest;if(this.display===`rich`||!this._internalFilterGroup){if(!this.isConnected||e!==this._hierarchyRequest)return;this._hierarchyLabels=new Map,this._hierarchyLabelsLoading=!1;return}let t=a.n(this._internalFilterGroup,this._filterTextContext());if(t.length===0){if(!this.isConnected||e!==this._hierarchyRequest)return;this._hierarchyLabels=new Map,this._hierarchyLabelsLoading=!1;return}this._hierarchyLabelsLoading=!0,this._configureDataBroker();try{let n=await a.i(t,this.contentLanguage);if(!this.isConnected||e!==this._hierarchyRequest)return;this._hierarchyLabels=n}catch(t){if(!this.isConnected||e!==this._hierarchyRequest)return;console.error(`[${this.localName}] Error fetching hierarchy member names:`,t)}finally{this.isConnected&&e===this._hierarchyRequest&&(this._hierarchyLabelsLoading=!1)}}_filterTextContext(){return{datasets:this._datasets,contentLanguage:this.contentLanguage,timeZone:this.timeZone,hierarchyLabels:this._hierarchyLabels,hierarchyLabelsLoading:this._hierarchyLabelsLoading}}_generateEmptyGroup(){return{id:i.t(),condition:`and`,filters:[]}}_generateEmptyFilter(){return{expression:void 0,parameters:[],properties:{id:i.t()}}}_rootGroupsForExport(){if(!this._internalFilterGroup)return[];let e=this._internalFilterGroup.filters.length>0&&this._internalFilterGroup.filters.every(e=>this._isGroup(e));return this._hasSyntheticRoot&&e?structuredClone(this._internalFilterGroup.filters):[structuredClone(this._internalFilterGroup)]}_getFiltersForExport(){let e=this._rootGroupsForExport(),t=this.format===`clean`?`clean`:`canonical`;if(e.length===0)return{filters:[],format:t};if(t===`clean`)try{return{filters:e.flatMap(e=>q(e,{format:`clean`})),format:`clean`}}catch(e){console.warn(`[${this.localName}] Cannot emit clean filters, falling back to canonical output:`,X(e))}return{filters:e.flatMap(e=>q(e)),format:`canonical`}}_sendChangeEvent(){this._debounceTimeout&&clearTimeout(this._debounceTimeout);let e=()=>{this.dispatchEvent(new CustomEvent(`luzmo-filters-changed`,{bubbles:!0,composed:!0,cancelable:!0,detail:this._getFiltersForExport()}))};this.debounce>0?this._debounceTimeout=setTimeout(e,this.debounce):e()}_isGroup(e){return`condition`in e&&`filters`in e}_handleParameterCreated(e){let t=e.detail?.parameter;this.readonly||!t||this.parameters.some(({parameter:e})=>e===t.parameter)||(this.parameters=[...this.parameters,t])}_toggleCondition(e){this.readonly||(e.condition=Q(e.condition),e===this._internalFilterGroup&&(this._hasSyntheticRoot=!1),this.requestUpdate(),this._sendChangeEvent())}_addFilter(e){if(this.readonly||this._isDatasetIdsEmpty)return;let t=e;t||=(this._internalFilterGroup||=this._generateEmptyGroup(),this._internalFilterGroup),t.filters.push(this._generateEmptyFilter()),this.requestUpdate(),this._sendChangeEvent()}_addSubGroup(e){if(this.readonly||this._isDatasetIdsEmpty)return;let t=this._generateEmptyGroup();t.condition=Q(e.condition),t.filters.push(this._generateEmptyFilter()),e.filters.push(t),this.requestUpdate(),this._sendChangeEvent()}_removeFilter(e,t){if(!(this.readonly||!this._internalFilterGroup)){if(e.filters.splice(t,1),e!==this._internalFilterGroup&&e.filters.length===0){let t=this._findParentGroup(this._internalFilterGroup,e);if(t){let n=t.filters.indexOf(e);n!==-1&&t.filters.splice(n,1)}}this._collapseGroupsAfterDelete(),this.requestUpdate(),this._sendChangeEvent()}}_updateFilter(e,t,n){n.stopPropagation(),!this.readonly&&(this._isGroup(e.filters[t])||(e.filters[t]=n.detail.filter,this._sendChangeEvent()))}_addGroup(){if(this.readonly||this._isDatasetIdsEmpty)return;this._internalFilterGroup||=this._generateEmptyGroup();let e=this._generateEmptyGroup();e.condition=Q(this._internalFilterGroup.condition),e.filters.push(this._internalFilterGroup);let t=this._generateEmptyGroup();t.condition=Q(e.condition),t.filters.push(this._generateEmptyFilter()),e.filters.push(t),this._internalFilterGroup=e,this._hasSyntheticRoot=!1,this.requestUpdate(),this._sendChangeEvent()}_renderFilterItem(e,t,n){return s.html`
21
+ <div class="filter-item-wrapper">
22
+ <div class="filter-item-content">
23
+ <luzmo-filter-item
24
+ .apiUrl=${this.apiUrl}
25
+ .authKey=${this.authKey}
26
+ .authToken=${this.authToken}
27
+ .cacheTime=${this.cacheTime}
28
+ .language=${this.language}
29
+ .contentLanguage=${this.contentLanguage}
30
+ .timeZone=${this.timeZone}
31
+ .datasetIds=${this.datasetIds}
32
+ .filter=${e}
33
+ .allowParameters=${this.allowParameters}
34
+ .parameters=${this.parameters}
35
+ .size=${this.size}
36
+ .quiet=${this.quiet}
37
+ .readonly=${this.readonly}
38
+ @luzmo-filter-changed=${this._updateFilter.bind(this,t,n)}
39
+ @luzmo-parameter-created=${this._handleParameterCreated}
40
+ ></luzmo-filter-item>
41
+ <luzmo-action-button
42
+ class="delete-filter-button"
43
+ .size=${this.size}
44
+ quiet
45
+ aria-disabled=${this.readonly?`true`:s.nothing}
46
+ .label=${(0,l.msg)(`Remove filter`,{desc:`Aria label for remove filter button`})}
47
+ @click=${this._removeFilter.bind(this,t,n)}
48
+ >
49
+ <luzmo-icon slot="icon" .icon=${o.luzmoTrashOutline} .size=${this.size}></luzmo-icon>
50
+ </luzmo-action-button>
51
+ </div>
52
+ </div>
53
+ `}_renderGroup(e,t=!1){let n=e.filters.length>0,r=e.filters.length>1,i=Z[e.condition]?.()??e.condition;return s.html`
54
+ <div class="filter-group ${t?`nested`:``}" role="group">
55
+ ${t?s.html`
56
+ <div class="condition-wrapper">
57
+ ${r?s.html`
58
+ <luzmo-action-button
59
+ class="condition-badge"
60
+ .size=${this._oneSizeSmaller}
61
+ quiet
62
+ aria-disabled=${this.readonly?`true`:s.nothing}
63
+ aria-pressed=${e.condition===`and`?`true`:`false`}
64
+ .label=${(0,l.msg)(`Toggle filter condition, currently `,{desc:`Aria label prefix for filter condition toggle`})+i}
65
+ @click=${this._toggleCondition.bind(this,e)}
66
+ >
67
+ ${i}
68
+ </luzmo-action-button>
69
+ `:``}
70
+ </div>
71
+ `:r?s.html`
72
+ <div class="condition-wrapper">
73
+ <luzmo-action-button
74
+ class="condition-badge"
75
+ .size=${this._oneSizeSmaller}
76
+ quiet
77
+ aria-disabled=${this.readonly?`true`:s.nothing}
78
+ aria-pressed=${e.condition===`and`?`true`:`false`}
79
+ .label=${(0,l.msg)(`Toggle filter condition, currently `,{desc:`Aria label prefix for filter condition toggle`})+i}
80
+ @click=${this._toggleCondition.bind(this,e)}
81
+ >
82
+ ${i}
83
+ </luzmo-action-button>
84
+ </div>
85
+ `:``}
86
+ <div class="group-content">
87
+ ${n?s.html`
88
+ <div class="filters-list">
89
+ ${(0,u.repeat)(e.filters,(e,t)=>t,(t,n)=>s.html`
90
+ ${this._isGroup(t)?this._renderGroup(t,!0):this._renderFilterItem(t,e,n)}
91
+ `)}
92
+ </div>
93
+ `:``}
94
+
95
+ <div class="group-actions">
96
+ <luzmo-action-button
97
+ class="add-filter-button"
98
+ .size=${this.size}
99
+ quiet
100
+ aria-disabled=${this.readonly?`true`:s.nothing}
101
+ ?disabled=${this._isDatasetIdsEmpty}
102
+ @click=${this._addFilter.bind(this,e)}
103
+ >
104
+ <luzmo-icon slot="icon" .icon=${o.luzmoPlus} .size=${this._oneSizeSmaller}></luzmo-icon>
105
+ ${(0,l.msg)(`Filter`,{desc:`Add filter button label`})}
106
+ </luzmo-action-button>
107
+
108
+ <luzmo-action-button
109
+ class="add-subgroup-button"
110
+ .size=${this.size}
111
+ quiet
112
+ aria-disabled=${this.readonly?`true`:s.nothing}
113
+ ?disabled=${this._isDatasetIdsEmpty}
114
+ @click=${this._addSubGroup.bind(this,e)}
115
+ >
116
+ <luzmo-icon slot="icon" .icon=${o.luzmoPlus} .size=${this._oneSizeSmaller}></luzmo-icon>
117
+ ${(0,l.msg)(`Subgroup`,{desc:`Add subgroup button label`})}
118
+ </luzmo-action-button>
119
+ </div>
120
+ </div>
121
+ </div>
122
+ `}_findParentGroup(e,t){for(let n of e.filters){if(n===t)return e;if(this._isGroup(n)){let e=this._findParentGroup(n,t);if(e)return e}}return null}_collapseIfNeeded(e){if(e.filters.length===1&&this._isGroup(e.filters[0])){let t=e.filters[0];e.condition=t.condition,e.filters=t.filters,e.id=t.id,e.clause=t.clause,e.origin=t.origin,e.datasetId=t.datasetId,e.vizId=t.vizId,e.itemId=t.itemId,e.isDrilldown=t.isDrilldown,e.type=t.type,e===this._internalFilterGroup&&(this._hasSyntheticRoot=!1)}}_collapseGroupsAfterDelete(){if(!this._internalFilterGroup)return;let e=t=>{for(let n of t.filters)this._isGroup(n)&&e(n);this._collapseIfNeeded(t)};e(this._internalFilterGroup)}_renderTextLeaf(e){return a.r(e,this._filterTextContext())?s.html`<luzmo-filter-item
123
+ class="filters-text-leaf"
124
+ display="text"
125
+ .columnDisplay=${this.columnDisplay}
126
+ .filter=${e}
127
+ .textContext=${this._filterTextContext()}
128
+ .language=${this.language}
129
+ .contentLanguage=${this.contentLanguage}
130
+ .timeZone=${this.timeZone}
131
+ .size=${this.size}
132
+ readonly
133
+ ></luzmo-filter-item>`:s.nothing}_renderTextGroup(e,t){let n=[];for(let t of e.filters){let e=this._isGroup(t)?this._renderTextGroup(t,!1):this._renderTextLeaf(t);e!==s.nothing&&n.push(e)}if(n.length===0)return s.nothing;if(n.length===1)return n[0];let r=s.html`<span class="filters-text-condition">${Z[e.condition]()}</span>`,i=e.condition===`or`?(0,l.msg)(l.str`${a.a[0]}\u2063 ${a.a[1]}\u2063 ${a.a[2]}`,{id:`filters-sentence-or`,desc:`Left filter sentence, logical OR condition, and right filter sentence`}):(0,l.msg)(l.str`${a.a[0]}\u2063 ${a.a[1]}\u2063 ${a.a[2]}`,{id:`filters-sentence-and`,desc:`Left filter sentence, logical AND condition, and right filter sentence`}),o=n.slice(1).reduce((e,t)=>a.o(i,[s.html`${e}`,r,t]),[n[0]]);return t?s.html`${o}`:s.html`<span class="filters-text-group"
134
+ >${a.o((0,l.msg)(l.str`(${a.a[0]})`,{id:`filters-sentence-parentheses`,desc:`Nested filter sentence wrapped in parentheses`}),[s.html`${o}`]).map(e=>typeof e==`string`?s.html`<span class="filters-text-paren">${e}</span>`:e)}</span
135
+ >`}_renderDatasetLoading(){return s.html`<div class="filters-loading" role="status">
136
+ <luzmo-progress-circle indeterminate .label=${(0,l.msg)(`Loading filters`,{desc:`Accessible label while filter column names are loading`})} .size=${this.size}></luzmo-progress-circle>
137
+ </div>`}_renderTextDisplay(){return s.html`<span class="filters-text" part="filters-text"
138
+ >${this._internalFilterGroup?this._renderTextGroup(this._internalFilterGroup,!0):s.nothing}</span
139
+ >`}_deleteOutlineFilter(e,t){this.readonly||this.display!==`outline`||this._removeFilter(e,t)}_renderOutlineRow(e,t,n){let r=this._renderTextLeaf(e);if(r===s.nothing)return s.nothing;let i=(0,l.msg)(`Remove filter`,{desc:`Aria label for remove filter button`});return s.html`<div class="outline-row" part="filters-outline-row">
140
+ <span class="outline-sentence">${r}</span>
141
+ ${this.readonly?s.nothing:s.html`<luzmo-action-button
142
+ class="delete-filter-button outline-delete"
143
+ .size=${this.size}
144
+ quiet
145
+ .label=${i}
146
+ @click=${()=>this._deleteOutlineFilter(t,n)}
147
+ >
148
+ <luzmo-icon slot="icon" .icon=${o.luzmoTrashOutline} .size=${this.size}></luzmo-icon>
149
+ </luzmo-action-button>`}
150
+ </div>`}_renderOutlineGroup(e,t=!0){let n=e.filters.some(e=>this._isGroup(e)),r=e.filters.length>1&&!(t&&!n&&e.condition===`and`),i=Z[e.condition]?.()??e.condition;return s.html`<div class="outline-group" role=${r?`group`:s.nothing} aria-label=${r?i:s.nothing}>
151
+ ${r?s.html`<div class="outline-condition">${i}</div>`:s.nothing}
152
+ <div class=${r?`outline-children`:`outline-children outline-children--single`}>
153
+ ${e.filters.map((t,n)=>this._isGroup(t)?this._renderOutlineGroup(t,!1):this._renderOutlineRow(t,e,n))}
154
+ </div>
155
+ </div>`}_renderOutlineDisplay(){return s.html`<div class="filters-outline" part="filters-outline">
156
+ ${this._internalFilterGroup?this._renderOutlineGroup(this._internalFilterGroup):s.nothing}
157
+ </div>`}render(){if(this.display===`text`||this.display===`outline`)return this._datasetsLoading&&this._datasets.length===0?this._renderDatasetLoading():this.display===`text`?this._renderTextDisplay():this._renderOutlineDisplay();if(this._isDatasetIdsEmpty)return s.html`
158
+ <div class="filter-group-container">
159
+ <div class="dataset-ids-empty-message" role="status">
160
+ ${(0,l.msg)(`Cannot retrieve dataset data fields`,{desc:`Error message when datasetIds is empty`})}
161
+ </div>
162
+ </div>
163
+ `;if(!this._internalFilterGroup||this._internalFilterGroup.filters.length===0)return s.html`
164
+ <div class="filter-group-container">
165
+ <luzmo-button
166
+ class="add-filter-button"
167
+ .size=${this.size}
168
+ treatment="outline"
169
+ ?quiet=${this.quiet}
170
+ aria-disabled=${this.readonly?`true`:s.nothing}
171
+ ?disabled=${this._isDatasetIdsEmpty}
172
+ @click=${()=>this._addFilter()}
173
+ >
174
+ <luzmo-icon slot="icon" .icon=${o.luzmoPlus} .size=${this._oneSizeSmaller}></luzmo-icon>
175
+ ${(0,l.msg)(`Add filter`,{desc:`Add filter button label`})}
176
+ </luzmo-button>
177
+ </div>
178
+ `;let e=this._internalFilterGroup.filters.length>1;return s.html`
179
+ <div class="filter-group-container">
180
+ ${this._renderGroup(this._internalFilterGroup)}
181
+
182
+ ${e?s.html`
183
+ <div class="add-root-group-container">
184
+ <luzmo-button
185
+ class="add-group-button"
186
+ .size=${this.size}
187
+ treatment="outline"
188
+ ?quiet=${this.quiet}
189
+ aria-disabled=${this.readonly?`true`:s.nothing}
190
+ ?disabled=${this._isDatasetIdsEmpty}
191
+ @click=${this._addGroup}
192
+ >
193
+ <luzmo-icon slot="icon" .icon=${o.luzmoPlus} .size=${this._oneSizeSmaller}></luzmo-icon>
194
+ ${(0,l.msg)(`Group`,{desc:`Add group button label`})}
195
+ </luzmo-button>
196
+ </div>
197
+ `:``}
198
+ </div>
199
+ `}};e.t([(0,c.property)({type:String,attribute:`api-url`,reflect:!0})],$.prototype,`apiUrl`,void 0),e.t([(0,c.property)({type:String,attribute:`auth-key`,reflect:!0})],$.prototype,`authKey`,void 0),e.t([(0,c.property)({type:String,attribute:`auth-token`,reflect:!0})],$.prototype,`authToken`,void 0),e.t([(0,c.property)({type:Number,attribute:`cache-time`,reflect:!0})],$.prototype,`cacheTime`,void 0),e.t([(0,c.property)({type:String,attribute:`content-language`,reflect:!0})],$.prototype,`contentLanguage`,void 0),e.t([(0,c.property)({type:String,attribute:`time-zone`,reflect:!0})],$.prototype,`timeZone`,void 0),e.t([(0,c.property)({type:Array,attribute:`dataset-ids`,reflect:!0})],$.prototype,`datasetIds`,void 0),e.t([(0,c.property)({type:Array,reflect:!1})],$.prototype,`filters`,void 0),e.t([(0,c.property)({type:String,reflect:!0})],$.prototype,`format`,void 0),e.t([(0,c.property)({type:String,reflect:!0})],$.prototype,`display`,void 0),e.t([(0,c.property)({type:String,attribute:`column-display`,reflect:!0})],$.prototype,`columnDisplay`,void 0),e.t([(0,c.property)({type:Boolean,reflect:!0})],$.prototype,`quiet`,void 0),e.t([(0,c.property)({type:Boolean,reflect:!0})],$.prototype,`readonly`,void 0),e.t([(0,c.property)({type:Boolean,attribute:`allow-parameters`,reflect:!0})],$.prototype,`allowParameters`,void 0),e.t([(0,c.property)({attribute:!1})],$.prototype,`parameters`,void 0),e.t([(0,c.property)({type:Number,reflect:!0})],$.prototype,`debounce`,void 0),e.t([(0,c.state)()],$.prototype,`_internalFilterGroup`,void 0),e.t([(0,c.state)()],$.prototype,`_datasets`,void 0),e.t([(0,c.state)()],$.prototype,`_datasetsLoading`,void 0),e.t([(0,c.state)()],$.prototype,`_hierarchyLabels`,void 0),e.t([(0,c.state)()],$.prototype,`_hierarchyLabelsLoading`,void 0),$=e.t([(0,l.localized)()],$),customElements.get(`luzmo-filters`)||customElements.define(`luzmo-filters`,$),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return Y}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return ee}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return ie}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return $}});
@@ -19,19 +19,19 @@
19
19
  * */
20
20
  import "./tokens-Ov1pCR4Y.js";
21
21
  import { t as e } from "./decorate-DyMgX_Uh.js";
22
- import { t } from "./localized-mixin-CYMFnS-n.js";
22
+ import { t } from "./localized-mixin-BLUbrY_Z.js";
23
23
  import { n } from "./data-broker-DNfq_8Lg.js";
24
24
  import { c as r } from "./type-check-CGREdneG.js";
25
25
  import { t as i } from "./v4-DIjJgmR0.js";
26
- import { a, i as o, n as ee, o as s, r as te } from "./filter-item-D6y8eCmG.js";
26
+ import { a, i as o, n as ee, o as s, r as te } from "./filter-item-Dgh9nHGz.js";
27
27
  import { luzmoPlus as c, luzmoTrashOutline as l } from "@luzmo/icons";
28
+ import "@luzmo/lucero/action-button";
28
29
  import "@luzmo/lucero/button";
29
30
  import "@luzmo/lucero/icon";
31
+ import "@luzmo/lucero/tooltip";
30
32
  import { html as u, nothing as d, unsafeCSS as ne } from "lit";
31
33
  import { property as f, state as p } from "lit/decorators.js";
32
34
  import { localized as re, msg as m, str as h } from "@lit/localize";
33
- import "@luzmo/lucero/action-button";
34
- import "@luzmo/lucero/tooltip";
35
35
  import { repeat as ie } from "lit/directives/repeat.js";
36
36
  import "@luzmo/lucero/progress-circle";
37
37
  import { ElementSizes as ae, LuzmoElement as oe, SizedMixin as se } from "@luzmo/lucero/utils";
@@ -17,4 +17,4 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../formula-C6dPJyKm.cjs");Object.defineProperty(exports,"LuzmoFormula",{enumerable:!0,get:function(){return e.t}});
20
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../formula-CC33nJ0T.cjs");Object.defineProperty(exports,"LuzmoFormula",{enumerable:!0,get:function(){return e.t}});
@@ -17,5 +17,5 @@
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 { t as e } from "../formula-D_ipR6d1.js";
20
+ import { t as e } from "../formula--lmxX7EE.js";
21
21
  export { e as LuzmoFormula };
@@ -21,8 +21,8 @@ import "./tokens-Ov1pCR4Y.js";
21
21
  import { t as e } from "./decorate-DyMgX_Uh.js";
22
22
  import { t } from "./calculate-data-field-icon-DrSg1PuD.js";
23
23
  import { t as n } from "./localize-BT7REYBY.js";
24
- import { f as r, g as i, h as a, o, t as s } from "./formula-display-store-CfObcBCd.js";
25
- import { n as c } from "./groupings-B55Oba6e.js";
24
+ import { f as r, g as i, h as a, o, t as s } from "./formula-display-store-dxzteJ_B.js";
25
+ import { n as c } from "./groupings-14w1cCc3.js";
26
26
  import { t as l } from "./resolve-column-presentation-BaEP1mvs.js";
27
27
  import { luzmoIcon as u } from "@luzmo/icons";
28
28
  import "@luzmo/lucero/icon";
@@ -17,7 +17,7 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- require("./tokens-BWMfo_w4.cjs");const e=require("./decorate-DCJt-2rt.cjs"),t=require("./calculate-data-field-icon-DenGmW74.cjs"),n=require("./localize-D3i4Epy_.cjs"),r=require("./formula-display-store-B0ifmvCi.cjs"),i=require("./groupings-DEpTt8DV.cjs"),a=require("./resolve-column-presentation-DUETRVCH.cjs");let o=require("@luzmo/icons");require("@luzmo/lucero/icon");let s=require("lit"),c=require("lit/decorators.js"),l=require("@lit/localize");require("@luzmo/lucero/progress-circle");var u=`:host{box-sizing:border-box;font-family:var(--luzmo-font-family);color:var(--luzmo-font-color);display:inline-block}.formula-text{font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));white-space:pre-wrap;word-break:break-word;line-height:1.5}.formula-text-column{white-space:nowrap}.formula-text-column-icon{margin-inline-end:var(--luzmo-spacing-1)}.formula-pills{align-items:center;gap:var(--luzmo-spacing-1) 0;font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));flex-wrap:wrap;line-height:1.5;display:inline-flex}.formula-operator{white-space:pre-wrap}.column-pill-wrapper{vertical-align:middle;padding-inline-end:var(--luzmo-formula-column-pill-trailing-space,var(--luzmo-spacing-1));display:inline-flex}.column-pill{justify-content:center;align-items:center;gap:var(--luzmo-spacing-2);box-sizing:border-box;max-width:16rem;min-height:var(--luzmo-formula-control-height,1.375rem);padding:0 var(--luzmo-formula-column-pill-padding-inline,calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1)));border-radius:var(--luzmo-border-radius-s);background-color:var(--luzmo-formula-column-pill-background,var(--luzmo-background-color-highlight));color:var(--luzmo-font-color);white-space:nowrap;font-size:.85em;line-height:1.2;display:inline-flex}.column-pill-icon{flex:none;display:inline-flex}.column-pill-label{text-overflow:ellipsis;overflow:hidden}.column-pill-loading{--luzmo-progress-circle-size:1em;align-items:center;display:inline-flex}.agg-pill{padding-block:var(--luzmo-spacing-1);border-radius:var(--luzmo-border-radius);background-color:var(--agg-accent,var(--luzmo-primary));color:var(--luzmo-primary-inverse-color);font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));vertical-align:middle;padding-inline-start:0;padding-inline-end:0;display:inline-flex}.agg-pill-row{align-items:center;gap:var(--luzmo-spacing-1);min-height:var(--luzmo-formula-control-height,1.375rem);display:inline-flex}.agg-fn{text-transform:uppercase;padding-inline-start:var(--luzmo-spacing-3);padding-inline-end:var(--luzmo-spacing-3);font-size:.85em}.agg-value{min-height:var(--luzmo-formula-control-height,1.375rem);padding:0 var(--luzmo-spacing-2);border-radius:var(--luzmo-border-radius-s);background-color:var(--luzmo-background-color);color:var(--luzmo-font-color);--luzmo-formula-column-pill-background:transparent;--luzmo-formula-column-pill-padding-inline:0px;align-items:center;line-height:1;display:inline-flex}.agg-grouping{align-items:center;gap:var(--luzmo-spacing-1);padding-inline:var(--luzmo-spacing-2) var(--luzmo-spacing-3);font-size:var(--luzmo-formula-grouping-icon-size,var(--luzmo-icon-size-m));display:inline-flex}.agg-grouping--no-value{padding-inline-start:0}.agg-grouping-count{border-radius:var(--luzmo-border-radius-full,999rem);background:var(--luzmo-primary-inverse-color);min-width:1.25em;color:var(--agg-accent,var(--luzmo-primary));font-size:.6875rem;font-weight:var(--luzmo-font-weight-bold);justify-content:center;align-items:center;padding:0 .25em;line-height:1.4;display:inline-flex}:host{--luzmo-formula-font-size:var(--luzmo-font-size);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-m);--luzmo-formula-control-height:calc(var(--luzmo-component-height) - 2 * var(--luzmo-spacing-1))}:host([size=s]){--luzmo-formula-font-size:var(--luzmo-font-size-s);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-s);--luzmo-formula-control-height:calc(var(--luzmo-component-height-s) - 2 * var(--luzmo-spacing-1))}:host([size=l]){--luzmo-formula-font-size:var(--luzmo-font-size-l);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-l);--luzmo-formula-control-height:calc(var(--luzmo-component-height-l) - 2 * var(--luzmo-spacing-1))}:host([size=xl]){--luzmo-formula-font-size:var(--luzmo-font-size-xl);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-xl);--luzmo-formula-control-height:calc(var(--luzmo-component-height-xl) - 2 * var(--luzmo-spacing-1))}`,d,f=(d=class extends r.o{constructor(...e){super(...e),this.display=`rich`,this._groupingDataMap=i.n()}_createStore(){return new r.t}_shouldLoadInput(){return!1}_canEmitExpression(){return!1}_applyExternalExpression(){if(this.display===`text`){this._rootContent=``;return}this._store.clearWidgets(),this._rootContent=this._store.transformToAggregationWidgetSyntax(this.expression??``)}willUpdate(e){super.willUpdate(e),e.has(`display`)&&!e.has(`expression`)&&this._applyExternalExpression()}render(){return this.display===`text`?this._renderTextFormula():this._renderPillFormula()}_renderPillFormula(){return s.html`<span class="formula-pills" part="formula">${this._renderPillNodes(this._rootContent)}</span>`}_renderPillNodes(e){let t=[],n=new RegExp(r.h.source,`gm`),i=0,a;for(;(a=n.exec(e))!==null;){a.index>i&&t.push(this._renderOperatorText(e.slice(i,a.index)));let r=a[2],o=a[3];r?t.push(this._renderColumnPill(r)):o&&t.push(this._renderAggregationPill(o)),i=n.lastIndex}return i<e.length&&t.push(this._renderOperatorText(e.slice(i))),t}_renderOperatorText(e){return s.html`<span class="formula-operator">${e}</span>`}_renderColumnPill(e){let[t,n]=e.split(`:`),r=this._datasets.find(e=>e.id===t)?.columns.find(e=>e.columnId===n);if(this._store.loading&&!r){let e=(0,l.msg)(`Loading column`,{desc:`Accessible label for a column pill whose label is still loading`});return s.html`<span class="column-pill-wrapper"
20
+ require("./tokens-BWMfo_w4.cjs");const e=require("./decorate-DCJt-2rt.cjs"),t=require("./calculate-data-field-icon-DenGmW74.cjs"),n=require("./localize-D3i4Epy_.cjs"),r=require("./formula-display-store-B1qQtQbU.cjs"),i=require("./groupings-DxuknvWu.cjs"),a=require("./resolve-column-presentation-DUETRVCH.cjs");let o=require("@luzmo/icons");require("@luzmo/lucero/icon");let s=require("lit"),c=require("lit/decorators.js"),l=require("@lit/localize");require("@luzmo/lucero/progress-circle");var u=`:host{box-sizing:border-box;font-family:var(--luzmo-font-family);color:var(--luzmo-font-color);display:inline-block}.formula-text{font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));white-space:pre-wrap;word-break:break-word;line-height:1.5}.formula-text-column{white-space:nowrap}.formula-text-column-icon{margin-inline-end:var(--luzmo-spacing-1)}.formula-pills{align-items:center;gap:var(--luzmo-spacing-1) 0;font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));flex-wrap:wrap;line-height:1.5;display:inline-flex}.formula-operator{white-space:pre-wrap}.column-pill-wrapper{vertical-align:middle;padding-inline-end:var(--luzmo-formula-column-pill-trailing-space,var(--luzmo-spacing-1));display:inline-flex}.column-pill{justify-content:center;align-items:center;gap:var(--luzmo-spacing-2);box-sizing:border-box;max-width:16rem;min-height:var(--luzmo-formula-control-height,1.375rem);padding:0 var(--luzmo-formula-column-pill-padding-inline,calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1)));border-radius:var(--luzmo-border-radius-s);background-color:var(--luzmo-formula-column-pill-background,var(--luzmo-background-color-highlight));color:var(--luzmo-font-color);white-space:nowrap;font-size:.85em;line-height:1.2;display:inline-flex}.column-pill-icon{flex:none;display:inline-flex}.column-pill-label{text-overflow:ellipsis;overflow:hidden}.column-pill-loading{--luzmo-progress-circle-size:1em;align-items:center;display:inline-flex}.agg-pill{padding-block:var(--luzmo-spacing-1);border-radius:var(--luzmo-border-radius);background-color:var(--agg-accent,var(--luzmo-primary));color:var(--luzmo-primary-inverse-color);font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));vertical-align:middle;padding-inline-start:0;padding-inline-end:0;display:inline-flex}.agg-pill-row{align-items:center;gap:var(--luzmo-spacing-1);min-height:var(--luzmo-formula-control-height,1.375rem);display:inline-flex}.agg-fn{text-transform:uppercase;padding-inline-start:var(--luzmo-spacing-3);padding-inline-end:var(--luzmo-spacing-3);font-size:.85em}.agg-value{min-height:var(--luzmo-formula-control-height,1.375rem);padding:0 var(--luzmo-spacing-2);border-radius:var(--luzmo-border-radius-s);background-color:var(--luzmo-background-color);color:var(--luzmo-font-color);--luzmo-formula-column-pill-background:transparent;--luzmo-formula-column-pill-padding-inline:0px;align-items:center;line-height:1;display:inline-flex}.agg-grouping{align-items:center;gap:var(--luzmo-spacing-1);padding-inline:var(--luzmo-spacing-2) var(--luzmo-spacing-3);font-size:var(--luzmo-formula-grouping-icon-size,var(--luzmo-icon-size-m));display:inline-flex}.agg-grouping--no-value{padding-inline-start:0}.agg-grouping-count{border-radius:var(--luzmo-border-radius-full,999rem);background:var(--luzmo-primary-inverse-color);min-width:1.25em;color:var(--agg-accent,var(--luzmo-primary));font-size:.6875rem;font-weight:var(--luzmo-font-weight-bold);justify-content:center;align-items:center;padding:0 .25em;line-height:1.4;display:inline-flex}:host{--luzmo-formula-font-size:var(--luzmo-font-size);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-m);--luzmo-formula-control-height:calc(var(--luzmo-component-height) - 2 * var(--luzmo-spacing-1))}:host([size=s]){--luzmo-formula-font-size:var(--luzmo-font-size-s);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-s);--luzmo-formula-control-height:calc(var(--luzmo-component-height-s) - 2 * var(--luzmo-spacing-1))}:host([size=l]){--luzmo-formula-font-size:var(--luzmo-font-size-l);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-l);--luzmo-formula-control-height:calc(var(--luzmo-component-height-l) - 2 * var(--luzmo-spacing-1))}:host([size=xl]){--luzmo-formula-font-size:var(--luzmo-font-size-xl);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-xl);--luzmo-formula-control-height:calc(var(--luzmo-component-height-xl) - 2 * var(--luzmo-spacing-1))}`,d,f=(d=class extends r.o{constructor(...e){super(...e),this.display=`rich`,this._groupingDataMap=i.n()}_createStore(){return new r.t}_shouldLoadInput(){return!1}_canEmitExpression(){return!1}_applyExternalExpression(){if(this.display===`text`){this._rootContent=``;return}this._store.clearWidgets(),this._rootContent=this._store.transformToAggregationWidgetSyntax(this.expression??``)}willUpdate(e){super.willUpdate(e),e.has(`display`)&&!e.has(`expression`)&&this._applyExternalExpression()}render(){return this.display===`text`?this._renderTextFormula():this._renderPillFormula()}_renderPillFormula(){return s.html`<span class="formula-pills" part="formula">${this._renderPillNodes(this._rootContent)}</span>`}_renderPillNodes(e){let t=[],n=new RegExp(r.h.source,`gm`),i=0,a;for(;(a=n.exec(e))!==null;){a.index>i&&t.push(this._renderOperatorText(e.slice(i,a.index)));let r=a[2],o=a[3];r?t.push(this._renderColumnPill(r)):o&&t.push(this._renderAggregationPill(o)),i=n.lastIndex}return i<e.length&&t.push(this._renderOperatorText(e.slice(i))),t}_renderOperatorText(e){return s.html`<span class="formula-operator">${e}</span>`}_renderColumnPill(e){let[t,n]=e.split(`:`),r=this._datasets.find(e=>e.id===t)?.columns.find(e=>e.columnId===n);if(this._store.loading&&!r){let e=(0,l.msg)(`Loading column`,{desc:`Accessible label for a column pill whose label is still loading`});return s.html`<span class="column-pill-wrapper"
21
21
  ><span class="column-pill" title=${e}
22
22
  ><span class="column-pill-loading">
23
23
  <luzmo-progress-circle indeterminate size="s" .label=${e}></luzmo-progress-circle></span