@luzmo/analytics-components-kit 1.0.7 → 1.0.8-beta.2
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 +15 -2
- package/components/ai-chat/index.cjs +1 -1
- package/components/ai-chat/index.js +2 -2
- package/components/{ai-chat-CVNU2mCV.cjs → ai-chat-D1Rzwdxy.cjs} +2 -2
- package/components/{ai-chat-CDSRFmJK.js → ai-chat-Dy_utMXO.js} +7 -4
- package/components/ai-interaction-textarea/ai-interaction-textarea.d.ts +3 -0
- package/components/ai-interaction-textarea/index.cjs +1 -1
- package/components/ai-interaction-textarea/index.js +1 -1
- package/components/{ai-interaction-textarea-BXDeplJF.cjs → ai-interaction-textarea-CJO50_1F.cjs} +5 -3
- package/components/{ai-interaction-textarea-BiMbUGCy.js → ai-interaction-textarea-DMT8RNUP.js} +13 -6
- package/components/{area-chart-positioning.config-dwRUFC--.cjs → area-chart-positioning.config-BstzDLRL.cjs} +1 -1
- package/components/{area-chart-positioning.config-SLtTkKJB.js → area-chart-positioning.config-DeMlkQZO.js} +1 -1
- package/components/{bar-chart-positioning.config-Ch4sVyJS.js → bar-chart-positioning.config-Cw4xXpaU.js} +1 -1
- package/components/{bar-chart-positioning.config-CcQ2iQdl.cjs → bar-chart-positioning.config-DDKGGZhU.cjs} +1 -1
- package/components/{base-DYRe99_q.cjs → base-B0frB7oV.cjs} +1 -1
- package/components/{base-2sulw8ws.js → base-DPqRkMth.js} +1 -1
- package/components/{base-store-DmDe0dTU.js → base-store-BhGpnbqi.js} +0 -8
- package/components/{base-store-DHC2m2Os.cjs → base-store-D5cDq6d4.cjs} +1 -1
- package/components/{box-plot-positioning.config-Bb7r-Rfl.js → box-plot-positioning.config-BQf8CX15.js} +1 -1
- package/components/{box-plot-positioning.config-Dwtiqho4.cjs → box-plot-positioning.config-Cni8SYCB.cjs} +1 -1
- package/components/{bubble-chart-positioning.config-Bp_l4Cw1.cjs → bubble-chart-positioning.config-1Q2GxFJ4.cjs} +1 -1
- package/components/{bubble-chart-positioning.config-Q7mIfpcz.js → bubble-chart-positioning.config-BYeXJRKW.js} +1 -1
- package/components/{bullet-chart-positioning.config-B7aXCajU.js → bullet-chart-positioning.config-D-fuuO8D.js} +1 -1
- package/components/{bullet-chart-positioning.config-sj7E3xEM.cjs → bullet-chart-positioning.config-NSHvsWAf.cjs} +1 -1
- package/components/{choropleth-map-positioning.config-CtoJov9H.js → choropleth-map-positioning.config-Bk2lcbUF.js} +1 -1
- package/components/{choropleth-map-positioning.config-DM-iNbgs.cjs → choropleth-map-positioning.config-DZCuGwit.cjs} +1 -1
- package/components/{circle-pack-chart-positioning.config-Cs9xMDpi.cjs → circle-pack-chart-positioning.config-CuESD4oH.cjs} +1 -1
- package/components/{circle-pack-chart-positioning.config-BgxnBOQT.js → circle-pack-chart-positioning.config-pvlFSoeh.js} +1 -1
- package/components/{circular-gauge-positioning.config-FEkbw6hK.js → circular-gauge-positioning.config-BI5_9VzK.js} +1 -1
- package/components/{circular-gauge-positioning.config-Bzulob5F.cjs → circular-gauge-positioning.config-DIYxTFVO.cjs} +1 -1
- package/components/{column-chart-positioning.config-BeVOSQaJ.js → column-chart-positioning.config-CoekgrWc.js} +1 -1
- package/components/{column-chart-positioning.config-9ho9oUo8.cjs → column-chart-positioning.config-F5liDplz.cjs} +1 -1
- package/components/{combination-chart-positioning.config-CaShl4vv.cjs → combination-chart-positioning.config-BIqhiqPc.cjs} +1 -1
- package/components/{combination-chart-positioning.config-D4VUK54k.js → combination-chart-positioning.config-gfmXofUL.js} +1 -1
- package/components/{conditional-number-positioning.config-BEMjjhdi.cjs → conditional-number-positioning.config-7xN8yNaC.cjs} +1 -1
- package/components/{conditional-number-positioning.config-C-LpjCJN.js → conditional-number-positioning.config-DoA_qMvA.js} +1 -1
- package/components/{data-broker-Bdv5V8Yp.js → data-broker-B0uUO5er.js} +4 -0
- package/components/{data-broker-DWEXs6-2.cjs → data-broker-CyMYR6w1.cjs} +1 -1
- package/components/data-field/index.cjs +1 -1
- package/components/data-field/index.js +1 -1
- package/components/{data-field-lGJ557o4.cjs → data-field-CZGdgBd7.cjs} +1 -1
- package/components/{data-field-Dz0XFrep.js → data-field-Ccsjj3o5.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-DJoidlHN.js → data-field-level-BautlamO.js} +1 -1
- package/components/{data-field-level-B9r4ucP6.cjs → data-field-level-DDYutkKV.cjs} +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-BzyjbJO5.cjs → data-field-panel-B9aYsBfe.cjs} +1 -1
- package/components/{data-field-panel-CdeJxZCr.js → data-field-panel-COHppDw6.js} +5 -5
- package/components/data-fields-select/index.cjs +1 -1
- package/components/data-fields-select/index.js +1 -1
- package/components/data-fields-select-BMDWXAMz.cjs +41 -0
- package/components/{data-fields-select-BRBBrS-x.js → data-fields-select-CvdABHum.js} +2 -2
- package/components/dataset-selector-list/index.cjs +1 -1
- package/components/dataset-selector-list/index.js +1 -1
- package/components/{dataset-selector-list-xF3yKGan.cjs → dataset-selector-list-CekhYtbU.cjs} +1 -1
- package/components/{dataset-selector-list-DGCh1bvb.js → dataset-selector-list-yU9o-gBK.js} +2 -2
- package/components/dataset-selector-row/dataset-selector-row.d.ts +11 -0
- package/components/dataset-selector-row/index.cjs +1 -1
- package/components/dataset-selector-row/index.js +1 -1
- package/components/dataset-selector-row-Cte3skmf.cjs +90 -0
- package/components/{dataset-selector-row-BbnjxfIz.js → dataset-selector-row-eb2fUxMB.js} +48 -15
- package/components/de-BZnsTnT9.cjs +20 -0
- package/components/{de-CRrCVuH7.js → de-CbIHJOex.js} +22 -0
- package/components/display-settings/index.cjs +1 -1
- package/components/display-settings/index.js +1 -1
- package/components/{display-settings-eSQCidqh.cjs → display-settings-B_sY5MXH.cjs} +1 -1
- package/components/{display-settings-C9OQ4Eou.js → display-settings-DpPSk_da.js} +2 -2
- package/components/display-settings-binning/index.cjs +1 -1
- package/components/display-settings-binning/index.js +1 -1
- package/components/{display-settings-binning-BBNL97l9.cjs → display-settings-binning-BGYyLt7_.cjs} +1 -1
- package/components/{display-settings-binning-B8E2H5cY.js → display-settings-binning-w2pMC3eK.js} +2 -2
- package/components/display-settings-datetime/index.cjs +1 -1
- package/components/display-settings-datetime/index.js +1 -1
- package/components/{display-settings-datetime-BBzvzwl5.js → display-settings-datetime-Ditc8j2_.js} +2 -2
- package/components/{display-settings-datetime-czjk5Msv.cjs → display-settings-datetime-l9LWhG3c.cjs} +1 -1
- 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-RwMnGwFZ.cjs → display-settings-grand-totals-D-_CQpBV.cjs} +1 -1
- package/components/{display-settings-grand-totals-CF01m8x-.js → display-settings-grand-totals-HcJLxYe2.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-C4X7oOEU.cjs → display-settings-numeric-CShtLo7v.cjs} +1 -1
- package/components/{display-settings-numeric-BcpwYX16.js → display-settings-numeric-FWO7hFLp.js} +2 -2
- 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-B8UNYZ0I.js → display-settings-period-over-period-B1dHBjlg.js} +2 -2
- package/components/{display-settings-period-over-period-BG9YAcCw.cjs → display-settings-period-over-period-BdBYrWwJ.cjs} +1 -1
- package/components/{donut-chart-positioning.config-CaADC7Qr.js → donut-chart-positioning.config-B-CWvQDP.js} +1 -1
- package/components/{donut-chart-positioning.config-Dfws3ojS.cjs → donut-chart-positioning.config-DsHR-HET.cjs} +1 -1
- package/components/es-D3v9KL7a.cjs +20 -0
- package/components/{es-BIgv-ijQ.js → es-bVLNpB-8.js} +22 -0
- package/components/{evolution-number-positioning.config-CI_2m2Sr.cjs → evolution-number-positioning.config-DWJlecZ8.cjs} +1 -1
- package/components/{evolution-number-positioning.config-C-OV1wpL.js → evolution-number-positioning.config-DogBtixy.js} +1 -1
- package/components/filter-expression-picker/index.cjs +1 -1
- package/components/filter-expression-picker/index.js +1 -1
- package/components/{filter-expression-picker-_mfcXZ-n.cjs → filter-expression-picker-Dtd04YHa.cjs} +1 -1
- package/components/{filter-expression-picker-CH2Fna8C.js → filter-expression-picker-vZcmpdhp.js} +2 -2
- package/components/filter-item/filter-item.d.ts +4 -0
- package/components/filter-item/index.cjs +1 -1
- package/components/filter-item/index.js +1 -1
- package/components/{filter-item-CL3S9HOx.js → filter-item-DhWm1nZ2.js} +28 -13
- package/components/filter-item-QGXrunyl.cjs +71 -0
- package/components/filter-parameter-picker/index.cjs +1 -1
- package/components/filter-parameter-picker/index.js +1 -1
- package/components/{filter-parameter-picker-CU48aEOS.js → filter-parameter-picker-Dq7rskJq.js} +1 -1
- package/components/{filter-parameter-picker-CxbAY5hy.cjs → filter-parameter-picker-_KpPQvwJ.cjs} +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-CD8DjcHo.js → filter-value-picker-DL-XI9zN.js} +4 -4
- package/components/{filter-value-picker-CRrUhngj.cjs → filter-value-picker-DUPgUphE.cjs} +1 -1
- package/components/filter-value-picker-datetime/filter-value-picker-datetime.d.ts +2 -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-dXaHpCRX.cjs → filter-value-picker-datetime-BYosmOVo.cjs} +1 -1
- package/components/{filter-value-picker-datetime-DS7IK9aN.js → filter-value-picker-datetime-DrtBsmhk.js} +2 -2
- package/components/filter-value-picker-hierarchy/filter-value-picker-hierarchy.d.ts +16 -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-Co7tEAF0.cjs +48 -0
- package/components/{filter-value-picker-hierarchy-k0T56CvH.js → filter-value-picker-hierarchy-D9HPNjXi.js} +120 -53
- 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-BVei4Vlc.cjs → filter-value-picker-numeric-BCaSriJT.cjs} +1 -1
- package/components/{filter-value-picker-numeric-BaQe4r82.js → filter-value-picker-numeric-CLRBOcom.js} +3 -3
- package/components/filters/index.cjs +1 -1
- package/components/filters/index.js +1 -1
- package/components/filters-DPh6G5_6.cjs +153 -0
- package/components/{filters-B70hF2NT.js → filters-hIID3Ol5.js} +173 -170
- package/components/formula/index.cjs +1 -1
- package/components/formula/index.js +1 -1
- package/components/{formula-DdgD312W.js → formula-D6fZk242.js} +2 -2
- package/components/{formula-glPlLx_5.cjs → formula-DJa0m0vt.cjs} +1 -1
- package/components/{formula-codemirror-D3Z1Qa0J.js → formula-codemirror-CS38irmY.js} +4 -4
- package/components/{formula-codemirror-GoFCSp6r.cjs → formula-codemirror-ClMjdWte.cjs} +1 -1
- package/components/{formula-display-store-bPGDv_xk.js → formula-display-store-BVCcrqMB.js} +4 -4
- package/components/{formula-display-store-eE3zaCyB.cjs → formula-display-store-riWDbPmO.cjs} +1 -1
- package/components/formula-editor/index.cjs +1 -1
- package/components/formula-editor/index.js +3 -3
- package/components/{formula-editor-BnWiiFr5.js → formula-editor-C63ifj9i.js} +6 -6
- package/components/{formula-editor-8wWzGGJr.cjs → formula-editor-KuJjGn6h.cjs} +1 -1
- package/components/formula-field/index.cjs +1 -1
- package/components/formula-field/index.js +1 -1
- package/components/{formula-field-IHf6I8mL.cjs → formula-field-BIseRR26.cjs} +1 -1
- package/components/{formula-field-DlEgUu58.js → formula-field-CZu-WBKI.js} +1 -1
- package/components/{formula-input-base-D5yx7RYX.cjs → formula-input-base-B1D56Klw.cjs} +1 -1
- package/components/{formula-input-base-7I069pOJ.js → formula-input-base-DhhV4mbQ.js} +1 -1
- package/components/{fr-CI9fC-NM.js → fr-BVATPudG.js} +22 -0
- package/components/fr-uvrkqpp_.cjs +20 -0
- package/components/{funnel-chart-positioning.config-CNEeOwuT.js → funnel-chart-positioning.config-D7871iXX.js} +1 -1
- package/components/{funnel-chart-positioning.config-Cz8gQRh_.cjs → funnel-chart-positioning.config-DswPJ8VG.cjs} +1 -1
- package/components/{get-dataset-name-Bae0I2_J.cjs → get-dataset-name-CIt7of_Z.cjs} +1 -1
- package/components/{get-dataset-name-OJK38mEs.js → get-dataset-name-CXdZ2oH_.js} +1 -1
- package/components/{groupings-BZJTnpwR.js → groupings-BwzDflId.js} +1 -1
- package/components/{groupings-B0qMZHSd.cjs → groupings-Dt2yC9fH.cjs} +1 -1
- package/components/{heat-map-positioning.config-CEH6qyrN.cjs → heat-map-positioning.config-C9xyxr1p.cjs} +1 -1
- package/components/{heat-map-positioning.config-D-Ba4Ts_.js → heat-map-positioning.config-sZTsAUnf.js} +1 -1
- package/components/{heat-table-positioning.config-DWNETZMx.cjs → heat-table-positioning.config-B5XgRMIn.cjs} +1 -1
- package/components/{heat-table-positioning.config-DCnowqOc.js → heat-table-positioning.config-DSsD8apM.js} +1 -1
- package/components/{hexbin-map-positioning.config-Br0pjvMN.js → hexbin-map-positioning.config-Dc9wAdAv.js} +1 -1
- package/components/{marker-map-positioning.config-DOhXf-CR.cjs → hexbin-map-positioning.config-Dq2TuFz1.cjs} +1 -1
- package/components/index.cjs +1 -1
- package/components/index.js +65 -63
- package/components/interactive-viz-item/index.cjs +1 -1
- package/components/interactive-viz-item/index.js +1 -1
- package/components/{interactive-viz-item-DZoRqeJW.cjs → interactive-viz-item-Bn9IhEvD.cjs} +1 -1
- package/components/{interactive-viz-item-Dogksvpq.js → interactive-viz-item-CXHq9Csp.js} +5 -5
- package/components/item-grid/index.cjs +1 -1
- package/components/item-grid/index.js +1 -1
- package/components/{item-grid-VPRvzGCa.cjs → item-grid-B8tT6ztQ.cjs} +2 -2
- package/components/{item-grid-ZQpp1brq.js → item-grid-D7b0blK6.js} +48 -48
- package/components/item-option/helpers/control-templates/guidelines-template.d.ts +3 -0
- package/components/item-option/index.cjs +1 -1
- package/components/item-option/index.js +1 -1
- package/components/{item-option-B9tALelF.js → item-option-Dc4GNRMW.js} +172 -152
- 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-BYE7i8Zd.cjs → item-option-action-button-group-BOOW6k_j.cjs} +1 -1
- package/components/{item-option-action-button-group-WrHKP761.js → item-option-action-button-group-BhC0n29i.js} +1 -1
- package/components/{item-option-base-CTBIeARi.cjs → item-option-base-D1xRkleX.cjs} +1 -1
- package/components/{item-option-base-CuxvyS-a.js → item-option-base-IMMzUkdt.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-eYAyoXM1.js → item-option-color-palette-picker-D6xT_kWC.js} +1 -1
- package/components/{item-option-color-palette-picker-CyailqDd.cjs → item-option-color-palette-picker-DBqNzR3N.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-D_x6FgZy.js → item-option-color-picker-7Dth27ei.js} +1 -1
- package/components/{item-option-color-picker-DsfZKPDo.cjs → item-option-color-picker-BqjtUtrr.cjs} +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-CHSbql1w.js → item-option-color-range-Cj5tryJo.js} +1 -1
- package/components/{item-option-color-range-tAMMKg6y.cjs → item-option-color-range-Cz1LuJmy.cjs} +1 -1
- package/components/item-option-dwknAAj9.cjs +269 -0
- package/components/item-option-guidelines/helpers/guidelines-value.d.ts +12 -0
- package/components/item-option-guidelines/index.cjs +20 -0
- package/components/item-option-guidelines/index.d.ts +10 -0
- package/components/item-option-guidelines/index.js +29 -0
- package/components/item-option-guidelines/item-option-guidelines.d.ts +74 -0
- package/components/item-option-guidelines/types.d.ts +25 -0
- package/components/item-option-guidelines-8v9MZ0FH.js +419 -0
- package/components/item-option-guidelines-CgJEAiF5.cjs +135 -0
- 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-D51cJ4BM.js → item-option-multi-language-field-BkqcX9zw.js} +1 -1
- package/components/{item-option-multi-language-field-DjWm-jWC.cjs → item-option-multi-language-field-D9NK-noK.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-Dep43Ym5.cjs → item-option-number-field-BXZD_sC2.cjs} +1 -1
- package/components/{item-option-number-field-Df56sivV.js → item-option-number-field-DHl0phm5.js} +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-BYCfnDeP.js → item-option-panel-DIU-3auc.js} +2 -2
- package/components/{item-option-panel-ClDspg51.cjs → item-option-panel-Dv6v7RzM.cjs} +1 -1
- package/components/item-option-picker/index.cjs +1 -1
- package/components/item-option-picker/index.js +1 -1
- package/components/{item-option-picker-CBfFgSKs.cjs → item-option-picker-BUdP-MCI.cjs} +1 -1
- package/components/{item-option-picker-BCsB7psT.js → item-option-picker-CmQFzBzN.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-CXJGmmWF.js → item-option-position-picker-CbnJ8Apk.js} +1 -1
- package/components/{item-option-position-picker-CYoOkH1m.cjs → item-option-position-picker-_2Dc6vhB.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-CkfSHCFO.js → item-option-positions-number-field-B6JzEtSc.js} +1 -1
- package/components/{item-option-positions-number-field-CNUCVm78.cjs → item-option-positions-number-field-C41FMT4C.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-ZIvbpJf9.cjs → item-option-radio-button-group-CjdCLmtq.cjs} +1 -1
- package/components/{item-option-radio-button-group-CSyh4eS2.js → item-option-radio-button-group-rONmmmSf.js} +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-CaxIGDWN.cjs → item-option-slider-CANy5MZL.cjs} +1 -1
- package/components/{item-option-slider-CTt5aYbb.js → item-option-slider-slgdsaDM.js} +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-wEx5JkSe.cjs → item-option-switch-CS6kid_8.cjs} +1 -1
- package/components/{item-option-switch-B91r65eW.js → item-option-switch-Cd9UA7J5.js} +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-BLcYkH-j.cjs → item-option-text-field-6Y1zBJMK.cjs} +1 -1
- package/components/{item-option-text-field-BvSCGhuH.js → item-option-text-field-BFP8YnEc.js} +1 -1
- package/components/item-slot-drop/index.cjs +1 -1
- package/components/item-slot-drop/index.js +1 -1
- package/components/{item-slot-drop-Box1wnvM.js → item-slot-drop-BL7DOudd.js} +15 -15
- package/components/{item-slot-drop-n-lD8Zyh.cjs → item-slot-drop-Ds06u_vn.cjs} +1 -1
- 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-sCkQ0dUU.cjs → item-slot-drop-panel-D_EFyM9J.cjs} +1 -1
- package/components/{item-slot-drop-panel-KtZKw0Ly.js → item-slot-drop-panel-DkHylw7i.js} +39 -39
- package/components/item-slot-picker/index.cjs +1 -1
- package/components/item-slot-picker/index.js +1 -1
- package/components/{item-slot-picker-DKPE2NQn.cjs → item-slot-picker-BbpPIoIq.cjs} +3 -3
- package/components/{item-slot-picker-Cm8o4A00.js → item-slot-picker-CywUgvNX.js} +18 -18
- 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-DOHi_8UO.js → item-slot-picker-panel-Bi8xZaYc.js} +4 -4
- package/components/{item-slot-picker-panel-DK5jRBYs.cjs → item-slot-picker-panel-DQLwQXdI.cjs} +1 -1
- package/components/{line-chart-positioning.config-C05IZ4Jj.cjs → line-chart-positioning.config-CCsZMpp-.cjs} +1 -1
- package/components/{line-chart-positioning.config-DQfyOkWV.js → line-chart-positioning.config-q_XJiQBO.js} +1 -1
- package/components/{load-data-fields-for-datasets-BNnr8x3m.js → load-data-fields-for-datasets-B3XcFFfg.js} +1 -1
- package/components/{load-data-fields-for-datasets-CW4Voiex.cjs → load-data-fields-for-datasets-rL24A68g.cjs} +1 -1
- package/components/{localized-mixin-BForHr3t.cjs → localized-mixin-BbOPy_BO.cjs} +1 -1
- package/components/{localized-mixin-D-vXCJuU.js → localized-mixin-D1ss6vE4.js} +1 -1
- package/components/{hexbin-map-positioning.config-DoiUVZ8h.cjs → marker-map-positioning.config-B4GDDPUn.cjs} +1 -1
- package/components/{marker-map-positioning.config-CD7n0uLB.js → marker-map-positioning.config-qEo6YbOG.js} +1 -1
- package/components/{nl-HLnZHvTS.js → nl-D6PNT9zh.js} +22 -0
- package/components/nl-DwF8NHcr.cjs +20 -0
- package/components/{ohlc-chart-positioning.config-Bl-ckdlQ.js → ohlc-chart-positioning.config-CU7qaa8y.js} +1 -1
- package/components/{ohlc-chart-positioning.config-CDf77OgH.cjs → ohlc-chart-positioning.config-TquTA1gZ.cjs} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-DfsKsUdv.cjs → parallel-coordinates-plot-positioning.config-C8_F3uzs.cjs} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-Tbzzr5L6.js → parallel-coordinates-plot-positioning.config-DuQWnPKv.js} +1 -1
- package/components/{pivot-table-positioning.config-_YDPeFQz.js → pivot-table-positioning.config-B6ra1dbJ.js} +1 -1
- package/components/{pivot-table-positioning.config-DwuKN2xz.cjs → pivot-table-positioning.config-DhtDGn-Z.cjs} +1 -1
- package/components/{pyramid-chart-positioning.config-7AJy2_zR.cjs → pyramid-chart-positioning.config-5bWhJBP_.cjs} +1 -1
- package/components/{pyramid-chart-positioning.config-Btm_8m46.js → pyramid-chart-positioning.config-C_KASxlG.js} +1 -1
- package/components/{radar-chart-positioning.config-7Kx_uKbW.cjs → radar-chart-positioning.config-D2NVgsg1.cjs} +1 -1
- package/components/{radar-chart-positioning.config-DWziVqMW.js → radar-chart-positioning.config-l6ioKbxT.js} +1 -1
- package/components/{route-map-positioning.config-DDgEAW4k.cjs → route-map-positioning.config-5Xju6VM-.cjs} +1 -1
- package/components/{route-map-positioning.config-C4-2zLGp.js → route-map-positioning.config-HDuhd3TI.js} +1 -1
- package/components/{sankey-diagram-positioning.config-DQcUg8Cg.js → sankey-diagram-positioning.config-BKeksOQ2.js} +1 -1
- package/components/{sankey-diagram-positioning.config-BxVJaOKN.cjs → sankey-diagram-positioning.config-BXseVUED.cjs} +1 -1
- package/components/{scatter-plot-positioning.config-D3xI_5P8.cjs → scatter-plot-positioning.config-Ci_UFZZ7.cjs} +1 -1
- package/components/{scatter-plot-positioning.config-DOgeShUF.js → scatter-plot-positioning.config-MFGPELRh.js} +1 -1
- package/components/{set-locale-MQpiifTB.cjs → set-locale-8XQ-p5_N.cjs} +1 -1
- package/components/{set-locale-D9gR8t-s.js → set-locale-B91FmqSp.js} +4 -4
- package/components/set-nested-value-B-4IelRl.cjs +20 -0
- package/components/set-nested-value-V1TdquO3.js +33 -0
- package/components/{slicer-filter-positioning.config-bN36DdLc.cjs → slicer-filter-positioning.config-C2w10p-X.cjs} +1 -1
- package/components/{slicer-filter-positioning.config-CiHfPrM5.js → slicer-filter-positioning.config-CKyzt_nF.js} +1 -1
- package/components/slot-menu/index.cjs +1 -1
- package/components/slot-menu/index.js +1 -1
- package/components/slot-menu-7Lsnn5mp.cjs +71 -0
- package/components/{slot-menu-Qy35BZZ_.js → slot-menu-JcmVjv2g.js} +17 -14
- package/components/slot-menu-list/index.cjs +1 -1
- package/components/slot-menu-list/index.js +1 -1
- package/components/{slot-menu-list-BKMbIFg1.js → slot-menu-list-Bcm2lpwi.js} +1 -1
- package/components/{slot-menu-list-DmQe7882.cjs → slot-menu-list-tyN6sguq.cjs} +1 -1
- package/components/{speedometer-chart-positioning.config-B7M91sKN.js → speedometer-chart-positioning.config-BEWibjyH.js} +1 -1
- package/components/{speedometer-chart-positioning.config-Ce70l0Ei.cjs → speedometer-chart-positioning.config-Df5CIOwp.cjs} +1 -1
- package/components/{spike-map-positioning.config-D3wIf0RU.cjs → spike-map-positioning.config-C6aRn7nn.cjs} +1 -1
- package/components/{spike-map-positioning.config-Qf4LOPvB.js → spike-map-positioning.config-CdT1dVMG.js} +1 -1
- package/components/{strip-plot-positioning.config-MbfBVHf8.js → strip-plot-positioning.config-B8vN0A44.js} +1 -1
- package/components/{strip-plot-positioning.config-BIoncLjm.cjs → strip-plot-positioning.config-DXJci5zk.cjs} +1 -1
- package/components/{sunburst-chart-positioning.config-CqyXZPxE.js → sunburst-chart-positioning.config-D-qWT3sC.js} +1 -1
- package/components/{sunburst-chart-positioning.config-zqPLL8yF.cjs → sunburst-chart-positioning.config-XfxGkqp6.cjs} +1 -1
- package/components/{symbol-map-positioning.config-CQ4Vxu96.cjs → symbol-map-positioning.config-BB8-Feba.cjs} +1 -1
- package/components/{symbol-map-positioning.config-plXDTBA3.js → symbol-map-positioning.config-CAC8XCec.js} +1 -1
- package/components/{treemap-chart-positioning.config-BTGBN1f9.js → treemap-chart-positioning.config-CJKe5rf1.js} +1 -1
- package/components/{treemap-chart-positioning.config-CSZXzuT5.cjs → treemap-chart-positioning.config-Daf9Kk3k.cjs} +1 -1
- package/components/types-DNRGKFSD.js +44 -0
- package/components/types-pVa6ut_v.cjs +20 -0
- package/components/utils/base.cjs +1 -1
- package/components/utils/base.js +2 -2
- package/components/utils/store.cjs +1 -1
- package/components/utils/store.js +59 -58
- package/components/{utils-Z9xbTTWG.js → utils-BMmRy1Nn.js} +2 -2
- package/components/{utils-BDvDwAn7.cjs → utils-D9CBsoMV.cjs} +1 -1
- package/components/utils.cjs +1 -1
- package/components/utils.js +3 -3
- package/components/{venn-diagram-positioning.config-fPvrjtfX.js → venn-diagram-positioning.config-8pfbiReM.js} +1 -1
- package/components/{venn-diagram-positioning.config-C4vcZDtW.cjs → venn-diagram-positioning.config-DqxSgLGR.cjs} +1 -1
- package/components/viz-item-menu/index.cjs +1 -1
- package/components/viz-item-menu/index.js +1 -1
- package/components/{viz-item-menu-DxA295eM.cjs → viz-item-menu-BSkDsdNg.cjs} +1 -1
- package/components/{viz-item-menu-vckPQBdf.js → viz-item-menu-CPqpF_PR.js} +1 -1
- package/components/{wordcloud-chart-positioning.config-Cf1ErL-B.cjs → wordcloud-chart-positioning.config-Cb7lzr9N.cjs} +1 -1
- package/components/{wordcloud-chart-positioning.config-ChUx_Ahc.js → wordcloud-chart-positioning.config-DUazjx5M.js} +1 -1
- package/custom-elements.json +695 -1
- package/deprecated-react/components/item-option-guidelines.component.cjs +1 -0
- package/index.d.ts +1 -0
- package/package.json +7 -2
- package/react/components/item-option-guidelines.component.ts +27 -0
- package/react/esm/components/item-option-guidelines.component.d.ts +12 -0
- package/react/esm/components/item-option-guidelines.component.js +17 -0
- package/react/esm/index.d.ts +3 -2
- package/react/esm/index.js +4 -0
- package/react/index.ts +4 -0
- package/react/luzmo-stub.d.ts +5 -0
- package/react/package.json +2 -2
- package/storybook/register-components.d.ts +1 -0
- package/types.d.ts +1 -0
- package/utils/data-broker/index.d.ts +20 -14
- package/utils/set-nested-value.d.ts +6 -0
- package/utils/store/base-store.d.ts +0 -4
- package/angular/README.md +0 -40
- package/angular/components/ai-chat-empty-state.ts +0 -98
- package/angular/components/ai-chat.ts +0 -412
- package/angular/components/ai-interaction-textarea.ts +0 -256
- package/angular/components/data-field-level.ts +0 -130
- package/angular/components/data-field-panel.ts +0 -256
- package/angular/components/data-field.ts +0 -130
- package/angular/components/data-fields-select.ts +0 -212
- package/angular/components/dataset-icon.ts +0 -83
- package/angular/components/dataset-selector-list.ts +0 -140
- package/angular/components/dataset-selector-row.ts +0 -143
- package/angular/components/display-settings-binning.ts +0 -92
- package/angular/components/display-settings-datetime.ts +0 -100
- package/angular/components/display-settings-grand-totals.ts +0 -92
- package/angular/components/display-settings-numeric.ts +0 -113
- package/angular/components/display-settings-period-over-period.ts +0 -107
- package/angular/components/display-settings.ts +0 -227
- package/angular/components/filter-expression-picker.ts +0 -168
- package/angular/components/filter-item.ts +0 -175
- package/angular/components/filter-parameter-picker.ts +0 -155
- package/angular/components/filter-value-picker-datetime.ts +0 -125
- package/angular/components/filter-value-picker-hierarchy.ts +0 -146
- package/angular/components/filter-value-picker-numeric.ts +0 -146
- package/angular/components/filter-value-picker.ts +0 -160
- package/angular/components/filters.ts +0 -209
- package/angular/components/formula-editor.ts +0 -229
- package/angular/components/formula-field.ts +0 -198
- package/angular/components/formula.ts +0 -170
- package/angular/components/interactive-viz-item.ts +0 -186
- package/angular/components/item-grid-item-actions-menu.ts +0 -113
- package/angular/components/item-grid.ts +0 -242
- package/angular/components/item-option-action-button-group.ts +0 -105
- package/angular/components/item-option-color-palette-picker.ts +0 -126
- package/angular/components/item-option-color-picker.ts +0 -134
- package/angular/components/item-option-color-range.ts +0 -168
- package/angular/components/item-option-multi-language-field.ts +0 -133
- package/angular/components/item-option-number-field.ts +0 -161
- package/angular/components/item-option-panel.ts +0 -149
- package/angular/components/item-option-picker.ts +0 -120
- package/angular/components/item-option-position-picker.ts +0 -98
- package/angular/components/item-option-positions-number-field.ts +0 -140
- package/angular/components/item-option-radio-button-group.ts +0 -119
- package/angular/components/item-option-slider.ts +0 -126
- package/angular/components/item-option-switch.ts +0 -98
- package/angular/components/item-option-text-field.ts +0 -112
- package/angular/components/item-option.ts +0 -163
- package/angular/components/item-slot-drop-panel.ts +0 -236
- package/angular/components/item-slot-drop.ts +0 -231
- package/angular/components/item-slot-picker-panel.ts +0 -299
- package/angular/components/item-slot-picker.ts +0 -241
- package/angular/components/slot-menu-list.ts +0 -121
- package/angular/components/slot-menu.ts +0 -304
- package/angular/components/viz-item-menu.ts +0 -118
- package/angular/esm/components/ai-chat-empty-state.d.ts +0 -39
- package/angular/esm/components/ai-chat-empty-state.js +0 -99
- package/angular/esm/components/ai-chat.d.ts +0 -137
- package/angular/esm/components/ai-chat.js +0 -423
- package/angular/esm/components/ai-interaction-textarea.d.ts +0 -97
- package/angular/esm/components/ai-interaction-textarea.js +0 -273
- package/angular/esm/components/data-field-level.d.ts +0 -50
- package/angular/esm/components/data-field-level.js +0 -129
- package/angular/esm/components/data-field-panel.d.ts +0 -86
- package/angular/esm/components/data-field-panel.js +0 -268
- package/angular/esm/components/data-field.d.ts +0 -50
- package/angular/esm/components/data-field.js +0 -129
- package/angular/esm/components/data-fields-select.d.ts +0 -81
- package/angular/esm/components/data-fields-select.js +0 -227
- package/angular/esm/components/dataset-icon.d.ts +0 -34
- package/angular/esm/components/dataset-icon.js +0 -86
- package/angular/esm/components/dataset-selector-list.d.ts +0 -53
- package/angular/esm/components/dataset-selector-list.js +0 -147
- package/angular/esm/components/dataset-selector-row.d.ts +0 -53
- package/angular/esm/components/dataset-selector-row.js +0 -145
- package/angular/esm/components/display-settings-binning.d.ts +0 -37
- package/angular/esm/components/display-settings-binning.js +0 -91
- package/angular/esm/components/display-settings-datetime.d.ts +0 -40
- package/angular/esm/components/display-settings-datetime.js +0 -99
- package/angular/esm/components/display-settings-grand-totals.d.ts +0 -37
- package/angular/esm/components/display-settings-grand-totals.js +0 -91
- package/angular/esm/components/display-settings-numeric.d.ts +0 -45
- package/angular/esm/components/display-settings-numeric.js +0 -115
- package/angular/esm/components/display-settings-period-over-period.d.ts +0 -44
- package/angular/esm/components/display-settings-period-over-period.js +0 -107
- package/angular/esm/components/display-settings.d.ts +0 -83
- package/angular/esm/components/display-settings.js +0 -231
- package/angular/esm/components/filter-expression-picker.d.ts +0 -64
- package/angular/esm/components/filter-expression-picker.js +0 -179
- package/angular/esm/components/filter-item.d.ts +0 -63
- package/angular/esm/components/filter-item.js +0 -187
- package/angular/esm/components/filter-parameter-picker.d.ts +0 -56
- package/angular/esm/components/filter-parameter-picker.js +0 -151
- package/angular/esm/components/filter-value-picker-datetime.d.ts +0 -47
- package/angular/esm/components/filter-value-picker-datetime.js +0 -131
- package/angular/esm/components/filter-value-picker-hierarchy.d.ts +0 -53
- package/angular/esm/components/filter-value-picker-hierarchy.js +0 -155
- package/angular/esm/components/filter-value-picker-numeric.d.ts +0 -53
- package/angular/esm/components/filter-value-picker-numeric.js +0 -155
- package/angular/esm/components/filter-value-picker.d.ts +0 -57
- package/angular/esm/components/filter-value-picker.js +0 -171
- package/angular/esm/components/filters.d.ts +0 -75
- package/angular/esm/components/filters.js +0 -215
- package/angular/esm/components/formula-editor.d.ts +0 -78
- package/angular/esm/components/formula-editor.js +0 -236
- package/angular/esm/components/formula-field.d.ts +0 -70
- package/angular/esm/components/formula-field.js +0 -209
- package/angular/esm/components/formula.d.ts +0 -60
- package/angular/esm/components/formula.js +0 -177
- package/angular/esm/components/interactive-viz-item.d.ts +0 -63
- package/angular/esm/components/interactive-viz-item.js +0 -188
- package/angular/esm/components/item-grid-item-actions-menu.d.ts +0 -45
- package/angular/esm/components/item-grid-item-actions-menu.js +0 -115
- package/angular/esm/components/item-grid.d.ts +0 -80
- package/angular/esm/components/item-grid.js +0 -245
- package/angular/esm/components/item-option-action-button-group.d.ts +0 -41
- package/angular/esm/components/item-option-action-button-group.js +0 -107
- package/angular/esm/components/item-option-color-palette-picker.d.ts +0 -48
- package/angular/esm/components/item-option-color-palette-picker.js +0 -131
- package/angular/esm/components/item-option-color-picker.d.ts +0 -51
- package/angular/esm/components/item-option-color-picker.js +0 -139
- package/angular/esm/components/item-option-color-range.d.ts +0 -66
- package/angular/esm/components/item-option-color-range.js +0 -179
- package/angular/esm/components/item-option-multi-language-field.d.ts +0 -50
- package/angular/esm/components/item-option-multi-language-field.js +0 -139
- package/angular/esm/components/item-option-number-field.d.ts +0 -58
- package/angular/esm/components/item-option-number-field.js +0 -171
- package/angular/esm/components/item-option-panel.d.ts +0 -54
- package/angular/esm/components/item-option-panel.js +0 -155
- package/angular/esm/components/item-option-picker.d.ts +0 -46
- package/angular/esm/components/item-option-picker.js +0 -123
- package/angular/esm/components/item-option-position-picker.d.ts +0 -39
- package/angular/esm/components/item-option-position-picker.js +0 -99
- package/angular/esm/components/item-option-positions-number-field.d.ts +0 -54
- package/angular/esm/components/item-option-positions-number-field.js +0 -147
- package/angular/esm/components/item-option-radio-button-group.d.ts +0 -45
- package/angular/esm/components/item-option-radio-button-group.js +0 -123
- package/angular/esm/components/item-option-slider.d.ts +0 -46
- package/angular/esm/components/item-option-slider.js +0 -131
- package/angular/esm/components/item-option-switch.d.ts +0 -40
- package/angular/esm/components/item-option-switch.js +0 -99
- package/angular/esm/components/item-option-text-field.d.ts +0 -44
- package/angular/esm/components/item-option-text-field.js +0 -115
- package/angular/esm/components/item-option.d.ts +0 -58
- package/angular/esm/components/item-option.js +0 -171
- package/angular/esm/components/item-slot-drop-panel.d.ts +0 -82
- package/angular/esm/components/item-slot-drop-panel.js +0 -249
- package/angular/esm/components/item-slot-drop.d.ts +0 -77
- package/angular/esm/components/item-slot-drop.js +0 -227
- package/angular/esm/components/item-slot-picker-panel.d.ts +0 -97
- package/angular/esm/components/item-slot-picker-panel.js +0 -309
- package/angular/esm/components/item-slot-picker.d.ts +0 -86
- package/angular/esm/components/item-slot-picker.js +0 -259
- package/angular/esm/components/slot-menu-list.d.ts +0 -46
- package/angular/esm/components/slot-menu-list.js +0 -123
- package/angular/esm/components/slot-menu.d.ts +0 -104
- package/angular/esm/components/slot-menu.js +0 -300
- package/angular/esm/components/viz-item-menu.d.ts +0 -42
- package/angular/esm/components/viz-item-menu.js +0 -111
- package/angular/esm/index.d.ts +0 -107
- package/angular/esm/index.js +0 -213
- package/angular/index.ts +0 -219
- package/angular/package.json +0 -40
- package/angular/tsconfig.json +0 -36
- package/angular/type-fallbacks.d.ts +0 -0
- package/angular/utils/ai-prompt/attachments.d.ts +0 -10
- package/angular/utils/ai-prompt/dictation.d.ts +0 -50
- package/angular/utils/ai-prompt/image-upload.d.ts +0 -12
- package/angular/utils/ai-prompt/index.d.ts +0 -6
- package/angular/utils/ai-prompt/tests/dictation.test.d.ts +0 -1
- package/angular/utils/ai-prompt/tests/image-upload.test.d.ts +0 -1
- package/angular/utils/base/base.d.ts +0 -16
- package/angular/utils/base/focus-visible.d.ts +0 -29
- package/angular/utils/base/focusable.d.ts +0 -58
- package/angular/utils/base/index.d.ts +0 -5
- package/angular/utils/base/localized-mixin.d.ts +0 -22
- package/angular/utils/base/sized-mixin.d.ts +0 -17
- package/angular/utils/color/color-palettes.d.ts +0 -17
- package/angular/utils/color/extrapolate-color.d.ts +0 -1
- package/angular/utils/data/load-data-fields-for-datasets.d.ts +0 -22
- package/angular/utils/data-broker/index.d.ts +0 -257
- package/angular/utils/data-field-types/calculate-data-field-icon.d.ts +0 -12
- package/angular/utils/data-field-types/default-acceptable-data-field-types.d.ts +0 -1
- package/angular/utils/data-field-types/tests/calculate-data-field-icon.test.d.ts +0 -1
- package/angular/utils/drag/draggable.d.ts +0 -13
- package/angular/utils/drag/pragmatic-element-adapter.d.ts +0 -2
- package/angular/utils/drag/tests/pragmatic-element-adapter.first-import.test.d.ts +0 -1
- package/angular/utils/drag/tests/pragmatic-element-adapter.test.d.ts +0 -1
- package/angular/utils/filters/expressions.d.ts +0 -15
- package/angular/utils/filters/index.d.ts +0 -1
- package/angular/utils/formatter/calculate-duration.d.ts +0 -2
- package/angular/utils/formatter/decompose-numeric-format.d.ts +0 -11
- package/angular/utils/formatter/default-local-formats.d.ts +0 -20
- package/angular/utils/formatter/formats/cs.d.ts +0 -20
- package/angular/utils/formatter/formats/da.d.ts +0 -20
- package/angular/utils/formatter/formats/de.d.ts +0 -21
- package/angular/utils/formatter/formats/en-GB.d.ts +0 -21
- package/angular/utils/formatter/formats/en-US.d.ts +0 -1
- package/angular/utils/formatter/formats/en.d.ts +0 -1
- package/angular/utils/formatter/formats/es.d.ts +0 -54
- package/angular/utils/formatter/formats/fi.d.ts +0 -20
- package/angular/utils/formatter/formats/fr.d.ts +0 -54
- package/angular/utils/formatter/formats/he.d.ts +0 -20
- package/angular/utils/formatter/formats/hu.d.ts +0 -20
- package/angular/utils/formatter/formats/it.d.ts +0 -54
- package/angular/utils/formatter/formats/ja.d.ts +0 -20
- package/angular/utils/formatter/formats/ko.d.ts +0 -20
- package/angular/utils/formatter/formats/mk.d.ts +0 -20
- package/angular/utils/formatter/formats/nl.d.ts +0 -21
- package/angular/utils/formatter/formats/no.d.ts +0 -21
- package/angular/utils/formatter/formats/pl.d.ts +0 -20
- package/angular/utils/formatter/formats/pt.d.ts +0 -20
- package/angular/utils/formatter/formats/ru.d.ts +0 -20
- package/angular/utils/formatter/formats/sv.d.ts +0 -20
- package/angular/utils/formatter/formats/tr.d.ts +0 -21
- package/angular/utils/formatter/formats/zh-CN.d.ts +0 -20
- package/angular/utils/formatter/formats/zh-TW.d.ts +0 -20
- package/angular/utils/formatter/formatter.d.ts +0 -9
- package/angular/utils/formatter/get-dataset-name.d.ts +0 -2
- package/angular/utils/formatter/localize.d.ts +0 -3
- package/angular/utils/formatter/smart-datetime-formats.const.d.ts +0 -36
- package/angular/utils/formatter/tests/calculate-duration.test.d.ts +0 -1
- package/angular/utils/formatter/tests/decompose-numeric-format.test.d.ts +0 -1
- package/angular/utils/formatter/tests/default-local-formats.test.d.ts +0 -1
- package/angular/utils/formatter/tests/formatter.test.d.ts +0 -1
- package/angular/utils/formatter/tests/localize.test.d.ts +0 -1
- package/angular/utils/formula/base/formula-base.d.ts +0 -117
- package/angular/utils/formula/base/formula-input-base.d.ts +0 -62
- package/angular/utils/formula/codemirror/actions.d.ts +0 -47
- package/angular/utils/formula/codemirror/drop-cursor.d.ts +0 -15
- package/angular/utils/formula/codemirror/icon-element.d.ts +0 -7
- package/angular/utils/formula/codemirror/parser.d.ts +0 -16
- package/angular/utils/formula/codemirror/tests/actions.test.d.ts +0 -1
- package/angular/utils/formula/codemirror/theme.d.ts +0 -20
- package/angular/utils/formula/codemirror/widget.d.ts +0 -18
- package/angular/utils/formula/config/aggregations.d.ts +0 -9
- package/angular/utils/formula/config/build-datasets.d.ts +0 -10
- package/angular/utils/formula/config/expression-helpers.d.ts +0 -42
- package/angular/utils/formula/config/functions.d.ts +0 -3
- package/angular/utils/formula/config/groupings.d.ts +0 -9
- package/angular/utils/formula/config/regex.d.ts +0 -39
- package/angular/utils/formula/config/resolve-column-presentation.d.ts +0 -19
- package/angular/utils/formula/config/tests/build-datasets.test.d.ts +0 -1
- package/angular/utils/formula/config/validate-expression.d.ts +0 -19
- package/angular/utils/formula/load-formula-codemirror.d.ts +0 -4
- package/angular/utils/formula/render-explanation-tooltip.d.ts +0 -7
- package/angular/utils/formula/store/formula-display-store.d.ts +0 -93
- package/angular/utils/formula/store/formula-editor-context.d.ts +0 -8
- package/angular/utils/formula/store/formula-editor-store.d.ts +0 -46
- package/angular/utils/formula/store/tests/formula-editor-store.test.d.ts +0 -1
- package/angular/utils/formula/tests/validate-expression.test.d.ts +0 -1
- package/angular/utils/get-css-variable.d.ts +0 -1
- package/angular/utils/index.d.ts +0 -10
- package/angular/utils/localize/set-locale.d.ts +0 -7
- package/angular/utils/map-tile-providers/index.d.ts +0 -93
- package/angular/utils/slot-content/ad-hoc-slot-content.d.ts +0 -7
- package/angular/utils/slot-content/render-calculation-label.d.ts +0 -7
- package/angular/utils/slot-content/tests/ad-hoc-slot-content.test.d.ts +0 -1
- package/angular/utils/slot-state/slot-context.d.ts +0 -4
- package/angular/utils/slot-state/slot-store.d.ts +0 -39
- package/angular/utils/store/base-store.d.ts +0 -162
- package/angular/utils/store/dashboard-store.d.ts +0 -49
- package/angular/utils/store/index.d.ts +0 -135
- package/angular/utils/store/item-store.d.ts +0 -33
- package/angular/utils/store/store-registry.d.ts +0 -170
- package/angular/utils/store/tests/dashboard-store.test.d.ts +0 -1
- package/angular/utils/store/tests/item-store.test.d.ts +0 -1
- package/angular/utils/store/tests/store-registry.test.d.ts +0 -1
- package/angular/utils/store/types.d.ts +0 -270
- package/angular/utils/switch-item/index.d.ts +0 -34
- package/angular/utils/switch-item/slot-role-classification.d.ts +0 -31
- package/angular/utils/switch-item/stories/switch-item.stories.d.ts +0 -17
- package/angular/utils/switch-item/tests/slot-role-classification.test.d.ts +0 -1
- package/angular/utils/switch-item/tests/switch-item.test.d.ts +0 -1
- package/angular/utils/themes/bliss.d.ts +0 -2
- package/angular/utils/themes/classic-dark.d.ts +0 -2
- package/angular/utils/themes/classic.d.ts +0 -2
- package/angular/utils/themes/default-dark.d.ts +0 -2
- package/angular/utils/themes/default.d.ts +0 -2
- package/angular/utils/themes/index.d.ts +0 -4
- package/angular/utils/themes/orion.d.ts +0 -2
- package/angular/utils/themes/pinky.d.ts +0 -2
- package/angular/utils/themes/radiant.d.ts +0 -2
- package/angular/utils/themes/royale.d.ts +0 -2
- package/angular/utils/themes/seasonal.d.ts +0 -2
- package/angular/utils/themes/urban.d.ts +0 -2
- package/angular/utils/themes/vivid.d.ts +0 -2
- package/angular/utils/time/formats.const.d.ts +0 -4
- package/angular/utils/time/period-over-period-condition.const.d.ts +0 -8
- package/angular/utils/time/periods.const.d.ts +0 -15
- package/angular/utils/timezone/datetime-timezone.d.ts +0 -25
- package/angular/utils/timezone/tests/datetime-timezone.test.d.ts +0 -1
- package/angular/utils/transformations/convert-data-field-to-slot-content.d.ts +0 -9
- package/angular/utils/transformations/convert-datasets-to-data-fields.d.ts +0 -30
- package/angular/utils/transformations/tests/convert-data-field-to-slot-content.test.d.ts +0 -1
- package/angular/utils/transformations/tests/convert-datasets-to-data-fields.test.d.ts +0 -1
- package/angular/utils/types/tests/type-check.test.d.ts +0 -1
- package/angular/utils/types/type-check.d.ts +0 -28
- package/components/data-fields-select-BBzzUG2u.cjs +0 -41
- package/components/dataset-selector-row-fmrY3y86.cjs +0 -79
- package/components/de-BzcAVqyW.cjs +0 -20
- package/components/es-mPmtD7j4.cjs +0 -20
- package/components/filter-item-5HCSM9cu.cjs +0 -71
- package/components/filter-value-picker-hierarchy-kwnEzxIk.cjs +0 -47
- package/components/filters-ms2gFstA.cjs +0 -153
- package/components/fr-BHUhOl6R.cjs +0 -20
- package/components/item-option-BRgOBMM0.cjs +0 -252
- package/components/nl-NxeHJ8X8.cjs +0 -20
- package/components/slot-menu-K5QiEu6o.cjs +0 -71
- /package/{angular/utils/ai-prompt/tests/attachments.test.d.ts → utils/tests/set-nested-value.test.d.ts} +0 -0
|
@@ -18,10 +18,10 @@
|
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
20
|
import { t as e } from "./decorate-DyMgX_Uh.js";
|
|
21
|
-
import { t } from "./localized-mixin-
|
|
22
|
-
import { t as n } from "./data-broker-
|
|
21
|
+
import { t } from "./localized-mixin-D1ss6vE4.js";
|
|
22
|
+
import { t as n } from "./data-broker-B0uUO5er.js";
|
|
23
23
|
import { t as r } from "./localize-BT7REYBY.js";
|
|
24
|
-
import "./utils-
|
|
24
|
+
import "./utils-BMmRy1Nn.js";
|
|
25
25
|
import { html as i, unsafeCSS as a } from "lit";
|
|
26
26
|
import { property as o, state as s } from "lit/decorators.js";
|
|
27
27
|
import { localized as c, msg as l } from "@lit/localize";
|
|
@@ -29,9 +29,9 @@ import "@luzmo/lucero/select";
|
|
|
29
29
|
import { ElementSizes as u, LuzmoElement as d, SizedMixin as f } from "@luzmo/lucero/utils";
|
|
30
30
|
import "@luzmo/lucero/text-field";
|
|
31
31
|
//#region src/components/filter-value-picker-hierarchy/filter-value-picker-hierarchy.module.scss?inline
|
|
32
|
-
var p = ":host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-select,luzmo-text-field{min-width:var(--luzmo-filter-value-picker-hierarchy-control-min-width,var(--filter-value-picker-hierarchy-control-min-width));max-width:100%}.missing-value{color:var(--luzmo-filter-value-picker-hierarchy-missing-value-color,#767676)}:host{--filter-value-picker-hierarchy-control-min-width:0}", m = 5e3, h = class extends t(f(d, { validSizes: Object.values(u) })) {
|
|
32
|
+
var p = ":host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-select,luzmo-text-field{min-width:var(--luzmo-filter-value-picker-hierarchy-control-min-width,var(--filter-value-picker-hierarchy-control-min-width));flex:auto;max-width:100%}.missing-value{color:var(--luzmo-filter-value-picker-hierarchy-missing-value-color,#767676)}:host{--filter-value-picker-hierarchy-control-min-width:0}", m = 5e3, h = class extends t(f(d, { validSizes: Object.values(u) })) {
|
|
33
33
|
constructor(...e) {
|
|
34
|
-
super(...e), this.contentLanguage = "en", this._hierarchyValues = [], this._retrieving = !
|
|
34
|
+
super(...e), this.contentLanguage = "en", this._hierarchyValues = [], this._retrieving = !1, this._search = "", this._error = null, this._pending = !1, this._allValuesRetrieved = !1, this._hierarchyRequestGeneration = 0, this._runningQueries = [];
|
|
35
35
|
}
|
|
36
36
|
static get styles() {
|
|
37
37
|
return [a(p)];
|
|
@@ -43,8 +43,8 @@ var p = ":host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-s
|
|
|
43
43
|
}
|
|
44
44
|
willUpdate(e) {
|
|
45
45
|
if (super.willUpdate(e), e.has("filter") && this.filter) {
|
|
46
|
-
let t = e.get("filter")?.expression;
|
|
47
|
-
|
|
46
|
+
let t = e.get("filter"), n = t?.expression, r = t?.parameters?.[0], i = this.filter?.parameters?.[0], a = (r?.columnId || r?.formulaId) !== (this.filter?.parameters?.[0]?.columnId || this.filter?.parameters?.[0]?.formulaId) || r?.datasetId !== i?.datasetId;
|
|
47
|
+
this.filter?.parameters?.[1] !== this._lastResolvedOutput && (this._lastResolutionKey = void 0), a && (this._hierarchyRequestGeneration++, this._pending = !1, this._retrieving = !1), a && ([
|
|
48
48
|
"? in ?",
|
|
49
49
|
"? not in ?",
|
|
50
50
|
"? = ?",
|
|
@@ -54,11 +54,95 @@ var p = ":host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-s
|
|
|
54
54
|
"? not in ?",
|
|
55
55
|
"? = ?",
|
|
56
56
|
"? != ?"
|
|
57
|
-
].includes(
|
|
57
|
+
].includes(n)) && (this._hierarchyValues = [], this._allValuesRetrieved = !1), [
|
|
58
|
+
"? in ?",
|
|
59
|
+
"? not in ?",
|
|
60
|
+
"? = ?",
|
|
61
|
+
"? != ?"
|
|
62
|
+
].includes(this.filter.expression) && this._hierarchyValues.length === 0 && this._restoreCachedFirstPage();
|
|
58
63
|
}
|
|
59
64
|
}
|
|
60
|
-
|
|
61
|
-
if (this.
|
|
65
|
+
updated(e) {
|
|
66
|
+
if (super.updated(e), !e.has("filter") || !this.filter) return;
|
|
67
|
+
let t = e.get("filter")?.expression, n = ["? = ?", "? != ?"].includes(this.filter.expression) && t !== void 0 && ![
|
|
68
|
+
"? in ?",
|
|
69
|
+
"? not in ?",
|
|
70
|
+
"? = ?",
|
|
71
|
+
"? != ?"
|
|
72
|
+
].includes(t);
|
|
73
|
+
n && this._hierarchyValues.length > 0 ? this._resolveSingleSelectValue() : n && !this._retrieving && queueMicrotask(() => {
|
|
74
|
+
["? = ?", "? != ?"].includes(this.filter?.expression) && this._hierarchyValues.length === 0 && !this._retrieving && this._fetchHierarchyValues(0, !0);
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
_buildHierarchyQuery(e = 0, t = this._search) {
|
|
78
|
+
let n = this.filter?.parameters?.[0];
|
|
79
|
+
if (!n?.datasetId || !n.columnId && !n.formulaId) return null;
|
|
80
|
+
let r = {
|
|
81
|
+
column_id: n.columnId,
|
|
82
|
+
formula_id: n.formulaId,
|
|
83
|
+
dataset_id: n.datasetId
|
|
84
|
+
}, i = {
|
|
85
|
+
dimensions: [r],
|
|
86
|
+
where: [],
|
|
87
|
+
order: [{
|
|
88
|
+
...r,
|
|
89
|
+
order: "asc"
|
|
90
|
+
}],
|
|
91
|
+
limit: {
|
|
92
|
+
by: m,
|
|
93
|
+
offset: e
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
return t && i.where.push({
|
|
97
|
+
expression: "? like ?",
|
|
98
|
+
parameters: [r, t]
|
|
99
|
+
}), i;
|
|
100
|
+
}
|
|
101
|
+
_getValues(e) {
|
|
102
|
+
return e && Array.isArray(e.data) ? e.data.map((e) => e[0]) : [];
|
|
103
|
+
}
|
|
104
|
+
_applyHierarchyResult(e, t, n) {
|
|
105
|
+
let r = this._getValues(e);
|
|
106
|
+
n || (this._allValuesRetrieved = r.length < m), this._hierarchyValues = t > 0 ? [...this._hierarchyValues, ...r] : r;
|
|
107
|
+
}
|
|
108
|
+
_restoreCachedFirstPage() {
|
|
109
|
+
let e = this._buildHierarchyQuery(0, "");
|
|
110
|
+
if (!e) return !1;
|
|
111
|
+
let t = n.getCachedData(e);
|
|
112
|
+
return t ? (this._applyHierarchyResult(t, 0, ""), this._retrieving = !1, this._error = null, !0) : !1;
|
|
113
|
+
}
|
|
114
|
+
_getMemberLabel(e) {
|
|
115
|
+
let t = r(e?.name, this.contentLanguage, { allowEmpty: !0 });
|
|
116
|
+
return typeof t == "string" ? t : "";
|
|
117
|
+
}
|
|
118
|
+
_findExactMember(e) {
|
|
119
|
+
return this._hierarchyValues.find((t) => String(t?.id) === e || this._getMemberLabel(t) === e);
|
|
120
|
+
}
|
|
121
|
+
_resolveSingleSelectValue() {
|
|
122
|
+
if (!["? = ?", "? != ?"].includes(this.filter?.expression) || this._hierarchyValues.length === 0) return;
|
|
123
|
+
let e = this.filter?.parameters?.[1];
|
|
124
|
+
if (typeof e != "string" && typeof e != "number") return;
|
|
125
|
+
let t = String(e), n = this._findExactMember(t), r = t.toLocaleLowerCase(this.contentLanguage), i = n ?? this._hierarchyValues.find((e) => String(e?.id).toLocaleLowerCase(this.contentLanguage).includes(r) || this._getMemberLabel(e).toLocaleLowerCase(this.contentLanguage).includes(r)), a = (n ?? i ?? this._hierarchyValues[0])?.id;
|
|
126
|
+
if (typeof a != "string" && typeof a != "number") return;
|
|
127
|
+
let o = this.filter.parameters[0], s = [
|
|
128
|
+
o.datasetId,
|
|
129
|
+
o.columnId ?? o.formulaId,
|
|
130
|
+
this.filter.expression,
|
|
131
|
+
String(e),
|
|
132
|
+
String(a)
|
|
133
|
+
].join("|");
|
|
134
|
+
s !== this._lastResolutionKey && (this._lastResolutionKey = s, this._lastResolvedOutput = a, this._value = a, this.filter = {
|
|
135
|
+
...this.filter,
|
|
136
|
+
parameters: [{ ...this.filter.parameters[0] }, a]
|
|
137
|
+
}, this._sendChangeEvent());
|
|
138
|
+
}
|
|
139
|
+
async _fetchHierarchyValues(e = 0, t = !1) {
|
|
140
|
+
let r = this._search;
|
|
141
|
+
if (!r && this._allValuesRetrieved) {
|
|
142
|
+
this._retrieving = !1;
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
if (e === 0 && !r && (this._restoreCachedFirstPage() || this._hierarchyValues.length > 0)) {
|
|
62
146
|
this._retrieving = !1;
|
|
63
147
|
return;
|
|
64
148
|
}
|
|
@@ -66,58 +150,36 @@ var p = ":host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-s
|
|
|
66
150
|
this._retrieving = !1, this._error = "Missing column parameters";
|
|
67
151
|
return;
|
|
68
152
|
}
|
|
69
|
-
let
|
|
70
|
-
if (!
|
|
153
|
+
let i = this.filter.parameters[0], a = i.columnId, o = i.formulaId, s = i.datasetId;
|
|
154
|
+
if (!a && !o) {
|
|
71
155
|
this._retrieving = !1, this._error = "Missing column id or formula id";
|
|
72
156
|
return;
|
|
73
|
-
} else if (!
|
|
157
|
+
} else if (!s) {
|
|
74
158
|
this._retrieving = !1, this._error = "Missing dataset id";
|
|
75
159
|
return;
|
|
76
160
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
dataset_id: a
|
|
84
|
-
}, this._search]
|
|
85
|
-
}, s = {
|
|
86
|
-
dimensions: [{
|
|
87
|
-
column_id: r,
|
|
88
|
-
formula_id: i,
|
|
89
|
-
dataset_id: a
|
|
90
|
-
}],
|
|
91
|
-
where: [],
|
|
92
|
-
order: [{
|
|
93
|
-
column_id: r,
|
|
94
|
-
formula_id: i,
|
|
95
|
-
dataset_id: a,
|
|
96
|
-
order: "asc"
|
|
97
|
-
}],
|
|
98
|
-
limit: {
|
|
99
|
-
by: m,
|
|
100
|
-
offset: e
|
|
101
|
-
}
|
|
102
|
-
};
|
|
103
|
-
this._search && this._allValuesRetrieved && s.where.push(o);
|
|
104
|
-
let c = new AbortController(), l = new Promise((e, t) => {
|
|
105
|
-
n.fetchData(s).then(e).catch(t), c.signal.addEventListener("abort", () => {
|
|
161
|
+
let c = this._buildHierarchyQuery(e, r);
|
|
162
|
+
if (!c) return;
|
|
163
|
+
let l = this._hierarchyRequestGeneration;
|
|
164
|
+
this._pending = t, this._retrieving = !0, this._error = null;
|
|
165
|
+
let u = new AbortController(), d = new Promise((e, t) => {
|
|
166
|
+
n.fetchData(c).then(e).catch(t), u.signal.addEventListener("abort", () => {
|
|
106
167
|
console.warn("Request aborted"), t({ status: "aborted" });
|
|
107
168
|
});
|
|
108
|
-
}),
|
|
109
|
-
promise:
|
|
110
|
-
abortController:
|
|
169
|
+
}), f = {
|
|
170
|
+
promise: d,
|
|
171
|
+
abortController: u
|
|
111
172
|
};
|
|
112
|
-
this._runningQueries.push(
|
|
173
|
+
this._runningQueries.push(f);
|
|
113
174
|
try {
|
|
114
|
-
let
|
|
115
|
-
|
|
175
|
+
let n = await d;
|
|
176
|
+
if (l !== this._hierarchyRequestGeneration) return;
|
|
177
|
+
this._applyHierarchyResult(n, e, r), t && !r && this._resolveSingleSelectValue();
|
|
116
178
|
} catch (e) {
|
|
117
|
-
if (e?.status === "aborted") return;
|
|
179
|
+
if (l !== this._hierarchyRequestGeneration || e?.status === "aborted") return;
|
|
118
180
|
this._error = e instanceof Error ? e.message : "Unknown error", this._hierarchyValues = [];
|
|
119
181
|
} finally {
|
|
120
|
-
this._runningQueries = this._runningQueries.filter((e) => e.promise !==
|
|
182
|
+
this._runningQueries = this._runningQueries.filter((e) => e.promise !== d), l === this._hierarchyRequestGeneration && (this._pending = !1, this._retrieving = !1);
|
|
121
183
|
}
|
|
122
184
|
}
|
|
123
185
|
_sendChangeEvent() {
|
|
@@ -155,11 +217,15 @@ var p = ":host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-s
|
|
|
155
217
|
}, 500));
|
|
156
218
|
}
|
|
157
219
|
resetSearchString() {
|
|
158
|
-
this._search = "";
|
|
220
|
+
this._search = "", this._hierarchyRequestGeneration++, this._pending = !1, this._retrieving = !1, this._restoreCachedFirstPage();
|
|
159
221
|
}
|
|
160
222
|
onOpened() {
|
|
161
223
|
this._fetchHierarchyValues();
|
|
162
224
|
}
|
|
225
|
+
_getSelectedOptionValue() {
|
|
226
|
+
let e = this.filter?.parameters?.[1];
|
|
227
|
+
return typeof e != "string" && typeof e != "number" ? e : this._findExactMember(String(e))?.id ?? e;
|
|
228
|
+
}
|
|
163
229
|
renderHierarchyPicker() {
|
|
164
230
|
if (this._error) return i`<div class="error" role="alert">Error: ${this._error}</div>`;
|
|
165
231
|
let e = (this._search ? this._hierarchyValues.filter((e) => r(e.name, this.contentLanguage, { allowEmpty: !0 })?.toLowerCase().includes(this._search.toLowerCase()) || e.toString().toLowerCase().includes(this._search.toLowerCase())) : this._hierarchyValues).map((e) => {
|
|
@@ -173,6 +239,7 @@ var p = ":host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-s
|
|
|
173
239
|
.size=${this.size}
|
|
174
240
|
.label=${u}
|
|
175
241
|
.retrieving=${this._retrieving}
|
|
242
|
+
.pending=${this._pending}
|
|
176
243
|
.selects=${n ? "single" : "multiple"}
|
|
177
244
|
.variant=${n ? "highlight" : "checkboxes"}
|
|
178
245
|
emphasized
|
|
@@ -188,7 +255,7 @@ var p = ":host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-s
|
|
|
188
255
|
@luzmo-closed=${this.resetSearchString}
|
|
189
256
|
@luzmo-scrolled=${this.onScrolled}
|
|
190
257
|
.options=${e}
|
|
191
|
-
.value=${n ? [this.
|
|
258
|
+
.value=${n ? [this._getSelectedOptionValue()] : this.filter?.parameters?.[1]}
|
|
192
259
|
>
|
|
193
260
|
</luzmo-select>`;
|
|
194
261
|
}
|
|
@@ -227,6 +294,6 @@ e([o({
|
|
|
227
294
|
})], h.prototype, "contentLanguage", void 0), e([o({
|
|
228
295
|
type: Object,
|
|
229
296
|
reflect: !1
|
|
230
|
-
})], h.prototype, "filter", void 0), e([s()], h.prototype, "_hierarchyValues", void 0), e([s()], h.prototype, "_retrieving", void 0), e([s()], h.prototype, "_search", void 0), e([s()], h.prototype, "_error", void 0), h = e([c()], h), customElements.get("luzmo-filter-value-picker-hierarchy") || customElements.define("luzmo-filter-value-picker-hierarchy", h);
|
|
297
|
+
})], h.prototype, "filter", void 0), e([s()], h.prototype, "_hierarchyValues", void 0), e([s()], h.prototype, "_retrieving", void 0), e([s()], h.prototype, "_search", void 0), e([s()], h.prototype, "_error", void 0), e([s()], h.prototype, "_pending", void 0), h = e([c()], h), customElements.get("luzmo-filter-value-picker-hierarchy") || customElements.define("luzmo-filter-value-picker-hierarchy", h);
|
|
231
298
|
//#endregion
|
|
232
299
|
export { h as t };
|
|
@@ -17,4 +17,4 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../filter-value-picker-numeric-
|
|
20
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../filter-value-picker-numeric-BCaSriJT.cjs");Object.defineProperty(exports,"LuzmoFilterValuePickerNumeric",{enumerable:!0,get:function(){return e.t}});
|
|
@@ -24,5 +24,5 @@
|
|
|
24
24
|
e.setAttribute("data-luzmo-vars", ""), e.textContent = "html{--luzmo-animation-duration: 0.15s;--luzmo-border-color: rgba(var(--luzmo-border-color-rgb), 0.1);--luzmo-border-color-hover: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-down: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-border-color-focus: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-rgb: 0, 0, 0;--luzmo-border-color-full: rgb(180, 180, 180);--luzmo-border-color-full-hover: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-full-down: color-mix(in oklch, var(--luzmo-border-color-full), black 45%);--luzmo-border-color-full-focus: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-disabled: #dddddd;--luzmo-border-radius: 6px;--luzmo-border-radius-s: 4px;--luzmo-border-radius-l: 8px;--luzmo-border-radius-xl: 12px;--luzmo-border-radius-full: 999rem;--luzmo-background-color: #ffffff;--luzmo-background-color-rgb: 255, 255, 255;--luzmo-background-color-disabled: #eeeeee;--luzmo-background-color-hover: color-mix( in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5% );--luzmo-background-color-down: color-mix(in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 7%), black 1%);--luzmo-background-color-focus: color-mix( in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5% );--luzmo-background-color-highlight: rgb(240, 240, 240);--luzmo-background-color-highlight-disabled: rgb(245, 245, 245);--luzmo-background-color-highlight-hover: color-mix(in oklch, var(--luzmo-background-color-highlight), black 10%);--luzmo-background-color-highlight-down: color-mix(in oklch, var(--luzmo-background-color-highlight), black 20%);--luzmo-background-color-highlight-focus: color-mix(in oklch, var(--luzmo-background-color-highlight), black 10%);--luzmo-background-color-alt-1: rgb(250, 250, 250);--luzmo-background-color-alt-2: rgb(239, 239, 239);--luzmo-border-width: 1px;--luzmo-shadow-color-rgb: 0, 0, 0;--luzmo-shadow-opacity: 0.1;--luzmo-shadow-color: rgba(var(--luzmo-shadow-color-rgb), var(--luzmo-shadow-opacity));--luzmo-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', Helvetica, Arial, sans-serif;--luzmo-font-size-xs: 10px;--luzmo-font-size-s: 12px;--luzmo-font-size-m: 14px;--luzmo-font-size: 14px;--luzmo-font-size-l: 16px;--luzmo-font-size-xl: 18px;--luzmo-font-size-xxl: 20px;--luzmo-font-style: normal;--luzmo-line-height: normal;--luzmo-font-weight: 400;--luzmo-font-weight-semibold: 500;--luzmo-font-weight-bold: 600;--luzmo-font-color: #333;--luzmo-font-color-hard: #000;--luzmo-font-color-disabled: var(--luzmo-color-disabled);--luzmo-font-color-extra-dimmed: #888;--luzmo-font-color-hover: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-font-color-down: color-mix(in oklch, var(--luzmo-font-color), black 20%);--luzmo-font-color-focus: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-scrollbar-size: 6px;--luzmo-scrollbar-width: thin;--luzmo-scrollbar-track-background: transparent;--luzmo-scrollbar-track-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-background: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-scrollbar-thumb-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-hover-background: rgba(var(--luzmo-border-color-rgb), 0.4);--luzmo-primary: #4434ff;--luzmo-primary-hover: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-down: color-mix(in oklch, var(--luzmo-primary), black 20%);--luzmo-primary-focus: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-inverse-color: #ffffff;--luzmo-primary-rgb: 68, 52, 255;--luzmo-secondary: #ff00ff;--luzmo-secondary-hover: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-down: color-mix(in oklch, var(--luzmo-secondary), black 20%);--luzmo-secondary-focus: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-inverse-color: #ffffff;--luzmo-secondary-rgb: 255, 0, 255;--luzmo-secondary-outline: rgba(255, 0, 255, 0.2);--luzmo-negative-color: #ca221c;--luzmo-negative-color-hover: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-down: color-mix(in oklch, var(--luzmo-negative-color), black 20%);--luzmo-negative-color-focus: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-rgb: 202, 34, 28;--luzmo-positive-color: rgb(20, 150, 101);--luzmo-positive-color-hover: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-down: color-mix(in oklch, var(--luzmo-positive-color), black 20%);--luzmo-positive-color-focus: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-rgb: 20, 150, 101;--luzmo-selected-color: rgb(110, 110, 110);--luzmo-selected-color-hover: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-down: color-mix(in oklch, var(--luzmo-selected-color), black 45%);--luzmo-selected-color-focus: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-hard: #1e1e1e;--luzmo-selected-color-hard-hover: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-selected-color-hard-down: color-mix(in oklch, var(--luzmo-selected-color-hard), black 45%);--luzmo-selected-color-hard-focus: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-color-informative: #1a77e9;--luzmo-color-informative-rgb: 26, 119, 233;--luzmo-color-disabled: #aaaaaa;--luzmo-spacing-1: 2px;--luzmo-spacing-2: 4px;--luzmo-spacing-3: 8px;--luzmo-spacing-4: 12px;--luzmo-spacing-5: 16px;--luzmo-indicator-gap: 2px;--luzmo-indicator-width: 1px;--luzmo-indicator-color: var(--luzmo-primary);--luzmo-component-height-xxs: 20px;--luzmo-component-height-xs: 24px;--luzmo-component-height-s: 28px;--luzmo-component-height: 32px;--luzmo-component-height-l: 40px;--luzmo-component-height-xl: 48px;--luzmo-component-height-xxl: 64px;--luzmo-icon-size-xxs: 12px;--luzmo-icon-size-xs: 14px;--luzmo-icon-size-s: 16px;--luzmo-icon-size-m: 18px;--luzmo-icon-size-l: 20px;--luzmo-icon-size-xl: 22px;--luzmo-icon-size-xxl: 32px}", document.head.appendChild(e);
|
|
25
25
|
}
|
|
26
26
|
})();
|
|
27
|
-
import { t as e } from "../filter-value-picker-numeric-
|
|
27
|
+
import { t as e } from "../filter-value-picker-numeric-CLRBOcom.js";
|
|
28
28
|
export { e as LuzmoFilterValuePickerNumeric };
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-
|
|
20
|
+
const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-BbOPy_BO.cjs"),n=require("./data-broker-CyMYR6w1.cjs");let r=require("lit"),i=require("lit/decorators.js"),a=require("@lit/localize");require("@luzmo/lucero/select"),require("@luzmo/lucero/number-field");let o=require("@luzmo/lucero/utils");var s=`:host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-number-field,luzmo-select{min-width:var(--luzmo-filter-value-picker-numeric-control-min-width,var(--filter-value-picker-numeric-control-min-width));flex:auto;max-width:100%}.missing-value{opacity:.4}:host{--filter-value-picker-numeric-control-min-width:0}`,c=5e3,l=class extends t.t((0,o.SizedMixin)(o.LuzmoElement,{validSizes:Object.values(o.ElementSizes)})){constructor(...e){super(...e),this.contentLanguage=`en`,this._numericValues=[],this._retrieving=!0,this._search=``,this._error=null,this._allValuesRetrieved=!1,this._runningQueries=[]}static get styles(){return[(0,r.unsafeCSS)(s)]}connectedCallback(){super.connectedCallback();let e={};this.apiUrl&&(e.apiUrl=this.apiUrl),this.cacheTime&&(e.staleTime=this.cacheTime,e.gcTime=this.cacheTime*2),this.authKey&&this.authToken&&(e.authKey=this.authKey,e.authToken=this.authToken),n.t.configure(e)}willUpdate(e){if(super.willUpdate(e),e.has(`filter`)&&this.filter){let t=e.get(`filter`)?.expression,n=this.filter?.expression;((e.get(`filter`)?.parameters?.[0]?.columnId||e.get(`filter`)?.parameters?.[0]?.formulaId)!==(this.filter?.parameters?.[0]?.columnId||this.filter?.parameters?.[0]?.formulaId)||![`? in ?`,`? not in ?`].includes(t))&&[`? in ?`,`? not in ?`].includes(n)&&(this._numericValues=[],this._allValuesRetrieved=!1,this._retrieving=!0)}}async _fetchNumericValues(e=0){if(this._allValuesRetrieved){this._retrieving=!1;return}if(!this.filter?.parameters?.[0]){this._retrieving=!1,this._error=`Missing column parameters`;return}let t=this.filter.parameters[0],r=t.columnId,i=t.formulaId,a=t.datasetId;if(!r&&!i){this._retrieving=!1,this._error=`Missing column id or formula id`;return}else if(!a){this._retrieving=!1,this._error=`Missing dataset id`;return}this._retrieving=!0,this._error=null;let o={expression:`? like ?`,parameters:[{dataset_id:a,expression:`CAST({${a}:${r??i}},hierarchy)`},this._search]},s={dimensions:[{column_id:r,formula_id:i,dataset_id:a}],where:[],order:[{column_id:r,formula_id:i,dataset_id:a,order:`asc`}],limit:{by:c,offset:e}};this._search&&!this._allValuesRetrieved&&s.where.push(o);let l=new AbortController,u=new Promise((e,t)=>{n.t.fetchData(s).then(e).catch(t),l.signal.addEventListener(`abort`,()=>{console.warn(`Request aborted`),t({status:`aborted`})})}),d={promise:u,abortController:l};this._runningQueries.push(d);try{let t=await u,n=t&&Array.isArray(t.data)?t.data.map(e=>e[0]):[];this._search||(this._allValuesRetrieved=n.length<c),this._numericValues=e>0?[...this._numericValues,...n]:n}catch(e){if(e?.status===`aborted`)return;this._error=e instanceof Error?e.message:`Unknown error`,this._numericValues=[]}finally{this._runningQueries=this._runningQueries.filter(e=>e.promise!==u),this._retrieving=!1}}_sendChangeEvent(){this.dispatchEvent(new CustomEvent(`luzmo-filter-value-changed`,{bubbles:!0,composed:!0,cancelable:!0,detail:{value:this._value}}))}setValue(e){let t=[`? in ?`,`? not in ?`].includes(this.filter?.expression)?e?.detail?.value:e?.target?.value;this._value!==t&&(this._value=t,this.filter={...this.filter,parameters:[{...this.filter?.parameters?.[0]},t]},this._sendChangeEvent())}selectValue(e){let t=(e.detail?.value??``).map(e=>Number.parseFloat(e));this.filter={...this.filter,parameters:[{...this.filter?.parameters?.[0]},t]},this._value=t,this._sendChangeEvent()}onScrolled(e){!this._retrieving&&!this._allValuesRetrieved&&e?.detail?.last===this._numericValues.length-1&&this._fetchNumericValues(this._numericValues.length)}renderNumberField(){return r.html`<luzmo-number-field
|
|
21
21
|
label="Numeric filter value"
|
|
22
22
|
grows
|
|
23
23
|
.size=${this.size}
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
20
|
import { t as e } from "./decorate-DyMgX_Uh.js";
|
|
21
|
-
import { t } from "./localized-mixin-
|
|
22
|
-
import { t as n } from "./data-broker-
|
|
21
|
+
import { t } from "./localized-mixin-D1ss6vE4.js";
|
|
22
|
+
import { t as n } from "./data-broker-B0uUO5er.js";
|
|
23
23
|
import { html as r, unsafeCSS as i } from "lit";
|
|
24
24
|
import { property as a, state as o } from "lit/decorators.js";
|
|
25
25
|
import { localized as s, msg as c } from "@lit/localize";
|
|
@@ -27,7 +27,7 @@ import "@luzmo/lucero/select";
|
|
|
27
27
|
import "@luzmo/lucero/number-field";
|
|
28
28
|
import { ElementSizes as l, LuzmoElement as u, SizedMixin as d } from "@luzmo/lucero/utils";
|
|
29
29
|
//#region src/components/filter-value-picker-numeric/filter-value-picker-numeric.module.scss?inline
|
|
30
|
-
var f = ":host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-number-field,luzmo-select{min-width:var(--luzmo-filter-value-picker-numeric-control-min-width,var(--filter-value-picker-numeric-control-min-width));max-width:100%}.missing-value{opacity:.4}:host{--filter-value-picker-numeric-control-min-width:0}", p = 5e3, m = class extends t(d(u, { validSizes: Object.values(l) })) {
|
|
30
|
+
var f = ":host{flex-direction:row;flex-shrink:1;min-width:0;display:flex}luzmo-number-field,luzmo-select{min-width:var(--luzmo-filter-value-picker-numeric-control-min-width,var(--filter-value-picker-numeric-control-min-width));flex:auto;max-width:100%}.missing-value{opacity:.4}:host{--filter-value-picker-numeric-control-min-width:0}", p = 5e3, m = class extends t(d(u, { validSizes: Object.values(l) })) {
|
|
31
31
|
constructor(...e) {
|
|
32
32
|
super(...e), this.contentLanguage = "en", this._numericValues = [], this._retrieving = !0, this._search = "", this._error = null, this._allValuesRetrieved = !1, this._runningQueries = [];
|
|
33
33
|
}
|
|
@@ -17,4 +17,4 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../filters-
|
|
20
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../filters-DPh6G5_6.cjs");exports.FilterUnrepresentableError=e.a,Object.defineProperty(exports,"LuzmoFilters",{enumerable:!0,get:function(){return e.t}}),exports.MAX_FILTER_NESTING_DEPTH=e.o,exports.detectFiltersFormat=e.s,exports.reverseTransformFilters=e.n,exports.toLogicalCondition=e.r,exports.transformFilters=e.i;
|
|
@@ -24,5 +24,5 @@
|
|
|
24
24
|
e.setAttribute("data-luzmo-vars", ""), e.textContent = "html{--luzmo-animation-duration: 0.15s;--luzmo-border-color: rgba(var(--luzmo-border-color-rgb), 0.1);--luzmo-border-color-hover: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-down: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-border-color-focus: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-rgb: 0, 0, 0;--luzmo-border-color-full: rgb(180, 180, 180);--luzmo-border-color-full-hover: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-full-down: color-mix(in oklch, var(--luzmo-border-color-full), black 45%);--luzmo-border-color-full-focus: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-disabled: #dddddd;--luzmo-border-radius: 6px;--luzmo-border-radius-s: 4px;--luzmo-border-radius-l: 8px;--luzmo-border-radius-xl: 12px;--luzmo-border-radius-full: 999rem;--luzmo-background-color: #ffffff;--luzmo-background-color-rgb: 255, 255, 255;--luzmo-background-color-disabled: #eeeeee;--luzmo-background-color-hover: color-mix( in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5% );--luzmo-background-color-down: color-mix(in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 7%), black 1%);--luzmo-background-color-focus: color-mix( in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5% );--luzmo-background-color-highlight: rgb(240, 240, 240);--luzmo-background-color-highlight-disabled: rgb(245, 245, 245);--luzmo-background-color-highlight-hover: color-mix(in oklch, var(--luzmo-background-color-highlight), black 10%);--luzmo-background-color-highlight-down: color-mix(in oklch, var(--luzmo-background-color-highlight), black 20%);--luzmo-background-color-highlight-focus: color-mix(in oklch, var(--luzmo-background-color-highlight), black 10%);--luzmo-background-color-alt-1: rgb(250, 250, 250);--luzmo-background-color-alt-2: rgb(239, 239, 239);--luzmo-border-width: 1px;--luzmo-shadow-color-rgb: 0, 0, 0;--luzmo-shadow-opacity: 0.1;--luzmo-shadow-color: rgba(var(--luzmo-shadow-color-rgb), var(--luzmo-shadow-opacity));--luzmo-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', Helvetica, Arial, sans-serif;--luzmo-font-size-xs: 10px;--luzmo-font-size-s: 12px;--luzmo-font-size-m: 14px;--luzmo-font-size: 14px;--luzmo-font-size-l: 16px;--luzmo-font-size-xl: 18px;--luzmo-font-size-xxl: 20px;--luzmo-font-style: normal;--luzmo-line-height: normal;--luzmo-font-weight: 400;--luzmo-font-weight-semibold: 500;--luzmo-font-weight-bold: 600;--luzmo-font-color: #333;--luzmo-font-color-hard: #000;--luzmo-font-color-disabled: var(--luzmo-color-disabled);--luzmo-font-color-extra-dimmed: #888;--luzmo-font-color-hover: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-font-color-down: color-mix(in oklch, var(--luzmo-font-color), black 20%);--luzmo-font-color-focus: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-scrollbar-size: 6px;--luzmo-scrollbar-width: thin;--luzmo-scrollbar-track-background: transparent;--luzmo-scrollbar-track-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-background: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-scrollbar-thumb-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-hover-background: rgba(var(--luzmo-border-color-rgb), 0.4);--luzmo-primary: #4434ff;--luzmo-primary-hover: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-down: color-mix(in oklch, var(--luzmo-primary), black 20%);--luzmo-primary-focus: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-inverse-color: #ffffff;--luzmo-primary-rgb: 68, 52, 255;--luzmo-secondary: #ff00ff;--luzmo-secondary-hover: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-down: color-mix(in oklch, var(--luzmo-secondary), black 20%);--luzmo-secondary-focus: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-inverse-color: #ffffff;--luzmo-secondary-rgb: 255, 0, 255;--luzmo-secondary-outline: rgba(255, 0, 255, 0.2);--luzmo-negative-color: #ca221c;--luzmo-negative-color-hover: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-down: color-mix(in oklch, var(--luzmo-negative-color), black 20%);--luzmo-negative-color-focus: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-rgb: 202, 34, 28;--luzmo-positive-color: rgb(20, 150, 101);--luzmo-positive-color-hover: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-down: color-mix(in oklch, var(--luzmo-positive-color), black 20%);--luzmo-positive-color-focus: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-rgb: 20, 150, 101;--luzmo-selected-color: rgb(110, 110, 110);--luzmo-selected-color-hover: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-down: color-mix(in oklch, var(--luzmo-selected-color), black 45%);--luzmo-selected-color-focus: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-hard: #1e1e1e;--luzmo-selected-color-hard-hover: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-selected-color-hard-down: color-mix(in oklch, var(--luzmo-selected-color-hard), black 45%);--luzmo-selected-color-hard-focus: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-color-informative: #1a77e9;--luzmo-color-informative-rgb: 26, 119, 233;--luzmo-color-disabled: #aaaaaa;--luzmo-spacing-1: 2px;--luzmo-spacing-2: 4px;--luzmo-spacing-3: 8px;--luzmo-spacing-4: 12px;--luzmo-spacing-5: 16px;--luzmo-indicator-gap: 2px;--luzmo-indicator-width: 1px;--luzmo-indicator-color: var(--luzmo-primary);--luzmo-component-height-xxs: 20px;--luzmo-component-height-xs: 24px;--luzmo-component-height-s: 28px;--luzmo-component-height: 32px;--luzmo-component-height-l: 40px;--luzmo-component-height-xl: 48px;--luzmo-component-height-xxl: 64px;--luzmo-icon-size-xxs: 12px;--luzmo-icon-size-xs: 14px;--luzmo-icon-size-s: 16px;--luzmo-icon-size-m: 18px;--luzmo-icon-size-l: 20px;--luzmo-icon-size-xl: 22px;--luzmo-icon-size-xxl: 32px}", document.head.appendChild(e);
|
|
25
25
|
}
|
|
26
26
|
})();
|
|
27
|
-
import { a as e, i as t, n, o as r, r as i, s as a, t as o } from "../filters-
|
|
27
|
+
import { a as e, i as t, n, o as r, r as i, s as a, t as o } from "../filters-hIID3Ol5.js";
|
|
28
28
|
export { e as FilterUnrepresentableError, o as LuzmoFilters, r as MAX_FILTER_NESTING_DEPTH, a as detectFiltersFormat, n as reverseTransformFilters, i as toLogicalCondition, t as transformFilters };
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/*! * A kit of modern Luzmo Web Components for analytics in your web application.
|
|
2
|
+
*
|
|
3
|
+
* Copyright © 2026 Luzmo
|
|
4
|
+
* All rights reserved.
|
|
5
|
+
* Luzmo web components (“Luzmo Web Components”)
|
|
6
|
+
* must be used according to the Luzmo Terms of Service.
|
|
7
|
+
* This license allows users with a current active Luzmo account
|
|
8
|
+
* to use the Luzmo Web Components. This license terminates
|
|
9
|
+
* automatically if a user no longer has an active Luzmo account.
|
|
10
|
+
* Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
|
|
11
|
+
*
|
|
12
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
14
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
15
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
16
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
17
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
|
+
* SOFTWARE.
|
|
19
|
+
* */
|
|
20
|
+
const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-BbOPy_BO.cjs"),n=require("./v4-Dyp-SQ1c.cjs");require("./filter-item-QGXrunyl.cjs");let r=require("@luzmo/icons");require("@luzmo/lucero/button"),require("@luzmo/lucero/icon");let i=require("lit"),a=require("lit/decorators.js"),o=require("@lit/localize");require("@luzmo/lucero/action-button");let s=require("lit/directives/repeat.js"),c=require("@luzmo/lucero/utils");var l=20,u=class extends Error{constructor(e){super(e),this.name=`FilterUnrepresentableError`}},d=new Set([`and`,`or`]),f=[`datasetId`,`dataset_id`,`columnId`,`column_id`,`formulaId`,`formula_id`,`formula`,`columnExpression`,`value`,`ignoredItemIds`];function p(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function m(e){return!p(e)||e.condition!==void 0&&(typeof e.condition!=`string`||!d.has(e.condition.toLowerCase()))?!1:`filters`in e||`subGroups`in e}function h(e){return p(e)&&`expression`in e&&!(`condition`in e)}function g(e){return f.some(t=>t in e)}function ee(e,t=!1){let n=[e.columnId!==void 0||e.column_id!==void 0,e.formulaId!==void 0||e.formula_id!==void 0,e.formula!==void 0].filter(Boolean).length;return n===1?!0:n>1?!1:e.columnExpression!==void 0||t&&e.expression!==void 0}function _(e){return!h(e)||typeof e.expression!=`string`||e.expression.length===0||`parameters`in e||typeof e.datasetId!=`string`&&typeof e.dataset_id!=`string`?!1:ee(e)}function v(e){return!h(e)||!Array.isArray(e.parameters)?!1:!g(e)}function te(e){if(!(`parameters`in e))return;let t=f.find(t=>t in e);if(t!==void 0)throw new u(`Filter leaf mixes "parameters" with the clean inline key "${t}".`)}function ne(e){throw typeof e.expression!=`string`||e.expression.length===0?new u(`Clean filter leaf is missing a non-empty "expression".`):typeof e.datasetId!=`string`&&typeof e.dataset_id!=`string`?new u(`Clean filter leaf "${e.expression}" is missing a "datasetId".`):new u(`Clean filter leaf "${e.expression}" must name exactly one of "columnId", "formulaId", "formula", or "columnExpression".`)}function y(e){return e===`where`||e===`having`}function b(e){if(e>20)throw new u(`Filter nesting exceeds the maximum depth of 20.`)}function re(e){if(e==null)return`empty`;if(!Array.isArray(e))return`unknown`;if(e.length===0)return`empty`;let t=!1,n=!1,r=!1,i=(e,a)=>{if(a>20){r=!0;return}if(m(e)){y(e.clause)&&(n=!0);let t=[...Array.isArray(e.filters)?e.filters:[],...Array.isArray(e.subGroups)?e.subGroups:[]];for(let e of t)i(e,a+1);return}if(h(e)){`parameters`in e&&g(e)?r=!0:_(e)?n=!0:v(e)?t=!0:r=!0;return}r=!0};for(let t of e)i(t,1);return r?`unknown`:n&&t?`mixed`:n?`clean`:t?`canonical`:`empty`}var x=new Set([`? is null`,`? is not null`]),S=new Set([`? = ?`,`? != ?`,`? < ?`,`? <= ?`,`? > ?`,`? >= ?`]),ie=new Set([`? in ?`,`? not in ?`,`? between ?`]),C={"array[numeric]":`numeric[]`,"array[hierarchy]":`hierarchy[]`,"array[datetime]":`datetime[]`},ae=new Set([`level`,`lowestLevel`,`unnest`,`discretization`,`aggregation`,`index`,`include_nonoccurring`,`simplification`]);function w(e,t){return e!==`lowestLevel`&&!(t===null&&ae.has(e))}function T(e){return structuredClone(e)}function E(e){let t=e.datasetId??e.dataset_id;if(typeof t!=`string`||t.length===0)throw new u(`Filter reference is missing a "datasetId".`);return t}function D(e){return p(e)?typeof e.columnId==`string`||typeof e.column_id==`string`||typeof e.formulaId==`string`||typeof e.formula_id==`string`||typeof e.formula==`string`||(typeof e.datasetId==`string`||typeof e.dataset_id==`string`)&&(e.columnExpression!==void 0||e.expression!==void 0):!1}function O(e){let t={type:e.type};return e.bins!==void 0&&(t.bins=e.bins),Array.isArray(e.over)&&(t.over=e.over.map(e=>F(e))),t}function k(e){let t={type:e.type},n=e.datasetId??e.dataset_id,r=e.columnId??e.column_id;return n!==void 0&&(t.datasetId=n),r!==void 0&&(t.columnId=r),e.level!==void 0&&w(`level`,e.level)&&(t.level=e.level),p(e.discretization)&&(t.discretization=O(e.discretization)),e.unnest!==void 0&&w(`unnest`,e.unnest)&&(t.unnest=e.unnest),t}function A(e){let t={type:e.type};return e.bins!==void 0&&(t.bins=e.bins),Array.isArray(e.over)&&(t.over=e.over.map(e=>p(e)?P(e):e)),t}function j(e){let t={type:e.type},n=e.datasetId??e.dataset_id,r=e.columnId??e.column_id;return n!==void 0&&(t.datasetId=n),r!==void 0&&(t.columnId=r),e.level!==void 0&&(t.level=e.level),p(e.discretization)&&(t.discretization=A(e.discretization)),e.unnest!==void 0&&(t.unnest=e.unnest),t}function M(e,t){e.level!==void 0&&(t.level=T(e.level)),p(e.discretization)&&(t.discretization=A(e.discretization)),p(e.aggregation)&&(t.aggregation=j(e.aggregation)),e.unnest!==void 0&&(t.unnest=T(e.unnest))}function N(e,t){let n=e.columnId??e.column_id;if(n!==void 0)return{kind:`columnId`,value:n};let r=e.formulaId??e.formula_id;if(r!==void 0)return{kind:`formulaId`,value:r};if(e.formula!==void 0)return{kind:`formula`,value:e.formula};let i=e.columnExpression??(t?e.expression:void 0);if(i!==void 0)return{kind:`expression`,value:i}}function P(e,t=!0){let n={datasetId:E(e)},r=N(e,t);return r!==void 0&&(r.kind===`expression`?n.expression=r.value:n[r.kind]=r.value),M(e,n),n}function F(e){if(!p(e))throw new u(`Cannot emit a clean filter reference.`);let t={datasetId:E(e)};e.level!==void 0&&w(`level`,e.level)&&(t.level=e.level),p(e.discretization)&&(t.discretization=O(e.discretization)),p(e.aggregation)&&(t.aggregation=k(e.aggregation)),e.unnest!==void 0&&w(`unnest`,e.unnest)&&(t.unnest=e.unnest);let n=N(e,!0);if(n===void 0)throw new u(`Cannot emit a clean filter reference: no column, formula, or expression.`);return n.kind===`expression`?t.columnExpression=n.value:t[n.kind]=n.value,t}function oe(e){if(!p(e)||typeof e.parameter!=`string`||typeof e.type!=`string`)return e;let t=C[e.type];return t===void 0?e:{...e,type:t}}function se(e,t){return p(t)&&typeof t.parameter==`string`?!0:Array.isArray(t)?e!==`? between ?`||t.length===2:!1}function ce(e,t){let n=e.expression,r=[P(e,!1)];if(!x.has(n)&&e.value!==void 0){let t=S.has(n)&&D(e.value);r.push(t?P(e.value):T(e.value))}let i={};typeof e.id==`string`&&(i.id=e.id),`ignoredItemIds`in e&&(i.ignore=T(e.ignoredItemIds)),t!==void 0&&(i.type=t);let a={expression:n,parameters:r};return Object.keys(i).length>0&&(a.properties=i),a}function le(e){let{expression:t}=e;if(typeof t!=`string`||t.length===0)return null;let n=Array.isArray(e.parameters)?e.parameters:[];if(!p(n[0]))throw new u(`Cannot emit a clean filter reference for "${t}".`);let r={...F(n[0]),expression:t};if(!x.has(t)){let e=n[1];if(e===void 0)throw new u(`Filter "${t}" is missing its value operand.`);if(r.value=D(e)&&S.has(t)?F(e):oe(T(e)),ie.has(t)&&!se(t,r.value))throw new u(`Cannot emit an invalid clean filter value for "${t}".`)}let{properties:i}=e;return i?.id!==void 0&&(r.id=i.id),i!==void 0&&`ignore`in i&&(r.ignoredItemIds=T(i.ignore)),r}function I(e){return m(e)}function L(e){return Array.isArray(e.filters)?e.filters:[]}function R(e,t){return e.properties?.type===`having`||e.properties?.type===`where`?e.properties.type:t??`where`}function z(e,t,n=1,r=new Set){b(n);let i=e.clause??t;for(let t of L(e))I(t)?z(t,i,n+1,r):typeof t.expression==`string`&&t.expression.length>0&&r.add(R(t,i));return r}function B(e,t,n=1){b(n);let r=e.clause??t;if(e.condition===`or`&&z(e,r,n).size>1)throw new u(`An "or" group mixes "where" and "having" filters, which clean output cannot represent.`);for(let t of L(e))I(t)&&B(t,r,n+1)}function V(e,t,n,r=1){b(r);let i=e.clause??n,a=[];for(let n of L(e)){if(I(n)){let e=V(n,t,i,r+1);e.filters.length>0&&a.push(e);continue}if(R(n,i)!==t)continue;let e=le(n);e&&a.push(e)}let o={condition:e.condition===`or`?`or`:`and`,filters:a};return e.id!==void 0&&z(e,i,r).size<=1&&(o.id=e.id),o}function H(e){let t=e.clause;B(e,t);let n=z(e,t);return n.size===0&&n.add(t??`where`),[`where`,`having`].filter(e=>n.has(e)).map(n=>({...V(e,n,t),clause:n})).filter(e=>e.filters.length>0)}var U=[`origin`,`datasetId`,`vizId`,`itemId`,`isDrilldown`,`type`];function W(e){return typeof e==`string`&&e.toLowerCase()===`or`?`or`:`and`}function ue(e){return m(e)}function de(e){if(!Array.isArray(e)||e.length===0)return[];let t=p(e[0])?e[0]:void 0,n=e.length>1?e[1]:void 0;return e.length>1?[t,n]:[t]}function fe(e){if(typeof e.expression!=`string`||e.expression.length===0)return null;let t={expression:e.expression,parameters:de(e.parameters)};return e.properties!==void 0&&Object.keys(e.properties).length>0&&(t.properties=structuredClone(e.properties)),t}function G(e,t){let n=e,r=t;for(let e of U)n[e]!==void 0&&(r[e]=n[e])}function K(e){if(!e||!e.filters)return{condition:`and`,filters:[],subGroups:[]};let t=[],n=[];for(let r of e.filters)if(ue(r))n.push(K(r));else{let e=fe(r);e&&t.push(e)}let r={condition:W(e.condition),filters:t,subGroups:n};return e.id!==void 0&&(r.id=e.id),G(e,r),r}function q(e,t){return e?t?.format===`clean`?H(e):[K(e)]:[]}function pe(e,t){let n={expression:typeof e.expression==`string`?e.expression:void 0,parameters:Array.isArray(e.parameters)?[...e.parameters]:[]},r=p(e.properties)?structuredClone(e.properties):{};return t!==void 0&&r.type===void 0&&(r.type=t),Object.keys(r).length>0&&(n.properties=r),n}function J(e,t,n){if(m(e))return Y(e,t,n);if(!p(e))return;let r=e.expression;if(te(e),_(e))return ce(e,t);if(g(e)&&ne(e),v(e))return pe(e,t);throw new u(`Filter leaf "${String(r)}" matches neither a complete clean nor a complete canonical encoding.`)}function Y(e,t,n){b(n);let r=y(e.clause)?e.clause:void 0,i=r??t,a=[];for(let t of Array.isArray(e.filters)?e.filters:[]){let e=J(t,i,n+1);e!==void 0&&a.push(e)}for(let t of Array.isArray(e.subGroups)?e.subGroups:[])m(t)&&a.push(Y(t,i,n+1));let o={condition:W(e.condition),filters:a};return typeof e.id==`string`&&(o.id=e.id),r!==void 0&&(o.clause=r),G(e,o),o}function X(e){return!e||e.length===0?[]:e.filter(e=>m(e)).map(e=>Y(e,void 0,1))}var me=`:host{font-family:var(--luzmo-filters-font-family,var(--luzmo-font-family));color:var(--luzmo-filters-font-color,var(--luzmo-font-color));max-width:100%;display:block;container-type:inline-size}.filter-group-container{max-width:100%;padding:calc(var(--luzmo-indicator-gap) + 2 * var(--luzmo-indicator-width));overflow-x:hidden}.filter-group{flex-direction:row;min-width:0;max-width:100%;display:flex}.filter-group.nested{margin-top:var(--luzmo-filters-nested-group-margin-top,var(--filters-nested-group-margin-top));margin-bottom:var(--luzmo-filters-nested-group-margin-bottom,var(--filters-nested-group-margin-bottom))}.group-content{flex-direction:column;flex:1;min-width:0;display:flex}.filters-list{gap:var(--luzmo-filters-filters-list-gap,var(--filters-filters-list-gap));flex-direction:column;min-width:0;max-width:100%;display:flex}.filter-item-wrapper{align-items:flex-start;min-width:0;max-width:100%;display:flex;position:relative}.filter-item-content{align-items:flex-start;gap:var(--luzmo-filters-filter-line-gap,var(--filters-filter-line-gap));flex-wrap:nowrap;flex:1;min-width:0;display:flex}.filter-item-content luzmo-filter-item{flex:1;min-width:0}.filter-item-content .delete-filter-button{flex-shrink:0;align-self:flex-end;margin-inline-start:auto}.condition-wrapper{flex:0 0 var(--luzmo-filters-condition-warpper-width,var(--filters-condition-warpper-width));justify-content:center;align-items:center;display:flex;position:relative}.condition-wrapper:before{content:"";left:50%;top:var(--luzmo-filters-vertical-line-top,var(--filters-vertical-line-top));bottom:var(--luzmo-filters-vertical-line-bottom,var(--filters-vertical-line-bottom));width:var(--luzmo-filters-vertical-line-width,var(--filters-vertical-line-width));background:var(--luzmo-filters-vertical-line-color,var(--luzmo-border-color));position:absolute}.condition-badge{min-width:auto;padding-inline:var(--luzmo-filters-condition-padding-horizontal,var(--filters-condition-padding-horizontal));text-transform:uppercase;background:var(--luzmo-filters-condition-badge-background,var(--luzmo-primary));color:var(--luzmo-filters-condition-badge-color,var(--luzmo-primary-inverse-color));border-radius:var(--luzmo-filters-condition-badge-border-radius,var(--luzmo-border-radius));box-shadow:0 0 0 var(--luzmo-filters-condition-badge-halo,var(--filters-condition-badge-halo)) var(--luzmo-filters-condition-badge-background,var(--luzmo-background-color));font-weight:700}.condition-badge:hover{background:var(--luzmo-filters-condition-badge-background-hover,var(--luzmo-primary-hover))}.group-actions{margin-top:var(--luzmo-filters-group-actions-margin-top,var(--filters-group-actions-margin-top));gap:var(--luzmo-filters-group-actions-gap,var(--filters-group-actions-gap));flex-wrap:wrap;display:flex}.delete-group-button{margin-left:auto}.add-root-group-container{margin-top:var(--luzmo-filters-add-root-group-container-margin-top,var(--filters-add-root-group-container-margin-top));padding-left:0}.add-subgroup-button,.add-filter-button{--luzmo-action-button-text-to-visual:var(--luzmo-filters-group-actions-text-to-visual,var(--filters-group-actions-text-to-visual));--luzmo-action-button-content-color-default:var(--luzmo-filters-group-actions-color,var(--luzmo-primary-hover));--luzmo-action-button-content-color-hover:var(--luzmo-filters-group-actions-color-hover,var(--luzmo-primary-hover));--luzmo-action-button-content-color-down:var(--luzmo-filters-group-actions-color-down,var(--luzmo-primary-down));--luzmo-action-button-content-color-focus:var(--luzmo-filters-group-actions-color-focus,var(--luzmo-primary-focus))}.add-group-button{--luzmo-button-padding-label-to-icon:var(--luzmo-filters-add-group-button-text-to-visual,var(--filters-add-group-button-text-to-visual))}.dataset-ids-empty-message{color:var(--luzmo-filters-error-message-color,var(--luzmo-disabled-color));font-size:var(--luzmo-filters-error-message-font-size,var(--filters-font-size))}@container (width<=480px){.condition-badge{--luzmo-action-button-font-size:.6875rem;--luzmo-action-button-height:1.2rem;--luzmo-button-line-height:1.2rem;font-size:.6875rem;line-height:1.2rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-90deg)}:host([dir=rtl]) .condition-badge{transform:translate(-50%,-50%)rotate(90deg)}}:host{--filters-condition-warpper-width:56px;--filters-condition-padding-horizontal:var(--luzmo-spacing-2);--filters-condition-badge-halo:var(--luzmo-spacing-3);--filters-filters-list-gap:var(--luzmo-spacing-3);--filters-nested-group-margin-top:var(--luzmo-spacing-3);--filters-nested-group-margin-bottom:var(--luzmo-spacing-3);--filters-vertical-line-top:var(--luzmo-spacing-2);--filters-vertical-line-bottom:var(--luzmo-spacing-2);--filters-vertical-line-width:1px;--filters-group-actions-text-to-visual:var(--luzmo-spacing-2);--filters-add-group-button-text-to-visual:var(--luzmo-spacing-3);--filters-group-actions-gap:var(--luzmo-spacing-3);--filters-add-root-group-container-margin-top:var(--luzmo-spacing-4);--filters-filter-line-gap:var(--luzmo-spacing-3);--filters-group-actions-margin-top:var(--luzmo-spacing-3);--filters-error-message-font-size:var(--luzmo-font-size)}:host([size=s]){--filters-condition-warpper-width:48px;--filters-condition-padding-horizontal:var(--luzmo-spacing-2);--filters-condition-badge-halo:var(--luzmo-spacing-2);--filters-filters-list-gap:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--filters-nested-group-margin-top:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--filters-nested-group-margin-bottom:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--filters-vertical-line-top:var(--luzmo-spacing-2);--filters-vertical-line-bottom:var(--luzmo-spacing-2);--filters-group-actions-text-to-visual:var(--luzmo-spacing-1);--filters-add-group-button-text-to-visual:var(--luzmo-spacing-2);--filters-group-actions-gap:var(--luzmo-spacing-2);--filters-add-root-group-container-margin-top:var(--luzmo-spacing-3);--filters-filter-line-gap:var(--luzmo-spacing-2);--filters-group-actions-margin-top:var(--luzmo-spacing-2);--filters-error-message-font-size:var(--luzmo-font-size-s)}:host([size=l]){--filters-condition-warpper-width:64px;--filters-condition-padding-horizontal:var(--luzmo-spacing-3);--filters-condition-badge-halo:var(--luzmo-spacing-4);--filters-filters-list-gap:var(--luzmo-spacing-4);--filters-nested-group-margin-top:var(--luzmo-spacing-4);--filters-nested-group-margin-bottom:var(--luzmo-spacing-4);--filters-vertical-line-top:var(--luzmo-spacing-3);--filters-vertical-line-bottom:var(--luzmo-spacing-3);--filters-group-actions-text-to-visual:var(--luzmo-spacing-2);--filters-add-group-button-text-to-visual:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--filters-group-actions-gap:var(--luzmo-spacing-3);--filters-add-root-group-container-margin-top:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--filters-filter-line-gap:var(--luzmo-spacing-3);--filters-group-actions-margin-top:var(--luzmo-spacing-3);--filters-error-message-font-size:var(--luzmo-font-size-l)}:host([size=xl]){--filters-condition-warpper-width:72px;--filters-condition-padding-horizontal:var(--luzmo-spacing-3);--filters-condition-badge-halo:var(--luzmo-spacing-4);--filters-filters-list-gap:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--filters-nested-group-margin-top:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--filters-nested-group-margin-bottom:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--filters-vertical-line-top:var(--luzmo-spacing-3);--filters-vertical-line-bottom:var(--luzmo-spacing-3);--filters-group-actions-text-to-visual:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--filters-add-group-button-text-to-visual:var(--luzmo-spacing-4);--filters-group-actions-gap:var(--luzmo-spacing-4);--filters-add-root-group-container-margin-top:var(--luzmo-spacing-5);--filters-filter-line-gap:var(--luzmo-spacing-4);--filters-group-actions-margin-top:var(--luzmo-spacing-4);--filters-error-message-font-size:var(--luzmo-font-size-xl)}@container (width<=480px){.filter-group-container{--filters-condition-warpper-width:32px;--filters-condition-padding-horizontal:var(--luzmo-spacing-2);--filters-condition-badge-halo:var(--luzmo-spacing-2);--filters-filters-list-gap:var(--luzmo-spacing-5)}}`;function Z(e){if(e instanceof u)return e;throw e}var he={and:()=>(0,o.msg)(`AND`,{desc:`Logical AND condition for combining filters`}),or:()=>(0,o.msg)(`OR`,{desc:`Logical OR condition for combining filters`})};function Q(e){return e===`and`?`or`:`and`}var $=class extends t.t((0,c.SizedMixin)(c.LuzmoElement,{validSizes:Object.values(c.ElementSizes)})){constructor(...e){super(...e),this.apiUrl=`https://api.luzmo.com`,this.contentLanguage=`en`,this.filters=[],this.format=`canonical`,this.allowParameters=!1,this.parameters=[],this.debounce=300,this._internalFilterGroup=null,this._hasSyntheticRoot=!1,this._debounceTimeout=null}static get styles(){return[(0,i.unsafeCSS)(me)]}get _oneSizeSmaller(){return{xxs:`xxs`,xs:`xs`,s:`xs`,m:`s`,l:`m`,xl:`l`,xxl:`xl`}[this.size]||`s`}get _isDatasetIdsEmpty(){return!this.datasetIds||this.datasetIds.length===0}disconnectedCallback(){super.disconnectedCallback(),this._debounceTimeout&&=(clearTimeout(this._debounceTimeout),null)}willUpdate(e){if(super.willUpdate(e),e.has(`filters`))try{let e=X(this.filters);e.length===0?(this._internalFilterGroup=null,this._hasSyntheticRoot=!1):e.length===1?(this._internalFilterGroup=structuredClone(e[0]),this._hasSyntheticRoot=!1):(this._internalFilterGroup={condition:`and`,filters:structuredClone(e)},this._hasSyntheticRoot=!0)}catch(t){console.warn(`[${this.localName}] Keeping the current filters, the new value cannot be normalized:`,Z(t)),this.filters=e.get(`filters`)??[]}}_generateEmptyGroup(){return{id:n.t(),condition:`and`,filters:[]}}_generateEmptyFilter(){return{expression:void 0,parameters:[],properties:{id:n.t()}}}_rootGroupsForExport(){if(!this._internalFilterGroup)return[];let e=this._internalFilterGroup.filters.length>0&&this._internalFilterGroup.filters.every(e=>this._isGroup(e));return this._hasSyntheticRoot&&e?structuredClone(this._internalFilterGroup.filters):[structuredClone(this._internalFilterGroup)]}_getFiltersForExport(){let e=this._rootGroupsForExport(),t=this.format===`clean`?`clean`:`canonical`;if(e.length===0)return{filters:[],format:t};if(t===`clean`)try{return{filters:e.flatMap(e=>q(e,{format:`clean`})),format:`clean`}}catch(e){console.warn(`[${this.localName}] Cannot emit clean filters, falling back to canonical output:`,Z(e))}return{filters:e.flatMap(e=>q(e)),format:`canonical`}}_sendChangeEvent(){this._debounceTimeout&&clearTimeout(this._debounceTimeout);let e=()=>{this.dispatchEvent(new CustomEvent(`luzmo-filters-changed`,{bubbles:!0,composed:!0,cancelable:!0,detail:this._getFiltersForExport()}))};this.debounce>0?this._debounceTimeout=setTimeout(e,this.debounce):e()}_isGroup(e){return`condition`in e&&`filters`in e}_handleParameterCreated(e){let t=e.detail?.parameter;!t||this.parameters.some(({parameter:e})=>e===t.parameter)||(this.parameters=[...this.parameters,t])}_toggleCondition(e){e.condition=Q(e.condition),e===this._internalFilterGroup&&(this._hasSyntheticRoot=!1),this.requestUpdate(),this._sendChangeEvent()}_addFilter(e){if(this._isDatasetIdsEmpty)return;let t=e;t||=(this._internalFilterGroup||=this._generateEmptyGroup(),this._internalFilterGroup),t.filters.push(this._generateEmptyFilter()),this.requestUpdate(),this._sendChangeEvent()}_addSubGroup(e){if(this._isDatasetIdsEmpty)return;let t=this._generateEmptyGroup();t.condition=Q(e.condition),t.filters.push(this._generateEmptyFilter()),e.filters.push(t),this.requestUpdate(),this._sendChangeEvent()}_removeFilter(e,t){if(this._internalFilterGroup){if(e.filters.splice(t,1),e!==this._internalFilterGroup&&e.filters.length===0){let t=this._findParentGroup(this._internalFilterGroup,e);if(t){let n=t.filters.indexOf(e);n!==-1&&t.filters.splice(n,1)}}this._collapseGroupsAfterDelete(),this.requestUpdate(),this._sendChangeEvent()}}_updateFilter(e,t,n){n.stopPropagation(),this._isGroup(e.filters[t])||(e.filters[t]=n.detail.filter,this._sendChangeEvent())}_addGroup(){if(this._isDatasetIdsEmpty)return;this._internalFilterGroup||=this._generateEmptyGroup();let e=this._generateEmptyGroup();e.condition=Q(this._internalFilterGroup.condition),e.filters.push(this._internalFilterGroup);let t=this._generateEmptyGroup();t.condition=Q(e.condition),t.filters.push(this._generateEmptyFilter()),e.filters.push(t),this._internalFilterGroup=e,this._hasSyntheticRoot=!1,this.requestUpdate(),this._sendChangeEvent()}_renderFilterItem(e,t,n){return i.html`
|
|
21
|
+
<div class="filter-item-wrapper">
|
|
22
|
+
<div class="filter-item-content">
|
|
23
|
+
<luzmo-filter-item
|
|
24
|
+
.apiUrl=${this.apiUrl}
|
|
25
|
+
.authKey=${this.authKey}
|
|
26
|
+
.authToken=${this.authToken}
|
|
27
|
+
.cacheTime=${this.cacheTime}
|
|
28
|
+
.language=${this.language}
|
|
29
|
+
.contentLanguage=${this.contentLanguage}
|
|
30
|
+
.timeZone=${this.timeZone}
|
|
31
|
+
.datasetIds=${this.datasetIds}
|
|
32
|
+
.filter=${e}
|
|
33
|
+
.allowParameters=${this.allowParameters}
|
|
34
|
+
.parameters=${this.parameters}
|
|
35
|
+
.size=${this.size}
|
|
36
|
+
@luzmo-filter-changed=${this._updateFilter.bind(this,t,n)}
|
|
37
|
+
@luzmo-parameter-created=${this._handleParameterCreated}
|
|
38
|
+
></luzmo-filter-item>
|
|
39
|
+
<luzmo-action-button
|
|
40
|
+
class="delete-filter-button"
|
|
41
|
+
.size=${this.size}
|
|
42
|
+
quiet
|
|
43
|
+
.label=${(0,o.msg)(`Remove filter`,{desc:`Aria label for remove filter button`})}
|
|
44
|
+
@click=${this._removeFilter.bind(this,t,n)}
|
|
45
|
+
>
|
|
46
|
+
<luzmo-icon slot="icon" .icon=${r.luzmoTrashOutline} .size=${this.size}></luzmo-icon>
|
|
47
|
+
</luzmo-action-button>
|
|
48
|
+
</div>
|
|
49
|
+
</div>
|
|
50
|
+
`}_renderGroup(e,t=!1){let n=e.filters.length>0,a=e.filters.length>1,c=he[e.condition]?.()??e.condition;return i.html`
|
|
51
|
+
<div class="filter-group ${t?`nested`:``}" role="group">
|
|
52
|
+
${t?i.html`
|
|
53
|
+
<div class="condition-wrapper">
|
|
54
|
+
${a?i.html`
|
|
55
|
+
<luzmo-action-button
|
|
56
|
+
class="condition-badge"
|
|
57
|
+
.size=${this._oneSizeSmaller}
|
|
58
|
+
quiet
|
|
59
|
+
aria-pressed=${e.condition===`and`?`true`:`false`}
|
|
60
|
+
.label=${(0,o.msg)(`Toggle filter condition, currently `,{desc:`Aria label prefix for filter condition toggle`})+c}
|
|
61
|
+
@click=${this._toggleCondition.bind(this,e)}
|
|
62
|
+
>
|
|
63
|
+
${c}
|
|
64
|
+
</luzmo-action-button>
|
|
65
|
+
`:``}
|
|
66
|
+
</div>
|
|
67
|
+
`:a?i.html`
|
|
68
|
+
<div class="condition-wrapper">
|
|
69
|
+
<luzmo-action-button
|
|
70
|
+
class="condition-badge"
|
|
71
|
+
.size=${this._oneSizeSmaller}
|
|
72
|
+
quiet
|
|
73
|
+
aria-pressed=${e.condition===`and`?`true`:`false`}
|
|
74
|
+
.label=${(0,o.msg)(`Toggle filter condition, currently `,{desc:`Aria label prefix for filter condition toggle`})+c}
|
|
75
|
+
@click=${this._toggleCondition.bind(this,e)}
|
|
76
|
+
>
|
|
77
|
+
${c}
|
|
78
|
+
</luzmo-action-button>
|
|
79
|
+
</div>
|
|
80
|
+
`:``}
|
|
81
|
+
<div class="group-content">
|
|
82
|
+
${n?i.html`
|
|
83
|
+
<div class="filters-list">
|
|
84
|
+
${(0,s.repeat)(e.filters,(e,t)=>t,(t,n)=>i.html`
|
|
85
|
+
${this._isGroup(t)?this._renderGroup(t,!0):this._renderFilterItem(t,e,n)}
|
|
86
|
+
`)}
|
|
87
|
+
</div>
|
|
88
|
+
`:``}
|
|
89
|
+
|
|
90
|
+
<div class="group-actions">
|
|
91
|
+
<luzmo-action-button
|
|
92
|
+
class="add-filter-button"
|
|
93
|
+
.size=${this.size}
|
|
94
|
+
quiet
|
|
95
|
+
?disabled=${this._isDatasetIdsEmpty}
|
|
96
|
+
@click=${this._addFilter.bind(this,e)}
|
|
97
|
+
>
|
|
98
|
+
<luzmo-icon slot="icon" .icon=${r.luzmoPlus} .size=${this._oneSizeSmaller}></luzmo-icon>
|
|
99
|
+
${(0,o.msg)(`Filter`,{desc:`Add filter button label`})}
|
|
100
|
+
</luzmo-action-button>
|
|
101
|
+
|
|
102
|
+
<luzmo-action-button
|
|
103
|
+
class="add-subgroup-button"
|
|
104
|
+
.size=${this.size}
|
|
105
|
+
quiet
|
|
106
|
+
?disabled=${this._isDatasetIdsEmpty}
|
|
107
|
+
@click=${this._addSubGroup.bind(this,e)}
|
|
108
|
+
>
|
|
109
|
+
<luzmo-icon slot="icon" .icon=${r.luzmoPlus} .size=${this._oneSizeSmaller}></luzmo-icon>
|
|
110
|
+
${(0,o.msg)(`Subgroup`,{desc:`Add subgroup button label`})}
|
|
111
|
+
</luzmo-action-button>
|
|
112
|
+
</div>
|
|
113
|
+
</div>
|
|
114
|
+
</div>
|
|
115
|
+
`}_findParentGroup(e,t){for(let n of e.filters){if(n===t)return e;if(this._isGroup(n)){let e=this._findParentGroup(n,t);if(e)return e}}return null}_collapseIfNeeded(e){if(e.filters.length===1&&this._isGroup(e.filters[0])){let t=e.filters[0];e.condition=t.condition,e.filters=t.filters,e.id=t.id,e.clause=t.clause,e.origin=t.origin,e.datasetId=t.datasetId,e.vizId=t.vizId,e.itemId=t.itemId,e.isDrilldown=t.isDrilldown,e.type=t.type,e===this._internalFilterGroup&&(this._hasSyntheticRoot=!1)}}_collapseGroupsAfterDelete(){if(!this._internalFilterGroup)return;let e=t=>{for(let n of t.filters)this._isGroup(n)&&e(n);this._collapseIfNeeded(t)};e(this._internalFilterGroup)}render(){if(this._isDatasetIdsEmpty)return i.html`
|
|
116
|
+
<div class="filter-group-container">
|
|
117
|
+
<div class="dataset-ids-empty-message" role="status">
|
|
118
|
+
${(0,o.msg)(`Cannot retrieve dataset data fields`,{desc:`Error message when datasetIds is empty`})}
|
|
119
|
+
</div>
|
|
120
|
+
</div>
|
|
121
|
+
`;if(!this._internalFilterGroup||this._internalFilterGroup.filters.length===0)return i.html`
|
|
122
|
+
<div class="filter-group-container">
|
|
123
|
+
<luzmo-button
|
|
124
|
+
class="add-filter-button"
|
|
125
|
+
.size=${this.size}
|
|
126
|
+
treatment="outline"
|
|
127
|
+
?disabled=${this._isDatasetIdsEmpty}
|
|
128
|
+
@click=${()=>this._addFilter()}
|
|
129
|
+
>
|
|
130
|
+
<luzmo-icon slot="icon" .icon=${r.luzmoPlus} .size=${this._oneSizeSmaller}></luzmo-icon>
|
|
131
|
+
${(0,o.msg)(`Add filter`,{desc:`Add filter button label`})}
|
|
132
|
+
</luzmo-button>
|
|
133
|
+
</div>
|
|
134
|
+
`;let e=this._internalFilterGroup.filters.length>1;return i.html`
|
|
135
|
+
<div class="filter-group-container">
|
|
136
|
+
${this._renderGroup(this._internalFilterGroup)}
|
|
137
|
+
|
|
138
|
+
${e?i.html`
|
|
139
|
+
<div class="add-root-group-container">
|
|
140
|
+
<luzmo-button
|
|
141
|
+
class="add-group-button"
|
|
142
|
+
.size=${this.size}
|
|
143
|
+
treatment="outline"
|
|
144
|
+
?disabled=${this._isDatasetIdsEmpty}
|
|
145
|
+
@click=${this._addGroup}
|
|
146
|
+
>
|
|
147
|
+
<luzmo-icon slot="icon" .icon=${r.luzmoPlus} .size=${this._oneSizeSmaller}></luzmo-icon>
|
|
148
|
+
${(0,o.msg)(`Group`,{desc:`Add group button label`})}
|
|
149
|
+
</luzmo-button>
|
|
150
|
+
</div>
|
|
151
|
+
`:``}
|
|
152
|
+
</div>
|
|
153
|
+
`}};e.t([(0,a.property)({type:String,attribute:`api-url`,reflect:!0})],$.prototype,`apiUrl`,void 0),e.t([(0,a.property)({type:String,attribute:`auth-key`,reflect:!0})],$.prototype,`authKey`,void 0),e.t([(0,a.property)({type:String,attribute:`auth-token`,reflect:!0})],$.prototype,`authToken`,void 0),e.t([(0,a.property)({type:Number,attribute:`cache-time`,reflect:!0})],$.prototype,`cacheTime`,void 0),e.t([(0,a.property)({type:String,attribute:`content-language`,reflect:!0})],$.prototype,`contentLanguage`,void 0),e.t([(0,a.property)({type:String,attribute:`time-zone`,reflect:!0})],$.prototype,`timeZone`,void 0),e.t([(0,a.property)({type:Array,attribute:`dataset-ids`,reflect:!0})],$.prototype,`datasetIds`,void 0),e.t([(0,a.property)({type:Array,reflect:!1})],$.prototype,`filters`,void 0),e.t([(0,a.property)({type:String,reflect:!0})],$.prototype,`format`,void 0),e.t([(0,a.property)({type:Boolean,attribute:`allow-parameters`,reflect:!0})],$.prototype,`allowParameters`,void 0),e.t([(0,a.property)({attribute:!1})],$.prototype,`parameters`,void 0),e.t([(0,a.property)({type:Number,reflect:!0})],$.prototype,`debounce`,void 0),e.t([(0,a.state)()],$.prototype,`_internalFilterGroup`,void 0),$=e.t([(0,o.localized)()],$),customElements.get(`luzmo-filters`)||customElements.define(`luzmo-filters`,$),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return re}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return $}});
|