@luzmo/analytics-components-kit 1.0.8 → 1.0.9-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +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 +22 -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-CVxHPPvM.js +4351 -0
- package/components/ai-chat-DEVIxsRP.cjs +337 -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 +21 -0
- package/components/ai-interaction-textarea/types.d.ts +12 -0
- package/components/ai-interaction-textarea-D_Lw29_i.cjs +99 -0
- package/components/ai-interaction-textarea-i9SabsmQ.js +821 -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-B8xSL1XU.cjs} +1 -1
- package/components/{area-chart-positioning.config-BJK4Q4NL.js → area-chart-positioning.config-C0_dxknc.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-B4UuSMIW.js → bar-chart-positioning.config-B4fazkYv.js} +1 -1
- package/components/{bar-chart-positioning.config-BnhZQUtb.cjs → bar-chart-positioning.config-B6A5m0ZR.cjs} +1 -1
- package/components/{bar-chart-slots.config-BnbZRLIr.js → bar-chart-slots.config-rMFwFprg.js} +1 -1
- package/components/{base-IE9Qxmub.js → base-BRTs2KqJ.js} +30 -30
- package/components/base-BWU343D_.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-CYk5koLu.js → box-plot-positioning.config-BI9F_JjL.js} +1 -1
- package/components/{box-plot-positioning.config-DsldCFWm.cjs → box-plot-positioning.config-DVXXjP8U.cjs} +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-C0tGI4fC.cjs} +1 -1
- package/components/{bubble-chart-positioning.config-BSDmuPwq.js → bubble-chart-positioning.config-DXhama4z.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-Czlw32Ii.js} +1 -1
- package/components/{bullet-chart-positioning.config-BoqQq4g_.cjs → bullet-chart-positioning.config-Dmb_yizO.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-6OT0sZa5.js → choropleth-map-positioning.config-BWJmEGy6.js} +1 -1
- package/components/{choropleth-map-positioning.config-C_I3wf8H.cjs → choropleth-map-positioning.config-JIj9p6-n.cjs} +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-D3Ogj0P9.cjs} +1 -1
- package/components/{circle-pack-chart-positioning.config-BuuhKB85.js → circle-pack-chart-positioning.config-PhYH_yh8.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-DlWvKl0e.js → circular-gauge-positioning.config-COSdEO1U.js} +1 -1
- package/components/{circular-gauge-positioning.config-B_IJzIBn.cjs → circular-gauge-positioning.config-DxfZmoEP.cjs} +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-6OVsL5vU.cjs} +1 -1
- package/components/{column-chart-positioning.config-BLacEiY5.js → column-chart-positioning.config-BRYZk4cF.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-BVV0Bq-d.cjs → combination-chart-positioning.config-4qgeM8BL.cjs} +1 -1
- package/components/{combination-chart-positioning.config-DxnmzV6O.js → combination-chart-positioning.config-CTj23r8f.js} +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-BUdWeVNm.js} +1 -1
- package/components/{conditional-number-positioning.config-DfitbPT6.cjs → conditional-number-positioning.config-Dg67t4VA.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 -8
- package/components/data-field-CwC5VH16.js +122 -0
- package/components/data-field-DHpgI_wv.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 +21 -0
- package/components/data-field-level-8-eOBdl6.cjs +55 -0
- package/components/{data-field-yTJb-R63.js → data-field-level-Ben_W9pd.js} +49 -142
- 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 -8
- package/components/data-field-panel-CiuTVMXF.cjs +87 -0
- package/components/{data-field-panel-BWBr1Fog.js → data-field-panel-DppKRagT.js} +7 -5
- 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 +21 -0
- package/components/data-fields-select/types.d.ts +4 -0
- package/components/data-fields-select-DjDeBEj-.cjs +43 -0
- package/components/{data-fields-select-Bb1HXwlO.js → data-fields-select-HwMkrPAn.js} +18 -7
- 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/{en-CSPDwq2y.cjs → dataset-icon/index.js} +2 -1
- package/components/dataset-icon/types.d.ts +11 -0
- package/components/dataset-icon-BEq1MNml.js +126 -0
- package/components/dataset-icon-tec1Xulw.cjs +64 -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 +21 -0
- package/components/dataset-selector-list-BL2uKzCy.cjs +75 -0
- package/components/dataset-selector-list-BWavenTF.js +324 -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 +21 -0
- package/components/dataset-selector-row-BP4Txybx.cjs +102 -0
- package/components/dataset-selector-row-C_O6h4Ir.js +428 -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 +21 -0
- package/components/display-settings/types.d.ts +9 -0
- package/components/display-settings-Dmvi7XT-.cjs +142 -0
- package/components/display-settings-V5AltVPN.js +316 -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 +21 -0
- package/components/{display-settings-binning-CaE87u3h.js → display-settings-binning-BNofVnZE.js} +18 -19
- package/components/{display-settings-binning-CjvB12ds.cjs → display-settings-binning-C1Fvc8tj.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 +21 -0
- package/components/{display-settings-datetime-5rq55OAn.js → display-settings-datetime-CUR1w0k5.js} +70 -71
- package/components/{display-settings-datetime-B23w7aH4.cjs → display-settings-datetime-OiFwicTh.cjs} +9 -9
- 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 +21 -0
- package/components/display-settings-grand-totals-Bi1OcC7p.cjs +44 -0
- package/components/{display-settings-grand-totals-DnKvI34n.js → display-settings-grand-totals-CgzHbK1K.js} +18 -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 +21 -0
- package/components/display-settings-numeric-BQ_vQrnj.cjs +190 -0
- package/components/{display-settings-numeric-B8MCRz-V.js → display-settings-numeric-CUWkiQtR.js} +80 -81
- 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/{en-GB-CJR66Ci_.cjs → display-settings-period-over-period/index.js} +2 -1
- package/components/display-settings-period-over-period-Br08rz7r.cjs +227 -0
- package/components/{display-settings-period-over-period-W3dPK8LR.js → display-settings-period-over-period-C7cfSyIL.js} +86 -86
- 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-B4JdERSl.cjs} +1 -1
- package/components/{donut-chart-positioning.config-fGckMun2.js → donut-chart-positioning.config-CWGYZUec.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-US-CSPDwq2y.cjs → en-US-q_Ruzags.cjs} +1 -1
- package/components/en-q_Ruzags.cjs +20 -0
- 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-B7lBArog.cjs → evolution-number-positioning.config-CqQeAPbN.cjs} +1 -1
- package/components/{evolution-number-positioning.config-CVIysE4H.js → evolution-number-positioning.config-DZ7SVvue.js} +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 +21 -0
- package/components/filter-expression-picker-3xcrAACt.js +434 -0
- package/components/filter-expression-picker-BrtXMSBv.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 +21 -0
- package/components/filter-item-CH5sjhJy.js +793 -0
- package/components/filter-item-C_h4rbuL.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 +21 -0
- package/components/filter-parameter-picker/types.d.ts +4 -0
- package/components/filter-parameter-picker-CB3uIoZ2.js +372 -0
- package/components/filter-parameter-picker-DJKHZxlT.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 +21 -0
- package/components/filter-value-picker-CW9vKpn1.cjs +69 -0
- package/components/filter-value-picker-DeO855hf.js +170 -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 +21 -0
- package/components/filter-value-picker-datetime-B0lLveRY.js +160 -0
- package/components/filter-value-picker-datetime-DapMI9Jr.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 +21 -0
- package/components/filter-value-picker-hierarchy-B2xSmjFz.js +316 -0
- package/components/filter-value-picker-hierarchy-C9mJ8PH7.cjs +54 -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 +21 -0
- package/components/filter-value-picker-numeric-CayroCHe.js +237 -0
- package/components/filter-value-picker-numeric-DE5h7dZN.cjs +54 -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 -9
- package/components/filters/types.d.ts +2 -0
- package/components/filters-CGqIDlPK.cjs +199 -0
- package/components/filters-D5oua2IU.js +927 -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 -8
- package/components/{formula-BFvxm8kj.cjs → formula-8YhND5Y7.cjs} +13 -13
- package/components/{formula-CdAkO1za.js → formula-B4lrmE5g.js} +16 -14
- 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-CBvQJGHq.cjs +215 -0
- package/components/{formula-codemirror-jVC8mjQ3.js → formula-codemirror-CVlF_Qyh.js} +23 -20
- package/components/formula-display-store-BJvPYYsO.cjs +20 -0
- package/components/{formula-display-store-CLAt_fik.js → formula-display-store-D9MWhreP.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 -10
- package/components/{formula-editor-Bd9F-xdZ.js → formula-editor-BGT-QcuH.js} +148 -352
- package/components/formula-editor-De9Zj-9c.cjs +224 -0
- 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 +21 -0
- package/components/formula-field--gNwmTRk.cjs +20 -0
- package/components/formula-field-CQcnyXOD.js +41 -0
- package/components/formula-input-base-BdKh5O_E.js +236 -0
- package/components/formula-input-base-CZih19kC.cjs +49 -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-BGi7ixet.js → funnel-chart-positioning.config-B6I8z0_N.js} +1 -1
- package/components/{funnel-chart-positioning.config-zEqgz9Wz.cjs → funnel-chart-positioning.config-BhK0EStG.cjs} +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-C1WNuUBe.js +52 -0
- package/components/groupings-CvXvU4Fr.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-3dxU6qwG.cjs → heat-map-positioning.config-B9Njs88T.cjs} +1 -1
- package/components/{heat-map-positioning.config-CK2DBngE.js → heat-map-positioning.config-DAAt2hIR.js} +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-CbscS7w1.cjs → heat-table-positioning.config-Cn7Ouv5g.cjs} +1 -1
- package/components/{heat-table-positioning.config-C55D814C.js → heat-table-positioning.config-D6ChanEH.js} +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-BqfRSZbU.cjs} +1 -1
- package/components/{hexbin-map-positioning.config-9nnyZGzx.js → hexbin-map-positioning.config-CNId41q1.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 +68 -6790
- 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 +21 -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-CzIT8K3I.js +723 -0
- package/components/interactive-viz-item-DUyE1QEJ.cjs +249 -0
- package/components/item-grid/index.cjs +1 -1
- package/components/item-grid/index.js +1 -8
- package/components/{item-grid-D4xYhMOD.js → item-grid-BaW6EZ2a.js} +26 -24
- package/components/{item-grid-C2ZvM04g.cjs → item-grid-BcgBGxIq.cjs} +22 -22
- 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 -8
- package/components/item-option-8PQMxg8v.cjs +269 -0
- package/components/item-option-action-button-group/index.cjs +1 -1
- package/components/item-option-action-button-group/index.js +1 -8
- package/components/{item-option-action-button-group-D_g6aoYd.js → item-option-action-button-group-BcZTtikv.js} +3 -2
- package/components/item-option-action-button-group-zZp49Gbz.cjs +53 -0
- package/components/item-option-base/item-option-base.d.ts +23 -0
- package/components/{item-option-base-CxQhI83u.js → item-option-base-DJ9FLqmu.js} +2 -2
- package/components/item-option-base-K2pn6CrX.cjs +56 -0
- package/components/item-option-color-palette-picker/index.cjs +1 -1
- package/components/item-option-color-palette-picker/index.js +1 -8
- package/components/item-option-color-palette-picker-B9JlHGA8.cjs +40 -0
- package/components/{item-option-color-palette-picker-CRDFqhWx.js → item-option-color-palette-picker-DJX3MxcT.js} +3 -2
- package/components/item-option-color-picker/index.cjs +1 -1
- package/components/item-option-color-picker/index.js +1 -8
- package/components/{item-option-color-picker-BlkpWjQh.js → item-option-color-picker-Dgz-VK03.js} +3 -2
- package/components/{item-option-color-picker-BJgpBbDp.cjs → item-option-color-picker-ayYko5QB.cjs} +2 -2
- package/components/item-option-color-range/index.cjs +1 -1
- package/components/item-option-color-range/index.js +1 -8
- package/components/item-option-color-range-Cc8thG33.cjs +98 -0
- package/components/{item-option-color-range-3Wp-Ywz6.js → item-option-color-range-DibSfro5.js} +3 -2
- package/components/{item-option-28BU_oaD.js → item-option-em2Lp2zJ.js} +54 -53
- package/components/item-option-guidelines/index.cjs +1 -1
- package/components/item-option-guidelines/index.js +1 -8
- package/components/{item-option-guidelines-CQ_yb7Ar.js → item-option-guidelines-DXUcdAel.js} +5 -3
- package/components/item-option-guidelines-h5-NrAYD.cjs +135 -0
- package/components/item-option-multi-language-field/index.cjs +1 -1
- package/components/item-option-multi-language-field/index.js +1 -8
- package/components/{item-option-multi-language-field-BApbe3pp.cjs → item-option-multi-language-field-BlnTZCFJ.cjs} +2 -2
- package/components/{item-option-multi-language-field-aLIpQWiQ.js → item-option-multi-language-field-Bqo9OeK4.js} +3 -2
- package/components/item-option-number-field/index.cjs +1 -1
- package/components/item-option-number-field/index.js +1 -8
- package/components/{item-option-number-field-Bv5eGoxB.js → item-option-number-field-BZHhCuuj.js} +3 -2
- package/components/{item-option-number-field-B72ZYOAX.cjs → item-option-number-field-D9vv1Q-O.cjs} +2 -2
- package/components/item-option-panel/index.cjs +1 -1
- package/components/item-option-panel/index.js +1 -8
- package/components/{item-option-panel-A8Jxzwml.cjs → item-option-panel-Bo3sC4u5.cjs} +2 -2
- package/components/{item-option-panel-kRH7GbzA.js → item-option-panel-DvgDiRPH.js} +5 -4
- package/components/item-option-picker/index.cjs +1 -1
- package/components/item-option-picker/index.js +1 -8
- package/components/{item-option-picker-DOFJ1CnI.cjs → item-option-picker-D5xhm36O.cjs} +2 -2
- package/components/{item-option-picker-BuUtW6gD.js → item-option-picker-cy0KK-ev.js} +3 -2
- package/components/item-option-position-picker/index.cjs +1 -1
- package/components/item-option-position-picker/index.js +1 -8
- package/components/item-option-position-picker-BJ35DWBL.cjs +32 -0
- package/components/{item-option-position-picker-mf3JQu5q.js → item-option-position-picker-BbYP1Jnh.js} +3 -2
- package/components/item-option-positions-number-field/index.cjs +1 -1
- package/components/item-option-positions-number-field/index.js +1 -8
- package/components/{item-option-positions-number-field-BIBWpagB.js → item-option-positions-number-field-DO4z_aKu.js} +3 -2
- package/components/item-option-positions-number-field-DzYQoSpk.cjs +49 -0
- package/components/item-option-radio-button-group/index.cjs +1 -1
- package/components/item-option-radio-button-group/index.js +1 -8
- package/components/{item-option-radio-button-group-B2HYZguB.cjs → item-option-radio-button-group-CF1gttvP.cjs} +2 -2
- package/components/{item-option-radio-button-group-CFnfadK2.js → item-option-radio-button-group-DX7wCv8J.js} +3 -2
- package/components/item-option-slider/index.cjs +1 -1
- package/components/item-option-slider/index.js +1 -8
- package/components/item-option-slider-DeGmGyZE.cjs +33 -0
- package/components/{item-option-slider-CH1l0Ena.js → item-option-slider-z1CwX5mE.js} +3 -2
- package/components/item-option-switch/index.cjs +1 -1
- package/components/item-option-switch/index.js +1 -8
- package/components/{item-option-switch-hUFRE9MC.cjs → item-option-switch-D3jq7jIt.cjs} +2 -2
- package/components/{item-option-switch-rqu2ePVU.js → item-option-switch-D41KguKr.js} +3 -2
- package/components/item-option-text-field/index.cjs +1 -1
- package/components/item-option-text-field/index.js +1 -8
- package/components/{item-option-text-field-CBFMmuK2.js → item-option-text-field-CnFcApMz.js} +3 -2
- package/components/{item-option-text-field-C6CocZ5q.cjs → item-option-text-field-cXy2sx5N.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 -8
- package/components/item-slot-drop-CtEMLkmt.cjs +91 -0
- package/components/{item-slot-drop-DDGclwbP.js → item-slot-drop-YAKpKb2-.js} +27 -21
- package/components/item-slot-drop-panel/index.cjs +1 -1
- package/components/item-slot-drop-panel/index.js +1 -8
- package/components/{item-slot-drop-panel-Cj6vbgJl.js → item-slot-drop-panel-JZtBKPJu.js} +50 -48
- package/components/item-slot-drop-panel-aom0ugTz.cjs +57 -0
- package/components/item-slot-picker/index.cjs +1 -1
- package/components/item-slot-picker/index.js +1 -8
- package/components/{item-slot-picker-CjQH3MU-.js → item-slot-picker-D-FvHowO.js} +45 -39
- package/components/item-slot-picker-D8h7QXGD.cjs +174 -0
- package/components/item-slot-picker-panel/index.cjs +1 -1
- package/components/item-slot-picker-panel/index.js +1 -8
- package/components/item-slot-picker-panel-C98lpd4g.cjs +81 -0
- package/components/{item-slot-picker-panel-7IFk5QFC.js → item-slot-picker-panel-g4JDw1M_.js} +17 -15
- 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-DuXn1WD-.cjs → line-chart-positioning.config-BZUWqKWz.cjs} +1 -1
- package/components/{line-chart-positioning.config-D5WVvIZT.js → line-chart-positioning.config-C3VzNcws.js} +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-D2L7cvCP.js → marker-map-positioning.config-BlvgG6yX.js} +1 -1
- package/components/{marker-map-positioning.config-DfN39a-Q.cjs → marker-map-positioning.config-CGF74mJI.cjs} +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-B__cD7Wo.cjs} +1 -1
- package/components/{ohlc-chart-positioning.config-C53dCwaT.js → ohlc-chart-positioning.config-BdbEgiry.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-BqdmUJLk.cjs} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-DhoVstsb.js → parallel-coordinates-plot-positioning.config-DNu5qhNR.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-Cnai84AH.js → pivot-table-positioning.config-CUfnXIHj.js} +1 -1
- package/components/{pivot-table-positioning.config-Bq9BoQWM.cjs → pivot-table-positioning.config-DDpgWCZ7.cjs} +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-D5AKNCPb.cjs → pyramid-chart-positioning.config-B2TxqefZ.cjs} +1 -1
- package/components/{pyramid-chart-positioning.config-BeJ5R_Ln.js → pyramid-chart-positioning.config-CZBcrHEG.js} +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-BEIwrzhb.cjs → radar-chart-positioning.config-ddvHAHJF.cjs} +1 -1
- package/components/{radar-chart-positioning.config-DsfUBq4B.js → radar-chart-positioning.config-j1WOeFnM.js} +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-ChBYybF1.js} +1 -1
- package/components/{route-map-positioning.config-4Wyvj5OH.cjs → route-map-positioning.config-xBhhxtYu.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-DtN7dARd.js → sankey-diagram-positioning.config-CudMit_S.js} +1 -1
- package/components/{sankey-diagram-positioning.config-CZ-zVCQo.cjs → sankey-diagram-positioning.config-tZu-dDV-.cjs} +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-BoJEGmgK.js} +1 -1
- package/components/{scatter-plot-positioning.config-CfAf_FUW.cjs → scatter-plot-positioning.config-DQOtIhJi.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-BLGeCJys.js → slicer-filter-positioning.config-CY4jw7_A.js} +1 -1
- package/components/{slicer-filter-positioning.config-CU86hJi6.cjs → slicer-filter-positioning.config-CZY2fvwt.cjs} +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/slot-menu/index.cjs +20 -0
- package/components/slot-menu/index.d.ts +10 -0
- package/components/slot-menu/index.js +21 -0
- package/components/slot-menu/slot-menu.d.ts +148 -0
- package/components/slot-menu/types.d.ts +24 -0
- package/components/slot-menu-Bl6PrLIN.cjs +71 -0
- package/components/slot-menu-hIK2_qR3.js +429 -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 +21 -0
- package/components/slot-menu-list/slot-menu-list.d.ts +47 -0
- package/components/slot-menu-list-BgwZS32Q.js +348 -0
- package/components/slot-menu-list-BhgD2zt4.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-AeMlNxSj.cjs → speedometer-chart-positioning.config-D3CWnYTb.cjs} +1 -1
- package/components/{speedometer-chart-positioning.config-Dam0wOqp.js → speedometer-chart-positioning.config-cBMverSU.js} +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-i7ntIkN5.cjs} +1 -1
- package/components/{spike-map-positioning.config-BVzewpfi.js → spike-map-positioning.config-vuoKutnj.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-BVBdHZvL.cjs → strip-plot-positioning.config-C2H-io7l.cjs} +1 -1
- package/components/{strip-plot-positioning.config-OHm3LEo3.js → strip-plot-positioning.config-_-ElbWoV.js} +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-DQmuKm-N.cjs → sunburst-chart-positioning.config-MB8z_ZfG.cjs} +1 -1
- package/components/{sunburst-chart-positioning.config-BynNbbxB.js → sunburst-chart-positioning.config-yzTnv1BQ.js} +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-BPkEp4Pj.js} +1 -1
- package/components/{symbol-map-positioning.config-D6rgxXTO.cjs → symbol-map-positioning.config-L11e_Z3x.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/tokens-BWMfo_w4.cjs +20 -0
- package/components/tokens-Ov1pCR4Y.js +29 -0
- package/components/{treemap-chart-options.config-6l3HzikF.js → treemap-chart-options.config-BzOCEWog.js} +1 -1
- package/components/{treemap-chart-positioning.config-ZaoIngRn.cjs → treemap-chart-positioning.config-40_GcY2u.cjs} +1 -1
- package/components/{treemap-chart-positioning.config-BB1-rZKL.js → treemap-chart-positioning.config-CitiBQB2.js} +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-C9ARqREi.js → venn-diagram-positioning.config-A28suR_R.js} +1 -1
- package/components/{venn-diagram-positioning.config-Cb10sStL.cjs → venn-diagram-positioning.config-C7bkb2Qv.cjs} +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 +21 -0
- package/components/viz-item-menu/types.d.ts +9 -0
- package/components/viz-item-menu/viz-item-menu.d.ts +85 -0
- package/components/viz-item-menu-DsIJZRgm.js +203 -0
- package/components/viz-item-menu-DtHlgOqt.cjs +63 -0
- package/components/{wordcloud-chart-options.config-CpMtpG7q.js → wordcloud-chart-options.config-y9Z5I_ZN.js} +1 -1
- package/components/{wordcloud-chart-positioning.config-DC89_DYc.cjs → wordcloud-chart-positioning.config-BQFzFNko.cjs} +1 -1
- package/components/{wordcloud-chart-positioning.config-D59ntNtd.js → wordcloud-chart-positioning.config-Dk13J1zq.js} +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/register-components.d.ts +57 -0
- package/styles/tokens.d.ts +1 -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-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-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,224 @@
|
|
|
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
|
+
require("./tokens-BWMfo_w4.cjs");const e=require("./base-BWU343D_.cjs"),t=require("./decorate-DCJt-2rt.cjs"),n=require("./data-broker-CyMYR6w1.cjs"),r=require("./calculate-data-field-icon-DenGmW74.cjs"),i=require("./localize-D3i4Epy_.cjs"),a=require("./formula-display-store-BJvPYYsO.cjs"),o=require("./groupings-CvXvU4Fr.cjs"),s=require("./pragmatic-element-adapter-DdyH32ix.cjs"),c=require("./get-css-variable-CBXsAxR6.cjs");require("./data-field-DHpgI_wv.cjs");const l=require("./formula-input-base-CZih19kC.cjs");let u=require("@luzmo/icons");require("@luzmo/lucero/icon");let d=require("lit"),f=require("lit/decorators.js"),p=require("@lit/localize");require("@luzmo/lucero/select"),require("@luzmo/lucero/tooltip");let m=require("lit/directives/repeat.js");require("@luzmo/lucero/field-label"),require("@luzmo/lucero/progress-circle"),require("@luzmo/lucero/search");var h=[`numeric`,`hierarchy`,`datetime`,`spatial`],g=[`true`,`false`,`null`],_=[`GROUP`,`GROUPFULL`,`GROUPINEX`],v=/'(?:[^']|'')*'|"(?:[^"]|"")*"/g,y=/\{[^}]*\}/g,b=/[A-Za-z_][A-Za-z0-9_]*/g;function x(e,t){let n=new Set;for(let t of Object.keys(e))/^[A-Za-z_]/.test(t)&&n.add(t.toUpperCase());for(let e of Object.keys(t))n.add(e.toUpperCase());for(let e of[..._,...h,...g])n.add(e.toUpperCase());return n}function S(e,t){let n=e.replace(v,` `).replace(y,` `);b.lastIndex=0;let r;for(;(r=b.exec(n))!==null;)if(!t.has(r[0].toUpperCase()))return r[0];return null}function C(e){return function(t){var n=t.container;return Object.assign(n.style,{borderLeft:`${e.x} solid transparent`,borderTop:`${e.y} solid transparent`}),{x:0,y:0}}}var w=`.draggable{align-items:center;gap:var(--luzmo-spacing-3);box-sizing:border-box;width:100%;min-height:var(--formula-draggable-field-height);padding:0 var(--luzmo-spacing-3);border-radius:var(--luzmo-border-radius);background-color:var(--formula-draggable-field-background);color:var(--luzmo-font-color);font-family:var(--luzmo-font-family);font-size:var(--formula-draggable-field-font-size);text-align:start;cursor:grab;-webkit-user-select:none;user-select:none;border:none;display:flex}.draggable:hover{background-color:var(--luzmo-background-color-highlight)}.draggable:focus-visible{outline:2px solid var(--luzmo-primary);outline-offset:-2px}:host([disabled]) .draggable{opacity:.5;cursor:not-allowed}.draggable-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.drag-icon{color:var(--luzmo-font-color-extra-dimmed);font-size:var(--luzmo-formula-draggable-field-drag-icon-size,var(--formula-draggable-field-drag-icon-size));flex:none;align-items:center;display:inline-flex}.icon-slot{flex:none;align-items:center;display:none}.icon-slot.has-icon{display:inline-flex}.tooltip-content{gap:var(--luzmo-spacing-2);text-align:start;flex-direction:column;display:flex}:host{width:100%;font-family:var(--luzmo-font-family);--formula-draggable-field-height:var(--luzmo-component-height);--formula-draggable-field-font-size:var(--luzmo-font-size);--formula-draggable-field-background:transparent;--formula-draggable-field-drag-icon-size:var(--luzmo-font-size-s);font-size:var(--formula-draggable-field-font-size);display:flex}:host([size=s]){--formula-draggable-field-height:var(--luzmo-component-height-s);--formula-draggable-field-font-size:var(--luzmo-font-size-s);--formula-draggable-field-drag-icon-size:var(--luzmo-font-size-xs)}:host([size=l]){--formula-draggable-field-height:var(--luzmo-component-height-l);--formula-draggable-field-font-size:var(--luzmo-font-size-l);--formula-draggable-field-drag-icon-size:var(--luzmo-font-size)}:host([size=xl]){--formula-draggable-field-height:var(--luzmo-component-height-xl);--formula-draggable-field-font-size:var(--luzmo-font-size-xl);--formula-draggable-field-drag-icon-size:var(--luzmo-font-size-l)}:host([variant=highlight]){--formula-draggable-field-background:var(--luzmo-formula-draggable-field-background,var(--luzmo-background-color-highlight))}`,T=class extends e.n(e.i,{validSizes:[`s`,`m`,`l`,`xl`],noDefaultSize:!0}){constructor(...e){super(...e),this.kind=``,this.value=``,this.label=``,this.description=``,this.tooltipPlacement=`right`,this.variant=`default`,this.disabled=!1,this._hasIcon=!1,this._hasTooltipSlot=!1}static{this.styles=(0,d.unsafeCSS)(w)}_handleIconSlotChange(e){this._hasIcon=e.target.assignedNodes({flatten:!0}).length>0}_handleTooltipSlotChange(e){this._hasTooltipSlot=e.target.assignedNodes({flatten:!0}).length>0}disconnectedCallback(){super.disconnectedCallback(),this._cleanupDraggable?.(),this._cleanupDraggable=void 0}firstUpdated(e){this._cleanupDraggable=s.t({element:this,canDrag:()=>!this.disabled,onDragStart:()=>{this.style.opacity=`0.5`},onDrop:()=>{this.style.opacity=`1`},getInitialData:()=>({kind:this.kind,value:this.value}),onGenerateDragPreview:({nativeSetDragImage:e})=>{c.n({nativeSetDragImage:e,getOffset:C({x:`8px`,y:`8px`}),render:({container:e})=>{e.append(this._buildDragPreview())}})}})}_buildDragPreview(){let e=document.createElement(`div`),t=this.variant===`highlight`?c.t(this,`--luzmo-formula-draggable-field-background`)||c.t(this,`--luzmo-background-color-highlight`):c.t(this,`--luzmo-background-color`);return e.textContent=this.label,Object.assign(e.style,{display:`inline-flex`,alignItems:`center`,maxWidth:`14rem`,overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`,padding:`4px 8px`,borderRadius:c.t(this,`--luzmo-border-radius`)||`6px`,border:`1px solid ${c.t(this,`--luzmo-border-color`)}`,background:t,color:c.t(this,`--luzmo-font-color`),fontFamily:c.t(this,`--luzmo-font-family`),fontSize:getComputedStyle(this).fontSize,lineHeight:`1`,boxShadow:c.t(this,`--luzmo-box-shadow`)||`0 1px 4px rgb(0 0 0 / 15%)`}),e}_handleClick(e){e.detail===0&&this._activate()}_activate(){this.disabled||this.dispatchEvent(new CustomEvent(`luzmo-formula-draggable-field-activate`,{bubbles:!0,composed:!0,detail:{kind:this.kind,value:this.value}}))}_describe(){this.dispatchEvent(new CustomEvent(`luzmo-formula-draggable-field-describe`,{bubbles:!0,composed:!0,detail:{kind:this.kind,value:this.value}}))}render(){let e=this._hasTooltipSlot||!!this.description;return d.html`
|
|
21
|
+
<button
|
|
22
|
+
class="draggable"
|
|
23
|
+
type="button"
|
|
24
|
+
aria-label=${this.label}
|
|
25
|
+
?disabled=${this.disabled}
|
|
26
|
+
@click=${this._handleClick}
|
|
27
|
+
@dblclick=${this._activate}
|
|
28
|
+
@mouseenter=${this._describe}
|
|
29
|
+
@focus=${this._describe}
|
|
30
|
+
>
|
|
31
|
+
<span class="drag-icon" aria-hidden="true">${(0,u.luzmoIcon)(u.luzmoArrows)}</span>
|
|
32
|
+
<slot
|
|
33
|
+
name="icon"
|
|
34
|
+
class="icon-slot ${this._hasIcon?`has-icon`:``}"
|
|
35
|
+
@slotchange=${this._handleIconSlotChange}
|
|
36
|
+
></slot>
|
|
37
|
+
<span class="draggable-label">${this.label}</span>
|
|
38
|
+
<luzmo-tooltip
|
|
39
|
+
self-managed
|
|
40
|
+
placement=${this.tooltipPlacement}
|
|
41
|
+
.size=${this.size}
|
|
42
|
+
?disabled=${!e}
|
|
43
|
+
>
|
|
44
|
+
<div class="tooltip-content">
|
|
45
|
+
${this._hasTooltipSlot?d.nothing:this.description?d.html`<span>${this.description}</span>`:d.nothing}
|
|
46
|
+
<slot name="tooltip" @slotchange=${this._handleTooltipSlotChange}></slot>
|
|
47
|
+
</div>
|
|
48
|
+
</luzmo-tooltip>
|
|
49
|
+
</button>
|
|
50
|
+
`}};t.t([(0,f.property)({type:String})],T.prototype,`kind`,void 0),t.t([(0,f.property)({type:String})],T.prototype,`value`,void 0),t.t([(0,f.property)({type:String})],T.prototype,`label`,void 0),t.t([(0,f.property)({type:String})],T.prototype,`description`,void 0),t.t([(0,f.property)({type:String,attribute:`tooltip-placement`})],T.prototype,`tooltipPlacement`,void 0),t.t([(0,f.property)({type:String,reflect:!0})],T.prototype,`variant`,void 0),t.t([(0,f.property)({type:Boolean,reflect:!0})],T.prototype,`disabled`,void 0),t.t([(0,f.state)()],T.prototype,`_hasIcon`,void 0),t.t([(0,f.state)()],T.prototype,`_hasTooltipSlot`,void 0),customElements.get(`luzmo-formula-draggable-field`)||customElements.define(`luzmo-formula-draggable-field`,T);var E={numeric:`numeric`,hierarchy:`hierarchy`,datetime:`datetime`};function D(e,t){return t?d.html`<code class="tooltip-example">${e.split(/(⟨\w+⟩)/g).map(e=>{let t=e.match(/^⟨(\w+)⟩$/);if(t){let e=E[t[1]];if(e)return d.html`<span class="example-icon" aria-hidden="true">${(0,u.luzmoIcon)(r.t({type:e},`s`))}</span>`}return e})}</code>`:d.html`<code class="tooltip-example">${e}</code>`}function O(e,t,n){return!e&&!t?d.nothing:d.html`
|
|
51
|
+
<div slot="tooltip" class="explanation-tooltip">
|
|
52
|
+
${e?d.html`<span>${e}</span>`:d.nothing}
|
|
53
|
+
${t?D(t,n):d.nothing}
|
|
54
|
+
</div>
|
|
55
|
+
`}var k=a.a();function A(e){return d.html`
|
|
56
|
+
<div class="list-loading" role="status" part="list-loading">
|
|
57
|
+
<luzmo-progress-circle
|
|
58
|
+
indeterminate
|
|
59
|
+
.label=${(0,p.msg)(`Loading aggregations`,{desc:`Formula editor aggregations list loading spinner label`})}
|
|
60
|
+
.size=${e}
|
|
61
|
+
></luzmo-progress-circle>
|
|
62
|
+
</div>
|
|
63
|
+
`}function j({size:e,explanationTooltips:t,disabled:n}){return d.html`
|
|
64
|
+
<div class="list-items" part="list-items" role="list">
|
|
65
|
+
${(0,m.repeat)(a.i,e=>e,r=>d.html`
|
|
66
|
+
<luzmo-formula-draggable-field
|
|
67
|
+
role="listitem"
|
|
68
|
+
kind="aggregation"
|
|
69
|
+
value=${r}
|
|
70
|
+
.label=${k[r]?.label()??r}
|
|
71
|
+
.size=${e}
|
|
72
|
+
?disabled=${n}
|
|
73
|
+
>
|
|
74
|
+
${t?O(k[r]?.description()??``,k[r]?.example()??``,k[r]?.exampleHasIcons??!1):d.nothing}
|
|
75
|
+
</luzmo-formula-draggable-field>
|
|
76
|
+
`)}
|
|
77
|
+
</div>
|
|
78
|
+
`}function M(e){return d.html`
|
|
79
|
+
<div class="list" part="list aggregations-list">
|
|
80
|
+
<luzmo-field-label class="list-header" part="list-header" .size=${e.size}
|
|
81
|
+
>${(0,p.msg)(`Aggregations`,{desc:`Formula editor aggregations list title`})}</luzmo-field-label
|
|
82
|
+
>
|
|
83
|
+
${e.loading?A(e.size):j(e)}
|
|
84
|
+
</div>
|
|
85
|
+
`}function N(e,t,n){let r=t.trim().toLowerCase();return r?e.columns.filter(e=>i.t(e.name,n).toLowerCase().includes(r)):e.columns}function P(e){return d.html`
|
|
86
|
+
<div class="list-loading" role="status" part="list-loading">
|
|
87
|
+
<luzmo-progress-circle
|
|
88
|
+
indeterminate
|
|
89
|
+
.label=${(0,p.msg)(`Loading columns`,{desc:`Formula editor datasets list loading spinner label`})}
|
|
90
|
+
.size=${e}
|
|
91
|
+
></luzmo-progress-circle>
|
|
92
|
+
</div>
|
|
93
|
+
`}function F(e,t){let{datasets:n,contentLanguage:r,size:a,disabled:o,searchQuery:s,collapsed:c,onToggleCollapse:l,onInsertColumn:f}=e;return d.html`
|
|
94
|
+
<div class="list-scroll" part="list-scroll">
|
|
95
|
+
${(0,m.repeat)(n,e=>e.id,e=>{let n=N(e,s,r),p=c.has(e.id);return n.length===0?d.nothing:d.html`
|
|
96
|
+
<div class="dataset-group" part="dataset-group">
|
|
97
|
+
${t?d.html`<button
|
|
98
|
+
class="dataset-group-header"
|
|
99
|
+
part="dataset-group-header"
|
|
100
|
+
type="button"
|
|
101
|
+
aria-expanded=${!p}
|
|
102
|
+
@click=${()=>l(e.id)}
|
|
103
|
+
>
|
|
104
|
+
<span class="dataset-group-icon" aria-hidden="true"
|
|
105
|
+
>${(0,u.luzmoIcon)(p?u.luzmoAngleRight:u.luzmoAngleDown)}</span
|
|
106
|
+
>
|
|
107
|
+
<span class="dataset-group-label">${i.t(e.name,r)||e.id}</span>
|
|
108
|
+
</button>`:d.nothing}
|
|
109
|
+
${p?d.nothing:d.html`<div class="dataset-group-fields" role="list">
|
|
110
|
+
${(0,m.repeat)(n,e=>`${e.datasetId}:${e.columnId}`,e=>d.html`
|
|
111
|
+
<luzmo-data-field
|
|
112
|
+
role="listitem"
|
|
113
|
+
hide-sublevels
|
|
114
|
+
.data=${e}
|
|
115
|
+
.language=${r}
|
|
116
|
+
.size=${a}
|
|
117
|
+
?disabled=${o}
|
|
118
|
+
@dblclick=${()=>f(e)}
|
|
119
|
+
></luzmo-data-field>
|
|
120
|
+
`)}
|
|
121
|
+
</div>`}
|
|
122
|
+
</div>
|
|
123
|
+
`})}
|
|
124
|
+
</div>
|
|
125
|
+
`}function I(e){let{size:t,loading:n=!1,disabled:r=!1,searchQuery:i,onSearchInput:a}=e,o=e.datasets.length>1;return d.html`
|
|
126
|
+
<div class="list" part="list datasets-list">
|
|
127
|
+
<luzmo-field-label class="list-header" part="list-header" .size=${t}
|
|
128
|
+
>${(0,p.msg)(`Data`,{id:`formula-datasets-list-title`,desc:`Formula editor datasets list title`})}</luzmo-field-label
|
|
129
|
+
>
|
|
130
|
+
<luzmo-search
|
|
131
|
+
.size=${t}
|
|
132
|
+
.placeholder=${(0,p.msg)(`Search columns...`,{desc:`Formula editor datasets list search placeholder`})}
|
|
133
|
+
.value=${i}
|
|
134
|
+
?disabled=${r||n}
|
|
135
|
+
@input=${a}
|
|
136
|
+
></luzmo-search>
|
|
137
|
+
${n?P(t):F(e,o)}
|
|
138
|
+
</div>
|
|
139
|
+
`}var L={numeric:`numeric`,hierarchy:`hierarchy`,datetime:`datetime`},R=a.r(),z=a.a(),B=o.n();function V(e,t){return t?d.html`<code class="example-code">${e.split(/(⟨\w+⟩)/g).map(e=>{let t=e.match(/^⟨(\w+)⟩$/);if(t){let e=L[t[1]];if(e)return d.html`<span class="example-icon" aria-hidden="true">${(0,u.luzmoIcon)(r.t({type:e},`s`))}</span>`}return e})}</code>`:d.html`<code class="example-code">${e}</code>`}function H(e){if(!e)return d.html`
|
|
140
|
+
<div class="description-empty" part="description-empty">
|
|
141
|
+
${(0,p.msg)(`Hover a function or aggregation to see its description.`,{desc:`Formula editor description empty state`})}
|
|
142
|
+
</div>
|
|
143
|
+
`;if(e.kind===`grouping`){let t=B[e.id];return d.html`
|
|
144
|
+
<div class="description-title" part="description-title">${t?.label()??e.id}</div>
|
|
145
|
+
<div class="description-text" part="description-text">${t?.description()??``}</div>
|
|
146
|
+
`}let t=e.kind===`aggregation`?z[e.id]:R[e.id];return t?d.html`
|
|
147
|
+
<div class="description-title" part="description-title">${t.label()}</div>
|
|
148
|
+
${V(t.example(),t.exampleHasIcons??!1)}
|
|
149
|
+
<div class="description-text" part="description-text">${t.description()}</div>
|
|
150
|
+
`:d.nothing}function U({target:e,size:t}){return d.html`
|
|
151
|
+
<div class="list description" part="list description-list">
|
|
152
|
+
<luzmo-field-label class="list-header" part="list-header" .size=${t}
|
|
153
|
+
>${(0,p.msg)(`Description`,{desc:`Formula editor description title`})}</luzmo-field-label
|
|
154
|
+
>
|
|
155
|
+
${H(e)}
|
|
156
|
+
</div>
|
|
157
|
+
`}var W=a.r();function G(e){return d.html`
|
|
158
|
+
<div class="list-loading" role="status" part="list-loading">
|
|
159
|
+
<luzmo-progress-circle
|
|
160
|
+
indeterminate
|
|
161
|
+
.label=${(0,p.msg)(`Loading functions`,{desc:`Formula editor functions list loading spinner label`})}
|
|
162
|
+
.size=${e}
|
|
163
|
+
></luzmo-progress-circle>
|
|
164
|
+
</div>
|
|
165
|
+
`}function K(e,{size:t,explanationTooltips:n,disabled:r}){return d.html`
|
|
166
|
+
<div class="list-items" part="list-items" role="list">
|
|
167
|
+
${(0,m.repeat)(e,e=>e,e=>d.html`
|
|
168
|
+
<luzmo-formula-draggable-field
|
|
169
|
+
role="listitem"
|
|
170
|
+
kind="function"
|
|
171
|
+
value=${e}
|
|
172
|
+
.label=${W[e]?.label()??e}
|
|
173
|
+
.size=${t}
|
|
174
|
+
?disabled=${r}
|
|
175
|
+
>
|
|
176
|
+
${n?O(W[e]?.description()??``,W[e]?.example()??``,W[e]?.exampleHasIcons??!1):d.nothing}
|
|
177
|
+
</luzmo-formula-draggable-field>
|
|
178
|
+
`)}
|
|
179
|
+
</div>
|
|
180
|
+
`}function q(e){let{size:t,loading:n=!1,disabled:r=!1,selectedCategory:i,onCategoryChange:o}=e,s=a.n(),c=s.find(e=>e.key===i)??s[0],l=s.map(e=>({value:e.key,label:e.title()}));return d.html`
|
|
181
|
+
<div class="list" part="list functions-list">
|
|
182
|
+
<luzmo-field-label class="list-header" part="list-header" .size=${t}
|
|
183
|
+
>${(0,p.msg)(`Functions`,{desc:`Formula editor functions list title`})}</luzmo-field-label
|
|
184
|
+
>
|
|
185
|
+
<luzmo-select
|
|
186
|
+
selects="single"
|
|
187
|
+
variant="highlight"
|
|
188
|
+
.size=${t}
|
|
189
|
+
.options=${l}
|
|
190
|
+
.value=${[c.key]}
|
|
191
|
+
aria-label=${(0,p.msg)(`Function category`,{desc:`Accessible label for the function category selector`})}
|
|
192
|
+
?disabled=${r||n}
|
|
193
|
+
@change=${o}
|
|
194
|
+
></luzmo-select>
|
|
195
|
+
${n?G(t):K(c.functions,e)}
|
|
196
|
+
</div>
|
|
197
|
+
`}var J=`:host{--luzmo-formula-editor-error-color:var(--luzmo-negative-color);--luzmo-formula-editor-error-background:color-mix(in srgb, var(--luzmo-negative-color) 10%, var(--luzmo-background-color) 90%);--luzmo-formula-editor-error-text-color:var(--luzmo-font-color);--luzmo-formula-font-size:var(--luzmo-font-size);--luzmo-formula-pill-disclosure-icon-size:var(--luzmo-font-size);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-m);--luzmo-formula-control-height:calc(var(--luzmo-component-height) - 2 * var(--luzmo-spacing-1));--formula-editor-lists-height:24rem}:host([size=s]){--luzmo-formula-font-size:var(--luzmo-font-size-s);--luzmo-formula-control-height:calc(var(--luzmo-component-height-s) - 2 * var(--luzmo-spacing-1));--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-s);--formula-editor-lists-height:20rem}:host([size=l]){--luzmo-formula-font-size:var(--luzmo-font-size-l);--luzmo-formula-control-height:calc(var(--luzmo-component-height-l) - 2 * var(--luzmo-spacing-1));--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-l);--formula-editor-lists-height:28rem}:host([size=xl]){--luzmo-formula-font-size:var(--luzmo-font-size-xl);--luzmo-formula-control-height:calc(var(--luzmo-component-height-xl) - 2 * var(--luzmo-spacing-1));--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-xl);--formula-editor-lists-height:32rem}:host{box-sizing:border-box;width:100%;max-width:100%;font-family:var(--luzmo-font-family);color:var(--luzmo-font-color);display:block}.formula-editor{flex-direction:column;width:100%;display:flex}luzmo-formula-codemirror,.formula-codemirror-loading{--luzmo-formula-field-bottom-radius:0;z-index:1;width:100%;position:relative}.error{align-items:flex-start;gap:var(--luzmo-spacing-2);padding:var(--luzmo-spacing-2) var(--luzmo-spacing-3);border:1px solid var(--luzmo-formula-editor-error-color,var(--luzmo-negative-color));background:var(--luzmo-formula-editor-error-background,color-mix(in srgb, var(--luzmo-negative-color) 10%, var(--luzmo-background-color) 90%));color:var(--luzmo-formula-editor-error-text-color,var(--luzmo-font-color));font-size:var(--luzmo-font-size-s);border-block-start:0;line-height:1.4;display:flex}.error svg{flex:none;margin-block-start:.2em}.validating{align-items:center;gap:var(--luzmo-spacing-2);padding:var(--luzmo-spacing-2) var(--luzmo-spacing-3);border:1px solid var(--luzmo-border-color);background:var(--luzmo-background-color);color:var(--luzmo-font-color-extra-dimmed);font-size:var(--luzmo-font-size-s);border-block-start:0;line-height:1.4;display:flex}.lists{box-sizing:border-box;min-height:0;border:1px solid var(--luzmo-border-color);border-block-start:0;border-end-end-radius:var(--luzmo-border-radius);border-end-start-radius:var(--luzmo-border-radius);grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:0;padding-block-start:var(--luzmo-formula-editor-gap,0);display:grid}:host([show-aggregations]) .lists,:host([explanation-display=description]) .lists{grid-template-columns:repeat(3,minmax(0,1fr))}:host([show-aggregations][explanation-display=description]) .lists{grid-template-columns:repeat(4,minmax(0,1fr))}.lists>*{min-width:0;padding:var(--luzmo-formula-editor-list-padding,var(--luzmo-spacing-3));--luzmo-formula-list-height:var(--luzmo-formula-editor-lists-height,var(--formula-editor-lists-height,16rem))}.lists>:not(:last-child){border-inline-end:1px solid var(--luzmo-border-color)}.lists{--list-text-font-size:var(--luzmo-font-size)}:host([size=s]) .lists{--list-text-font-size:var(--luzmo-font-size-s)}:host([size=l]) .lists{--list-text-font-size:var(--luzmo-font-size-l)}:host([size=xl]) .lists{--list-text-font-size:var(--luzmo-font-size-xl)}.lists .list{gap:var(--luzmo-spacing-2);min-height:0;height:var(--luzmo-formula-list-height,100%);box-sizing:border-box;flex-direction:column;display:flex}.lists .list-header{flex-shrink:0;margin-block-end:var(--luzmo-spacing-1);display:block}.lists .list-items{gap:var(--luzmo-spacing-1);flex-direction:column;align-content:flex-start;min-height:0;display:flex;overflow-y:auto}.lists .list-items::-webkit-scrollbar{width:var(--luzmo-scrollbar-width,6px)}.lists .list-items::-webkit-scrollbar-track{background:var(--luzmo-scrollbar-track-background,transparent);border-radius:var(--luzmo-scrollbar-track-border-radius,4px)}.lists .list-items::-webkit-scrollbar-thumb{background:var(--luzmo-scrollbar-thumb-background,#0003);border-radius:var(--luzmo-scrollbar-thumb-border-radius,4px)}.lists .list-items::-webkit-scrollbar-thumb:hover{background:var(--luzmo-scrollbar-thumb-hover-background,#00000059)}.lists .list-items{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-scrollbar-thumb-background,#0003) var(--luzmo-scrollbar-track-background,transparent)}.lists .list-scroll{gap:var(--luzmo-spacing-2,.5rem);flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden auto}.lists .list-scroll::-webkit-scrollbar{width:var(--luzmo-scrollbar-width,6px)}.lists .list-scroll::-webkit-scrollbar-track{background:var(--luzmo-scrollbar-track-background,transparent);border-radius:var(--luzmo-scrollbar-track-border-radius,4px)}.lists .list-scroll::-webkit-scrollbar-thumb{background:var(--luzmo-scrollbar-thumb-background,#0003);border-radius:var(--luzmo-scrollbar-thumb-border-radius,4px)}.lists .list-scroll::-webkit-scrollbar-thumb:hover{background:var(--luzmo-scrollbar-thumb-hover-background,#00000059)}.lists .list-scroll{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-scrollbar-thumb-background,#0003) var(--luzmo-scrollbar-track-background,transparent)}.lists luzmo-select,.lists luzmo-search{width:100%}.lists .list-loading{min-height:0;padding:var(--luzmo-spacing-4);flex:1;justify-content:center;align-items:center;display:flex}.lists .dataset-group{gap:var(--luzmo-spacing-1);flex-direction:column;display:flex}.lists .dataset-group-header{align-items:center;gap:var(--luzmo-spacing-1);width:100%;padding:var(--luzmo-spacing-1) 0;color:var(--luzmo-font-color-extra-dimmed);font:inherit;font-size:var(--list-text-font-size);font-weight:var(--luzmo-font-weight-bold);text-align:start;cursor:pointer;background:0 0;border:none;display:flex}.lists .dataset-group-fields{gap:var(--luzmo-spacing-1);flex-direction:column;display:flex}.lists .dataset-group-fields luzmo-data-field{--luzmo-data-field-level-border-width:0;--luzmo-data-field-level-background-color:transparent;--luzmo-data-field-level-horizontal-padding:var(--luzmo-spacing-3);--luzmo-data-field-level-gap:var(--luzmo-spacing-3);--luzmo-data-field-level-background-color-hover:var(--luzmo-formula-editor-data-field-background-color-hover,var(--luzmo-background-color-highlight));--luzmo-data-field-level-border-color-hover:var(--luzmo-formula-editor-data-field-border-color-hover,var(--luzmo-background-color-highlight));--luzmo-data-field-level-background-color-active:var(--luzmo-formula-editor-data-field-background-color-active,var(--luzmo-background-color-highlight-down));--luzmo-data-field-level-border-color-active:var(--luzmo-formula-editor-data-field-border-color-active,var(--luzmo-background-color-highlight-down));--luzmo-data-field-level-background-color-focus-visible:var(--luzmo-formula-editor-data-field-background-color-focus,var(--luzmo-background-color-highlight-focus))}.lists .description{gap:var(--luzmo-spacing-2)}.lists .description-title{font-weight:var(--luzmo-font-weight-bold);font-size:var(--list-text-font-size)}.lists .description-text{font-size:var(--list-text-font-size);color:var(--luzmo-font-color-extra-dimmed);line-height:1.4}.lists .description-empty{font-size:var(--list-text-font-size);color:var(--luzmo-font-color-tertiary,#767676);font-style:italic}.lists .example-code{align-items:center;gap:var(--luzmo-spacing-1);padding:var(--luzmo-spacing-2);border-radius:var(--luzmo-border-radius-s);background-color:var(--luzmo-background-color-highlight);font-family:var(--luzmo-font-family-mono,monospace);font-size:var(--list-text-font-size);flex-wrap:wrap;display:inline-flex}.lists .example-icon{vertical-align:middle;display:inline-flex}.lists .explanation-tooltip{gap:var(--luzmo-spacing-2);text-align:start;flex-direction:column;display:flex}.lists .explanation-tooltip .tooltip-example{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace;font-weight:var(--luzmo-font-weight-bold,700);white-space:pre-wrap;display:block}.lists .explanation-tooltip .example-icon{display:inline}`,Y=750,X=class extends l.t{constructor(...e){super(...e),this.expressionResource=`formula`,this.explanationDisplay=`tooltip`,this._loadingDatasets=!1,this._describeTarget=null,this._validity={valid:!0,error:null,validating:!1},this._selectedCategory=`string`,this._searchQuery=``,this._collapsedDatasets=new Set,this._validWordIdentifiers=x(this._store.functionDataMap,this._store.aggregationFunctionDataMap),this._validationSequence=0}static{this.styles=(0,d.unsafeCSS)(J)}get _emitDebounceMs(){return Y}_onExpressionComputed(e){e!==this._lastEmittedExpression&&(this._validate(e),this._emitExpressionChanged(e))}_setLoading(e){this._loadingDatasets=e,this._store.setLoading(e)}_validate(e){let t=this._localValidity(e),n=++this._validationSequence;if(!t.valid){this._emitValidity(t);return}if(!this.authKey||!this.authToken){this._emitValidity(this._offlineValidity(e));return}this._runBackendValidation(e,n)}async _runBackendValidation(e,t){this._emitValidity({...this._validity,validating:!0});try{n.t.configure({apiUrl:this.apiUrl,authKey:this.authKey??``,authToken:this.authToken??``});let r=await n.t.validate(this.expressionResource,{expression:e,explain_error:!0});if(t!==this._validationSequence)return;this._emitValidity({valid:r.valid,error:r.valid?null:r.explanation??r.reason??null,validating:!1})}catch(n){console.warn(`[luzmo-formula-editor] Expression validation failed, falling back to local validation:`,n),t===this._validationSequence&&this._emitValidity(this._offlineValidity(e))}}_localValidity(e){return e.trim()?e.includes(`##EMPTYARG-`)?{valid:!1,error:(0,p.msg)(`Complete all empty arguments.`,{desc:`Formula editor validation error for empty arguments`}),validating:!1}:a.p.test(e)?{valid:!1,error:(0,p.msg)(`Provide a value for every aggregation.`,{desc:`Formula editor validation error for empty aggregations`}),validating:!1}:{valid:!0,error:null,validating:!1}:{valid:!1,error:null,validating:!1}}_offlineValidity(e){let t=S(e,this._validWordIdentifiers);return t?{valid:!1,error:(0,p.msg)(p.str`'${t}' is not a valid column, function, or value.`,{desc:`Formula editor validation error for unresolved free text in the expression`}),validating:!1}:{valid:!0,error:null,validating:!1}}_emitValidity(e){this._validity=e,this.dispatchEvent(new CustomEvent(`luzmo-validity-changed`,{bubbles:!0,composed:!0,detail:e}))}_insertColumn(e){this.readonly||!e.columnId||this._store.onExtendExpression({type:`column`,id:e.columnId,datasetId:e.datasetId,aggregationWidgetId:this._store.lastFocusedAggregationWidgetId,targetEmptyArgumentId:this._store.lastFocusedEmptyArgumentId??void 0})}_handleCategoryChange(e){let t=e.detail?.value?.[0];t&&(this._selectedCategory=t)}_handleSearchInput(e){this._searchQuery=e.target.value}_toggleCollapse(e){let t=new Set(this._collapsedDatasets);t.has(e)?t.delete(e):t.add(e),this._collapsedDatasets=t}_handleDraggableActivate(e){if(e.stopPropagation(),this.readonly)return;let{kind:t,value:n}=e.detail;this._store.onExtendExpression({type:t,id:n,aggregationWidgetId:this._store.lastFocusedAggregationWidgetId,targetEmptyArgumentId:this._store.lastFocusedEmptyArgumentId??void 0})}_handleDraggableDescribe(e){e.stopPropagation();let{kind:t,value:n}=e.detail;this._describeTarget=n?{kind:t,id:n}:null}_renderLists(){if(this.readonly)return d.nothing;let e=this.explanationDisplay===`tooltip`;return d.html`
|
|
198
|
+
<div
|
|
199
|
+
class="lists"
|
|
200
|
+
part="lists"
|
|
201
|
+
@luzmo-formula-draggable-field-activate=${this._handleDraggableActivate}
|
|
202
|
+
@luzmo-formula-draggable-field-describe=${this._handleDraggableDescribe}
|
|
203
|
+
>
|
|
204
|
+
${this.showAggregations?M({explanationTooltips:e,loading:this._loadingDatasets,size:this.size}):d.nothing}
|
|
205
|
+
${I({datasets:this._datasets,loading:this._loadingDatasets,contentLanguage:this.contentLanguage,size:this.size,searchQuery:this._searchQuery,collapsed:this._collapsedDatasets,onSearchInput:e=>this._handleSearchInput(e),onToggleCollapse:e=>this._toggleCollapse(e),onInsertColumn:e=>this._insertColumn(e)})}
|
|
206
|
+
${q({explanationTooltips:e,loading:this._loadingDatasets,size:this.size,selectedCategory:this._selectedCategory,onCategoryChange:e=>this._handleCategoryChange(e)})}
|
|
207
|
+
${e?d.nothing:U({target:this._describeTarget,size:this.size})}
|
|
208
|
+
</div>
|
|
209
|
+
`}_renderValidationFeedback(){return this._validity.validating?d.html`<div class="validating" part="validating" role="status" aria-live="polite">
|
|
210
|
+
<luzmo-progress-circle
|
|
211
|
+
indeterminate
|
|
212
|
+
size="s"
|
|
213
|
+
.label=${(0,p.msg)(`Validating formula`,{desc:`Formula editor spinner label shown while the expression is being validated`})}
|
|
214
|
+
></luzmo-progress-circle>
|
|
215
|
+
<span>${(0,p.msg)(`Validating…`,{desc:`Formula editor status text shown while the expression is being validated`})}</span>
|
|
216
|
+
</div>`:!this._validity.valid&&this._validity.error?d.html`<div class="error" part="error" role="alert">
|
|
217
|
+
${(0,u.luzmoIcon)(u.luzmoAlertOutline)}
|
|
218
|
+
<span>${this._validity.error}</span>
|
|
219
|
+
</div>`:d.nothing}render(){let e=!this._validity.valid&&!!this._validity.error&&!this._validity.validating;return d.html`
|
|
220
|
+
<div class="formula-editor" part="formula-editor">
|
|
221
|
+
${this._renderFormulaCodeMirror({hasError:e})} ${this._renderValidationFeedback()}
|
|
222
|
+
${this._renderLists()}
|
|
223
|
+
</div>
|
|
224
|
+
`}};t.t([(0,f.property)({type:String,attribute:`expression-resource`,reflect:!0})],X.prototype,`expressionResource`,void 0),t.t([(0,f.property)({type:String,attribute:`explanation-display`,reflect:!0})],X.prototype,`explanationDisplay`,void 0),t.t([(0,f.state)()],X.prototype,`_loadingDatasets`,void 0),t.t([(0,f.state)()],X.prototype,`_describeTarget`,void 0),t.t([(0,f.state)()],X.prototype,`_validity`,void 0),t.t([(0,f.state)()],X.prototype,`_selectedCategory`,void 0),t.t([(0,f.state)()],X.prototype,`_searchQuery`,void 0),t.t([(0,f.state)()],X.prototype,`_collapsedDatasets`,void 0),X=t.t([(0,p.localized)()],X),customElements.get(`luzmo-formula-editor`)||customElements.define(`luzmo-formula-editor`,X),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return X}});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type TemplateResult } from 'lit';
|
|
2
|
+
import { LuzmoFormulaInputBase } from '../../utils/formula/base/formula-input-base';
|
|
3
|
+
/**
|
|
4
|
+
* @customElement luzmo-formula-field
|
|
5
|
+
* @description A single editable formula field: a CodeMirror-backed expression
|
|
6
|
+
* with inline column / empty-argument / aggregation pills, autocompletion and
|
|
7
|
+
* drag-to-insert, but without the helper lists. Set `readonly` for a
|
|
8
|
+
* non-editable (but still rich) rendering. For a static, non-interactive display
|
|
9
|
+
* use `luzmo-formula`; for the full builder with datasets / functions /
|
|
10
|
+
* aggregations lists use `luzmo-formula-editor`.
|
|
11
|
+
*
|
|
12
|
+
* @fires {CustomEvent<ExpressionChangedEventDetail>} luzmo-expression-changed - Fired (debounced) when the expression changes (only when not readonly).
|
|
13
|
+
* @fires {CustomEvent<DatasetsErrorEventDetail>} luzmo-datasets-error - Fired when fetching datasets by id fails.
|
|
14
|
+
*/
|
|
15
|
+
export declare class LuzmoFormulaField extends LuzmoFormulaInputBase {
|
|
16
|
+
static styles: import("lit").CSSResult;
|
|
17
|
+
/** A read-only field does not emit expression changes. */
|
|
18
|
+
protected _canEmitExpression(): boolean;
|
|
19
|
+
protected render(): TemplateResult;
|
|
20
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
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
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../formula-field--gNwmTRk.cjs");Object.defineProperty(exports,"LuzmoFormulaField",{enumerable:!0,get:function(){return e.t}});
|
|
@@ -0,0 +1,21 @@
|
|
|
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 "../formula-field-CQcnyXOD.js";
|
|
21
|
+
export { e as LuzmoFormulaField };
|
|
@@ -0,0 +1,20 @@
|
|
|
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
|
+
require("./tokens-BWMfo_w4.cjs");const e=require("./decorate-DCJt-2rt.cjs"),t=require("./formula-input-base-CZih19kC.cjs");let n=require("lit"),r=require("@lit/localize");var i=`:host{box-sizing:border-box;width:100%;font-family:var(--luzmo-font-family);color:var(--luzmo-font-color);display:inline-block}luzmo-formula-codemirror{width:100%;display:block}:host{--luzmo-formula-font-size:var(--luzmo-font-size);--luzmo-formula-pill-disclosure-icon-size:var(--luzmo-font-size);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-m);--luzmo-formula-control-height:calc(var(--luzmo-component-height) - 2 * var(--luzmo-spacing-1))}:host([size=s]){--luzmo-formula-font-size:var(--luzmo-font-size-s);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-s);--luzmo-formula-control-height:calc(var(--luzmo-component-height-s) - 2 * var(--luzmo-spacing-1))}:host([size=l]){--luzmo-formula-font-size:var(--luzmo-font-size-l);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-l);--luzmo-formula-control-height:calc(var(--luzmo-component-height-l) - 2 * var(--luzmo-spacing-1))}:host([size=xl]){--luzmo-formula-font-size:var(--luzmo-font-size-xl);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-xl);--luzmo-formula-control-height:calc(var(--luzmo-component-height-xl) - 2 * var(--luzmo-spacing-1))}`,a=class extends t.t{static{this.styles=(0,n.unsafeCSS)(i)}_canEmitExpression(){return!this.readonly}render(){return n.html`${this._renderFormulaCodeMirror({part:`input`})}`}};a=e.t([(0,r.localized)()],a),customElements.get(`luzmo-formula-field`)||customElements.define(`luzmo-formula-field`,a),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return a}});
|
|
@@ -0,0 +1,41 @@
|
|
|
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 "./tokens-Ov1pCR4Y.js";
|
|
21
|
+
import { t as e } from "./decorate-DyMgX_Uh.js";
|
|
22
|
+
import { t } from "./formula-input-base-BdKh5O_E.js";
|
|
23
|
+
import { html as n, unsafeCSS as r } from "lit";
|
|
24
|
+
import { localized as i } from "@lit/localize";
|
|
25
|
+
//#region src/components/formula-field/formula-field.module.scss?inline
|
|
26
|
+
var a = ":host{box-sizing:border-box;width:100%;font-family:var(--luzmo-font-family);color:var(--luzmo-font-color);display:inline-block}luzmo-formula-codemirror{width:100%;display:block}:host{--luzmo-formula-font-size:var(--luzmo-font-size);--luzmo-formula-pill-disclosure-icon-size:var(--luzmo-font-size);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-m);--luzmo-formula-control-height:calc(var(--luzmo-component-height) - 2 * var(--luzmo-spacing-1))}:host([size=s]){--luzmo-formula-font-size:var(--luzmo-font-size-s);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-s);--luzmo-formula-control-height:calc(var(--luzmo-component-height-s) - 2 * var(--luzmo-spacing-1))}:host([size=l]){--luzmo-formula-font-size:var(--luzmo-font-size-l);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-l);--luzmo-formula-control-height:calc(var(--luzmo-component-height-l) - 2 * var(--luzmo-spacing-1))}:host([size=xl]){--luzmo-formula-font-size:var(--luzmo-font-size-xl);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-xl);--luzmo-formula-control-height:calc(var(--luzmo-component-height-xl) - 2 * var(--luzmo-spacing-1))}", o = class extends t {
|
|
27
|
+
static {
|
|
28
|
+
this.styles = r(a);
|
|
29
|
+
}
|
|
30
|
+
_canEmitExpression() {
|
|
31
|
+
return !this.readonly;
|
|
32
|
+
}
|
|
33
|
+
render() {
|
|
34
|
+
return n`${this._renderFormulaCodeMirror({ part: "input" })}`;
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
//#endregion
|
|
38
|
+
//#region src/components/formula-field/index.ts
|
|
39
|
+
o = e([i()], o), customElements.get("luzmo-formula-field") || customElements.define("luzmo-formula-field", o);
|
|
40
|
+
//#endregion
|
|
41
|
+
export { o as t };
|
|
@@ -0,0 +1,236 @@
|
|
|
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 "./calculate-data-field-icon-DrSg1PuD.js";
|
|
22
|
+
import { t as n } from "./localize-BT7REYBY.js";
|
|
23
|
+
import { d as r, g as i, i as a, l as o, o as s, t as c, u as l } from "./formula-display-store-D9MWhreP.js";
|
|
24
|
+
import { a as u, i as d, n as f, t as p } from "./icon-element-_jY440X2.js";
|
|
25
|
+
import { luzmoAggregation as m, luzmoFunction as h } from "@luzmo/icons";
|
|
26
|
+
import { html as g } from "lit";
|
|
27
|
+
import { property as _ } from "lit/decorators.js";
|
|
28
|
+
import { msg as v } from "@lit/localize";
|
|
29
|
+
import "@luzmo/lucero/progress-circle";
|
|
30
|
+
import { ContextProvider as y, createContext as b } from "@lit/context";
|
|
31
|
+
import { ifDefined as x } from "lit/directives/if-defined.js";
|
|
32
|
+
//#region src/utils/formula/store/formula-editor-context.ts
|
|
33
|
+
var S = b(Symbol("formula-editor-store-context")), C = "__root__", w = {
|
|
34
|
+
numeric: "numeric",
|
|
35
|
+
hierarchy: "hierarchy",
|
|
36
|
+
datetime: "datetime"
|
|
37
|
+
}, T = class extends c {
|
|
38
|
+
constructor(...e) {
|
|
39
|
+
super(...e), this._editors = /* @__PURE__ */ new Map();
|
|
40
|
+
}
|
|
41
|
+
registerEditor(e, t) {
|
|
42
|
+
this._editors.set(e ?? "__root__", t);
|
|
43
|
+
}
|
|
44
|
+
unregisterEditor(e) {
|
|
45
|
+
this._editors.delete(e ?? "__root__");
|
|
46
|
+
}
|
|
47
|
+
getEditor(e = null) {
|
|
48
|
+
return this._editors.get(e ?? "__root__");
|
|
49
|
+
}
|
|
50
|
+
getDropExpression(e, t, n, a) {
|
|
51
|
+
let s = [], c = "";
|
|
52
|
+
if (e === "text") c = a ?? "";
|
|
53
|
+
else if (e === "column") n && t && (c = `{${n}:${t}}`);
|
|
54
|
+
else if (e === "function") {
|
|
55
|
+
let e = this.functionDataMap[t], n = /^[a-z]/i.test(t ?? "");
|
|
56
|
+
switch (e?.type) {
|
|
57
|
+
case "infix":
|
|
58
|
+
c = `${n ? ` ${t} ` : t}${e.arity > 1 ? r() : ""}`;
|
|
59
|
+
break;
|
|
60
|
+
case "prefix_op":
|
|
61
|
+
c = `${t}${n ? " " : ""}${r()}`;
|
|
62
|
+
break;
|
|
63
|
+
case "prefix": {
|
|
64
|
+
let n = [];
|
|
65
|
+
for (let t = 0; t < e.arity; t++) n.push(r());
|
|
66
|
+
c = `${t}(${n.join(",")})`;
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
} else if (e === "aggregation") {
|
|
71
|
+
let e = t, n = this.aggregationFunctionDataMap[e];
|
|
72
|
+
if (this.multiStageAggregation) {
|
|
73
|
+
let t = {
|
|
74
|
+
widgetId: o(),
|
|
75
|
+
aggregationFunction: e,
|
|
76
|
+
grouping: i.GROUP,
|
|
77
|
+
content: ""
|
|
78
|
+
};
|
|
79
|
+
c = l(t.widgetId), s.push(t);
|
|
80
|
+
} else c = `${e}(${n?.arity > 0 ? r() : ""})`;
|
|
81
|
+
}
|
|
82
|
+
return {
|
|
83
|
+
expression: c,
|
|
84
|
+
aggregationWidgets: s
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
onExtendExpression(e) {
|
|
88
|
+
let { type: t, id: n, aggregationWidgetId: r, datasetId: i, targetEmptyArgumentId: a, textContent: o } = e;
|
|
89
|
+
if (t === "aggregation" && r && !this.nestedAggregation) return;
|
|
90
|
+
let { expression: s, aggregationWidgets: c } = this.getDropExpression(t, n, i, o), l = this.getEditor(r);
|
|
91
|
+
!l || !s || (this.addWidgets(c), this._markAggregationForFocus(c), a && l.state.doc.toString().includes(`##EMPTYARG-${a}##`) ? u(l, s, a) : f(l, s));
|
|
92
|
+
}
|
|
93
|
+
getAutoCompletionList(e, r) {
|
|
94
|
+
let i = [], o = {
|
|
95
|
+
...this.functionDataMap,
|
|
96
|
+
...this.aggregationFunctionDataMap
|
|
97
|
+
};
|
|
98
|
+
for (let e of Object.keys(o)) {
|
|
99
|
+
let t = a.includes(e);
|
|
100
|
+
if (t && !r) continue;
|
|
101
|
+
let n = o[e];
|
|
102
|
+
i.push({
|
|
103
|
+
label: n.label(),
|
|
104
|
+
type: t ? "namespace" : "function",
|
|
105
|
+
info: () => this._buildOperationInfo(n),
|
|
106
|
+
iconDef: t ? m : h,
|
|
107
|
+
apply: (n, r, i, a) => {
|
|
108
|
+
let { expression: o, aggregationWidgets: s } = this.getDropExpression(t ? "aggregation" : "function", e);
|
|
109
|
+
this.addWidgets(s), this._markAggregationForFocus(s), n.dispatch({ changes: {
|
|
110
|
+
from: i,
|
|
111
|
+
to: a,
|
|
112
|
+
insert: o
|
|
113
|
+
} });
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
for (let r of e) for (let a of r.columns) {
|
|
118
|
+
let o = a.columnId, s = n(a.name, this.contentLanguage);
|
|
119
|
+
!o || !s || i.push({
|
|
120
|
+
label: s,
|
|
121
|
+
type: "variable",
|
|
122
|
+
info: e.length > 1 ? n(r.name, this.contentLanguage) : "",
|
|
123
|
+
iconDef: t(a),
|
|
124
|
+
apply: this.getDropExpression("column", o, r.id).expression
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
return i;
|
|
128
|
+
}
|
|
129
|
+
_buildOperationInfo(e) {
|
|
130
|
+
let n = document.createElement("div");
|
|
131
|
+
n.className = "cm-completion-info-formula";
|
|
132
|
+
let r = e.example();
|
|
133
|
+
if (r) {
|
|
134
|
+
let i = document.createElement("code");
|
|
135
|
+
if (i.className = "cm-completion-info-example", e.exampleHasIcons) for (let e of r.split(/(⟨\w+⟩)/g)) {
|
|
136
|
+
let n = e.match(/^⟨(\w+)⟩$/), r = n ? w[n[1]] : void 0;
|
|
137
|
+
if (r) {
|
|
138
|
+
let e = document.createElement("span");
|
|
139
|
+
e.className = "cm-completion-info-icon", e.appendChild(p(t({ type: r }, "s"))), i.appendChild(e);
|
|
140
|
+
} else e && i.appendChild(document.createTextNode(e));
|
|
141
|
+
}
|
|
142
|
+
else i.textContent = r;
|
|
143
|
+
n.appendChild(i);
|
|
144
|
+
}
|
|
145
|
+
let i = document.createElement("div");
|
|
146
|
+
return i.className = "cm-completion-info-desc", i.textContent = e.description(), n.appendChild(i), n;
|
|
147
|
+
}
|
|
148
|
+
}, E = class extends s {
|
|
149
|
+
constructor() {
|
|
150
|
+
super(), this._autoCompletionList = [], this.readonly = !1, this.placeholder = "", this.rows = 3, this.grows = !0, new y(this, {
|
|
151
|
+
context: S,
|
|
152
|
+
initialValue: this._store
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
_createStore() {
|
|
156
|
+
return new T();
|
|
157
|
+
}
|
|
158
|
+
willUpdate(e) {
|
|
159
|
+
super.willUpdate(e), e.has("readonly") && this._store.setReadonly(this.readonly);
|
|
160
|
+
}
|
|
161
|
+
_rebuildAutoCompletion() {
|
|
162
|
+
this._autoCompletionList = this._store.getAutoCompletionList(this._datasets, this.showAggregations);
|
|
163
|
+
}
|
|
164
|
+
_applyExternalExpression() {
|
|
165
|
+
this._applyingExternalExpression = !0;
|
|
166
|
+
try {
|
|
167
|
+
let e = this._syncExpressionToStore();
|
|
168
|
+
if (e === null) return;
|
|
169
|
+
let t = this._store.getEditor(null), n = this._codeMirrorElement;
|
|
170
|
+
t ? t.state.doc.toString() !== e && d(t, e) : n && n.setContent(e);
|
|
171
|
+
} finally {
|
|
172
|
+
this._applyingExternalExpression = !1;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
_handleInputContentChanged(e) {
|
|
176
|
+
e.stopPropagation(), !this.readonly && (this._rootContent = e.detail.content, this._recomputeExpression());
|
|
177
|
+
}
|
|
178
|
+
_renderFormulaCodeMirror(e = {}) {
|
|
179
|
+
return this._codeMirrorLoaded ? g`
|
|
180
|
+
<luzmo-formula-codemirror
|
|
181
|
+
part=${x(e.part)}
|
|
182
|
+
.store=${this._store}
|
|
183
|
+
.datasets=${this._datasets}
|
|
184
|
+
content-language=${this.contentLanguage}
|
|
185
|
+
.placeholder=${this.placeholder}
|
|
186
|
+
.rows=${this.rows}
|
|
187
|
+
.maxRows=${this.maxRows}
|
|
188
|
+
.grows=${this.grows}
|
|
189
|
+
?readonly=${this.readonly}
|
|
190
|
+
?has-error=${e.hasError ?? !1}
|
|
191
|
+
.autoCompletionList=${this._autoCompletionList}
|
|
192
|
+
@luzmo-input-content-changed=${this._handleInputContentChanged}
|
|
193
|
+
></luzmo-formula-codemirror>
|
|
194
|
+
` : this._renderInputLoadingPlaceholder(e);
|
|
195
|
+
}
|
|
196
|
+
_renderInputLoadingPlaceholder(e) {
|
|
197
|
+
let t = `calc(${this.rows} * 1.5 * var(--luzmo-formula-font-size, var(--luzmo-font-size)) + 2 * var(--luzmo-spacing-3) + 2px)`, n = e.hasError ? "var(--luzmo-negative-color, #ca221c)" : "var(--luzmo-border-color, rgba(0, 0, 0, 0.1))", r = [
|
|
198
|
+
"box-sizing: border-box",
|
|
199
|
+
"display: flex",
|
|
200
|
+
"align-items: flex-start",
|
|
201
|
+
"justify-content: flex-start",
|
|
202
|
+
"padding: var(--luzmo-spacing-3) var(--luzmo-spacing-4)",
|
|
203
|
+
"width: 100%",
|
|
204
|
+
`min-height: ${t}`,
|
|
205
|
+
`border: 1px solid ${n}`,
|
|
206
|
+
"border-radius: var(--luzmo-border-radius)",
|
|
207
|
+
"border-end-start-radius: var(--luzmo-formula-field-bottom-radius, var(--luzmo-border-radius))",
|
|
208
|
+
"border-end-end-radius: var(--luzmo-formula-field-bottom-radius, var(--luzmo-border-radius))",
|
|
209
|
+
"background: var(--luzmo-background-color, #ffffff)"
|
|
210
|
+
].join("; ");
|
|
211
|
+
return g`
|
|
212
|
+
<div
|
|
213
|
+
class="formula-codemirror-loading"
|
|
214
|
+
part=${x(e.part)}
|
|
215
|
+
role="status"
|
|
216
|
+
aria-busy="true"
|
|
217
|
+
style=${r}
|
|
218
|
+
>
|
|
219
|
+
<luzmo-progress-circle
|
|
220
|
+
indeterminate
|
|
221
|
+
.size=${this.size}
|
|
222
|
+
.label=${v("Loading the formula editor", { desc: "Spinner label while the formula editor input loads" })}
|
|
223
|
+
></luzmo-progress-circle>
|
|
224
|
+
</div>
|
|
225
|
+
`;
|
|
226
|
+
}
|
|
227
|
+
};
|
|
228
|
+
e([_({
|
|
229
|
+
type: Boolean,
|
|
230
|
+
reflect: !0
|
|
231
|
+
})], E.prototype, "readonly", void 0), e([_({ type: String })], E.prototype, "placeholder", void 0), e([_({ type: Number })], E.prototype, "rows", void 0), e([_({
|
|
232
|
+
type: Number,
|
|
233
|
+
attribute: "max-rows"
|
|
234
|
+
})], E.prototype, "maxRows", void 0), e([_({ type: Boolean })], E.prototype, "grows", void 0);
|
|
235
|
+
//#endregion
|
|
236
|
+
export { S as i, T as n, C as r, E as t };
|