@luzmo/analytics-components-kit 1.0.3 → 1.0.4-beta.1

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 (678) hide show
  1. package/components/ai-chat/ai-chat-events.d.ts +123 -0
  2. package/components/ai-chat/ai-chat-request.d.ts +11 -0
  3. package/components/ai-chat/ai-chat.d.ts +279 -0
  4. package/components/ai-chat/ai-prompt-types.d.ts +94 -0
  5. package/components/ai-chat/empty-state/ai-chat-empty-state.d.ts +46 -0
  6. package/components/ai-chat/empty-state/index.d.ts +8 -0
  7. package/components/ai-chat/empty-state/types.d.ts +14 -0
  8. package/components/ai-chat/index.cjs +20 -0
  9. package/components/ai-chat/index.d.ts +20 -0
  10. package/components/ai-chat/index.js +28 -0
  11. package/components/ai-chat/session/ai-chat-session-controller.d.ts +51 -0
  12. package/components/ai-chat/session/ai-chat-session-types.d.ts +88 -0
  13. package/components/ai-chat/session/ai-chat-session.d.ts +91 -0
  14. package/components/ai-chat/session/index.d.ts +2 -0
  15. package/components/ai-chat/stream/chunk-extractors.d.ts +27 -0
  16. package/components/ai-chat/stream/index.d.ts +52 -0
  17. package/components/ai-chat/stream/progress.d.ts +3 -0
  18. package/components/ai-chat/stream/registry.d.ts +6 -0
  19. package/components/ai-chat/stream/stream-processor.d.ts +2 -0
  20. package/components/ai-chat/stream/transport.d.ts +26 -0
  21. package/components/ai-chat/stream/types.d.ts +55 -0
  22. package/components/ai-chat-BMDfKnEj.cjs +258 -0
  23. package/components/ai-chat-Cd26aDpX.js +3718 -0
  24. package/components/ai-interaction-textarea/ai-interaction-textarea.d.ts +135 -0
  25. package/components/ai-interaction-textarea/index.cjs +20 -0
  26. package/components/ai-interaction-textarea/index.d.ts +8 -0
  27. package/components/ai-interaction-textarea/index.js +28 -0
  28. package/components/ai-interaction-textarea/types.d.ts +5 -0
  29. package/components/ai-interaction-textarea-CPfJqTB0.cjs +68 -0
  30. package/components/ai-interaction-textarea-DkBglh6Q.js +299 -0
  31. package/components/{area-chart-options.config-CU6FV2Zl.js → area-chart-options.config-4OY_kXkB.js} +1 -1
  32. package/components/{area-chart-positioning.config-DRyIQjFn.js → area-chart-positioning.config-CAPrtEZW.js} +1 -1
  33. package/components/{area-chart-positioning.config-Y_6E7SvI.cjs → area-chart-positioning.config-CfC43YUW.cjs} +1 -1
  34. package/components/{area-chart-slots.config-DPuSQAQa.js → area-chart-slots.config--pd_dBTn.js} +1 -1
  35. package/components/{bar-chart-options.config-NGKHlChC.js → bar-chart-options.config-C3puwFpi.js} +1 -1
  36. package/components/{bar-chart-positioning.config-qTk0gXbd.js → bar-chart-positioning.config-C1MLYyl9.js} +1 -1
  37. package/components/{bar-chart-positioning.config-DXS8KSTz.cjs → bar-chart-positioning.config-vJOALpQP.cjs} +1 -1
  38. package/components/{bar-chart-slots.config-C6CGWcGz.js → bar-chart-slots.config-Dr7v4xxd.js} +1 -1
  39. package/components/{base-DoCXVulO.js → base-B_wdCOxV.js} +3 -2
  40. package/components/base-kQ6cjcIZ.cjs +20 -0
  41. package/components/{box-plot-options.config-Bh9txvcB.js → box-plot-options.config-B486nCds.js} +1 -1
  42. package/components/{box-plot-positioning.config-yAg3VqZJ.js → box-plot-positioning.config-CA27sCpO.js} +1 -1
  43. package/components/{box-plot-positioning.config-NwxT5LtO.cjs → box-plot-positioning.config-DVNeh9kg.cjs} +1 -1
  44. package/components/{box-plot-slots.config-Bk8naosI.js → box-plot-slots.config-Bdb7pkky.js} +1 -1
  45. package/components/{bubble-chart-options.config-Djw_bUxZ.js → bubble-chart-options.config-BymUqNR5.js} +1 -1
  46. package/components/{bubble-chart-positioning.config-C_tWwbjm.cjs → bubble-chart-positioning.config-Dg92VJnB.cjs} +1 -1
  47. package/components/{bubble-chart-positioning.config-B2fMLimr.js → bubble-chart-positioning.config-OlbBZU4m.js} +1 -1
  48. package/components/{bubble-chart-slots.config-DR7Uz54G.js → bubble-chart-slots.config-B4tsJDuz.js} +1 -1
  49. package/components/{bullet-chart-options.config-DGmdW4q4.js → bullet-chart-options.config-BtyRdRk2.js} +1 -1
  50. package/components/{bullet-chart-positioning.config-B94J7_4d.cjs → bullet-chart-positioning.config-BwqxpSSL.cjs} +1 -1
  51. package/components/{bullet-chart-positioning.config-DmP7TvxA.js → bullet-chart-positioning.config-Y18yvzoc.js} +1 -1
  52. package/components/{bullet-chart-slots.config-DbzsDrUl.js → bullet-chart-slots.config-ccCSNJ5q.js} +1 -1
  53. package/components/{choropleth-map-options.config-zZOpXVaM.js → choropleth-map-options.config-CqCciAvW.js} +1 -1
  54. package/components/{choropleth-map-positioning.config-9MmmbjBg.js → choropleth-map-positioning.config-Dmzy3fMc.js} +1 -1
  55. package/components/{choropleth-map-positioning.config-BzsmeLhM.cjs → choropleth-map-positioning.config-y-bYMoxr.cjs} +1 -1
  56. package/components/{choropleth-map-slots.config-CRdWjaCE.js → choropleth-map-slots.config-X2YYrSXc.js} +1 -1
  57. package/components/{circle-pack-chart-options.config-CopW_8_S.js → circle-pack-chart-options.config-D9C-ltHA.js} +1 -1
  58. package/components/{circle-pack-chart-positioning.config-B_UwdpKt.js → circle-pack-chart-positioning.config-YDdY2cc2.js} +1 -1
  59. package/components/{circle-pack-chart-positioning.config-DiNINE6m.cjs → circle-pack-chart-positioning.config-wKIQDFe8.cjs} +1 -1
  60. package/components/{circle-pack-chart-slots.config-BBCVJM7e.js → circle-pack-chart-slots.config-BIO1dZsK.js} +1 -1
  61. package/components/{circular-gauge-options.config-gtbMbogY.js → circular-gauge-options.config-De6SlTLT.js} +1 -1
  62. package/components/{circular-gauge-positioning.config-DVrt25rr.js → circular-gauge-positioning.config-C41euPS9.js} +1 -1
  63. package/components/{circular-gauge-positioning.config-CIsU-S4V.cjs → circular-gauge-positioning.config-CKNanoFX.cjs} +1 -1
  64. package/components/{circular-gauge-slots.config-DNnzoRev.js → circular-gauge-slots.config-Dv_7fAD_.js} +1 -1
  65. package/components/{column-chart-options.config-BKtKoP3J.js → column-chart-options.config-5Dbg3FmH.js} +1 -1
  66. package/components/{column-chart-positioning.config-COxTPiE_.js → column-chart-positioning.config-BdyuErF8.js} +1 -1
  67. package/components/{column-chart-positioning.config-C7uLfFA-.cjs → column-chart-positioning.config-Enx15Dqh.cjs} +1 -1
  68. package/components/{column-chart-slots.config-C6c-fKz2.js → column-chart-slots.config-eHvTwZLX.js} +1 -1
  69. package/components/{combination-chart-options.config-B1GjRnKL.js → combination-chart-options.config-BzmLGCal.js} +1 -1
  70. package/components/{combination-chart-positioning.config-DdWD2qhF.js → combination-chart-positioning.config-BQRn0EfF.js} +1 -1
  71. package/components/{combination-chart-positioning.config-B6W7EIix.cjs → combination-chart-positioning.config-CqlKA__j.cjs} +1 -1
  72. package/components/{combination-chart-slots.config-DNXQAw4U.js → combination-chart-slots.config-CG40JjE3.js} +1 -1
  73. package/components/{conditional-number-options.config-C3dodtlk.js → conditional-number-options.config-CVgV7s7f.js} +1 -1
  74. package/components/{conditional-number-positioning.config-7RAsw-TT.js → conditional-number-positioning.config-BBivi4ps.js} +1 -1
  75. package/components/{conditional-number-positioning.config-D5mpM8sp.cjs → conditional-number-positioning.config-CR45rPru.cjs} +1 -1
  76. package/components/{conditional-number-slots.config-BTpG1Uv3.js → conditional-number-slots.config-o22l-qLv.js} +1 -1
  77. package/components/data-field/index.cjs +1 -1
  78. package/components/data-field/index.js +1 -1
  79. package/components/data-field-CAGprHjS.cjs +54 -0
  80. package/components/data-field-CLfUWgK9.js +121 -0
  81. package/components/data-field-level/data-field-level.d.ts +40 -0
  82. package/components/data-field-level/helpers/generate-preview.d.ts +9 -0
  83. package/components/data-field-level/index.cjs +20 -0
  84. package/components/data-field-level/index.d.ts +8 -0
  85. package/components/data-field-level/index.js +28 -0
  86. package/components/data-field-level-7qi9K__S.cjs +55 -0
  87. package/components/{data-field-zG8ljDJR.js → data-field-level-CfJ0dmxo.js} +48 -141
  88. package/components/data-field-panel/index.cjs +1 -1
  89. package/components/data-field-panel/index.js +1 -1
  90. package/components/data-field-panel-DUc8y4WA.cjs +87 -0
  91. package/components/{data-field-panel-DAkWBcEK.js → data-field-panel-N7mukLj6.js} +4 -3
  92. package/components/data-fields-select/data-fields-select.d.ts +127 -0
  93. package/components/data-fields-select/index.cjs +20 -0
  94. package/components/data-fields-select/index.d.ts +9 -0
  95. package/components/data-fields-select/index.js +28 -0
  96. package/components/data-fields-select/types.d.ts +4 -0
  97. package/components/{data-fields-select-DF6uZ8No.js → data-fields-select-B1pwPYt6.js} +2 -1
  98. package/components/data-fields-select-qCWuzckJ.cjs +41 -0
  99. package/components/dataset-icon/dataset-icon.d.ts +45 -0
  100. package/components/dataset-icon/index.cjs +20 -0
  101. package/components/dataset-icon/index.d.ts +8 -0
  102. package/components/dataset-icon/index.js +28 -0
  103. package/components/dataset-icon/types.d.ts +11 -0
  104. package/components/dataset-icon-BAV0S4sZ.cjs +64 -0
  105. package/components/dataset-icon-CWT5Ju8w.js +125 -0
  106. package/components/dataset-selector-list/dataset-selector-list.d.ts +102 -0
  107. package/components/dataset-selector-list/index.cjs +20 -0
  108. package/components/dataset-selector-list/index.d.ts +8 -0
  109. package/components/dataset-selector-list/index.js +28 -0
  110. package/components/dataset-selector-list-BPBZ04Lf.cjs +75 -0
  111. package/components/dataset-selector-list-DmajZuNC.js +313 -0
  112. package/components/dataset-selector-row/dataset-selector-row.d.ts +89 -0
  113. package/components/dataset-selector-row/index.cjs +20 -0
  114. package/components/dataset-selector-row/index.d.ts +8 -0
  115. package/components/dataset-selector-row/index.js +28 -0
  116. package/components/dataset-selector-row-SJzYIpO6.js +273 -0
  117. package/components/dataset-selector-row-qxfmcxpm.cjs +79 -0
  118. package/components/{date-comparison-filter-options.config-DANevgy_.js → date-comparison-filter-options.config-BJg_WqL4.js} +1 -1
  119. package/components/{date-comparison-filter-slots.config-WBp-r2dH.js → date-comparison-filter-slots.config-BIK5aZ6P.js} +1 -1
  120. package/components/{date-filter-options.config-BRI2SLGy.js → date-filter-options.config-N6eGgPGL.js} +1 -1
  121. package/components/{date-filter-slots.config-CWkGrxOt.js → date-filter-slots.config-CJJ4P0v6.js} +1 -1
  122. package/components/decompose-numeric-format-DGJua3rU.cjs +20 -0
  123. package/components/decompose-numeric-format-DS0j2wa1.js +36 -0
  124. package/components/decorate-DCJt-2rt.cjs +20 -0
  125. package/components/{localized-mixin-DoA4mVsP.js → decorate-DyMgX_Uh.js} +2 -26
  126. package/components/default-acceptable-data-field-types-DFOFWWnT.js +53 -0
  127. package/components/default-acceptable-data-field-types-fPsz64ka.cjs +20 -0
  128. package/components/display-settings/display-settings.d.ts +98 -0
  129. package/components/display-settings/index.cjs +20 -0
  130. package/components/display-settings/index.d.ts +8 -0
  131. package/components/display-settings/index.js +28 -0
  132. package/components/display-settings/types.d.ts +9 -0
  133. package/components/display-settings-CkkjJjem.js +272 -0
  134. package/components/display-settings-DnzOjr-1.cjs +120 -0
  135. package/components/display-settings-binning/display-settings-binning.d.ts +32 -0
  136. package/components/display-settings-binning/index.cjs +20 -0
  137. package/components/display-settings-binning/index.d.ts +8 -0
  138. package/components/display-settings-binning/index.js +28 -0
  139. package/components/{display-settings-binning-Cm1rU9_g.js → display-settings-binning-BohjN2qK.js} +17 -19
  140. package/components/{display-settings-binning-D-p-PsFV.cjs → display-settings-binning-C7-gByrp.cjs} +2 -2
  141. package/components/display-settings-datetime/display-settings-datetime.d.ts +86 -0
  142. package/components/display-settings-datetime/index.cjs +20 -0
  143. package/components/display-settings-datetime/index.d.ts +8 -0
  144. package/components/display-settings-datetime/index.js +28 -0
  145. package/components/{display-settings-datetime-BOdXtbJg.js → display-settings-datetime-7pUcku_h.js} +69 -71
  146. package/components/display-settings-datetime-DL0Qcz8Y.cjs +217 -0
  147. package/components/display-settings-grand-totals/display-settings-grand-totals.d.ts +29 -0
  148. package/components/display-settings-grand-totals/index.cjs +20 -0
  149. package/components/display-settings-grand-totals/index.d.ts +8 -0
  150. package/components/display-settings-grand-totals/index.js +28 -0
  151. package/components/{display-settings-grand-totals-C1VhigDX.js → display-settings-grand-totals-CV5guBhH.js} +17 -19
  152. package/components/display-settings-grand-totals-DHQSZqMI.cjs +44 -0
  153. package/components/display-settings-numeric/display-settings-numeric.d.ts +82 -0
  154. package/components/display-settings-numeric/helpers/constants.d.ts +19 -0
  155. package/components/display-settings-numeric/index.cjs +20 -0
  156. package/components/display-settings-numeric/index.d.ts +8 -0
  157. package/components/display-settings-numeric/index.js +28 -0
  158. package/components/display-settings-numeric--5zk8_7K.cjs +190 -0
  159. package/components/{display-settings-numeric-CppfYXI6.js → display-settings-numeric-D2LjMepO.js} +79 -81
  160. package/components/display-settings-period-over-period/display-settings-period-over-period.d.ts +68 -0
  161. package/components/display-settings-period-over-period/helpers/constants.d.ts +44 -0
  162. package/components/display-settings-period-over-period/index.cjs +20 -0
  163. package/components/display-settings-period-over-period/index.d.ts +8 -0
  164. package/components/display-settings-period-over-period/index.js +28 -0
  165. package/components/display-settings-period-over-period-BE22oHvV.cjs +229 -0
  166. package/components/{display-settings-period-over-period-D1IPvtak.js → display-settings-period-over-period-sqZU6Zj_.js} +83 -84
  167. package/components/{donut-chart-options.config-CvSa4vvo.js → donut-chart-options.config-C66yOoed.js} +1 -1
  168. package/components/{donut-chart-positioning.config-CA93p_1i.cjs → donut-chart-positioning.config-B9sm4yFV.cjs} +1 -1
  169. package/components/{donut-chart-positioning.config-6nbFr06e.js → donut-chart-positioning.config-DtaPAgXE.js} +1 -1
  170. package/components/{donut-chart-slots.config-Hzx_LiNh.js → donut-chart-slots.config-2XbT9Uu8.js} +1 -1
  171. package/components/{dropdown-filter-options.config-BBYNqiB8.js → dropdown-filter-options.config-Cm_wK0mn.js} +1 -1
  172. package/components/{dropdown-filter-slots.config-vJX4At6j.js → dropdown-filter-slots.config-CnESCGuw.js} +1 -1
  173. package/components/{en-US-PSeMMGzt.js → en-CcLhGxIh.js} +1 -1
  174. package/components/{en-GB-m6liqSlO.js → en-GB-DzkdeUQh.js} +1 -1
  175. package/components/en-GB-uxY5qmIM.cjs +20 -0
  176. package/components/{en-PSeMMGzt.js → en-US-CcLhGxIh.js} +1 -1
  177. package/components/{en-US-Cxu7QI9q.cjs → en-US-q_Ruzags.cjs} +1 -1
  178. package/components/{en-Cxu7QI9q.cjs → en-q_Ruzags.cjs} +1 -1
  179. package/components/{evolution-number-options.config-Cjj2PxvX.js → evolution-number-options.config-07Jd0oUL.js} +1 -1
  180. package/components/{evolution-number-positioning.config-B1YadWnr.cjs → evolution-number-positioning.config-DVXhBZYj.cjs} +1 -1
  181. package/components/{evolution-number-positioning.config-Ctl0F_-h.js → evolution-number-positioning.config-v8_6kB1H.js} +1 -1
  182. package/components/{evolution-number-slots.config-C820wN9Q.js → evolution-number-slots.config-BKdD3cKw.js} +1 -1
  183. package/components/filter-expression-picker/filter-expression-picker.d.ts +73 -0
  184. package/components/filter-expression-picker/index.cjs +20 -0
  185. package/components/filter-expression-picker/index.d.ts +7 -0
  186. package/components/filter-expression-picker/index.js +28 -0
  187. package/components/filter-expression-picker-CF4Otpll.cjs +38 -0
  188. package/components/filter-expression-picker-DCrCAIhg.js +425 -0
  189. package/components/filter-item/filter-item.d.ts +84 -0
  190. package/components/filter-item/index.cjs +20 -0
  191. package/components/filter-item/index.d.ts +7 -0
  192. package/components/filter-item/index.js +28 -0
  193. package/components/filter-item-CKg3oQlZ.cjs +58 -0
  194. package/components/filter-item-DtdK1jvx.js +242 -0
  195. package/components/filter-parameter-picker/filter-parameter-picker.d.ts +25 -0
  196. package/components/filter-parameter-picker/index.cjs +22 -0
  197. package/components/filter-parameter-picker/index.d.ts +7 -0
  198. package/components/filter-parameter-picker/index.js +58 -0
  199. package/components/filter-value-picker/filter-value-picker.d.ts +65 -0
  200. package/components/filter-value-picker/index.cjs +20 -0
  201. package/components/filter-value-picker/index.d.ts +7 -0
  202. package/components/filter-value-picker/index.js +28 -0
  203. package/components/filter-value-picker-B5fHoLAG.cjs +60 -0
  204. package/components/filter-value-picker-datetime/filter-value-picker-datetime.d.ts +42 -0
  205. package/components/filter-value-picker-datetime/index.cjs +20 -0
  206. package/components/filter-value-picker-datetime/index.d.ts +7 -0
  207. package/components/filter-value-picker-datetime/index.js +28 -0
  208. package/components/filter-value-picker-datetime-CFCV2jkK.js +139 -0
  209. package/components/filter-value-picker-datetime-D20WnWar.cjs +42 -0
  210. package/components/filter-value-picker-hierarchy/filter-value-picker-hierarchy.d.ts +81 -0
  211. package/components/filter-value-picker-hierarchy/index.cjs +20 -0
  212. package/components/filter-value-picker-hierarchy/index.d.ts +7 -0
  213. package/components/filter-value-picker-hierarchy/index.js +28 -0
  214. package/components/filter-value-picker-hierarchy-CSM0RPvX.cjs +47 -0
  215. package/components/filter-value-picker-hierarchy-DEbN7h5L.js +232 -0
  216. package/components/filter-value-picker-numeric/filter-value-picker-numeric.d.ts +82 -0
  217. package/components/filter-value-picker-numeric/index.cjs +20 -0
  218. package/components/filter-value-picker-numeric/index.d.ts +7 -0
  219. package/components/filter-value-picker-numeric/index.js +28 -0
  220. package/components/filter-value-picker-numeric-BYspQRSi.js +219 -0
  221. package/components/filter-value-picker-numeric-BtZaQvkr.cjs +48 -0
  222. package/components/filter-value-picker-tyoO5ISM.js +151 -0
  223. package/components/filters/index.cjs +1 -1
  224. package/components/filters/index.js +1 -1
  225. package/components/filters-C8fHs4_m.js +400 -0
  226. package/components/filters-sR8GxUGw.cjs +150 -0
  227. package/components/formatter-BeXmurVe.cjs +20 -0
  228. package/components/{slots-config-CA1x9W3U.js → formatter-Cq5dFCyU.js} +314 -392
  229. package/components/formula/formula.d.ts +66 -0
  230. package/components/formula/index.cjs +20 -0
  231. package/components/formula/index.d.ts +7 -0
  232. package/components/formula/index.js +28 -0
  233. package/components/formula-BPHH_GKB.cjs +45 -0
  234. package/components/formula-DYdcMG-v.js +138 -0
  235. package/components/formula-codemirror/formula-codemirror.d.ts +79 -0
  236. package/components/formula-codemirror/index.d.ts +7 -0
  237. package/components/formula-codemirror/pills/formula-aggregation/formula-aggregation.d.ts +125 -0
  238. package/components/formula-codemirror/pills/formula-aggregation/index.d.ts +7 -0
  239. package/components/formula-codemirror/pills/formula-empty-argument-pill/formula-empty-argument-pill.d.ts +28 -0
  240. package/components/formula-codemirror/pills/formula-empty-argument-pill/index.d.ts +7 -0
  241. package/components/formula-codemirror/pills/formula-include-exclude-panel.d.ts +38 -0
  242. package/components/formula-codemirror-CFgPlkN8.cjs +215 -0
  243. package/components/{formula-codemirror-CxRJdjY0.js → formula-codemirror-CQonNhmd.js} +38 -34
  244. package/components/formula-display-store-BGzj13Cs.js +1086 -0
  245. package/components/formula-display-store-DFAvw21p.cjs +20 -0
  246. package/components/formula-draggable-field/formula-draggable-field.d.ts +53 -0
  247. package/components/formula-draggable-field/index.d.ts +8 -0
  248. package/components/formula-draggable-field/types.d.ts +24 -0
  249. package/components/formula-editor/formula-aggregations-list.d.ts +21 -0
  250. package/components/formula-editor/formula-datasets-list.d.ts +37 -0
  251. package/components/formula-editor/formula-description.d.ts +17 -0
  252. package/components/formula-editor/formula-editor.d.ts +70 -0
  253. package/components/formula-editor/formula-functions-list.d.ts +28 -0
  254. package/components/formula-editor/index.cjs +20 -0
  255. package/components/formula-editor/index.d.ts +12 -0
  256. package/components/formula-editor/index.js +30 -0
  257. package/components/formula-editor-CtCvJkyS.cjs +218 -0
  258. package/components/formula-editor-KXxQlh2n.js +666 -0
  259. package/components/formula-field/formula-field.d.ts +20 -0
  260. package/components/formula-field/index.cjs +20 -0
  261. package/components/formula-field/index.d.ts +7 -0
  262. package/components/formula-field/index.js +28 -0
  263. package/components/formula-field-OcD4TWAn.js +40 -0
  264. package/components/formula-field-aiqX7nRp.cjs +20 -0
  265. package/components/formula-input-base-CGe2ABn6.cjs +49 -0
  266. package/components/formula-input-base-CQPGmISj.js +236 -0
  267. package/components/{funnel-chart-options.config-CkIVYUyD.js → funnel-chart-options.config-PV1Hlu91.js} +1 -1
  268. package/components/{funnel-chart-positioning.config-CWK690yC.js → funnel-chart-positioning.config-BT-YoTgv.js} +1 -1
  269. package/components/{funnel-chart-positioning.config-BIQQ-zpo.cjs → funnel-chart-positioning.config-C5Z3JkuS.cjs} +1 -1
  270. package/components/{funnel-chart-slots.config-Bbc6r1GZ.js → funnel-chart-slots.config-_9HUPvTb.js} +1 -1
  271. package/components/get-css-variable-CBXsAxR6.cjs +20 -0
  272. package/components/get-css-variable-DYnldi15.js +63 -0
  273. package/components/get-dataset-name-BGCvfcdY.js +27 -0
  274. package/components/get-dataset-name-EkeeFzI3.cjs +20 -0
  275. package/components/groupings-CrE-yp0S.js +52 -0
  276. package/components/groupings-dIFi0bJY.cjs +20 -0
  277. package/components/{heat-map-options.config-Bxj7M6kg.js → heat-map-options.config-CQY6t9AL.js} +1 -1
  278. package/components/{heat-map-positioning.config-BQpzkXu3.js → heat-map-positioning.config-BpFis567.js} +1 -1
  279. package/components/{heat-map-positioning.config-BDbBf5RD.cjs → heat-map-positioning.config-HPftgmdz.cjs} +1 -1
  280. package/components/{heat-map-slots.config-CIYZdLGb.js → heat-map-slots.config-B4AswVSo.js} +1 -1
  281. package/components/{heat-table-options.config-C_PDicoC.js → heat-table-options.config-IlVPk4Q4.js} +1 -1
  282. package/components/{heat-table-positioning.config-By__Tq90.js → heat-table-positioning.config-Canc3aEE.js} +1 -1
  283. package/components/{heat-table-positioning.config-DQKFXpJS.cjs → heat-table-positioning.config-wkrm8Fbk.cjs} +1 -1
  284. package/components/{heat-table-slots.config-fst7kAtH.js → heat-table-slots.config-CB509zU4.js} +1 -1
  285. package/components/{hexbin-map-options.config-DJZZZixE.js → hexbin-map-options.config-vzw6ovva.js} +1 -1
  286. package/components/{hexbin-map-positioning.config-X6OyNJIR.js → hexbin-map-positioning.config-CBv6Lij5.js} +1 -1
  287. package/components/{marker-map-positioning.config-I-HDmH_i.cjs → hexbin-map-positioning.config-D0hAchxV.cjs} +1 -1
  288. package/components/{hexbin-map-slots.config-3HLwV8OK.js → hexbin-map-slots.config-Dyse0pui.js} +1 -1
  289. package/components/icon-element-DpN-9yaN.cjs +20 -0
  290. package/components/icon-element-_jY440X2.js +85 -0
  291. package/components/{image-options.config-b1hHO_hu.js → image-options.config-Cmrsd8Yu.js} +1 -1
  292. package/components/{image-slots.config-C8cFYfbC.js → image-slots.config-CVj-DM07.js} +1 -1
  293. package/components/index.cjs +1 -719
  294. package/components/index.js +63 -6684
  295. package/components/item-grid/index.cjs +1 -1
  296. package/components/item-grid/index.js +1 -1
  297. package/components/{item-grid-BON-D2gT.cjs → item-grid-BXZXJV3g.cjs} +50 -50
  298. package/components/{item-grid-D0dZeOjJ.js → item-grid-uWM-Unjx.js} +2 -1
  299. package/components/item-menu/item-list/item-list.d.ts +37 -0
  300. package/components/item-option/index.cjs +1 -1
  301. package/components/item-option/index.js +1 -1
  302. package/components/item-option-CEwjJc1p.cjs +252 -0
  303. package/components/item-option-action-button-group/index.cjs +1 -1
  304. package/components/item-option-action-button-group/index.js +1 -1
  305. package/components/{item-option-action-button-group-S1d63U_p.js → item-option-action-button-group-BOxQFfBF.js} +2 -2
  306. package/components/item-option-action-button-group-DXCVJqpt.cjs +53 -0
  307. package/components/item-option-base/item-option-base.d.ts +23 -0
  308. package/components/item-option-base-DKieCS-Y.cjs +56 -0
  309. package/components/{item-option-base-xqDg3z0y.js → item-option-base-Dr5-WxZ9.js} +2 -2
  310. package/components/item-option-color-palette-picker/index.cjs +1 -1
  311. package/components/item-option-color-palette-picker/index.js +1 -1
  312. package/components/item-option-color-palette-picker-7vSSpj5o.cjs +40 -0
  313. package/components/{item-option-color-palette-picker-Jpzlm0hc.js → item-option-color-palette-picker-D_mABGWh.js} +2 -2
  314. package/components/item-option-color-picker/index.cjs +1 -1
  315. package/components/item-option-color-picker/index.js +1 -1
  316. package/components/{item-option-color-picker-CD6rbfp3.js → item-option-color-picker-COLBYeRy.js} +2 -2
  317. package/components/{item-option-color-picker-BxSV4n8r.cjs → item-option-color-picker-DMyNeD2e.cjs} +2 -2
  318. package/components/item-option-color-range/index.cjs +1 -1
  319. package/components/item-option-color-range/index.js +1 -1
  320. package/components/item-option-color-range-BFr0B6Vf.cjs +98 -0
  321. package/components/{item-option-color-range-Ds8fbTLQ.js → item-option-color-range-CueVlyT2.js} +2 -2
  322. package/components/item-option-multi-language-field/index.cjs +1 -1
  323. package/components/item-option-multi-language-field/index.js +1 -1
  324. package/components/{item-option-multi-language-field-CzKPujJ2.js → item-option-multi-language-field-CMuQwrwQ.js} +2 -2
  325. package/components/{item-option-multi-language-field-CwVNF00e.cjs → item-option-multi-language-field-q7txF5xA.cjs} +2 -2
  326. package/components/item-option-number-field/index.cjs +1 -1
  327. package/components/item-option-number-field/index.js +1 -1
  328. package/components/{item-option-number-field-CMEF1_zC.js → item-option-number-field-BODNSx66.js} +2 -2
  329. package/components/{item-option-number-field-D9SNipL9.cjs → item-option-number-field-DWeJWUxY.cjs} +2 -2
  330. package/components/item-option-panel/index.cjs +1 -1
  331. package/components/item-option-panel/index.js +1 -1
  332. package/components/{item-option-panel-CFVzIar9.js → item-option-panel-CxOfVI0z.js} +3 -3
  333. package/components/{item-option-panel-rBiAYA96.cjs → item-option-panel-D0dxyUfE.cjs} +2 -2
  334. package/components/item-option-picker/index.cjs +1 -1
  335. package/components/item-option-picker/index.js +1 -1
  336. package/components/{item-option-picker-CoC6THh3.cjs → item-option-picker-BsP_0XyD.cjs} +2 -2
  337. package/components/{item-option-picker-kSepbJdX.js → item-option-picker-CyX7qqrb.js} +2 -2
  338. package/components/item-option-position-picker/index.cjs +1 -1
  339. package/components/item-option-position-picker/index.js +1 -1
  340. package/components/item-option-position-picker-CcmBYyqF.cjs +32 -0
  341. package/components/{item-option-position-picker-C4bdExi6.js → item-option-position-picker-LOg6P4Gl.js} +2 -2
  342. package/components/item-option-positions-number-field/index.cjs +1 -1
  343. package/components/item-option-positions-number-field/index.js +1 -1
  344. package/components/{item-option-positions-number-field-Cv1tA_Pe.js → item-option-positions-number-field-BCbWb1R6.js} +2 -2
  345. package/components/item-option-positions-number-field-o3Qckgwd.cjs +49 -0
  346. package/components/item-option-radio-button-group/index.cjs +1 -1
  347. package/components/item-option-radio-button-group/index.js +1 -1
  348. package/components/{item-option-radio-button-group-BRps0pHb.js → item-option-radio-button-group-CDebmEn3.js} +2 -2
  349. package/components/{item-option-radio-button-group-DK2WnKhT.cjs → item-option-radio-button-group-CjLhWTEJ.cjs} +2 -2
  350. package/components/item-option-slider/index.cjs +1 -1
  351. package/components/item-option-slider/index.js +1 -1
  352. package/components/{item-option-slider-cD6cc904.js → item-option-slider-C9ZJZcdg.js} +2 -2
  353. package/components/{item-option-slider-14YSeg1F.cjs → item-option-slider-CHbkJHLK.cjs} +2 -2
  354. package/components/item-option-switch/index.cjs +1 -1
  355. package/components/item-option-switch/index.js +1 -1
  356. package/components/{item-option-switch-uEeTC7ey.js → item-option-switch-BVMOOWya.js} +2 -2
  357. package/components/{item-option-switch-BvpDNO8q.cjs → item-option-switch-FRAZWozp.cjs} +2 -2
  358. package/components/item-option-text-field/index.cjs +1 -1
  359. package/components/item-option-text-field/index.js +1 -1
  360. package/components/{item-option-text-field-CUF0Gznj.cjs → item-option-text-field-DkYqHfdJ.cjs} +2 -2
  361. package/components/{item-option-text-field-Cveke3fQ.js → item-option-text-field-e6NLDlSq.js} +2 -2
  362. package/components/{item-option-Bpv16SRY.js → item-option-uyAsPcfE.js} +47 -47
  363. package/components/item-options-configs.js +45 -45
  364. package/components/item-slot-drop/index.cjs +1 -1
  365. package/components/item-slot-drop/index.js +1 -1
  366. package/components/item-slot-drop-BUCjEfJf.cjs +91 -0
  367. package/components/{item-slot-drop--ZwfRc3_.js → item-slot-drop-CoReI68M.js} +13 -10
  368. package/components/item-slot-drop-panel/index.cjs +1 -1
  369. package/components/item-slot-drop-panel/index.js +1 -1
  370. package/components/{item-slot-drop-panel-D_AGJhSF.js → item-slot-drop-panel-CEI1q060.js} +41 -40
  371. package/components/item-slot-drop-panel-DqekQtOr.cjs +57 -0
  372. package/components/item-slot-picker/index.cjs +1 -1
  373. package/components/item-slot-picker/index.js +1 -1
  374. package/components/item-slot-picker-CvbXFh6Z.cjs +158 -0
  375. package/components/{item-slot-picker-Dd35AuI2.js → item-slot-picker-dy5hVID5.js} +18 -15
  376. package/components/item-slot-picker-panel/index.cjs +1 -1
  377. package/components/item-slot-picker-panel/index.js +1 -1
  378. package/components/item-slot-picker-panel-BUyp6Hbg.cjs +81 -0
  379. package/components/{item-slot-picker-panel-pGVeLd1V.js → item-slot-picker-panel-CG0NyMDX.js} +5 -4
  380. package/components/item-slots-configs.js +45 -45
  381. package/components/{line-chart-options.config-DSLb95qK.js → line-chart-options.config-1TpSJqeb.js} +1 -1
  382. package/components/{line-chart-positioning.config-CWGSlsV0.js → line-chart-positioning.config-61uNfPZs.js} +1 -1
  383. package/components/{line-chart-positioning.config-BH8RppgE.cjs → line-chart-positioning.config-BNtGFWUK.cjs} +1 -1
  384. package/components/{line-chart-slots.config-CdD8CtUI.js → line-chart-slots.config-CcCpwWzZ.js} +1 -1
  385. package/components/localized-mixin-CiBWThrZ.cjs +20 -0
  386. package/components/localized-mixin-EpweDrTk.js +45 -0
  387. package/components/{marker-map-options.config-D6X6sdKs.js → marker-map-options.config-DTaax79J.js} +1 -1
  388. package/components/{marker-map-positioning.config-DGi1AjpD.js → marker-map-positioning.config-Bi5WCVgJ.js} +1 -1
  389. package/components/{hexbin-map-positioning.config-DHPOyzsM.cjs → marker-map-positioning.config-C2cL7uZJ.cjs} +1 -1
  390. package/components/{marker-map-slots.config-BtyuwUXE.js → marker-map-slots.config-BOWmS_IZ.js} +1 -1
  391. package/components/{ohlc-chart-options.config-B02_nViT.js → ohlc-chart-options.config-Dfes8ROC.js} +1 -1
  392. package/components/{ohlc-chart-positioning.config-CLCmzNVQ.js → ohlc-chart-positioning.config-DFx99k9A.js} +1 -1
  393. package/components/{ohlc-chart-positioning.config-5iMpDBaN.cjs → ohlc-chart-positioning.config-IAOfu4ue.cjs} +1 -1
  394. package/components/{ohlc-chart-slots.config-C6aMcUyV.js → ohlc-chart-slots.config-JRztPEXL.js} +1 -1
  395. package/components/{parallel-coordinates-plot-options.config-B_lWq8Oc.js → parallel-coordinates-plot-options.config-NSk_HC0H.js} +1 -1
  396. package/components/{parallel-coordinates-plot-positioning.config-A5eBN75L.cjs → parallel-coordinates-plot-positioning.config-Bf0Leksw.cjs} +1 -1
  397. package/components/{parallel-coordinates-plot-positioning.config-4zWsg4Nw.js → parallel-coordinates-plot-positioning.config-C9TqUuGC.js} +1 -1
  398. package/components/{parallel-coordinates-plot-slots.config-CChPbNkv.js → parallel-coordinates-plot-slots.config-pmbO5DnL.js} +1 -1
  399. package/components/period-over-period-condition.const-BZ7j5Z5t.js +29 -0
  400. package/components/period-over-period-condition.const-C1NZ9Bkp.cjs +20 -0
  401. package/components/{pivot-table-options.config-smIfG1vv.js → pivot-table-options.config-B3wYlzEq.js} +1 -1
  402. package/components/{pivot-table-positioning.config-Dzb1GNTm.js → pivot-table-positioning.config-CPXqqtcR.js} +1 -1
  403. package/components/{pivot-table-positioning.config-x9el6e15.cjs → pivot-table-positioning.config-D1R3VO88.cjs} +1 -1
  404. package/components/{pivot-table-slots.config-BDDVAkYz.js → pivot-table-slots.config-DaLfGOP9.js} +1 -1
  405. package/components/{get-css-variable-DV0s58yn.js → pragmatic-element-adapter-D0LRKx5U.js} +1 -43
  406. package/components/{get-css-variable-EMi5nnn2.cjs → pragmatic-element-adapter-DdyH32ix.cjs} +1 -1
  407. package/components/{pyramid-chart-options.config-CAtBdIzA.js → pyramid-chart-options.config-DIyiyqGM.js} +1 -1
  408. package/components/{pyramid-chart-positioning.config-HDPD6TX8.cjs → pyramid-chart-positioning.config-BfXdJS8g.cjs} +1 -1
  409. package/components/{pyramid-chart-positioning.config-wbhfjqP_.js → pyramid-chart-positioning.config-JAUQpA0B.js} +1 -1
  410. package/components/{pyramid-chart-slots.config-aUwwVnl9.js → pyramid-chart-slots.config-DtnUlw5y.js} +1 -1
  411. package/components/{radar-chart-options.config-qlcD8CGC.js → radar-chart-options.config-UVOzUnVT.js} +1 -1
  412. package/components/{radar-chart-positioning.config-CXonxhGG.cjs → radar-chart-positioning.config-Bixdrod2.cjs} +1 -1
  413. package/components/{radar-chart-positioning.config-nWkEtlva.js → radar-chart-positioning.config-CdJSazt4.js} +1 -1
  414. package/components/{radar-chart-slots.config-XtL8uHg5.js → radar-chart-slots.config-CkLoeAV7.js} +1 -1
  415. package/components/{regular-table-options.config-Db12iH2p.js → regular-table-options.config-CBvnxTdd.js} +1 -1
  416. package/components/{regular-table-slots.config-Dx3-s6lB.js → regular-table-slots.config-Cc6hL7iu.js} +1 -1
  417. package/components/resolve-column-presentation-BaEP1mvs.js +34 -0
  418. package/components/resolve-column-presentation-DUETRVCH.cjs +20 -0
  419. package/components/{route-map-options.config-Dd3ZCqZP.js → route-map-options.config-DZrlGa5o.js} +1 -1
  420. package/components/{route-map-positioning.config-B9c2U0zN.cjs → route-map-positioning.config-7aca5Iex.cjs} +1 -1
  421. package/components/{route-map-positioning.config-CrDkKZOV.js → route-map-positioning.config-Bk_BndTS.js} +1 -1
  422. package/components/{route-map-slots.config-D22mi7Rb.js → route-map-slots.config-CQxB8gKC.js} +1 -1
  423. package/components/{sankey-diagram-options.config-Bn1ARzxI.js → sankey-diagram-options.config-s_QRVr1r.js} +1 -1
  424. package/components/{sankey-diagram-positioning.config-Dki0WC81.cjs → sankey-diagram-positioning.config-Bvus3RDi.cjs} +1 -1
  425. package/components/{sankey-diagram-positioning.config-DHu11GbV.js → sankey-diagram-positioning.config-DPgQELIu.js} +1 -1
  426. package/components/{sankey-diagram-slots.config-CGCeuScH.js → sankey-diagram-slots.config-C9tIfWHU.js} +1 -1
  427. package/components/{scatter-plot-options.config-DTz98owa.js → scatter-plot-options.config-DI4hlqi5.js} +1 -1
  428. package/components/{scatter-plot-positioning.config-NJLf-yu-.js → scatter-plot-positioning.config-D-ifHW9P.js} +1 -1
  429. package/components/{scatter-plot-positioning.config-CyUEHLu_.cjs → scatter-plot-positioning.config-DBDCDDad.cjs} +1 -1
  430. package/components/{scatter-plot-slots.config-Cx_QRgUG.js → scatter-plot-slots.config-CUURijrN.js} +1 -1
  431. package/components/{search-filter-options.config-DGLdzM_P.js → search-filter-options.config-CPzfgUWV.js} +1 -1
  432. package/components/{search-filter-slots.config-CDthI9k-.js → search-filter-slots.config-DD119qkk.js} +1 -1
  433. package/components/{slicer-filter-options.config-QCSqtuyO.js → slicer-filter-options.config-F2CZ8ckV.js} +1 -1
  434. package/components/{slicer-filter-positioning.config-BoyhFCY3.js → slicer-filter-positioning.config-0uGZ8EgN.js} +1 -1
  435. package/components/{slicer-filter-positioning.config-CYmIirxA.cjs → slicer-filter-positioning.config-Bx2_7jxp.cjs} +1 -1
  436. package/components/{slicer-filter-slots.config-D_SBoI4C.js → slicer-filter-slots.config-D-BhCuA9.js} +1 -1
  437. package/components/{slider-filter-options.config-CS2ItH5t.js → slider-filter-options.config-DO0HHK2l.js} +1 -1
  438. package/components/{slider-filter-slots.config-CG88ssfQ.js → slider-filter-slots.config-CGQG6JqK.js} +1 -1
  439. package/components/{en-GB-DAF4eew-.cjs → slot-menu/index.cjs} +1 -1
  440. package/components/slot-menu/index.d.ts +10 -0
  441. package/components/slot-menu/index.js +28 -0
  442. package/components/slot-menu/slot-menu.d.ts +143 -0
  443. package/components/slot-menu/types.d.ts +24 -0
  444. package/components/slot-menu-Cw5HJ_bk.js +404 -0
  445. package/components/slot-menu-DkyDLDSd.cjs +64 -0
  446. package/components/slot-menu-list/index.cjs +20 -0
  447. package/components/slot-menu-list/index.d.ts +8 -0
  448. package/components/slot-menu-list/index.js +28 -0
  449. package/components/slot-menu-list/slot-menu-list.d.ts +42 -0
  450. package/components/slot-menu-list-BZllvntQ.cjs +38 -0
  451. package/components/slot-menu-list-CTJ-owp1.js +326 -0
  452. package/components/slots-config-BuHluMEl.js +77 -0
  453. package/components/slots-config-DVH0lz6t.cjs +20 -0
  454. package/components/{speedometer-chart-options.config-C-BoHPnb.js → speedometer-chart-options.config-jK_yQjy2.js} +1 -1
  455. package/components/{speedometer-chart-positioning.config-B_GOu6LC.cjs → speedometer-chart-positioning.config-CNOKIw7e.cjs} +1 -1
  456. package/components/{speedometer-chart-positioning.config-BhPvu0D-.js → speedometer-chart-positioning.config-FzFxMi0X.js} +1 -1
  457. package/components/{speedometer-chart-slots.config-CqejfEfV.js → speedometer-chart-slots.config-CjkHAHNX.js} +1 -1
  458. package/components/{spike-map-options.config-DDHR8R04.js → spike-map-options.config-cj07bETE.js} +1 -1
  459. package/components/{spike-map-positioning.config-C8Sq420l.js → spike-map-positioning.config-B4NYfmEw.js} +1 -1
  460. package/components/{spike-map-positioning.config-uqHrpfnq.cjs → spike-map-positioning.config-Bcdt8670.cjs} +1 -1
  461. package/components/{spike-map-slots.config-DfvNwovo.js → spike-map-slots.config-yMkdy-0w.js} +1 -1
  462. package/components/{strip-plot-options.config-DwZ_uMmE.js → strip-plot-options.config-DmAxeY2S.js} +1 -1
  463. package/components/{strip-plot-positioning.config-BUe2VQLN.cjs → strip-plot-positioning.config-BjcqWJoD.cjs} +1 -1
  464. package/components/{strip-plot-positioning.config-CHAOLSTR.js → strip-plot-positioning.config-n9OIxpa_.js} +1 -1
  465. package/components/{strip-plot-slots.config-Bq5Qkdpi.js → strip-plot-slots.config-C07nIM5s.js} +1 -1
  466. package/components/{sunburst-chart-options.config-CmfOjhz4.js → sunburst-chart-options.config-CLyQG-8x.js} +1 -1
  467. package/components/{sunburst-chart-positioning.config-DDKFlKW3.cjs → sunburst-chart-positioning.config-BIpSCpSi.cjs} +1 -1
  468. package/components/{sunburst-chart-positioning.config-CsCLFckU.js → sunburst-chart-positioning.config-CcGOcwOK.js} +1 -1
  469. package/components/{sunburst-chart-slots.config-rNscb225.js → sunburst-chart-slots.config-BU9ma0xm.js} +1 -1
  470. package/components/{symbol-map-options.config-DC1tq8SG.js → symbol-map-options.config-I_gykFhh.js} +1 -1
  471. package/components/{symbol-map-positioning.config-BZq0UkGQ.cjs → symbol-map-positioning.config-DPv89eCY.cjs} +1 -1
  472. package/components/{symbol-map-positioning.config-BFHhRAAZ.js → symbol-map-positioning.config-H3n2ngaa.js} +1 -1
  473. package/components/{symbol-map-slots.config-Cj7_4U7H.js → symbol-map-slots.config-CQJgV5bh.js} +1 -1
  474. package/components/{text-options.config-Mqd1Oy73.js → text-options.config-DUMx63Ol.js} +1 -1
  475. package/components/{text-slots.config-CcjPSmDJ.js → text-slots.config-YmmXsb-0.js} +1 -1
  476. package/components/{treemap-chart-options.config-Cgy7LEyB.js → treemap-chart-options.config-CAWPa5jK.js} +1 -1
  477. package/components/{treemap-chart-positioning.config-2kIvfVAE.js → treemap-chart-positioning.config-Dzp4TodY.js} +1 -1
  478. package/components/{treemap-chart-positioning.config-CZCU1f19.cjs → treemap-chart-positioning.config-W2sl4gZ0.cjs} +1 -1
  479. package/components/{treemap-chart-slots.config-Cpapm2BY.js → treemap-chart-slots.config-QEVbKZyS.js} +1 -1
  480. package/components/utils/base.cjs +1 -1
  481. package/components/utils/base.js +2 -2
  482. package/components/utils/store.js +1 -1
  483. package/components/{utils-qElG-Syn.cjs → utils-3XO8ba12.cjs} +1 -1
  484. package/components/{utils-BFZqe6Y0.js → utils-B6EE0gvH.js} +1 -1
  485. package/components/utils.cjs +1 -1
  486. package/components/utils.js +5 -3
  487. package/components/{venn-diagram-options.config-Cnu8elgc.js → venn-diagram-options.config-KKD89q3q.js} +1 -1
  488. package/components/{venn-diagram-positioning.config-CE4tTFiI.js → venn-diagram-positioning.config-BLSj3JqA.js} +1 -1
  489. package/components/{venn-diagram-positioning.config-oCiElw_6.cjs → venn-diagram-positioning.config-Bv3pFJIU.cjs} +1 -1
  490. package/components/{venn-diagram-slots.config-CN59FT-M.js → venn-diagram-slots.config-DsIqVOI2.js} +1 -1
  491. package/components/{video-options.config-6VlWxo6-.js → video-options.config-D2SEyNrP.js} +1 -1
  492. package/components/{video-slots.config-BVraFye8.js → video-slots.config-B680gLmP.js} +1 -1
  493. package/components/viz-item-menu/index.cjs +20 -0
  494. package/components/viz-item-menu/index.d.ts +8 -0
  495. package/components/viz-item-menu/index.js +28 -0
  496. package/components/viz-item-menu/types.d.ts +9 -0
  497. package/components/viz-item-menu/viz-item-menu.d.ts +75 -0
  498. package/components/viz-item-menu-CiEJJddu.js +170 -0
  499. package/components/viz-item-menu-Dry8xpRA.cjs +55 -0
  500. package/components/{wordcloud-chart-options.config-CVl6-lm0.js → wordcloud-chart-options.config-DLN2RAEK.js} +1 -1
  501. package/components/{wordcloud-chart-positioning.config-BA0jo1KG.js → wordcloud-chart-positioning.config-DVPWXJXb.js} +1 -1
  502. package/components/{wordcloud-chart-positioning.config-CioSulMl.cjs → wordcloud-chart-positioning.config-ZTO2VLdY.cjs} +1 -1
  503. package/components/{wordcloud-chart-slots.config-D2fzZcjk.js → wordcloud-chart-slots.config-mFvqkiQE.js} +1 -1
  504. package/custom-elements.json +16508 -4907
  505. package/index.d.ts +25 -0
  506. package/package.json +131 -1
  507. package/react/README.md +32 -6
  508. package/react/components/ai-chat/empty-state/index.ts +1 -0
  509. package/react/components/ai-chat/empty-state/types.ts +16 -0
  510. package/react/components/ai-chat/stream/index.ts +1 -0
  511. package/react/components/ai-chat/stream/types.ts +60 -0
  512. package/react/components/ai-chat.component.ts +42 -0
  513. package/react/components/ai-interaction-textarea/index.ts +1 -0
  514. package/react/components/ai-interaction-textarea/types.ts +6 -0
  515. package/react/components/ai-interaction-textarea.component.ts +30 -0
  516. package/react/components/data-field-level.component.ts +30 -0
  517. package/react/components/data-fields-select/index.ts +1 -0
  518. package/react/components/data-fields-select/types.ts +5 -0
  519. package/react/components/data-fields-select.component.ts +27 -0
  520. package/react/components/dataset-icon/index.ts +1 -0
  521. package/react/components/dataset-icon/types.ts +8 -0
  522. package/react/components/dataset-icon.component.ts +22 -0
  523. package/react/components/dataset-selector-list.component.ts +27 -0
  524. package/react/components/dataset-selector-row.component.ts +30 -0
  525. package/react/components/display-settings/index.ts +1 -0
  526. package/react/components/display-settings/types.ts +12 -0
  527. package/react/components/display-settings-binning.component.ts +27 -0
  528. package/react/components/display-settings-datetime.component.ts +27 -0
  529. package/react/components/display-settings-grand-totals.component.ts +27 -0
  530. package/react/components/display-settings-numeric.component.ts +27 -0
  531. package/react/components/display-settings-period-over-period.component.ts +27 -0
  532. package/react/components/display-settings.component.ts +33 -0
  533. package/react/components/filter-expression-picker.component.ts +27 -0
  534. package/react/components/filter-item.component.ts +27 -0
  535. package/react/components/filter-parameter-picker.component.ts +22 -0
  536. package/react/components/filter-value-picker-datetime.component.ts +27 -0
  537. package/react/components/filter-value-picker-hierarchy.component.ts +27 -0
  538. package/react/components/filter-value-picker-numeric.component.ts +27 -0
  539. package/react/components/filter-value-picker.component.ts +27 -0
  540. package/react/components/formula-draggable-field/index.ts +1 -0
  541. package/react/components/formula-draggable-field/types.ts +26 -0
  542. package/react/components/formula-editor.component.ts +33 -0
  543. package/react/components/formula-field.component.ts +30 -0
  544. package/react/components/formula.component.ts +30 -0
  545. package/react/components/slot-menu/index.ts +1 -0
  546. package/react/components/slot-menu/types.ts +29 -0
  547. package/react/components/slot-menu-list.component.ts +27 -0
  548. package/react/components/slot-menu.component.ts +42 -0
  549. package/react/components/viz-item-menu/index.ts +1 -0
  550. package/react/components/viz-item-menu/types.ts +11 -0
  551. package/react/components/viz-item-menu.component.ts +33 -0
  552. package/react/esm/components/ai-chat/empty-state/index.d.ts +1 -0
  553. package/react/esm/components/ai-chat/empty-state/index.js +1 -0
  554. package/react/esm/components/ai-chat/empty-state/types.d.ts +14 -0
  555. package/react/esm/components/ai-chat/empty-state/types.js +1 -0
  556. package/react/esm/components/ai-chat/stream/index.d.ts +1 -0
  557. package/react/esm/components/ai-chat/stream/index.js +1 -0
  558. package/react/esm/components/ai-chat/stream/types.d.ts +55 -0
  559. package/react/esm/components/ai-chat/stream/types.js +1 -0
  560. package/react/esm/components/ai-chat.component.d.ts +22 -0
  561. package/react/esm/components/ai-chat.component.js +27 -0
  562. package/react/esm/components/ai-interaction-textarea/index.d.ts +1 -0
  563. package/react/esm/components/ai-interaction-textarea/index.js +1 -0
  564. package/react/esm/components/ai-interaction-textarea/types.d.ts +5 -0
  565. package/react/esm/components/ai-interaction-textarea/types.js +1 -0
  566. package/react/esm/components/ai-interaction-textarea.component.d.ts +14 -0
  567. package/react/esm/components/ai-interaction-textarea.component.js +19 -0
  568. package/react/esm/components/data-field-level.component.d.ts +14 -0
  569. package/react/esm/components/data-field-level.component.js +19 -0
  570. package/react/esm/components/data-fields-select/index.d.ts +1 -0
  571. package/react/esm/components/data-fields-select/index.js +1 -0
  572. package/react/esm/components/data-fields-select/types.d.ts +4 -0
  573. package/react/esm/components/data-fields-select/types.js +1 -0
  574. package/react/esm/components/data-fields-select.component.d.ts +12 -0
  575. package/react/esm/components/data-fields-select.component.js +17 -0
  576. package/react/esm/components/dataset-icon/index.d.ts +1 -0
  577. package/react/esm/components/dataset-icon/index.js +1 -0
  578. package/react/esm/components/dataset-icon/types.d.ts +11 -0
  579. package/react/esm/components/dataset-icon/types.js +1 -0
  580. package/react/esm/components/dataset-icon.component.d.ts +8 -0
  581. package/react/esm/components/dataset-icon.component.js +13 -0
  582. package/react/esm/components/dataset-selector-list.component.d.ts +12 -0
  583. package/react/esm/components/dataset-selector-list.component.js +17 -0
  584. package/react/esm/components/dataset-selector-row.component.d.ts +14 -0
  585. package/react/esm/components/dataset-selector-row.component.js +19 -0
  586. package/react/esm/components/display-settings/index.d.ts +1 -0
  587. package/react/esm/components/display-settings/index.js +1 -0
  588. package/react/esm/components/display-settings/types.d.ts +9 -0
  589. package/react/esm/components/display-settings/types.js +1 -0
  590. package/react/esm/components/display-settings-binning.component.d.ts +12 -0
  591. package/react/esm/components/display-settings-binning.component.js +17 -0
  592. package/react/esm/components/display-settings-datetime.component.d.ts +12 -0
  593. package/react/esm/components/display-settings-datetime.component.js +17 -0
  594. package/react/esm/components/display-settings-grand-totals.component.d.ts +12 -0
  595. package/react/esm/components/display-settings-grand-totals.component.js +17 -0
  596. package/react/esm/components/display-settings-numeric.component.d.ts +12 -0
  597. package/react/esm/components/display-settings-numeric.component.js +17 -0
  598. package/react/esm/components/display-settings-period-over-period.component.d.ts +12 -0
  599. package/react/esm/components/display-settings-period-over-period.component.js +17 -0
  600. package/react/esm/components/display-settings.component.d.ts +16 -0
  601. package/react/esm/components/display-settings.component.js +21 -0
  602. package/react/esm/components/filter-expression-picker.component.d.ts +12 -0
  603. package/react/esm/components/filter-expression-picker.component.js +17 -0
  604. package/react/esm/components/filter-item.component.d.ts +12 -0
  605. package/react/esm/components/filter-item.component.js +17 -0
  606. package/react/esm/components/filter-parameter-picker.component.d.ts +8 -0
  607. package/react/esm/components/filter-parameter-picker.component.js +13 -0
  608. package/react/esm/components/filter-value-picker-datetime.component.d.ts +12 -0
  609. package/react/esm/components/filter-value-picker-datetime.component.js +17 -0
  610. package/react/esm/components/filter-value-picker-hierarchy.component.d.ts +12 -0
  611. package/react/esm/components/filter-value-picker-hierarchy.component.js +17 -0
  612. package/react/esm/components/filter-value-picker-numeric.component.d.ts +12 -0
  613. package/react/esm/components/filter-value-picker-numeric.component.js +17 -0
  614. package/react/esm/components/filter-value-picker.component.d.ts +12 -0
  615. package/react/esm/components/filter-value-picker.component.js +17 -0
  616. package/react/esm/components/formula-draggable-field/index.d.ts +1 -0
  617. package/react/esm/components/formula-draggable-field/index.js +1 -0
  618. package/react/esm/components/formula-draggable-field/types.d.ts +24 -0
  619. package/react/esm/components/formula-draggable-field/types.js +1 -0
  620. package/react/esm/components/formula-editor.component.d.ts +16 -0
  621. package/react/esm/components/formula-editor.component.js +21 -0
  622. package/react/esm/components/formula-field.component.d.ts +14 -0
  623. package/react/esm/components/formula-field.component.js +19 -0
  624. package/react/esm/components/formula.component.d.ts +14 -0
  625. package/react/esm/components/formula.component.js +19 -0
  626. package/react/esm/components/slot-menu/index.d.ts +1 -0
  627. package/react/esm/components/slot-menu/index.js +1 -0
  628. package/react/esm/components/slot-menu/types.d.ts +24 -0
  629. package/react/esm/components/slot-menu/types.js +1 -0
  630. package/react/esm/components/slot-menu-list.component.d.ts +12 -0
  631. package/react/esm/components/slot-menu-list.component.js +17 -0
  632. package/react/esm/components/slot-menu.component.d.ts +22 -0
  633. package/react/esm/components/slot-menu.component.js +27 -0
  634. package/react/esm/components/viz-item-menu/index.d.ts +1 -0
  635. package/react/esm/components/viz-item-menu/index.js +1 -0
  636. package/react/esm/components/viz-item-menu/types.d.ts +9 -0
  637. package/react/esm/components/viz-item-menu/types.js +1 -0
  638. package/react/esm/components/viz-item-menu.component.d.ts +16 -0
  639. package/react/esm/components/viz-item-menu.component.js +21 -0
  640. package/react/esm/index.d.ts +28 -2
  641. package/react/esm/index.js +106 -2
  642. package/react/esm/types.d.ts +15 -0
  643. package/react/index.ts +106 -2
  644. package/react/luzmo-stub.d.ts +167 -0
  645. package/react/types.ts +12 -0
  646. package/storybook/inject-global-vars.d.ts +1 -0
  647. package/storybook/register-components.d.ts +51 -0
  648. package/types/ai-chat.types.d.ts +63 -0
  649. package/types/data-field-events.types.d.ts +7 -0
  650. package/types.d.ts +8 -0
  651. package/components/base-DALdSJnS.cjs +0 -20
  652. package/components/data-field-Da9-w0dV.cjs +0 -89
  653. package/components/data-field-panel-DiQyyB58.cjs +0 -87
  654. package/components/data-fields-select-eTLgAsP7.cjs +0 -41
  655. package/components/display-settings-datetime-Ce9pfoSc.cjs +0 -217
  656. package/components/display-settings-grand-totals-BS1MwDRW.cjs +0 -44
  657. package/components/display-settings-numeric-DkzMeIJ0.cjs +0 -190
  658. package/components/display-settings-period-over-period-Cra_Q5UR.cjs +0 -229
  659. package/components/filters-BlhodZNo.cjs +0 -323
  660. package/components/filters-C3OYCMyw.js +0 -1637
  661. package/components/formula-codemirror-oGmbSSst.cjs +0 -215
  662. package/components/icon-element-BBvOmuv7.js +0 -214
  663. package/components/icon-element-Cp7X6o4B.cjs +0 -20
  664. package/components/item-option-DQY1ywF7.cjs +0 -252
  665. package/components/item-option-action-button-group-BWvqcvi4.cjs +0 -53
  666. package/components/item-option-base-DmC_wT_2.cjs +0 -56
  667. package/components/item-option-color-palette-picker-D5S3orJU.cjs +0 -40
  668. package/components/item-option-color-range-DtGhcSPp.cjs +0 -98
  669. package/components/item-option-position-picker-B4feLDm1.cjs +0 -32
  670. package/components/item-option-positions-number-field-CRo2MkLX.cjs +0 -49
  671. package/components/item-slot-drop-DJhrCthK.cjs +0 -91
  672. package/components/item-slot-drop-panel-CMn3gtpB.cjs +0 -57
  673. package/components/item-slot-picker-panel-CxJeJTSe.cjs +0 -81
  674. package/components/item-slot-picker-wzfaXWHe.cjs +0 -158
  675. package/components/localized-mixin-WdJ00iIC.cjs +0 -20
  676. package/components/slot-menu-BJ1l9wes.cjs +0 -182
  677. package/components/slot-menu-ZNG92h35.js +0 -971
  678. package/components/slots-config-97A9OVQR.cjs +0 -20
