@luzmo/analytics-components-kit 1.0.8 → 1.0.9-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -4
- package/components/ad-hoc-slot-content-BwcFfXCV.cjs +20 -0
- package/components/ad-hoc-slot-content-hSlT62VS.js +29 -0
- package/components/ai-chat/ai-chat-events.d.ts +139 -0
- package/components/ai-chat/ai-chat-request.d.ts +25 -0
- package/components/ai-chat/ai-chat.d.ts +347 -0
- package/components/ai-chat/ai-prompt-types.d.ts +133 -0
- package/components/ai-chat/empty-state/ai-chat-empty-state.d.ts +46 -0
- package/components/ai-chat/empty-state/index.d.ts +8 -0
- package/components/ai-chat/empty-state/types.d.ts +14 -0
- package/components/ai-chat/helpers/agent-config.d.ts +12 -0
- package/components/ai-chat/helpers/elicitation-template.d.ts +18 -0
- package/components/ai-chat/index.cjs +20 -0
- package/components/ai-chat/index.d.ts +24 -0
- package/components/ai-chat/index.js +29 -0
- package/components/ai-chat/session/ai-chat-session-controller.d.ts +60 -0
- package/components/ai-chat/session/ai-chat-session-types.d.ts +119 -0
- package/components/ai-chat/session/ai-chat-session.d.ts +119 -0
- package/components/ai-chat/session/index.d.ts +2 -0
- package/components/ai-chat/stream/chunk-extractors.d.ts +29 -0
- package/components/ai-chat/stream/index.d.ts +53 -0
- package/components/ai-chat/stream/progress.d.ts +3 -0
- package/components/ai-chat/stream/registry.d.ts +6 -0
- package/components/ai-chat/stream/stream-processor.d.ts +2 -0
- package/components/ai-chat/stream/transport.d.ts +26 -0
- package/components/ai-chat/stream/types.d.ts +59 -0
- package/components/ai-chat/types.d.ts +24 -0
- package/components/ai-chat-1OlRpimu.cjs +337 -0
- package/components/ai-chat-PesGGOLP.js +4350 -0
- package/components/ai-interaction-textarea/ai-interaction-textarea.d.ts +232 -0
- package/components/ai-interaction-textarea/index.cjs +20 -0
- package/components/ai-interaction-textarea/index.d.ts +10 -0
- package/components/ai-interaction-textarea/index.js +28 -0
- package/components/ai-interaction-textarea/types.d.ts +12 -0
- package/components/ai-interaction-textarea-BXKG2elT.js +820 -0
- package/components/ai-interaction-textarea-CmFGJzbb.cjs +99 -0
- package/components/{area-chart-options.config-B94ERc30.js → area-chart-options.config-DJnPr93H.js} +1 -1
- package/components/{area-chart-positioning.config-Cbeon6-x.cjs → area-chart-positioning.config-C37nmNfP.cjs} +1 -1
- package/components/{area-chart-positioning.config-BJK4Q4NL.js → area-chart-positioning.config-CF8Z7PuX.js} +1 -1
- package/components/{area-chart-slots.config-DdPO34_g.js → area-chart-slots.config-ClE-gYVY.js} +1 -1
- package/components/{bar-chart-options.config-B1C3t6uk.js → bar-chart-options.config-D1x5WPbL.js} +1 -1
- package/components/{bar-chart-positioning.config-BnhZQUtb.cjs → bar-chart-positioning.config-C4ii41mE.cjs} +1 -1
- package/components/{bar-chart-positioning.config-B4UuSMIW.js → bar-chart-positioning.config-vuRQZsYr.js} +1 -1
- package/components/{bar-chart-slots.config-BnbZRLIr.js → bar-chart-slots.config-rMFwFprg.js} +1 -1
- package/components/{base-IE9Qxmub.js → base-8L8Jt2vi.js} +3 -2
- package/components/base-K-bf6_7X.cjs +20 -0
- package/components/{box-plot-options.config-sBfVzPTw.js → box-plot-options.config-CooBIc6N.js} +1 -1
- package/components/{box-plot-positioning.config-DsldCFWm.cjs → box-plot-positioning.config-D2LpbgQ_.cjs} +1 -1
- package/components/{box-plot-positioning.config-CYk5koLu.js → box-plot-positioning.config-DMIsI9yU.js} +1 -1
- package/components/{box-plot-slots.config-D6F2R2dw.js → box-plot-slots.config-DS2UIfRF.js} +1 -1
- package/components/{bubble-chart-options.config-DKeBF5A0.js → bubble-chart-options.config-B6aLA_1d.js} +1 -1
- package/components/{bubble-chart-positioning.config-BV-T_2cy.cjs → bubble-chart-positioning.config-Btak-zwN.cjs} +1 -1
- package/components/{bubble-chart-positioning.config-BSDmuPwq.js → bubble-chart-positioning.config-jYu0Q0Mc.js} +1 -1
- package/components/{bubble-chart-slots.config-BJdtdpS0.js → bubble-chart-slots.config-2qy2RqaU.js} +1 -1
- package/components/{bullet-chart-options.config-DdTBWTAF.js → bullet-chart-options.config-CBmbmhzI.js} +1 -1
- package/components/{bullet-chart-positioning.config-B3GeLs8o.js → bullet-chart-positioning.config-BWHfPPyA.js} +1 -1
- package/components/{bullet-chart-positioning.config-BoqQq4g_.cjs → bullet-chart-positioning.config-CwoRVgNS.cjs} +1 -1
- package/components/{bullet-chart-slots.config-NeUTKgYI.js → bullet-chart-slots.config-BaMmwIH0.js} +1 -1
- package/components/{choropleth-map-options.config-nOE0NWaD.js → choropleth-map-options.config-DWWydGJ3.js} +1 -1
- package/components/{choropleth-map-positioning.config-C_I3wf8H.cjs → choropleth-map-positioning.config-DttV0Dk_.cjs} +1 -1
- package/components/{choropleth-map-positioning.config-6OT0sZa5.js → choropleth-map-positioning.config-KtxcLW7E.js} +1 -1
- package/components/{choropleth-map-slots.config-BbBwTeuw.js → choropleth-map-slots.config-DqOi1kCn.js} +1 -1
- package/components/{circle-pack-chart-options.config-CgE8vGP9.js → circle-pack-chart-options.config-D2RCikyA.js} +1 -1
- package/components/{circle-pack-chart-positioning.config-D7Oke8BW.cjs → circle-pack-chart-positioning.config-N-rZvQjR.cjs} +1 -1
- package/components/{circle-pack-chart-positioning.config-BuuhKB85.js → circle-pack-chart-positioning.config-QBO-pwDr.js} +1 -1
- package/components/{circle-pack-chart-slots.config-CJFjalBn.js → circle-pack-chart-slots.config-B7_1p86m.js} +1 -1
- package/components/{circular-gauge-options.config-DtNYelhq.js → circular-gauge-options.config-syWQJHKT.js} +1 -1
- package/components/{circular-gauge-positioning.config-B_IJzIBn.cjs → circular-gauge-positioning.config-Cf1zuLXa.cjs} +1 -1
- package/components/{circular-gauge-positioning.config-DlWvKl0e.js → circular-gauge-positioning.config-DKGmEpFj.js} +1 -1
- package/components/{circular-gauge-slots.config-DAKsa5Hq.js → circular-gauge-slots.config-BxjCP1ao.js} +1 -1
- package/components/{column-chart-options.config-C2GGiHOI.js → column-chart-options.config-B2LIl9lL.js} +1 -1
- package/components/{column-chart-positioning.config-DngsP5So.cjs → column-chart-positioning.config-DcErS56C.cjs} +1 -1
- package/components/{column-chart-positioning.config-BLacEiY5.js → column-chart-positioning.config-LkQSNtSH.js} +1 -1
- package/components/{column-chart-slots.config-Bpr-WaCi.js → column-chart-slots.config-D6MBTcj4.js} +1 -1
- package/components/{combination-chart-options.config-LddX4naq.js → combination-chart-options.config-0ATFph8S.js} +1 -1
- package/components/{combination-chart-positioning.config-DxnmzV6O.js → combination-chart-positioning.config-7iAEpO7h.js} +1 -1
- package/components/{combination-chart-positioning.config-BVV0Bq-d.cjs → combination-chart-positioning.config-Dzi93oAp.cjs} +1 -1
- package/components/{combination-chart-slots.config-u-QLoQQ-.js → combination-chart-slots.config-dYT9lz8M.js} +1 -1
- package/components/{conditional-number-options.config-qdX9T4zu.js → conditional-number-options.config-Bv2xONtI.js} +1 -1
- package/components/{conditional-number-positioning.config-YEo_yFBu.js → conditional-number-positioning.config-Bse6AKPP.js} +1 -1
- package/components/{conditional-number-positioning.config-DfitbPT6.cjs → conditional-number-positioning.config-CTy0zLXu.cjs} +1 -1
- package/components/{conditional-number-slots.config-CiLUXRSe.js → conditional-number-slots.config-DtYkqtN8.js} +1 -1
- package/components/convert-datasets-to-data-fields-B13rl1an.cjs +20 -0
- package/components/convert-datasets-to-data-fields-PmQzeVLG.js +68 -0
- package/components/create-lazy-loader-BO_oTDF5.js +31 -0
- package/components/create-lazy-loader-DYPgQh0L.cjs +20 -0
- package/components/data-field/index.cjs +1 -1
- package/components/data-field/index.d.ts +1 -0
- package/components/data-field/index.js +1 -1
- package/components/data-field-CSm9APdz.js +121 -0
- package/components/data-field-D2y4cv9j.cjs +54 -0
- package/components/data-field-level/data-field-level.d.ts +40 -0
- package/components/data-field-level/helpers/generate-preview.d.ts +9 -0
- package/components/data-field-level/index.cjs +20 -0
- package/components/data-field-level/index.d.ts +8 -0
- package/components/data-field-level/index.js +28 -0
- package/components/{data-field-yTJb-R63.js → data-field-level-B0aj8c5M.js} +48 -142
- package/components/data-field-level-Llx0Y9m-.cjs +55 -0
- package/components/data-field-panel/index.cjs +1 -1
- package/components/data-field-panel/index.d.ts +1 -0
- package/components/data-field-panel/index.js +1 -1
- package/components/{data-field-panel-BWBr1Fog.js → data-field-panel-DpBWJnes.js} +6 -5
- package/components/data-field-panel-Dv60lRUC.cjs +87 -0
- package/components/data-fields-select/data-fields-select.d.ts +137 -0
- package/components/data-fields-select/index.cjs +20 -0
- package/components/data-fields-select/index.d.ts +9 -0
- package/components/data-fields-select/index.js +28 -0
- package/components/data-fields-select/types.d.ts +4 -0
- package/components/{data-fields-select-Bb1HXwlO.js → data-fields-select-69TDpIG_.js} +17 -7
- package/components/data-fields-select-BHa8THub.cjs +43 -0
- package/components/dataset-icon/dataset-icon.d.ts +45 -0
- package/components/dataset-icon/index.cjs +20 -0
- package/components/dataset-icon/index.d.ts +8 -0
- package/components/dataset-icon/index.js +28 -0
- package/components/dataset-icon/types.d.ts +11 -0
- package/components/dataset-icon-BAV0S4sZ.cjs +64 -0
- package/components/dataset-icon-CWT5Ju8w.js +125 -0
- package/components/dataset-selector-list/dataset-selector-list.d.ts +106 -0
- package/components/dataset-selector-list/index.cjs +20 -0
- package/components/dataset-selector-list/index.d.ts +8 -0
- package/components/dataset-selector-list/index.js +28 -0
- package/components/dataset-selector-list-D5lBv2sD.cjs +75 -0
- package/components/dataset-selector-list-DTMXvqfO.js +323 -0
- package/components/dataset-selector-row/dataset-selector-row.d.ts +135 -0
- package/components/dataset-selector-row/index.cjs +20 -0
- package/components/dataset-selector-row/index.d.ts +9 -0
- package/components/dataset-selector-row/index.js +28 -0
- package/components/dataset-selector-row-gHWsZlrC.cjs +102 -0
- package/components/dataset-selector-row-kiHtzZcP.js +427 -0
- package/components/{date-comparison-filter-options.config-BSzzAJPM.js → date-comparison-filter-options.config-DgLx-m3L.js} +1 -1
- package/components/{date-comparison-filter-slots.config-Cvze969w.js → date-comparison-filter-slots.config-BKZ13uzB.js} +1 -1
- package/components/{date-filter-options.config-C6VvDjd8.js → date-filter-options.config-Cbiy0QKd.js} +1 -1
- package/components/{date-filter-slots.config-Y8hmQh0S.js → date-filter-slots.config-SzWky1y7.js} +1 -1
- package/components/{de-C5CMIy08.js → de-BhKtDR6p.js} +34 -0
- package/components/de-DXFLsh4N.cjs +20 -0
- package/components/decompose-numeric-format-DGJua3rU.cjs +20 -0
- package/components/decompose-numeric-format-DS0j2wa1.js +36 -0
- package/components/decorate-DCJt-2rt.cjs +20 -0
- package/components/{localized-mixin-DhiGdPMj.js → decorate-DyMgX_Uh.js} +2 -26
- package/components/default-acceptable-data-field-types-DFOFWWnT.js +53 -0
- package/components/default-acceptable-data-field-types-fPsz64ka.cjs +20 -0
- package/components/display-settings/display-settings.d.ts +117 -0
- package/components/display-settings/index.cjs +20 -0
- package/components/display-settings/index.d.ts +8 -0
- package/components/display-settings/index.js +28 -0
- package/components/display-settings/types.d.ts +9 -0
- package/components/display-settings-DKuvd62j.js +315 -0
- package/components/display-settings-DPqTRJ7E.cjs +142 -0
- package/components/display-settings-binning/display-settings-binning.d.ts +32 -0
- package/components/display-settings-binning/index.cjs +20 -0
- package/components/display-settings-binning/index.d.ts +8 -0
- package/components/display-settings-binning/index.js +28 -0
- package/components/{display-settings-binning-CaE87u3h.js → display-settings-binning-BkCNSkgf.js} +17 -19
- package/components/{display-settings-binning-CjvB12ds.cjs → display-settings-binning-DZKo_tBm.cjs} +2 -2
- package/components/display-settings-datetime/display-settings-datetime.d.ts +86 -0
- package/components/display-settings-datetime/index.cjs +20 -0
- package/components/display-settings-datetime/index.d.ts +8 -0
- package/components/display-settings-datetime/index.js +28 -0
- package/components/{display-settings-datetime-5rq55OAn.js → display-settings-datetime-BTgriFcv.js} +69 -71
- package/components/display-settings-datetime-DD7Oh-2T.cjs +217 -0
- package/components/display-settings-grand-totals/display-settings-grand-totals.d.ts +29 -0
- package/components/display-settings-grand-totals/index.cjs +20 -0
- package/components/display-settings-grand-totals/index.d.ts +8 -0
- package/components/display-settings-grand-totals/index.js +28 -0
- package/components/display-settings-grand-totals-BsIZg67h.cjs +44 -0
- package/components/{display-settings-grand-totals-DnKvI34n.js → display-settings-grand-totals-DH7AoyQY.js} +17 -19
- package/components/display-settings-numeric/display-settings-numeric.d.ts +82 -0
- package/components/display-settings-numeric/helpers/constants.d.ts +19 -0
- package/components/display-settings-numeric/index.cjs +20 -0
- package/components/display-settings-numeric/index.d.ts +8 -0
- package/components/display-settings-numeric/index.js +28 -0
- package/components/{display-settings-numeric-B8MCRz-V.js → display-settings-numeric-CkFpOoWU.js} +79 -81
- package/components/display-settings-numeric-CsmrnEp2.cjs +190 -0
- package/components/display-settings-period-over-period/display-settings-period-over-period.d.ts +76 -0
- package/components/display-settings-period-over-period/helpers/constants.d.ts +44 -0
- package/components/display-settings-period-over-period/index.cjs +20 -0
- package/components/display-settings-period-over-period/index.d.ts +8 -0
- package/components/display-settings-period-over-period/index.js +28 -0
- package/components/{display-settings-period-over-period-W3dPK8LR.js → display-settings-period-over-period-CdI5wuL_.js} +85 -86
- package/components/display-settings-period-over-period-Co37HcSm.cjs +227 -0
- package/components/{donut-chart-options.config-CPHgS1Wi.js → donut-chart-options.config-C8wpZzyJ.js} +1 -1
- package/components/{donut-chart-positioning.config-QOZXaJmt.cjs → donut-chart-positioning.config-BThtaJEt.cjs} +1 -1
- package/components/{donut-chart-positioning.config-fGckMun2.js → donut-chart-positioning.config-D2uG_Irk.js} +1 -1
- package/components/{donut-chart-slots.config-DilGk7ju.js → donut-chart-slots.config-fGqtoKZi.js} +1 -1
- package/components/{dropdown-filter-options.config-DFJKns3l.js → dropdown-filter-options.config-DkiapYtc.js} +1 -1
- package/components/{dropdown-filter-slots.config-7heZtoEY.js → dropdown-filter-slots.config-DPcT6v-9.js} +1 -1
- package/components/{en-DdS5q1ZT.js → en-CcLhGxIh.js} +1 -1
- package/components/{en-GB-Cn0xDC0K.js → en-GB-DzkdeUQh.js} +1 -1
- package/components/en-GB-uxY5qmIM.cjs +20 -0
- package/components/{en-US-DdS5q1ZT.js → en-US-CcLhGxIh.js} +1 -1
- package/components/{en-CSPDwq2y.cjs → en-US-q_Ruzags.cjs} +1 -1
- package/components/{en-US-CSPDwq2y.cjs → en-q_Ruzags.cjs} +1 -1
- package/components/es-DK-49nGv.cjs +20 -0
- package/components/{es-BCur0-77.js → es-DUENN-m1.js} +34 -0
- package/components/{evolution-number-options.config-DT7iGQA8.js → evolution-number-options.config-Ca9ABNVM.js} +1 -1
- package/components/{evolution-number-positioning.config-CVIysE4H.js → evolution-number-positioning.config-BtjobZqK.js} +1 -1
- package/components/{evolution-number-positioning.config-B7lBArog.cjs → evolution-number-positioning.config-DtYiv9oB.cjs} +1 -1
- package/components/{evolution-number-slots.config-noZzIHkT.js → evolution-number-slots.config-CKawNqUS.js} +1 -1
- package/components/filter-expression-picker/filter-expression-picker.d.ts +77 -0
- package/components/filter-expression-picker/index.cjs +20 -0
- package/components/filter-expression-picker/index.d.ts +7 -0
- package/components/filter-expression-picker/index.js +28 -0
- package/components/filter-expression-picker-C4kE_Thd.js +433 -0
- package/components/filter-expression-picker-CU-OfSmI.cjs +40 -0
- package/components/filter-item/filter-item.d.ts +142 -0
- package/components/filter-item/index.cjs +20 -0
- package/components/filter-item/index.d.ts +8 -0
- package/components/filter-item/index.js +28 -0
- package/components/filter-item-Be6Z7NMz.js +792 -0
- package/components/filter-item-CxPrwF-R.cjs +111 -0
- package/components/filter-parameter-picker/filter-parameter-picker.d.ts +91 -0
- package/components/filter-parameter-picker/filter-parameter-picker.helpers.d.ts +8 -0
- package/components/filter-parameter-picker/index.cjs +20 -0
- package/components/filter-parameter-picker/index.d.ts +9 -0
- package/components/filter-parameter-picker/index.js +28 -0
- package/components/filter-parameter-picker/types.d.ts +4 -0
- package/components/filter-parameter-picker-Ba8bvoPZ.js +371 -0
- package/components/filter-parameter-picker-BtJLCUbT.cjs +124 -0
- package/components/filter-value-picker/filter-value-picker.d.ts +72 -0
- package/components/filter-value-picker/index.cjs +20 -0
- package/components/filter-value-picker/index.d.ts +7 -0
- package/components/filter-value-picker/index.js +28 -0
- package/components/filter-value-picker-DD206JZl.js +169 -0
- package/components/filter-value-picker-Dpua1vcJ.cjs +69 -0
- package/components/filter-value-picker-datetime/filter-value-picker-datetime.d.ts +51 -0
- package/components/filter-value-picker-datetime/index.cjs +20 -0
- package/components/filter-value-picker-datetime/index.d.ts +7 -0
- package/components/filter-value-picker-datetime/index.js +28 -0
- package/components/filter-value-picker-datetime-Bj0YaPtB.js +159 -0
- package/components/filter-value-picker-datetime-DWgI83nJ.cjs +51 -0
- package/components/filter-value-picker-hierarchy/filter-value-picker-hierarchy.d.ts +105 -0
- package/components/filter-value-picker-hierarchy/index.cjs +20 -0
- package/components/filter-value-picker-hierarchy/index.d.ts +7 -0
- package/components/filter-value-picker-hierarchy/index.js +28 -0
- package/components/filter-value-picker-hierarchy-BEoqkQq0.cjs +54 -0
- package/components/filter-value-picker-hierarchy-ZMThNJYm.js +315 -0
- package/components/filter-value-picker-numeric/filter-value-picker-numeric.d.ts +89 -0
- package/components/filter-value-picker-numeric/index.cjs +20 -0
- package/components/filter-value-picker-numeric/index.d.ts +7 -0
- package/components/filter-value-picker-numeric/index.js +28 -0
- package/components/filter-value-picker-numeric-1Vxp_Vam.cjs +54 -0
- package/components/filter-value-picker-numeric-CVaDogFQ.js +236 -0
- package/components/filters/filters.d.ts +62 -2
- package/components/filters/index.cjs +1 -1
- package/components/filters/index.d.ts +2 -1
- package/components/filters/index.js +2 -2
- package/components/filters/types.d.ts +2 -0
- package/components/filters-Cnm0Kwk3.js +926 -0
- package/components/filters-Dtbt99BP.cjs +199 -0
- package/components/formatter-BeXmurVe.cjs +20 -0
- package/components/{period-over-period-condition.const-IOVIrgKJ.js → formatter-Cq5dFCyU.js} +44 -234
- package/components/formula/index.cjs +1 -1
- package/components/formula/index.js +1 -1
- package/components/{formula-CdAkO1za.js → formula-BE9bipho.js} +15 -14
- package/components/formula-DGMnKmnR.cjs +45 -0
- package/components/formula-codemirror/formula-codemirror.d.ts +79 -0
- package/components/formula-codemirror/index.d.ts +7 -0
- package/components/formula-codemirror/pills/formula-aggregation/formula-aggregation.d.ts +125 -0
- package/components/formula-codemirror/pills/formula-aggregation/index.d.ts +7 -0
- package/components/formula-codemirror/pills/formula-empty-argument-pill/formula-empty-argument-pill.d.ts +28 -0
- package/components/formula-codemirror/pills/formula-empty-argument-pill/index.d.ts +7 -0
- package/components/formula-codemirror/pills/formula-include-exclude-panel.d.ts +38 -0
- package/components/formula-codemirror-B14vsZXJ.cjs +215 -0
- package/components/{formula-codemirror-jVC8mjQ3.js → formula-codemirror-xfm0QtJN.js} +22 -20
- package/components/formula-display-store-8hohve9v.cjs +20 -0
- package/components/{formula-display-store-CLAt_fik.js → formula-display-store-JAaWuYNB.js} +239 -274
- package/components/formula-draggable-field/formula-draggable-field.d.ts +53 -0
- package/components/formula-draggable-field/index.d.ts +8 -0
- package/components/formula-draggable-field/types.d.ts +24 -0
- package/components/formula-editor/index.cjs +1 -1
- package/components/formula-editor/index.d.ts +1 -0
- package/components/formula-editor/index.js +4 -3
- package/components/formula-editor-CkW-JfyT.cjs +224 -0
- package/components/{formula-editor-Bd9F-xdZ.js → formula-editor-DN87mT8q.js} +147 -352
- package/components/formula-field/formula-field.d.ts +20 -0
- package/components/formula-field/index.cjs +20 -0
- package/components/formula-field/index.d.ts +7 -0
- package/components/formula-field/index.js +28 -0
- package/components/formula-field-B1EMJOfK.js +40 -0
- package/components/formula-field-CQYFSBHL.cjs +20 -0
- package/components/formula-input-base-BCQXmd1P.cjs +49 -0
- package/components/formula-input-base-HL0Fg74x.js +236 -0
- package/components/{fr-BnECl1nx.js → fr-CePmGBUH.js} +34 -0
- package/components/fr-uE3fb3kc.cjs +20 -0
- package/components/{funnel-chart-options.config-D21WdHBI.js → funnel-chart-options.config-CygQsQVD.js} +1 -1
- package/components/{funnel-chart-positioning.config-zEqgz9Wz.cjs → funnel-chart-positioning.config-DeLnAGGT.cjs} +1 -1
- package/components/{funnel-chart-positioning.config-BGi7ixet.js → funnel-chart-positioning.config-TVzSiV6I.js} +1 -1
- package/components/{funnel-chart-slots.config-BWszdEe8.js → funnel-chart-slots.config-CfnSH4Ay.js} +1 -1
- package/components/{get-css-variable-B8sJUuig.cjs → get-css-variable-CBXsAxR6.cjs} +1 -1
- package/components/{get-css-variable-r1spgqX0.js → get-css-variable-DYnldi15.js} +1 -1
- package/components/get-dataset-name-DLjeChNS.js +32 -0
- package/components/get-dataset-name-mGNEfkAv.cjs +20 -0
- package/components/groupings-CODDxpbZ.js +52 -0
- package/components/groupings-DKMq8DgS.cjs +20 -0
- package/components/{heat-map-options.config-DkuYkbWu.js → heat-map-options.config-X96sw-BV.js} +1 -1
- package/components/{heat-map-positioning.config-CK2DBngE.js → heat-map-positioning.config--wm9l7bB.js} +1 -1
- package/components/{heat-map-positioning.config-3dxU6qwG.cjs → heat-map-positioning.config-ddrgZXa9.cjs} +1 -1
- package/components/{heat-map-slots.config-Cwun49Qb.js → heat-map-slots.config-D2ypExJQ.js} +1 -1
- package/components/{heat-table-options.config-BJP1jVB8.js → heat-table-options.config-D6dA9J97.js} +1 -1
- package/components/{heat-table-positioning.config-C55D814C.js → heat-table-positioning.config-CIhhBEMg.js} +1 -1
- package/components/{heat-table-positioning.config-CbscS7w1.cjs → heat-table-positioning.config-qMDSRhZR.cjs} +1 -1
- package/components/{heat-table-slots.config-nGB_B2mh.js → heat-table-slots.config-B1iOn6ay.js} +1 -1
- package/components/{hexbin-map-options.config-Bqp3u2bH.js → hexbin-map-options.config-FK9DrXGD.js} +1 -1
- package/components/{hexbin-map-positioning.config-CHecaD9p.cjs → hexbin-map-positioning.config-E_BpcIFy.cjs} +1 -1
- package/components/{hexbin-map-positioning.config-9nnyZGzx.js → hexbin-map-positioning.config-S7VYUwVD.js} +1 -1
- package/components/{hexbin-map-slots.config-BK-ftozd.js → hexbin-map-slots.config-CC1xZINm.js} +1 -1
- package/components/{image-options.config-Cz55iN7J.js → image-options.config-DxF0RSUF.js} +1 -1
- package/components/{image-slots.config-kvHutBFK.js → image-slots.config-Ba8NXeCH.js} +1 -1
- package/components/index.cjs +1 -840
- package/components/index.js +67 -6783
- package/components/interactive-viz-item/helpers/chart-helpers.d.ts +7 -0
- package/components/interactive-viz-item/index.cjs +20 -0
- package/components/interactive-viz-item/index.d.ts +10 -0
- package/components/interactive-viz-item/index.js +28 -0
- package/components/interactive-viz-item/interactive-viz-item.d.ts +97 -0
- package/components/interactive-viz-item/load-config-panel.d.ts +2 -0
- package/components/interactive-viz-item/types.d.ts +117 -0
- package/components/interactive-viz-item--kqitfEZ.cjs +249 -0
- package/components/interactive-viz-item-cdShBZQA.js +722 -0
- package/components/item-grid/index.cjs +1 -1
- package/components/item-grid/index.js +1 -1
- package/components/{item-grid-C2ZvM04g.cjs → item-grid-BfhqMuQA.cjs} +22 -22
- package/components/{item-grid-D4xYhMOD.js → item-grid-xCM8AqRH.js} +25 -24
- package/components/item-menu/item-list/item-list.d.ts +37 -0
- package/components/item-option/index.cjs +1 -1
- package/components/item-option/index.js +1 -1
- package/components/item-option-B5FraAiv.cjs +269 -0
- package/components/{item-option-28BU_oaD.js → item-option-DaAlj_OB.js} +53 -53
- 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-D_g6aoYd.js → item-option-action-button-group-4w8ub3cT.js} +2 -2
- package/components/item-option-action-button-group-DHu8VjCy.cjs +53 -0
- package/components/item-option-base/item-option-base.d.ts +23 -0
- package/components/item-option-base-4Bwn-3Fc.cjs +56 -0
- package/components/{item-option-base-CxQhI83u.js → item-option-base-BxQUwXzg.js} +2 -2
- 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-CRDFqhWx.js → item-option-color-palette-picker-D5nO-Bqb.js} +2 -2
- package/components/item-option-color-palette-picker-DrhHKaAK.cjs +40 -0
- 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-BJgpBbDp.cjs → item-option-color-picker-Bhv_k1uW.cjs} +2 -2
- package/components/{item-option-color-picker-BlkpWjQh.js → item-option-color-picker-CKokPQcS.js} +2 -2
- 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-CwDkzRcx.cjs +98 -0
- package/components/{item-option-color-range-3Wp-Ywz6.js → item-option-color-range-DYsMbFEb.js} +2 -2
- package/components/item-option-guidelines/index.cjs +1 -1
- package/components/item-option-guidelines/index.js +1 -1
- package/components/{item-option-guidelines-CQ_yb7Ar.js → item-option-guidelines-CXl4Yla4.js} +4 -3
- package/components/item-option-guidelines-DMjA-h3h.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-BApbe3pp.cjs → item-option-multi-language-field-C75Hd2fG.cjs} +2 -2
- package/components/{item-option-multi-language-field-aLIpQWiQ.js → item-option-multi-language-field-S6Mt3k23.js} +2 -2
- 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-B72ZYOAX.cjs → item-option-number-field-Bg5r0IAX.cjs} +2 -2
- package/components/{item-option-number-field-Bv5eGoxB.js → item-option-number-field-CALw8q_J.js} +2 -2
- package/components/item-option-panel/index.cjs +1 -1
- package/components/item-option-panel/index.js +1 -1
- package/components/{item-option-panel-A8Jxzwml.cjs → item-option-panel-DBXgOsM4.cjs} +2 -2
- package/components/{item-option-panel-kRH7GbzA.js → item-option-panel-v7yUS9hb.js} +4 -4
- package/components/item-option-picker/index.cjs +1 -1
- package/components/item-option-picker/index.js +1 -1
- package/components/{item-option-picker-BuUtW6gD.js → item-option-picker-CZyzd3Nq.js} +2 -2
- package/components/{item-option-picker-DOFJ1CnI.cjs → item-option-picker-RFstpFwI.cjs} +2 -2
- 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-mf3JQu5q.js → item-option-position-picker-C8cnHEH4.js} +2 -2
- package/components/item-option-position-picker-CKHbHHl1.cjs +32 -0
- 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-BGs3WWaz.cjs +49 -0
- package/components/{item-option-positions-number-field-BIBWpagB.js → item-option-positions-number-field-BJTY1qZR.js} +2 -2
- 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-B2HYZguB.cjs → item-option-radio-button-group-CN8TLtsV.cjs} +2 -2
- package/components/{item-option-radio-button-group-CFnfadK2.js → item-option-radio-button-group-vhm4r4_k.js} +2 -2
- package/components/item-option-slider/index.cjs +1 -1
- package/components/item-option-slider/index.js +1 -1
- package/components/{item-option-slider-CH1l0Ena.js → item-option-slider-CQOKWBZQ.js} +2 -2
- package/components/item-option-slider-DbLPhpJd.cjs +33 -0
- package/components/item-option-switch/index.cjs +1 -1
- package/components/item-option-switch/index.js +1 -1
- package/components/{item-option-switch-hUFRE9MC.cjs → item-option-switch-CWpb0nf3.cjs} +2 -2
- package/components/{item-option-switch-rqu2ePVU.js → item-option-switch-azZX2vJr.js} +2 -2
- 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-CBFMmuK2.js → item-option-text-field-CIM_38yi.js} +2 -2
- package/components/{item-option-text-field-C6CocZ5q.cjs → item-option-text-field-CS3Lccda.cjs} +2 -2
- package/components/item-options-configs.js +45 -45
- package/components/item-slot-drop/index.cjs +1 -1
- package/components/item-slot-drop/index.d.ts +2 -0
- package/components/item-slot-drop/index.js +1 -1
- package/components/item-slot-drop-C8WYPu_w.cjs +91 -0
- package/components/{item-slot-drop-DDGclwbP.js → item-slot-drop-DeZ2GvAu.js} +26 -21
- 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-BcBHDDTT.cjs +57 -0
- package/components/{item-slot-drop-panel-Cj6vbgJl.js → item-slot-drop-panel-LpfX7ap0.js} +49 -48
- package/components/item-slot-picker/index.cjs +1 -1
- package/components/item-slot-picker/index.js +1 -1
- package/components/{item-slot-picker-CjQH3MU-.js → item-slot-picker-BSO1ltXC.js} +44 -39
- package/components/item-slot-picker-CvySq194.cjs +174 -0
- 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-7IFk5QFC.js → item-slot-picker-panel-CsntXcAp.js} +16 -15
- package/components/item-slot-picker-panel-DQ_OzMO_.cjs +81 -0
- package/components/item-slots-configs.js +45 -45
- package/components/{line-chart-options.config-D8gRtfj3.js → line-chart-options.config-C3_RnROS.js} +1 -1
- package/components/{line-chart-positioning.config-D5WVvIZT.js → line-chart-positioning.config-CrreArf5.js} +1 -1
- package/components/{line-chart-positioning.config-DuXn1WD-.cjs → line-chart-positioning.config-DMe1Ldwk.cjs} +1 -1
- package/components/{line-chart-slots.config-C6LEwEwh.js → line-chart-slots.config-CA-I6B6o.js} +1 -1
- package/components/load-data-fields-for-datasets-B3XcFFfg.js +42 -0
- package/components/load-data-fields-for-datasets-rL24A68g.cjs +20 -0
- package/components/localized-mixin-DaLXe5J9.js +45 -0
- package/components/localized-mixin-DiUJOd06.cjs +20 -0
- package/components/{marker-map-options.config-BE8GnY_T.js → marker-map-options.config-OMdgbAc4.js} +1 -1
- package/components/{marker-map-positioning.config-DfN39a-Q.cjs → marker-map-positioning.config-CpI8nCtC.cjs} +1 -1
- package/components/{marker-map-positioning.config-D2L7cvCP.js → marker-map-positioning.config-DW9tMO2M.js} +1 -1
- package/components/{marker-map-slots.config-Cyk-QFPT.js → marker-map-slots.config-CcGNgr1_.js} +1 -1
- package/components/{nl-h9vVAk2e.js → nl-BaZM3WoR.js} +34 -0
- package/components/nl-BoEhzeIh.cjs +20 -0
- package/components/{ohlc-chart-options.config-xgegn34C.js → ohlc-chart-options.config-CWRI5bXI.js} +1 -1
- package/components/{ohlc-chart-positioning.config-DsBuB0VU.cjs → ohlc-chart-positioning.config-9DETh4xy.cjs} +1 -1
- package/components/{ohlc-chart-positioning.config-C53dCwaT.js → ohlc-chart-positioning.config-CkX8gyS2.js} +1 -1
- package/components/{ohlc-chart-slots.config-CQFi8BIT.js → ohlc-chart-slots.config-Pv0xst-Y.js} +1 -1
- package/components/{parallel-coordinates-plot-options.config-BUQLHO1k.js → parallel-coordinates-plot-options.config-DbuNgevO.js} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-aiFzLnnh.cjs → parallel-coordinates-plot-positioning.config-CLDZdGdh.cjs} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-DhoVstsb.js → parallel-coordinates-plot-positioning.config-DTJZLEeT.js} +1 -1
- package/components/{parallel-coordinates-plot-slots.config-D5o-5y_j.js → parallel-coordinates-plot-slots.config-GvYC-RXK.js} +1 -1
- package/components/period-over-period-condition.const-BZ7j5Z5t.js +29 -0
- package/components/period-over-period-condition.const-C1NZ9Bkp.cjs +20 -0
- package/components/{pivot-table-options.config-DW9UDipI.js → pivot-table-options.config-CTz4bcGJ.js} +1 -1
- package/components/{pivot-table-positioning.config-Bq9BoQWM.cjs → pivot-table-positioning.config-B-SALuVb.cjs} +1 -1
- package/components/{pivot-table-positioning.config-Cnai84AH.js → pivot-table-positioning.config-CtSYHD-n.js} +1 -1
- package/components/{pivot-table-slots.config-Cl5z3IQo.js → pivot-table-slots.config-BAW0U3nh.js} +1 -1
- package/components/{pragmatic-element-adapter-C_7HSvGV.js → pragmatic-element-adapter-D0LRKx5U.js} +75 -74
- package/components/{pragmatic-element-adapter-DPWYJiW9.cjs → pragmatic-element-adapter-DdyH32ix.cjs} +4 -4
- package/components/{pyramid-chart-options.config-Cbg351Yy.js → pyramid-chart-options.config-C7btzuZj.js} +1 -1
- package/components/{pyramid-chart-positioning.config-BeJ5R_Ln.js → pyramid-chart-positioning.config-0Juiava5.js} +1 -1
- package/components/{pyramid-chart-positioning.config-D5AKNCPb.cjs → pyramid-chart-positioning.config-BllFtneP.cjs} +1 -1
- package/components/{pyramid-chart-slots.config-DNzq2hMx.js → pyramid-chart-slots.config-CsMMyhV3.js} +1 -1
- package/components/{radar-chart-options.config-DrNyOkHq.js → radar-chart-options.config-CtA6MpUp.js} +1 -1
- package/components/{radar-chart-positioning.config-DsfUBq4B.js → radar-chart-positioning.config-BPbb63S6.js} +1 -1
- package/components/{radar-chart-positioning.config-BEIwrzhb.cjs → radar-chart-positioning.config-BY4RKNDi.cjs} +1 -1
- package/components/{radar-chart-slots.config-CXgfvAkt.js → radar-chart-slots.config-8Kf_WAFi.js} +1 -1
- package/components/{regular-table-options.config-CweBtAvm.js → regular-table-options.config-BRmS77t-.js} +1 -1
- package/components/{regular-table-slots.config-DCkw4Xkq.js → regular-table-slots.config-r-N9A-qA.js} +1 -1
- package/components/{route-map-options.config-DXHqb8Ve.js → route-map-options.config-C65J81_7.js} +1 -1
- package/components/{route-map-positioning.config-CuiRWzbs.js → route-map-positioning.config-D6nZFd8f.js} +1 -1
- package/components/{route-map-positioning.config-4Wyvj5OH.cjs → route-map-positioning.config-GQ9AJfej.cjs} +1 -1
- package/components/{route-map-slots.config-DJ76FOsJ.js → route-map-slots.config-DMII2UuP.js} +1 -1
- package/components/{sankey-diagram-options.config-1lSECht4.js → sankey-diagram-options.config-nQDCRhKs.js} +1 -1
- package/components/{sankey-diagram-positioning.config-CZ-zVCQo.cjs → sankey-diagram-positioning.config-DAuj5A08.cjs} +1 -1
- package/components/{sankey-diagram-positioning.config-DtN7dARd.js → sankey-diagram-positioning.config-R1EjoR5F.js} +1 -1
- package/components/{sankey-diagram-slots.config-BCc8P4j0.js → sankey-diagram-slots.config-DmWIGut0.js} +1 -1
- package/components/{scatter-plot-options.config-9zL4v24E.js → scatter-plot-options.config-BplrME7w.js} +1 -1
- package/components/{scatter-plot-positioning.config-BXrzdLIc.js → scatter-plot-positioning.config-DGoMnNZy.js} +1 -1
- package/components/{scatter-plot-positioning.config-CfAf_FUW.cjs → scatter-plot-positioning.config-o4c-wuRo.cjs} +1 -1
- package/components/{scatter-plot-slots.config-BMTdhTZG.js → scatter-plot-slots.config-B7wQVEEj.js} +1 -1
- package/components/{search-filter-options.config-B_qQjr68.js → search-filter-options.config-yAz6IIto.js} +1 -1
- package/components/{search-filter-slots.config-qCILSYzs.js → search-filter-slots.config-D8-V0BT5.js} +1 -1
- package/components/{set-locale-B-GvqA1H.cjs → set-locale-Xh_1AFbC.cjs} +1 -1
- package/components/{set-locale-CgCeLPlb.js → set-locale-ydAPif-7.js} +4 -4
- package/components/{slicer-filter-options.config-DK62SCMp.js → slicer-filter-options.config-BtGkT2hI.js} +1 -1
- package/components/{slicer-filter-positioning.config-CU86hJi6.cjs → slicer-filter-positioning.config-BqpIENEm.cjs} +1 -1
- package/components/{slicer-filter-positioning.config-BLGeCJys.js → slicer-filter-positioning.config-D_didkcw.js} +1 -1
- package/components/{slicer-filter-slots.config-C9_NdJm4.js → slicer-filter-slots.config-DR0Wg_Zr.js} +1 -1
- package/components/{slider-filter-options.config-CP5bXdih.js → slider-filter-options.config-D_yZ_nFz.js} +1 -1
- package/components/{slider-filter-slots.config-15eAAGVn.js → slider-filter-slots.config-BUHw-32u.js} +1 -1
- package/components/{en-GB-CJR66Ci_.cjs → slot-menu/index.cjs} +1 -1
- package/components/slot-menu/index.d.ts +10 -0
- package/components/slot-menu/index.js +28 -0
- package/components/slot-menu/slot-menu.d.ts +148 -0
- package/components/slot-menu/types.d.ts +24 -0
- package/components/slot-menu-CUdbaW3K.js +428 -0
- package/components/slot-menu-DRx1Ffla.cjs +71 -0
- package/components/slot-menu-list/index.cjs +20 -0
- package/components/slot-menu-list/index.d.ts +8 -0
- package/components/slot-menu-list/index.js +28 -0
- package/components/slot-menu-list/slot-menu-list.d.ts +47 -0
- package/components/slot-menu-list-DVSxamVa.js +347 -0
- package/components/slot-menu-list-DaHzz_ve.cjs +44 -0
- package/components/slot-role-classification-2wChhpcq.cjs +20 -0
- package/components/slot-role-classification-B8bkGhQ_.js +133 -0
- package/components/slots-config-Cd4xAG4H.cjs +20 -0
- package/components/slots-config-GlSNH7Gr.js +76 -0
- package/components/{speedometer-chart-options.config-dsUupCqm.js → speedometer-chart-options.config-BL7evgzP.js} +1 -1
- package/components/{speedometer-chart-positioning.config-Dam0wOqp.js → speedometer-chart-positioning.config-CmxsV4-x.js} +1 -1
- package/components/{speedometer-chart-positioning.config-AeMlNxSj.cjs → speedometer-chart-positioning.config-eVUWDhkL.cjs} +1 -1
- package/components/{speedometer-chart-slots.config-DfTw7JTF.js → speedometer-chart-slots.config-2Y_x52Gy.js} +1 -1
- package/components/{spike-map-options.config-Dh4Ky5ZP.js → spike-map-options.config-DjoTrAsC.js} +1 -1
- package/components/{spike-map-positioning.config-9ShV1fUh.cjs → spike-map-positioning.config-B38djRlf.cjs} +1 -1
- package/components/{spike-map-positioning.config-BVzewpfi.js → spike-map-positioning.config-Bta7ar9e.js} +1 -1
- package/components/{spike-map-slots.config-i-c0F9QM.js → spike-map-slots.config-DJWMFPIR.js} +1 -1
- package/components/{strip-plot-options.config-Vw3GoLef.js → strip-plot-options.config-tDmVlu9U.js} +1 -1
- package/components/{strip-plot-positioning.config-OHm3LEo3.js → strip-plot-positioning.config-0vlAfmDB.js} +1 -1
- package/components/{strip-plot-positioning.config-BVBdHZvL.cjs → strip-plot-positioning.config-atH68L8u.cjs} +1 -1
- package/components/{strip-plot-slots.config-BuF7X3xN.js → strip-plot-slots.config-suFyIf5-.js} +1 -1
- package/components/{sunburst-chart-options.config-CXOrVmIe.js → sunburst-chart-options.config-Bjue_lQN.js} +1 -1
- package/components/{sunburst-chart-positioning.config-BynNbbxB.js → sunburst-chart-positioning.config-B2x6afBV.js} +1 -1
- package/components/{sunburst-chart-positioning.config-DQmuKm-N.cjs → sunburst-chart-positioning.config-NFzFNuXB.cjs} +1 -1
- package/components/{sunburst-chart-slots.config-Cq-E6kyI.js → sunburst-chart-slots.config-BqVT-h0Z.js} +1 -1
- package/components/{symbol-map-options.config-Dultd0tF.js → symbol-map-options.config-Dyeya5Z2.js} +1 -1
- package/components/{symbol-map-positioning.config-bQk_pdAr.js → symbol-map-positioning.config-B6v9PFTk.js} +1 -1
- package/components/{symbol-map-positioning.config-D6rgxXTO.cjs → symbol-map-positioning.config-DGpmp_N1.cjs} +1 -1
- package/components/{symbol-map-slots.config-BfdBHkzN.js → symbol-map-slots.config-Rhpher5o.js} +1 -1
- package/components/{text-options.config-BUiRyi3L.js → text-options.config-CXhvzzPF.js} +1 -1
- package/components/{text-slots.config-CM_ZaW3p.js → text-slots.config-Dzj4-x2G.js} +1 -1
- package/components/{treemap-chart-options.config-6l3HzikF.js → treemap-chart-options.config-BzOCEWog.js} +1 -1
- package/components/{treemap-chart-positioning.config-BB1-rZKL.js → treemap-chart-positioning.config-Bf2VNVRQ.js} +1 -1
- package/components/{treemap-chart-positioning.config-ZaoIngRn.cjs → treemap-chart-positioning.config-NMULB8UM.cjs} +1 -1
- package/components/{treemap-chart-slots.config-CHkGtIOa.js → treemap-chart-slots.config-DRcafVU-.js} +1 -1
- package/components/utils/base.cjs +1 -1
- package/components/utils/base.js +2 -2
- package/components/utils/store.js +1 -1
- package/components/utils-SzKvwZ9-.cjs +20 -0
- package/components/{utils-ZoJ1cp2P.js → utils-_8LPCz9-.js} +54 -53
- package/components/utils.cjs +1 -1
- package/components/utils.js +9 -6
- package/components/{venn-diagram-options.config-Wi0dQsAu.js → venn-diagram-options.config-BMlduwIp.js} +1 -1
- package/components/{venn-diagram-positioning.config-Cb10sStL.cjs → venn-diagram-positioning.config-D4cODPGV.cjs} +1 -1
- package/components/{venn-diagram-positioning.config-C9ARqREi.js → venn-diagram-positioning.config-DgOl0Vh-.js} +1 -1
- package/components/{venn-diagram-slots.config-DY04aeYK.js → venn-diagram-slots.config-CMDndPVi.js} +1 -1
- package/components/{video-options.config-B6pQUPB7.js → video-options.config-DdfSTJEJ.js} +1 -1
- package/components/{video-slots.config-C-kXGzo3.js → video-slots.config-Utnn0DBW.js} +1 -1
- package/components/viz-item-menu/index.cjs +20 -0
- package/components/viz-item-menu/index.d.ts +8 -0
- package/components/viz-item-menu/index.js +28 -0
- package/components/viz-item-menu/types.d.ts +9 -0
- package/components/viz-item-menu/viz-item-menu.d.ts +78 -0
- package/components/viz-item-menu-CNHv6qDa.cjs +55 -0
- package/components/viz-item-menu-L_j0L08h.js +170 -0
- package/components/{wordcloud-chart-options.config-CpMtpG7q.js → wordcloud-chart-options.config-y9Z5I_ZN.js} +1 -1
- package/components/{wordcloud-chart-positioning.config-D59ntNtd.js → wordcloud-chart-positioning.config-BP6iqy-N.js} +1 -1
- package/components/{wordcloud-chart-positioning.config-DC89_DYc.cjs → wordcloud-chart-positioning.config-DZEkWvb0.cjs} +1 -1
- package/components/{wordcloud-chart-slots.config-Cc5F92Tv.js → wordcloud-chart-slots.config-CvabtgbP.js} +1 -1
- package/custom-elements.json +18790 -6833
- package/deprecated-react/components/ai-chat.component.cjs +1 -0
- package/deprecated-react/components/ai-interaction-textarea.component.cjs +1 -0
- package/deprecated-react/components/data-field-level.component.cjs +1 -0
- package/deprecated-react/components/data-fields-select.component.cjs +1 -0
- package/deprecated-react/components/dataset-icon.component.cjs +1 -0
- package/deprecated-react/components/dataset-selector-list.component.cjs +1 -0
- package/deprecated-react/components/dataset-selector-row.component.cjs +1 -0
- package/deprecated-react/components/display-settings-binning.component.cjs +1 -0
- package/deprecated-react/components/display-settings-datetime.component.cjs +1 -0
- package/deprecated-react/components/display-settings-grand-totals.component.cjs +1 -0
- package/deprecated-react/components/display-settings-numeric.component.cjs +1 -0
- package/deprecated-react/components/display-settings-period-over-period.component.cjs +1 -0
- package/deprecated-react/components/display-settings.component.cjs +1 -0
- package/deprecated-react/components/filter-expression-picker.component.cjs +1 -0
- package/deprecated-react/components/filter-item.component.cjs +1 -0
- package/deprecated-react/components/filter-parameter-picker.component.cjs +1 -0
- package/deprecated-react/components/filter-value-picker-datetime.component.cjs +1 -0
- package/deprecated-react/components/filter-value-picker-hierarchy.component.cjs +1 -0
- package/deprecated-react/components/filter-value-picker-numeric.component.cjs +1 -0
- package/deprecated-react/components/filter-value-picker.component.cjs +1 -0
- package/deprecated-react/components/formula-field.component.cjs +1 -0
- package/deprecated-react/components/interactive-viz-item.component.cjs +1 -0
- package/deprecated-react/components/slot-menu-list.component.cjs +1 -0
- package/deprecated-react/components/slot-menu.component.cjs +1 -0
- package/deprecated-react/components/viz-item-menu.component.cjs +1 -0
- package/index.d.ts +25 -0
- package/package.json +127 -2
- package/react/components/ai-chat.component.ts +45 -0
- package/react/components/ai-interaction-textarea.component.ts +30 -0
- package/react/components/data-field-level.component.ts +30 -0
- package/react/components/data-fields-select.component.ts +27 -0
- package/react/components/dataset-icon.component.ts +22 -0
- package/react/components/dataset-selector-list.component.ts +27 -0
- package/react/components/dataset-selector-row.component.ts +36 -0
- package/react/components/display-settings-binning.component.ts +27 -0
- package/react/components/display-settings-datetime.component.ts +27 -0
- package/react/components/display-settings-grand-totals.component.ts +27 -0
- package/react/components/display-settings-numeric.component.ts +27 -0
- package/react/components/display-settings-period-over-period.component.ts +27 -0
- package/react/components/display-settings.component.ts +33 -0
- package/react/components/filter-expression-picker.component.ts +27 -0
- package/react/components/filter-item.component.ts +27 -0
- package/react/components/filter-parameter-picker.component.ts +33 -0
- package/react/components/filter-value-picker-datetime.component.ts +27 -0
- package/react/components/filter-value-picker-hierarchy.component.ts +27 -0
- package/react/components/filter-value-picker-numeric.component.ts +27 -0
- package/react/components/filter-value-picker.component.ts +27 -0
- package/react/components/filters.component.ts +1 -1
- package/react/components/formula-field.component.ts +30 -0
- package/react/components/interactive-viz-item.component.ts +33 -0
- package/react/components/slot-menu-list.component.ts +27 -0
- package/react/components/slot-menu.component.ts +42 -0
- package/react/components/viz-item-menu.component.ts +33 -0
- package/react/esm/components/ai-chat.component.d.ts +24 -0
- package/react/esm/components/ai-chat.component.js +29 -0
- package/react/esm/components/ai-interaction-textarea.component.d.ts +14 -0
- package/react/esm/components/ai-interaction-textarea.component.js +19 -0
- package/react/esm/components/data-field-level.component.d.ts +14 -0
- package/react/esm/components/data-field-level.component.js +19 -0
- package/react/esm/components/data-fields-select.component.d.ts +12 -0
- package/react/esm/components/data-fields-select.component.js +17 -0
- package/react/esm/components/dataset-icon.component.d.ts +8 -0
- package/react/esm/components/dataset-icon.component.js +13 -0
- package/react/esm/components/dataset-selector-list.component.d.ts +12 -0
- package/react/esm/components/dataset-selector-list.component.js +17 -0
- package/react/esm/components/dataset-selector-row.component.d.ts +18 -0
- package/react/esm/components/dataset-selector-row.component.js +23 -0
- package/react/esm/components/display-settings-binning.component.d.ts +12 -0
- package/react/esm/components/display-settings-binning.component.js +17 -0
- package/react/esm/components/display-settings-datetime.component.d.ts +12 -0
- package/react/esm/components/display-settings-datetime.component.js +17 -0
- package/react/esm/components/display-settings-grand-totals.component.d.ts +12 -0
- package/react/esm/components/display-settings-grand-totals.component.js +17 -0
- package/react/esm/components/display-settings-numeric.component.d.ts +12 -0
- package/react/esm/components/display-settings-numeric.component.js +17 -0
- package/react/esm/components/display-settings-period-over-period.component.d.ts +12 -0
- package/react/esm/components/display-settings-period-over-period.component.js +17 -0
- package/react/esm/components/display-settings.component.d.ts +16 -0
- package/react/esm/components/display-settings.component.js +21 -0
- package/react/esm/components/filter-expression-picker.component.d.ts +12 -0
- package/react/esm/components/filter-expression-picker.component.js +17 -0
- package/react/esm/components/filter-item.component.d.ts +12 -0
- package/react/esm/components/filter-item.component.js +17 -0
- package/react/esm/components/filter-parameter-picker.component.d.ts +16 -0
- package/react/esm/components/filter-parameter-picker.component.js +21 -0
- package/react/esm/components/filter-value-picker-datetime.component.d.ts +12 -0
- package/react/esm/components/filter-value-picker-datetime.component.js +17 -0
- package/react/esm/components/filter-value-picker-hierarchy.component.d.ts +12 -0
- package/react/esm/components/filter-value-picker-hierarchy.component.js +17 -0
- package/react/esm/components/filter-value-picker-numeric.component.d.ts +12 -0
- package/react/esm/components/filter-value-picker-numeric.component.js +17 -0
- package/react/esm/components/filter-value-picker.component.d.ts +12 -0
- package/react/esm/components/filter-value-picker.component.js +17 -0
- package/react/esm/components/filters.component.d.ts +1 -1
- package/react/esm/components/filters.component.js +1 -1
- package/react/esm/components/formula-field.component.d.ts +14 -0
- package/react/esm/components/formula-field.component.js +19 -0
- package/react/esm/components/interactive-viz-item.component.d.ts +16 -0
- package/react/esm/components/interactive-viz-item.component.js +21 -0
- package/react/esm/components/slot-menu-list.component.d.ts +12 -0
- package/react/esm/components/slot-menu-list.component.js +17 -0
- package/react/esm/components/slot-menu.component.d.ts +22 -0
- package/react/esm/components/slot-menu.component.js +27 -0
- package/react/esm/components/viz-item-menu.component.d.ts +16 -0
- package/react/esm/components/viz-item-menu.component.js +21 -0
- package/react/esm/index.d.ts +27 -2
- package/react/esm/index.js +102 -2
- package/react/index.ts +102 -2
- package/react/luzmo-stub.d.ts +140 -0
- package/react/package.json +2 -2
- package/storybook/inject-global-vars.d.ts +1 -0
- package/storybook/register-components.d.ts +57 -0
- package/types/agent.types.d.ts +4 -0
- package/types/ai-chat.types.d.ts +104 -0
- package/types/data-field-events.types.d.ts +7 -0
- package/types.d.ts +9 -0
- package/utils/create-lazy-loader.d.ts +5 -0
- package/utils/filters/filter-text.d.ts +64 -0
- package/utils/filters/index.d.ts +1 -0
- package/utils/filters/presentation.d.ts +4 -0
- package/utils/filters/tests/filter-text.test.d.ts +1 -0
- package/utils/formatter/localized-template.d.ts +4 -0
- package/utils/formatter/tests/localized-template.test.d.ts +1 -0
- package/utils/tests/create-lazy-loader.test.d.ts +1 -0
- package/components/base-BtRS5vm6.cjs +0 -20
- package/components/data-field-fvlYzmfX.cjs +0 -89
- package/components/data-field-panel-Yrqn4L79.cjs +0 -87
- package/components/data-fields-select-Cor6sfzL.cjs +0 -41
- package/components/de-CdZnQbKI.cjs +0 -20
- package/components/display-settings-datetime-B23w7aH4.cjs +0 -217
- package/components/display-settings-grand-totals-BZ0nlLhu.cjs +0 -44
- package/components/display-settings-numeric-DoScgfRy.cjs +0 -190
- package/components/display-settings-period-over-period-C-hp0ZKN.cjs +0 -227
- package/components/es-7RD7O4q3.cjs +0 -20
- package/components/filters-DndJU6D5.js +0 -2454
- package/components/filters-oB9qOk_M.cjs +0 -443
- package/components/formula-BFvxm8kj.cjs +0 -45
- package/components/formula-codemirror-ucFOD-2a.cjs +0 -215
- package/components/formula-display-store-DmT65fUB.cjs +0 -20
- package/components/formula-editor-BeZ-fu-7.cjs +0 -253
- package/components/fr-CGw2IwXh.cjs +0 -20
- package/components/item-option-BQpS6rM_.cjs +0 -269
- package/components/item-option-action-button-group-BwBxRLzB.cjs +0 -53
- package/components/item-option-base-C6uwowJD.cjs +0 -56
- package/components/item-option-color-palette-picker-BjHadiN0.cjs +0 -40
- package/components/item-option-color-range-CQo8uThO.cjs +0 -98
- package/components/item-option-guidelines-Daf8Ce5z.cjs +0 -135
- package/components/item-option-position-picker-Cnis4wLA.cjs +0 -32
- package/components/item-option-positions-number-field-B7gI1IKO.cjs +0 -49
- package/components/item-option-slider--7hmhi97.cjs +0 -33
- package/components/item-slot-drop-hK-rLhwa.cjs +0 -91
- package/components/item-slot-drop-panel-CE4f9X6F.cjs +0 -57
- package/components/item-slot-picker-Wf50lM5u.cjs +0 -174
- package/components/item-slot-picker-panel-Csn1tabr.cjs +0 -81
- package/components/load-data-fields-for-datasets-B76UR0sG.js +0 -86
- package/components/load-data-fields-for-datasets-DFYeACsu.cjs +0 -20
- package/components/localized-mixin-DfpurTYo.cjs +0 -20
- package/components/nl-BnzS_ZtB.cjs +0 -20
- package/components/period-over-period-condition.const-DDgiXIfR.cjs +0 -20
- package/components/slot-menu-1zlmyLVl.js +0 -1060
- package/components/slot-menu-BSu8wKLi.cjs +0 -217
- package/components/utils-CPIzW8sp.cjs +0 -20
|
@@ -0,0 +1,792 @@
|
|
|
1
|
+
/*! * A kit of modern Luzmo Web Components for analytics in your web application.
|
|
2
|
+
*
|
|
3
|
+
* Copyright © 2026 Luzmo
|
|
4
|
+
* All rights reserved.
|
|
5
|
+
* Luzmo web components (“Luzmo Web Components”)
|
|
6
|
+
* must be used according to the Luzmo Terms of Service.
|
|
7
|
+
* This license allows users with a current active Luzmo account
|
|
8
|
+
* to use the Luzmo Web Components. This license terminates
|
|
9
|
+
* automatically if a user no longer has an active Luzmo account.
|
|
10
|
+
* Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
|
|
11
|
+
*
|
|
12
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
14
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
15
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
16
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
17
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
|
+
* SOFTWARE.
|
|
19
|
+
* */
|
|
20
|
+
import { t as e } from "./decorate-DyMgX_Uh.js";
|
|
21
|
+
import { t } from "./localized-mixin-DaLXe5J9.js";
|
|
22
|
+
import { t as n } from "./data-broker-B0uUO5er.js";
|
|
23
|
+
import { c as r } from "./type-check-CGREdneG.js";
|
|
24
|
+
import { n as i, t as a } from "./calculate-data-field-icon-DrSg1PuD.js";
|
|
25
|
+
import { t as o } from "./localize-BT7REYBY.js";
|
|
26
|
+
import { n as s } from "./periods.const-NCTkxnvG.js";
|
|
27
|
+
import { n as c, r as l } from "./filter-expression-picker-C4kE_Thd.js";
|
|
28
|
+
import "./data-fields-select-69TDpIG_.js";
|
|
29
|
+
import { a as u, o as d, r as f } from "./filter-parameter-picker-Ba8bvoPZ.js";
|
|
30
|
+
import "./filter-value-picker-DD206JZl.js";
|
|
31
|
+
import { luzmoIcon as p } from "@luzmo/icons";
|
|
32
|
+
import "@luzmo/lucero/icon";
|
|
33
|
+
import { html as m, nothing as h, unsafeCSS as g } from "lit";
|
|
34
|
+
import { property as _, state as v } from "lit/decorators.js";
|
|
35
|
+
import { localized as y, msg as b, str as x } from "@lit/localize";
|
|
36
|
+
import "@luzmo/lucero/tooltip";
|
|
37
|
+
import "@luzmo/lucero/progress-circle";
|
|
38
|
+
import { ifDefined as ee } from "lit/directives/if-defined.js";
|
|
39
|
+
import { ElementSizes as te, LuzmoElement as ne, SizedMixin as S } from "@luzmo/lucero/utils";
|
|
40
|
+
import "@luzmo/lucero/badge";
|
|
41
|
+
//#region src/utils/formatter/localized-template.ts
|
|
42
|
+
var C = [
|
|
43
|
+
"",
|
|
44
|
+
"",
|
|
45
|
+
""
|
|
46
|
+
], w = "";
|
|
47
|
+
function T(e, t) {
|
|
48
|
+
let n = RegExp(`(${C.join("|")})`, "u"), r = [];
|
|
49
|
+
for (let i of e.replaceAll(w, "").split(n)) {
|
|
50
|
+
let e = C.indexOf(i);
|
|
51
|
+
e === -1 ? i && r.push(i) : r.push(t[e]);
|
|
52
|
+
}
|
|
53
|
+
return r;
|
|
54
|
+
}
|
|
55
|
+
//#endregion
|
|
56
|
+
//#region src/utils/filters/filter-text.ts
|
|
57
|
+
var re = /* @__PURE__ */ new Set([
|
|
58
|
+
"last_now",
|
|
59
|
+
"last_available",
|
|
60
|
+
"next_now",
|
|
61
|
+
"more_than_ago",
|
|
62
|
+
"or_more_ago"
|
|
63
|
+
]), ie = /* @__PURE__ */ new Set(["last_completed", "next_full"]), E = /* @__PURE__ */ new Set([
|
|
64
|
+
"? is null",
|
|
65
|
+
"? is not null",
|
|
66
|
+
"to_date"
|
|
67
|
+
]), D = /* @__PURE__ */ new Set([
|
|
68
|
+
"? = ?",
|
|
69
|
+
"? != ?",
|
|
70
|
+
"? < ?",
|
|
71
|
+
"? <= ?",
|
|
72
|
+
"? > ?",
|
|
73
|
+
"? >= ?"
|
|
74
|
+
]), O = 3, k = 32;
|
|
75
|
+
function A(e) {
|
|
76
|
+
return typeof e == "object" && !!e && !Array.isArray(e);
|
|
77
|
+
}
|
|
78
|
+
function j(e) {
|
|
79
|
+
return A(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;
|
|
80
|
+
}
|
|
81
|
+
function ae(e) {
|
|
82
|
+
return e.length <= k ? {
|
|
83
|
+
display: e,
|
|
84
|
+
truncated: !1
|
|
85
|
+
} : {
|
|
86
|
+
display: `${e.slice(0, k - 1)}…`,
|
|
87
|
+
truncated: !0
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
function M(e, t, n) {
|
|
91
|
+
try {
|
|
92
|
+
return new Intl.ListFormat(e || void 0, {
|
|
93
|
+
style: "long",
|
|
94
|
+
type: n
|
|
95
|
+
}).format(t);
|
|
96
|
+
} catch {
|
|
97
|
+
return t.join(", ");
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
function N(e, t, n) {
|
|
101
|
+
let r = se(e, t, n), { display: i, truncated: a } = ae(r);
|
|
102
|
+
return {
|
|
103
|
+
label: i,
|
|
104
|
+
full: r,
|
|
105
|
+
truncated: a
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
function oe(e) {
|
|
109
|
+
return e === 1 ? b("1 item", { desc: "One selected hierarchy value whose name is still loading" }) : b(x`${e} items`, { desc: "Selected hierarchy values whose names are still loading" });
|
|
110
|
+
}
|
|
111
|
+
function P() {
|
|
112
|
+
return b("Some item names could not be retrieved", { desc: "Tooltip when a hierarchy filter value is still an id after name lookup" });
|
|
113
|
+
}
|
|
114
|
+
function F(e, t) {
|
|
115
|
+
return !!(t?.type === "hierarchy" && t.datasetId && t.fieldId && !(A(e) && e.name !== void 0) && q(e));
|
|
116
|
+
}
|
|
117
|
+
function I(e, t, n) {
|
|
118
|
+
let r = n?.datasetId, i = n?.fieldId;
|
|
119
|
+
return !r || !i ? [] : e.flatMap((e) => {
|
|
120
|
+
if (!F(e, n)) return [];
|
|
121
|
+
let a = q(e);
|
|
122
|
+
return a ? t.hierarchyLabels?.get(K(r, i, a)) ? [] : [a] : [];
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
function L(e, t, n) {
|
|
126
|
+
return n.hierarchyLabelsLoading && t.length > 0 ? {
|
|
127
|
+
valueText: oe(t.length),
|
|
128
|
+
valuePending: !0
|
|
129
|
+
} : n.hierarchyLabels && !n.hierarchyLabelsLoading && t.length > 0 && !e.valueTooltip ? {
|
|
130
|
+
...e,
|
|
131
|
+
valueTooltip: P()
|
|
132
|
+
} : e;
|
|
133
|
+
}
|
|
134
|
+
function R(e, t, n) {
|
|
135
|
+
let r = e.map((e) => N(e, t, n)), i = r.map((e) => e.full), a = M(t.contentLanguage, i, "conjunction");
|
|
136
|
+
if (e.length === 1) {
|
|
137
|
+
let [e] = r;
|
|
138
|
+
return {
|
|
139
|
+
valueText: e.label,
|
|
140
|
+
valueTooltip: e.truncated ? e.full : void 0
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
let o = Math.min(O, r.length), s = r.length - o, c = r.slice(0, o).map((e) => e.label), l = r.some((e) => e.truncated), u;
|
|
144
|
+
return u = s > 0 ? b(x`${M(t.contentLanguage, c, "unit")}, and ${s} more`, { desc: "Filter values after the first few shown in a read-only sentence, e.g. \"Dresses, Shoes, Shorts, and 1 more\"" }) : M(t.contentLanguage, r.map((e) => e.label), "conjunction"), {
|
|
145
|
+
valueText: u,
|
|
146
|
+
valueTooltip: s > 0 || l ? a : void 0
|
|
147
|
+
};
|
|
148
|
+
}
|
|
149
|
+
function z(e, t, n) {
|
|
150
|
+
if (typeof e == "string" || typeof e == "number" || typeof e == "boolean") {
|
|
151
|
+
let t = String(e);
|
|
152
|
+
return t.length > 0 ? t : n;
|
|
153
|
+
}
|
|
154
|
+
if (e && typeof e == "object") {
|
|
155
|
+
let n = o(e, t);
|
|
156
|
+
if (n) return n;
|
|
157
|
+
}
|
|
158
|
+
return n;
|
|
159
|
+
}
|
|
160
|
+
function B(e, t) {
|
|
161
|
+
for (let n of t) {
|
|
162
|
+
let t = e[n];
|
|
163
|
+
if (typeof t == "string" && t.length > 0) return t;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
function V(e, t) {
|
|
167
|
+
let n = B(e, ["datasetId", "dataset_id"]), r = B(e, ["columnId", "column_id"]), i = B(e, ["formulaId", "formula_id"]), a = typeof e.formula == "string" ? e.formula : void 0, o = t.datasets.find((e) => e.id === n), s = o ? z(o.name, t.contentLanguage, "") : "";
|
|
168
|
+
if (i) {
|
|
169
|
+
let e = o?.formulas?.find((e) => e.id === i), r = z(e?.name, t.contentLanguage, i);
|
|
170
|
+
return {
|
|
171
|
+
label: r,
|
|
172
|
+
tooltip: s ? `${s} · ${r}` : r,
|
|
173
|
+
type: e?.type,
|
|
174
|
+
subtype: e?.subtype,
|
|
175
|
+
formula: !0,
|
|
176
|
+
datasetId: n,
|
|
177
|
+
fieldId: i
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
if (a) return {
|
|
181
|
+
label: a,
|
|
182
|
+
tooltip: s ? `${s} · ${a}` : a,
|
|
183
|
+
formula: !0,
|
|
184
|
+
datasetId: n
|
|
185
|
+
};
|
|
186
|
+
let c = !r && typeof e.expression == "string" ? e.expression : void 0;
|
|
187
|
+
if (c) return {
|
|
188
|
+
label: c,
|
|
189
|
+
tooltip: s ? `${s} · ${c}` : c,
|
|
190
|
+
formula: !0,
|
|
191
|
+
datasetId: n
|
|
192
|
+
};
|
|
193
|
+
let l = r ? o?.columns?.find((e) => e.id === r) : void 0, u = r ?? (typeof e.columnExpression == "string" ? e.columnExpression : ""), d = z(l?.name, t.contentLanguage, u);
|
|
194
|
+
return {
|
|
195
|
+
label: d,
|
|
196
|
+
tooltip: s ? `${s} · ${d}` : d,
|
|
197
|
+
type: l?.type,
|
|
198
|
+
subtype: l?.subtype,
|
|
199
|
+
formula: !1,
|
|
200
|
+
datasetId: n,
|
|
201
|
+
fieldId: r
|
|
202
|
+
};
|
|
203
|
+
}
|
|
204
|
+
function H(e) {
|
|
205
|
+
let t = s.find((t) => t.level === e);
|
|
206
|
+
return t ? t.i18n() : "";
|
|
207
|
+
}
|
|
208
|
+
function U(e, t) {
|
|
209
|
+
switch (t) {
|
|
210
|
+
case 1: return e === 1 ? b(x`${e} Year`, { desc: "Singular relative filter quantity in years" }) : b(x`${e} Years`, { desc: "Plural relative filter quantity in years" });
|
|
211
|
+
case 2: return e === 1 ? b(x`${e} Quarter`, { desc: "Singular relative filter quantity in quarters" }) : b(x`${e} Quarters`, { desc: "Plural relative filter quantity in quarters" });
|
|
212
|
+
case 3: return e === 1 ? b(x`${e} Month`, { desc: "Singular relative filter quantity in months" }) : b(x`${e} Months`, { desc: "Plural relative filter quantity in months" });
|
|
213
|
+
case 4: return e === 1 ? b(x`${e} Week`, { desc: "Singular relative filter quantity in weeks" }) : b(x`${e} Weeks`, { desc: "Plural relative filter quantity in weeks" });
|
|
214
|
+
case 5: return e === 1 ? b(x`${e} Day`, { desc: "Singular relative filter quantity in days" }) : b(x`${e} Days`, { desc: "Plural relative filter quantity in days" });
|
|
215
|
+
case 6: return e === 1 ? b(x`${e} Hour`, { desc: "Singular relative filter quantity in hours" }) : b(x`${e} Hours`, { desc: "Plural relative filter quantity in hours" });
|
|
216
|
+
case 7: return e === 1 ? b(x`${e} Minute`, { desc: "Singular relative filter quantity in minutes" }) : b(x`${e} Minutes`, { desc: "Plural relative filter quantity in minutes" });
|
|
217
|
+
case 8: return e === 1 ? b(x`${e} Second`, { desc: "Singular relative filter quantity in seconds" }) : b(x`${e} Seconds`, { desc: "Plural relative filter quantity in seconds" });
|
|
218
|
+
case 9: return e === 1 ? b(x`${e} Millisecond`, { desc: "Singular relative filter quantity in milliseconds" }) : b(x`${e} Milliseconds`, { desc: "Plural relative filter quantity in milliseconds" });
|
|
219
|
+
default: return b(x`${e}`, { desc: "Relative filter quantity" });
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
function W(e, t) {
|
|
223
|
+
let n = new Date(e);
|
|
224
|
+
if (Number.isNaN(n.getTime())) return e;
|
|
225
|
+
try {
|
|
226
|
+
return new Intl.DateTimeFormat(t.contentLanguage || void 0, {
|
|
227
|
+
dateStyle: "medium",
|
|
228
|
+
timeStyle: "short",
|
|
229
|
+
...t.timeZone ? { timeZone: t.timeZone } : {}
|
|
230
|
+
}).format(n);
|
|
231
|
+
} catch {
|
|
232
|
+
return e;
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
function G(e) {
|
|
236
|
+
return /^\d{4}-\d{2}-\d{2}(?:T|$)/.test(e);
|
|
237
|
+
}
|
|
238
|
+
function K(e, t, n) {
|
|
239
|
+
return `${e}:${t}:${n}`;
|
|
240
|
+
}
|
|
241
|
+
function q(e) {
|
|
242
|
+
if (typeof e == "string" || typeof e == "number") return String(e);
|
|
243
|
+
if (A(e) && (typeof e.id == "string" || typeof e.id == "number")) return String(e.id);
|
|
244
|
+
}
|
|
245
|
+
function se(e, t, n) {
|
|
246
|
+
if (n?.type === "hierarchy" && n.datasetId && n.fieldId && !(A(e) && e.name !== void 0)) {
|
|
247
|
+
let r = q(e), i = r === void 0 ? void 0 : t.hierarchyLabels?.get(K(n.datasetId, n.fieldId, r));
|
|
248
|
+
if (i) return i;
|
|
249
|
+
}
|
|
250
|
+
if (typeof e == "number" && Number.isFinite(e)) return new Intl.NumberFormat(t.contentLanguage || void 0).format(e);
|
|
251
|
+
if (typeof e == "string") return G(e) ? W(e, t) : e;
|
|
252
|
+
if (typeof e == "boolean") return String(e);
|
|
253
|
+
if (A(e)) {
|
|
254
|
+
if (typeof e.parameter == "string") return e.parameter;
|
|
255
|
+
if (e.name !== void 0) {
|
|
256
|
+
let n = z(e.name, t.contentLanguage, "");
|
|
257
|
+
if (n) return n;
|
|
258
|
+
}
|
|
259
|
+
if (typeof e.id == "string" || typeof e.id == "number") return String(e.id);
|
|
260
|
+
}
|
|
261
|
+
return "";
|
|
262
|
+
}
|
|
263
|
+
function ce(e, t) {
|
|
264
|
+
let n = c().filter((t) => t.expression === e), r = A(t) && typeof t.unit == "number" ? t.unit : void 0;
|
|
265
|
+
return (e === "to_date" && r !== void 0 ? n.find((e) => e.unit === r) ?? n[0] : n[0])?.tiny ?? e;
|
|
266
|
+
}
|
|
267
|
+
function le(e, t, n, r) {
|
|
268
|
+
if (E.has(e) || t == null) return { valueText: "" };
|
|
269
|
+
if (A(t) && typeof t.parameter == "string") {
|
|
270
|
+
let e = t.parameter;
|
|
271
|
+
if (!j(t)) return { valueText: e };
|
|
272
|
+
}
|
|
273
|
+
if (D.has(e) && j(t)) return {
|
|
274
|
+
valueText: "",
|
|
275
|
+
valueField: V(t, n)
|
|
276
|
+
};
|
|
277
|
+
if (e === "? between ?" && Array.isArray(t) && t.length === 2) {
|
|
278
|
+
let e = N(t[0], n, r), i = N(t[1], n, r);
|
|
279
|
+
return L({
|
|
280
|
+
valueText: b(x`${e.label} and ${i.label}`, { desc: "Inclusive range shown between two filter values" }),
|
|
281
|
+
valueTooltip: e.truncated || i.truncated ? b(x`${e.full} and ${i.full}`, {
|
|
282
|
+
id: "filter-range-tooltip",
|
|
283
|
+
desc: "Full inclusive range shown in a tooltip"
|
|
284
|
+
}) : void 0
|
|
285
|
+
}, I(t, n, r), n);
|
|
286
|
+
}
|
|
287
|
+
if (re.has(e) && A(t)) return { valueText: U(typeof t.quantity == "number" ? t.quantity : 1, t.unit) };
|
|
288
|
+
if (ie.has(e) && A(t)) return { valueText: H(t.unit) };
|
|
289
|
+
if (Array.isArray(t)) return t.length === 0 ? { valueText: "" } : L(R(t, n, r), I(t, n, r), n);
|
|
290
|
+
let i = N(t, n, r);
|
|
291
|
+
return L({
|
|
292
|
+
valueText: i.label,
|
|
293
|
+
valueTooltip: i.truncated ? i.full : void 0
|
|
294
|
+
}, I([t], n, r), n);
|
|
295
|
+
}
|
|
296
|
+
function J(e, t) {
|
|
297
|
+
let n = e.parameters?.[0];
|
|
298
|
+
if (!A(n) || !j(n)) return null;
|
|
299
|
+
let r = V(n, t), i = typeof e.expression == "string" ? e.expression : "", a = e.parameters?.[1];
|
|
300
|
+
return {
|
|
301
|
+
field: r,
|
|
302
|
+
expression: i ? ce(i, a) : "",
|
|
303
|
+
...le(i, a, t, r)
|
|
304
|
+
};
|
|
305
|
+
}
|
|
306
|
+
function Y(e) {
|
|
307
|
+
return "condition" in e && "filters" in e;
|
|
308
|
+
}
|
|
309
|
+
function X(e) {
|
|
310
|
+
if (e == null) return [];
|
|
311
|
+
if (Array.isArray(e)) return e.flatMap(X);
|
|
312
|
+
if (A(e)) {
|
|
313
|
+
if (typeof e.parameter == "string" || e.name !== void 0 || j(e)) return [];
|
|
314
|
+
let t = q(e);
|
|
315
|
+
return t ? [t] : [];
|
|
316
|
+
}
|
|
317
|
+
let t = q(e);
|
|
318
|
+
return t ? [t] : [];
|
|
319
|
+
}
|
|
320
|
+
function Z(e, t) {
|
|
321
|
+
let n = /* @__PURE__ */ new Map(), r = (e) => {
|
|
322
|
+
if (Y(e)) {
|
|
323
|
+
e.filters.forEach(r);
|
|
324
|
+
return;
|
|
325
|
+
}
|
|
326
|
+
let i = e.parameters?.[0];
|
|
327
|
+
if (!A(i) || !j(i)) return;
|
|
328
|
+
let a = V(i, t);
|
|
329
|
+
if (a.type !== "hierarchy" || !a.datasetId || !a.fieldId) return;
|
|
330
|
+
let o = [...new Set(X(e.parameters?.[1]))];
|
|
331
|
+
if (o.length === 0) return;
|
|
332
|
+
let s = `${a.datasetId}:${a.fieldId}`, c = n.get(s);
|
|
333
|
+
if (c) {
|
|
334
|
+
c.ids = [.../* @__PURE__ */ new Set([...c.ids, ...o])];
|
|
335
|
+
return;
|
|
336
|
+
}
|
|
337
|
+
n.set(s, {
|
|
338
|
+
datasetId: a.datasetId,
|
|
339
|
+
...a.formula ? { formulaId: a.fieldId } : { columnId: a.fieldId },
|
|
340
|
+
ids: o
|
|
341
|
+
});
|
|
342
|
+
};
|
|
343
|
+
return r(e), [...n.values()];
|
|
344
|
+
}
|
|
345
|
+
async function Q(e, t) {
|
|
346
|
+
let r = /* @__PURE__ */ new Map();
|
|
347
|
+
return await Promise.all(e.map(async (e) => {
|
|
348
|
+
let i = {
|
|
349
|
+
dataset_id: e.datasetId,
|
|
350
|
+
column_id: e.columnId,
|
|
351
|
+
formula_id: e.formulaId
|
|
352
|
+
}, a = await n.fetchData({
|
|
353
|
+
dimensions: [i],
|
|
354
|
+
where: [{
|
|
355
|
+
expression: "? in ?",
|
|
356
|
+
parameters: [i, e.ids]
|
|
357
|
+
}],
|
|
358
|
+
limit: {
|
|
359
|
+
by: e.ids.length,
|
|
360
|
+
offset: 0
|
|
361
|
+
}
|
|
362
|
+
}), s = e.columnId ?? e.formulaId ?? "";
|
|
363
|
+
for (let n of a.data ?? []) {
|
|
364
|
+
let i = n[0], a = i && typeof i == "object" && "id" in i ? String(i.id) : String(i), c = i && typeof i == "object" && "name" in i ? o(i.name, t) : "";
|
|
365
|
+
c && r.set(K(e.datasetId, s, a), c);
|
|
366
|
+
}
|
|
367
|
+
})), r;
|
|
368
|
+
}
|
|
369
|
+
//#endregion
|
|
370
|
+
//#region src/components/filter-item/filter-item.module.scss?inline
|
|
371
|
+
var ue = ":host{box-sizing:border-box;min-width:0;max-width:100%;font-family:var(--luzmo-font-family);color:var(--luzmo-font-color);flex-direction:row;display:flex}:host([display=text]){vertical-align:middle;align-items:center;max-width:100%;display:inline-flex}.filter-item-text{min-width:0;max-width:100%;font-size:var(--luzmo-filter-item-text-font-size,var(--filter-item-text-font-size));white-space:normal;flex-wrap:wrap;align-items:center;column-gap:.25em;line-height:1.5;display:inline-flex}.filter-item-text-field{white-space:nowrap}.filter-item-column-badge{white-space:nowrap;align-items:center;display:inline-flex}.filter-item-text-field-icon{margin-inline-end:var(--luzmo-filter-item-text-icon-gap,var(--filter-item-text-icon-gap))}.filter-item-column-badge luzmo-icon{--luzmo-icon-vertical-align:0}.filter-item-text-expression{color:var(--luzmo-filter-item-text-expression-color,var(--filter-item-text-expression-color));font-weight:var(--luzmo-filter-item-text-expression-font-weight,var(--filter-item-text-expression-font-weight))}:host([column-display=outline]) .filter-item-column-badge luzmo-badge{--luzmo-badge-border-color:var(--luzmo-filter-item-column-badge-color,var(--luzmo-border-color-full));--luzmo-badge-content-color:var(--luzmo-filter-item-column-badge-font-color,var(--luzmo-filter-item-column-badge-color,var(--luzmo-font-color)))}:host([column-display=subtle]) .filter-item-column-badge luzmo-badge{--luzmo-badge-background-color:color-mix(in srgb, var(--luzmo-filter-item-column-badge-color,var(--luzmo-selected-color-hard)) 10%, var(--luzmo-background-color));--luzmo-badge-content-color:var(--luzmo-filter-item-column-badge-font-color)}:host([column-display=fill]) .filter-item-column-badge luzmo-badge{--luzmo-badge-background-color:var(--luzmo-filter-item-column-badge-color,var(--luzmo-selected-color-hard));--luzmo-badge-border-color:transparent;--luzmo-badge-content-color:var(--luzmo-filter-item-column-badge-font-color,var(--luzmo-background-color))}.filter-item-text-value{align-items:center;gap:var(--luzmo-spacing-1);display:inline-flex}.filter-item-text-value luzmo-progress-circle{--luzmo-progress-circle-size:var(--filter-item-progress-circle-size)}.filter-item-text-value--has-tooltip{text-underline-offset:.15em;cursor:help;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:currentColor}[role=group]{box-sizing:border-box;align-items:center;gap:var(--luzmo-filter-item-gap,var(--filter-item-gap));flex-flow:wrap;width:100%;min-width:0;max-width:100%;display:flex}luzmo-data-fields-select{flex:0 1 var(--luzmo-filter-item-field-width,var(--filter-item-field-width));min-width:min(100%, var(--luzmo-filter-item-field-min-width,var(--filter-item-field-min-width)));max-width:100%}luzmo-filter-expression-picker{flex:0 0 var(--luzmo-filter-item-expression-width,var(--filter-item-expression-width));max-width:100%}.value-controls{align-items:center;gap:var(--luzmo-filter-item-gap,var(--filter-item-gap));flex-wrap:nowrap;flex:var(--luzmo-filter-item-value-grow,var(--filter-item-value-grow)) 1 var(--luzmo-filter-item-value-width,var(--filter-item-value-width));min-width:min(100%, var(--luzmo-filter-item-value-min-width,var(--filter-item-value-min-width)));max-width:100%;display:flex}luzmo-filter-value-picker{flex:auto;min-width:0;max-width:100%}luzmo-filter-parameter-picker{flex:0 auto;min-width:0;max-width:100%}:host{--filter-item-gap:var(--luzmo-spacing-3);--filter-item-field-width:auto;--filter-item-expression-width:auto;--filter-item-value-width:auto;--filter-item-value-grow:0;--filter-item-field-min-width:4.5rem;--filter-item-value-min-width:4.5rem;--filter-item-text-font-size:var(--luzmo-font-size-m);--filter-item-text-icon-gap:var(--luzmo-spacing-1);--filter-item-text-expression-color:var(--luzmo-font-color);--filter-item-text-expression-font-weight:var(--luzmo-font-weight);--filter-item-progress-circle-size:var(--luzmo-component-height)}:host([size=s]){--filter-item-gap:var(--luzmo-spacing-2);--filter-item-text-font-size:var(--luzmo-font-size-s);--filter-item-progress-circle-size:var(--luzmo-component-height-s)}:host([size=m]){--filter-item-gap:var(--luzmo-spacing-3)}:host([size=l]){--filter-item-gap:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--filter-item-text-font-size:var(--luzmo-font-size-l);--filter-item-text-icon-gap:var(--luzmo-spacing-2);--filter-item-progress-circle-size:var(--luzmo-component-height-l)}:host([size=xl]){--filter-item-gap:var(--luzmo-spacing-4);--filter-item-text-font-size:var(--luzmo-font-size-xl);--filter-item-text-icon-gap:var(--luzmo-spacing-2);--filter-item-progress-circle-size:var(--luzmo-component-height-xl)}", $ = class extends t(S(ne, { validSizes: Object.values(te) })) {
|
|
372
|
+
constructor(...e) {
|
|
373
|
+
super(...e), this.apiUrl = "https://api.luzmo.com", this.contentLanguage = "en", this.filter = {}, this.display = "rich", this.columnDisplay = "text", this.quiet = !1, this.readonly = !1, this.disabled = !1, this.allowParameters = !1, this.parameters = [], this._loading = !1, this._datasetsDataFields = [], this._hierarchyLabels = /* @__PURE__ */ new Map(), this._hierarchyLabelsLoading = !1, this._hierarchyRequest = 0;
|
|
374
|
+
}
|
|
375
|
+
static get styles() {
|
|
376
|
+
return [g(ue)];
|
|
377
|
+
}
|
|
378
|
+
connectedCallback() {
|
|
379
|
+
if (super.connectedCallback(), this.textContext) return;
|
|
380
|
+
let e = {};
|
|
381
|
+
this.apiUrl && (e.apiUrl = this.apiUrl), this.cacheTime && (e.staleTime = this.cacheTime, e.gcTime = this.cacheTime * 2), e.authKey = this.authKey || "", e.authToken = this.authToken || "", n.configure(e), this.hasUpdated && this.display === "text" && this._loadHierarchyLabelsForText();
|
|
382
|
+
}
|
|
383
|
+
disconnectedCallback() {
|
|
384
|
+
super.disconnectedCallback(), this._hierarchyRequest += 1;
|
|
385
|
+
}
|
|
386
|
+
_clearTypeState() {
|
|
387
|
+
this._type = void 0, this._subType = void 0, this._isFormula = void 0;
|
|
388
|
+
}
|
|
389
|
+
async _fetchDatasetDataFields() {
|
|
390
|
+
if (!this.datasetIds || this.datasetIds.length === 0) {
|
|
391
|
+
this._error = "Missing dataset ids to fetch columns & formulas", this._datasetsDataFields = [], this._loading = !1;
|
|
392
|
+
return;
|
|
393
|
+
}
|
|
394
|
+
let { valid: e, invalid: t } = r(this.datasetIds);
|
|
395
|
+
if (t.length > 0 && console.warn(`[LuzmoFilterItem] Invalid dataset IDs provided (not valid UUIDs): ${t.join(", ")}. These will be skipped.`), e.length === 0) {
|
|
396
|
+
this._error = "Invalid dataset IDs provided. Dataset IDs must be valid UUIDs.", this._datasetsDataFields = [], this._loading = !1;
|
|
397
|
+
return;
|
|
398
|
+
}
|
|
399
|
+
this._loading = !0, this._error = null;
|
|
400
|
+
try {
|
|
401
|
+
let t = await n.fetchDatasetsWithColumnsAndFormulas(e);
|
|
402
|
+
for (let e of t) for (let t of [...e.columns, ...e.formulas]) t.datasetId = e.id;
|
|
403
|
+
this._datasetsDataFields = t;
|
|
404
|
+
} catch (e) {
|
|
405
|
+
console.error("Error fetching dataset columns & formulas:", e), this._error = e instanceof Error ? e.message : "Unknown error", this._datasetsDataFields = [];
|
|
406
|
+
} finally {
|
|
407
|
+
this._loading = !1;
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
willUpdate(e) {
|
|
411
|
+
super.willUpdate(e);
|
|
412
|
+
let t = e.has("filter"), r = e.has("datasetIds"), i = e.has("authKey"), a = e.has("authToken"), o = e.has("_datasetsDataFields"), s = e.has("parameters");
|
|
413
|
+
if (!this.textContext && this.display === "text" && (t || o || e.has("display") || e.has("contentLanguage")) && this._loadHierarchyLabelsForText(), t || r || o && (this.filter?.parameters?.[0]?.columnId || this.filter?.parameters?.[0]?.formulaId) && this.filter?.parameters?.[0]?.datasetId) if (!this.datasetIds || this.datasetIds.length === 0 || this._datasetsDataFields.length === 0) this._clearTypeState();
|
|
414
|
+
else {
|
|
415
|
+
let e = this._datasetsDataFields.find((e) => e.id === this.filter.parameters?.[0]?.datasetId);
|
|
416
|
+
if (e) {
|
|
417
|
+
let t = !1;
|
|
418
|
+
for (let n of [...e.columns || [], ...e?.formulas || []]) if (n.id === this.filter.parameters?.[0]?.columnId || n.id === this.filter.parameters?.[0]?.formulaId) {
|
|
419
|
+
this._type = n.type, this._subType = n.subtype, this._isFormula = n.id === this.filter.parameters?.[0]?.formulaId, t = !0;
|
|
420
|
+
break;
|
|
421
|
+
}
|
|
422
|
+
t || this._clearTypeState();
|
|
423
|
+
} else this._clearTypeState();
|
|
424
|
+
}
|
|
425
|
+
if (!this.textContext && (i || a)) {
|
|
426
|
+
let e = {
|
|
427
|
+
authKey: this.authKey || "",
|
|
428
|
+
authToken: this.authToken || ""
|
|
429
|
+
};
|
|
430
|
+
n.configure(e);
|
|
431
|
+
}
|
|
432
|
+
!this.textContext && (r || i || a) && this._fetchDatasetDataFields();
|
|
433
|
+
let c = this.filter?.parameters?.[1], l = e.get("filter"), p = !!l && l.expression !== this.filter?.expression;
|
|
434
|
+
if (this.allowParameters && this._type && (s || e.has("_type") || p) && d(c)) {
|
|
435
|
+
let t = this.parameters.find((e) => e.parameter === c.parameter), n = u(this._type, this.filter?.expression), r = s || e.has("_type");
|
|
436
|
+
if (p && !n.includes(c.type) || r && (!t || !n.includes(t.type))) {
|
|
437
|
+
let e = structuredClone(this.filter), t = f(this._type, e.expression);
|
|
438
|
+
e.parameters = t === void 0 ? [e.parameters[0]] : [e.parameters[0], t], this.filter = e, this._sendChangeEvent();
|
|
439
|
+
} else if (r && t && JSON.stringify(t) !== JSON.stringify(c)) {
|
|
440
|
+
let e = structuredClone(this.filter);
|
|
441
|
+
e.parameters[1] = structuredClone(t), this.filter = e, this._sendChangeEvent();
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
async _loadHierarchyLabelsForText() {
|
|
446
|
+
let e = ++this._hierarchyRequest, t = this._filterTextContext(), n = Z({
|
|
447
|
+
condition: "and",
|
|
448
|
+
filters: [this.filter]
|
|
449
|
+
}, t);
|
|
450
|
+
if (n.length === 0) {
|
|
451
|
+
this._hierarchyLabels = /* @__PURE__ */ new Map(), this._hierarchyLabelsLoading = !1;
|
|
452
|
+
return;
|
|
453
|
+
}
|
|
454
|
+
this._hierarchyLabelsLoading = !0;
|
|
455
|
+
try {
|
|
456
|
+
let t = await Q(n, this.contentLanguage);
|
|
457
|
+
e === this._hierarchyRequest && (this._hierarchyLabels = t);
|
|
458
|
+
} catch (t) {
|
|
459
|
+
e === this._hierarchyRequest && console.error(`[${this.localName}] Error fetching hierarchy member names:`, t);
|
|
460
|
+
} finally {
|
|
461
|
+
e === this._hierarchyRequest && (this._hierarchyLabelsLoading = !1);
|
|
462
|
+
}
|
|
463
|
+
}
|
|
464
|
+
_sendChangeEvent() {
|
|
465
|
+
this.readonly || this.disabled || this.dispatchEvent(new CustomEvent("luzmo-filter-changed", {
|
|
466
|
+
bubbles: !0,
|
|
467
|
+
composed: !0,
|
|
468
|
+
cancelable: !0,
|
|
469
|
+
detail: { filter: this.filter }
|
|
470
|
+
}));
|
|
471
|
+
}
|
|
472
|
+
setFilterDataField(e) {
|
|
473
|
+
if (this.readonly || this.disabled || this._cannotReferenceColumn()) return;
|
|
474
|
+
let t = e.detail?.dataFields?.[0], n = this._type, r = this.filter?.parameters?.[0]?.columnId || this.filter?.parameters?.[0]?.formulaId, i = !!this.filter?.parameters?.[0]?.formulaId, a = t?.columnId || t?.formulaId, o = d(this.filter?.parameters?.[1]);
|
|
475
|
+
this._type = t?.type, this._subType = t?.subtype, this._isFormula = !!t?.formulaId;
|
|
476
|
+
let s = l(this._type, this._subType, this._isFormula);
|
|
477
|
+
this.filter = structuredClone(this.filter ?? {}), s?.includes(this.filter?.expression) || (this.filter.expression = s?.[0]?.expression), this.filter.parameters = this.filter?.parameters ?? [], this.filter.parameters[0] = { datasetId: t?.datasetId }, this._isFormula ? this.filter.parameters[0].formulaId = t?.formulaId : this.filter.parameters[0].columnId = t?.columnId;
|
|
478
|
+
let c = this.filter.properties ?? {};
|
|
479
|
+
if (this._isFormula ? i && c.type !== void 0 || (this.filter.properties = {
|
|
480
|
+
...c,
|
|
481
|
+
type: "having"
|
|
482
|
+
}) : (c.type === void 0 || i && c.type === "having") && (this.filter.properties = {
|
|
483
|
+
...c,
|
|
484
|
+
type: "where"
|
|
485
|
+
}), t?.lowestLevel, n !== this._type) this._type === "hierarchy" ? (this.filter.expression = "? like ?", this.filter.parameters[1] = "") : this._type === "numeric" ? (this.filter.expression = "? > ?", this.filter.parameters[1] = 0) : this._type === "datetime" ? (this.filter.expression = "? < ?", this.filter.parameters[1] = (/* @__PURE__ */ new Date()).toISOString()) : (this.filter.expression = "? is not null", this.filter.parameters = [this.filter.parameters[0]]);
|
|
486
|
+
else if (o && r !== a) {
|
|
487
|
+
let e = f(this._type, this.filter.expression);
|
|
488
|
+
this.filter.parameters = e === void 0 ? [this.filter.parameters[0]] : [this.filter.parameters[0], e];
|
|
489
|
+
} else r !== a && this._type === "hierarchy" && (this.filter.parameters[1] = ["? in ?", "? not in ?"].includes(this.filter.expression) ? [] : "");
|
|
490
|
+
this._sendChangeEvent();
|
|
491
|
+
}
|
|
492
|
+
setFilterExpression(e) {
|
|
493
|
+
if (this.readonly || this.disabled || this._cannotReferenceColumn()) return;
|
|
494
|
+
let t = structuredClone(this.filter ?? {}), n = t.expression;
|
|
495
|
+
if (t.expression = e.detail?.expression, n !== t.expression) {
|
|
496
|
+
if (d(t.parameters?.[1])) {
|
|
497
|
+
let e = t.parameters[1];
|
|
498
|
+
if (!u(this._type, t.expression).some((t) => t === e.type)) {
|
|
499
|
+
let e = f(this._type, t.expression);
|
|
500
|
+
t.parameters = e === void 0 ? [t.parameters[0]] : [t.parameters[0], e];
|
|
501
|
+
}
|
|
502
|
+
} else if (["? is null", "? is not null"].includes(t.expression)) t.parameters = [t.parameters[0]];
|
|
503
|
+
else if (this._type === "datetime") if ([
|
|
504
|
+
"YTD",
|
|
505
|
+
"QTD",
|
|
506
|
+
"MTD",
|
|
507
|
+
"WTD"
|
|
508
|
+
].includes(t.expression)) {
|
|
509
|
+
let n = e?.detail?.unit;
|
|
510
|
+
n && (t.parameters[1] = { unit: typeof n == "number" ? n : 1 });
|
|
511
|
+
} else if ([
|
|
512
|
+
"last_completed",
|
|
513
|
+
"next_full",
|
|
514
|
+
"to_date"
|
|
515
|
+
].includes(t.expression)) {
|
|
516
|
+
let e = t?.parameters?.[1]?.unit;
|
|
517
|
+
t.parameters[1] = { unit: typeof e == "number" ? e : 1 };
|
|
518
|
+
} else if ([
|
|
519
|
+
"last_now",
|
|
520
|
+
"last_available",
|
|
521
|
+
"next_now",
|
|
522
|
+
"more_than_ago",
|
|
523
|
+
"or_more_ago"
|
|
524
|
+
].includes(t.expression)) {
|
|
525
|
+
let e = t?.parameters?.[1]?.unit, n = t?.parameters?.[1]?.quantity;
|
|
526
|
+
t.parameters[1] = {
|
|
527
|
+
unit: typeof e == "number" ? e : 1,
|
|
528
|
+
quantity: typeof n == "number" ? n : 1
|
|
529
|
+
};
|
|
530
|
+
} else t.parameters[1] = (/* @__PURE__ */ new Date()).toISOString();
|
|
531
|
+
else if (this._type === "hierarchy") if (["? in ?", "? not in ?"].includes(t.expression)) ["? = ?", "? != ?"].includes(n) ? t.parameters[1] = t.parameters[1] ? [t.parameters[1]] : [] : t.parameters[1] = [];
|
|
532
|
+
else if (["? = ?", "? != ?"].includes(t.expression)) if (["? in ?", "? not in ?"].includes(n)) t.parameters[1] = Array.isArray(t.parameters[1]) && t.parameters[1][0] != null ? t.parameters[1][0] : "";
|
|
533
|
+
else {
|
|
534
|
+
let e = t.parameters[1];
|
|
535
|
+
t.parameters[1] = typeof e == "string" || typeof e == "number" ? e : "";
|
|
536
|
+
}
|
|
537
|
+
else t.parameters[1] = ["? in ?", "? not in ?"].includes(n) ? "" : t.parameters[1] ?? "";
|
|
538
|
+
else this._type === "numeric" && (["? in ?", "? not in ?"].includes(t.expression) && ["? in ?", "? not in ?"].includes(n) ? t.parameters[1] = t.parameters[1] ?? [] : ["? in ?", "? not in ?"].includes(t.expression) ? t.parameters[1] = [] : t.parameters[1] = ["? in ?", "? not in ?"].includes(n) ? 0 : t.parameters[1] ?? 0);
|
|
539
|
+
this.filter = t, this._sendChangeEvent();
|
|
540
|
+
}
|
|
541
|
+
}
|
|
542
|
+
setFilterValue(e) {
|
|
543
|
+
this.readonly || this.disabled || this._cannotReferenceColumn() || (this.filter.parameters[1] = e?.detail?.value, this._sendChangeEvent());
|
|
544
|
+
}
|
|
545
|
+
handleFilterParameterSelected(e) {
|
|
546
|
+
if (this.readonly || this.disabled) return;
|
|
547
|
+
let t = e.detail?.parameter;
|
|
548
|
+
if (!t) return;
|
|
549
|
+
let n = structuredClone(this.filter ?? {});
|
|
550
|
+
n.parameters = n.parameters ?? [], n.parameters[1] = structuredClone(t), this.filter = n, this._sendChangeEvent();
|
|
551
|
+
}
|
|
552
|
+
handleFilterParameterRemoved() {
|
|
553
|
+
if (this.readonly || this.disabled || !d(this.filter?.parameters?.[1])) return;
|
|
554
|
+
let e = structuredClone(this.filter), t = f(this._type, e.expression);
|
|
555
|
+
e.parameters = t === void 0 ? [e.parameters[0]] : [e.parameters[0], t], this.filter = e, this._sendChangeEvent();
|
|
556
|
+
}
|
|
557
|
+
_cannotReferenceColumn() {
|
|
558
|
+
if (!(this.filter?.parameters?.[0]?.columnId || this.filter?.parameters?.[0]?.formulaId)) return !1;
|
|
559
|
+
if (!this.datasetIds || this.datasetIds.length === 0 || this._datasetsDataFields.length === 0) return !0;
|
|
560
|
+
let e = this.filter?.parameters?.[0]?.datasetId, t = this._datasetsDataFields.find((t) => t.id === e);
|
|
561
|
+
return !t || ![...t.columns || [], ...t.formulas || []].find((e) => e.id === this.filter?.parameters?.[0]?.columnId || e.id === this.filter?.parameters?.[0]?.formulaId);
|
|
562
|
+
}
|
|
563
|
+
renderDataFieldPicker() {
|
|
564
|
+
let e = this._cannotReferenceColumn(), t = e ? b("Unknown") : void 0, n = e || this._loading ? "" : this.filter?.parameters?.[0]?.columnId || this.filter?.parameters?.[0]?.formulaId;
|
|
565
|
+
return m`<luzmo-data-fields-select
|
|
566
|
+
.language=${this.language}
|
|
567
|
+
.contentLanguage=${this.contentLanguage}
|
|
568
|
+
.size=${this.size}
|
|
569
|
+
.value=${n ? [n] : []}
|
|
570
|
+
selects="single"
|
|
571
|
+
levels="off"
|
|
572
|
+
.datasetsDataFields=${this._datasetsDataFields}
|
|
573
|
+
placeholder=${ee(t)}
|
|
574
|
+
.invalid=${!!this._error || e}
|
|
575
|
+
?disabled=${e || this.disabled}
|
|
576
|
+
.readonly=${this.readonly}
|
|
577
|
+
.retrieving=${this._loading}
|
|
578
|
+
.pending=${this._loading}
|
|
579
|
+
.quiet=${this.quiet}
|
|
580
|
+
@luzmo-data-fields-selected=${this.setFilterDataField}
|
|
581
|
+
></luzmo-data-fields-select>`;
|
|
582
|
+
}
|
|
583
|
+
renderExpressionPicker() {
|
|
584
|
+
let e = this._cannotReferenceColumn(), t = this.filter?.parameters?.[0], n = !t?.datasetId || !t?.columnId && !t?.formulaId || e;
|
|
585
|
+
return m`<luzmo-filter-expression-picker
|
|
586
|
+
.language=${this.language}
|
|
587
|
+
.size=${this.size}
|
|
588
|
+
.type=${this._type}
|
|
589
|
+
.subtype=${this._subType}
|
|
590
|
+
.filter=${this.filter}
|
|
591
|
+
?isFormula=${this._isFormula}
|
|
592
|
+
?disabled=${n || this.disabled}
|
|
593
|
+
.readonly=${this.readonly}
|
|
594
|
+
.quiet=${this.quiet}
|
|
595
|
+
@luzmo-expression-selected=${this.setFilterExpression}
|
|
596
|
+
></luzmo-filter-expression-picker>`;
|
|
597
|
+
}
|
|
598
|
+
renderValuePicker() {
|
|
599
|
+
let e = this._cannotReferenceColumn(), t = this.filter?.parameters?.[0], n = !t?.datasetId || !t?.columnId && !t?.formulaId || e;
|
|
600
|
+
return m`<luzmo-filter-value-picker
|
|
601
|
+
.apiUrl=${this.apiUrl}
|
|
602
|
+
.authKey=${this.authKey}
|
|
603
|
+
.authToken=${this.authToken}
|
|
604
|
+
.cacheTime=${this.cacheTime}
|
|
605
|
+
.language=${this.language}
|
|
606
|
+
.contentLanguage=${this.contentLanguage}
|
|
607
|
+
.timeZone=${this.timeZone}
|
|
608
|
+
.size=${this.size}
|
|
609
|
+
.filter=${this.filter}
|
|
610
|
+
.valueType=${this._type}
|
|
611
|
+
?disabled=${n || this.disabled}
|
|
612
|
+
.readonly=${this.readonly}
|
|
613
|
+
.quiet=${this.quiet}
|
|
614
|
+
@luzmo-filter-value-changed=${this.setFilterValue}
|
|
615
|
+
></luzmo-filter-value-picker>`;
|
|
616
|
+
}
|
|
617
|
+
renderParameterPicker() {
|
|
618
|
+
if (!this.allowParameters) return null;
|
|
619
|
+
let e = u(this._type, this.filter?.expression);
|
|
620
|
+
if (e.length === 0) return null;
|
|
621
|
+
let t = d(this.filter?.parameters?.[1]) ? this.filter.parameters[1] : void 0;
|
|
622
|
+
return m`<luzmo-filter-parameter-picker
|
|
623
|
+
.language=${this.language}
|
|
624
|
+
.size=${this.size}
|
|
625
|
+
.parameters=${this.parameters}
|
|
626
|
+
.allowedTypes=${e}
|
|
627
|
+
.selectedParameter=${t}
|
|
628
|
+
.currentValue=${t ? t.value : this.filter?.parameters?.[1]}
|
|
629
|
+
?disabled=${this._cannotReferenceColumn() || this.disabled}
|
|
630
|
+
.readonly=${this.readonly}
|
|
631
|
+
.quiet=${this.quiet}
|
|
632
|
+
@luzmo-parameter-selected=${this.handleFilterParameterSelected}
|
|
633
|
+
@luzmo-parameter-removed=${this.handleFilterParameterRemoved}
|
|
634
|
+
></luzmo-filter-parameter-picker>`;
|
|
635
|
+
}
|
|
636
|
+
_filterTextContext() {
|
|
637
|
+
return this.textContext ?? {
|
|
638
|
+
datasets: this._datasetsDataFields,
|
|
639
|
+
contentLanguage: this.contentLanguage,
|
|
640
|
+
timeZone: this.timeZone,
|
|
641
|
+
hierarchyLabels: this._hierarchyLabels,
|
|
642
|
+
hierarchyLabelsLoading: this._hierarchyLabelsLoading
|
|
643
|
+
};
|
|
644
|
+
}
|
|
645
|
+
get _columnBadgeSize() {
|
|
646
|
+
return {
|
|
647
|
+
xxs: "xs",
|
|
648
|
+
xs: "xs",
|
|
649
|
+
s: "xs",
|
|
650
|
+
m: "s",
|
|
651
|
+
l: "m",
|
|
652
|
+
xl: "l",
|
|
653
|
+
xxl: "xl"
|
|
654
|
+
}[this.size] ?? "s";
|
|
655
|
+
}
|
|
656
|
+
_textFieldIcon(e, t) {
|
|
657
|
+
return e.formula ? i({ formulaId: "formula" }, t) : a({
|
|
658
|
+
type: e.type ?? "hierarchy",
|
|
659
|
+
subtype: e.subtype
|
|
660
|
+
}, t);
|
|
661
|
+
}
|
|
662
|
+
_renderTextField(e) {
|
|
663
|
+
if (this.columnDisplay !== "text") {
|
|
664
|
+
let t = this._columnBadgeSize, n = this._textFieldIcon(e, t);
|
|
665
|
+
return m`<span
|
|
666
|
+
class="filter-item-column-badge filters-text-field"
|
|
667
|
+
part="filter-item-text-field"
|
|
668
|
+
title=${e.tooltip}
|
|
669
|
+
>
|
|
670
|
+
<luzmo-badge role="none" .size=${t} .treatment=${this.columnDisplay}>
|
|
671
|
+
${n ? m`<luzmo-icon slot="icon" .icon=${n} .size=${t}></luzmo-icon>` : h}${e.label}
|
|
672
|
+
</luzmo-badge>
|
|
673
|
+
</span>`;
|
|
674
|
+
}
|
|
675
|
+
let t = this._textFieldIcon(e, "s");
|
|
676
|
+
return m`<span
|
|
677
|
+
class="filter-item-text-field filters-text-field"
|
|
678
|
+
part="filter-item-text-field"
|
|
679
|
+
title=${e.tooltip}
|
|
680
|
+
><span class="filter-item-text-field-icon filters-text-field-icon" aria-hidden="true">${t ? p(t) : h}</span
|
|
681
|
+
><span class="filter-item-text-field-label filters-text-field-label">${e.label}</span></span
|
|
682
|
+
>`;
|
|
683
|
+
}
|
|
684
|
+
_renderTextValue(e) {
|
|
685
|
+
if (e.valueField) return this._renderTextField(e.valueField);
|
|
686
|
+
if (!e.valueText) return h;
|
|
687
|
+
let t = e.valuePending ? m`<luzmo-progress-circle
|
|
688
|
+
indeterminate
|
|
689
|
+
.label=${b("Loading item names", { desc: "Accessible label while hierarchy item names load beside the item count" })}
|
|
690
|
+
.size=${this.size}
|
|
691
|
+
></luzmo-progress-circle>` : h;
|
|
692
|
+
return e.valueTooltip ? m`<span
|
|
693
|
+
class="filter-item-text-value filter-item-text-value--has-tooltip filters-text-value filters-text-value--has-tooltip outline-value outline-value--has-tooltip"
|
|
694
|
+
tabindex="0"
|
|
695
|
+
aria-live="polite"
|
|
696
|
+
>${e.valueText}<luzmo-tooltip self-managed placement="top" .size=${this.size}
|
|
697
|
+
>${e.valueTooltip}</luzmo-tooltip
|
|
698
|
+
></span
|
|
699
|
+
>` : m`<span class="filter-item-text-value filters-text-value outline-value" aria-live="polite">${e.valueText}${t}</span>`;
|
|
700
|
+
}
|
|
701
|
+
_renderTextDisplay() {
|
|
702
|
+
let e = J(this.filter, this._filterTextContext());
|
|
703
|
+
if (!e) return m`
|
|
704
|
+
<span
|
|
705
|
+
class="filter-item-text"
|
|
706
|
+
part="filter-item-text"
|
|
707
|
+
></span>
|
|
708
|
+
`;
|
|
709
|
+
let t = this._renderTextField(e.field), n = m`<span class="filter-item-text-expression filters-text-expression outline-expression"
|
|
710
|
+
>${e.expression}</span
|
|
711
|
+
>`, r = e.valueField || e.valueText ? this._renderTextValue(e) : h;
|
|
712
|
+
return m`<span class="filter-item-text" part="filter-item-text">${e.expression && r !== h ? T(b(x`${C[0]}\u2063 ${C[1]}\u2063 ${C[2]}`, {
|
|
713
|
+
id: "filter-item-field-expression-value",
|
|
714
|
+
desc: "Field, expression, and value in a read-only filter sentence"
|
|
715
|
+
}), [
|
|
716
|
+
t,
|
|
717
|
+
n,
|
|
718
|
+
r
|
|
719
|
+
]) : e.expression ? T(b(x`${C[0]}\u2063 ${C[1]}`, {
|
|
720
|
+
id: "filter-item-field-expression",
|
|
721
|
+
desc: "Field and expression in a read-only filter sentence without a value"
|
|
722
|
+
}), [t, n]) : r === h ? t : T(b(x`${C[0]}\u2063 ${C[1]}`, {
|
|
723
|
+
id: "filter-item-field-value",
|
|
724
|
+
desc: "Field and value in a read-only filter sentence without an expression"
|
|
725
|
+
}), [t, r])}</span>`;
|
|
726
|
+
}
|
|
727
|
+
render() {
|
|
728
|
+
if (this.display === "text") return this._renderTextDisplay();
|
|
729
|
+
let e = d(this.filter?.parameters?.[1]);
|
|
730
|
+
return m`<div role="group" aria-label=${b("Filter condition", { desc: "Accessible label for filter item group" })}>
|
|
731
|
+
${this.renderDataFieldPicker()} ${this.renderExpressionPicker()}
|
|
732
|
+
<div class="value-controls">
|
|
733
|
+
${e ? null : this.renderValuePicker()} ${this.renderParameterPicker()}
|
|
734
|
+
</div>
|
|
735
|
+
</div>`;
|
|
736
|
+
}
|
|
737
|
+
};
|
|
738
|
+
//#endregion
|
|
739
|
+
//#region src/components/filter-item/index.ts
|
|
740
|
+
e([_({
|
|
741
|
+
type: String,
|
|
742
|
+
attribute: "api-url",
|
|
743
|
+
reflect: !0
|
|
744
|
+
})], $.prototype, "apiUrl", void 0), e([_({
|
|
745
|
+
type: String,
|
|
746
|
+
attribute: "auth-key",
|
|
747
|
+
reflect: !0
|
|
748
|
+
})], $.prototype, "authKey", void 0), e([_({
|
|
749
|
+
type: String,
|
|
750
|
+
attribute: "auth-token",
|
|
751
|
+
reflect: !0
|
|
752
|
+
})], $.prototype, "authToken", void 0), e([_({
|
|
753
|
+
type: Number,
|
|
754
|
+
attribute: "cache-time",
|
|
755
|
+
reflect: !0
|
|
756
|
+
})], $.prototype, "cacheTime", void 0), e([_({
|
|
757
|
+
type: String,
|
|
758
|
+
reflect: !0
|
|
759
|
+
})], $.prototype, "contentLanguage", void 0), e([_({
|
|
760
|
+
type: String,
|
|
761
|
+
attribute: "time-zone",
|
|
762
|
+
reflect: !0
|
|
763
|
+
})], $.prototype, "timeZone", void 0), e([_({
|
|
764
|
+
type: Array,
|
|
765
|
+
attribute: "dataset-ids",
|
|
766
|
+
reflect: !0
|
|
767
|
+
})], $.prototype, "datasetIds", void 0), e([_({
|
|
768
|
+
type: Object,
|
|
769
|
+
reflect: !1
|
|
770
|
+
})], $.prototype, "filter", void 0), e([_({
|
|
771
|
+
type: String,
|
|
772
|
+
reflect: !0
|
|
773
|
+
})], $.prototype, "display", void 0), e([_({
|
|
774
|
+
type: String,
|
|
775
|
+
attribute: "column-display",
|
|
776
|
+
reflect: !0
|
|
777
|
+
})], $.prototype, "columnDisplay", void 0), e([_({
|
|
778
|
+
type: Boolean,
|
|
779
|
+
reflect: !0
|
|
780
|
+
})], $.prototype, "quiet", void 0), e([_({
|
|
781
|
+
type: Boolean,
|
|
782
|
+
reflect: !0
|
|
783
|
+
})], $.prototype, "readonly", void 0), e([_({
|
|
784
|
+
type: Boolean,
|
|
785
|
+
reflect: !0
|
|
786
|
+
})], $.prototype, "disabled", void 0), e([_({ attribute: !1 })], $.prototype, "textContext", void 0), e([_({
|
|
787
|
+
type: Boolean,
|
|
788
|
+
attribute: "allow-parameters",
|
|
789
|
+
reflect: !0
|
|
790
|
+
})], $.prototype, "allowParameters", void 0), e([_({ attribute: !1 })], $.prototype, "parameters", void 0), e([v()], $.prototype, "_type", void 0), e([v()], $.prototype, "_subType", void 0), e([v()], $.prototype, "_isFormula", void 0), e([v()], $.prototype, "_error", void 0), e([v()], $.prototype, "_loading", void 0), e([v()], $.prototype, "_datasetsDataFields", void 0), e([v()], $.prototype, "_hierarchyLabels", void 0), e([v()], $.prototype, "_hierarchyLabelsLoading", void 0), $ = e([y()], $), customElements.get("luzmo-filter-item") || customElements.define("luzmo-filter-item", $);
|
|
791
|
+
//#endregion
|
|
792
|
+
export { C as a, Q as i, Z as n, T as o, J as r, $ as t };
|