@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.
- package/README.md +18 -5
- package/angular/components/add-to-dashboard.ts +20 -6
- package/angular/components/ai-chat-empty-state.ts +1 -1
- package/angular/components/ai-chat.ts +10 -3
- package/angular/components/data-fields-select.ts +5 -0
- package/angular/components/display-settings-period-over-period.ts +25 -4
- package/angular/components/display-settings.ts +24 -3
- package/angular/components/interactive-viz-item.ts +87 -22
- package/angular/components/item-grid-item-actions-menu.ts +5 -0
- package/angular/components/item-grid.ts +7 -0
- package/angular/components/item-option-color-picker.ts +28 -28
- package/angular/components/item-option-guidelines.ts +22 -1
- package/angular/components/item-option-multi-language-field.ts +7 -7
- package/angular/components/item-option-number-field.ts +14 -14
- package/angular/components/item-option-positions-number-field.ts +14 -14
- package/angular/components/item-option-radio-button-group.ts +7 -7
- package/angular/components/item-option-text-field.ts +7 -7
- package/angular/components/item-slot-drop-panel.ts +7 -0
- package/angular/components/item-slot-drop.ts +7 -0
- package/angular/components/item-slot-picker-panel.ts +8 -1
- package/angular/components/item-slot-picker.ts +22 -8
- package/angular/components/slot-menu.ts +15 -1
- package/angular/esm/components/add-to-dashboard.d.ts +8 -4
- package/angular/esm/components/add-to-dashboard.js +23 -7
- package/angular/esm/components/ai-chat-empty-state.d.ts +1 -1
- package/angular/esm/components/ai-chat.d.ts +6 -4
- package/angular/esm/components/ai-chat.js +10 -2
- package/angular/esm/components/data-fields-select.d.ts +2 -0
- package/angular/esm/components/data-fields-select.js +4 -0
- package/angular/esm/components/display-settings-period-over-period.d.ts +12 -5
- package/angular/esm/components/display-settings-period-over-period.js +29 -5
- package/angular/esm/components/display-settings.d.ts +11 -4
- package/angular/esm/components/display-settings.js +28 -4
- package/angular/esm/components/interactive-viz-item.d.ts +30 -9
- package/angular/esm/components/interactive-viz-item.js +98 -27
- package/angular/esm/components/item-grid-item-actions-menu.d.ts +2 -0
- package/angular/esm/components/item-grid-item-actions-menu.js +4 -0
- package/angular/esm/components/item-grid.d.ts +3 -1
- package/angular/esm/components/item-grid.js +9 -1
- package/angular/esm/components/item-option-color-picker.d.ts +10 -10
- package/angular/esm/components/item-option-color-picker.js +34 -34
- package/angular/esm/components/item-option-guidelines.d.ts +8 -2
- package/angular/esm/components/item-option-guidelines.js +26 -2
- package/angular/esm/components/item-option-multi-language-field.d.ts +3 -3
- package/angular/esm/components/item-option-multi-language-field.js +10 -10
- package/angular/esm/components/item-option-number-field.d.ts +5 -5
- package/angular/esm/components/item-option-number-field.js +18 -18
- package/angular/esm/components/item-option-positions-number-field.d.ts +5 -5
- package/angular/esm/components/item-option-positions-number-field.js +18 -18
- package/angular/esm/components/item-option-radio-button-group.d.ts +3 -3
- package/angular/esm/components/item-option-radio-button-group.js +10 -10
- package/angular/esm/components/item-option-text-field.d.ts +3 -3
- package/angular/esm/components/item-option-text-field.js +10 -10
- package/angular/esm/components/item-slot-drop-panel.d.ts +4 -1
- package/angular/esm/components/item-slot-drop-panel.js +10 -2
- package/angular/esm/components/item-slot-drop.d.ts +4 -1
- package/angular/esm/components/item-slot-drop.js +10 -2
- package/angular/esm/components/item-slot-picker-panel.d.ts +5 -2
- package/angular/esm/components/item-slot-picker-panel.js +11 -3
- package/angular/esm/components/item-slot-picker.d.ts +9 -4
- package/angular/esm/components/item-slot-picker.js +26 -10
- package/angular/esm/components/slot-menu.d.ts +7 -2
- package/angular/esm/components/slot-menu.js +18 -2
- package/angular/package.json +2 -2
- package/angular/utils/filters/expressions.d.ts +2 -0
- package/angular/utils/slot-state/slot-store.d.ts +3 -8
- package/angular/utils/time/period-over-period-condition.const.d.ts +0 -1
- package/angular/utils/time/period-over-period-context.d.ts +75 -0
- package/angular/utils/time/tests/period-over-period-context.test.d.ts +1 -0
- package/components/add-to-dashboard/dashboard-actions.d.ts +2 -1
- package/components/add-to-dashboard/index.cjs +1 -1
- package/components/add-to-dashboard/index.js +1 -1
- package/components/{add-to-dashboard-DGC0_hRB.js → add-to-dashboard-B5egTFre.js} +127 -122
- package/components/{add-to-dashboard-CzIuDtAq.cjs → add-to-dashboard-BC5SObl9.cjs} +1 -1
- package/components/advanced-options.i18n-CyfRP6Jc.js +43 -0
- package/components/advanced-options.i18n-DPTCLyPj.cjs +20 -0
- package/components/ai-chat/ai-chat-events.d.ts +6 -2
- package/components/ai-chat/ai-chat-request.d.ts +1 -1
- package/components/ai-chat/ai-chat.d.ts +9 -2
- package/components/ai-chat/ai-prompt-types.d.ts +19 -1
- package/components/ai-chat/helpers/interaction-assets.d.ts +9 -0
- package/components/ai-chat/helpers/question-template.d.ts +13 -0
- package/components/ai-chat/index.cjs +1 -1
- package/components/ai-chat/index.d.ts +2 -1
- package/components/ai-chat/index.js +3 -3
- package/components/ai-chat/session/ai-chat-session-types.d.ts +6 -1
- package/components/ai-chat/session/ai-chat-session.d.ts +14 -3
- package/components/{ai-chat-CL894viH.js → ai-chat-CZz60W04.js} +1152 -837
- package/components/ai-chat-CkN95EAz.cjs +414 -0
- package/components/ai-interaction-textarea/index.cjs +1 -1
- package/components/ai-interaction-textarea/index.js +1 -1
- package/components/{ai-interaction-textarea-BmvVVCmL.cjs → ai-interaction-textarea-NGtzhkEU.cjs} +1 -1
- package/components/{ai-interaction-textarea-CnQ2FBc7.js → ai-interaction-textarea-zpSYvzWC.js} +4 -4
- package/components/{area-chart-options.config-D99tvt_H.cjs → area-chart-options.config-DkaWRgGR.cjs} +1 -1
- package/components/{area-chart-options.config-Dnw8v2CA.js → area-chart-options.config-E5T5GaAt.js} +3 -3
- package/components/{area-chart-positioning.config-ygE3-JQW.js → area-chart-positioning.config-CF5TQdQM.js} +1 -1
- package/components/{area-chart-positioning.config-BwEs73dl.cjs → area-chart-positioning.config-D3v03RF2.cjs} +1 -1
- package/components/{bar-chart-options.config-DHO8grQN.js → bar-chart-options.config-BmuNCcVu.js} +3 -3
- package/components/{bar-chart-options.config-BQ-PbucR.cjs → bar-chart-options.config-DujzIJ03.cjs} +1 -1
- package/components/{bar-chart-positioning.config-CPdIIPp0.cjs → bar-chart-positioning.config-B2cBwfjg.cjs} +1 -1
- package/components/{bar-chart-positioning.config-GjqSe7CO.js → bar-chart-positioning.config-DD3FsbpL.js} +1 -1
- package/components/{base-rAte-QzM.js → base-BqwRKT4V.js} +1 -1
- package/components/{base-CGDNY_7v.cjs → base-D-bJhYbS.cjs} +1 -1
- package/components/{box-plot-options.config-BgiiwSrU.js → box-plot-options.config-BldiKc1W.js} +1 -1
- package/components/{box-plot-options.config-BcGisybi.cjs → box-plot-options.config-CTHQiE0y.cjs} +1 -1
- package/components/{box-plot-positioning.config-DDUgau2U.js → box-plot-positioning.config-D7dak0lQ.js} +1 -1
- package/components/{box-plot-positioning.config-mSIgw923.cjs → box-plot-positioning.config-DyDjp1GB.cjs} +1 -1
- package/components/{bubble-chart-options.config-DMk8Yjfk.cjs → bubble-chart-options.config-CIQV2-nD.cjs} +1 -1
- package/components/{bubble-chart-options.config-UM9w5tBs.js → bubble-chart-options.config-DfUueHwL.js} +1 -1
- package/components/{bubble-chart-positioning.config-CuOxvXYf.cjs → bubble-chart-positioning.config-CBVdzO-2.cjs} +1 -1
- package/components/{bubble-chart-positioning.config-C3UubNLh.js → bubble-chart-positioning.config-DjYnqcoE.js} +1 -1
- package/components/{bullet-chart-positioning.config-DB1Fmx1d.cjs → bullet-chart-positioning.config-B1tyFrKD.cjs} +1 -1
- package/components/{bullet-chart-positioning.config-BuFhsRMP.js → bullet-chart-positioning.config-C1Fy_8N4.js} +1 -1
- package/components/chart-helpers-BHxQbLBw.cjs +20 -0
- package/components/{chart-helpers-Cbl3sRra.js → chart-helpers-BKeMLhov.js} +51 -38
- package/components/{choropleth-map-options.config-Blu0Z2tR.js → choropleth-map-options.config-BPwJyWoW.js} +1 -1
- package/components/{choropleth-map-options.config-DwFJ00CS.cjs → choropleth-map-options.config-mBZ3__hO.cjs} +1 -1
- package/components/{choropleth-map-positioning.config-6PsCyhsn.js → choropleth-map-positioning.config-BJ4TNZiP.js} +1 -1
- package/components/{choropleth-map-positioning.config-fc5IcNoB.cjs → choropleth-map-positioning.config-DaN1GsN7.cjs} +1 -1
- package/components/{circle-pack-chart-options.config-DQs-uitJ.js → circle-pack-chart-options.config-BbTBvJRt.js} +1 -1
- package/components/{circle-pack-chart-options.config-DMNMYWZX.cjs → circle-pack-chart-options.config-Cz9c2Oxt.cjs} +1 -1
- package/components/{circle-pack-chart-positioning.config-DvQfzJ_Z.cjs → circle-pack-chart-positioning.config-C0iRGjcn.cjs} +1 -1
- package/components/{circle-pack-chart-positioning.config-DRHNE10H.js → circle-pack-chart-positioning.config-sm_d4gNL.js} +1 -1
- package/components/{circular-gauge-positioning.config-CGOX-Vyn.js → circular-gauge-positioning.config-CP_Ihfyd.js} +1 -1
- package/components/{circular-gauge-positioning.config-OX1-mPls.cjs → circular-gauge-positioning.config-GgkU8ivx.cjs} +1 -1
- package/components/{column-chart-options.config-BYDJTVx6.js → column-chart-options.config-BoIqFqBu.js} +3 -3
- package/components/{column-chart-options.config-CyD8V7j4.cjs → column-chart-options.config-fsV6tk3-.cjs} +1 -1
- package/components/{column-chart-positioning.config-BVYa1A42.js → column-chart-positioning.config-B4OsEyKU.js} +1 -1
- package/components/{column-chart-positioning.config-NbQbSa8P.cjs → column-chart-positioning.config-oub804lP.cjs} +1 -1
- package/components/{combination-chart-options.config-Cg3ZEKMe.cjs → combination-chart-options.config-C_fwwZvd.cjs} +1 -1
- package/components/{combination-chart-options.config-B3zsSUFx.js → combination-chart-options.config-Oks0enDz.js} +3 -3
- package/components/{combination-chart-positioning.config-B7DtfzCV.cjs → combination-chart-positioning.config-BeEC_NMJ.cjs} +1 -1
- package/components/{combination-chart-positioning.config-yHAgveni.js → combination-chart-positioning.config-BxNKTTby.js} +1 -1
- package/components/{conditional-number-positioning.config-BZS99jTT.cjs → conditional-number-positioning.config-B7F96ylg.cjs} +1 -1
- package/components/{conditional-number-positioning.config-DhixJEpv.js → conditional-number-positioning.config-xMGIw6c7.js} +1 -1
- package/components/data-field/index.cjs +1 -1
- package/components/data-field/index.js +1 -1
- package/components/{data-field-BORlpZZk.cjs → data-field-BxIuPFX_.cjs} +1 -1
- package/components/{data-field-B9466d0w.js → data-field-D03w2T6D.js} +3 -3
- package/components/data-field-level/index.cjs +1 -1
- package/components/data-field-level/index.js +1 -1
- package/components/{data-field-level-DOEYwcvM.cjs → data-field-level-BdWZsIny.cjs} +1 -1
- package/components/{data-field-level-GrX6yhPV.js → data-field-level-C-C9RCNf.js} +1 -1
- package/components/data-field-panel/index.cjs +1 -1
- package/components/data-field-panel/index.js +1 -1
- package/components/{data-field-panel-BedJ9V2r.js → data-field-panel-DLe4FvTg.js} +3 -3
- package/components/{data-field-panel-DmMkAYAz.cjs → data-field-panel-kGncuIuq.cjs} +1 -1
- package/components/data-fields-select/index.cjs +1 -1
- package/components/data-fields-select/index.js +1 -1
- package/components/{data-fields-select-BOqmoE7n.cjs → data-fields-select-CSP6pX9J.cjs} +1 -1
- package/components/{data-fields-select-af1HZLWS.js → data-fields-select-DP80Miah.js} +1 -1
- package/components/dataset-selector-list/index.cjs +1 -1
- package/components/dataset-selector-list/index.js +1 -1
- package/components/{dataset-selector-list-BzI8n_dB.js → dataset-selector-list-D2UcUaOx.js} +1 -1
- package/components/{dataset-selector-list-CmZaj20L.cjs → dataset-selector-list-DGWiCqpf.cjs} +1 -1
- package/components/dataset-selector-row/index.cjs +1 -1
- package/components/dataset-selector-row/index.js +1 -1
- package/components/{dataset-selector-row-D_7iBmdm.js → dataset-selector-row-7WNwyR9L.js} +3 -3
- package/components/{dataset-selector-row-mOGioXLM.cjs → dataset-selector-row-Vfh7jDjW.cjs} +1 -1
- package/components/{de-AOtjGNGZ.js → de-BbXtB6N5.js} +19 -4
- package/components/de-BfHCg6-Y.cjs +20 -0
- package/components/display-settings/display-settings.d.ts +11 -3
- package/components/display-settings/index.cjs +1 -1
- package/components/display-settings/index.js +1 -1
- package/components/{display-settings-Qwp9oJo6.js → display-settings-Bqq9iJ3L.js} +86 -62
- package/components/display-settings-CG-qtz9m.cjs +146 -0
- package/components/display-settings-binning/index.cjs +1 -1
- package/components/display-settings-binning/index.js +1 -1
- package/components/{display-settings-binning-IPVCvx8a.js → display-settings-binning-C2Jlf18P.js} +2 -2
- package/components/{display-settings-binning-D5zhoC7D.cjs → display-settings-binning-Dx9zEbDo.cjs} +1 -1
- package/components/display-settings-datetime/index.cjs +1 -1
- package/components/display-settings-datetime/index.js +1 -1
- package/components/{display-settings-datetime-t70VEfHe.cjs → display-settings-datetime-B6LMQZOW.cjs} +1 -1
- package/components/{display-settings-datetime-DgBBSYfC.js → display-settings-datetime-B6okY4hC.js} +2 -2
- package/components/display-settings-grand-totals/index.cjs +1 -1
- package/components/display-settings-grand-totals/index.js +1 -1
- package/components/{display-settings-grand-totals-C_Fzk7oV.cjs → display-settings-grand-totals-D1Fi1qIx.cjs} +1 -1
- package/components/{display-settings-grand-totals-AFtKeeeG.js → display-settings-grand-totals-_v0iGpHZ.js} +2 -2
- package/components/display-settings-numeric/index.cjs +1 -1
- package/components/display-settings-numeric/index.js +1 -1
- package/components/{display-settings-numeric-BF8BA5MH.cjs → display-settings-numeric-DbcsMeEN.cjs} +1 -1
- package/components/{display-settings-numeric-DeuXT1UR.js → display-settings-numeric-G2avidxv.js} +2 -2
- package/components/display-settings-period-over-period/display-settings-period-over-period.d.ts +18 -10
- package/components/display-settings-period-over-period/helpers/constants.d.ts +0 -23
- package/components/display-settings-period-over-period/index.cjs +1 -1
- package/components/display-settings-period-over-period/index.js +1 -1
- package/components/display-settings-period-over-period-86oxRHhk.cjs +151 -0
- package/components/{display-settings-period-over-period-CzxnyVF7.js → display-settings-period-over-period-DqeKcvdD.js} +101 -164
- package/components/donut-chart-options.config-B47Y1jhM.cjs +20 -0
- package/components/{donut-chart-options.config-B2vxfMyh.js → donut-chart-options.config-C__JfD3B.js} +32 -45
- package/components/{donut-chart-options.de-AXRfsiXW.cjs → donut-chart-options.de-Bsze2Gb5.cjs} +1 -1
- package/components/{donut-chart-options.de-DgNmBJiQ.js → donut-chart-options.de-Cft1Ppg0.js} +1 -2
- package/components/{donut-chart-options.en-aZqu2oEV.cjs → donut-chart-options.en-D3F9v0nN.cjs} +1 -1
- package/components/{donut-chart-options.en-BXwxTVpB.js → donut-chart-options.en-DZbap5Oi.js} +1 -2
- package/components/{donut-chart-options.es-7WgxuaDe.cjs → donut-chart-options.es-Cm0HGP62.cjs} +1 -1
- package/components/{donut-chart-options.es-DW_q5HeE.js → donut-chart-options.es-gM85ij3W.js} +1 -2
- package/components/{donut-chart-options.fr-QU3pGELZ.js → donut-chart-options.fr-Tgs8r0XZ.js} +1 -2
- package/components/{donut-chart-options.fr-C0Z8xEyF.cjs → donut-chart-options.fr-VSZoCY5q.cjs} +1 -1
- package/components/{donut-chart-options.nl-aKVLbRJY.cjs → donut-chart-options.nl-BkwPxEkq.cjs} +1 -1
- package/components/{donut-chart-options.nl-D_cgYVAQ.js → donut-chart-options.nl-SfAF0ycW.js} +1 -2
- package/components/{donut-chart-positioning.config-Bu1jZwtJ.cjs → donut-chart-positioning.config-BxJLjvJI.cjs} +1 -1
- package/components/{donut-chart-positioning.config-C0jkFWni.js → donut-chart-positioning.config-Doti4TgR.js} +1 -1
- package/components/{es-CYhv03uu.js → es-DRdklNAj.js} +19 -4
- package/components/es-Djk6AXOA.cjs +20 -0
- package/components/{evolution-number-positioning.config-DD8HBFtv.js → evolution-number-positioning.config-DHgkhRjt.js} +1 -1
- package/components/{evolution-number-positioning.config-DbH1-ODd.cjs → evolution-number-positioning.config-DeJkgT2e.cjs} +1 -1
- package/components/expressions-B4TetNaL.js +314 -0
- package/components/expressions-_KjBCqb6.cjs +20 -0
- package/components/filter-expression-picker/index.cjs +1 -1
- package/components/filter-expression-picker/index.js +1 -1
- package/components/filter-expression-picker-BuXFbOXQ.js +146 -0
- package/components/filter-expression-picker-Cta3MMId.cjs +40 -0
- package/components/filter-item/index.cjs +1 -1
- package/components/filter-item/index.js +1 -1
- package/components/filter-item-DENHWF-1.cjs +111 -0
- package/components/{filter-item-QJ3sDlmG.js → filter-item-DXkoGth1.js} +170 -169
- package/components/filter-parameter-picker/index.cjs +1 -1
- package/components/filter-parameter-picker/index.js +1 -1
- package/components/{filter-parameter-picker-DjQVFIfg.cjs → filter-parameter-picker-CYb_At4A.cjs} +1 -1
- package/components/{filter-parameter-picker-C8qwIo_H.js → filter-parameter-picker-Dhdrwokt.js} +1 -1
- package/components/filter-value-picker/index.cjs +1 -1
- package/components/filter-value-picker/index.js +1 -1
- package/components/{filter-value-picker-DIYyMymr.js → filter-value-picker-Df2otXtB.js} +4 -4
- package/components/{filter-value-picker-CMNxLzj7.cjs → filter-value-picker-IBplK-ue.cjs} +1 -1
- package/components/filter-value-picker-datetime/index.cjs +1 -1
- package/components/filter-value-picker-datetime/index.js +1 -1
- package/components/{filter-value-picker-datetime-DKblyQrs.js → filter-value-picker-datetime-Cxj-X50F.js} +34 -28
- package/components/filter-value-picker-datetime-DmJ6vrr8.cjs +53 -0
- package/components/filter-value-picker-hierarchy/index.cjs +1 -1
- package/components/filter-value-picker-hierarchy/index.js +1 -1
- package/components/{filter-value-picker-hierarchy-CXPC_4MU.cjs → filter-value-picker-hierarchy-BAK4urti.cjs} +1 -1
- package/components/{filter-value-picker-hierarchy-IswtY6Qa.js → filter-value-picker-hierarchy-JUxA6aOK.js} +2 -2
- package/components/filter-value-picker-numeric/index.cjs +1 -1
- package/components/filter-value-picker-numeric/index.js +1 -1
- package/components/{filter-value-picker-numeric-C7_-Fpol.cjs → filter-value-picker-numeric-Bf7iFwmp.cjs} +1 -1
- package/components/{filter-value-picker-numeric-DlFnGZ2O.js → filter-value-picker-numeric-MEFZbKsF.js} +1 -1
- package/components/filters/index.cjs +1 -1
- package/components/filters/index.js +1 -1
- package/components/filters-BLd6si6W.cjs +187 -0
- package/components/{filters-CxIzuI5q.js → filters-CYSKF57z.js} +115 -104
- package/components/formula/index.cjs +1 -1
- package/components/formula/index.js +1 -1
- package/components/{formula-WqOlEQ5o.js → formula-DPYHw2sr.js} +2 -2
- package/components/{formula-codemirror-BTYlGSxE.cjs → formula-codemirror-CZpISqCT.cjs} +1 -1
- package/components/{formula-codemirror-bpEb3M2G.js → formula-codemirror-DrcDvAal.js} +4 -4
- package/components/{formula-display-store-QU-B6xp9.js → formula-display-store-fFSd4okF.js} +3 -3
- package/components/{formula-display-store-D7fzKNfW.cjs → formula-display-store-zZIC2bm-.cjs} +1 -1
- package/components/formula-editor/index.cjs +1 -1
- package/components/formula-editor/index.js +3 -3
- package/components/{formula-editor-BbyDf0vM.js → formula-editor-C9ECzSM6.js} +5 -5
- package/components/{formula-editor-D_NRhjUI.cjs → formula-editor-CDx-sZrG.cjs} +1 -1
- package/components/formula-field/index.cjs +1 -1
- package/components/formula-field/index.js +1 -1
- package/components/{formula-field-DSSpI8LB.cjs → formula-field-CV3FLzM2.cjs} +1 -1
- package/components/{formula-field-BT9K_W6Q.js → formula-field-DZLfK3cs.js} +1 -1
- package/components/{formula-input-base-CQc1OU9G.js → formula-input-base-CTuUw8IY.js} +1 -1
- package/components/{formula-input-base-BoWiH97v.cjs → formula-input-base-DN9aVHrY.cjs} +1 -1
- package/components/{formula-CXrr9wJZ.cjs → formula-x9mA6jDv.cjs} +1 -1
- package/components/{fr-DKAoGI_6.js → fr-C6af3ed2.js} +19 -4
- package/components/fr-cuXTTJ19.cjs +20 -0
- package/components/{funnel-chart-options.config-W83a8ukL.js → funnel-chart-options.config-AupTvjpk.js} +27 -84
- package/components/funnel-chart-options.config-DLRKgBpU.cjs +20 -0
- package/components/{funnel-chart-options.de-B2f_xxvV.cjs → funnel-chart-options.de-BXnQCtlb.cjs} +1 -1
- package/components/{funnel-chart-options.de-CLMiAr0m.js → funnel-chart-options.de-CRjaoeDf.js} +0 -1
- package/components/{funnel-chart-options.en-Pu8yU7Yz.js → funnel-chart-options.en-B0moabZE.js} +0 -1
- package/components/{funnel-chart-options.en-Cdvkged9.cjs → funnel-chart-options.en-BxEAM67L.cjs} +1 -1
- package/components/{funnel-chart-options.es-CrAp7hOK.cjs → funnel-chart-options.es-B88ZJAvI.cjs} +1 -1
- package/components/{funnel-chart-options.es-BPjGIJ7s.js → funnel-chart-options.es-DVVoRoYc.js} +0 -1
- package/components/{funnel-chart-options.fr-0RxiqeZg.cjs → funnel-chart-options.fr-B79JhoL2.cjs} +1 -1
- package/components/{funnel-chart-options.fr-CtWjGa4q.js → funnel-chart-options.fr-DvQC8k_c.js} +0 -1
- package/components/{funnel-chart-options.nl-r_wRg5qR.cjs → funnel-chart-options.nl-CnHVcvGk.cjs} +1 -1
- package/components/{funnel-chart-options.nl-2TPEy_CB.js → funnel-chart-options.nl-DJhjX1Pw.js} +0 -1
- package/components/{funnel-chart-positioning.config-Dx9E5eiW.cjs → funnel-chart-positioning.config-BZJ5g_XG.cjs} +1 -1
- package/components/{funnel-chart-positioning.config-Dbex7egf.js → funnel-chart-positioning.config-y6yFY7jd.js} +1 -1
- package/components/{get-dataset-name-C3Sc0hZ0.cjs → get-dataset-name-DddRDGDV.cjs} +1 -1
- package/components/{get-dataset-name-BArAzBu2.js → get-dataset-name-OPlPwcJU.js} +1 -1
- package/components/{groupings-DMWmtE5F.cjs → groupings-BnI5_4A1.cjs} +1 -1
- package/components/{groupings-DXJS4XIU.js → groupings-D_Ri_Z-t.js} +1 -1
- package/components/{guidelines-options.config-D-ZuReR_.cjs → guidelines-options.config-BgARZ-fs.cjs} +1 -1
- package/components/{guidelines-options.config-DVZrOa3v.js → guidelines-options.config-BqAYiMSF.js} +1 -1
- package/components/{heat-map-positioning.config-Bzg0DG60.cjs → heat-map-positioning.config-Cgg-qkcr.cjs} +1 -1
- package/components/{heat-map-positioning.config-D4T7PQzN.js → heat-map-positioning.config-DN75-r9r.js} +1 -1
- package/components/{heat-table-options.config-CMWWTeyo.js → heat-table-options.config-BL8x1qwt.js} +20 -7
- package/components/heat-table-options.config-iEHucwDf.cjs +20 -0
- package/components/{heat-table-positioning.config-Cj6LlLe3.cjs → heat-table-positioning.config-C2QPQURh.cjs} +1 -1
- package/components/{heat-table-positioning.config-DVQiJfC4.js → heat-table-positioning.config-CHxtZe-0.js} +1 -1
- package/components/{hexbin-map-positioning.config-csNrvMwp.js → hexbin-map-positioning.config-B1H1Z6Os.js} +1 -1
- package/components/{hexbin-map-positioning.config-ChoCCure.cjs → hexbin-map-positioning.config-BI-RVV35.cjs} +1 -1
- package/components/index.cjs +1 -1
- package/components/index.js +69 -69
- package/components/interactive-viz-item/helpers/chart-helpers.d.ts +2 -1
- package/components/interactive-viz-item/index.cjs +1 -1
- package/components/interactive-viz-item/index.js +3 -3
- package/components/interactive-viz-item/interactive-viz-item.d.ts +44 -0
- package/components/{interactive-viz-item-BKLOmawA.js → interactive-viz-item-CngeQ579.js} +153 -112
- package/components/interactive-viz-item-qrC0vC2O.cjs +269 -0
- package/components/interactivity-options.config-AKgaj2vC.js +131 -0
- package/components/interactivity-options.config-CkRDoCWd.cjs +20 -0
- package/components/interactivity-options.i18n-Cv5w1nSS.cjs +20 -0
- package/components/{interactivity-options.i18n-DY947PNz.js → interactivity-options.i18n-DmrqdhYW.js} +35 -5
- package/components/item-grid/index.cjs +1 -1
- package/components/item-grid/index.js +2 -2
- package/components/item-grid/item-grid.d.ts +1 -0
- package/components/{item-grid-DveTRc7D.cjs → item-grid-C-v9kDvq.cjs} +1 -1
- package/components/{item-grid-DscQOFMu.js → item-grid-DzR5sfDM.js} +1 -1
- package/components/item-grid-item-actions-menu/index.cjs +1 -1
- package/components/item-grid-item-actions-menu/index.js +1 -1
- package/components/{item-grid-item-actions-menu-B1bKfagj.js → item-grid-item-actions-menu-DJJESWL6.js} +1 -1
- package/components/{item-grid-item-actions-menu-xRrT9dkY.cjs → item-grid-item-actions-menu-HIlcOhJA.cjs} +1 -1
- package/components/item-option/index.cjs +1 -1
- package/components/item-option/index.js +1 -1
- package/components/{item-option-DKLRnicU.js → item-option-B6h4E5qR.js} +49 -43
- package/components/item-option-action-button-group/index.cjs +1 -1
- package/components/item-option-action-button-group/index.js +1 -1
- package/components/{item-option-action-button-group-Cpd_CNn-.js → item-option-action-button-group-Bc3bJQUS.js} +1 -1
- package/components/{item-option-action-button-group-BMgUwveA.cjs → item-option-action-button-group-CQHpvC5O.cjs} +1 -1
- package/components/{item-option-base-BMy6dWbc.cjs → item-option-base-6msESUhx.cjs} +1 -1
- package/components/{item-option-base-BfHciede.js → item-option-base-XB_1V6QM.js} +1 -1
- package/components/item-option-color-palette-picker/index.cjs +1 -1
- package/components/item-option-color-palette-picker/index.js +1 -1
- package/components/{item-option-color-palette-picker-8KFuRU1D.js → item-option-color-palette-picker-BYjb4ygk.js} +1 -1
- package/components/{item-option-color-palette-picker-CnM1Gi6o.cjs → item-option-color-palette-picker-MhFJgurt.cjs} +1 -1
- package/components/item-option-color-picker/index.cjs +1 -1
- package/components/item-option-color-picker/index.js +1 -1
- package/components/{item-option-color-picker-CNW7GsCO.cjs → item-option-color-picker-CLLWV2M-.cjs} +1 -1
- package/components/{item-option-color-picker-DDvsY7hV.js → item-option-color-picker-Dq_NwAn1.js} +1 -1
- package/components/item-option-color-range/index.cjs +1 -1
- package/components/item-option-color-range/index.js +1 -1
- package/components/{item-option-color-range-BqSbuSZh.cjs → item-option-color-range-DlCi_o72.cjs} +1 -1
- package/components/{item-option-color-range-FQduqtz3.js → item-option-color-range-abi_vblh.js} +1 -1
- package/components/item-option-guidelines/index.cjs +1 -1
- package/components/item-option-guidelines/index.js +1 -1
- package/components/{item-option-guidelines-k5DwMONo.js → item-option-guidelines-8LmcJ04U.js} +3 -3
- package/components/{item-option-guidelines-z9BsGR-l.cjs → item-option-guidelines-Q2M8xSYS.cjs} +1 -1
- package/components/item-option-multi-language-field/index.cjs +1 -1
- package/components/item-option-multi-language-field/index.js +1 -1
- package/components/{item-option-multi-language-field-CqtBl3gM.js → item-option-multi-language-field-6FBm3Xr3.js} +1 -1
- package/components/{item-option-multi-language-field-DM2PENxV.cjs → item-option-multi-language-field-Dq3j7XYw.cjs} +1 -1
- package/components/item-option-number-field/index.cjs +1 -1
- package/components/item-option-number-field/index.js +1 -1
- package/components/{item-option-number-field-BgQRhFj3.js → item-option-number-field-CPgwUGTR.js} +1 -1
- package/components/{item-option-number-field-Cw2ofJL7.cjs → item-option-number-field-CZSVb9wv.cjs} +1 -1
- package/components/item-option-panel/index.cjs +1 -1
- package/components/item-option-panel/index.js +1 -1
- package/components/{item-option-panel-CU51qvgV.cjs → item-option-panel-B5ZKbaLl.cjs} +1 -1
- package/components/{item-option-panel-BLXWIbjX.js → item-option-panel-BZRyyc-9.js} +2 -2
- package/components/item-option-picker/index.cjs +1 -1
- package/components/item-option-picker/index.js +1 -1
- package/components/{item-option-picker-EJlc0bmj.cjs → item-option-picker-DMLk4Uq_.cjs} +1 -1
- package/components/{item-option-picker-DkAENDES.js → item-option-picker-mU6X3bbk.js} +1 -1
- package/components/item-option-position-picker/index.cjs +1 -1
- package/components/item-option-position-picker/index.js +1 -1
- package/components/{item-option-position-picker-DX7lLZKO.js → item-option-position-picker-B4AuC_73.js} +1 -1
- package/components/{item-option-position-picker-Ba7cBvlL.cjs → item-option-position-picker-BTH6KixE.cjs} +1 -1
- package/components/item-option-positions-number-field/index.cjs +1 -1
- package/components/item-option-positions-number-field/index.js +1 -1
- package/components/{item-option-positions-number-field-Bqfg0MJm.js → item-option-positions-number-field-BTFGhhrb.js} +1 -1
- package/components/{item-option-positions-number-field-BQ8gFOAn.cjs → item-option-positions-number-field-Dz0mpPSk.cjs} +1 -1
- package/components/item-option-radio-button-group/index.cjs +1 -1
- package/components/item-option-radio-button-group/index.js +1 -1
- package/components/{item-option-radio-button-group-Bk7VQlpx.js → item-option-radio-button-group-CmYFScry.js} +1 -1
- package/components/{item-option-radio-button-group-2hX-E2WV.cjs → item-option-radio-button-group-EBLjtMVd.cjs} +1 -1
- package/components/item-option-slider/index.cjs +1 -1
- package/components/item-option-slider/index.js +1 -1
- package/components/{item-option-slider-BKtJfL3D.js → item-option-slider-C7RfBary.js} +1 -1
- package/components/{item-option-slider-Kz2eFBql.cjs → item-option-slider-DRXTGW9W.cjs} +1 -1
- package/components/item-option-switch/index.cjs +1 -1
- package/components/item-option-switch/index.js +1 -1
- package/components/{item-option-switch-BUteU1mc.cjs → item-option-switch-D-FbXXRl.cjs} +1 -1
- package/components/{item-option-switch-cGWccE79.js → item-option-switch-D-MY6Uqv.js} +1 -1
- package/components/{item-option-DpLdospV.cjs → item-option-t_LsqjoR.cjs} +1 -1
- package/components/item-option-text-field/index.cjs +1 -1
- package/components/item-option-text-field/index.js +1 -1
- package/components/{item-option-text-field-Dy8pqVKJ.js → item-option-text-field-BR2V4ro2.js} +1 -1
- package/components/{item-option-text-field-BC9fR-yW.cjs → item-option-text-field-Cn-9lblu.cjs} +1 -1
- package/components/item-options-configs.cjs +1 -1
- package/components/item-options-configs.js +21 -21
- package/components/item-slot-drop/index.cjs +1 -1
- package/components/item-slot-drop/index.js +1 -1
- package/components/item-slot-drop/item-slot-drop.d.ts +2 -0
- package/components/item-slot-drop-7v-n-e1y.cjs +93 -0
- package/components/{item-slot-drop-CwZT8bTP.js → item-slot-drop-Db-tVAud.js} +69 -60
- package/components/item-slot-drop-panel/index.cjs +1 -1
- package/components/item-slot-drop-panel/index.js +1 -1
- package/components/item-slot-drop-panel/item-slot-drop-panel.d.ts +2 -0
- package/components/{item-slot-drop-panel-o5UdVrY_.js → item-slot-drop-panel-D-g4H1Rp.js} +117 -107
- package/components/item-slot-drop-panel-D2_1yWHs.cjs +58 -0
- package/components/item-slot-picker/index.cjs +1 -1
- package/components/item-slot-picker/index.js +1 -1
- package/components/item-slot-picker/item-slot-picker.d.ts +5 -0
- package/components/item-slot-picker-9afJORSK.cjs +160 -0
- package/components/{item-slot-picker-ilmmb0-8.js → item-slot-picker-BHtj0dRB.js} +109 -101
- package/components/item-slot-picker-panel/index.cjs +1 -1
- package/components/item-slot-picker-panel/index.js +1 -1
- package/components/item-slot-picker-panel/item-slot-picker-panel.d.ts +21 -1
- package/components/{item-slot-picker-panel-fJqEmxeD.js → item-slot-picker-panel-CIxGfaz3.js} +111 -69
- package/components/item-slot-picker-panel-CeOtdtMc.cjs +86 -0
- package/components/{kpi-positioning.config-mQuxf1ke.js → kpi-positioning.config-DDTfIZ_h.js} +1 -1
- package/components/{kpi-positioning.config-DIYWUwID.cjs → kpi-positioning.config-t9SxIqga.cjs} +1 -1
- package/components/legend-options.i18n-0hyeyskh.js +78 -0
- package/components/legend-options.i18n-CUZeW5rR.cjs +20 -0
- package/components/{line-chart-options.config-Opoz2jPk.js → line-chart-options.config-BdhyECMS.js} +2 -2
- package/components/{line-chart-options.config-DOGbeJhy.cjs → line-chart-options.config-CVtYVap1.cjs} +1 -1
- package/components/{line-chart-positioning.config-DqjrWmxJ.js → line-chart-positioning.config-BZoKaJVO.js} +1 -1
- package/components/{line-chart-positioning.config-DK9PycZ_.cjs → line-chart-positioning.config-DfTMlBBL.cjs} +1 -1
- package/components/{localized-mixin-EoNvtTBG.cjs → localized-mixin-BQowFGQK.cjs} +1 -1
- package/components/{localized-mixin-FPDNaZhb.js → localized-mixin-BdXrQldH.js} +1 -1
- package/components/{marker-map-positioning.config-BB51kE8O.cjs → marker-map-positioning.config-BsPUa8Ui.cjs} +1 -1
- package/components/{marker-map-positioning.config-CA08hZcp.js → marker-map-positioning.config-BtuIUPHT.js} +1 -1
- package/components/nl-B4gqLp1F.cjs +20 -0
- package/components/{nl-DNWGcGqO.js → nl-Chzh7kM2.js} +19 -4
- package/components/{ohlc-chart-options.config-CvlHm6hy.cjs → ohlc-chart-options.config-BQJWhXv7.cjs} +1 -1
- package/components/{ohlc-chart-options.config-C-TCUtOt.js → ohlc-chart-options.config-MYqetK62.js} +3 -3
- package/components/{ohlc-chart-positioning.config-CDL2vGsl.cjs → ohlc-chart-positioning.config-D1X1U96F.cjs} +1 -1
- package/components/{ohlc-chart-positioning.config-BqFHD1oj.js → ohlc-chart-positioning.config-Ny3U8zgV.js} +1 -1
- package/components/{parallel-coordinates-plot-options.config-UHrCS9q5.cjs → parallel-coordinates-plot-options.config-B4v6BtAz.cjs} +1 -1
- package/components/{parallel-coordinates-plot-options.config-C3HTFBTl.js → parallel-coordinates-plot-options.config-CN4p7QDD.js} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-Cc-ooVxV.cjs → parallel-coordinates-plot-positioning.config-BI6JMiBT.cjs} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-D6IuAk_K.js → parallel-coordinates-plot-positioning.config-Curf1XoL.js} +1 -1
- package/components/{period-over-period-condition.const-C1NZ9Bkp.cjs → period-over-period-condition.const-BOI8gxO1.cjs} +1 -1
- package/components/{period-over-period-condition.const-AE_2h-9O.js → period-over-period-condition.const-C9cn5m-o.js} +1 -2
- package/components/period-over-period-context-CeZHXSs0.js +84 -0
- package/components/period-over-period-context-Cx4pRKBn.cjs +20 -0
- package/components/{pivot-table-options.config-5pYvqc35.cjs → pivot-table-options.config-1DApg-wg.cjs} +1 -1
- package/components/{pivot-table-options.config-BlrguysB.js → pivot-table-options.config-DhzyxHTP.js} +1 -1
- package/components/{pivot-table-positioning.config-DDwXH70O.js → pivot-table-positioning.config-BoN7P8bs.js} +1 -1
- package/components/{pivot-table-positioning.config-DvwKNjoD.cjs → pivot-table-positioning.config-BsyGrzvX.cjs} +1 -1
- package/components/{pyramid-chart-options.config-CAC6cMmt.cjs → pyramid-chart-options.config-CNOOucJE.cjs} +1 -1
- package/components/{pyramid-chart-options.config-0Qf1naIx.js → pyramid-chart-options.config-DVBuswjg.js} +1 -1
- package/components/{pyramid-chart-positioning.config-DWou2jnm.js → pyramid-chart-positioning.config-D9Z40IzT.js} +1 -1
- package/components/{pyramid-chart-positioning.config-10BYkgv8.cjs → pyramid-chart-positioning.config-DdjlJjFb.cjs} +1 -1
- package/components/{radar-chart-positioning.config-B0O8vn-B.js → radar-chart-positioning.config-C16aywvy.js} +1 -1
- package/components/{radar-chart-positioning.config-Dg41uYWY.cjs → radar-chart-positioning.config-DARMkDIv.cjs} +1 -1
- package/components/{route-map-positioning.config-C1iUodTh.js → route-map-positioning.config-BmuPL5DK.js} +1 -1
- package/components/{route-map-positioning.config-DlM6xJTP.cjs → route-map-positioning.config-CTtpis1h.cjs} +1 -1
- package/components/{sankey-diagram-options.config-Y6jRK3wk.js → sankey-diagram-options.config-B86iq8pI.js} +1 -1
- package/components/{sankey-diagram-options.config-B8aHKfFt.cjs → sankey-diagram-options.config-mIgABANw.cjs} +1 -1
- package/components/{sankey-diagram-positioning.config-5EXNleL5.js → sankey-diagram-positioning.config-BhvJe1IX.js} +1 -1
- package/components/{sankey-diagram-positioning.config-BSu02GJ1.cjs → sankey-diagram-positioning.config-aLwXoVGA.cjs} +1 -1
- package/components/{scatter-plot-options.config-DhOGahRc.cjs → scatter-plot-options.config-BZVF4r3f.cjs} +1 -1
- package/components/{scatter-plot-options.config-DvGofFzR.js → scatter-plot-options.config-ChqZzslY.js} +2 -2
- package/components/{scatter-plot-positioning.config-CuyJUmiV.cjs → scatter-plot-positioning.config-CYy1jfz5.cjs} +1 -1
- package/components/{scatter-plot-positioning.config-nDbkUUqa.js → scatter-plot-positioning.config-twVc5wWl.js} +1 -1
- package/components/{set-locale-m257lVi3.js → set-locale-BeAF7qn4.js} +4 -4
- package/components/{set-locale-BkMmLcm6.cjs → set-locale-DvJ1yA4S.cjs} +1 -1
- package/components/{slicer-filter-positioning.config-BT5aNPHe.js → slicer-filter-positioning.config-WofHaYJx.js} +1 -1
- package/components/{slicer-filter-positioning.config-D7ZLoaGu.cjs → slicer-filter-positioning.config-_frD2LDr.cjs} +1 -1
- package/components/slot-menu/index.cjs +1 -1
- package/components/slot-menu/index.js +1 -1
- package/components/slot-menu/slot-menu.d.ts +6 -0
- package/components/slot-menu-B-7MzAd6.cjs +71 -0
- package/components/{slot-menu-BB_nJWZx.js → slot-menu-DhGC4yoA.js} +88 -97
- package/components/slot-menu-list/index.cjs +1 -1
- package/components/slot-menu-list/index.js +1 -1
- package/components/{slot-menu-list-C2nLODML.cjs → slot-menu-list-CiJK2fNu.cjs} +1 -1
- package/components/{slot-menu-list-3QkrOWgG.js → slot-menu-list-SoDeiZE1.js} +1 -1
- package/components/sort-options.config-CiPFyoxx.cjs +20 -0
- package/components/sort-options.config-CiZo1AEh.js +104 -0
- package/components/{speedometer-chart-positioning.config-CO1MtdU3.js → speedometer-chart-positioning.config-BLXUOOc_.js} +1 -1
- package/components/{speedometer-chart-positioning.config-BtDD3TiP.cjs → speedometer-chart-positioning.config-CkTqU3qn.cjs} +1 -1
- package/components/{spike-map-positioning.config-BhKVutm1.cjs → spike-map-positioning.config-DmLlz8ZD.cjs} +1 -1
- package/components/{spike-map-positioning.config-CQkcCdHD.js → spike-map-positioning.config-pgedE0nh.js} +1 -1
- package/components/{strip-plot-positioning.config-DEyOR-yS.js → strip-plot-positioning.config-B4sVlI82.js} +1 -1
- package/components/{strip-plot-positioning.config-CEYgtT13.cjs → strip-plot-positioning.config-CtctjJwh.cjs} +1 -1
- package/components/sunburst-chart-options.config-DNkL0pN4.cjs +20 -0
- package/components/{sunburst-chart-options.config-DVETeZFc.js → sunburst-chart-options.config-Zg42LwmT.js} +26 -83
- package/components/{sunburst-chart-options.de-DO65RQI_.cjs → sunburst-chart-options.de-BIJ2Njvn.cjs} +1 -1
- package/components/{sunburst-chart-options.de-B0mIITIx.js → sunburst-chart-options.de-BaLziTTh.js} +2 -2
- package/components/{sunburst-chart-options.en-C3IkkUBW.cjs → sunburst-chart-options.en-C2P4VIQq.cjs} +1 -1
- package/components/{sunburst-chart-options.en-LoUPN34r.js → sunburst-chart-options.en-CxWuNug0.js} +2 -2
- package/components/{sunburst-chart-options.es-BV_4fN10.cjs → sunburst-chart-options.es-eGoOC0h2.cjs} +1 -1
- package/components/{sunburst-chart-options.es-DBje7CMN.js → sunburst-chart-options.es-nqpK13rB.js} +2 -2
- package/components/{sunburst-chart-options.fr-Cnbpsj6t.js → sunburst-chart-options.fr-Dtfoz1Z-.js} +2 -2
- package/components/{sunburst-chart-options.fr-DO7-oeNe.cjs → sunburst-chart-options.fr-wdaTbc-I.cjs} +1 -1
- package/components/{sunburst-chart-options.nl-DsecjcfE.cjs → sunburst-chart-options.nl-2U3YQ6aP.cjs} +1 -1
- package/components/{sunburst-chart-options.nl-CluctKYY.js → sunburst-chart-options.nl-BljrFLha.js} +2 -2
- package/components/{sunburst-chart-positioning.config-DP-ifsmn.js → sunburst-chart-positioning.config-BJpphNBF.js} +1 -1
- package/components/{sunburst-chart-positioning.config-DNtHXpHg.cjs → sunburst-chart-positioning.config-BaQsxbr9.cjs} +1 -1
- package/components/{symbol-map-positioning.config-CoLDPgYM.cjs → symbol-map-positioning.config-657GZ7GZ.cjs} +1 -1
- package/components/{symbol-map-positioning.config-Nj7pDOAu.js → symbol-map-positioning.config-DEMmnp7J.js} +1 -1
- package/components/theme-options.config-CnSIfTf6.js +47 -0
- package/components/theme-options.config-DZJos9OK.cjs +20 -0
- package/components/theme-options.i18n-7V690gi-.cjs +20 -0
- package/components/theme-options.i18n-DtQoYxRz.js +43 -0
- package/components/{treemap-chart-options.config-DLEY6YuI.cjs → treemap-chart-options.config-B-bY4pOq.cjs} +1 -1
- package/components/{treemap-chart-options.config-DsqsX9So.js → treemap-chart-options.config-BYbW8htL.js} +1 -1
- package/components/{treemap-chart-positioning.config-B_R_cmFs.js → treemap-chart-positioning.config-CLKsuS0b.js} +1 -1
- package/components/{treemap-chart-positioning.config-BVOqj2V1.cjs → treemap-chart-positioning.config-DnY0Gnz7.cjs} +1 -1
- package/components/utils/base.cjs +1 -1
- package/components/utils/base.js +2 -2
- package/components/{utils-DIKmx9O1.cjs → utils-BGtDiw5k.cjs} +1 -1
- package/components/{utils-DS6Pthr4.js → utils-ZVgZ4EFf.js} +1 -1
- package/components/utils.cjs +1 -1
- package/components/utils.js +8 -8
- package/components/{venn-diagram-positioning.config-DOsSkJYl.js → venn-diagram-positioning.config-BjiidwmG.js} +1 -1
- package/components/{venn-diagram-positioning.config-8JCVpYOt.cjs → venn-diagram-positioning.config-OBLHpLAK.cjs} +1 -1
- package/components/{wordcloud-chart-options.config-DiyF596X.cjs → wordcloud-chart-options.config-COTlsOrG.cjs} +1 -1
- package/components/{wordcloud-chart-options.config-UAl2hfU7.js → wordcloud-chart-options.config-vKHxHgLh.js} +1 -1
- package/components/{wordcloud-chart-positioning.config-DSVw_z7Y.js → wordcloud-chart-positioning.config-68AyKLI2.js} +1 -1
- package/components/{wordcloud-chart-positioning.config-D13iPEEg.cjs → wordcloud-chart-positioning.config-B_pohQK5.cjs} +1 -1
- package/custom-elements.json +3411 -2436
- package/grid-core/item-grid-base.d.ts +5 -4
- package/package.json +3 -3
- package/react/components/ai-chat.component.ts +1 -1
- package/react/esm/components/ai-chat.component.d.ts +1 -1
- package/react/esm/components/ai-chat.component.js +1 -1
- package/react/package.json +2 -2
- package/standalone/add-to-dashboard.js +1 -1
- package/standalone/chunks/advanced-options.i18n-BDqAAkCh.js +2 -0
- package/standalone/chunks/{area-chart-options.config-BMvUma_d.js → area-chart-options.config-MSCX7GCC.js} +1 -1
- package/standalone/chunks/{bar-chart-options.config-BpHqXBFq.js → bar-chart-options.config-C-kawBg1.js} +1 -1
- package/standalone/chunks/{box-plot-options.config-DDWb_KmV.js → box-plot-options.config-EeKqXIKW.js} +1 -1
- package/standalone/chunks/{bubble-chart-options.config-BKPTymfC.js → bubble-chart-options.config-BEP0haal.js} +1 -1
- package/standalone/chunks/{chart-helpers-CR-EUEPf.js → chart-helpers-CKlLA7d7.js} +2 -2
- package/standalone/chunks/{choropleth-map-options.config-CDMjKnJD.js → choropleth-map-options.config-C9iAp9Kx.js} +1 -1
- package/standalone/chunks/{circle-pack-chart-options.config-CjDkh4DG.js → circle-pack-chart-options.config-Ch67WcjC.js} +1 -1
- package/standalone/chunks/{color-range-utils-BVyHBRiq.js → color-range-utils-D2amn7jf.js} +1 -1
- package/standalone/chunks/{column-chart-options.config-YIe6cMV5.js → column-chart-options.config-kXBPyFRG.js} +1 -1
- package/standalone/chunks/{combination-chart-options.config-Bf7cNmpc.js → combination-chart-options.config-CvVDQmwB.js} +1 -1
- package/standalone/chunks/data-broker-CUCszU0S.js +2 -0
- package/standalone/chunks/de-CBvR-tEX.js +2 -0
- package/standalone/chunks/{display-settings-binning-BeLLxd3i.js → display-settings-binning-5gaYqJVT.js} +1 -1
- package/standalone/chunks/display-settings-datetime-DhmVs5jK.js +199 -0
- package/standalone/chunks/{display-settings-grand-totals-BuhpQKJ6.js → display-settings-grand-totals-B83suS2N.js} +1 -1
- package/standalone/chunks/{display-settings-numeric-m30IYI7I.js → display-settings-numeric-CnKNRgjc.js} +1 -1
- package/standalone/chunks/display-settings-period-over-period-Di_2_DDX.js +133 -0
- package/standalone/chunks/donut-chart-options.config-re9dbce1.js +2 -0
- package/standalone/chunks/donut-chart-options.de-C1yjMc7p.js +2 -0
- package/standalone/chunks/donut-chart-options.en-CJSA_qMs.js +2 -0
- package/standalone/chunks/donut-chart-options.es-9wl-kU6W.js +2 -0
- package/standalone/chunks/donut-chart-options.fr-FewVJ9oP.js +2 -0
- package/standalone/chunks/donut-chart-options.nl-BA31OsN3.js +2 -0
- package/standalone/chunks/{embed-Bv1ps-EM.js → embed-BL4OOcIV.js} +1 -1
- package/standalone/chunks/en-Cu0ra3lJ.js +2 -0
- package/standalone/chunks/en-GB-B575630r.js +2 -0
- package/standalone/chunks/en-US-Cu0ra3lJ.js +2 -0
- package/standalone/chunks/es-CJnRT1YI.js +2 -0
- package/standalone/chunks/{filters-CxgBXUF1.js → filters-Dk7oDe_z.js} +75 -73
- package/standalone/chunks/{formula-codemirror-Cq94j3-f.js → formula-codemirror-Dn_LEpVx.js} +8 -8
- package/standalone/chunks/fr-DqE0NP1j.js +2 -0
- package/standalone/chunks/funnel-chart-options.config-CW0RAyLR.js +2 -0
- package/standalone/chunks/{funnel-chart-options.de-u5OrFyng.js → funnel-chart-options.de-D2UImO-s.js} +1 -1
- package/standalone/chunks/{funnel-chart-options.en-BEGSBn35.js → funnel-chart-options.en-BJr4frpT.js} +1 -1
- package/standalone/chunks/{funnel-chart-options.es-CxWkEgMs.js → funnel-chart-options.es-DkAYtLaS.js} +1 -1
- package/standalone/chunks/{funnel-chart-options.fr-DZmmgK2t.js → funnel-chart-options.fr-BD3VKHzw.js} +1 -1
- package/standalone/chunks/{funnel-chart-options.nl-C6BitaEJ.js → funnel-chart-options.nl-CubJLSq7.js} +1 -1
- package/standalone/chunks/{guidelines-options.config-CS29_J9M.js → guidelines-options.config-CrJ_haaO.js} +1 -1
- package/standalone/chunks/{heat-map-options.config-DDQMD38W.js → heat-map-options.config-_1TkgBVb.js} +1 -1
- package/standalone/chunks/heat-table-options.config-tgVKW_7X.js +2 -0
- package/standalone/chunks/interactivity-options.config-CG_ZbLS5.js +2 -0
- package/standalone/chunks/interactivity-options.i18n-V1RAn6Ue.js +2 -0
- package/standalone/chunks/{is-same-option-value-7kXNF4st.js → is-same-option-value-CfxEd5pG.js} +1 -1
- package/standalone/chunks/{item-option-action-button-group-BoyqF9vt.js → item-option-action-button-group-C1ke6Jb3.js} +1 -1
- package/standalone/chunks/{item-option-base-CBcDT8MX.js → item-option-base-DSAq8pgm.js} +1 -1
- package/standalone/chunks/{item-option-color-palette-picker-C9PGAv4V.js → item-option-color-palette-picker-waW4sAIj.js} +1 -1
- package/standalone/chunks/{item-option-color-picker-D4fVJlqF.js → item-option-color-picker-9e_3aSen.js} +1 -1
- package/standalone/chunks/{item-option-color-range-BlAdTguE.js → item-option-color-range-CWmg4Tdk.js} +1 -1
- package/standalone/chunks/{item-option-guidelines-DMsYsHDu.js → item-option-guidelines-BnLLvaFI.js} +1 -1
- package/standalone/chunks/{item-option-multi-language-field-NUbm1drg.js → item-option-multi-language-field-BN9u0rGs.js} +1 -1
- package/standalone/chunks/{item-option-number-field-DRp7kbHL.js → item-option-number-field-D2gvKQN_.js} +1 -1
- package/standalone/chunks/{item-option-panel-cXrRclzM.js → item-option-panel-BWQpttWc.js} +2 -2
- package/standalone/chunks/{item-option-picker-Ba09L4Cs.js → item-option-picker-BElgjysX.js} +1 -1
- package/standalone/chunks/{item-option-position-picker-GEGTnhjw.js → item-option-position-picker-B7FGJPTv.js} +1 -1
- package/standalone/chunks/{item-option-positions-number-field-n44s1k5v.js → item-option-positions-number-field-CyCWqMby.js} +1 -1
- package/standalone/chunks/{item-option-radio-button-group-3s_b1NvR.js → item-option-radio-button-group-DjMjG9W3.js} +1 -1
- package/standalone/chunks/{item-option-slider-DtY65Gxk.js → item-option-slider-CJrobai6.js} +1 -1
- package/standalone/chunks/{item-option-switch-4sJaI0mx.js → item-option-switch-DTK0eRzd.js} +1 -1
- package/standalone/chunks/{item-option-text-field-Bt6Lj6kh.js → item-option-text-field-B4-wMWpQ.js} +1 -1
- package/standalone/chunks/item-slot-picker-panel-BZsTEDns.js +438 -0
- package/standalone/chunks/legend-options.i18n-Dr6XmdZs.js +2 -0
- package/standalone/chunks/line-chart-options.config-VgcDr1j6.js +2 -0
- package/standalone/chunks/load-data-fields-for-datasets-Df6IGwne.js +25 -0
- package/standalone/chunks/localize-DIWFho02.js +2 -0
- package/standalone/chunks/{localized-decorator-DosMCCQo.js → localized-decorator-C2ufmkVS.js} +1 -1
- package/standalone/chunks/{localized-mixin-BWJj88bd.js → localized-mixin-CLvEZO1g.js} +1 -1
- package/standalone/chunks/{luzmo-icon-markup-ByaNI6dg.js → luzmo-icon-markup-C1Wzxt4b.js} +1 -1
- package/standalone/chunks/nl-DBD8_AIO.js +2 -0
- package/standalone/chunks/{ohlc-chart-options.config-kyYOgBtR.js → ohlc-chart-options.config-DoFcORQY.js} +1 -1
- package/standalone/chunks/{option-interaction-controller-BuwRr21c.js → option-interaction-controller-BfHSkomY.js} +1 -1
- package/standalone/chunks/{parallel-coordinates-plot-options.config-BcIYCRdF.js → parallel-coordinates-plot-options.config-JmTkwzbf.js} +1 -1
- package/standalone/chunks/{pivot-table-options.config-BZpId1ju.js → pivot-table-options.config-mk1a9meE.js} +1 -1
- package/standalone/chunks/{pyramid-chart-options.config-xYIVE_ib.js → pyramid-chart-options.config-DuCSp-ss.js} +1 -1
- package/standalone/chunks/{route-map-options.config-CGBkHnhM.js → route-map-options.config-B73cNABj.js} +1 -1
- package/standalone/chunks/{sankey-diagram-options.config-Curc2-If.js → sankey-diagram-options.config-BsFxRYGh.js} +1 -1
- package/standalone/chunks/scatter-plot-options.config-DiO2UduI.js +2 -0
- package/standalone/chunks/sort-options.config-fFAfPcSI.js +2 -0
- package/standalone/chunks/{spike-map-options.config-CSenlJ_F.js → spike-map-options.config-BpRwiS7U.js} +1 -1
- package/standalone/chunks/sunburst-chart-options.config-TCXdodS8.js +2 -0
- package/standalone/chunks/sunburst-chart-options.de-DabJH9rY.js +2 -0
- package/standalone/chunks/sunburst-chart-options.en-BNJlsmSV.js +2 -0
- package/standalone/chunks/sunburst-chart-options.es-xn2E_v17.js +2 -0
- package/standalone/chunks/sunburst-chart-options.fr-DQR4oaiY.js +2 -0
- package/standalone/chunks/sunburst-chart-options.nl-BZGlfl67.js +2 -0
- package/standalone/chunks/{task-BlhDPTQS.js → task-B6C9QMNJ.js} +1 -1
- package/standalone/chunks/theme-options.config-W0JNb9nG.js +2 -0
- package/standalone/chunks/theme-options.i18n-DtI0eOJ4.js +2 -0
- package/standalone/chunks/{treemap-chart-options.config-DxkumoYq.js → treemap-chart-options.config-CLpDBIB5.js} +1 -1
- package/standalone/chunks/{wordcloud-chart-options.config-b-ibtRWp.js → wordcloud-chart-options.config-Bjw10jRd.js} +1 -1
- package/standalone/interactive-viz-item.js +54 -53
- package/standalone/item-grid.js +1 -1
- package/standalone/manifest.json +92 -87
- package/types/ai-chat.types.d.ts +60 -0
- package/types.d.ts +1 -1
- package/utils/filters/expressions.d.ts +2 -0
- package/utils/slot-state/slot-store.d.ts +3 -8
- package/utils/time/period-over-period-condition.const.d.ts +0 -1
- package/utils/time/period-over-period-context.d.ts +75 -0
- package/utils/time/tests/period-over-period-context.test.d.ts +1 -0
- package/components/ai-chat-BNcSadGI.cjs +0 -393
- package/components/chart-helpers-fMnqHRzC.cjs +0 -20
- package/components/de-KvAhLsm8.cjs +0 -20
- package/components/display-settings-DaZ3CiKB.cjs +0 -143
- package/components/display-settings-period-over-period-B8Ne3lq-.cjs +0 -227
- package/components/donut-chart-options.config-DX-spmaZ.cjs +0 -20
- package/components/es-DVISHTAz.cjs +0 -20
- package/components/filter-expression-picker-Cc3xfiGT.js +0 -432
- package/components/filter-expression-picker-DDSI9bYq.cjs +0 -40
- package/components/filter-item-DQNbp7Qn.cjs +0 -111
- package/components/filter-value-picker-datetime-BVDQ-og5.cjs +0 -51
- package/components/filters-BPbPFOu5.cjs +0 -187
- package/components/fr-BCxcMVQV.cjs +0 -20
- package/components/funnel-chart-options.config-CKp94nx7.cjs +0 -20
- package/components/heat-table-options.config-D21xtaIk.cjs +0 -20
- package/components/interactive-viz-item-ojdH1uk0.cjs +0 -268
- package/components/interactivity-options.config-Bzk2L-qh.cjs +0 -20
- package/components/interactivity-options.config-MuEP5vSt.js +0 -72
- package/components/interactivity-options.i18n-BsYv4Rh9.cjs +0 -20
- package/components/item-slot-drop-DLzi4Dik.cjs +0 -91
- package/components/item-slot-drop-panel-Oh8zdKJH.cjs +0 -57
- package/components/item-slot-picker-O9HKr3mv.cjs +0 -158
- package/components/item-slot-picker-panel-BhhN54IM.cjs +0 -82
- package/components/nl-XotE1MQq.cjs +0 -20
- package/components/slot-menu-C8p0nkVS.cjs +0 -71
- package/components/sunburst-chart-options.config-CZdd6qx0.cjs +0 -20
- package/standalone/chunks/data-broker-DXDyIrj_.js +0 -2
- package/standalone/chunks/de-BkB0q1Eg.js +0 -2
- package/standalone/chunks/display-settings-datetime-BkeiKIVV.js +0 -199
- package/standalone/chunks/display-settings-period-over-period-CqDlOSRn.js +0 -209
- package/standalone/chunks/donut-chart-options.config-DWpePR5V.js +0 -2
- package/standalone/chunks/donut-chart-options.de-IKGJRoDL.js +0 -2
- package/standalone/chunks/donut-chart-options.en-O2IK3YiS.js +0 -2
- package/standalone/chunks/donut-chart-options.es-gKAHuFAU.js +0 -2
- package/standalone/chunks/donut-chart-options.fr-Q-uMrtQG.js +0 -2
- package/standalone/chunks/donut-chart-options.nl-B6v6jK4l.js +0 -2
- package/standalone/chunks/en-63f7j4v7.js +0 -2
- package/standalone/chunks/en-GB-QAmXQf8W.js +0 -2
- package/standalone/chunks/en-US-63f7j4v7.js +0 -2
- package/standalone/chunks/es-Bo0jStZn.js +0 -2
- package/standalone/chunks/fr-Co_qVhhV.js +0 -2
- package/standalone/chunks/funnel-chart-options.config-S1yxc6IG.js +0 -2
- package/standalone/chunks/heat-table-options.config-B4K0Ygug.js +0 -2
- package/standalone/chunks/interactivity-options.config-09eXx6k6.js +0 -2
- package/standalone/chunks/interactivity-options.i18n-BLDCmZkC.js +0 -2
- package/standalone/chunks/item-slot-picker-panel-BOSVFBIy.js +0 -429
- package/standalone/chunks/line-chart-options.config--_LXaPbB.js +0 -2
- package/standalone/chunks/load-data-fields-for-datasets-CDlut-6S.js +0 -25
- package/standalone/chunks/localize-DXRmGRe-.js +0 -2
- package/standalone/chunks/nl-CQz2jrVx.js +0 -2
- package/standalone/chunks/scatter-plot-options.config-DG9Ki-mt.js +0 -2
- package/standalone/chunks/sunburst-chart-options.config-DOBSe3i5.js +0 -2
- package/standalone/chunks/sunburst-chart-options.de-D3iq4Q-m.js +0 -2
- package/standalone/chunks/sunburst-chart-options.en-BUJ_Pr9C.js +0 -2
- package/standalone/chunks/sunburst-chart-options.es-stKrKGz2.js +0 -2
- package/standalone/chunks/sunburst-chart-options.fr-RkBtlMNp.js +0 -2
- package/standalone/chunks/sunburst-chart-options.nl-BUeDNot_.js +0 -2
package/README.md
CHANGED
|
@@ -15,7 +15,7 @@ ACK produces and edits chart configuration (type, slots, options, filters). It d
|
|
|
15
15
|
## Installation
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
|
-
npm install @luzmo/analytics-components-kit lit@^3.3.2 @luzmo/lucero@^2.
|
|
18
|
+
npm install @luzmo/analytics-components-kit lit@^3.3.2 @luzmo/lucero@^2.7.1 @luzmo/icons@^1.0.1-alpha.49
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
ACK uses Lucero 2 for its design-system primitives. Package managers that do not install peer dependencies automatically must install the compatible peer versions explicitly.
|
|
@@ -87,6 +87,12 @@ See the [ACK documentation](https://developer.luzmo.com/guide/ack--overview) for
|
|
|
87
87
|
usage and API guidance. These exposed APIs follow semantic versioning. Internal
|
|
88
88
|
helpers are not standalone public component subpaths.
|
|
89
89
|
|
|
90
|
+
`luzmo-ai-chat` can render a saved Agent's choice questions. It declares them to
|
|
91
|
+
the aiprompt API only when you opt in with `interactions: ['question']` in the
|
|
92
|
+
`AiChatSession` config, because an API that predates `client_capabilities`
|
|
93
|
+
rejects every request that carries it. Approval cards will follow in a later
|
|
94
|
+
release.
|
|
95
|
+
|
|
90
96
|
### Data Fields
|
|
91
97
|
|
|
92
98
|
Present the columns and formulas from a dataset so users can pick the data they want to visualize. Also includes components to display and edit Luzmo formula/column expressions (function syntax, e.g. `SUM({datasetId:columnId})`). Formula components accept datasets directly via `datasetsDataFields` or fetch them from the Luzmo API via `dataset-ids` (+ auth).
|
|
@@ -115,6 +121,8 @@ Let users assign data fields to chart slots (e.g. `x-axis`, `measure`, `legend`)
|
|
|
115
121
|
|
|
116
122
|
Slot panels also surface inline calculations supplied through `slotsContents`. An aggregating ad-hoc measure uses `formula`; a non-aggregating derived dimension uses `expression`. Slots show compact **Formula** or **Expression** labels with matching icons; the **cog menu** shows the full read-only calculation under the same heading, with vertical scrolling after four rows. Override its size-dependent maximum width with `--luzmo-display-settings-calculation-max-width`. Clear the picker with its **X** action, or clear a drop target with its **trash** action, to return to column selection.
|
|
117
123
|
|
|
124
|
+
Slot drops, pickers, and their panels accept `hasConnectedComparisonFilter` (default `false`) as runtime context. Update it when applicable comparison filters change, and supply full `slotsContents` plus `itemType` for comparison level limits. Emitted period comparisons, including event-only constraint proposals, contain only saved comparison settings and compact date-column references. Comparisons are supported for area, bar, combination, column and line charts, pivot tables and KPIs; chart categories using arrays, weekly levels or non-default datetime display modes are excluded.
|
|
125
|
+
|
|
118
126
|
### Item Options
|
|
119
127
|
|
|
120
128
|
Let users adjust how a chart looks and behaves (colors, labels, chart mode, legend position, ...).
|
|
@@ -126,7 +134,7 @@ Let users adjust how a chart looks and behaves (colors, labels, chart mode, lege
|
|
|
126
134
|
|
|
127
135
|
For an editor with undo, set `live-interactions` on `luzmo-item-option`, `luzmo-item-option-panel`, or `luzmo-interactive-viz-item`. You can also enable it directly on `luzmo-item-option-slider`, `luzmo-item-option-color-picker`, `luzmo-item-option-color-range`, and `luzmo-item-option-guidelines` (line colors). Drags and held keys then update live, without debounce. Gesture updates carry `interaction: { id }` on `luzmo-option-changed` for bare controls, `luzmo-options-changed` for item option/panel, and `luzmo-chart-changed` for interactive viz item.
|
|
128
136
|
|
|
129
|
-
All these entry points emit or forward `luzmo-option-interaction-start` (detail `{ id }`) and `-end` / `-cancel` (detail `{ id, changed }`) so you can record one history entry per gesture. A press that changes nothing emits no lifecycle events. Events through item option/panel include `optionKey`; bare controls omit it. Interactive viz item forwards the lifecycle with `optionKey`, plus the original `chart` and `generation` context. Call `endInteraction()` on the control or enclosing item option, panel, or interactive viz item before removing or rebinding it: it synchronously ends open gestures while keeping their current values. Live interactions are off by default; the default keeps the debounced behavior. The gesture boundaries come from Lucero; ACK requires `@luzmo/lucero` `^2.
|
|
137
|
+
All these entry points emit or forward `luzmo-option-interaction-start` (detail `{ id }`) and `-end` / `-cancel` (detail `{ id, changed }`) so you can record one history entry per gesture. A press that changes nothing emits no lifecycle events. Events through item option/panel include `optionKey`; bare controls omit it. Interactive viz item forwards the lifecycle with `optionKey`, plus the original `chart` and `generation` context. Call `endInteraction()` on the control or enclosing item option, panel, or interactive viz item before removing or rebinding it: it synchronously ends open gestures while keeping their current values. Live interactions are off by default; the default keeps the debounced behavior. The gesture boundaries come from Lucero; ACK requires `@luzmo/lucero` `^2.7.1` (at least 2.7.1 and below 3.0.0).
|
|
130
138
|
|
|
131
139
|
Individual option control editors are also exported for fully custom option UIs: `item-option-action-button-group`, `item-option-color-palette-picker`, `item-option-color-picker`, `item-option-color-range`, `item-option-guidelines`, `item-option-multi-language-field`, `item-option-number-field`, `item-option-picker`, `item-option-position-picker`, `item-option-positions-number-field`, `item-option-radio-button-group`, `item-option-slider`, `item-option-switch`, and `item-option-text-field`.
|
|
132
140
|
|
|
@@ -140,7 +148,7 @@ Individual option control editors are also exported for fully custom option UIs:
|
|
|
140
148
|
|
|
141
149
|
`<luzmo-filters>` defaults to the standard Luzmo filter format (`ItemFilterGroup[]` from `@luzmo/dashboard-contents-types`). Narrow `luzmo-filters-changed` on `event.detail.format` before forwarding: canonical groups are compatible with `luzmo-embed-viz-item`'s `filters` property and `luzmo-item-grid` items' `filters`; clean groups are for aligned hosts that accept `ItemFilterOutput` / `DashboardFilterOutput`. Group `condition` values are lowercase `and` / `or`. The published `FilterGroup` editor type uses the same casing, so typed consumers must migrate uppercase literals to `and` / `or`. At runtime uppercase `AND` / `OR` input is still accepted and normalized to lowercase on output.
|
|
142
150
|
|
|
143
|
-
`filters` accepts both halves of the public `ItemFilterOutput` / `DashboardFilterOutput` unions, so the result of an aligned `getFilters()` can be passed straight back in: canonical `ItemFilterGroup[]`, or clean clause groups that own a top-level `clause`, nest inline, and flatten each leaf onto its reference (including dashboard retrieval envelopes). Output stays canonical unless you set `format="clean"`, and `event.detail.format` names the half you received. A tree that cannot be represented cleanly — mixed `where`/`having` under `or`, a missing reference or value, an `in` / `not in` expression whose value is not an array, or a `between` expression whose range does not contain exactly two values — falls back to canonical output. A leaf that mixes encodings, or that matches neither a complete clean nor a complete canonical encoding, is rejected and the previous `filters` value is kept. Typed consumers of `FiltersChangedEventDetail` must narrow on `format` to keep `filters` as `ItemFilterGroup[]`. `transformFilters`, `reverseTransformFilters`, and `detectFiltersFormat` are exported from `@luzmo/analytics-components-kit/filters` for hosts that convert outside the editor. New groups and leaves receive a UUID (`id` on the group, `properties.id` on the leaf) that is kept on later edits. A newly chosen formula field defaults to `properties.type: 'having'`; an explicit `where` on a formula leaf is kept.
|
|
151
|
+
`filters` accepts both halves of the public `ItemFilterOutput` / `DashboardFilterOutput` unions, so the result of an aligned `getFilters()` can be passed straight back in: canonical `ItemFilterGroup[]`, or clean clause groups that own a top-level `clause`, nest inline, and flatten each leaf onto its reference (including dashboard retrieval envelopes). Output stays canonical unless you set `format="clean"`, and `event.detail.format` names the half you received. A tree that cannot be represented cleanly — mixed `where`/`having` under `or`, a missing reference or value, an `in` / `not in` expression whose value is not an array, or a `between` expression whose range does not contain exactly two values — falls back to canonical output. A leaf that mixes encodings, or that matches neither a complete clean nor a complete canonical encoding, is rejected and the previous `filters` value is kept. Typed consumers of `FiltersChangedEventDetail` must narrow on `format` to keep `filters` as `ItemFilterGroup[]`. `transformFilters`, `reverseTransformFilters`, and `detectFiltersFormat` are exported from `@luzmo/analytics-components-kit/filters` for hosts that convert outside the editor. New groups and leaves receive a UUID (`id` on the group, `properties.id` on the leaf) that is kept on later edits. A newly chosen formula field defaults to `properties.type: 'having'`; an explicit `where` on a formula leaf is kept. A canonical leaf whose reference operands use the deprecated `dataset_id`, `column_id` or `formula_id` keys is read as `datasetId`, `columnId` or `formulaId` on every operand (both sides of a field-to-field comparison too), and an edit emits the camelCase keys.
|
|
144
152
|
|
|
145
153
|
Named parameter-backed values are opt-in with `allow-parameters`. Supply the initial definitions through the `parameters` property. A parameter created in the editor is appended to `parameters` and announced with `luzmo-parameter-created`, so handle that event to persist it; creating does not apply it to a filter, since the user attaches it by picking it from the list. Listen for `luzmo-parameter-removed` when a definition is detached from one filter. Detaching does not delete the definition. The exported `FilterParameter`, `FilterParameterType`, and `FilterParameterEventDetail` types describe this API.
|
|
146
154
|
|
|
@@ -165,7 +173,9 @@ luzmo-filters {
|
|
|
165
173
|
| --------- | ------------------------------------------- | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------- |
|
|
166
174
|
| Item Grid | `@luzmo/analytics-components-kit/item-grid` | Interactive grid to arrange, resize, and manage multiple charts (renders internally) | [Docs](https://developer.luzmo.com/guide/ack--components--chart-rendering--luzmo-item-grid) |
|
|
167
175
|
|
|
168
|
-
|
|
176
|
+
`luzmo-interactive-viz-item` (`@luzmo/analytics-components-kit/interactive-viz-item`) renders one chart with inline actions, a feedback bar and a config panel, for example as an AI chat answer. `chartRenderOptions` (property only) is merged into the embedded chart's options for display settings and is never emitted nor saved. In the config panel, `hide-config-options` hides the options tab, and `slot-selects` (`multiple` by default, or `single`) and `slot-grows` are passed to the slot picker panel as `selects` and `grows`. `slotsConfiguration`, `customOptionsConfiguration` and `customTranslations` (property only) pass the configs of a chart type ACK has no definition for, such as a custom chart, to the config panel. `export(type)` takes a `VizItemExportType` and forwards to the embedded chart's export, waiting for the embedded renderer when it has not loaded yet. It resolves without a value when there is no chart, when the embed fails, or when the chart is cleared or the element removed first. CSS parts: `container`, `actions-bar`, `actions`, `chart-container`, `footer`, `config-panel`.
|
|
177
|
+
|
|
178
|
+
To render a bare chart without these, use `luzmo-embed-viz-item` from `@luzmo/embed` (not part of this kit); see [Rendering](#rendering).
|
|
169
179
|
|
|
170
180
|
## Usage: Drag & Drop Data Flow
|
|
171
181
|
|
|
@@ -347,7 +357,10 @@ import type {
|
|
|
347
357
|
ItemFilterOutput,
|
|
348
358
|
DashboardFilterOutput,
|
|
349
359
|
ItemOptionsChangedEventDetail,
|
|
350
|
-
ItemOptionInteractionEventDetail
|
|
360
|
+
ItemOptionInteractionEventDetail,
|
|
361
|
+
ChatMessage,
|
|
362
|
+
ChatMessageQuestion,
|
|
363
|
+
VizItemExportType
|
|
351
364
|
} from '@luzmo/analytics-components-kit/types';
|
|
352
365
|
```
|
|
353
366
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { booleanAttribute, ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, Input, OnChanges, output, Renderer2, SimpleChanges } from '@angular/core';
|
|
2
2
|
import '@luzmo/analytics-components-kit/add-to-dashboard';
|
|
3
|
-
import type { LuzmoAddToDashboard as LuzmoAddToDashboardHostElement, AddToDashboardChartAddFailedEventDetail, AddToDashboardChartAddedEventDetail } from '@luzmo/analytics-components-kit/add-to-dashboard';
|
|
3
|
+
import type { LuzmoAddToDashboard as LuzmoAddToDashboardHostElement, AddToDashboardChartAddFailedEventDetail, AddToDashboardChartAddedEventDetail, DashboardActions, FlexChartConfig } from '@luzmo/analytics-components-kit/add-to-dashboard';
|
|
4
4
|
export type { AddToDashboardChartAddFailedEventDetail, AddToDashboardChartAddedEventDetail, AddToDashboardSettings, BuiltInDashboardActionsConfig, DashboardActionCallOptions, DashboardActions, DashboardListPage, DashboardListRequest, DashboardOption, FlexChartConfig } from '@luzmo/analytics-components-kit/add-to-dashboard';
|
|
5
5
|
import type { Placement } from '@luzmo/lucero';
|
|
6
6
|
|
|
@@ -26,9 +26,13 @@ export class LuzmoAddToDashboard implements OnChanges {
|
|
|
26
26
|
return this.host;
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
-
/**
|
|
30
|
-
@Input({ alias: '
|
|
31
|
-
|
|
29
|
+
/** Chart to save; `options.theme` is removed before it reaches the adapter. */
|
|
30
|
+
@Input({ alias: 'chart' })
|
|
31
|
+
chart?: FlexChartConfig | null;
|
|
32
|
+
|
|
33
|
+
/** Host data operations. When unset, the built-in adapter on the auth properties is used. */
|
|
34
|
+
@Input({ alias: 'dashboardActions' })
|
|
35
|
+
dashboardActions?: DashboardActions | null;
|
|
32
36
|
|
|
33
37
|
/** Auth key for the built-in adapter. */
|
|
34
38
|
@Input({ alias: 'authKey' })
|
|
@@ -50,6 +54,10 @@ export class LuzmoAddToDashboard implements OnChanges {
|
|
|
50
54
|
@Input({ alias: 'disabled', transform: booleanAttribute })
|
|
51
55
|
disabled?: boolean;
|
|
52
56
|
|
|
57
|
+
/** The language for UI labels. Supported values: 'en', 'nl', 'fr', 'de', 'es' */
|
|
58
|
+
@Input({ alias: 'language' })
|
|
59
|
+
language?: string;
|
|
60
|
+
|
|
53
61
|
/** The size of the element */
|
|
54
62
|
@Input({ alias: 'size' })
|
|
55
63
|
size?: 's' | 'm' | 'l' | 'xl';
|
|
@@ -72,8 +80,11 @@ export class LuzmoAddToDashboard implements OnChanges {
|
|
|
72
80
|
ngOnChanges(changes: SimpleChanges): void {
|
|
73
81
|
for (const key of Object.keys(changes)) {
|
|
74
82
|
switch (key) {
|
|
75
|
-
case '
|
|
76
|
-
this.setHostProperty('
|
|
83
|
+
case 'chart':
|
|
84
|
+
this.setHostProperty('chart', changes['chart'].currentValue);
|
|
85
|
+
break;
|
|
86
|
+
case 'dashboardActions':
|
|
87
|
+
this.setHostProperty('dashboardActions', changes['dashboardActions'].currentValue);
|
|
77
88
|
break;
|
|
78
89
|
case 'authKey':
|
|
79
90
|
this.setHostProperty('authKey', changes['authKey'].currentValue);
|
|
@@ -90,6 +101,9 @@ export class LuzmoAddToDashboard implements OnChanges {
|
|
|
90
101
|
case 'disabled':
|
|
91
102
|
this.setHostProperty('disabled', changes['disabled'].currentValue);
|
|
92
103
|
break;
|
|
104
|
+
case 'language':
|
|
105
|
+
this.setHostProperty('language', changes['language'].currentValue);
|
|
106
|
+
break;
|
|
93
107
|
case 'size':
|
|
94
108
|
this.setHostProperty('size', changes['size'].currentValue);
|
|
95
109
|
break;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { booleanAttribute, ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, Input, OnChanges, output, Renderer2, SimpleChanges } from '@angular/core';
|
|
2
2
|
import '@luzmo/analytics-components-kit/ai-chat';
|
|
3
3
|
import type { LuzmoAiChatEmptyState as LuzmoAiChatEmptyStateHostElement, AiChatEmptyStateSuggestion, AiChatEmptyStateSuggestionSelectedDetail } from '@luzmo/analytics-components-kit/ai-chat';
|
|
4
|
-
export type { AgentStreamDefinition, AiChatAgentConfig, AiChatCompleteEvent, AiChatConversationIdChangedEventDetail, AiChatDatasetsChangedEventDetail, AiChatEmptyStateSuggestion, AiChatEmptyStateSuggestionSelectedDetail, AiChatMessageSentEventDetail, AiChatRecognizedStepType, AiChatSessionBuildContext, AiChatSessionCallbacks, AiChatSessionConfig, AiChatSessionControllerOptions, AiChatSessionRestoreParams, AiChatSessionRestoreResult, AiChatSessionSeed, AiChatSessionState, AiChatSessionSubmitParams, AiChatStepBase, AiChatStepEvent, AiDictationCreateBody, AiDictationProperties, AiPromptCreateBody, AiPromptDeleteBody, AssistantMessageAction, AssistantMessageActionConfirmVariant, AssistantMessageActionEventDetail, AssistantMessageFeedbackEventDetail, AssistantMessageFeedbackRating, BuildAiDictationRequestOptions, ChatMessageElicitation, LuzmoPromptSubmittedEventDetail, LuzmoRestoreRequestedEventDetail, ProgressTreeNode, PromptBoxAttachment, PromptBoxFileIcons, RecognizedStepEvent, StreamAiDictationOptions, StreamHandlerCallbacks, StreamHandlerContext, StreamHandlerState, StreamingRequestOptions, StreamingResponse, UnknownStepEvent, UploadAiPromptImagesOptions } from '@luzmo/analytics-components-kit/ai-chat';
|
|
4
|
+
export type { AgentStreamDefinition, AiChatAgentConfig, AiChatCompleteEvent, AiChatConversationIdChangedEventDetail, AiChatDatasetsChangedEventDetail, AiChatEmptyStateSuggestion, AiChatEmptyStateSuggestionSelectedDetail, AiChatMessageSentEventDetail, AiChatRecognizedStepType, AiChatSessionBuildContext, AiChatSessionCallbacks, AiChatSessionConfig, AiChatSessionControllerOptions, AiChatSessionRestoreParams, AiChatSessionRestoreResult, AiChatSessionSeed, AiChatSessionState, AiChatSessionSubmitParams, AiChatStepBase, AiChatStepEvent, AiDictationCreateBody, AiDictationProperties, AiPromptCreateBody, AiPromptDeleteBody, AssistantMessageAction, AssistantMessageActionConfirmVariant, AssistantMessageActionEventDetail, AssistantMessageFeedbackEventDetail, AssistantMessageFeedbackRating, BuildAiDictationRequestOptions, ChatChoiceOption, ChatChoiceQuestion, ChatMessageElicitation, ChatMessageQuestion, ChatQuestionAnswers, ChatQuestionResponse, LuzmoPromptSubmittedEventDetail, LuzmoRestoreRequestedEventDetail, ProgressTreeNode, PromptBoxAttachment, PromptBoxFileIcons, RecognizedStepEvent, StreamAiDictationOptions, StreamHandlerCallbacks, StreamHandlerContext, StreamHandlerState, StreamingRequestOptions, StreamingResponse, UnknownStepEvent, UploadAiPromptImagesOptions } from '@luzmo/analytics-components-kit/ai-chat';
|
|
5
5
|
|
|
6
6
|
@Component({
|
|
7
7
|
selector: 'luzmo-ai-chat-empty-state',
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { booleanAttribute, ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, Input, OnChanges, output, Renderer2, SimpleChanges } from '@angular/core';
|
|
2
2
|
import '@luzmo/analytics-components-kit/ai-chat';
|
|
3
3
|
import type { LuzmoAiChat as LuzmoAiChatHostElement, AiChatAgentConfig, AiChatCompleteEvent, AiChatConversationIdChangedEventDetail, AiChatDatasetsChangedEventDetail, AiChatEmptyStateSuggestion, AiChatMessageSentEventDetail, AiChatSession, AiChatStepEvent, AssistantMessageActionEventDetail, AssistantMessageFeedbackEventDetail } from '@luzmo/analytics-components-kit/ai-chat';
|
|
4
|
-
export type { AgentStreamDefinition, AiChatAgentConfig, AiChatCompleteEvent, AiChatConversationIdChangedEventDetail, AiChatDatasetsChangedEventDetail, AiChatEmptyStateSuggestion, AiChatEmptyStateSuggestionSelectedDetail, AiChatMessageSentEventDetail, AiChatRecognizedStepType, AiChatSessionBuildContext, AiChatSessionCallbacks, AiChatSessionConfig, AiChatSessionControllerOptions, AiChatSessionRestoreParams, AiChatSessionRestoreResult, AiChatSessionSeed, AiChatSessionState, AiChatSessionSubmitParams, AiChatStepBase, AiChatStepEvent, AiDictationCreateBody, AiDictationProperties, AiPromptCreateBody, AiPromptDeleteBody, AssistantMessageAction, AssistantMessageActionConfirmVariant, AssistantMessageActionEventDetail, AssistantMessageFeedbackEventDetail, AssistantMessageFeedbackRating, BuildAiDictationRequestOptions, ChatMessageElicitation, LuzmoPromptSubmittedEventDetail, LuzmoRestoreRequestedEventDetail, ProgressTreeNode, PromptBoxAttachment, PromptBoxFileIcons, RecognizedStepEvent, StreamAiDictationOptions, StreamHandlerCallbacks, StreamHandlerContext, StreamHandlerState, StreamingRequestOptions, StreamingResponse, UnknownStepEvent, UploadAiPromptImagesOptions } from '@luzmo/analytics-components-kit/ai-chat';
|
|
5
|
-
import type { AiPromptAgent, AiPromptCustomItemInput, AiPromptItemTask, AiPromptScreenMode, DashboardStatePayload } from '@luzmo/analytics-components-kit/ai-chat';
|
|
4
|
+
export type { AgentStreamDefinition, AiChatAgentConfig, AiChatCompleteEvent, AiChatConversationIdChangedEventDetail, AiChatDatasetsChangedEventDetail, AiChatEmptyStateSuggestion, AiChatEmptyStateSuggestionSelectedDetail, AiChatMessageSentEventDetail, AiChatRecognizedStepType, AiChatSessionBuildContext, AiChatSessionCallbacks, AiChatSessionConfig, AiChatSessionControllerOptions, AiChatSessionRestoreParams, AiChatSessionRestoreResult, AiChatSessionSeed, AiChatSessionState, AiChatSessionSubmitParams, AiChatStepBase, AiChatStepEvent, AiDictationCreateBody, AiDictationProperties, AiPromptCreateBody, AiPromptDeleteBody, AssistantMessageAction, AssistantMessageActionConfirmVariant, AssistantMessageActionEventDetail, AssistantMessageFeedbackEventDetail, AssistantMessageFeedbackRating, BuildAiDictationRequestOptions, ChatChoiceOption, ChatChoiceQuestion, ChatMessageElicitation, ChatMessageQuestion, ChatQuestionAnswers, ChatQuestionResponse, LuzmoPromptSubmittedEventDetail, LuzmoRestoreRequestedEventDetail, ProgressTreeNode, PromptBoxAttachment, PromptBoxFileIcons, RecognizedStepEvent, StreamAiDictationOptions, StreamHandlerCallbacks, StreamHandlerContext, StreamHandlerState, StreamingRequestOptions, StreamingResponse, UnknownStepEvent, UploadAiPromptImagesOptions } from '@luzmo/analytics-components-kit/ai-chat';
|
|
5
|
+
import type { AiChatInteraction, AiPromptAgent, AiPromptCustomItemInput, AiPromptItemTask, AiPromptScreenMode, DashboardStatePayload } from '@luzmo/analytics-components-kit/ai-chat';
|
|
6
6
|
import type { ChatMessage, Dataset, LuzmoChart } from '@luzmo/analytics-components-kit/types';
|
|
7
7
|
|
|
8
8
|
@Component({
|
|
@@ -143,6 +143,10 @@ export class LuzmoAiChat implements OnChanges {
|
|
|
143
143
|
@Input({ alias: 'modelPreference' })
|
|
144
144
|
modelPreference?: 'performance' | 'quality';
|
|
145
145
|
|
|
146
|
+
/** Boxes the agent may show, declared on every request as `client_capabilities`. Defaults to none. Pass `['question']` once the aiprompt API accepts `client_capabilities`. Ignored with a host `chatSession`. */
|
|
147
|
+
@Input({ alias: 'interactions' })
|
|
148
|
+
interactions?: AiChatInteraction[];
|
|
149
|
+
|
|
146
150
|
/** Host-owned AiChatSession. The component subscribes and renders; does not abort on disconnect. */
|
|
147
151
|
@Input({ alias: 'chatSession' })
|
|
148
152
|
chatSession?: AiChatSession | null;
|
|
@@ -217,7 +221,7 @@ export class LuzmoAiChat implements OnChanges {
|
|
|
217
221
|
/** Fired when the selected datasets change */
|
|
218
222
|
readonly luzmoDatasetsChanged = output<CustomEvent<AiChatDatasetsChangedEventDetail>>({ alias: 'luzmoDatasetsChanged' });
|
|
219
223
|
|
|
220
|
-
/** Fired for every incremental, kit-assembled event during a streamed response (decision, text, progress, dashboard-title/layout/item, chart, custom-item, elicitation, interrupt, plus forward-by-default unrecognized chunks). Use `isRecognizedStep` to narrow. */
|
|
224
|
+
/** Fired for every incremental, kit-assembled event during a streamed response (decision, text, progress, dashboard-title/layout/item, chart, custom-item, elicitation, question, interrupt, plus forward-by-default unrecognized chunks). Use `isRecognizedStep` to narrow. */
|
|
221
225
|
readonly luzmoStep = output<CustomEvent<AiChatStepEvent>>({ alias: 'luzmoStep' });
|
|
222
226
|
|
|
223
227
|
/** Fired exactly once per response with the authoritative final result (dashboard/chart/name/customItem) or an `error`. */
|
|
@@ -334,6 +338,9 @@ export class LuzmoAiChat implements OnChanges {
|
|
|
334
338
|
case 'modelPreference':
|
|
335
339
|
this.setHostProperty('modelPreference', changes['modelPreference'].currentValue);
|
|
336
340
|
break;
|
|
341
|
+
case 'interactions':
|
|
342
|
+
this.setHostProperty('interactions', changes['interactions'].currentValue);
|
|
343
|
+
break;
|
|
337
344
|
case 'chatSession':
|
|
338
345
|
this.setHostProperty('chatSession', changes['chatSession'].currentValue);
|
|
339
346
|
break;
|
|
@@ -220,6 +220,11 @@ export class LuzmoDataFieldsSelect implements OnChanges {
|
|
|
220
220
|
})
|
|
221
221
|
);
|
|
222
222
|
}
|
|
223
|
+
|
|
224
|
+
/** Focuses the select trigger. */
|
|
225
|
+
focus(options?: FocusOptions): void {
|
|
226
|
+
return (this.host as LuzmoDataFieldsSelectHostElement).focus(options);
|
|
227
|
+
}
|
|
223
228
|
}
|
|
224
229
|
|
|
225
230
|
/** The underlying custom element type for LuzmoDataFieldsSelect */
|
|
@@ -3,7 +3,7 @@ import '@luzmo/analytics-components-kit/display-settings-period-over-period';
|
|
|
3
3
|
import type { LuzmoDisplaySettingsPeriodOverPeriod as LuzmoDisplaySettingsPeriodOverPeriodHostElement, DisplaySettingsSlotContentChangedEventDetail } from '@luzmo/analytics-components-kit/display-settings-period-over-period';
|
|
4
4
|
export type { DisplaySettingsSlotContentChangedEventDetail } from '@luzmo/analytics-components-kit/display-settings-period-over-period';
|
|
5
5
|
import type { PeriodOverPeriodCondition } from '@luzmo/analytics-components-kit/types';
|
|
6
|
-
import type { Column } from '@luzmo/dashboard-contents-types';
|
|
6
|
+
import type { Column, VizItemSlot, VizItemType } from '@luzmo/dashboard-contents-types';
|
|
7
7
|
|
|
8
8
|
@Component({
|
|
9
9
|
selector: 'luzmo-display-settings-period-over-period',
|
|
@@ -27,19 +27,31 @@ export class LuzmoDisplaySettingsPeriodOverPeriod implements OnChanges {
|
|
|
27
27
|
return this.host;
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
+
/** Full saved slots for deriving comparison levels and implicit datetime offsets. */
|
|
31
|
+
@Input({ alias: 'slotsContents' })
|
|
32
|
+
slotsContents?: VizItemSlot[];
|
|
33
|
+
|
|
34
|
+
/** Visualization type used to interpret comparison slot context. */
|
|
35
|
+
@Input({ alias: 'itemType' })
|
|
36
|
+
itemType?: VizItemType;
|
|
37
|
+
|
|
38
|
+
/** Whether a comparison filter currently applies to this item. Runtime only; never saved in slot contents. */
|
|
39
|
+
@Input({ alias: 'hasConnectedComparisonFilter', transform: booleanAttribute })
|
|
40
|
+
hasConnectedComparisonFilter?: boolean;
|
|
41
|
+
|
|
30
42
|
/** The slotContent that is passed to the settings */
|
|
31
43
|
@Input({ alias: 'slotContent' })
|
|
32
44
|
slotContent?: any;
|
|
33
45
|
|
|
34
|
-
/**
|
|
46
|
+
/** Optional UI variant supplied by a parent. When absent, derive it from runtime slot and filter context. */
|
|
35
47
|
@Input({ alias: 'periodOverPeriodType' })
|
|
36
48
|
periodOverPeriodUiType?: PeriodOverPeriodCondition;
|
|
37
49
|
|
|
38
|
-
/** Offer the "Periods" offset when there is no datetime category (an offset date column is needed). The item then shifts by the length of the period selected by its date filters. */
|
|
50
|
+
/** Offer the "Periods" offset when there is no datetime category (an offset date column is needed). The item then shifts by the length of the period selected by its date filters. Defaults to true for KPIs, false otherwise. */
|
|
39
51
|
@Input({ alias: 'allowPeriodsWithoutDatetimeColumn', transform: booleanAttribute })
|
|
40
52
|
allowPeriodsWithoutDatetimeColumn?: boolean;
|
|
41
53
|
|
|
42
|
-
/** Hide the "Past value" comparison type
|
|
54
|
+
/** Hide the "Past value" comparison type. Defaults to true for KPIs, false otherwise; explicit booleans override the default. */
|
|
43
55
|
@Input({ alias: 'hidePastValue', transform: booleanAttribute })
|
|
44
56
|
hidePastValue?: boolean;
|
|
45
57
|
|
|
@@ -70,6 +82,15 @@ export class LuzmoDisplaySettingsPeriodOverPeriod implements OnChanges {
|
|
|
70
82
|
ngOnChanges(changes: SimpleChanges): void {
|
|
71
83
|
for (const key of Object.keys(changes)) {
|
|
72
84
|
switch (key) {
|
|
85
|
+
case 'slotsContents':
|
|
86
|
+
this.setHostProperty('slotsContents', changes['slotsContents'].currentValue);
|
|
87
|
+
break;
|
|
88
|
+
case 'itemType':
|
|
89
|
+
this.setHostProperty('itemType', changes['itemType'].currentValue);
|
|
90
|
+
break;
|
|
91
|
+
case 'hasConnectedComparisonFilter':
|
|
92
|
+
this.setHostProperty('hasConnectedComparisonFilter', changes['hasConnectedComparisonFilter'].currentValue);
|
|
93
|
+
break;
|
|
73
94
|
case 'slotContent':
|
|
74
95
|
this.setHostProperty('slotContent', changes['slotContent'].currentValue);
|
|
75
96
|
break;
|
|
@@ -5,7 +5,7 @@ export type { DisplaySettingsRemoveSlotContentEventDetail, DisplaySettingsSlotCo
|
|
|
5
5
|
import type { DatasetDataFields } from '@luzmo/analytics-components-kit/data-field-panel';
|
|
6
6
|
import type { MeasureColumnsItem } from '@luzmo/analytics-components-kit/slot-menu';
|
|
7
7
|
import type { PeriodOverPeriodCondition, SlotContent } from '@luzmo/analytics-components-kit/types';
|
|
8
|
-
import type { SlotName } from '@luzmo/dashboard-contents-types';
|
|
8
|
+
import type { SlotName, VizItemSlot, VizItemType } from '@luzmo/dashboard-contents-types';
|
|
9
9
|
|
|
10
10
|
@Component({
|
|
11
11
|
selector: 'luzmo-display-settings',
|
|
@@ -29,6 +29,18 @@ export class LuzmoDisplaySettings implements OnChanges {
|
|
|
29
29
|
return this.host;
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
+
/** Full saved slots for deriving comparison levels and implicit datetime offsets. */
|
|
33
|
+
@Input({ alias: 'slotsContents' })
|
|
34
|
+
slotsContents?: VizItemSlot[];
|
|
35
|
+
|
|
36
|
+
/** Visualization type used to interpret comparison slot context. */
|
|
37
|
+
@Input({ alias: 'itemType' })
|
|
38
|
+
itemType?: VizItemType;
|
|
39
|
+
|
|
40
|
+
/** Whether a comparison filter currently applies to this item. Runtime only; never saved in slot contents. */
|
|
41
|
+
@Input({ alias: 'hasConnectedComparisonFilter', transform: booleanAttribute })
|
|
42
|
+
hasConnectedComparisonFilter?: boolean;
|
|
43
|
+
|
|
32
44
|
/** The language of the settings interface */
|
|
33
45
|
@Input({ alias: 'language' })
|
|
34
46
|
language?: string;
|
|
@@ -61,7 +73,7 @@ export class LuzmoDisplaySettings implements OnChanges {
|
|
|
61
73
|
@Input({ alias: 'isCumulativeSumEnabled', transform: booleanAttribute })
|
|
62
74
|
isCumulativeSumEnabled?: boolean;
|
|
63
75
|
|
|
64
|
-
/**
|
|
76
|
+
/** Optional comparison UI override for standalone use; null hides comparisons. Otherwise derived from slotsContents, itemType, filters, and datasetsDataFields. */
|
|
65
77
|
@Input({ alias: 'periodOverPeriodUiType' })
|
|
66
78
|
periodOverPeriodUiType?: PeriodOverPeriodCondition | null;
|
|
67
79
|
|
|
@@ -81,7 +93,7 @@ export class LuzmoDisplaySettings implements OnChanges {
|
|
|
81
93
|
@Input({ alias: 'slotContent' })
|
|
82
94
|
slotContent?: SlotContent;
|
|
83
95
|
|
|
84
|
-
/** Datasets used
|
|
96
|
+
/** Datasets used for calculation previews and standalone comparison offset date choices (columns or dataFields). */
|
|
85
97
|
@Input({ alias: 'datasetsDataFields' })
|
|
86
98
|
datasetsDataFields?: DatasetDataFields[];
|
|
87
99
|
|
|
@@ -126,6 +138,15 @@ export class LuzmoDisplaySettings implements OnChanges {
|
|
|
126
138
|
ngOnChanges(changes: SimpleChanges): void {
|
|
127
139
|
for (const key of Object.keys(changes)) {
|
|
128
140
|
switch (key) {
|
|
141
|
+
case 'slotsContents':
|
|
142
|
+
this.setHostProperty('slotsContents', changes['slotsContents'].currentValue);
|
|
143
|
+
break;
|
|
144
|
+
case 'itemType':
|
|
145
|
+
this.setHostProperty('itemType', changes['itemType'].currentValue);
|
|
146
|
+
break;
|
|
147
|
+
case 'hasConnectedComparisonFilter':
|
|
148
|
+
this.setHostProperty('hasConnectedComparisonFilter', changes['hasConnectedComparisonFilter'].currentValue);
|
|
149
|
+
break;
|
|
129
150
|
case 'language':
|
|
130
151
|
this.setHostProperty('language', changes['language'].currentValue);
|
|
131
152
|
break;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { booleanAttribute, ChangeDetectionStrategy, Component, DestroyRef, ElementRef, inject, Input, OnChanges, output, Renderer2, SimpleChanges } from '@angular/core';
|
|
2
2
|
import '@luzmo/analytics-components-kit/interactive-viz-item';
|
|
3
|
-
import type { LuzmoInteractiveVizItem as LuzmoInteractiveVizItemHostElement, AddToDashboardChartAddFailedEventDetail, AddToDashboardChartAddedEventDetail, ChartFeedback, FlexChartConfig, InteractiveVizItemChartChangedEventDetail, InteractiveVizItemChartOptionsChangedEventDetail, InteractiveVizItemFeedbackChangedEventDetail, InteractiveVizItemInteractionEventDetail } from '@luzmo/analytics-components-kit/interactive-viz-item';
|
|
3
|
+
import type { LuzmoInteractiveVizItem as LuzmoInteractiveVizItemHostElement, AddToDashboardChartAddFailedEventDetail, AddToDashboardChartAddedEventDetail, ChartFeedback, DashboardActions, FlexChartConfig, InteractiveVizItemChartChangedEventDetail, InteractiveVizItemChartOptionsChangedEventDetail, InteractiveVizItemFeedbackChangedEventDetail, InteractiveVizItemInteractionEventDetail } from '@luzmo/analytics-components-kit/interactive-viz-item';
|
|
4
4
|
export type { AddToDashboardChartAddFailedEventDetail, AddToDashboardChartAddedEventDetail, ChartActionDescriptor, ChartActionType, ChartFeedback, ChartFeedbackRating, ChartMutationRequest, ChartOption, DashboardActions, FlexChartConfig, InlineData, InteractiveVizItemChartChangedEventDetail, InteractiveVizItemChartOptionsChangedEventDetail, InteractiveVizItemFeedbackChangedEventDetail, InteractiveVizItemInteractionEventDetail, ItemOptionInteraction, ItemOptionInteractionEventDetail, NormalizedChartConfig, Ranking, Sort } from '@luzmo/analytics-components-kit/interactive-viz-item';
|
|
5
|
+
import type { OptionsConfig, SlotConfig, TranslationOverrides, TranslationsFile, VizItemExportType } from '@luzmo/dashboard-contents-types';
|
|
5
6
|
import type { LuzmoEmbedVizItem } from '@luzmo/embed';
|
|
6
7
|
|
|
7
8
|
@Component({
|
|
@@ -16,7 +17,10 @@ import type { LuzmoEmbedVizItem } from '@luzmo/embed';
|
|
|
16
17
|
*
|
|
17
18
|
* @slot chart-actions-extra - Host-injected actions rendered at the end of the inline actions bar (e.g. copy-to-dashboard).
|
|
18
19
|
* @csspart container - The viz item container.
|
|
20
|
+
* @csspart actions-bar - The bar above the chart holding the inline actions, the `chart-actions-extra` slot and add to dashboard.
|
|
21
|
+
* @csspart actions - The inline chart actions (ranking, display mode) inside the actions bar.
|
|
19
22
|
* @csspart chart-container - The embedded chart wrapper.
|
|
23
|
+
* @csspart footer - The row below the chart holding the feedback buttons and the config-panel toggle.
|
|
20
24
|
* @csspart config-panel - The expandable configuration panel.
|
|
21
25
|
*/
|
|
22
26
|
export class LuzmoInteractiveVizItem implements OnChanges {
|
|
@@ -31,18 +35,6 @@ export class LuzmoInteractiveVizItem implements OnChanges {
|
|
|
31
35
|
return this.host;
|
|
32
36
|
}
|
|
33
37
|
|
|
34
|
-
/** The language for UI labels. Supported values: 'en', 'nl', 'fr', 'de', 'es' */
|
|
35
|
-
@Input({ alias: 'language' })
|
|
36
|
-
language?: string;
|
|
37
|
-
|
|
38
|
-
/** When present, renders `luzmo-add-to-dashboard` in the actions bar. */
|
|
39
|
-
@Input({ alias: 'addToDashboard', transform: booleanAttribute })
|
|
40
|
-
addToDashboard?: boolean;
|
|
41
|
-
|
|
42
|
-
/** Click-to-filter on the embedded chart, forwarded as its `canFilter`. The `can-filter` attribute means `'all'`; unset keeps it off. */
|
|
43
|
-
@Input({ alias: 'canFilter' })
|
|
44
|
-
canFilter?: LuzmoEmbedVizItem['canFilter'];
|
|
45
|
-
|
|
46
38
|
/** Loose chart config (type, options, slots, filters, inlineData); slots may use the keyed-object form. */
|
|
47
39
|
@Input({ alias: 'chart' })
|
|
48
40
|
chart?: FlexChartConfig | null;
|
|
@@ -87,14 +79,58 @@ export class LuzmoInteractiveVizItem implements OnChanges {
|
|
|
87
79
|
@Input({ alias: 'hideConfigPanel', transform: booleanAttribute })
|
|
88
80
|
hideConfigPanel?: boolean;
|
|
89
81
|
|
|
82
|
+
/** When present, hides the options tab of the config panel and keeps the data tab. */
|
|
83
|
+
@Input({ alias: 'hideConfigOptions', transform: booleanAttribute })
|
|
84
|
+
hideConfigOptions?: boolean;
|
|
85
|
+
|
|
86
|
+
/** Whether each slot in the config panel takes one field or several, forwarded to `luzmo-item-slot-picker-panel` as `selects`. */
|
|
87
|
+
@Input({ alias: 'slotSelects' })
|
|
88
|
+
slotSelects?: 'single' | 'multiple';
|
|
89
|
+
|
|
90
|
+
/** When present, the slot pickers in the config panel grow to full width, forwarded as `grows`. */
|
|
91
|
+
@Input({ alias: 'slotGrows', transform: booleanAttribute })
|
|
92
|
+
slotGrows?: boolean;
|
|
93
|
+
|
|
94
|
+
/** Slots configuration for the config panel, for a chart type ACK has no definition for (e.g. a custom chart). */
|
|
95
|
+
@Input({ alias: 'slotsConfiguration' })
|
|
96
|
+
slotsConfiguration?: SlotConfig[] | null;
|
|
97
|
+
|
|
98
|
+
/** Options configuration for the config panel, for a chart type ACK has no definition for (e.g. a custom chart). */
|
|
99
|
+
@Input({ alias: 'customOptionsConfiguration' })
|
|
100
|
+
customOptionsConfiguration?: OptionsConfig | null;
|
|
101
|
+
|
|
102
|
+
/** Option label translations that go with `customOptionsConfiguration`. */
|
|
103
|
+
@Input({ alias: 'customTranslations' })
|
|
104
|
+
customTranslations?: TranslationOverrides | TranslationsFile | null;
|
|
105
|
+
|
|
106
|
+
/** Options applied to the embedded chart only, merged one level deep over `chart.options` (e.g. `{ display: { title: false } }`). They are never emitted in chart events nor saved by add to dashboard. */
|
|
107
|
+
@Input({ alias: 'chartRenderOptions' })
|
|
108
|
+
chartRenderOptions?: FlexChartConfig['options'] | null;
|
|
109
|
+
|
|
110
|
+
/** When present, renders `luzmo-add-to-dashboard` in the actions bar. */
|
|
111
|
+
@Input({ alias: 'addToDashboard', transform: booleanAttribute })
|
|
112
|
+
addToDashboard?: boolean;
|
|
113
|
+
|
|
114
|
+
/** Host data operations for add to dashboard. When unset, the built-in adapter on the auth properties is used. */
|
|
115
|
+
@Input({ alias: 'dashboardActions' })
|
|
116
|
+
dashboardActions?: DashboardActions | null;
|
|
117
|
+
|
|
90
118
|
/** When present, chart changes are only emitted and the host sets `chart`; otherwise they are applied here and still emitted. */
|
|
91
119
|
@Input({ alias: 'controlled', transform: booleanAttribute })
|
|
92
120
|
controlled?: boolean;
|
|
93
121
|
|
|
122
|
+
/** Click-to-filter on the embedded chart, forwarded as its `canFilter`. The `can-filter` attribute means `'all'`; unset keeps it off. */
|
|
123
|
+
@Input({ alias: 'canFilter' })
|
|
124
|
+
canFilter?: LuzmoEmbedVizItem['canFilter'];
|
|
125
|
+
|
|
94
126
|
/** Applies and emits option changes live while a control is dragged or a key is held, without debounce, and forwards `luzmo-option-interaction-*` events. Off by default. */
|
|
95
127
|
@Input({ alias: 'liveInteractions', transform: booleanAttribute })
|
|
96
128
|
liveInteractions?: boolean;
|
|
97
129
|
|
|
130
|
+
/** The language for UI labels. Supported values: 'en', 'nl', 'fr', 'de', 'es' */
|
|
131
|
+
@Input({ alias: 'language' })
|
|
132
|
+
language?: string;
|
|
133
|
+
|
|
98
134
|
/** The size of the element */
|
|
99
135
|
@Input({ alias: 'size' })
|
|
100
136
|
size?: 's' | 'm' | 'l' | 'xl';
|
|
@@ -135,15 +171,6 @@ export class LuzmoInteractiveVizItem implements OnChanges {
|
|
|
135
171
|
ngOnChanges(changes: SimpleChanges): void {
|
|
136
172
|
for (const key of Object.keys(changes)) {
|
|
137
173
|
switch (key) {
|
|
138
|
-
case 'language':
|
|
139
|
-
this.setHostProperty('language', changes['language'].currentValue);
|
|
140
|
-
break;
|
|
141
|
-
case 'addToDashboard':
|
|
142
|
-
this.setHostProperty('addToDashboard', changes['addToDashboard'].currentValue);
|
|
143
|
-
break;
|
|
144
|
-
case 'canFilter':
|
|
145
|
-
this.setHostProperty('canFilter', changes['canFilter'].currentValue);
|
|
146
|
-
break;
|
|
147
174
|
case 'chart':
|
|
148
175
|
this.setHostProperty('chart', changes['chart'].currentValue);
|
|
149
176
|
break;
|
|
@@ -177,12 +204,45 @@ export class LuzmoInteractiveVizItem implements OnChanges {
|
|
|
177
204
|
case 'hideConfigPanel':
|
|
178
205
|
this.setHostProperty('hideConfigPanel', changes['hideConfigPanel'].currentValue);
|
|
179
206
|
break;
|
|
207
|
+
case 'hideConfigOptions':
|
|
208
|
+
this.setHostProperty('hideConfigOptions', changes['hideConfigOptions'].currentValue);
|
|
209
|
+
break;
|
|
210
|
+
case 'slotSelects':
|
|
211
|
+
this.setHostProperty('slotSelects', changes['slotSelects'].currentValue);
|
|
212
|
+
break;
|
|
213
|
+
case 'slotGrows':
|
|
214
|
+
this.setHostProperty('slotGrows', changes['slotGrows'].currentValue);
|
|
215
|
+
break;
|
|
216
|
+
case 'slotsConfiguration':
|
|
217
|
+
this.setHostProperty('slotsConfiguration', changes['slotsConfiguration'].currentValue);
|
|
218
|
+
break;
|
|
219
|
+
case 'customOptionsConfiguration':
|
|
220
|
+
this.setHostProperty('customOptionsConfiguration', changes['customOptionsConfiguration'].currentValue);
|
|
221
|
+
break;
|
|
222
|
+
case 'customTranslations':
|
|
223
|
+
this.setHostProperty('customTranslations', changes['customTranslations'].currentValue);
|
|
224
|
+
break;
|
|
225
|
+
case 'chartRenderOptions':
|
|
226
|
+
this.setHostProperty('chartRenderOptions', changes['chartRenderOptions'].currentValue);
|
|
227
|
+
break;
|
|
228
|
+
case 'addToDashboard':
|
|
229
|
+
this.setHostProperty('addToDashboard', changes['addToDashboard'].currentValue);
|
|
230
|
+
break;
|
|
231
|
+
case 'dashboardActions':
|
|
232
|
+
this.setHostProperty('dashboardActions', changes['dashboardActions'].currentValue);
|
|
233
|
+
break;
|
|
180
234
|
case 'controlled':
|
|
181
235
|
this.setHostProperty('controlled', changes['controlled'].currentValue);
|
|
182
236
|
break;
|
|
237
|
+
case 'canFilter':
|
|
238
|
+
this.setHostProperty('canFilter', changes['canFilter'].currentValue);
|
|
239
|
+
break;
|
|
183
240
|
case 'liveInteractions':
|
|
184
241
|
this.setHostProperty('liveInteractions', changes['liveInteractions'].currentValue);
|
|
185
242
|
break;
|
|
243
|
+
case 'language':
|
|
244
|
+
this.setHostProperty('language', changes['language'].currentValue);
|
|
245
|
+
break;
|
|
186
246
|
case 'size':
|
|
187
247
|
this.setHostProperty('size', changes['size'].currentValue);
|
|
188
248
|
break;
|
|
@@ -259,6 +319,11 @@ export class LuzmoInteractiveVizItem implements OnChanges {
|
|
|
259
319
|
})
|
|
260
320
|
);
|
|
261
321
|
}
|
|
322
|
+
|
|
323
|
+
/** Exports the embedded chart, forwarded to its `export(type)`. Waits for the embedded renderer when it has not loaded yet. Resolves without a value when there is no chart, when the embed fails, or when the chart is cleared or the element removed before the renderer loaded. */
|
|
324
|
+
export(type?: VizItemExportType): Promise<string | void> {
|
|
325
|
+
return (this.host as LuzmoInteractiveVizItemHostElement).export(type);
|
|
326
|
+
}
|
|
262
327
|
}
|
|
263
328
|
|
|
264
329
|
/** The underlying custom element type for LuzmoInteractiveVizItem */
|
|
@@ -117,6 +117,11 @@ export class LuzmoItemGridItemActionsMenu implements OnChanges {
|
|
|
117
117
|
})
|
|
118
118
|
);
|
|
119
119
|
}
|
|
120
|
+
|
|
121
|
+
/** Focuses the first toggle action, or the first available action. */
|
|
122
|
+
focus(): void {
|
|
123
|
+
return (this.host as LuzmoItemGridItemActionsMenuHostElement).focus();
|
|
124
|
+
}
|
|
120
125
|
}
|
|
121
126
|
|
|
122
127
|
/** The underlying custom element type for LuzmoItemGridItemActionsMenu */
|
|
@@ -107,6 +107,10 @@ export class LuzmoItemGrid implements OnChanges {
|
|
|
107
107
|
@Input({ alias: 'initialItemStates' })
|
|
108
108
|
initialItemStates?: ItemStates;
|
|
109
109
|
|
|
110
|
+
/** Renders an item whose type has no renderer registered with `registerRenderer`. */
|
|
111
|
+
@Input({ alias: 'defaultRenderer' })
|
|
112
|
+
defaultRenderer?: GridItemRenderer;
|
|
113
|
+
|
|
110
114
|
/** Fired when an item action is performed */
|
|
111
115
|
readonly luzmoItemGridItemAction = output<CustomEvent<GridItemActionEventDetail>>({ alias: 'luzmoItemGridItemAction' });
|
|
112
116
|
|
|
@@ -194,6 +198,9 @@ export class LuzmoItemGrid implements OnChanges {
|
|
|
194
198
|
case 'initialItemStates':
|
|
195
199
|
this.setHostProperty('initialItemStates', changes['initialItemStates'].currentValue);
|
|
196
200
|
break;
|
|
201
|
+
case 'defaultRenderer':
|
|
202
|
+
this.setHostProperty('defaultRenderer', changes['defaultRenderer'].currentValue);
|
|
203
|
+
break;
|
|
197
204
|
default:
|
|
198
205
|
break;
|
|
199
206
|
}
|
|
@@ -26,6 +26,18 @@ export class LuzmoItemOptionColorPicker implements OnChanges {
|
|
|
26
26
|
return this.host;
|
|
27
27
|
}
|
|
28
28
|
|
|
29
|
+
/** The current color value. */
|
|
30
|
+
@Input({ alias: 'value' })
|
|
31
|
+
value?: string;
|
|
32
|
+
|
|
33
|
+
/** Whether the control is disabled (non-interactive). */
|
|
34
|
+
@Input({ alias: 'disabled', transform: booleanAttribute })
|
|
35
|
+
disabled?: boolean;
|
|
36
|
+
|
|
37
|
+
/** Disables the alpha (opacity) channel in the color picker. */
|
|
38
|
+
@Input({ alias: 'noAlphaChannel', transform: booleanAttribute })
|
|
39
|
+
noAlphaChannel?: boolean;
|
|
40
|
+
|
|
29
41
|
/** Preset colors offered as quick-pick swatches. */
|
|
30
42
|
@Input({ alias: 'swatches' })
|
|
31
43
|
swatches?: string[];
|
|
@@ -38,6 +50,10 @@ export class LuzmoItemOptionColorPicker implements OnChanges {
|
|
|
38
50
|
@Input({ alias: 'shape' })
|
|
39
51
|
shape?: 'circle' | 'rectangle';
|
|
40
52
|
|
|
53
|
+
/** Placement of the color picker dropdown relative to its trigger. */
|
|
54
|
+
@Input({ alias: 'placement' })
|
|
55
|
+
placement?: Placement;
|
|
56
|
+
|
|
41
57
|
/** Delay in milliseconds before the change event is emitted after the user stops interacting. */
|
|
42
58
|
@Input({ alias: 'debounce' })
|
|
43
59
|
debounce?: number;
|
|
@@ -50,22 +66,6 @@ export class LuzmoItemOptionColorPicker implements OnChanges {
|
|
|
50
66
|
@Input({ alias: 'debounceTimeout' })
|
|
51
67
|
debounceTimeout?: any;
|
|
52
68
|
|
|
53
|
-
/** The current color value. */
|
|
54
|
-
@Input({ alias: 'value' })
|
|
55
|
-
value?: string;
|
|
56
|
-
|
|
57
|
-
/** Whether the control is disabled (non-interactive). */
|
|
58
|
-
@Input({ alias: 'disabled', transform: booleanAttribute })
|
|
59
|
-
disabled?: boolean;
|
|
60
|
-
|
|
61
|
-
/** Disables the alpha (opacity) channel in the color picker. */
|
|
62
|
-
@Input({ alias: 'noAlphaChannel', transform: booleanAttribute })
|
|
63
|
-
noAlphaChannel?: boolean;
|
|
64
|
-
|
|
65
|
-
/** Placement of the color picker dropdown relative to its trigger. */
|
|
66
|
-
@Input({ alias: 'placement' })
|
|
67
|
-
placement?: Placement;
|
|
68
|
-
|
|
69
69
|
/** Emitted when the option value changes. With `live-interactions`, emitted on every color change and carries `interaction` inside a gesture. */
|
|
70
70
|
readonly luzmoOptionChanged = output<CustomEvent<ItemOptionChangedEventDetail>>({ alias: 'luzmoOptionChanged' });
|
|
71
71
|
|
|
@@ -87,6 +87,15 @@ export class LuzmoItemOptionColorPicker implements OnChanges {
|
|
|
87
87
|
ngOnChanges(changes: SimpleChanges): void {
|
|
88
88
|
for (const key of Object.keys(changes)) {
|
|
89
89
|
switch (key) {
|
|
90
|
+
case 'value':
|
|
91
|
+
this.setHostProperty('value', changes['value'].currentValue);
|
|
92
|
+
break;
|
|
93
|
+
case 'disabled':
|
|
94
|
+
this.setHostProperty('disabled', changes['disabled'].currentValue);
|
|
95
|
+
break;
|
|
96
|
+
case 'noAlphaChannel':
|
|
97
|
+
this.setHostProperty('noAlphaChannel', changes['noAlphaChannel'].currentValue);
|
|
98
|
+
break;
|
|
90
99
|
case 'swatches':
|
|
91
100
|
this.setHostProperty('swatches', changes['swatches'].currentValue);
|
|
92
101
|
break;
|
|
@@ -96,6 +105,9 @@ export class LuzmoItemOptionColorPicker implements OnChanges {
|
|
|
96
105
|
case 'shape':
|
|
97
106
|
this.setHostProperty('shape', changes['shape'].currentValue);
|
|
98
107
|
break;
|
|
108
|
+
case 'placement':
|
|
109
|
+
this.setHostProperty('placement', changes['placement'].currentValue);
|
|
110
|
+
break;
|
|
99
111
|
case 'debounce':
|
|
100
112
|
this.setHostProperty('debounce', changes['debounce'].currentValue);
|
|
101
113
|
break;
|
|
@@ -105,18 +117,6 @@ export class LuzmoItemOptionColorPicker implements OnChanges {
|
|
|
105
117
|
case 'debounceTimeout':
|
|
106
118
|
this.setHostProperty('debounceTimeout', changes['debounceTimeout'].currentValue);
|
|
107
119
|
break;
|
|
108
|
-
case 'value':
|
|
109
|
-
this.setHostProperty('value', changes['value'].currentValue);
|
|
110
|
-
break;
|
|
111
|
-
case 'disabled':
|
|
112
|
-
this.setHostProperty('disabled', changes['disabled'].currentValue);
|
|
113
|
-
break;
|
|
114
|
-
case 'noAlphaChannel':
|
|
115
|
-
this.setHostProperty('noAlphaChannel', changes['noAlphaChannel'].currentValue);
|
|
116
|
-
break;
|
|
117
|
-
case 'placement':
|
|
118
|
-
this.setHostProperty('placement', changes['placement'].currentValue);
|
|
119
|
-
break;
|
|
120
120
|
default:
|
|
121
121
|
break;
|
|
122
122
|
}
|