@@ -1,1637 +0,0 @@
1
- /*! * A kit of modern Luzmo Web Components for analytics in your web application.
2
- *
3
- * Copyright © 2026 Luzmo
4
- * All rights reserved.
5
- * Luzmo web components (“Luzmo Web Components”)
6
- * must be used according to the Luzmo Terms of Service.
7
- * This license allows users with a current active Luzmo account
8
- * to use the Luzmo Web Components. This license terminates
9
- * automatically if a user no longer has an active Luzmo account.
10
- * Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
11
- *
12
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
- * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
14
- * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
15
- * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
16
- * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
17
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
- * SOFTWARE.
19
- * */
20
- import { n as e, t } from "./localized-mixin-DoA4mVsP.js";
21
- import { t as n } from "./data-broker-Bdv5V8Yp.js";
22
- import { c as r } from "./type-check-CGREdneG.js";
23
- import { t as i } from "./localize-BT7REYBY.js";
24
- import { n as a } from "./periods.const-NCTkxnvG.js";
25
- import "./data-fields-select-DF6uZ8No.js";
26
- import "./utils-BFZqe6Y0.js";
27
- import { luzmoPlus as o, luzmoTrashOutline as s } from "@luzmo/icons";
28
- import { html as c, unsafeCSS as l } from "lit";
29
- import { property as u, state as d } from "lit/decorators.js";
30
- import { localized as f, msg as p } from "@lit/localize";
31
- import "@luzmo/lucero/icon";
32
- import "@luzmo/lucero/select";
33
- import { repeat as m } from "lit/directives/repeat.js";
34
- import "@luzmo/lucero/action-button";
35
- import "@luzmo/lucero/field-label";
36
- import "@luzmo/lucero/text-field";
37
- import "@luzmo/lucero/number-field";
38
- import "@luzmo/lucero/picker";
39
- import { ifDefined as h } from "lit/directives/if-defined.js";
40
- import "@luzmo/lucero/menu";
41
- import "@luzmo/lucero/button";
42
- import { ElementSizes as g, LuzmoElement as _, SizedMixin as v } from "@luzmo/lucero/utils";
43
- import "@luzmo/lucero/date-time-picker";
44
- //#region src/components/filters/transformations/transform-filters.ts
45
- function y(e) {
46
- return typeof e == "object" && !!e && "condition" in e && "filters" in e;
47
- }
48
- function b(e) {
49
- return typeof e == "object" && !!e && !Array.isArray(e);
50
- }
51
- function x(e) {
52
- if (!Array.isArray(e) || e.length === 0) return [];
53
- let t = b(e[0]) ? e[0] : void 0, n = e.length > 1 ? e[1] : void 0;
54
- return e.length > 1 ? [t, n] : [t];
55
- }
56
- function S(e) {
57
- return typeof e.expression != "string" || e.expression.length === 0 ? null : {
58
- expression: e.expression,
59
- parameters: x(e.parameters)
60
- };
61
- }
62
- function C(e) {
63
- if (!e || !e.filters) return {
64
- condition: "and",
65
- filters: [],
66
- subGroups: []
67
- };
68
- let t = [], n = [];
69
- for (let r of e.filters) if (y(r)) n.push(C(r));
70
- else {
71
- let e = S(r);
72
- e && t.push(e);
73
- }
74
- return {
75
- condition: e.condition?.toLowerCase() === "or" ? "or" : "and",
76
- filters: t,
77
- subGroups: n
78
- };
79
- }
80
- function w(e) {
81
- return e ? [C(e)] : [];
82
- }
83
- function T(e) {
84
- return {
85
- expression: e.expression,
86
- parameters: Array.isArray(e.parameters) ? [...e.parameters] : []
87
- };
88
- }
89
- function E(e) {
90
- let t = e.subGroups ?? [];
91
- return {
92
- condition: e.condition === "or" ? "OR" : "AND",
93
- filters: [...e.filters.map(T), ...t.map((e) => E(e))]
94
- };
95
- }
96
- function D(e) {
97
- return !e || e.length === 0 ? [] : e.map((e) => E(e));
98
- }
99
- //#endregion
100
- //#region src/utils/filters/expressions.ts
101
- var O = () => [
102
- {
103
- id: "? = ?",
104
- key: "? = ?",
105
- expression: "? = ?",
106
- name: p("equals", { desc: "Filter expression for equals comparison" }),
107
- description: p("equals", { desc: "Filter expression for equals comparison" }),
108
- tiny: p("eq", { desc: "Short form of equals comparison" }),
109
- type: ["numeric", "hierarchy"],
110
- subtype: ["ip_address"]
111
- },
112
- {
113
- id: "? != ?",
114
- key: "? != ?",
115
- expression: "? != ?",
116
- name: p("not equals", { desc: "Filter expression for not equals comparison" }),
117
- description: p("not equals", { desc: "Filter expression for not equals comparison" }),
118
- tiny: p("not eq", { desc: "Short form of not equals comparison" }),
119
- type: ["numeric", "hierarchy"],
120
- subtype: ["ip_address"]
121
- },
122
- {
123
- id: "? in ?",
124
- key: "? in ?",
125
- expression: "? in ?",
126
- name: p("is in", { desc: "Filter expression for in comparison" }),
127
- description: p("is in", { desc: "Filter expression for in comparison" }),
128
- tiny: p("is in", { desc: "Filter expression for in comparison" }),
129
- type: ["numeric", "hierarchy"],
130
- subtype: ["ip_address"]
131
- },
132
- {
133
- id: "? not in ?",
134
- key: "? not in ?",
135
- expression: "? not in ?",
136
- name: p("is not in", { desc: "Filter expression for not in comparison" }),
137
- description: p("is not in", { desc: "Filter expression for not in comparison" }),
138
- tiny: p("is not in", { desc: "Filter expression for not in comparison" }),
139
- type: ["numeric", "hierarchy"],
140
- subtype: ["ip_address"]
141
- },
142
- {
143
- id: "? like ?",
144
- key: "? like ?",
145
- expression: "? like ?",
146
- name: p("contains", { desc: "Filter expression for contains comparison" }),
147
- description: p("contains", { desc: "Filter expression for contains comparison" }),
148
- tiny: p("cont", { desc: "Short form of contains comparison in filter expression" }),
149
- type: ["hierarchy"],
150
- subtype: ["ip_address"]
151
- },
152
- {
153
- id: "? not like ?",
154
- key: "? not like ?",
155
- expression: "? not like ?",
156
- name: p("does not contain", { desc: "Filter expression for does not contain comparison" }),
157
- description: p("does not contain", { desc: "Filter expression for does not contain comparison" }),
158
- tiny: p("not cont", { desc: "Short form of does not contain comparison in filter expression" }),
159
- type: ["hierarchy"],
160
- subtype: ["ip_address"]
161
- },
162
- {
163
- id: "? starts with ?",
164
- key: "? starts with ?",
165
- expression: "? starts with ?",
166
- name: p("starts with", { desc: "Filter expression for starts with comparison" }),
167
- description: p("starts with", { desc: "Filter expression for starts with comparison" }),
168
- tiny: p("starts with", { desc: "Filter expression for starts with comparison" }),
169
- type: ["hierarchy"],
170
- subtype: ["ip_address"]
171
- },
172
- {
173
- id: "? not starts with ?",
174
- key: "? not starts with ?",
175
- expression: "? not starts with ?",
176
- name: p("does not start with", { desc: "Filter expression for does not start with comparison" }),
177
- description: p("does not start with", { desc: "Filter expression for does not start with comparison" }),
178
- tiny: p("not starts with", { desc: "Short form of does not start with comparison in filter expression" }),
179
- type: ["hierarchy"],
180
- subtype: ["ip_address"]
181
- },
182
- {
183
- id: "? ends with ?",
184
- key: "? ends with ?",
185
- expression: "? ends with ?",
186
- name: p("ends with", { desc: "Filter expression for ends with comparison" }),
187
- description: p("ends with", { desc: "Filter expression for ends with comparison" }),
188
- tiny: p("ends with", { desc: "Filter expression for ends with comparison" }),
189
- type: ["hierarchy"],
190
- subtype: ["ip_address"]
191
- },
192
- {
193
- id: "? not ends with ?",
194
- key: "? not ends with ?",
195
- expression: "? not ends with ?",
196
- name: p("does not end with", { desc: "Filter expression for does not end with comparison" }),
197
- description: p("does not end with", { desc: "Filter expression for does not end with comparison" }),
198
- tiny: p("not ends with", { desc: "Short form of does not end with comparison in filter expression" }),
199
- type: ["hierarchy"],
200
- subtype: ["ip_address"]
201
- },
202
- {
203
- id: "? < ?",
204
- key: "? < ?",
205
- expression: "? < ?",
206
- name: p("less than", { desc: "Filter expression for less than comparison" }),
207
- description: p("less than", { desc: "Filter expression for less than comparison" }),
208
- tiny: "<",
209
- type: ["numeric", "datetime"],
210
- subtype: ["ip_address"]
211
- },
212
- {
213
- id: "? <= ?",
214
- key: "? <= ?",
215
- expression: "? <= ?",
216
- name: p("less than or equal", { desc: "Filter expression for less than or equal comparison" }),
217
- description: p("less than or equal", { desc: "Filter expression for less than or equal comparison" }),
218
- tiny: "<=",
219
- type: ["numeric", "datetime"],
220
- subtype: ["ip_address"]
221
- },
222
- {
223
- id: "? > ?",
224
- key: "? > ?",
225
- expression: "? > ?",
226
- name: p("greater than", { desc: "Filter expression for greater than comparison" }),
227
- description: p("greater than", { desc: "Filter expression for greater than comparison" }),
228
- tiny: ">",
229
- type: ["numeric", "datetime"],
230
- subtype: ["ip_address"]
231
- },
232
- {
233
- id: "? >= ?",
234
- key: "? >= ?",
235
- expression: "? >= ?",
236
- name: p("greater than or equal", { desc: "Filter expression for greater than or equal comparison" }),
237
- description: p("greater than or equal", { desc: "Filter expression for greater than or equal comparison" }),
238
- tiny: ">=",
239
- type: ["numeric", "datetime"],
240
- subtype: ["ip_address"]
241
- },
242
- {
243
- id: "? between ?",
244
- key: "? between ?",
245
- expression: "? between ?",
246
- name: p("is between", { desc: "Filter expression for between comparison" }),
247
- description: p("is between", { desc: "Filter expression for between comparison" }),
248
- tiny: p("between", { desc: "Short form of between comparison in filter expression" }),
249
- type: [],
250
- subtype: ["ip_address"]
251
- },
252
- {
253
- id: "last_now",
254
- key: "last_now",
255
- expression: "last_now",
256
- name: p("last (x) periods", { desc: "Filter expression for last (x) periods" }),
257
- description: p("last (x) periods", { desc: "Filter expression for last (x) periods" }),
258
- tiny: p("last", { desc: "Short form of last (x) periods in filter expression" }),
259
- type: ["datetime"]
260
- },
261
- {
262
- id: "last_available",
263
- key: "last_available",
264
- expression: "last_available",
265
- name: p("last (x) available periods", { desc: "Filter expression for last (x) available periods" }),
266
- description: p("last (x) available periods", { desc: "Filter expression for last (x) available periods" }),
267
- tiny: p("last available", { desc: "Short form of last (x) available periods in filter expression" }),
268
- type: ["datetime"]
269
- },
270
- {
271
- id: "last_completed",
272
- key: "last_completed",
273
- expression: "last_completed",
274
- name: p("last completed period", { desc: "Filter expression for last completed period" }),
275
- description: p("last completed (period)", { desc: "Filter expression for last completed period" }),
276
- tiny: p("last completed", { desc: "Short form of last completed period in filter expression" }),
277
- type: ["datetime"]
278
- },
279
- {
280
- id: "next_now",
281
- key: "next_now",
282
- expression: "next_now",
283
- name: p("next (x) periods", { desc: "Filter expression for next (x) periods" }),
284
- description: p("next (x) periods", { desc: "Filter expression for next (x) periods" }),
285
- tiny: p("next", { desc: "Short form of next (x) periods in filter expression" }),
286
- type: ["datetime"]
287
- },
288
- {
289
- id: "more_than_ago",
290
- key: "more_than_ago",
291
- expression: "more_than_ago",
292
- name: p("more than (x) periods ago", { desc: "Filter expression for more than (x) periods ago" }),
293
- description: p("more than (x) periods ago", { desc: "Filter expression for more than (x) periods ago" }),
294
- tiny: p("more than ago", { desc: "Short form of more than (x) periods ago in filter expression" }),
295
- type: ["datetime"]
296
- },
297
- {
298
- id: "or_more_ago",
299
- key: "or_more_ago",
300
- expression: "or_more_ago",
301
- name: p("(x) periods or more ago", { desc: "Filter expression for (x) periods or more ago" }),
302
- description: p("(x) periods or more ago", { desc: "Filter expression for (x) periods or more ago" }),
303
- tiny: p("or more ago", { desc: "Short form of (x) periods or more ago in filter expression" }),
304
- type: ["datetime"]
305
- },
306
- {
307
- id: "next_full",
308
- key: "next_full",
309
- expression: "next_full",
310
- name: p("next full (period)", { desc: "Filter expression for next full period" }),
311
- description: p("next full (period)", { desc: "Filter expression for next full period" }),
312
- tiny: p("next full", { desc: "Short form of next full period in filter expression" }),
313
- type: ["datetime"]
314
- },
315
- {
316
- id: "WTD",
317
- key: "to_date",
318
- expression: "to_date",
319
- unit: 4,
320
- name: p("week to date", { desc: "Filter expression for week to date" }),
321
- description: p("week to date", { desc: "Filter expression for week to date" }),
322
- tiny: p("WTD", { desc: "Short form of week to date in filter expression" }),
323
- type: ["datetime"]
324
- },
325
- {
326
- id: "MTD",
327
- key: "to_date",
328
- expression: "to_date",
329
- unit: 3,
330
- name: p("month to date", { desc: "Filter expression for month to date" }),
331
- description: p("month to date", { desc: "Filter expression for month to date" }),
332
- tiny: p("MTD", { desc: "Short form of month to date in filter expression" }),
333
- type: ["datetime"]
334
- },
335
- {
336
- id: "QTD",
337
- key: "to_date",
338
- expression: "to_date",
339
- unit: 2,
340
- name: p("quarter to date", { desc: "Filter expression for quarter to date" }),
341
- description: p("quarter to date", { desc: "Filter expression for quarter to date" }),
342
- tiny: p("QTD", { desc: "Short form of quarter to date in filter expression" }),
343
- type: ["datetime"]
344
- },
345
- {
346
- id: "YTD",
347
- key: "to_date",
348
- expression: "to_date",
349
- unit: 1,
350
- name: p("year to date", { desc: "Filter expression for year to date" }),
351
- description: p("year to date", { desc: "Filter expression for year to date" }),
352
- tiny: p("YTD", { desc: "Short form of year to date in filter expression" }),
353
- type: ["datetime"]
354
- },
355
- {
356
- id: "? is null",
357
- key: "? is null",
358
- expression: "? is null",
359
- name: p("is missing", { desc: "Filter expression for is missing" }),
360
- description: p("is missing", { desc: "Filter expression for is missing" }),
361
- tiny: p("missing", { desc: "Short form of is missing in filter expression" }),
362
- type: [
363
- "numeric",
364
- "datetime",
365
- "hierarchy",
366
- "spatial"
367
- ],
368
- subtype: ["ip_address"]
369
- },
370
- {
371
- id: "? is not null",
372
- key: "? is not null",
373
- expression: "? is not null",
374
- name: p("is not missing", { desc: "Filter expression for is not missing" }),
375
- description: p("is not missing", { desc: "Filter expression for is not missing" }),
376
- tiny: p("not missing", { desc: "Short form of is not missing in filter expression" }),
377
- type: [
378
- "numeric",
379
- "datetime",
380
- "hierarchy",
381
- "spatial"
382
- ],
383
- subtype: ["ip_address"]
384
- }
385
- ], k = (e, t, n) => {
386
- let r = /* @__PURE__ */ new Set(["? in ?", "? not in ?"]);
387
- return !e && !t ? O() : O().filter((i) => (e && i.type.includes(e) || t && i.subtype?.includes(t)) && !(n && r.has(i.key)));
388
- }, A = ":host{font-family:var(--luzmo-font-family);--var:blue}", j = class extends t(v(_, { validSizes: Object.values(g) })) {
389
- constructor(...e) {
390
- super(...e), this.hasLabel = !1, this.allowEmpty = !1, this.placeholder = "", this.disabled = !1, this.invalid = !1, this.isFormula = !1, this._expressionConfigurations = O();
391
- }
392
- static get styles() {
393
- return [l(A)];
394
- }
395
- _sendChangeEvent() {
396
- if (this.disabled) return;
397
- let e = { expression: this.filter?.expression };
398
- this.filter?.parameters?.[1]?.unit && (e.unit = this.filter?.parameters?.[1]?.unit), this.dispatchEvent(new CustomEvent("luzmo-expression-selected", {
399
- bubbles: !0,
400
- composed: !0,
401
- cancelable: !0,
402
- detail: e
403
- }));
404
- }
405
- setExpression(e) {
406
- this._richExpression = e?.detail?.value?.[0];
407
- let t = this._expressionConfigurations.find((e) => e.id === this._richExpression), n = structuredClone(this.filter);
408
- n.expression = t?.expression, t?.unit && (this._unit = t.unit, n?.parameters[0] && (n.parameters[1] = { unit: this._unit })), this.filter = n, this._sendChangeEvent();
409
- }
410
- willUpdate(e) {
411
- super.willUpdate(e);
412
- let t = e.has("filter"), n = e.has("type"), r = e.has("subtype"), i = e.has("isFormula"), a = k(this.type, this.subtype, this.isFormula), o = [
413
- "YTD",
414
- "QTD",
415
- "MTD",
416
- "WTD"
417
- ];
418
- if (this.filter?.expression === "to_date") {
419
- let e = this.filter?.parameters[1]?.unit ?? 1;
420
- this._unit = e, this._richExpression = o[e - 1] ?? "YTD";
421
- } else this._richExpression = this.filter?.expression;
422
- (n || r || i || t) && this.filter && !this.disabled && !a?.find((e) => e.expression === this.filter?.expression) ? (this.invalid = !0, console.warn(`Warning: ${this.filter?.expression} is not valid given the type: ${this.type} and subtype: ${this.subtype}`)) : this.invalid = !1, !this.filter?.expression && !this.allowEmpty && (this._richExpression = a?.[0]?.id, this.filter = {
423
- ...this.filter,
424
- expression: this._richExpression
425
- }, this._sendChangeEvent());
426
- }
427
- render() {
428
- let e = k(this.type, this.subtype, this.isFormula)?.map((e) => ({
429
- value: e.id,
430
- label: e.description,
431
- shortLabel: e.tiny
432
- })), t = this.disabled || !this.filter?.expression && !this.allowEmpty, n = c`<luzmo-field-label
433
- for="expression"
434
- size=${this.size}
435
- >${this.label ?? p("Select an expression", { desc: "Label for expression picker" })}</luzmo-field-label
436
- >`, r = this.hasLabel ? this.placeholder ?? p("Select...") : this.placeholder || this.label || p("Filter expression", { desc: "Accessible label for expression picker" });
437
- return c`${this.hasLabel ? n : ""}
438
- <luzmo-select
439
- label=${r}
440
- id="expression"
441
- size=${this.size}
442
- variant="highlight"
443
- selects="single"
444
- .language=${this.language}
445
- ?disabled=${t}
446
- ?invalid=${this.invalid}
447
- .options=${e}
448
- .value=${[this._richExpression]}
449
- @change=${this.setExpression}
450
- >
451
- </luzmo-select>`;
452
- }
453
- };
454
- //#endregion
455
- //#region src/components/filter-expression-picker/index.ts
456
- e([u({
457
- type: String,
458
- reflect: !0
459
- })], j.prototype, "filter", void 0), e([u({
460
- type: Boolean,
461
- attribute: "has-label",
462
- reflect: !0
463
- })], j.prototype, "hasLabel", void 0), e([u({
464
- type: String,
465
- reflect: !0
466
- })], j.prototype, "label", void 0), e([u({
467
- type: Boolean,
468
- attribute: "allow-empty",
469
- reflect: !0
470
- })], j.prototype, "allowEmpty", void 0), e([u({
471
- type: String,
472
- attribute: "placeholder",
473
- reflect: !0
474
- })], j.prototype, "placeholder", void 0), e([u({
475
- type: Boolean,
476
- attribute: "disabled",
477
- reflect: !0
478
- })], j.prototype, "disabled", void 0), e([u({
479
- type: String,
480
- attribute: "type",
481
- reflect: !0
482
- })], j.prototype, "type", void 0), e([u({
483
- type: String,
484
- attribute: "subtype",
485
- reflect: !0
486
- })], j.prototype, "subtype", void 0), e([u({
487
- type: Boolean,
488
- attribute: "invalid",
489
- reflect: !0
490
- })], j.prototype, "invalid", void 0), e([u({
491
- type: Boolean,
492
- attribute: "is-formula",
493
- reflect: !0
494
- })], j.prototype, "isFormula", void 0), e([d()], j.prototype, "_richExpression", void 0), e([d()], j.prototype, "_unit", void 0), j = e([f()], j), customElements.get("luzmo-filter-expression-picker") || customElements.define("luzmo-filter-expression-picker", j);
495
- //#endregion
496
- //#region src/components/filter-value-picker/filter-value-picker.module.scss?inline
497
- var M = ":host{--var:blue}", N = ":host{gap:var(--luzmo-filter-value-picker-datetime-gap,var(--filter-value-picker-datetime-gap));--filter-value-picker-datetime-gap:var(--luzmo-spacing-3);flex-direction:row;flex-shrink:1;min-width:0;display:flex}: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)}", P = class extends t(v(_, { validSizes: Object.values(g) })) {
498
- constructor(...e) {
499
- super(...e), this.contentLanguage = "en";
500
- }
501
- static get styles() {
502
- return [l(N)];
503
- }
504
- willUpdate(e) {
505
- super.willUpdate(e), e.get("filter") && ([
506
- "last_now",
507
- "last_available",
508
- "next_now",
509
- "more_than_ago",
510
- "or_more_ago"
511
- ].includes(this.filter?.expression) ? this.filter.parameters[1] = {
512
- quantity: this.filter?.parameters?.[1]?.quantity ?? 1,
513
- unit: this.filter?.parameters?.[1]?.unit ?? 1
514
- } : [
515
- "last_completed",
516
- "next_full",
517
- "to_date"
518
- ].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] : (/* @__PURE__ */ new Date()).toISOString());
519
- }
520
- _sendChangeEvent() {
521
- this.filter.parameters = [{ ...this.filter?.parameters?.[0] }, this._value], this.dispatchEvent(new CustomEvent("luzmo-filter-value-changed", {
522
- bubbles: !0,
523
- composed: !0,
524
- cancelable: !0,
525
- detail: { value: this._value }
526
- }));
527
- }
528
- setDate(e) {
529
- this._value = e.detail.value, this._value !== this.filter?.parameters?.[1] && this._sendChangeEvent();
530
- }
531
- setUnit(e) {
532
- let t = a.find((t) => t.key === e?.target?.value)?.level;
533
- this.filter?.parameters?.[1]?.unit !== t && (this._value = {
534
- unit: t ?? 1,
535
- quantity: this.filter?.parameters?.[1]?.quantity ?? 1
536
- }, this._sendChangeEvent());
537
- }
538
- setQuantity(e) {
539
- let t = e?.target?.value;
540
- this.filter?.parameters?.[1]?.quantity !== t && (this._value = {
541
- quantity: t,
542
- unit: this.filter?.parameters?.[1]?.unit ?? 1
543
- }, this._sendChangeEvent());
544
- }
545
- renderDatePicker() {
546
- let e = "second";
547
- 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"), c`<luzmo-date-time-picker
548
- aria-label=${p("Filter date", { desc: "Aria label for filter date picker" })}
549
- .size=${this.size}
550
- .precision=${e}
551
- .timeZone=${this.timeZone}
552
- @change=${this.setDate}
553
- .value=${this.filter?.parameters?.[1]}
554
- ></luzmo-date-time-picker>`;
555
- }
556
- renderQuantityField() {
557
- return c`<luzmo-number-field
558
- label=${p("Quantity", { desc: "Label for quantity number field" })}
559
- .size=${this.size}
560
- .value=${this.filter?.parameters?.[1]?.quantity}
561
- @input=${this.setQuantity}
562
- @change=${this.setQuantity}
563
- ></luzmo-number-field>`;
564
- }
565
- renderUnitPicker() {
566
- let e = a.map((e) => c`<luzmo-menu-item .value=${e.key}>
567
- ${e.i18n()}
568
- </luzmo-menu-item>`), t = a.find((e) => e.level === this.filter?.parameters?.[1]?.unit)?.key ?? a?.[0]?.key;
569
- return c`<luzmo-picker
570
- .label=${p("Time unit", { desc: "Aria label for time unit picker" })}
571
- .size=${this.size}
572
- .value=${t}
573
- @change=${this.setUnit}
574
- variant="highlight"
575
- >${e}</luzmo-picker
576
- >`;
577
- }
578
- render() {
579
- let e = this.filter?.expression;
580
- return [
581
- "last_now",
582
- "last_available",
583
- "next_now",
584
- "more_than_ago",
585
- "or_more_ago"
586
- ].includes(e) ? c`${this.renderQuantityField()}${this.renderUnitPicker()}` : ["last_completed", "next_full"].includes(e) ? this.renderUnitPicker() : this.renderDatePicker();
587
- }
588
- };
589
- //#endregion
590
- //#region src/components/filter-value-picker-datetime/index.ts
591
- e([u({
592
- type: String,
593
- attribute: "content-language",
594
- reflect: !0
595
- })], P.prototype, "contentLanguage", void 0), e([u({
596
- type: String,
597
- attribute: "time-zone",
598
- reflect: !0
599
- })], P.prototype, "timeZone", void 0), e([u({
600
- type: Object,
601
- reflect: !1
602
- })], P.prototype, "filter", void 0), P = e([f()], P), customElements.get("luzmo-filter-value-picker-datetime") || customElements.define("luzmo-filter-value-picker-datetime", P);
603
- //#endregion
604
- //#region src/components/filter-value-picker-hierarchy/filter-value-picker-hierarchy.module.scss?inline
605
- var F = ".missing-value{color:var(--luzmo-filter-value-picker-hierarchy-missing-value-color,#767676)}:host{--var:blue}", I = 5e3, L = class extends t(v(_, { validSizes: Object.values(g) })) {
606
- constructor(...e) {
607
- super(...e), this.contentLanguage = "en", this._hierarchyValues = [], this._retrieving = !0, this._search = "", this._error = null, this._allValuesRetrieved = !1, this._runningQueries = [];
608
- }
609
- static get styles() {
610
- return [l(F)];
611
- }
612
- connectedCallback() {
613
- super.connectedCallback();
614
- let e = {};
615
- 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.configure(e);
616
- }
617
- willUpdate(e) {
618
- if (super.willUpdate(e), e.has("filter") && this.filter) {
619
- let t = e.get("filter")?.expression;
620
- (e.get("filter")?.parameters?.[0]?.columnId || e.get("filter")?.parameters?.[0]?.formulaId) !== (this.filter?.parameters?.[0]?.columnId || this.filter?.parameters?.[0]?.formulaId) && ([
621
- "? in ?",
622
- "? not in ?",
623
- "? = ?",
624
- "? != ?"
625
- ].includes(this.filter?.expression) || ![
626
- "? in ?",
627
- "? not in ?",
628
- "? = ?",
629
- "? != ?"
630
- ].includes(t)) && (this._hierarchyValues = [], this._allValuesRetrieved = !1, this._retrieving = !0);
631
- }
632
- }
633
- async _fetchHierarchyValues(e = 0) {
634
- if (this._allValuesRetrieved) {
635
- this._retrieving = !1;
636
- return;
637
- }
638
- if (!this.filter?.parameters?.[0]) {
639
- this._retrieving = !1, this._error = "Missing column parameters";
640
- return;
641
- }
642
- let t = this.filter.parameters[0], r = t.columnId, i = t.formulaId, a = t.datasetId;
643
- if (!r && !i) {
644
- this._retrieving = !1, this._error = "Missing column id or formula id";
645
- return;
646
- } else if (!a) {
647
- this._retrieving = !1, this._error = "Missing dataset id";
648
- return;
649
- }
650
- this._retrieving = !0, this._error = null;
651
- let o = {
652
- expression: "? like ?",
653
- parameters: [{
654
- column_id: r,
655
- formula_id: i,
656
- dataset_id: a
657
- }, this._search]
658
- }, s = {
659
- dimensions: [{
660
- column_id: r,
661
- formula_id: i,
662
- dataset_id: a
663
- }],
664
- where: [],
665
- order: [{
666
- column_id: r,
667
- formula_id: i,
668
- dataset_id: a,
669
- order: "asc"
670
- }],
671
- limit: {
672
- by: I,
673
- offset: e
674
- }
675
- };
676
- this._search && this._allValuesRetrieved && s.where.push(o);
677
- let c = new AbortController(), l = new Promise((e, t) => {
678
- n.fetchData(s).then(e).catch(t), c.signal.addEventListener("abort", () => {
679
- console.warn("Request aborted"), t({ status: "aborted" });
680
- });
681
- }), u = {
682
- promise: l,
683
- abortController: c
684
- };
685
- this._runningQueries.push(u);
686
- try {
687
- let t = await l, n = t && Array.isArray(t.data) ? t.data.map((e) => e[0]) : [];
688
- this._search || (this._allValuesRetrieved = n.length < I), this._hierarchyValues = e > 0 ? [...this._hierarchyValues, ...n] : n;
689
- } catch (e) {
690
- if (e?.status === "aborted") return;
691
- this._error = e instanceof Error ? e.message : "Unknown error", this._hierarchyValues = [];
692
- } finally {
693
- this._runningQueries = this._runningQueries.filter((e) => e.promise !== l), this._retrieving = !1;
694
- }
695
- }
696
- _sendChangeEvent() {
697
- this.dispatchEvent(new CustomEvent("luzmo-filter-value-changed", {
698
- bubbles: !0,
699
- composed: !0,
700
- cancelable: !0,
701
- detail: { value: this._value }
702
- }));
703
- }
704
- setHierarchy(e) {
705
- let t;
706
- 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 = {
707
- ...this.filter,
708
- parameters: [{ ...this.filter?.parameters?.[0] }, this._value]
709
- }, this._sendChangeEvent());
710
- }
711
- onScrolled(e) {
712
- !this._retrieving && !this._allValuesRetrieved && e?.detail?.last === this._hierarchyValues.length - 1 && this._fetchHierarchyValues(this._hierarchyValues.length);
713
- }
714
- renderTextField() {
715
- return c`<luzmo-text-field
716
- label=${p("Filter value", { desc: "Label for filter value text field" })}
717
- .size=${this.size}
718
- @change=${this.setHierarchy}
719
- @input=${this.setHierarchy}
720
- .value=${this.filter?.parameters?.[1] ?? ""}
721
- ></luzmo-text-field>`;
722
- }
723
- setSearchString(e) {
724
- this._search = e?.detail?.string ?? "", this._allValuesRetrieved || (this._searchQueryTimeout && (this._runningQueries.forEach((e) => {
725
- e?.abortController && e.abortController.abort();
726
- }), this._runningQueries = [], clearTimeout(this._searchQueryTimeout)), this._searchQueryTimeout = setTimeout(() => {
727
- this._fetchHierarchyValues();
728
- }, 500));
729
- }
730
- resetSearchString() {
731
- this._search = "";
732
- }
733
- onOpened() {
734
- this._fetchHierarchyValues();
735
- }
736
- renderHierarchyPicker() {
737
- if (this._error) return c`<div class="error" role="alert">Error: ${this._error}</div>`;
738
- let e = (this._search ? this._hierarchyValues.filter((e) => i(e.name, this.contentLanguage, { allowEmpty: !0 })?.toLowerCase().includes(this._search.toLowerCase()) || e.toString().toLowerCase().includes(this._search.toLowerCase())) : this._hierarchyValues).map((e) => {
739
- let t = i(e?.name, this.contentLanguage) ?? "N/A";
740
- return typeof t != "string" && (t = "N/A"), {
741
- value: e?.id,
742
- label: t
743
- };
744
- }), t = this.filter?.expression, n = ["? = ?", "? != ?"].includes(t), r = p("Selected {count} items"), a = p("Search"), o = p("No data"), s = p("No results"), l = p("Select...");
745
- return c`<luzmo-select
746
- .size=${this.size}
747
- .label=${l}
748
- .retrieving=${this._retrieving}
749
- .selects=${n ? "single" : "multiple"}
750
- .variant=${n ? "highlight" : "checkboxes"}
751
- emphasized
752
- no-wrap
753
- ?invalid=${!!this._error}
754
- .multipleLabelTemplate=${r}
755
- .searchLabel=${a}
756
- .noDataLabel=${o}
757
- .noResultsLabel=${s}
758
- @change=${this.setHierarchy}
759
- @luzmo-search=${this.setSearchString}
760
- @luzmo-opened=${this.onOpened}
761
- @luzmo-closed=${this.resetSearchString}
762
- @luzmo-scrolled=${this.onScrolled}
763
- .options=${e}
764
- .value=${n ? [this.filter?.parameters?.[1]] : this.filter?.parameters?.[1]}
765
- >
766
- </luzmo-select>`;
767
- }
768
- render() {
769
- let e = this.filter?.expression;
770
- return [
771
- "? in ?",
772
- "? not in ?",
773
- "? = ?",
774
- "? != ?"
775
- ].includes(e) ? this.renderHierarchyPicker() : this.renderTextField();
776
- }
777
- };
778
- //#endregion
779
- //#region src/components/filter-value-picker-hierarchy/index.ts
780
- e([u({
781
- type: String,
782
- attribute: "api-url",
783
- reflect: !0
784
- })], L.prototype, "apiUrl", void 0), e([u({
785
- type: String,
786
- attribute: "auth-key",
787
- reflect: !0
788
- })], L.prototype, "authKey", void 0), e([u({
789
- type: String,
790
- attribute: "auth-token",
791
- reflect: !0
792
- })], L.prototype, "authToken", void 0), e([u({
793
- type: Number,
794
- attribute: "cache-time",
795
- reflect: !0
796
- })], L.prototype, "cacheTime", void 0), e([u({
797
- type: String,
798
- attribute: "content-language",
799
- reflect: !0
800
- })], L.prototype, "contentLanguage", void 0), e([u({
801
- type: Object,
802
- reflect: !1
803
- })], L.prototype, "filter", void 0), e([d()], L.prototype, "_hierarchyValues", void 0), e([d()], L.prototype, "_retrieving", void 0), e([d()], L.prototype, "_search", void 0), e([d()], L.prototype, "_error", void 0), L = e([f()], L), customElements.get("luzmo-filter-value-picker-hierarchy") || customElements.define("luzmo-filter-value-picker-hierarchy", L);
804
- //#endregion
805
- //#region src/components/filter-value-picker-numeric/filter-value-picker-numeric.module.scss?inline
806
- var R = ".missing-value{opacity:.4}:host{--var:blue}", z = 5e3, B = class extends t(v(_, { validSizes: Object.values(g) })) {
807
- constructor(...e) {
808
- super(...e), this.contentLanguage = "en", this._numericValues = [], this._retrieving = !0, this._search = "", this._error = null, this._allValuesRetrieved = !1, this._runningQueries = [];
809
- }
810
- static get styles() {
811
- return [l(R)];
812
- }
813
- connectedCallback() {
814
- super.connectedCallback();
815
- let e = {};
816
- 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.configure(e);
817
- }
818
- willUpdate(e) {
819
- if (super.willUpdate(e), e.has("filter") && this.filter) {
820
- let t = e.get("filter")?.expression, n = this.filter?.expression;
821
- ((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);
822
- }
823
- }
824
- async _fetchNumericValues(e = 0) {
825
- if (this._allValuesRetrieved) {
826
- this._retrieving = !1;
827
- return;
828
- }
829
- if (!this.filter?.parameters?.[0]) {
830
- this._retrieving = !1, this._error = "Missing column parameters";
831
- return;
832
- }
833
- let t = this.filter.parameters[0], r = t.columnId, i = t.formulaId, a = t.datasetId;
834
- if (!r && !i) {
835
- this._retrieving = !1, this._error = "Missing column id or formula id";
836
- return;
837
- } else if (!a) {
838
- this._retrieving = !1, this._error = "Missing dataset id";
839
- return;
840
- }
841
- this._retrieving = !0, this._error = null;
842
- let o = {
843
- expression: "? like ?",
844
- parameters: [{
845
- dataset_id: a,
846
- expression: `CAST({${a}:${r ?? i}},hierarchy)`
847
- }, this._search]
848
- }, s = {
849
- dimensions: [{
850
- column_id: r,
851
- formula_id: i,
852
- dataset_id: a
853
- }],
854
- where: [],
855
- order: [{
856
- column_id: r,
857
- formula_id: i,
858
- dataset_id: a,
859
- order: "asc"
860
- }],
861
- limit: {
862
- by: z,
863
- offset: e
864
- }
865
- };
866
- this._search && !this._allValuesRetrieved && s.where.push(o);
867
- let c = new AbortController(), l = new Promise((e, t) => {
868
- n.fetchData(s).then(e).catch(t), c.signal.addEventListener("abort", () => {
869
- console.warn("Request aborted"), t({ status: "aborted" });
870
- });
871
- }), u = {
872
- promise: l,
873
- abortController: c
874
- };
875
- this._runningQueries.push(u);
876
- try {
877
- let t = await l, n = t && Array.isArray(t.data) ? t.data.map((e) => e[0]) : [];
878
- this._search || (this._allValuesRetrieved = n.length < z), this._numericValues = e > 0 ? [...this._numericValues, ...n] : n;
879
- } catch (e) {
880
- if (e?.status === "aborted") return;
881
- this._error = e instanceof Error ? e.message : "Unknown error", this._numericValues = [];
882
- } finally {
883
- this._runningQueries = this._runningQueries.filter((e) => e.promise !== l), this._retrieving = !1;
884
- }
885
- }
886
- _sendChangeEvent() {
887
- this.dispatchEvent(new CustomEvent("luzmo-filter-value-changed", {
888
- bubbles: !0,
889
- composed: !0,
890
- cancelable: !0,
891
- detail: { value: this._value }
892
- }));
893
- }
894
- setValue(e) {
895
- let t = ["? in ?", "? not in ?"].includes(this.filter?.expression) ? e?.detail?.value : e?.target?.value;
896
- this._value !== t && (this._value = t, this.filter = {
897
- ...this.filter,
898
- parameters: [{ ...this.filter?.parameters?.[0] }, t]
899
- }, this._sendChangeEvent());
900
- }
901
- selectValue(e) {
902
- let t = (e.detail?.value ?? "").map((e) => Number.parseFloat(e));
903
- this.filter = {
904
- ...this.filter,
905
- parameters: [{ ...this.filter?.parameters?.[0] }, t]
906
- }, this._value = t, this._sendChangeEvent();
907
- }
908
- onScrolled(e) {
909
- !this._retrieving && !this._allValuesRetrieved && e?.detail?.last === this._numericValues.length - 1 && this._fetchNumericValues(this._numericValues.length);
910
- }
911
- renderNumberField() {
912
- return c`<luzmo-number-field
913
- label="Numeric filter value"
914
- grows
915
- .size=${this.size}
916
- @change=${this.setValue}
917
- @input=${this.setValue}
918
- .value=${this.filter?.parameters?.[1]}
919
- ></luzmo-number-field>`;
920
- }
921
- setSearchString(e) {
922
- this._search = e?.detail?.string ?? "", this._allValuesRetrieved || (this._searchQueryTimeout && (this._runningQueries.forEach((e) => {
923
- e?.abortController && e.abortController.abort();
924
- }), this._runningQueries = [], clearTimeout(this._searchQueryTimeout)), this._searchQueryTimeout = setTimeout(() => {
925
- this._fetchNumericValues();
926
- }, 500));
927
- }
928
- resetSearchString() {
929
- this._search = "";
930
- }
931
- onOpened() {
932
- this._fetchNumericValues();
933
- }
934
- renderValuePicker() {
935
- if (this._error) return c`<div class="error" role="alert">${this._error}</div>`;
936
- let e = this._numericValues.filter((e) => e.toString().toLowerCase().includes(this._search.toLowerCase())).map((e) => ({
937
- value: e,
938
- label: e
939
- })), t = p("Selected {count} items"), n = p("Search"), r = p("No data"), i = p("No results"), a = p("Select...");
940
- return c`<luzmo-select
941
- .size=${this.size}
942
- .label=${a}
943
- .retrieving=${this._retrieving}
944
- selects="multiple"
945
- variant="checkboxes"
946
- emphasized
947
- no-wrap
948
- ?invalid=${!!this._error}
949
- .multipleLabelTemplate=${t}
950
- .searchLabel=${n}
951
- .noDataLabel=${r}
952
- .noResultsLabel=${i}
953
- @change=${this.selectValue}
954
- @luzmo-search=${this.setSearchString}
955
- @luzmo-opened=${this.onOpened}
956
- @luzmo-closed=${this.resetSearchString}
957
- @luzmo-scrolled=${this.onScrolled}
958
- .options=${e}
959
- .value=${this.filter?.parameters?.[1]}
960
- >
961
- </luzmo-select>`;
962
- }
963
- render() {
964
- let e = this.filter?.expression;
965
- return ["? in ?", "? not in ?"].includes(e) ? this.renderValuePicker() : this.renderNumberField();
966
- }
967
- };
968
- //#endregion
969
- //#region src/components/filter-value-picker-numeric/index.ts
970
- e([u({
971
- type: String,
972
- attribute: "api-url",
973
- reflect: !0
974
- })], B.prototype, "apiUrl", void 0), e([u({
975
- type: String,
976
- attribute: "auth-key",
977
- reflect: !0
978
- })], B.prototype, "authKey", void 0), e([u({
979
- type: String,
980
- attribute: "auth-token",
981
- reflect: !0
982
- })], B.prototype, "authToken", void 0), e([u({
983
- type: Number,
984
- attribute: "cache-time",
985
- reflect: !0
986
- })], B.prototype, "cacheTime", void 0), e([u({
987
- type: String,
988
- attribute: "content-language",
989
- reflect: !0
990
- })], B.prototype, "contentLanguage", void 0), e([u({
991
- type: Object,
992
- reflect: !1
993
- })], B.prototype, "filter", void 0), e([d()], B.prototype, "_numericValues", void 0), e([d()], B.prototype, "_retrieving", void 0), e([d()], B.prototype, "_search", void 0), e([d()], B.prototype, "_error", void 0), B = e([f()], B), customElements.get("luzmo-filter-value-picker-numeric") || customElements.define("luzmo-filter-value-picker-numeric", B);
994
- //#endregion
995
- //#region src/components/filter-value-picker/filter-value-picker.ts
996
- var V = class extends t(v(_, { validSizes: Object.values(g) })) {
997
- constructor(...e) {
998
- super(...e), this.contentLanguage = "en", this._expressionsWithoutValuePicker = /* @__PURE__ */ new Set([
999
- "? is null",
1000
- "? is not null",
1001
- "to_date"
1002
- ]);
1003
- }
1004
- static get styles() {
1005
- return [l(M)];
1006
- }
1007
- _sendChangeEvent(e) {
1008
- this.dispatchEvent(new CustomEvent("luzmo-filter-value-changed", {
1009
- bubbles: !0,
1010
- composed: !0,
1011
- cancelable: !0,
1012
- detail: { value: e }
1013
- }));
1014
- }
1015
- setFilterValue(e) {
1016
- e.stopPropagation(), this._sendChangeEvent(e?.detail?.value);
1017
- }
1018
- renderNumericValuePicker() {
1019
- return c`<luzmo-filter-value-picker-numeric
1020
- .apiUrl=${this.apiUrl}
1021
- .authKey=${this.authKey}
1022
- .authToken=${this.authToken}
1023
- .cacheTime=${this.cacheTime}
1024
- .filter=${this.filter}
1025
- .size=${this.size}
1026
- .language=${this.language}
1027
- .contentLanguage=${this.contentLanguage}
1028
- @luzmo-filter-value-changed=${this.setFilterValue}
1029
- ></luzmo-filter-value-picker-numeric>`;
1030
- }
1031
- renderHierarchyValuePicker() {
1032
- return c`<luzmo-filter-value-picker-hierarchy
1033
- .apiUrl=${this.apiUrl}
1034
- .authKey=${this.authKey}
1035
- .authToken=${this.authToken}
1036
- .cacheTime=${this.cacheTime}
1037
- .filter=${this.filter}
1038
- .size=${this.size}
1039
- .language=${this.language}
1040
- .contentLanguage=${this.contentLanguage}
1041
- @luzmo-filter-value-changed=${this.setFilterValue}
1042
- ></luzmo-filter-value-picker-hierarchy>`;
1043
- }
1044
- renderDateTimeValuePicker() {
1045
- return c`<luzmo-filter-value-picker-datetime
1046
- .apiUrl=${this.apiUrl}
1047
- .authKey=${this.authKey}
1048
- .authToken=${this.authToken}
1049
- .cacheTime=${this.cacheTime}
1050
- .filter=${this.filter}
1051
- .timeZone=${this.timeZone}
1052
- .language=${this.language}
1053
- .contentLanguage=${this.contentLanguage}
1054
- .size=${this.size}
1055
- @luzmo-filter-value-changed=${this.setFilterValue}
1056
- ></luzmo-filter-value-picker-datetime>`;
1057
- }
1058
- renderDisabledTextField() {
1059
- let e = this.filter?.parameters?.[1] ?? "";
1060
- return c`<luzmo-text-field
1061
- label=${p("Filter value", { desc: "Label for filter value text field" })}
1062
- .size=${this.size}
1063
- .value=${e}
1064
- .disabled=${!0}
1065
- ></luzmo-text-field>`;
1066
- }
1067
- render() {
1068
- let e = this.valueType ?? "", t = this.filter?.expression;
1069
- return !t || this._expressionsWithoutValuePicker.has(t) ? c`
1070
-
1071
- ` : [
1072
- "numeric",
1073
- "hierarchy",
1074
- "datetime"
1075
- ].includes(e) ? e === "numeric" ? this.renderNumericValuePicker() : e === "datetime" ? this.renderDateTimeValuePicker() : this.renderHierarchyValuePicker() : typeof this.filter?.parameters?.[1] == "string" ? this.renderDisabledTextField() : c`
1076
-
1077
- `;
1078
- }
1079
- };
1080
- //#endregion
1081
- //#region src/components/filter-value-picker/index.ts
1082
- e([u({
1083
- type: String,
1084
- attribute: "api-url",
1085
- reflect: !0
1086
- })], V.prototype, "apiUrl", void 0), e([u({
1087
- type: String,
1088
- attribute: "auth-key",
1089
- reflect: !0
1090
- })], V.prototype, "authKey", void 0), e([u({
1091
- type: String,
1092
- attribute: "auth-token",
1093
- reflect: !0
1094
- })], V.prototype, "authToken", void 0), e([u({
1095
- type: Number,
1096
- attribute: "cache-time",
1097
- reflect: !0
1098
- })], V.prototype, "cacheTime", void 0), e([u({
1099
- type: String,
1100
- attribute: "content-language",
1101
- reflect: !0
1102
- })], V.prototype, "contentLanguage", void 0), e([u({
1103
- type: String,
1104
- attribute: "time-zone",
1105
- reflect: !0
1106
- })], V.prototype, "timeZone", void 0), e([u({
1107
- type: String,
1108
- attribute: "value-type",
1109
- reflect: !0
1110
- })], V.prototype, "valueType", void 0), e([u({
1111
- type: Object,
1112
- reflect: !1
1113
- })], V.prototype, "filter", void 0), customElements.get("luzmo-filter-value-picker") || customElements.define("luzmo-filter-value-picker", V);
1114
- //#endregion
1115
- //#region src/components/filter-item/filter-item.module.scss?inline
1116
- var H = ":host{flex-direction:row;min-width:0;max-width:100%;display:flex}[role=group]{gap:var(--luzmo-filter-item-gap,var(--filter-item-gap));flex-direction:row;min-width:0;max-width:100%;display:flex}luzmo-data-fields-select{flex-shrink:1;min-width:0}luzmo-filter-value-picker{flex-shrink:2;min-width:0}:host{--filter-item-gap:var(--luzmo-spacing-3)}:host([size=s]){--filter-item-gap:var(--luzmo-spacing-2)}:host([size=m]){--filter-item-gap:var(--luzmo-spacing-3)}:host([size=l]){--filter-item-gap:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1))}:host([size=xl]){--filter-item-gap:var(--luzmo-spacing-4)}", U = class extends t(v(_, { validSizes: Object.values(g) })) {
1117
- constructor(...e) {
1118
- super(...e), this.apiUrl = "https://api.luzmo.com", this.contentLanguage = "en", this.filter = {}, this._loading = !1, this._datasetsDataFields = [];
1119
- }
1120
- static get styles() {
1121
- return [l(H)];
1122
- }
1123
- connectedCallback() {
1124
- super.connectedCallback();
1125
- let e = {};
1126
- this.apiUrl && (e.apiUrl = this.apiUrl), this.cacheTime && (e.staleTime = this.cacheTime, e.gcTime = this.cacheTime * 2), e.authKey = this.authKey || "", e.authToken = this.authToken || "", n.configure(e);
1127
- }
1128
- _clearTypeState() {
1129
- this._type = void 0, this._subType = void 0, this._isFormula = void 0;
1130
- }
1131
- async _fetchDatasetDataFields() {
1132
- if (!this.datasetIds || this.datasetIds.length === 0) {
1133
- this._error = "Missing dataset ids to fetch columns & formulas", this._datasetsDataFields = [], this._loading = !1;
1134
- return;
1135
- }
1136
- let { valid: e, invalid: t } = r(this.datasetIds);
1137
- if (t.length > 0 && console.warn(`[LuzmoFilterItem] Invalid dataset IDs provided (not valid UUIDs): ${t.join(", ")}. These will be skipped.`), e.length === 0) {
1138
- this._error = "Invalid dataset IDs provided. Dataset IDs must be valid UUIDs.", this._datasetsDataFields = [], this._loading = !1;
1139
- return;
1140
- }
1141
- this._loading = !0, this._error = null;
1142
- try {
1143
- let t = await n.fetchDatasetsWithColumnsAndFormulas(e);
1144
- for (let e of t) for (let t of [...e.columns, ...e.formulas]) t.datasetId = e.id;
1145
- this._datasetsDataFields = t;
1146
- } catch (e) {
1147
- console.error("Error fetching dataset columns & formulas:", e), this._error = e instanceof Error ? e.message : "Unknown error", this._datasetsDataFields = [];
1148
- } finally {
1149
- this._loading = !1;
1150
- }
1151
- }
1152
- willUpdate(e) {
1153
- super.willUpdate(e);
1154
- let t = e.has("filter"), r = e.has("datasetIds"), i = e.has("authKey"), a = e.has("authToken"), o = e.has("_datasetsDataFields");
1155
- if (t || r || o && this.filter?.parameters?.[0]?.columnId && (this.filter?.parameters?.[0]?.datasetId || this.filter?.parameters?.[0]?.formulaId)) if (!this.datasetIds || this.datasetIds.length === 0 || this._datasetsDataFields.length === 0) this._clearTypeState();
1156
- else {
1157
- let e = this._datasetsDataFields.find((e) => e.id === this.filter.parameters?.[0]?.datasetId);
1158
- if (e) {
1159
- let t = !1;
1160
- for (let n of [...e.columns || [], ...e?.formulas || []]) if (n.id === this.filter.parameters?.[0]?.columnId || n.id === this.filter.parameters?.[0]?.formulaId) {
1161
- this._type = n.type, this._subType = n.subtype, this._isFormula = n.id === this.filter.parameters?.[0]?.formulaId, t = !0;
1162
- break;
1163
- }
1164
- t || this._clearTypeState();
1165
- } else this._clearTypeState();
1166
- }
1167
- if (i || a) {
1168
- let e = {
1169
- authKey: this.authKey || "",
1170
- authToken: this.authToken || ""
1171
- };
1172
- n.configure(e);
1173
- }
1174
- (r || i || a) && this._fetchDatasetDataFields();
1175
- }
1176
- _sendChangeEvent() {
1177
- this.dispatchEvent(new CustomEvent("luzmo-filter-changed", {
1178
- bubbles: !0,
1179
- composed: !0,
1180
- cancelable: !0,
1181
- detail: { filter: this.filter }
1182
- }));
1183
- }
1184
- setFilterDataField(e) {
1185
- if (this._cannotReferenceColumn()) return;
1186
- let t = e.detail?.dataFields?.[0], n = this._type, r = this.filter?.parameters?.[0]?.columnId || this.filter?.parameters?.[0]?.formulaId, i = t?.columnId || t?.formulaId;
1187
- this._type = t?.type, this._subType = t?.subtype, this._isFormula = !!t?.formulaId;
1188
- let a = k(this._type, this._subType, this._isFormula);
1189
- this.filter = structuredClone(this.filter ?? {}), a?.includes(this.filter?.expression) || (this.filter.expression = a?.[0]?.expression), this.filter.parameters = this.filter?.parameters ?? [], this.filter.parameters[0] = { datasetId: t?.datasetId }, this._isFormula ? this.filter.parameters[0].formulaId = t?.formulaId : this.filter.parameters[0].columnId = t?.columnId, t?.lowestLevel, n === this._type ? r !== i && this._type === "hierarchy" && (this.filter.parameters[1] = ["? in ?", "? not in ?"].includes(this.filter.expression) ? [] : "") : this._type === "hierarchy" ? (this.filter.expression = "? like ?", this.filter.parameters[1] = "") : this._type === "numeric" ? (this.filter.expression = "? > ?", this.filter.parameters[1] = 0) : this._type === "datetime" ? (this.filter.expression = "? < ?", this.filter.parameters[1] = (/* @__PURE__ */ new Date()).toISOString()) : (this.filter.expression = "? is not null", this.filter.parameters = [this.filter.parameters[0]]), this._sendChangeEvent();
1190
- }
1191
- setFilterExpression(e) {
1192
- if (this._cannotReferenceColumn()) return;
1193
- let t = structuredClone(this.filter ?? {}), n = t.expression;
1194
- if (t.expression = e.detail?.expression, n !== t.expression) {
1195
- if (["? is null", "? is not null"].includes(t.expression)) t.parameters = [t.parameters[0]];
1196
- else if (this._type === "datetime") if ([
1197
- "YTD",
1198
- "QTD",
1199
- "MTD",
1200
- "WTD"
1201
- ].includes(t.expression)) {
1202
- let n = e?.detail?.unit;
1203
- n && (t.parameters[1] = { unit: typeof n == "number" ? n : 1 });
1204
- } else if ([
1205
- "last_completed",
1206
- "next_full",
1207
- "to_date"
1208
- ].includes(t.expression)) {
1209
- let e = t?.parameters?.[1]?.unit;
1210
- t.parameters[1] = { unit: typeof e == "number" ? e : 1 };
1211
- } else if ([
1212
- "last_now",
1213
- "last_available",
1214
- "next_now",
1215
- "more_than_ago",
1216
- "or_more_ago"
1217
- ].includes(t.expression)) {
1218
- let e = t?.parameters?.[1]?.unit, n = t?.parameters?.[1]?.quantity;
1219
- t.parameters[1] = {
1220
- unit: typeof e == "number" ? e : 1,
1221
- quantity: typeof n == "number" ? n : 1
1222
- };
1223
- } else t.parameters[1] = (/* @__PURE__ */ new Date()).toISOString();
1224
- else this._type === "hierarchy" ? ["? in ?", "? not in ?"].includes(t.expression) ? ["? = ?", "? != ?"].includes(n) ? t.parameters[1] = t.parameters[1] ? [t.parameters[1]] : [] : t.parameters[1] = [] : ["? = ?", "? != ?"].includes(t.expression) ? ["? in ?", "? not in ?"].includes(n) ? t.parameters[1] = Array.isArray(t.parameters[1]) && t.parameters[1][0] ? t.parameters[1][0] : "" : t.parameters[1] = "" : t.parameters[1] = ["? in ?", "? not in ?"].includes(n) ? "" : t.parameters[1] ?? "" : this._type === "numeric" && (["? in ?", "? not in ?"].includes(t.expression) && ["? in ?", "? not in ?"].includes(n) ? t.parameters[1] = t.parameters[1] ?? [] : ["? in ?", "? not in ?"].includes(t.expression) ? t.parameters[1] = [] : t.parameters[1] = ["? in ?", "? not in ?"].includes(n) ? 0 : t.parameters[1] ?? 0);
1225
- this.filter = t, this._sendChangeEvent();
1226
- }
1227
- }
1228
- setFilterValue(e) {
1229
- this._cannotReferenceColumn() || (this.filter.parameters[1] = e?.detail?.value, this._sendChangeEvent());
1230
- }
1231
- _cannotReferenceColumn() {
1232
- if (!(this.filter?.parameters?.[0]?.columnId || this.filter?.parameters?.[0]?.formulaId)) return !1;
1233
- if (!this.datasetIds || this.datasetIds.length === 0 || this._datasetsDataFields.length === 0) return !0;
1234
- let e = this.filter?.parameters?.[0]?.datasetId, t = this._datasetsDataFields.find((t) => t.id === e);
1235
- return !t || ![...t.columns || [], ...t.formulas || []].find((e) => e.id === this.filter?.parameters?.[0]?.columnId || e.id === this.filter?.parameters?.[0]?.formulaId);
1236
- }
1237
- renderDataFieldPicker() {
1238
- let e = this._cannotReferenceColumn(), t = e ? p("Unknown") : void 0, n = e || this._loading ? "" : this.filter?.parameters?.[0]?.columnId || this.filter?.parameters?.[0]?.formulaId;
1239
- return c`<luzmo-data-fields-select
1240
- .language=${this.language}
1241
- .contentLanguage=${this.contentLanguage}
1242
- .size=${this.size}
1243
- .value=${n ? [n] : []}
1244
- selects="single"
1245
- .datasetsDataFields=${this._datasetsDataFields}
1246
- placeholder=${h(t)}
1247
- .invalid=${!!this._error || e}
1248
- ?disabled=${e}
1249
- .retrieving=${this._loading}
1250
- .pending=${this._loading}
1251
- @luzmo-data-fields-selected=${this.setFilterDataField}
1252
- ></luzmo-data-fields-select>`;
1253
- }
1254
- renderExpressionPicker() {
1255
- let e = this._cannotReferenceColumn(), t = !this.filter?.parameters?.[0]?.datasetId || !this.filter?.parameters?.[0]?.columnId || e;
1256
- return c`<luzmo-filter-expression-picker
1257
- .language=${this.language}
1258
- .size=${this.size}
1259
- .type=${this._type}
1260
- .subtype=${this._subType}
1261
- .filter=${this.filter}
1262
- ?isFormula=${this._isFormula}
1263
- ?disabled=${t}
1264
- @luzmo-expression-selected=${this.setFilterExpression}
1265
- ></luzmo-filter-expression-picker>`;
1266
- }
1267
- renderValuePicker() {
1268
- let e = this._cannotReferenceColumn(), t = !this.filter?.parameters?.[0]?.datasetId || !this.filter?.parameters?.[0]?.columnId || e;
1269
- return c`<luzmo-filter-value-picker
1270
- .apiUrl=${this.apiUrl}
1271
- .authKey=${this.authKey}
1272
- .authToken=${this.authToken}
1273
- .cacheTime=${this.cacheTime}
1274
- .language=${this.language}
1275
- .contentLanguage=${this.contentLanguage}
1276
- .timeZone=${this.timeZone}
1277
- .size=${this.size}
1278
- .filter=${this.filter}
1279
- .valueType=${this._type}
1280
- ?disabled=${t}
1281
- @luzmo-filter-value-changed=${this.setFilterValue}
1282
- ></luzmo-filter-value-picker>`;
1283
- }
1284
- render() {
1285
- return c`<div role="group" aria-label=${p("Filter condition", { desc: "Accessible label for filter item group" })}>
1286
- ${this.renderDataFieldPicker()} ${this.renderExpressionPicker()}
1287
- ${this.renderValuePicker()}
1288
- </div>`;
1289
- }
1290
- };
1291
- //#endregion
1292
- //#region src/components/filter-item/index.ts
1293
- e([u({
1294
- type: String,
1295
- attribute: "api-url",
1296
- reflect: !0
1297
- })], U.prototype, "apiUrl", void 0), e([u({
1298
- type: String,
1299
- attribute: "auth-key",
1300
- reflect: !0
1301
- })], U.prototype, "authKey", void 0), e([u({
1302
- type: String,
1303
- attribute: "auth-token",
1304
- reflect: !0
1305
- })], U.prototype, "authToken", void 0), e([u({
1306
- type: Number,
1307
- attribute: "cache-time",
1308
- reflect: !0
1309
- })], U.prototype, "cacheTime", void 0), e([u({
1310
- type: String,
1311
- reflect: !0
1312
- })], U.prototype, "contentLanguage", void 0), e([u({
1313
- type: String,
1314
- attribute: "time-zone",
1315
- reflect: !0
1316
- })], U.prototype, "timeZone", void 0), e([u({
1317
- type: Array,
1318
- attribute: "dataset-ids",
1319
- reflect: !0
1320
- })], U.prototype, "datasetIds", void 0), e([u({
1321
- type: Object,
1322
- reflect: !1
1323
- })], U.prototype, "filter", void 0), e([d()], U.prototype, "_type", void 0), e([d()], U.prototype, "_subType", void 0), e([d()], U.prototype, "_isFormula", void 0), e([d()], U.prototype, "_error", void 0), e([d()], U.prototype, "_loading", void 0), e([d()], U.prototype, "_datasetsDataFields", void 0), U = e([f()], U), customElements.get("luzmo-filter-item") || customElements.define("luzmo-filter-item", U);
1324
- //#endregion
1325
- //#region src/components/filters/filters.module.scss?inline
1326
- var W = ":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}.filter-group-container{max-width:100%;padding:calc(var(--luzmo-indicator-gap) + 2 * var(--luzmo-indicator-width));overflow: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:center;gap:var(--luzmo-filters-filter-line-gap,var(--filters-filter-line-gap));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:center}.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));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));font-weight:700}.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))}: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)}: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)}: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)}: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)}", G = {
1327
- AND: () => p("AND", { desc: "Logical AND condition for combining filters" }),
1328
- OR: () => p("OR", { desc: "Logical OR condition for combining filters" })
1329
- }, K = class extends t(v(_, { validSizes: Object.values(g) })) {
1330
- constructor(...e) {
1331
- super(...e), this.apiUrl = "https://api.luzmo.com", this.contentLanguage = "en", this.filters = [], this.debounce = 300, this._internalFilterGroup = null, this._debounceTimeout = null;
1332
- }
1333
- static get styles() {
1334
- return [l(W)];
1335
- }
1336
- get _oneSizeSmaller() {
1337
- return {
1338
- xxs: "xxs",
1339
- xs: "xs",
1340
- s: "xs",
1341
- m: "s",
1342
- l: "m",
1343
- xl: "l",
1344
- xxl: "xl"
1345
- }[this.size] || "s";
1346
- }
1347
- get _isDatasetIdsEmpty() {
1348
- return !this.datasetIds || this.datasetIds.length === 0;
1349
- }
1350
- disconnectedCallback() {
1351
- super.disconnectedCallback(), this._debounceTimeout &&= (clearTimeout(this._debounceTimeout), null);
1352
- }
1353
- willUpdate(e) {
1354
- if (super.willUpdate(e), e.has("filters")) {
1355
- let e = D(this.filters);
1356
- e.length === 0 ? this._internalFilterGroup = null : e.length === 1 ? this._internalFilterGroup = structuredClone(e[0]) : this._internalFilterGroup = {
1357
- condition: "AND",
1358
- filters: structuredClone(e)
1359
- };
1360
- }
1361
- }
1362
- _generateEmptyGroup() {
1363
- return {
1364
- condition: "AND",
1365
- filters: []
1366
- };
1367
- }
1368
- _generateEmptyFilter() {
1369
- return {
1370
- expression: void 0,
1371
- parameters: []
1372
- };
1373
- }
1374
- _getFiltersForExport() {
1375
- if (!this._internalFilterGroup) return [];
1376
- if (this._internalFilterGroup.filters.length > 0 && this._internalFilterGroup.filters.every((e) => this._isGroup(e))) return structuredClone(this._internalFilterGroup.filters).map((e) => w(e)[0]).filter((e) => !!e);
1377
- let [e] = w(structuredClone(this._internalFilterGroup));
1378
- return e ? [e] : [];
1379
- }
1380
- _sendChangeEvent() {
1381
- this._debounceTimeout && clearTimeout(this._debounceTimeout);
1382
- let e = () => {
1383
- this.dispatchEvent(new CustomEvent("luzmo-filters-changed", {
1384
- bubbles: !0,
1385
- composed: !0,
1386
- cancelable: !0,
1387
- detail: { filters: this._getFiltersForExport() }
1388
- }));
1389
- };
1390
- this.debounce > 0 ? this._debounceTimeout = setTimeout(e, this.debounce) : e();
1391
- }
1392
- _isGroup(e) {
1393
- return "condition" in e && "filters" in e;
1394
- }
1395
- _toggleCondition(e) {
1396
- e.condition = e.condition === "AND" ? "OR" : "AND", this.requestUpdate(), this._sendChangeEvent();
1397
- }
1398
- _addFilter(e) {
1399
- if (this._isDatasetIdsEmpty) return;
1400
- let t = e;
1401
- t ||= (this._internalFilterGroup ||= this._generateEmptyGroup(), this._internalFilterGroup), t.filters.push(this._generateEmptyFilter()), this.requestUpdate(), this._sendChangeEvent();
1402
- }
1403
- _addSubGroup(e) {
1404
- if (this._isDatasetIdsEmpty) return;
1405
- let t = this._generateEmptyGroup();
1406
- t.condition = e.condition === "AND" ? "OR" : "AND", t.filters.push(this._generateEmptyFilter()), e.filters.push(t), this.requestUpdate(), this._sendChangeEvent();
1407
- }
1408
- _removeFilter(e, t) {
1409
- if (this._internalFilterGroup) {
1410
- if (e.filters.splice(t, 1), e !== this._internalFilterGroup && e.filters.length === 0) {
1411
- let t = this._findParentGroup(this._internalFilterGroup, e);
1412
- if (t) {
1413
- let n = t.filters.indexOf(e);
1414
- n !== -1 && t.filters.splice(n, 1);
1415
- }
1416
- }
1417
- this._collapseGroupsAfterDelete(), this.requestUpdate(), this._sendChangeEvent();
1418
- }
1419
- }
1420
- _updateFilter(e, t, n) {
1421
- n.stopPropagation(), this._isGroup(e.filters[t]) || (e.filters[t] = n.detail.filter, this._sendChangeEvent());
1422
- }
1423
- _addGroup() {
1424
- if (this._isDatasetIdsEmpty) return;
1425
- this._internalFilterGroup ||= this._generateEmptyGroup();
1426
- let e = this._generateEmptyGroup();
1427
- e.condition = this._internalFilterGroup.condition === "AND" ? "OR" : "AND", e.filters.push(this._internalFilterGroup);
1428
- let t = this._generateEmptyGroup();
1429
- t.condition = e.condition === "AND" ? "OR" : "AND", t.filters.push(this._generateEmptyFilter()), e.filters.push(t), this._internalFilterGroup = e, this.requestUpdate(), this._sendChangeEvent();
1430
- }
1431
- _renderFilterItem(e, t, n) {
1432
- return c`
1433
- <div class="filter-item-wrapper">
1434
- <div class="filter-item-content">
1435
- <luzmo-filter-item
1436
- .apiUrl=${this.apiUrl}
1437
- .authKey=${this.authKey}
1438
- .authToken=${this.authToken}
1439
- .cacheTime=${this.cacheTime}
1440
- .language=${this.language}
1441
- .contentLanguage=${this.contentLanguage}
1442
- .timeZone=${this.timeZone}
1443
- .datasetIds=${this.datasetIds}
1444
- .filter=${e}
1445
- .size=${this.size}
1446
- @luzmo-filter-changed=${this._updateFilter.bind(this, t, n)}
1447
- ></luzmo-filter-item>
1448
- <luzmo-action-button
1449
- class="delete-filter-button"
1450
- .size=${this.size}
1451
- quiet
1452
- .label=${p("Remove filter", { desc: "Aria label for remove filter button" })}
1453
- @click=${this._removeFilter.bind(this, t, n)}
1454
- >
1455
- <luzmo-icon slot="icon" .icon=${s} .size=${this.size}></luzmo-icon>
1456
- </luzmo-action-button>
1457
- </div>
1458
- </div>
1459
- `;
1460
- }
1461
- _renderGroup(e, t = !1) {
1462
- let n = e.filters.length > 0, r = e.filters.length > 1, i = G[e.condition]?.() ?? e.condition;
1463
- return c`
1464
- <div class="filter-group ${t ? "nested" : ""}" role="group">
1465
- ${t ? c`
1466
- <div class="condition-wrapper">
1467
- ${r ? c`
1468
- <luzmo-action-button
1469
- class="condition-badge"
1470
- .size=${this._oneSizeSmaller}
1471
- quiet
1472
- aria-pressed=${e.condition === "AND" ? "true" : "false"}
1473
- .label=${p("Toggle filter condition, currently ", { desc: "Aria label prefix for filter condition toggle" }) + i}
1474
- @click=${this._toggleCondition.bind(this, e)}
1475
- >
1476
- ${i}
1477
- </luzmo-action-button>
1478
- ` : ""}
1479
- </div>
1480
- ` : r ? c`
1481
- <div class="condition-wrapper">
1482
- <luzmo-action-button
1483
- class="condition-badge"
1484
- .size=${this._oneSizeSmaller}
1485
- quiet
1486
- aria-pressed=${e.condition === "AND" ? "true" : "false"}
1487
- .label=${p("Toggle filter condition, currently ", { desc: "Aria label prefix for filter condition toggle" }) + i}
1488
- @click=${this._toggleCondition.bind(this, e)}
1489
- >
1490
- ${i}
1491
- </luzmo-action-button>
1492
- </div>
1493
- ` : ""}
1494
- <div class="group-content">
1495
- ${n ? c`
1496
- <div class="filters-list">
1497
- ${m(e.filters, (e, t) => t, (t, n) => c`
1498
- ${this._isGroup(t) ? this._renderGroup(t, !0) : this._renderFilterItem(t, e, n)}
1499
- `)}
1500
- </div>
1501
- ` : ""}
1502
-
1503
- <div class="group-actions">
1504
- <luzmo-action-button
1505
- class="add-filter-button"
1506
- .size=${this.size}
1507
- quiet
1508
- ?disabled=${this._isDatasetIdsEmpty}
1509
- @click=${this._addFilter.bind(this, e)}
1510
- >
1511
- <luzmo-icon slot="icon" .icon=${o} .size=${this._oneSizeSmaller}></luzmo-icon>
1512
- ${p("Filter", { desc: "Add filter button label" })}
1513
- </luzmo-action-button>
1514
-
1515
- <luzmo-action-button
1516
- class="add-subgroup-button"
1517
- .size=${this.size}
1518
- quiet
1519
- ?disabled=${this._isDatasetIdsEmpty}
1520
- @click=${this._addSubGroup.bind(this, e)}
1521
- >
1522
- <luzmo-icon slot="icon" .icon=${o} .size=${this._oneSizeSmaller}></luzmo-icon>
1523
- ${p("Subgroup", { desc: "Add subgroup button label" })}
1524
- </luzmo-action-button>
1525
- </div>
1526
- </div>
1527
- </div>
1528
- `;
1529
- }
1530
- _findParentGroup(e, t) {
1531
- for (let n of e.filters) {
1532
- if (n === t) return e;
1533
- if (this._isGroup(n)) {
1534
- let e = this._findParentGroup(n, t);
1535
- if (e) return e;
1536
- }
1537
- }
1538
- return null;
1539
- }
1540
- _collapseIfNeeded(e) {
1541
- if (e.filters.length === 1 && this._isGroup(e.filters[0])) {
1542
- let t = e.filters[0];
1543
- e.condition = t.condition, e.filters = t.filters;
1544
- }
1545
- }
1546
- _collapseGroupsAfterDelete() {
1547
- if (!this._internalFilterGroup) return;
1548
- let e = (t) => {
1549
- for (let n of t.filters) this._isGroup(n) && e(n);
1550
- this._collapseIfNeeded(t);
1551
- };
1552
- e(this._internalFilterGroup);
1553
- }
1554
- render() {
1555
- if (this._isDatasetIdsEmpty) return c`
1556
- <div class="filter-group-container">
1557
- <div class="dataset-ids-empty-message" role="status">
1558
- ${p("Cannot retrieve dataset data fields", { desc: "Error message when datasetIds is empty" })}
1559
- </div>
1560
- </div>
1561
- `;
1562
- if (!this._internalFilterGroup || this._internalFilterGroup.filters.length === 0) return c`
1563
- <div class="filter-group-container">
1564
- <luzmo-button
1565
- class="add-filter-button"
1566
- .size=${this.size}
1567
- treatment="outline"
1568
- ?disabled=${this._isDatasetIdsEmpty}
1569
- @click=${() => this._addFilter()}
1570
- >
1571
- <luzmo-icon slot="icon" .icon=${o} .size=${this._oneSizeSmaller}></luzmo-icon>
1572
- ${p("Add filter", { desc: "Add filter button label" })}
1573
- </luzmo-button>
1574
- </div>
1575
- `;
1576
- let e = this._internalFilterGroup.filters.length > 1;
1577
- return c`
1578
- <div class="filter-group-container">
1579
- ${this._renderGroup(this._internalFilterGroup)}
1580
-
1581
- ${e ? c`
1582
- <div class="add-root-group-container">
1583
- <luzmo-button
1584
- class="add-group-button"
1585
- .size=${this.size}
1586
- treatment="outline"
1587
- ?disabled=${this._isDatasetIdsEmpty}
1588
- @click=${this._addGroup}
1589
- >
1590
- <luzmo-icon slot="icon" .icon=${o} .size=${this._oneSizeSmaller}></luzmo-icon>
1591
- ${p("Group", { desc: "Add group button label" })}
1592
- </luzmo-button>
1593
- </div>
1594
- ` : ""}
1595
- </div>
1596
- `;
1597
- }
1598
- };
1599
- //#endregion
1600
- //#region src/components/filters/index.ts
1601
- e([u({
1602
- type: String,
1603
- attribute: "api-url",
1604
- reflect: !0
1605
- })], K.prototype, "apiUrl", void 0), e([u({
1606
- type: String,
1607
- attribute: "auth-key",
1608
- reflect: !0
1609
- })], K.prototype, "authKey", void 0), e([u({
1610
- type: String,
1611
- attribute: "auth-token",
1612
- reflect: !0
1613
- })], K.prototype, "authToken", void 0), e([u({
1614
- type: Number,
1615
- attribute: "cache-time",
1616
- reflect: !0
1617
- })], K.prototype, "cacheTime", void 0), e([u({
1618
- type: String,
1619
- attribute: "content-language",
1620
- reflect: !0
1621
- })], K.prototype, "contentLanguage", void 0), e([u({
1622
- type: String,
1623
- attribute: "time-zone",
1624
- reflect: !0
1625
- })], K.prototype, "timeZone", void 0), e([u({
1626
- type: Array,
1627
- attribute: "dataset-ids",
1628
- reflect: !0
1629
- })], K.prototype, "datasetIds", void 0), e([u({
1630
- type: Array,
1631
- reflect: !1
1632
- })], K.prototype, "filters", void 0), e([u({
1633
- type: Number,
1634
- reflect: !0
1635
- })], K.prototype, "debounce", void 0), e([d()], K.prototype, "_internalFilterGroup", void 0), K = e([f()], K), customElements.get("luzmo-filters") || customElements.define("luzmo-filters", K);
1636
- //#endregion
1637
- export { L as a, B as i, U as n, P as o, V as r, j as s, K as t };