@luzmo/analytics-components-kit 1.3.0 → 2.0.0

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 (665) hide show
  1. package/README.md +18 -5
  2. package/angular/components/add-to-dashboard.ts +20 -6
  3. package/angular/components/ai-chat-empty-state.ts +1 -1
  4. package/angular/components/ai-chat.ts +10 -3
  5. package/angular/components/data-fields-select.ts +5 -0
  6. package/angular/components/display-settings-period-over-period.ts +25 -4
  7. package/angular/components/display-settings.ts +24 -3
  8. package/angular/components/interactive-viz-item.ts +87 -22
  9. package/angular/components/item-grid-item-actions-menu.ts +5 -0
  10. package/angular/components/item-grid.ts +7 -0
  11. package/angular/components/item-option-color-picker.ts +28 -28
  12. package/angular/components/item-option-guidelines.ts +22 -1
  13. package/angular/components/item-option-multi-language-field.ts +7 -7
  14. package/angular/components/item-option-number-field.ts +14 -14
  15. package/angular/components/item-option-positions-number-field.ts +14 -14
  16. package/angular/components/item-option-radio-button-group.ts +7 -7
  17. package/angular/components/item-option-text-field.ts +7 -7
  18. package/angular/components/item-slot-drop-panel.ts +7 -0
  19. package/angular/components/item-slot-drop.ts +7 -0
  20. package/angular/components/item-slot-picker-panel.ts +8 -1
  21. package/angular/components/item-slot-picker.ts +22 -8
  22. package/angular/components/slot-menu.ts +15 -1
  23. package/angular/esm/components/add-to-dashboard.d.ts +8 -4
  24. package/angular/esm/components/add-to-dashboard.js +23 -7
  25. package/angular/esm/components/ai-chat-empty-state.d.ts +1 -1
  26. package/angular/esm/components/ai-chat.d.ts +6 -4
  27. package/angular/esm/components/ai-chat.js +10 -2
  28. package/angular/esm/components/data-fields-select.d.ts +2 -0
  29. package/angular/esm/components/data-fields-select.js +4 -0
  30. package/angular/esm/components/display-settings-period-over-period.d.ts +12 -5
  31. package/angular/esm/components/display-settings-period-over-period.js +29 -5
  32. package/angular/esm/components/display-settings.d.ts +11 -4
  33. package/angular/esm/components/display-settings.js +28 -4
  34. package/angular/esm/components/interactive-viz-item.d.ts +30 -9
  35. package/angular/esm/components/interactive-viz-item.js +98 -27
  36. package/angular/esm/components/item-grid-item-actions-menu.d.ts +2 -0
  37. package/angular/esm/components/item-grid-item-actions-menu.js +4 -0
  38. package/angular/esm/components/item-grid.d.ts +3 -1
  39. package/angular/esm/components/item-grid.js +9 -1
  40. package/angular/esm/components/item-option-color-picker.d.ts +10 -10
  41. package/angular/esm/components/item-option-color-picker.js +34 -34
  42. package/angular/esm/components/item-option-guidelines.d.ts +8 -2
  43. package/angular/esm/components/item-option-guidelines.js +26 -2
  44. package/angular/esm/components/item-option-multi-language-field.d.ts +3 -3
  45. package/angular/esm/components/item-option-multi-language-field.js +10 -10
  46. package/angular/esm/components/item-option-number-field.d.ts +5 -5
  47. package/angular/esm/components/item-option-number-field.js +18 -18
  48. package/angular/esm/components/item-option-positions-number-field.d.ts +5 -5
  49. package/angular/esm/components/item-option-positions-number-field.js +18 -18
  50. package/angular/esm/components/item-option-radio-button-group.d.ts +3 -3
  51. package/angular/esm/components/item-option-radio-button-group.js +10 -10
  52. package/angular/esm/components/item-option-text-field.d.ts +3 -3
  53. package/angular/esm/components/item-option-text-field.js +10 -10
  54. package/angular/esm/components/item-slot-drop-panel.d.ts +4 -1
  55. package/angular/esm/components/item-slot-drop-panel.js +10 -2
  56. package/angular/esm/components/item-slot-drop.d.ts +4 -1
  57. package/angular/esm/components/item-slot-drop.js +10 -2
  58. package/angular/esm/components/item-slot-picker-panel.d.ts +5 -2
  59. package/angular/esm/components/item-slot-picker-panel.js +11 -3
  60. package/angular/esm/components/item-slot-picker.d.ts +9 -4
  61. package/angular/esm/components/item-slot-picker.js +26 -10
  62. package/angular/esm/components/slot-menu.d.ts +7 -2
  63. package/angular/esm/components/slot-menu.js +18 -2
  64. package/angular/package.json +2 -2
  65. package/angular/utils/filters/expressions.d.ts +2 -0
  66. package/angular/utils/slot-state/slot-store.d.ts +3 -8
  67. package/angular/utils/time/period-over-period-condition.const.d.ts +0 -1
  68. package/angular/utils/time/period-over-period-context.d.ts +75 -0
  69. package/angular/utils/time/tests/period-over-period-context.test.d.ts +1 -0
  70. package/components/add-to-dashboard/dashboard-actions.d.ts +2 -1
  71. package/components/add-to-dashboard/index.cjs +1 -1
  72. package/components/add-to-dashboard/index.js +1 -1
  73. package/components/{add-to-dashboard-DGC0_hRB.js → add-to-dashboard-B5egTFre.js} +127 -122
  74. package/components/{add-to-dashboard-CzIuDtAq.cjs → add-to-dashboard-BC5SObl9.cjs} +1 -1
  75. package/components/advanced-options.i18n-CyfRP6Jc.js +43 -0
  76. package/components/advanced-options.i18n-DPTCLyPj.cjs +20 -0
  77. package/components/ai-chat/ai-chat-events.d.ts +6 -2
  78. package/components/ai-chat/ai-chat-request.d.ts +1 -1
  79. package/components/ai-chat/ai-chat.d.ts +9 -2
  80. package/components/ai-chat/ai-prompt-types.d.ts +19 -1
  81. package/components/ai-chat/helpers/interaction-assets.d.ts +9 -0
  82. package/components/ai-chat/helpers/question-template.d.ts +13 -0
  83. package/components/ai-chat/index.cjs +1 -1
  84. package/components/ai-chat/index.d.ts +2 -1
  85. package/components/ai-chat/index.js +3 -3
  86. package/components/ai-chat/session/ai-chat-session-types.d.ts +6 -1
  87. package/components/ai-chat/session/ai-chat-session.d.ts +14 -3
  88. package/components/{ai-chat-CL894viH.js → ai-chat-CZz60W04.js} +1152 -837
  89. package/components/ai-chat-CkN95EAz.cjs +414 -0
  90. package/components/ai-interaction-textarea/index.cjs +1 -1
  91. package/components/ai-interaction-textarea/index.js +1 -1
  92. package/components/{ai-interaction-textarea-BmvVVCmL.cjs → ai-interaction-textarea-NGtzhkEU.cjs} +1 -1
  93. package/components/{ai-interaction-textarea-CnQ2FBc7.js → ai-interaction-textarea-zpSYvzWC.js} +4 -4
  94. package/components/{area-chart-options.config-D99tvt_H.cjs → area-chart-options.config-DkaWRgGR.cjs} +1 -1
  95. package/components/{area-chart-options.config-Dnw8v2CA.js → area-chart-options.config-E5T5GaAt.js} +3 -3
  96. package/components/{area-chart-positioning.config-ygE3-JQW.js → area-chart-positioning.config-CF5TQdQM.js} +1 -1
  97. package/components/{area-chart-positioning.config-BwEs73dl.cjs → area-chart-positioning.config-D3v03RF2.cjs} +1 -1
  98. package/components/{bar-chart-options.config-DHO8grQN.js → bar-chart-options.config-BmuNCcVu.js} +3 -3
  99. package/components/{bar-chart-options.config-BQ-PbucR.cjs → bar-chart-options.config-DujzIJ03.cjs} +1 -1
  100. package/components/{bar-chart-positioning.config-CPdIIPp0.cjs → bar-chart-positioning.config-B2cBwfjg.cjs} +1 -1
  101. package/components/{bar-chart-positioning.config-GjqSe7CO.js → bar-chart-positioning.config-DD3FsbpL.js} +1 -1
  102. package/components/{base-rAte-QzM.js → base-BqwRKT4V.js} +1 -1
  103. package/components/{base-CGDNY_7v.cjs → base-D-bJhYbS.cjs} +1 -1
  104. package/components/{box-plot-options.config-BgiiwSrU.js → box-plot-options.config-BldiKc1W.js} +1 -1
  105. package/components/{box-plot-options.config-BcGisybi.cjs → box-plot-options.config-CTHQiE0y.cjs} +1 -1
  106. package/components/{box-plot-positioning.config-DDUgau2U.js → box-plot-positioning.config-D7dak0lQ.js} +1 -1
  107. package/components/{box-plot-positioning.config-mSIgw923.cjs → box-plot-positioning.config-DyDjp1GB.cjs} +1 -1
  108. package/components/{bubble-chart-options.config-DMk8Yjfk.cjs → bubble-chart-options.config-CIQV2-nD.cjs} +1 -1
  109. package/components/{bubble-chart-options.config-UM9w5tBs.js → bubble-chart-options.config-DfUueHwL.js} +1 -1
  110. package/components/{bubble-chart-positioning.config-CuOxvXYf.cjs → bubble-chart-positioning.config-CBVdzO-2.cjs} +1 -1
  111. package/components/{bubble-chart-positioning.config-C3UubNLh.js → bubble-chart-positioning.config-DjYnqcoE.js} +1 -1
  112. package/components/{bullet-chart-positioning.config-DB1Fmx1d.cjs → bullet-chart-positioning.config-B1tyFrKD.cjs} +1 -1
  113. package/components/{bullet-chart-positioning.config-BuFhsRMP.js → bullet-chart-positioning.config-C1Fy_8N4.js} +1 -1
  114. package/components/chart-helpers-BHxQbLBw.cjs +20 -0
  115. package/components/{chart-helpers-Cbl3sRra.js → chart-helpers-BKeMLhov.js} +51 -38
  116. package/components/{choropleth-map-options.config-Blu0Z2tR.js → choropleth-map-options.config-BPwJyWoW.js} +1 -1
  117. package/components/{choropleth-map-options.config-DwFJ00CS.cjs → choropleth-map-options.config-mBZ3__hO.cjs} +1 -1
  118. package/components/{choropleth-map-positioning.config-6PsCyhsn.js → choropleth-map-positioning.config-BJ4TNZiP.js} +1 -1
  119. package/components/{choropleth-map-positioning.config-fc5IcNoB.cjs → choropleth-map-positioning.config-DaN1GsN7.cjs} +1 -1
  120. package/components/{circle-pack-chart-options.config-DQs-uitJ.js → circle-pack-chart-options.config-BbTBvJRt.js} +1 -1
  121. package/components/{circle-pack-chart-options.config-DMNMYWZX.cjs → circle-pack-chart-options.config-Cz9c2Oxt.cjs} +1 -1
  122. package/components/{circle-pack-chart-positioning.config-DvQfzJ_Z.cjs → circle-pack-chart-positioning.config-C0iRGjcn.cjs} +1 -1
  123. package/components/{circle-pack-chart-positioning.config-DRHNE10H.js → circle-pack-chart-positioning.config-sm_d4gNL.js} +1 -1
  124. package/components/{circular-gauge-positioning.config-CGOX-Vyn.js → circular-gauge-positioning.config-CP_Ihfyd.js} +1 -1
  125. package/components/{circular-gauge-positioning.config-OX1-mPls.cjs → circular-gauge-positioning.config-GgkU8ivx.cjs} +1 -1
  126. package/components/{column-chart-options.config-BYDJTVx6.js → column-chart-options.config-BoIqFqBu.js} +3 -3
  127. package/components/{column-chart-options.config-CyD8V7j4.cjs → column-chart-options.config-fsV6tk3-.cjs} +1 -1
  128. package/components/{column-chart-positioning.config-BVYa1A42.js → column-chart-positioning.config-B4OsEyKU.js} +1 -1
  129. package/components/{column-chart-positioning.config-NbQbSa8P.cjs → column-chart-positioning.config-oub804lP.cjs} +1 -1
  130. package/components/{combination-chart-options.config-Cg3ZEKMe.cjs → combination-chart-options.config-C_fwwZvd.cjs} +1 -1
  131. package/components/{combination-chart-options.config-B3zsSUFx.js → combination-chart-options.config-Oks0enDz.js} +3 -3
  132. package/components/{combination-chart-positioning.config-B7DtfzCV.cjs → combination-chart-positioning.config-BeEC_NMJ.cjs} +1 -1
  133. package/components/{combination-chart-positioning.config-yHAgveni.js → combination-chart-positioning.config-BxNKTTby.js} +1 -1
  134. package/components/{conditional-number-positioning.config-BZS99jTT.cjs → conditional-number-positioning.config-B7F96ylg.cjs} +1 -1
  135. package/components/{conditional-number-positioning.config-DhixJEpv.js → conditional-number-positioning.config-xMGIw6c7.js} +1 -1
  136. package/components/data-field/index.cjs +1 -1
  137. package/components/data-field/index.js +1 -1
  138. package/components/{data-field-BORlpZZk.cjs → data-field-BxIuPFX_.cjs} +1 -1
  139. package/components/{data-field-B9466d0w.js → data-field-D03w2T6D.js} +3 -3
  140. package/components/data-field-level/index.cjs +1 -1
  141. package/components/data-field-level/index.js +1 -1
  142. package/components/{data-field-level-DOEYwcvM.cjs → data-field-level-BdWZsIny.cjs} +1 -1
  143. package/components/{data-field-level-GrX6yhPV.js → data-field-level-C-C9RCNf.js} +1 -1
  144. package/components/data-field-panel/index.cjs +1 -1
  145. package/components/data-field-panel/index.js +1 -1
  146. package/components/{data-field-panel-BedJ9V2r.js → data-field-panel-DLe4FvTg.js} +3 -3
  147. package/components/{data-field-panel-DmMkAYAz.cjs → data-field-panel-kGncuIuq.cjs} +1 -1
  148. package/components/data-fields-select/index.cjs +1 -1
  149. package/components/data-fields-select/index.js +1 -1
  150. package/components/{data-fields-select-BOqmoE7n.cjs → data-fields-select-CSP6pX9J.cjs} +1 -1
  151. package/components/{data-fields-select-af1HZLWS.js → data-fields-select-DP80Miah.js} +1 -1
  152. package/components/dataset-selector-list/index.cjs +1 -1
  153. package/components/dataset-selector-list/index.js +1 -1
  154. package/components/{dataset-selector-list-BzI8n_dB.js → dataset-selector-list-D2UcUaOx.js} +1 -1
  155. package/components/{dataset-selector-list-CmZaj20L.cjs → dataset-selector-list-DGWiCqpf.cjs} +1 -1
  156. package/components/dataset-selector-row/index.cjs +1 -1
  157. package/components/dataset-selector-row/index.js +1 -1
  158. package/components/{dataset-selector-row-D_7iBmdm.js → dataset-selector-row-7WNwyR9L.js} +3 -3
  159. package/components/{dataset-selector-row-mOGioXLM.cjs → dataset-selector-row-Vfh7jDjW.cjs} +1 -1
  160. package/components/{de-AOtjGNGZ.js → de-BbXtB6N5.js} +19 -4
  161. package/components/de-BfHCg6-Y.cjs +20 -0
  162. package/components/display-settings/display-settings.d.ts +11 -3
  163. package/components/display-settings/index.cjs +1 -1
  164. package/components/display-settings/index.js +1 -1
  165. package/components/{display-settings-Qwp9oJo6.js → display-settings-Bqq9iJ3L.js} +86 -62
  166. package/components/display-settings-CG-qtz9m.cjs +146 -0
  167. package/components/display-settings-binning/index.cjs +1 -1
  168. package/components/display-settings-binning/index.js +1 -1
  169. package/components/{display-settings-binning-IPVCvx8a.js → display-settings-binning-C2Jlf18P.js} +2 -2
  170. package/components/{display-settings-binning-D5zhoC7D.cjs → display-settings-binning-Dx9zEbDo.cjs} +1 -1
  171. package/components/display-settings-datetime/index.cjs +1 -1
  172. package/components/display-settings-datetime/index.js +1 -1
  173. package/components/{display-settings-datetime-t70VEfHe.cjs → display-settings-datetime-B6LMQZOW.cjs} +1 -1
  174. package/components/{display-settings-datetime-DgBBSYfC.js → display-settings-datetime-B6okY4hC.js} +2 -2
  175. package/components/display-settings-grand-totals/index.cjs +1 -1
  176. package/components/display-settings-grand-totals/index.js +1 -1
  177. package/components/{display-settings-grand-totals-C_Fzk7oV.cjs → display-settings-grand-totals-D1Fi1qIx.cjs} +1 -1
  178. package/components/{display-settings-grand-totals-AFtKeeeG.js → display-settings-grand-totals-_v0iGpHZ.js} +2 -2
  179. package/components/display-settings-numeric/index.cjs +1 -1
  180. package/components/display-settings-numeric/index.js +1 -1
  181. package/components/{display-settings-numeric-BF8BA5MH.cjs → display-settings-numeric-DbcsMeEN.cjs} +1 -1
  182. package/components/{display-settings-numeric-DeuXT1UR.js → display-settings-numeric-G2avidxv.js} +2 -2
  183. package/components/display-settings-period-over-period/display-settings-period-over-period.d.ts +18 -10
  184. package/components/display-settings-period-over-period/helpers/constants.d.ts +0 -23
  185. package/components/display-settings-period-over-period/index.cjs +1 -1
  186. package/components/display-settings-period-over-period/index.js +1 -1
  187. package/components/display-settings-period-over-period-86oxRHhk.cjs +151 -0
  188. package/components/{display-settings-period-over-period-CzxnyVF7.js → display-settings-period-over-period-DqeKcvdD.js} +101 -164
  189. package/components/donut-chart-options.config-B47Y1jhM.cjs +20 -0
  190. package/components/{donut-chart-options.config-B2vxfMyh.js → donut-chart-options.config-C__JfD3B.js} +32 -45
  191. package/components/{donut-chart-options.de-AXRfsiXW.cjs → donut-chart-options.de-Bsze2Gb5.cjs} +1 -1
  192. package/components/{donut-chart-options.de-DgNmBJiQ.js → donut-chart-options.de-Cft1Ppg0.js} +1 -2
  193. package/components/{donut-chart-options.en-aZqu2oEV.cjs → donut-chart-options.en-D3F9v0nN.cjs} +1 -1
  194. package/components/{donut-chart-options.en-BXwxTVpB.js → donut-chart-options.en-DZbap5Oi.js} +1 -2
  195. package/components/{donut-chart-options.es-7WgxuaDe.cjs → donut-chart-options.es-Cm0HGP62.cjs} +1 -1
  196. package/components/{donut-chart-options.es-DW_q5HeE.js → donut-chart-options.es-gM85ij3W.js} +1 -2
  197. package/components/{donut-chart-options.fr-QU3pGELZ.js → donut-chart-options.fr-Tgs8r0XZ.js} +1 -2
  198. package/components/{donut-chart-options.fr-C0Z8xEyF.cjs → donut-chart-options.fr-VSZoCY5q.cjs} +1 -1
  199. package/components/{donut-chart-options.nl-aKVLbRJY.cjs → donut-chart-options.nl-BkwPxEkq.cjs} +1 -1
  200. package/components/{donut-chart-options.nl-D_cgYVAQ.js → donut-chart-options.nl-SfAF0ycW.js} +1 -2
  201. package/components/{donut-chart-positioning.config-Bu1jZwtJ.cjs → donut-chart-positioning.config-BxJLjvJI.cjs} +1 -1
  202. package/components/{donut-chart-positioning.config-C0jkFWni.js → donut-chart-positioning.config-Doti4TgR.js} +1 -1
  203. package/components/{es-CYhv03uu.js → es-DRdklNAj.js} +19 -4
  204. package/components/es-Djk6AXOA.cjs +20 -0
  205. package/components/{evolution-number-positioning.config-DD8HBFtv.js → evolution-number-positioning.config-DHgkhRjt.js} +1 -1
  206. package/components/{evolution-number-positioning.config-DbH1-ODd.cjs → evolution-number-positioning.config-DeJkgT2e.cjs} +1 -1
  207. package/components/expressions-B4TetNaL.js +314 -0
  208. package/components/expressions-_KjBCqb6.cjs +20 -0
  209. package/components/filter-expression-picker/index.cjs +1 -1
  210. package/components/filter-expression-picker/index.js +1 -1
  211. package/components/filter-expression-picker-BuXFbOXQ.js +146 -0
  212. package/components/filter-expression-picker-Cta3MMId.cjs +40 -0
  213. package/components/filter-item/index.cjs +1 -1
  214. package/components/filter-item/index.js +1 -1
  215. package/components/filter-item-DENHWF-1.cjs +111 -0
  216. package/components/{filter-item-QJ3sDlmG.js → filter-item-DXkoGth1.js} +170 -169
  217. package/components/filter-parameter-picker/index.cjs +1 -1
  218. package/components/filter-parameter-picker/index.js +1 -1
  219. package/components/{filter-parameter-picker-DjQVFIfg.cjs → filter-parameter-picker-CYb_At4A.cjs} +1 -1
  220. package/components/{filter-parameter-picker-C8qwIo_H.js → filter-parameter-picker-Dhdrwokt.js} +1 -1
  221. package/components/filter-value-picker/index.cjs +1 -1
  222. package/components/filter-value-picker/index.js +1 -1
  223. package/components/{filter-value-picker-DIYyMymr.js → filter-value-picker-Df2otXtB.js} +4 -4
  224. package/components/{filter-value-picker-CMNxLzj7.cjs → filter-value-picker-IBplK-ue.cjs} +1 -1
  225. package/components/filter-value-picker-datetime/index.cjs +1 -1
  226. package/components/filter-value-picker-datetime/index.js +1 -1
  227. package/components/{filter-value-picker-datetime-DKblyQrs.js → filter-value-picker-datetime-Cxj-X50F.js} +34 -28
  228. package/components/filter-value-picker-datetime-DmJ6vrr8.cjs +53 -0
  229. package/components/filter-value-picker-hierarchy/index.cjs +1 -1
  230. package/components/filter-value-picker-hierarchy/index.js +1 -1
  231. package/components/{filter-value-picker-hierarchy-CXPC_4MU.cjs → filter-value-picker-hierarchy-BAK4urti.cjs} +1 -1
  232. package/components/{filter-value-picker-hierarchy-IswtY6Qa.js → filter-value-picker-hierarchy-JUxA6aOK.js} +2 -2
  233. package/components/filter-value-picker-numeric/index.cjs +1 -1
  234. package/components/filter-value-picker-numeric/index.js +1 -1
  235. package/components/{filter-value-picker-numeric-C7_-Fpol.cjs → filter-value-picker-numeric-Bf7iFwmp.cjs} +1 -1
  236. package/components/{filter-value-picker-numeric-DlFnGZ2O.js → filter-value-picker-numeric-MEFZbKsF.js} +1 -1
  237. package/components/filters/index.cjs +1 -1
  238. package/components/filters/index.js +1 -1
  239. package/components/filters-BLd6si6W.cjs +187 -0
  240. package/components/{filters-CxIzuI5q.js → filters-CYSKF57z.js} +115 -104
  241. package/components/formula/index.cjs +1 -1
  242. package/components/formula/index.js +1 -1
  243. package/components/{formula-WqOlEQ5o.js → formula-DPYHw2sr.js} +2 -2
  244. package/components/{formula-codemirror-BTYlGSxE.cjs → formula-codemirror-CZpISqCT.cjs} +1 -1
  245. package/components/{formula-codemirror-bpEb3M2G.js → formula-codemirror-DrcDvAal.js} +4 -4
  246. package/components/{formula-display-store-QU-B6xp9.js → formula-display-store-fFSd4okF.js} +3 -3
  247. package/components/{formula-display-store-D7fzKNfW.cjs → formula-display-store-zZIC2bm-.cjs} +1 -1
  248. package/components/formula-editor/index.cjs +1 -1
  249. package/components/formula-editor/index.js +3 -3
  250. package/components/{formula-editor-BbyDf0vM.js → formula-editor-C9ECzSM6.js} +5 -5
  251. package/components/{formula-editor-D_NRhjUI.cjs → formula-editor-CDx-sZrG.cjs} +1 -1
  252. package/components/formula-field/index.cjs +1 -1
  253. package/components/formula-field/index.js +1 -1
  254. package/components/{formula-field-DSSpI8LB.cjs → formula-field-CV3FLzM2.cjs} +1 -1
  255. package/components/{formula-field-BT9K_W6Q.js → formula-field-DZLfK3cs.js} +1 -1
  256. package/components/{formula-input-base-CQc1OU9G.js → formula-input-base-CTuUw8IY.js} +1 -1
  257. package/components/{formula-input-base-BoWiH97v.cjs → formula-input-base-DN9aVHrY.cjs} +1 -1
  258. package/components/{formula-CXrr9wJZ.cjs → formula-x9mA6jDv.cjs} +1 -1
  259. package/components/{fr-DKAoGI_6.js → fr-C6af3ed2.js} +19 -4
  260. package/components/fr-cuXTTJ19.cjs +20 -0
  261. package/components/{funnel-chart-options.config-W83a8ukL.js → funnel-chart-options.config-AupTvjpk.js} +27 -84
  262. package/components/funnel-chart-options.config-DLRKgBpU.cjs +20 -0
  263. package/components/{funnel-chart-options.de-B2f_xxvV.cjs → funnel-chart-options.de-BXnQCtlb.cjs} +1 -1
  264. package/components/{funnel-chart-options.de-CLMiAr0m.js → funnel-chart-options.de-CRjaoeDf.js} +0 -1
  265. package/components/{funnel-chart-options.en-Pu8yU7Yz.js → funnel-chart-options.en-B0moabZE.js} +0 -1
  266. package/components/{funnel-chart-options.en-Cdvkged9.cjs → funnel-chart-options.en-BxEAM67L.cjs} +1 -1
  267. package/components/{funnel-chart-options.es-CrAp7hOK.cjs → funnel-chart-options.es-B88ZJAvI.cjs} +1 -1
  268. package/components/{funnel-chart-options.es-BPjGIJ7s.js → funnel-chart-options.es-DVVoRoYc.js} +0 -1
  269. package/components/{funnel-chart-options.fr-0RxiqeZg.cjs → funnel-chart-options.fr-B79JhoL2.cjs} +1 -1
  270. package/components/{funnel-chart-options.fr-CtWjGa4q.js → funnel-chart-options.fr-DvQC8k_c.js} +0 -1
  271. package/components/{funnel-chart-options.nl-r_wRg5qR.cjs → funnel-chart-options.nl-CnHVcvGk.cjs} +1 -1
  272. package/components/{funnel-chart-options.nl-2TPEy_CB.js → funnel-chart-options.nl-DJhjX1Pw.js} +0 -1
  273. package/components/{funnel-chart-positioning.config-Dx9E5eiW.cjs → funnel-chart-positioning.config-BZJ5g_XG.cjs} +1 -1
  274. package/components/{funnel-chart-positioning.config-Dbex7egf.js → funnel-chart-positioning.config-y6yFY7jd.js} +1 -1
  275. package/components/{get-dataset-name-C3Sc0hZ0.cjs → get-dataset-name-DddRDGDV.cjs} +1 -1
  276. package/components/{get-dataset-name-BArAzBu2.js → get-dataset-name-OPlPwcJU.js} +1 -1
  277. package/components/{groupings-DMWmtE5F.cjs → groupings-BnI5_4A1.cjs} +1 -1
  278. package/components/{groupings-DXJS4XIU.js → groupings-D_Ri_Z-t.js} +1 -1
  279. package/components/{guidelines-options.config-D-ZuReR_.cjs → guidelines-options.config-BgARZ-fs.cjs} +1 -1
  280. package/components/{guidelines-options.config-DVZrOa3v.js → guidelines-options.config-BqAYiMSF.js} +1 -1
  281. package/components/{heat-map-positioning.config-Bzg0DG60.cjs → heat-map-positioning.config-Cgg-qkcr.cjs} +1 -1
  282. package/components/{heat-map-positioning.config-D4T7PQzN.js → heat-map-positioning.config-DN75-r9r.js} +1 -1
  283. package/components/{heat-table-options.config-CMWWTeyo.js → heat-table-options.config-BL8x1qwt.js} +20 -7
  284. package/components/heat-table-options.config-iEHucwDf.cjs +20 -0
  285. package/components/{heat-table-positioning.config-Cj6LlLe3.cjs → heat-table-positioning.config-C2QPQURh.cjs} +1 -1
  286. package/components/{heat-table-positioning.config-DVQiJfC4.js → heat-table-positioning.config-CHxtZe-0.js} +1 -1
  287. package/components/{hexbin-map-positioning.config-csNrvMwp.js → hexbin-map-positioning.config-B1H1Z6Os.js} +1 -1
  288. package/components/{hexbin-map-positioning.config-ChoCCure.cjs → hexbin-map-positioning.config-BI-RVV35.cjs} +1 -1
  289. package/components/index.cjs +1 -1
  290. package/components/index.js +69 -69
  291. package/components/interactive-viz-item/helpers/chart-helpers.d.ts +2 -1
  292. package/components/interactive-viz-item/index.cjs +1 -1
  293. package/components/interactive-viz-item/index.js +3 -3
  294. package/components/interactive-viz-item/interactive-viz-item.d.ts +44 -0
  295. package/components/{interactive-viz-item-BKLOmawA.js → interactive-viz-item-CngeQ579.js} +153 -112
  296. package/components/interactive-viz-item-qrC0vC2O.cjs +269 -0
  297. package/components/interactivity-options.config-AKgaj2vC.js +131 -0
  298. package/components/interactivity-options.config-CkRDoCWd.cjs +20 -0
  299. package/components/interactivity-options.i18n-Cv5w1nSS.cjs +20 -0
  300. package/components/{interactivity-options.i18n-DY947PNz.js → interactivity-options.i18n-DmrqdhYW.js} +35 -5
  301. package/components/item-grid/index.cjs +1 -1
  302. package/components/item-grid/index.js +2 -2
  303. package/components/item-grid/item-grid.d.ts +1 -0
  304. package/components/{item-grid-DveTRc7D.cjs → item-grid-C-v9kDvq.cjs} +1 -1
  305. package/components/{item-grid-DscQOFMu.js → item-grid-DzR5sfDM.js} +1 -1
  306. package/components/item-grid-item-actions-menu/index.cjs +1 -1
  307. package/components/item-grid-item-actions-menu/index.js +1 -1
  308. package/components/{item-grid-item-actions-menu-B1bKfagj.js → item-grid-item-actions-menu-DJJESWL6.js} +1 -1
  309. package/components/{item-grid-item-actions-menu-xRrT9dkY.cjs → item-grid-item-actions-menu-HIlcOhJA.cjs} +1 -1
  310. package/components/item-option/index.cjs +1 -1
  311. package/components/item-option/index.js +1 -1
  312. package/components/{item-option-DKLRnicU.js → item-option-B6h4E5qR.js} +49 -43
  313. package/components/item-option-action-button-group/index.cjs +1 -1
  314. package/components/item-option-action-button-group/index.js +1 -1
  315. package/components/{item-option-action-button-group-Cpd_CNn-.js → item-option-action-button-group-Bc3bJQUS.js} +1 -1
  316. package/components/{item-option-action-button-group-BMgUwveA.cjs → item-option-action-button-group-CQHpvC5O.cjs} +1 -1
  317. package/components/{item-option-base-BMy6dWbc.cjs → item-option-base-6msESUhx.cjs} +1 -1
  318. package/components/{item-option-base-BfHciede.js → item-option-base-XB_1V6QM.js} +1 -1
  319. package/components/item-option-color-palette-picker/index.cjs +1 -1
  320. package/components/item-option-color-palette-picker/index.js +1 -1
  321. package/components/{item-option-color-palette-picker-8KFuRU1D.js → item-option-color-palette-picker-BYjb4ygk.js} +1 -1
  322. package/components/{item-option-color-palette-picker-CnM1Gi6o.cjs → item-option-color-palette-picker-MhFJgurt.cjs} +1 -1
  323. package/components/item-option-color-picker/index.cjs +1 -1
  324. package/components/item-option-color-picker/index.js +1 -1
  325. package/components/{item-option-color-picker-CNW7GsCO.cjs → item-option-color-picker-CLLWV2M-.cjs} +1 -1
  326. package/components/{item-option-color-picker-DDvsY7hV.js → item-option-color-picker-Dq_NwAn1.js} +1 -1
  327. package/components/item-option-color-range/index.cjs +1 -1
  328. package/components/item-option-color-range/index.js +1 -1
  329. package/components/{item-option-color-range-BqSbuSZh.cjs → item-option-color-range-DlCi_o72.cjs} +1 -1
  330. package/components/{item-option-color-range-FQduqtz3.js → item-option-color-range-abi_vblh.js} +1 -1
  331. package/components/item-option-guidelines/index.cjs +1 -1
  332. package/components/item-option-guidelines/index.js +1 -1
  333. package/components/{item-option-guidelines-k5DwMONo.js → item-option-guidelines-8LmcJ04U.js} +3 -3
  334. package/components/{item-option-guidelines-z9BsGR-l.cjs → item-option-guidelines-Q2M8xSYS.cjs} +1 -1
  335. package/components/item-option-multi-language-field/index.cjs +1 -1
  336. package/components/item-option-multi-language-field/index.js +1 -1
  337. package/components/{item-option-multi-language-field-CqtBl3gM.js → item-option-multi-language-field-6FBm3Xr3.js} +1 -1
  338. package/components/{item-option-multi-language-field-DM2PENxV.cjs → item-option-multi-language-field-Dq3j7XYw.cjs} +1 -1
  339. package/components/item-option-number-field/index.cjs +1 -1
  340. package/components/item-option-number-field/index.js +1 -1
  341. package/components/{item-option-number-field-BgQRhFj3.js → item-option-number-field-CPgwUGTR.js} +1 -1
  342. package/components/{item-option-number-field-Cw2ofJL7.cjs → item-option-number-field-CZSVb9wv.cjs} +1 -1
  343. package/components/item-option-panel/index.cjs +1 -1
  344. package/components/item-option-panel/index.js +1 -1
  345. package/components/{item-option-panel-CU51qvgV.cjs → item-option-panel-B5ZKbaLl.cjs} +1 -1
  346. package/components/{item-option-panel-BLXWIbjX.js → item-option-panel-BZRyyc-9.js} +2 -2
  347. package/components/item-option-picker/index.cjs +1 -1
  348. package/components/item-option-picker/index.js +1 -1
  349. package/components/{item-option-picker-EJlc0bmj.cjs → item-option-picker-DMLk4Uq_.cjs} +1 -1
  350. package/components/{item-option-picker-DkAENDES.js → item-option-picker-mU6X3bbk.js} +1 -1
  351. package/components/item-option-position-picker/index.cjs +1 -1
  352. package/components/item-option-position-picker/index.js +1 -1
  353. package/components/{item-option-position-picker-DX7lLZKO.js → item-option-position-picker-B4AuC_73.js} +1 -1
  354. package/components/{item-option-position-picker-Ba7cBvlL.cjs → item-option-position-picker-BTH6KixE.cjs} +1 -1
  355. package/components/item-option-positions-number-field/index.cjs +1 -1
  356. package/components/item-option-positions-number-field/index.js +1 -1
  357. package/components/{item-option-positions-number-field-Bqfg0MJm.js → item-option-positions-number-field-BTFGhhrb.js} +1 -1
  358. package/components/{item-option-positions-number-field-BQ8gFOAn.cjs → item-option-positions-number-field-Dz0mpPSk.cjs} +1 -1
  359. package/components/item-option-radio-button-group/index.cjs +1 -1
  360. package/components/item-option-radio-button-group/index.js +1 -1
  361. package/components/{item-option-radio-button-group-Bk7VQlpx.js → item-option-radio-button-group-CmYFScry.js} +1 -1
  362. package/components/{item-option-radio-button-group-2hX-E2WV.cjs → item-option-radio-button-group-EBLjtMVd.cjs} +1 -1
  363. package/components/item-option-slider/index.cjs +1 -1
  364. package/components/item-option-slider/index.js +1 -1
  365. package/components/{item-option-slider-BKtJfL3D.js → item-option-slider-C7RfBary.js} +1 -1
  366. package/components/{item-option-slider-Kz2eFBql.cjs → item-option-slider-DRXTGW9W.cjs} +1 -1
  367. package/components/item-option-switch/index.cjs +1 -1
  368. package/components/item-option-switch/index.js +1 -1
  369. package/components/{item-option-switch-BUteU1mc.cjs → item-option-switch-D-FbXXRl.cjs} +1 -1
  370. package/components/{item-option-switch-cGWccE79.js → item-option-switch-D-MY6Uqv.js} +1 -1
  371. package/components/{item-option-DpLdospV.cjs → item-option-t_LsqjoR.cjs} +1 -1
  372. package/components/item-option-text-field/index.cjs +1 -1
  373. package/components/item-option-text-field/index.js +1 -1
  374. package/components/{item-option-text-field-Dy8pqVKJ.js → item-option-text-field-BR2V4ro2.js} +1 -1
  375. package/components/{item-option-text-field-BC9fR-yW.cjs → item-option-text-field-Cn-9lblu.cjs} +1 -1
  376. package/components/item-options-configs.cjs +1 -1
  377. package/components/item-options-configs.js +21 -21
  378. package/components/item-slot-drop/index.cjs +1 -1
  379. package/components/item-slot-drop/index.js +1 -1
  380. package/components/item-slot-drop/item-slot-drop.d.ts +2 -0
  381. package/components/item-slot-drop-7v-n-e1y.cjs +93 -0
  382. package/components/{item-slot-drop-CwZT8bTP.js → item-slot-drop-Db-tVAud.js} +69 -60
  383. package/components/item-slot-drop-panel/index.cjs +1 -1
  384. package/components/item-slot-drop-panel/index.js +1 -1
  385. package/components/item-slot-drop-panel/item-slot-drop-panel.d.ts +2 -0
  386. package/components/{item-slot-drop-panel-o5UdVrY_.js → item-slot-drop-panel-D-g4H1Rp.js} +117 -107
  387. package/components/item-slot-drop-panel-D2_1yWHs.cjs +58 -0
  388. package/components/item-slot-picker/index.cjs +1 -1
  389. package/components/item-slot-picker/index.js +1 -1
  390. package/components/item-slot-picker/item-slot-picker.d.ts +5 -0
  391. package/components/item-slot-picker-9afJORSK.cjs +160 -0
  392. package/components/{item-slot-picker-ilmmb0-8.js → item-slot-picker-BHtj0dRB.js} +109 -101
  393. package/components/item-slot-picker-panel/index.cjs +1 -1
  394. package/components/item-slot-picker-panel/index.js +1 -1
  395. package/components/item-slot-picker-panel/item-slot-picker-panel.d.ts +21 -1
  396. package/components/{item-slot-picker-panel-fJqEmxeD.js → item-slot-picker-panel-CIxGfaz3.js} +111 -69
  397. package/components/item-slot-picker-panel-CeOtdtMc.cjs +86 -0
  398. package/components/{kpi-positioning.config-mQuxf1ke.js → kpi-positioning.config-DDTfIZ_h.js} +1 -1
  399. package/components/{kpi-positioning.config-DIYWUwID.cjs → kpi-positioning.config-t9SxIqga.cjs} +1 -1
  400. package/components/legend-options.i18n-0hyeyskh.js +78 -0
  401. package/components/legend-options.i18n-CUZeW5rR.cjs +20 -0
  402. package/components/{line-chart-options.config-Opoz2jPk.js → line-chart-options.config-BdhyECMS.js} +2 -2
  403. package/components/{line-chart-options.config-DOGbeJhy.cjs → line-chart-options.config-CVtYVap1.cjs} +1 -1
  404. package/components/{line-chart-positioning.config-DqjrWmxJ.js → line-chart-positioning.config-BZoKaJVO.js} +1 -1
  405. package/components/{line-chart-positioning.config-DK9PycZ_.cjs → line-chart-positioning.config-DfTMlBBL.cjs} +1 -1
  406. package/components/{localized-mixin-EoNvtTBG.cjs → localized-mixin-BQowFGQK.cjs} +1 -1
  407. package/components/{localized-mixin-FPDNaZhb.js → localized-mixin-BdXrQldH.js} +1 -1
  408. package/components/{marker-map-positioning.config-BB51kE8O.cjs → marker-map-positioning.config-BsPUa8Ui.cjs} +1 -1
  409. package/components/{marker-map-positioning.config-CA08hZcp.js → marker-map-positioning.config-BtuIUPHT.js} +1 -1
  410. package/components/nl-B4gqLp1F.cjs +20 -0
  411. package/components/{nl-DNWGcGqO.js → nl-Chzh7kM2.js} +19 -4
  412. package/components/{ohlc-chart-options.config-CvlHm6hy.cjs → ohlc-chart-options.config-BQJWhXv7.cjs} +1 -1
  413. package/components/{ohlc-chart-options.config-C-TCUtOt.js → ohlc-chart-options.config-MYqetK62.js} +3 -3
  414. package/components/{ohlc-chart-positioning.config-CDL2vGsl.cjs → ohlc-chart-positioning.config-D1X1U96F.cjs} +1 -1
  415. package/components/{ohlc-chart-positioning.config-BqFHD1oj.js → ohlc-chart-positioning.config-Ny3U8zgV.js} +1 -1
  416. package/components/{parallel-coordinates-plot-options.config-UHrCS9q5.cjs → parallel-coordinates-plot-options.config-B4v6BtAz.cjs} +1 -1
  417. package/components/{parallel-coordinates-plot-options.config-C3HTFBTl.js → parallel-coordinates-plot-options.config-CN4p7QDD.js} +1 -1
  418. package/components/{parallel-coordinates-plot-positioning.config-Cc-ooVxV.cjs → parallel-coordinates-plot-positioning.config-BI6JMiBT.cjs} +1 -1
  419. package/components/{parallel-coordinates-plot-positioning.config-D6IuAk_K.js → parallel-coordinates-plot-positioning.config-Curf1XoL.js} +1 -1
  420. package/components/{period-over-period-condition.const-C1NZ9Bkp.cjs → period-over-period-condition.const-BOI8gxO1.cjs} +1 -1
  421. package/components/{period-over-period-condition.const-AE_2h-9O.js → period-over-period-condition.const-C9cn5m-o.js} +1 -2
  422. package/components/period-over-period-context-CeZHXSs0.js +84 -0
  423. package/components/period-over-period-context-Cx4pRKBn.cjs +20 -0
  424. package/components/{pivot-table-options.config-5pYvqc35.cjs → pivot-table-options.config-1DApg-wg.cjs} +1 -1
  425. package/components/{pivot-table-options.config-BlrguysB.js → pivot-table-options.config-DhzyxHTP.js} +1 -1
  426. package/components/{pivot-table-positioning.config-DDwXH70O.js → pivot-table-positioning.config-BoN7P8bs.js} +1 -1
  427. package/components/{pivot-table-positioning.config-DvwKNjoD.cjs → pivot-table-positioning.config-BsyGrzvX.cjs} +1 -1
  428. package/components/{pyramid-chart-options.config-CAC6cMmt.cjs → pyramid-chart-options.config-CNOOucJE.cjs} +1 -1
  429. package/components/{pyramid-chart-options.config-0Qf1naIx.js → pyramid-chart-options.config-DVBuswjg.js} +1 -1
  430. package/components/{pyramid-chart-positioning.config-DWou2jnm.js → pyramid-chart-positioning.config-D9Z40IzT.js} +1 -1
  431. package/components/{pyramid-chart-positioning.config-10BYkgv8.cjs → pyramid-chart-positioning.config-DdjlJjFb.cjs} +1 -1
  432. package/components/{radar-chart-positioning.config-B0O8vn-B.js → radar-chart-positioning.config-C16aywvy.js} +1 -1
  433. package/components/{radar-chart-positioning.config-Dg41uYWY.cjs → radar-chart-positioning.config-DARMkDIv.cjs} +1 -1
  434. package/components/{route-map-positioning.config-C1iUodTh.js → route-map-positioning.config-BmuPL5DK.js} +1 -1
  435. package/components/{route-map-positioning.config-DlM6xJTP.cjs → route-map-positioning.config-CTtpis1h.cjs} +1 -1
  436. package/components/{sankey-diagram-options.config-Y6jRK3wk.js → sankey-diagram-options.config-B86iq8pI.js} +1 -1
  437. package/components/{sankey-diagram-options.config-B8aHKfFt.cjs → sankey-diagram-options.config-mIgABANw.cjs} +1 -1
  438. package/components/{sankey-diagram-positioning.config-5EXNleL5.js → sankey-diagram-positioning.config-BhvJe1IX.js} +1 -1
  439. package/components/{sankey-diagram-positioning.config-BSu02GJ1.cjs → sankey-diagram-positioning.config-aLwXoVGA.cjs} +1 -1
  440. package/components/{scatter-plot-options.config-DhOGahRc.cjs → scatter-plot-options.config-BZVF4r3f.cjs} +1 -1
  441. package/components/{scatter-plot-options.config-DvGofFzR.js → scatter-plot-options.config-ChqZzslY.js} +2 -2
  442. package/components/{scatter-plot-positioning.config-CuyJUmiV.cjs → scatter-plot-positioning.config-CYy1jfz5.cjs} +1 -1
  443. package/components/{scatter-plot-positioning.config-nDbkUUqa.js → scatter-plot-positioning.config-twVc5wWl.js} +1 -1
  444. package/components/{set-locale-m257lVi3.js → set-locale-BeAF7qn4.js} +4 -4
  445. package/components/{set-locale-BkMmLcm6.cjs → set-locale-DvJ1yA4S.cjs} +1 -1
  446. package/components/{slicer-filter-positioning.config-BT5aNPHe.js → slicer-filter-positioning.config-WofHaYJx.js} +1 -1
  447. package/components/{slicer-filter-positioning.config-D7ZLoaGu.cjs → slicer-filter-positioning.config-_frD2LDr.cjs} +1 -1
  448. package/components/slot-menu/index.cjs +1 -1
  449. package/components/slot-menu/index.js +1 -1
  450. package/components/slot-menu/slot-menu.d.ts +6 -0
  451. package/components/slot-menu-B-7MzAd6.cjs +71 -0
  452. package/components/{slot-menu-BB_nJWZx.js → slot-menu-DhGC4yoA.js} +88 -97
  453. package/components/slot-menu-list/index.cjs +1 -1
  454. package/components/slot-menu-list/index.js +1 -1
  455. package/components/{slot-menu-list-C2nLODML.cjs → slot-menu-list-CiJK2fNu.cjs} +1 -1
  456. package/components/{slot-menu-list-3QkrOWgG.js → slot-menu-list-SoDeiZE1.js} +1 -1
  457. package/components/sort-options.config-CiPFyoxx.cjs +20 -0
  458. package/components/sort-options.config-CiZo1AEh.js +104 -0
  459. package/components/{speedometer-chart-positioning.config-CO1MtdU3.js → speedometer-chart-positioning.config-BLXUOOc_.js} +1 -1
  460. package/components/{speedometer-chart-positioning.config-BtDD3TiP.cjs → speedometer-chart-positioning.config-CkTqU3qn.cjs} +1 -1
  461. package/components/{spike-map-positioning.config-BhKVutm1.cjs → spike-map-positioning.config-DmLlz8ZD.cjs} +1 -1
  462. package/components/{spike-map-positioning.config-CQkcCdHD.js → spike-map-positioning.config-pgedE0nh.js} +1 -1
  463. package/components/{strip-plot-positioning.config-DEyOR-yS.js → strip-plot-positioning.config-B4sVlI82.js} +1 -1
  464. package/components/{strip-plot-positioning.config-CEYgtT13.cjs → strip-plot-positioning.config-CtctjJwh.cjs} +1 -1
  465. package/components/sunburst-chart-options.config-DNkL0pN4.cjs +20 -0
  466. package/components/{sunburst-chart-options.config-DVETeZFc.js → sunburst-chart-options.config-Zg42LwmT.js} +26 -83
  467. package/components/{sunburst-chart-options.de-DO65RQI_.cjs → sunburst-chart-options.de-BIJ2Njvn.cjs} +1 -1
  468. package/components/{sunburst-chart-options.de-B0mIITIx.js → sunburst-chart-options.de-BaLziTTh.js} +2 -2
  469. package/components/{sunburst-chart-options.en-C3IkkUBW.cjs → sunburst-chart-options.en-C2P4VIQq.cjs} +1 -1
  470. package/components/{sunburst-chart-options.en-LoUPN34r.js → sunburst-chart-options.en-CxWuNug0.js} +2 -2
  471. package/components/{sunburst-chart-options.es-BV_4fN10.cjs → sunburst-chart-options.es-eGoOC0h2.cjs} +1 -1
  472. package/components/{sunburst-chart-options.es-DBje7CMN.js → sunburst-chart-options.es-nqpK13rB.js} +2 -2
  473. package/components/{sunburst-chart-options.fr-Cnbpsj6t.js → sunburst-chart-options.fr-Dtfoz1Z-.js} +2 -2
  474. package/components/{sunburst-chart-options.fr-DO7-oeNe.cjs → sunburst-chart-options.fr-wdaTbc-I.cjs} +1 -1
  475. package/components/{sunburst-chart-options.nl-DsecjcfE.cjs → sunburst-chart-options.nl-2U3YQ6aP.cjs} +1 -1
  476. package/components/{sunburst-chart-options.nl-CluctKYY.js → sunburst-chart-options.nl-BljrFLha.js} +2 -2
  477. package/components/{sunburst-chart-positioning.config-DP-ifsmn.js → sunburst-chart-positioning.config-BJpphNBF.js} +1 -1
  478. package/components/{sunburst-chart-positioning.config-DNtHXpHg.cjs → sunburst-chart-positioning.config-BaQsxbr9.cjs} +1 -1
  479. package/components/{symbol-map-positioning.config-CoLDPgYM.cjs → symbol-map-positioning.config-657GZ7GZ.cjs} +1 -1
  480. package/components/{symbol-map-positioning.config-Nj7pDOAu.js → symbol-map-positioning.config-DEMmnp7J.js} +1 -1
  481. package/components/theme-options.config-CnSIfTf6.js +47 -0
  482. package/components/theme-options.config-DZJos9OK.cjs +20 -0
  483. package/components/theme-options.i18n-7V690gi-.cjs +20 -0
  484. package/components/theme-options.i18n-DtQoYxRz.js +43 -0
  485. package/components/{treemap-chart-options.config-DLEY6YuI.cjs → treemap-chart-options.config-B-bY4pOq.cjs} +1 -1
  486. package/components/{treemap-chart-options.config-DsqsX9So.js → treemap-chart-options.config-BYbW8htL.js} +1 -1
  487. package/components/{treemap-chart-positioning.config-B_R_cmFs.js → treemap-chart-positioning.config-CLKsuS0b.js} +1 -1
  488. package/components/{treemap-chart-positioning.config-BVOqj2V1.cjs → treemap-chart-positioning.config-DnY0Gnz7.cjs} +1 -1
  489. package/components/utils/base.cjs +1 -1
  490. package/components/utils/base.js +2 -2
  491. package/components/{utils-DIKmx9O1.cjs → utils-BGtDiw5k.cjs} +1 -1
  492. package/components/{utils-DS6Pthr4.js → utils-ZVgZ4EFf.js} +1 -1
  493. package/components/utils.cjs +1 -1
  494. package/components/utils.js +8 -8
  495. package/components/{venn-diagram-positioning.config-DOsSkJYl.js → venn-diagram-positioning.config-BjiidwmG.js} +1 -1
  496. package/components/{venn-diagram-positioning.config-8JCVpYOt.cjs → venn-diagram-positioning.config-OBLHpLAK.cjs} +1 -1
  497. package/components/{wordcloud-chart-options.config-DiyF596X.cjs → wordcloud-chart-options.config-COTlsOrG.cjs} +1 -1
  498. package/components/{wordcloud-chart-options.config-UAl2hfU7.js → wordcloud-chart-options.config-vKHxHgLh.js} +1 -1
  499. package/components/{wordcloud-chart-positioning.config-DSVw_z7Y.js → wordcloud-chart-positioning.config-68AyKLI2.js} +1 -1
  500. package/components/{wordcloud-chart-positioning.config-D13iPEEg.cjs → wordcloud-chart-positioning.config-B_pohQK5.cjs} +1 -1
  501. package/custom-elements.json +3411 -2436
  502. package/grid-core/item-grid-base.d.ts +5 -4
  503. package/package.json +3 -3
  504. package/react/components/ai-chat.component.ts +1 -1
  505. package/react/esm/components/ai-chat.component.d.ts +1 -1
  506. package/react/esm/components/ai-chat.component.js +1 -1
  507. package/react/package.json +2 -2
  508. package/standalone/add-to-dashboard.js +1 -1
  509. package/standalone/chunks/advanced-options.i18n-BDqAAkCh.js +2 -0
  510. package/standalone/chunks/{area-chart-options.config-BMvUma_d.js → area-chart-options.config-MSCX7GCC.js} +1 -1
  511. package/standalone/chunks/{bar-chart-options.config-BpHqXBFq.js → bar-chart-options.config-C-kawBg1.js} +1 -1
  512. package/standalone/chunks/{box-plot-options.config-DDWb_KmV.js → box-plot-options.config-EeKqXIKW.js} +1 -1
  513. package/standalone/chunks/{bubble-chart-options.config-BKPTymfC.js → bubble-chart-options.config-BEP0haal.js} +1 -1
  514. package/standalone/chunks/{chart-helpers-CR-EUEPf.js → chart-helpers-CKlLA7d7.js} +2 -2
  515. package/standalone/chunks/{choropleth-map-options.config-CDMjKnJD.js → choropleth-map-options.config-C9iAp9Kx.js} +1 -1
  516. package/standalone/chunks/{circle-pack-chart-options.config-CjDkh4DG.js → circle-pack-chart-options.config-Ch67WcjC.js} +1 -1
  517. package/standalone/chunks/{color-range-utils-BVyHBRiq.js → color-range-utils-D2amn7jf.js} +1 -1
  518. package/standalone/chunks/{column-chart-options.config-YIe6cMV5.js → column-chart-options.config-kXBPyFRG.js} +1 -1
  519. package/standalone/chunks/{combination-chart-options.config-Bf7cNmpc.js → combination-chart-options.config-CvVDQmwB.js} +1 -1
  520. package/standalone/chunks/data-broker-CUCszU0S.js +2 -0
  521. package/standalone/chunks/de-CBvR-tEX.js +2 -0
  522. package/standalone/chunks/{display-settings-binning-BeLLxd3i.js → display-settings-binning-5gaYqJVT.js} +1 -1
  523. package/standalone/chunks/display-settings-datetime-DhmVs5jK.js +199 -0
  524. package/standalone/chunks/{display-settings-grand-totals-BuhpQKJ6.js → display-settings-grand-totals-B83suS2N.js} +1 -1
  525. package/standalone/chunks/{display-settings-numeric-m30IYI7I.js → display-settings-numeric-CnKNRgjc.js} +1 -1
  526. package/standalone/chunks/display-settings-period-over-period-Di_2_DDX.js +133 -0
  527. package/standalone/chunks/donut-chart-options.config-re9dbce1.js +2 -0
  528. package/standalone/chunks/donut-chart-options.de-C1yjMc7p.js +2 -0
  529. package/standalone/chunks/donut-chart-options.en-CJSA_qMs.js +2 -0
  530. package/standalone/chunks/donut-chart-options.es-9wl-kU6W.js +2 -0
  531. package/standalone/chunks/donut-chart-options.fr-FewVJ9oP.js +2 -0
  532. package/standalone/chunks/donut-chart-options.nl-BA31OsN3.js +2 -0
  533. package/standalone/chunks/{embed-Bv1ps-EM.js → embed-BL4OOcIV.js} +1 -1
  534. package/standalone/chunks/en-Cu0ra3lJ.js +2 -0
  535. package/standalone/chunks/en-GB-B575630r.js +2 -0
  536. package/standalone/chunks/en-US-Cu0ra3lJ.js +2 -0
  537. package/standalone/chunks/es-CJnRT1YI.js +2 -0
  538. package/standalone/chunks/{filters-CxgBXUF1.js → filters-Dk7oDe_z.js} +75 -73
  539. package/standalone/chunks/{formula-codemirror-Cq94j3-f.js → formula-codemirror-Dn_LEpVx.js} +8 -8
  540. package/standalone/chunks/fr-DqE0NP1j.js +2 -0
  541. package/standalone/chunks/funnel-chart-options.config-CW0RAyLR.js +2 -0
  542. package/standalone/chunks/{funnel-chart-options.de-u5OrFyng.js → funnel-chart-options.de-D2UImO-s.js} +1 -1
  543. package/standalone/chunks/{funnel-chart-options.en-BEGSBn35.js → funnel-chart-options.en-BJr4frpT.js} +1 -1
  544. package/standalone/chunks/{funnel-chart-options.es-CxWkEgMs.js → funnel-chart-options.es-DkAYtLaS.js} +1 -1
  545. package/standalone/chunks/{funnel-chart-options.fr-DZmmgK2t.js → funnel-chart-options.fr-BD3VKHzw.js} +1 -1
  546. package/standalone/chunks/{funnel-chart-options.nl-C6BitaEJ.js → funnel-chart-options.nl-CubJLSq7.js} +1 -1
  547. package/standalone/chunks/{guidelines-options.config-CS29_J9M.js → guidelines-options.config-CrJ_haaO.js} +1 -1
  548. package/standalone/chunks/{heat-map-options.config-DDQMD38W.js → heat-map-options.config-_1TkgBVb.js} +1 -1
  549. package/standalone/chunks/heat-table-options.config-tgVKW_7X.js +2 -0
  550. package/standalone/chunks/interactivity-options.config-CG_ZbLS5.js +2 -0
  551. package/standalone/chunks/interactivity-options.i18n-V1RAn6Ue.js +2 -0
  552. package/standalone/chunks/{is-same-option-value-7kXNF4st.js → is-same-option-value-CfxEd5pG.js} +1 -1
  553. package/standalone/chunks/{item-option-action-button-group-BoyqF9vt.js → item-option-action-button-group-C1ke6Jb3.js} +1 -1
  554. package/standalone/chunks/{item-option-base-CBcDT8MX.js → item-option-base-DSAq8pgm.js} +1 -1
  555. package/standalone/chunks/{item-option-color-palette-picker-C9PGAv4V.js → item-option-color-palette-picker-waW4sAIj.js} +1 -1
  556. package/standalone/chunks/{item-option-color-picker-D4fVJlqF.js → item-option-color-picker-9e_3aSen.js} +1 -1
  557. package/standalone/chunks/{item-option-color-range-BlAdTguE.js → item-option-color-range-CWmg4Tdk.js} +1 -1
  558. package/standalone/chunks/{item-option-guidelines-DMsYsHDu.js → item-option-guidelines-BnLLvaFI.js} +1 -1
  559. package/standalone/chunks/{item-option-multi-language-field-NUbm1drg.js → item-option-multi-language-field-BN9u0rGs.js} +1 -1
  560. package/standalone/chunks/{item-option-number-field-DRp7kbHL.js → item-option-number-field-D2gvKQN_.js} +1 -1
  561. package/standalone/chunks/{item-option-panel-cXrRclzM.js → item-option-panel-BWQpttWc.js} +2 -2
  562. package/standalone/chunks/{item-option-picker-Ba09L4Cs.js → item-option-picker-BElgjysX.js} +1 -1
  563. package/standalone/chunks/{item-option-position-picker-GEGTnhjw.js → item-option-position-picker-B7FGJPTv.js} +1 -1
  564. package/standalone/chunks/{item-option-positions-number-field-n44s1k5v.js → item-option-positions-number-field-CyCWqMby.js} +1 -1
  565. package/standalone/chunks/{item-option-radio-button-group-3s_b1NvR.js → item-option-radio-button-group-DjMjG9W3.js} +1 -1
  566. package/standalone/chunks/{item-option-slider-DtY65Gxk.js → item-option-slider-CJrobai6.js} +1 -1
  567. package/standalone/chunks/{item-option-switch-4sJaI0mx.js → item-option-switch-DTK0eRzd.js} +1 -1
  568. package/standalone/chunks/{item-option-text-field-Bt6Lj6kh.js → item-option-text-field-B4-wMWpQ.js} +1 -1
  569. package/standalone/chunks/item-slot-picker-panel-BZsTEDns.js +438 -0
  570. package/standalone/chunks/legend-options.i18n-Dr6XmdZs.js +2 -0
  571. package/standalone/chunks/line-chart-options.config-VgcDr1j6.js +2 -0
  572. package/standalone/chunks/load-data-fields-for-datasets-Df6IGwne.js +25 -0
  573. package/standalone/chunks/localize-DIWFho02.js +2 -0
  574. package/standalone/chunks/{localized-decorator-DosMCCQo.js → localized-decorator-C2ufmkVS.js} +1 -1
  575. package/standalone/chunks/{localized-mixin-BWJj88bd.js → localized-mixin-CLvEZO1g.js} +1 -1
  576. package/standalone/chunks/{luzmo-icon-markup-ByaNI6dg.js → luzmo-icon-markup-C1Wzxt4b.js} +1 -1
  577. package/standalone/chunks/nl-DBD8_AIO.js +2 -0
  578. package/standalone/chunks/{ohlc-chart-options.config-kyYOgBtR.js → ohlc-chart-options.config-DoFcORQY.js} +1 -1
  579. package/standalone/chunks/{option-interaction-controller-BuwRr21c.js → option-interaction-controller-BfHSkomY.js} +1 -1
  580. package/standalone/chunks/{parallel-coordinates-plot-options.config-BcIYCRdF.js → parallel-coordinates-plot-options.config-JmTkwzbf.js} +1 -1
  581. package/standalone/chunks/{pivot-table-options.config-BZpId1ju.js → pivot-table-options.config-mk1a9meE.js} +1 -1
  582. package/standalone/chunks/{pyramid-chart-options.config-xYIVE_ib.js → pyramid-chart-options.config-DuCSp-ss.js} +1 -1
  583. package/standalone/chunks/{route-map-options.config-CGBkHnhM.js → route-map-options.config-B73cNABj.js} +1 -1
  584. package/standalone/chunks/{sankey-diagram-options.config-Curc2-If.js → sankey-diagram-options.config-BsFxRYGh.js} +1 -1
  585. package/standalone/chunks/scatter-plot-options.config-DiO2UduI.js +2 -0
  586. package/standalone/chunks/sort-options.config-fFAfPcSI.js +2 -0
  587. package/standalone/chunks/{spike-map-options.config-CSenlJ_F.js → spike-map-options.config-BpRwiS7U.js} +1 -1
  588. package/standalone/chunks/sunburst-chart-options.config-TCXdodS8.js +2 -0
  589. package/standalone/chunks/sunburst-chart-options.de-DabJH9rY.js +2 -0
  590. package/standalone/chunks/sunburst-chart-options.en-BNJlsmSV.js +2 -0
  591. package/standalone/chunks/sunburst-chart-options.es-xn2E_v17.js +2 -0
  592. package/standalone/chunks/sunburst-chart-options.fr-DQR4oaiY.js +2 -0
  593. package/standalone/chunks/sunburst-chart-options.nl-BZGlfl67.js +2 -0
  594. package/standalone/chunks/{task-BlhDPTQS.js → task-B6C9QMNJ.js} +1 -1
  595. package/standalone/chunks/theme-options.config-W0JNb9nG.js +2 -0
  596. package/standalone/chunks/theme-options.i18n-DtI0eOJ4.js +2 -0
  597. package/standalone/chunks/{treemap-chart-options.config-DxkumoYq.js → treemap-chart-options.config-CLpDBIB5.js} +1 -1
  598. package/standalone/chunks/{wordcloud-chart-options.config-b-ibtRWp.js → wordcloud-chart-options.config-Bjw10jRd.js} +1 -1
  599. package/standalone/interactive-viz-item.js +54 -53
  600. package/standalone/item-grid.js +1 -1
  601. package/standalone/manifest.json +92 -87
  602. package/types/ai-chat.types.d.ts +60 -0
  603. package/types.d.ts +1 -1
  604. package/utils/filters/expressions.d.ts +2 -0
  605. package/utils/slot-state/slot-store.d.ts +3 -8
  606. package/utils/time/period-over-period-condition.const.d.ts +0 -1
  607. package/utils/time/period-over-period-context.d.ts +75 -0
  608. package/utils/time/tests/period-over-period-context.test.d.ts +1 -0
  609. package/components/ai-chat-BNcSadGI.cjs +0 -393
  610. package/components/chart-helpers-fMnqHRzC.cjs +0 -20
  611. package/components/de-KvAhLsm8.cjs +0 -20
  612. package/components/display-settings-DaZ3CiKB.cjs +0 -143
  613. package/components/display-settings-period-over-period-B8Ne3lq-.cjs +0 -227
  614. package/components/donut-chart-options.config-DX-spmaZ.cjs +0 -20
  615. package/components/es-DVISHTAz.cjs +0 -20
  616. package/components/filter-expression-picker-Cc3xfiGT.js +0 -432
  617. package/components/filter-expression-picker-DDSI9bYq.cjs +0 -40
  618. package/components/filter-item-DQNbp7Qn.cjs +0 -111
  619. package/components/filter-value-picker-datetime-BVDQ-og5.cjs +0 -51
  620. package/components/filters-BPbPFOu5.cjs +0 -187
  621. package/components/fr-BCxcMVQV.cjs +0 -20
  622. package/components/funnel-chart-options.config-CKp94nx7.cjs +0 -20
  623. package/components/heat-table-options.config-D21xtaIk.cjs +0 -20
  624. package/components/interactive-viz-item-ojdH1uk0.cjs +0 -268
  625. package/components/interactivity-options.config-Bzk2L-qh.cjs +0 -20
  626. package/components/interactivity-options.config-MuEP5vSt.js +0 -72
  627. package/components/interactivity-options.i18n-BsYv4Rh9.cjs +0 -20
  628. package/components/item-slot-drop-DLzi4Dik.cjs +0 -91
  629. package/components/item-slot-drop-panel-Oh8zdKJH.cjs +0 -57
  630. package/components/item-slot-picker-O9HKr3mv.cjs +0 -158
  631. package/components/item-slot-picker-panel-BhhN54IM.cjs +0 -82
  632. package/components/nl-XotE1MQq.cjs +0 -20
  633. package/components/slot-menu-C8p0nkVS.cjs +0 -71
  634. package/components/sunburst-chart-options.config-CZdd6qx0.cjs +0 -20
  635. package/standalone/chunks/data-broker-DXDyIrj_.js +0 -2
  636. package/standalone/chunks/de-BkB0q1Eg.js +0 -2
  637. package/standalone/chunks/display-settings-datetime-BkeiKIVV.js +0 -199
  638. package/standalone/chunks/display-settings-period-over-period-CqDlOSRn.js +0 -209
  639. package/standalone/chunks/donut-chart-options.config-DWpePR5V.js +0 -2
  640. package/standalone/chunks/donut-chart-options.de-IKGJRoDL.js +0 -2
  641. package/standalone/chunks/donut-chart-options.en-O2IK3YiS.js +0 -2
  642. package/standalone/chunks/donut-chart-options.es-gKAHuFAU.js +0 -2
  643. package/standalone/chunks/donut-chart-options.fr-Q-uMrtQG.js +0 -2
  644. package/standalone/chunks/donut-chart-options.nl-B6v6jK4l.js +0 -2
  645. package/standalone/chunks/en-63f7j4v7.js +0 -2
  646. package/standalone/chunks/en-GB-QAmXQf8W.js +0 -2
  647. package/standalone/chunks/en-US-63f7j4v7.js +0 -2
  648. package/standalone/chunks/es-Bo0jStZn.js +0 -2
  649. package/standalone/chunks/fr-Co_qVhhV.js +0 -2
  650. package/standalone/chunks/funnel-chart-options.config-S1yxc6IG.js +0 -2
  651. package/standalone/chunks/heat-table-options.config-B4K0Ygug.js +0 -2
  652. package/standalone/chunks/interactivity-options.config-09eXx6k6.js +0 -2
  653. package/standalone/chunks/interactivity-options.i18n-BLDCmZkC.js +0 -2
  654. package/standalone/chunks/item-slot-picker-panel-BOSVFBIy.js +0 -429
  655. package/standalone/chunks/line-chart-options.config--_LXaPbB.js +0 -2
  656. package/standalone/chunks/load-data-fields-for-datasets-CDlut-6S.js +0 -25
  657. package/standalone/chunks/localize-DXRmGRe-.js +0 -2
  658. package/standalone/chunks/nl-CQz2jrVx.js +0 -2
  659. package/standalone/chunks/scatter-plot-options.config-DG9Ki-mt.js +0 -2
  660. package/standalone/chunks/sunburst-chart-options.config-DOBSe3i5.js +0 -2
  661. package/standalone/chunks/sunburst-chart-options.de-D3iq4Q-m.js +0 -2
  662. package/standalone/chunks/sunburst-chart-options.en-BUJ_Pr9C.js +0 -2
  663. package/standalone/chunks/sunburst-chart-options.es-stKrKGz2.js +0 -2
  664. package/standalone/chunks/sunburst-chart-options.fr-RkBtlMNp.js +0 -2
  665. package/standalone/chunks/sunburst-chart-options.nl-BUeDNot_.js +0 -2
