@luzmo/analytics-components-kit 1.0.8-beta.6 → 1.0.8
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/{area-chart-positioning.config-BEwDQj3T.js → area-chart-positioning.config-BJK4Q4NL.js} +1 -1
- package/components/{area-chart-positioning.config-CS-5H8-C.cjs → area-chart-positioning.config-Cbeon6-x.cjs} +1 -1
- package/components/{bar-chart-positioning.config-CBbTYesB.js → bar-chart-positioning.config-B4UuSMIW.js} +1 -1
- package/components/{bar-chart-positioning.config-DkIvwJI5.cjs → bar-chart-positioning.config-BnhZQUtb.cjs} +1 -1
- package/components/base-BtRS5vm6.cjs +20 -0
- package/components/{base-DSeXdW9S.js → base-IE9Qxmub.js} +1 -2
- package/components/{box-plot-positioning.config-CNC-RTwl.js → box-plot-positioning.config-CYk5koLu.js} +1 -1
- package/components/{box-plot-positioning.config-o5D-mRFr.cjs → box-plot-positioning.config-DsldCFWm.cjs} +1 -1
- package/components/{bubble-chart-positioning.config-3ilPXLpZ.js → bubble-chart-positioning.config-BSDmuPwq.js} +1 -1
- package/components/{bubble-chart-positioning.config-CtreNdST.cjs → bubble-chart-positioning.config-BV-T_2cy.cjs} +1 -1
- package/components/{bullet-chart-positioning.config-CkFhShBk.js → bullet-chart-positioning.config-B3GeLs8o.js} +1 -1
- package/components/{bullet-chart-positioning.config-dHj3YrT_.cjs → bullet-chart-positioning.config-BoqQq4g_.cjs} +1 -1
- package/components/{choropleth-map-positioning.config-DOt86t59.js → choropleth-map-positioning.config-6OT0sZa5.js} +1 -1
- package/components/{choropleth-map-positioning.config-BSs-bRGv.cjs → choropleth-map-positioning.config-C_I3wf8H.cjs} +1 -1
- package/components/{circle-pack-chart-positioning.config-BkFATJjC.js → circle-pack-chart-positioning.config-BuuhKB85.js} +1 -1
- package/components/{circle-pack-chart-positioning.config-CVNdIYau.cjs → circle-pack-chart-positioning.config-D7Oke8BW.cjs} +1 -1
- package/components/{circular-gauge-positioning.config-SrbCaaOr.cjs → circular-gauge-positioning.config-B_IJzIBn.cjs} +1 -1
- package/components/{circular-gauge-positioning.config-BV2xb5TF.js → circular-gauge-positioning.config-DlWvKl0e.js} +1 -1
- package/components/{column-chart-positioning.config-T7juV3XT.js → column-chart-positioning.config-BLacEiY5.js} +1 -1
- package/components/{column-chart-positioning.config-DTQe3h_H.cjs → column-chart-positioning.config-DngsP5So.cjs} +1 -1
- package/components/{combination-chart-positioning.config-BrSmdan-.cjs → combination-chart-positioning.config-BVV0Bq-d.cjs} +1 -1
- package/components/{combination-chart-positioning.config-78C7wKnS.js → combination-chart-positioning.config-DxnmzV6O.js} +1 -1
- package/components/{conditional-number-positioning.config-_9ySKU1z.cjs → conditional-number-positioning.config-DfitbPT6.cjs} +1 -1
- package/components/{conditional-number-positioning.config-z_eEfpud.js → conditional-number-positioning.config-YEo_yFBu.js} +1 -1
- package/components/data-field/index.cjs +1 -1
- package/components/data-field/index.d.ts +0 -1
- package/components/data-field/index.js +1 -1
- package/components/data-field-fvlYzmfX.cjs +89 -0
- package/components/data-field-panel/index.cjs +1 -1
- package/components/data-field-panel/index.d.ts +0 -1
- package/components/data-field-panel/index.js +1 -1
- package/components/{data-field-panel-U-5Q-TRp.js → data-field-panel-BWBr1Fog.js} +4 -5
- package/components/data-field-panel-Yrqn4L79.cjs +87 -0
- package/components/{data-field-level-DR_dXjnL.js → data-field-yTJb-R63.js} +141 -47
- package/components/{data-fields-select-BYhAzdA6.js → data-fields-select-Bb1HXwlO.js} +3 -4
- package/components/data-fields-select-Cor6sfzL.cjs +41 -0
- package/components/{display-settings-binning-GIE6ww1Q.js → display-settings-binning-CaE87u3h.js} +19 -17
- package/components/{display-settings-binning-HrXOdGwO.cjs → display-settings-binning-CjvB12ds.cjs} +2 -2
- package/components/{display-settings-datetime-YS7_TUet.js → display-settings-datetime-5rq55OAn.js} +71 -69
- package/components/display-settings-datetime-B23w7aH4.cjs +217 -0
- package/components/display-settings-grand-totals-BZ0nlLhu.cjs +44 -0
- package/components/{display-settings-grand-totals-Bt_ju8jp.js → display-settings-grand-totals-DnKvI34n.js} +19 -17
- package/components/{display-settings-numeric-OHmktQsz.js → display-settings-numeric-B8MCRz-V.js} +81 -79
- package/components/display-settings-numeric-DoScgfRy.cjs +190 -0
- package/components/display-settings-period-over-period-C-hp0ZKN.cjs +227 -0
- package/components/{display-settings-period-over-period-B1_IJjWK.js → display-settings-period-over-period-W3dPK8LR.js} +98 -88
- package/components/{donut-chart-positioning.config-BY2TIeeY.cjs → donut-chart-positioning.config-QOZXaJmt.cjs} +1 -1
- package/components/{donut-chart-positioning.config-D34HegyZ.js → donut-chart-positioning.config-fGckMun2.js} +1 -1
- package/components/{en-US-q_Ruzags.cjs → en-CSPDwq2y.cjs} +1 -1
- package/components/{en-US-CcLhGxIh.js → en-DdS5q1ZT.js} +1 -1
- package/components/{en-GB-uxY5qmIM.cjs → en-GB-CJR66Ci_.cjs} +1 -1
- package/components/{en-GB-DzkdeUQh.js → en-GB-Cn0xDC0K.js} +1 -1
- package/components/{en-q_Ruzags.cjs → en-US-CSPDwq2y.cjs} +1 -1
- package/components/{en-CcLhGxIh.js → en-US-DdS5q1ZT.js} +1 -1
- package/components/{evolution-number-positioning.config-BBvULr59.cjs → evolution-number-positioning.config-B7lBArog.cjs} +1 -1
- package/components/{evolution-number-positioning.config-CKzCTjdO.js → evolution-number-positioning.config-CVIysE4H.js} +1 -1
- package/components/filters/index.cjs +1 -1
- package/components/filters/index.js +2 -2
- package/components/filters-DndJU6D5.js +2454 -0
- package/components/filters-oB9qOk_M.cjs +443 -0
- package/components/formula/index.cjs +1 -1
- package/components/formula/index.js +1 -1
- package/components/formula-BFvxm8kj.cjs +45 -0
- package/components/{formula-BYx4gH6i.js → formula-CdAkO1za.js} +14 -15
- package/components/{formula-codemirror-CVzyYNLO.js → formula-codemirror-jVC8mjQ3.js} +19 -21
- package/components/formula-codemirror-ucFOD-2a.cjs +215 -0
- package/components/{formula-display-store-BPn9m5TL.js → formula-display-store-CLAt_fik.js} +271 -242
- package/components/formula-display-store-DmT65fUB.cjs +20 -0
- package/components/formula-editor/index.cjs +1 -1
- package/components/formula-editor/index.d.ts +0 -1
- package/components/formula-editor/index.js +3 -4
- package/components/{formula-editor-BxoIkARr.js → formula-editor-Bd9F-xdZ.js} +351 -146
- package/components/formula-editor-BeZ-fu-7.cjs +253 -0
- package/components/{funnel-chart-positioning.config-CvhpE7rN.js → funnel-chart-positioning.config-BGi7ixet.js} +1 -1
- package/components/{funnel-chart-positioning.config-BPSmV76y.cjs → funnel-chart-positioning.config-zEqgz9Wz.cjs} +1 -1
- package/components/{heat-map-positioning.config-CHDHFIo2.cjs → heat-map-positioning.config-3dxU6qwG.cjs} +1 -1
- package/components/{heat-map-positioning.config-AOHTEJf7.js → heat-map-positioning.config-CK2DBngE.js} +1 -1
- package/components/{heat-table-positioning.config-DprOfmlW.js → heat-table-positioning.config-C55D814C.js} +1 -1
- package/components/{heat-table-positioning.config-DCLE9cy4.cjs → heat-table-positioning.config-CbscS7w1.cjs} +1 -1
- package/components/{hexbin-map-positioning.config-BjxkoqGh.js → hexbin-map-positioning.config-9nnyZGzx.js} +1 -1
- package/components/{hexbin-map-positioning.config-BmLljWez.cjs → hexbin-map-positioning.config-CHecaD9p.cjs} +1 -1
- package/components/index.cjs +840 -1
- package/components/index.js +6783 -67
- package/components/item-grid/index.cjs +1 -1
- package/components/item-grid/index.js +1 -1
- package/components/{item-grid-CcwnD_u5.cjs → item-grid-C2ZvM04g.cjs} +22 -22
- package/components/{item-grid-C_OTtv4T.js → item-grid-D4xYhMOD.js} +1 -2
- package/components/item-option/index.cjs +1 -1
- package/components/item-option/index.js +1 -1
- package/components/{item-option-DRWLN89_.js → item-option-28BU_oaD.js} +2 -2
- package/components/item-option-BQpS6rM_.cjs +269 -0
- 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-BwBxRLzB.cjs +53 -0
- package/components/{item-option-action-button-group-B9ghoHeh.js → item-option-action-button-group-D_g6aoYd.js} +2 -2
- package/components/item-option-base-C6uwowJD.cjs +56 -0
- package/components/{item-option-base-pYrkqt6q.js → item-option-base-CxQhI83u.js} +2 -2
- package/components/item-option-color-palette-picker/index.cjs +1 -1
- package/components/item-option-color-palette-picker/index.js +1 -1
- package/components/item-option-color-palette-picker-BjHadiN0.cjs +40 -0
- package/components/{item-option-color-palette-picker-DnVqGnm4.js → item-option-color-palette-picker-CRDFqhWx.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-CNkNZ1p-.cjs → item-option-color-picker-BJgpBbDp.cjs} +2 -2
- package/components/{item-option-color-picker-CO-OAFOs.js → item-option-color-picker-BlkpWjQh.js} +2 -2
- package/components/item-option-color-range/index.cjs +1 -1
- package/components/item-option-color-range/index.js +1 -1
- package/components/{item-option-color-range-bdYUxgQ9.js → item-option-color-range-3Wp-Ywz6.js} +2 -2
- package/components/item-option-color-range-CQo8uThO.cjs +98 -0
- package/components/item-option-guidelines/index.cjs +1 -1
- package/components/item-option-guidelines/index.js +1 -1
- package/components/{item-option-guidelines-Ce88dTV-.js → item-option-guidelines-CQ_yb7Ar.js} +3 -4
- package/components/item-option-guidelines-Daf8Ce5z.cjs +135 -0
- package/components/item-option-multi-language-field/index.cjs +1 -1
- package/components/item-option-multi-language-field/index.js +1 -1
- package/components/{item-option-multi-language-field-D0jRPAjY.cjs → item-option-multi-language-field-BApbe3pp.cjs} +2 -2
- package/components/{item-option-multi-language-field-0qfdBanp.js → item-option-multi-language-field-aLIpQWiQ.js} +2 -2
- package/components/item-option-number-field/index.cjs +1 -1
- package/components/item-option-number-field/index.js +1 -1
- package/components/{item-option-number-field-DYJ0eIf7.cjs → item-option-number-field-B72ZYOAX.cjs} +2 -2
- package/components/{item-option-number-field-CcEav5C3.js → item-option-number-field-Bv5eGoxB.js} +2 -2
- package/components/item-option-panel/index.cjs +1 -1
- package/components/item-option-panel/index.js +1 -1
- package/components/{item-option-panel-6Voh87nt.cjs → item-option-panel-A8Jxzwml.cjs} +2 -2
- package/components/{item-option-panel-DrI7HYrY.js → item-option-panel-kRH7GbzA.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-Bv4aGaCO.js → item-option-picker-BuUtW6gD.js} +2 -2
- package/components/{item-option-picker-DkEgfEE7.cjs → item-option-picker-DOFJ1CnI.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-Cnis4wLA.cjs +32 -0
- package/components/{item-option-position-picker-1d7qZmDv.js → item-option-position-picker-mf3JQu5q.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-B7gI1IKO.cjs +49 -0
- package/components/{item-option-positions-number-field-DUlBsbUL.js → item-option-positions-number-field-BIBWpagB.js} +2 -2
- package/components/item-option-radio-button-group/index.cjs +1 -1
- package/components/item-option-radio-button-group/index.js +1 -1
- package/components/{item-option-radio-button-group-ChtTIO3B.cjs → item-option-radio-button-group-B2HYZguB.cjs} +2 -2
- package/components/{item-option-radio-button-group-DuMcIZvr.js → item-option-radio-button-group-CFnfadK2.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--7hmhi97.cjs +33 -0
- package/components/{item-option-slider-CWxRoAbA.js → item-option-slider-CH1l0Ena.js} +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-dO66fjoD.cjs → item-option-switch-hUFRE9MC.cjs} +2 -2
- package/components/{item-option-switch-DvMLATBO.js → item-option-switch-rqu2ePVU.js} +2 -2
- package/components/item-option-text-field/index.cjs +1 -1
- package/components/item-option-text-field/index.js +1 -1
- package/components/{item-option-text-field-Furz80ho.cjs → item-option-text-field-C6CocZ5q.cjs} +2 -2
- package/components/{item-option-text-field-DS-gn_Gc.js → item-option-text-field-CBFMmuK2.js} +2 -2
- package/components/item-slot-drop/index.cjs +1 -1
- package/components/item-slot-drop/index.d.ts +0 -2
- package/components/item-slot-drop/index.js +1 -1
- package/components/{item-slot-drop-DE90FDdS.js → item-slot-drop-DDGclwbP.js} +12 -17
- package/components/item-slot-drop-hK-rLhwa.cjs +91 -0
- 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-CE4f9X6F.cjs +57 -0
- package/components/{item-slot-drop-panel-CyfhbUlE.js → item-slot-drop-panel-Cj6vbgJl.js} +40 -41
- package/components/item-slot-picker/index.cjs +1 -1
- package/components/item-slot-picker/index.js +1 -1
- package/components/{item-slot-picker-BM03UNRE.js → item-slot-picker-CjQH3MU-.js} +17 -22
- package/components/item-slot-picker-Wf50lM5u.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-DPaabfv5.js → item-slot-picker-panel-7IFk5QFC.js} +4 -5
- package/components/item-slot-picker-panel-Csn1tabr.cjs +81 -0
- package/components/{line-chart-positioning.config-CPGyHeJF.js → line-chart-positioning.config-D5WVvIZT.js} +1 -1
- package/components/{line-chart-positioning.config-BnDYCjGX.cjs → line-chart-positioning.config-DuXn1WD-.cjs} +1 -1
- package/components/load-data-fields-for-datasets-B76UR0sG.js +86 -0
- package/components/load-data-fields-for-datasets-DFYeACsu.cjs +20 -0
- package/components/{ad-hoc-slot-content-BwcFfXCV.cjs → localized-mixin-DfpurTYo.cjs} +1 -1
- package/components/{decorate-DyMgX_Uh.js → localized-mixin-DhiGdPMj.js} +26 -2
- package/components/{marker-map-positioning.config-CBERtxkG.js → marker-map-positioning.config-D2L7cvCP.js} +1 -1
- package/components/{marker-map-positioning.config-Bq1EPg3J.cjs → marker-map-positioning.config-DfN39a-Q.cjs} +1 -1
- package/components/{ohlc-chart-positioning.config-CpPJyyLB.js → ohlc-chart-positioning.config-C53dCwaT.js} +1 -1
- package/components/{ohlc-chart-positioning.config-aCf-SEt7.cjs → ohlc-chart-positioning.config-DsBuB0VU.cjs} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-DsNDp1G7.js → parallel-coordinates-plot-positioning.config-DhoVstsb.js} +1 -1
- package/components/{parallel-coordinates-plot-positioning.config-D1CB7jOv.cjs → parallel-coordinates-plot-positioning.config-aiFzLnnh.cjs} +1 -1
- package/components/period-over-period-condition.const-DDgiXIfR.cjs +20 -0
- package/components/{formatter-Cq5dFCyU.js → period-over-period-condition.const-IOVIrgKJ.js} +234 -44
- package/components/{pivot-table-positioning.config-gBHM1_-K.cjs → pivot-table-positioning.config-Bq9BoQWM.cjs} +1 -1
- package/components/{pivot-table-positioning.config-BFWS3Yk_.js → pivot-table-positioning.config-Cnai84AH.js} +1 -1
- package/components/{pyramid-chart-positioning.config-B8dbZhvt.js → pyramid-chart-positioning.config-BeJ5R_Ln.js} +1 -1
- package/components/{pyramid-chart-positioning.config-DD64vCwl.cjs → pyramid-chart-positioning.config-D5AKNCPb.cjs} +1 -1
- package/components/{radar-chart-positioning.config-DN51_Tzb.cjs → radar-chart-positioning.config-BEIwrzhb.cjs} +1 -1
- package/components/{radar-chart-positioning.config-C2DWQu8V.js → radar-chart-positioning.config-DsfUBq4B.js} +1 -1
- package/components/{route-map-positioning.config-ryk_dUkh.cjs → route-map-positioning.config-4Wyvj5OH.cjs} +1 -1
- package/components/{route-map-positioning.config-D7X6QuWY.js → route-map-positioning.config-CuiRWzbs.js} +1 -1
- package/components/{sankey-diagram-positioning.config-CJfGpnPS.cjs → sankey-diagram-positioning.config-CZ-zVCQo.cjs} +1 -1
- package/components/{sankey-diagram-positioning.config-A_7xM06n.js → sankey-diagram-positioning.config-DtN7dARd.js} +1 -1
- package/components/{scatter-plot-positioning.config-qpwrugRe.js → scatter-plot-positioning.config-BXrzdLIc.js} +1 -1
- package/components/{scatter-plot-positioning.config-Duao2ftU.cjs → scatter-plot-positioning.config-CfAf_FUW.cjs} +1 -1
- package/components/{slicer-filter-positioning.config-93hC7jID.js → slicer-filter-positioning.config-BLGeCJys.js} +1 -1
- package/components/{slicer-filter-positioning.config-DxhC39ak.cjs → slicer-filter-positioning.config-CU86hJi6.cjs} +1 -1
- package/components/slot-menu-1zlmyLVl.js +1060 -0
- package/components/slot-menu-BSu8wKLi.cjs +217 -0
- package/components/{speedometer-chart-positioning.config-DtRG3-e5.cjs → speedometer-chart-positioning.config-AeMlNxSj.cjs} +1 -1
- package/components/{speedometer-chart-positioning.config-CZbwyYsk.js → speedometer-chart-positioning.config-Dam0wOqp.js} +1 -1
- package/components/{spike-map-positioning.config-CevjyQ5F.cjs → spike-map-positioning.config-9ShV1fUh.cjs} +1 -1
- package/components/{spike-map-positioning.config-LBqSYD2n.js → spike-map-positioning.config-BVzewpfi.js} +1 -1
- package/components/{strip-plot-positioning.config-DF5VxzvB.cjs → strip-plot-positioning.config-BVBdHZvL.cjs} +1 -1
- package/components/{strip-plot-positioning.config-cCdQxMM_.js → strip-plot-positioning.config-OHm3LEo3.js} +1 -1
- package/components/{sunburst-chart-positioning.config-DmkZEexM.js → sunburst-chart-positioning.config-BynNbbxB.js} +1 -1
- package/components/{sunburst-chart-positioning.config-CERBvfoF.cjs → sunburst-chart-positioning.config-DQmuKm-N.cjs} +1 -1
- package/components/{symbol-map-positioning.config-DhYxG8RC.cjs → symbol-map-positioning.config-D6rgxXTO.cjs} +1 -1
- package/components/{symbol-map-positioning.config-BwG_G6He.js → symbol-map-positioning.config-bQk_pdAr.js} +1 -1
- package/components/{treemap-chart-positioning.config-arjPT6b_.js → treemap-chart-positioning.config-BB1-rZKL.js} +1 -1
- package/components/{treemap-chart-positioning.config-BwrrXs4a.cjs → treemap-chart-positioning.config-ZaoIngRn.cjs} +1 -1
- package/components/utils/base.cjs +1 -1
- package/components/utils/base.js +2 -2
- package/components/utils-CPIzW8sp.cjs +20 -0
- package/components/{utils-B_rE5b7a.js → utils-ZoJ1cp2P.js} +41 -42
- package/components/utils.cjs +1 -1
- package/components/utils.js +5 -8
- package/components/{venn-diagram-positioning.config-DSh3Ns9L.js → venn-diagram-positioning.config-C9ARqREi.js} +1 -1
- package/components/{venn-diagram-positioning.config-GGLCcrqp.cjs → venn-diagram-positioning.config-Cb10sStL.cjs} +1 -1
- package/components/{wordcloud-chart-positioning.config-B8ZzwIdd.js → wordcloud-chart-positioning.config-D59ntNtd.js} +1 -1
- package/components/{wordcloud-chart-positioning.config-Cxyhs6gk.cjs → wordcloud-chart-positioning.config-DC89_DYc.cjs} +1 -1
- package/custom-elements.json +6760 -18304
- package/index.d.ts +0 -25
- package/package.json +1 -126
- package/react/esm/index.d.ts +2 -27
- package/react/esm/index.js +2 -102
- package/react/index.ts +2 -102
- package/react/luzmo-stub.d.ts +0 -140
- package/react/package.json +2 -2
- package/types.d.ts +0 -9
- package/utils/slot-state/slot-store.d.ts +4 -0
- package/angular/README.md +0 -40
- package/angular/components/ai-chat-empty-state.ts +0 -98
- package/angular/components/ai-chat.ts +0 -440
- package/angular/components/ai-interaction-textarea.ts +0 -283
- package/angular/components/data-field-level.ts +0 -130
- package/angular/components/data-field-panel.ts +0 -256
- package/angular/components/data-field.ts +0 -130
- package/angular/components/data-fields-select.ts +0 -212
- package/angular/components/dataset-icon.ts +0 -83
- package/angular/components/dataset-selector-list.ts +0 -147
- package/angular/components/dataset-selector-row.ts +0 -198
- package/angular/components/display-settings-binning.ts +0 -92
- package/angular/components/display-settings-datetime.ts +0 -100
- package/angular/components/display-settings-grand-totals.ts +0 -92
- package/angular/components/display-settings-numeric.ts +0 -113
- package/angular/components/display-settings-period-over-period.ts +0 -107
- package/angular/components/display-settings.ts +0 -227
- package/angular/components/filter-expression-picker.ts +0 -168
- package/angular/components/filter-item.ts +0 -175
- package/angular/components/filter-parameter-picker.ts +0 -155
- package/angular/components/filter-value-picker-datetime.ts +0 -125
- package/angular/components/filter-value-picker-hierarchy.ts +0 -146
- package/angular/components/filter-value-picker-numeric.ts +0 -146
- package/angular/components/filter-value-picker.ts +0 -160
- package/angular/components/filters.ts +0 -209
- package/angular/components/formula-editor.ts +0 -229
- package/angular/components/formula-field.ts +0 -198
- package/angular/components/formula.ts +0 -170
- package/angular/components/interactive-viz-item.ts +0 -186
- package/angular/components/item-grid-item-actions-menu.ts +0 -113
- package/angular/components/item-grid.ts +0 -242
- package/angular/components/item-option-action-button-group.ts +0 -105
- package/angular/components/item-option-color-palette-picker.ts +0 -126
- package/angular/components/item-option-color-picker.ts +0 -134
- package/angular/components/item-option-color-range.ts +0 -168
- package/angular/components/item-option-guidelines.ts +0 -84
- package/angular/components/item-option-multi-language-field.ts +0 -133
- package/angular/components/item-option-number-field.ts +0 -161
- package/angular/components/item-option-panel.ts +0 -149
- package/angular/components/item-option-picker.ts +0 -120
- package/angular/components/item-option-position-picker.ts +0 -98
- package/angular/components/item-option-positions-number-field.ts +0 -140
- package/angular/components/item-option-radio-button-group.ts +0 -119
- package/angular/components/item-option-slider.ts +0 -126
- package/angular/components/item-option-switch.ts +0 -98
- package/angular/components/item-option-text-field.ts +0 -112
- package/angular/components/item-option.ts +0 -163
- package/angular/components/item-slot-drop-panel.ts +0 -236
- package/angular/components/item-slot-drop.ts +0 -231
- package/angular/components/item-slot-picker-panel.ts +0 -299
- package/angular/components/item-slot-picker.ts +0 -241
- package/angular/components/slot-menu-list.ts +0 -121
- package/angular/components/slot-menu.ts +0 -304
- package/angular/components/viz-item-menu.ts +0 -118
- package/angular/esm/components/ai-chat-empty-state.d.ts +0 -39
- package/angular/esm/components/ai-chat-empty-state.js +0 -99
- package/angular/esm/components/ai-chat.d.ts +0 -147
- package/angular/esm/components/ai-chat.js +0 -455
- package/angular/esm/components/ai-interaction-textarea.d.ts +0 -106
- package/angular/esm/components/ai-interaction-textarea.js +0 -305
- package/angular/esm/components/data-field-level.d.ts +0 -50
- package/angular/esm/components/data-field-level.js +0 -129
- package/angular/esm/components/data-field-panel.d.ts +0 -86
- package/angular/esm/components/data-field-panel.js +0 -268
- package/angular/esm/components/data-field.d.ts +0 -50
- package/angular/esm/components/data-field.js +0 -129
- package/angular/esm/components/data-fields-select.d.ts +0 -81
- package/angular/esm/components/data-fields-select.js +0 -227
- package/angular/esm/components/dataset-icon.d.ts +0 -34
- package/angular/esm/components/dataset-icon.js +0 -86
- package/angular/esm/components/dataset-selector-list.d.ts +0 -56
- package/angular/esm/components/dataset-selector-list.js +0 -155
- package/angular/esm/components/dataset-selector-row.d.ts +0 -70
- package/angular/esm/components/dataset-selector-row.js +0 -197
- package/angular/esm/components/display-settings-binning.d.ts +0 -37
- package/angular/esm/components/display-settings-binning.js +0 -91
- package/angular/esm/components/display-settings-datetime.d.ts +0 -40
- package/angular/esm/components/display-settings-datetime.js +0 -99
- package/angular/esm/components/display-settings-grand-totals.d.ts +0 -37
- package/angular/esm/components/display-settings-grand-totals.js +0 -91
- package/angular/esm/components/display-settings-numeric.d.ts +0 -45
- package/angular/esm/components/display-settings-numeric.js +0 -115
- package/angular/esm/components/display-settings-period-over-period.d.ts +0 -44
- package/angular/esm/components/display-settings-period-over-period.js +0 -107
- package/angular/esm/components/display-settings.d.ts +0 -83
- package/angular/esm/components/display-settings.js +0 -231
- package/angular/esm/components/filter-expression-picker.d.ts +0 -64
- package/angular/esm/components/filter-expression-picker.js +0 -179
- package/angular/esm/components/filter-item.d.ts +0 -63
- package/angular/esm/components/filter-item.js +0 -187
- package/angular/esm/components/filter-parameter-picker.d.ts +0 -56
- package/angular/esm/components/filter-parameter-picker.js +0 -151
- package/angular/esm/components/filter-value-picker-datetime.d.ts +0 -47
- package/angular/esm/components/filter-value-picker-datetime.js +0 -131
- package/angular/esm/components/filter-value-picker-hierarchy.d.ts +0 -53
- package/angular/esm/components/filter-value-picker-hierarchy.js +0 -155
- package/angular/esm/components/filter-value-picker-numeric.d.ts +0 -53
- package/angular/esm/components/filter-value-picker-numeric.js +0 -155
- package/angular/esm/components/filter-value-picker.d.ts +0 -57
- package/angular/esm/components/filter-value-picker.js +0 -171
- package/angular/esm/components/filters.d.ts +0 -75
- package/angular/esm/components/filters.js +0 -215
- package/angular/esm/components/formula-editor.d.ts +0 -78
- package/angular/esm/components/formula-editor.js +0 -236
- package/angular/esm/components/formula-field.d.ts +0 -70
- package/angular/esm/components/formula-field.js +0 -209
- package/angular/esm/components/formula.d.ts +0 -60
- package/angular/esm/components/formula.js +0 -177
- package/angular/esm/components/interactive-viz-item.d.ts +0 -63
- package/angular/esm/components/interactive-viz-item.js +0 -188
- package/angular/esm/components/item-grid-item-actions-menu.d.ts +0 -45
- package/angular/esm/components/item-grid-item-actions-menu.js +0 -115
- package/angular/esm/components/item-grid.d.ts +0 -80
- package/angular/esm/components/item-grid.js +0 -245
- package/angular/esm/components/item-option-action-button-group.d.ts +0 -41
- package/angular/esm/components/item-option-action-button-group.js +0 -107
- package/angular/esm/components/item-option-color-palette-picker.d.ts +0 -48
- package/angular/esm/components/item-option-color-palette-picker.js +0 -131
- package/angular/esm/components/item-option-color-picker.d.ts +0 -51
- package/angular/esm/components/item-option-color-picker.js +0 -139
- package/angular/esm/components/item-option-color-range.d.ts +0 -66
- package/angular/esm/components/item-option-color-range.js +0 -179
- package/angular/esm/components/item-option-guidelines.d.ts +0 -34
- package/angular/esm/components/item-option-guidelines.js +0 -83
- package/angular/esm/components/item-option-multi-language-field.d.ts +0 -50
- package/angular/esm/components/item-option-multi-language-field.js +0 -139
- package/angular/esm/components/item-option-number-field.d.ts +0 -58
- package/angular/esm/components/item-option-number-field.js +0 -171
- package/angular/esm/components/item-option-panel.d.ts +0 -54
- package/angular/esm/components/item-option-panel.js +0 -155
- package/angular/esm/components/item-option-picker.d.ts +0 -46
- package/angular/esm/components/item-option-picker.js +0 -123
- package/angular/esm/components/item-option-position-picker.d.ts +0 -39
- package/angular/esm/components/item-option-position-picker.js +0 -99
- package/angular/esm/components/item-option-positions-number-field.d.ts +0 -54
- package/angular/esm/components/item-option-positions-number-field.js +0 -147
- package/angular/esm/components/item-option-radio-button-group.d.ts +0 -45
- package/angular/esm/components/item-option-radio-button-group.js +0 -123
- package/angular/esm/components/item-option-slider.d.ts +0 -46
- package/angular/esm/components/item-option-slider.js +0 -131
- package/angular/esm/components/item-option-switch.d.ts +0 -40
- package/angular/esm/components/item-option-switch.js +0 -99
- package/angular/esm/components/item-option-text-field.d.ts +0 -44
- package/angular/esm/components/item-option-text-field.js +0 -115
- package/angular/esm/components/item-option.d.ts +0 -58
- package/angular/esm/components/item-option.js +0 -171
- package/angular/esm/components/item-slot-drop-panel.d.ts +0 -82
- package/angular/esm/components/item-slot-drop-panel.js +0 -249
- package/angular/esm/components/item-slot-drop.d.ts +0 -77
- package/angular/esm/components/item-slot-drop.js +0 -227
- package/angular/esm/components/item-slot-picker-panel.d.ts +0 -97
- package/angular/esm/components/item-slot-picker-panel.js +0 -309
- package/angular/esm/components/item-slot-picker.d.ts +0 -86
- package/angular/esm/components/item-slot-picker.js +0 -259
- package/angular/esm/components/slot-menu-list.d.ts +0 -46
- package/angular/esm/components/slot-menu-list.js +0 -123
- package/angular/esm/components/slot-menu.d.ts +0 -104
- package/angular/esm/components/slot-menu.js +0 -300
- package/angular/esm/components/viz-item-menu.d.ts +0 -42
- package/angular/esm/components/viz-item-menu.js +0 -111
- package/angular/esm/index.d.ts +0 -109
- package/angular/esm/index.js +0 -217
- package/angular/index.ts +0 -223
- package/angular/package.json +0 -40
- package/angular/tsconfig.json +0 -36
- package/angular/type-fallbacks.d.ts +0 -0
- package/angular/utils/ai-prompt/attachments.d.ts +0 -10
- package/angular/utils/ai-prompt/dictation.d.ts +0 -50
- package/angular/utils/ai-prompt/image-upload.d.ts +0 -12
- package/angular/utils/ai-prompt/index.d.ts +0 -6
- package/angular/utils/ai-prompt/tests/dictation.test.d.ts +0 -1
- package/angular/utils/ai-prompt/tests/image-upload.test.d.ts +0 -1
- package/angular/utils/base/base.d.ts +0 -16
- package/angular/utils/base/focus-visible.d.ts +0 -29
- package/angular/utils/base/focusable.d.ts +0 -58
- package/angular/utils/base/index.d.ts +0 -5
- package/angular/utils/base/localized-mixin.d.ts +0 -22
- package/angular/utils/base/sized-mixin.d.ts +0 -17
- package/angular/utils/color/color-palettes.d.ts +0 -17
- package/angular/utils/color/extrapolate-color.d.ts +0 -1
- package/angular/utils/data/load-data-fields-for-datasets.d.ts +0 -22
- package/angular/utils/data-broker/index.d.ts +0 -263
- package/angular/utils/data-field-types/calculate-data-field-icon.d.ts +0 -12
- package/angular/utils/data-field-types/default-acceptable-data-field-types.d.ts +0 -1
- package/angular/utils/data-field-types/tests/calculate-data-field-icon.test.d.ts +0 -1
- package/angular/utils/drag/draggable.d.ts +0 -13
- package/angular/utils/drag/pragmatic-element-adapter.d.ts +0 -2
- package/angular/utils/drag/tests/pragmatic-element-adapter.first-import.test.d.ts +0 -1
- package/angular/utils/drag/tests/pragmatic-element-adapter.test.d.ts +0 -1
- package/angular/utils/filters/expressions.d.ts +0 -15
- package/angular/utils/filters/index.d.ts +0 -1
- package/angular/utils/formatter/calculate-duration.d.ts +0 -2
- package/angular/utils/formatter/decompose-numeric-format.d.ts +0 -11
- package/angular/utils/formatter/default-local-formats.d.ts +0 -20
- package/angular/utils/formatter/formats/cs.d.ts +0 -20
- package/angular/utils/formatter/formats/da.d.ts +0 -20
- package/angular/utils/formatter/formats/de.d.ts +0 -21
- package/angular/utils/formatter/formats/en-GB.d.ts +0 -21
- package/angular/utils/formatter/formats/en-US.d.ts +0 -1
- package/angular/utils/formatter/formats/en.d.ts +0 -1
- package/angular/utils/formatter/formats/es.d.ts +0 -54
- package/angular/utils/formatter/formats/fi.d.ts +0 -20
- package/angular/utils/formatter/formats/fr.d.ts +0 -54
- package/angular/utils/formatter/formats/he.d.ts +0 -20
- package/angular/utils/formatter/formats/hu.d.ts +0 -20
- package/angular/utils/formatter/formats/it.d.ts +0 -54
- package/angular/utils/formatter/formats/ja.d.ts +0 -20
- package/angular/utils/formatter/formats/ko.d.ts +0 -20
- package/angular/utils/formatter/formats/mk.d.ts +0 -20
- package/angular/utils/formatter/formats/nl.d.ts +0 -21
- package/angular/utils/formatter/formats/no.d.ts +0 -21
- package/angular/utils/formatter/formats/pl.d.ts +0 -20
- package/angular/utils/formatter/formats/pt.d.ts +0 -20
- package/angular/utils/formatter/formats/ru.d.ts +0 -20
- package/angular/utils/formatter/formats/sv.d.ts +0 -20
- package/angular/utils/formatter/formats/tr.d.ts +0 -21
- package/angular/utils/formatter/formats/zh-CN.d.ts +0 -20
- package/angular/utils/formatter/formats/zh-TW.d.ts +0 -20
- package/angular/utils/formatter/formatter.d.ts +0 -9
- package/angular/utils/formatter/get-dataset-name.d.ts +0 -2
- package/angular/utils/formatter/get-localized-name.d.ts +0 -4
- package/angular/utils/formatter/localize.d.ts +0 -3
- package/angular/utils/formatter/smart-datetime-formats.const.d.ts +0 -36
- package/angular/utils/formatter/tests/calculate-duration.test.d.ts +0 -1
- package/angular/utils/formatter/tests/decompose-numeric-format.test.d.ts +0 -1
- package/angular/utils/formatter/tests/default-local-formats.test.d.ts +0 -1
- package/angular/utils/formatter/tests/formatter.test.d.ts +0 -1
- package/angular/utils/formatter/tests/get-localized-name.test.d.ts +0 -1
- package/angular/utils/formatter/tests/localize.test.d.ts +0 -1
- package/angular/utils/formula/base/formula-base.d.ts +0 -117
- package/angular/utils/formula/base/formula-input-base.d.ts +0 -62
- package/angular/utils/formula/codemirror/actions.d.ts +0 -47
- package/angular/utils/formula/codemirror/drop-cursor.d.ts +0 -15
- package/angular/utils/formula/codemirror/icon-element.d.ts +0 -7
- package/angular/utils/formula/codemirror/parser.d.ts +0 -16
- package/angular/utils/formula/codemirror/tests/actions.test.d.ts +0 -1
- package/angular/utils/formula/codemirror/theme.d.ts +0 -20
- package/angular/utils/formula/codemirror/widget.d.ts +0 -18
- package/angular/utils/formula/config/aggregations.d.ts +0 -9
- package/angular/utils/formula/config/build-datasets.d.ts +0 -10
- package/angular/utils/formula/config/expression-helpers.d.ts +0 -42
- package/angular/utils/formula/config/functions.d.ts +0 -3
- package/angular/utils/formula/config/groupings.d.ts +0 -9
- package/angular/utils/formula/config/regex.d.ts +0 -39
- package/angular/utils/formula/config/resolve-column-presentation.d.ts +0 -19
- package/angular/utils/formula/config/tests/build-datasets.test.d.ts +0 -1
- package/angular/utils/formula/config/validate-expression.d.ts +0 -19
- package/angular/utils/formula/load-formula-codemirror.d.ts +0 -4
- package/angular/utils/formula/render-explanation-tooltip.d.ts +0 -7
- package/angular/utils/formula/store/formula-display-store.d.ts +0 -93
- package/angular/utils/formula/store/formula-editor-context.d.ts +0 -8
- package/angular/utils/formula/store/formula-editor-store.d.ts +0 -46
- package/angular/utils/formula/store/tests/formula-editor-store.test.d.ts +0 -1
- package/angular/utils/formula/tests/validate-expression.test.d.ts +0 -1
- package/angular/utils/get-css-variable.d.ts +0 -1
- package/angular/utils/index.d.ts +0 -10
- package/angular/utils/localize/set-locale.d.ts +0 -7
- package/angular/utils/map-tile-providers/index.d.ts +0 -93
- package/angular/utils/set-nested-value.d.ts +0 -6
- package/angular/utils/slot-content/ad-hoc-slot-content.d.ts +0 -7
- package/angular/utils/slot-content/render-calculation-label.d.ts +0 -7
- package/angular/utils/slot-content/tests/ad-hoc-slot-content.test.d.ts +0 -1
- package/angular/utils/slot-state/slot-context.d.ts +0 -4
- package/angular/utils/slot-state/slot-store.d.ts +0 -39
- package/angular/utils/store/base-store.d.ts +0 -158
- package/angular/utils/store/dashboard-store.d.ts +0 -49
- package/angular/utils/store/index.d.ts +0 -135
- package/angular/utils/store/item-store.d.ts +0 -33
- package/angular/utils/store/store-registry.d.ts +0 -170
- package/angular/utils/store/tests/dashboard-store.test.d.ts +0 -1
- package/angular/utils/store/tests/item-store.test.d.ts +0 -1
- package/angular/utils/store/tests/store-registry.test.d.ts +0 -1
- package/angular/utils/store/types.d.ts +0 -270
- package/angular/utils/switch-item/index.d.ts +0 -34
- package/angular/utils/switch-item/slot-role-classification.d.ts +0 -31
- package/angular/utils/switch-item/stories/switch-item.stories.d.ts +0 -17
- package/angular/utils/switch-item/tests/slot-role-classification.test.d.ts +0 -1
- package/angular/utils/switch-item/tests/switch-item.test.d.ts +0 -1
- package/angular/utils/tests/set-nested-value.test.d.ts +0 -1
- package/angular/utils/themes/bliss.d.ts +0 -2
- package/angular/utils/themes/classic-dark.d.ts +0 -2
- package/angular/utils/themes/classic.d.ts +0 -2
- package/angular/utils/themes/default-dark.d.ts +0 -2
- package/angular/utils/themes/default.d.ts +0 -2
- package/angular/utils/themes/index.d.ts +0 -4
- package/angular/utils/themes/orion.d.ts +0 -2
- package/angular/utils/themes/pinky.d.ts +0 -2
- package/angular/utils/themes/radiant.d.ts +0 -2
- package/angular/utils/themes/royale.d.ts +0 -2
- package/angular/utils/themes/seasonal.d.ts +0 -2
- package/angular/utils/themes/urban.d.ts +0 -2
- package/angular/utils/themes/vivid.d.ts +0 -2
- package/angular/utils/time/formats.const.d.ts +0 -4
- package/angular/utils/time/period-over-period-condition.const.d.ts +0 -8
- package/angular/utils/time/periods.const.d.ts +0 -15
- package/angular/utils/timezone/datetime-timezone.d.ts +0 -25
- package/angular/utils/timezone/tests/datetime-timezone.test.d.ts +0 -1
- package/angular/utils/transformations/convert-data-field-to-slot-content.d.ts +0 -9
- package/angular/utils/transformations/convert-datasets-to-data-fields.d.ts +0 -30
- package/angular/utils/transformations/tests/convert-data-field-to-slot-content.test.d.ts +0 -1
- package/angular/utils/transformations/tests/convert-datasets-to-data-fields.test.d.ts +0 -1
- package/angular/utils/types/tests/type-check.test.d.ts +0 -1
- package/angular/utils/types/type-check.d.ts +0 -28
- package/components/ad-hoc-slot-content-hSlT62VS.js +0 -29
- package/components/ai-chat/ai-chat-events.d.ts +0 -139
- package/components/ai-chat/ai-chat-request.d.ts +0 -25
- package/components/ai-chat/ai-chat.d.ts +0 -347
- package/components/ai-chat/ai-prompt-types.d.ts +0 -133
- package/components/ai-chat/empty-state/ai-chat-empty-state.d.ts +0 -46
- package/components/ai-chat/empty-state/index.d.ts +0 -8
- package/components/ai-chat/empty-state/types.d.ts +0 -14
- package/components/ai-chat/helpers/agent-config.d.ts +0 -12
- package/components/ai-chat/helpers/elicitation-template.d.ts +0 -18
- package/components/ai-chat/index.cjs +0 -20
- package/components/ai-chat/index.d.ts +0 -24
- package/components/ai-chat/index.js +0 -29
- package/components/ai-chat/session/ai-chat-session-controller.d.ts +0 -60
- package/components/ai-chat/session/ai-chat-session-types.d.ts +0 -119
- package/components/ai-chat/session/ai-chat-session.d.ts +0 -119
- package/components/ai-chat/session/index.d.ts +0 -2
- package/components/ai-chat/stream/chunk-extractors.d.ts +0 -29
- package/components/ai-chat/stream/index.d.ts +0 -53
- package/components/ai-chat/stream/progress.d.ts +0 -3
- package/components/ai-chat/stream/registry.d.ts +0 -6
- package/components/ai-chat/stream/stream-processor.d.ts +0 -2
- package/components/ai-chat/stream/transport.d.ts +0 -26
- package/components/ai-chat/stream/types.d.ts +0 -59
- package/components/ai-chat/types.d.ts +0 -24
- package/components/ai-chat-CG-eIiBr.cjs +0 -337
- package/components/ai-chat-CMc_9Oo2.js +0 -4350
- package/components/ai-interaction-textarea/ai-interaction-textarea.d.ts +0 -232
- package/components/ai-interaction-textarea/index.cjs +0 -20
- package/components/ai-interaction-textarea/index.d.ts +0 -10
- package/components/ai-interaction-textarea/index.js +0 -28
- package/components/ai-interaction-textarea/types.d.ts +0 -12
- package/components/ai-interaction-textarea-B6tZgh5k.cjs +0 -99
- package/components/ai-interaction-textarea-D9g9G0T1.js +0 -820
- package/components/base-D6QPZnpu.cjs +0 -20
- package/components/convert-data-field-to-slot-content-C6IIqU7G.js +0 -53
- package/components/convert-data-field-to-slot-content-DLzkk6dT.cjs +0 -20
- package/components/convert-datasets-to-data-fields-B13rl1an.cjs +0 -20
- package/components/convert-datasets-to-data-fields-PmQzeVLG.js +0 -68
- package/components/data-field-9ZZFw68C.cjs +0 -54
- package/components/data-field-D1WW_V0N.js +0 -121
- package/components/data-field-level/data-field-level.d.ts +0 -40
- package/components/data-field-level/helpers/generate-preview.d.ts +0 -9
- package/components/data-field-level/index.cjs +0 -20
- package/components/data-field-level/index.d.ts +0 -8
- package/components/data-field-level/index.js +0 -28
- package/components/data-field-level-Dc-EMhC3.cjs +0 -55
- package/components/data-field-panel-DFA97_8o.cjs +0 -87
- package/components/data-fields-select/data-fields-select.d.ts +0 -133
- package/components/data-fields-select/index.cjs +0 -20
- package/components/data-fields-select/index.d.ts +0 -9
- package/components/data-fields-select/index.js +0 -28
- package/components/data-fields-select/types.d.ts +0 -4
- package/components/data-fields-select-BtXNFZy9.cjs +0 -41
- package/components/dataset-icon/dataset-icon.d.ts +0 -45
- package/components/dataset-icon/index.cjs +0 -20
- package/components/dataset-icon/index.d.ts +0 -8
- package/components/dataset-icon/index.js +0 -28
- package/components/dataset-icon/types.d.ts +0 -11
- package/components/dataset-icon-BAV0S4sZ.cjs +0 -64
- package/components/dataset-icon-CWT5Ju8w.js +0 -125
- package/components/dataset-selector-list/dataset-selector-list.d.ts +0 -106
- package/components/dataset-selector-list/index.cjs +0 -20
- package/components/dataset-selector-list/index.d.ts +0 -8
- package/components/dataset-selector-list/index.js +0 -28
- package/components/dataset-selector-list-BXg6DIKI.cjs +0 -75
- package/components/dataset-selector-list-q6qWA7B-.js +0 -323
- package/components/dataset-selector-row/dataset-selector-row.d.ts +0 -135
- package/components/dataset-selector-row/index.cjs +0 -20
- package/components/dataset-selector-row/index.d.ts +0 -9
- package/components/dataset-selector-row/index.js +0 -28
- package/components/dataset-selector-row-ZKET7lVc.js +0 -427
- package/components/dataset-selector-row-bqwY3zaf.cjs +0 -102
- package/components/decompose-numeric-format-DGJua3rU.cjs +0 -20
- package/components/decompose-numeric-format-DS0j2wa1.js +0 -36
- package/components/decorate-DCJt-2rt.cjs +0 -20
- package/components/display-settings/display-settings.d.ts +0 -117
- package/components/display-settings/index.cjs +0 -20
- package/components/display-settings/index.d.ts +0 -8
- package/components/display-settings/index.js +0 -28
- package/components/display-settings/types.d.ts +0 -9
- package/components/display-settings-BlMhlvVS.cjs +0 -140
- package/components/display-settings-D_wBgzm1.js +0 -313
- package/components/display-settings-binning/display-settings-binning.d.ts +0 -32
- package/components/display-settings-binning/index.cjs +0 -20
- package/components/display-settings-binning/index.d.ts +0 -8
- package/components/display-settings-binning/index.js +0 -28
- package/components/display-settings-datetime/display-settings-datetime.d.ts +0 -86
- package/components/display-settings-datetime/index.cjs +0 -20
- package/components/display-settings-datetime/index.d.ts +0 -8
- package/components/display-settings-datetime/index.js +0 -28
- package/components/display-settings-datetime-DNeLEl3L.cjs +0 -217
- package/components/display-settings-grand-totals/display-settings-grand-totals.d.ts +0 -29
- package/components/display-settings-grand-totals/index.cjs +0 -20
- package/components/display-settings-grand-totals/index.d.ts +0 -8
- package/components/display-settings-grand-totals/index.js +0 -28
- package/components/display-settings-grand-totals-C-7s1Tyo.cjs +0 -44
- package/components/display-settings-numeric/display-settings-numeric.d.ts +0 -82
- package/components/display-settings-numeric/helpers/constants.d.ts +0 -19
- package/components/display-settings-numeric/index.cjs +0 -20
- package/components/display-settings-numeric/index.d.ts +0 -8
- package/components/display-settings-numeric/index.js +0 -28
- package/components/display-settings-numeric--uwJWzC1.cjs +0 -190
- package/components/display-settings-period-over-period/display-settings-period-over-period.d.ts +0 -68
- package/components/display-settings-period-over-period/helpers/constants.d.ts +0 -44
- package/components/display-settings-period-over-period/index.cjs +0 -20
- package/components/display-settings-period-over-period/index.d.ts +0 -8
- package/components/display-settings-period-over-period/index.js +0 -28
- package/components/display-settings-period-over-period-C4X8c-_R.cjs +0 -229
- package/components/filter-expression-picker/filter-expression-picker.d.ts +0 -73
- package/components/filter-expression-picker/index.cjs +0 -20
- package/components/filter-expression-picker/index.d.ts +0 -7
- package/components/filter-expression-picker/index.js +0 -28
- package/components/filter-expression-picker-BOLyxG2r.cjs +0 -38
- package/components/filter-expression-picker-DurfSgRY.js +0 -425
- package/components/filter-item/filter-item.d.ts +0 -103
- package/components/filter-item/index.cjs +0 -20
- package/components/filter-item/index.d.ts +0 -7
- package/components/filter-item/index.js +0 -28
- package/components/filter-item-C58zIpPh.js +0 -316
- package/components/filter-item-obyHcs9f.cjs +0 -71
- package/components/filter-parameter-picker/filter-parameter-picker.d.ts +0 -87
- package/components/filter-parameter-picker/filter-parameter-picker.helpers.d.ts +0 -8
- package/components/filter-parameter-picker/index.cjs +0 -20
- package/components/filter-parameter-picker/index.d.ts +0 -9
- package/components/filter-parameter-picker/index.js +0 -28
- package/components/filter-parameter-picker/types.d.ts +0 -4
- package/components/filter-parameter-picker-BWNBc8BI.js +0 -363
- package/components/filter-parameter-picker-DSYaE9Sv.cjs +0 -123
- package/components/filter-value-picker/filter-value-picker.d.ts +0 -66
- package/components/filter-value-picker/index.cjs +0 -20
- package/components/filter-value-picker/index.d.ts +0 -7
- package/components/filter-value-picker/index.js +0 -28
- package/components/filter-value-picker-DYl_1pis.cjs +0 -60
- package/components/filter-value-picker-datetime/filter-value-picker-datetime.d.ts +0 -45
- package/components/filter-value-picker-datetime/index.cjs +0 -20
- package/components/filter-value-picker-datetime/index.d.ts +0 -7
- package/components/filter-value-picker-datetime/index.js +0 -28
- package/components/filter-value-picker-datetime-BFbmCKs3.cjs +0 -42
- package/components/filter-value-picker-datetime-CP5__ua6.js +0 -139
- package/components/filter-value-picker-hierarchy/filter-value-picker-hierarchy.d.ts +0 -99
- package/components/filter-value-picker-hierarchy/index.cjs +0 -20
- package/components/filter-value-picker-hierarchy/index.d.ts +0 -7
- package/components/filter-value-picker-hierarchy/index.js +0 -28
- package/components/filter-value-picker-hierarchy-BTf992WX.cjs +0 -48
- package/components/filter-value-picker-hierarchy-j0LRYW1c.js +0 -299
- package/components/filter-value-picker-kzIrnmdp.js +0 -151
- package/components/filter-value-picker-numeric/filter-value-picker-numeric.d.ts +0 -83
- package/components/filter-value-picker-numeric/index.cjs +0 -20
- package/components/filter-value-picker-numeric/index.d.ts +0 -7
- package/components/filter-value-picker-numeric/index.js +0 -28
- package/components/filter-value-picker-numeric-BmKmeOol.js +0 -219
- package/components/filter-value-picker-numeric-DJi0Utk_.cjs +0 -48
- package/components/filters-BddhKRZC.js +0 -745
- package/components/filters-Dx6g0xl9.cjs +0 -153
- package/components/formatter-BeXmurVe.cjs +0 -20
- package/components/formula-cc2AaiLt.cjs +0 -45
- package/components/formula-codemirror/formula-codemirror.d.ts +0 -79
- package/components/formula-codemirror/index.d.ts +0 -7
- package/components/formula-codemirror/pills/formula-aggregation/formula-aggregation.d.ts +0 -125
- package/components/formula-codemirror/pills/formula-aggregation/index.d.ts +0 -7
- package/components/formula-codemirror/pills/formula-empty-argument-pill/formula-empty-argument-pill.d.ts +0 -28
- package/components/formula-codemirror/pills/formula-empty-argument-pill/index.d.ts +0 -7
- package/components/formula-codemirror/pills/formula-include-exclude-panel.d.ts +0 -38
- package/components/formula-codemirror-EMK3MCNZ.cjs +0 -215
- package/components/formula-display-store-DER7C0GG.cjs +0 -20
- package/components/formula-draggable-field/formula-draggable-field.d.ts +0 -53
- package/components/formula-draggable-field/index.d.ts +0 -8
- package/components/formula-draggable-field/types.d.ts +0 -24
- package/components/formula-editor-CWKXcUTF.cjs +0 -224
- package/components/formula-field/formula-field.d.ts +0 -20
- package/components/formula-field/index.cjs +0 -20
- package/components/formula-field/index.d.ts +0 -7
- package/components/formula-field/index.js +0 -28
- package/components/formula-field-BtvaOWki.js +0 -40
- package/components/formula-field-CzS2pKJI.cjs +0 -20
- package/components/formula-input-base-CvD0b2cO.cjs +0 -49
- package/components/formula-input-base-DVtGLoyA.js +0 -236
- package/components/get-dataset-name-D53TN7N9.js +0 -32
- package/components/get-dataset-name-DYLdbEs-.cjs +0 -20
- package/components/groupings-Bn9384Zw.cjs +0 -20
- package/components/groupings-BtmmUlPK.js +0 -52
- package/components/interactive-viz-item/helpers/chart-helpers.d.ts +0 -7
- package/components/interactive-viz-item/index.cjs +0 -20
- package/components/interactive-viz-item/index.d.ts +0 -10
- package/components/interactive-viz-item/index.js +0 -28
- package/components/interactive-viz-item/interactive-viz-item.d.ts +0 -96
- package/components/interactive-viz-item/types.d.ts +0 -117
- package/components/interactive-viz-item-DL5aqkvx.js +0 -693
- package/components/interactive-viz-item-DTr14-9-.cjs +0 -247
- package/components/item-menu/item-list/item-list.d.ts +0 -37
- package/components/item-option-action-button-group-Byg9h7uo.cjs +0 -53
- package/components/item-option-base/item-option-base.d.ts +0 -23
- package/components/item-option-base-Dwf3dByS.cjs +0 -56
- package/components/item-option-color-palette-picker-v6TBE-I0.cjs +0 -40
- package/components/item-option-color-range-BveD6fsp.cjs +0 -98
- package/components/item-option-guidelines-D8UjylMx.cjs +0 -135
- package/components/item-option-h8URFjZ2.cjs +0 -269
- package/components/item-option-position-picker-CKgaqFJR.cjs +0 -32
- package/components/item-option-positions-number-field-BJXer0y5.cjs +0 -49
- package/components/item-option-slider-CBSnkHVq.cjs +0 -33
- package/components/item-slot-drop-f8jm-34W.cjs +0 -91
- package/components/item-slot-drop-panel-DLqyYvKj.cjs +0 -57
- package/components/item-slot-picker-CgEtqhqe.cjs +0 -174
- package/components/item-slot-picker-panel-CuH3OcmV.cjs +0 -81
- package/components/load-data-fields-for-datasets-B3XcFFfg.js +0 -42
- package/components/load-data-fields-for-datasets-rL24A68g.cjs +0 -20
- package/components/localized-mixin-CtNoCjjI.cjs +0 -20
- package/components/localized-mixin-DBUkUh0o.js +0 -45
- package/components/period-over-period-condition.const-BZ7j5Z5t.js +0 -29
- package/components/period-over-period-condition.const-C1NZ9Bkp.cjs +0 -20
- package/components/slot-menu/index.cjs +0 -20
- package/components/slot-menu/index.d.ts +0 -10
- package/components/slot-menu/index.js +0 -28
- package/components/slot-menu/slot-menu.d.ts +0 -148
- package/components/slot-menu/types.d.ts +0 -24
- package/components/slot-menu-CPxyyKSe.cjs +0 -71
- package/components/slot-menu-DHJtAZ5_.js +0 -429
- package/components/slot-menu-list/index.cjs +0 -20
- package/components/slot-menu-list/index.d.ts +0 -8
- package/components/slot-menu-list/index.js +0 -28
- package/components/slot-menu-list/slot-menu-list.d.ts +0 -47
- package/components/slot-menu-list-CeWcE4KK.cjs +0 -44
- package/components/slot-menu-list-QltpaoWh.js +0 -347
- package/components/slot-role-classification-2wChhpcq.cjs +0 -20
- package/components/slot-role-classification-B8bkGhQ_.js +0 -133
- package/components/slots-config-Cd4xAG4H.cjs +0 -20
- package/components/slots-config-D3ivNWtC.js +0 -76
- package/components/utils-BwJNkc-z.cjs +0 -20
- package/components/viz-item-menu/index.cjs +0 -20
- package/components/viz-item-menu/index.d.ts +0 -8
- package/components/viz-item-menu/index.js +0 -28
- package/components/viz-item-menu/types.d.ts +0 -9
- package/components/viz-item-menu/viz-item-menu.d.ts +0 -75
- package/components/viz-item-menu-Ht6bklNL.js +0 -170
- package/components/viz-item-menu-XHh4qhtn.cjs +0 -55
- package/deprecated-react/components/ai-chat.component.cjs +0 -1
- package/deprecated-react/components/ai-interaction-textarea.component.cjs +0 -1
- package/deprecated-react/components/data-field-level.component.cjs +0 -1
- package/deprecated-react/components/data-fields-select.component.cjs +0 -1
- package/deprecated-react/components/dataset-icon.component.cjs +0 -1
- package/deprecated-react/components/dataset-selector-list.component.cjs +0 -1
- package/deprecated-react/components/dataset-selector-row.component.cjs +0 -1
- package/deprecated-react/components/display-settings-binning.component.cjs +0 -1
- package/deprecated-react/components/display-settings-datetime.component.cjs +0 -1
- package/deprecated-react/components/display-settings-grand-totals.component.cjs +0 -1
- package/deprecated-react/components/display-settings-numeric.component.cjs +0 -1
- package/deprecated-react/components/display-settings-period-over-period.component.cjs +0 -1
- package/deprecated-react/components/display-settings.component.cjs +0 -1
- package/deprecated-react/components/filter-expression-picker.component.cjs +0 -1
- package/deprecated-react/components/filter-item.component.cjs +0 -1
- package/deprecated-react/components/filter-parameter-picker.component.cjs +0 -1
- package/deprecated-react/components/filter-value-picker-datetime.component.cjs +0 -1
- package/deprecated-react/components/filter-value-picker-hierarchy.component.cjs +0 -1
- package/deprecated-react/components/filter-value-picker-numeric.component.cjs +0 -1
- package/deprecated-react/components/filter-value-picker.component.cjs +0 -1
- package/deprecated-react/components/formula-field.component.cjs +0 -1
- package/deprecated-react/components/interactive-viz-item.component.cjs +0 -1
- package/deprecated-react/components/slot-menu-list.component.cjs +0 -1
- package/deprecated-react/components/slot-menu.component.cjs +0 -1
- package/deprecated-react/components/viz-item-menu.component.cjs +0 -1
- package/react/components/ai-chat.component.ts +0 -45
- package/react/components/ai-interaction-textarea.component.ts +0 -30
- package/react/components/data-field-level.component.ts +0 -30
- package/react/components/data-fields-select.component.ts +0 -27
- package/react/components/dataset-icon.component.ts +0 -22
- package/react/components/dataset-selector-list.component.ts +0 -27
- package/react/components/dataset-selector-row.component.ts +0 -36
- package/react/components/display-settings-binning.component.ts +0 -27
- package/react/components/display-settings-datetime.component.ts +0 -27
- package/react/components/display-settings-grand-totals.component.ts +0 -27
- package/react/components/display-settings-numeric.component.ts +0 -27
- package/react/components/display-settings-period-over-period.component.ts +0 -27
- package/react/components/display-settings.component.ts +0 -33
- package/react/components/filter-expression-picker.component.ts +0 -27
- package/react/components/filter-item.component.ts +0 -27
- package/react/components/filter-parameter-picker.component.ts +0 -33
- package/react/components/filter-value-picker-datetime.component.ts +0 -27
- package/react/components/filter-value-picker-hierarchy.component.ts +0 -27
- package/react/components/filter-value-picker-numeric.component.ts +0 -27
- package/react/components/filter-value-picker.component.ts +0 -27
- package/react/components/formula-field.component.ts +0 -30
- package/react/components/interactive-viz-item.component.ts +0 -33
- package/react/components/slot-menu-list.component.ts +0 -27
- package/react/components/slot-menu.component.ts +0 -42
- package/react/components/viz-item-menu.component.ts +0 -33
- package/react/esm/components/ai-chat.component.d.ts +0 -24
- package/react/esm/components/ai-chat.component.js +0 -29
- package/react/esm/components/ai-interaction-textarea.component.d.ts +0 -14
- package/react/esm/components/ai-interaction-textarea.component.js +0 -19
- package/react/esm/components/data-field-level.component.d.ts +0 -14
- package/react/esm/components/data-field-level.component.js +0 -19
- package/react/esm/components/data-fields-select.component.d.ts +0 -12
- package/react/esm/components/data-fields-select.component.js +0 -17
- package/react/esm/components/dataset-icon.component.d.ts +0 -8
- package/react/esm/components/dataset-icon.component.js +0 -13
- package/react/esm/components/dataset-selector-list.component.d.ts +0 -12
- package/react/esm/components/dataset-selector-list.component.js +0 -17
- package/react/esm/components/dataset-selector-row.component.d.ts +0 -18
- package/react/esm/components/dataset-selector-row.component.js +0 -23
- package/react/esm/components/display-settings-binning.component.d.ts +0 -12
- package/react/esm/components/display-settings-binning.component.js +0 -17
- package/react/esm/components/display-settings-datetime.component.d.ts +0 -12
- package/react/esm/components/display-settings-datetime.component.js +0 -17
- package/react/esm/components/display-settings-grand-totals.component.d.ts +0 -12
- package/react/esm/components/display-settings-grand-totals.component.js +0 -17
- package/react/esm/components/display-settings-numeric.component.d.ts +0 -12
- package/react/esm/components/display-settings-numeric.component.js +0 -17
- package/react/esm/components/display-settings-period-over-period.component.d.ts +0 -12
- package/react/esm/components/display-settings-period-over-period.component.js +0 -17
- package/react/esm/components/display-settings.component.d.ts +0 -16
- package/react/esm/components/display-settings.component.js +0 -21
- package/react/esm/components/filter-expression-picker.component.d.ts +0 -12
- package/react/esm/components/filter-expression-picker.component.js +0 -17
- package/react/esm/components/filter-item.component.d.ts +0 -12
- package/react/esm/components/filter-item.component.js +0 -17
- package/react/esm/components/filter-parameter-picker.component.d.ts +0 -16
- package/react/esm/components/filter-parameter-picker.component.js +0 -21
- package/react/esm/components/filter-value-picker-datetime.component.d.ts +0 -12
- package/react/esm/components/filter-value-picker-datetime.component.js +0 -17
- package/react/esm/components/filter-value-picker-hierarchy.component.d.ts +0 -12
- package/react/esm/components/filter-value-picker-hierarchy.component.js +0 -17
- package/react/esm/components/filter-value-picker-numeric.component.d.ts +0 -12
- package/react/esm/components/filter-value-picker-numeric.component.js +0 -17
- package/react/esm/components/filter-value-picker.component.d.ts +0 -12
- package/react/esm/components/filter-value-picker.component.js +0 -17
- package/react/esm/components/formula-field.component.d.ts +0 -14
- package/react/esm/components/formula-field.component.js +0 -19
- package/react/esm/components/interactive-viz-item.component.d.ts +0 -16
- package/react/esm/components/interactive-viz-item.component.js +0 -21
- package/react/esm/components/slot-menu-list.component.d.ts +0 -12
- package/react/esm/components/slot-menu-list.component.js +0 -17
- package/react/esm/components/slot-menu.component.d.ts +0 -22
- package/react/esm/components/slot-menu.component.js +0 -27
- package/react/esm/components/viz-item-menu.component.d.ts +0 -16
- package/react/esm/components/viz-item-menu.component.js +0 -21
- package/storybook/inject-global-vars.d.ts +0 -1
- package/storybook/register-components.d.ts +0 -57
- package/types/agent.types.d.ts +0 -4
- package/types/ai-chat.types.d.ts +0 -104
- package/types/data-field-events.types.d.ts +0 -7
- /package/{angular/utils/ai-prompt/tests/attachments.test.d.ts → utils/slot-state/tests/slot-store.test.d.ts} +0 -0
|
@@ -1,153 +0,0 @@
|
|
|
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-CtNoCjjI.cjs"),n=require("./v4-Dyp-SQ1c.cjs");require("./filter-item-obyHcs9f.cjs");let r=require("@luzmo/icons");require("@luzmo/lucero/button"),require("@luzmo/lucero/icon");let i=require("lit"),a=require("lit/decorators.js"),o=require("@lit/localize");require("@luzmo/lucero/action-button");let s=require("lit/directives/repeat.js"),c=require("@luzmo/lucero/utils");var l=20,u=class extends Error{constructor(e){super(e),this.name=`FilterUnrepresentableError`}},d=new Set([`and`,`or`]),f=[`datasetId`,`dataset_id`,`columnId`,`column_id`,`formulaId`,`formula_id`,`formula`,`columnExpression`,`value`,`ignoredItemIds`];function p(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function m(e){return!p(e)||e.condition!==void 0&&(typeof e.condition!=`string`||!d.has(e.condition.toLowerCase()))?!1:`filters`in e||`subGroups`in e}function h(e){return p(e)&&`expression`in e&&!(`condition`in e)}function g(e){return f.some(t=>t in e)}function ee(e,t=!1){let n=[e.columnId!==void 0||e.column_id!==void 0,e.formulaId!==void 0||e.formula_id!==void 0,e.formula!==void 0].filter(Boolean).length;return n===1?!0:n>1?!1:e.columnExpression!==void 0||t&&e.expression!==void 0}function _(e){return!h(e)||typeof e.expression!=`string`||e.expression.length===0||`parameters`in e||typeof e.datasetId!=`string`&&typeof e.dataset_id!=`string`?!1:ee(e)}function v(e){return!h(e)||!Array.isArray(e.parameters)?!1:!g(e)}function te(e){if(!(`parameters`in e))return;let t=f.find(t=>t in e);if(t!==void 0)throw new u(`Filter leaf mixes "parameters" with the clean inline key "${t}".`)}function ne(e){throw typeof e.expression!=`string`||e.expression.length===0?new u(`Clean filter leaf is missing a non-empty "expression".`):typeof e.datasetId!=`string`&&typeof e.dataset_id!=`string`?new u(`Clean filter leaf "${e.expression}" is missing a "datasetId".`):new u(`Clean filter leaf "${e.expression}" must name exactly one of "columnId", "formulaId", "formula", or "columnExpression".`)}function y(e){return e===`where`||e===`having`}function b(e){if(e>20)throw new u(`Filter nesting exceeds the maximum depth of 20.`)}function re(e){if(e==null)return`empty`;if(!Array.isArray(e))return`unknown`;if(e.length===0)return`empty`;let t=!1,n=!1,r=!1,i=(e,a)=>{if(a>20){r=!0;return}if(m(e)){y(e.clause)&&(n=!0);let t=[...Array.isArray(e.filters)?e.filters:[],...Array.isArray(e.subGroups)?e.subGroups:[]];for(let e of t)i(e,a+1);return}if(h(e)){`parameters`in e&&g(e)?r=!0:_(e)?n=!0:v(e)?t=!0:r=!0;return}r=!0};for(let t of e)i(t,1);return r?`unknown`:n&&t?`mixed`:n?`clean`:t?`canonical`:`empty`}var x=new Set([`? is null`,`? is not null`]),S=new Set([`? = ?`,`? != ?`,`? < ?`,`? <= ?`,`? > ?`,`? >= ?`]),ie=new Set([`? in ?`,`? not in ?`,`? between ?`]),C={"array[numeric]":`numeric[]`,"array[hierarchy]":`hierarchy[]`,"array[datetime]":`datetime[]`},ae=new Set([`level`,`lowestLevel`,`unnest`,`discretization`,`aggregation`,`index`,`include_nonoccurring`,`simplification`]);function w(e,t){return e!==`lowestLevel`&&!(t===null&&ae.has(e))}function T(e){return structuredClone(e)}function E(e){let t=e.datasetId??e.dataset_id;if(typeof t!=`string`||t.length===0)throw new u(`Filter reference is missing a "datasetId".`);return t}function D(e){return p(e)?typeof e.columnId==`string`||typeof e.column_id==`string`||typeof e.formulaId==`string`||typeof e.formula_id==`string`||typeof e.formula==`string`||(typeof e.datasetId==`string`||typeof e.dataset_id==`string`)&&(e.columnExpression!==void 0||e.expression!==void 0):!1}function O(e){let t={type:e.type};return e.bins!==void 0&&(t.bins=e.bins),Array.isArray(e.over)&&(t.over=e.over.map(e=>F(e))),t}function k(e){let t={type:e.type},n=e.datasetId??e.dataset_id,r=e.columnId??e.column_id;return n!==void 0&&(t.datasetId=n),r!==void 0&&(t.columnId=r),e.level!==void 0&&w(`level`,e.level)&&(t.level=e.level),p(e.discretization)&&(t.discretization=O(e.discretization)),e.unnest!==void 0&&w(`unnest`,e.unnest)&&(t.unnest=e.unnest),t}function A(e){let t={type:e.type};return e.bins!==void 0&&(t.bins=e.bins),Array.isArray(e.over)&&(t.over=e.over.map(e=>p(e)?P(e):e)),t}function j(e){let t={type:e.type},n=e.datasetId??e.dataset_id,r=e.columnId??e.column_id;return n!==void 0&&(t.datasetId=n),r!==void 0&&(t.columnId=r),e.level!==void 0&&(t.level=e.level),p(e.discretization)&&(t.discretization=A(e.discretization)),e.unnest!==void 0&&(t.unnest=e.unnest),t}function M(e,t){e.level!==void 0&&(t.level=T(e.level)),p(e.discretization)&&(t.discretization=A(e.discretization)),p(e.aggregation)&&(t.aggregation=j(e.aggregation)),e.unnest!==void 0&&(t.unnest=T(e.unnest))}function N(e,t){let n=e.columnId??e.column_id;if(n!==void 0)return{kind:`columnId`,value:n};let r=e.formulaId??e.formula_id;if(r!==void 0)return{kind:`formulaId`,value:r};if(e.formula!==void 0)return{kind:`formula`,value:e.formula};let i=e.columnExpression??(t?e.expression:void 0);if(i!==void 0)return{kind:`expression`,value:i}}function P(e,t=!0){let n={datasetId:E(e)},r=N(e,t);return r!==void 0&&(r.kind===`expression`?n.expression=r.value:n[r.kind]=r.value),M(e,n),n}function F(e){if(!p(e))throw new u(`Cannot emit a clean filter reference.`);let t={datasetId:E(e)};e.level!==void 0&&w(`level`,e.level)&&(t.level=e.level),p(e.discretization)&&(t.discretization=O(e.discretization)),p(e.aggregation)&&(t.aggregation=k(e.aggregation)),e.unnest!==void 0&&w(`unnest`,e.unnest)&&(t.unnest=e.unnest);let n=N(e,!0);if(n===void 0)throw new u(`Cannot emit a clean filter reference: no column, formula, or expression.`);return n.kind===`expression`?t.columnExpression=n.value:t[n.kind]=n.value,t}function oe(e){if(!p(e)||typeof e.parameter!=`string`||typeof e.type!=`string`)return e;let t=C[e.type];return t===void 0?e:{...e,type:t}}function se(e,t){return p(t)&&typeof t.parameter==`string`?!0:Array.isArray(t)?e!==`? between ?`||t.length===2:!1}function ce(e,t){let n=e.expression,r=[P(e,!1)];if(!x.has(n)&&e.value!==void 0){let t=S.has(n)&&D(e.value);r.push(t?P(e.value):T(e.value))}let i={};typeof e.id==`string`&&(i.id=e.id),`ignoredItemIds`in e&&(i.ignore=T(e.ignoredItemIds)),t!==void 0&&(i.type=t);let a={expression:n,parameters:r};return Object.keys(i).length>0&&(a.properties=i),a}function le(e){let{expression:t}=e;if(typeof t!=`string`||t.length===0)return null;let n=Array.isArray(e.parameters)?e.parameters:[];if(!p(n[0]))throw new u(`Cannot emit a clean filter reference for "${t}".`);let r={...F(n[0]),expression:t};if(!x.has(t)){let e=n[1];if(e===void 0)throw new u(`Filter "${t}" is missing its value operand.`);if(r.value=D(e)&&S.has(t)?F(e):oe(T(e)),ie.has(t)&&!se(t,r.value))throw new u(`Cannot emit an invalid clean filter value for "${t}".`)}let{properties:i}=e;return i?.id!==void 0&&(r.id=i.id),i!==void 0&&`ignore`in i&&(r.ignoredItemIds=T(i.ignore)),r}function I(e){return m(e)}function L(e){return Array.isArray(e.filters)?e.filters:[]}function R(e,t){return e.properties?.type===`having`||e.properties?.type===`where`?e.properties.type:t??`where`}function z(e,t,n=1,r=new Set){b(n);let i=e.clause??t;for(let t of L(e))I(t)?z(t,i,n+1,r):typeof t.expression==`string`&&t.expression.length>0&&r.add(R(t,i));return r}function B(e,t,n=1){b(n);let r=e.clause??t;if(e.condition===`or`&&z(e,r,n).size>1)throw new u(`An "or" group mixes "where" and "having" filters, which clean output cannot represent.`);for(let t of L(e))I(t)&&B(t,r,n+1)}function V(e,t,n,r=1){b(r);let i=e.clause??n,a=[];for(let n of L(e)){if(I(n)){let e=V(n,t,i,r+1);e.filters.length>0&&a.push(e);continue}if(R(n,i)!==t)continue;let e=le(n);e&&a.push(e)}let o={condition:e.condition===`or`?`or`:`and`,filters:a};return e.id!==void 0&&z(e,i,r).size<=1&&(o.id=e.id),o}function H(e){let t=e.clause;B(e,t);let n=z(e,t);return n.size===0&&n.add(t??`where`),[`where`,`having`].filter(e=>n.has(e)).map(n=>({...V(e,n,t),clause:n})).filter(e=>e.filters.length>0)}var U=[`origin`,`datasetId`,`vizId`,`itemId`,`isDrilldown`,`type`];function W(e){return typeof e==`string`&&e.toLowerCase()===`or`?`or`:`and`}function ue(e){return m(e)}function de(e){if(!Array.isArray(e)||e.length===0)return[];let t=p(e[0])?e[0]:void 0,n=e.length>1?e[1]:void 0;return e.length>1?[t,n]:[t]}function fe(e){if(typeof e.expression!=`string`||e.expression.length===0)return null;let t={expression:e.expression,parameters:de(e.parameters)};return e.properties!==void 0&&Object.keys(e.properties).length>0&&(t.properties=structuredClone(e.properties)),t}function G(e,t){let n=e,r=t;for(let e of U)n[e]!==void 0&&(r[e]=n[e])}function K(e){if(!e||!e.filters)return{condition:`and`,filters:[],subGroups:[]};let t=[],n=[];for(let r of e.filters)if(ue(r))n.push(K(r));else{let e=fe(r);e&&t.push(e)}let r={condition:W(e.condition),filters:t,subGroups:n};return e.id!==void 0&&(r.id=e.id),G(e,r),r}function q(e,t){return e?t?.format===`clean`?H(e):[K(e)]:[]}function pe(e,t){let n={expression:typeof e.expression==`string`?e.expression:void 0,parameters:Array.isArray(e.parameters)?[...e.parameters]:[]},r=p(e.properties)?structuredClone(e.properties):{};return t!==void 0&&r.type===void 0&&(r.type=t),Object.keys(r).length>0&&(n.properties=r),n}function J(e,t,n){if(m(e))return Y(e,t,n);if(!p(e))return;let r=e.expression;if(te(e),_(e))return ce(e,t);if(g(e)&&ne(e),v(e))return pe(e,t);throw new u(`Filter leaf "${String(r)}" matches neither a complete clean nor a complete canonical encoding.`)}function Y(e,t,n){b(n);let r=y(e.clause)?e.clause:void 0,i=r??t,a=[];for(let t of Array.isArray(e.filters)?e.filters:[]){let e=J(t,i,n+1);e!==void 0&&a.push(e)}for(let t of Array.isArray(e.subGroups)?e.subGroups:[])m(t)&&a.push(Y(t,i,n+1));let o={condition:W(e.condition),filters:a};return typeof e.id==`string`&&(o.id=e.id),r!==void 0&&(o.clause=r),G(e,o),o}function X(e){return!e||e.length===0?[]:e.filter(e=>m(e)).map(e=>Y(e,void 0,1))}var me=`:host{font-family:var(--luzmo-filters-font-family,var(--luzmo-font-family));color:var(--luzmo-filters-font-color,var(--luzmo-font-color));max-width:100%;display:block;container-type:inline-size}.filter-group-container{max-width:100%;padding:calc(var(--luzmo-indicator-gap) + 2 * var(--luzmo-indicator-width));overflow-x:hidden}.filter-group{flex-direction:row;min-width:0;max-width:100%;display:flex}.filter-group.nested{margin-top:var(--luzmo-filters-nested-group-margin-top,var(--filters-nested-group-margin-top));margin-bottom:var(--luzmo-filters-nested-group-margin-bottom,var(--filters-nested-group-margin-bottom))}.group-content{flex-direction:column;flex:1;min-width:0;display:flex}.filters-list{gap:var(--luzmo-filters-filters-list-gap,var(--filters-filters-list-gap));flex-direction:column;min-width:0;max-width:100%;display:flex}.filter-item-wrapper{align-items:flex-start;min-width:0;max-width:100%;display:flex;position:relative}.filter-item-content{align-items:flex-start;gap:var(--luzmo-filters-filter-line-gap,var(--filters-filter-line-gap));flex-wrap:nowrap;flex:1;min-width:0;display:flex}.filter-item-content luzmo-filter-item{flex:1;min-width:0}.filter-item-content .delete-filter-button{flex-shrink:0;align-self:flex-end;margin-inline-start:auto}.condition-wrapper{flex:0 0 var(--luzmo-filters-condition-warpper-width,var(--filters-condition-warpper-width));justify-content:center;align-items:center;display:flex;position:relative}.condition-wrapper:before{content:"";left:50%;top:var(--luzmo-filters-vertical-line-top,var(--filters-vertical-line-top));bottom:var(--luzmo-filters-vertical-line-bottom,var(--filters-vertical-line-bottom));width:var(--luzmo-filters-vertical-line-width,var(--filters-vertical-line-width));background:var(--luzmo-filters-vertical-line-color,var(--luzmo-border-color));position:absolute}.condition-badge{min-width:auto;padding-inline:var(--luzmo-filters-condition-padding-horizontal,var(--filters-condition-padding-horizontal));text-transform:uppercase;background:var(--luzmo-filters-condition-badge-background,var(--luzmo-primary));color:var(--luzmo-filters-condition-badge-color,var(--luzmo-primary-inverse-color));border-radius:var(--luzmo-filters-condition-badge-border-radius,var(--luzmo-border-radius));box-shadow:0 0 0 var(--luzmo-filters-condition-badge-halo,var(--filters-condition-badge-halo)) var(--luzmo-filters-condition-badge-background,var(--luzmo-background-color));font-weight:700}.condition-badge:hover{background:var(--luzmo-filters-condition-badge-background-hover,var(--luzmo-primary-hover))}.group-actions{margin-top:var(--luzmo-filters-group-actions-margin-top,var(--filters-group-actions-margin-top));gap:var(--luzmo-filters-group-actions-gap,var(--filters-group-actions-gap));flex-wrap:wrap;display:flex}.delete-group-button{margin-left:auto}.add-root-group-container{margin-top:var(--luzmo-filters-add-root-group-container-margin-top,var(--filters-add-root-group-container-margin-top));padding-left:0}.add-subgroup-button,.add-filter-button{--luzmo-action-button-text-to-visual:var(--luzmo-filters-group-actions-text-to-visual,var(--filters-group-actions-text-to-visual));--luzmo-action-button-content-color-default:var(--luzmo-filters-group-actions-color,var(--luzmo-primary-hover));--luzmo-action-button-content-color-hover:var(--luzmo-filters-group-actions-color-hover,var(--luzmo-primary-hover));--luzmo-action-button-content-color-down:var(--luzmo-filters-group-actions-color-down,var(--luzmo-primary-down));--luzmo-action-button-content-color-focus:var(--luzmo-filters-group-actions-color-focus,var(--luzmo-primary-focus))}.add-group-button{--luzmo-button-padding-label-to-icon:var(--luzmo-filters-add-group-button-text-to-visual,var(--filters-add-group-button-text-to-visual))}.dataset-ids-empty-message{color:var(--luzmo-filters-error-message-color,var(--luzmo-disabled-color));font-size:var(--luzmo-filters-error-message-font-size,var(--filters-font-size))}@container (width<=480px){.condition-badge{--luzmo-action-button-font-size:.6875rem;--luzmo-action-button-height:1.2rem;--luzmo-button-line-height:1.2rem;font-size:.6875rem;line-height:1.2rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-90deg)}:host([dir=rtl]) .condition-badge{transform:translate(-50%,-50%)rotate(90deg)}}:host{--filters-condition-warpper-width:56px;--filters-condition-padding-horizontal:var(--luzmo-spacing-2);--filters-condition-badge-halo:var(--luzmo-spacing-3);--filters-filters-list-gap:var(--luzmo-spacing-3);--filters-nested-group-margin-top:var(--luzmo-spacing-3);--filters-nested-group-margin-bottom:var(--luzmo-spacing-3);--filters-vertical-line-top:var(--luzmo-spacing-2);--filters-vertical-line-bottom:var(--luzmo-spacing-2);--filters-vertical-line-width:1px;--filters-group-actions-text-to-visual:var(--luzmo-spacing-2);--filters-add-group-button-text-to-visual:var(--luzmo-spacing-3);--filters-group-actions-gap:var(--luzmo-spacing-3);--filters-add-root-group-container-margin-top:var(--luzmo-spacing-4);--filters-filter-line-gap:var(--luzmo-spacing-3);--filters-group-actions-margin-top:var(--luzmo-spacing-3);--filters-error-message-font-size:var(--luzmo-font-size)}:host([size=s]){--filters-condition-warpper-width:48px;--filters-condition-padding-horizontal:var(--luzmo-spacing-2);--filters-condition-badge-halo:var(--luzmo-spacing-2);--filters-filters-list-gap:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--filters-nested-group-margin-top:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--filters-nested-group-margin-bottom:calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1));--filters-vertical-line-top:var(--luzmo-spacing-2);--filters-vertical-line-bottom:var(--luzmo-spacing-2);--filters-group-actions-text-to-visual:var(--luzmo-spacing-1);--filters-add-group-button-text-to-visual:var(--luzmo-spacing-2);--filters-group-actions-gap:var(--luzmo-spacing-2);--filters-add-root-group-container-margin-top:var(--luzmo-spacing-3);--filters-filter-line-gap:var(--luzmo-spacing-2);--filters-group-actions-margin-top:var(--luzmo-spacing-2);--filters-error-message-font-size:var(--luzmo-font-size-s)}:host([size=l]){--filters-condition-warpper-width:64px;--filters-condition-padding-horizontal:var(--luzmo-spacing-3);--filters-condition-badge-halo:var(--luzmo-spacing-4);--filters-filters-list-gap:var(--luzmo-spacing-4);--filters-nested-group-margin-top:var(--luzmo-spacing-4);--filters-nested-group-margin-bottom:var(--luzmo-spacing-4);--filters-vertical-line-top:var(--luzmo-spacing-3);--filters-vertical-line-bottom:var(--luzmo-spacing-3);--filters-group-actions-text-to-visual:var(--luzmo-spacing-2);--filters-add-group-button-text-to-visual:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--filters-group-actions-gap:var(--luzmo-spacing-3);--filters-add-root-group-container-margin-top:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--filters-filter-line-gap:var(--luzmo-spacing-3);--filters-group-actions-margin-top:var(--luzmo-spacing-3);--filters-error-message-font-size:var(--luzmo-font-size-l)}:host([size=xl]){--filters-condition-warpper-width:72px;--filters-condition-padding-horizontal:var(--luzmo-spacing-3);--filters-condition-badge-halo:var(--luzmo-spacing-4);--filters-filters-list-gap:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--filters-nested-group-margin-top:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--filters-nested-group-margin-bottom:calc(var(--luzmo-spacing-4) + var(--luzmo-spacing-1));--filters-vertical-line-top:var(--luzmo-spacing-3);--filters-vertical-line-bottom:var(--luzmo-spacing-3);--filters-group-actions-text-to-visual:calc(var(--luzmo-spacing-3) + var(--luzmo-spacing-1));--filters-add-group-button-text-to-visual:var(--luzmo-spacing-4);--filters-group-actions-gap:var(--luzmo-spacing-4);--filters-add-root-group-container-margin-top:var(--luzmo-spacing-5);--filters-filter-line-gap:var(--luzmo-spacing-4);--filters-group-actions-margin-top:var(--luzmo-spacing-4);--filters-error-message-font-size:var(--luzmo-font-size-xl)}@container (width<=480px){.filter-group-container{--filters-condition-warpper-width:32px;--filters-condition-padding-horizontal:var(--luzmo-spacing-2);--filters-condition-badge-halo:var(--luzmo-spacing-2);--filters-filters-list-gap:var(--luzmo-spacing-5)}}`;function Z(e){if(e instanceof u)return e;throw e}var he={and:()=>(0,o.msg)(`AND`,{desc:`Logical AND condition for combining filters`}),or:()=>(0,o.msg)(`OR`,{desc:`Logical OR condition for combining filters`})};function Q(e){return e===`and`?`or`:`and`}var $=class extends t.t((0,c.SizedMixin)(c.LuzmoElement,{validSizes:Object.values(c.ElementSizes)})){constructor(...e){super(...e),this.apiUrl=`https://api.luzmo.com`,this.contentLanguage=`en`,this.filters=[],this.format=`canonical`,this.allowParameters=!1,this.parameters=[],this.debounce=300,this._internalFilterGroup=null,this._hasSyntheticRoot=!1,this._debounceTimeout=null}static get styles(){return[(0,i.unsafeCSS)(me)]}get _oneSizeSmaller(){return{xxs:`xxs`,xs:`xs`,s:`xs`,m:`s`,l:`m`,xl:`l`,xxl:`xl`}[this.size]||`s`}get _isDatasetIdsEmpty(){return!this.datasetIds||this.datasetIds.length===0}disconnectedCallback(){super.disconnectedCallback(),this._debounceTimeout&&=(clearTimeout(this._debounceTimeout),null)}willUpdate(e){if(super.willUpdate(e),e.has(`filters`))try{let e=X(this.filters);e.length===0?(this._internalFilterGroup=null,this._hasSyntheticRoot=!1):e.length===1?(this._internalFilterGroup=structuredClone(e[0]),this._hasSyntheticRoot=!1):(this._internalFilterGroup={condition:`and`,filters:structuredClone(e)},this._hasSyntheticRoot=!0)}catch(t){console.warn(`[${this.localName}] Keeping the current filters, the new value cannot be normalized:`,Z(t)),this.filters=e.get(`filters`)??[]}}_generateEmptyGroup(){return{id:n.t(),condition:`and`,filters:[]}}_generateEmptyFilter(){return{expression:void 0,parameters:[],properties:{id:n.t()}}}_rootGroupsForExport(){if(!this._internalFilterGroup)return[];let e=this._internalFilterGroup.filters.length>0&&this._internalFilterGroup.filters.every(e=>this._isGroup(e));return this._hasSyntheticRoot&&e?structuredClone(this._internalFilterGroup.filters):[structuredClone(this._internalFilterGroup)]}_getFiltersForExport(){let e=this._rootGroupsForExport(),t=this.format===`clean`?`clean`:`canonical`;if(e.length===0)return{filters:[],format:t};if(t===`clean`)try{return{filters:e.flatMap(e=>q(e,{format:`clean`})),format:`clean`}}catch(e){console.warn(`[${this.localName}] Cannot emit clean filters, falling back to canonical output:`,Z(e))}return{filters:e.flatMap(e=>q(e)),format:`canonical`}}_sendChangeEvent(){this._debounceTimeout&&clearTimeout(this._debounceTimeout);let e=()=>{this.dispatchEvent(new CustomEvent(`luzmo-filters-changed`,{bubbles:!0,composed:!0,cancelable:!0,detail:this._getFiltersForExport()}))};this.debounce>0?this._debounceTimeout=setTimeout(e,this.debounce):e()}_isGroup(e){return`condition`in e&&`filters`in e}_handleParameterCreated(e){let t=e.detail?.parameter;!t||this.parameters.some(({parameter:e})=>e===t.parameter)||(this.parameters=[...this.parameters,t])}_toggleCondition(e){e.condition=Q(e.condition),e===this._internalFilterGroup&&(this._hasSyntheticRoot=!1),this.requestUpdate(),this._sendChangeEvent()}_addFilter(e){if(this._isDatasetIdsEmpty)return;let t=e;t||=(this._internalFilterGroup||=this._generateEmptyGroup(),this._internalFilterGroup),t.filters.push(this._generateEmptyFilter()),this.requestUpdate(),this._sendChangeEvent()}_addSubGroup(e){if(this._isDatasetIdsEmpty)return;let t=this._generateEmptyGroup();t.condition=Q(e.condition),t.filters.push(this._generateEmptyFilter()),e.filters.push(t),this.requestUpdate(),this._sendChangeEvent()}_removeFilter(e,t){if(this._internalFilterGroup){if(e.filters.splice(t,1),e!==this._internalFilterGroup&&e.filters.length===0){let t=this._findParentGroup(this._internalFilterGroup,e);if(t){let n=t.filters.indexOf(e);n!==-1&&t.filters.splice(n,1)}}this._collapseGroupsAfterDelete(),this.requestUpdate(),this._sendChangeEvent()}}_updateFilter(e,t,n){n.stopPropagation(),this._isGroup(e.filters[t])||(e.filters[t]=n.detail.filter,this._sendChangeEvent())}_addGroup(){if(this._isDatasetIdsEmpty)return;this._internalFilterGroup||=this._generateEmptyGroup();let e=this._generateEmptyGroup();e.condition=Q(this._internalFilterGroup.condition),e.filters.push(this._internalFilterGroup);let t=this._generateEmptyGroup();t.condition=Q(e.condition),t.filters.push(this._generateEmptyFilter()),e.filters.push(t),this._internalFilterGroup=e,this._hasSyntheticRoot=!1,this.requestUpdate(),this._sendChangeEvent()}_renderFilterItem(e,t,n){return i.html`
|
|
21
|
-
<div class="filter-item-wrapper">
|
|
22
|
-
<div class="filter-item-content">
|
|
23
|
-
<luzmo-filter-item
|
|
24
|
-
.apiUrl=${this.apiUrl}
|
|
25
|
-
.authKey=${this.authKey}
|
|
26
|
-
.authToken=${this.authToken}
|
|
27
|
-
.cacheTime=${this.cacheTime}
|
|
28
|
-
.language=${this.language}
|
|
29
|
-
.contentLanguage=${this.contentLanguage}
|
|
30
|
-
.timeZone=${this.timeZone}
|
|
31
|
-
.datasetIds=${this.datasetIds}
|
|
32
|
-
.filter=${e}
|
|
33
|
-
.allowParameters=${this.allowParameters}
|
|
34
|
-
.parameters=${this.parameters}
|
|
35
|
-
.size=${this.size}
|
|
36
|
-
@luzmo-filter-changed=${this._updateFilter.bind(this,t,n)}
|
|
37
|
-
@luzmo-parameter-created=${this._handleParameterCreated}
|
|
38
|
-
></luzmo-filter-item>
|
|
39
|
-
<luzmo-action-button
|
|
40
|
-
class="delete-filter-button"
|
|
41
|
-
.size=${this.size}
|
|
42
|
-
quiet
|
|
43
|
-
.label=${(0,o.msg)(`Remove filter`,{desc:`Aria label for remove filter button`})}
|
|
44
|
-
@click=${this._removeFilter.bind(this,t,n)}
|
|
45
|
-
>
|
|
46
|
-
<luzmo-icon slot="icon" .icon=${r.luzmoTrashOutline} .size=${this.size}></luzmo-icon>
|
|
47
|
-
</luzmo-action-button>
|
|
48
|
-
</div>
|
|
49
|
-
</div>
|
|
50
|
-
`}_renderGroup(e,t=!1){let n=e.filters.length>0,a=e.filters.length>1,c=he[e.condition]?.()??e.condition;return i.html`
|
|
51
|
-
<div class="filter-group ${t?`nested`:``}" role="group">
|
|
52
|
-
${t?i.html`
|
|
53
|
-
<div class="condition-wrapper">
|
|
54
|
-
${a?i.html`
|
|
55
|
-
<luzmo-action-button
|
|
56
|
-
class="condition-badge"
|
|
57
|
-
.size=${this._oneSizeSmaller}
|
|
58
|
-
quiet
|
|
59
|
-
aria-pressed=${e.condition===`and`?`true`:`false`}
|
|
60
|
-
.label=${(0,o.msg)(`Toggle filter condition, currently `,{desc:`Aria label prefix for filter condition toggle`})+c}
|
|
61
|
-
@click=${this._toggleCondition.bind(this,e)}
|
|
62
|
-
>
|
|
63
|
-
${c}
|
|
64
|
-
</luzmo-action-button>
|
|
65
|
-
`:``}
|
|
66
|
-
</div>
|
|
67
|
-
`:a?i.html`
|
|
68
|
-
<div class="condition-wrapper">
|
|
69
|
-
<luzmo-action-button
|
|
70
|
-
class="condition-badge"
|
|
71
|
-
.size=${this._oneSizeSmaller}
|
|
72
|
-
quiet
|
|
73
|
-
aria-pressed=${e.condition===`and`?`true`:`false`}
|
|
74
|
-
.label=${(0,o.msg)(`Toggle filter condition, currently `,{desc:`Aria label prefix for filter condition toggle`})+c}
|
|
75
|
-
@click=${this._toggleCondition.bind(this,e)}
|
|
76
|
-
>
|
|
77
|
-
${c}
|
|
78
|
-
</luzmo-action-button>
|
|
79
|
-
</div>
|
|
80
|
-
`:``}
|
|
81
|
-
<div class="group-content">
|
|
82
|
-
${n?i.html`
|
|
83
|
-
<div class="filters-list">
|
|
84
|
-
${(0,s.repeat)(e.filters,(e,t)=>t,(t,n)=>i.html`
|
|
85
|
-
${this._isGroup(t)?this._renderGroup(t,!0):this._renderFilterItem(t,e,n)}
|
|
86
|
-
`)}
|
|
87
|
-
</div>
|
|
88
|
-
`:``}
|
|
89
|
-
|
|
90
|
-
<div class="group-actions">
|
|
91
|
-
<luzmo-action-button
|
|
92
|
-
class="add-filter-button"
|
|
93
|
-
.size=${this.size}
|
|
94
|
-
quiet
|
|
95
|
-
?disabled=${this._isDatasetIdsEmpty}
|
|
96
|
-
@click=${this._addFilter.bind(this,e)}
|
|
97
|
-
>
|
|
98
|
-
<luzmo-icon slot="icon" .icon=${r.luzmoPlus} .size=${this._oneSizeSmaller}></luzmo-icon>
|
|
99
|
-
${(0,o.msg)(`Filter`,{desc:`Add filter button label`})}
|
|
100
|
-
</luzmo-action-button>
|
|
101
|
-
|
|
102
|
-
<luzmo-action-button
|
|
103
|
-
class="add-subgroup-button"
|
|
104
|
-
.size=${this.size}
|
|
105
|
-
quiet
|
|
106
|
-
?disabled=${this._isDatasetIdsEmpty}
|
|
107
|
-
@click=${this._addSubGroup.bind(this,e)}
|
|
108
|
-
>
|
|
109
|
-
<luzmo-icon slot="icon" .icon=${r.luzmoPlus} .size=${this._oneSizeSmaller}></luzmo-icon>
|
|
110
|
-
${(0,o.msg)(`Subgroup`,{desc:`Add subgroup button label`})}
|
|
111
|
-
</luzmo-action-button>
|
|
112
|
-
</div>
|
|
113
|
-
</div>
|
|
114
|
-
</div>
|
|
115
|
-
`}_findParentGroup(e,t){for(let n of e.filters){if(n===t)return e;if(this._isGroup(n)){let e=this._findParentGroup(n,t);if(e)return e}}return null}_collapseIfNeeded(e){if(e.filters.length===1&&this._isGroup(e.filters[0])){let t=e.filters[0];e.condition=t.condition,e.filters=t.filters,e.id=t.id,e.clause=t.clause,e.origin=t.origin,e.datasetId=t.datasetId,e.vizId=t.vizId,e.itemId=t.itemId,e.isDrilldown=t.isDrilldown,e.type=t.type,e===this._internalFilterGroup&&(this._hasSyntheticRoot=!1)}}_collapseGroupsAfterDelete(){if(!this._internalFilterGroup)return;let e=t=>{for(let n of t.filters)this._isGroup(n)&&e(n);this._collapseIfNeeded(t)};e(this._internalFilterGroup)}render(){if(this._isDatasetIdsEmpty)return i.html`
|
|
116
|
-
<div class="filter-group-container">
|
|
117
|
-
<div class="dataset-ids-empty-message" role="status">
|
|
118
|
-
${(0,o.msg)(`Cannot retrieve dataset data fields`,{desc:`Error message when datasetIds is empty`})}
|
|
119
|
-
</div>
|
|
120
|
-
</div>
|
|
121
|
-
`;if(!this._internalFilterGroup||this._internalFilterGroup.filters.length===0)return i.html`
|
|
122
|
-
<div class="filter-group-container">
|
|
123
|
-
<luzmo-button
|
|
124
|
-
class="add-filter-button"
|
|
125
|
-
.size=${this.size}
|
|
126
|
-
treatment="outline"
|
|
127
|
-
?disabled=${this._isDatasetIdsEmpty}
|
|
128
|
-
@click=${()=>this._addFilter()}
|
|
129
|
-
>
|
|
130
|
-
<luzmo-icon slot="icon" .icon=${r.luzmoPlus} .size=${this._oneSizeSmaller}></luzmo-icon>
|
|
131
|
-
${(0,o.msg)(`Add filter`,{desc:`Add filter button label`})}
|
|
132
|
-
</luzmo-button>
|
|
133
|
-
</div>
|
|
134
|
-
`;let e=this._internalFilterGroup.filters.length>1;return i.html`
|
|
135
|
-
<div class="filter-group-container">
|
|
136
|
-
${this._renderGroup(this._internalFilterGroup)}
|
|
137
|
-
|
|
138
|
-
${e?i.html`
|
|
139
|
-
<div class="add-root-group-container">
|
|
140
|
-
<luzmo-button
|
|
141
|
-
class="add-group-button"
|
|
142
|
-
.size=${this.size}
|
|
143
|
-
treatment="outline"
|
|
144
|
-
?disabled=${this._isDatasetIdsEmpty}
|
|
145
|
-
@click=${this._addGroup}
|
|
146
|
-
>
|
|
147
|
-
<luzmo-icon slot="icon" .icon=${r.luzmoPlus} .size=${this._oneSizeSmaller}></luzmo-icon>
|
|
148
|
-
${(0,o.msg)(`Group`,{desc:`Add group button label`})}
|
|
149
|
-
</luzmo-button>
|
|
150
|
-
</div>
|
|
151
|
-
`:``}
|
|
152
|
-
</div>
|
|
153
|
-
`}};e.t([(0,a.property)({type:String,attribute:`api-url`,reflect:!0})],$.prototype,`apiUrl`,void 0),e.t([(0,a.property)({type:String,attribute:`auth-key`,reflect:!0})],$.prototype,`authKey`,void 0),e.t([(0,a.property)({type:String,attribute:`auth-token`,reflect:!0})],$.prototype,`authToken`,void 0),e.t([(0,a.property)({type:Number,attribute:`cache-time`,reflect:!0})],$.prototype,`cacheTime`,void 0),e.t([(0,a.property)({type:String,attribute:`content-language`,reflect:!0})],$.prototype,`contentLanguage`,void 0),e.t([(0,a.property)({type:String,attribute:`time-zone`,reflect:!0})],$.prototype,`timeZone`,void 0),e.t([(0,a.property)({type:Array,attribute:`dataset-ids`,reflect:!0})],$.prototype,`datasetIds`,void 0),e.t([(0,a.property)({type:Array,reflect:!1})],$.prototype,`filters`,void 0),e.t([(0,a.property)({type:String,reflect:!0})],$.prototype,`format`,void 0),e.t([(0,a.property)({type:Boolean,attribute:`allow-parameters`,reflect:!0})],$.prototype,`allowParameters`,void 0),e.t([(0,a.property)({attribute:!1})],$.prototype,`parameters`,void 0),e.t([(0,a.property)({type:Number,reflect:!0})],$.prototype,`debounce`,void 0),e.t([(0,a.state)()],$.prototype,`_internalFilterGroup`,void 0),$=e.t([(0,o.localized)()],$),customElements.get(`luzmo-filters`)||customElements.define(`luzmo-filters`,$),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return l}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return re}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return $}});
|
|
@@ -1,20 +0,0 @@
|
|
|
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("./type-check-BehV9ZL1.cjs"),t=require("./localize-D3i4Epy_.cjs"),n=require("./decompose-numeric-format-DGJua3rU.cjs");function r(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString(`en`).replace(/,/g,``):e.toString(10)}function i(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf(`e`),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function a(e){return e=i(Math.abs(e)),e?e[1]:NaN}function o(e,t){return function(n,r){for(var i=n.length,a=[],o=0,s=e[0],c=0;i>0&&s>0&&(c+s+1>r&&(s=Math.max(1,r-c)),a.push(n.substring(i-=s,i+s)),!((c+=s+1)>r));)s=e[o=(o+1)%e.length];return a.reverse().join(t)}}function s(e){return function(t){return t.replace(/[0-9]/g,function(t){return e[+t]})}}var c=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function l(e){if(!(t=c.exec(e)))throw Error(`invalid format: `+e);var t;return new u({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}l.prototype=u.prototype;function u(e){this.fill=e.fill===void 0?` `:e.fill+``,this.align=e.align===void 0?`>`:e.align+``,this.sign=e.sign===void 0?`-`:e.sign+``,this.symbol=e.symbol===void 0?``:e.symbol+``,this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?``:e.type+``}u.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?`0`:``)+(this.width===void 0?``:Math.max(1,this.width|0))+(this.comma?`,`:``)+(this.precision===void 0?``:`.`+Math.max(0,this.precision|0))+(this.trim?`~`:``)+this.type};function d(e){out:for(var t=e.length,n=1,r=-1,i;n<t;++n)switch(e[n]){case`.`:r=i=n;break;case`0`:r===0&&(r=n),i=n;break;default:if(!+e[n])break out;r>0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(i+1):e}var f;function p(e,t){var n=i(e,t);if(!n)return f=void 0,e.toPrecision(t);var r=n[0],a=n[1],o=a-(f=Math.max(-8,Math.min(8,Math.floor(a/3)))*3)+1,s=r.length;return o===s?r:o>s?r+Array(o-s+1).join(`0`):o>0?r.slice(0,o)+`.`+r.slice(o):`0.`+Array(1-o).join(`0`)+i(e,Math.max(0,t+o-1))[0]}function m(e,t){var n=i(e,t);if(!n)return e+``;var r=n[0],a=n[1];return a<0?`0.`+Array(-a).join(`0`)+r:r.length>a+1?r.slice(0,a+1)+`.`+r.slice(a+1):r+Array(a-r.length+2).join(`0`)}var h={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+``,d:r,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>m(e*100,t),r:m,s:p,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function g(e){return e}var _=Array.prototype.map,v=[`y`,`z`,`a`,`f`,`p`,`n`,`µ`,`m`,``,`k`,`M`,`G`,`T`,`P`,`E`,`Z`,`Y`];function y(e){var t=e.grouping===void 0||e.thousands===void 0?g:o(_.call(e.grouping,Number),e.thousands+``),n=e.currency===void 0?``:e.currency[0]+``,r=e.currency===void 0?``:e.currency[1]+``,i=e.decimal===void 0?`.`:e.decimal+``,c=e.numerals===void 0?g:s(_.call(e.numerals,String)),u=e.percent===void 0?`%`:e.percent+``,p=e.minus===void 0?`−`:e.minus+``,m=e.nan===void 0?`NaN`:e.nan+``;function y(e,a){e=l(e);var o=e.fill,s=e.align,g=e.sign,_=e.symbol,y=e.zero,b=e.width,x=e.comma,S=e.precision,C=e.trim,w=e.type;w===`n`?(x=!0,w=`g`):h[w]||(S===void 0&&(S=12),C=!0,w=`g`),(y||o===`0`&&s===`=`)&&(y=!0,o=`0`,s=`=`);var T=(a&&a.prefix!==void 0?a.prefix:``)+(_===`$`?n:_===`#`&&/[boxX]/.test(w)?`0`+w.toLowerCase():``),E=(_===`$`?r:/[%p]/.test(w)?u:``)+(a&&a.suffix!==void 0?a.suffix:``),D=h[w],O=/[defgprs%]/.test(w);S=S===void 0?6:/[gprs]/.test(w)?Math.max(1,Math.min(21,S)):Math.max(0,Math.min(20,S));function k(e){var n=T,r=E,a,l,u;if(w===`c`)r=D(e)+r,e=``;else{e=+e;var h=e<0||1/e<0;if(e=isNaN(e)?m:D(Math.abs(e),S),C&&(e=d(e)),h&&+e==0&&g!==`+`&&(h=!1),n=(h?g===`(`?g:p:g===`-`||g===`(`?``:g)+n,r=(w===`s`&&!isNaN(e)&&f!==void 0?v[8+f/3]:``)+r+(h&&g===`(`?`)`:``),O){for(a=-1,l=e.length;++a<l;)if(u=e.charCodeAt(a),48>u||u>57){r=(u===46?i+e.slice(a+1):e.slice(a))+r,e=e.slice(0,a);break}}}x&&!y&&(e=t(e,1/0));var _=n.length+e.length+r.length,k=_<b?Array(b-_+1).join(o):``;switch(x&&y&&(e=t(k+e,k.length?b-r.length:1/0),k=``),s){case`<`:e=n+e+r+k;break;case`=`:e=n+k+e+r;break;case`^`:e=k.slice(0,_=k.length>>1)+n+e+r+k.slice(_);break;default:e=k+n+e+r;break}return c(e)}return k.toString=function(){return e+``},k}function b(e,t){var n=Math.max(-8,Math.min(8,Math.floor(a(t)/3)))*3,r=10**-n,i=y((e=l(e),e.type=`f`,e),{suffix:v[8+n/3]});return function(e){return i(r*e)}}return{format:y,formatPrefix:b}}var b=new Date,x=new Date;function S(e,t,n,r){function i(t){return e(t=arguments.length===0?new Date:new Date(+t)),t}return i.floor=t=>(e(t=new Date(+t)),t),i.ceil=n=>(e(n=new Date(n-1)),t(n,1),e(n),n),i.round=e=>{let t=i(e),n=i.ceil(e);return e-t<n-e?t:n},i.offset=(e,n)=>(t(e=new Date(+e),n==null?1:Math.floor(n)),e),i.range=(n,r,a)=>{let o=[];if(n=i.ceil(n),a=a==null?1:Math.floor(a),!(n<r)||!(a>0))return o;let s;do o.push(s=new Date(+n)),t(n,a),e(n);while(s<n&&n<r);return o},i.filter=n=>S(t=>{if(t>=t)for(;e(t),!n(t);)t.setTime(t-1)},(e,r)=>{if(e>=e)if(r<0)for(;++r<=0;)for(;t(e,-1),!n(e););else for(;--r>=0;)for(;t(e,1),!n(e););}),n&&(i.count=(t,r)=>(b.setTime(+t),x.setTime(+r),e(b),e(x),Math.floor(n(b,x))),i.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?i.filter(r?t=>r(t)%e===0:t=>i.count(0,t)%e===0):i)),i}var C=1e3,w=C*60,T=w*60,E=T*24,D=E*7;E*30,E*365;var O=S(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*C)},(e,t)=>(t-e)/C,e=>e.getUTCSeconds());O.range;var k=S(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*C)},(e,t)=>{e.setTime(+e+t*w)},(e,t)=>(t-e)/w,e=>e.getMinutes());k.range,S(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*w)},(e,t)=>(t-e)/w,e=>e.getUTCMinutes()).range;var A=S(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*C-e.getMinutes()*w)},(e,t)=>{e.setTime(+e+t*T)},(e,t)=>(t-e)/T,e=>e.getHours());A.range,S(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*T)},(e,t)=>(t-e)/T,e=>e.getUTCHours()).range;var j=S(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*w)/E,e=>e.getDate()-1);j.range;var M=S(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/E,e=>e.getUTCDate()-1);M.range,S(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/E,e=>Math.floor(e/E)).range;function N(e){return S(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(e,t)=>{e.setDate(e.getDate()+t*7)},(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*w)/D)}var P=N(0),F=N(1),ee=N(2),te=N(3),I=N(4),ne=N(5),re=N(6);P.range,F.range,ee.range,te.range,I.range,ne.range,re.range;function L(e){return S(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t*7)},(e,t)=>(t-e)/D)}var R=L(0),z=L(1),ie=L(2),ae=L(3),B=L(4),oe=L(5),se=L(6);R.range,z.range,ie.range,ae.range,B.range,oe.range,se.range;var ce=S(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());ce.range,S(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth()).range;var V=S(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());V.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:S(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)}),V.range;var H=S(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());H.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:S(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)}),H.range;function U(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function W(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function G(e,t,n){return{y:e,m:t,d:n,H:0,M:0,S:0,L:0}}function K(e){var t=e.dateTime,n=e.date,r=e.time,i=e.periods,a=e.days,o=e.shortDays,s=e.months,c=e.shortMonths,l=Y(i),u=X(i),d=Y(a),f=X(a),p=Y(o),m=X(o),h=Y(s),g=X(s),_=Y(c),v=X(c),y={a:ee,A:te,b:I,B:ne,c:null,d:Ne,e:Ne,f:Re,g:Ye,G:Ze,H:Pe,I:Fe,j:Ie,L:Le,m:ze,M:Be,p:re,q:L,Q:bt,s:xt,S:Ve,u:He,U:Ue,V:Ge,w:Ke,W:qe,x:null,X:null,y:Je,Y:Xe,Z:Qe,"%":yt},b={a:R,A:ie,b:ae,B,c:null,d:$e,e:$e,f:it,g:ht,G:_t,H:et,I:tt,j:nt,L:rt,m:at,M:ot,p:oe,q:se,Q:bt,s:xt,S:st,u:ct,U:lt,V:dt,w:ft,W:pt,x:null,X:null,y:mt,Y:gt,Z:vt,"%":yt},x={a:E,A:D,b:O,B:k,c:A,d:Ce,e:Ce,f:ke,g:ye,G:ve,H:Te,I:Te,j:we,L:Oe,m:Se,M:Ee,p:T,q:xe,Q:je,s:Me,S:De,u:me,U:he,V:ge,w:pe,W:_e,x:N,X:P,y:ye,Y:ve,Z:be,"%":Ae};y.x=S(n,y),y.X=S(r,y),y.c=S(t,y),b.x=S(n,b),b.X=S(r,b),b.c=S(t,b);function S(e,t){return function(n){var r=[],i=-1,a=0,o=e.length,s,c,l;for(n instanceof Date||(n=new Date(+n));++i<o;)e.charCodeAt(i)===37&&(r.push(e.slice(a,i)),(c=le[s=e.charAt(++i)])==null?c=s===`e`?` `:`0`:s=e.charAt(++i),(l=t[s])&&(s=l(n,c)),r.push(s),a=i+1);return r.push(e.slice(a,i)),r.join(``)}}function C(e,t){return function(n){var r=G(1900,void 0,1),i=w(r,e,n+=``,0),a,o;if(i!=n.length)return null;if(`Q`in r)return new Date(r.Q);if(`s`in r)return new Date(r.s*1e3+(`L`in r?r.L:0));if(t&&!(`Z`in r)&&(r.Z=0),`p`in r&&(r.H=r.H%12+r.p*12),r.m===void 0&&(r.m=`q`in r?r.q:0),`V`in r){if(r.V<1||r.V>53)return null;`w`in r||(r.w=1),`Z`in r?(a=W(G(r.y,0,1)),o=a.getUTCDay(),a=o>4||o===0?z.ceil(a):z(a),a=M.offset(a,(r.V-1)*7),r.y=a.getUTCFullYear(),r.m=a.getUTCMonth(),r.d=a.getUTCDate()+(r.w+6)%7):(a=U(G(r.y,0,1)),o=a.getDay(),a=o>4||o===0?F.ceil(a):F(a),a=j.offset(a,(r.V-1)*7),r.y=a.getFullYear(),r.m=a.getMonth(),r.d=a.getDate()+(r.w+6)%7)}else(`W`in r||`U`in r)&&(`w`in r||(r.w=`u`in r?r.u%7:+(`W`in r)),o=`Z`in r?W(G(r.y,0,1)).getUTCDay():U(G(r.y,0,1)).getDay(),r.m=0,r.d=`W`in r?(r.w+6)%7+r.W*7-(o+5)%7:r.w+r.U*7-(o+6)%7);return`Z`in r?(r.H+=r.Z/100|0,r.M+=r.Z%100,W(r)):U(r)}}function w(e,t,n,r){for(var i=0,a=t.length,o=n.length,s,c;i<a;){if(r>=o)return-1;if(s=t.charCodeAt(i++),s===37){if(s=t.charAt(i++),c=x[s in le?t.charAt(i++):s],!c||(r=c(e,n,r))<0)return-1}else if(s!=n.charCodeAt(r++))return-1}return r}function T(e,t,n){var r=l.exec(t.slice(n));return r?(e.p=u.get(r[0].toLowerCase()),n+r[0].length):-1}function E(e,t,n){var r=p.exec(t.slice(n));return r?(e.w=m.get(r[0].toLowerCase()),n+r[0].length):-1}function D(e,t,n){var r=d.exec(t.slice(n));return r?(e.w=f.get(r[0].toLowerCase()),n+r[0].length):-1}function O(e,t,n){var r=_.exec(t.slice(n));return r?(e.m=v.get(r[0].toLowerCase()),n+r[0].length):-1}function k(e,t,n){var r=h.exec(t.slice(n));return r?(e.m=g.get(r[0].toLowerCase()),n+r[0].length):-1}function A(e,n,r){return w(e,t,n,r)}function N(e,t,r){return w(e,n,t,r)}function P(e,t,n){return w(e,r,t,n)}function ee(e){return o[e.getDay()]}function te(e){return a[e.getDay()]}function I(e){return c[e.getMonth()]}function ne(e){return s[e.getMonth()]}function re(e){return i[+(e.getHours()>=12)]}function L(e){return 1+~~(e.getMonth()/3)}function R(e){return o[e.getUTCDay()]}function ie(e){return a[e.getUTCDay()]}function ae(e){return c[e.getUTCMonth()]}function B(e){return s[e.getUTCMonth()]}function oe(e){return i[+(e.getUTCHours()>=12)]}function se(e){return 1+~~(e.getUTCMonth()/3)}return{format:function(e){var t=S(e+=``,y);return t.toString=function(){return e},t},parse:function(e){var t=C(e+=``,!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=S(e+=``,b);return t.toString=function(){return e},t},utcParse:function(e){var t=C(e+=``,!0);return t.toString=function(){return e},t}}}var le={"-":``,_:` `,0:`0`},q=/^\s*\d+/,ue=/^%/,de=/[\\^$*+?|[\]().{}]/g;function J(e,t,n){var r=e<0?`-`:``,i=(r?-e:e)+``,a=i.length;return r+(a<n?Array(n-a+1).join(t)+i:i)}function fe(e){return e.replace(de,`\\$&`)}function Y(e){return RegExp(`^(?:`+e.map(fe).join(`|`)+`)`,`i`)}function X(e){return new Map(e.map((e,t)=>[e.toLowerCase(),t]))}function pe(e,t,n){var r=q.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function me(e,t,n){var r=q.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function he(e,t,n){var r=q.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function ge(e,t,n){var r=q.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function _e(e,t,n){var r=q.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function ve(e,t,n){var r=q.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function ye(e,t,n){var r=q.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function be(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||`00`)),n+r[0].length):-1}function xe(e,t,n){var r=q.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function Se(e,t,n){var r=q.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function Ce(e,t,n){var r=q.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function we(e,t,n){var r=q.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function Te(e,t,n){var r=q.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function Ee(e,t,n){var r=q.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function De(e,t,n){var r=q.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function Oe(e,t,n){var r=q.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function ke(e,t,n){var r=q.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function Ae(e,t,n){var r=ue.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function je(e,t,n){var r=q.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function Me(e,t,n){var r=q.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function Ne(e,t){return J(e.getDate(),t,2)}function Pe(e,t){return J(e.getHours(),t,2)}function Fe(e,t){return J(e.getHours()%12||12,t,2)}function Ie(e,t){return J(1+j.count(V(e),e),t,3)}function Le(e,t){return J(e.getMilliseconds(),t,3)}function Re(e,t){return Le(e,t)+`000`}function ze(e,t){return J(e.getMonth()+1,t,2)}function Be(e,t){return J(e.getMinutes(),t,2)}function Ve(e,t){return J(e.getSeconds(),t,2)}function He(e){var t=e.getDay();return t===0?7:t}function Ue(e,t){return J(P.count(V(e)-1,e),t,2)}function We(e){var t=e.getDay();return t>=4||t===0?I(e):I.ceil(e)}function Ge(e,t){return e=We(e),J(I.count(V(e),e)+(V(e).getDay()===4),t,2)}function Ke(e){return e.getDay()}function qe(e,t){return J(F.count(V(e)-1,e),t,2)}function Je(e,t){return J(e.getFullYear()%100,t,2)}function Ye(e,t){return e=We(e),J(e.getFullYear()%100,t,2)}function Xe(e,t){return J(e.getFullYear()%1e4,t,4)}function Ze(e,t){var n=e.getDay();return e=n>=4||n===0?I(e):I.ceil(e),J(e.getFullYear()%1e4,t,4)}function Qe(e){var t=e.getTimezoneOffset();return(t>0?`-`:(t*=-1,`+`))+J(t/60|0,`0`,2)+J(t%60,`0`,2)}function $e(e,t){return J(e.getUTCDate(),t,2)}function et(e,t){return J(e.getUTCHours(),t,2)}function tt(e,t){return J(e.getUTCHours()%12||12,t,2)}function nt(e,t){return J(1+M.count(H(e),e),t,3)}function rt(e,t){return J(e.getUTCMilliseconds(),t,3)}function it(e,t){return rt(e,t)+`000`}function at(e,t){return J(e.getUTCMonth()+1,t,2)}function ot(e,t){return J(e.getUTCMinutes(),t,2)}function st(e,t){return J(e.getUTCSeconds(),t,2)}function ct(e){var t=e.getUTCDay();return t===0?7:t}function lt(e,t){return J(R.count(H(e)-1,e),t,2)}function ut(e){var t=e.getUTCDay();return t>=4||t===0?B(e):B.ceil(e)}function dt(e,t){return e=ut(e),J(B.count(H(e),e)+(H(e).getUTCDay()===4),t,2)}function ft(e){return e.getUTCDay()}function pt(e,t){return J(z.count(H(e)-1,e),t,2)}function mt(e,t){return J(e.getUTCFullYear()%100,t,2)}function ht(e,t){return e=ut(e),J(e.getUTCFullYear()%100,t,2)}function gt(e,t){return J(e.getUTCFullYear()%1e4,t,4)}function _t(e,t){var n=e.getUTCDay();return e=n>=4||n===0?B(e):B.ceil(e),J(e.getUTCFullYear()%1e4,t,4)}function vt(){return`+0000`}function yt(){return`%`}function bt(e){return+e}function xt(e){return Math.floor(e/1e3)}var Z,Q;St({dateTime:`%x, %X`,date:`%-m/%-d/%Y`,time:`%-I:%M:%S %p`,periods:[`AM`,`PM`],days:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],shortDays:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],months:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],shortMonths:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`]});function St(e){return Z=K(e),Q=Z.format,Z.parse,Z.utcFormat,Z.utcParse,Z}var $=[[1,4,12,52,365,365*24,365*24*60,365*24*60*60,365*24*60*60*1e3],[1/4,1,3,13,91,2184,2184*60,2184*60*60,2184*60*60*1e3],[1/12,1/3,1,4,30,720,720*60,720*60*60,720*60*60*1e3],[1/52,1/13,1/4,1,7,168,10080,10080*60,10080*60*1e3],[1/365,1/91,1/30,1/7,1,24,1440,1440*60,1440*60*1e3],[1/(365*24),1/2184,1/720,1/168,1/24,1,60,3600,3600*1e3],[1/(365*24*60),1/(2184*60),1/(720*60),1/10080,1/1440,1/60,1,60,60*1e3],[1/(365*24*60*60),1/(2184*60*60),1/(720*60*60),1/(10080*60),1/(1440*60),1/3600,1/60,1,1e3],[1/(365*24*60*60*1e3),1/(2184*60*60*1e3),1/(720*60*60*1e3),1/(10080*60*1e3),1/(1440*60*1e3),1/(3600*1e3),1/(60*1e3),1/1e3,1]];function Ct(t,n,r){if(e.n(t))return;if(!n||!r||n===r)return t;let i=$[n-1][r-1];if(i)return t*i}function wt(t,n,r,i){if(e.n(t)||!n.lowestLevel||r.length===0)return``;let a=[],o=0,s=Math.round(t*$[n.lowestLevel-1][8]);for(let[,e]of r.entries())if(t){s-=o;let t=$[e-1][8],n=Math.floor(s/t);o=n*t,a.push({level:e,value:n})}else a.push({level:e,value:0});let c=``;for(let[e,t]of a.entries())if(n.duration.format===`time`){let n=t.value;[6,7,8].includes(t.level)&&t.value<10?n=`0`+t.value.toString():t.level===9&&t.value<10?n=`00`+t.value.toString():t.level===9&&t.value<100&&(n=`0`+t.value.toString()),c+=(e===0?``:t.level===9?`.`:`:`)+n}else if(n.duration.format===`long`){let n=i.durationLongSuffix;c+=t.value+` `+n[t.level]+(e===a.length-1?``:` `)}else{let n=i.durationShortSuffix;c+=t.value+``+n[t.level]+(e===a.length-1?``:` `)}return c}var Tt={decimal:`.`,thousands:`,`,grouping:[3],currency:[`$`,``],dateTime:`%a %b %e %X %Y`,date:`%m/%d/%Y`,dateSeparator:`/`,time:`%H:%M:%S`,periods:[`AM`,`PM`],days:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],shortDays:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],months:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],shortMonths:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],levels:[`All`,`Year`,`Quarter`,`Month`,`Week`,`Date`,`Hour`,`Minute`,`Second`,`Millisecond`],shortLevels:[`All`,`Yr`,`Qtr`,`Mth`,`Wk`,`Date`,`Hr`,`Min`,`Sec`,`Msec`],durationLongSuffix:[``,`years`,`quarters`,`months`,`weeks`,`days`,`hours`,`minutes`,`seconds`,`milliseconds`],durationShortSuffix:[``,`y`,`q`,`mo`,`w`,`d`,`h`,`m`,`s`,`ms`],multi:[`.%L`,`:%S`,`%I:%M`,`%I %p`,`%a %d`,`W%G`,`%b %d`,`%B`,`%Y`]},Et=`%d-%m-%Y`,Dt=[{key:`%a %e %b %Y`,lev1:`%Y`,lev2:`Q%q-%Y`,lev3:`%b %Y`,lev4:`Wk %V-%G`,lev5:`%a %e %b %Y`,monthType:`name`,longText:!1,weekday:!0},{key:`%e %b %Y`,lev1:`%Y`,lev2:`Q%q-%Y`,lev3:`%b %Y`,lev4:`Wk %V-%G`,lev5:`%e %b %Y`,monthType:`name`,longText:!1,weekday:!1},{key:`%a %e %B %Y`,lev1:`%Y`,lev2:`Q%q-%Y`,lev3:`%B %Y`,lev4:`Week %V, %G`,lev5:`%a %e %B %Y`,monthType:`name`,longText:!0,weekday:!0},{key:`%e %B %Y`,lev1:`%Y`,lev2:`Q%q-%Y`,lev3:`%B %Y`,lev4:`Week %V, %G`,lev5:`%e %B %Y`,monthType:`name`,longText:!0,weekday:!1},{key:`%d/%m/%Y`,lev1:`%Y`,lev2:`Q%q/%Y`,lev3:`%m/%Y`,lev4:`W%V/%G`,lev5:`%d/%m/%Y`,monthType:`number`,mmdd:!1,separator:`/`},{key:`%d-%m-%Y`,lev1:`%Y`,lev2:`Q%q-%Y`,lev3:`%m-%Y`,lev4:`W%V-%G`,lev5:`%d-%m-%Y`,monthType:`number`,mmdd:!1,separator:`-`},{key:`%d.%m.%Y`,lev1:`%Y`,lev2:`Q%q.%Y`,lev3:`%m.%Y`,lev4:`W%V.%G`,lev5:`%d.%m.%Y`,monthType:`number`,mmdd:!1,separator:`.`},{key:`%d~%m~%Y`,lev1:`%Y`,lev2:`Q%q~%Y`,lev3:`%m~%Y`,lev4:`W%V~%G`,lev5:`%d~%m~%Y`,monthType:`number`,mmdd:!1,separator:`~`},{key:`%m/%d/%Y`,lev1:`%Y`,lev2:`Q%q/%Y`,lev3:`%m/%Y`,lev4:`%G/W%V`,lev5:`%m/%d/%Y`,monthType:`number`,mmdd:!0,separator:`/`},{key:`%m-%d-%Y`,lev1:`%Y`,lev2:`Q%q-%Y`,lev3:`%m-%Y`,lev4:`%G-W%V`,lev5:`%m-%d-%Y`,monthType:`number`,mmdd:!0,separator:`-`},{key:`%m.%d.%Y`,lev1:`%Y`,lev2:`Q%q.%Y`,lev3:`%m.%Y`,lev4:`%G.W%V`,lev5:`%m.%d.%Y`,monthType:`number`,mmdd:!0,separator:`.`},{key:`%m~%d~%Y`,lev1:`%Y`,lev2:`Q%q~%Y`,lev3:`%m~%Y`,lev4:`%G~W%V`,lev5:`%m~%d~%Y`,monthType:`number`,mmdd:!0,separator:`~`},{key:`%amd/%Y`,lev1:`%Y`,lev2:`Q%q/%Y`,lev3:`%m/%Y`,lev4:`%G/W%V`,lev5:`%amd/%Y`,monthType:`number`,mmdd:null,separator:`/`},{key:`%amd-%Y`,lev1:`%Y`,lev2:`Q%q-%Y`,lev3:`%m-%Y`,lev4:`%G-W%V`,lev5:`%amd-%Y`,monthType:`number`,mmdd:null,separator:`-`},{key:`%amd.%Y`,lev1:`%Y`,lev2:`Q%q.%Y`,lev3:`%m.%Y`,lev4:`%G.W%V`,lev5:`%amd.%Y`,monthType:`number`,mmdd:null,separator:`.`},{key:`%amd~%Y`,lev1:`%Y`,lev2:`Q%q~%Y`,lev3:`%m~%Y`,lev4:`%G~W%V`,lev5:`%amd~%Y`,monthType:`number`,mmdd:null,separator:`~`}],Ot=[{key:`%H:%M:%S.%L`,lev6:`%H:00`,lev7:`%H:%M`,lev8:`%H:%M:%S`,lev9:`%H:%M:%S.%L`,ampm:!1},{key:`%I:%M:%S.%L %p`,lev6:`%I:00 %p`,lev7:`%I:%M %p`,lev8:`%I:%M:%S %p`,lev9:`%I:%M:%S.%L %p`,ampm:!0}],kt=(e,t,n)=>t===`letter`?e.shortNames?.length>0&&e.shortNames[n]?.length>0?e.shortNames[n]?.charAt(0):`N/A`:t===`short`?e.shortNames?.length>0&&e.shortNames[n]?e.shortNames[n]:`N/A`:e.longNames?.length>0&&e.longNames[n]?e.longNames[n]:`N/A`;function At(r,i){i||={};let a=i.localFormats||Tt,o,s,c,l=[],u=[],d=`datetime`,f;i&&i.multi&&(d=`datetime`),(!r||!r.format)&&(d=`hierarchy`),r&&r.type&&(d=r.type),f=r&&r.format?r.format:d===`numeric`?`,.0f`:d===`datetime`?Et:``;let p=n.t(f);switch(p.precision&&p.typeFormat&&(d=`numeric`),d){case`numeric`:if(r.subtype===`duration`&&r.duration&&r.duration.levels&&r.duration.levels.length>1&&!i.hideDuration)o=t=>e.n(t)?``:wt(t,r,r.duration.levels,a);else{let t={...a},n=p.typeFormat,c=!1;switch(n.length===2&&n.startsWith(`a`)&&(c=!0,n=n.slice(1,2),f=f.replace(/a/,``)),c?(t.decimal=a.decimal,t.thousands=a.thousands):[`z`,`y`,`w`].includes(n)?(t.decimal=`,`,t.thousands=`.`):(t.decimal=`.`,t.thousands=`,`),n){case`z`:f=f.replace(`z`,`f`);break;case`y`:f=f.replace(`y`,`%`);break;case`w`:f=f.replace(`w`,`s`);break}if(r?.subtype===`currency`&&r.currency){let e=t.currency.findIndex(e=>e.length>0),n=t.currency[e].startsWith(`\xA0`),i=t.currency[e].endsWith(`\xA0`),a=`${n?`\xA0`:``}${r.currency}${i?`\xA0`:``}`;t.currency[e]=a}let l=y(t);n!==`%`&&r?.subtype===`currency`&&r.currency&&t.currency&&!i?.hideCurrency&&![`count`,`distinctcount`].includes(r.aggregationFunc)&&!(r.aggregationFunc===`rate`&&r.aggregationWeight?.columnSubType===`currency`)&&r.periodOverPeriod?.type!==`percentageChange`&&(f=`$`+f),s=i?.trimZero&&[`y`,`%`].includes(n)&&t.decimal===`,`?e=>l.format(f)(e).replace(/(,\d*?)0+%$/,`$1%`).replace(/,%$/,`%`):i?.trimZero&&[`y`,`%`].includes(n)&&t.decimal===`.`?e=>l.format(f)(e).replace(/(\.\d*?)0+%$/,`$1%`).replace(/\.%$/,`%`):i?.trimZero&&[`z`,`f`].includes(n)&&t.decimal===`,`?e=>l.format(f)(e).replace(/(,\d*?)0+$/,`$1`).replace(/,$/,``):i?.trimZero&&[`z`,`f`].includes(n)&&t.decimal===`.`?e=>l.format(f)(e).replace(/(\.\d*?)0+$/,`$1`).replace(/\.$/,``):r?.subtype===`currency`&&r.currency&&t.currency&&n===`s`?e=>l.format(f)(e).replace(/G/,`B`):e.n(p.precision)?l.format(`,.0f`):l.format(f),o=t=>{if(e.n(t))return``;if(r.subtype===`duration`&&r.duration&&!i.hideDuration){let e=r.duration.levels?r.duration.levels[0]:r.lowestLevel;return e!==r.lowestLevel&&(t=Ct(t,r.lowestLevel,e)),s(t)+a?.durationShortSuffix?.[e]}return s(t)}}break;case`datetime`:if(l=a?.smartDateFormats??Dt,u=a?.smartTimeFormats??Ot,e.n(r.datetimeDisplayMode)||r.datetimeDisplayMode==="default"){if(i?.level){let e=i.level,t=l.find(e=>f.includes(e.key)),n=u.find(e=>f.includes(e.key)),r=t?t[`lev`+Math.min(e,5)]:l[0][`lev`+Math.min(e,5)],o=e>5?n?n[`lev`+e]:u[0][`lev`+e]:``;f=e>5?r+`, `+o:r;let s=f.includes(`%amd`)&&i.level>=5,c=t?i.level>=2&&t.separator===`~`:!1;f=s?c?f.replaceAll(/%amd[.~/-]%Y/g,a.date.slice(0,8)):f.replaceAll(/%amd[.~/-]%Y/g,a.date.slice(0,8).replaceAll(/[.~/-]/g,t.separator)):c?f.replaceAll(/[~]/g,a.dateSeparator):f}if(i?.multi){let e=Q(a.multi[0]),t=Q(a.multi[1]),n=Q(a.multi[2]),r=Q(a.multi[3]),i=Q(a.multi[4]),o=Q(a.multi[6]),s=Q(a.multi[7]),l=Q(a.multi[8]);c=a=>{let c;return c=O(a)<a?e:k(a)<a?t:A(a)<a?n:j(a)<a?r:ce(a)<a?P(a)<a?i:o:V(a)<a?s:l,c(a)}}else c=K(a).format(f)}else{let t={quarter_number:{min:1,max:4},month_name:{min:1,max:12},month_number:{min:1,max:12},week_number:{min:1,max:53},day_in_month:{min:1,max:31},day_in_year:{min:1,max:366},weekday_name:{min:0,max:7},weekday_number:{min:0,max:7},hour_in_day:{min:0,max:23},minute_in_hour:{min:0,max:59},second_in_minute:{min:0,max:59}};c=[`quarter_number`,`month_number`,`week_number`,`day_in_month`,`day_in_year`,`weekday_number`,`hour_in_day`,`minute_in_hour`,`second_in_minute`].includes(r.datetimeDisplayMode)?n=>e.i(n)&&n>=t[r.datetimeDisplayMode].min&&n<=t[r.datetimeDisplayMode].max?n:`N/A`:r.datetimeDisplayMode===`month_name`?n=>{let i=[...a.shortMonths],o=[...a.months];return e.i(n)&&n>=t[r.datetimeDisplayMode].min&&n<=t[r.datetimeDisplayMode].max?kt({shortNames:i,longNames:o},r.monthNameFormat,n-1):`N/A`}:r.datetimeDisplayMode===`weekday_name`?n=>{let i=[...a.shortDays],o=[...a.days];return r.weekStart===`monday`&&(i.push(i.shift()??``),o.push(o.shift()??``)),e.i(n)&&n>=t[r.datetimeDisplayMode].min&&n<=t[r.datetimeDisplayMode].max?kt({shortNames:i,longNames:o},r.weekDayNameFormat,n-1):`N/A`}:K(a).format(f)}o=t=>{if(e.n(t))return``;let n=c(t);return e.o(n)?n.trim():n};break;case`hierarchy`:o=e=>t.t(e,i?i.locale:void 0);break;default:o=e=>e;break}return o}Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return Tt}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return Et}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return Dt}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return At}});
|
|
@@ -1,45 +0,0 @@
|
|
|
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("./calculate-data-field-icon-DenGmW74.cjs"),n=require("./localize-D3i4Epy_.cjs"),r=require("./formula-display-store-DER7C0GG.cjs"),i=require("./groupings-Bn9384Zw.cjs"),a=require("./resolve-column-presentation-DUETRVCH.cjs");let o=require("@luzmo/icons");require("@luzmo/lucero/icon");let s=require("lit"),c=require("lit/decorators.js"),l=require("@lit/localize");require("@luzmo/lucero/progress-circle");var u=`:host{box-sizing:border-box;font-family:var(--luzmo-font-family);color:var(--luzmo-font-color);display:inline-block}.formula-text{font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));white-space:pre-wrap;word-break:break-word;line-height:1.5}.formula-text-column{white-space:nowrap}.formula-text-column-icon{margin-inline-end:var(--luzmo-spacing-1)}.formula-pills{align-items:center;gap:var(--luzmo-spacing-1) 0;font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));flex-wrap:wrap;line-height:1.5;display:inline-flex}.formula-operator{white-space:pre-wrap}.column-pill-wrapper{vertical-align:middle;padding-inline-end:var(--luzmo-formula-column-pill-trailing-space,var(--luzmo-spacing-1));display:inline-flex}.column-pill{justify-content:center;align-items:center;gap:var(--luzmo-spacing-2);box-sizing:border-box;max-width:16rem;min-height:var(--luzmo-formula-control-height,1.375rem);padding:0 var(--luzmo-formula-column-pill-padding-inline,calc(var(--luzmo-spacing-2) + var(--luzmo-spacing-1)));border-radius:var(--luzmo-border-radius-s);background-color:var(--luzmo-formula-column-pill-background,var(--luzmo-background-color-highlight));color:var(--luzmo-font-color);white-space:nowrap;font-size:.85em;line-height:1.2;display:inline-flex}.column-pill-icon{flex:none;display:inline-flex}.column-pill-label{text-overflow:ellipsis;overflow:hidden}.column-pill-loading{--luzmo-progress-circle-size:1em;align-items:center;display:inline-flex}.agg-pill{padding-block:var(--luzmo-spacing-1);border-radius:var(--luzmo-border-radius);background-color:var(--agg-accent,var(--luzmo-primary));color:var(--luzmo-primary-inverse-color);font-size:var(--luzmo-formula-font-size,var(--luzmo-font-size));vertical-align:middle;padding-inline:0;display:inline-flex}.agg-pill-row{align-items:center;gap:var(--luzmo-spacing-1);min-height:var(--luzmo-formula-control-height,1.375rem);display:inline-flex}.agg-fn{text-transform:uppercase;padding-inline-start:var(--luzmo-spacing-3);padding-inline-end:var(--luzmo-spacing-3);font-size:.85em}.agg-value{min-height:var(--luzmo-formula-control-height,1.375rem);padding:0 var(--luzmo-spacing-2);border-radius:var(--luzmo-border-radius-s);background-color:var(--luzmo-background-color);color:var(--luzmo-font-color);--luzmo-formula-column-pill-background:transparent;--luzmo-formula-column-pill-padding-inline:0px;align-items:center;line-height:1;display:inline-flex}.agg-grouping{align-items:center;gap:var(--luzmo-spacing-1);padding-inline:var(--luzmo-spacing-2) var(--luzmo-spacing-3);font-size:var(--luzmo-formula-grouping-icon-size,var(--luzmo-icon-size-m));display:inline-flex}.agg-grouping--no-value{padding-inline-start:0}.agg-grouping-count{border-radius:var(--luzmo-border-radius-full,999rem);background:var(--luzmo-primary-inverse-color);min-width:1.25em;color:var(--agg-accent,var(--luzmo-primary));font-size:.6875rem;font-weight:var(--luzmo-font-weight-bold);justify-content:center;align-items:center;padding:0 .25em;line-height:1.4;display:inline-flex}:host{--luzmo-formula-font-size:var(--luzmo-font-size);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-m);--luzmo-formula-control-height:calc(var(--luzmo-component-height) - 2 * var(--luzmo-spacing-1))}:host([size=s]){--luzmo-formula-font-size:var(--luzmo-font-size-s);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-s);--luzmo-formula-control-height:calc(var(--luzmo-component-height-s) - 2 * var(--luzmo-spacing-1))}:host([size=l]){--luzmo-formula-font-size:var(--luzmo-font-size-l);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-l);--luzmo-formula-control-height:calc(var(--luzmo-component-height-l) - 2 * var(--luzmo-spacing-1))}:host([size=xl]){--luzmo-formula-font-size:var(--luzmo-font-size-xl);--luzmo-formula-grouping-icon-size:var(--luzmo-icon-size-xl);--luzmo-formula-control-height:calc(var(--luzmo-component-height-xl) - 2 * var(--luzmo-spacing-1))}`,d=class extends r.o{constructor(...e){super(...e),this.display=`rich`,this._groupingDataMap=i.n()}static{this.styles=(0,s.unsafeCSS)(u)}_createStore(){return new r.t}_shouldLoadInput(){return!1}_canEmitExpression(){return!1}_applyExternalExpression(){if(this.display===`text`){this._rootContent=``;return}this._store.clearWidgets(),this._rootContent=this._store.transformToAggregationWidgetSyntax(this.expression??``)}willUpdate(e){super.willUpdate(e),e.has(`display`)&&!e.has(`expression`)&&this._applyExternalExpression()}render(){return this.display===`text`?this._renderTextFormula():this._renderPillFormula()}_renderPillFormula(){return s.html`<span class="formula-pills" part="formula">${this._renderPillNodes(this._rootContent)}</span>`}_renderPillNodes(e){let t=[],n=new RegExp(r.h.source,`gm`),i=0,a;for(;(a=n.exec(e))!==null;){a.index>i&&t.push(this._renderOperatorText(e.slice(i,a.index)));let r=a[2],o=a[3];r?t.push(this._renderColumnPill(r)):o&&t.push(this._renderAggregationPill(o)),i=n.lastIndex}return i<e.length&&t.push(this._renderOperatorText(e.slice(i))),t}_renderOperatorText(e){return s.html`<span class="formula-operator">${e}</span>`}_renderColumnPill(e){let[t,n]=e.split(`:`),r=this._datasets.find(e=>e.id===t)?.columns.find(e=>e.columnId===n);if(this._store.loading&&!r){let e=(0,l.msg)(`Loading column`,{desc:`Accessible label for a column pill whose label is still loading`});return s.html`<span class="column-pill-wrapper"
|
|
21
|
-
><span class="column-pill" title=${e}
|
|
22
|
-
><span class="column-pill-loading">
|
|
23
|
-
<luzmo-progress-circle indeterminate size="s" .label=${e}></luzmo-progress-circle></span
|
|
24
|
-
></span
|
|
25
|
-
></span>`}let{icon:i,label:c}=a.t(r,this.contentLanguage,n);return s.html`<span class="column-pill-wrapper"
|
|
26
|
-
><span class="column-pill" title=${c}
|
|
27
|
-
><span class="column-pill-icon">${(0,o.luzmoIcon)(i)}</span
|
|
28
|
-
><span class="column-pill-label">${c}</span></span
|
|
29
|
-
></span>`}_renderAggregationPill(e){let t=this._store.getWidget(e);if(!t)return s.html`${s.nothing}`;let n=this._groupingDataMap[t.grouping],i=n?.color??``,a=this._store.aggregationFunctionDataMap[t.aggregationFunction]?.arity??0,c=n?.label()??``,l=t.grouping===r.g.GROUPINEX?(t.includedColumns?.length??0)+(t.excludedColumns?.length??0):0;return s.html`<span class="agg-pill" style=${i?`--agg-accent: ${i}`:``}>
|
|
30
|
-
<span class="agg-pill-row">
|
|
31
|
-
<span class="agg-fn">${t.aggregationFunction}</span>
|
|
32
|
-
${a>0?s.html`<span class="agg-value">${this._renderPillNodes(t.content)}</span>`:s.nothing}
|
|
33
|
-
<span
|
|
34
|
-
class="agg-grouping${a>0?``:` agg-grouping--no-value`}"
|
|
35
|
-
title=${c}
|
|
36
|
-
aria-label=${c}
|
|
37
|
-
>
|
|
38
|
-
${n?.icon?(0,o.luzmoIcon)(n.icon):s.nothing}
|
|
39
|
-
${l>0?s.html`<span class="agg-grouping-count">${l}</span>`:s.nothing}
|
|
40
|
-
</span>
|
|
41
|
-
</span>
|
|
42
|
-
</span>`}_renderTextFormula(){let e=this.expression??``,t=[],n=new RegExp(r.f.source,`g`),i=0,a;for(;(a=n.exec(e))!==null;){a.index>i&&t.push(e.slice(i,a.index));let[r,o]=a[1].split(`:`);t.push(this._renderColumnReference(r,o)),i=n.lastIndex}return i<e.length&&t.push(e.slice(i)),s.html`<span class="formula-text" part="formula-text">${t}</span>`}_renderColumnReference(e,r){let i=this._datasets.find(t=>t.id===e),a=i?.columns.find(e=>e.columnId===r),c=a?n.t(a.name,this.contentLanguage):r,l=i?n.t(i.name,this.contentLanguage):``;return s.html`<span class="formula-text-column" part="formula-text-column" title=${l?`${l} · ${c}`:c}>
|
|
43
|
-
<span class="formula-text-column-icon">${(0,o.luzmoIcon)(t.t({type:a?.type??`hierarchy`},`s`))}</span>
|
|
44
|
-
<span class="formula-text-column-name">${c}</span>
|
|
45
|
-
</span>`}};e.t([(0,c.property)({type:String,reflect:!0})],d.prototype,`display`,void 0),d=e.t([(0,l.localized)()],d),customElements.get(`luzmo-formula`)||customElements.define(`luzmo-formula`,d),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return d}});
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import { type Completion } from '@codemirror/autocomplete';
|
|
2
|
-
import { type PropertyValues, type TemplateResult } from 'lit';
|
|
3
|
-
import { LuzmoElement } from '../../utils/base';
|
|
4
|
-
import type { FormulaEditorStore } from '../../utils/formula/store/formula-editor-store';
|
|
5
|
-
import type { FormulaEditorDataset } from '../../types/formula.types';
|
|
6
|
-
import '@luzmo/lucero/progress-circle';
|
|
7
|
-
import './pills/formula-empty-argument-pill';
|
|
8
|
-
import './pills/formula-aggregation';
|
|
9
|
-
declare const LuzmoFormulaCodeMirror_base: (new (...args: any[]) => {
|
|
10
|
-
language: string;
|
|
11
|
-
}) & typeof LuzmoElement;
|
|
12
|
-
/**
|
|
13
|
-
* @customElement luzmo-formula-codemirror
|
|
14
|
-
* @description Internal CodeMirror-backed expression engine for the formula
|
|
15
|
-
* family. Renders columns, empty arguments and aggregation widgets as inline pills,
|
|
16
|
-
* supports drag-to-insert at the cursor and autocompletion. Used as the editing
|
|
17
|
-
* surface of `luzmo-formula-field` and `luzmo-formula-editor`, and inside nested
|
|
18
|
-
* aggregation widgets. Not part of the public API - prefer `luzmo-formula-field`
|
|
19
|
-
* / `luzmo-formula-editor`, which wire its store + autocompletion for you.
|
|
20
|
-
*
|
|
21
|
-
* @fires {CustomEvent<{ content: string }>} luzmo-input-content-changed - Fired when the editor content changes.
|
|
22
|
-
* @fires {CustomEvent<void>} luzmo-input-focused - Fired when the editor gains focus.
|
|
23
|
-
*/
|
|
24
|
-
export declare class LuzmoFormulaCodeMirror extends LuzmoFormulaCodeMirror_base {
|
|
25
|
-
static styles: import("lit").CSSResult;
|
|
26
|
-
/** The shared formula editor store. */
|
|
27
|
-
store?: FormulaEditorStore;
|
|
28
|
-
/** Id of the aggregation widget this input belongs to, or null for the root editor. */
|
|
29
|
-
aggregationWidgetId: string | null;
|
|
30
|
-
/** Datasets used to render column pills. */
|
|
31
|
-
datasets: FormulaEditorDataset[];
|
|
32
|
-
contentLanguage: string;
|
|
33
|
-
placeholder: string;
|
|
34
|
-
readonly: boolean;
|
|
35
|
-
singleLine: boolean;
|
|
36
|
-
hasError: boolean;
|
|
37
|
-
editorHeight?: string;
|
|
38
|
-
/** Number of text lines the input is sized to start with. Defaults to 3. */
|
|
39
|
-
rows: number;
|
|
40
|
-
/** Maximum number of text lines before a scrollbar appears (only when `grows`). */
|
|
41
|
-
maxRows?: number;
|
|
42
|
-
/** Whether the input grows in height with its content (up to `maxRows` if set). */
|
|
43
|
-
grows: boolean;
|
|
44
|
-
/** The autocompletion options to offer. */
|
|
45
|
-
autoCompletionList: Completion[];
|
|
46
|
-
private _view?;
|
|
47
|
-
private _pendingContent;
|
|
48
|
-
private readonly _themeCompartment;
|
|
49
|
-
private readonly _readonlyCompartment;
|
|
50
|
-
get content(): string;
|
|
51
|
-
/** Replaces the whole editor content. */
|
|
52
|
-
setContent(content: string): void;
|
|
53
|
-
focusEditor(): void;
|
|
54
|
-
/** Forces the inline pill decorations to be recomputed. */
|
|
55
|
-
refresh(): void;
|
|
56
|
-
disconnectedCallback(): void;
|
|
57
|
-
/** Rebuilds pill decorations when the store signals a refresh (e.g. loading state changed). */
|
|
58
|
-
private _handleStoreRefresh;
|
|
59
|
-
protected firstUpdated(_changedProperties: PropertyValues): void;
|
|
60
|
-
protected updated(changedProperties: PropertyValues): void;
|
|
61
|
-
/**
|
|
62
|
-
* Read-only extensions, kept in a compartment so toggling `readonly` after the
|
|
63
|
-
* view is created can reconfigure them. `readOnly` blocks edits but the view
|
|
64
|
-
* stays focusable and keeps painting a blinking caret; `editable.of(false)`
|
|
65
|
-
* also drops the caret (and the contenteditable), which is what a read-only
|
|
66
|
-
* rendering should show.
|
|
67
|
-
*/
|
|
68
|
-
private _readonlyExtensions;
|
|
69
|
-
private _buildDynamicTheme;
|
|
70
|
-
private _buildExtensions;
|
|
71
|
-
private _buildDecorations;
|
|
72
|
-
private _autoComplete;
|
|
73
|
-
private _cleanupDroppable;
|
|
74
|
-
private _attachDroppable;
|
|
75
|
-
private _canDrop;
|
|
76
|
-
private _handleDrop;
|
|
77
|
-
protected render(): TemplateResult;
|
|
78
|
-
}
|
|
79
|
-
export {};
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
import '@luzmo/lucero/icon';
|
|
2
|
-
import '@luzmo/lucero/overlay';
|
|
3
|
-
import '@luzmo/lucero/popover';
|
|
4
|
-
import '@luzmo/lucero/select';
|
|
5
|
-
import { type PropertyValues, type TemplateResult } from 'lit';
|
|
6
|
-
import { LuzmoElement } from '../../../../utils/base';
|
|
7
|
-
import type { FormulaEditorStore } from '../../../../utils/formula/store/formula-editor-store';
|
|
8
|
-
import { type AggregationWidgetConfig } from '../../../../types/formula.types';
|
|
9
|
-
declare const LuzmoFormulaAggregation_base: (new (...args: any[]) => {
|
|
10
|
-
language: string;
|
|
11
|
-
}) & typeof LuzmoElement;
|
|
12
|
-
/**
|
|
13
|
-
* @customElement luzmo-formula-aggregation
|
|
14
|
-
* @description A nested aggregation widget rendered inline inside the formula
|
|
15
|
-
* editor: an aggregation-function selector, a grouping-scope selector, a nested
|
|
16
|
-
* expression input and (for `GROUPINEX`) an include / exclude column panel.
|
|
17
|
-
*/
|
|
18
|
-
export declare class LuzmoFormulaAggregation extends LuzmoFormulaAggregation_base {
|
|
19
|
-
static styles: import("lit").CSSResult;
|
|
20
|
-
/** Configuration for this aggregation widget (set by the CodeMirror widget). */
|
|
21
|
-
config: AggregationWidgetConfig['data'];
|
|
22
|
-
/** The shared formula editor store (set by the CodeMirror widget). */
|
|
23
|
-
store?: FormulaEditorStore;
|
|
24
|
-
private _nestedCodeMirror?;
|
|
25
|
-
private _groupingOverlay?;
|
|
26
|
-
private _functionSelect?;
|
|
27
|
-
/** The element the focus/blur listeners are currently bound to, for clean teardown. */
|
|
28
|
-
private _functionFocusTarget?;
|
|
29
|
-
/**
|
|
30
|
-
* Explicit page override for the grouping popover. When `null` the page is
|
|
31
|
-
* derived from the current grouping (include/exclude scope -> the detail page,
|
|
32
|
-
* any other scope -> the scope chooser). Deriving the page - rather than
|
|
33
|
-
* resetting a stored page on open/close - keeps the (still hidden) popover on
|
|
34
|
-
* the correct page, so reopening a configured include/exclude pill no longer
|
|
35
|
-
* flashes the scope chooser for a frame.
|
|
36
|
-
*/
|
|
37
|
-
private _groupingPageOverride;
|
|
38
|
-
/** Autocompletion options offered while typing inside this aggregation's nested input. */
|
|
39
|
-
private _autoCompletionList;
|
|
40
|
-
/** Whether the CodeMirror-backed nested input module has finished loading. */
|
|
41
|
-
private _codeMirrorLoaded;
|
|
42
|
-
/**
|
|
43
|
-
* Whether the aggregation-function select currently holds keyboard-driven focus.
|
|
44
|
-
* The select's focusable button lives in its shadow DOM, so a pure CSS
|
|
45
|
-
* `:focus-visible` can't reach it from here; instead we read the browser's own
|
|
46
|
-
* `:focus-visible` verdict off the focused element so the focus ring only shows
|
|
47
|
-
* for keyboard users (not after a mouse switch).
|
|
48
|
-
*/
|
|
49
|
-
private _functionKeyboardFocus;
|
|
50
|
-
private readonly _groupingTriggerId;
|
|
51
|
-
private readonly _aggregationDataMap;
|
|
52
|
-
private readonly _groupingDataMap;
|
|
53
|
-
connectedCallback(): void;
|
|
54
|
-
disconnectedCallback(): void;
|
|
55
|
-
/**
|
|
56
|
-
* Binds the keyboard-focus tracking to the `.function-select` element (not the
|
|
57
|
-
* host). The select swallows the bubbling focusin/focusout, so we use the
|
|
58
|
-
* capturing focus/blur events; and they must be bound to `.function-select`
|
|
59
|
-
* rather than the host so focus moving *within* the pill (e.g. Shift+Tab from
|
|
60
|
-
* the nested value input into the select) still crosses into the listener's
|
|
61
|
-
* subtree and is detected. Idempotent and safe to call before first render.
|
|
62
|
-
*/
|
|
63
|
-
private _bindFunctionFocusListeners;
|
|
64
|
-
private _unbindFunctionFocusListeners;
|
|
65
|
-
private _handleFunctionFocus;
|
|
66
|
-
private _handleFunctionBlur;
|
|
67
|
-
private _handleWidgetsChanged;
|
|
68
|
-
/**
|
|
69
|
-
* Datasets reach the pill once (via `config.linkedDatasets`) when the widget
|
|
70
|
-
* is created. When the editor loads its datasets asynchronously the store is
|
|
71
|
-
* updated later, so this re-resolves the nested column labels and completions.
|
|
72
|
-
*/
|
|
73
|
-
private _handleDatasetsRefresh;
|
|
74
|
-
/** The datasets to use for the nested input: the freshly loaded store ones take precedence. */
|
|
75
|
-
private get _linkedDatasets();
|
|
76
|
-
private _recomputeAutoCompletion;
|
|
77
|
-
private get _widget();
|
|
78
|
-
/** The grouping popover page: an explicit override (e.g. after pressing back), else derived from the grouping scope. */
|
|
79
|
-
private get _groupingPage();
|
|
80
|
-
protected willUpdate(changedProperties: PropertyValues): void;
|
|
81
|
-
/** Lazily loads the CodeMirror-backed input used for this aggregation's nested expression. */
|
|
82
|
-
private _ensureCodeMirrorLoaded;
|
|
83
|
-
protected firstUpdated(): void;
|
|
84
|
-
protected updated(_changedProperties: PropertyValues): void;
|
|
85
|
-
/**
|
|
86
|
-
* When this pill was just created via a list insert / autocomplete, move the
|
|
87
|
-
* cursor into its nested input so the user can immediately keep typing.
|
|
88
|
-
*/
|
|
89
|
-
private _focusNestedIfPending;
|
|
90
|
-
private _updateWidget;
|
|
91
|
-
private _handleFunctionChange;
|
|
92
|
-
private _handleGroupingOptionClick;
|
|
93
|
-
private _handleGroupingBack;
|
|
94
|
-
private _handleGroupingMenuOpened;
|
|
95
|
-
private _handleGroupingMenuClosed;
|
|
96
|
-
/**
|
|
97
|
-
* Dismiss the grouping overlay on an outside pointerdown.
|
|
98
|
-
*
|
|
99
|
-
* The overlay is a `type="manual"` popover (see render) so the browser's native
|
|
100
|
-
* Popover-API light-dismiss never collapses it when a nested include / exclude
|
|
101
|
-
* select opens its own `auto` popover - the bug this works around. Manual
|
|
102
|
-
* overlays also opt out of the overlay stack's outside-pointer dismissal, so we
|
|
103
|
-
* reinstate it here. Clicks inside the popover - which include the DOM-nested
|
|
104
|
-
* include / exclude selects and their dropdowns - keep it open; a pointerdown on
|
|
105
|
-
* the trigger closes it (the click controller suppresses its own toggle while
|
|
106
|
-
* the overlay is already open). Escape still closes it through the stack's
|
|
107
|
-
* keydown handler, which does dismiss manual overlays.
|
|
108
|
-
*/
|
|
109
|
-
private _handleDocumentPointerdown;
|
|
110
|
-
/**
|
|
111
|
-
* Whether a pointerdown landed inside the grouping popover content. The popover
|
|
112
|
-
* content is promoted to the top layer (native popover) but stays in the DOM
|
|
113
|
-
* tree, so we match the popover / panel by class along the composed path:
|
|
114
|
-
* after a nested select opens (and re-renders) an element reference can stop
|
|
115
|
-
* resolving, but the elements are still present in the click's composed path.
|
|
116
|
-
*/
|
|
117
|
-
private _isPointerInsidePopover;
|
|
118
|
-
private _closeGroupingMenu;
|
|
119
|
-
private _handleNestedContentChanged;
|
|
120
|
-
private _handleIncludeExcludeChange;
|
|
121
|
-
private _renderGroupingTypesPage;
|
|
122
|
-
private _renderIncludeExcludePage;
|
|
123
|
-
protected render(): TemplateResult;
|
|
124
|
-
}
|
|
125
|
-
export {};
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { type PropertyValues, type TemplateResult } from 'lit';
|
|
2
|
-
import { LuzmoElement } from '../../../../utils/base';
|
|
3
|
-
import type { FormulaEditorStore } from '../../../../utils/formula/store/formula-editor-store';
|
|
4
|
-
declare const LuzmoFormulaEmptyArgumentPill_base: (new (...args: any[]) => {
|
|
5
|
-
language: string;
|
|
6
|
-
}) & typeof LuzmoElement;
|
|
7
|
-
/**
|
|
8
|
-
* @customElement luzmo-formula-empty-argument-pill
|
|
9
|
-
* @description An empty argument rendered inline inside the formula editor. Accepts
|
|
10
|
-
* dropped columns / functions / aggregations and lets the user type a literal value.
|
|
11
|
-
*/
|
|
12
|
-
export declare class LuzmoFormulaEmptyArgumentPill extends LuzmoFormulaEmptyArgumentPill_base {
|
|
13
|
-
static styles: import("lit").CSSResult;
|
|
14
|
-
emptyArgumentId: string;
|
|
15
|
-
parentAggregationWidgetId: string | null;
|
|
16
|
-
store?: FormulaEditorStore;
|
|
17
|
-
private _cleanupDroppable;
|
|
18
|
-
connectedCallback(): void;
|
|
19
|
-
disconnectedCallback(): void;
|
|
20
|
-
protected firstUpdated(_changedProperties: PropertyValues): void;
|
|
21
|
-
private _attachDroppable;
|
|
22
|
-
private _canDrop;
|
|
23
|
-
private _handleDrop;
|
|
24
|
-
private _handleFocus;
|
|
25
|
-
private _handleInput;
|
|
26
|
-
protected render(): TemplateResult;
|
|
27
|
-
}
|
|
28
|
-
export {};
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import { LuzmoFormulaEmptyArgumentPill } from './formula-empty-argument-pill';
|
|
2
|
-
declare global {
|
|
3
|
-
interface HTMLElementTagNameMap {
|
|
4
|
-
'luzmo-formula-empty-argument-pill': LuzmoFormulaEmptyArgumentPill;
|
|
5
|
-
}
|
|
6
|
-
}
|
|
7
|
-
export { LuzmoFormulaEmptyArgumentPill } from './formula-empty-argument-pill';
|