@luzmo/analytics-components-kit 1.0.4 → 1.0.5-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/ad-hoc-slot-content-BxpvfmjT.js +29 -0
- package/components/ad-hoc-slot-content-DJUmB7pS.cjs +20 -0
- package/components/ai-chat/ai-chat-events.d.ts +123 -0
- package/components/ai-chat/ai-chat-request.d.ts +11 -0
- package/components/ai-chat/ai-chat.d.ts +302 -0
- package/components/ai-chat/ai-prompt-types.d.ts +94 -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/index.cjs +20 -0
- package/components/ai-chat/index.d.ts +20 -0
- package/components/ai-chat/index.js +28 -0
- package/components/ai-chat/session/ai-chat-session-controller.d.ts +51 -0
- package/components/ai-chat/session/ai-chat-session-types.d.ts +88 -0
- package/components/ai-chat/session/ai-chat-session.d.ts +91 -0
- package/components/ai-chat/session/index.d.ts +2 -0
- package/components/ai-chat/stream/chunk-extractors.d.ts +27 -0
- package/components/ai-chat/stream/index.d.ts +52 -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 +55 -0
- package/components/ai-chat-BBc330Jm.js +3832 -0
- package/components/ai-chat-DLDSaC7W.cjs +300 -0
- package/components/ai-interaction-textarea/ai-interaction-textarea.d.ts +135 -0
- package/components/ai-interaction-textarea/index.cjs +20 -0
- package/components/ai-interaction-textarea/index.d.ts +8 -0
- package/components/ai-interaction-textarea/index.js +28 -0
- package/components/ai-interaction-textarea/types.d.ts +5 -0
- package/components/ai-interaction-textarea-BCH5_GBO.cjs +68 -0
- package/components/ai-interaction-textarea-DzHetSBZ.js +299 -0
- package/components/{area-chart-positioning.config-CQW5h7Eg.js → area-chart-positioning.config-CjeYLy6C.js} +1 -1
- package/components/{area-chart-positioning.config-CE8lOCfT.cjs → area-chart-positioning.config-DVrykBho.cjs} +1 -1
- package/components/{bar-chart-positioning.config-DFI1wzOQ.cjs → bar-chart-positioning.config-DpF15KcV.cjs} +1 -1
- package/components/{bar-chart-positioning.config-DaH_x_VU.js → bar-chart-positioning.config-e-SAdpBe.js} +1 -1
- package/components/base-DSXeP3BL.cjs +20 -0
- package/components/{base-p2I4mVSW.js → base-a89RuUMb.js} +2 -1
- package/components/{box-plot-positioning.config-K2tQGMig.js → box-plot-positioning.config-Bq2INEtG.js} +1 -1
- package/components/{box-plot-positioning.config-FOyav5Zq.cjs → box-plot-positioning.config-DbwtHJ4q.cjs} +1 -1
- package/components/{bubble-chart-positioning.config-B6DXfqa4.cjs → bubble-chart-positioning.config--EBfDgdN.cjs} +1 -1
- package/components/{bubble-chart-positioning.config-D2fwO2JM.js → bubble-chart-positioning.config-DFnW4mJ9.js} +1 -1
- package/components/{bullet-chart-positioning.config-DZqzqZSQ.cjs → bullet-chart-positioning.config-CZ46z07k.cjs} +1 -1
- package/components/{bullet-chart-positioning.config-DOAG2wFN.js → bullet-chart-positioning.config-DS2OmjBY.js} +1 -1
- package/components/{choropleth-map-positioning.config-C3jO3j8R.cjs → choropleth-map-positioning.config-Clm5IUT6.cjs} +1 -1
- package/components/{choropleth-map-positioning.config-Jw6fAFM1.js → choropleth-map-positioning.config-DgANsGq1.js} +1 -1
- package/components/{circle-pack-chart-positioning.config-Ckb-1sUG.js → circle-pack-chart-positioning.config-2H1CrfH_.js} +1 -1
- package/components/{circle-pack-chart-positioning.config-DJT6ivEy.cjs → circle-pack-chart-positioning.config-qF0qGcEO.cjs} +1 -1
- package/components/{circular-gauge-positioning.config-B8gL5Br9.cjs → circular-gauge-positioning.config-CMttD_BW.cjs} +1 -1
- package/components/{circular-gauge-positioning.config-BGlDGhYZ.js → circular-gauge-positioning.config-CusKP9Tq.js} +1 -1
- package/components/{column-chart-positioning.config-LzBETWIy.cjs → column-chart-positioning.config-ColoutIT.cjs} +1 -1
- package/components/{column-chart-positioning.config-BJGWvFLD.js → column-chart-positioning.config-rRwPVTbj.js} +1 -1
- package/components/{combination-chart-positioning.config-DjmWx90S.cjs → combination-chart-positioning.config-DAVrKW-6.cjs} +1 -1
- package/components/{combination-chart-positioning.config-DtneKdwK.js → combination-chart-positioning.config-uLf1RJQr.js} +1 -1
- package/components/{conditional-number-positioning.config-Ccb2yjJU.js → conditional-number-positioning.config-DZjwZfsH.js} +1 -1
- package/components/{conditional-number-positioning.config-C8bRdffQ.cjs → conditional-number-positioning.config-Nwsh-WyG.cjs} +1 -1
- package/components/convert-data-field-to-slot-content-BQkSy_8B.cjs +20 -0
- package/components/convert-data-field-to-slot-content-C6IIqU7G.js +53 -0
- package/components/convert-datasets-to-data-fields-B13rl1an.cjs +20 -0
- package/components/convert-datasets-to-data-fields-PmQzeVLG.js +68 -0
- package/components/data-field/index.cjs +1 -1
- package/components/data-field/index.d.ts +1 -0
- package/components/data-field/index.js +1 -1
- package/components/data-field-CFX9bhKN.js +121 -0
- package/components/data-field-bRmOqmAe.cjs +54 -0
- package/components/data-field-level/data-field-level.d.ts +40 -0
- package/components/data-field-level/helpers/generate-preview.d.ts +9 -0
- package/components/data-field-level/index.cjs +20 -0
- package/components/data-field-level/index.d.ts +8 -0
- package/components/data-field-level/index.js +28 -0
- package/components/{data-field-ll2oFVG2.js → data-field-level-Cc6yEETi.js} +46 -140
- package/components/data-field-level-Dnl27sxs.cjs +55 -0
- package/components/data-field-panel/index.cjs +1 -1
- package/components/data-field-panel/index.d.ts +1 -0
- package/components/data-field-panel/index.js +1 -1
- package/components/data-field-panel-BDExLalA.cjs +87 -0
- package/components/{data-field-panel-ntgCpQ_2.js → data-field-panel-DcqVOzMO.js} +5 -4
- package/components/data-fields-select/data-fields-select.d.ts +127 -0
- package/components/data-fields-select/index.cjs +20 -0
- package/components/data-fields-select/index.d.ts +9 -0
- package/components/data-fields-select/index.js +28 -0
- package/components/data-fields-select/types.d.ts +4 -0
- package/components/data-fields-select-B5aGtDYe.cjs +41 -0
- package/components/{data-fields-select-DJFkrrPs.js → data-fields-select-CfAfiV-K.js} +4 -3
- package/components/dataset-icon/dataset-icon.d.ts +45 -0
- package/components/dataset-icon/index.cjs +20 -0
- package/components/dataset-icon/index.d.ts +8 -0
- package/components/dataset-icon/index.js +28 -0
- package/components/dataset-icon/types.d.ts +11 -0
- package/components/dataset-icon-BAV0S4sZ.cjs +64 -0
- package/components/dataset-icon-BXEgg_8O.js +125 -0
- package/components/dataset-selector-list/dataset-selector-list.d.ts +102 -0
- package/components/dataset-selector-list/index.cjs +20 -0
- package/components/dataset-selector-list/index.d.ts +8 -0
- package/components/dataset-selector-list/index.js +28 -0
- package/components/dataset-selector-list-WT2ZHjQ4.cjs +75 -0
- package/components/dataset-selector-list-bAFTW1Hr.js +313 -0
- package/components/dataset-selector-row/dataset-selector-row.d.ts +89 -0
- package/components/dataset-selector-row/index.cjs +20 -0
- package/components/dataset-selector-row/index.d.ts +8 -0
- package/components/dataset-selector-row/index.js +28 -0
- package/components/dataset-selector-row-CXrEKQrA.js +273 -0
- package/components/dataset-selector-row-CwkXH93E.cjs +79 -0
- package/components/decompose-numeric-format-DGJua3rU.cjs +20 -0
- package/components/decompose-numeric-format-DS0j2wa1.js +36 -0
- package/components/{localized-mixin-CBMYHOPv.js → decorate-CaYbmmmm.js} +2 -26
- package/components/decorate-DCJt-2rt.cjs +20 -0
- package/components/display-settings/display-settings.d.ts +117 -0
- package/components/display-settings/index.cjs +20 -0
- package/components/display-settings/index.d.ts +8 -0
- package/components/display-settings/index.js +28 -0
- package/components/display-settings/types.d.ts +9 -0
- package/components/display-settings-DrcpHnKo.cjs +140 -0
- package/components/display-settings-Ec_smyRC.js +313 -0
- package/components/display-settings-binning/display-settings-binning.d.ts +32 -0
- package/components/display-settings-binning/index.cjs +20 -0
- package/components/display-settings-binning/index.d.ts +8 -0
- package/components/display-settings-binning/index.js +28 -0
- package/components/{display-settings-binning-DGxEB9Fa.js → display-settings-binning-COpQPUin.js} +17 -19
- package/components/{display-settings-binning-CQKXGp11.cjs → display-settings-binning-XXJdJeGU.cjs} +2 -2
- package/components/display-settings-datetime/display-settings-datetime.d.ts +86 -0
- package/components/display-settings-datetime/index.cjs +20 -0
- package/components/display-settings-datetime/index.d.ts +8 -0
- package/components/display-settings-datetime/index.js +28 -0
- package/components/display-settings-datetime-DhSW10ln.cjs +217 -0
- package/components/{display-settings-datetime-CLx9sxA7.js → display-settings-datetime-qj86dnHh.js} +69 -71
- package/components/display-settings-grand-totals/display-settings-grand-totals.d.ts +29 -0
- package/components/display-settings-grand-totals/index.cjs +20 -0
- package/components/display-settings-grand-totals/index.d.ts +8 -0
- package/components/display-settings-grand-totals/index.js +28 -0
- package/components/{display-settings-grand-totals-B0Px90rH.js → display-settings-grand-totals-D6IDs0U1.js} +17 -19
- package/components/display-settings-grand-totals-DTF0sqA1.cjs +44 -0
- package/components/display-settings-numeric/display-settings-numeric.d.ts +82 -0
- package/components/display-settings-numeric/helpers/constants.d.ts +19 -0
- package/components/display-settings-numeric/index.cjs +20 -0
- package/components/display-settings-numeric/index.d.ts +8 -0
- package/components/display-settings-numeric/index.js +28 -0
- package/components/display-settings-numeric-Dt34JHyR.cjs +190 -0
- package/components/{display-settings-numeric-CdEgzO7W.js → display-settings-numeric-Dy2EMcKa.js} +79 -81
- package/components/display-settings-period-over-period/display-settings-period-over-period.d.ts +68 -0
- package/components/display-settings-period-over-period/helpers/constants.d.ts +44 -0
- package/components/display-settings-period-over-period/index.cjs +20 -0
- package/components/display-settings-period-over-period/index.d.ts +8 -0
- package/components/display-settings-period-over-period/index.js +28 -0
- package/components/display-settings-period-over-period-B-ULI6yW.cjs +229 -0
- package/components/{display-settings-period-over-period-lo3myRfT.js → display-settings-period-over-period-BMzBnywY.js} +85 -86
- package/components/{donut-chart-positioning.config-2cYbI6p-.cjs → donut-chart-positioning.config-BnmePhBH.cjs} +1 -1
- package/components/{donut-chart-positioning.config-Dh3XI5f4.js → donut-chart-positioning.config-CnZRc3e8.js} +1 -1
- package/components/{en-hPjCnvK0.cjs → en-B34alchz.cjs} +1 -1
- package/components/{en-OJGeTneC.js → en-CcLhGxIh.js} +1 -1
- package/components/en-GB-B3xz84vF.cjs +20 -0
- package/components/{en-GB-D7N1nMuy.js → en-GB-DzkdeUQh.js} +1 -1
- package/components/{en-US-hPjCnvK0.cjs → en-US-B34alchz.cjs} +1 -1
- package/components/{en-US-OJGeTneC.js → en-US-CcLhGxIh.js} +1 -1
- package/components/{evolution-number-positioning.config-BX1lWtDL.cjs → evolution-number-positioning.config-CKgGLWTm.cjs} +1 -1
- package/components/{evolution-number-positioning.config-BQQrOKbD.js → evolution-number-positioning.config-DiKxJqRO.js} +1 -1
- package/components/filter-expression-picker/filter-expression-picker.d.ts +73 -0
- package/components/filter-expression-picker/index.cjs +20 -0
- package/components/filter-expression-picker/index.d.ts +7 -0
- package/components/filter-expression-picker/index.js +28 -0
- package/components/filter-expression-picker-DMZ4sgJ6.js +425 -0
- package/components/filter-expression-picker-Dq0X2lo3.cjs +38 -0
- package/components/filter-item/filter-item.d.ts +84 -0
- package/components/filter-item/index.cjs +20 -0
- package/components/filter-item/index.d.ts +7 -0
- package/components/filter-item/index.js +28 -0
- package/components/filter-item-BEe-Y6l0.js +242 -0
- package/components/filter-item-BnxKP0Zg.cjs +58 -0
- package/components/filter-parameter-picker/filter-parameter-picker.d.ts +25 -0
- package/components/filter-parameter-picker/index.cjs +22 -0
- package/components/filter-parameter-picker/index.d.ts +7 -0
- package/components/filter-parameter-picker/index.js +58 -0
- package/components/filter-value-picker/filter-value-picker.d.ts +65 -0
- package/components/filter-value-picker/index.cjs +20 -0
- package/components/filter-value-picker/index.d.ts +7 -0
- package/components/filter-value-picker/index.js +28 -0
- package/components/filter-value-picker-BxaX9BML.cjs +60 -0
- package/components/filter-value-picker-datetime/filter-value-picker-datetime.d.ts +42 -0
- package/components/filter-value-picker-datetime/index.cjs +20 -0
- package/components/filter-value-picker-datetime/index.d.ts +7 -0
- package/components/filter-value-picker-datetime/index.js +28 -0
- package/components/filter-value-picker-datetime-BryAsOYH.cjs +42 -0
- package/components/filter-value-picker-datetime-DtZDr9fY.js +139 -0
- package/components/filter-value-picker-hierarchy/filter-value-picker-hierarchy.d.ts +81 -0
- package/components/filter-value-picker-hierarchy/index.cjs +20 -0
- package/components/filter-value-picker-hierarchy/index.d.ts +7 -0
- package/components/filter-value-picker-hierarchy/index.js +28 -0
- package/components/filter-value-picker-hierarchy-BSKoZJ0F.cjs +47 -0
- package/components/filter-value-picker-hierarchy-D9BcuttQ.js +232 -0
- package/components/filter-value-picker-numeric/filter-value-picker-numeric.d.ts +82 -0
- package/components/filter-value-picker-numeric/index.cjs +20 -0
- package/components/filter-value-picker-numeric/index.d.ts +7 -0
- package/components/filter-value-picker-numeric/index.js +28 -0
- package/components/filter-value-picker-numeric-B2EcfNUR.cjs +48 -0
- package/components/filter-value-picker-numeric-CoU9l9wS.js +219 -0
- package/components/filter-value-picker-r1zs2IHx.js +151 -0
- package/components/filters/index.cjs +1 -1
- package/components/filters/index.js +1 -1
- package/components/filters-C9DVFS6T.cjs +150 -0
- package/components/filters-DVTYmlI1.js +400 -0
- package/components/formatter-8m-wrIM-.cjs +20 -0
- package/components/{period-over-period-condition.const-DLA60ptm.js → formatter-Cq5dFCyU.js} +44 -235
- package/components/formula/index.cjs +1 -1
- package/components/formula/index.js +1 -1
- package/components/formula--lwYaW2w.cjs +45 -0
- package/components/{formula-TyfDRy5X.js → formula-Ekyv6mpo.js} +15 -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-Bewi7Xgc.cjs → formula-codemirror-BZuBN5sE.cjs} +50 -50
- package/components/{formula-codemirror-B6ktT1Dm.js → formula-codemirror-DgTmL2Id.js} +21 -19
- package/components/formula-display-store-BunPLkc0.cjs +20 -0
- package/components/{formula-display-store-ycPV0gru.js → formula-display-store-ezef6EvF.js} +242 -271
- package/components/formula-draggable-field/formula-draggable-field.d.ts +53 -0
- package/components/formula-draggable-field/index.d.ts +8 -0
- package/components/formula-draggable-field/types.d.ts +24 -0
- package/components/formula-editor/index.cjs +1 -1
- package/components/formula-editor/index.d.ts +1 -0
- package/components/formula-editor/index.js +4 -3
- package/components/formula-editor-CjVohoJB.cjs +218 -0
- package/components/{formula-editor-HkD4KWnN.js → formula-editor-DRpm9ej7.js} +143 -348
- package/components/formula-field/formula-field.d.ts +20 -0
- package/components/formula-field/index.cjs +20 -0
- package/components/formula-field/index.d.ts +7 -0
- package/components/formula-field/index.js +28 -0
- package/components/formula-field-DcgWLGBD.cjs +20 -0
- package/components/formula-field-TwMnyN0t.js +40 -0
- package/components/formula-input-base-D6QdnUOa.cjs +49 -0
- package/components/formula-input-base-Dxk5euNb.js +236 -0
- package/components/{funnel-chart-positioning.config-iHk--8l3.cjs → funnel-chart-positioning.config-DaHDyj7V.cjs} +1 -1
- package/components/{funnel-chart-positioning.config-9blBdgB7.js → funnel-chart-positioning.config-DysRV01G.js} +1 -1
- package/components/get-dataset-name-D4smY8ms.cjs +20 -0
- package/components/get-dataset-name-D_ZiWu64.js +27 -0
- package/components/groupings-Bzp2EA65.js +52 -0
- package/components/groupings-Wfp8piEu.cjs +20 -0
- package/components/{heat-map-positioning.config-DgrZWNiT.js → heat-map-positioning.config-C6CqosaH.js} +1 -1
- package/components/{heat-map-positioning.config-CqkTB8nU.cjs → heat-map-positioning.config-hFwq08ML.cjs} +1 -1
- package/components/{heat-table-positioning.config-BqsqkftW.js → heat-table-positioning.config-B2RuWLH5.js} +1 -1
- package/components/{heat-table-positioning.config-Ca-WBNR-.cjs → heat-table-positioning.config-MJ_ox9iT.cjs} +1 -1
- package/components/{hexbin-map-positioning.config-sUIrPJP4.cjs → hexbin-map-positioning.config-Dua5Z8M2.cjs} +1 -1
- package/components/{hexbin-map-positioning.config-gkLfwTS6.js → hexbin-map-positioning.config-IiGTpp68.js} +1 -1
- package/components/index.cjs +1 -749
- package/components/index.js +64 -5577
- package/components/interactive-viz-item/helpers/chart-helpers.d.ts +7 -0
- package/components/interactive-viz-item/index.cjs +20 -0
- package/components/interactive-viz-item/index.d.ts +10 -0
- package/components/interactive-viz-item/index.js +28 -0
- package/components/interactive-viz-item/interactive-viz-item.d.ts +96 -0
- package/components/interactive-viz-item/types.d.ts +117 -0
- package/components/interactive-viz-item-O2zj8Ix3.cjs +247 -0
- package/components/interactive-viz-item-lBrlvX4F.js +693 -0
- package/components/item-grid/index.cjs +1 -1
- package/components/item-grid/index.js +1 -1
- package/components/{item-grid-C6nEE4Uj.cjs → item-grid-CmuMl0eC.cjs} +22 -22
- package/components/{item-grid-B59uyBDP.js → item-grid-Cqi995vx.js} +2 -1
- package/components/item-menu/item-list/item-list.d.ts +37 -0
- package/components/item-option/index.cjs +1 -1
- package/components/item-option/index.js +1 -1
- package/components/item-option-CQw6Xsi2.cjs +252 -0
- package/components/{item-option-zz-Rqh6o.js → item-option-Cg3zRKlU.js} +2 -2
- package/components/item-option-action-button-group/index.cjs +1 -1
- package/components/item-option-action-button-group/index.js +1 -1
- package/components/{item-option-action-button-group-BEXRueVH.js → item-option-action-button-group-C1TU-ng7.js} +2 -2
- package/components/item-option-action-button-group-DBdpU9Ac.cjs +53 -0
- package/components/item-option-base/item-option-base.d.ts +23 -0
- package/components/{item-option-base-DqDKIqRP.js → item-option-base-4mpxvTpE.js} +2 -2
- package/components/item-option-base-BtYcXg-E.cjs +56 -0
- package/components/item-option-color-palette-picker/index.cjs +1 -1
- package/components/item-option-color-palette-picker/index.js +1 -1
- package/components/item-option-color-palette-picker-4so22U-2.cjs +40 -0
- package/components/{item-option-color-palette-picker-dk5Nm1XB.js → item-option-color-palette-picker-BBnhEOQj.js} +2 -2
- package/components/item-option-color-picker/index.cjs +1 -1
- package/components/item-option-color-picker/index.js +1 -1
- package/components/{item-option-color-picker-oG-wrEZh.js → item-option-color-picker-CTTEHFVR.js} +2 -2
- package/components/{item-option-color-picker-Czr_ojzh.cjs → item-option-color-picker-CUBaIdL-.cjs} +2 -2
- package/components/item-option-color-range/index.cjs +1 -1
- package/components/item-option-color-range/index.js +1 -1
- package/components/{item-option-color-range-RbnPnI3s.js → item-option-color-range-BuLEgB7a.js} +2 -2
- package/components/item-option-color-range-H4nV-HoV.cjs +98 -0
- package/components/item-option-multi-language-field/index.cjs +1 -1
- package/components/item-option-multi-language-field/index.js +1 -1
- package/components/{item-option-multi-language-field-BqhBRIFH.js → item-option-multi-language-field-CXQj3kSW.js} +2 -2
- package/components/{item-option-multi-language-field-BpyuIPcO.cjs → item-option-multi-language-field-d25tETIC.cjs} +2 -2
- package/components/item-option-number-field/index.cjs +1 -1
- package/components/item-option-number-field/index.js +1 -1
- package/components/{item-option-number-field-BDPEAzdF.js → item-option-number-field-CEQEjnu8.js} +2 -2
- package/components/{item-option-number-field-CV2xpQrk.cjs → item-option-number-field-waG1zcr8.cjs} +2 -2
- package/components/item-option-panel/index.cjs +1 -1
- package/components/item-option-panel/index.js +1 -1
- package/components/{item-option-panel-CMrjUb2s.cjs → item-option-panel-Bh4d0Ueb.cjs} +2 -2
- package/components/{item-option-panel-XhTxaBZp.js → item-option-panel-CVjT-rr8.js} +3 -3
- package/components/item-option-picker/index.cjs +1 -1
- package/components/item-option-picker/index.js +1 -1
- package/components/{item-option-picker-D_Od3am8.js → item-option-picker-CiEMwzho.js} +2 -2
- package/components/{item-option-picker-CvEfEy99.cjs → item-option-picker-YTJ6noOW.cjs} +2 -2
- package/components/item-option-position-picker/index.cjs +1 -1
- package/components/item-option-position-picker/index.js +1 -1
- package/components/item-option-position-picker-DExAtVBF.cjs +32 -0
- package/components/{item-option-position-picker-BKw29tj-.js → item-option-position-picker-DVsG8inN.js} +2 -2
- package/components/item-option-positions-number-field/index.cjs +1 -1
- package/components/item-option-positions-number-field/index.js +1 -1
- package/components/{item-option-positions-number-field-lrJdfydy.js → item-option-positions-number-field-7F1_3pxp.js} +2 -2
- package/components/item-option-positions-number-field-Ju4e_B6g.cjs +49 -0
- package/components/item-option-radio-button-group/index.cjs +1 -1
- package/components/item-option-radio-button-group/index.js +1 -1
- package/components/{item-option-radio-button-group-DrjpL6YU.cjs → item-option-radio-button-group-6w11UJC-.cjs} +2 -2
- package/components/{item-option-radio-button-group-DTyHPaz_.js → item-option-radio-button-group-CHZKF_oZ.js} +2 -2
- package/components/item-option-slider/index.cjs +1 -1
- package/components/item-option-slider/index.js +1 -1
- package/components/{item-option-slider-CIDoZhZl.js → item-option-slider-CQCvF7wI.js} +2 -2
- package/components/{item-option-slider-BwKBgW0y.cjs → item-option-slider-DdkgydGa.cjs} +2 -2
- package/components/item-option-switch/index.cjs +1 -1
- package/components/item-option-switch/index.js +1 -1
- package/components/{item-option-switch-DxC1yjeN.js → item-option-switch-68EoGXKU.js} +2 -2
- package/components/{item-option-switch-CQtvbTfI.cjs → item-option-switch-IP4wvB7i.cjs} +2 -2
- package/components/item-option-text-field/index.cjs +1 -1
- package/components/item-option-text-field/index.js +1 -1
- package/components/{item-option-text-field-CZtJ1yIj.js → item-option-text-field-0CCtgD5i.js} +2 -2
- package/components/{item-option-text-field-pLQzcE25.cjs → item-option-text-field-Be4frWhI.cjs} +2 -2
- package/components/item-slot-drop/index.cjs +1 -1
- package/components/item-slot-drop/index.d.ts +2 -0
- package/components/item-slot-drop/index.js +1 -1
- package/components/item-slot-drop-C7BJJcZz.cjs +91 -0
- package/components/{item-slot-drop-SqYpfTGj.js → item-slot-drop-PlCmap_s.js} +14 -9
- package/components/item-slot-drop-panel/index.cjs +1 -1
- package/components/item-slot-drop-panel/index.js +1 -1
- package/components/{item-slot-drop-panel-DoWCzjqb.js → item-slot-drop-panel-BevGCcMh.js} +41 -40
- package/components/item-slot-drop-panel-hs0gFwb-.cjs +57 -0
- package/components/item-slot-picker/index.cjs +1 -1
- package/components/item-slot-picker/index.js +1 -1
- package/components/{item-slot-picker-CadZEvOA.js → item-slot-picker-BzXlX-Zd.js} +26 -21
- package/components/item-slot-picker-dmoR1ZyZ.cjs +174 -0
- package/components/item-slot-picker-panel/index.cjs +1 -1
- package/components/item-slot-picker-panel/index.js +1 -1
- package/components/item-slot-picker-panel-B2TtJUIs.cjs +81 -0
- package/components/{item-slot-picker-panel-Bhr6d6Ya.js → item-slot-picker-panel-DnvwcLGy.js} +5 -4
- package/components/{line-chart-positioning.config-BIkHxiyg.cjs → line-chart-positioning.config-CYqzjNzS.cjs} +1 -1
- package/components/{line-chart-positioning.config-CdnYQBah.js → line-chart-positioning.config-DAs0y-O6.js} +1 -1
- package/components/load-data-fields-for-datasets-BVGaku2J.cjs +20 -0
- package/components/load-data-fields-for-datasets-DeXLqWt4.js +42 -0
- package/components/localized-mixin-BNAt_iYb.cjs +20 -0
- package/components/localized-mixin-GXZQgVAD.js +45 -0
- package/components/{marker-map-positioning.config-BSz4P-W9.js → marker-map-positioning.config-BQ-kNUJI.js} +1 -1
- package/components/{marker-map-positioning.config-t66fioVz.cjs → marker-map-positioning.config-C5h5ydGa.cjs} +1 -1
- package/components/{ohlc-chart-positioning.config-tQPPutWX.js → ohlc-chart-positioning.config-BQyRY4rj.js} +1 -1
- package/components/{ohlc-chart-positioning.config-BGueS7CJ.cjs → ohlc-chart-positioning.config-fqniDSHf.cjs} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-NrJ2LNM8.cjs → parallel-coordinates-plot-positioning.config-Bhyk-q40.cjs} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-MkX-qYHX.js → parallel-coordinates-plot-positioning.config-DMUrvTKC.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-positioning.config-DgJ5PPB9.cjs → pivot-table-positioning.config-CRPJ6cp9.cjs} +1 -1
- package/components/{pivot-table-positioning.config-Dr_0v4TM.js → pivot-table-positioning.config-kgOD7qg4.js} +1 -1
- package/components/{pyramid-chart-positioning.config-BGRtXKWh.cjs → pyramid-chart-positioning.config-B3g4J0Fc.cjs} +1 -1
- package/components/{pyramid-chart-positioning.config-DB0BI8vW.js → pyramid-chart-positioning.config-DzmnUNOa.js} +1 -1
- package/components/{radar-chart-positioning.config-DQiJ-Z1s.cjs → radar-chart-positioning.config-DeMZx8WU.cjs} +1 -1
- package/components/{radar-chart-positioning.config-D6UfRMMA.js → radar-chart-positioning.config-DtCHigcZ.js} +1 -1
- package/components/{route-map-positioning.config-D_ZoyhwX.js → route-map-positioning.config-CNNkOriH.js} +1 -1
- package/components/{route-map-positioning.config-Cbic0Cbz.cjs → route-map-positioning.config-GRnTnxOT.cjs} +1 -1
- package/components/{sankey-diagram-positioning.config-CZDPh7CR.cjs → sankey-diagram-positioning.config-B4dTAI_t.cjs} +1 -1
- package/components/{sankey-diagram-positioning.config-CQNdImz0.js → sankey-diagram-positioning.config-DZzxWrlG.js} +1 -1
- package/components/{scatter-plot-positioning.config-BTOiZ8cF.js → scatter-plot-positioning.config-7DccAqx9.js} +1 -1
- package/components/{scatter-plot-positioning.config-BPEymo3a.cjs → scatter-plot-positioning.config-CUxiLfKj.cjs} +1 -1
- package/components/{slicer-filter-positioning.config-CQE4ocpD.cjs → slicer-filter-positioning.config-DUivNE2P.cjs} +1 -1
- package/components/{slicer-filter-positioning.config-CC7uoU2D.js → slicer-filter-positioning.config-aOkoNRyY.js} +1 -1
- package/components/{en-GB-DCZl8CPc.cjs → slot-menu/index.cjs} +1 -1
- package/components/slot-menu/index.d.ts +10 -0
- package/components/slot-menu/index.js +28 -0
- package/components/slot-menu/slot-menu.d.ts +148 -0
- package/components/slot-menu/types.d.ts +24 -0
- package/components/slot-menu-Bgoo0gWv.cjs +71 -0
- package/components/slot-menu-Cb8piPji.js +422 -0
- package/components/slot-menu-list/index.cjs +20 -0
- package/components/slot-menu-list/index.d.ts +8 -0
- package/components/slot-menu-list/index.js +28 -0
- package/components/slot-menu-list/slot-menu-list.d.ts +47 -0
- package/components/slot-menu-list-Cy6tegSf.cjs +44 -0
- package/components/slot-menu-list-VuVIRNtr.js +346 -0
- package/components/slot-role-classification-Bvt3bI01.cjs +20 -0
- package/components/slot-role-classification-CCzj4WgN.js +133 -0
- package/components/slots-config-P_GXW0tl.js +77 -0
- package/components/slots-config-YdyClHLc.cjs +20 -0
- package/components/{speedometer-chart-positioning.config-ChH-uAdS.js → speedometer-chart-positioning.config-Dj6XK0gq.js} +1 -1
- package/components/{speedometer-chart-positioning.config-DpBVarun.cjs → speedometer-chart-positioning.config-DzCh70X-.cjs} +1 -1
- package/components/{spike-map-positioning.config-BnEQJ-rD.js → spike-map-positioning.config-BG2pKkf7.js} +1 -1
- package/components/{spike-map-positioning.config-DrSoa8Ol.cjs → spike-map-positioning.config-BQIg4Z0U.cjs} +1 -1
- package/components/{strip-plot-positioning.config-DlkZ1i6m.cjs → strip-plot-positioning.config-D3ZNgtC4.cjs} +1 -1
- package/components/{strip-plot-positioning.config-Be5Desz2.js → strip-plot-positioning.config-HZCVc6kX.js} +1 -1
- package/components/{sunburst-chart-positioning.config-RUEkAgKJ.js → sunburst-chart-positioning.config-0O9eMweg.js} +1 -1
- package/components/{sunburst-chart-positioning.config-D4zzci9s.cjs → sunburst-chart-positioning.config-B-hCz3bI.cjs} +1 -1
- package/components/{symbol-map-positioning.config-JzgtULMk.js → symbol-map-positioning.config-Dod98HkQ.js} +1 -1
- package/components/{symbol-map-positioning.config-Dmgmyhv7.cjs → symbol-map-positioning.config-aHnkaWU6.cjs} +1 -1
- package/components/{treemap-chart-positioning.config-CSt_vVgw.js → treemap-chart-positioning.config-XB1_FmX-.js} +1 -1
- package/components/{treemap-chart-positioning.config-CqHJxz2j.cjs → treemap-chart-positioning.config-qhPL49um.cjs} +1 -1
- package/components/utils/base.cjs +1 -1
- package/components/utils/base.js +2 -2
- package/components/utils-B1BzV2xl.cjs +20 -0
- package/components/{utils-DLTDAer5.js → utils-BMOxXnnX.js} +42 -41
- package/components/utils.cjs +1 -1
- package/components/utils.js +8 -5
- package/components/{venn-diagram-positioning.config-DsPI8qfG.js → venn-diagram-positioning.config-Bh1ypVKP.js} +1 -1
- package/components/{venn-diagram-positioning.config-CzhNTma3.cjs → venn-diagram-positioning.config-CimHfhlV.cjs} +1 -1
- package/components/viz-item-menu/index.cjs +20 -0
- package/components/viz-item-menu/index.d.ts +8 -0
- package/components/viz-item-menu/index.js +28 -0
- package/components/viz-item-menu/types.d.ts +9 -0
- package/components/viz-item-menu/viz-item-menu.d.ts +75 -0
- package/components/viz-item-menu-CTPd7QMx.cjs +55 -0
- package/components/viz-item-menu-sOvrO3Ku.js +170 -0
- package/components/{wordcloud-chart-positioning.config-moNJfL1M.cjs → wordcloud-chart-positioning.config-BR_g8Now.cjs} +1 -1
- package/components/{wordcloud-chart-positioning.config-BUE8e4fN.js → wordcloud-chart-positioning.config-CmakCQG0.js} +1 -1
- package/custom-elements.json +15942 -5759
- package/index.d.ts +24 -0
- package/package.json +126 -1
- package/react/README.md +31 -6
- package/react/components/ai-chat/empty-state/index.ts +1 -0
- package/react/components/ai-chat/empty-state/types.ts +16 -0
- package/react/components/ai-chat/stream/index.ts +1 -0
- package/react/components/ai-chat/stream/types.ts +60 -0
- package/react/components/ai-chat.component.ts +45 -0
- package/react/components/ai-interaction-textarea/index.ts +1 -0
- package/react/components/ai-interaction-textarea/types.ts +6 -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/index.ts +1 -0
- package/react/components/data-fields-select/types.ts +5 -0
- package/react/components/data-fields-select.component.ts +27 -0
- package/react/components/dataset-icon/index.ts +1 -0
- package/react/components/dataset-icon/types.ts +8 -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 +30 -0
- package/react/components/display-settings/index.ts +1 -0
- package/react/components/display-settings/types.ts +12 -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 +22 -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/formula-draggable-field/index.ts +1 -0
- package/react/components/formula-draggable-field/types.ts +26 -0
- package/react/components/formula-field.component.ts +30 -0
- package/react/components/interactive-viz-item/index.ts +1 -0
- package/react/components/interactive-viz-item/types.ts +122 -0
- package/react/components/interactive-viz-item.component.ts +33 -0
- package/react/components/slot-menu/index.ts +1 -0
- package/react/components/slot-menu/types.ts +29 -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/index.ts +1 -0
- package/react/components/viz-item-menu/types.ts +11 -0
- package/react/components/viz-item-menu.component.ts +33 -0
- package/react/esm/components/ai-chat/empty-state/index.d.ts +1 -0
- package/react/esm/components/ai-chat/empty-state/index.js +1 -0
- package/react/esm/components/ai-chat/empty-state/types.d.ts +14 -0
- package/react/esm/components/ai-chat/empty-state/types.js +1 -0
- package/react/esm/components/ai-chat/stream/index.d.ts +1 -0
- package/react/esm/components/ai-chat/stream/index.js +1 -0
- package/react/esm/components/ai-chat/stream/types.d.ts +55 -0
- package/react/esm/components/ai-chat/stream/types.js +1 -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/index.d.ts +1 -0
- package/react/esm/components/ai-interaction-textarea/index.js +1 -0
- package/react/esm/components/ai-interaction-textarea/types.d.ts +5 -0
- package/react/esm/components/ai-interaction-textarea/types.js +1 -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/index.d.ts +1 -0
- package/react/esm/components/data-fields-select/index.js +1 -0
- package/react/esm/components/data-fields-select/types.d.ts +4 -0
- package/react/esm/components/data-fields-select/types.js +1 -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/index.d.ts +1 -0
- package/react/esm/components/dataset-icon/index.js +1 -0
- package/react/esm/components/dataset-icon/types.d.ts +11 -0
- package/react/esm/components/dataset-icon/types.js +1 -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 +14 -0
- package/react/esm/components/dataset-selector-row.component.js +19 -0
- package/react/esm/components/display-settings/index.d.ts +1 -0
- package/react/esm/components/display-settings/index.js +1 -0
- package/react/esm/components/display-settings/types.d.ts +9 -0
- package/react/esm/components/display-settings/types.js +1 -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 +8 -0
- package/react/esm/components/filter-parameter-picker.component.js +13 -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/formula-draggable-field/index.d.ts +1 -0
- package/react/esm/components/formula-draggable-field/index.js +1 -0
- package/react/esm/components/formula-draggable-field/types.d.ts +24 -0
- package/react/esm/components/formula-draggable-field/types.js +1 -0
- 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/index.d.ts +1 -0
- package/react/esm/components/interactive-viz-item/index.js +1 -0
- package/react/esm/components/interactive-viz-item/types.d.ts +117 -0
- package/react/esm/components/interactive-viz-item/types.js +16 -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/index.d.ts +1 -0
- package/react/esm/components/slot-menu/index.js +1 -0
- package/react/esm/components/slot-menu/types.d.ts +24 -0
- package/react/esm/components/slot-menu/types.js +1 -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/index.d.ts +1 -0
- package/react/esm/components/viz-item-menu/index.js +1 -0
- package/react/esm/components/viz-item-menu/types.d.ts +9 -0
- package/react/esm/components/viz-item-menu/types.js +1 -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/esm/types.d.ts +15 -0
- package/react/index.ts +102 -2
- package/react/luzmo-stub.d.ts +164 -0
- package/react/types.ts +12 -0
- package/storybook/inject-global-vars.d.ts +1 -0
- package/storybook/register-components.d.ts +51 -0
- package/types/ai-chat.types.d.ts +90 -0
- package/types/data-field-events.types.d.ts +7 -0
- package/types.d.ts +8 -0
- package/components/base-CYiGlWug.cjs +0 -20
- package/components/data-field-iGBGWoGH.cjs +0 -89
- package/components/data-field-panel-NktuTUUp.cjs +0 -87
- package/components/data-fields-select-DL1nFRg3.cjs +0 -41
- package/components/display-settings-datetime-25LwuZM_.cjs +0 -217
- package/components/display-settings-grand-totals-1tBdxbFY.cjs +0 -44
- package/components/display-settings-numeric-Bbx4qmpA.cjs +0 -190
- package/components/display-settings-period-over-period-4bJbXWB7.cjs +0 -229
- package/components/filters-Bzx4DYm-.cjs +0 -323
- package/components/filters-DSod7vIq.js +0 -1637
- package/components/formula-DcCDYDt4.cjs +0 -45
- package/components/formula-display-store-DxjO7Q-n.cjs +0 -20
- package/components/formula-editor-DQp_XiX5.cjs +0 -247
- package/components/item-option-C4c-e1QF.cjs +0 -252
- package/components/item-option-action-button-group-BU1wvtEd.cjs +0 -53
- package/components/item-option-base-DATaPQ-m.cjs +0 -56
- package/components/item-option-color-palette-picker-Cc2nTuxC.cjs +0 -40
- package/components/item-option-color-range-CTnHZ72E.cjs +0 -98
- package/components/item-option-position-picker-DBs4JlFi.cjs +0 -32
- package/components/item-option-positions-number-field-DIIEFHd4.cjs +0 -49
- package/components/item-slot-drop-UygcXM5D.cjs +0 -91
- package/components/item-slot-drop-panel-9T8BWejl.cjs +0 -57
- package/components/item-slot-picker-Rnb_wwCV.cjs +0 -174
- package/components/item-slot-picker-panel-2VJY6C0b.cjs +0 -81
- package/components/load-data-fields-for-datasets-CU75T9Az.js +0 -86
- package/components/load-data-fields-for-datasets-DkK1JsFd.cjs +0 -20
- package/components/localized-mixin-DAOiXh71.cjs +0 -20
- package/components/period-over-period-condition.const-DystGY6B.cjs +0 -20
- package/components/slot-menu-BL772rj7.js +0 -1048
- package/components/slot-menu-CCbZ-krJ.cjs +0 -215
- package/components/utils-Ez3j4EOS.cjs +0 -20
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/*! * A kit of modern Luzmo Web Components for analytics in your web application.
|
|
2
|
+
*
|
|
3
|
+
* Copyright © 2026 Luzmo
|
|
4
|
+
* All rights reserved.
|
|
5
|
+
* Luzmo web components (“Luzmo Web Components”)
|
|
6
|
+
* must be used according to the Luzmo Terms of Service.
|
|
7
|
+
* This license allows users with a current active Luzmo account
|
|
8
|
+
* to use the Luzmo Web Components. This license terminates
|
|
9
|
+
* automatically if a user no longer has an active Luzmo account.
|
|
10
|
+
* Please view the Luzmo Terms of Service at: https://www.luzmo.com/information-pages/terms-of-use.
|
|
11
|
+
*
|
|
12
|
+
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
13
|
+
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
14
|
+
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
15
|
+
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
16
|
+
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
17
|
+
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
|
+
* SOFTWARE.
|
|
19
|
+
* */
|
|
20
|
+
const e=require("./base-DSXeP3BL.cjs"),t=require("./decorate-DCJt-2rt.cjs"),n=require("./localized-mixin-BNAt_iYb.cjs"),r=require("./data-broker-BH5WDG0j.cjs"),i=require("./localize-D3i4Epy_.cjs"),a=require("./load-data-fields-for-datasets-BVGaku2J.cjs");require("./data-field-bRmOqmAe.cjs");let o=require("lit"),s=require("lit/decorators.js"),c=require("@lit/localize");require("@luzmo/lucero/select");let l=require("lit/directives/repeat.js"),u=require("@lit/task");require("@luzmo/lucero/progress-circle"),require("@luzmo/lucero/search");var d=`:host{--data-field-panel-items-gap:var(--luzmo-spacing-2);--data-field-panel-search-edge-to-visual:var(--luzmo-spacing-5);--data-field-panel-search-text-to-icon:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--data-field-panel-search-quiet-block-size:calc(var(--luzmo-component-height) + var(--luzmo-spacing-3));--data-field-panel-dataset-picker-margin-bottom:var(--luzmo-spacing-3);--data-field-panel-scrollbar-width:var(--luzmo-scrollbar-size);--data-field-panel-scrollbar-track-background:var(--luzmo-scrollbar-track-background);--data-field-panel-scrollbar-track-border-radius:var(--luzmo-scrollbar-track-border-radius);--data-field-panel-scrollbar-thumb-background:var(--luzmo-scrollbar-thumb-background);--data-field-panel-scrollbar-thumb-border-radius:var(--luzmo-scrollbar-thumb-border-radius);--data-field-panel-scrollbar-thumb-hover-background:var(--luzmo-scrollbar-thumb-hover-background)}:host([size=s]){--data-field-panel-items-gap:var(--luzmo-spacing-1);--data-field-panel-search-edge-to-visual:var(--luzmo-spacing-4);--data-field-panel-search-text-to-icon:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--data-field-panel-search-quiet-block-size:calc(var(--luzmo-component-height-s) + var(--luzmo-spacing-3));--data-field-panel-dataset-picker-margin-bottom:var(--luzmo-spacing-2)}:host([size=l]){--data-field-panel-items-gap:var(--luzmo-spacing-2);--data-field-panel-search-text-to-icon:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-1));--data-field-panel-search-quiet-block-size:calc(var(--luzmo-component-height-l) + var(--luzmo-spacing-3));--data-field-panel-dataset-picker-margin-bottom:var(--luzmo-spacing-3)}:host([size=xl]){--data-field-panel-items-gap:var(--luzmo-spacing-3);--data-field-panel-search-text-to-icon:calc(var(--luzmo-spacing-5) + var(--luzmo-spacing-2));--data-field-panel-search-quiet-block-size:calc(var(--luzmo-component-height-xl) + var(--luzmo-spacing-3));--data-field-panel-dataset-picker-margin-bottom:var(--luzmo-spacing-4)}:host([dataset-picker][search-quiet]):has(.search-container){--data-field-panel-dataset-picker-margin-bottom:0}:host{box-sizing:border-box;height:100%;font-family:var(--luzmo-font-family,sans-serif);color:var(--luzmo-font-color,inherit);flex-direction:column;display:flex}.container{flex-direction:column;height:100%;display:flex}.dataset-picker{border-bottom-style:solid;border-bottom-width:var(--data-field-panel-dataset-picker-divider-height,1px);border-bottom-color:var(--luzmo-data-field-panel-dataset-picker-divider-color,var(--data-field-panel-dataset-picker-divider-color,var(--luzmo-border-color)));flex-shrink:0;margin-block-end:var(--luzmo-data-field-panel-dataset-picker-margin-block-end,var(--data-field-panel-dataset-picker-margin-bottom));padding-block-end:var(--luzmo-data-field-panel-dataset-picker-padding-block-end,var(--luzmo-spacing-3))}.dataset-picker luzmo-select{width:100%}.search-container{width:100%;flex-shrink:0;margin-block-end:var(--luzmo-data-field-panel-search-margin-block-end,var(--luzmo-spacing-3,.75rem))}.search-container luzmo-search{--luzmo-search-edge-to-visual:var(--luzmo-data-field-panel-search-edge-to-visual,var(--data-field-panel-search-edge-to-visual));--luzmo-search-text-to-icon:var(--luzmo-data-field-panel-search-text-to-icon,var(--data-field-panel-search-text-to-icon));width:100%}.data-fields-list{gap:var(--luzmo-data-field-panel-data-fields-gap,var(--data-field-panel-items-gap));flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden auto}.data-fields-list::-webkit-scrollbar{width:var(--luzmo-data-field-panel-scrollbar-width,var(--data-field-panel-scrollbar-width))}.data-fields-list::-webkit-scrollbar-track{background:var(--luzmo-data-field-panel-scrollbar-track-background,var(--data-field-panel-scrollbar-track-background));border-radius:var(--luzmo-data-field-panel-scrollbar-track-border-radius,var(--data-field-panel-scrollbar-track-border-radius))}.data-fields-list::-webkit-scrollbar-thumb{background:var(--luzmo-data-field-panel-scrollbar-thumb-background,var(--data-field-panel-scrollbar-thumb-background));border-radius:var(--luzmo-data-field-panel-scrollbar-thumb-border-radius,var(--data-field-panel-scrollbar-thumb-border-radius))}.data-fields-list::-webkit-scrollbar-thumb:hover{background:var(--luzmo-data-field-panel-scrollbar-thumb-hover-background,var(--data-field-panel-scrollbar-thumb-hover-background))}.data-fields-list{scrollbar-width:var(--luzmo-scrollbar-width,thin);scrollbar-color:var(--luzmo-data-field-panel-scrollbar-thumb-background,var(--data-field-panel-scrollbar-thumb-background)) var(--luzmo-data-field-panel-scrollbar-track-background,var(--data-field-panel-scrollbar-track-background))}.empty-state{color:var(--luzmo-font-color-tertiary,#999);font-size:var(--luzmo-font-size);text-align:center;padding:var(--luzmo-spacing-4);flex:1;justify-content:center;align-items:center;display:flex}.pending-state{padding:var(--luzmo-spacing-4);flex:1;justify-content:center;align-items:center;display:flex}:host([search-quiet]){--luzmo-search-block-size:var(--luzmo-data-field-panel-search-quiet-block-size,var(--data-field-panel-search-quiet-block-size))}:host([dataset-picker][search-quiet]):has(.search-container){--data-field-panel-dataset-picker-divider-color:transparent;--data-field-panel-dataset-picker-divider-height:1px}`,f=50,p=class extends n.t(e.n(e.i,{validSizes:[`s`,`m`,`l`,`xl`],noDefaultSize:!0})){constructor(...e){super(...e),this._handleDataFieldDropped=e=>{e.target!==this&&(e.stopPropagation(),this.dispatchEvent(new CustomEvent(`luzmo-data-field-dropped`,{bubbles:!0,composed:!0,detail:e.detail})))},this._handleDataFieldDragStarted=e=>{e.target!==this&&(e.stopPropagation(),this.dispatchEvent(new CustomEvent(`luzmo-data-field-drag-started`,{bubbles:!0,composed:!0,detail:e.detail})))},this.datasetIds=[],this.datasetsDataFields=[],this.datasetPicker=!1,this.disabled=!1,this.pending=!1,this.dataFieldVariant=`highlight`,this.searchQuiet=!1,this.hideTypeIcon=!1,this.hideSublevels=!1,this.apiUrl=`https://api.luzmo.com`,this.search=`auto`,this.searchThreshold=20,this._searchQuery=``,this._failedDatasetIds=new Set,this._loadDataFieldsTask=new u.Task(this,{args:()=>[this._currentDatasetId,this.apiUrl,this.authKey,this.authToken,this.datasetsDataFields.length],task:async([e,t,n,r,i])=>{if(i>0||!e||this._failedDatasetIds.has(e))return null;let o=await a.t([e],{dataBrokerConfig:{apiUrl:t,authKey:n,authToken:r}});return o.length===0?(this._failedDatasetIds.add(e),null):o[0]}}),this._datasetListItems=[],this._datasetListRetrieving=!1,this._datasetListPending=!1,this._datasetNamesFetchAttempted=!1,this._hasMoreDatasets=!0}static{this.styles=(0,o.unsafeCSS)(d)}connectedCallback(){super.connectedCallback(),this.addEventListener(`luzmo-data-field-dropped`,this._handleDataFieldDropped),this.addEventListener(`luzmo-data-field-drag-started`,this._handleDataFieldDragStarted)}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener(`luzmo-data-field-dropped`,this._handleDataFieldDropped),this.removeEventListener(`luzmo-data-field-drag-started`,this._handleDataFieldDragStarted)}get _isDataFieldsPending(){return this.pending||this._loadDataFieldsTask.status===u.TaskStatus.PENDING}get _error(){if(this._loadDataFieldsTask.status===u.TaskStatus.ERROR){let e=this._loadDataFieldsTask.error,t=e instanceof Error?e.message:`Unknown error`;return`${(0,c.msg)(`Could not retrieve data`)}: ${t}`}}get _availableDatasets(){return this.datasetsDataFields.length>0?this.datasetsDataFields:this.datasetIds.length>0?this.datasetIds.map(e=>{let t=this._datasetListItems.find(t=>t.id===e);return t?{id:t.id,name:t.name,description:t.description,dataFields:[]}:{id:e,name:{en:e},dataFields:[]}}):this._datasetListItems.length>0?this._datasetListItems.map(e=>({id:e.id,name:e.name,description:e.description,dataFields:[]})):[]}get _selectedDataset(){return this._availableDatasets.find(e=>e.id===this._currentDatasetId)}get _dataFields(){let e=this._loadDataFieldsTask.value;if(e&&e.dataFields?.length>0)return e.dataFields;let t=this._selectedDataset;if(!t)return[];if(`dataFields`in t&&Array.isArray(t.dataFields)&&t.dataFields.length>0)return t.dataFields;let n=[];if(`columns`in t&&Array.isArray(t.columns))for(let e of t.columns)n.push({...e,datasetId:t.id});if(`formulas`in t&&Array.isArray(t.formulas))for(let e of t.formulas)n.push({...e,datasetId:t.id});return n}get _shouldFetchDatasetList(){return this.datasetPicker&&this.datasetsDataFields.length===0}get _showSearch(){return this.search===`off`?!1:this.search===`on`?!0:this._dataFields.length>this.searchThreshold}get _filteredDataFields(){let e=this._dataFields;if(!this._searchQuery.trim())return e;let t=this._searchQuery.toLowerCase().trim();return e.filter(e=>(i.t(e.name,this.language)||``).toLowerCase().includes(t))}willUpdate(e){super.willUpdate(e);let t=e.has(`selectedDatasetId`),n=e.has(`datasetsDataFields`),i=e.has(`datasetIds`),a=e.has(`datasetPicker`),o=e.has(`authKey`),s=e.has(`authToken`),c=e.has(`apiUrl`);(i||o||s||c)&&(this._datasetListItems=[],this._hasMoreDatasets=!0,this._failedDatasetIds.clear(),this._datasetNamesFetchAttempted=!1,r.t.configure({apiUrl:this.apiUrl,authKey:this.authKey??``,authToken:this.authToken??``})),n&&this.datasetsDataFields.length>0&&(this._datasetListItems=[],this._hasMoreDatasets=!0,this._failedDatasetIds.clear()),(t||n||i)&&this._updateCurrentDatasetId(),(i||o||s||c||a)&&this.datasetIds.length>0&&this.datasetPicker&&this.datasetsDataFields.length===0&&this._datasetListItems.length===0&&this._fetchDatasetNamesForPicker()}async _fetchDatasetNamesForPicker(){if(this.datasetIds.length!==0){this._datasetListPending=!0;try{let e=await r.t.fetchDatasetNames(this.datasetIds);this._datasetListItems=e}catch(e){console.warn(`Failed to fetch dataset names:`,e)}finally{this._datasetListPending=!1,this._datasetNamesFetchAttempted=!0}}}async _loadMoreDatasets(e){if(!(this._datasetListRetrieving||!this._hasMoreDatasets)){this._datasetListRetrieving=!0,e&&(e.retrieving=!0);try{let e=this._datasetListItems.length,t=await r.t.fetchAllDatasets({offset:e,limit:f});this._datasetListItems=[...this._datasetListItems,...t.data],this._hasMoreDatasets=e+f<(t.pagination?.total??0),!this._currentDatasetId&&this._datasetListItems.length>0&&this._updateCurrentDatasetId()}catch(e){console.warn(`Failed to load dataset list:`,e),this._hasMoreDatasets=!1}finally{this._datasetListRetrieving=!1,e&&(e.retrieving=!1)}}}_handlePickerScrolled(e){if(this.datasetIds.length>0)return;let t=e.target,{last:n}=e.detail;n>=this._datasetListItems.length-10&&this._hasMoreDatasets&&this._loadMoreDatasets(t)}async _handlePickerOpened(e){let t=e.target;if(this._datasetListItems.length===0&&this._shouldFetchDatasetList&&this.datasetIds.length===0&&this._hasMoreDatasets){t.pending=!0;try{await this._loadMoreDatasets(t)}finally{t.pending=!1}}}_updateCurrentDatasetId(){let e=this._availableDatasets;if(this.selectedDatasetId&&e.some(e=>e.id===this.selectedDatasetId)){this._currentDatasetId=this.selectedDatasetId;return}if(this.selectedDatasetId&&this.datasetIds.includes(this.selectedDatasetId)){this._currentDatasetId=this.selectedDatasetId;return}this._currentDatasetId=e.length>0?e[0].id:void 0}_handleDatasetChange(e){let t=e.detail?.value?.[0];t&&t!==this._currentDatasetId&&(this._currentDatasetId=t,this._searchQuery=``,this.dispatchEvent(new CustomEvent(`luzmo-dataset-changed`,{bubbles:!0,composed:!0,detail:{datasetId:t}})))}_getDataFieldKey(e){return`columnId`in e&&e.columnId?`col-${e.columnId}`:`formulaId`in e&&e.formulaId?`formula-${e.formulaId}`:`formula`in e&&e.formula?`adhoc-${e.formula}`:`field-${e.datasetId}-${Math.random().toString(36).slice(2,11)}`}_handleSearchInput(e){let t=e.target;this._searchQuery=t.value}_renderDatasetPicker(){if(!this.datasetPicker)return o.nothing;let e=this._availableDatasets,t=e.length>1,n=this.datasetIds.length>0,r=this._shouldFetchDatasetList;if(!t&&!n&&!r)return o.nothing;let a=this._datasetListPending||this.datasetIds.length>0&&this._datasetListItems.length===0&&this.datasetsDataFields.length===0&&!this._datasetNamesFetchAttempted,s=a?[]:e.map(e=>({value:e.id,label:i.t(e.name,this.language)||e.id})),l=a?[]:this._currentDatasetId?[this._currentDatasetId]:[],u=a?(0,c.msg)(`Loading datasets...`):this.datasetPickerPlaceholder??(0,c.msg)(`Select dataset...`);return o.html`
|
|
21
|
+
<div class="dataset-picker" part="dataset-picker">
|
|
22
|
+
<luzmo-select
|
|
23
|
+
selects="single"
|
|
24
|
+
variant="highlight"
|
|
25
|
+
.size=${this.size}
|
|
26
|
+
.options=${s}
|
|
27
|
+
.value=${l}
|
|
28
|
+
.label=${u}
|
|
29
|
+
?disabled=${this.disabled}
|
|
30
|
+
?pending=${a}
|
|
31
|
+
@change=${this._handleDatasetChange}
|
|
32
|
+
@luzmo-opened=${this._handlePickerOpened}
|
|
33
|
+
@luzmo-scrolled=${this._handlePickerScrolled}
|
|
34
|
+
></luzmo-select>
|
|
35
|
+
</div>
|
|
36
|
+
`}_renderSearch(){return!this._showSearch||this._isDataFieldsPending?o.nothing:o.html`
|
|
37
|
+
<div class="search-container" part="search">
|
|
38
|
+
<luzmo-search
|
|
39
|
+
.size=${this.size}
|
|
40
|
+
.placeholder=${this.searchPlaceholder??(0,c.msg)(`Search...`)}
|
|
41
|
+
.value=${this._searchQuery}
|
|
42
|
+
?disabled=${this.disabled}
|
|
43
|
+
?quiet=${this.searchQuiet}
|
|
44
|
+
@input=${this._handleSearchInput}
|
|
45
|
+
></luzmo-search>
|
|
46
|
+
</div>
|
|
47
|
+
`}_renderPendingState(){return o.html`
|
|
48
|
+
<div class="pending-state" role="status" part="pending-state">
|
|
49
|
+
<luzmo-progress-circle
|
|
50
|
+
indeterminate
|
|
51
|
+
.label=${(0,c.msg)(`Loading`,{desc:`Loading spinner label`})}
|
|
52
|
+
.size=${this.size}
|
|
53
|
+
></luzmo-progress-circle>
|
|
54
|
+
</div>
|
|
55
|
+
`}_renderErrorState(){return o.html`
|
|
56
|
+
<div class="empty-state" role="alert" part="empty-state">
|
|
57
|
+
${this._error}
|
|
58
|
+
</div>
|
|
59
|
+
`}_renderDataFields(){if(this._error)return this._renderErrorState();if(this._dataFields.length===0)return o.html`
|
|
60
|
+
<div class="empty-state" part="empty-state">
|
|
61
|
+
${(0,c.msg)(`No data available`,{desc:`Empty state message shown when the selected dataset has no data fields (columns or formulas)`})}
|
|
62
|
+
</div>
|
|
63
|
+
`;let e=this._filteredDataFields;return e.length===0?o.html`
|
|
64
|
+
<div class="empty-state" part="empty-state">
|
|
65
|
+
${(0,c.msg)(`No results found`)}
|
|
66
|
+
</div>
|
|
67
|
+
`:o.html`
|
|
68
|
+
<div class="data-fields-list" part="data-fields-list" role="list">
|
|
69
|
+
${(0,l.repeat)(e,e=>this._getDataFieldKey(e),e=>o.html`
|
|
70
|
+
<luzmo-data-field
|
|
71
|
+
.data=${e}
|
|
72
|
+
.language=${this.language}
|
|
73
|
+
.size=${this.size}
|
|
74
|
+
.variant=${this.dataFieldVariant}
|
|
75
|
+
?disabled=${this.disabled}
|
|
76
|
+
?hide-type-icon=${this.hideTypeIcon}
|
|
77
|
+
?hide-sublevels=${this.hideSublevels}
|
|
78
|
+
></luzmo-data-field>
|
|
79
|
+
`)}
|
|
80
|
+
</div>
|
|
81
|
+
`}render(){return o.html`
|
|
82
|
+
<div class="container" part="container" aria-busy=${this._isDataFieldsPending?`true`:`false`}>
|
|
83
|
+
${this._renderDatasetPicker()}
|
|
84
|
+
${this._renderSearch()}
|
|
85
|
+
${this._isDataFieldsPending?this._renderPendingState():this._renderDataFields()}
|
|
86
|
+
</div>
|
|
87
|
+
`}};t.t([(0,s.property)({type:Array,attribute:`dataset-ids`})],p.prototype,`datasetIds`,void 0),t.t([(0,s.property)({type:Array,attribute:!1})],p.prototype,`datasetsDataFields`,void 0),t.t([(0,s.property)({type:String,attribute:`selected-dataset-id`,reflect:!0})],p.prototype,`selectedDatasetId`,void 0),t.t([(0,s.property)({type:Boolean,attribute:`dataset-picker`,reflect:!0})],p.prototype,`datasetPicker`,void 0),t.t([(0,s.property)({type:Boolean,reflect:!0})],p.prototype,`disabled`,void 0),t.t([(0,s.property)({type:Boolean,reflect:!0})],p.prototype,`pending`,void 0),t.t([(0,s.property)({type:String,attribute:`data-field-variant`,reflect:!0})],p.prototype,`dataFieldVariant`,void 0),t.t([(0,s.property)({type:Boolean,attribute:`search-quiet`,reflect:!0})],p.prototype,`searchQuiet`,void 0),t.t([(0,s.property)({type:Boolean,attribute:`hide-type-icon`,reflect:!0})],p.prototype,`hideTypeIcon`,void 0),t.t([(0,s.property)({type:Boolean,attribute:`hide-sublevels`,reflect:!0})],p.prototype,`hideSublevels`,void 0),t.t([(0,s.property)({type:String,attribute:`dataset-picker-placeholder`})],p.prototype,`datasetPickerPlaceholder`,void 0),t.t([(0,s.property)({type:String,attribute:`api-url`})],p.prototype,`apiUrl`,void 0),t.t([(0,s.property)({type:String,attribute:`auth-key`})],p.prototype,`authKey`,void 0),t.t([(0,s.property)({type:String,attribute:`auth-token`})],p.prototype,`authToken`,void 0),t.t([(0,s.property)({type:String,reflect:!0})],p.prototype,`search`,void 0),t.t([(0,s.property)({type:String,attribute:`search-placeholder`})],p.prototype,`searchPlaceholder`,void 0),t.t([(0,s.property)({type:Number,attribute:`search-threshold`})],p.prototype,`searchThreshold`,void 0),t.t([(0,s.state)()],p.prototype,`_currentDatasetId`,void 0),t.t([(0,s.state)()],p.prototype,`_searchQuery`,void 0),t.t([(0,s.state)()],p.prototype,`_datasetListItems`,void 0),t.t([(0,s.state)()],p.prototype,`_datasetListRetrieving`,void 0),t.t([(0,s.state)()],p.prototype,`_datasetListPending`,void 0),p=t.t([(0,c.localized)()],p),customElements.get(`luzmo-data-field-panel`)||customElements.define(`luzmo-data-field-panel`,p),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return p}});
|
|
@@ -17,12 +17,13 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
import { i as e, n as t } from "./base-
|
|
21
|
-
import {
|
|
20
|
+
import { i as e, n as t } from "./base-a89RuUMb.js";
|
|
21
|
+
import { t as n } from "./decorate-CaYbmmmm.js";
|
|
22
|
+
import { t as r } from "./localized-mixin-GXZQgVAD.js";
|
|
22
23
|
import { t as i } from "./data-broker-CVDImE1j.js";
|
|
23
24
|
import { t as a } from "./localize-BT7REYBY.js";
|
|
24
|
-
import { t as o } from "./load-data-fields-for-datasets-
|
|
25
|
-
import "./data-field-
|
|
25
|
+
import { t as o } from "./load-data-fields-for-datasets-DeXLqWt4.js";
|
|
26
|
+
import "./data-field-CFX9bhKN.js";
|
|
26
27
|
import { html as s, nothing as c, unsafeCSS as l } from "lit";
|
|
27
28
|
import { property as u, state as d } from "lit/decorators.js";
|
|
28
29
|
import { localized as f, msg as p } from "@lit/localize";
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import '@luzmo/lucero/select';
|
|
2
|
+
import { CSSResultArray, PropertyValues, TemplateResult } from 'lit';
|
|
3
|
+
import type { AdHocFormulaInput } from '../../types/dataset-data-field.types';
|
|
4
|
+
import type { Placement } from '@luzmo/lucero';
|
|
5
|
+
import { LuzmoElement } from '@luzmo/lucero/utils';
|
|
6
|
+
import type { DatasetFormulaMetadata, DatasetMetadata } from '../../utils/data-broker';
|
|
7
|
+
/** A formula entry is either a saved formula (with `id`) or an ad hoc formula (with `formula` expression). */
|
|
8
|
+
type FormulaEntry = DatasetFormulaMetadata | AdHocFormulaInput;
|
|
9
|
+
declare const LuzmoDataFieldsSelect_base: (new (...args: any[]) => {
|
|
10
|
+
language: string;
|
|
11
|
+
}) & typeof LuzmoElement & {
|
|
12
|
+
new (...args: any[]): import("@luzmo/lucero").SizedElementInterface;
|
|
13
|
+
prototype: import("@luzmo/lucero").SizedElementInterface;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* @customElement luzmo-data-fields-select
|
|
17
|
+
* @fires {CustomEvent<DataFieldsSelectedEventDetail>} luzmo-data-fields-selected - Emitted when data fields are selected
|
|
18
|
+
*/
|
|
19
|
+
export declare class LuzmoDataFieldsSelect extends LuzmoDataFieldsSelect_base {
|
|
20
|
+
static get styles(): CSSResultArray;
|
|
21
|
+
/**
|
|
22
|
+
* The language to use for locale-aware formatting and labels
|
|
23
|
+
*/
|
|
24
|
+
contentLanguage: string;
|
|
25
|
+
/**
|
|
26
|
+
* The accessible label for the select (used for aria-label)
|
|
27
|
+
*/
|
|
28
|
+
label?: string;
|
|
29
|
+
/**
|
|
30
|
+
* Where to show icons
|
|
31
|
+
*/
|
|
32
|
+
icons?: 'none' | 'menu-only' | 'all';
|
|
33
|
+
/**
|
|
34
|
+
* Allow no selection. If true, the picker will not show a value when no item is selected. Else if no value is provided it will pick the first item.
|
|
35
|
+
*/
|
|
36
|
+
allowEmpty: boolean;
|
|
37
|
+
/**
|
|
38
|
+
* The placeholder text for the picker is no value selected. If allowEmpty is true, this will be used as the label.
|
|
39
|
+
*/
|
|
40
|
+
placeholder?: string;
|
|
41
|
+
/**
|
|
42
|
+
* Whether the picker allows single or multiple selections.
|
|
43
|
+
* @default 'single'
|
|
44
|
+
*/
|
|
45
|
+
selects: 'single' | 'multiple';
|
|
46
|
+
/**
|
|
47
|
+
* The IDs of the selected data fields. If not provided, the first item will be selected (when allowEmpty is false).
|
|
48
|
+
*/
|
|
49
|
+
value: string[];
|
|
50
|
+
/**
|
|
51
|
+
* Whether the picker is in retrieving state (shows loading indicator)
|
|
52
|
+
*/
|
|
53
|
+
retrieving: boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Whether the picker is invalid - eg. the dataFieldId is not found in the datasetsDataFields or query failed to fetch data
|
|
56
|
+
*/
|
|
57
|
+
invalid: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* Whether the picker is clearable
|
|
60
|
+
*/
|
|
61
|
+
clearable: boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Whether the picker is in pending state
|
|
64
|
+
*/
|
|
65
|
+
pending: boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Whether the picker is disabled
|
|
68
|
+
*/
|
|
69
|
+
disabled: boolean;
|
|
70
|
+
/**
|
|
71
|
+
* Whether to show a search field in the dropdown
|
|
72
|
+
*/
|
|
73
|
+
search?: 'on' | 'off' | 'auto';
|
|
74
|
+
/**
|
|
75
|
+
* The placement of the dropdown menu
|
|
76
|
+
*/
|
|
77
|
+
placement: Placement;
|
|
78
|
+
/**
|
|
79
|
+
* The datasets and their dataFields to display.
|
|
80
|
+
* The `formulas` array accepts both saved formulas (with `id`) and ad hoc formulas
|
|
81
|
+
* (with a `formula` expression string). Ad hoc formulas render inline with a formula icon.
|
|
82
|
+
*/
|
|
83
|
+
datasetsDataFields: (Pick<DatasetMetadata, 'id' | 'name' | 'columns'> & {
|
|
84
|
+
formulas: FormulaEntry[];
|
|
85
|
+
})[];
|
|
86
|
+
private _dataFieldsSelected;
|
|
87
|
+
private _lastEmittedValue;
|
|
88
|
+
private _pendingAutoSelectEvent;
|
|
89
|
+
/** Type guard: returns true when the formula entry is an ad hoc formula (has `formula` expression). */
|
|
90
|
+
private _isAdHocFormula;
|
|
91
|
+
private _sendChangeEvent;
|
|
92
|
+
private _toDataFieldData;
|
|
93
|
+
private _toAdHocFormulaFieldData;
|
|
94
|
+
/**
|
|
95
|
+
* Searches the formulas array (which may contain both saved and ad hoc formulas) for a match.
|
|
96
|
+
*/
|
|
97
|
+
private _findFormulaMatch;
|
|
98
|
+
/**
|
|
99
|
+
* Resolves a selected value (which may be a compound sublevel value) to a DatasetDataField.
|
|
100
|
+
* Returns the resolved field and whether a dataset match was found.
|
|
101
|
+
*/
|
|
102
|
+
private _resolveDataFieldFromValue;
|
|
103
|
+
setDataField(event: CustomEvent): void;
|
|
104
|
+
private _findDataFieldsInDatasetsDataFields;
|
|
105
|
+
private _getAutoSelectValue;
|
|
106
|
+
private _autoSelectInitialDataField;
|
|
107
|
+
protected willUpdate(changedProperties: PropertyValues): void;
|
|
108
|
+
protected updated(changedProperties: PropertyValues): void;
|
|
109
|
+
/**
|
|
110
|
+
* Build expandable children for a datetime column based on its highestLevel / lowestLevel range.
|
|
111
|
+
*/
|
|
112
|
+
private _buildDatetimeChildren;
|
|
113
|
+
/**
|
|
114
|
+
* Build expandable children for a hierarchy column based on its hierarchyLevels.
|
|
115
|
+
*/
|
|
116
|
+
private _buildHierarchyChildren;
|
|
117
|
+
/**
|
|
118
|
+
* Returns true when a column should render expandable datetime children.
|
|
119
|
+
*/
|
|
120
|
+
private _isExpandableDatetime;
|
|
121
|
+
/**
|
|
122
|
+
* Returns true when a column should render expandable hierarchy children.
|
|
123
|
+
*/
|
|
124
|
+
private _isExpandableHierarchy;
|
|
125
|
+
protected render(): TemplateResult;
|
|
126
|
+
}
|
|
127
|
+
export {};
|
|
@@ -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("../data-fields-select-B5aGtDYe.cjs");Object.defineProperty(exports,"LuzmoDataFieldsSelect",{enumerable:!0,get:function(){return e.t}});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { LuzmoDataFieldsSelect } from './data-fields-select';
|
|
2
|
+
declare global {
|
|
3
|
+
interface HTMLElementTagNameMap {
|
|
4
|
+
'luzmo-data-fields-select': LuzmoDataFieldsSelect;
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
export { LuzmoDataFieldsSelect } from './data-fields-select';
|
|
8
|
+
export type { AdHocFormulaFieldData, AdHocFormulaInput } from '../../types/dataset-data-field.types';
|
|
9
|
+
export type { DataFieldsSelectedEventDetail } from './types';
|
|
@@ -0,0 +1,28 @@
|
|
|
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
|
+
// Auto-generated initialization code
|
|
21
|
+
(function() {
|
|
22
|
+
if (typeof document < "u" && !document.querySelector("style[data-luzmo-vars]")) {
|
|
23
|
+
let e = document.createElement("style");
|
|
24
|
+
e.setAttribute("data-luzmo-vars", ""), e.textContent = "html{--luzmo-animation-duration: 0.15s;--luzmo-border-color: rgba(var(--luzmo-border-color-rgb), 0.1);--luzmo-border-color-hover: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-down: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-border-color-focus: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-rgb: 0, 0, 0;--luzmo-border-color-full: rgb(180, 180, 180);--luzmo-border-color-full-hover: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-full-down: color-mix(in oklch, var(--luzmo-border-color-full), black 45%);--luzmo-border-color-full-focus: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-disabled: #dddddd;--luzmo-border-radius: 6px;--luzmo-border-radius-s: 4px;--luzmo-border-radius-l: 8px;--luzmo-border-radius-xl: 12px;--luzmo-border-radius-full: 999rem;--luzmo-background-color: #ffffff;--luzmo-background-color-rgb: 255, 255, 255;--luzmo-background-color-disabled: #eeeeee;--luzmo-background-color-hover: color-mix( in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5% );--luzmo-background-color-down: color-mix(in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 7%), black 1%);--luzmo-background-color-focus: color-mix( in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5% );--luzmo-background-color-highlight: rgb(240, 240, 240);--luzmo-background-color-highlight-disabled: rgb(245, 245, 245);--luzmo-background-color-highlight-hover: color-mix(in oklch, var(--luzmo-background-color-highlight), black 10%);--luzmo-background-color-highlight-down: color-mix(in oklch, var(--luzmo-background-color-highlight), black 20%);--luzmo-background-color-highlight-focus: color-mix(in oklch, var(--luzmo-background-color-highlight), black 10%);--luzmo-background-color-alt-1: rgb(250, 250, 250);--luzmo-background-color-alt-2: rgb(239, 239, 239);--luzmo-border-width: 1px;--luzmo-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', Helvetica, Arial, sans-serif;--luzmo-font-size-xs: 10px;--luzmo-font-size-s: 12px;--luzmo-font-size-m: 14px;--luzmo-font-size: 14px;--luzmo-font-size-l: 16px;--luzmo-font-size-xl: 18px;--luzmo-font-size-xxl: 20px;--luzmo-font-style: normal;--luzmo-line-height: normal;--luzmo-font-weight: 400;--luzmo-font-weight-semibold: 500;--luzmo-font-weight-bold: 600;--luzmo-font-color: #333;--luzmo-font-color-hard: #000;--luzmo-font-color-disabled: var(--luzmo-color-disabled);--luzmo-font-color-extra-dimmed: #888;--luzmo-font-color-hover: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-font-color-down: color-mix(in oklch, var(--luzmo-font-color), black 20%);--luzmo-font-color-focus: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-scrollbar-size: 6px;--luzmo-scrollbar-width: thin;--luzmo-scrollbar-track-background: transparent;--luzmo-scrollbar-track-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-background: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-scrollbar-thumb-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-hover-background: rgba(var(--luzmo-border-color-rgb), 0.4);--luzmo-primary: #4434ff;--luzmo-primary-hover: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-down: color-mix(in oklch, var(--luzmo-primary), black 20%);--luzmo-primary-focus: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-inverse-color: #ffffff;--luzmo-primary-rgb: 68, 52, 255;--luzmo-secondary: #ff00ff;--luzmo-secondary-hover: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-down: color-mix(in oklch, var(--luzmo-secondary), black 20%);--luzmo-secondary-focus: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-inverse-color: #ffffff;--luzmo-secondary-rgb: 255, 0, 255;--luzmo-secondary-outline: rgba(255, 0, 255, 0.2);--luzmo-negative-color: #ca221c;--luzmo-negative-color-hover: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-down: color-mix(in oklch, var(--luzmo-negative-color), black 20%);--luzmo-negative-color-focus: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-rgb: 202, 34, 28;--luzmo-positive-color: rgb(20, 150, 101);--luzmo-positive-color-hover: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-down: color-mix(in oklch, var(--luzmo-positive-color), black 20%);--luzmo-positive-color-focus: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-rgb: 20, 150, 101;--luzmo-selected-color: rgb(110, 110, 110);--luzmo-selected-color-hover: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-down: color-mix(in oklch, var(--luzmo-selected-color), black 45%);--luzmo-selected-color-focus: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-hard: #1e1e1e;--luzmo-selected-color-hard-hover: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-selected-color-hard-down: color-mix(in oklch, var(--luzmo-selected-color-hard), black 45%);--luzmo-selected-color-hard-focus: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-color-informative: #1a77e9;--luzmo-color-informative-rgb: 26, 119, 233;--luzmo-color-disabled: #aaaaaa;--luzmo-spacing-1: 2px;--luzmo-spacing-2: 4px;--luzmo-spacing-3: 8px;--luzmo-spacing-4: 12px;--luzmo-spacing-5: 16px;--luzmo-indicator-gap: 2px;--luzmo-indicator-width: 1px;--luzmo-indicator-color: var(--luzmo-primary);--luzmo-component-height-xxs: 20px;--luzmo-component-height-xs: 24px;--luzmo-component-height-s: 28px;--luzmo-component-height: 32px;--luzmo-component-height-l: 40px;--luzmo-component-height-xl: 48px;--luzmo-component-height-xxl: 64px;--luzmo-icon-size-xxs: 12px;--luzmo-icon-size-xs: 14px;--luzmo-icon-size-s: 16px;--luzmo-icon-size-m: 18px;--luzmo-icon-size-l: 20px;--luzmo-icon-size-xl: 22px;--luzmo-icon-size-xxl: 32px}", document.head.appendChild(e);
|
|
25
|
+
}
|
|
26
|
+
})();
|
|
27
|
+
import { t as e } from "../data-fields-select-CfAfiV-K.js";
|
|
28
|
+
export { e as LuzmoDataFieldsSelect };
|
|
@@ -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
|
+
const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-BNAt_iYb.cjs"),n=require("./calculate-data-field-icon-DenGmW74.cjs"),r=require("./localize-D3i4Epy_.cjs"),i=require("./convert-datasets-to-data-fields-B13rl1an.cjs"),a=require("./periods.const-Db0nXrwr.cjs");let o=require("@luzmo/icons"),s=require("lit"),c=require("lit/decorators.js"),l=require("@lit/localize");require("@luzmo/lucero/select");let u=require("@luzmo/lucero/utils");var d=`:host{font-family:var(--luzmo-font-family)}`,f=`::level::`,p=(e,t)=>`${e}${f}${t}`,m=e=>{let t=e.indexOf(f);return t===-1?null:{columnId:e.slice(0,t),level:Number(e.slice(t+9))}},h=class extends t.t((0,u.SizedMixin)(u.LuzmoElement,{validSizes:Object.values(u.ElementSizes)})){constructor(...e){super(...e),this.contentLanguage=`en`,this.icons=`menu-only`,this.allowEmpty=!1,this.selects=`single`,this.value=[],this.retrieving=!1,this.invalid=!1,this.clearable=!1,this.pending=!1,this.disabled=!1,this.search=`auto`,this.placement=`bottom-start`,this.datasetsDataFields=[],this._dataFieldsSelected=[],this._lastEmittedValue=`[]`,this._pendingAutoSelectEvent=!1}static get styles(){return[(0,s.unsafeCSS)(d)]}_isAdHocFormula(e){return`formula`in e&&typeof e.formula==`string`}_sendChangeEvent(){let e=JSON.stringify(this.value);e!==this._lastEmittedValue&&(this._lastEmittedValue=e,this.dispatchEvent(new CustomEvent(`luzmo-data-fields-selected`,{bubbles:!0,composed:!0,cancelable:!0,detail:{dataFields:this._dataFieldsSelected}})))}_toDataFieldData(e,t,n=!1){return n?i.r(t,e,{includeHidden:!0}):i.n(t,e,{includeHidden:!0})}_toAdHocFormulaFieldData(e,t){return{datasetId:t,formula:e.formula,type:e.type,name:e.label??{en:`Ad-hoc formula`},subtype:e.subtype??void 0,format:e.format}}_findFormulaMatch(e,t,n){for(let r of e)if(this._isAdHocFormula(r)){if(r.formula===t)return this._toAdHocFormulaFieldData(r,n)}else if(r.id===t)return this._toDataFieldData(r,n,!0);return null}_resolveDataFieldFromValue(e,t){let n=m(e),r=n?n.columnId:e;for(let i of t){let t=i.columns??[],a=i.formulas??[],o=t.find(e=>e.id===r);if(o){let e=this._toDataFieldData(o,i.id,!1);if(e&&n&&(e.level=n.level,this._isExpandableHierarchy(o))){let t=o.hierarchyLevels?.find(e=>e.level===n.level);t&&(e.name=t.name)}return e}let s=this._findFormulaMatch(a,e,i.id);if(s)return s}return null}setDataField(e){let t=e?.detail?.value??[];this._dataFieldsSelected=[];for(let e of t){let t=this._resolveDataFieldFromValue(e,this.datasetsDataFields);t&&this._dataFieldsSelected.push(t)}this.value=t,this._sendChangeEvent()}_findDataFieldsInDatasetsDataFields(e){this._dataFieldsSelected=[];for(let t of e){let e=this._resolveDataFieldFromValue(t,this.datasetsDataFields);e&&this._dataFieldsSelected.push(e)}}_getAutoSelectValue(){for(let e of this.datasetsDataFields){if(e?.columns?.length>0){let t=e.columns[0];return this._isExpandableDatetime(t)?this._buildDatetimeChildren(t)[0]?.value??null:this._isExpandableHierarchy(t)?this._buildHierarchyChildren(t)[0]?.value??null:t.id}for(let t of e?.formulas??[])if(!this._isAdHocFormula(t))return t.id}return null}_autoSelectInitialDataField(){if(this.value.length>0||this.allowEmpty||this.retrieving)return;let e=this._getAutoSelectValue();e&&this._resolveDataFieldFromValue(e,this.datasetsDataFields)&&(this._pendingAutoSelectEvent=!0,this.value=[e])}willUpdate(e){super.willUpdate(e),(e.has(`value`)||e.has(`datasetsDataFields`)||e.has(`allowEmpty`)||e.has(`retrieving`))&&this._autoSelectInitialDataField(),(e.has(`value`)||e.has(`datasetsDataFields`))&&this._findDataFieldsInDatasetsDataFields(this.value)}updated(e){super.updated(e),this._pendingAutoSelectEvent&&e.has(`value`)&&this._dataFieldsSelected.length>0?(this._pendingAutoSelectEvent=!1,this._sendChangeEvent()):e.has(`value`)&&(this._lastEmittedValue=JSON.stringify(this.value))}_buildDatetimeChildren(e){let t=[],n=Math.min(Math.max(e.lowestLevel??1,1),a.n.length),r=Math.min(Math.max(e.highestLevel??1,1),a.n.length);for(let i=r;i<=n;i++)t.push({value:p(e.id,i),label:a.n[i-1]?.i18n()??``});return t}_buildHierarchyChildren(e){let t=[],n=e.hierarchyLevels??[];for(let i of n)i.level<1||t.push({value:p(e.id,i.level),label:r.t(i.name??{},this.contentLanguage)??``});return t}_isExpandableDatetime(e){let t=e.type;return(t===`datetime`||t===`array[datetime]`)&&typeof e.lowestLevel==`number`}_isExpandableHierarchy(e){return Array.isArray(e.hierarchyLevels)&&e.hierarchyLevels.length>2&&e.hierarchy_enabled===!0}render(){let e=[],t=this.icons!==`none`;for(let i of this.datasetsDataFields??[]){let a=i?.columns??[],s=i?.formulas??[];for(let i of a){let a={value:i.id,label:r.t(i?.name??{},this.contentLanguage)??``};t&&(a.icon=n.t(i,this.size)),this._isExpandableDatetime(i)?a.children=this._buildDatetimeChildren(i):this._isExpandableHierarchy(i)&&(a.children=this._buildHierarchyChildren(i)),e.push(a)}for(let i of s)if(this._isAdHocFormula(i)){let n=i.label?r.t(i.label,this.contentLanguage):(0,l.msg)(`Ad-hoc formula`),a={value:i.formula,label:n??(0,l.msg)(`Ad-hoc formula`)};t&&(a.icon=o.luzmoFormula),e.push(a)}else{let a={value:i.id,label:r.t(i?.name??{},this.contentLanguage)??``};t&&(a.icon=n.t(i,this.size)),e.push(a)}}let i=(0,l.msg)(`Select...`),a=this.pending?``:this.label||this.placeholder||i,c=this.pending||this.value.length===0?[]:this.value,u=this.icons===`none`||this.icons===`menu-only`?`none`:void 0;return s.html`<luzmo-select
|
|
21
|
+
id="data-fields"
|
|
22
|
+
.size=${this.size}
|
|
23
|
+
.label=${a}
|
|
24
|
+
.pendingLabel=${this.label||this.placeholder||i}
|
|
25
|
+
.retrieving=${this.retrieving}
|
|
26
|
+
.icons=${u}
|
|
27
|
+
.selects=${this.selects}
|
|
28
|
+
.variant=${this.selects===`multiple`?`checkmarks`:`highlight`}
|
|
29
|
+
.placement=${this.placement}
|
|
30
|
+
.search=${this.search}
|
|
31
|
+
emphasized
|
|
32
|
+
no-wrap
|
|
33
|
+
?invalid=${this.invalid}
|
|
34
|
+
?clearable=${this.clearable&&this.allowEmpty}
|
|
35
|
+
?pending=${this.pending}
|
|
36
|
+
?disabled=${this.disabled}
|
|
37
|
+
.options=${e}
|
|
38
|
+
.value=${c}
|
|
39
|
+
@change=${this.setDataField}
|
|
40
|
+
>
|
|
41
|
+
</luzmo-select>`}};e.t([(0,c.property)({type:String,attribute:`content-language`,reflect:!0})],h.prototype,`contentLanguage`,void 0),e.t([(0,c.property)({type:String,reflect:!0})],h.prototype,`label`,void 0),e.t([(0,c.property)({type:String,reflect:!0})],h.prototype,`icons`,void 0),e.t([(0,c.property)({type:Boolean,attribute:`allow-empty`,reflect:!0})],h.prototype,`allowEmpty`,void 0),e.t([(0,c.property)({type:String,attribute:`placeholder`,reflect:!0})],h.prototype,`placeholder`,void 0),e.t([(0,c.property)({type:String,reflect:!0})],h.prototype,`selects`,void 0),e.t([(0,c.property)({type:Array,reflect:!0})],h.prototype,`value`,void 0),e.t([(0,c.property)({type:Boolean,attribute:`retrieving`,reflect:!0})],h.prototype,`retrieving`,void 0),e.t([(0,c.property)({type:Boolean,attribute:`invalid`,reflect:!0})],h.prototype,`invalid`,void 0),e.t([(0,c.property)({type:Boolean,attribute:`clearable`,reflect:!0})],h.prototype,`clearable`,void 0),e.t([(0,c.property)({type:Boolean,attribute:`pending`,reflect:!0})],h.prototype,`pending`,void 0),e.t([(0,c.property)({type:Boolean,attribute:`disabled`,reflect:!0})],h.prototype,`disabled`,void 0),e.t([(0,c.property)({type:String,attribute:`search`,reflect:!0})],h.prototype,`search`,void 0),e.t([(0,c.property)({type:String,reflect:!0})],h.prototype,`placement`,void 0),e.t([(0,c.property)({type:Array,reflect:!1})],h.prototype,`datasetsDataFields`,void 0),h=e.t([(0,l.localized)()],h),customElements.get(`luzmo-data-fields-select`)||customElements.define(`luzmo-data-fields-select`,h),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return h}});
|
|
@@ -17,10 +17,11 @@
|
|
|
17
17
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
18
18
|
* SOFTWARE.
|
|
19
19
|
* */
|
|
20
|
-
import {
|
|
20
|
+
import { t as e } from "./decorate-CaYbmmmm.js";
|
|
21
|
+
import { t } from "./localized-mixin-GXZQgVAD.js";
|
|
21
22
|
import { t as n } from "./calculate-data-field-icon-DrSg1PuD.js";
|
|
22
23
|
import { t as r } from "./localize-BT7REYBY.js";
|
|
23
|
-
import { i, r as a } from "./
|
|
24
|
+
import { n as i, r as a } from "./convert-datasets-to-data-fields-PmQzeVLG.js";
|
|
24
25
|
import { n as o } from "./periods.const-NCTkxnvG.js";
|
|
25
26
|
import { luzmoFormula as s } from "@luzmo/icons";
|
|
26
27
|
import { html as c, unsafeCSS as l } from "lit";
|
|
@@ -55,7 +56,7 @@ var g = ":host{font-family:var(--luzmo-font-family)}", _ = "::level::", v = (e,
|
|
|
55
56
|
})));
|
|
56
57
|
}
|
|
57
58
|
_toDataFieldData(e, t, n = !1) {
|
|
58
|
-
return n ?
|
|
59
|
+
return n ? a(t, e, { includeHidden: !0 }) : i(t, e, { includeHidden: !0 });
|
|
59
60
|
}
|
|
60
61
|
_toAdHocFormulaFieldData(e, t) {
|
|
61
62
|
return {
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { LitElement, PropertyValues, TemplateResult } from 'lit';
|
|
2
|
+
import type { DatasetIcon } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Thumbnail size options
|
|
5
|
+
*/
|
|
6
|
+
export type ThumbnailSize = '32px' | '64px';
|
|
7
|
+
/**
|
|
8
|
+
* Partial record type for thumbnails
|
|
9
|
+
*/
|
|
10
|
+
export type PartialRecord<K extends keyof any, T> = {
|
|
11
|
+
[P in K]?: T;
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Public connectors list - these are well-known connectors that may have CSS-based icons
|
|
15
|
+
* This list should match the one from `@shared-lib`
|
|
16
|
+
*/
|
|
17
|
+
export declare const publicConnectors: readonly ["amazonathena", "asana", "bigquery", "citybikes", "clickhouse", "demodataplugin", "elasticsearch", "exact", "exactonline", "exactonlinenl", "google", "googleanalytics", "googleanalyticsv4", "googledrive", "hubspot", "mailchimp", "mariadb", "mongodb", "mysql", "oracle", "panoply", "pipedrive", "pipelinedb", "postgresql", "presto", "redshift", "salesforce", "saphana", "snowflake", "sqlserver", "stardog", "synapse", "teamleader", "trino", "typeform", "zendesk"];
|
|
18
|
+
/**
|
|
19
|
+
* @customElement luzmo-dataset-icon
|
|
20
|
+
* @summary Displays an icon for a dataset based on its type, thumbnails, and connector
|
|
21
|
+
*/
|
|
22
|
+
export declare class LuzmoDatasetIcon extends LitElement {
|
|
23
|
+
static styles: import("lit").CSSResult;
|
|
24
|
+
static tagName: string;
|
|
25
|
+
/**
|
|
26
|
+
* The dataset information containing subtype and thumbnail data
|
|
27
|
+
*/
|
|
28
|
+
datasetInfo?: DatasetIcon;
|
|
29
|
+
/**
|
|
30
|
+
* The size of the icon
|
|
31
|
+
* @default '32px'
|
|
32
|
+
*/
|
|
33
|
+
size: '16px' | '24px' | '32px' | '48px' | '64px';
|
|
34
|
+
/**
|
|
35
|
+
* The base URL for the application (used for thumbnail URLs)
|
|
36
|
+
*/
|
|
37
|
+
appUrl: string;
|
|
38
|
+
private _subtype;
|
|
39
|
+
private _isPublicConnector;
|
|
40
|
+
private _thumbnails;
|
|
41
|
+
private readonly thumbnailSizeMap;
|
|
42
|
+
protected willUpdate(changedProperties: PropertyValues): void;
|
|
43
|
+
private _updateDatasetProperties;
|
|
44
|
+
protected render(): TemplateResult;
|
|
45
|
+
}
|
|
@@ -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("../dataset-icon-BAV0S4sZ.cjs");exports.LuzmoDatasetIcon=e.t;
|
|
@@ -0,0 +1,28 @@
|
|
|
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
|
+
// Auto-generated initialization code
|
|
21
|
+
(function() {
|
|
22
|
+
if (typeof document < "u" && !document.querySelector("style[data-luzmo-vars]")) {
|
|
23
|
+
let e = document.createElement("style");
|
|
24
|
+
e.setAttribute("data-luzmo-vars", ""), e.textContent = "html{--luzmo-animation-duration: 0.15s;--luzmo-border-color: rgba(var(--luzmo-border-color-rgb), 0.1);--luzmo-border-color-hover: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-down: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-border-color-focus: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-rgb: 0, 0, 0;--luzmo-border-color-full: rgb(180, 180, 180);--luzmo-border-color-full-hover: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-full-down: color-mix(in oklch, var(--luzmo-border-color-full), black 45%);--luzmo-border-color-full-focus: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-disabled: #dddddd;--luzmo-border-radius: 6px;--luzmo-border-radius-s: 4px;--luzmo-border-radius-l: 8px;--luzmo-border-radius-xl: 12px;--luzmo-border-radius-full: 999rem;--luzmo-background-color: #ffffff;--luzmo-background-color-rgb: 255, 255, 255;--luzmo-background-color-disabled: #eeeeee;--luzmo-background-color-hover: color-mix( in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5% );--luzmo-background-color-down: color-mix(in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 7%), black 1%);--luzmo-background-color-focus: color-mix( in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5% );--luzmo-background-color-highlight: rgb(240, 240, 240);--luzmo-background-color-highlight-disabled: rgb(245, 245, 245);--luzmo-background-color-highlight-hover: color-mix(in oklch, var(--luzmo-background-color-highlight), black 10%);--luzmo-background-color-highlight-down: color-mix(in oklch, var(--luzmo-background-color-highlight), black 20%);--luzmo-background-color-highlight-focus: color-mix(in oklch, var(--luzmo-background-color-highlight), black 10%);--luzmo-background-color-alt-1: rgb(250, 250, 250);--luzmo-background-color-alt-2: rgb(239, 239, 239);--luzmo-border-width: 1px;--luzmo-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', Helvetica, Arial, sans-serif;--luzmo-font-size-xs: 10px;--luzmo-font-size-s: 12px;--luzmo-font-size-m: 14px;--luzmo-font-size: 14px;--luzmo-font-size-l: 16px;--luzmo-font-size-xl: 18px;--luzmo-font-size-xxl: 20px;--luzmo-font-style: normal;--luzmo-line-height: normal;--luzmo-font-weight: 400;--luzmo-font-weight-semibold: 500;--luzmo-font-weight-bold: 600;--luzmo-font-color: #333;--luzmo-font-color-hard: #000;--luzmo-font-color-disabled: var(--luzmo-color-disabled);--luzmo-font-color-extra-dimmed: #888;--luzmo-font-color-hover: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-font-color-down: color-mix(in oklch, var(--luzmo-font-color), black 20%);--luzmo-font-color-focus: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-scrollbar-size: 6px;--luzmo-scrollbar-width: thin;--luzmo-scrollbar-track-background: transparent;--luzmo-scrollbar-track-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-background: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-scrollbar-thumb-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-hover-background: rgba(var(--luzmo-border-color-rgb), 0.4);--luzmo-primary: #4434ff;--luzmo-primary-hover: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-down: color-mix(in oklch, var(--luzmo-primary), black 20%);--luzmo-primary-focus: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-inverse-color: #ffffff;--luzmo-primary-rgb: 68, 52, 255;--luzmo-secondary: #ff00ff;--luzmo-secondary-hover: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-down: color-mix(in oklch, var(--luzmo-secondary), black 20%);--luzmo-secondary-focus: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-inverse-color: #ffffff;--luzmo-secondary-rgb: 255, 0, 255;--luzmo-secondary-outline: rgba(255, 0, 255, 0.2);--luzmo-negative-color: #ca221c;--luzmo-negative-color-hover: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-down: color-mix(in oklch, var(--luzmo-negative-color), black 20%);--luzmo-negative-color-focus: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-rgb: 202, 34, 28;--luzmo-positive-color: rgb(20, 150, 101);--luzmo-positive-color-hover: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-down: color-mix(in oklch, var(--luzmo-positive-color), black 20%);--luzmo-positive-color-focus: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-rgb: 20, 150, 101;--luzmo-selected-color: rgb(110, 110, 110);--luzmo-selected-color-hover: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-down: color-mix(in oklch, var(--luzmo-selected-color), black 45%);--luzmo-selected-color-focus: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-hard: #1e1e1e;--luzmo-selected-color-hard-hover: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-selected-color-hard-down: color-mix(in oklch, var(--luzmo-selected-color-hard), black 45%);--luzmo-selected-color-hard-focus: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-color-informative: #1a77e9;--luzmo-color-informative-rgb: 26, 119, 233;--luzmo-color-disabled: #aaaaaa;--luzmo-spacing-1: 2px;--luzmo-spacing-2: 4px;--luzmo-spacing-3: 8px;--luzmo-spacing-4: 12px;--luzmo-spacing-5: 16px;--luzmo-indicator-gap: 2px;--luzmo-indicator-width: 1px;--luzmo-indicator-color: var(--luzmo-primary);--luzmo-component-height-xxs: 20px;--luzmo-component-height-xs: 24px;--luzmo-component-height-s: 28px;--luzmo-component-height: 32px;--luzmo-component-height-l: 40px;--luzmo-component-height-xl: 48px;--luzmo-component-height-xxl: 64px;--luzmo-icon-size-xxs: 12px;--luzmo-icon-size-xs: 14px;--luzmo-icon-size-s: 16px;--luzmo-icon-size-m: 18px;--luzmo-icon-size-l: 20px;--luzmo-icon-size-xl: 22px;--luzmo-icon-size-xxl: 32px}", document.head.appendChild(e);
|
|
25
|
+
}
|
|
26
|
+
})();
|
|
27
|
+
import { t as e } from "../dataset-icon-BXEgg_8O.js";
|
|
28
|
+
export { e as LuzmoDatasetIcon };
|