@@ -15,6 +15,8 @@ export class LuzmoItemSlotDrop {
15
15
  get nativeElement() {
16
16
  return this.host;
17
17
  }
18
+ /** Whether a comparison filter currently applies to this item. Runtime only; never saved in slot contents. */
19
+ hasConnectedComparisonFilter;
18
20
  /** The visualization item type that determines the available slots and their configuration. */
19
21
  itemType;
20
22
  /** The name of the slot this drop target represents. */
@@ -70,6 +72,9 @@ export class LuzmoItemSlotDrop {
70
72
  ngOnChanges(changes) {
71
73
  for (const key of Object.keys(changes)) {
72
74
  switch (key) {
75
+ case 'hasConnectedComparisonFilter':
76
+ this.setHostProperty('hasConnectedComparisonFilter', changes['hasConnectedComparisonFilter'].currentValue);
77
+ break;
73
78
  case 'itemType':
74
79
  this.setHostProperty('itemType', changes['itemType'].currentValue);
75
80
  break;
@@ -158,7 +163,7 @@ export class LuzmoItemSlotDrop {
158
163
  }));
159
164
  }
160
165
  static ɵfac = function LuzmoItemSlotDrop_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoItemSlotDrop)(); };
161
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemSlotDrop, selectors: [["luzmo-item-slot-drop"]], inputs: { itemType: "itemType", slotName: "slotName", slotConfiguration: "slotConfiguration", slotsContents: "slotsContents", label: "label", contentLanguage: "contentLanguage", dragBoundary: "dragBoundary", rotate: [2, "rotate", "rotate", booleanAttribute], apiUrl: "apiUrl", authKey: "authKey", authToken: "authToken", menu: "menu", placement: "placement", hideDelete: [2, "hideDelete", "hideDelete", booleanAttribute], hideConfiguration: [2, "hideConfiguration", "hideConfiguration", booleanAttribute], language: "language", size: "size" }, outputs: { luzmoSlotMenuInactive: "luzmoSlotMenuInactive", luzmoSlotMenuActive: "luzmoSlotMenuActive", luzmoSlotMenuHighlight: "luzmoSlotMenuHighlight", luzmoInfoVisibilityChanged: "luzmoInfoVisibilityChanged", luzmoSlotContentsChanged: "luzmoSlotContentsChanged" }, exportAs: ["luzmoItemSlotDrop"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemSlotDrop_Template(rf, ctx) { if (rf & 1) {
166
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemSlotDrop, selectors: [["luzmo-item-slot-drop"]], inputs: { hasConnectedComparisonFilter: [2, "hasConnectedComparisonFilter", "hasConnectedComparisonFilter", booleanAttribute], itemType: "itemType", slotName: "slotName", slotConfiguration: "slotConfiguration", slotsContents: "slotsContents", label: "label", contentLanguage: "contentLanguage", dragBoundary: "dragBoundary", rotate: [2, "rotate", "rotate", booleanAttribute], apiUrl: "apiUrl", authKey: "authKey", authToken: "authToken", menu: "menu", placement: "placement", hideDelete: [2, "hideDelete", "hideDelete", booleanAttribute], hideConfiguration: [2, "hideConfiguration", "hideConfiguration", booleanAttribute], language: "language", size: "size" }, outputs: { luzmoSlotMenuInactive: "luzmoSlotMenuInactive", luzmoSlotMenuActive: "luzmoSlotMenuActive", luzmoSlotMenuHighlight: "luzmoSlotMenuHighlight", luzmoInfoVisibilityChanged: "luzmoInfoVisibilityChanged", luzmoSlotContentsChanged: "luzmoSlotContentsChanged" }, exportAs: ["luzmoItemSlotDrop"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemSlotDrop_Template(rf, ctx) { if (rf & 1) {
162
167
  i0.ɵɵprojectionDef();
163
168
  i0.ɵɵprojection(0);
164
169
  } }, encapsulation: 2 });
@@ -172,7 +177,10 @@ export class LuzmoItemSlotDrop {
172
177
  changeDetection: ChangeDetectionStrategy.OnPush,
173
178
  template: '<ng-content />'
174
179
  }]
175
- }], () => [], { itemType: [{
180
+ }], () => [], { hasConnectedComparisonFilter: [{
181
+ type: Input,
182
+ args: [{ alias: 'hasConnectedComparisonFilter', transform: booleanAttribute }]
183
+ }], itemType: [{
176
184
  type: Input,
177
185
  args: [{ alias: 'itemType' }]
178
186
  }], slotName: [{
@@ -14,6 +14,8 @@ export declare class LuzmoItemSlotPickerPanel implements OnChanges {
14
14
  private readonly listenerCleanup;
15
15
  /** The underlying custom element instance. Use to call imperative methods. */
16
16
  get nativeElement(): LuzmoItemSlotPickerPanelHostElement;
17
+ /** Whether a comparison filter currently applies to this item. Runtime only; never saved in slot contents. */
18
+ hasConnectedComparisonFilter?: boolean;
17
19
  /** The type of the item (e.g., 'bar-chart', 'line-chart', 'area-chart') */
18
20
  itemType?: VizItemType | string;
19
21
  /** The language to use for locale-aware formatting and labels */
@@ -34,7 +36,7 @@ export declare class LuzmoItemSlotPickerPanel implements OnChanges {
34
36
  datasetsDataFields?: Array<DatasetsDataFields & Pick<DatasetMetadata, 'description'>>;
35
37
  /** Array of dataset IDs to fetch and display. Used as an alternative to datasetsDataFields - when provided (and datasetsDataFields is empty), the component will fetch the dataset metadata automatically. Requires apiUrl, authKey, and authToken to be set. */
36
38
  datasetIds?: string[];
37
- /** The currently selected dataset ID. If not provided, defaults to the first available dataset. */
39
+ /** The currently selected dataset ID. If not provided, defaults to the first available dataset, except when the panel fetches the dataset list itself. */
38
40
  selectedDatasetId?: string;
39
41
  /** Whether to show the dataset picker dropdown. */
40
42
  datasetPicker?: boolean;
@@ -91,7 +93,8 @@ export declare class LuzmoItemSlotPickerPanel implements OnChanges {
91
93
  private setHostProperty;
92
94
  private bindEvents;
93
95
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoItemSlotPickerPanel, never>;
94
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemSlotPickerPanel, "luzmo-item-slot-picker-panel", ["luzmoItemSlotPickerPanel"], { "itemType": { "alias": "itemType"; "required": false; }; "contentLanguage": { "alias": "contentLanguage"; "required": false; }; "slotsConfiguration": { "alias": "slotsConfiguration"; "required": false; }; "slotsContents": { "alias": "slotsContents"; "required": false; }; "selects": { "alias": "selects"; "required": false; }; "dataFieldsSearch": { "alias": "dataFieldsSearch"; "required": false; }; "datasetSearch": { "alias": "datasetSearch"; "required": false; }; "icons": { "alias": "icons"; "required": false; }; "datasetsDataFields": { "alias": "datasetsDataFields"; "required": false; }; "datasetIds": { "alias": "datasetIds"; "required": false; }; "selectedDatasetId": { "alias": "selectedDatasetId"; "required": false; }; "datasetPicker": { "alias": "datasetPicker"; "required": false; }; "datasetPickerLabel": { "alias": "datasetPickerLabel"; "required": false; }; "apiUrl": { "alias": "apiUrl"; "required": false; }; "authKey": { "alias": "authKey"; "required": false; }; "authToken": { "alias": "authToken"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; "slotMenuPlacement": { "alias": "slotMenuPlacement"; "required": false; }; "slotMenuMode": { "alias": "slotMenuMode"; "required": false; }; "constraintMode": { "alias": "constraintMode"; "required": false; }; "grows": { "alias": "grows"; "required": false; }; "container": { "alias": "container"; "required": false; }; "datasetfieldlabel": { "alias": "datasetFieldLabel"; "required": false; }; "slotspanel": { "alias": "slotsPanel"; "required": false; }; "slotcontainer": { "alias": "slotContainer"; "required": false; }; "fieldlabel": { "alias": "fieldLabel"; "required": false; }; "itemslotpicker": { "alias": "itemSlotPicker"; "required": false; }; "language": { "alias": "language"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "luzmoDatasetConstraintTriggered": "luzmoDatasetConstraintTriggered"; "luzmoSlotsContentsChanged": "luzmoSlotsContentsChanged"; "luzmoDatasetChanged": "luzmoDatasetChanged"; "luzmoSlotConstraintTriggered": "luzmoSlotConstraintTriggered"; }, never, ["*"], true, never>;
96
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemSlotPickerPanel, "luzmo-item-slot-picker-panel", ["luzmoItemSlotPickerPanel"], { "hasConnectedComparisonFilter": { "alias": "hasConnectedComparisonFilter"; "required": false; }; "itemType": { "alias": "itemType"; "required": false; }; "contentLanguage": { "alias": "contentLanguage"; "required": false; }; "slotsConfiguration": { "alias": "slotsConfiguration"; "required": false; }; "slotsContents": { "alias": "slotsContents"; "required": false; }; "selects": { "alias": "selects"; "required": false; }; "dataFieldsSearch": { "alias": "dataFieldsSearch"; "required": false; }; "datasetSearch": { "alias": "datasetSearch"; "required": false; }; "icons": { "alias": "icons"; "required": false; }; "datasetsDataFields": { "alias": "datasetsDataFields"; "required": false; }; "datasetIds": { "alias": "datasetIds"; "required": false; }; "selectedDatasetId": { "alias": "selectedDatasetId"; "required": false; }; "datasetPicker": { "alias": "datasetPicker"; "required": false; }; "datasetPickerLabel": { "alias": "datasetPickerLabel"; "required": false; }; "apiUrl": { "alias": "apiUrl"; "required": false; }; "authKey": { "alias": "authKey"; "required": false; }; "authToken": { "alias": "authToken"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; "slotMenuPlacement": { "alias": "slotMenuPlacement"; "required": false; }; "slotMenuMode": { "alias": "slotMenuMode"; "required": false; }; "constraintMode": { "alias": "constraintMode"; "required": false; }; "grows": { "alias": "grows"; "required": false; }; "container": { "alias": "container"; "required": false; }; "datasetfieldlabel": { "alias": "datasetFieldLabel"; "required": false; }; "slotspanel": { "alias": "slotsPanel"; "required": false; }; "slotcontainer": { "alias": "slotContainer"; "required": false; }; "fieldlabel": { "alias": "fieldLabel"; "required": false; }; "itemslotpicker": { "alias": "itemSlotPicker"; "required": false; }; "language": { "alias": "language"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "luzmoDatasetConstraintTriggered": "luzmoDatasetConstraintTriggered"; "luzmoSlotsContentsChanged": "luzmoSlotsContentsChanged"; "luzmoDatasetChanged": "luzmoDatasetChanged"; "luzmoSlotConstraintTriggered": "luzmoSlotConstraintTriggered"; }, never, ["*"], true, never>;
97
+ static ngAcceptInputType_hasConnectedComparisonFilter: unknown;
95
98
  static ngAcceptInputType_datasetPicker: unknown;
96
99
  static ngAcceptInputType_grows: unknown;
97
100
  }
@@ -15,6 +15,8 @@ export class LuzmoItemSlotPickerPanel {
15
15
  get nativeElement() {
16
16
  return this.host;
17
17
  }
18
+ /** Whether a comparison filter currently applies to this item. Runtime only; never saved in slot contents. */
19
+ hasConnectedComparisonFilter;
18
20
  /** The type of the item (e.g., 'bar-chart', 'line-chart', 'area-chart') */
19
21
  itemType;
20
22
  /** The language to use for locale-aware formatting and labels */
@@ -35,7 +37,7 @@ export class LuzmoItemSlotPickerPanel {
35
37
  datasetsDataFields;
36
38
  /** Array of dataset IDs to fetch and display. Used as an alternative to datasetsDataFields - when provided (and datasetsDataFields is empty), the component will fetch the dataset metadata automatically. Requires apiUrl, authKey, and authToken to be set. */
37
39
  datasetIds;
38
- /** The currently selected dataset ID. If not provided, defaults to the first available dataset. */
40
+ /** The currently selected dataset ID. If not provided, defaults to the first available dataset, except when the panel fetches the dataset list itself. */
39
41
  selectedDatasetId;
40
42
  /** Whether to show the dataset picker dropdown. */
41
43
  datasetPicker;
@@ -92,6 +94,9 @@ export class LuzmoItemSlotPickerPanel {
92
94
  ngOnChanges(changes) {
93
95
  for (const key of Object.keys(changes)) {
94
96
  switch (key) {
97
+ case 'hasConnectedComparisonFilter':
98
+ this.setHostProperty('hasConnectedComparisonFilter', changes['hasConnectedComparisonFilter'].currentValue);
99
+ break;
95
100
  case 'itemType':
96
101
  this.setHostProperty('itemType', changes['itemType'].currentValue);
97
102
  break;
@@ -212,7 +217,7 @@ export class LuzmoItemSlotPickerPanel {
212
217
  }));
213
218
  }
214
219
  static ɵfac = function LuzmoItemSlotPickerPanel_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoItemSlotPickerPanel)(); };
215
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemSlotPickerPanel, selectors: [["luzmo-item-slot-picker-panel"]], inputs: { itemType: "itemType", contentLanguage: "contentLanguage", slotsConfiguration: "slotsConfiguration", slotsContents: "slotsContents", selects: "selects", dataFieldsSearch: "dataFieldsSearch", datasetSearch: "datasetSearch", icons: "icons", datasetsDataFields: "datasetsDataFields", datasetIds: "datasetIds", selectedDatasetId: "selectedDatasetId", datasetPicker: [2, "datasetPicker", "datasetPicker", booleanAttribute], datasetPickerLabel: "datasetPickerLabel", apiUrl: "apiUrl", authKey: "authKey", authToken: "authToken", placement: "placement", slotMenuPlacement: "slotMenuPlacement", slotMenuMode: "slotMenuMode", constraintMode: "constraintMode", grows: [2, "grows", "grows", booleanAttribute], container: "container", datasetfieldlabel: [0, "datasetFieldLabel", "datasetfieldlabel"], slotspanel: [0, "slotsPanel", "slotspanel"], slotcontainer: [0, "slotContainer", "slotcontainer"], fieldlabel: [0, "fieldLabel", "fieldlabel"], itemslotpicker: [0, "itemSlotPicker", "itemslotpicker"], language: "language", size: "size" }, outputs: { luzmoDatasetConstraintTriggered: "luzmoDatasetConstraintTriggered", luzmoSlotsContentsChanged: "luzmoSlotsContentsChanged", luzmoDatasetChanged: "luzmoDatasetChanged", luzmoSlotConstraintTriggered: "luzmoSlotConstraintTriggered" }, exportAs: ["luzmoItemSlotPickerPanel"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemSlotPickerPanel_Template(rf, ctx) { if (rf & 1) {
220
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemSlotPickerPanel, selectors: [["luzmo-item-slot-picker-panel"]], inputs: { hasConnectedComparisonFilter: [2, "hasConnectedComparisonFilter", "hasConnectedComparisonFilter", booleanAttribute], itemType: "itemType", contentLanguage: "contentLanguage", slotsConfiguration: "slotsConfiguration", slotsContents: "slotsContents", selects: "selects", dataFieldsSearch: "dataFieldsSearch", datasetSearch: "datasetSearch", icons: "icons", datasetsDataFields: "datasetsDataFields", datasetIds: "datasetIds", selectedDatasetId: "selectedDatasetId", datasetPicker: [2, "datasetPicker", "datasetPicker", booleanAttribute], datasetPickerLabel: "datasetPickerLabel", apiUrl: "apiUrl", authKey: "authKey", authToken: "authToken", placement: "placement", slotMenuPlacement: "slotMenuPlacement", slotMenuMode: "slotMenuMode", constraintMode: "constraintMode", grows: [2, "grows", "grows", booleanAttribute], container: "container", datasetfieldlabel: [0, "datasetFieldLabel", "datasetfieldlabel"], slotspanel: [0, "slotsPanel", "slotspanel"], slotcontainer: [0, "slotContainer", "slotcontainer"], fieldlabel: [0, "fieldLabel", "fieldlabel"], itemslotpicker: [0, "itemSlotPicker", "itemslotpicker"], language: "language", size: "size" }, outputs: { luzmoDatasetConstraintTriggered: "luzmoDatasetConstraintTriggered", luzmoSlotsContentsChanged: "luzmoSlotsContentsChanged", luzmoDatasetChanged: "luzmoDatasetChanged", luzmoSlotConstraintTriggered: "luzmoSlotConstraintTriggered" }, exportAs: ["luzmoItemSlotPickerPanel"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemSlotPickerPanel_Template(rf, ctx) { if (rf & 1) {
216
221
  i0.ɵɵprojectionDef();
217
222
  i0.ɵɵprojection(0);
218
223
  } }, encapsulation: 2 });
@@ -226,7 +231,10 @@ export class LuzmoItemSlotPickerPanel {
226
231
  changeDetection: ChangeDetectionStrategy.OnPush,
227
232
  template: '<ng-content />'
228
233
  }]
229
- }], () => [], { itemType: [{
234
+ }], () => [], { hasConnectedComparisonFilter: [{
235
+ type: Input,
236
+ args: [{ alias: 'hasConnectedComparisonFilter', transform: booleanAttribute }]
237
+ }], itemType: [{
230
238
  type: Input,
231
239
  args: [{ alias: 'itemType' }]
232
240
  }], contentLanguage: [{
@@ -3,7 +3,7 @@ import '@luzmo/analytics-components-kit/item-slot-picker';
3
3
  import type { LuzmoItemSlotPicker as LuzmoItemSlotPickerHostElement, SlotContentsChangedEventDetail } from '@luzmo/analytics-components-kit/item-slot-picker';
4
4
  import type { Placement } from '@floating-ui/dom';
5
5
  import type { DatasetsDataFields, SlotContent } from '@luzmo/analytics-components-kit/types';
6
- import type { SlotConfig, SlotName, VizItemType } from '@luzmo/dashboard-contents-types';
6
+ import type { SlotConfig, SlotName, VizItemSlot, VizItemType } from '@luzmo/dashboard-contents-types';
7
7
  import * as i0 from "@angular/core";
8
8
  export type { SlotContentsChangedEventDetail } from '@luzmo/analytics-components-kit/item-slot-picker';
9
9
  export declare class LuzmoItemSlotPicker implements OnChanges {
@@ -14,6 +14,10 @@ export declare class LuzmoItemSlotPicker implements OnChanges {
14
14
  private readonly listenerCleanup;
15
15
  /** The underlying custom element instance. Use to call imperative methods. */
16
16
  get nativeElement(): LuzmoItemSlotPickerHostElement;
17
+ /** Full saved slots for deriving comparison levels and implicit datetime offsets. */
18
+ slotsContents?: VizItemSlot[];
19
+ /** Whether a comparison filter currently applies to this item. Runtime only; never saved in slot contents. */
20
+ hasConnectedComparisonFilter?: boolean;
17
21
  /** The API URL for the databroker */
18
22
  apiUrl?: string;
19
23
  /** The API key to fetch the columns */
@@ -42,6 +46,8 @@ export declare class LuzmoItemSlotPicker implements OnChanges {
42
46
  label?: string;
43
47
  /** Whether the picker allows single or multiple selections. Only relevant if the slot configuration allows multiple data fields. */
44
48
  selects?: 'single' | 'multiple';
49
+ /** Whether the search input is visible: `on`, `off`, or `auto`. */
50
+ search?: 'on' | 'off' | 'auto';
45
51
  /** Where to show icons */
46
52
  icons?: 'none' | 'menu-only' | 'all';
47
53
  /** The placeholder text for the picker is no value selected. */
@@ -60,8 +66,6 @@ export declare class LuzmoItemSlotPicker implements OnChanges {
60
66
  hideClear?: boolean;
61
67
  /** The language for UI labels. Supported values: 'en', 'nl', 'fr', 'de', 'es' */
62
68
  language?: string;
63
- /** Whether the search input is visible: `on`, `off`, or `auto`. */
64
- search?: 'on' | 'off' | 'auto';
65
69
  /** The size of the element */
66
70
  size?: 's' | 'm' | 'l' | 'xl';
67
71
  /** Announces that the slot contents has changed */
@@ -77,7 +81,8 @@ export declare class LuzmoItemSlotPicker implements OnChanges {
77
81
  private setHostProperty;
78
82
  private bindEvents;
79
83
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoItemSlotPicker, never>;
80
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemSlotPicker, "luzmo-item-slot-picker", ["luzmoItemSlotPicker"], { "apiUrl": { "alias": "apiUrl"; "required": false; }; "authKey": { "alias": "authKey"; "required": false; }; "authToken": { "alias": "authToken"; "required": false; }; "itemType": { "alias": "itemType"; "required": false; }; "slotName": { "alias": "slotName"; "required": false; }; "slotConfiguration": { "alias": "slotConfiguration"; "required": false; }; "slotContents": { "alias": "slotContents"; "required": false; }; "contentLanguage": { "alias": "contentLanguage"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "grows": { "alias": "grows"; "required": false; }; "menu": { "alias": "menu"; "required": false; }; "hasLabel": { "alias": "hasLabel"; "required": false; }; "label": { "alias": "label"; "required": false; }; "selects": { "alias": "selects"; "required": false; }; "icons": { "alias": "icons"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "datasetsDataFields": { "alias": "datasetsDataFields"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; "slotMenuPlacement": { "alias": "slotMenuPlacement"; "required": false; }; "slotMenuMode": { "alias": "slotMenuMode"; "required": false; }; "hideConfiguration": { "alias": "hideConfiguration"; "required": false; }; "hideClear": { "alias": "hideClear"; "required": false; }; "language": { "alias": "language"; "required": false; }; "search": { "alias": "search"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "luzmoSlotContentsChanged": "luzmoSlotContentsChanged"; }, never, ["*"], true, never>;
84
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoItemSlotPicker, "luzmo-item-slot-picker", ["luzmoItemSlotPicker"], { "slotsContents": { "alias": "slotsContents"; "required": false; }; "hasConnectedComparisonFilter": { "alias": "hasConnectedComparisonFilter"; "required": false; }; "apiUrl": { "alias": "apiUrl"; "required": false; }; "authKey": { "alias": "authKey"; "required": false; }; "authToken": { "alias": "authToken"; "required": false; }; "itemType": { "alias": "itemType"; "required": false; }; "slotName": { "alias": "slotName"; "required": false; }; "slotConfiguration": { "alias": "slotConfiguration"; "required": false; }; "slotContents": { "alias": "slotContents"; "required": false; }; "contentLanguage": { "alias": "contentLanguage"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "grows": { "alias": "grows"; "required": false; }; "menu": { "alias": "menu"; "required": false; }; "hasLabel": { "alias": "hasLabel"; "required": false; }; "label": { "alias": "label"; "required": false; }; "selects": { "alias": "selects"; "required": false; }; "search": { "alias": "search"; "required": false; }; "icons": { "alias": "icons"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "datasetsDataFields": { "alias": "datasetsDataFields"; "required": false; }; "placement": { "alias": "placement"; "required": false; }; "slotMenuPlacement": { "alias": "slotMenuPlacement"; "required": false; }; "slotMenuMode": { "alias": "slotMenuMode"; "required": false; }; "hideConfiguration": { "alias": "hideConfiguration"; "required": false; }; "hideClear": { "alias": "hideClear"; "required": false; }; "language": { "alias": "language"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "luzmoSlotContentsChanged": "luzmoSlotContentsChanged"; }, never, ["*"], true, never>;
85
+ static ngAcceptInputType_hasConnectedComparisonFilter: unknown;
81
86
  static ngAcceptInputType_disabled: unknown;
82
87
  static ngAcceptInputType_grows: unknown;
83
88
  static ngAcceptInputType_hasLabel: unknown;
@@ -15,6 +15,10 @@ export class LuzmoItemSlotPicker {
15
15
  get nativeElement() {
16
16
  return this.host;
17
17
  }
18
+ /** Full saved slots for deriving comparison levels and implicit datetime offsets. */
19
+ slotsContents;
20
+ /** Whether a comparison filter currently applies to this item. Runtime only; never saved in slot contents. */
21
+ hasConnectedComparisonFilter;
18
22
  /** The API URL for the databroker */
19
23
  apiUrl;
20
24
  /** The API key to fetch the columns */
@@ -43,6 +47,8 @@ export class LuzmoItemSlotPicker {
43
47
  label;
44
48
  /** Whether the picker allows single or multiple selections. Only relevant if the slot configuration allows multiple data fields. */
45
49
  selects;
50
+ /** Whether the search input is visible: `on`, `off`, or `auto`. */
51
+ search;
46
52
  /** Where to show icons */
47
53
  icons;
48
54
  /** The placeholder text for the picker is no value selected. */
@@ -61,8 +67,6 @@ export class LuzmoItemSlotPicker {
61
67
  hideClear;
62
68
  /** The language for UI labels. Supported values: 'en', 'nl', 'fr', 'de', 'es' */
63
69
  language;
64
- /** Whether the search input is visible: `on`, `off`, or `auto`. */
65
- search;
66
70
  /** The size of the element */
67
71
  size;
68
72
  /** Announces that the slot contents has changed */
@@ -78,6 +82,12 @@ export class LuzmoItemSlotPicker {
78
82
  ngOnChanges(changes) {
79
83
  for (const key of Object.keys(changes)) {
80
84
  switch (key) {
85
+ case 'slotsContents':
86
+ this.setHostProperty('slotsContents', changes['slotsContents'].currentValue);
87
+ break;
88
+ case 'hasConnectedComparisonFilter':
89
+ this.setHostProperty('hasConnectedComparisonFilter', changes['hasConnectedComparisonFilter'].currentValue);
90
+ break;
81
91
  case 'apiUrl':
82
92
  this.setHostProperty('apiUrl', changes['apiUrl'].currentValue);
83
93
  break;
@@ -120,6 +130,9 @@ export class LuzmoItemSlotPicker {
120
130
  case 'selects':
121
131
  this.setHostProperty('selects', changes['selects'].currentValue);
122
132
  break;
133
+ case 'search':
134
+ this.setHostProperty('search', changes['search'].currentValue);
135
+ break;
123
136
  case 'icons':
124
137
  this.setHostProperty('icons', changes['icons'].currentValue);
125
138
  break;
@@ -147,9 +160,6 @@ export class LuzmoItemSlotPicker {
147
160
  case 'language':
148
161
  this.setHostProperty('language', changes['language'].currentValue);
149
162
  break;
150
- case 'search':
151
- this.setHostProperty('search', changes['search'].currentValue);
152
- break;
153
163
  case 'size':
154
164
  this.setHostProperty('size', changes['size'].currentValue);
155
165
  break;
@@ -174,7 +184,7 @@ export class LuzmoItemSlotPicker {
174
184
  }));
175
185
  }
176
186
  static ɵfac = function LuzmoItemSlotPicker_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoItemSlotPicker)(); };
177
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemSlotPicker, selectors: [["luzmo-item-slot-picker"]], inputs: { apiUrl: "apiUrl", authKey: "authKey", authToken: "authToken", itemType: "itemType", slotName: "slotName", slotConfiguration: "slotConfiguration", slotContents: "slotContents", contentLanguage: "contentLanguage", disabled: [2, "disabled", "disabled", booleanAttribute], grows: [2, "grows", "grows", booleanAttribute], menu: "menu", hasLabel: [2, "hasLabel", "hasLabel", booleanAttribute], label: "label", selects: "selects", icons: "icons", placeholder: "placeholder", datasetsDataFields: "datasetsDataFields", placement: "placement", slotMenuPlacement: "slotMenuPlacement", slotMenuMode: "slotMenuMode", hideConfiguration: [2, "hideConfiguration", "hideConfiguration", booleanAttribute], hideClear: [2, "hideClear", "hideClear", booleanAttribute], language: "language", search: "search", size: "size" }, outputs: { luzmoSlotContentsChanged: "luzmoSlotContentsChanged" }, exportAs: ["luzmoItemSlotPicker"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemSlotPicker_Template(rf, ctx) { if (rf & 1) {
187
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoItemSlotPicker, selectors: [["luzmo-item-slot-picker"]], inputs: { slotsContents: "slotsContents", hasConnectedComparisonFilter: [2, "hasConnectedComparisonFilter", "hasConnectedComparisonFilter", booleanAttribute], apiUrl: "apiUrl", authKey: "authKey", authToken: "authToken", itemType: "itemType", slotName: "slotName", slotConfiguration: "slotConfiguration", slotContents: "slotContents", contentLanguage: "contentLanguage", disabled: [2, "disabled", "disabled", booleanAttribute], grows: [2, "grows", "grows", booleanAttribute], menu: "menu", hasLabel: [2, "hasLabel", "hasLabel", booleanAttribute], label: "label", selects: "selects", search: "search", icons: "icons", placeholder: "placeholder", datasetsDataFields: "datasetsDataFields", placement: "placement", slotMenuPlacement: "slotMenuPlacement", slotMenuMode: "slotMenuMode", hideConfiguration: [2, "hideConfiguration", "hideConfiguration", booleanAttribute], hideClear: [2, "hideClear", "hideClear", booleanAttribute], language: "language", size: "size" }, outputs: { luzmoSlotContentsChanged: "luzmoSlotContentsChanged" }, exportAs: ["luzmoItemSlotPicker"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoItemSlotPicker_Template(rf, ctx) { if (rf & 1) {
178
188
  i0.ɵɵprojectionDef();
179
189
  i0.ɵɵprojection(0);
180
190
  } }, encapsulation: 2 });
@@ -188,7 +198,13 @@ export class LuzmoItemSlotPicker {
188
198
  changeDetection: ChangeDetectionStrategy.OnPush,
189
199
  template: '<ng-content />'
190
200
  }]
191
- }], () => [], { apiUrl: [{
201
+ }], () => [], { slotsContents: [{
202
+ type: Input,
203
+ args: [{ alias: 'slotsContents' }]
204
+ }], hasConnectedComparisonFilter: [{
205
+ type: Input,
206
+ args: [{ alias: 'hasConnectedComparisonFilter', transform: booleanAttribute }]
207
+ }], apiUrl: [{
192
208
  type: Input,
193
209
  args: [{ alias: 'apiUrl' }]
194
210
  }], authKey: [{
@@ -230,6 +246,9 @@ export class LuzmoItemSlotPicker {
230
246
  }], selects: [{
231
247
  type: Input,
232
248
  args: [{ alias: 'selects' }]
249
+ }], search: [{
250
+ type: Input,
251
+ args: [{ alias: 'search' }]
233
252
  }], icons: [{
234
253
  type: Input,
235
254
  args: [{ alias: 'icons' }]
@@ -257,9 +276,6 @@ export class LuzmoItemSlotPicker {
257
276
  }], language: [{
258
277
  type: Input,
259
278
  args: [{ alias: 'language' }]
260
- }], search: [{
261
- type: Input,
262
- args: [{ alias: 'search' }]
263
279
  }], size: [{
264
280
  type: Input,
265
281
  args: [{ alias: 'size' }]
@@ -5,7 +5,7 @@ import type { DatasetDataFields } from '@luzmo/analytics-components-kit/data-fie
5
5
  import type { LuzmoDisplaySettings } from '@luzmo/analytics-components-kit/display-settings';
6
6
  import type { LuzmoSlotMenuList } from '@luzmo/analytics-components-kit/slot-menu-list';
7
7
  import type { SlotContent } from '@luzmo/analytics-components-kit/types';
8
- import type { SlotName, VizItemType } from '@luzmo/dashboard-contents-types';
8
+ import type { SlotName, VizItemSlot, VizItemType } from '@luzmo/dashboard-contents-types';
9
9
  import * as i0 from "@angular/core";
10
10
  export type { InfoVisibilityChangedEventDetail, MeasureColumnsItem, SlotContentChangedEventDetail, SlotContentsChangedEventDetail, SlotListChangedEventDetail, SlotMenuActiveEventDetail, SlotMenuHighlightEventDetail } from '@luzmo/analytics-components-kit/slot-menu';
11
11
  export declare class LuzmoSlotMenu implements OnChanges {
@@ -16,6 +16,10 @@ export declare class LuzmoSlotMenu implements OnChanges {
16
16
  private readonly listenerCleanup;
17
17
  /** The underlying custom element instance. Use to call imperative methods. */
18
18
  get nativeElement(): LuzmoSlotMenuHostElement;
19
+ /** Full saved slots for deriving comparison levels and implicit datetime offsets. */
20
+ slotsContents?: VizItemSlot[];
21
+ /** Whether a comparison filter currently applies to this item. Runtime only; never saved in slot contents. */
22
+ hasConnectedComparisonFilter?: boolean;
19
23
  /** The language of the settings interface */
20
24
  language?: string;
21
25
  /** The language to use for locale-aware formatting and labels */
@@ -92,7 +96,8 @@ export declare class LuzmoSlotMenu implements OnChanges {
92
96
  private bindEvents;
93
97
  close(): void;
94
98
  static ɵfac: i0.ɵɵFactoryDeclaration<LuzmoSlotMenu, never>;
95
- static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoSlotMenu, "luzmo-slot-menu", ["luzmoSlotMenu"], { "language": { "alias": "language"; "required": false; }; "contentLanguage": { "alias": "contentLanguage"; "required": false; }; "slotType": { "alias": "slotType"; "required": false; }; "slotName": { "alias": "slotName"; "required": false; }; "itemType": { "alias": "itemType"; "required": false; }; "noDrag": { "alias": "noDrag"; "required": false; }; "noClose": { "alias": "noClose"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "noTopMenuLabel": { "alias": "noTopMenuLabel"; "required": false; }; "noRemove": { "alias": "noRemove"; "required": false; }; "dragBoundary": { "alias": "dragBoundary"; "required": false; }; "areGrandTotalsEnabled": { "alias": "areGrandTotalsEnabled"; "required": false; }; "areDatetimeOptionsEnabled": { "alias": "areDatetimeOptionsEnabled"; "required": false; }; "isBinningDisabled": { "alias": "isBinningDisabled"; "required": false; }; "isAggregationDisabled": { "alias": "isAggregationDisabled"; "required": false; }; "isCumulativeSumEnabled": { "alias": "isCumulativeSumEnabled"; "required": false; }; "slotContents": { "alias": "slotContents"; "required": false; }; "measureColumns": { "alias": "measureColumns"; "required": false; }; "slotIndex": { "alias": "slotIndex"; "required": false; }; "displaySettingsElement": { "alias": "displaySettingsElement"; "required": false; }; "slotMenuListElement": { "alias": "slotMenuListElement"; "required": false; }; "apiUrl": { "alias": "apiUrl"; "required": false; }; "authKey": { "alias": "authKey"; "required": false; }; "authToken": { "alias": "authToken"; "required": false; }; "datasetsDataFields": { "alias": "datasetsDataFields"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "luzmoSlotContentsChanged": "luzmoSlotContentsChanged"; "luzmoClose": "luzmoClose"; "luzmoSlotMenuActive": "luzmoSlotMenuActive"; "luzmoSlotMenuHighlight": "luzmoSlotMenuHighlight"; "luzmoSlotMenuInactive": "luzmoSlotMenuInactive"; "luzmoInfoVisibilityChanged": "luzmoInfoVisibilityChanged"; }, never, ["*"], true, never>;
99
+ static ɵcmp: i0.ɵɵComponentDeclaration<LuzmoSlotMenu, "luzmo-slot-menu", ["luzmoSlotMenu"], { "slotsContents": { "alias": "slotsContents"; "required": false; }; "hasConnectedComparisonFilter": { "alias": "hasConnectedComparisonFilter"; "required": false; }; "language": { "alias": "language"; "required": false; }; "contentLanguage": { "alias": "contentLanguage"; "required": false; }; "slotType": { "alias": "slotType"; "required": false; }; "slotName": { "alias": "slotName"; "required": false; }; "itemType": { "alias": "itemType"; "required": false; }; "noDrag": { "alias": "noDrag"; "required": false; }; "noClose": { "alias": "noClose"; "required": false; }; "variant": { "alias": "variant"; "required": false; }; "noTopMenuLabel": { "alias": "noTopMenuLabel"; "required": false; }; "noRemove": { "alias": "noRemove"; "required": false; }; "dragBoundary": { "alias": "dragBoundary"; "required": false; }; "areGrandTotalsEnabled": { "alias": "areGrandTotalsEnabled"; "required": false; }; "areDatetimeOptionsEnabled": { "alias": "areDatetimeOptionsEnabled"; "required": false; }; "isBinningDisabled": { "alias": "isBinningDisabled"; "required": false; }; "isAggregationDisabled": { "alias": "isAggregationDisabled"; "required": false; }; "isCumulativeSumEnabled": { "alias": "isCumulativeSumEnabled"; "required": false; }; "slotContents": { "alias": "slotContents"; "required": false; }; "measureColumns": { "alias": "measureColumns"; "required": false; }; "slotIndex": { "alias": "slotIndex"; "required": false; }; "displaySettingsElement": { "alias": "displaySettingsElement"; "required": false; }; "slotMenuListElement": { "alias": "slotMenuListElement"; "required": false; }; "apiUrl": { "alias": "apiUrl"; "required": false; }; "authKey": { "alias": "authKey"; "required": false; }; "authToken": { "alias": "authToken"; "required": false; }; "datasetsDataFields": { "alias": "datasetsDataFields"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, { "luzmoSlotContentsChanged": "luzmoSlotContentsChanged"; "luzmoClose": "luzmoClose"; "luzmoSlotMenuActive": "luzmoSlotMenuActive"; "luzmoSlotMenuHighlight": "luzmoSlotMenuHighlight"; "luzmoSlotMenuInactive": "luzmoSlotMenuInactive"; "luzmoInfoVisibilityChanged": "luzmoInfoVisibilityChanged"; }, never, ["*"], true, never>;
100
+ static ngAcceptInputType_hasConnectedComparisonFilter: unknown;
96
101
  static ngAcceptInputType_noDrag: unknown;
97
102
  static ngAcceptInputType_noClose: unknown;
98
103
  static ngAcceptInputType_noTopMenuLabel: unknown;
@@ -15,6 +15,10 @@ export class LuzmoSlotMenu {
15
15
  get nativeElement() {
16
16
  return this.host;
17
17
  }
18
+ /** Full saved slots for deriving comparison levels and implicit datetime offsets. */
19
+ slotsContents;
20
+ /** Whether a comparison filter currently applies to this item. Runtime only; never saved in slot contents. */
21
+ hasConnectedComparisonFilter;
18
22
  /** The language of the settings interface */
19
23
  language;
20
24
  /** The language to use for locale-aware formatting and labels */
@@ -90,6 +94,12 @@ export class LuzmoSlotMenu {
90
94
  ngOnChanges(changes) {
91
95
  for (const key of Object.keys(changes)) {
92
96
  switch (key) {
97
+ case 'slotsContents':
98
+ this.setHostProperty('slotsContents', changes['slotsContents'].currentValue);
99
+ break;
100
+ case 'hasConnectedComparisonFilter':
101
+ this.setHostProperty('hasConnectedComparisonFilter', changes['hasConnectedComparisonFilter'].currentValue);
102
+ break;
93
103
  case 'language':
94
104
  this.setHostProperty('language', changes['language'].currentValue);
95
105
  break;
@@ -212,7 +222,7 @@ export class LuzmoSlotMenu {
212
222
  return this.host.close();
213
223
  }
214
224
  static ɵfac = function LuzmoSlotMenu_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || LuzmoSlotMenu)(); };
215
- static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSlotMenu, selectors: [["luzmo-slot-menu"]], inputs: { language: "language", contentLanguage: "contentLanguage", slotType: "slotType", slotName: "slotName", itemType: "itemType", noDrag: [2, "noDrag", "noDrag", booleanAttribute], noClose: [2, "noClose", "noClose", booleanAttribute], variant: "variant", noTopMenuLabel: [2, "noTopMenuLabel", "noTopMenuLabel", booleanAttribute], noRemove: [2, "noRemove", "noRemove", booleanAttribute], dragBoundary: "dragBoundary", areGrandTotalsEnabled: [2, "areGrandTotalsEnabled", "areGrandTotalsEnabled", booleanAttribute], areDatetimeOptionsEnabled: [2, "areDatetimeOptionsEnabled", "areDatetimeOptionsEnabled", booleanAttribute], isBinningDisabled: [2, "isBinningDisabled", "isBinningDisabled", booleanAttribute], isAggregationDisabled: [2, "isAggregationDisabled", "isAggregationDisabled", booleanAttribute], isCumulativeSumEnabled: [2, "isCumulativeSumEnabled", "isCumulativeSumEnabled", booleanAttribute], slotContents: "slotContents", measureColumns: "measureColumns", slotIndex: "slotIndex", displaySettingsElement: "displaySettingsElement", slotMenuListElement: "slotMenuListElement", apiUrl: "apiUrl", authKey: "authKey", authToken: "authToken", datasetsDataFields: "datasetsDataFields", size: "size" }, outputs: { luzmoSlotContentsChanged: "luzmoSlotContentsChanged", luzmoClose: "luzmoClose", luzmoSlotMenuActive: "luzmoSlotMenuActive", luzmoSlotMenuHighlight: "luzmoSlotMenuHighlight", luzmoSlotMenuInactive: "luzmoSlotMenuInactive", luzmoInfoVisibilityChanged: "luzmoInfoVisibilityChanged" }, exportAs: ["luzmoSlotMenu"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoSlotMenu_Template(rf, ctx) { if (rf & 1) {
225
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: LuzmoSlotMenu, selectors: [["luzmo-slot-menu"]], inputs: { slotsContents: "slotsContents", hasConnectedComparisonFilter: [2, "hasConnectedComparisonFilter", "hasConnectedComparisonFilter", booleanAttribute], language: "language", contentLanguage: "contentLanguage", slotType: "slotType", slotName: "slotName", itemType: "itemType", noDrag: [2, "noDrag", "noDrag", booleanAttribute], noClose: [2, "noClose", "noClose", booleanAttribute], variant: "variant", noTopMenuLabel: [2, "noTopMenuLabel", "noTopMenuLabel", booleanAttribute], noRemove: [2, "noRemove", "noRemove", booleanAttribute], dragBoundary: "dragBoundary", areGrandTotalsEnabled: [2, "areGrandTotalsEnabled", "areGrandTotalsEnabled", booleanAttribute], areDatetimeOptionsEnabled: [2, "areDatetimeOptionsEnabled", "areDatetimeOptionsEnabled", booleanAttribute], isBinningDisabled: [2, "isBinningDisabled", "isBinningDisabled", booleanAttribute], isAggregationDisabled: [2, "isAggregationDisabled", "isAggregationDisabled", booleanAttribute], isCumulativeSumEnabled: [2, "isCumulativeSumEnabled", "isCumulativeSumEnabled", booleanAttribute], slotContents: "slotContents", measureColumns: "measureColumns", slotIndex: "slotIndex", displaySettingsElement: "displaySettingsElement", slotMenuListElement: "slotMenuListElement", apiUrl: "apiUrl", authKey: "authKey", authToken: "authToken", datasetsDataFields: "datasetsDataFields", size: "size" }, outputs: { luzmoSlotContentsChanged: "luzmoSlotContentsChanged", luzmoClose: "luzmoClose", luzmoSlotMenuActive: "luzmoSlotMenuActive", luzmoSlotMenuHighlight: "luzmoSlotMenuHighlight", luzmoSlotMenuInactive: "luzmoSlotMenuInactive", luzmoInfoVisibilityChanged: "luzmoInfoVisibilityChanged" }, exportAs: ["luzmoSlotMenu"], features: [i0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LuzmoSlotMenu_Template(rf, ctx) { if (rf & 1) {
216
226
  i0.ɵɵprojectionDef();
217
227
  i0.ɵɵprojection(0);
218
228
  } }, encapsulation: 2 });
@@ -226,7 +236,13 @@ export class LuzmoSlotMenu {
226
236
  changeDetection: ChangeDetectionStrategy.OnPush,
227
237
  template: '<ng-content />'
228
238
  }]
229
- }], () => [], { language: [{
239
+ }], () => [], { slotsContents: [{
240
+ type: Input,
241
+ args: [{ alias: 'slotsContents' }]
242
+ }], hasConnectedComparisonFilter: [{
243
+ type: Input,
244
+ args: [{ alias: 'hasConnectedComparisonFilter', transform: booleanAttribute }]
245
+ }], language: [{
230
246
  type: Input,
231
247
  args: [{ alias: 'language' }]
232
248
  }], contentLanguage: [{
@@ -29,9 +29,9 @@
29
29
  "peerDependencies": {
30
30
  "@angular/core": "^17.3.0 || ^18.0.0 || ^19.0.0 || ^20.0.0 || ^21.0.0 || ^22.0.0",
31
31
  "@angular/forms": "^17.3.0 || ^18.0.0 || ^19.0.0 || ^20.0.0 || ^21.0.0 || ^22.0.0",
32
- "@luzmo/analytics-components-kit": "1.3.0"
32
+ "@luzmo/analytics-components-kit": "2.0.0"
33
33
  },
34
- "version": "1.3.0",
34
+ "version": "2.0.0",
35
35
  "repository": {
36
36
  "type": "git",
37
37
  "url": "git+https://github.com/cumulio-internal/analytics-components-kit.git"
@@ -13,3 +13,5 @@ export type FilterExpressionConfiguration = {
13
13
  export type FilterExpressionKey = '? = ?' | '? != ?' | '? in ?' | '? not in ?' | '? like ?' | '? not like ?' | '? starts with ?' | '? not starts with ?' | '? ends with ?' | '? not ends with ?' | '? < ?' | '? <= ?' | '? > ?' | '? >= ?' | '? between ?' | 'last_now' | 'last_available' | 'last_completed' | 'next_now' | 'more_than_ago' | 'or_more_ago' | 'next_full' | 'to_date' | '? is null' | '? is not null';
14
14
  export declare const filterExpressionsConfigurations: () => FilterExpressionConfiguration[];
15
15
  export declare const getValidExpressions: (type?: ColumnType, subtype?: ColumnSubtype, isFormula?: boolean) => FilterExpressionConfiguration[];
16
+ export declare const toDisplayedQuantity: (expression: string | undefined, quantity: number) => number;
17
+ export declare const toStoredQuantity: (expression: string | undefined, quantity: number) => number;
@@ -15,7 +15,8 @@ export declare class SlotStore {
15
15
  id: string;
16
16
  columns: any[];
17
17
  }[]>;
18
- private readonly _popEnabledChartTypes;
18
+ readonly hasConnectedComparisonFilter: import("signal-polyfill").Signal.State<boolean>;
19
+ readonly itemType: import("signal-polyfill").Signal.State<VizItemType | undefined>;
19
20
  private readonly _popPeriodsWithoutDatetimeColumnItemTypes;
20
21
  private readonly _popWithoutPastValueItemTypes;
21
22
  readonly activeSlotContents: import("signal-polyfill").Signal.Computed<SlotContent>;
@@ -23,14 +24,8 @@ export declare class SlotStore {
23
24
  * Index of the content currently selected / active in a slot menu.
24
25
  */
25
26
  readonly activeIndex: import("signal-polyfill").Signal.State<number>;
26
- private isArrayColumnType;
27
- setPeriodOverPeriodCondition(itemType: VizItemType, currentSlotContents: SlotContent): void;
27
+ setPeriodOverPeriodCondition(itemType: VizItemType, _currentSlotContents?: SlotContent): void;
28
28
  private getUiConditionToApply;
29
- private oldConditionalLogic;
30
- /**
31
- * Detects if there's a datetime column on Category or X-axis slots
32
- */
33
- private hasDatetimeColumnOnCategoryOrXAxis;
34
29
  /** Replace the full list (e.g. after dropping or re-ordering). */
35
30
  setContents(contents: SlotContent[], slotName?: SlotName): void;
36
31
  setFullContents(fullSlotsContents: VizItemSlot[]): void;
@@ -3,6 +3,5 @@ export declare const PeriodOverPeriodCondition: {
3
3
  readonly NoDatetimeColumnAndNoComparisonFilters: "noDatetimeColumnAndNoComparisonFilters";
4
4
  readonly NoDatetimeColumnButComparisonFilters: "noDatetimeColumnButComparisonFilters";
5
5
  readonly HasDatetimeColumnAndComparisonFilters: "hasDatetimeColumnAndComparisonFilters";
6
- readonly OldImplementation: "oldImplementation";
7
6
  };
8
7
  export type PeriodOverPeriodCondition = (typeof PeriodOverPeriodCondition)[keyof typeof PeriodOverPeriodCondition];
@@ -0,0 +1,75 @@
1
+ import { type PeriodOverPeriod, type VizItemSlot, type VizItemType } from '@luzmo/dashboard-contents-types';
2
+ import { PeriodOverPeriodCondition } from './period-over-period-condition.const';
3
+ import type { SlotContent } from '../../types/slot.types';
4
+ /** Resolve saved category axes and normalize pivot field identifiers for the shared level helper. */
5
+ export declare function getPeriodOverPeriodContext(slots: readonly VizItemSlot[], itemType?: VizItemType): {
6
+ dimensions: {
7
+ set: string | undefined;
8
+ column: string | undefined;
9
+ field?: string;
10
+ type?: import("@luzmo/dashboard-contents-types").ColumnType | import("@luzmo/dashboard-contents-types").FormulaType;
11
+ subtype?: import("@luzmo/dashboard-contents-types").ColumnSubtype | import("@luzmo/dashboard-contents-types").FormulaSubtype | null;
12
+ label?: Record<string, string>;
13
+ formula?: string;
14
+ formulaId?: string;
15
+ expression?: string;
16
+ datasetId?: string;
17
+ columnId?: string;
18
+ format?: string;
19
+ currency?: string | null;
20
+ aggregationFunc?: import("@luzmo/dashboard-contents-types").ItemQueryAggregation;
21
+ aggregationWeight?: {
22
+ set: string;
23
+ column: string;
24
+ datasetId?: string;
25
+ columnId?: string;
26
+ columnSubType: import("@luzmo/dashboard-contents-types").ColumnSubtype;
27
+ };
28
+ color?: string | null;
29
+ level?: number | null;
30
+ lowestLevel?: number | null;
31
+ bins?: {
32
+ enabled: boolean;
33
+ number?: number;
34
+ };
35
+ duration?: {
36
+ levels: number[];
37
+ format: "short" | "long" | "time";
38
+ };
39
+ grandTotals?: {
40
+ enabled: boolean;
41
+ };
42
+ include_nonoccurring?: boolean;
43
+ datetimeDisplayMode?: import("@luzmo/dashboard-contents-types").DatetimeDisplayMode;
44
+ weekStart?: "sunday" | "monday";
45
+ weekDayNameFormat?: "long" | "short" | "letter";
46
+ monthNameFormat?: "long" | "short" | "letter";
47
+ cardinality?: number;
48
+ drilldownColumn?: import("@luzmo/dashboard-contents-types").GenericSlotContent;
49
+ drilldownLevel?: number;
50
+ id?: string;
51
+ index?: number;
52
+ multi?: boolean;
53
+ slotName?: string;
54
+ sortableIndex?: number;
55
+ sortableSelected?: boolean;
56
+ sortOrder?: number | string;
57
+ periodOverPeriod?: PeriodOverPeriod;
58
+ }[];
59
+ category: import("@luzmo/dashboard-contents-types").GenericSlotContent | undefined;
60
+ };
61
+ /**
62
+ * Derive comparison eligibility and the editor variant from runtime context. Chart categories
63
+ * retain the runtime restrictions on arrays, weekly levels and non-default datetime displays.
64
+ * KPI and pivot use their explicit offset context instead of a chart category.
65
+ */
66
+ export declare function getPeriodOverPeriodUiType({ slots, itemType, hasConnectedComparisonFilter, hasRelatedDatetimeColumns }: {
67
+ slots: readonly VizItemSlot[];
68
+ itemType?: VizItemType;
69
+ hasConnectedComparisonFilter?: boolean;
70
+ hasRelatedDatetimeColumns?: boolean;
71
+ }): PeriodOverPeriodCondition | null;
72
+ /** Resolve the finest comparison level allowed by saved category, pivot or offset context. */
73
+ export declare function getComparisonMaxLevel(comparison: Pick<PeriodOverPeriod, 'offsetDateColumn'> | undefined, slots: readonly VizItemSlot[], itemType?: VizItemType): number | undefined;
74
+ /** Strip legacy UI flags and offset metadata at a slot-content output boundary. */
75
+ export declare function compactSlotComparison<T extends SlotContent>(content: T, slots: readonly VizItemSlot[], itemType?: VizItemType): T;
@@ -7,7 +7,8 @@ export declare function pageAcrossSources(sources: DashboardSource[], offset: nu
7
7
  /**
8
8
  * Built-in `DashboardActions` on the public API with the given credentials. Rights come from the token: an
9
9
  * embed token's `access.dashboards` grants plus the user's own access rights. `create` is only present for
10
- * an embed token with a designer or owner role or for any other token type. With the `flag_dashboard_variants`
10
+ * an embed token with a designer or owner role, or for any other token type unless the user is an
11
+ * organization viewer (a user with no organization role keeps it). With the `flag_dashboard_variants`
11
12
  * user flag, use-only dashboards and their variants are listed, and `addToVariant` follows the `create` rule.
12
13
  */
13
14
  export declare function createDashboardActions(config: BuiltInDashboardActionsConfig): Promise<DashboardActions>;
@@ -17,4 +17,4 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../add-to-dashboard-CzIuDtAq.cjs");Object.defineProperty(exports,"LuzmoAddToDashboard",{enumerable:!0,get:function(){return e.t}}),exports.createDashboardActions=e.n;
20
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../add-to-dashboard-BC5SObl9.cjs");Object.defineProperty(exports,"LuzmoAddToDashboard",{enumerable:!0,get:function(){return e.t}}),exports.createDashboardActions=e.n;
@@ -17,4 +17,4 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- export { t as LuzmoAddToDashboard, n as createDashboardActions } from "../add-to-dashboard-DGC0_hRB.js";
20
+ export { t as LuzmoAddToDashboard, n as createDashboardActions } from "../add-to-dashboard-B5egTFre.js";