@luzmo/analytics-components-kit 1.0.1-alpha.150 → 1.0.1-alpha.151
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -1
- package/angular/esm/types/ai-chat.types.d.ts +3 -0
- package/angular/types/ai-chat.types.ts +3 -0
- package/components/ai-chat/ai-chat.d.ts +8 -0
- package/components/ai-chat/index.cjs +1 -1
- package/components/ai-chat/index.js +6 -6
- package/components/ai-chat/request-contract.d.ts +16 -0
- package/components/ai-chat-Bagt_i05.cjs +145 -0
- package/components/ai-chat-DqrT6bEl.js +1215 -0
- package/components/ai-interaction-textarea/index.cjs +1 -1
- package/components/ai-interaction-textarea/index.js +3 -3
- package/components/area-chart-options.config-6UPR6pIm.cjs +20 -0
- package/components/area-chart-options.config-B2zmr9oP.cjs +20 -0
- package/components/area-chart-options.config-BOtP5Iww.js +21 -0
- package/components/area-chart-options.config-D-Fjb3XG.js +143 -0
- package/components/area-chart-positioning.config-BQmn-6Fk.cjs +20 -0
- package/components/area-chart-positioning.config-DVFM1BbU.js +53 -0
- package/components/area-chart-slots.config-DgWO75IA.js +21 -0
- package/components/area-chart-slots.config-DjLijZ1F.cjs +20 -0
- package/components/bar-chart-options.config-BLgJX-s8.cjs +20 -0
- package/components/bar-chart-options.config-BbMdfx83.cjs +20 -0
- package/components/bar-chart-options.config-_gBk92-r.js +21 -0
- package/components/bar-chart-options.config-uMgVDPTF.js +217 -0
- package/components/bar-chart-positioning.config-BXgM25BD.cjs +20 -0
- package/components/bar-chart-positioning.config-DkWhVC4w.js +57 -0
- package/components/bar-chart-slots.config-CADpGrHM.cjs +20 -0
- package/components/bar-chart-slots.config-CcIActv0.js +21 -0
- package/components/box-plot-options.config-C4Orn8En.js +21 -0
- package/components/box-plot-options.config-CCGnXi2p.cjs +20 -0
- package/components/box-plot-options.config-CCwj6_vZ.js +293 -0
- package/components/box-plot-options.config-CikKFF42.cjs +20 -0
- package/components/box-plot-positioning.config-BudyMG9P.cjs +20 -0
- package/components/box-plot-positioning.config-CGTo9FEr.js +46 -0
- package/components/box-plot-slots.config-BCnuJ33_.js +21 -0
- package/components/box-plot-slots.config-C-6xuhRq.cjs +20 -0
- package/components/bubble-chart-options.config-B99bV5XK.cjs +20 -0
- package/components/bubble-chart-options.config-C2F3tA5O.cjs +20 -0
- package/components/bubble-chart-options.config-D0raGP_n.js +21 -0
- package/components/bubble-chart-options.config-Rf848dek.js +112 -0
- package/components/bubble-chart-positioning.config-DiRpAY5r.js +53 -0
- package/components/bubble-chart-positioning.config-NATL1JeJ.cjs +20 -0
- package/components/bubble-chart-slots.config-4TR4yH66.cjs +20 -0
- package/components/bubble-chart-slots.config-g86N3mjB.js +21 -0
- package/components/bullet-chart-options.config-9Ojx88xT.cjs +20 -0
- package/components/bullet-chart-options.config-Bh9-Vis7.cjs +20 -0
- package/components/bullet-chart-options.config-CKCAvaS4.js +72 -0
- package/components/bullet-chart-options.config-D6MuxKs-.js +21 -0
- package/components/bullet-chart-positioning.config-DEnZPXW4.cjs +20 -0
- package/components/bullet-chart-positioning.config-Dg1777iY.js +54 -0
- package/components/bullet-chart-slots.config-B_yrfXMn.js +21 -0
- package/components/bullet-chart-slots.config-D8P4Rmqj.cjs +20 -0
- package/components/choropleth-map-options.config-3oYX9wwk.cjs +20 -0
- package/components/choropleth-map-options.config-AF9tkNqt.js +21 -0
- package/components/choropleth-map-options.config-CC3gMGkN.js +345 -0
- package/components/choropleth-map-options.config-CV-EYCJO.cjs +20 -0
- package/components/choropleth-map-positioning.config-C0qIyRhu.js +53 -0
- package/components/choropleth-map-positioning.config-Ucvtbavm.cjs +20 -0
- package/components/choropleth-map-slots.config-BacWtxW7.cjs +20 -0
- package/components/choropleth-map-slots.config-Z_5RJBuq.js +21 -0
- package/components/chunk-DU-zbXFI.js +21 -0
- package/components/circle-pack-chart-options.config-CQ8ZI3Z5.cjs +20 -0
- package/components/circle-pack-chart-options.config-YOkVNeoO.js +21 -0
- package/components/circle-pack-chart-positioning.config-D9A983qA.cjs +20 -0
- package/components/circle-pack-chart-positioning.config-T32JHpXf.js +46 -0
- package/components/circle-pack-chart-slots.config-CM3cTPHk.cjs +20 -0
- package/components/circle-pack-chart-slots.config-DAXYQafd.js +21 -0
- package/components/circular-gauge-options.config-BMLoqnYz.js +185 -0
- package/components/circular-gauge-options.config-BjOnGtF6.cjs +20 -0
- package/components/circular-gauge-options.config-Bw_65TAY.js +21 -0
- package/components/circular-gauge-options.config-DvFyMhSJ.cjs +20 -0
- package/components/circular-gauge-positioning.config-D51u7n1o.js +46 -0
- package/components/circular-gauge-positioning.config-DMl_hSQz.cjs +20 -0
- package/components/circular-gauge-slots.config-CqeEwYq7.cjs +20 -0
- package/components/circular-gauge-slots.config-D8BmFq5j.js +21 -0
- package/components/color-range-utils-B1Zb4CTn.js +61 -0
- package/components/color-range-utils-X1sKzKWw.cjs +20 -0
- package/components/column-chart-options.config-6VtQgyGV.js +21 -0
- package/components/column-chart-options.config-Bs3ykZa7.js +216 -0
- package/components/column-chart-options.config-CA2R9jef.cjs +20 -0
- package/components/column-chart-options.config-DcmyNE-q.cjs +20 -0
- package/components/column-chart-positioning.config-CA-2icGH.js +53 -0
- package/components/column-chart-positioning.config-CGEcdd7M.cjs +20 -0
- package/components/column-chart-slots.config-Cg35-9E3.js +21 -0
- package/components/column-chart-slots.config-DE2YA5Kx.cjs +20 -0
- package/components/combination-chart-options.config-BOHLb3E3.js +21 -0
- package/components/combination-chart-options.config-CnPwZ6La.cjs +20 -0
- package/components/combination-chart-positioning.config-DYb5gvZa.cjs +20 -0
- package/components/combination-chart-positioning.config-DsPSWTfy.js +46 -0
- package/components/combination-chart-slots.config-CWZvAnR8.js +21 -0
- package/components/combination-chart-slots.config-gmncfF4O.cjs +20 -0
- package/components/conditional-number-options.config-BW8_xVED.cjs +20 -0
- package/components/conditional-number-options.config-CHuHbQ_D.js +202 -0
- package/components/conditional-number-options.config-CWlzAVkn.cjs +20 -0
- package/components/conditional-number-options.config-vnmaeyD-.js +21 -0
- package/components/conditional-number-positioning.config-B0yleUxD.cjs +20 -0
- package/components/conditional-number-positioning.config-B1q_zwhM.js +46 -0
- package/components/conditional-number-slots.config-CSfJ7_9j.js +21 -0
- package/components/conditional-number-slots.config-Co1u90kE.cjs +20 -0
- package/components/dashboard-store-DxX8b03-.js +291 -0
- package/components/dashboard-store-Z5nuGcp6.js +22 -0
- package/components/data-field/index.cjs +1 -1
- package/components/data-field/index.js +5 -5
- package/components/data-field-B_mrcEtG.cjs +54 -0
- package/components/data-field-DK49i9j2.js +116 -0
- package/components/data-field-level/index.cjs +1 -1
- package/components/data-field-level/index.js +4 -4
- package/components/data-field-level-C60bl9-i.js +242 -0
- package/components/data-field-panel/index.cjs +1 -1
- package/components/data-field-panel/index.js +7 -7
- package/components/data-field-panel-BO4Up0cx.cjs +86 -0
- package/components/data-field-panel-CGuYCY8c.js +377 -0
- package/components/data-fields-select/index.cjs +1 -1
- package/components/data-fields-select/index.js +3 -3
- package/components/data-fields-select-Cw7mRpwc.js +258 -0
- package/components/data-fields-select-DAsN89RQ.cjs +40 -0
- package/components/dataset-selector-list/index.cjs +1 -1
- package/components/dataset-selector-list/index.js +2 -2
- package/components/dataset-selector-list-BQsL_8mz.js +308 -0
- package/components/dataset-selector-list-CBI_4lCc.cjs +74 -0
- package/components/dataset-selector-row/index.cjs +1 -1
- package/components/dataset-selector-row/index.js +3 -3
- package/components/dataset-selector-row-DR6QBsYF.cjs +82 -0
- package/components/dataset-selector-row-z04sfYw5.js +183 -0
- package/components/date-comparison-filter-options.config-BIrDsnoY.js +21 -0
- package/components/date-comparison-filter-options.config-WJr_kL1l.cjs +20 -0
- package/components/date-comparison-filter-slots.config-BSntr9Kz.cjs +20 -0
- package/components/date-comparison-filter-slots.config-BVPrXmZq.js +21 -0
- package/components/date-filter-options.config-Cly4eKnN.cjs +20 -0
- package/components/date-filter-options.config-KiYxN4PA.js +21 -0
- package/components/date-filter-slots.config-CLM1sTjV.js +21 -0
- package/components/date-filter-slots.config-CnTwtP7x.cjs +20 -0
- package/components/de-B8V-nRGJ.cjs +20 -0
- package/components/de-CqAC249h.js +219 -0
- package/components/display-settings/index.cjs +1 -1
- package/components/display-settings/index.js +2 -2
- package/components/display-settings-binning/index.cjs +1 -1
- package/components/display-settings-binning/index.js +3 -3
- package/components/display-settings-binning-DVJd-Dtc.cjs +56 -0
- package/components/display-settings-binning-DWgwc3IT.js +106 -0
- package/components/display-settings-datetime/index.cjs +1 -1
- package/components/display-settings-datetime/index.js +3 -3
- package/components/display-settings-datetime-BF0lmBAY.cjs +215 -0
- package/components/display-settings-datetime-C3-906TZ.js +404 -0
- package/components/display-settings-grand-totals/index.cjs +1 -1
- package/components/display-settings-grand-totals/index.js +3 -3
- package/components/display-settings-grand-totals-B3DVi-Tp.js +85 -0
- package/components/display-settings-grand-totals-C-JC2DKh.cjs +44 -0
- package/components/display-settings-numeric/index.cjs +1 -1
- package/components/display-settings-numeric/index.js +3 -3
- package/components/display-settings-numeric-Cl6QA2fW.cjs +189 -0
- package/components/display-settings-numeric-DlRDDV1S.js +476 -0
- package/components/display-settings-period-over-period/index.cjs +1 -1
- package/components/display-settings-period-over-period/index.js +3 -3
- package/components/display-settings-period-over-period-CM-cRqfP.cjs +225 -0
- package/components/display-settings-period-over-period-Lwj0ffDX.js +428 -0
- package/components/donut-chart-options.config-CVeav98f.cjs +20 -0
- package/components/donut-chart-options.config-DTDSZ-fj.js +21 -0
- package/components/donut-chart-positioning.config-B7XL9yeZ.js +46 -0
- package/components/donut-chart-positioning.config-BRDybXtX.cjs +20 -0
- package/components/donut-chart-slots.config-OrDi4e1Y.js +21 -0
- package/components/donut-chart-slots.config-VeM-72W0.cjs +20 -0
- package/components/dropdown-filter-options.config-BOofkrMv.cjs +20 -0
- package/components/dropdown-filter-options.config-DwKJdV5L.js +21 -0
- package/components/dropdown-filter-slots.config-B_vfIsAR.cjs +20 -0
- package/components/dropdown-filter-slots.config-BocCZFJF.js +21 -0
- package/components/es-BSyaPyYv.cjs +20 -0
- package/components/es-D4oDSaX8.js +219 -0
- package/components/evolution-number-options.config-BKPIr2Z5.cjs +20 -0
- package/components/evolution-number-options.config-D67uUW38.cjs +20 -0
- package/components/evolution-number-options.config-Dugk-Irt.js +225 -0
- package/components/evolution-number-options.config-visbIigs.js +21 -0
- package/components/evolution-number-positioning.config-DwSeryO6.js +46 -0
- package/components/evolution-number-positioning.config-qQpDUZTc.cjs +20 -0
- package/components/evolution-number-slots.config-BYROw474.cjs +20 -0
- package/components/evolution-number-slots.config-CBA9DBaa.js +21 -0
- package/components/filter-expression-picker/index.cjs +1 -1
- package/components/filter-expression-picker/index.js +3 -3
- package/components/filter-expression-picker-3-sENJ-8.cjs +38 -0
- package/components/filter-expression-picker-BqAH4WQE.js +422 -0
- package/components/filter-item/index.cjs +1 -1
- package/components/filter-item/index.js +11 -11
- package/components/filter-item-Cj-dzINC.js +234 -0
- package/components/filter-item-DQep8rdE.cjs +56 -0
- package/components/filter-value-picker/index.cjs +1 -1
- package/components/filter-value-picker/index.js +8 -8
- package/components/filter-value-picker-CtDRyK_W.cjs +59 -0
- package/components/filter-value-picker-DJq03uHS.js +142 -0
- package/components/filter-value-picker-datetime/index.cjs +1 -1
- package/components/filter-value-picker-datetime/index.js +3 -3
- package/components/filter-value-picker-datetime-DyN_D-yw.js +132 -0
- package/components/filter-value-picker-datetime-K24qP4FZ.cjs +39 -0
- package/components/filter-value-picker-hierarchy/index.cjs +1 -1
- package/components/filter-value-picker-hierarchy/index.js +5 -5
- package/components/filter-value-picker-hierarchy-6UD6hLvY.js +226 -0
- package/components/filter-value-picker-hierarchy-Dp57JCb5.cjs +46 -0
- package/components/filter-value-picker-numeric/index.cjs +1 -1
- package/components/filter-value-picker-numeric/index.js +3 -3
- package/components/filter-value-picker-numeric-92CjACnk.js +214 -0
- package/components/filter-value-picker-numeric-ej2IN6lR.cjs +47 -0
- package/components/filters/index.cjs +1 -1
- package/components/filters/index.js +12 -12
- package/components/filters-BvomYejq.js +388 -0
- package/components/filters-CDwqaSlF.cjs +145 -0
- package/components/fr-BzeihNbz.cjs +20 -0
- package/components/fr-C35O2h6F.js +219 -0
- package/components/funnel-chart-options.config-BhWbhjVJ.js +184 -0
- package/components/funnel-chart-options.config-CR0BsYRL.cjs +20 -0
- package/components/funnel-chart-options.config-DeVKMmrf.js +21 -0
- package/components/funnel-chart-options.config-LYxHIfsT.cjs +20 -0
- package/components/funnel-chart-positioning.config-DAdTr9Iy.js +46 -0
- package/components/funnel-chart-positioning.config-DDibmDzS.cjs +20 -0
- package/components/funnel-chart-slots.config-DRnTlFRV.js +21 -0
- package/components/funnel-chart-slots.config-HlWOU-HT.cjs +20 -0
- package/components/get-css-variable-CVIM_YN8.js +1209 -0
- package/components/heat-map-options.config-CA1cSG0P.cjs +20 -0
- package/components/heat-map-options.config-CcIEC004.js +221 -0
- package/components/heat-map-options.config-CuIyuorP.js +21 -0
- package/components/heat-map-options.config-DzJAgvAO.cjs +20 -0
- package/components/heat-map-positioning.config-BFtYjOm1.cjs +20 -0
- package/components/heat-map-positioning.config-BzT6nJlY.js +46 -0
- package/components/heat-map-slots.config-BiuWa5o6.cjs +20 -0
- package/components/heat-map-slots.config-DF_3as4r.js +21 -0
- package/components/heat-table-options.config-BawCaaKt.js +21 -0
- package/components/heat-table-options.config-CsDRFkD8.js +369 -0
- package/components/heat-table-options.config-DHhp6h3C.cjs +20 -0
- package/components/heat-table-options.config-DaLGjhrH.cjs +20 -0
- package/components/heat-table-positioning.config-CBsQS3ja.js +53 -0
- package/components/heat-table-positioning.config-Vkj4vWkB.cjs +20 -0
- package/components/heat-table-slots.config-CepZWZaM.js +21 -0
- package/components/heat-table-slots.config-Lh-tPVbB.cjs +20 -0
- package/components/helpers-BI2EFKyr.js +64 -0
- package/components/helpers-D_wpIYRY.cjs +20 -0
- package/components/hexbin-map-options.config-BLvdwou3.cjs +20 -0
- package/components/hexbin-map-options.config-BO6zuaKv.cjs +20 -0
- package/components/hexbin-map-options.config-CrFLJ_Pu.js +21 -0
- package/components/hexbin-map-options.config-DygAKUot.js +273 -0
- package/components/hexbin-map-positioning.config-BQbPC0c9.cjs +20 -0
- package/components/hexbin-map-positioning.config-BmAzYoC1.js +46 -0
- package/components/hexbin-map-slots.config-BMCsaEpN.js +21 -0
- package/components/hexbin-map-slots.config-DJTtpgNv.cjs +20 -0
- package/components/image-options.config-Byb_MHDH.cjs +20 -0
- package/components/image-options.config-jAHljxJ_.js +21 -0
- package/components/image-slots.config--vBJHr7S.cjs +20 -0
- package/components/image-slots.config-C-jt7ywG.js +21 -0
- package/components/index.cjs +1 -1
- package/components/index.js +52 -52
- package/components/item-grid/index.cjs +1 -1
- package/components/item-grid/index.js +3 -3
- package/components/item-grid-B5KHCQOK.js +7627 -0
- package/components/item-grid-DvM4a8qV.cjs +320 -0
- package/components/item-list.js +1 -1
- package/components/item-option/index.cjs +1 -1
- package/components/item-option/index.js +3 -3
- package/components/item-option-DEgf6tSw.js +961 -0
- package/components/item-option-Dyufdill.cjs +252 -0
- package/components/item-option-action-button-group/index.cjs +1 -1
- package/components/item-option-action-button-group/index.js +4 -4
- package/components/item-option-action-button-group-BSlTLJtr.js +113 -0
- package/components/item-option-color-palette-picker/index.cjs +1 -1
- package/components/item-option-color-palette-picker/index.js +4 -4
- package/components/item-option-color-palette-picker-DYV-y1Lw.js +2032 -0
- package/components/item-option-color-picker/index.cjs +1 -1
- package/components/item-option-color-picker/index.js +4 -4
- package/components/item-option-color-picker-Dg7AynT_.js +82 -0
- package/components/item-option-color-range/index.cjs +1 -1
- package/components/item-option-color-range/index.js +4 -4
- package/components/item-option-color-range-DTmGpr4K.cjs +95 -0
- package/components/item-option-color-range-Dppz-T6c.js +213 -0
- package/components/item-option-multi-language-field/index.cjs +1 -1
- package/components/item-option-multi-language-field/index.js +4 -4
- package/components/item-option-multi-language-field-nZ7tmBwz.js +76 -0
- package/components/item-option-number-field/index.cjs +1 -1
- package/components/item-option-number-field/index.js +4 -4
- package/components/item-option-number-field-BpoOM7Gz.js +96 -0
- package/components/item-option-panel/index.cjs +1 -1
- package/components/item-option-panel/index.js +4 -4
- package/components/item-option-panel-DCMBoE2n.js +174 -0
- package/components/item-option-panel-DilsSu04.cjs +67 -0
- package/components/item-option-picker/index.cjs +1 -1
- package/components/item-option-picker/index.js +4 -4
- package/components/item-option-picker-C38RRlNJ.js +71 -0
- package/components/item-option-position-picker/index.cjs +1 -1
- package/components/item-option-position-picker/index.js +4 -4
- package/components/item-option-position-picker-BXqB382x.js +79 -0
- package/components/item-option-positions-number-field/index.cjs +1 -1
- package/components/item-option-positions-number-field/index.js +4 -4
- package/components/item-option-positions-number-field-CBS5f49Z.js +154 -0
- package/components/item-option-radio-button-group/index.cjs +1 -1
- package/components/item-option-radio-button-group/index.js +4 -4
- package/components/item-option-radio-button-group-WbRR5sFK.js +69 -0
- package/components/item-option-slider/index.cjs +1 -1
- package/components/item-option-slider/index.js +4 -4
- package/components/item-option-slider-D8jYOtXL.js +76 -0
- package/components/item-option-switch/index.cjs +1 -1
- package/components/item-option-switch/index.js +4 -4
- package/components/item-option-switch-DinkcbQG.js +65 -0
- package/components/item-option-text-field/index.cjs +1 -1
- package/components/item-option-text-field/index.js +4 -4
- package/components/item-option-text-field-DAHWZfI8.js +74 -0
- package/components/item-options-configs.cjs +1 -1
- package/components/item-options-configs.js +46 -46
- package/components/item-slot-drop/index.cjs +1 -1
- package/components/item-slot-drop/index.js +7 -7
- package/components/item-slot-drop-BPpeBQgb.js +306 -0
- package/components/item-slot-drop-Bc_C9K6O.cjs +87 -0
- package/components/item-slot-drop-panel/index.cjs +1 -1
- package/components/item-slot-drop-panel/index.js +8 -8
- package/components/item-slot-drop-panel-CcD2CipR.js +339 -0
- package/components/item-slot-drop-panel-CwYFyUOE.cjs +57 -0
- package/components/item-slot-picker/index.cjs +1 -1
- package/components/item-slot-picker/index.js +7 -7
- package/components/item-slot-picker-DQ-PJeEh.js +430 -0
- package/components/item-slot-picker-n5_s13Xc.cjs +139 -0
- package/components/item-slot-picker-panel/index.cjs +1 -1
- package/components/item-slot-picker-panel/index.js +9 -9
- package/components/item-slot-picker-panel-C58-4JQJ.cjs +77 -0
- package/components/item-slot-picker-panel-CkWH3xT2.js +431 -0
- package/components/item-slots-configs.cjs +1 -1
- package/components/item-slots-configs.js +45 -45
- package/components/item-store-B95c9uzO.js +169 -0
- package/components/item-store-CTb_8LV4.js +22 -0
- package/components/line-chart-options.config-BB_lFdyR.js +21 -0
- package/components/line-chart-options.config-Bsd1SPG-.cjs +20 -0
- package/components/line-chart-options.config-CzSn2FXz.js +165 -0
- package/components/line-chart-options.config-wrTCq7TL.cjs +20 -0
- package/components/line-chart-positioning.config-CM7jh-Jg.js +53 -0
- package/components/line-chart-positioning.config-CM8V5QoD.cjs +20 -0
- package/components/line-chart-slots.config-B-JL86YZ.js +21 -0
- package/components/line-chart-slots.config-e2Hp4_L_.cjs +20 -0
- package/components/load-data-fields-for-datasets-Da4pn0Tj.js +40 -0
- package/components/localized-mixin-12rLbXJL.js +43 -0
- package/components/localized-mixin-DiD8Bmip.cjs +20 -0
- package/components/marker-map-options.config-BoO2lJAJ.js +21 -0
- package/components/marker-map-options.config-CM09fPiP.cjs +20 -0
- package/components/marker-map-options.config-CcQml8_o.js +114 -0
- package/components/marker-map-options.config-DtTdo0XX.cjs +20 -0
- package/components/marker-map-positioning.config-C1C-jInQ.cjs +20 -0
- package/components/marker-map-positioning.config-CkULBQTL.js +46 -0
- package/components/marker-map-slots.config-Bh40qiir.js +21 -0
- package/components/marker-map-slots.config-BvhwooWC.cjs +20 -0
- package/components/nl-B_1VnbMI.js +219 -0
- package/components/nl-CR0Gpa1F.cjs +20 -0
- package/components/ohlc-chart-options.config-BVlBYNHB.js +21 -0
- package/components/ohlc-chart-options.config-DWTv3j9Z.cjs +20 -0
- package/components/ohlc-chart-positioning.config-7bwr8_jQ.cjs +20 -0
- package/components/ohlc-chart-positioning.config-BpFj51t-.js +76 -0
- package/components/ohlc-chart-slots.config-0ehC5Fyt.cjs +20 -0
- package/components/ohlc-chart-slots.config-CicAaTrF.js +21 -0
- package/components/parallel-coordinates-plot-options.config-CJXREoSo.js +21 -0
- package/components/parallel-coordinates-plot-options.config-COFegmQi.cjs +20 -0
- package/components/parallel-coordinates-plot-positioning.config-D9Lpdhwd.js +46 -0
- package/components/parallel-coordinates-plot-positioning.config-qluYShnu.cjs +20 -0
- package/components/parallel-coordinates-plot-slots.config-BQYv9pk0.js +21 -0
- package/components/parallel-coordinates-plot-slots.config-BsMuvluj.cjs +20 -0
- package/components/pivot-table-options.config-CfOby8JC.js +21 -0
- package/components/pivot-table-options.config-CiuWB8oe.cjs +20 -0
- package/components/pivot-table-options.config-bigHk0oz.cjs +20 -0
- package/components/pivot-table-options.config-v42JLh6t.js +242 -0
- package/components/pivot-table-positioning.config-B7GzNxXt.js +53 -0
- package/components/pivot-table-positioning.config-BsDcySbu.cjs +20 -0
- package/components/pivot-table-slots.config-BSJQbcN1.cjs +20 -0
- package/components/pivot-table-slots.config-BZu33X7q.js +21 -0
- package/components/pyramid-chart-options.config-2fjGdHad.js +21 -0
- package/components/pyramid-chart-options.config-DO9OZHSA.cjs +20 -0
- package/components/pyramid-chart-options.config-Yu_517JV.js +237 -0
- package/components/pyramid-chart-options.config-gkvD6SIe.cjs +20 -0
- package/components/pyramid-chart-positioning.config-DdIRd4ml.js +53 -0
- package/components/pyramid-chart-positioning.config-TQyFx60J.cjs +20 -0
- package/components/pyramid-chart-slots.config-D77mG7I1.js +21 -0
- package/components/pyramid-chart-slots.config-mK1P8O3f.cjs +20 -0
- package/components/radar-chart-options.config-C3HSPFQN.js +21 -0
- package/components/radar-chart-options.config-CsvC97KN.js +127 -0
- package/components/radar-chart-options.config-DmkGWg9N.cjs +20 -0
- package/components/radar-chart-options.config-fBo9ach1.cjs +20 -0
- package/components/radar-chart-positioning.config-BFRILIos.js +53 -0
- package/components/radar-chart-positioning.config-Bdr6-tPk.cjs +20 -0
- package/components/radar-chart-slots.config-B4YB7uGr.cjs +20 -0
- package/components/radar-chart-slots.config-BYb2Oub2.js +21 -0
- package/components/regular-table-options.config-B3rQGN9V.cjs +20 -0
- package/components/regular-table-options.config-BMSRhV7M.cjs +20 -0
- package/components/regular-table-options.config-CF4EOAz8.js +145 -0
- package/components/regular-table-options.config-DwAETVQp.js +21 -0
- package/components/regular-table-slots.config-B3HOyJZP.cjs +20 -0
- package/components/regular-table-slots.config-BcVWf56j.js +21 -0
- package/components/route-map-options.config-BVIi1DTt.cjs +20 -0
- package/components/route-map-options.config-CEbZG5LS.js +21 -0
- package/components/route-map-options.config-CqLIyCr3.cjs +20 -0
- package/components/route-map-options.config-D2EP5psz.js +323 -0
- package/components/route-map-positioning.config-B2ZMiKmq.cjs +20 -0
- package/components/route-map-positioning.config-B8Kwn58p.js +64 -0
- package/components/route-map-slots.config-BCEdcAsa.cjs +20 -0
- package/components/route-map-slots.config-DSstcwAB.js +21 -0
- package/components/sankey-diagram-options.config-BJnNfFia.js +21 -0
- package/components/sankey-diagram-options.config-C6vB9-w3.cjs +20 -0
- package/components/sankey-diagram-options.config-DJGM8kdV.js +123 -0
- package/components/sankey-diagram-options.config-kGjLZs_2.cjs +20 -0
- package/components/sankey-diagram-positioning.config-BUkMbN4Z.js +64 -0
- package/components/sankey-diagram-positioning.config-CPMneasr.cjs +20 -0
- package/components/sankey-diagram-slots.config-B48yw2jh.js +21 -0
- package/components/sankey-diagram-slots.config-BJcLpDP1.cjs +20 -0
- package/components/scatter-plot-options.config-5zZB0ZGK.cjs +20 -0
- package/components/scatter-plot-options.config-BWonrzmW.js +299 -0
- package/components/scatter-plot-options.config-CDYD_sKA.cjs +20 -0
- package/components/scatter-plot-options.config-DzCJWMr0.js +21 -0
- package/components/scatter-plot-positioning.config-DK8SDoQL.js +75 -0
- package/components/scatter-plot-positioning.config-DWDZ2Mm6.cjs +20 -0
- package/components/scatter-plot-slots.config-CbdskkNg.cjs +20 -0
- package/components/scatter-plot-slots.config-aUOSnkNl.js +21 -0
- package/components/search-filter-options.config-DTu5psLb.cjs +20 -0
- package/components/search-filter-options.config-Diw-iX5j.js +21 -0
- package/components/search-filter-slots.config-DNyvP44P.js +21 -0
- package/components/search-filter-slots.config-DpZeFnf4.cjs +20 -0
- package/components/set-locale-CN_4EtlW.cjs +20 -0
- package/components/set-locale-DVGy0VKD.js +43 -0
- package/components/slicer-filter-options.config-BeHLVjcY.js +223 -0
- package/components/slicer-filter-options.config-CCHM95L0.js +21 -0
- package/components/slicer-filter-options.config-Cxq42zN-.cjs +20 -0
- package/components/slicer-filter-options.config-gopvysEM.cjs +20 -0
- package/components/slicer-filter-positioning.config-Dpseu8CF.cjs +20 -0
- package/components/slicer-filter-positioning.config-vDMF78K6.js +46 -0
- package/components/slicer-filter-slots.config-B5qJkavM.js +21 -0
- package/components/slicer-filter-slots.config-DN7adQKw.cjs +20 -0
- package/components/slider-filter-options.config-BvftI9lv.js +21 -0
- package/components/slider-filter-options.config-DjPT4m6j.js +69 -0
- package/components/slider-filter-options.config-mZ_gA62o.cjs +20 -0
- package/components/slider-filter-options.config-sqkI2jcV.cjs +20 -0
- package/components/slider-filter-slots.config-DRmfv9lL.js +21 -0
- package/components/slider-filter-slots.config-NGFFNUY0.cjs +20 -0
- package/components/slot-menu/index.cjs +1 -1
- package/components/slot-menu/index.js +5 -5
- package/components/slot-menu-CFT8JQv4.js +372 -0
- package/components/slot-menu-list/index.cjs +1 -1
- package/components/slot-menu-list/index.js +4 -4
- package/components/slot-menu-list-DvMQvfBl.js +285 -0
- package/components/slots-config-DAh6LE0O.js +75 -0
- package/components/slots-config-Dxz5MxUN.cjs +20 -0
- package/components/speedometer-chart-options.config-BcsqMGd0.cjs +20 -0
- package/components/speedometer-chart-options.config-C9jiUxtr.cjs +20 -0
- package/components/speedometer-chart-options.config-Ds389QIV.js +243 -0
- package/components/speedometer-chart-options.config-tDtFRNSP.js +21 -0
- package/components/speedometer-chart-positioning.config-CeSR3F7-.js +46 -0
- package/components/speedometer-chart-positioning.config-Czolv_lA.cjs +20 -0
- package/components/speedometer-chart-slots.config-CQ365XLM.js +21 -0
- package/components/speedometer-chart-slots.config-DpkxwiMb.cjs +20 -0
- package/components/spike-map-options.config-BRHeIFwS.cjs +20 -0
- package/components/spike-map-options.config-CDs-wCip.js +410 -0
- package/components/spike-map-options.config-D8RiuOlW.js +21 -0
- package/components/spike-map-options.config-csQGkCTh.cjs +20 -0
- package/components/spike-map-positioning.config-Cf5H_3q1.js +53 -0
- package/components/spike-map-positioning.config-CuN6S8xj.cjs +20 -0
- package/components/spike-map-slots.config-3m5mq_3U.cjs +20 -0
- package/components/spike-map-slots.config-B9IBZKip.js +21 -0
- package/components/strip-plot-options.config-BNi60jA8.cjs +20 -0
- package/components/strip-plot-options.config-DHcZaeMF.js +21 -0
- package/components/strip-plot-positioning.config-BQnrS7m0.cjs +20 -0
- package/components/strip-plot-positioning.config-DDE4dOyE.js +46 -0
- package/components/strip-plot-slots.config-B18-XTz9.js +21 -0
- package/components/strip-plot-slots.config-DklU3iKj.cjs +20 -0
- package/components/sunburst-chart-options.config-C6pZ3h8U.js +21 -0
- package/components/sunburst-chart-options.config-ngsV9LyF.cjs +20 -0
- package/components/sunburst-chart-positioning.config-Cxh0fiYk.js +46 -0
- package/components/sunburst-chart-positioning.config-FDOCmELF.cjs +20 -0
- package/components/sunburst-chart-slots.config-CgzRpwdC.cjs +20 -0
- package/components/sunburst-chart-slots.config-rO6slLsQ.js +21 -0
- package/components/symbol-map-options.config-BUsIEIVK.js +154 -0
- package/components/symbol-map-options.config-BV6rh2c8.cjs +20 -0
- package/components/symbol-map-options.config-CX6FGdQr.js +21 -0
- package/components/symbol-map-options.config-J8zT4ynI.cjs +20 -0
- package/components/symbol-map-positioning.config-AfBex4Vk.js +53 -0
- package/components/symbol-map-positioning.config-D6CinhUb.cjs +20 -0
- package/components/symbol-map-slots.config-DCF6ZpAC.js +21 -0
- package/components/symbol-map-slots.config-DO14oTtC.cjs +20 -0
- package/components/text-options.config-CJ3xtIjD.cjs +20 -0
- package/components/text-options.config-DPHp_8ku.js +21 -0
- package/components/text-slots.config-1d5l7sdO.js +21 -0
- package/components/text-slots.config-D2MGP7n6.cjs +20 -0
- package/components/themes-D03BmHjI.js +72 -0
- package/components/treemap-chart-options.config-2K50kxq5.cjs +20 -0
- package/components/treemap-chart-options.config-7Ub8DGU1.js +181 -0
- package/components/treemap-chart-options.config-KVnA-Dry.js +21 -0
- package/components/treemap-chart-options.config-UJhm5ytp.cjs +20 -0
- package/components/treemap-chart-positioning.config-DVZa5Dm5.js +53 -0
- package/components/treemap-chart-positioning.config-erWZI4oU.cjs +20 -0
- package/components/treemap-chart-slots.config-C2bJodC8.js +21 -0
- package/components/treemap-chart-slots.config-gNukTo8T.cjs +20 -0
- package/components/utils/base.cjs +1 -1
- package/components/utils/base.js +2 -2
- package/components/utils/store.js +5 -5
- package/components/utils-BlRaHMcZ.js +63 -0
- package/components/utils-SplPvYR_.cjs +20 -0
- package/components/utils.cjs +1 -1
- package/components/utils.js +5 -5
- package/components/venn-diagram-options.config-CuaMwKLL.cjs +20 -0
- package/components/venn-diagram-options.config-s9MWYnV-.js +21 -0
- package/components/venn-diagram-positioning.config-CqlJ3VC4.js +53 -0
- package/components/venn-diagram-positioning.config-p2xh99LU.cjs +20 -0
- package/components/venn-diagram-slots.config-CoamxDZU.js +21 -0
- package/components/venn-diagram-slots.config-v66ObSoz.cjs +20 -0
- package/components/video-options.config-DYMWT0Os.js +21 -0
- package/components/video-options.config-ea3gIwYz.cjs +20 -0
- package/components/video-slots.config-C5VvqWmi.js +21 -0
- package/components/video-slots.config-CKEsOD63.cjs +20 -0
- package/components/viz-item-menu/index.cjs +1 -1
- package/components/viz-item-menu/index.js +3 -3
- package/components/viz-item-menu-B8mxBz1B.js +162 -0
- package/components/viz-item-menu-DMLcYBxg.cjs +55 -0
- package/components/wordcloud-chart-options.config-BbWazt_6.js +87 -0
- package/components/wordcloud-chart-options.config-Bz6Cwutu.cjs +20 -0
- package/components/wordcloud-chart-options.config-CYXNke8u.cjs +20 -0
- package/components/wordcloud-chart-options.config-woekLAJu.js +21 -0
- package/components/wordcloud-chart-positioning.config-DAFRXj9x.js +53 -0
- package/components/wordcloud-chart-positioning.config-HTEFGyT0.cjs +20 -0
- package/components/wordcloud-chart-slots.config-CBAEQAHN.cjs +20 -0
- package/components/wordcloud-chart-slots.config-Io6R4kzY.js +21 -0
- package/custom-elements.json +49 -6
- package/package.json +2 -2
- package/types/ai-chat.types.d.ts +3 -0
- package/components/ai-chat-BESOmny_.cjs +0 -115
- package/components/ai-chat-CUWefRH3.js +0 -1107
- package/components/area-chart-options.config-CcY14BOA.js +0 -143
- package/components/area-chart-options.config-D3wkfLIJ.cjs +0 -20
- package/components/area-chart-options.config-N7wfxV92.cjs +0 -20
- package/components/area-chart-options.config-faHluStC.js +0 -21
- package/components/area-chart-positioning.config-DVYCRqs_.cjs +0 -20
- package/components/area-chart-positioning.config-DW24wXqx.js +0 -53
- package/components/area-chart-slots.config--mqsjuLX.js +0 -21
- package/components/area-chart-slots.config-DwhLv5VD.cjs +0 -20
- package/components/bar-chart-options.config-34L6pYbi.cjs +0 -20
- package/components/bar-chart-options.config-D6fIzxzr.cjs +0 -20
- package/components/bar-chart-options.config-DMJQR92m.js +0 -217
- package/components/bar-chart-options.config-DPeyVPYq.js +0 -21
- package/components/bar-chart-positioning.config-L-mfKSm0.js +0 -57
- package/components/bar-chart-positioning.config-wOHB36GL.cjs +0 -20
- package/components/bar-chart-slots.config-Bzwph1ZH.js +0 -21
- package/components/bar-chart-slots.config-DhN80-re.cjs +0 -20
- package/components/box-plot-options.config--J3oLyCd.js +0 -293
- package/components/box-plot-options.config-Dv5K0Hx1.cjs +0 -20
- package/components/box-plot-options.config-rN1deHkn.js +0 -21
- package/components/box-plot-options.config-tZgl894L.cjs +0 -20
- package/components/box-plot-positioning.config-COnidaMC.cjs +0 -20
- package/components/box-plot-positioning.config-DlmTcWJL.js +0 -46
- package/components/box-plot-slots.config-CnDRGy6E.cjs +0 -20
- package/components/box-plot-slots.config-niR9zjuf.js +0 -21
- package/components/bubble-chart-options.config-BTMgdRPF.js +0 -21
- package/components/bubble-chart-options.config-Co1XyWCA.cjs +0 -20
- package/components/bubble-chart-options.config-D1H0-EMR.cjs +0 -20
- package/components/bubble-chart-options.config-aRrKK8Ii.js +0 -112
- package/components/bubble-chart-positioning.config-MWVa99rV.cjs +0 -20
- package/components/bubble-chart-positioning.config-pIaAs12w.js +0 -53
- package/components/bubble-chart-slots.config-C-dyOSVY.js +0 -21
- package/components/bubble-chart-slots.config-wfccaql8.cjs +0 -20
- package/components/bullet-chart-options.config-Csbxzs3F.cjs +0 -20
- package/components/bullet-chart-options.config-Cts5BYF3.cjs +0 -20
- package/components/bullet-chart-options.config-sgup3oXg.js +0 -72
- package/components/bullet-chart-options.config-xy_STmfb.js +0 -21
- package/components/bullet-chart-positioning.config-CNvspZ7J.cjs +0 -20
- package/components/bullet-chart-positioning.config-DZSlc311.js +0 -54
- package/components/bullet-chart-slots.config-BN8uNvzH.js +0 -21
- package/components/bullet-chart-slots.config-CPhAWoAn.cjs +0 -20
- package/components/choropleth-map-options.config-Bp4oiq7R.cjs +0 -20
- package/components/choropleth-map-options.config-C2Kpmkxk.js +0 -343
- package/components/choropleth-map-options.config-CZXqifmx.cjs +0 -20
- package/components/choropleth-map-options.config-D040b8cq.js +0 -21
- package/components/choropleth-map-positioning.config-B6pmKYck.js +0 -53
- package/components/choropleth-map-positioning.config-D60bNs0e.cjs +0 -20
- package/components/choropleth-map-slots.config-2Mp0f5X6.cjs +0 -20
- package/components/choropleth-map-slots.config-DP05dMGc.js +0 -21
- package/components/circle-pack-chart-options.config-CDeI4UV0.js +0 -21
- package/components/circle-pack-chart-options.config-Cg1YmEE1.cjs +0 -20
- package/components/circle-pack-chart-positioning.config-Lj8D0F47.js +0 -46
- package/components/circle-pack-chart-positioning.config-MwgGgjaX.cjs +0 -20
- package/components/circle-pack-chart-slots.config-1dvFsIi6.cjs +0 -20
- package/components/circle-pack-chart-slots.config-mBBQ3ChT.js +0 -21
- package/components/circular-gauge-options.config-CAvcVBuT.js +0 -21
- package/components/circular-gauge-options.config-Ce6HFrhX.js +0 -185
- package/components/circular-gauge-options.config-Cr-mWh6R.cjs +0 -20
- package/components/circular-gauge-options.config-Dr-9zVsF.cjs +0 -20
- package/components/circular-gauge-positioning.config-CgC1XVjy.js +0 -46
- package/components/circular-gauge-positioning.config-Qwg7HNl1.cjs +0 -20
- package/components/circular-gauge-slots.config-D4CEZIkS.js +0 -21
- package/components/circular-gauge-slots.config-KBFvKcov.cjs +0 -20
- package/components/color-range-utils-Chyz7WSK.js +0 -61
- package/components/color-range-utils-X0NoMXQP.cjs +0 -20
- package/components/column-chart-options.config-B83OdSzH.cjs +0 -20
- package/components/column-chart-options.config-DaGo3UPc.cjs +0 -20
- package/components/column-chart-options.config-DuWqubdk.js +0 -216
- package/components/column-chart-options.config-DxH6Wkzv.js +0 -21
- package/components/column-chart-positioning.config-WrilAzV_.cjs +0 -20
- package/components/column-chart-positioning.config-sWfkIMAv.js +0 -53
- package/components/column-chart-slots.config-BOrEQ9zB.cjs +0 -20
- package/components/column-chart-slots.config-CS5VtjTN.js +0 -21
- package/components/combination-chart-options.config-B66IvpE7.cjs +0 -20
- package/components/combination-chart-options.config-BJo7Dywr.js +0 -21
- package/components/combination-chart-positioning.config-Box3wPHN.cjs +0 -20
- package/components/combination-chart-positioning.config-iq0Qm3_Z.js +0 -46
- package/components/combination-chart-slots.config-CO84f8lq.js +0 -21
- package/components/combination-chart-slots.config-IEqa3vNU.cjs +0 -20
- package/components/conditional-number-options.config-BG13iTC7.js +0 -21
- package/components/conditional-number-options.config-CkFrzLQ8.cjs +0 -20
- package/components/conditional-number-options.config-Tr9Unb8d.cjs +0 -20
- package/components/conditional-number-options.config-bCNzHQkV.js +0 -201
- package/components/conditional-number-positioning.config-BYzD84_1.cjs +0 -20
- package/components/conditional-number-positioning.config-D_gzQOaV.js +0 -46
- package/components/conditional-number-slots.config-Bh4LNgTJ.js +0 -21
- package/components/conditional-number-slots.config-D4vkmOkJ.cjs +0 -20
- package/components/dashboard-store-BvJXzTYx.js +0 -22
- package/components/dashboard-store-CABa4USm.js +0 -291
- package/components/data-field-DY0vTxzI.js +0 -116
- package/components/data-field-DYqNZOUF.cjs +0 -54
- package/components/data-field-level-XuUMAZlR.js +0 -242
- package/components/data-field-panel-CKc74BFY.js +0 -377
- package/components/data-field-panel-VgFkJ0aL.cjs +0 -86
- package/components/data-fields-select-CT_nHj54.js +0 -258
- package/components/data-fields-select-cqu8GYXD.cjs +0 -40
- package/components/dataset-selector-list-BWe9GmlS.cjs +0 -74
- package/components/dataset-selector-list-CA7bLSQv.js +0 -308
- package/components/dataset-selector-row-DvzyItQS.cjs +0 -82
- package/components/dataset-selector-row-a5GXd9bd.js +0 -183
- package/components/date-comparison-filter-options.config-BxMEjU8o.cjs +0 -20
- package/components/date-comparison-filter-options.config-Cfhga0uT.js +0 -21
- package/components/date-comparison-filter-slots.config-D7ruNdYO.cjs +0 -20
- package/components/date-comparison-filter-slots.config-DPytzabB.js +0 -21
- package/components/date-filter-options.config-8Q0Uqiq3.cjs +0 -20
- package/components/date-filter-options.config-CRYHdCgK.js +0 -21
- package/components/date-filter-slots.config-7V9B8ldl.js +0 -21
- package/components/date-filter-slots.config-GGBGAdF3.cjs +0 -20
- package/components/de-Bf2VFw-x.cjs +0 -20
- package/components/de-DvNwu9VQ.js +0 -218
- package/components/display-settings-binning-C2r57Fry.js +0 -106
- package/components/display-settings-binning-CnJWueZx.cjs +0 -56
- package/components/display-settings-datetime-C6_LixJp.cjs +0 -215
- package/components/display-settings-datetime-qmiiKrhJ.js +0 -404
- package/components/display-settings-grand-totals-BwiU3Vh8.js +0 -85
- package/components/display-settings-grand-totals-hWqhOTEC.cjs +0 -44
- package/components/display-settings-numeric-B5uxkOuA.js +0 -476
- package/components/display-settings-numeric-CBpDIbbq.cjs +0 -189
- package/components/display-settings-period-over-period-B6tX8meQ.cjs +0 -225
- package/components/display-settings-period-over-period-CcYF-Mes.js +0 -428
- package/components/donut-chart-options.config-BW0sXuSo.cjs +0 -20
- package/components/donut-chart-options.config-wapGtIzL.js +0 -21
- package/components/donut-chart-positioning.config-08AgVlNR.js +0 -46
- package/components/donut-chart-positioning.config-C6JRxM5I.cjs +0 -20
- package/components/donut-chart-slots.config-D9Jtl-l4.js +0 -21
- package/components/donut-chart-slots.config-sEKS4wOs.cjs +0 -20
- package/components/dropdown-filter-options.config-BpMQmw0X.cjs +0 -20
- package/components/dropdown-filter-options.config-D9vj6qoi.js +0 -21
- package/components/dropdown-filter-slots.config-Bzv_8Nkf.cjs +0 -20
- package/components/dropdown-filter-slots.config-Xbq0nSJS.js +0 -21
- package/components/es-CHCcffu5.js +0 -218
- package/components/es-mqakqfBn.cjs +0 -20
- package/components/evolution-number-options.config-B6q9of0s.js +0 -225
- package/components/evolution-number-options.config-Cnoxc8Rj.cjs +0 -20
- package/components/evolution-number-options.config-CsliUvos.js +0 -21
- package/components/evolution-number-options.config-DwMWEyTp.cjs +0 -20
- package/components/evolution-number-positioning.config-BZCgkVrB.cjs +0 -20
- package/components/evolution-number-positioning.config-CcmNpiZ2.js +0 -46
- package/components/evolution-number-slots.config-CrPnyLAD.cjs +0 -20
- package/components/evolution-number-slots.config-Qh8MeUfl.js +0 -21
- package/components/filter-expression-picker-jVPy4hoa.cjs +0 -38
- package/components/filter-expression-picker-jsFVpFSa.js +0 -422
- package/components/filter-item-CHA0kiOl.js +0 -234
- package/components/filter-item-TEM132hc.cjs +0 -56
- package/components/filter-value-picker-CC1KB3EX.js +0 -142
- package/components/filter-value-picker-Crzom8wH.cjs +0 -59
- package/components/filter-value-picker-datetime--nJbTOa9.js +0 -132
- package/components/filter-value-picker-datetime-C9LXVlCP.cjs +0 -39
- package/components/filter-value-picker-hierarchy-CfaoAjt6.cjs +0 -46
- package/components/filter-value-picker-hierarchy-DtX9lkDz.js +0 -226
- package/components/filter-value-picker-numeric-BWPRd3Tt.js +0 -214
- package/components/filter-value-picker-numeric-B_z8opAd.cjs +0 -47
- package/components/filters-Cx0kYY3s.cjs +0 -145
- package/components/filters-D8xFvOpx.js +0 -388
- package/components/fr-DHdsJZjA.js +0 -218
- package/components/fr-bekEvx07.cjs +0 -20
- package/components/funnel-chart-options.config-BzcXqdLD.js +0 -21
- package/components/funnel-chart-options.config-CRI1qVAK.cjs +0 -20
- package/components/funnel-chart-options.config-D7i8-alW.cjs +0 -20
- package/components/funnel-chart-options.config-NOn-FuvT.js +0 -184
- package/components/funnel-chart-positioning.config-B916Diml.cjs +0 -20
- package/components/funnel-chart-positioning.config-Zq-JekwW.js +0 -46
- package/components/funnel-chart-slots.config-4u6xdUPI.cjs +0 -20
- package/components/funnel-chart-slots.config-D3jK-AR3.js +0 -21
- package/components/get-css-variable-DpEed5QG.js +0 -1209
- package/components/heat-map-options.config-B-j4PaSj.js +0 -21
- package/components/heat-map-options.config-B_pwuqmW.cjs +0 -20
- package/components/heat-map-options.config-Cwqexmob.cjs +0 -20
- package/components/heat-map-options.config-oikqmHoa.js +0 -221
- package/components/heat-map-positioning.config-Ck3J1Ox_.js +0 -46
- package/components/heat-map-positioning.config-wmnwLmhb.cjs +0 -20
- package/components/heat-map-slots.config-CSd2BTe1.js +0 -21
- package/components/heat-map-slots.config-PzaZKwv3.cjs +0 -20
- package/components/heat-table-options.config-BkQYo3Fp.js +0 -21
- package/components/heat-table-options.config-CzJU-alU.js +0 -370
- package/components/heat-table-options.config-DEsCGneV.cjs +0 -20
- package/components/heat-table-options.config-VAVK-Bip.cjs +0 -20
- package/components/heat-table-positioning.config-D4jZGO9g.js +0 -53
- package/components/heat-table-positioning.config-D6E2sVtn.cjs +0 -20
- package/components/heat-table-slots.config-B1voae2c.cjs +0 -20
- package/components/heat-table-slots.config-CVQEBl8V.js +0 -21
- package/components/helpers-4m3wrbUG.cjs +0 -20
- package/components/helpers-CBZRoFdg.js +0 -60
- package/components/hexbin-map-options.config-BHNikriK.js +0 -21
- package/components/hexbin-map-options.config-Bi0DeyTR.cjs +0 -20
- package/components/hexbin-map-options.config-CMJY_DTV.js +0 -273
- package/components/hexbin-map-options.config-ClsDJjkB.cjs +0 -20
- package/components/hexbin-map-positioning.config-CZ6oU_qU.js +0 -46
- package/components/hexbin-map-positioning.config-DsoHK8HD.cjs +0 -20
- package/components/hexbin-map-slots.config-CPpOOr37.js +0 -21
- package/components/hexbin-map-slots.config-iz7cNf0-.cjs +0 -20
- package/components/image-options.config-BcpJ4Mxn.js +0 -21
- package/components/image-options.config-BmiaBUsr.cjs +0 -20
- package/components/image-slots.config-BZbHNLrN.cjs +0 -20
- package/components/image-slots.config-Bp8qYoi0.js +0 -21
- package/components/item-grid-Dfs0UDKF.cjs +0 -317
- package/components/item-grid-Dx9Ssy7O.js +0 -5288
- package/components/item-option-B8MV1FwG.cjs +0 -252
- package/components/item-option-DpEQ5J3p.js +0 -959
- package/components/item-option-action-button-group-CpxigTwu.js +0 -113
- package/components/item-option-color-palette-picker-Ccqo-1kI.js +0 -2032
- package/components/item-option-color-picker-DAMJt908.js +0 -82
- package/components/item-option-color-range-BAcxgr-8.js +0 -213
- package/components/item-option-color-range-DkJCkTvv.cjs +0 -95
- package/components/item-option-multi-language-field-C9D1FYfV.js +0 -76
- package/components/item-option-number-field-BQrQzauV.js +0 -96
- package/components/item-option-panel-D9EdrPPd.js +0 -174
- package/components/item-option-panel-DYFFpVW9.cjs +0 -67
- package/components/item-option-picker-CrZkJbtJ.js +0 -71
- package/components/item-option-position-picker-C_frTuML.js +0 -79
- package/components/item-option-positions-number-field-CHf2r7am.js +0 -154
- package/components/item-option-radio-button-group-C_AlEQSX.js +0 -69
- package/components/item-option-slider-CkKpi11t.js +0 -76
- package/components/item-option-switch-BgI9DcJH.js +0 -65
- package/components/item-option-text-field-D09YUogp.js +0 -74
- package/components/item-slot-drop-Bu3-3cMY.js +0 -306
- package/components/item-slot-drop-Hy0NmvbM.cjs +0 -87
- package/components/item-slot-drop-panel-B7haw0fm.js +0 -339
- package/components/item-slot-drop-panel-Dcx6R0YG.cjs +0 -57
- package/components/item-slot-picker-BVJNYwe7.js +0 -430
- package/components/item-slot-picker-Cpjhh9ew.cjs +0 -139
- package/components/item-slot-picker-panel-CEGz-k-g.js +0 -431
- package/components/item-slot-picker-panel-DqfkV_Km.cjs +0 -77
- package/components/item-store-BVgJYtn3.js +0 -22
- package/components/item-store-BxpZfVmQ.js +0 -169
- package/components/line-chart-options.config-BkVvbb2U.js +0 -165
- package/components/line-chart-options.config-BmC8c0GP.cjs +0 -20
- package/components/line-chart-options.config-CaNG7fUg.js +0 -21
- package/components/line-chart-options.config-DyddltMP.cjs +0 -20
- package/components/line-chart-positioning.config-DxK-4ely.cjs +0 -20
- package/components/line-chart-positioning.config-yUBYUji1.js +0 -53
- package/components/line-chart-slots.config-BT4trOg7.cjs +0 -20
- package/components/line-chart-slots.config-y6M5po92.js +0 -21
- package/components/load-data-fields-for-datasets-CW4n0Pvf.js +0 -40
- package/components/localized-mixin-DD2Hm1jz.cjs +0 -20
- package/components/localized-mixin-rjHF23Hg.js +0 -43
- package/components/marker-map-options.config-BjxTIStS.js +0 -114
- package/components/marker-map-options.config-CluzEqlb.cjs +0 -20
- package/components/marker-map-options.config-DlOegoyh.js +0 -21
- package/components/marker-map-options.config-DnwHEboY.cjs +0 -20
- package/components/marker-map-positioning.config-CIHUnSKG.cjs +0 -20
- package/components/marker-map-positioning.config-CJFBJpQ1.js +0 -46
- package/components/marker-map-slots.config-C4JW_0ws.js +0 -21
- package/components/marker-map-slots.config-ZAUjcRXo.cjs +0 -20
- package/components/nl-BiJX3XhO.js +0 -218
- package/components/nl-DQy1RZ0M.cjs +0 -20
- package/components/ohlc-chart-options.config-DBiB9n8v.js +0 -21
- package/components/ohlc-chart-options.config-DF_wsXSj.cjs +0 -20
- package/components/ohlc-chart-positioning.config--y7kxGDX.js +0 -76
- package/components/ohlc-chart-positioning.config-C_zmYK7C.cjs +0 -20
- package/components/ohlc-chart-slots.config-D-Gp6K96.cjs +0 -20
- package/components/ohlc-chart-slots.config-DFaEkC31.js +0 -21
- package/components/parallel-coordinates-plot-options.config-CAAtmQA2.cjs +0 -20
- package/components/parallel-coordinates-plot-options.config-DnKn9aoN.js +0 -21
- package/components/parallel-coordinates-plot-positioning.config-B_ZfI3SF.cjs +0 -20
- package/components/parallel-coordinates-plot-positioning.config-Q9iPpQx9.js +0 -46
- package/components/parallel-coordinates-plot-slots.config-D73ojZtD.cjs +0 -20
- package/components/parallel-coordinates-plot-slots.config-DI-mlKnz.js +0 -21
- package/components/pivot-table-options.config-BiGT-udM.js +0 -21
- package/components/pivot-table-options.config-BkLDATdk.cjs +0 -20
- package/components/pivot-table-options.config-Ds9b7GO4.cjs +0 -20
- package/components/pivot-table-options.config-IV5nHECc.js +0 -242
- package/components/pivot-table-positioning.config-BFA7VBOT.js +0 -53
- package/components/pivot-table-positioning.config-DN2QorP9.cjs +0 -20
- package/components/pivot-table-slots.config-Bnx0oV5c.cjs +0 -20
- package/components/pivot-table-slots.config-iRnE5mT8.js +0 -21
- package/components/pyramid-chart-options.config-C6MflvCu.cjs +0 -20
- package/components/pyramid-chart-options.config-CNpVw-tA.js +0 -237
- package/components/pyramid-chart-options.config-CpGS6OPU.js +0 -21
- package/components/pyramid-chart-options.config-QT5pfTZW.cjs +0 -20
- package/components/pyramid-chart-positioning.config-B8bWIh63.js +0 -53
- package/components/pyramid-chart-positioning.config-CWXxSC-G.cjs +0 -20
- package/components/pyramid-chart-slots.config-BfH8qKnI.js +0 -21
- package/components/pyramid-chart-slots.config-D-dDAKOP.cjs +0 -20
- package/components/radar-chart-options.config-B3zVHfvL.js +0 -127
- package/components/radar-chart-options.config-DS0wqdDo.cjs +0 -20
- package/components/radar-chart-options.config-DfxSQpcT.cjs +0 -20
- package/components/radar-chart-options.config-qgCGY1od.js +0 -21
- package/components/radar-chart-positioning.config-B843TXFQ.cjs +0 -20
- package/components/radar-chart-positioning.config-DucUSoK8.js +0 -53
- package/components/radar-chart-slots.config-B-FNTfMO.cjs +0 -20
- package/components/radar-chart-slots.config-ovcfjvYX.js +0 -21
- package/components/regular-table-options.config-C6KmENtF.cjs +0 -20
- package/components/regular-table-options.config-D68MOkSl.js +0 -21
- package/components/regular-table-options.config-DcdL0enM.js +0 -145
- package/components/regular-table-options.config-eKu9PU-J.cjs +0 -20
- package/components/regular-table-slots.config-D_qdD9fM.js +0 -21
- package/components/regular-table-slots.config-oJmx7Ebd.cjs +0 -20
- package/components/route-map-options.config-2_eJ33gQ.cjs +0 -20
- package/components/route-map-options.config-C9b0At_w.js +0 -21
- package/components/route-map-options.config-CUimhPrZ.cjs +0 -20
- package/components/route-map-options.config-DYyeUXeI.js +0 -318
- package/components/route-map-positioning.config-gnflF-_5.js +0 -64
- package/components/route-map-positioning.config-iVM-HuGQ.cjs +0 -20
- package/components/route-map-slots.config-CFwbGZ7m.cjs +0 -20
- package/components/route-map-slots.config-D2rOeLXq.js +0 -21
- package/components/sankey-diagram-options.config-BXeiNAa9.js +0 -21
- package/components/sankey-diagram-options.config-CJleK2c1.js +0 -123
- package/components/sankey-diagram-options.config-Ck99CLqw.cjs +0 -20
- package/components/sankey-diagram-options.config-FW8FiBNo.cjs +0 -20
- package/components/sankey-diagram-positioning.config-DJwXGDJe.cjs +0 -20
- package/components/sankey-diagram-positioning.config-IQhg5w_T.js +0 -64
- package/components/sankey-diagram-slots.config-Ckys_gjj.cjs +0 -20
- package/components/sankey-diagram-slots.config-DBoBR-V8.js +0 -21
- package/components/scatter-plot-options.config-BRmE9N7y.cjs +0 -20
- package/components/scatter-plot-options.config-BvzKb9M4.js +0 -21
- package/components/scatter-plot-options.config-CP73W4cL.js +0 -299
- package/components/scatter-plot-options.config-n8M45qbB.cjs +0 -20
- package/components/scatter-plot-positioning.config-B8e49TwE.cjs +0 -20
- package/components/scatter-plot-positioning.config-CDrSrd94.js +0 -75
- package/components/scatter-plot-slots.config-BYpyd8sh.cjs +0 -20
- package/components/scatter-plot-slots.config-C2dc2V1z.js +0 -21
- package/components/search-filter-options.config-BYbZd7EN.cjs +0 -20
- package/components/search-filter-options.config-DvuvTfGF.js +0 -21
- package/components/search-filter-slots.config-BSx1jeGF.cjs +0 -20
- package/components/search-filter-slots.config-D-JHr50n.js +0 -21
- package/components/set-locale-C9s0jVjQ.cjs +0 -20
- package/components/set-locale-CgsoV0B9.js +0 -43
- package/components/slicer-filter-options.config-BRh4iNgp.cjs +0 -20
- package/components/slicer-filter-options.config-BY4gRN6n.cjs +0 -20
- package/components/slicer-filter-options.config-BzlBD7H2.js +0 -223
- package/components/slicer-filter-options.config-C8ToPpan.js +0 -21
- package/components/slicer-filter-positioning.config-CIyilVoa.cjs +0 -20
- package/components/slicer-filter-positioning.config-DJ-7mwJ-.js +0 -46
- package/components/slicer-filter-slots.config-CTsXTAqq.js +0 -21
- package/components/slicer-filter-slots.config-DvDtGYos.cjs +0 -20
- package/components/slider-filter-options.config-25DoIv8O.cjs +0 -20
- package/components/slider-filter-options.config-BnxVvI-u.js +0 -21
- package/components/slider-filter-options.config-CiXjr2m_.cjs +0 -20
- package/components/slider-filter-options.config-adFn-wHp.js +0 -69
- package/components/slider-filter-slots.config-C-q6m_yF.cjs +0 -20
- package/components/slider-filter-slots.config-PdFB1sn_.js +0 -21
- package/components/slot-menu-list-BLJxoLeI.js +0 -285
- package/components/slot-menu-o7-dulNZ.js +0 -372
- package/components/slots-config-DhNgWKR2.js +0 -75
- package/components/slots-config-mOBA4FHK.cjs +0 -20
- package/components/speedometer-chart-options.config-C5RjM3UD.cjs +0 -20
- package/components/speedometer-chart-options.config-CkTYPPzr.cjs +0 -20
- package/components/speedometer-chart-options.config-DbjW1AsO.js +0 -21
- package/components/speedometer-chart-options.config-HTdzjvTi.js +0 -239
- package/components/speedometer-chart-positioning.config-B3SBgao1.js +0 -46
- package/components/speedometer-chart-positioning.config-cF7IDeqE.cjs +0 -20
- package/components/speedometer-chart-slots.config-5uxLKKvd.js +0 -21
- package/components/speedometer-chart-slots.config-AXYqta1F.cjs +0 -20
- package/components/spike-map-options.config-BG2lOnVd.cjs +0 -20
- package/components/spike-map-options.config-BdAhEMjM.js +0 -21
- package/components/spike-map-options.config-D5wZvU9_.js +0 -405
- package/components/spike-map-options.config-DRQbtTk6.cjs +0 -20
- package/components/spike-map-positioning.config-6PYygbnk.cjs +0 -20
- package/components/spike-map-positioning.config-BzjVob9r.js +0 -53
- package/components/spike-map-slots.config-BlgyHXbl.cjs +0 -20
- package/components/spike-map-slots.config-DBukXLbp.js +0 -21
- package/components/strip-plot-options.config-BdsoRMCN.cjs +0 -20
- package/components/strip-plot-options.config-uTaz7px6.js +0 -21
- package/components/strip-plot-positioning.config-B0wf0_OU.cjs +0 -20
- package/components/strip-plot-positioning.config-DfvyyX0l.js +0 -46
- package/components/strip-plot-slots.config--eyMKDiM.cjs +0 -20
- package/components/strip-plot-slots.config-l1bfPmVL.js +0 -21
- package/components/sunburst-chart-options.config-CkbP3ZfU.js +0 -21
- package/components/sunburst-chart-options.config-CnxMf86B.cjs +0 -20
- package/components/sunburst-chart-positioning.config-CIJkb3xv.js +0 -46
- package/components/sunburst-chart-positioning.config-DwdmVNMl.cjs +0 -20
- package/components/sunburst-chart-slots.config-5PYTtNUW.cjs +0 -20
- package/components/sunburst-chart-slots.config-ClsFf2UV.js +0 -21
- package/components/symbol-map-options.config-D8Wof9Aq.cjs +0 -20
- package/components/symbol-map-options.config-DUyvyXRb.js +0 -21
- package/components/symbol-map-options.config-fuON1TEh.cjs +0 -20
- package/components/symbol-map-options.config-q1DlwzzZ.js +0 -154
- package/components/symbol-map-positioning.config-BeW0WaR2.cjs +0 -20
- package/components/symbol-map-positioning.config-DImEeRY3.js +0 -53
- package/components/symbol-map-slots.config-CALS50ZS.cjs +0 -20
- package/components/symbol-map-slots.config-Dm34rxX1.js +0 -21
- package/components/text-options.config-B0xVIeez.cjs +0 -20
- package/components/text-options.config-CKCvnV64.js +0 -21
- package/components/text-slots.config-BvO2wIlS.js +0 -21
- package/components/text-slots.config-fioLVKtx.cjs +0 -20
- package/components/themes-DGjjIvSN.js +0 -72
- package/components/treemap-chart-options.config-BKorCqTL.cjs +0 -20
- package/components/treemap-chart-options.config-DAx79ojN.cjs +0 -20
- package/components/treemap-chart-options.config-DuixEndR.js +0 -21
- package/components/treemap-chart-options.config-Ft3gYZGq.js +0 -181
- package/components/treemap-chart-positioning.config-BAITw16y.js +0 -53
- package/components/treemap-chart-positioning.config-BqjXkMWR.cjs +0 -20
- package/components/treemap-chart-slots.config-C16w76hV.cjs +0 -20
- package/components/treemap-chart-slots.config-CcopZBpV.js +0 -21
- package/components/utils-Dzbml7oI.cjs +0 -20
- package/components/utils-MKWG2xEp.js +0 -63
- package/components/venn-diagram-options.config-CGA2UaAr.cjs +0 -20
- package/components/venn-diagram-options.config-z9DX7a0E.js +0 -21
- package/components/venn-diagram-positioning.config-Bj_uCnaK.cjs +0 -20
- package/components/venn-diagram-positioning.config-CJkl8yK4.js +0 -53
- package/components/venn-diagram-slots.config-BGHqXMag.js +0 -21
- package/components/venn-diagram-slots.config-UdBbq7hK.cjs +0 -20
- package/components/video-options.config-BQgGqFAA.js +0 -21
- package/components/video-options.config-CoMerI1H.cjs +0 -20
- package/components/video-slots.config-DuPoeVgT.js +0 -21
- package/components/video-slots.config-fHuA9NOm.cjs +0 -20
- package/components/viz-item-menu-BWKYWbgZ.cjs +0 -55
- package/components/viz-item-menu-Jqo0-TiF.js +0 -162
- package/components/wordcloud-chart-options.config-B7bqp-of.js +0 -21
- package/components/wordcloud-chart-options.config-DOZSbaZy.js +0 -87
- package/components/wordcloud-chart-options.config-DQWV_RxY.cjs +0 -20
- package/components/wordcloud-chart-options.config-yKh8MBAL.cjs +0 -20
- package/components/wordcloud-chart-positioning.config-BYp1cmHn.js +0 -53
- package/components/wordcloud-chart-positioning.config-DKQWftET.cjs +0 -20
- package/components/wordcloud-chart-slots.config-BSkly0sL.cjs +0 -20
- package/components/wordcloud-chart-slots.config-DYA4Usg5.js +0 -21
- /package/components/{area-chart-options.de-B2X9EW6t.js → area-chart-options.de-Phld8p2V.js} +0 -0
- /package/components/{area-chart-options.en-DdMmuUda.js → area-chart-options.en-C5IoXWFQ.js} +0 -0
- /package/components/{area-chart-options.es-CNsCg-F5.js → area-chart-options.es-CJ2tp1vb.js} +0 -0
- /package/components/{area-chart-options.fr-CLJXmywl.js → area-chart-options.fr-BG8wDsTm.js} +0 -0
- /package/components/{area-chart-options.nl-vpXh0GUm.js → area-chart-options.nl-FBGxgp2Q.js} +0 -0
- /package/components/{area-chart-slots.config-DP23H7Pe.cjs → area-chart-slots.config-BiF26XOX.cjs} +0 -0
- /package/components/{area-chart-slots.config-BcsjZqui.js → area-chart-slots.config-DyDtOcFU.js} +0 -0
- /package/components/{bar-chart-options.de-Cz_OOH17.js → bar-chart-options.de-Bnxdbf7z.js} +0 -0
- /package/components/{bar-chart-options.en-VJAkQpiQ.js → bar-chart-options.en-Cdl6gNlZ.js} +0 -0
- /package/components/{bar-chart-options.es-5q1-OHQH.js → bar-chart-options.es-Dn9joxV7.js} +0 -0
- /package/components/{bar-chart-options.fr-D6pZMftl.js → bar-chart-options.fr-1sW8HBUk.js} +0 -0
- /package/components/{bar-chart-options.nl-DqOzdnwm.js → bar-chart-options.nl-xSor3BlX.js} +0 -0
- /package/components/{bar-chart-slots.config-BXmyYBkR.js → bar-chart-slots.config-DIrmPTkB.js} +0 -0
- /package/components/{bar-chart-slots.config-C9stCMbT.cjs → bar-chart-slots.config-DgbbajTB.cjs} +0 -0
- /package/components/{base-store-CdYjpd2m.js → base-store-dt1TAVo5.js} +0 -0
- /package/components/{bliss-BJa_NJPA.js → bliss-CAfe8YYN.js} +0 -0
- /package/components/{box-plot-options.de-Pcws8Htk.js → box-plot-options.de-GwaoiEY0.js} +0 -0
- /package/components/{box-plot-options.en-C_kqWvYm.js → box-plot-options.en-CK6S2mS9.js} +0 -0
- /package/components/{box-plot-options.es-BW7yCCiw.js → box-plot-options.es-DO6jC88J.js} +0 -0
- /package/components/{box-plot-options.fr-ndQwdMt3.js → box-plot-options.fr-BAPtDqdJ.js} +0 -0
- /package/components/{box-plot-options.nl-D8g47giP.js → box-plot-options.nl-oSxfuqIB.js} +0 -0
- /package/components/{box-plot-slots.config-C2dQ3KJ5.js → box-plot-slots.config-BL_BiL8D.js} +0 -0
- /package/components/{box-plot-slots.config-DorUcTE-.cjs → box-plot-slots.config-DEDKgOIa.cjs} +0 -0
- /package/components/{bubble-chart-options.de-C0Bq6Jta.js → bubble-chart-options.de-C4IfLVtr.js} +0 -0
- /package/components/{bubble-chart-options.en-DzNFzxae.js → bubble-chart-options.en-f2wYxK1d.js} +0 -0
- /package/components/{bubble-chart-options.es-B306u1JO.js → bubble-chart-options.es-CJrhgdFg.js} +0 -0
- /package/components/{bubble-chart-options.fr-ByJbTey0.js → bubble-chart-options.fr-Bw8ggsES.js} +0 -0
- /package/components/{bubble-chart-options.nl-C0QPseuY.js → bubble-chart-options.nl-DS_zEwK8.js} +0 -0
- /package/components/{bubble-chart-slots.config-CaBDuUii.js → bubble-chart-slots.config-BJfcUdLL.js} +0 -0
- /package/components/{bubble-chart-slots.config-BNy49CEz.cjs → bubble-chart-slots.config-DPvnDQlT.cjs} +0 -0
- /package/components/{bullet-chart-options.de-hxgTQ3tQ.js → bullet-chart-options.de-BqsCiI9J.js} +0 -0
- /package/components/{bullet-chart-options.en-Bfj8rehN.js → bullet-chart-options.en-Zo0N2-YH.js} +0 -0
- /package/components/{bullet-chart-options.es-CRwqoWFD.js → bullet-chart-options.es-D4vDi_gc.js} +0 -0
- /package/components/{bullet-chart-options.fr-CiXnFZ3O.js → bullet-chart-options.fr-LUrTJGAS.js} +0 -0
- /package/components/{bullet-chart-options.nl-rKHO6VxR.js → bullet-chart-options.nl-DWxRQmj6.js} +0 -0
- /package/components/{bullet-chart-slots.config-D6zrsyca.js → bullet-chart-slots.config-DB_U72K2.js} +0 -0
- /package/components/{bullet-chart-slots.config-BZUuzYDf.cjs → bullet-chart-slots.config-sti8UWKg.cjs} +0 -0
- /package/components/{choropleth-map-options.de-DVg7D5qv.js → choropleth-map-options.de-C4s5sOQ3.js} +0 -0
- /package/components/{choropleth-map-options.en-DD7A777K.js → choropleth-map-options.en-Cid6UAIF.js} +0 -0
- /package/components/{choropleth-map-options.es-DaZQOGsb.js → choropleth-map-options.es-DtQ5gS4a.js} +0 -0
- /package/components/{choropleth-map-options.fr-CwD0we0b.js → choropleth-map-options.fr-Bsup_Yhh.js} +0 -0
- /package/components/{choropleth-map-options.nl-Dp6vpo9i.js → choropleth-map-options.nl-w3PaL21_.js} +0 -0
- /package/components/{choropleth-map-slots.config-DbEYsBMs.cjs → choropleth-map-slots.config-BottGEvm.cjs} +0 -0
- /package/components/{choropleth-map-slots.config-B2UpqYPK.js → choropleth-map-slots.config-CYgycqtG.js} +0 -0
- /package/components/{circle-pack-chart-options.config-dzwInh_R.js → circle-pack-chart-options.config-CMu8x0q_.js} +0 -0
- /package/components/{circle-pack-chart-options.config-BEvEY4kH.cjs → circle-pack-chart-options.config-DhL3c1Zv.cjs} +0 -0
- /package/components/{circle-pack-chart-options.de-DBHZtBmX.js → circle-pack-chart-options.de-3W2JHc2I.js} +0 -0
- /package/components/{circle-pack-chart-options.en-C1M5P2-l.js → circle-pack-chart-options.en-rsbIkXrh.js} +0 -0
- /package/components/{circle-pack-chart-options.es-wBr4vJbt.js → circle-pack-chart-options.es-BLX3mzSn.js} +0 -0
- /package/components/{circle-pack-chart-options.fr-BR7x280a.js → circle-pack-chart-options.fr-C6zcDy36.js} +0 -0
- /package/components/{circle-pack-chart-options.nl-DhvEq6ea.js → circle-pack-chart-options.nl-hxHjPh2b.js} +0 -0
- /package/components/{circle-pack-chart-slots.config-_lNgQ2gM.js → circle-pack-chart-slots.config-ChJfY4JV.js} +0 -0
- /package/components/{circle-pack-chart-slots.config-X1LPK06h.cjs → circle-pack-chart-slots.config-HUhXPh3_.cjs} +0 -0
- /package/components/{circular-gauge-options.de-Bl6t8Vtu.js → circular-gauge-options.de-rRAHavC6.js} +0 -0
- /package/components/{circular-gauge-options.en-D6t4kjzW.js → circular-gauge-options.en-CzvujfqC.js} +0 -0
- /package/components/{circular-gauge-options.es-HNVLVocG.js → circular-gauge-options.es-D0oDYirP.js} +0 -0
- /package/components/{circular-gauge-options.fr-BCBCfNc6.js → circular-gauge-options.fr-UiG6crHw.js} +0 -0
- /package/components/{circular-gauge-options.nl-ABjx-HBx.js → circular-gauge-options.nl-VNq2Ie40.js} +0 -0
- /package/components/{circular-gauge-slots.config-BawzBMto.js → circular-gauge-slots.config-DzxaSot1.js} +0 -0
- /package/components/{circular-gauge-slots.config-BrvTir-s.cjs → circular-gauge-slots.config-HS1Y-SWl.cjs} +0 -0
- /package/components/{classic-C05v_nhO.js → classic-SxdTuP22.js} +0 -0
- /package/components/{classic-dark-DtZForsC.js → classic-dark-BNOmINnF.js} +0 -0
- /package/components/{color-Cssvhkzf.js → color-CmNy-BUS.js} +0 -0
- /package/components/{color-Dxgbgkfy.cjs → color-DxvhIMkP.cjs} +0 -0
- /package/components/{color-palettes-ZxJrYfsI.cjs → color-palettes-Bekzn658.cjs} +0 -0
- /package/components/{color-palettes-CkWzJDY0.js → color-palettes-DSQ9zTjV.js} +0 -0
- /package/components/{column-chart-options.de-B0Op0vwQ.js → column-chart-options.de-Ckcmm7Be.js} +0 -0
- /package/components/{column-chart-options.en-Yh0aO7kR.js → column-chart-options.en-B0EOTo9L.js} +0 -0
- /package/components/{column-chart-options.es-ZchO-V0p.js → column-chart-options.es-BhWcem80.js} +0 -0
- /package/components/{column-chart-options.fr-BmDAZnhI.js → column-chart-options.fr-BvSzCANy.js} +0 -0
- /package/components/{column-chart-options.nl-BdwgQ_uM.js → column-chart-options.nl-Cm9O8sIA.js} +0 -0
- /package/components/{column-chart-slots.config-CqBfdtFr.cjs → column-chart-slots.config-CBq3_JXM.cjs} +0 -0
- /package/components/{column-chart-slots.config-kz01zcFm.js → column-chart-slots.config-CLEqKUex.js} +0 -0
- /package/components/{combination-chart-options.config-CcUCgYaW.js → combination-chart-options.config-Bhp8OSyv.js} +0 -0
- /package/components/{combination-chart-options.config-BfNllZT4.cjs → combination-chart-options.config-BkoRIlez.cjs} +0 -0
- /package/components/{combination-chart-options.de-DLiVvpnI.js → combination-chart-options.de-Do04IrFo.js} +0 -0
- /package/components/{combination-chart-options.en-yQ-wL85s.js → combination-chart-options.en-BmGbWQi1.js} +0 -0
- /package/components/{combination-chart-options.es-BtvCEpkY.js → combination-chart-options.es-gKYi8DjK.js} +0 -0
- /package/components/{combination-chart-options.fr-C9Z5RCv8.js → combination-chart-options.fr-CJN2qaJF.js} +0 -0
- /package/components/{combination-chart-options.nl-9FAIlZmH.js → combination-chart-options.nl-BHopQ7BR.js} +0 -0
- /package/components/{combination-chart-slots.config-BUjUVxBL.cjs → combination-chart-slots.config-8Wu2dlEI.cjs} +0 -0
- /package/components/{combination-chart-slots.config-BFTZ0iOm.js → combination-chart-slots.config-Dr-nODxL.js} +0 -0
- /package/components/{conditional-number-options.de-Bi9rmvNj.js → conditional-number-options.de-DIyrWUR4.js} +0 -0
- /package/components/{conditional-number-options.en-Czlvz1gP.js → conditional-number-options.en-C5jGAeVn.js} +0 -0
- /package/components/{conditional-number-options.es-CQqNn9j9.js → conditional-number-options.es-Cn496lnN.js} +0 -0
- /package/components/{conditional-number-options.fr-BFGFXKpA.js → conditional-number-options.fr-Ci_bIWL8.js} +0 -0
- /package/components/{conditional-number-options.nl-DNiwVyVg.js → conditional-number-options.nl-BZboJKV3.js} +0 -0
- /package/components/{conditional-number-slots.config-BHKPNzCA.js → conditional-number-slots.config-C8jzhrEa.js} +0 -0
- /package/components/{conditional-number-slots.config-PKi0D03P.cjs → conditional-number-slots.config-CFuhQSbR.cjs} +0 -0
- /package/components/{convert-datasets-to-data-fields-Ct3YLD0R.js → convert-datasets-to-data-fields-CFgjSlXK.js} +0 -0
- /package/components/{cs-DKJkj-M9.js → cs-CHz7QbEZ.js} +0 -0
- /package/components/{da-DbxnaygY.js → da-DYeZ8t8L.js} +0 -0
- /package/components/{date-comparison-filter-options.config-DeRktuPf.cjs → date-comparison-filter-options.config-D3uV79k-.cjs} +0 -0
- /package/components/{date-comparison-filter-options.config--2Z797qN.js → date-comparison-filter-options.config-lZ3VHAEz.js} +0 -0
- /package/components/{date-comparison-filter-options.de-CQb499rf.js → date-comparison-filter-options.de-CcDqBhzT.js} +0 -0
- /package/components/{date-comparison-filter-options.en-0AvsiNAV.js → date-comparison-filter-options.en-CcFmDrIH.js} +0 -0
- /package/components/{date-comparison-filter-options.es-BZtYLF4i.js → date-comparison-filter-options.es-3NoU0mCq.js} +0 -0
- /package/components/{date-comparison-filter-options.fr-DalJs_B3.js → date-comparison-filter-options.fr-B77fDRCs.js} +0 -0
- /package/components/{date-comparison-filter-options.nl-BKHa_cRZ.js → date-comparison-filter-options.nl-D9uMl8lo.js} +0 -0
- /package/components/{date-comparison-filter-positioning.config-BUXf_lK6.js → date-comparison-filter-positioning.config-CtF4jzrm.js} +0 -0
- /package/components/{date-comparison-filter-positioning.config-CnmoOnbT.cjs → date-comparison-filter-positioning.config-D4Kabm4a.cjs} +0 -0
- /package/components/{date-comparison-filter-slots.config-BfCHdmS2.js → date-comparison-filter-slots.config-BH7MfW2w.js} +0 -0
- /package/components/{date-comparison-filter-slots.config-DoH-KB0I.cjs → date-comparison-filter-slots.config-dS5GC_1_.cjs} +0 -0
- /package/components/{date-filter-options.config-D8Hzx_EH.js → date-filter-options.config-BlsWsYMP.js} +0 -0
- /package/components/{date-filter-options.config-SMBs-0og.cjs → date-filter-options.config-BwBD6QJt.cjs} +0 -0
- /package/components/{date-filter-options.de-C00bqObl.js → date-filter-options.de-CjuNZhOT.js} +0 -0
- /package/components/{date-filter-options.en-B8nSu938.js → date-filter-options.en-Dm6cxXS4.js} +0 -0
- /package/components/{date-filter-options.es-CsarnUzk.js → date-filter-options.es-Dr5gu2hd.js} +0 -0
- /package/components/{date-filter-options.fr-DeCtetL4.js → date-filter-options.fr-Cr2_DxKd.js} +0 -0
- /package/components/{date-filter-options.nl-DHbegwli.js → date-filter-options.nl-wTJTIXSP.js} +0 -0
- /package/components/{date-filter-positioning.config-DLy5ONjP.cjs → date-filter-positioning.config-MtaRjnlV.cjs} +0 -0
- /package/components/{date-filter-positioning.config-DSBMf-JV.js → date-filter-positioning.config-iY_DPp_L.js} +0 -0
- /package/components/{date-filter-slots.config-a4a17FGv.js → date-filter-slots.config-D8yERxxT.js} +0 -0
- /package/components/{date-filter-slots.config-CDWnujr4.cjs → date-filter-slots.config-WnG9opi5.cjs} +0 -0
- /package/components/{de-Daccfqud.js → de-DFZ73mGn.js} +0 -0
- /package/components/{default-DEvTN_o8.js → default-DUeUsrOW.js} +0 -0
- /package/components/{default-acceptable-data-field-types-B2M41jLy.js → default-acceptable-data-field-types-D_0xtula.js} +0 -0
- /package/components/{default-dark-DSYRLGSK.js → default-dark-DvSKTfnt.js} +0 -0
- /package/components/{donut-chart-options.config-PHzjbkzs.js → donut-chart-options.config-BCGSWJgY.js} +0 -0
- /package/components/{donut-chart-options.config-UaJ1Am5u.cjs → donut-chart-options.config-DjlWHdTs.cjs} +0 -0
- /package/components/{donut-chart-options.de-DSnc-ylu.js → donut-chart-options.de-FAb_6Llh.js} +0 -0
- /package/components/{donut-chart-options.en-DFtpvbn-.js → donut-chart-options.en-h1u8ucVF.js} +0 -0
- /package/components/{donut-chart-options.es-CSw1YDfM.js → donut-chart-options.es-By5qHO45.js} +0 -0
- /package/components/{donut-chart-options.fr-C27NIRdc.js → donut-chart-options.fr-5GnUpV75.js} +0 -0
- /package/components/{donut-chart-options.nl-CEHVe1rp.js → donut-chart-options.nl-CjKcH5JD.js} +0 -0
- /package/components/{donut-chart-slots.config-hpQTnmyD.js → donut-chart-slots.config-B6w89EJK.js} +0 -0
- /package/components/{donut-chart-slots.config-BodHWKFB.cjs → donut-chart-slots.config-hqON-CXV.cjs} +0 -0
- /package/components/{dropdown-filter-options.config-DOpreqGq.cjs → dropdown-filter-options.config-Cooz6mIz.cjs} +0 -0
- /package/components/{dropdown-filter-options.config-D6iHPxd9.js → dropdown-filter-options.config-DIUdvCb5.js} +0 -0
- /package/components/{dropdown-filter-options.de-DwvrbGvS.js → dropdown-filter-options.de-Dh0YvK-a.js} +0 -0
- /package/components/{dropdown-filter-options.en-Ba3Xc4s0.js → dropdown-filter-options.en-CP8xoHEl.js} +0 -0
- /package/components/{dropdown-filter-options.es-D2qrEJB0.js → dropdown-filter-options.es-B-acOM8_.js} +0 -0
- /package/components/{dropdown-filter-options.fr-l-6TXrUj.js → dropdown-filter-options.fr-DEpK8eN-.js} +0 -0
- /package/components/{dropdown-filter-options.nl-C1kp_1xz.js → dropdown-filter-options.nl-muW6tWuZ.js} +0 -0
- /package/components/{dropdown-filter-positioning.config-q-Oxcu5p.cjs → dropdown-filter-positioning.config-B5ZNtbiB.cjs} +0 -0
- /package/components/{dropdown-filter-positioning.config-Cx_eI8RX.js → dropdown-filter-positioning.config-Csh9aNR0.js} +0 -0
- /package/components/{dropdown-filter-slots.config-Br8sOnAq.cjs → dropdown-filter-slots.config-Cy4JJsEL.cjs} +0 -0
- /package/components/{dropdown-filter-slots.config-DhSNVgpR.js → dropdown-filter-slots.config-k2erR0Qj.js} +0 -0
- /package/components/{dynamic-imageobject-slots.config-HB9ROqvB.js → dynamic-imageobject-slots.config-B2nW9EMt.js} +0 -0
- /package/components/{dynamic-imageobject-slots.config-CGSDLvF-.cjs → dynamic-imageobject-slots.config-D3dShO84.cjs} +0 -0
- /package/components/{en-C5aEJ_Jt.js → en-CFAZLV0p.js} +0 -0
- /package/components/{en-GB-DuGwstf1.js → en-GB-dx7dEalX.js} +0 -0
- /package/components/{en-US-Cq2OLtcz.js → en-US-DfpBkSeP.js} +0 -0
- /package/components/{es-DtnQK5Af.js → es-DLHsGM05.js} +0 -0
- /package/components/{evolution-number-options.de-DsitlPsQ.js → evolution-number-options.de-B-68w9UI.js} +0 -0
- /package/components/{evolution-number-options.en-Xmh8VMwe.js → evolution-number-options.en-BEoG1f3C.js} +0 -0
- /package/components/{evolution-number-options.es-D6QD0dIR.js → evolution-number-options.es-BXkIkGMg.js} +0 -0
- /package/components/{evolution-number-options.fr-Dw7Q83QZ.js → evolution-number-options.fr-BFM9aQqH.js} +0 -0
- /package/components/{evolution-number-options.nl-DNu9r1Uh.js → evolution-number-options.nl-1mf7xmcL.js} +0 -0
- /package/components/{evolution-number-slots.config-DDJCHQ5V.js → evolution-number-slots.config-BkWzqY9H.js} +0 -0
- /package/components/{evolution-number-slots.config-mxEHZbll.cjs → evolution-number-slots.config-DAoYOsZ6.cjs} +0 -0
- /package/components/{fi-dr1SioMC.js → fi-C0gFedeA.js} +0 -0
- /package/components/{fr-DBwNhPNf.js → fr-CoSDPfQZ.js} +0 -0
- /package/components/{funnel-chart-options.de-mCQwNGrQ.js → funnel-chart-options.de-DPQeIhrd.js} +0 -0
- /package/components/{funnel-chart-options.en-C09HpdId.js → funnel-chart-options.en-BAQNSVYg.js} +0 -0
- /package/components/{funnel-chart-options.es-DHQbhH_J.js → funnel-chart-options.es-CZdediJg.js} +0 -0
- /package/components/{funnel-chart-options.fr-cVNkrHrb.js → funnel-chart-options.fr-CYIjtHpn.js} +0 -0
- /package/components/{funnel-chart-options.nl-RkJx1ntj.js → funnel-chart-options.nl-D-x5fefS.js} +0 -0
- /package/components/{funnel-chart-slots.config-DKrdaS_3.cjs → funnel-chart-slots.config-B_2dyWdA.cjs} +0 -0
- /package/components/{funnel-chart-slots.config-BvBGsmjk.js → funnel-chart-slots.config-Df0UntNx.js} +0 -0
- /package/components/{he-C2S_SnvD.js → he-CYoq9xcT.js} +0 -0
- /package/components/{heat-map-options.de-BWhDL3Rc.js → heat-map-options.de-CMc92ogl.js} +0 -0
- /package/components/{heat-map-options.en-B_NXLKRi.js → heat-map-options.en-CG7QMSk6.js} +0 -0
- /package/components/{heat-map-options.es-DSC9u8FE.js → heat-map-options.es-CbMd6byY.js} +0 -0
- /package/components/{heat-map-options.fr-oW1DDU6T.js → heat-map-options.fr-h0V7M3gw.js} +0 -0
- /package/components/{heat-map-options.nl-Dr0DJ1a9.js → heat-map-options.nl-BJjtUmF0.js} +0 -0
- /package/components/{heat-map-slots.config-4EElQF98.js → heat-map-slots.config-DVveKT8U.js} +0 -0
- /package/components/{heat-map-slots.config-toWthpNE.cjs → heat-map-slots.config-r0b0TRPw.cjs} +0 -0
- /package/components/{heat-table-options.de-DwaeFZk_.js → heat-table-options.de-D-ds50Eb.js} +0 -0
- /package/components/{heat-table-options.en-Cg4TyzvG.js → heat-table-options.en-DRywh2rj.js} +0 -0
- /package/components/{heat-table-options.es-D9-hQbIr.js → heat-table-options.es-dtHDEuGO.js} +0 -0
- /package/components/{heat-table-options.fr-j6JIZHwq.js → heat-table-options.fr-DePxNqyM.js} +0 -0
- /package/components/{heat-table-options.nl-DIp7MLlD.js → heat-table-options.nl-D1s3evBE.js} +0 -0
- /package/components/{heat-table-slots.config-CGe1obfh.js → heat-table-slots.config-B2H5WFp5.js} +0 -0
- /package/components/{heat-table-slots.config-DV1T4RfO.cjs → heat-table-slots.config-BraPJ0R0.cjs} +0 -0
- /package/components/{hexbin-map-options.de-XfOpXsgG.js → hexbin-map-options.de-uGZZL-0-.js} +0 -0
- /package/components/{hexbin-map-options.en-Cn1BMSdP.js → hexbin-map-options.en-DUjnPwVh.js} +0 -0
- /package/components/{hexbin-map-options.es-VvPQXYl_.js → hexbin-map-options.es-AjRQhICx.js} +0 -0
- /package/components/{hexbin-map-options.fr-DsAPvhFK.js → hexbin-map-options.fr-DHJV68r7.js} +0 -0
- /package/components/{hexbin-map-options.nl-TTDx7w0F.js → hexbin-map-options.nl-DdpI2_z7.js} +0 -0
- /package/components/{hexbin-map-slots.config-BNWX9YXD.js → hexbin-map-slots.config-CN9idLCt.js} +0 -0
- /package/components/{hexbin-map-slots.config-BAo-xLYy.cjs → hexbin-map-slots.config-CU1Wgf0e.cjs} +0 -0
- /package/components/{hu-ChzZ4FLi.js → hu-0rCviHOg.js} +0 -0
- /package/components/{image-options.config-DaggpC3a.cjs → image-options.config-B9OtHgrA.cjs} +0 -0
- /package/components/{image-options.config-D6HTdGoi.js → image-options.config-DlXchvuB.js} +0 -0
- /package/components/{image-options.de-o3rFcCX6.js → image-options.de-DMd0bpR9.js} +0 -0
- /package/components/{image-options.en-BfotlJD4.js → image-options.en-CPOOOaCs.js} +0 -0
- /package/components/{image-options.es-C1bR88In.js → image-options.es-CZQflKye.js} +0 -0
- /package/components/{image-options.fr-DvuM-Nvg.js → image-options.fr-IqtUCX5-.js} +0 -0
- /package/components/{image-options.nl-D9PU5ose.js → image-options.nl-CKZJmDct.js} +0 -0
- /package/components/{image-slots.config-C28vIZcL.js → image-slots.config-Bn9OijTt.js} +0 -0
- /package/components/{image-slots.config-Dqm93OYh.cjs → image-slots.config-CDonqLGB.cjs} +0 -0
- /package/components/{it-D_4Gl4Vs.js → it-DaNzAkgM.js} +0 -0
- /package/components/{item-list-DM778zWU.js → item-list-CigTscVE.js} +0 -0
- /package/components/{item-option-base-BWERLehm.js → item-option-base-D8qU_-yY.js} +0 -0
- /package/components/{ja-XFGmFyEe.js → ja-BUq_DX7x.js} +0 -0
- /package/components/{ko-Qpg8jwKZ.js → ko-moQYGrcB.js} +0 -0
- /package/components/{line-chart-options.de-DxkNLL40.js → line-chart-options.de-kQ2q5Lob.js} +0 -0
- /package/components/{line-chart-options.en-BzKL6qlN.js → line-chart-options.en-C1jHqYKA.js} +0 -0
- /package/components/{line-chart-options.es-C0sUUaiD.js → line-chart-options.es-DXr3XoJo.js} +0 -0
- /package/components/{line-chart-options.fr-DgWceVab.js → line-chart-options.fr-2an571LP.js} +0 -0
- /package/components/{line-chart-options.nl-Bnm9s9Wz.js → line-chart-options.nl-CN-xPcPL.js} +0 -0
- /package/components/{line-chart-slots.config-BWzfJJwW.cjs → line-chart-slots.config-CNYNSC8Y.cjs} +0 -0
- /package/components/{line-chart-slots.config-BbHdLOyo.js → line-chart-slots.config-e2d18WFv.js} +0 -0
- /package/components/{map-tile-providers-Dth08bJQ.js → map-tile-providers-B0QAcTSs.js} +0 -0
- /package/components/{map-tile-providers-D_77henJ.cjs → map-tile-providers-BkI5azgy.cjs} +0 -0
- /package/components/{marker-map-options.de-CcW1ATcS.js → marker-map-options.de-DHKYn3C4.js} +0 -0
- /package/components/{marker-map-options.en-DX3jFHm2.js → marker-map-options.en-C6ir1esF.js} +0 -0
- /package/components/{marker-map-options.es-Biq3gn29.js → marker-map-options.es-CgdIWIql.js} +0 -0
- /package/components/{marker-map-options.fr-CDC79xGH.js → marker-map-options.fr-DKHfYExd.js} +0 -0
- /package/components/{marker-map-options.nl-B4y6W2ts.js → marker-map-options.nl-Csn4XscR.js} +0 -0
- /package/components/{marker-map-slots.config-BvuPAbVm.cjs → marker-map-slots.config-B90dMeLU.cjs} +0 -0
- /package/components/{marker-map-slots.config-DvV0DC9f.js → marker-map-slots.config-DGwRdpnO.js} +0 -0
- /package/components/{mk-CblE-ft8.js → mk-B6IFfdHa.js} +0 -0
- /package/components/{nl-B3QObqms.js → nl-B02XArjY.js} +0 -0
- /package/components/{no-Cy3fZSjP.js → no-DtuQwCA1.js} +0 -0
- /package/components/{ohlc-chart-options.config-9nfqpoHy.cjs → ohlc-chart-options.config-CEjuqIb-.cjs} +0 -0
- /package/components/{ohlc-chart-options.config-8L-aILHO.js → ohlc-chart-options.config-D6VEwV8W.js} +0 -0
- /package/components/{ohlc-chart-options.de-CO8zgbTl.js → ohlc-chart-options.de-xodsDE8k.js} +0 -0
- /package/components/{ohlc-chart-options.en-W517Yriv.js → ohlc-chart-options.en-Bp3Yf3vX.js} +0 -0
- /package/components/{ohlc-chart-options.es-l3A7gc6J.js → ohlc-chart-options.es-CcZY8RVT.js} +0 -0
- /package/components/{ohlc-chart-options.fr-DgcNBfou.js → ohlc-chart-options.fr-DMRxrp4h.js} +0 -0
- /package/components/{ohlc-chart-options.nl-I3JIx5N_.js → ohlc-chart-options.nl-D6zinb62.js} +0 -0
- /package/components/{ohlc-chart-slots.config-DdpJLO9o.js → ohlc-chart-slots.config-0JGL8N_o.js} +0 -0
- /package/components/{ohlc-chart-slots.config-BBI8AvP8.cjs → ohlc-chart-slots.config-BqjM77Qc.cjs} +0 -0
- /package/components/{orion-C1zRb883.js → orion-C28K1lam.js} +0 -0
- /package/components/{parallel-coordinates-plot-options.config-BWJDkdLS.cjs → parallel-coordinates-plot-options.config-BltHQ78x.cjs} +0 -0
- /package/components/{parallel-coordinates-plot-options.config-CjnBAp8l.js → parallel-coordinates-plot-options.config-CoRLp5Uj.js} +0 -0
- /package/components/{parallel-coordinates-plot-options.de-CYmxQH3T.js → parallel-coordinates-plot-options.de-BFPbt8_G.js} +0 -0
- /package/components/{parallel-coordinates-plot-options.en-C5S98cWS.js → parallel-coordinates-plot-options.en-Be60zCMZ.js} +0 -0
- /package/components/{parallel-coordinates-plot-options.es-BcYtww6R.js → parallel-coordinates-plot-options.es-xqmLgcgu.js} +0 -0
- /package/components/{parallel-coordinates-plot-options.fr-D3PpA0os.js → parallel-coordinates-plot-options.fr-B0kL-CDf.js} +0 -0
- /package/components/{parallel-coordinates-plot-options.nl-P48jxvEs.js → parallel-coordinates-plot-options.nl-wZwhVjJz.js} +0 -0
- /package/components/{parallel-coordinates-plot-slots.config-B0ux12Y7.js → parallel-coordinates-plot-slots.config-CrUlGPZI.js} +0 -0
- /package/components/{parallel-coordinates-plot-slots.config-D0nw4yez.cjs → parallel-coordinates-plot-slots.config-DAo3zkZ1.cjs} +0 -0
- /package/components/{pinky-BcDsL5CK.js → pinky-Dajp05sq.js} +0 -0
- /package/components/{pivot-table-options.de-Iyh97wrP.js → pivot-table-options.de-stErBGi2.js} +0 -0
- /package/components/{pivot-table-options.en-CcdbmgVx.js → pivot-table-options.en-DfGa_r4x.js} +0 -0
- /package/components/{pivot-table-options.es-CzaZwwcO.js → pivot-table-options.es-CctmL6Yg.js} +0 -0
- /package/components/{pivot-table-options.fr-vyY7VZZh.js → pivot-table-options.fr-n_zF2sYk.js} +0 -0
- /package/components/{pivot-table-options.nl-B7e8GON4.js → pivot-table-options.nl-D2l1Fwhm.js} +0 -0
- /package/components/{pivot-table-slots.config-DA9G1J8i.cjs → pivot-table-slots.config-CCty0gyB.cjs} +0 -0
- /package/components/{pivot-table-slots.config-PVLQ1stE.js → pivot-table-slots.config-C_idXTFh.js} +0 -0
- /package/components/{pl-CoSiUM4w.js → pl-B0B0vrv8.js} +0 -0
- /package/components/{positioning.config-BZxTw1bk.cjs → positioning.config-CGP8sgwQ.cjs} +0 -0
- /package/components/{positioning.config-Qw_7FByN.js → positioning.config-CurC-g3d.js} +0 -0
- /package/components/{pt-DnQKSJyE.js → pt-DetNP2yR.js} +0 -0
- /package/components/{pyramid-chart-options.de-BJ20AR8v.js → pyramid-chart-options.de-CkRSAOI1.js} +0 -0
- /package/components/{pyramid-chart-options.en-hnlQoi2n.js → pyramid-chart-options.en-BSJwdkVF.js} +0 -0
- /package/components/{pyramid-chart-options.es-AFcQ3y8v.js → pyramid-chart-options.es-BNbnNpgb.js} +0 -0
- /package/components/{pyramid-chart-options.fr-dT_bHV7R.js → pyramid-chart-options.fr-D81D6OsK.js} +0 -0
- /package/components/{pyramid-chart-options.nl-CrzgQwxU.js → pyramid-chart-options.nl-Dp1UQqA_.js} +0 -0
- /package/components/{pyramid-chart-slots.config-BkXj42Sz.js → pyramid-chart-slots.config-BmHEfg_H.js} +0 -0
- /package/components/{pyramid-chart-slots.config-0UxfRRXG.cjs → pyramid-chart-slots.config-EOUt8Cot.cjs} +0 -0
- /package/components/{radar-chart-options.de-BJNYwSU9.js → radar-chart-options.de-OGDpM-Nb.js} +0 -0
- /package/components/{radar-chart-options.en--kOe8g-X.js → radar-chart-options.en-CgLmycu_.js} +0 -0
- /package/components/{radar-chart-options.es-BLbMc8cQ.js → radar-chart-options.es-DVmd-sYw.js} +0 -0
- /package/components/{radar-chart-options.fr-CK5qgOZr.js → radar-chart-options.fr-BLyknBK4.js} +0 -0
- /package/components/{radar-chart-options.nl-Cwh5ib8F.js → radar-chart-options.nl-CtxQmvxu.js} +0 -0
- /package/components/{radar-chart-slots.config-DVaiK7je.js → radar-chart-slots.config-Drl5hBQ0.js} +0 -0
- /package/components/{radar-chart-slots.config-nrL3a99e.cjs → radar-chart-slots.config-h3Oj45vm.cjs} +0 -0
- /package/components/{radiant-Ea84f0KP.js → radiant-DfyJ8RxB.js} +0 -0
- /package/components/{regular-table-options.de-Dn5Ww0P5.js → regular-table-options.de-CrJ2NJib.js} +0 -0
- /package/components/{regular-table-options.en-BQoRdbgi.js → regular-table-options.en-CSmQ2BvL.js} +0 -0
- /package/components/{regular-table-options.es-CKAUeWpk.js → regular-table-options.es-dflHe9ZR.js} +0 -0
- /package/components/{regular-table-options.fr-DfupsEMT.js → regular-table-options.fr-Rs0nTu4B.js} +0 -0
- /package/components/{regular-table-options.nl-CZpBFGZm.js → regular-table-options.nl-CArSt7Y0.js} +0 -0
- /package/components/{regular-table-positioning.config-BKRNRelT.cjs → regular-table-positioning.config-COLrXzP8.cjs} +0 -0
- /package/components/{regular-table-positioning.config-BMqrUtQi.js → regular-table-positioning.config-Dzmrv4t-.js} +0 -0
- /package/components/{regular-table-slots.config-Ca5pwQi_.cjs → regular-table-slots.config-3utOfk2O.cjs} +0 -0
- /package/components/{regular-table-slots.config-XwltiuSF.js → regular-table-slots.config-Ca_o4ae5.js} +0 -0
- /package/components/{route-map-options.de-DtphMRWw.js → route-map-options.de-BUZoH7iZ.js} +0 -0
- /package/components/{route-map-options.en-Cdd7ovK3.js → route-map-options.en-DRYO2fNE.js} +0 -0
- /package/components/{route-map-options.es-Ckiq2-SN.js → route-map-options.es-D-Bihj7u.js} +0 -0
- /package/components/{route-map-options.fr-Be3oKjDd.js → route-map-options.fr-C4iYE6jK.js} +0 -0
- /package/components/{route-map-options.nl-PSjdbIWG.js → route-map-options.nl-BMzcq8XF.js} +0 -0
- /package/components/{route-map-slots.config-DVnRAhVY.cjs → route-map-slots.config-CIOriAti.cjs} +0 -0
- /package/components/{route-map-slots.config-lDXySIWv.js → route-map-slots.config-DrzUx7qo.js} +0 -0
- /package/components/{royale-BCPwhlnM.js → royale-B0HrCfjJ.js} +0 -0
- /package/components/{ru-_1cVpawL.js → ru-uXEMCdZe.js} +0 -0
- /package/components/{sankey-diagram-options.de-DfXTJ-I1.js → sankey-diagram-options.de-B_FiWitS.js} +0 -0
- /package/components/{sankey-diagram-options.en-DYW2TJiY.js → sankey-diagram-options.en-DCkOtQQU.js} +0 -0
- /package/components/{sankey-diagram-options.es-D1qtZuOm.js → sankey-diagram-options.es-DdMHVGBe.js} +0 -0
- /package/components/{sankey-diagram-options.fr-CLqEXn0-.js → sankey-diagram-options.fr-CE_A2c-J.js} +0 -0
- /package/components/{sankey-diagram-options.nl-OWm48tC4.js → sankey-diagram-options.nl-CbUHLOrV.js} +0 -0
- /package/components/{sankey-diagram-slots.config-R4T4fn3A.cjs → sankey-diagram-slots.config--zHIc2la.cjs} +0 -0
- /package/components/{sankey-diagram-slots.config-DUfGgSFE.js → sankey-diagram-slots.config-BrR45TTx.js} +0 -0
- /package/components/{scatter-plot-options.de-DfAfUgsx.js → scatter-plot-options.de-C6J7TwXJ.js} +0 -0
- /package/components/{scatter-plot-options.en-_kvECw78.js → scatter-plot-options.en-CrZHJcm-.js} +0 -0
- /package/components/{scatter-plot-options.es-PLa-Ykn0.js → scatter-plot-options.es-BRUPLbYI.js} +0 -0
- /package/components/{scatter-plot-options.fr-gZc7XqGE.js → scatter-plot-options.fr-CVyGs2YE.js} +0 -0
- /package/components/{scatter-plot-options.nl-CywDkI4T.js → scatter-plot-options.nl-CPIrnY4w.js} +0 -0
- /package/components/{scatter-plot-slots.config-BQAcyCm9.js → scatter-plot-slots.config-H1LfNaaT.js} +0 -0
- /package/components/{scatter-plot-slots.config-CmM7I0mO.cjs → scatter-plot-slots.config-pYVmnCk0.cjs} +0 -0
- /package/components/{search-filter-options.config-CHTr5FjE.js → search-filter-options.config-DXbqQlyA.js} +0 -0
- /package/components/{search-filter-options.config-hOBhB6oM.cjs → search-filter-options.config-DequpI65.cjs} +0 -0
- /package/components/{search-filter-options.de-DQmsVlIX.js → search-filter-options.de-D0ifzlmV.js} +0 -0
- /package/components/{search-filter-options.en-BW3-eu_1.js → search-filter-options.en-eAaajtKI.js} +0 -0
- /package/components/{search-filter-options.es-CS-Pj_6X.js → search-filter-options.es-g3Fb__d5.js} +0 -0
- /package/components/{search-filter-options.fr-DHrPRNL3.js → search-filter-options.fr-mcF-o86E.js} +0 -0
- /package/components/{search-filter-options.nl-D4rtkh83.js → search-filter-options.nl-BHfrRzOt.js} +0 -0
- /package/components/{search-filter-positioning.config-BgyiOtHA.cjs → search-filter-positioning.config-B4uLZ66r.cjs} +0 -0
- /package/components/{search-filter-positioning.config-CbMEIf70.js → search-filter-positioning.config-CkfkYC43.js} +0 -0
- /package/components/{search-filter-slots.config-D-id3Q-s.cjs → search-filter-slots.config-CbTZrGm9.cjs} +0 -0
- /package/components/{search-filter-slots.config-Dw1984vY.js → search-filter-slots.config-jjnb3VVl.js} +0 -0
- /package/components/{seasonal-BZFwWrzW.js → seasonal-TzHVie-I.js} +0 -0
- /package/components/{slicer-filter-options.de-9ltxfa8k.js → slicer-filter-options.de-CleS-jh8.js} +0 -0
- /package/components/{slicer-filter-options.en-DlvikARI.js → slicer-filter-options.en-BEX7w2md.js} +0 -0
- /package/components/{slicer-filter-options.es-Bm3wSiYd.js → slicer-filter-options.es-C48QC2H8.js} +0 -0
- /package/components/{slicer-filter-options.fr-QWyeK2NL.js → slicer-filter-options.fr-CPKkXkc6.js} +0 -0
- /package/components/{slicer-filter-options.nl-KPDT1ahs.js → slicer-filter-options.nl-Dooa7suz.js} +0 -0
- /package/components/{slicer-filter-slots.config-BUHyjBAh.js → slicer-filter-slots.config-Blk3kKX5.js} +0 -0
- /package/components/{slicer-filter-slots.config-D1s68EWl.cjs → slicer-filter-slots.config-CsbAboRS.cjs} +0 -0
- /package/components/{slider-filter-options.de-SPRKc85h.js → slider-filter-options.de-B4ukXYfU.js} +0 -0
- /package/components/{slider-filter-options.en-JMkjVGnU.js → slider-filter-options.en-DZY-063q.js} +0 -0
- /package/components/{slider-filter-options.es-B_7aCJa6.js → slider-filter-options.es-DUZJ1ePB.js} +0 -0
- /package/components/{slider-filter-options.fr-BkqPe3Oc.js → slider-filter-options.fr-CucYarG5.js} +0 -0
- /package/components/{slider-filter-options.nl-BlCRLcfG.js → slider-filter-options.nl-BwZY-ejf.js} +0 -0
- /package/components/{slider-filter-positioning.config-D2swlcJ4.js → slider-filter-positioning.config-BUSN4Pat.js} +0 -0
- /package/components/{slider-filter-positioning.config-DmA8AxZO.cjs → slider-filter-positioning.config-D04hocnt.cjs} +0 -0
- /package/components/{slider-filter-slots.config-DmuQo_Wl.cjs → slider-filter-slots.config-D41CdPY4.cjs} +0 -0
- /package/components/{slider-filter-slots.config-qZO-Jh4V.js → slider-filter-slots.config-zDcjTLwv.js} +0 -0
- /package/components/{slot-labels.config-BNi-I1ba.js → slot-labels.config-DZclEQ8k.js} +0 -0
- /package/components/{spacer-options.config-CbSFK1JI.js → spacer-options.config-DxkO35Bc.js} +0 -0
- /package/components/{spacer-options.config-CI1ktR36.cjs → spacer-options.config-cJ8E1c12.cjs} +0 -0
- /package/components/{speedometer-chart-options.de-Df-STBcN.js → speedometer-chart-options.de-6XkTvP7E.js} +0 -0
- /package/components/{speedometer-chart-options.en-BXWzUXFO.js → speedometer-chart-options.en-Bg4-Jsh4.js} +0 -0
- /package/components/{speedometer-chart-options.es-D3Ph-Rcx.js → speedometer-chart-options.es-DD6-ty8U.js} +0 -0
- /package/components/{speedometer-chart-options.fr-DSWMfKpP.js → speedometer-chart-options.fr-B9vK88BL.js} +0 -0
- /package/components/{speedometer-chart-options.nl-NHI-ac_S.js → speedometer-chart-options.nl-CW24UY0j.js} +0 -0
- /package/components/{speedometer-chart-slots.config-BN6mewCu.cjs → speedometer-chart-slots.config-BC2lgmE2.cjs} +0 -0
- /package/components/{speedometer-chart-slots.config-BgLpOuXQ.js → speedometer-chart-slots.config-BLN_rwq_.js} +0 -0
- /package/components/{spike-map-options.de-CYzXosOv.js → spike-map-options.de-CuZQNctU.js} +0 -0
- /package/components/{spike-map-options.en-CPwkTwCf.js → spike-map-options.en-yPSNlyMn.js} +0 -0
- /package/components/{spike-map-options.es-BtKB0RYI.js → spike-map-options.es-CLZvockl.js} +0 -0
- /package/components/{spike-map-options.fr-CsPYmk6X.js → spike-map-options.fr-uvaZpN8F.js} +0 -0
- /package/components/{spike-map-options.nl-D3xhl1AL.js → spike-map-options.nl-T6cZZKlT.js} +0 -0
- /package/components/{spike-map-slots.config-CeraclW1.js → spike-map-slots.config-3o3-EpgR.js} +0 -0
- /package/components/{spike-map-slots.config-DI9nBGoR.cjs → spike-map-slots.config-DIGLKSXO.cjs} +0 -0
- /package/components/{strip-plot-options.config-CGeDXxPZ.js → strip-plot-options.config-C_aUx4Ee.js} +0 -0
- /package/components/{strip-plot-options.config-C5QzqqZw.cjs → strip-plot-options.config-GVV-5z_B.cjs} +0 -0
- /package/components/{strip-plot-options.de-CznXLMmP.js → strip-plot-options.de-B9P8spcz.js} +0 -0
- /package/components/{strip-plot-options.en-D1hlL9xn.js → strip-plot-options.en-X9qI_p_W.js} +0 -0
- /package/components/{strip-plot-options.es-DqOD3-9y.js → strip-plot-options.es-_pMzBvto.js} +0 -0
- /package/components/{strip-plot-options.fr-DJpU8D22.js → strip-plot-options.fr-GaJLzXqx.js} +0 -0
- /package/components/{strip-plot-options.nl-CgYj8MRW.js → strip-plot-options.nl-B59BHbmO.js} +0 -0
- /package/components/{strip-plot-slots.config-sQCZFRAR.cjs → strip-plot-slots.config-CIlAzKs9.cjs} +0 -0
- /package/components/{strip-plot-slots.config-DpVj4TCJ.js → strip-plot-slots.config-Dz0U148d.js} +0 -0
- /package/components/{sunburst-chart-options.config-D7dU2Nef.cjs → sunburst-chart-options.config-CzqEd1N0.cjs} +0 -0
- /package/components/{sunburst-chart-options.config-Iv2td_T8.js → sunburst-chart-options.config-DgJroyxj.js} +0 -0
- /package/components/{sunburst-chart-options.de-Wh9wGDoy.js → sunburst-chart-options.de-Dr3HjYh7.js} +0 -0
- /package/components/{sunburst-chart-options.en-CuEjCKZf.js → sunburst-chart-options.en-sk44ap0-.js} +0 -0
- /package/components/{sunburst-chart-options.es-C0JZtuNM.js → sunburst-chart-options.es-B9TFfTId.js} +0 -0
- /package/components/{sunburst-chart-options.fr-BxDRF5q9.js → sunburst-chart-options.fr-DacxVeAW.js} +0 -0
- /package/components/{sunburst-chart-options.nl-CeqIu17N.js → sunburst-chart-options.nl-BDPMyiRF.js} +0 -0
- /package/components/{sunburst-chart-slots.config-DNB_xlT6.js → sunburst-chart-slots.config-CUUd8N36.js} +0 -0
- /package/components/{sunburst-chart-slots.config-D_IvmJsL.cjs → sunburst-chart-slots.config-CszbA3tp.cjs} +0 -0
- /package/components/{sv-DHtpgTI-.js → sv-B6ntYnxF.js} +0 -0
- /package/components/{symbol-map-options.de-B-WtWu2H.js → symbol-map-options.de-yKLOfzzX.js} +0 -0
- /package/components/{symbol-map-options.en-Cg_XG8EK.js → symbol-map-options.en-DsPopFuP.js} +0 -0
- /package/components/{symbol-map-options.es-DsMamlwV.js → symbol-map-options.es-DlXGGhOT.js} +0 -0
- /package/components/{symbol-map-options.fr-C2dliwc7.js → symbol-map-options.fr-B5UzoepV.js} +0 -0
- /package/components/{symbol-map-options.nl-DvL19fL-.js → symbol-map-options.nl-P-M3pc5i.js} +0 -0
- /package/components/{symbol-map-slots.config-Cj12KTFx.js → symbol-map-slots.config-BbULOS9q.js} +0 -0
- /package/components/{symbol-map-slots.config-BCgIc6Vk.cjs → symbol-map-slots.config-z893brxq.cjs} +0 -0
- /package/components/{text-options.config-Zu_s1esi.cjs → text-options.config-CcFli7tg.cjs} +0 -0
- /package/components/{text-options.config-DwBvbTz5.js → text-options.config-wM6yXqJt.js} +0 -0
- /package/components/{text-options.de-B85BSnr3.js → text-options.de-7-B2mZH6.js} +0 -0
- /package/components/{text-options.en-D9akV2DO.js → text-options.en-CzNsvAwW.js} +0 -0
- /package/components/{text-options.es-CBOjuaIu.js → text-options.es-Cp2v5wNr.js} +0 -0
- /package/components/{text-options.fr-rlX0P1Cr.js → text-options.fr-5IVawMia.js} +0 -0
- /package/components/{text-options.nl-epL5NErl.js → text-options.nl-BjEAgFYg.js} +0 -0
- /package/components/{text-slots.config-Ce74Bgnl.cjs → text-slots.config-Ld-48uIN.cjs} +0 -0
- /package/components/{text-slots.config-CeqXPUsB.js → text-slots.config-S-1Nh2dV.js} +0 -0
- /package/components/{tr-CQDEbLH9.js → tr-BkbYwPJw.js} +0 -0
- /package/components/{treemap-chart-options.de-BGyjb84d.js → treemap-chart-options.de-BzY-UzKZ.js} +0 -0
- /package/components/{treemap-chart-options.en-CQPWiBkJ.js → treemap-chart-options.en-PHNIx4ek.js} +0 -0
- /package/components/{treemap-chart-options.es-_CoOIWaB.js → treemap-chart-options.es-W1Thvi4j.js} +0 -0
- /package/components/{treemap-chart-options.fr-B-2BvtfZ.js → treemap-chart-options.fr-OIU1LWcm.js} +0 -0
- /package/components/{treemap-chart-options.nl-BPr2SP0y.js → treemap-chart-options.nl-DHirhsS2.js} +0 -0
- /package/components/{treemap-chart-slots.config-C4W4_3na.js → treemap-chart-slots.config-_aaHvno2.js} +0 -0
- /package/components/{treemap-chart-slots.config-jQ1_EZBr.cjs → treemap-chart-slots.config-zIhxgUFq.cjs} +0 -0
- /package/components/{urban-_JnC62fb.js → urban-CbS5uKmG.js} +0 -0
- /package/components/{validate-mtIcbiOa.js → validate-BzxfFJY6.js} +0 -0
- /package/components/{venn-diagram-options.config-DtjbTHcO.js → venn-diagram-options.config-B-DoiVVh.js} +0 -0
- /package/components/{venn-diagram-options.config-Dqq-7wc-.cjs → venn-diagram-options.config-DHcg3js4.cjs} +0 -0
- /package/components/{venn-diagram-slots.config-QbGDMgWM.js → venn-diagram-slots.config-CJcEGeWy.js} +0 -0
- /package/components/{venn-diagram-slots.config-CDsbtDgk.cjs → venn-diagram-slots.config-DOuAdavb.cjs} +0 -0
- /package/components/{video-options.config-DFMiBYU7.cjs → video-options.config-BNAJi_XB.cjs} +0 -0
- /package/components/{video-options.config-CMfkp_5-.js → video-options.config-HURF6yUt.js} +0 -0
- /package/components/{video-options.de-DQGaj9I0.js → video-options.de-DkCQeyVU.js} +0 -0
- /package/components/{video-options.en-Bw-NmcDX.js → video-options.en-j-Mn5a8I.js} +0 -0
- /package/components/{video-options.es-lG5luzd5.js → video-options.es-LR7bQXzq.js} +0 -0
- /package/components/{video-options.fr-CqAj6DNP.js → video-options.fr-BU0z08nV.js} +0 -0
- /package/components/{video-options.nl-kYi5F6Dh.js → video-options.nl-wMhS1U3h.js} +0 -0
- /package/components/{video-slots.config-CRX1Wrq2.cjs → video-slots.config-1i2ZSU8K.cjs} +0 -0
- /package/components/{video-slots.config-BIZpYGiK.js → video-slots.config-Bb2PkUrY.js} +0 -0
- /package/components/{vivid-DSzl_YXa.js → vivid-DeNIlNRe.js} +0 -0
- /package/components/{wordcloud-chart-options.de-CwMhGAou.js → wordcloud-chart-options.de-BHdpj73v.js} +0 -0
- /package/components/{wordcloud-chart-options.en-B0dCi7xP.js → wordcloud-chart-options.en-D-pbm6h8.js} +0 -0
- /package/components/{wordcloud-chart-options.es--F5xTmjw.js → wordcloud-chart-options.es-fdvijBq4.js} +0 -0
- /package/components/{wordcloud-chart-options.fr-DuI8P_tq.js → wordcloud-chart-options.fr-BIW-RkrZ.js} +0 -0
- /package/components/{wordcloud-chart-options.nl-C3-yZ6fA.js → wordcloud-chart-options.nl-Cv0q9KW3.js} +0 -0
- /package/components/{wordcloud-chart-slots.config-BiSClWVd.cjs → wordcloud-chart-slots.config-BQAL4X4W.cjs} +0 -0
- /package/components/{wordcloud-chart-slots.config-DC5OnXO_.js → wordcloud-chart-slots.config-nL1VltKu.js} +0 -0
- /package/components/{zh-CN-IY9kzosu.js → zh-CN-u-UnW14z.js} +0 -0
- /package/components/{zh-TW-BMgkslV-.js → zh-TW-CFPxsPqh.js} +0 -0
|
@@ -0,0 +1,320 @@
|
|
|
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 require_chunk=require(`./chunk-350yNsax.cjs`),require_decorate=require(`./decorate-Dq4-zbi1.cjs`),require_localized_mixin=require(`./localized-mixin-DiD8Bmip.cjs`),require_color=require(`./color-DxvhIMkP.cjs`),require_themes=require(`./themes-BZL9NfRc.cjs`),require_item_list=require(`./item-list-BMpMEG17.cjs`);let _luzmo_icons=require(`@luzmo/icons`),lit=require(`lit`),lit_decorators_js=require(`lit/decorators.js`),_lit_localize=require(`@lit/localize`);require(`@luzmo/lucero/tooltip`);let lit_directives_repeat_js=require(`lit/directives/repeat.js`);require(`@luzmo/lucero/icon`),require(`@luzmo/lucero/action-button`),require(`@luzmo/lucero/action-group`);let lit_directives_guard_js=require(`lit/directives/guard.js`),_luzmo_lucero_utils=require(`@luzmo/lucero/utils`),lit_directives_style_map_js=require(`lit/directives/style-map.js`);var byteToHex=[];for(let i=0;i<256;++i)byteToHex.push((i+256).toString(16).slice(1));function unsafeStringify(arr,offset$2=0){return(byteToHex[arr[offset$2+0]]+byteToHex[arr[offset$2+1]]+byteToHex[arr[offset$2+2]]+byteToHex[arr[offset$2+3]]+`-`+byteToHex[arr[offset$2+4]]+byteToHex[arr[offset$2+5]]+`-`+byteToHex[arr[offset$2+6]]+byteToHex[arr[offset$2+7]]+`-`+byteToHex[arr[offset$2+8]]+byteToHex[arr[offset$2+9]]+`-`+byteToHex[arr[offset$2+10]]+byteToHex[arr[offset$2+11]]+byteToHex[arr[offset$2+12]]+byteToHex[arr[offset$2+13]]+byteToHex[arr[offset$2+14]]+byteToHex[arr[offset$2+15]]).toLowerCase()}var getRandomValues,rnds8=new Uint8Array(16);function rng(){if(!getRandomValues){if(typeof crypto>`u`||!crypto.getRandomValues)throw Error(`crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported`);getRandomValues=crypto.getRandomValues.bind(crypto)}return getRandomValues(rnds8)}var randomUUID=typeof crypto<`u`&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),native_default={randomUUID};function _v4(options,buf,offset$2){options||={};let rnds=options.random??options.rng?.()??rng();if(rnds.length<16)throw Error(`Random bytes length must be >= 16`);if(rnds[6]=rnds[6]&15|64,rnds[8]=rnds[8]&63|128,buf){if(offset$2||=0,offset$2<0||offset$2+16>buf.length)throw RangeError(`UUID byte range ${offset$2}:${offset$2+15} is out of buffer bounds`);for(let i=0;i<16;++i)buf[offset$2+i]=rnds[i];return buf}return unsafeStringify(rnds)}function v4(options,buf,offset$2){return native_default.randomUUID&&!buf&&!options?native_default.randomUUID():_v4(options,buf,offset$2)}var v4_default=v4;const _handleError=(errorMessage,parameters)=>{let message=`The dashboard component encountered an error`;typeof parameters?.dashboardId==`string`&&(message+=` for dashboard with id ${parameters.dashboardId}`),typeof parameters?.dashboardSlug==`string`&&(message+=` for dashboard with slug ${parameters.dashboardSlug}`),typeof parameters?.container==`string`&&(message+=` in container ${parameters.container}`),errorMessage&&(message+=`:\n${errorMessage}`,console.warn(message))},_browserCheck=dashboardComponent=>{let hasError=!1,errorMessage=``,style=(document.body||document.documentElement).style,browserCheck={svg:!!(`createElementNS`in document&&document.createElementNS(`http://www.w3.org/2000/svg`,`svg`).createSVGRect),flexbox:style.webkitFlexWrap===``||style.flexWrap===``,postMessage:!!window.postMessage};for(let key of[`svg`,`flexbox`,`postMessage`])browserCheck[key]||(hasError=!0,dashboardComponent.browserNotSupported=dashboardComponent.browserNotSupported||[],dashboardComponent.browserNotSupported.push(key),errorMessage+=`Your browser does not support: ${key}\n`);let ua=window.navigator.userAgent,msie=ua.includes(`MSIE`),trident=ua.includes(`Trident/`);(msie||trident)&&(hasError=!0,errorMessage=`IE is not supported.`),hasError&&_handleError(errorMessage)},DEFAULT_PARAMETERS={appServer:`https://app.luzmo.com/`,apiHost:`https://api.luzmo.com/`,dashboardId:null,dashboardSlug:null,container:null,key:null,token:null,language:`auto`,editorLanguage:`auto`,qeVersion:null,editMode:null,screenMode:null,switchScreenModeOnResize:!0,itemId:null,theme:``,mainColor:``,accentColor:``,itemDimensions:{width:`auto`,height:`auto`},loaderBackground:`#f9f9f9`,loaderFontColor:`#5a5a5a`,loaderSpinnerColor:`rgba(255, 165, 0, 0.7)`,loaderSpinnerBackground:`rgba(169, 169, 169, 0.14)`,timezoneId:null,contextId:null},EXTENTS=[{mode:`mobile`,width:[150,767]},{mode:`tablet`,width:[768,1199]},{mode:`desktop`,width:[1200,1599]},{mode:`largeScreen`,width:[1600,9999]},{mode:`fixed`,width:[]}],TRANSLATIONS={initializing:{en:`Initializing...`,nl:`Laden...`,fr:`Chargement...`,de:`Initialisiere...`,es:`Inicializando...`},errorDashboard:{en:`Oops, we could not load this dashboard!`,nl:`Oeps, we konden het dashboard niet laden.`,fr:`Le chargement a echoué.`,de:`Hoppla, wir konnten dieses Dashboard nicht laden!`,es:`¡Ups! No pudimos cargar este tablero.`},errorItem:{en:`Oops, we could not load this item!`,nl:`Oeps, we konden de grafiek niet laden.`,fr:`Le chargement a echoué.`,de:`Hoppla, wir konnten dieses Diagramm nicht laden!`,es:`¡Ups! No pudimos cargar este elemento.`}};var translations_default=TRANSLATIONS;const addTrailingSlash=serverUrl=>serverUrl?serverUrl.endsWith(`/`)?serverUrl:`${serverUrl}/`:``,removeTrailingSlash=serverUrl=>serverUrl?serverUrl.endsWith(`/`)?serverUrl.slice(0,-1):serverUrl:``,formatDashboardList=(dashboards,integrationId,user,dashboardComponent)=>{let combineRights=(securable,user$1)=>{let matchingUser=securable.users.find(u=>u.id===user$1.id),securableAccessRights=matchingUser&&matchingUser.userAccessRight?{flagRead:matchingUser.userAccessRight.flagRead,flagUse:matchingUser.userAccessRight.flagUse,flagModify:matchingUser.userAccessRight.flagModify,flagOwn:matchingUser.userAccessRight.flagOwn}:{flagRead:!1,flagUse:!1,flagModify:!1,flagOwn:!1},groupsAccess=securable.groups.filter(group=>user$1.userGroups.includes(group.id)||group.public===!0).map(group=>{if(group.groupAccessRight)return group.groupAccessRight});for(let groupAccess of groupsAccess)!securableAccessRights.flagRead&&groupAccess.flagRead&&(securableAccessRights.flagRead=groupAccess.flagRead),!securableAccessRights.flagUse&&groupAccess.flagUse&&(securableAccessRights.flagUse=groupAccess.flagUse),!securableAccessRights.flagModify&&groupAccess.flagModify&&(securableAccessRights.flagModify=groupAccess.flagModify),!securableAccessRights.flagOwn&&groupAccess.flagOwn&&(securableAccessRights.flagOwn=groupAccess.flagOwn);let integrationsAccess=securable.integrations?.length>0?securable.integrations.map(integration=>{if(integration.integrationAccessRight)return integration.integrationAccessRight}):[];for(let integrationAccess of integrationsAccess)!securableAccessRights.flagRead&&integrationAccess.flagRead&&(securableAccessRights.flagRead=integrationAccess.flagRead),!securableAccessRights.flagUse&&integrationAccess.flagUse&&(securableAccessRights.flagUse=integrationAccess.flagUse),!securableAccessRights.flagModify&&integrationAccess.flagModify&&(securableAccessRights.flagModify=integrationAccess.flagModify);return securableAccessRights},localize=(item,locale)=>{if(item==null)return``;if(typeof item!=`object`||Object.keys(item).length===0)return typeof item==`object`&&Object.keys(item).length===0?``:item;let localizedItem;return localizedItem=locale&&item[locale]?item[locale]:item[Object.keys(item)[0]],localizedItem??=``,localizedItem},treatedDashboards=[];for(let dashboard of dashboards){let treatedDashboard={accessibleBy:[],accessRights:combineRights(dashboard,user),id:dashboard.id,modifiedAt:dashboard.modified_at,name:localize(dashboard.name,dashboardComponent.language),slug:null,tags:dashboard.tags.map(t=>t.tag).sort((t1,t2)=>t1.localeCompare(t2))},currentIntegration=dashboard.integrations.find(i=>i.id===integrationId);currentIntegration?.integrationAccessRight?.slug&&(treatedDashboard.slug=currentIntegration.integrationAccessRight.slug);let users=dashboard.users.map(u=>({model:`User`,id:u.id,name:localize(u.name,user.locale_id)})),groups=dashboard.groups.map(g=>({model:`Group`,id:g.id,name:localize(g.name,user.locale_id)||{}})),integrations=dashboard.integrations.map(i=>({model:`Integration`,id:i.id,name:localize(i.name,user.locale_id)||{}}));treatedDashboard.accessibleBy=[...users,...groups,...integrations],treatedDashboards.push(treatedDashboard)}return treatedDashboards},VERSION=`0.0.0-unknown-luzmo`,sanitizeUrl=url=>{let invalidPrototcolRegex=/^(%20|\s)*(javascript|data)/im,ctrlCharactersRegex=/[^\u0020-\u007E]/gim,urlSchemeRegex=/^([^:]+):/gm,relativeFirstCharacters=new Set([`.`,`/`]),isRelativeUrlWithoutProtocol=relativeUrl=>relativeFirstCharacters.has(relativeUrl[0]);if(!url)return`about:blank`;let sanitizedUrl=url.replaceAll(ctrlCharactersRegex,``).trim();if(isRelativeUrlWithoutProtocol(sanitizedUrl))return sanitizedUrl;let urlSchemeParseResults=sanitizedUrl.match(urlSchemeRegex);if(!urlSchemeParseResults)return sanitizedUrl;let urlScheme=urlSchemeParseResults[0];return invalidPrototcolRegex.test(urlScheme)?`about:blank`:sanitizedUrl},cloneDeep=obj=>JSON.parse(JSON.stringify(obj));var isObject=o=>o&&typeof o==`object`;const defaultsDeep=(target,defaults)=>(Object.entries(defaults).forEach(([k,v])=>{k in target?target[k]===void 0?target[k]=v:target[k]=isObject(v)?defaultsDeep(target[k],v):target[k]:target[k]=v}),target),uuidv4=()=>`xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.replaceAll(/[xy]/g,function(c){let r=Math.random()*16|0;return(c==`x`?r:r&3|8).toString(16)}),createIframeUrl=dashboardContent=>{let searchString=[],{appServer,language,editorLanguage,qeVersion,loaderBackground,loaderSpinnerColor,loaderSpinnerBackground,loaderFontColor,screenMode,key,token,timezoneId,itemEmbedding,itemDimensions,dashboardId,dashboardSlug,itemId,theme,mainColor,accentColor,editMode}=dashboardContent.params;language&&language!==`auto`&&searchString.push(`language=${language}`),editorLanguage&&editorLanguage!==`auto`&&searchString.push(`editorLanguage=${editorLanguage}`),qeVersion&&searchString.push(`qe_version=${qeVersion}`),loaderBackground&&searchString.push(`ldrbg=${loaderBackground}`),loaderFontColor&&searchString.push(`ldrftclr=${loaderFontColor}`),loaderSpinnerColor&&searchString.push(`ldrspclr=${loaderSpinnerColor}`),loaderSpinnerBackground&&searchString.push(`ldrspbg=${loaderSpinnerBackground}`),theme&&searchString.push(`theme=${theme}`),mainColor&&searchString.push(`mainColor=${mainColor}`),accentColor&&searchString.push(`accentColor=${accentColor}`),screenMode&&screenMode!==`auto`&&searchString.push(`screenMode=&{screenMode}`),timezoneId&&searchString.push(`timezoneId=`+timezoneId),itemEmbedding&&itemDimensions&&itemDimensions.width&&searchString.push(`width=`+itemDimensions.width),itemEmbedding&&itemDimensions&&itemDimensions.height&&searchString.push(`height=`+itemDimensions.height),editMode&&searchString.push(`editMode=`+editMode);let keyTokenUrlAnchor=key&&token?`#`+key+`:`+token:``;return searchString.push(`version=`+(dashboardContent.libVersion||`0.0.0-unknown-luzmo`)),sanitizeUrl(itemEmbedding?`${appServer}i/${dashboardId||dashboardSlug}/${itemId}?${encodeURIComponent(searchString.join(`&`))}${keyTokenUrlAnchor}`:`${appServer}i/${dashboardId||dashboardSlug}?${encodeURIComponent(searchString.join(`&`))}${keyTokenUrlAnchor}`)},getLoader=dashboardComponent=>{let errorMsg;(dashboardComponent.params.error||dashboardComponent.browserNotSupported.length>0)&&(dashboardComponent.params.error=!0,dashboardComponent.browserNotSupported&&(errorMsg=`Browser is not supported.`));let loadingMsg=translations_default.initializing[dashboardComponent.params.language]||translations_default.initializing.en;return dashboardComponent.browserNotSupported||dashboardComponent.params.error?{loadingMsg,errorMsg}:{loadingMsg,errorMsg:``}};function resolvePromise(dashboardComponent,requestId,data){dashboardComponent.promises[requestId]&&(dashboardComponent.promises[requestId].resolve(data),delete dashboardComponent.promises[requestId])}function rejectPromise(dashboardComponent,requestId,data){dashboardComponent.promises[requestId]&&(dashboardComponent.promises[requestId].reject(data),delete dashboardComponent.promises[requestId])}function containerStyles(dashboardComponent){let styles={};return dashboardComponent.params.loaderBackground&&!dashboardComponent.iframeLoaded&&(styles.background=dashboardComponent.params.loaderBackground),styles}function containerLoaderStyles(dashboardComponent){let height=dashboardComponent.params.itemDimensions?.height||DEFAULT_PARAMETERS.itemDimensions.height,chartHeightDefined=dashboardComponent.params.itemEmbedding&&height!==`auto`;return{display:dashboardComponent.iframeLoaded?`none`:``,height:`${chartHeightDefined?height:dashboardComponent.minHeight}px`}}function loaderStyles(dashboardComponent){let background=dashboardComponent.params.loaderBackground||DEFAULT_PARAMETERS.loaderBackground;if(dashboardComponent.params.itemEmbedding){dashboardComponent.loaderSize=24,dashboardComponent.borderWidth=4,dashboardComponent.minHeight=200;let width=dashboardComponent.params.itemDimensions?.width||DEFAULT_PARAMETERS.itemDimensions.width,height=dashboardComponent.params.itemDimensions?.height||DEFAULT_PARAMETERS.itemDimensions.height,chartWidthDefined=width!==`auto`,chartHeightDefined=height!==`auto`;return{background,width:chartWidthDefined?`${width}px`:`100%`,height:`${chartHeightDefined?height:`200`}px`,"min-height":chartHeightDefined?``:`200px`}}return{background}}function plStyles(dashboardComponent){let{loaderSpinnerColor:defaultSpinnerColor,loaderSpinnerBackground:defaultSpinnerBackground}=DEFAULT_PARAMETERS,spinnerColorBorder=generateBorderStyle(dashboardComponent.borderWidth,dashboardComponent.params.loaderSpinnerColor||defaultSpinnerColor),spinnerBackgroundBorder=generateBorderStyle(dashboardComponent.borderWidth,dashboardComponent.params.loaderSpinnerBackground||defaultSpinnerBackground),size=`${dashboardComponent.loaderSize}px`;return{"border-top":spinnerColorBorder,"border-right":spinnerColorBorder,"border-bottom":spinnerBackgroundBorder,"border-left":spinnerBackgroundBorder,width:size,height:size}}function lcStyles(dashboardComponent){let height=dashboardComponent.params.itemDimensions?.height||DEFAULT_PARAMETERS.itemDimensions.height,chartHeightDefined=dashboardComponent.params.itemEmbedding&&height!==`auto`;return{padding:`${dashboardComponent.params.itemId?(value=>`${(value-dashboardComponent.loaderSize-32)/2}px`)(chartHeightDefined?Number.parseInt(`${height}`,10):dashboardComponent.minHeight):`128px`} 16px`}}function calculateIframeStyles(dashboardComponent){let height=dashboardComponent.params.itemDimensions?.height||DEFAULT_PARAMETERS.itemDimensions.height,width=dashboardComponent.params.itemDimensions?.width||DEFAULT_PARAMETERS.itemDimensions.width;dashboardComponent.params.itemEmbedding&&height!==`auto`?dashboardComponent.iframeHeight=`${height}px`:dashboardComponent.params.itemEmbedding?dashboardComponent.iframeHeight=`200px`:[`editFull`,`editLimited`].includes(dashboardComponent.params.editMode)?dashboardComponent.iframeHeight=`100%`:dashboardComponent.iframeHeight=`400px`,dashboardComponent.iframeWidth=dashboardComponent.params.itemEmbedding&&width!==`auto`?`${width}px`:`100%`;let styles={height:dashboardComponent.iframeHeight,width:dashboardComponent.iframeWidth};return dashboardComponent.iframeLoaded?styles.opacity=1:dashboardComponent.error?(styles.opacity=1,styles.width=`100%`,styles.height=`400px`):styles.opacity=0,styles}function generateBorderStyle(borderWidth,color){return`${borderWidth}px solid ${color}`}const updateIframeUrl=(iframe,iframeUrl)=>{iframe?.contentWindow&&iframe.contentWindow.location.replace(iframeUrl)},exportDashboard=(dashboardComponent,iframe,format)=>{let requestId=uuidv4();return iframe?.contentWindow?(iframe.contentWindow.postMessage({action:`exportDashboard`,format:format||`png`,_version:dashboardComponent.libVersion,requestId},`*`),new Promise((resolve,reject)=>{dashboardComponent.promises[requestId]={resolve,reject},setTimeout(()=>{dashboardComponent.promises[requestId]&&(dashboardComponent.promises[requestId].reject(Error(`exportDashboard request timed out.`)),delete dashboardComponent.promises[requestId])},12e5)})):Promise.reject(Error(`Cannot retrieve contentWindow.`))},getAccessibleDashboards=async dashboardComponent=>{if(await dashboardComponent.updateComplete,(dashboardComponent.currentAuthKey??dashboardComponent.authKey)&&(dashboardComponent.currentAuthToken??dashboardComponent.authToken)){let fetchUser=new Promise((resolve,reject)=>{(()=>{try{window.fetch(`${addTrailingSlash(dashboardComponent.params.apiHost)}0.1.0/authorization`,{method:`POST`,mode:`cors`,cache:`no-cache`,headers:{"Content-Type":`application/json`},redirect:`follow`,body:JSON.stringify({action:`get`,version:`0.1.0`,key:dashboardComponent.currentAuthKey??dashboardComponent.authKey,token:dashboardComponent.currentAuthToken??dashboardComponent.authToken,find:{where:{id:dashboardComponent.authKey},attributes:[`id`,`integration_id`],include:[{model:`User`,attributes:[`id`,`name`,`locale_id`],include:[{model:`Group`}]}]}})}).then(response=>response.json()).then(data=>{!data||!data.rows||data.rows.length===0||!data.rows[0].user?reject(`Authorization failed, please check authKey and authToken. If the problem persists, please contact support@luzmo.com.`):(data.rows[0].user.userGroups=data.rows[0].user.groups.map(group=>group.id),delete data.rows[0].user.groups,resolve({integrationId:data.rows[0].integration_id,user:data.rows[0].user}))})}catch(error){reject(error)}})()});return new Promise((resolve,reject)=>void(()=>{try{fetchUser.then(authorizationData=>{window.fetch(`${addTrailingSlash(dashboardComponent.params.apiHost)}0.1.0/securable`,{method:`POST`,mode:`cors`,cache:`no-cache`,headers:{"Content-Type":`application/json`},redirect:`follow`,body:JSON.stringify({action:`get`,version:`0.1.0`,key:dashboardComponent.currentAuthKey??dashboardComponent.authKey,token:dashboardComponent.currentAuthToken??dashboardComponent.authToken,find:{where:{type:`dashboard`,is_variant:!1},attributes:[`id`,`name`,`modified_at`],order:[[`modified_at`,`desc`]],include:[{model:`Tag`,attributes:[`tag`]},{model:`User`,attributes:[`id`,`name`]},{model:`Group`,attributes:[`id`,`name`,`public`]},{model:`Integration`,attributes:[`id`,`name`]}]}})}).then(response=>response.json()).then(data=>{resolve(data.rows.length>0?formatDashboardList(data.rows,authorizationData.integrationId,authorizationData.user,dashboardComponent):[])})}).catch(error=>{reject(error)})}catch(error){reject(error)}})())}throw Error(`No authKey or authToken found in the luzmo-dashboard component.`)},getData=(dashboardComponent,iframe,itemId)=>{if(iframe?.contentWindow){let requestId=uuidv4();return iframe.contentWindow.postMessage({action:`getData`,id:itemId,_version:dashboardComponent.libVersion,requestId},`*`),new Promise((resolve,reject)=>{dashboardComponent.promises[requestId]={resolve,reject},setTimeout(()=>{dashboardComponent.promises[requestId]&&(dashboardComponent.promises[requestId].reject(Error(`getData request timed out.`)),delete dashboardComponent.promises[requestId])},2e3)})}return Promise.reject(Error(`Cannot retrieve contentWindow.`))},getFilters=(dashboardComponent,iframe)=>{if(iframe?.contentWindow){let requestId=uuidv4();return iframe.contentWindow.postMessage({action:`getFilters`,_version:dashboardComponent.libVersion,requestId},`*`),new Promise((resolve,reject)=>{dashboardComponent.promises[requestId]={resolve,reject},setTimeout(()=>{dashboardComponent.promises[requestId]&&(dashboardComponent.promises[requestId].reject(Error(`getFilters request timed out.`)),delete dashboardComponent.promises[requestId])},2e3)})}return Promise.reject(Error(`Cannot retrieve contentWindow.`))},refreshData=(dashboardComponent,iframe,itemId)=>iframe?(iframe.contentWindow.postMessage({action:`refreshData`,id:itemId??null,_version:dashboardComponent.libVersion},`*`),Promise.resolve()):Promise.reject(Error(`Cannot retrieve contentWindow.`)),reloadDashboard=(dashboardComponent,iframe)=>iframe?(iframe.contentWindow.postMessage({action:`reloadDashboard`,_version:dashboardComponent.libVersion},`*`),Promise.resolve()):Promise.reject(Error(`Cannot retrieve contentWindow.`)),sendExportEmail=(dashboardComponent,iframe,type,subject,message)=>iframe?(iframe.contentWindow.postMessage({action:`sendExportEmail`,type:type||`once`,subject,message,_version:dashboardComponent.libVersion},`*`),Promise.resolve()):Promise.reject(Error(`Cannot retrieve contentWindow.`)),setAuthorization=(dashboardComponent,iframe,key,token)=>iframe?(iframe.contentWindow.postMessage({action:`setAuthorization`,key,token,_version:dashboardComponent.libVersion},`*`),Promise.resolve()):Promise.reject(Error(`Cannot retrieve contentWindow.`)),setEditMode=(dashboardComponent,iframe,editMode)=>{if(iframe&&iframe.contentWindow){let requestId=uuidv4();return dashboardComponent.params.editMode===editMode?Promise.reject(Error(`editMode parameter is currently already set to `+editMode)):editMode!==`editFull`&&editMode!==`editLimited`&&editMode!==`view`?Promise.reject(Error(`The editMode parameter must be one of the following values: 'editFull', 'editLimited' or 'view'.`)):(iframe.contentWindow.postMessage({action:`setEditMode`,editMode,_version:dashboardComponent.libVersion,requestId},`*`),new Promise((resolve,reject)=>{dashboardComponent.promises[requestId]={resolve,reject}}))}return Promise.reject(Error(`Cannot retrieve contentWindow.`))},setPreview=(dashboardComponent,iframe,preview)=>{if(iframe){let requestId=uuidv4();return iframe.contentWindow.postMessage({action:`setPreview`,preview,requestId,_version:dashboardComponent.libVersion},`*`),new Promise((resolve,reject)=>{dashboardComponent.promises[requestId]={resolve,reject},setTimeout(()=>{dashboardComponent.promises[requestId]&&(dashboardComponent.promises[requestId].reject(Error(`setPreview request timed out.`)),delete dashboardComponent.promises[requestId])},2e3)})}return Promise.reject(Error(`Cannot retrieve contentWindow.`))},setSelectedData=(dashboardComponent,iframe,itemId,filters)=>{if(iframe){let requestId=uuidv4();return iframe.contentWindow.postMessage({action:`setSelectedData`,itemId,filters,_version:dashboardComponent.libVersion,requestId},`*`),new Promise((resolve,reject)=>{dashboardComponent.promises[requestId]={resolve,reject},setTimeout(()=>{dashboardComponent.promises[requestId]&&(dashboardComponent.promises[requestId].reject(Error(`setSelectedData request timed out.`)),delete dashboardComponent.promises[requestId])},2e3)})}return Promise.reject()},_setCalculatedDimensions=dashboardComponent=>{if(!dashboardComponent.dimensions){dashboardComponent.params.error=!0,_handleError(`Got no valid dimensions.`,dashboardComponent.params);return}let dashboardDimensionKeys=Object.keys(dashboardComponent.dimensions),availableScreenModeExtents=[],currentMode,currentWidth=0,currentHeight=0;if(!dashboardComponent.params.switchScreenModeOnResize&&dashboardComponent.currentScreenMode&&(dashboardComponent.params.screenMode=dashboardComponent.currentScreenMode),dashboardComponent.dimensions&&dashboardDimensionKeys?.[0]===`fixed`)currentMode=`fixed`,currentWidth=dashboardComponent.dimensions.fixed[0],currentHeight=dashboardComponent.dimensions.fixed[1];else{let screenModes=[`mobile`,`tablet`,`desktop`,`largeScreen`];if(dashboardComponent.params.itemEmbedding){let[firstMatch]=dashboardDimensionKeys,match=cloneDeep(firstMatch);for(let screenMode of screenModes){let found=dashboardDimensionKeys.find(key=>key===screenMode);found?match=cloneDeep(found):dashboardComponent.dimensions[screenMode]=dashboardComponent.dimensions[match]}}for(let key of dashboardDimensionKeys)if(screenModes.includes(key)){let screenMode=EXTENTS.find(extent=>extent.mode===key);availableScreenModeExtents.push({...screenMode,height:dashboardComponent.dimensions[key][1]||50})}if(availableScreenModeExtents.map(screenModeExtent=>screenModeExtent.mode).includes(dashboardComponent.params.screenMode)||(dashboardComponent.params.screenMode=`auto`),dashboardComponent.params.screenMode===`auto`){availableScreenModeExtents.sort((a,b)=>screenModes.indexOf(a.mode)-screenModes.indexOf(b.mode));for(let screenModeExtent of availableScreenModeExtents){let[screenModeExtentMinWidth,screenModeExtentMaxWidth]=screenModeExtent.width;dashboardComponent.params.itemEmbedding&&dashboardComponent.params.itemDimensions&&dashboardComponent.params.itemDimensions.width!==`auto`&&dashboardComponent.params.itemDimensions.height===`auto`?screenModeExtentMinWidth<dashboardComponent.params.itemDimensions.width&&(currentMode=screenModeExtent.mode,currentWidth=Number.parseInt(dashboardComponent.params.itemDimensions.width,10),currentHeight=dashboardComponent.dimensions[currentMode][1]):screenModeExtentMinWidth<dashboardComponent.containerWidth&&(currentMode=screenModeExtent.mode,dashboardComponent.params.itemEmbedding?(currentWidth=dashboardComponent.params.itemDimensions?.width&&dashboardComponent.params.itemDimensions?.width!==`auto`?Number.parseInt(dashboardComponent.params.itemDimensions.width,10):Math.min(dashboardComponent.containerWidth,screenModeExtentMaxWidth),currentHeight=dashboardComponent.params.itemDimensions?.height&&dashboardComponent.params.itemDimensions?.height!==`auto`?Number.parseInt(dashboardComponent.params.itemDimensions.height,10):dashboardComponent.dimensions[currentMode][1],dashboardComponent.params.itemDimensions&&dashboardComponent.params.itemDimensions.width!==`auto`&&dashboardComponent.params.itemDimensions.height===`auto`&&(currentWidth=Number.parseInt(dashboardComponent.params.itemDimensions.width,10),currentHeight=dashboardComponent.dimensions[currentMode][1])):(currentWidth=Math.max(Math.min(screenModeExtentMaxWidth,dashboardComponent.containerWidth),screenModeExtentMinWidth),currentHeight=screenModeExtent.height))}}else{let{height:chosenModeHeight,width:[chosenModeMinWidth,chosenModeMaxWidth]}=availableScreenModeExtents.find(d=>d.mode===dashboardComponent.params.screenMode);currentMode=dashboardComponent.params.screenMode,currentWidth=Math.max(Math.min(chosenModeMaxWidth,dashboardComponent.containerWidth),chosenModeMinWidth),currentHeight=chosenModeHeight,dashboardComponent.params.itemEmbedding&&(dashboardComponent.params.itemDimensions?.width&&dashboardComponent.params.itemDimensions?.width!==`auto`&&(currentWidth=Number.parseInt(dashboardComponent.params.itemDimensions.width,10)),dashboardComponent.params.itemDimensions?.height&&dashboardComponent.params.itemDimensions?.height!==`auto`&&(currentHeight=Number.parseInt(dashboardComponent.params.itemDimensions.height,10)))}if(!currentMode&&availableScreenModeExtents.length>0){let[lowestModeExtent]=availableScreenModeExtents;currentMode=lowestModeExtent.mode,currentWidth=lowestModeExtent.width[0],currentHeight=lowestModeExtent.height}}dashboardComponent.currentScreenMode=currentMode;let style={height:currentHeight===0?`100%`:`${String(currentHeight)}px`,width:currentWidth===0?`100%`:`${String(currentWidth)}px`,opacity:1};[`editFull`,`editLimited`].includes(dashboardComponent.params.editMode)?(style.height=`100%`,style.width=`100%`):dashboardComponent.params.itemEmbedding&&dashboardComponent.params.itemDimensions?(style.height=dashboardComponent.params.itemDimensions.height===`auto`?style.height:`${String(dashboardComponent.params.itemDimensions.height).replace(`px`,``)}px`,style.width=dashboardComponent.params.itemDimensions.width===`auto`?style.width:`${String(dashboardComponent.params.itemDimensions.width).replace(`px`,``)}px`):(style.height=currentHeight===0?`100%`:`${String(currentHeight)}px`,style.width=currentWidth===0?`100%`:`${String(currentWidth)}px`),dashboardComponent.currentScreenMode=currentMode,dashboardComponent.iframeStyle=style},_extendAndValidate=dashboardContent=>{let defaultKeys=Object.keys(DEFAULT_PARAMETERS),errorMessages=[],requiredStringParams=[`appServer`,`language`,`apiHost`],requiredStringOrEmptyParams=[`key`,`token`,`screenMode`,`timezoneId`,`itemId`,`container`,`loaderBackground`,`loaderFontColor`,`loaderSpinnerColor`,`loaderSpinnerBackground`],objectParams=[`itemDimensions`],screenModes=[`mobile`,`tablet`,`desktop`,`largeScreen`,`fixed`,`auto`];for(let key of defaultKeys)dashboardContent.params[key]===null&&delete dashboardContent.params[key];dashboardContent.params=defaultsDeep(dashboardContent.params,DEFAULT_PARAMETERS),(!dashboardContent.params.dashboardId||typeof dashboardContent.params.dashboardId!=`string`)&&(!dashboardContent.params.dashboardSlug||typeof dashboardContent.params.dashboardSlug!=`string`)&&(delete dashboardContent.params.dashboardId,delete dashboardContent.params.dashboardSlug);for(let key of requiredStringParams)typeof dashboardContent.params[key]!=`string`&&(delete dashboardContent.params[key],errorMessages.push(`${key} needs to be of type string.`));for(let key of requiredStringOrEmptyParams)typeof dashboardContent.params[key]!=`string`&&dashboardContent.params[key]!==null&&dashboardContent.params[key]!==void 0&&(delete dashboardContent.params[key],errorMessages.push(`${key} needs to be of type string or empty.`));if(dashboardContent.params.screenMode&&!screenModes.includes(dashboardContent.params.screenMode)){let validTypesString=screenModes.map(mode=>`"${mode}"`).join(`, `);errorMessages.push(`"screenMode" needs should be one of these types: ${validTypesString}`),dashboardContent.params.screenMode=`auto`}dashboardContent.params.itemId&&(dashboardContent.params.itemEmbedding=!0);for(let key of objectParams)typeof dashboardContent.params[key]!=`object`&&dashboardContent.params[key]!==null&&(delete dashboardContent.params[key],errorMessages.push(`${key} needs to be of type object or empty.`));if(typeof dashboardContent.params.switchScreenModeOnResize!=`boolean`&&(errorMessages.push(`switchScreenModeOnResize needs to be of type boolean.`),dashboardContent.params.switchScreenModeOnResize=!0),dashboardContent.params.itemDimensions)for(let key of[`width`,`height`])![`string`,`number`].includes(typeof dashboardContent.params.itemDimensions[key])&&dashboardContent.params.itemDimensions[key]!==null&&errorMessages.push(`itemDimensions ${key} needs to be of type string, number or empty.`);dashboardContent.params=defaultsDeep(dashboardContent.params,DEFAULT_PARAMETERS),dashboardContent.params.screenMode&&dashboardContent.params.screenMode!==`auto`&&(dashboardContent.params.switchScreenModeOnResize=!1),dashboardContent.params.itemDimensions.width!==`auto`&&(dashboardContent.params.itemDimensions.width=Number.parseInt(`${dashboardContent.params.itemDimensions.width}`.replace(`px`,``),10)||`auto`),dashboardContent.params.itemDimensions.height!==`auto`&&(dashboardContent.params.itemDimensions.height=Number.parseInt(`${dashboardContent.params.itemDimensions.height}`.replace(`px`,``),10)||`auto`),dashboardContent.params.itemEmbedding=!!dashboardContent.params.itemId,(dashboardContent.params.error||errorMessages.length>0)&&_handleError(errorMessages.join(`
|
|
21
|
+
`),dashboardContent.params)},libraryTypeToWebComponentTypeMapping={type:`type`,slots:`slots`,options:`options`,appServer:`app-server`,apiHost:`api-host`,authKey:`auth-key`,authToken:`auth-token`,contextId:`context-id`,canFilter:`can-filter`,filters:`filters`,dashboardId:`dashboard-id`,itemId:`item-id`,dashboardContentsVersion:`dashboard-contents-version`,libVersion:`lib-version`},luzmoEmbedContainerClass=`luzmo-embed-container`;var require_index_cjs$3=require_chunk.t((exports=>{var FederationModuleManifest=`federation-manifest.json`,MANIFEST_EXT=`.json`,BROWSER_LOG_KEY=`FEDERATION_DEBUG`,NameTransformSymbol={AT:`@`,HYPHEN:`-`,SLASH:`/`},NameTransformMap={[NameTransformSymbol.AT]:`scope_`,[NameTransformSymbol.HYPHEN]:`_`,[NameTransformSymbol.SLASH]:`__`},EncodedNameTransformMap={[NameTransformMap[NameTransformSymbol.AT]]:NameTransformSymbol.AT,[NameTransformMap[NameTransformSymbol.HYPHEN]]:NameTransformSymbol.HYPHEN,[NameTransformMap[NameTransformSymbol.SLASH]]:NameTransformSymbol.SLASH},SEPARATOR=`:`,ManifestFileName=`mf-manifest.json`,StatsFileName=`mf-stats.json`,MFModuleType={NPM:`npm`,APP:`app`},MODULE_DEVTOOL_IDENTIFIER=`__MF_DEVTOOLS_MODULE_INFO__`,ENCODE_NAME_PREFIX=`ENCODE_NAME_PREFIX`,TEMP_DIR=`.federation`,MFPrefetchCommon={identifier:`MFDataPrefetch`,globalKey:`__PREFETCH__`,library:`mf-data-prefetch`,exportsKey:`__PREFETCH_EXPORTS__`,fileName:`bootstrap.js`},ContainerPlugin=Object.freeze({__proto__:null}),ContainerReferencePlugin=Object.freeze({__proto__:null}),ModuleFederationPlugin=Object.freeze({__proto__:null}),SharePlugin=Object.freeze({__proto__:null});function isBrowserEnv(){return typeof window<`u`&&window.document!==void 0}function isReactNativeEnv(){return typeof navigator<`u`&&navigator?.product===`ReactNative`}function isBrowserDebug(){try{if(isBrowserEnv()&&window.localStorage)return!!localStorage.getItem(BROWSER_LOG_KEY)}catch{return!1}return!1}function isDebugMode(){return typeof process<`u`&&process.env&&process.env.FEDERATION_DEBUG?!!process.env.FEDERATION_DEBUG:typeof FEDERATION_DEBUG<`u`&&FEDERATION_DEBUG?!0:isBrowserDebug()}var getProcessEnv=function(){return typeof process<`u`&&process.env?process.env:{}},LOG_CATEGORY=`[ Federation Runtime ]`,parseEntry=(str,devVerOrUrl,separator=SEPARATOR)=>{let strSplit=str.split(separator),devVersionOrUrl=getProcessEnv().NODE_ENV===`development`&&devVerOrUrl,defaultVersion=`*`,isEntry=s=>s.startsWith(`http`)||s.includes(MANIFEST_EXT);if(strSplit.length>=2){let[name,...versionOrEntryArr]=strSplit;str.startsWith(separator)&&(name=strSplit.slice(0,2).join(separator),versionOrEntryArr=[devVersionOrUrl||strSplit.slice(2).join(separator)]);let versionOrEntry=devVersionOrUrl||versionOrEntryArr.join(separator);return isEntry(versionOrEntry)?{name,entry:versionOrEntry}:{name,version:versionOrEntry||`*`}}else if(strSplit.length===1){let[name]=strSplit;return devVersionOrUrl&&isEntry(devVersionOrUrl)?{name,entry:devVersionOrUrl}:{name,version:devVersionOrUrl||`*`}}else throw`Invalid entry value: ${str}`},composeKeyWithSeparator=function(...args){return args.length?args.reduce((sum,cur)=>cur?sum?`${sum}${SEPARATOR}${cur}`:cur:sum,``):``},encodeName=function(name,prefix=``,withExt=!1){try{let ext=withExt?`.js`:``;return`${prefix}${name.replace(RegExp(`${NameTransformSymbol.AT}`,`g`),NameTransformMap[NameTransformSymbol.AT]).replace(RegExp(`${NameTransformSymbol.HYPHEN}`,`g`),NameTransformMap[NameTransformSymbol.HYPHEN]).replace(RegExp(`${NameTransformSymbol.SLASH}`,`g`),NameTransformMap[NameTransformSymbol.SLASH])}${ext}`}catch(err){throw err}},decodeName=function(name,prefix,withExt){try{let decodedName=name;if(prefix){if(!decodedName.startsWith(prefix))return decodedName;decodedName=decodedName.replace(new RegExp(prefix,`g`),``)}return decodedName=decodedName.replace(RegExp(`${NameTransformMap[NameTransformSymbol.AT]}`,`g`),EncodedNameTransformMap[NameTransformMap[NameTransformSymbol.AT]]).replace(RegExp(`${NameTransformMap[NameTransformSymbol.SLASH]}`,`g`),EncodedNameTransformMap[NameTransformMap[NameTransformSymbol.SLASH]]).replace(RegExp(`${NameTransformMap[NameTransformSymbol.HYPHEN]}`,`g`),EncodedNameTransformMap[NameTransformMap[NameTransformSymbol.HYPHEN]]),withExt&&(decodedName=decodedName.replace(`.js`,``)),decodedName}catch(err){throw err}},generateExposeFilename=(exposeName,withExt)=>{if(!exposeName)return``;let expose=exposeName;return expose===`.`&&(expose=`default_export`),expose.startsWith(`./`)&&(expose=expose.replace(`./`,``)),encodeName(expose,`__federation_expose_`,withExt)},generateShareFilename=(pkgName,withExt)=>pkgName?encodeName(pkgName,`__federation_shared_`,withExt):``,getResourceUrl=(module$1,sourceUrl)=>{if(`getPublicPath`in module$1){let publicPath;return publicPath=module$1.getPublicPath.startsWith(`function`)?Function(`return `+module$1.getPublicPath)()():Function(module$1.getPublicPath)(),`${publicPath}${sourceUrl}`}else if(`publicPath`in module$1)return!isBrowserEnv()&&!isReactNativeEnv()&&`ssrPublicPath`in module$1?`${module$1.ssrPublicPath}${sourceUrl}`:`${module$1.publicPath}${sourceUrl}`;else return console.warn(`Cannot get resource URL. If in debug mode, please ignore.`,module$1,sourceUrl),``},assert=(condition,msg$1)=>{condition||error(msg$1)},error=msg$1=>{throw Error(`${LOG_CATEGORY}: ${msg$1}`)},warn=msg$1=>{console.warn(`${LOG_CATEGORY}: ${msg$1}`)};function safeToString(info){try{return JSON.stringify(info,null,2)}catch{return``}}var VERSION_PATTERN_REGEXP=/^([\d^=v<>~]|[*xX]$)/;function isRequiredVersion(str){return VERSION_PATTERN_REGEXP.test(str)}var simpleJoinRemoteEntry=(rPath,rName)=>{if(!rPath)return rName;let transformedPath=(str=>{if(str===`.`)return``;if(str.startsWith(`./`))return str.replace(`./`,``);if(str.startsWith(`/`)){let strWithoutSlash=str.slice(1);return strWithoutSlash.endsWith(`/`)?strWithoutSlash.slice(0,-1):strWithoutSlash}return str})(rPath);return transformedPath?transformedPath.endsWith(`/`)?`${transformedPath}${rName}`:`${transformedPath}/${rName}`:rName};function inferAutoPublicPath(url){return url.replace(/#.*$/,``).replace(/\?.*$/,``).replace(/\/[^\/]+$/,`/`)}function generateSnapshotFromManifest(manifest,options={}){let{remotes={},overrides={},version:version$1}=options,remoteSnapshot,getPublicPath=()=>`publicPath`in manifest.metaData?manifest.metaData.publicPath===`auto`&&version$1?inferAutoPublicPath(version$1):manifest.metaData.publicPath:manifest.metaData.getPublicPath,overridesKeys=Object.keys(overrides),remotesInfo={};Object.keys(remotes).length||(remotesInfo=manifest.remotes?.reduce((res,next)=>{let matchedVersion,name=next.federationContainerName;return matchedVersion=overridesKeys.includes(name)?overrides[name]:`version`in next?next.version:next.entry,res[name]={matchedVersion},res},{})||{}),Object.keys(remotes).forEach(key=>remotesInfo[key]={matchedVersion:overridesKeys.includes(key)?overrides[key]:remotes[key]});let{remoteEntry:{path:remoteEntryPath,name:remoteEntryName,type:remoteEntryType},types:remoteTypes={path:``,name:``,zip:``,api:``},buildInfo:{buildVersion},globalName,ssrRemoteEntry}=manifest.metaData,{exposes}=manifest,basicRemoteSnapshot={version:version$1||``,buildVersion,globalName,remoteEntry:simpleJoinRemoteEntry(remoteEntryPath,remoteEntryName),remoteEntryType,remoteTypes:simpleJoinRemoteEntry(remoteTypes.path,remoteTypes.name),remoteTypesZip:remoteTypes.zip||``,remoteTypesAPI:remoteTypes.api||``,remotesInfo,shared:manifest?.shared.map(item=>({assets:item.assets,sharedName:item.name,version:item.version})),modules:exposes?.map(expose=>({moduleName:expose.name,modulePath:expose.path,assets:expose.assets}))};if(manifest.metaData?.prefetchInterface){let prefetchInterface=manifest.metaData.prefetchInterface;basicRemoteSnapshot={...basicRemoteSnapshot,prefetchInterface}}if(manifest.metaData?.prefetchEntry){let{path,name,type}=manifest.metaData.prefetchEntry;basicRemoteSnapshot={...basicRemoteSnapshot,prefetchEntry:simpleJoinRemoteEntry(path,name),prefetchEntryType:type}}if(remoteSnapshot=`publicPath`in manifest.metaData?{...basicRemoteSnapshot,publicPath:getPublicPath(),ssrPublicPath:manifest.metaData.ssrPublicPath}:{...basicRemoteSnapshot,getPublicPath:getPublicPath()},ssrRemoteEntry){let fullSSRRemoteEntry=simpleJoinRemoteEntry(ssrRemoteEntry.path,ssrRemoteEntry.name);remoteSnapshot.ssrRemoteEntry=fullSSRRemoteEntry,remoteSnapshot.ssrRemoteEntryType=ssrRemoteEntry.type||`commonjs-module`}return remoteSnapshot}function isManifestProvider(moduleInfo){return!!(`remoteEntry`in moduleInfo&&moduleInfo.remoteEntry.includes(MANIFEST_EXT))}function getManifestFileName(manifestOptions){if(!manifestOptions)return{statsFileName:StatsFileName,manifestFileName:ManifestFileName};let filePath=typeof manifestOptions==`boolean`?``:manifestOptions.filePath||``,fileName=typeof manifestOptions==`boolean`?``:manifestOptions.fileName||``,JSON_EXT=`.json`,addExt=name=>name.endsWith(JSON_EXT)?name:`${name}${JSON_EXT}`,insertSuffix=(name,suffix)=>name.replace(JSON_EXT,`${suffix}${JSON_EXT}`),manifestFileName=fileName?addExt(fileName):ManifestFileName;return{statsFileName:simpleJoinRemoteEntry(filePath,fileName?insertSuffix(manifestFileName,`-stats`):StatsFileName),manifestFileName:simpleJoinRemoteEntry(filePath,manifestFileName)}}var PREFIX=`[ Module Federation ]`,DEFAULT_DELEGATE=console,LOGGER_STACK_SKIP_TOKENS=[`logger.ts`,`logger.js`,`captureStackTrace`,`Logger.emit`,`Logger.log`,`Logger.info`,`Logger.warn`,`Logger.error`,`Logger.debug`];function captureStackTrace(){try{let stack=Error().stack;if(!stack)return;let[,...rawLines]=stack.split(`
|
|
22
|
+
`),filtered=rawLines.filter(line=>!LOGGER_STACK_SKIP_TOKENS.some(token=>line.includes(token)));return filtered.length?`Stack trace:\n${filtered.slice(0,5).join(`
|
|
23
|
+
`)}`:void 0}catch{return}}var Logger=class{constructor(prefix,delegate=DEFAULT_DELEGATE){this.prefix=prefix,this.delegate=delegate??DEFAULT_DELEGATE}setPrefix(prefix){this.prefix=prefix}setDelegate(delegate){this.delegate=delegate??DEFAULT_DELEGATE}emit(method,args){let delegate=this.delegate,stackTrace=isDebugMode()?captureStackTrace():void 0,enrichedArgs=stackTrace?[...args,stackTrace]:args,order=(()=>{switch(method){case`log`:return[`log`,`info`];case`info`:return[`info`,`log`];case`warn`:return[`warn`,`info`,`log`];case`error`:return[`error`,`warn`,`log`];case`debug`:default:return[`debug`,`log`]}})();for(let candidate of order){let handler=delegate[candidate];if(typeof handler==`function`){handler.call(delegate,this.prefix,...enrichedArgs);return}}for(let candidate of order){let handler=DEFAULT_DELEGATE[candidate];if(typeof handler==`function`){handler.call(DEFAULT_DELEGATE,this.prefix,...enrichedArgs);return}}}log(...args){this.emit(`log`,args)}warn(...args){this.emit(`warn`,args)}error(...args){this.emit(`error`,args)}success(...args){this.emit(`info`,args)}info(...args){this.emit(`info`,args)}ready(...args){this.emit(`info`,args)}debug(...args){isDebugMode()&&this.emit(`debug`,args)}};function createLogger(prefix){return new Logger(prefix)}function createInfrastructureLogger(prefix){let infrastructureLogger=new Logger(prefix);return Object.defineProperty(infrastructureLogger,`__mf_infrastructure_logger__`,{value:!0,enumerable:!1,configurable:!1}),infrastructureLogger}function bindLoggerToCompiler(loggerInstance,compiler,name){if(loggerInstance.__mf_infrastructure_logger__&&compiler?.getInfrastructureLogger)try{let infrastructureLogger=compiler.getInfrastructureLogger(name);infrastructureLogger&&typeof infrastructureLogger==`object`&&(typeof infrastructureLogger.log==`function`||typeof infrastructureLogger.info==`function`||typeof infrastructureLogger.warn==`function`||typeof infrastructureLogger.error==`function`)&&loggerInstance.setDelegate(infrastructureLogger)}catch{loggerInstance.setDelegate(void 0)}}var logger=createLogger(PREFIX),infrastructureLogger=createInfrastructureLogger(PREFIX);async function safeWrapper(callback,disableWarn){try{return await callback()}catch(e){!disableWarn&&warn(e);return}}function isStaticResourcesEqual(url1,url2){let REG_EXP=/^(https?:)?\/\//i;return url1.replace(REG_EXP,``).replace(/\/$/,``)===url2.replace(REG_EXP,``).replace(/\/$/,``)}function createScript(info){let script=null,needAttach=!0,timeout=2e4,timeoutId,scripts=document.getElementsByTagName(`script`);for(let i=0;i<scripts.length;i++){let s=scripts[i],scriptSrc=s.getAttribute(`src`);if(scriptSrc&&isStaticResourcesEqual(scriptSrc,info.url)){script=s,needAttach=!1;break}}if(!script){let attrs=info.attrs;script=document.createElement(`script`),script.type=attrs?.type===`module`?`module`:`text/javascript`;let createScriptRes;info.createScriptHook&&(createScriptRes=info.createScriptHook(info.url,info.attrs),createScriptRes instanceof HTMLScriptElement?script=createScriptRes:typeof createScriptRes==`object`&&(`script`in createScriptRes&&createScriptRes.script&&(script=createScriptRes.script),`timeout`in createScriptRes&&createScriptRes.timeout&&(timeout=createScriptRes.timeout))),script.src||=info.url,attrs&&!createScriptRes&&Object.keys(attrs).forEach(name=>{script&&(name===`async`||name===`defer`?script[name]=attrs[name]:script.getAttribute(name)||script.setAttribute(name,attrs[name]))})}let onScriptComplete=async(prev,event)=>{clearTimeout(timeoutId);let onScriptCompleteCallback=()=>{event?.type===`error`?info?.onErrorCallback&&info?.onErrorCallback(event):info?.cb&&info?.cb()};if(script&&(script.onerror=null,script.onload=null,safeWrapper(()=>{let{needDeleteScript=!0}=info;needDeleteScript&&script?.parentNode&&script.parentNode.removeChild(script)}),prev&&typeof prev==`function`)){let result=prev(event);if(result instanceof Promise){let res=await result;return onScriptCompleteCallback(),res}return onScriptCompleteCallback(),result}onScriptCompleteCallback()};return script.onerror=onScriptComplete.bind(null,script.onerror),script.onload=onScriptComplete.bind(null,script.onload),timeoutId=setTimeout(()=>{onScriptComplete(null,Error(`Remote script "${info.url}" time-outed.`))},timeout),{script,needAttach}}function createLink(info){let link=null,needAttach=!0,links=document.getElementsByTagName(`link`);for(let i=0;i<links.length;i++){let l=links[i],linkHref=l.getAttribute(`href`),linkRel=l.getAttribute(`rel`);if(linkHref&&isStaticResourcesEqual(linkHref,info.url)&&linkRel===info.attrs.rel){link=l,needAttach=!1;break}}if(!link){link=document.createElement(`link`),link.setAttribute(`href`,info.url);let createLinkRes,attrs=info.attrs;info.createLinkHook&&(createLinkRes=info.createLinkHook(info.url,attrs),createLinkRes instanceof HTMLLinkElement&&(link=createLinkRes)),attrs&&!createLinkRes&&Object.keys(attrs).forEach(name=>{link&&!link.getAttribute(name)&&link.setAttribute(name,attrs[name])})}let onLinkComplete=(prev,event)=>{let onLinkCompleteCallback=()=>{event?.type===`error`?info?.onErrorCallback&&info?.onErrorCallback(event):info?.cb&&info?.cb()};if(link&&(link.onerror=null,link.onload=null,safeWrapper(()=>{let{needDeleteLink=!0}=info;needDeleteLink&&link?.parentNode&&link.parentNode.removeChild(link)}),prev)){let res=prev(event);return onLinkCompleteCallback(),res}onLinkCompleteCallback()};return link.onerror=onLinkComplete.bind(null,link.onerror),link.onload=onLinkComplete.bind(null,link.onload),{link,needAttach}}function loadScript(url,info){let{attrs={},createScriptHook}=info;return new Promise((resolve,reject)=>{let{script,needAttach}=createScript({url,cb:resolve,onErrorCallback:reject,attrs:{fetchpriority:`high`,...attrs},createScriptHook,needDeleteScript:!0});needAttach&&document.head.appendChild(script)})}var sdkImportCache=new Map;function importNodeModule(name){if(!name)throw Error(`import specifier is required`);if(sdkImportCache.has(name))return sdkImportCache.get(name);let promise=Function(`name`,`return import(name)`)(name).then(res=>res).catch(error=>{throw console.error(`Error importing module ${name}:`,error),sdkImportCache.delete(name),error});return sdkImportCache.set(name,promise),promise}var loadNodeFetch=async()=>{let fetchModule=await importNodeModule(`node-fetch`);return fetchModule.default||fetchModule},lazyLoaderHookFetch=async(input,init,loaderHook)=>{let res=await((url,init$1)=>loaderHook.lifecycle.fetch.emit(url,init$1))(input,init||{});return!res||!(res instanceof Response)?(typeof fetch>`u`?await loadNodeFetch():fetch)(input,init||{}):res},createScriptNode=typeof ENV_TARGET>`u`||ENV_TARGET!==`web`?(url,cb,attrs,loaderHook)=>{if(loaderHook?.createScriptHook){let hookResult=loaderHook.createScriptHook(url);hookResult&&typeof hookResult==`object`&&`url`in hookResult&&(url=hookResult.url)}let urlObj;try{urlObj=new URL(url)}catch(e){console.error(`Error constructing URL:`,e),cb(Error(`Invalid URL: ${e}`));return}const getFetch=async()=>loaderHook?.fetch?(input,init)=>lazyLoaderHookFetch(input,init,loaderHook):typeof fetch>`u`?loadNodeFetch():fetch,handleScriptFetch=async(f,urlObj$1)=>{try{const res=await f(urlObj$1.href),data=await res.text(),[path,vm]=await Promise.all([importNodeModule(`path`),importNodeModule(`vm`)]),scriptContext={exports:{},module:{exports:{}}},urlDirname=urlObj$1.pathname.split(`/`).slice(0,-1).join(`/`),filename=path.basename(urlObj$1.pathname),script=new vm.Script(`(function(exports, module, require, __dirname, __filename) {${data}\n})`,{filename,importModuleDynamically:vm.constants?.USE_MAIN_CONTEXT_DEFAULT_LOADER??importNodeModule});script.runInThisContext()(scriptContext.exports,scriptContext.module,eval(`require`),urlDirname,filename);const exportedInterface=scriptContext.module.exports||scriptContext.exports;if(attrs&&exportedInterface&&attrs.globalName){cb(void 0,exportedInterface[attrs.globalName]||exportedInterface);return}cb(void 0,exportedInterface)}catch(e){cb(e instanceof Error?e:Error(`Script execution error: ${e}`))}};getFetch().then(async f=>{if(attrs?.type===`esm`||attrs?.type===`module`)return loadModule(urlObj.href,{fetch:f,vm:await importNodeModule(`vm`)}).then(async module$1=>{await module$1.evaluate(),cb(void 0,module$1.namespace)}).catch(e=>{cb(e instanceof Error?e:Error(`Script execution error: ${e}`))});handleScriptFetch(f,urlObj)}).catch(err=>{cb(err)})}:(url,cb,attrs,loaderHook)=>{cb(Error(`createScriptNode is disabled in non-Node.js environment`))},loadScriptNode=typeof ENV_TARGET>`u`||ENV_TARGET!==`web`?(url,info)=>new Promise((resolve,reject)=>{createScriptNode(url,(error,scriptContext)=>{if(error)reject(error);else{let remoteEntryKey=info?.attrs?.globalName||`__FEDERATION_${info?.attrs?.name}:custom__`;resolve(globalThis[remoteEntryKey]=scriptContext)}},info.attrs,info.loaderHook)}):(url,info)=>{throw Error(`loadScriptNode is disabled in non-Node.js environment`)},esmModuleCache=new Map;async function loadModule(url,options){if(esmModuleCache.has(url))return esmModuleCache.get(url);let{fetch:fetch$1,vm}=options,code=await(await fetch$1(url)).text(),module$1=new vm.SourceTextModule(code,{importModuleDynamically:async(specifier,script)=>{let resolvedUrl=new URL(specifier,url).href;return loadModule(resolvedUrl,options)}});return esmModuleCache.set(url,module$1),await module$1.link(async specifier=>{let resolvedUrl=new URL(specifier,url).href;return await loadModule(resolvedUrl,options)}),module$1}function normalizeOptions(enableDefault,defaultOptions,key){return function(options){if(options===!1)return!1;if(options===void 0)return enableDefault?defaultOptions:!1;if(options===!0)return defaultOptions;if(options&&typeof options==`object`)return{...defaultOptions,...options};throw Error(`Unexpected type for \`${key}\`, expect boolean/undefined/object, got: ${typeof options}`)}}var createModuleFederationConfig=options=>options;exports.BROWSER_LOG_KEY=BROWSER_LOG_KEY,exports.ENCODE_NAME_PREFIX=ENCODE_NAME_PREFIX,exports.EncodedNameTransformMap=EncodedNameTransformMap,exports.FederationModuleManifest=FederationModuleManifest,exports.MANIFEST_EXT=MANIFEST_EXT,exports.MFModuleType=MFModuleType,exports.MFPrefetchCommon=MFPrefetchCommon,exports.MODULE_DEVTOOL_IDENTIFIER=MODULE_DEVTOOL_IDENTIFIER,exports.ManifestFileName=ManifestFileName,exports.NameTransformMap=NameTransformMap,exports.NameTransformSymbol=NameTransformSymbol,exports.SEPARATOR=SEPARATOR,exports.StatsFileName=StatsFileName,exports.TEMP_DIR=TEMP_DIR,exports.assert=assert,exports.bindLoggerToCompiler=bindLoggerToCompiler,exports.composeKeyWithSeparator=composeKeyWithSeparator,exports.containerPlugin=ContainerPlugin,exports.containerReferencePlugin=ContainerReferencePlugin,exports.createInfrastructureLogger=createInfrastructureLogger,exports.createLink=createLink,exports.createLogger=createLogger,exports.createModuleFederationConfig=createModuleFederationConfig,exports.createScript=createScript,exports.createScriptNode=createScriptNode,exports.decodeName=decodeName,exports.encodeName=encodeName,exports.error=error,exports.generateExposeFilename=generateExposeFilename,exports.generateShareFilename=generateShareFilename,exports.generateSnapshotFromManifest=generateSnapshotFromManifest,exports.getManifestFileName=getManifestFileName,exports.getProcessEnv=getProcessEnv,exports.getResourceUrl=getResourceUrl,exports.inferAutoPublicPath=inferAutoPublicPath,exports.infrastructureLogger=infrastructureLogger,exports.isBrowserEnv=isBrowserEnv,exports.isDebugMode=isDebugMode,exports.isManifestProvider=isManifestProvider,exports.isReactNativeEnv=isReactNativeEnv,exports.isRequiredVersion=isRequiredVersion,exports.isStaticResourcesEqual=isStaticResourcesEqual,exports.loadScript=loadScript,exports.loadScriptNode=loadScriptNode,exports.logger=logger,exports.moduleFederationPlugin=ModuleFederationPlugin,exports.normalizeOptions=normalizeOptions,exports.parseEntry=parseEntry,exports.safeToString=safeToString,exports.safeWrapper=safeWrapper,exports.sharePlugin=SharePlugin,exports.simpleJoinRemoteEntry=simpleJoinRemoteEntry,exports.warn=warn})),require_index_cjs$2=require_chunk.t((exports=>{var RUNTIME_001=`RUNTIME-001`,RUNTIME_002=`RUNTIME-002`,RUNTIME_003=`RUNTIME-003`,RUNTIME_004=`RUNTIME-004`,RUNTIME_005=`RUNTIME-005`,RUNTIME_006=`RUNTIME-006`,RUNTIME_007=`RUNTIME-007`,RUNTIME_008=`RUNTIME-008`,RUNTIME_009=`RUNTIME-009`,TYPE_001=`TYPE-001`,BUILD_001=`BUILD-001`,BUILD_002=`BUILD-002`,getDocsUrl=errorCode=>`View the docs to see how to solve: https://module-federation.io/guide/troubleshooting/${errorCode.split(`-`)[0].toLowerCase()}/${errorCode}`,getShortErrorMsg=(errorCode,errorDescMap,args,originalErrorMsg)=>{let msg$1=[`${[errorDescMap[errorCode]]} #${errorCode}`];return args&&msg$1.push(`args: ${JSON.stringify(args)}`),msg$1.push(getDocsUrl(errorCode)),originalErrorMsg&&msg$1.push(`Original Error Message:\n ${originalErrorMsg}`),msg$1.join(`
|
|
24
|
+
`)},runtimeDescMap={[RUNTIME_001]:`Failed to get remoteEntry exports.`,[RUNTIME_002]:`The remote entry interface does not contain "init"`,[RUNTIME_003]:`Failed to get manifest.`,[RUNTIME_004]:`Failed to locate remote.`,[RUNTIME_005]:`Invalid loadShareSync function call from bundler runtime`,[RUNTIME_006]:`Invalid loadShareSync function call from runtime`,[RUNTIME_007]:`Failed to get remote snapshot.`,[RUNTIME_008]:`Failed to load script resources.`,[RUNTIME_009]:`Please call createInstance first.`},typeDescMap={[TYPE_001]:`Failed to generate type declaration. Execute the below cmd to reproduce and fix the error.`},buildDescMap={[BUILD_001]:`Failed to find expose module.`,[BUILD_002]:`PublicPath is required in prod mode.`},errorDescMap={...runtimeDescMap,...typeDescMap,...buildDescMap};exports.BUILD_001=BUILD_001,exports.BUILD_002=BUILD_002,exports.RUNTIME_001=RUNTIME_001,exports.RUNTIME_002=RUNTIME_002,exports.RUNTIME_003=RUNTIME_003,exports.RUNTIME_004=RUNTIME_004,exports.RUNTIME_005=RUNTIME_005,exports.RUNTIME_006=RUNTIME_006,exports.RUNTIME_007=RUNTIME_007,exports.RUNTIME_008=RUNTIME_008,exports.RUNTIME_009=RUNTIME_009,exports.TYPE_001=TYPE_001,exports.buildDescMap=buildDescMap,exports.errorDescMap=errorDescMap,exports.getShortErrorMsg=getShortErrorMsg,exports.runtimeDescMap=runtimeDescMap,exports.typeDescMap=typeDescMap})),require_index_cjs$1=require_chunk.t((exports=>{var sdk=require_index_cjs$3(),errorCodes=require_index_cjs$2(),LOG_CATEGORY=`[ Federation Runtime ]`,logger=sdk.createLogger(LOG_CATEGORY);function assert(condition,msg$1){condition||error(msg$1)}function error(msg$1){throw msg$1 instanceof Error?(msg$1.message.startsWith(LOG_CATEGORY)||(msg$1.message=`${LOG_CATEGORY}: ${msg$1.message}`),msg$1):Error(`${LOG_CATEGORY}: ${msg$1}`)}function warn(msg$1){msg$1 instanceof Error&&(msg$1.message.startsWith(LOG_CATEGORY)||(msg$1.message=`${LOG_CATEGORY}: ${msg$1.message}`)),logger.warn(msg$1)}function addUniqueItem(arr,item){return arr.findIndex(name=>name===item)===-1&&arr.push(item),arr}function getFMId(remoteInfo){return`version`in remoteInfo&&remoteInfo.version?`${remoteInfo.name}:${remoteInfo.version}`:`entry`in remoteInfo&&remoteInfo.entry?`${remoteInfo.name}:${remoteInfo.entry}`:`${remoteInfo.name}`}function isRemoteInfoWithEntry(remote){return remote.entry!==void 0}function isPureRemoteEntry(remote){return!remote.entry.includes(`.json`)}async function safeWrapper(callback,disableWarn){try{return await callback()}catch(e){!disableWarn&&warn(e);return}}function isObject(val){return val&&typeof val==`object`}var objectToString=Object.prototype.toString;function isPlainObject(val){return objectToString.call(val)===`[object Object]`}function isStaticResourcesEqual(url1,url2){let REG_EXP=/^(https?:)?\/\//i;return url1.replace(REG_EXP,``).replace(/\/$/,``)===url2.replace(REG_EXP,``).replace(/\/$/,``)}function arrayOptions(options){return Array.isArray(options)?options:[options]}function getRemoteEntryInfoFromSnapshot(snapshot){let defaultRemoteEntryInfo={url:``,type:`global`,globalName:``};return sdk.isBrowserEnv()||sdk.isReactNativeEnv()?`remoteEntry`in snapshot?{url:snapshot.remoteEntry,type:snapshot.remoteEntryType,globalName:snapshot.globalName}:defaultRemoteEntryInfo:`ssrRemoteEntry`in snapshot?{url:snapshot.ssrRemoteEntry||defaultRemoteEntryInfo.url,type:snapshot.ssrRemoteEntryType||defaultRemoteEntryInfo.type,globalName:snapshot.globalName}:defaultRemoteEntryInfo}var processModuleAlias=(name,subPath)=>{let moduleName;return moduleName=name.endsWith(`/`)?name.slice(0,-1):name,subPath.startsWith(`.`)&&(subPath=subPath.slice(1)),moduleName+=subPath,moduleName},CurrentGlobal=typeof globalThis==`object`?globalThis:window,nativeGlobal=(()=>{try{return document.defaultView}catch{return CurrentGlobal}})(),Global=nativeGlobal;function definePropertyGlobalVal(target,key,val){Object.defineProperty(target,key,{value:val,configurable:!1,writable:!0})}function includeOwnProperty(target,key){return Object.hasOwnProperty.call(target,key)}includeOwnProperty(CurrentGlobal,`__GLOBAL_LOADING_REMOTE_ENTRY__`)||definePropertyGlobalVal(CurrentGlobal,`__GLOBAL_LOADING_REMOTE_ENTRY__`,{});var globalLoading=CurrentGlobal.__GLOBAL_LOADING_REMOTE_ENTRY__;function setGlobalDefaultVal(target){includeOwnProperty(target,`__VMOK__`)&&!includeOwnProperty(target,`__FEDERATION__`)&&definePropertyGlobalVal(target,`__FEDERATION__`,target.__VMOK__),includeOwnProperty(target,`__FEDERATION__`)||(definePropertyGlobalVal(target,`__FEDERATION__`,{__GLOBAL_PLUGIN__:[],__INSTANCES__:[],moduleInfo:{},__SHARE__:{},__MANIFEST_LOADING__:{},__PRELOADED_MAP__:new Map}),definePropertyGlobalVal(target,`__VMOK__`,target.__FEDERATION__)),target.__FEDERATION__.__GLOBAL_PLUGIN__??=[],target.__FEDERATION__.__INSTANCES__??=[],target.__FEDERATION__.moduleInfo??={},target.__FEDERATION__.__SHARE__??={},target.__FEDERATION__.__MANIFEST_LOADING__??={},target.__FEDERATION__.__PRELOADED_MAP__??=new Map}setGlobalDefaultVal(CurrentGlobal),setGlobalDefaultVal(nativeGlobal);function resetFederationGlobalInfo(){CurrentGlobal.__FEDERATION__.__GLOBAL_PLUGIN__=[],CurrentGlobal.__FEDERATION__.__INSTANCES__=[],CurrentGlobal.__FEDERATION__.moduleInfo={},CurrentGlobal.__FEDERATION__.__SHARE__={},CurrentGlobal.__FEDERATION__.__MANIFEST_LOADING__={},Object.keys(globalLoading).forEach(key=>{delete globalLoading[key]})}function setGlobalFederationInstance(FederationInstance){CurrentGlobal.__FEDERATION__.__INSTANCES__.push(FederationInstance)}function getGlobalFederationConstructor(){return CurrentGlobal.__FEDERATION__.__DEBUG_CONSTRUCTOR__}function setGlobalFederationConstructor(FederationConstructor,isDebug=sdk.isDebugMode()){isDebug&&(CurrentGlobal.__FEDERATION__.__DEBUG_CONSTRUCTOR__=FederationConstructor,CurrentGlobal.__FEDERATION__.__DEBUG_CONSTRUCTOR_VERSION__=`0.21.6`)}function getInfoWithoutType(target,key){if(typeof key==`string`){if(target[key])return{value:target[key],key};{let targetKeys=Object.keys(target);for(let targetKey of targetKeys){let[targetTypeOrName,_]=targetKey.split(`:`),nKey=`${targetTypeOrName}:${key}`,typeWithKeyRes=target[nKey];if(typeWithKeyRes)return{value:typeWithKeyRes,key:nKey}}return{value:void 0,key}}}else throw Error(`key must be string`)}var getGlobalSnapshot=()=>nativeGlobal.__FEDERATION__.moduleInfo,getTargetSnapshotInfoByModuleInfo=(moduleInfo,snapshot)=>{let getModuleInfo=getInfoWithoutType(snapshot,getFMId(moduleInfo)).value;if(getModuleInfo&&!getModuleInfo.version&&`version`in moduleInfo&&moduleInfo.version&&(getModuleInfo.version=moduleInfo.version),getModuleInfo)return getModuleInfo;if(`version`in moduleInfo&&moduleInfo.version){let{version:version$1,...resModuleInfo}=moduleInfo,moduleKeyWithoutVersion=getFMId(resModuleInfo),getModuleInfoWithoutVersion=getInfoWithoutType(nativeGlobal.__FEDERATION__.moduleInfo,moduleKeyWithoutVersion).value;if(getModuleInfoWithoutVersion?.version===version$1)return getModuleInfoWithoutVersion}},getGlobalSnapshotInfoByModuleInfo=moduleInfo=>getTargetSnapshotInfoByModuleInfo(moduleInfo,nativeGlobal.__FEDERATION__.moduleInfo),setGlobalSnapshotInfoByModuleInfo=(remoteInfo,moduleDetailInfo)=>{let moduleKey=getFMId(remoteInfo);return nativeGlobal.__FEDERATION__.moduleInfo[moduleKey]=moduleDetailInfo,nativeGlobal.__FEDERATION__.moduleInfo},addGlobalSnapshot=moduleInfos=>(nativeGlobal.__FEDERATION__.moduleInfo={...nativeGlobal.__FEDERATION__.moduleInfo,...moduleInfos},()=>{let keys=Object.keys(moduleInfos);for(let key of keys)delete nativeGlobal.__FEDERATION__.moduleInfo[key]}),getRemoteEntryExports=(name,globalName)=>{let remoteEntryKey=globalName||`__FEDERATION_${name}:custom__`;return{remoteEntryKey,entryExports:CurrentGlobal[remoteEntryKey]}},registerGlobalPlugins=plugins=>{let{__GLOBAL_PLUGIN__}=nativeGlobal.__FEDERATION__;plugins.forEach(plugin=>{__GLOBAL_PLUGIN__.findIndex(p=>p.name===plugin.name)===-1?__GLOBAL_PLUGIN__.push(plugin):warn(`The plugin ${plugin.name} has been registered.`)})},getGlobalHostPlugins=()=>nativeGlobal.__FEDERATION__.__GLOBAL_PLUGIN__,getPreloaded=id=>CurrentGlobal.__FEDERATION__.__PRELOADED_MAP__.get(id),setPreloaded=id=>CurrentGlobal.__FEDERATION__.__PRELOADED_MAP__.set(id,!0),DEFAULT_SCOPE=`default`,DEFAULT_REMOTE_TYPE=`global`,buildIdentifier=`[0-9A-Za-z-]+`,build=`(?:\\+(${buildIdentifier}(?:\\.${buildIdentifier})*))`,numericIdentifier=`0|[1-9]\\d*`,numericIdentifierLoose=`[0-9]+`,nonNumericIdentifier=`\\d*[a-zA-Z-][a-zA-Z0-9-]*`,preReleaseIdentifierLoose=`(?:${numericIdentifierLoose}|${nonNumericIdentifier})`,preReleaseLoose=`(?:-?(${preReleaseIdentifierLoose}(?:\\.${preReleaseIdentifierLoose})*))`,preReleaseIdentifier=`(?:${numericIdentifier}|${nonNumericIdentifier})`,preRelease=`(?:-(${preReleaseIdentifier}(?:\\.${preReleaseIdentifier})*))`,xRangeIdentifier=`${numericIdentifier}|x|X|\\*`,xRangePlain=`[v=\\s]*(${xRangeIdentifier})(?:\\.(${xRangeIdentifier})(?:\\.(${xRangeIdentifier})(?:${preRelease})?${build}?)?)?`,hyphenRange=`^\\s*(${xRangePlain})\\s+-\\s+(${xRangePlain})\\s*$`,loosePlain=`[v=\\s]*${`(${numericIdentifierLoose})\\.(${numericIdentifierLoose})\\.(${numericIdentifierLoose})`}${preReleaseLoose}?${build}?`,gtlt=`((?:<|>)?=?)`,comparatorTrim=`(\\s*)${gtlt}\\s*(${loosePlain}|${xRangePlain})`,loneTilde=`(?:~>?)`,tildeTrim=`(\\s*)${loneTilde}\\s+`,loneCaret=`(?:\\^)`,caretTrim=`(\\s*)${loneCaret}\\s+`,star=`(<|>)?=?\\s*\\*`,caret=`^${loneCaret}${xRangePlain}$`,fullPlain=`v?${`(${numericIdentifier})\\.(${numericIdentifier})\\.(${numericIdentifier})`}${preRelease}?${build}?`,tilde=`^${loneTilde}${xRangePlain}$`,xRange=`^${gtlt}\\s*${xRangePlain}$`,comparator=`^${gtlt}\\s*(${fullPlain})$|^$`,gte0=`^\\s*>=\\s*0.0.0\\s*$`;function parseRegex(source){return new RegExp(source)}function isXVersion(version$1){return!version$1||version$1.toLowerCase()===`x`||version$1===`*`}function pipe(...fns){return x=>fns.reduce((v,f)=>f(v),x)}function extractComparator(comparatorString){return comparatorString.match(parseRegex(comparator))}function combineVersion(major,minor,patch,preRelease){let mainVersion=`${major}.${minor}.${patch}`;return preRelease?`${mainVersion}-${preRelease}`:mainVersion}function parseHyphen(range){return range.replace(parseRegex(hyphenRange),(_range,from,fromMajor,fromMinor,fromPatch,_fromPreRelease,_fromBuild,to,toMajor,toMinor,toPatch,toPreRelease)=>(from=isXVersion(fromMajor)?``:isXVersion(fromMinor)?`>=${fromMajor}.0.0`:isXVersion(fromPatch)?`>=${fromMajor}.${fromMinor}.0`:`>=${from}`,to=isXVersion(toMajor)?``:isXVersion(toMinor)?`<${Number(toMajor)+1}.0.0-0`:isXVersion(toPatch)?`<${toMajor}.${Number(toMinor)+1}.0-0`:toPreRelease?`<=${toMajor}.${toMinor}.${toPatch}-${toPreRelease}`:`<=${to}`,`${from} ${to}`.trim()))}function parseComparatorTrim(range){return range.replace(parseRegex(comparatorTrim),`$1$2$3`)}function parseTildeTrim(range){return range.replace(parseRegex(tildeTrim),`$1~`)}function parseCaretTrim(range){return range.replace(parseRegex(caretTrim),`$1^`)}function parseCarets(range){return range.trim().split(/\s+/).map(rangeVersion=>rangeVersion.replace(parseRegex(caret),(_,major,minor,patch,preRelease)=>isXVersion(major)?``:isXVersion(minor)?`>=${major}.0.0 <${Number(major)+1}.0.0-0`:isXVersion(patch)?major===`0`?`>=${major}.${minor}.0 <${major}.${Number(minor)+1}.0-0`:`>=${major}.${minor}.0 <${Number(major)+1}.0.0-0`:preRelease?major===`0`?minor===`0`?`>=${major}.${minor}.${patch}-${preRelease} <${major}.${minor}.${Number(patch)+1}-0`:`>=${major}.${minor}.${patch}-${preRelease} <${major}.${Number(minor)+1}.0-0`:`>=${major}.${minor}.${patch}-${preRelease} <${Number(major)+1}.0.0-0`:major===`0`?minor===`0`?`>=${major}.${minor}.${patch} <${major}.${minor}.${Number(patch)+1}-0`:`>=${major}.${minor}.${patch} <${major}.${Number(minor)+1}.0-0`:`>=${major}.${minor}.${patch} <${Number(major)+1}.0.0-0`)).join(` `)}function parseTildes(range){return range.trim().split(/\s+/).map(rangeVersion=>rangeVersion.replace(parseRegex(tilde),(_,major,minor,patch,preRelease)=>isXVersion(major)?``:isXVersion(minor)?`>=${major}.0.0 <${Number(major)+1}.0.0-0`:isXVersion(patch)?`>=${major}.${minor}.0 <${major}.${Number(minor)+1}.0-0`:preRelease?`>=${major}.${minor}.${patch}-${preRelease} <${major}.${Number(minor)+1}.0-0`:`>=${major}.${minor}.${patch} <${major}.${Number(minor)+1}.0-0`)).join(` `)}function parseXRanges(range){return range.split(/\s+/).map(rangeVersion=>rangeVersion.trim().replace(parseRegex(xRange),(ret,gtlt,major,minor,patch,preRelease)=>{let isXMajor=isXVersion(major),isXMinor=isXMajor||isXVersion(minor),isXPatch=isXMinor||isXVersion(patch);return gtlt===`=`&&isXPatch&&(gtlt=``),preRelease=``,isXMajor?gtlt===`>`||gtlt===`<`?`<0.0.0-0`:`*`:gtlt&&isXPatch?(isXMinor&&(minor=0),patch=0,gtlt===`>`?(gtlt=`>=`,isXMinor?(major=Number(major)+1,minor=0,patch=0):(minor=Number(minor)+1,patch=0)):gtlt===`<=`&&(gtlt=`<`,isXMinor?major=Number(major)+1:minor=Number(minor)+1),gtlt===`<`&&(preRelease=`-0`),`${gtlt+major}.${minor}.${patch}${preRelease}`):isXMinor?`>=${major}.0.0${preRelease} <${Number(major)+1}.0.0-0`:isXPatch?`>=${major}.${minor}.0${preRelease} <${major}.${Number(minor)+1}.0-0`:ret})).join(` `)}function parseStar(range){return range.trim().replace(parseRegex(star),``)}function parseGTE0(comparatorString){return comparatorString.trim().replace(parseRegex(gte0),``)}function compareAtom(rangeAtom,versionAtom){return rangeAtom=Number(rangeAtom)||rangeAtom,versionAtom=Number(versionAtom)||versionAtom,rangeAtom>versionAtom?1:rangeAtom===versionAtom?0:-1}function comparePreRelease(rangeAtom,versionAtom){let{preRelease:rangePreRelease}=rangeAtom,{preRelease:versionPreRelease}=versionAtom;if(rangePreRelease===void 0&&versionPreRelease)return 1;if(rangePreRelease&&versionPreRelease===void 0)return-1;if(rangePreRelease===void 0&&versionPreRelease===void 0)return 0;for(let i=0,n=rangePreRelease.length;i<=n;i++){let rangeElement=rangePreRelease[i],versionElement=versionPreRelease[i];if(rangeElement!==versionElement)return rangeElement===void 0&&versionElement===void 0?0:rangeElement?versionElement?compareAtom(rangeElement,versionElement):-1:1}return 0}function compareVersion(rangeAtom,versionAtom){return compareAtom(rangeAtom.major,versionAtom.major)||compareAtom(rangeAtom.minor,versionAtom.minor)||compareAtom(rangeAtom.patch,versionAtom.patch)||comparePreRelease(rangeAtom,versionAtom)}function eq(rangeAtom,versionAtom){return rangeAtom.version===versionAtom.version}function compare(rangeAtom,versionAtom){switch(rangeAtom.operator){case``:case`=`:return eq(rangeAtom,versionAtom);case`>`:return compareVersion(rangeAtom,versionAtom)<0;case`>=`:return eq(rangeAtom,versionAtom)||compareVersion(rangeAtom,versionAtom)<0;case`<`:return compareVersion(rangeAtom,versionAtom)>0;case`<=`:return eq(rangeAtom,versionAtom)||compareVersion(rangeAtom,versionAtom)>0;case void 0:return!0;default:return!1}}function parseComparatorString(range){return pipe(parseCarets,parseTildes,parseXRanges,parseStar)(range)}function parseRange(range){return pipe(parseHyphen,parseComparatorTrim,parseTildeTrim,parseCaretTrim)(range.trim()).split(/\s+/).join(` `)}function satisfy(version$1,range){if(!version$1)return!1;let extractedVersion=extractComparator(version$1);if(!extractedVersion)return!1;let[,versionOperator,,versionMajor,versionMinor,versionPatch,versionPreRelease]=extractedVersion,versionAtom={operator:versionOperator,version:combineVersion(versionMajor,versionMinor,versionPatch,versionPreRelease),major:versionMajor,minor:versionMinor,patch:versionPatch,preRelease:versionPreRelease?.split(`.`)},orRanges=range.split(`||`);for(let orRange of orRanges){let trimmedOrRange=orRange.trim();if(!trimmedOrRange||trimmedOrRange===`*`||trimmedOrRange===`x`)return!0;try{let parsedSubRange=parseRange(trimmedOrRange);if(!parsedSubRange.trim())return!0;let parsedComparatorString=parsedSubRange.split(` `).map(rangeVersion=>parseComparatorString(rangeVersion)).join(` `);if(!parsedComparatorString.trim())return!0;let comparators=parsedComparatorString.split(/\s+/).map(comparator=>parseGTE0(comparator)).filter(Boolean);if(comparators.length===0)continue;let subRangeSatisfied=!0;for(let comparator of comparators){let extractedComparator=extractComparator(comparator);if(!extractedComparator){subRangeSatisfied=!1;break}let[,rangeOperator,,rangeMajor,rangeMinor,rangePatch,rangePreRelease]=extractedComparator;if(!compare({operator:rangeOperator,version:combineVersion(rangeMajor,rangeMinor,rangePatch,rangePreRelease),major:rangeMajor,minor:rangeMinor,patch:rangePatch,preRelease:rangePreRelease?.split(`.`)},versionAtom)){subRangeSatisfied=!1;break}}if(subRangeSatisfied)return!0}catch(e){console.error(`[semver] Error processing range part "${trimmedOrRange}":`,e);continue}}return!1}function formatShare(shareArgs,from,name,shareStrategy){let get;return get=`get`in shareArgs?shareArgs.get:`lib`in shareArgs?()=>Promise.resolve(shareArgs.lib):()=>Promise.resolve(()=>{throw Error(`Can not get shared '${name}'!`)}),{deps:[],useIn:[],from,loading:null,...shareArgs,shareConfig:{requiredVersion:`^${shareArgs.version}`,singleton:!1,eager:!1,strictVersion:!1,...shareArgs.shareConfig},get,loaded:shareArgs?.loaded||`lib`in shareArgs?!0:void 0,version:shareArgs.version??`0`,scope:Array.isArray(shareArgs.scope)?shareArgs.scope:[shareArgs.scope??`default`],strategy:(shareArgs.strategy??shareStrategy)||`version-first`}}function formatShareConfigs(globalOptions,userOptions){let shareArgs=userOptions.shared||{},from=userOptions.name,shareInfos=Object.keys(shareArgs).reduce((res,pkgName)=>{let arrayShareArgs=arrayOptions(shareArgs[pkgName]);return res[pkgName]=res[pkgName]||[],arrayShareArgs.forEach(shareConfig=>{res[pkgName].push(formatShare(shareConfig,from,pkgName,userOptions.shareStrategy))}),res},{}),shared={...globalOptions.shared};return Object.keys(shareInfos).forEach(shareKey=>{shared[shareKey]?shareInfos[shareKey].forEach(newUserSharedOptions=>{shared[shareKey].find(sharedVal=>sharedVal.version===newUserSharedOptions.version)||shared[shareKey].push(newUserSharedOptions)}):shared[shareKey]=shareInfos[shareKey]}),{shared,shareInfos}}function versionLt(a,b){let transformInvalidVersion=version$1=>{if(!Number.isNaN(Number(version$1))){let splitArr=version$1.split(`.`),validVersion=version$1;for(let i=0;i<3-splitArr.length;i++)validVersion+=`.0`;return validVersion}return version$1};return!!satisfy(transformInvalidVersion(a),`<=${transformInvalidVersion(b)}`)}var findVersion=(shareVersionMap,cb)=>{let callback=cb||function(prev,cur){return versionLt(prev,cur)};return Object.keys(shareVersionMap).reduce((prev,cur)=>!prev||callback(prev,cur)||prev===`0`?cur:prev,0)},isLoaded=shared=>!!shared.loaded||typeof shared.lib==`function`,isLoading=shared=>!!shared.loading;function findSingletonVersionOrderByVersion(shareScopeMap,scope,pkgName){let versions=shareScopeMap[scope][pkgName];return findVersion(shareScopeMap[scope][pkgName],function(prev,cur){return!isLoaded(versions[prev])&&versionLt(prev,cur)})}function findSingletonVersionOrderByLoaded(shareScopeMap,scope,pkgName){let versions=shareScopeMap[scope][pkgName];return findVersion(shareScopeMap[scope][pkgName],function(prev,cur){let isLoadingOrLoaded=shared=>isLoaded(shared)||isLoading(shared);return isLoadingOrLoaded(versions[cur])?isLoadingOrLoaded(versions[prev])?!!versionLt(prev,cur):!0:isLoadingOrLoaded(versions[prev])?!1:versionLt(prev,cur)})}function getFindShareFunction(strategy){return strategy===`loaded-first`?findSingletonVersionOrderByLoaded:findSingletonVersionOrderByVersion}function getRegisteredShare(localShareScopeMap,pkgName,shareInfo,resolveShare){if(!localShareScopeMap)return;let{shareConfig,scope=DEFAULT_SCOPE,strategy}=shareInfo,scopes=Array.isArray(scope)?scope:[scope];for(let sc of scopes)if(shareConfig&&localShareScopeMap[sc]&&localShareScopeMap[sc][pkgName]){let{requiredVersion}=shareConfig,maxOrSingletonVersion=getFindShareFunction(strategy)(localShareScopeMap,sc,pkgName),params={shareScopeMap:localShareScopeMap,scope:sc,pkgName,version:maxOrSingletonVersion,GlobalFederation:Global.__FEDERATION__,resolver:()=>{if(shareConfig.singleton){if(typeof requiredVersion==`string`&&!satisfy(maxOrSingletonVersion,requiredVersion)){let msg$1=`Version ${maxOrSingletonVersion} from ${maxOrSingletonVersion&&localShareScopeMap[sc][pkgName][maxOrSingletonVersion].from} of shared singleton module ${pkgName} does not satisfy the requirement of ${shareInfo.from} which needs ${requiredVersion})`;shareConfig.strictVersion?error(msg$1):warn(msg$1)}return localShareScopeMap[sc][pkgName][maxOrSingletonVersion]}else{if(requiredVersion===!1||requiredVersion===`*`||satisfy(maxOrSingletonVersion,requiredVersion))return localShareScopeMap[sc][pkgName][maxOrSingletonVersion];for(let[versionKey,versionValue]of Object.entries(localShareScopeMap[sc][pkgName]))if(satisfy(versionKey,requiredVersion))return versionValue}}};return(resolveShare.emit(params)||params).resolver()}}function getGlobalShareScope(){return Global.__FEDERATION__.__SHARE__}function getTargetSharedOptions(options){let{pkgName,extraOptions,shareInfos}=options,resolver=extraOptions?.resolver??(sharedOptions=>{if(!sharedOptions)return;let shareVersionMap={};return sharedOptions.forEach(shared=>{shareVersionMap[shared.version]=shared}),shareVersionMap[findVersion(shareVersionMap,function(prev,cur){return!isLoaded(shareVersionMap[prev])&&versionLt(prev,cur)})]});return Object.assign({},resolver(shareInfos[pkgName]),extraOptions?.customShareInfo)}function getBuilderId(){return typeof FEDERATION_BUILD_IDENTIFIER<`u`?FEDERATION_BUILD_IDENTIFIER:``}function matchRemoteWithNameAndExpose(remotes,id){for(let remote of remotes){let isNameMatched=id.startsWith(remote.name),expose=id.replace(remote.name,``);if(isNameMatched){if(expose.startsWith(`/`)){let pkgNameOrAlias=remote.name;return expose=`.${expose}`,{pkgNameOrAlias,expose,remote}}else if(expose===``)return{pkgNameOrAlias:remote.name,expose:`.`,remote}}let isAliasMatched=remote.alias&&id.startsWith(remote.alias),exposeWithAlias=remote.alias&&id.replace(remote.alias,``);if(remote.alias&&isAliasMatched){if(exposeWithAlias&&exposeWithAlias.startsWith(`/`)){let pkgNameOrAlias=remote.alias;return exposeWithAlias=`.${exposeWithAlias}`,{pkgNameOrAlias,expose:exposeWithAlias,remote}}else if(exposeWithAlias===``)return{pkgNameOrAlias:remote.alias,expose:`.`,remote}}}}function matchRemote(remotes,nameOrAlias){for(let remote of remotes)if(nameOrAlias===remote.name||remote.alias&&nameOrAlias===remote.alias)return remote}function registerPlugins(plugins,instance){let globalPlugins=getGlobalHostPlugins(),hookInstances=[instance.hooks,instance.remoteHandler.hooks,instance.sharedHandler.hooks,instance.snapshotHandler.hooks,instance.loaderHook,instance.bridgeHook];return globalPlugins.length>0&&globalPlugins.forEach(plugin=>{plugins?.find(item=>item.name!==plugin.name)&&plugins.push(plugin)}),plugins&&plugins.length>0&&plugins.forEach(plugin=>{hookInstances.forEach(hookInstance=>{hookInstance.applyPlugin(plugin,instance)})}),plugins}var importCallback=`.then(callbacks[0]).catch(callbacks[1])`;async function loadEsmEntry({entry,remoteEntryExports}){return new Promise((resolve,reject)=>{try{remoteEntryExports?resolve(remoteEntryExports):typeof FEDERATION_ALLOW_NEW_FUNCTION<`u`?Function(`callbacks`,`import("${entry}")${importCallback}`)([resolve,reject]):import(entry).then(resolve).catch(reject)}catch(e){reject(e)}})}async function loadSystemJsEntry({entry,remoteEntryExports}){return new Promise((resolve,reject)=>{try{remoteEntryExports?resolve(remoteEntryExports):typeof __system_context__>`u`?System.import(entry).then(resolve).catch(reject):Function(`callbacks`,`System.import("${entry}")${importCallback}`)([resolve,reject])}catch(e){reject(e)}})}function handleRemoteEntryLoaded(name,globalName,entry){let{remoteEntryKey,entryExports}=getRemoteEntryExports(name,globalName);return assert(entryExports,errorCodes.getShortErrorMsg(errorCodes.RUNTIME_001,errorCodes.runtimeDescMap,{remoteName:name,remoteEntryUrl:entry,remoteEntryKey})),entryExports}async function loadEntryScript({name,globalName,entry,loaderHook,getEntryUrl}){let{entryExports:remoteEntryExports}=getRemoteEntryExports(name,globalName);if(remoteEntryExports)return remoteEntryExports;let url=getEntryUrl?getEntryUrl(entry):entry;return sdk.loadScript(url,{attrs:{},createScriptHook:(url$1,attrs)=>{let res=loaderHook.lifecycle.createScript.emit({url:url$1,attrs});if(res&&(res instanceof HTMLScriptElement||`script`in res||`timeout`in res))return res}}).then(()=>handleRemoteEntryLoaded(name,globalName,entry)).catch(e=>{throw assert(void 0,errorCodes.getShortErrorMsg(errorCodes.RUNTIME_008,errorCodes.runtimeDescMap,{remoteName:name,resourceUrl:entry})),e})}async function loadEntryDom({remoteInfo,remoteEntryExports,loaderHook,getEntryUrl}){let{entry,entryGlobalName:globalName,name,type}=remoteInfo;switch(type){case`esm`:case`module`:return loadEsmEntry({entry,remoteEntryExports});case`system`:return loadSystemJsEntry({entry,remoteEntryExports});default:return loadEntryScript({entry,globalName,name,loaderHook,getEntryUrl})}}async function loadEntryNode({remoteInfo,loaderHook}){let{entry,entryGlobalName:globalName,name,type}=remoteInfo,{entryExports:remoteEntryExports}=getRemoteEntryExports(name,globalName);return remoteEntryExports||sdk.loadScriptNode(entry,{attrs:{name,globalName,type},loaderHook:{createScriptHook:(url,attrs={})=>{let res=loaderHook.lifecycle.createScript.emit({url,attrs});if(res&&`url`in res)return res}}}).then(()=>handleRemoteEntryLoaded(name,globalName,entry)).catch(e=>{throw e})}function getRemoteEntryUniqueKey(remoteInfo){let{entry,name}=remoteInfo;return sdk.composeKeyWithSeparator(name,entry)}async function getRemoteEntry(params){let{origin,remoteEntryExports,remoteInfo,getEntryUrl,_inErrorHandling=!1}=params,uniqueKey=getRemoteEntryUniqueKey(remoteInfo);if(remoteEntryExports)return remoteEntryExports;if(!globalLoading[uniqueKey]){let loadEntryHook=origin.remoteHandler.hooks.lifecycle.loadEntry,loaderHook=origin.loaderHook;globalLoading[uniqueKey]=loadEntryHook.emit({loaderHook,remoteInfo,remoteEntryExports}).then(res=>res||((typeof ENV_TARGET<`u`?ENV_TARGET===`web`:sdk.isBrowserEnv())?loadEntryDom({remoteInfo,remoteEntryExports,loaderHook,getEntryUrl}):loadEntryNode({remoteInfo,loaderHook}))).catch(async err=>{let uniqueKey$1=getRemoteEntryUniqueKey(remoteInfo);if(err instanceof Error&&err.message.includes(errorCodes.RUNTIME_008)&&!_inErrorHandling){let RemoteEntryExports=await origin.loaderHook.lifecycle.loadEntryError.emit({getRemoteEntry:params$1=>getRemoteEntry({...params$1,_inErrorHandling:!0}),origin,remoteInfo,remoteEntryExports,globalLoading,uniqueKey:uniqueKey$1});if(RemoteEntryExports)return RemoteEntryExports}throw err})}return globalLoading[uniqueKey]}function getRemoteInfo(remote){return{...remote,entry:`entry`in remote?remote.entry:``,type:remote.type||DEFAULT_REMOTE_TYPE,entryGlobalName:remote.entryGlobalName||remote.name,shareScope:remote.shareScope||DEFAULT_SCOPE}}function defaultPreloadArgs(preloadConfig){return{resourceCategory:`sync`,share:!0,depsRemote:!0,prefetchInterface:!1,...preloadConfig}}function formatPreloadArgs(remotes,preloadArgs){return preloadArgs.map(args=>{let remoteInfo=matchRemote(remotes,args.nameOrAlias);return assert(remoteInfo,`Unable to preload ${args.nameOrAlias} as it is not included in ${!remoteInfo&&sdk.safeToString({remoteInfo,remotes})}`),{remote:remoteInfo,preloadConfig:defaultPreloadArgs(args)}})}function normalizePreloadExposes(exposes){return exposes?exposes.map(expose=>expose===`.`?expose:expose.startsWith(`./`)?expose.replace(`./`,``):expose):[]}function preloadAssets(remoteInfo,host,assets,useLinkPreload=!0){let{cssAssets,jsAssetsWithoutEntry,entryAssets}=assets;if(host.options.inBrowser){if(entryAssets.forEach(asset=>{let{moduleInfo}=asset,module$1=host.moduleCache.get(remoteInfo.name);getRemoteEntry(module$1?{origin:host,remoteInfo:moduleInfo,remoteEntryExports:module$1.remoteEntryExports}:{origin:host,remoteInfo:moduleInfo,remoteEntryExports:void 0})}),useLinkPreload){let defaultAttrs={rel:`preload`,as:`style`};cssAssets.forEach(cssUrl=>{let{link:cssEl,needAttach}=sdk.createLink({url:cssUrl,cb:()=>{},attrs:defaultAttrs,createLinkHook:(url,attrs)=>{let res=host.loaderHook.lifecycle.createLink.emit({url,attrs});if(res instanceof HTMLLinkElement)return res}});needAttach&&document.head.appendChild(cssEl)})}else{let defaultAttrs={rel:`stylesheet`,type:`text/css`};cssAssets.forEach(cssUrl=>{let{link:cssEl,needAttach}=sdk.createLink({url:cssUrl,cb:()=>{},attrs:defaultAttrs,createLinkHook:(url,attrs)=>{let res=host.loaderHook.lifecycle.createLink.emit({url,attrs});if(res instanceof HTMLLinkElement)return res},needDeleteLink:!1});needAttach&&document.head.appendChild(cssEl)})}if(useLinkPreload){let defaultAttrs={rel:`preload`,as:`script`};jsAssetsWithoutEntry.forEach(jsUrl=>{let{link:linkEl,needAttach}=sdk.createLink({url:jsUrl,cb:()=>{},attrs:defaultAttrs,createLinkHook:(url,attrs)=>{let res=host.loaderHook.lifecycle.createLink.emit({url,attrs});if(res instanceof HTMLLinkElement)return res}});needAttach&&document.head.appendChild(linkEl)})}else{let defaultAttrs={fetchpriority:`high`,type:remoteInfo?.type===`module`?`module`:`text/javascript`};jsAssetsWithoutEntry.forEach(jsUrl=>{let{script:scriptEl,needAttach}=sdk.createScript({url:jsUrl,cb:()=>{},attrs:defaultAttrs,createScriptHook:(url,attrs)=>{let res=host.loaderHook.lifecycle.createScript.emit({url,attrs});if(res instanceof HTMLScriptElement)return res},needDeleteScript:!0});needAttach&&document.head.appendChild(scriptEl)})}}}var helpers={global:{Global,nativeGlobal,resetFederationGlobalInfo,setGlobalFederationInstance,getGlobalFederationConstructor,setGlobalFederationConstructor,getInfoWithoutType,getGlobalSnapshot,getTargetSnapshotInfoByModuleInfo,getGlobalSnapshotInfoByModuleInfo,setGlobalSnapshotInfoByModuleInfo,addGlobalSnapshot,getRemoteEntryExports,registerGlobalPlugins,getGlobalHostPlugins,getPreloaded,setPreloaded},share:{getRegisteredShare,getGlobalShareScope},utils:{matchRemoteWithNameAndExpose,preloadAssets,getRemoteInfo}},Module=class{constructor({remoteInfo,host}){this.inited=!1,this.lib=void 0,this.remoteInfo=remoteInfo,this.host=host}async getEntry(){if(this.remoteEntryExports)return this.remoteEntryExports;let remoteEntryExports;return remoteEntryExports=await getRemoteEntry({origin:this.host,remoteInfo:this.remoteInfo,remoteEntryExports:this.remoteEntryExports}),assert(remoteEntryExports,`remoteEntryExports is undefined \n ${sdk.safeToString(this.remoteInfo)}`),this.remoteEntryExports=remoteEntryExports,this.remoteEntryExports}async get(id,expose,options,remoteSnapshot){let{loadFactory=!0}=options||{loadFactory:!0},remoteEntryExports=await this.getEntry();if(!this.inited){let localShareScopeMap=this.host.shareScopeMap,shareScopeKeys=Array.isArray(this.remoteInfo.shareScope)?this.remoteInfo.shareScope:[this.remoteInfo.shareScope];shareScopeKeys.length||shareScopeKeys.push(`default`),shareScopeKeys.forEach(shareScopeKey=>{localShareScopeMap[shareScopeKey]||(localShareScopeMap[shareScopeKey]={})});let shareScope=localShareScopeMap[shareScopeKeys[0]],initScope=[],remoteEntryInitOptions={version:this.remoteInfo.version||``,shareScopeKeys:Array.isArray(this.remoteInfo.shareScope)?shareScopeKeys:this.remoteInfo.shareScope||`default`};Object.defineProperty(remoteEntryInitOptions,`shareScopeMap`,{value:localShareScopeMap,enumerable:!1});let initContainerOptions=await this.host.hooks.lifecycle.beforeInitContainer.emit({shareScope,remoteEntryInitOptions,initScope,remoteInfo:this.remoteInfo,origin:this.host});remoteEntryExports?.init===void 0&&error(errorCodes.getShortErrorMsg(errorCodes.RUNTIME_002,errorCodes.runtimeDescMap,{hostName:this.host.name,remoteName:this.remoteInfo.name,remoteEntryUrl:this.remoteInfo.entry,remoteEntryKey:this.remoteInfo.entryGlobalName})),await remoteEntryExports.init(initContainerOptions.shareScope,initContainerOptions.initScope,initContainerOptions.remoteEntryInitOptions),await this.host.hooks.lifecycle.initContainer.emit({...initContainerOptions,id,remoteSnapshot,remoteEntryExports})}this.lib=remoteEntryExports,this.inited=!0;let moduleFactory;moduleFactory=await this.host.loaderHook.lifecycle.getModuleFactory.emit({remoteEntryExports,expose,moduleInfo:this.remoteInfo}),moduleFactory||=await remoteEntryExports.get(expose),assert(moduleFactory,`${getFMId(this.remoteInfo)} remote don't export ${expose}.`);let symbolName=processModuleAlias(this.remoteInfo.name,expose),wrapModuleFactory=this.wraperFactory(moduleFactory,symbolName);return loadFactory?await wrapModuleFactory():wrapModuleFactory}wraperFactory(moduleFactory,id){function defineModuleId(res,id$1){res&&typeof res==`object`&&Object.isExtensible(res)&&!Object.getOwnPropertyDescriptor(res,Symbol.for(`mf_module_id`))&&Object.defineProperty(res,Symbol.for(`mf_module_id`),{value:id$1,enumerable:!1})}return moduleFactory instanceof Promise?async()=>{let res=await moduleFactory();return defineModuleId(res,id),res}:()=>{let res=moduleFactory();return defineModuleId(res,id),res}}},SyncHook=class{constructor(type){this.type=``,this.listeners=new Set,type&&(this.type=type)}on(fn){typeof fn==`function`&&this.listeners.add(fn)}once(fn){let self=this;this.on(function wrapper(...args){return self.remove(wrapper),fn.apply(null,args)})}emit(...data){let result;return this.listeners.size>0&&this.listeners.forEach(fn=>{result=fn(...data)}),result}remove(fn){this.listeners.delete(fn)}removeAll(){this.listeners.clear()}},AsyncHook=class extends SyncHook{emit(...data){let result,ls=Array.from(this.listeners);if(ls.length>0){let i=0,call=prev=>prev===!1?!1:i<ls.length?Promise.resolve(ls[i++].apply(null,data)).then(call):prev;result=call()}return Promise.resolve(result)}};function checkReturnData(originalData,returnedData){if(!isObject(returnedData))return!1;if(originalData!==returnedData){for(let key in originalData)if(!(key in returnedData))return!1}return!0}var SyncWaterfallHook=class extends SyncHook{constructor(type){super(),this.onerror=error,this.type=type}emit(data){isObject(data)||error(`The data for the "${this.type}" hook should be an object.`);for(let fn of this.listeners)try{let tempData=fn(data);if(checkReturnData(data,tempData))data=tempData;else{this.onerror(`A plugin returned an unacceptable value for the "${this.type}" type.`);break}}catch(e){warn(e),this.onerror(e)}return data}},AsyncWaterfallHook=class extends SyncHook{constructor(type){super(),this.onerror=error,this.type=type}emit(data){isObject(data)||error(`The response data for the "${this.type}" hook must be an object.`);let ls=Array.from(this.listeners);if(ls.length>0){let i=0,processError=e=>(warn(e),this.onerror(e),data),call=prevData=>{if(checkReturnData(data,prevData)){if(data=prevData,i<ls.length)try{return Promise.resolve(ls[i++](data)).then(call,processError)}catch(e){return processError(e)}}else this.onerror(`A plugin returned an incorrect value for the "${this.type}" type.`);return data};return Promise.resolve(call(data))}return Promise.resolve(data)}},PluginSystem=class{constructor(lifecycle){this.registerPlugins={},this.lifecycle=lifecycle,this.lifecycleKeys=Object.keys(lifecycle)}applyPlugin(plugin,instance){assert(isPlainObject(plugin),`Plugin configuration is invalid.`);let pluginName=plugin.name;assert(pluginName,`A name must be provided by the plugin.`),this.registerPlugins[pluginName]||(this.registerPlugins[pluginName]=plugin,plugin.apply?.(instance),Object.keys(this.lifecycle).forEach(key=>{let pluginLife=plugin[key];pluginLife&&this.lifecycle[key].on(pluginLife)}))}removePlugin(pluginName){assert(pluginName,`A name is required.`);let plugin=this.registerPlugins[pluginName];assert(plugin,`The plugin "${pluginName}" is not registered.`),Object.keys(plugin).forEach(key=>{key!==`name`&&this.lifecycle[key].remove(plugin[key])})}};function assignRemoteInfo(remoteInfo,remoteSnapshot){let remoteEntryInfo=getRemoteEntryInfoFromSnapshot(remoteSnapshot);remoteEntryInfo.url||error(`The attribute remoteEntry of ${remoteInfo.name} must not be undefined.`);let entryUrl=sdk.getResourceUrl(remoteSnapshot,remoteEntryInfo.url);!sdk.isBrowserEnv()&&!entryUrl.startsWith(`http`)&&(entryUrl=`https:${entryUrl}`),remoteInfo.type=remoteEntryInfo.type,remoteInfo.entryGlobalName=remoteEntryInfo.globalName,remoteInfo.entry=entryUrl,remoteInfo.version=remoteSnapshot.version,remoteInfo.buildVersion=remoteSnapshot.buildVersion}function snapshotPlugin(){return{name:`snapshot-plugin`,async afterResolve(args){let{remote,pkgNameOrAlias,expose,origin,remoteInfo,id}=args;if(!isRemoteInfoWithEntry(remote)||!isPureRemoteEntry(remote)){let{remoteSnapshot,globalSnapshot}=await origin.snapshotHandler.loadRemoteSnapshotInfo({moduleInfo:remote,id});assignRemoteInfo(remoteInfo,remoteSnapshot);let preloadOptions={remote,preloadConfig:{nameOrAlias:pkgNameOrAlias,exposes:[expose],resourceCategory:`sync`,share:!1,depsRemote:!1}},assets=await origin.remoteHandler.hooks.lifecycle.generatePreloadAssets.emit({origin,preloadOptions,remoteInfo,remote,remoteSnapshot,globalSnapshot});return assets&&preloadAssets(remoteInfo,origin,assets,!1),{...args,remoteSnapshot}}return args}}}function splitId(id){let splitInfo=id.split(`:`);return splitInfo.length===1?{name:splitInfo[0],version:void 0}:splitInfo.length===2?{name:splitInfo[0],version:splitInfo[1]}:{name:splitInfo[1],version:splitInfo[2]}}function traverseModuleInfo(globalSnapshot,remoteInfo,traverse,isRoot,memo={},remoteSnapshot){let{value:snapshotValue}=getInfoWithoutType(globalSnapshot,getFMId(remoteInfo)),effectiveRemoteSnapshot=remoteSnapshot||snapshotValue;if(effectiveRemoteSnapshot&&!sdk.isManifestProvider(effectiveRemoteSnapshot)&&(traverse(effectiveRemoteSnapshot,remoteInfo,isRoot),effectiveRemoteSnapshot.remotesInfo)){let remoteKeys=Object.keys(effectiveRemoteSnapshot.remotesInfo);for(let key of remoteKeys){if(memo[key])continue;memo[key]=!0;let subRemoteInfo=splitId(key),remoteValue=effectiveRemoteSnapshot.remotesInfo[key];traverseModuleInfo(globalSnapshot,{name:subRemoteInfo.name,version:remoteValue.matchedVersion},traverse,!1,memo,void 0)}}}var isExisted=(type,url)=>document.querySelector(`${type}[${type===`link`?`href`:`src`}="${url}"]`);function generatePreloadAssets(origin,preloadOptions,remote,globalSnapshot,remoteSnapshot){let cssAssets=[],jsAssets=[],entryAssets=[],loadedSharedJsAssets=new Set,loadedSharedCssAssets=new Set,{options}=origin,{preloadConfig:rootPreloadConfig}=preloadOptions,{depsRemote}=rootPreloadConfig;if(traverseModuleInfo(globalSnapshot,remote,(moduleInfoSnapshot,remoteInfo,isRoot)=>{let preloadConfig;if(isRoot)preloadConfig=rootPreloadConfig;else if(Array.isArray(depsRemote)){let findPreloadConfig=depsRemote.find(remoteConfig=>remoteConfig.nameOrAlias===remoteInfo.name||remoteConfig.nameOrAlias===remoteInfo.alias);if(!findPreloadConfig)return;preloadConfig=defaultPreloadArgs(findPreloadConfig)}else if(depsRemote===!0)preloadConfig=rootPreloadConfig;else return;let remoteEntryUrl=sdk.getResourceUrl(moduleInfoSnapshot,getRemoteEntryInfoFromSnapshot(moduleInfoSnapshot).url);remoteEntryUrl&&entryAssets.push({name:remoteInfo.name,moduleInfo:{name:remoteInfo.name,entry:remoteEntryUrl,type:`remoteEntryType`in moduleInfoSnapshot?moduleInfoSnapshot.remoteEntryType:`global`,entryGlobalName:`globalName`in moduleInfoSnapshot?moduleInfoSnapshot.globalName:remoteInfo.name,shareScope:``,version:`version`in moduleInfoSnapshot?moduleInfoSnapshot.version:void 0},url:remoteEntryUrl});let moduleAssetsInfo=`modules`in moduleInfoSnapshot?moduleInfoSnapshot.modules:[],normalizedPreloadExposes=normalizePreloadExposes(preloadConfig.exposes);normalizedPreloadExposes.length&&`modules`in moduleInfoSnapshot&&(moduleAssetsInfo=moduleInfoSnapshot?.modules?.reduce((assets,moduleAssetInfo)=>(normalizedPreloadExposes?.indexOf(moduleAssetInfo.moduleName)!==-1&&assets.push(moduleAssetInfo),assets),[]));function handleAssets(assets){let assetsRes=assets.map(asset=>sdk.getResourceUrl(moduleInfoSnapshot,asset));return preloadConfig.filter?assetsRes.filter(preloadConfig.filter):assetsRes}if(moduleAssetsInfo){let assetsLength=moduleAssetsInfo.length;for(let index=0;index<assetsLength;index++){let assetsInfo=moduleAssetsInfo[index],exposeFullPath=`${remoteInfo.name}/${assetsInfo.moduleName}`;origin.remoteHandler.hooks.lifecycle.handlePreloadModule.emit({id:assetsInfo.moduleName===`.`?remoteInfo.name:exposeFullPath,name:remoteInfo.name,remoteSnapshot:moduleInfoSnapshot,preloadConfig,remote:remoteInfo,origin}),!getPreloaded(exposeFullPath)&&(preloadConfig.resourceCategory===`all`?(cssAssets.push(...handleAssets(assetsInfo.assets.css.async)),cssAssets.push(...handleAssets(assetsInfo.assets.css.sync)),jsAssets.push(...handleAssets(assetsInfo.assets.js.async)),jsAssets.push(...handleAssets(assetsInfo.assets.js.sync))):(preloadConfig.resourceCategory=`sync`)&&(cssAssets.push(...handleAssets(assetsInfo.assets.css.sync)),jsAssets.push(...handleAssets(assetsInfo.assets.js.sync))),setPreloaded(exposeFullPath))}}},!0,{},remoteSnapshot),remoteSnapshot.shared&&remoteSnapshot.shared.length>0){let collectSharedAssets=(shareInfo,snapshotShared)=>{let registeredShared=getRegisteredShare(origin.shareScopeMap,snapshotShared.sharedName,shareInfo,origin.sharedHandler.hooks.lifecycle.resolveShare);registeredShared&&typeof registeredShared.lib==`function`&&(snapshotShared.assets.js.sync.forEach(asset=>{loadedSharedJsAssets.add(asset)}),snapshotShared.assets.css.sync.forEach(asset=>{loadedSharedCssAssets.add(asset)}))};remoteSnapshot.shared.forEach(shared=>{let shareInfos=options.shared?.[shared.sharedName];if(!shareInfos)return;let sharedOptions=shared.version?shareInfos.find(s=>s.version===shared.version):shareInfos;sharedOptions&&arrayOptions(sharedOptions).forEach(s=>{collectSharedAssets(s,shared)})})}let needPreloadJsAssets=jsAssets.filter(asset=>!loadedSharedJsAssets.has(asset)&&!isExisted(`script`,asset));return{cssAssets:cssAssets.filter(asset=>!loadedSharedCssAssets.has(asset)&&!isExisted(`link`,asset)),jsAssetsWithoutEntry:needPreloadJsAssets,entryAssets:entryAssets.filter(entry=>!isExisted(`script`,entry.url))}}var generatePreloadAssetsPlugin=function(){return{name:`generate-preload-assets-plugin`,async generatePreloadAssets(args){let{origin,preloadOptions,remoteInfo,remote,globalSnapshot,remoteSnapshot}=args;return sdk.isBrowserEnv()?isRemoteInfoWithEntry(remote)&&isPureRemoteEntry(remote)?{cssAssets:[],jsAssetsWithoutEntry:[],entryAssets:[{name:remote.name,url:remote.entry,moduleInfo:{name:remoteInfo.name,entry:remote.entry,type:remoteInfo.type||`global`,entryGlobalName:``,shareScope:``}}]}:(assignRemoteInfo(remoteInfo,remoteSnapshot),generatePreloadAssets(origin,preloadOptions,remoteInfo,globalSnapshot,remoteSnapshot)):{cssAssets:[],jsAssetsWithoutEntry:[],entryAssets:[]}}}};function getGlobalRemoteInfo(moduleInfo,origin){let hostGlobalSnapshot=getGlobalSnapshotInfoByModuleInfo({name:origin.name,version:origin.options.version}),globalRemoteInfo=hostGlobalSnapshot&&`remotesInfo`in hostGlobalSnapshot&&hostGlobalSnapshot.remotesInfo&&getInfoWithoutType(hostGlobalSnapshot.remotesInfo,moduleInfo.name).value;return globalRemoteInfo&&globalRemoteInfo.matchedVersion?{hostGlobalSnapshot,globalSnapshot:getGlobalSnapshot(),remoteSnapshot:getGlobalSnapshotInfoByModuleInfo({name:moduleInfo.name,version:globalRemoteInfo.matchedVersion})}:{hostGlobalSnapshot:void 0,globalSnapshot:getGlobalSnapshot(),remoteSnapshot:getGlobalSnapshotInfoByModuleInfo({name:moduleInfo.name,version:`version`in moduleInfo?moduleInfo.version:void 0})}}var SnapshotHandler=class{constructor(HostInstance){this.loadingHostSnapshot=null,this.manifestCache=new Map,this.hooks=new PluginSystem({beforeLoadRemoteSnapshot:new AsyncHook(`beforeLoadRemoteSnapshot`),loadSnapshot:new AsyncWaterfallHook(`loadGlobalSnapshot`),loadRemoteSnapshot:new AsyncWaterfallHook(`loadRemoteSnapshot`),afterLoadSnapshot:new AsyncWaterfallHook(`afterLoadSnapshot`)}),this.manifestLoading=Global.__FEDERATION__.__MANIFEST_LOADING__,this.HostInstance=HostInstance,this.loaderHook=HostInstance.loaderHook}async loadRemoteSnapshotInfo({moduleInfo,id,expose}){let{options}=this.HostInstance;await this.hooks.lifecycle.beforeLoadRemoteSnapshot.emit({options,moduleInfo});let hostSnapshot=getGlobalSnapshotInfoByModuleInfo({name:this.HostInstance.options.name,version:this.HostInstance.options.version});hostSnapshot||(hostSnapshot={version:this.HostInstance.options.version||``,remoteEntry:``,remotesInfo:{}},addGlobalSnapshot({[this.HostInstance.options.name]:hostSnapshot})),hostSnapshot&&`remotesInfo`in hostSnapshot&&!getInfoWithoutType(hostSnapshot.remotesInfo,moduleInfo.name).value&&(`version`in moduleInfo||`entry`in moduleInfo)&&(hostSnapshot.remotesInfo={...hostSnapshot?.remotesInfo,[moduleInfo.name]:{matchedVersion:`version`in moduleInfo?moduleInfo.version:moduleInfo.entry}});let{hostGlobalSnapshot,remoteSnapshot,globalSnapshot}=this.getGlobalRemoteInfo(moduleInfo),{remoteSnapshot:globalRemoteSnapshot,globalSnapshot:globalSnapshotRes}=await this.hooks.lifecycle.loadSnapshot.emit({options,moduleInfo,hostGlobalSnapshot,remoteSnapshot,globalSnapshot}),mSnapshot,gSnapshot;if(globalRemoteSnapshot)if(sdk.isManifestProvider(globalRemoteSnapshot)){let remoteEntry=sdk.isBrowserEnv()?globalRemoteSnapshot.remoteEntry:globalRemoteSnapshot.ssrRemoteEntry||globalRemoteSnapshot.remoteEntry||``,moduleSnapshot=await this.getManifestJson(remoteEntry,moduleInfo,{}),globalSnapshotRes$1=setGlobalSnapshotInfoByModuleInfo({...moduleInfo,entry:remoteEntry},moduleSnapshot);mSnapshot=moduleSnapshot,gSnapshot=globalSnapshotRes$1}else{let{remoteSnapshot:remoteSnapshotRes}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo,remoteSnapshot:globalRemoteSnapshot,from:`global`});mSnapshot=remoteSnapshotRes,gSnapshot=globalSnapshotRes}else if(isRemoteInfoWithEntry(moduleInfo)){let moduleSnapshot=await this.getManifestJson(moduleInfo.entry,moduleInfo,{}),globalSnapshotRes$1=setGlobalSnapshotInfoByModuleInfo(moduleInfo,moduleSnapshot),{remoteSnapshot:remoteSnapshotRes}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo,remoteSnapshot:moduleSnapshot,from:`global`});mSnapshot=remoteSnapshotRes,gSnapshot=globalSnapshotRes$1}else error(errorCodes.getShortErrorMsg(errorCodes.RUNTIME_007,errorCodes.runtimeDescMap,{hostName:moduleInfo.name,hostVersion:moduleInfo.version,globalSnapshot:JSON.stringify(globalSnapshotRes)}));return await this.hooks.lifecycle.afterLoadSnapshot.emit({id,host:this.HostInstance,options,moduleInfo,remoteSnapshot:mSnapshot}),{remoteSnapshot:mSnapshot,globalSnapshot:gSnapshot}}getGlobalRemoteInfo(moduleInfo){return getGlobalRemoteInfo(moduleInfo,this.HostInstance)}async getManifestJson(manifestUrl,moduleInfo,extraOptions){let getManifest=async()=>{let manifestJson=this.manifestCache.get(manifestUrl);if(manifestJson)return manifestJson;try{let res=await this.loaderHook.lifecycle.fetch.emit(manifestUrl,{});(!res||!(res instanceof Response))&&(res=await fetch(manifestUrl,{})),manifestJson=await res.json()}catch(err){manifestJson=await this.HostInstance.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({id:manifestUrl,error:err,from:`runtime`,lifecycle:`afterResolve`,origin:this.HostInstance}),manifestJson||(delete this.manifestLoading[manifestUrl],error(errorCodes.getShortErrorMsg(errorCodes.RUNTIME_003,errorCodes.runtimeDescMap,{manifestUrl,moduleName:moduleInfo.name,hostName:this.HostInstance.options.name},`${err}`)))}return assert(manifestJson.metaData&&manifestJson.exposes&&manifestJson.shared,`${manifestUrl} is not a federation manifest`),this.manifestCache.set(manifestUrl,manifestJson),manifestJson},asyncLoadProcess=async()=>{let manifestJson=await getManifest(),remoteSnapshot=sdk.generateSnapshotFromManifest(manifestJson,{version:manifestUrl}),{remoteSnapshot:remoteSnapshotRes}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo,manifestJson,remoteSnapshot,manifestUrl,from:`manifest`});return remoteSnapshotRes};return this.manifestLoading[manifestUrl]||(this.manifestLoading[manifestUrl]=asyncLoadProcess().then(res=>res)),this.manifestLoading[manifestUrl]}},SharedHandler=class{constructor(host){this.hooks=new PluginSystem({afterResolve:new AsyncWaterfallHook(`afterResolve`),beforeLoadShare:new AsyncWaterfallHook(`beforeLoadShare`),loadShare:new AsyncHook,resolveShare:new SyncWaterfallHook(`resolveShare`),initContainerShareScopeMap:new SyncWaterfallHook(`initContainerShareScopeMap`)}),this.host=host,this.shareScopeMap={},this.initTokens={},this._setGlobalShareScopeMap(host.options)}registerShared(globalOptions,userOptions){let{shareInfos,shared}=formatShareConfigs(globalOptions,userOptions);return Object.keys(shareInfos).forEach(sharedKey=>{shareInfos[sharedKey].forEach(sharedVal=>{sharedVal.scope.forEach(sc=>{this.shareScopeMap[sc]?.[sharedKey]||this.setShared({pkgName:sharedKey,lib:sharedVal.lib,get:sharedVal.get,loaded:sharedVal.loaded||!!sharedVal.lib,shared:sharedVal,from:userOptions.name})})})}),{shareInfos,shared}}async loadShare(pkgName,extraOptions){let{host}=this,shareOptions=getTargetSharedOptions({pkgName,extraOptions,shareInfos:host.options.shared});shareOptions?.scope&&await Promise.all(shareOptions.scope.map(async shareScope=>{await Promise.all(this.initializeSharing(shareScope,{strategy:shareOptions.strategy}))}));let{shareInfo:shareOptionsRes}=await this.hooks.lifecycle.beforeLoadShare.emit({pkgName,shareInfo:shareOptions,shared:host.options.shared,origin:host});assert(shareOptionsRes,`Cannot find ${pkgName} Share in the ${host.options.name}. Please ensure that the ${pkgName} Share parameters have been injected`);let registeredShared=getRegisteredShare(this.shareScopeMap,pkgName,shareOptionsRes,this.hooks.lifecycle.resolveShare),addUseIn=shared=>{shared.useIn||=[],addUniqueItem(shared.useIn,host.options.name)};if(registeredShared&®isteredShared.lib)return addUseIn(registeredShared),registeredShared.lib;if(registeredShared&®isteredShared.loading&&!registeredShared.loaded){let factory=await registeredShared.loading;return registeredShared.loaded=!0,registeredShared.lib||=factory,addUseIn(registeredShared),factory}else if(registeredShared){let loading=(async()=>{let factory=await registeredShared.get();return addUseIn(registeredShared),registeredShared.loaded=!0,registeredShared.lib=factory,factory})();return this.setShared({pkgName,loaded:!1,shared:registeredShared,from:host.options.name,lib:null,loading}),loading}else{if(extraOptions?.customShareInfo)return!1;let loading=(async()=>{let factory=await shareOptionsRes.get();shareOptionsRes.lib=factory,shareOptionsRes.loaded=!0,addUseIn(shareOptionsRes);let gShared=getRegisteredShare(this.shareScopeMap,pkgName,shareOptionsRes,this.hooks.lifecycle.resolveShare);return gShared&&(gShared.lib=factory,gShared.loaded=!0,gShared.from=shareOptionsRes.from),factory})();return this.setShared({pkgName,loaded:!1,shared:shareOptionsRes,from:host.options.name,lib:null,loading}),loading}}initializeSharing(shareScopeName=DEFAULT_SCOPE,extraOptions){let{host}=this,from=extraOptions?.from,strategy=extraOptions?.strategy,initScope=extraOptions?.initScope,promises=[];if(from!==`build`){let{initTokens}=this;initScope||=[];let initToken=initTokens[shareScopeName];if(initToken||=initTokens[shareScopeName]={from:this.host.name},initScope.indexOf(initToken)>=0)return promises;initScope.push(initToken)}let shareScope=this.shareScopeMap,hostName=host.options.name;shareScope[shareScopeName]||(shareScope[shareScopeName]={});let scope=shareScope[shareScopeName],register=(name,shared)=>{let{version:version$1,eager}=shared;scope[name]=scope[name]||{};let versions=scope[name],activeVersion=versions[version$1],activeVersionEager=!!(activeVersion&&(activeVersion.eager||activeVersion.shareConfig?.eager));(!activeVersion||activeVersion.strategy!==`loaded-first`&&!activeVersion.loaded&&(!eager==!activeVersionEager?hostName>activeVersion.from:eager))&&(versions[version$1]=shared)},initFn=mod=>mod&&mod.init&&mod.init(shareScope[shareScopeName],initScope),initRemoteModule=async key=>{let{module:module$1}=await host.remoteHandler.getRemoteModuleAndOptions({id:key});if(module$1.getEntry){let remoteEntryExports;try{remoteEntryExports=await module$1.getEntry()}catch(error){remoteEntryExports=await host.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({id:key,error,from:`runtime`,lifecycle:`beforeLoadShare`,origin:host})}module$1.inited||=(await initFn(remoteEntryExports),!0)}};return Object.keys(host.options.shared).forEach(shareName=>{host.options.shared[shareName].forEach(shared=>{shared.scope.includes(shareScopeName)&®ister(shareName,shared)})}),(host.options.shareStrategy===`version-first`||strategy===`version-first`)&&host.options.remotes.forEach(remote=>{remote.shareScope===shareScopeName&&promises.push(initRemoteModule(remote.name))}),promises}loadShareSync(pkgName,extraOptions){let{host}=this,shareOptions=getTargetSharedOptions({pkgName,extraOptions,shareInfos:host.options.shared});shareOptions?.scope&&shareOptions.scope.forEach(shareScope=>{this.initializeSharing(shareScope,{strategy:shareOptions.strategy})});let registeredShared=getRegisteredShare(this.shareScopeMap,pkgName,shareOptions,this.hooks.lifecycle.resolveShare),addUseIn=shared=>{shared.useIn||=[],addUniqueItem(shared.useIn,host.options.name)};if(registeredShared){if(typeof registeredShared.lib==`function`)return addUseIn(registeredShared),registeredShared.loaded||(registeredShared.loaded=!0,registeredShared.from===host.options.name&&(shareOptions.loaded=!0)),registeredShared.lib;if(typeof registeredShared.get==`function`){let module$1=registeredShared.get();if(!(module$1 instanceof Promise))return addUseIn(registeredShared),this.setShared({pkgName,loaded:!0,from:host.options.name,lib:module$1,shared:registeredShared}),module$1}}if(shareOptions.lib)return shareOptions.loaded||=!0,shareOptions.lib;if(shareOptions.get){let module$1=shareOptions.get();if(module$1 instanceof Promise){let errorCode=extraOptions?.from===`build`?errorCodes.RUNTIME_005:errorCodes.RUNTIME_006;throw Error(errorCodes.getShortErrorMsg(errorCode,errorCodes.runtimeDescMap,{hostName:host.options.name,sharedPkgName:pkgName}))}return shareOptions.lib=module$1,this.setShared({pkgName,loaded:!0,from:host.options.name,lib:shareOptions.lib,shared:shareOptions}),shareOptions.lib}throw Error(errorCodes.getShortErrorMsg(errorCodes.RUNTIME_006,errorCodes.runtimeDescMap,{hostName:host.options.name,sharedPkgName:pkgName}))}initShareScopeMap(scopeName,shareScope,extraOptions={}){let{host}=this;this.shareScopeMap[scopeName]=shareScope,this.hooks.lifecycle.initContainerShareScopeMap.emit({shareScope,options:host.options,origin:host,scopeName,hostShareScopeMap:extraOptions.hostShareScopeMap})}setShared({pkgName,shared,from,lib,loading,loaded,get}){let{version:version$1,scope=`default`,...shareInfo}=shared;(Array.isArray(scope)?scope:[scope]).forEach(sc=>{if(this.shareScopeMap[sc]||(this.shareScopeMap[sc]={}),this.shareScopeMap[sc][pkgName]||(this.shareScopeMap[sc][pkgName]={}),!this.shareScopeMap[sc][pkgName][version$1]){this.shareScopeMap[sc][pkgName][version$1]={version:version$1,scope:[sc],...shareInfo,lib,loaded,loading},get&&(this.shareScopeMap[sc][pkgName][version$1].get=get);return}let registeredShared=this.shareScopeMap[sc][pkgName][version$1];loading&&!registeredShared.loading&&(registeredShared.loading=loading),loaded&&!registeredShared.loaded&&(registeredShared.loaded=loaded),from&®isteredShared.from!==from&&(registeredShared.from=from)})}_setGlobalShareScopeMap(hostOptions){let globalShareScopeMap=getGlobalShareScope(),identifier=hostOptions.id||hostOptions.name;identifier&&!globalShareScopeMap[identifier]&&(globalShareScopeMap[identifier]=this.shareScopeMap)}},RemoteHandler=class{constructor(host){this.hooks=new PluginSystem({beforeRegisterRemote:new SyncWaterfallHook(`beforeRegisterRemote`),registerRemote:new SyncWaterfallHook(`registerRemote`),beforeRequest:new AsyncWaterfallHook(`beforeRequest`),onLoad:new AsyncHook(`onLoad`),handlePreloadModule:new SyncHook(`handlePreloadModule`),errorLoadRemote:new AsyncHook(`errorLoadRemote`),beforePreloadRemote:new AsyncHook(`beforePreloadRemote`),generatePreloadAssets:new AsyncHook(`generatePreloadAssets`),afterPreloadRemote:new AsyncHook,loadEntry:new AsyncHook}),this.host=host,this.idToRemoteMap={}}formatAndRegisterRemote(globalOptions,userOptions){return(userOptions.remotes||[]).reduce((res,remote)=>(this.registerRemote(remote,res,{force:!1}),res),globalOptions.remotes)}setIdToRemoteMap(id,remoteMatchInfo){let{remote,expose}=remoteMatchInfo,{name,alias}=remote;if(this.idToRemoteMap[id]={name:remote.name,expose},alias&&id.startsWith(name)){let idWithAlias=id.replace(name,alias);this.idToRemoteMap[idWithAlias]={name:remote.name,expose};return}if(alias&&id.startsWith(alias)){let idWithName=id.replace(alias,name);this.idToRemoteMap[idWithName]={name:remote.name,expose}}}async loadRemote(id,options){let{host}=this;try{let{loadFactory=!0}=options||{loadFactory:!0},{module:module$1,moduleOptions,remoteMatchInfo}=await this.getRemoteModuleAndOptions({id}),{pkgNameOrAlias,remote,expose,id:idRes,remoteSnapshot}=remoteMatchInfo,moduleOrFactory=await module$1.get(idRes,expose,options,remoteSnapshot),moduleWrapper=await this.hooks.lifecycle.onLoad.emit({id:idRes,pkgNameOrAlias,expose,exposeModule:loadFactory?moduleOrFactory:void 0,exposeModuleFactory:loadFactory?void 0:moduleOrFactory,remote,options:moduleOptions,moduleInstance:module$1,origin:host});return this.setIdToRemoteMap(id,remoteMatchInfo),typeof moduleWrapper==`function`?moduleWrapper:moduleOrFactory}catch(error){let{from=`runtime`}=options||{from:`runtime`},failOver=await this.hooks.lifecycle.errorLoadRemote.emit({id,error,from,lifecycle:`onLoad`,origin:host});if(!failOver)throw error;return failOver}}async preloadRemote(preloadOptions){let{host}=this;await this.hooks.lifecycle.beforePreloadRemote.emit({preloadOps:preloadOptions,options:host.options,origin:host});let preloadOps=formatPreloadArgs(host.options.remotes,preloadOptions);await Promise.all(preloadOps.map(async ops=>{let{remote}=ops,remoteInfo=getRemoteInfo(remote),{globalSnapshot,remoteSnapshot}=await host.snapshotHandler.loadRemoteSnapshotInfo({moduleInfo:remote}),assets=await this.hooks.lifecycle.generatePreloadAssets.emit({origin:host,preloadOptions:ops,remote,remoteInfo,globalSnapshot,remoteSnapshot});assets&&preloadAssets(remoteInfo,host,assets)}))}registerRemotes(remotes,options){let{host}=this;remotes.forEach(remote=>{this.registerRemote(remote,host.options.remotes,{force:options?.force})})}async getRemoteModuleAndOptions(options){let{host}=this,{id}=options,loadRemoteArgs;try{loadRemoteArgs=await this.hooks.lifecycle.beforeRequest.emit({id,options:host.options,origin:host})}catch(error){if(loadRemoteArgs=await this.hooks.lifecycle.errorLoadRemote.emit({id,options:host.options,origin:host,from:`runtime`,error,lifecycle:`beforeRequest`}),!loadRemoteArgs)throw error}let{id:idRes}=loadRemoteArgs,remoteSplitInfo=matchRemoteWithNameAndExpose(host.options.remotes,idRes);assert(remoteSplitInfo,errorCodes.getShortErrorMsg(errorCodes.RUNTIME_004,errorCodes.runtimeDescMap,{hostName:host.options.name,requestId:idRes}));let{remote:rawRemote}=remoteSplitInfo,remoteInfo=getRemoteInfo(rawRemote),matchInfo=await host.sharedHandler.hooks.lifecycle.afterResolve.emit({id:idRes,...remoteSplitInfo,options:host.options,origin:host,remoteInfo}),{remote,expose}=matchInfo;assert(remote&&expose,`The 'beforeRequest' hook was executed, but it failed to return the correct 'remote' and 'expose' values while loading ${idRes}.`);let module$1=host.moduleCache.get(remote.name),moduleOptions={host,remoteInfo};return module$1||(module$1=new Module(moduleOptions),host.moduleCache.set(remote.name,module$1)),{module:module$1,moduleOptions,remoteMatchInfo:matchInfo}}registerRemote(remote,targetRemotes,options){let{host}=this,normalizeRemote=()=>{if(remote.alias){let findEqual=targetRemotes.find(item=>remote.alias&&(item.name.startsWith(remote.alias)||item.alias?.startsWith(remote.alias)));assert(!findEqual,`The alias ${remote.alias} of remote ${remote.name} is not allowed to be the prefix of ${findEqual&&findEqual.name} name or alias`)}`entry`in remote&&sdk.isBrowserEnv()&&!remote.entry.startsWith(`http`)&&(remote.entry=new URL(remote.entry,window.location.origin).href),remote.shareScope||=DEFAULT_SCOPE,remote.type||=DEFAULT_REMOTE_TYPE};this.hooks.lifecycle.beforeRegisterRemote.emit({remote,origin:host});let registeredRemote=targetRemotes.find(item=>item.name===remote.name);if(!registeredRemote)normalizeRemote(),targetRemotes.push(remote),this.hooks.lifecycle.registerRemote.emit({remote,origin:host});else{let messages=[`The remote "${remote.name}" is already registered.`,`Please note that overriding it may cause unexpected errors.`];options?.force&&(this.removeRemote(registeredRemote),normalizeRemote(),targetRemotes.push(remote),this.hooks.lifecycle.registerRemote.emit({remote,origin:host}),sdk.warn(messages.join(` `)))}}removeRemote(remote){try{let{host}=this,{name}=remote,remoteIndex=host.options.remotes.findIndex(item=>item.name===name);remoteIndex!==-1&&host.options.remotes.splice(remoteIndex,1);let loadedModule=host.moduleCache.get(remote.name);if(loadedModule){let remoteInfo=loadedModule.remoteInfo,key=remoteInfo.entryGlobalName;CurrentGlobal[key]&&(Object.getOwnPropertyDescriptor(CurrentGlobal,key)?.configurable?delete CurrentGlobal[key]:CurrentGlobal[key]=void 0);let remoteEntryUniqueKey=getRemoteEntryUniqueKey(loadedModule.remoteInfo);globalLoading[remoteEntryUniqueKey]&&delete globalLoading[remoteEntryUniqueKey],host.snapshotHandler.manifestCache.delete(remoteInfo.entry);let remoteInsId=remoteInfo.buildVersion?sdk.composeKeyWithSeparator(remoteInfo.name,remoteInfo.buildVersion):remoteInfo.name,remoteInsIndex=CurrentGlobal.__FEDERATION__.__INSTANCES__.findIndex(ins=>remoteInfo.buildVersion?ins.options.id===remoteInsId:ins.name===remoteInsId);if(remoteInsIndex!==-1){let remoteIns=CurrentGlobal.__FEDERATION__.__INSTANCES__[remoteInsIndex];remoteInsId=remoteIns.options.id||remoteInsId;let globalShareScopeMap=getGlobalShareScope(),isAllSharedNotUsed=!0,needDeleteKeys=[];Object.keys(globalShareScopeMap).forEach(instId=>{let shareScopeMap=globalShareScopeMap[instId];shareScopeMap&&Object.keys(shareScopeMap).forEach(shareScope=>{let shareScopeVal=shareScopeMap[shareScope];shareScopeVal&&Object.keys(shareScopeVal).forEach(shareName=>{let sharedPkgs=shareScopeVal[shareName];sharedPkgs&&Object.keys(sharedPkgs).forEach(shareVersion=>{let shared=sharedPkgs[shareVersion];shared&&typeof shared==`object`&&shared.from===remoteInfo.name&&(shared.loaded||shared.loading?(shared.useIn=shared.useIn.filter(usedHostName=>usedHostName!==remoteInfo.name),shared.useIn.length?isAllSharedNotUsed=!1:needDeleteKeys.push([instId,shareScope,shareName,shareVersion])):needDeleteKeys.push([instId,shareScope,shareName,shareVersion]))})})})}),isAllSharedNotUsed&&(remoteIns.shareScopeMap={},delete globalShareScopeMap[remoteInsId]),needDeleteKeys.forEach(([insId,shareScope,shareName,shareVersion])=>{delete globalShareScopeMap[insId]?.[shareScope]?.[shareName]?.[shareVersion]}),CurrentGlobal.__FEDERATION__.__INSTANCES__.splice(remoteInsIndex,1)}let{hostGlobalSnapshot}=getGlobalRemoteInfo(remote,host);if(hostGlobalSnapshot){let remoteKey=hostGlobalSnapshot&&`remotesInfo`in hostGlobalSnapshot&&hostGlobalSnapshot.remotesInfo&&getInfoWithoutType(hostGlobalSnapshot.remotesInfo,remote.name).key;remoteKey&&(delete hostGlobalSnapshot.remotesInfo[remoteKey],Global.__FEDERATION__.__MANIFEST_LOADING__[remoteKey]&&delete Global.__FEDERATION__.__MANIFEST_LOADING__[remoteKey])}host.moduleCache.delete(remote.name)}}catch(err){logger.log(`removeRemote fail: `,err)}}},USE_SNAPSHOT=typeof FEDERATION_OPTIMIZE_NO_SNAPSHOT_PLUGIN==`boolean`?!FEDERATION_OPTIMIZE_NO_SNAPSHOT_PLUGIN:!0,ModuleFederation=class{constructor(userOptions){this.hooks=new PluginSystem({beforeInit:new SyncWaterfallHook(`beforeInit`),init:new SyncHook,beforeInitContainer:new AsyncWaterfallHook(`beforeInitContainer`),initContainer:new AsyncWaterfallHook(`initContainer`)}),this.version=`0.21.6`,this.moduleCache=new Map,this.loaderHook=new PluginSystem({getModuleInfo:new SyncHook,createScript:new SyncHook,createLink:new SyncHook,fetch:new AsyncHook,loadEntryError:new AsyncHook,getModuleFactory:new AsyncHook}),this.bridgeHook=new PluginSystem({beforeBridgeRender:new SyncHook,afterBridgeRender:new SyncHook,beforeBridgeDestroy:new SyncHook,afterBridgeDestroy:new SyncHook});let plugins=USE_SNAPSHOT?[snapshotPlugin(),generatePreloadAssetsPlugin()]:[],defaultOptions={id:getBuilderId(),name:userOptions.name,plugins,remotes:[],shared:{},inBrowser:sdk.isBrowserEnv()};this.name=userOptions.name,this.options=defaultOptions,this.snapshotHandler=new SnapshotHandler(this),this.sharedHandler=new SharedHandler(this),this.remoteHandler=new RemoteHandler(this),this.shareScopeMap=this.sharedHandler.shareScopeMap,this.registerPlugins([...defaultOptions.plugins,...userOptions.plugins||[]]),this.options=this.formatOptions(defaultOptions,userOptions)}initOptions(userOptions){this.registerPlugins(userOptions.plugins);let options=this.formatOptions(this.options,userOptions);return this.options=options,options}async loadShare(pkgName,extraOptions){return this.sharedHandler.loadShare(pkgName,extraOptions)}loadShareSync(pkgName,extraOptions){return this.sharedHandler.loadShareSync(pkgName,extraOptions)}initializeSharing(shareScopeName=DEFAULT_SCOPE,extraOptions){return this.sharedHandler.initializeSharing(shareScopeName,extraOptions)}initRawContainer(name,url,container){let remoteInfo=getRemoteInfo({name,entry:url}),module$1=new Module({host:this,remoteInfo});return module$1.remoteEntryExports=container,this.moduleCache.set(name,module$1),module$1}async loadRemote(id,options){return this.remoteHandler.loadRemote(id,options)}async preloadRemote(preloadOptions){return this.remoteHandler.preloadRemote(preloadOptions)}initShareScopeMap(scopeName,shareScope,extraOptions={}){this.sharedHandler.initShareScopeMap(scopeName,shareScope,extraOptions)}formatOptions(globalOptions,userOptions){let{shared}=formatShareConfigs(globalOptions,userOptions),{userOptions:userOptionsRes,options:globalOptionsRes}=this.hooks.lifecycle.beforeInit.emit({origin:this,userOptions,options:globalOptions,shareInfo:shared}),remotes=this.remoteHandler.formatAndRegisterRemote(globalOptionsRes,userOptionsRes),{shared:handledShared}=this.sharedHandler.registerShared(globalOptionsRes,userOptionsRes),plugins=[...globalOptionsRes.plugins];userOptionsRes.plugins&&userOptionsRes.plugins.forEach(plugin=>{plugins.includes(plugin)||plugins.push(plugin)});let optionsRes={...globalOptions,...userOptions,plugins,remotes,shared:handledShared};return this.hooks.lifecycle.init.emit({origin:this,options:optionsRes}),optionsRes}registerPlugins(plugins){let pluginRes=registerPlugins(plugins,this);this.options.plugins=this.options.plugins.reduce((res,plugin)=>(plugin&&res&&!res.find(item=>item.name===plugin.name)&&res.push(plugin),res),pluginRes||[])}registerRemotes(remotes,options){return this.remoteHandler.registerRemotes(remotes,options)}registerShared(shared){this.sharedHandler.registerShared(this.options,{...this.options,shared})}},index=Object.freeze({__proto__:null});exports.loadScript=sdk.loadScript,exports.loadScriptNode=sdk.loadScriptNode,exports.CurrentGlobal=CurrentGlobal,exports.Global=Global,exports.Module=Module,exports.ModuleFederation=ModuleFederation,exports.addGlobalSnapshot=addGlobalSnapshot,exports.assert=assert,exports.getGlobalFederationConstructor=getGlobalFederationConstructor,exports.getGlobalSnapshot=getGlobalSnapshot,exports.getInfoWithoutType=getInfoWithoutType,exports.getRegisteredShare=getRegisteredShare,exports.getRemoteEntry=getRemoteEntry,exports.getRemoteInfo=getRemoteInfo,exports.helpers=helpers,exports.isStaticResourcesEqual=isStaticResourcesEqual,exports.matchRemoteWithNameAndExpose=matchRemoteWithNameAndExpose,exports.registerGlobalPlugins=registerGlobalPlugins,exports.resetFederationGlobalInfo=resetFederationGlobalInfo,exports.safeWrapper=safeWrapper,exports.satisfy=satisfy,exports.setGlobalFederationConstructor=setGlobalFederationConstructor,exports.setGlobalFederationInstance=setGlobalFederationInstance,exports.types=index})),require_utils_cjs=require_chunk.t((exports=>{var runtimeCore=require_index_cjs$1();function getBuilderId(){return typeof FEDERATION_BUILD_IDENTIFIER<`u`?FEDERATION_BUILD_IDENTIFIER:``}function getGlobalFederationInstance(name,version$1){let buildId=getBuilderId();return runtimeCore.CurrentGlobal.__FEDERATION__.__INSTANCES__.find(GMInstance=>!!(buildId&&GMInstance.options.id===buildId||GMInstance.options.name===name&&!GMInstance.options.version&&!version$1||GMInstance.options.name===name&&version$1&&GMInstance.options.version===version$1))}exports.getGlobalFederationInstance=getGlobalFederationInstance})),require_index_cjs=require_chunk.t((exports=>{var runtimeCore=require_index_cjs$1(),errorCodes=require_index_cjs$2(),utils=require_utils_cjs();function createInstance(options){let instance=new((runtimeCore.getGlobalFederationConstructor())||runtimeCore.ModuleFederation)(options);return runtimeCore.setGlobalFederationInstance(instance),instance}var FederationInstance=null;function init(options){let instance=utils.getGlobalFederationInstance(options.name,options.version);return instance?(instance.initOptions(options),FederationInstance||=instance,instance):(FederationInstance=createInstance(options),FederationInstance)}function loadRemote(...args){return runtimeCore.assert(FederationInstance,errorCodes.getShortErrorMsg(errorCodes.RUNTIME_009,errorCodes.runtimeDescMap)),FederationInstance.loadRemote.apply(FederationInstance,args)}function loadShare(...args){return runtimeCore.assert(FederationInstance,errorCodes.getShortErrorMsg(errorCodes.RUNTIME_009,errorCodes.runtimeDescMap)),FederationInstance.loadShare.apply(FederationInstance,args)}function loadShareSync(...args){return runtimeCore.assert(FederationInstance,errorCodes.getShortErrorMsg(errorCodes.RUNTIME_009,errorCodes.runtimeDescMap)),FederationInstance.loadShareSync.apply(FederationInstance,args)}function preloadRemote(...args){return runtimeCore.assert(FederationInstance,errorCodes.getShortErrorMsg(errorCodes.RUNTIME_009,errorCodes.runtimeDescMap)),FederationInstance.preloadRemote.apply(FederationInstance,args)}function registerRemotes(...args){return runtimeCore.assert(FederationInstance,errorCodes.getShortErrorMsg(errorCodes.RUNTIME_009,errorCodes.runtimeDescMap)),FederationInstance.registerRemotes.apply(FederationInstance,args)}function registerPlugins(...args){return runtimeCore.assert(FederationInstance,errorCodes.getShortErrorMsg(errorCodes.RUNTIME_009,errorCodes.runtimeDescMap)),FederationInstance.registerPlugins.apply(FederationInstance,args)}function getInstance(){return FederationInstance}function registerShared(...args){return runtimeCore.assert(FederationInstance,errorCodes.getShortErrorMsg(errorCodes.RUNTIME_009,errorCodes.runtimeDescMap)),FederationInstance.registerShared.apply(FederationInstance,args)}runtimeCore.setGlobalFederationConstructor(runtimeCore.ModuleFederation),exports.Module=runtimeCore.Module,exports.ModuleFederation=runtimeCore.ModuleFederation,exports.getRemoteEntry=runtimeCore.getRemoteEntry,exports.getRemoteInfo=runtimeCore.getRemoteInfo,exports.loadScript=runtimeCore.loadScript,exports.loadScriptNode=runtimeCore.loadScriptNode,exports.registerGlobalPlugins=runtimeCore.registerGlobalPlugins,exports.createInstance=createInstance,exports.getInstance=getInstance,exports.init=init,exports.loadRemote=loadRemote,exports.loadShare=loadShare,exports.loadShareSync=loadShareSync,exports.preloadRemote=preloadRemote,exports.registerPlugins=registerPlugins,exports.registerRemotes=registerRemotes,exports.registerShared=registerShared})),require_runtime_cjs=require_chunk.t((exports=>{var runtime=require_index_cjs();Object.prototype.hasOwnProperty.call(runtime,`__proto__`)&&!Object.prototype.hasOwnProperty.call(exports,`__proto__`)&&Object.defineProperty(exports,`__proto__`,{enumerable:!0,value:runtime.__proto__}),Object.keys(runtime).forEach(function(k){k!==`default`&&!Object.prototype.hasOwnProperty.call(exports,k)&&(exports[k]=runtime[k])})})),require_runtime=require_chunk.t((exports=>{var __createBinding=exports&&exports.__createBinding||(Object.create?(function(o,m,k,k2){k2===void 0&&(k2=k);var desc=Object.getOwnPropertyDescriptor(m,k);(!desc||(`get`in desc?!m.__esModule:desc.writable||desc.configurable))&&(desc={enumerable:!0,get:function(){return m[k]}}),Object.defineProperty(o,k2,desc)}):(function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]})),__exportStar=exports&&exports.__exportStar||function(m,exports$1){for(var p in m)p!==`default`&&!Object.prototype.hasOwnProperty.call(exports$1,p)&&__createBinding(exports$1,m,p)};Object.defineProperty(exports,`__esModule`,{value:!0}),__exportStar(require_runtime_cjs(),exports)})),import_runtime=require_runtime(),federationRuntime=(0,import_runtime.createInstance)({name:`luzmo-embed-runtime`,remotes:[]}),remoteCache=new Map,remoteCounter=0;function getManifestEntry(appServer,componentName){let baseUrl=removeTrailingSlash(appServer);if(appServer.startsWith(`http://localhost`))return`${baseUrl}/mf-manifest.json`;switch(componentName){case`DashboardApp`:case`VizItemApp`:return`${baseUrl}/dashboard-app/mf-manifest.json`;case`IQApp`:return`${baseUrl}/iq-components/mf-manifest.json`}}function getCacheKey(appServer,componentName){return`${appServer}|${componentName}`}function getOrCreateRemote(appServer,componentName){let cacheKey=getCacheKey(appServer,componentName),cachedRemote=remoteCache.get(cacheKey);if(cachedRemote)return cachedRemote;let remote={entry:getManifestEntry(appServer,componentName),registered:!1,remoteName:`luzmo_embed_${remoteCounter++}`};return remoteCache.set(cacheKey,remote),remote}function loadLibrary(appServer,componentName=`DashboardApp`){let remote=getOrCreateRemote(appServer,componentName);return remote.module?Promise.resolve(remote.module):remote.loadPromise?remote.loadPromise:(remote.registered||=(federationRuntime.registerRemotes([{name:remote.remoteName,entry:remote.entry}]),!0),remote.loadPromise=federationRuntime.loadRemote(`${remote.remoteName}/${componentName}`).then(module$1=>{if(!module$1)throw Error(`Failed to load "${componentName}" from "${remote.entry}".`);return remote.module=module$1,module$1}).finally(()=>{remote.loadPromise=void 0}),remote.loadPromise)}var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__decorateClass=(decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp(target,key,result),result},version=`6.10.0`,LuzmoDashboardService=class{constructor(){this._dashboardComponents=[]}},luzmo_service_default=new LuzmoDashboardService,_setEventHandler=()=>{typeof window.__luzmoMessageHandler!=`function`&&(window.__luzmoMessageHandler=event=>{let dashboardComponent=luzmo_service_default._dashboardComponents.find(c=>event.data.name===c._iframeId);if(dashboardComponent)switch(event.data?.type){case`load`:dashboardComponent.dispatchEvent(new CustomEvent(`load`,{detail:{data:event.data}})),dashboardComponent._loadTimeoutHandle&&=(clearTimeout(dashboardComponent._loadTimeoutHandle),void 0),dashboardComponent.iframeLoaded=!0,dashboardComponent.dimensions=event.data.dimensions,dashboardComponent._calculateDimAfterDashboardLoaded();break;case`error`:dashboardComponent.dashboardError=!0,dashboardComponent._loadTimeoutHandle&&=(clearTimeout(dashboardComponent._loadTimeoutHandle),void 0),dashboardComponent.iframeLoaded=!0,dashboardComponent._displayError(),console.error(`Dashboard error:`,event.data.errorMsg??event.data.error?.msg);break;case`data`:resolvePromise(dashboardComponent,event.data.requestId,event.data.data);break;case`filters`:resolvePromise(dashboardComponent,event.data.requestId,event.data.filters);break;case`getAccessibleDashboards`:resolvePromise(dashboardComponent,event.data.requestId,event.data.accessibleDashboards);break;case`dashboardAction`:dashboardComponent.dispatchEvent(new CustomEvent(`dashboardAction`,{detail:{data:event.data}}));break;case`export`:event.data.error?rejectPromise(dashboardComponent,event.data.requestId,event.data):(dashboardComponent.dispatchEvent(new CustomEvent(`exported`,{detail:{data:event.data}})),resolvePromise(dashboardComponent,event.data.requestId,event.data));break;case`changedFilters`:dashboardComponent.dispatchEvent(new CustomEvent(`changedFilters`,{detail:{data:event.data}}));break;case`customEvent`:dashboardComponent.dispatchEvent(new CustomEvent(`customEvent`,{detail:{data:event.data}}));break;case`chartsRendered`:case`itemsRendered`:event.data.type=`itemsRendered`,dashboardComponent.dispatchEvent(new CustomEvent(`itemsRendered`,{detail:{data:event.data}}));break;case`setEditMode`:event.data.error?rejectPromise(dashboardComponent,event.data.requestId,event.data):(resolvePromise(dashboardComponent,event.data.requestId,event.data),dashboardComponent.params.editMode=event.data.editMode,dashboardComponent._containerStyle=containerStyles(dashboardComponent),dashboardComponent.dimensions&&_setCalculatedDimensions(dashboardComponent));break;case`calculatedDimensions`:dashboardComponent.dimensions=event.data.dimensions,_setCalculatedDimensions(dashboardComponent);break;case`setSelectedData`:case`setFilters`:event.data.error?rejectPromise(dashboardComponent,event.data.requestId,event.data):resolvePromise(dashboardComponent,event.data.requestId,event.data);break;case`setPreview`:event.data.error?rejectPromise(dashboardComponent,event.data.requestId,event.data):resolvePromise(dashboardComponent,event.data.requestId,event.data);break}},window.addEventListener(`message`,window.__luzmoMessageHandler,!1))},dashboardStyles=lit.css`
|
|
25
|
+
:host {
|
|
26
|
+
display: block;
|
|
27
|
+
height: 100%;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
@-webkit-keyframes spin {
|
|
31
|
+
0% {
|
|
32
|
+
-webkit-transform: rotate(0deg);
|
|
33
|
+
transform: rotate(0deg);
|
|
34
|
+
}
|
|
35
|
+
100% {
|
|
36
|
+
-webkit-transform: rotate(360deg);
|
|
37
|
+
transform: rotate(360deg);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
@keyframes spin {
|
|
42
|
+
0% {
|
|
43
|
+
-webkit-transform: rotate(0deg);
|
|
44
|
+
transform: rotate(0deg);
|
|
45
|
+
}
|
|
46
|
+
100% {
|
|
47
|
+
-webkit-transform: rotate(360deg);
|
|
48
|
+
transform: rotate(360deg);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
:host {
|
|
52
|
+
position: relative;
|
|
53
|
+
width: 100%;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.luzmo-embed-dashboard {
|
|
57
|
+
background: transparent;
|
|
58
|
+
padding: 0;
|
|
59
|
+
border: 0;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.luzmo-embed-dashboard-ede {
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
.luzmo-embed-container-ede {
|
|
66
|
+
width: 100%;
|
|
67
|
+
height: 100%;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
.luzmo-container-loader {
|
|
71
|
+
width: 100%;
|
|
72
|
+
position: relative;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
.luzmo-lc {
|
|
76
|
+
margin: 0 auto;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
.luzmo-loading-message {
|
|
80
|
+
width: 100%;
|
|
81
|
+
height: 20px;
|
|
82
|
+
text-align: center;
|
|
83
|
+
margin-bottom: 16px;
|
|
84
|
+
font-family: Helvetica, Arial, sans-serif;
|
|
85
|
+
font-size: 14px;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
.luzmo-loading-circle {
|
|
89
|
+
box-sizing: border-box;
|
|
90
|
+
margin: 16px auto;
|
|
91
|
+
position: relative;
|
|
92
|
+
text-indent: -9999em;
|
|
93
|
+
animation: spin 0.6s infinite linear;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.luzmo-loading-circle,
|
|
97
|
+
.luzmo-loading-circle:after {
|
|
98
|
+
border-radius: 50%;
|
|
99
|
+
width: 32px;
|
|
100
|
+
height: 32px;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.itemEmbedding:after {
|
|
104
|
+
width: 24px;
|
|
105
|
+
height: 24px;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
.luzmo-error {
|
|
109
|
+
background: transparent;
|
|
110
|
+
padding: 48px 0;
|
|
111
|
+
margin: 0 auto;
|
|
112
|
+
width: 80%;
|
|
113
|
+
border: 0;
|
|
114
|
+
text-align: center;
|
|
115
|
+
min-height: 192px;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.dashboard-error {
|
|
119
|
+
font-size: 30px;
|
|
120
|
+
background: transparent;
|
|
121
|
+
padding: 48px 0;
|
|
122
|
+
margin: 0 auto;
|
|
123
|
+
width: 80%;
|
|
124
|
+
border: 0;
|
|
125
|
+
text-align: center;
|
|
126
|
+
min-height: 192px;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
.luzmo-loader {
|
|
130
|
+
top: 0;
|
|
131
|
+
left: 0;
|
|
132
|
+
width: 100%;
|
|
133
|
+
min-height: 400px;
|
|
134
|
+
position: absolute;
|
|
135
|
+
transition-duration: 0.3s;
|
|
136
|
+
}
|
|
137
|
+
`,dashboardRemote=`DashboardApp`,LuzmoDashboard=class extends lit.LitElement{constructor(){super(),this.language=`auto`,this.editorLanguage=`auto`,this.screenMode=`auto`,this.switchScreenModeOnResize=!0,this.editMode=`view`,this.embedMode=`iframe`,this.iframeStyle={},this._containerStyle={},this._loaderStyle={},this._lcStyle={},this._loadingCircleStyle={},this._containerLoaderStyle={},this._loaderMsg=``,this._itemEmbedding=!1,this.browserError=!1,this.browserErrorMsg=``,this.dashboardError=!1,this.browserNotSupported=[],this.libVersion=version+`-wc-luzmo`,this.isLibraryLoaded=!1,this.currentAuthKey=null,this.currentAuthToken=null,this.isInitCalled=!1,this.attributesMap={dashboardId:`dashboard-id`,dashboardSlug:`dashboard-slug`,itemId:`item-id`,language:`language`,editorLanguage:`editorLanguage`,qeVersion:`qe-version`,screenMode:`screen-mode`,switchScreenModeOnResize:`switch-screen-mode-on-resize`,authKey:`auth-key`,authToken:`auth-token`,editMode:`edit-mode`,theme:`theme`,mainColor:`main-color`,accentColor:`accent-color`,loaderBackground:`loader-background`,loaderFontColor:`loader-font-color`,loaderSpinnerColor:`loader-spinner-color`,loaderSpinnerBackground:`loader-spinner-background`,appServer:`app-server`,apiHost:`api-host`,itemDimensions:`item-dimensions`,timezoneId:`timezone-id`},this.loaderSize=32,this.borderWidth=3,this.minHeight=400,this._containerId=uuidv4(),this._iframeId=`luzmo-dashboard-${this._containerId}`,this.iframeLoaded=!1,this.promises={},this.params=this._setOptions(),this._onResize=()=>{if(this.shadowRoot?.querySelector(`.dashboard-container`)){if(this.containerWidth=this.luzmoEmbedContainer.offsetWidth,this.params.switchScreenModeOnResize&&this.params.screenMode===`auto`)for(let d of EXTENTS)d.width[0]<=window.innerWidth&&window.innerWidth<=d.width[1]&&(this.currentScreenMode=d.mode);this.iframeLoaded?this._calculateDimAfterDashboardLoaded():this.dimensions&&(this.containerWidth=this.luzmoEmbedContainer.offsetWidth,_setCalculatedDimensions(this))}},this._resizeObserver=new ResizeObserver(entries=>{window.requestAnimationFrame(()=>{!Array.isArray(entries)||entries.length===0||this._onResize()})})}connectedCallback(){super.connectedCallback()}disconnectedCallback(){super.disconnectedCallback(),this._resizeObserver.disconnect();for(let promiseKey of Object.keys(this.promises))this.promises[promiseKey].reject(Error(`Dashboard component was removed`))}firstUpdated(){this._loaderMsg=getLoader(this)?.loadingMsg,this._loaderStyles(),luzmo_service_default._dashboardComponents.push(this),this.luzmoEmbedContainer&&this._resizeObserver.observe(this.luzmoEmbedContainer)}initComponent(){this.params=this._setOptions(),this.isWebComponentViewMode()?loadLibrary(this.params.appServer,dashboardRemote).then(async()=>{this.isLibraryLoaded=!0,await this.updateComplete;let oldReference=this.renderRoot.querySelector(`dashboard-component`);this.dashboardReference=oldReference.cloneNode(!0),oldReference.replaceWith(this.dashboardReference),this.dashboardReference.addEventListener(`load`,payload=>{this.containerWidth=this.dashboardReference.offsetWidth,this.dimensions=payload.detail.dimensions,_setCalculatedDimensions(this),window.dispatchEvent(new Event(`resize`)),this.dispatchEvent(new CustomEvent(`load`,payload))}),this.dashboardReference.addEventListener(`itemsRendered`,payload=>this.dispatchEvent(new CustomEvent(`itemsRendered`,payload))),this.dashboardReference.addEventListener(`customEvent`,payload=>this.dispatchEvent(new CustomEvent(`customEvent`,payload))),this.dashboardReference.addEventListener(`changedFilters`,payload=>this.dispatchEvent(new CustomEvent(`changedFilters`,payload))),this.dashboardReference.addEventListener(`dashboardAction`,payload=>this.dispatchEvent(new CustomEvent(`dashboardAction`,payload))),this.dashboardReference.addEventListener(`export`,payload=>this.dispatchEvent(new CustomEvent(`exported`,payload))),this.setAllAttributes()}):(this.containerWidth=this.container?.clientWidth,_extendAndValidate(this),_browserCheck(this),this._setupLoader(),this.params.error||(this._loaderStyles(),_setEventHandler(),this._iframeUrl=createIframeUrl(this),this.iframe?.setAttribute(`src`,this._iframeUrl),this.iframeStyle=calculateIframeStyles(this)))}setAllAttributes(){if(this.dashboardReference){for(let key in this.attributesMap)![`authKey`,`authToken`,`apiHost`,`itemDimensions`].includes(key)&&this.params[key]&&this.dashboardReference.setAttribute(this.attributesMap[key],this.params[key]);this.params.itemDimensions&&this.dashboardReference.setAttribute(`item-dimensions`,JSON.stringify(this.params.itemDimensions)),this.params.apiHost&&this.dashboardReference.setAttribute(`api-host`,removeTrailingSlash(this.params.apiHost)),this.params.key&&this.dashboardReference.setAttribute(`auth-key`,this.params.key),this.params.token&&this.dashboardReference.setAttribute(`auth-token`,this.params.token)}}updated(changedProperties){let triggerProperties=new Set([`dashboardId`,`dashboardSlug`,`itemId`,`language`,`editorLanguage`,`qeVersion`,`theme`,`editMode`,`screenMode`,`switchScreenModeOnResize`,`authToken`,`authKey`,`appServer`,`apiHost`,`timezoneId`,`itemDimensions`]),conditionsToCheck=[`dashboardId`,`dashboardSlug`,`itemId`],callInitComponent=!1;for(let condition of conditionsToCheck)callInitComponent||=changedProperties.get(condition)===void 0&&this[condition]!==void 0;if(callInitComponent&&!this.isInitCalled){this.initComponent(),this.isInitCalled=!0;return}if(this.isWebComponentViewMode()){if(this.dashboardReference){for(let[propertyName]of changedProperties.entries())if(propertyName===`appSever`)loadLibrary(changedProperties[propertyName],dashboardRemote).then(async()=>{this.isLibraryLoaded=!0,await this.updateComplete,this.dashboardReference=this.renderRoot.querySelector(`dashboard-component`),this.setAllAttributes()});else if(this.attributesMap[propertyName]){let mappedAttributeName=this.attributesMap[propertyName]??propertyName,attributeValue=typeof this[propertyName]==`object`?JSON.stringify(this[propertyName]):this[propertyName]?.toString()||this[propertyName];this.dashboardReference.setAttribute(mappedAttributeName,attributeValue)}}}else for(let[propertyName]of changedProperties.entries())triggerProperties.has(propertyName)&&propertyName!==`editMode`?(this.iframeLoaded=!1,this._loadTimeoutHandle&&clearTimeout(this._loadTimeoutHandle),this._loadTimeoutHandle=setTimeout(()=>{console.warn(`Failed to load dashboard, appServer is likely down or unreachable.`)},15*1e3),this.params=this._setOptions(),_extendAndValidate(this),this._setupLoader(),this._loaderStyles(),this._iframeUrl=createIframeUrl(this),this.iframe&&this._updateIframeUrl(),this.iframeStyle=calculateIframeStyles(this)):triggerProperties.has(propertyName)&&propertyName===`editMode`&&(this.iframeLoaded&&this.setEditMode(this.editMode),this.params=this._setOptions())}_setOptions(){let defaultParameters={dashboardId:this.dashboardId,dashboardSlug:this.dashboardSlug};return this.itemId?(defaultParameters.itemId=this.itemId,this._itemEmbedding=!0):this._itemEmbedding=!1,this.language&&(defaultParameters.language=this.language),this.editorLanguage&&(defaultParameters.editorLanguage=this.editorLanguage),this.qeVersion&&(defaultParameters.qeVersion=this.qeVersion),this.screenMode&&(defaultParameters.screenMode=this.screenMode),defaultParameters.switchScreenModeOnResize=this.switchScreenModeOnResize,this.authToken&&(defaultParameters.token=this.authToken),this.authKey&&(defaultParameters.key=this.authKey),this.editMode&&(defaultParameters.editMode=this.editMode),this.theme&&(defaultParameters.theme=this.theme),this.mainColor&&(defaultParameters.mainColor=this.mainColor),this.accentColor&&(defaultParameters.accentColor=this.accentColor),this.loaderBackground&&(defaultParameters.loaderBackground=this.loaderBackground),this.loaderFontColor&&(defaultParameters.loaderFontColor=this.loaderFontColor),this.loaderSpinnerColor&&(defaultParameters.loaderSpinnerColor=this.loaderSpinnerColor),this.loaderSpinnerBackground&&(defaultParameters.loaderSpinnerBackground=this.loaderSpinnerBackground),this.timezoneId&&(defaultParameters.timezoneId=this.timezoneId),this.itemDimensions&&(defaultParameters.itemDimensions=this.itemDimensions),this.appServer?(this.appServer=this.isWebComponentViewMode()?removeTrailingSlash(this.appServer):addTrailingSlash(this.appServer),defaultParameters.appServer=this.appServer):(this.appServer=addTrailingSlash(DEFAULT_PARAMETERS.appServer),defaultParameters.appServer=this.appServer),this.apiHost?(this.apiHost=this.isWebComponentViewMode()?removeTrailingSlash(this.apiHost):addTrailingSlash(this.apiHost),defaultParameters.apiHost=this.apiHost):(this.apiHost=this.appServer.includes(`luzmo.com`)?this.appServer.replace(`app`,`api`):this.appServer,defaultParameters.apiHost=this.apiHost),this.currentAuthKey=this.authKey,this.currentAuthToken=this.authToken,defaultParameters}_updateIframeUrl(){updateIframeUrl(this.iframe,this._iframeUrl)}_setupLoader(){let data=getLoader(this);this._loaderMsg=data.loadingMsg,data.errorMsg&&(this.browserError=!0,this.browserErrorMsg=data.errorMsg,this._displayError())}_displayError(){this.dashboardError&&(this._loaderStyles(),this.iframeStyle.opacity=1),this.browserError&&(this._containerStyle.display=`none`)}_calculateDimAfterDashboardLoaded(){this.dashboardError=!1,this._loaderStyles(),_setCalculatedDimensions(this)}_loaderStyles(){this._containerStyle=containerStyles(this),this._loaderStyle=loaderStyles(this),this._loadingCircleStyle=plStyles(this),this._containerLoaderStyle=containerLoaderStyles(this),this._lcStyle=lcStyles(this)}static get styles(){return[dashboardStyles]}render(){let toBeRenderedHTML,loader=lit.html`
|
|
138
|
+
<div
|
|
139
|
+
class="luzmo-container-loader"
|
|
140
|
+
id="luzmo-container-loader-${this._containerId}"
|
|
141
|
+
style=${(0,lit_directives_style_map_js.styleMap)(this._containerLoaderStyle)}
|
|
142
|
+
>
|
|
143
|
+
<div
|
|
144
|
+
class="luzmo-loader"
|
|
145
|
+
id="luzmo-loader-${this._containerId}"
|
|
146
|
+
style=${(0,lit_directives_style_map_js.styleMap)(this._loaderStyle)}
|
|
147
|
+
>
|
|
148
|
+
<div
|
|
149
|
+
class="luzmo-lc"
|
|
150
|
+
style=${(0,lit_directives_style_map_js.styleMap)(this._lcStyle)}
|
|
151
|
+
>
|
|
152
|
+
<div
|
|
153
|
+
class="luzmo-loading-circle"
|
|
154
|
+
style=${(0,lit_directives_style_map_js.styleMap)(this._loadingCircleStyle)}
|
|
155
|
+
></div>
|
|
156
|
+
${this._itemEmbedding?``:lit.html`
|
|
157
|
+
<div
|
|
158
|
+
class="luzmo-loading-message"
|
|
159
|
+
style=${(0,lit_directives_style_map_js.styleMap)({color:this.loaderFontColor})}
|
|
160
|
+
>
|
|
161
|
+
${this._loaderMsg}
|
|
162
|
+
</div>
|
|
163
|
+
`}
|
|
164
|
+
</div>
|
|
165
|
+
</div>
|
|
166
|
+
</div>
|
|
167
|
+
`;return toBeRenderedHTML=this.isWebComponentViewMode()?this.isLibraryLoaded?lit.html`
|
|
168
|
+
${this.dashboardId||this.dashboardSlug?lit.html`
|
|
169
|
+
<dashboard-component dashboard-id="${this.params.dashboardId}" app-server="${this.params.appServer}"
|
|
170
|
+
api-host="${this.params.apiHost}"></dashboard-component>
|
|
171
|
+
`:lit.html`
|
|
172
|
+
<div id="luzmo-error-${this._containerId}">
|
|
173
|
+
<h3 class="luzmo-error">${this.browserErrorMsg}</h3>
|
|
174
|
+
</div>
|
|
175
|
+
`}
|
|
176
|
+
`:lit.html`${loader}`:lit.html`
|
|
177
|
+
${this.dashboardId||this.dashboardSlug?lit.html`
|
|
178
|
+
${loader}
|
|
179
|
+
<iframe
|
|
180
|
+
class="luzmo-embed-dashboard ${this.isWebComponentViewMode()?``:`luzmo-embed-dashboard-ede`}"
|
|
181
|
+
id="${this._iframeId}"
|
|
182
|
+
name="${this._iframeId}"
|
|
183
|
+
style=${(0,lit_directives_style_map_js.styleMap)(this.iframeStyle)}
|
|
184
|
+
src="${this._iframeUrl}"
|
|
185
|
+
frameborder="0"
|
|
186
|
+
></iframe>
|
|
187
|
+
`:lit.html`<!-- the dashboard will inititialize when you provide a dashboardSlug or a dashboardId -->`}
|
|
188
|
+
${this.browserError?lit.html`
|
|
189
|
+
<div id="luzmo-error-${this._containerId}">
|
|
190
|
+
<h3 class="luzmo-error">${this.browserErrorMsg}</h3>
|
|
191
|
+
</div>
|
|
192
|
+
`:``}
|
|
193
|
+
`,lit.html`
|
|
194
|
+
<div class="${luzmoEmbedContainerClass} ${this.isWebComponentViewMode()?``:`${luzmoEmbedContainerClass}-ede`}">
|
|
195
|
+
<div
|
|
196
|
+
class="dashboard-container"
|
|
197
|
+
style=${(0,lit_directives_style_map_js.styleMap)(Object.assign({},this._containerStyle,{width:this.iframeStyle.width??`100%`,height:this.iframeStyle.height??`100%`}))}
|
|
198
|
+
>
|
|
199
|
+
${toBeRenderedHTML}
|
|
200
|
+
</div>
|
|
201
|
+
</div>
|
|
202
|
+
|
|
203
|
+
`}getDashboards(){return new Promise(resolve=>resolve(luzmo_service_default._dashboardComponents))}getData(itemId){return this.isWebComponentViewMode()&&this.dashboardReference?this.dashboardReference.getData(itemId):this.isWebComponentViewMode()?Promise.reject():getData(this,this.iframe,itemId)}getFilters(){return this.isWebComponentViewMode()&&this.dashboardReference?this.dashboardReference.getFilters():this.isWebComponentViewMode()?Promise.reject():getFilters(this,this.iframe)}setSelectedData(itemId,filters){return this.isWebComponentViewMode()&&this.dashboardReference?this.dashboardReference.setSelectedData(itemId,filters):this.isWebComponentViewMode()?Promise.reject():setSelectedData(this,this.iframe,itemId,filters)}setAuthorization(key,token){return this.currentAuthKey=key,this.currentAuthToken=token,this.isWebComponentViewMode()&&this.dashboardReference?this.dashboardReference.setAuthorization(key,token):this.isWebComponentViewMode()?Promise.reject():setAuthorization(this,this.iframe,key,token)}refreshData(itemId){return this.isWebComponentViewMode()&&this.dashboardReference?this.dashboardReference.refreshData(itemId):this.isWebComponentViewMode()?Promise.reject():itemId?refreshData(this,this.iframe,itemId):refreshData(this,this.iframe)}reloadDashboard(){return this.isWebComponentViewMode()&&this.dashboardReference?this.dashboardReference.reloadDashboard():this.isWebComponentViewMode()?Promise.reject():reloadDashboard(this,this.iframe)}exportDashboard(format){return this.isWebComponentViewMode()&&this.dashboardReference?this.dashboardReference.exportDashboard(format):this.isWebComponentViewMode()?Promise.reject():format?exportDashboard(this,this.iframe,format):exportDashboard(this,this.iframe)}getAccessibleDashboards(){return getAccessibleDashboards(this)}addFilters(itemId,filters){return this.dashboardReference.addFilters(itemId,filters)}setEditMode(editMode){return this.dashboardReference&&editMode===`view`?(this.editMode=`view`,this.params.editMode=`view`,this.initComponent(),Promise.resolve({type:`setEditMode`,editMode})):this.dashboardReference&&[`editFull`,`editLimited`].includes(editMode)?(this.editMode=editMode,this.params.editMode=editMode,this.initComponent(),Promise.resolve({type:`setEditMode`,editMode})):this.isWebComponentViewMode()&&this.dashboardReference?this.dashboardReference.setEditMode(editMode):this.isWebComponentViewMode()?Promise.reject():setEditMode(this,this.iframe,editMode)}setPreview(preview){return this.isWebComponentViewMode()&&this.dashboardReference?this.dashboardReference.setPreview(preview):setPreview(this,this.iframe,preview)}sendExportEmail(type,subject,message){return this.isWebComponentViewMode()&&this.dashboardReference?this.dashboardReference.sendExportEmail(type,subject,message):this.isWebComponentViewMode()?Promise.reject():sendExportEmail(this,this.iframe,type,subject,message)}isWebComponentViewMode(){return this.embedMode===`webComponent`&&(this.params.editMode===`view`||this.params.editMode===void 0)}};__decorateClass([(0,lit_decorators_js.query)(`.dashboard-container`)],LuzmoDashboard.prototype,`container`,2),__decorateClass([(0,lit_decorators_js.query)(`.${luzmoEmbedContainerClass}`)],LuzmoDashboard.prototype,`luzmoEmbedContainer`,2),__decorateClass([(0,lit_decorators_js.query)(`iframe`)],LuzmoDashboard.prototype,`iframe`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`dashboardId`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`dashboardSlug`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`itemId`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`language`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`editorLanguage`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`qeVersion`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`screenMode`,2),__decorateClass([(0,lit_decorators_js.property)({converter:{fromAttribute:value=>value===`true`,toAttribute:String}})],LuzmoDashboard.prototype,`switchScreenModeOnResize`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`editMode`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`theme`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`mainColor`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`accentColor`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`authToken`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`authKey`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`loaderBackground`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`loaderFontColor`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`loaderSpinnerColor`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`loaderSpinnerBackground`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`appServer`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`timezoneId`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`apiHost`,2),__decorateClass([(0,lit_decorators_js.property)({type:Object})],LuzmoDashboard.prototype,`itemDimensions`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`embedMode`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`_containerId`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`_iframeId`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`params`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`_iframeUrl`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`iframeLoaded`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`promises`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`iframeStyle`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`_containerStyle`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`_loaderStyle`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`_lcStyle`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`_loadingCircleStyle`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`_containerLoaderStyle`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`_loaderMsg`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`containerWidth`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`dimensions`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`currentScreenMode`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`_itemEmbedding`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`browserError`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`browserErrorMsg`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`dashboardError`,2),__decorateClass([(0,lit_decorators_js.property)({attribute:!1})],LuzmoDashboard.prototype,`browserNotSupported`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoDashboard.prototype,`libVersion`,2),__decorateClass([(0,lit_decorators_js.state)()],LuzmoDashboard.prototype,`isLibraryLoaded`,2),__decorateClass([(0,lit_decorators_js.state)()],LuzmoDashboard.prototype,`dashboardReference`,2),__decorateClass([(0,lit_decorators_js.state)()],LuzmoDashboard.prototype,`currentAuthKey`,2),__decorateClass([(0,lit_decorators_js.state)()],LuzmoDashboard.prototype,`currentAuthToken`,2),__decorateClass([(0,lit_decorators_js.state)()],LuzmoDashboard.prototype,`isInitCalled`,2);var LuzmoEmbedDashboard=class extends LuzmoDashboard{};customElements.get(`luzmo-embed-dashboard`)||customElements.define(`luzmo-embed-dashboard`,LuzmoEmbedDashboard);var dashboardContentsVersion=`0.1.99`,vizItemRemote=`VizItemApp`,LuzmoBaseVizItem=class extends lit.LitElement{constructor(){super(...arguments),this.appServer=`https://app.luzmo.com`,this.apiHost=`https://api.luzmo.com`,this.slots=[],this.version=version+`-wc-luzmo`,this.dashboardContentsVersion=dashboardContentsVersion,this.libVersion=version+`-wc-luzmo`,this.postInitCallQueue=[]}static{this.styles=lit.css`
|
|
204
|
+
:host {
|
|
205
|
+
display: block;
|
|
206
|
+
width: 100%;
|
|
207
|
+
height: 100%;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
luzmo-embed-viz-item {
|
|
211
|
+
width: 100%;
|
|
212
|
+
height: 1000%;
|
|
213
|
+
display: block;
|
|
214
|
+
}
|
|
215
|
+
`}createRenderRoot(){return this.style.display||(this.style.display=`block`),this.style.height||(this.style.height=`100%`),this.style.width||(this.style.width=`100%`),this}canInitializeVizItem(){return!!(this.type||this.dashboardId&&this.itemId)}getFilters(){return this.chartElement.getFilters()}export(type=`png`){return this.chartElement.export(type)}getData(){return this.chartElement.getData()}refreshData(){return this.chartElement.refreshData()}setSelectedData(selectedDataInput){return this.chartElement.setSelectedData(void 0,selectedDataInput)}setAuthorization(key,token){return this.chartElement.setAuthorization(key,token)}attributeChangedCallback(name,_old,value){super.attributeChangedCallback(name,_old,value),name===`selecteddata`&&(this.chartElement?this.setSelectedData(JSON.parse(value??`{}`)):this.postInitCallQueue.push([this.setSelectedData,[JSON.parse(value??`{}`)]]))}async firstUpdated(_changedProperties){super.firstUpdated(_changedProperties),this.canInitializeVizItem()&&(await loadLibrary(this.appServer,vizItemRemote),this.createAndAppendElement())}createAndAppendElement(){this.chartElement||(this.chartElement=document.createElement(`chart-component`),this.chartElement.setAttribute(`embedding-mode`,`chart`),this.chartElement.style.height=`100%`,this.chartElement.style.width=`100%`,this.chartElement.style.display=`block`,this.chartElement.addEventListener(`load`,payload=>this.dispatchEvent(new CustomEvent(`load`,payload))),this.chartElement.addEventListener(`rendered`,payload=>{if(this.postInitCallQueue?.length>0)for(let functionToCall of this.postInitCallQueue)functionToCall[0].bind(this)(...functionToCall[1]);else this.selectedData&&this.setSelectedData(this.selectedData);this.dispatchEvent(new CustomEvent(`rendered`,payload))}),this.chartElement.addEventListener(`changedFilters`,payload=>this.dispatchEvent(new CustomEvent(`changedFilters`,payload))),this.chartElement.addEventListener(`exported`,payload=>this.dispatchEvent(new CustomEvent(`exported`,payload))),this.chartElement.addEventListener(`customEvent`,payload=>this.dispatchEvent(new CustomEvent(`customEvent`,payload))),this.chartElement.addEventListener(`authorizationExpired`,payload=>this.dispatchEvent(new CustomEvent(`authorizationExpired`,payload))),this.updateVizItemProperties(),this.renderRoot.append(this.chartElement))}updateVizItemProperties(){if(this.chartElement)for(let key in libraryTypeToWebComponentTypeMapping){let value=this[key];if(value){let attributeValue=[`appServer`,`apiHost`].includes(key)?removeTrailingSlash(value):value;this.chartElement.setAttribute(libraryTypeToWebComponentTypeMapping[key],typeof attributeValue==`object`?JSON.stringify(attributeValue):attributeValue)}}}async updated(changedProperties){if(this.chartElement)for(let[propertyName]of changedProperties.entries()){let mappedAttributeName=libraryTypeToWebComponentTypeMapping[propertyName]??propertyName,attributeValue=typeof this[propertyName]==`object`?JSON.stringify(this[propertyName]):this[propertyName]?.toString()??this[propertyName];this.chartElement.setAttribute(mappedAttributeName,attributeValue)}else this.canInitializeVizItem()&&(await loadLibrary(this.appServer,vizItemRemote),this.createAndAppendElement())}render(){return lit.html` `}};__decorateClass([(0,lit_decorators_js.property)()],LuzmoBaseVizItem.prototype,`appServer`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoBaseVizItem.prototype,`apiHost`,2),__decorateClass([(0,lit_decorators_js.property)({type:Array})],LuzmoBaseVizItem.prototype,`slots`,2),__decorateClass([(0,lit_decorators_js.property)({type:Object})],LuzmoBaseVizItem.prototype,`options`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoBaseVizItem.prototype,`type`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoBaseVizItem.prototype,`authKey`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoBaseVizItem.prototype,`authToken`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoBaseVizItem.prototype,`version`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoBaseVizItem.prototype,`contextId`,2),__decorateClass([(0,lit_decorators_js.property)({converter:value=>{try{return JSON.parse(value)}catch{return value}}})],LuzmoBaseVizItem.prototype,`canFilter`,2),__decorateClass([(0,lit_decorators_js.property)({type:Array})],LuzmoBaseVizItem.prototype,`filters`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoBaseVizItem.prototype,`dashboardId`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoBaseVizItem.prototype,`itemId`,2),__decorateClass([(0,lit_decorators_js.property)({type:Object})],LuzmoBaseVizItem.prototype,`selectedData`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoBaseVizItem.prototype,`dashboardContentsVersion`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoBaseVizItem.prototype,`libVersion`,2);var LuzmoEmbedVizItem=class extends LuzmoBaseVizItem{};customElements.get(`luzmo-embed-viz-item`)||customElements.define(`luzmo-embed-viz-item`,LuzmoEmbedVizItem);var inputMap={aiEndpoint:`ai-endpoint`,appServer:`app-server`,apiHost:`api-host`,options:`options`,initialSuggestionsDatasetId:`initialSuggestionsDatasetId`,authKey:`auth-key`,authToken:`auth-token`,version:`version`,libVersion:`lib-version`,aydHost:`ayd-host`,availableDatasets:`available-datasets`},embedChatTag=`luzmo-iq-embed-chat`,chatComponentTag=`luzmo-iq-chat-component`,LuzmoIQEmbedChatComponent=class extends lit.LitElement{constructor(){super(...arguments),this.appServer=`https://app.luzmo.com`,this.apiHost=`https://api.luzmo.com`,this.version=version+`-wc-luzmo`,this.libVersion=version+`-wc-luzmo`,this.remoteEntryServer=`http://localhost:4202/`,this.aydHost=`https://ayd.luzmo.com/`}static{this.styles=lit.css`
|
|
216
|
+
:host {
|
|
217
|
+
display: block;
|
|
218
|
+
width: 100%;
|
|
219
|
+
height: 100%;
|
|
220
|
+
}
|
|
221
|
+
`}createRenderRoot(){return this}async firstUpdated(_changedProperties){super.firstUpdated(_changedProperties),await loadLibrary(this.calculatedAppServer,`IQApp`),this.createAndAppendElement()}get calculatedAppServer(){return this.appServer.startsWith(`http://localhost`)?this.remoteEntryServer:this.appServer}createAndAppendElement(){this.chartElement||(this.chartElement=document.createElement(chatComponentTag),this.chartElement.addEventListener(`load`,payload=>this.dispatchEvent(new CustomEvent(`load`,payload))),this.updateVizItemProperties(),this.renderRoot.append(this.chartElement))}updateVizItemProperties(){if(this.chartElement)for(let key in inputMap){let value=this[key];if(value){let attributeValue=[`appServer`,`apiHost`,`aydHost`].includes(key)?removeTrailingSlash(value):value;this.chartElement.setAttribute(inputMap[key],typeof attributeValue==`object`?JSON.stringify(attributeValue):attributeValue)}}}async updated(changedProperties){if(this.chartElement)for(let[propertyName]of changedProperties.entries()){let mappedAttributeName=inputMap[propertyName]??propertyName,attributeValue=typeof this[propertyName]==`object`?JSON.stringify(this[propertyName]):this[propertyName]?.toString()??this[propertyName];this.chartElement.setAttribute(mappedAttributeName,attributeValue)}else await loadLibrary(this.calculatedAppServer,`IQApp`),this.createAndAppendElement()}render(){return lit.html``}connectedCallback(){super.connectedCallback();let embedChat=document.querySelector(embedChatTag);if(!embedChat)return;let observer=new MutationObserver(()=>{let customChatWidgetContentSlot=embedChat.querySelector(`*[slot="custom-chat-widget-content"]`);if(!customChatWidgetContentSlot)return;let chatElement=embedChat.querySelector(chatComponentTag);chatElement&&(chatElement.append(customChatWidgetContentSlot),observer.disconnect())});observer.observe(embedChat,{childList:!0,subtree:!0})}};__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedChatComponent.prototype,`appServer`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedChatComponent.prototype,`apiHost`,2),__decorateClass([(0,lit_decorators_js.property)({type:Object})],LuzmoIQEmbedChatComponent.prototype,`options`,2),__decorateClass([(0,lit_decorators_js.property)({type:String})],LuzmoIQEmbedChatComponent.prototype,`initialSuggestionsDatasetId`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedChatComponent.prototype,`aiEndpoint`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedChatComponent.prototype,`authKey`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedChatComponent.prototype,`authToken`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedChatComponent.prototype,`version`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedChatComponent.prototype,`libVersion`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedChatComponent.prototype,`remoteEntryServer`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedChatComponent.prototype,`aydHost`,2),__decorateClass([(0,lit_decorators_js.property)({type:Array})],LuzmoIQEmbedChatComponent.prototype,`availableDatasets`,2),customElements.get(embedChatTag)||customElements.define(embedChatTag,LuzmoIQEmbedChatComponent);var inputMap2={aiEndPoint:`ai-end-point`,appServer:`app-server`,apiHost:`api-host`,options:`options`,authKey:`auth-key`,authToken:`auth-token`,version:`version`,libVersion:`lib-version`,messages:`messages`},componentTag=`luzmo-iq-embed-answer`,LuzmoIQEmbedAnswerComponent=class extends lit.LitElement{constructor(){super(...arguments),this.appServer=`https://app.luzmo.com`,this.apiHost=`https://api.luzmo.com`,this.version=version+`-wc-luzmo`,this.libVersion=version+`-wc-luzmo`,this.remoteEntryServer=`http://localhost:4202`}static{this.styles=lit.css`
|
|
222
|
+
:host {
|
|
223
|
+
display: block;
|
|
224
|
+
width: 100%;
|
|
225
|
+
height: 100%;
|
|
226
|
+
}
|
|
227
|
+
`}createRenderRoot(){return this}async firstUpdated(_changedProperties){super.firstUpdated(_changedProperties),await loadLibrary(this.calculatedAppServer,`IQApp`),this.createAndAppendElement()}get calculatedAppServer(){return this.appServer.startsWith(`http://localhost`)?this.remoteEntryServer:this.appServer}createAndAppendElement(){this.chartElement||(this.chartElement=document.createElement(`luzmo-iq-answer-component`),this.chartElement.addEventListener(`addQuestion`,payload=>this.dispatchEvent(new CustomEvent(`addQuestion`,payload))),this.chartElement.addEventListener(`addAnswer`,payload=>this.dispatchEvent(new CustomEvent(`addAnswer`,payload))),this.updateVizItemProperties(),this.renderRoot.append(this.chartElement))}updateVizItemProperties(){if(this.chartElement)for(let key in inputMap2){let value=this[key];if(value){let attributeValue=[`appServer`,`apiHost`].includes(key)?removeTrailingSlash(value):value;this.chartElement.setAttribute(inputMap2[key],typeof attributeValue==`object`?JSON.stringify(attributeValue):attributeValue)}}}async updated(changedProperties){if(this.chartElement)for(let[propertyName]of changedProperties.entries()){let mappedAttributeName=inputMap2[propertyName]??propertyName,attributeValue=typeof this[propertyName]==`object`?JSON.stringify(this[propertyName]):this[propertyName]?.toString()??this[propertyName];this.chartElement.setAttribute(mappedAttributeName,attributeValue)}else await loadLibrary(this.calculatedAppServer,`IQApp`),this.createAndAppendElement()}render(){return lit.html` `}};__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedAnswerComponent.prototype,`appServer`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedAnswerComponent.prototype,`apiHost`,2),__decorateClass([(0,lit_decorators_js.property)({type:Object})],LuzmoIQEmbedAnswerComponent.prototype,`options`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedAnswerComponent.prototype,`aiEndPoint`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedAnswerComponent.prototype,`authKey`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedAnswerComponent.prototype,`authToken`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedAnswerComponent.prototype,`messages`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedAnswerComponent.prototype,`version`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedAnswerComponent.prototype,`libVersion`,2),__decorateClass([(0,lit_decorators_js.property)()],LuzmoIQEmbedAnswerComponent.prototype,`remoteEntryServer`,2),customElements.get(componentTag)||customElements.define(componentTag,LuzmoIQEmbedAnswerComponent),lit.LitElement.disableWarning?.(`change-in-update`);var gridstack_min_default=`.grid-stack{position:relative}.grid-stack-rtl{direction:ltr}.grid-stack-rtl>.grid-stack-item{direction:rtl}.grid-stack-placeholder>.placeholder-content{background-color:#0000001a;width:auto;margin:0;position:absolute;z-index:0!important}.grid-stack>.grid-stack-item{width:var(--gs-column-width);height:var(--gs-cell-height);padding:0;position:absolute;top:0;left:0}.grid-stack>.grid-stack-item>.grid-stack-item-content{width:auto;margin:0;position:absolute;overflow:hidden auto}.grid-stack>.grid-stack-item.size-to-content:not(.size-to-content-max)>.grid-stack-item-content{overflow-y:hidden}.grid-stack>.grid-stack-item>.grid-stack-item-content,.grid-stack>.grid-stack-placeholder>.placeholder-content{top:var(--gs-item-margin-top);right:var(--gs-item-margin-right);bottom:var(--gs-item-margin-bottom);left:var(--gs-item-margin-left)}.grid-stack-item>.ui-resizable-handle{-ms-touch-action:none;touch-action:none;font-size:.1px;display:block;position:absolute}.grid-stack-item.ui-resizable-autohide>.ui-resizable-handle,.grid-stack-item.ui-resizable-disabled>.ui-resizable-handle{display:none}.grid-stack-item>.ui-resizable-ne,.grid-stack-item>.ui-resizable-nw,.grid-stack-item>.ui-resizable-se,.grid-stack-item>.ui-resizable-sw{background-image:url("data:image/svg+xml;utf8,<svg xmlns=\\"http://www.w3.org/2000/svg\\" fill=\\"none\\" stroke=\\"%23666\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" viewBox=\\"0 0 20 20\\"><path d=\\"m10 3 2 2H8l2-2v14l-2-2h4l-2 2\\"/></svg>");background-position:50%;background-repeat:no-repeat}.grid-stack-item>.ui-resizable-ne,.grid-stack-item>.ui-resizable-sw{transform:rotate(45deg)}.grid-stack-item>.ui-resizable-nw,.grid-stack-item>.ui-resizable-se{transform:rotate(-45deg)}.grid-stack-item>.ui-resizable-nw{cursor:nw-resize;width:20px;height:20px;top:var(--gs-item-margin-top);left:var(--gs-item-margin-left)}.grid-stack-item>.ui-resizable-n{cursor:n-resize;height:10px;top:var(--gs-item-margin-top);left:25px;right:25px}.grid-stack-item>.ui-resizable-ne{cursor:ne-resize;width:20px;height:20px;top:var(--gs-item-margin-top);right:var(--gs-item-margin-right)}.grid-stack-item>.ui-resizable-e{cursor:e-resize;width:10px;top:15px;bottom:15px;right:var(--gs-item-margin-right)}.grid-stack-item>.ui-resizable-se{cursor:se-resize;width:20px;height:20px;bottom:var(--gs-item-margin-bottom);right:var(--gs-item-margin-right)}.grid-stack-item>.ui-resizable-s{cursor:s-resize;height:10px;left:25px;bottom:var(--gs-item-margin-bottom);right:25px}.grid-stack-item>.ui-resizable-sw{cursor:sw-resize;width:20px;height:20px;bottom:var(--gs-item-margin-bottom);left:var(--gs-item-margin-left)}.grid-stack-item>.ui-resizable-w{cursor:w-resize;width:10px;top:15px;bottom:15px;left:var(--gs-item-margin-left)}.grid-stack-item.ui-draggable-dragging>.ui-resizable-handle{display:none!important}.grid-stack-item.ui-draggable-dragging{will-change:left,top}.grid-stack-item.ui-resizable-resizing{will-change:width,height}.ui-draggable-dragging,.ui-resizable-resizing{z-index:10000}.ui-draggable-dragging>.grid-stack-item-content,.ui-resizable-resizing>.grid-stack-item-content{opacity:.8;box-shadow:1px 4px 6px #0003}.grid-stack-animate,.grid-stack-animate .grid-stack-item{transition:left .3s,top .3s,height .3s,width .3s}.grid-stack-animate .grid-stack-item.grid-stack-placeholder,.grid-stack-animate .grid-stack-item.ui-draggable-dragging,.grid-stack-animate .grid-stack-item.ui-resizable-resizing{transition:left,top,height,width}.grid-stack>.grid-stack-item[gs-y="0"]{top:0}.grid-stack>.grid-stack-item[gs-x="0"]{left:0}`,DEFAULT_ACTIONS={lock:{icon:_luzmo_icons.luzmoLockOutline,label:`Lock`,tooltip:`Lock`,action:`lock`,type:`toggle`},edit:{icon:_luzmo_icons.luzmoPencil,label:`Edit`,tooltip:`Edit`,action:`edit`,type:`toggle`},"edit-data":{icon:_luzmo_icons.luzmoTable,label:`Edit data`,tooltip:`Data`,action:`edit-data`,type:`toggle`},"item-options":{icon:_luzmo_icons.luzmoCog,label:`Item options`,tooltip:`Options`,action:`item-options`,type:`toggle`},filters:{icon:_luzmo_icons.luzmoFilterOutline,label:`Filters`,tooltip:`Filters`,action:`filters`,type:`toggle`},clone:{icon:_luzmo_icons.luzmoClone,label:`Clone`,tooltip:`Clone`,action:`clone`,type:`button`},delete:{icon:_luzmo_icons.luzmoTrashOutline,label:`Delete`,tooltip:`Delete`,action:`delete`,type:`button`}};const generateActionsMenu=data=>{if(data)return structuredClone(data).map(group=>{if(group.type===`group`)return group.actions=group.actions??[],group.actions=group.actions.map(action=>{if(typeof action==`string`&&Object.hasOwn(DEFAULT_ACTIONS,action))return{...DEFAULT_ACTIONS[action]};if(typeof action==`object`)return action.icon=action.icon??_luzmo_icons.luzmoCircle,action.label=action.label??action.action,action.tooltip=action.tooltip??action.label??action.action,action.type=[`toggle`,`button`].includes(action.type??``)?action.type:`button`,action}).filter(Boolean),group}).filter(Boolean)},defaultActionsMenu=()=>[{type:`group`,actions:[{...DEFAULT_ACTIONS[`edit-data`]},{...DEFAULT_ACTIONS[`item-options`]},{...DEFAULT_ACTIONS.clone}]},{type:`group`,actions:[{...DEFAULT_ACTIONS.delete}]}];var item_grid_item_actions_menu_module_default=`:host{--luzmo-action-button-content-color-default:var(--luzmo-item-grid-item-action-button-content-color-default,#fff);--luzmo-action-button-content-color-hover:var(--luzmo-item-grid-item-action-button-content-color-hover,#fff);--luzmo-action-button-content-color-down:var(--luzmo-item-grid-item-action-button-content-color-down,#fff);--luzmo-action-button-content-color-focus:var(--luzmo-item-grid-item-action-button-content-color-focus,#fff);--luzmo-action-button-background-color-default:var(--luzmo-item-grid-item-action-button-background-color-default,#333);--luzmo-action-button-background-color-hover:var(--luzmo-item-grid-item-action-button-background-color-hover,#444);--luzmo-action-button-background-color-down:var(--luzmo-item-grid-item-action-button-background-color-down,#555);--luzmo-action-button-background-color-focus:var(--luzmo-item-grid-item-action-button-background-color-focus,#666);--grid-item-actions-flex-direction:column;display:block}.action-buttons{gap:var(--luzmo-item-grid-item-action-group-gap,.5rem);flex-direction:var(--luzmo-item-grid-item-actions-flex-direction,var(--grid-item-actions-flex-direction));outline:none;display:flex}.action-button[selected]{--luzmo-action-button-background-color-default:var(--luzmo-primary);--luzmo-action-button-background-color-hover:var(--luzmo-primary-hover);--luzmo-action-button-background-color-down:var(--luzmo-primary-down);--luzmo-action-button-background-color-focus:var(--luzmo-primary-focus);--luzmo-action-button-content-color-default:var(--luzmo-primary-inverse-color);--luzmo-action-button-content-color-hover:var(--luzmo-primary-inverse-color);--luzmo-action-button-content-color-down:var(--luzmo-primary-inverse-color);--luzmo-action-button-content-color-focus:var(--luzmo-primary-inverse-color)}:host .action-buttons{--luzmo-action-button-content-color-default:var(--luzmo-item-grid-item-action-button-content-color-default,#fff);--luzmo-action-button-content-color-hover:var(--luzmo-item-grid-item-action-button-content-color-hover,#fff);--luzmo-action-button-content-color-down:var(--luzmo-item-grid-item-action-button-content-color-down,#fff);--luzmo-action-button-content-color-focus:var(--luzmo-item-grid-item-action-button-content-color-focus,#fff);--luzmo-action-button-background-color-default:var(--luzmo-item-grid-item-action-button-background-color-default,#333);--luzmo-action-button-background-color-hover:var(--luzmo-item-grid-item-action-button-background-color-hover,#444);--luzmo-action-button-background-color-down:var(--luzmo-item-grid-item-action-button-background-color-down,#555);--luzmo-action-button-background-color-focus:var(--luzmo-item-grid-item-action-button-background-color-focus,#666)}.delete-button{--luzmo-action-button-background-color-hover:var(--luzmo-item-grid-item-delete-button-background-color-hover,var(--luzmo-negative-color));--luzmo-action-button-content-color-hover:var(--luzmo-item-grid-item-delete-button-content-color-hover,#fff);--luzmo-action-button-background-color-focus:var(--luzmo-item-grid-item-delete-button-background-color-focus,var(--luzmo-negative-color-focus));--luzmo-action-button-content-color-focus:var(--luzmo-item-grid-item-delete-button-content-color-focus,#fff);--luzmo-action-button-background-color-down:var(--luzmo-item-grid-item-delete-button-background-color-down,var(--luzmo-negative-color-down));--luzmo-action-button-content-color-down:var(--luzmo-item-grid-item-delete-button-content-color-down,#fff)}:host([placement=top-start]),:host([placement=top]),:host([placement=top-end]),:host([placement=bottom-start]),:host([placement=bottom]),:host([placement=bottom-end]){--grid-item-actions-flex-direction:row}`,LuzmoItemGridItemActionsMenu=class extends require_localized_mixin.t(_luzmo_lucero_utils.LuzmoElement){constructor(..._args){super(..._args),this.placement=`right-start`,this.actions=defaultActionsMenu()}static get styles(){return[(0,lit.unsafeCSS)(item_grid_item_actions_menu_module_default)]}get isVertical(){return this.placement.includes(`left`)||this.placement.includes(`right`)}_dispatchAction(action){this.dispatchEvent(new CustomEvent(`luzmo-item-grid-item-action`,{bubbles:!0,composed:!0,detail:{action:action.action,type:action.type,active:action.active}}))}_handleActionClick(action){action.type===`toggle`&&(action.active=!action.active,this.actions.forEach(group=>{group.actions?.forEach(a=>{action!==a&&a.active&&(a.active=!1)})})),this._dispatchAction(action),this.requestUpdate()}clearActiveToggles(){this.actions=this.actions.map(group=>({...group,actions:group.actions?.map(action=>(action.type===`toggle`&&(action.active=!1),action))??[]}))}focus(){let toggleButtons=this.shadowRoot?.querySelectorAll(`luzmo-action-button[toggles]`);toggleButtons&&toggleButtons[0]?.focus()}_generateActionButton(action){let tooltip={Data:(0,_lit_localize.msg)(`Data`,{desc:`Grid item action tooltip`}),Options:(0,_lit_localize.msg)(`Options`,{desc:`Grid item action tooltip`}),Clone:(0,_lit_localize.msg)(`Clone`,{desc:`Grid item action tooltip`}),Delete:(0,_lit_localize.msg)(`Delete`,{desc:`Grid item action tooltip`}),Edit:(0,_lit_localize.msg)(`Edit`,{desc:`Grid item action tooltip`}),Lock:(0,_lit_localize.msg)(`Lock`,{desc:`Grid item action tooltip`}),Filters:(0,_lit_localize.msg)(`Filters`,{desc:`Grid item action tooltip`})};return lit.html`
|
|
228
|
+
<luzmo-action-button
|
|
229
|
+
class="${action.action}-button action-button"
|
|
230
|
+
.label=${action.label}
|
|
231
|
+
?toggles=${action.type===`toggle`}
|
|
232
|
+
?selected=${action.type===`toggle`&&action.active}
|
|
233
|
+
@click=${this._handleActionClick.bind(this,action)}
|
|
234
|
+
>
|
|
235
|
+
<luzmo-icon slot="icon" .icon=${action.icon} size="s"></luzmo-icon>
|
|
236
|
+
${action.tooltip?lit.html`
|
|
237
|
+
<luzmo-tooltip
|
|
238
|
+
self-managed
|
|
239
|
+
delayed
|
|
240
|
+
placement=${this.placement?.includes(`right`)?`right`:this.placement?.includes(`left`)?`left`:this.placement?.includes(`bottom`)?`bottom`:this.placement?.includes(`top`)?`top`:`right`}
|
|
241
|
+
>
|
|
242
|
+
${tooltip[action.tooltip]??action.tooltip}
|
|
243
|
+
</luzmo-tooltip>
|
|
244
|
+
`:``}
|
|
245
|
+
</luzmo-action-button>
|
|
246
|
+
`}_generateActionGroup(group){let actions=group?.actions?.map(action=>this._generateActionButton(action))??[];return actions.length>0?lit.html`
|
|
247
|
+
<luzmo-action-group ?vertical=${this.isVertical} compact
|
|
248
|
+
>${actions}</luzmo-action-group
|
|
249
|
+
>
|
|
250
|
+
`:lit.html`
|
|
251
|
+
|
|
252
|
+
`}render(){return lit.html`
|
|
253
|
+
<div class="action-buttons" tabindex="0">${this.actions.map(group=>this._generateActionGroup(group))}</div>
|
|
254
|
+
`}};require_decorate.t([(0,lit_decorators_js.property)({type:String,reflect:!0})],LuzmoItemGridItemActionsMenu.prototype,`placement`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:Array})],LuzmoItemGridItemActionsMenu.prototype,`actions`,void 0),LuzmoItemGridItemActionsMenu=require_decorate.t([(0,_lit_localize.localized)()],LuzmoItemGridItemActionsMenu);var item_grid_module_default=`:host{width:100%;display:block}.grid-stack{width:100%;min-height:var(--luzmo-item-grid-min-height);background:var(--luzmo-item-grid-background,var(--grid-background,var(--luzmo-background-color)));position:relative}.grid-stack[has-active-item] .grid-stack-item:not([active])>.grid-stack-item-content,.grid-stack[has-active-item] .grid-stack-item:not([active])>.grid-item-actions-popover{opacity:.5}.grid-stack .grid-stack-item[active]>.ui-resizable-handle,.grid-stack .grid-stack-item[active].ui-resizable-autohide>.ui-resizable-handle{display:block}.grid-stack .grid-stack-item.ui-resizable-resizing,.grid-stack .grid-stack-item.ui-resizable-resizing>.grid-stack-item-content{opacity:var(--luzmo-item-grid-item-resizing-opacity,.8)!important}.grid-item-drag-handle{color:var(--luzmo-item-grid-item-drag-handle-color,#000);top:var(--luzmo-item-grid-item-drag-handle-position-top,0);left:var(--luzmo-item-grid-item-drag-handle-position-left,0);right:var(--luzmo-item-grid-item-drag-handle-position-right,auto);bottom:var(--luzmo-item-grid-item-drag-handle-position-bottom,auto);padding:var(--luzmo-item-grid-item-drag-handle-padding,.5rem);z-index:var(--luzmo-item-grid-item-drag-handle-z-index,3);cursor:var(--luzmo-item-grid-item-drag-handle-cursor,move);position:absolute}.grid-stack[dark-background] .grid-item-drag-handle{color:var(--luzmo-item-grid-item-drag-handle-color,#fff)}.grid-stack .grid-stack-item .grid-stack-item-content{border-radius:var(--luzmo-item-grid-item-border-radius,var(--grid-item-border-radius,4px));background:var(--luzmo-item-grid-item-background,var(--grid-item-background,transparent));box-shadow:var(--luzmo-item-grid-item-box-shadow,var(--grid-item-box-shadow,none));border-style:var(--luzmo-item-grid-item-border-style,none);border-color:var(--luzmo-item-grid-item-border-color,transparent);-webkit-backdrop-filter:var(--luzmo-item-grid-item-backdrop-filter,none);backdrop-filter:var(--luzmo-item-grid-item-backdrop-filter,none);overflow:hidden}.grid-stack .grid-stack-item:not(.has-luzmo-viz-item) .grid-stack-item-content{border-style:var(--luzmo-item-grid-item-border-style,var(--grid-item-border-style,none));border-color:var(--luzmo-item-grid-item-border-color,var(--grid-item-border-color,transparent));border-width:var(--luzmo-item-grid-item-border-width,var(--grid-item-border-width,0));border-top-width:var(--luzmo-item-grid-item-border-top-width,var(--grid-item-border-top-width,0));border-right-width:var(--luzmo-item-grid-item-border-right-width,var(--grid-item-border-right-width,0));border-bottom-width:var(--luzmo-item-grid-item-border-bottom-width,var(--grid-item-border-bottom-width,0));border-left-width:var(--luzmo-item-grid-item-border-left-width,var(--grid-item-border-left-width,0))}.grid-stack .grid-stack-placeholder>.placeholder-content{border-radius:var(--grid-item-border-radius,4px)}:host .grid-stack-item[active]>.ui-resizable-handle,:host .grid-stack-item:hover>.ui-resizable-handle{z-index:var(--luzmo-item-grid-resize-handle-z-index,100);background:var(--luzmo-item-grid-resize-handle-background,#fff);border-radius:var(--luzmo-item-grid-resize-handle-border-radius,3px);opacity:var(--luzmo-item-grid-resize-handle-opacity,0);transition:var(--luzmo-item-grid-resize-handle-transition,opacity .2s ease);box-shadow:0 0 6px #0000001a,0 0 2px #000000bf;display:block!important;position:absolute!important}:host .grid-stack[dark-background]>.grid-stack-item[active]>.ui-resizable-handle,:host .grid-stack[dark-background]>.grid-stack-item:hover>.ui-resizable-handle{background:var(--luzmo-item-grid-resize-handle-background,#333);box-shadow:0 0 6px #ffffff1a,0 0 2px #ffffffbf}:host .grid-stack-item[active]>.ui-resizable-handle,:host .grid-stack-item:hover>.ui-resizable-handle{opacity:var(--luzmo-item-grid-resize-handle-opacity-hover,1)}:host .grid-stack-item>.ui-resizable-handle:hover{opacity:var(--luzmo-item-grid-resize-handle-opacity-active,1);background:var(--luzmo-item-grid-resize-handle-background-hover,var(--luzmo-background-color-highlight))}:host .grid-stack-item>.ui-resizable-n,:host .grid-stack-item>.ui-resizable-s{height:var(--luzmo-item-grid-resize-handle-edge-size,8px);width:var(--luzmo-item-grid-resize-handle-side-size,18px);left:calc(50% - var(--luzmo-item-grid-resize-handle-side-size,18px)/2)}:host .grid-stack-item>.ui-resizable-n{cursor:n-resize;top:calc(var(--luzmo-item-grid-resize-handle-edge-offset,-4px) + var(--gs-item-margin-top,0px))}:host .grid-stack-item>.ui-resizable-s{cursor:s-resize;bottom:calc(var(--luzmo-item-grid-resize-handle-edge-offset,-4px) + var(--gs-item-margin-bottom,0px))}:host .grid-stack-item>.ui-resizable-e,:host .grid-stack-item>.ui-resizable-w{width:var(--luzmo-item-grid-resize-handle-edge-size,8px);height:var(--luzmo-item-grid-resize-handle-side-size,18px);top:calc(50% - var(--luzmo-item-grid-resize-handle-side-size,18px)/2)}:host .grid-stack-item>.ui-resizable-e{cursor:e-resize;right:calc(var(--luzmo-item-grid-resize-handle-edge-offset,-4px) + var(--gs-item-margin-right,0px))}:host .grid-stack-item>.ui-resizable-w{cursor:w-resize;left:calc(var(--luzmo-item-grid-resize-handle-edge-offset,-4px) + var(--gs-item-margin-left,0px))}:host .grid-stack-item>.ui-resizable-ne,:host .grid-stack-item>.ui-resizable-nw,:host .grid-stack-item>.ui-resizable-se,:host .grid-stack-item>.ui-resizable-sw{width:var(--luzmo-item-grid-resize-handle-corner-size,12px);height:var(--luzmo-item-grid-resize-handle-corner-size,12px);background-image:none;transform:none}:host .grid-stack-item>.ui-resizable-ne{cursor:ne-resize;top:calc(var(--luzmo-item-grid-resize-handle-edge-offset,-6px) + var(--gs-item-margin-top,0px));right:calc(var(--luzmo-item-grid-resize-handle-edge-offset,-6px) + var(--gs-item-margin-right,0px))}:host .grid-stack-item>.ui-resizable-nw{cursor:nw-resize;top:calc(var(--luzmo-item-grid-resize-handle-edge-offset,-6px) + var(--gs-item-margin-top,0px));left:calc(var(--luzmo-item-grid-resize-handle-edge-offset,-6px) + var(--gs-item-margin-left,0px))}:host .grid-stack-item>.ui-resizable-se{cursor:se-resize;right:calc(var(--luzmo-item-grid-resize-handle-corner-offset,-4px) + var(--gs-item-margin-right,0px));bottom:calc(var(--luzmo-item-grid-resize-handle-corner-offset,-4px) + var(--gs-item-margin-bottom,0px))}:host .grid-stack-item>.ui-resizable-sw{cursor:sw-resize;left:calc(var(--luzmo-item-grid-resize-handle-corner-offset,-4px) + var(--gs-item-margin-left,0px));bottom:calc(var(--luzmo-item-grid-resize-handle-corner-offset,-4px) + var(--gs-item-margin-bottom,0px))}:host .grid-stack-item>.ui-resizable-resizing .ui-resizable-handle{background:var(--luzmo-item-grid-resize-handle-background-active,var(--luzmo-background-color-highlight));opacity:1!important}.grid-item-actions-popover{z-index:2;background:0 0;border:none;outline:none;margin:0;padding:0;position:absolute;overflow:visible}luzmo-item-grid-item-actions-menu{padding:var(--luzmo-item-grid-item-actions-padding,var(--grid-item-actions-padding))}.dimensions-hint-popover{font-size:var(--luzmo-item-grid-item-dimensions-hint-font-size,var(--luzmo-font-size-xs,10px));font-family:var(--luzmo-item-grid-item-dimensions-hint-font-family,var(--luzmo-font-family,inherit));border-width:var(--luzmo-item-grid-item-dimensions-hint-border-width,var(--luzmo-border-width));border-style:solid;border-color:var(--luzmo-item-grid-item-dimensions-hint-border-color,var(--luzmo-border-color));border-radius:var(--luzmo-item-grid-item-dimensions-hint-border-radius,var(--luzmo-border-radius));padding:var(--luzmo-item-grid-item-dimensions-hint-padding,var(--luzmo-spacing-1)var(--luzmo-spacing-2));z-index:3;background:var(--luzmo-item-grid-item-dimensions-hint-background,var(--luzmo-background-color));color:var(--luzmo-item-grid-item-dimensions-hint-color,var(--luzmo-font-color));pointer-events:none;outline:none;margin:0;position:absolute;overflow:visible}luzmo-item-grid-item-actions-menu{--grid-item-actions-padding:0 .75rem}luzmo-item-grid-item-actions-menu[placement=top-start],luzmo-item-grid-item-actions-menu[placement=top],luzmo-item-grid-item-actions-menu[placement=top-end],luzmo-item-grid-item-actions-menu[placement=bottom-start],luzmo-item-grid-item-actions-menu[placement=bottom],luzmo-item-grid-item-actions-menu[placement=bottom-end]{--grid-item-actions-padding:.75rem 0}.grid-stack-item:focus-visible{outline:none}.grid-stack-item:focus-visible .grid-stack-item-content:after{content:"";border:var(--luzmo-indicator-width)solid var(--luzmo-indicator-color,var(--luzmo-primary));box-sizing:border-box;border-radius:var(--luzmo-item-grid-item-border-radius,var(--grid-item-border-radius,4px));z-index:2;width:100%;height:100%;position:absolute;top:0;left:0}`;const updateLuzmoVizItemsLanguage=(gridItemElements,contentLanguage)=>{gridItemElements.forEach(itemElement=>{let luzmoVizItem=itemElement.querySelector(`luzmo-embed-viz-item`);luzmoVizItem&&(luzmoVizItem.options={...luzmoVizItem.options,locale:contentLanguage})})},createGridItemActionDetail=({action,actionType,active,items,element,itemId,item,deletedId,originalElement})=>({action,actionType,active,items,element,id:itemId,type:item?.type,slots:item?.slots,options:item?.options,filters:item?.filters??[],...deletedId&&{deletedId},...originalElement&&{originalElement}}),dispatchGridItemActionEvent=({target,action,actionType,active,items,element,itemId,item,deletedId,originalElement})=>{target.dispatchEvent(new CustomEvent(`luzmo-item-grid-item-action`,{detail:createGridItemActionDetail({action,actionType,active,items,element,itemId,item,deletedId,originalElement}),bubbles:!0,composed:!0,cancelable:!0}))},dispatchGridLifecycleEvent=({target,eventName,detail})=>{target.dispatchEvent(new CustomEvent(eventName,{detail,bubbles:!0,composed:!0}))};var asElement=value=>value instanceof Element?value:void 0;const getGridItemElementFromTarget=target=>asElement(target)?.closest(`.grid-stack-item`),shouldRemovePopoverOnMouseout=({event,gridItem})=>asElement(event.relatedTarget)?.closest(`.grid-item-actions-popover`)?!1:!gridItem.hasAttribute(`active`),applyGridItemFocus=({event,focusedItemElement,removeItemActionsMenuPopover:removeItemActionsMenuPopover$1})=>{let gridItem=getGridItemElementFromTarget(event.target);return gridItem?(focusedItemElement&&focusedItemElement!==gridItem&&(focusedItemElement.removeAttribute(`focused`),removeItemActionsMenuPopover$1(focusedItemElement)),gridItem.setAttribute(`focused`,`true`),gridItem):focusedItemElement},clearGridItemFocus=({event,focusedItemElement,removeItemActionsMenuPopover:removeItemActionsMenuPopover$1})=>focusedItemElement?asElement(event.relatedTarget)?.closest(`luzmo-item-grid-item-actions-menu`)?{focusedItemElement,shouldFocusGrid:!1}:(focusedItemElement.removeAttribute(`focused`),removeItemActionsMenuPopover$1(focusedItemElement),{focusedItemElement:void 0,shouldFocusGrid:!0}):{focusedItemElement:void 0,shouldFocusGrid:!1},resolveGridItemForDelete=(event,fallback)=>getGridItemElementFromTarget(event.target)??fallback,cleanupActiveGridItem=({item,activeItemElement,gridElement,removeItemActionsMenuPopover:removeItemActionsMenuPopover$1})=>{if(item.removeAttribute(`active`),removeItemActionsMenuPopover$1(item),activeItemElement===item){gridElement.removeAttribute(`has-active-item`);return}return activeItemElement},handleGridAction=({event,gridElement,items,state:state$2,cleanupActiveItem,dispatchItemActionEvent,handleDeleteItem,handleCloneItem:handleCloneItem$1,createItemActionsMenuPopover:createItemActionsMenuPopover$1})=>{event.stopPropagation();let action=event.detail,gridItem=event.target?.closest(`.grid-stack-item`);if(!gridItem)return state$2;let gridItemId=gridItem.getAttribute(`gs-id`),item=items.find(i=>i.id===gridItemId);if(action.type===`toggle`&&action.action===state$2.activeItemActionToggle&&gridItem===state$2.activeItemElement)return state$2.activeItemElement=void 0,state$2.activeItemActionToggle=void 0,gridElement.removeAttribute(`has-active-item`),gridItem.removeAttribute(`active`),cleanupActiveItem(gridItem),gridItemId&&dispatchItemActionEvent(action.action,action.type,!1,gridItem,gridItemId,item),state$2;if([`delete`,`clone`].includes(action.action)||(gridElement.querySelectorAll(`.grid-stack-item`).forEach(element=>{element!==gridItem&&cleanupActiveItem(element)}),action.type===`toggle`?(state$2.activeItemElement=gridItem,state$2.activeItemActionToggle=action.action,gridElement.setAttribute(`has-active-item`,`true`),gridItem.setAttribute(`active`,`true`),createItemActionsMenuPopover$1(gridItem,action.action)):state$2.activeItemElement&&state$2.activeItemElement!==gridItem&&(state$2.activeItemElement=void 0,state$2.activeItemActionToggle=void 0),gridItemId&&dispatchItemActionEvent(action.action,action.type,action.active,gridItem,gridItemId,item)),action.action===`delete`){let deletedItemWasActive=state$2.activeItemElement===gridItem;return handleDeleteItem(event),gridItemId&&dispatchItemActionEvent(action.action,action.type,action.active,gridItem,gridItemId,item,gridItemId),deletedItemWasActive?{activeItemElement:void 0,activeItemActionToggle:void 0}:state$2}else action.action===`clone`&&handleCloneItem$1(event);return state$2},handleGridClick=({event,gridElement,hostElement,items,activeItemActionToggle,cleanupActiveItem,dispatchItemActionEvent})=>{let path=event.composedPath();if(!path.includes(gridElement)&&!path.includes(hostElement))return{activeItemActionToggle};let activeItem=gridElement.querySelector(`.grid-stack-item[active]`);if(!activeItem||path.includes(activeItem))return{activeItemActionToggle};let popover=activeItem.querySelector(`.grid-item-actions-popover`);if(popover&&path.includes(popover))return{activeItemActionToggle};let gridItemId=activeItem.getAttribute(`gs-id`),item=items.find(i=>i.id===gridItemId);return cleanupActiveItem(activeItem),activeItemActionToggle&&gridItemId&&dispatchItemActionEvent(activeItemActionToggle,`toggle`,!1,activeItem,gridItemId,item),{activeItemActionToggle:void 0}},triggerGridItemAction=({gridElement,items,gridItemData,itemId,action,options,state:state$2,cleanupActiveItem,dispatchItemActionEvent,createItemActionsMenuPopover:createItemActionsMenuPopover$1})=>{if(!gridItemData?.element)return{result:void 0,state:state$2};let gridItem=gridItemData.element,item=gridItemData.item,isCurrentlyActive=action===state$2.activeItemActionToggle&&gridItem===state$2.activeItemElement,shouldActivate=options?.active??!isCurrentlyActive;if(options?.active!==void 0&&shouldActivate===isCurrentlyActive)return{result:isCurrentlyActive,state:state$2};if(!shouldActivate)return state$2.activeItemElement=void 0,state$2.activeItemActionToggle=void 0,gridElement.removeAttribute(`has-active-item`),gridItem.removeAttribute(`active`),cleanupActiveItem(gridItem),dispatchItemActionEvent(action,`toggle`,!1,gridItem,itemId,item),{result:!1,state:state$2};if(state$2.activeItemElement&&state$2.activeItemElement!==gridItem){let previousItemId=state$2.activeItemElement.getAttribute(`gs-id`),previousItem=items.find(currentItem=>currentItem.id===previousItemId),previousAction=state$2.activeItemActionToggle,previousElement=state$2.activeItemElement;cleanupActiveItem(state$2.activeItemElement),state$2.activeItemElement=void 0,state$2.activeItemActionToggle=void 0,previousAction&&previousItemId&&previousItem&&dispatchItemActionEvent(previousAction,`toggle`,!1,previousElement,previousItemId,previousItem)}return state$2.activeItemElement=gridItem,state$2.activeItemActionToggle=action,gridElement.setAttribute(`has-active-item`,`true`),gridItem.setAttribute(`active`,`true`),createItemActionsMenuPopover$1(gridItem,action),dispatchItemActionEvent(action,`toggle`,!0,gridItem,itemId,item),{result:!0,state:state$2}},deactivateGridItems=({gridElement,items,state:state$2,cleanupActiveItem,dispatchItemActionEvent})=>{let deactivatedCount=0;if(state$2.activeItemElement&&state$2.activeItemActionToggle){let itemId=state$2.activeItemElement.getAttribute(`gs-id`),item=items.find(currentItem=>currentItem.id===itemId),action=state$2.activeItemActionToggle,element=state$2.activeItemElement;cleanupActiveItem(state$2.activeItemElement),state$2.activeItemElement=void 0,state$2.activeItemActionToggle=void 0,gridElement.removeAttribute(`has-active-item`),action&&itemId&&item&&(dispatchItemActionEvent(action,`toggle`,!1,element,itemId,item),deactivatedCount++)}return{deactivatedCount,state:state$2}};var DEFAULT_ITEM_POSITION={sizeX:1,sizeY:1,col:0,row:0};const normalizeGridItems=(items,createId)=>{items.forEach(item=>{item.id=item.id??createId(),item.canFilter=item.canFilter??`all`})},ensureGridItemId=(item,createId)=>(item.id=item.id??createId(),item.id),buildGridWidgetOptions=(item,id)=>({id,x:item?.position?.col??0,y:item?.position?.row??0,w:item?.position?.sizeX??1,h:item?.position?.sizeY??1}),createGridItemFromInput=(newItem,id)=>({...structuredClone(newItem),id,position:structuredClone(newItem.position)??{...DEFAULT_ITEM_POSITION},canFilter:newItem.canFilter??`all`}),createOrphanGridItemElement=itemId=>{let newElement=document.createElement(`div`);return newElement.className=`luzmo-item-grid-item has-luzmo-viz-item`,newElement.setAttribute(`luzmo-item-grid-item-id`,itemId),newElement.setAttribute(`orphan`,`true`),newElement.setAttribute(`tabindex`,`0`),newElement.setAttribute(`role`,`row`),newElement.innerHTML=`<div class="grid-stack-item-content" role="gridcell"></div>`,newElement},readGridItemPosition=gridItemElement=>({sizeX:Number.parseInt(gridItemElement.getAttribute(`gs-w`)??`1`,10),sizeY:Number.parseInt(gridItemElement.getAttribute(`gs-h`)??`1`,10),col:Number.parseInt(gridItemElement.getAttribute(`gs-x`)??`0`,10),row:Number.parseInt(gridItemElement.getAttribute(`gs-y`)??`0`,10)}),findGridItemElementById=(elements,id)=>{if(id){for(let element of elements)if(element.getAttribute(`luzmo-item-grid-item-id`)===id)return element}},mapGridItems=(items,gridElement)=>items.map(item=>{let gridItem={item,element:gridElement.querySelector(`[gs-id="${item.id}"]`)},vizItem=gridItem.element?.querySelector(`luzmo-embed-viz-item`);return vizItem&&(gridItem.luzmoElement=vizItem),gridItem}),addGridItem=({newItem,gridElement,grid,createId})=>{let item=createGridItemFromInput(newItem,createId()),newElement=createOrphanGridItemElement(item.id);gridElement.append(newElement);let gridItemOptions={x:item.position?.col??0,y:item.position?.row??0,w:item.position?.sizeX??1,h:item.position?.sizeY??1,autoPosition:!0,id:item.id},gridItemElement=grid?.makeWidget(newElement,gridItemOptions);return gridItemElement&&(item.position=readGridItemPosition(gridItemElement)),{item,element:newElement}},removeGridItemById=({id,grid,items,getGridItemById,removeItemActionsMenuPopover:removeItemActionsMenuPopover$1,activeItemElement,cleanupActiveItem})=>{if(!id)return{activeItemElement,focusedItemElement:void 0};let gridItemElement=getGridItemById(id)?.element;gridItemElement&&grid&&grid.removeWidget(gridItemElement);let indexToRemove=items.findIndex(item=>item.id===id);indexToRemove!==-1&&items.splice(indexToRemove,1),gridItemElement&&removeItemActionsMenuPopover$1(gridItemElement);let nextActiveItemElement=activeItemElement;return gridItemElement&&activeItemElement===gridItemElement&&(cleanupActiveItem(gridItemElement),nextActiveItemElement=void 0),{activeItemElement:nextActiveItemElement,focusedItemElement:void 0}},handleCloneItem=({event,hasGrid,items,createId,addGridItem:addGridItemToComponent,dispatchItemActionEvent})=>{let gridItem=event.target.closest(`.grid-stack-item`);if(!gridItem||!hasGrid)return;let itemId=gridItem.getAttribute(`gs-id`);if(!itemId)return;let originalItem=items.find(item=>item.id===itemId);if(!originalItem)return;let clonedItemId=createId(),clonedItem={...structuredClone(originalItem),id:clonedItemId},newElement=addGridItemToComponent(clonedItem),actionDetail=event.detail;dispatchItemActionEvent(`clone`,actionDetail?.type??`button`,actionDetail?.active??!1,newElement,clonedItemId,clonedItem,void 0,gridItem)};var min=Math.min,max=Math.max,round=Math.round,floor=Math.floor,createCoords=v=>({x:v,y:v}),oppositeSideMap={left:`right`,right:`left`,bottom:`top`,top:`bottom`},oppositeAlignmentMap={start:`end`,end:`start`};function evaluate(value,param){return typeof value==`function`?value(param):value}function getSide(placement){return placement.split(`-`)[0]}function getAlignment(placement){return placement.split(`-`)[1]}function getOppositeAxis(axis){return axis===`x`?`y`:`x`}function getAxisLength(axis){return axis===`y`?`height`:`width`}var yAxisSides=new Set([`top`,`bottom`]);function getSideAxis(placement){return yAxisSides.has(getSide(placement))?`y`:`x`}function getAlignmentAxis(placement){return getOppositeAxis(getSideAxis(placement))}function getAlignmentSides(placement,rects,rtl){rtl===void 0&&(rtl=!1);let alignment=getAlignment(placement),alignmentAxis=getAlignmentAxis(placement),length=getAxisLength(alignmentAxis),mainAlignmentSide=alignmentAxis===`x`?alignment===(rtl?`end`:`start`)?`right`:`left`:alignment===`start`?`bottom`:`top`;return rects.reference[length]>rects.floating[length]&&(mainAlignmentSide=getOppositePlacement(mainAlignmentSide)),[mainAlignmentSide,getOppositePlacement(mainAlignmentSide)]}function getExpandedPlacements(placement){let oppositePlacement=getOppositePlacement(placement);return[getOppositeAlignmentPlacement(placement),oppositePlacement,getOppositeAlignmentPlacement(oppositePlacement)]}function getOppositeAlignmentPlacement(placement){return placement.replace(/start|end/g,alignment=>oppositeAlignmentMap[alignment])}var lrPlacement=[`left`,`right`],rlPlacement=[`right`,`left`],tbPlacement=[`top`,`bottom`],btPlacement=[`bottom`,`top`];function getSideList(side,isStart,rtl){switch(side){case`top`:case`bottom`:return rtl?isStart?rlPlacement:lrPlacement:isStart?lrPlacement:rlPlacement;case`left`:case`right`:return isStart?tbPlacement:btPlacement;default:return[]}}function getOppositeAxisPlacements(placement,flipAlignment,direction,rtl){let alignment=getAlignment(placement),list=getSideList(getSide(placement),direction===`start`,rtl);return alignment&&(list=list.map(side=>side+`-`+alignment),flipAlignment&&(list=list.concat(list.map(getOppositeAlignmentPlacement)))),list}function getOppositePlacement(placement){return placement.replace(/left|right|bottom|top/g,side=>oppositeSideMap[side])}function expandPaddingObject(padding){return{top:0,right:0,bottom:0,left:0,...padding}}function getPaddingObject(padding){return typeof padding==`number`?{top:padding,right:padding,bottom:padding,left:padding}:expandPaddingObject(padding)}function rectToClientRect(rect){let{x,y,width,height}=rect;return{width,height,top:y,left:x,right:x+width,bottom:y+height,x,y}}function computeCoordsFromPlacement(_ref,placement,rtl){let{reference,floating}=_ref,sideAxis=getSideAxis(placement),alignmentAxis=getAlignmentAxis(placement),alignLength=getAxisLength(alignmentAxis),side=getSide(placement),isVertical=sideAxis===`y`,commonX=reference.x+reference.width/2-floating.width/2,commonY=reference.y+reference.height/2-floating.height/2,commonAlign=reference[alignLength]/2-floating[alignLength]/2,coords;switch(side){case`top`:coords={x:commonX,y:reference.y-floating.height};break;case`bottom`:coords={x:commonX,y:reference.y+reference.height};break;case`right`:coords={x:reference.x+reference.width,y:commonY};break;case`left`:coords={x:reference.x-floating.width,y:commonY};break;default:coords={x:reference.x,y:reference.y}}switch(getAlignment(placement)){case`start`:coords[alignmentAxis]-=commonAlign*(rtl&&isVertical?-1:1);break;case`end`:coords[alignmentAxis]+=commonAlign*(rtl&&isVertical?-1:1);break}return coords}var computePosition$1=async(reference,floating,config)=>{let{placement=`bottom`,strategy=`absolute`,middleware=[],platform:platform$1}=config,validMiddleware=middleware.filter(Boolean),rtl=await(platform$1.isRTL==null?void 0:platform$1.isRTL(floating)),rects=await platform$1.getElementRects({reference,floating,strategy}),{x,y}=computeCoordsFromPlacement(rects,placement,rtl),statefulPlacement=placement,middlewareData={},resetCount=0;for(let i=0;i<validMiddleware.length;i++){let{name,fn}=validMiddleware[i],{x:nextX,y:nextY,data,reset}=await fn({x,y,initialPlacement:placement,placement:statefulPlacement,strategy,middlewareData,rects,platform:platform$1,elements:{reference,floating}});x=nextX??x,y=nextY??y,middlewareData={...middlewareData,[name]:{...middlewareData[name],...data}},reset&&resetCount<=50&&(resetCount++,typeof reset==`object`&&(reset.placement&&(statefulPlacement=reset.placement),reset.rects&&(rects=reset.rects===!0?await platform$1.getElementRects({reference,floating,strategy}):reset.rects),{x,y}=computeCoordsFromPlacement(rects,statefulPlacement,rtl)),i=-1)}return{x,y,placement:statefulPlacement,strategy,middlewareData}};async function detectOverflow(state$2,options){var _await$platform$isEle;options===void 0&&(options={});let{x,y,platform:platform$1,rects,elements,strategy}=state$2,{boundary=`clippingAncestors`,rootBoundary=`viewport`,elementContext=`floating`,altBoundary=!1,padding=0}=evaluate(options,state$2),paddingObject=getPaddingObject(padding),element=elements[altBoundary?elementContext===`floating`?`reference`:`floating`:elementContext],clippingClientRect=rectToClientRect(await platform$1.getClippingRect({element:await(platform$1.isElement==null?void 0:platform$1.isElement(element))??!0?element:element.contextElement||await(platform$1.getDocumentElement==null?void 0:platform$1.getDocumentElement(elements.floating)),boundary,rootBoundary,strategy})),rect=elementContext===`floating`?{x,y,width:rects.floating.width,height:rects.floating.height}:rects.reference,offsetParent=await(platform$1.getOffsetParent==null?void 0:platform$1.getOffsetParent(elements.floating)),offsetScale=await(platform$1.isElement==null?void 0:platform$1.isElement(offsetParent))&&await(platform$1.getScale==null?void 0:platform$1.getScale(offsetParent))||{x:1,y:1},elementClientRect=rectToClientRect(platform$1.convertOffsetParentRelativeRectToViewportRelativeRect?await platform$1.convertOffsetParentRelativeRectToViewportRelativeRect({elements,rect,offsetParent,strategy}):rect);return{top:(clippingClientRect.top-elementClientRect.top+paddingObject.top)/offsetScale.y,bottom:(elementClientRect.bottom-clippingClientRect.bottom+paddingObject.bottom)/offsetScale.y,left:(clippingClientRect.left-elementClientRect.left+paddingObject.left)/offsetScale.x,right:(elementClientRect.right-clippingClientRect.right+paddingObject.right)/offsetScale.x}}var flip$1=function(options){return options===void 0&&(options={}),{name:`flip`,options,async fn(state$2){var _middlewareData$arrow,_middlewareData$flip;let{placement,middlewareData,rects,initialPlacement,platform:platform$1,elements}=state$2,{mainAxis:checkMainAxis=!0,crossAxis:checkCrossAxis=!0,fallbackPlacements:specifiedFallbackPlacements,fallbackStrategy=`bestFit`,fallbackAxisSideDirection=`none`,flipAlignment=!0,...detectOverflowOptions}=evaluate(options,state$2);if((_middlewareData$arrow=middlewareData.arrow)!=null&&_middlewareData$arrow.alignmentOffset)return{};let side=getSide(placement),initialSideAxis=getSideAxis(initialPlacement),isBasePlacement=getSide(initialPlacement)===initialPlacement,rtl=await(platform$1.isRTL==null?void 0:platform$1.isRTL(elements.floating)),fallbackPlacements=specifiedFallbackPlacements||(isBasePlacement||!flipAlignment?[getOppositePlacement(initialPlacement)]:getExpandedPlacements(initialPlacement)),hasFallbackAxisSideDirection=fallbackAxisSideDirection!==`none`;!specifiedFallbackPlacements&&hasFallbackAxisSideDirection&&fallbackPlacements.push(...getOppositeAxisPlacements(initialPlacement,flipAlignment,fallbackAxisSideDirection,rtl));let placements=[initialPlacement,...fallbackPlacements],overflow=await detectOverflow(state$2,detectOverflowOptions),overflows=[],overflowsData=middlewareData.flip?.overflows||[];if(checkMainAxis&&overflows.push(overflow[side]),checkCrossAxis){let sides=getAlignmentSides(placement,rects,rtl);overflows.push(overflow[sides[0]],overflow[sides[1]])}if(overflowsData=[...overflowsData,{placement,overflows}],!overflows.every(side$1=>side$1<=0)){var _middlewareData$flip2,_overflowsData$filter;let nextIndex=(middlewareData.flip?.index||0)+1,nextPlacement=placements[nextIndex];if(nextPlacement&&(!(checkCrossAxis===`alignment`&&initialSideAxis!==getSideAxis(nextPlacement))||overflowsData.every(d=>getSideAxis(d.placement)===initialSideAxis?d.overflows[0]>0:!0)))return{data:{index:nextIndex,overflows:overflowsData},reset:{placement:nextPlacement}};let resetPlacement=overflowsData.filter(d=>d.overflows[0]<=0).sort((a,b)=>a.overflows[1]-b.overflows[1])[0]?.placement;if(!resetPlacement)switch(fallbackStrategy){case`bestFit`:{var _overflowsData$filter2;let placement$1=overflowsData.filter(d=>{if(hasFallbackAxisSideDirection){let currentSideAxis=getSideAxis(d.placement);return currentSideAxis===initialSideAxis||currentSideAxis===`y`}return!0}).map(d=>[d.placement,d.overflows.filter(overflow$1=>overflow$1>0).reduce((acc,overflow$1)=>acc+overflow$1,0)]).sort((a,b)=>a[1]-b[1])[0]?.[0];placement$1&&(resetPlacement=placement$1);break}case`initialPlacement`:resetPlacement=initialPlacement;break}if(placement!==resetPlacement)return{reset:{placement:resetPlacement}}}return{}}}},originSides=new Set([`left`,`top`]);async function convertValueToCoords(state$2,options){let{placement,platform:platform$1,elements}=state$2,rtl=await(platform$1.isRTL==null?void 0:platform$1.isRTL(elements.floating)),side=getSide(placement),alignment=getAlignment(placement),isVertical=getSideAxis(placement)===`y`,mainAxisMulti=originSides.has(side)?-1:1,crossAxisMulti=rtl&&isVertical?-1:1,rawValue=evaluate(options,state$2),{mainAxis,crossAxis,alignmentAxis}=typeof rawValue==`number`?{mainAxis:rawValue,crossAxis:0,alignmentAxis:null}:{mainAxis:rawValue.mainAxis||0,crossAxis:rawValue.crossAxis||0,alignmentAxis:rawValue.alignmentAxis};return alignment&&typeof alignmentAxis==`number`&&(crossAxis=alignment===`end`?alignmentAxis*-1:alignmentAxis),isVertical?{x:crossAxis*crossAxisMulti,y:mainAxis*mainAxisMulti}:{x:mainAxis*mainAxisMulti,y:crossAxis*crossAxisMulti}}var offset$1=function(options){return options===void 0&&(options=0),{name:`offset`,options,async fn(state$2){var _middlewareData$offse,_middlewareData$arrow;let{x,y,placement,middlewareData}=state$2,diffCoords=await convertValueToCoords(state$2,options);return placement===middlewareData.offset?.placement&&(_middlewareData$arrow=middlewareData.arrow)!=null&&_middlewareData$arrow.alignmentOffset?{}:{x:x+diffCoords.x,y:y+diffCoords.y,data:{...diffCoords,placement}}}}};function hasWindow(){return typeof window<`u`}function getNodeName(node){return isNode(node)?(node.nodeName||``).toLowerCase():`#document`}function getWindow(node){var _node$ownerDocument;return(node==null||(_node$ownerDocument=node.ownerDocument)==null?void 0:_node$ownerDocument.defaultView)||window}function getDocumentElement(node){var _ref;return((isNode(node)?node.ownerDocument:node.document)||window.document)?.documentElement}function isNode(value){return hasWindow()?value instanceof Node||value instanceof getWindow(value).Node:!1}function isElement(value){return hasWindow()?value instanceof Element||value instanceof getWindow(value).Element:!1}function isHTMLElement(value){return hasWindow()?value instanceof HTMLElement||value instanceof getWindow(value).HTMLElement:!1}function isShadowRoot(value){return!hasWindow()||typeof ShadowRoot>`u`?!1:value instanceof ShadowRoot||value instanceof getWindow(value).ShadowRoot}var invalidOverflowDisplayValues=new Set([`inline`,`contents`]);function isOverflowElement(element){let{overflow,overflowX,overflowY,display}=getComputedStyle$1(element);return/auto|scroll|overlay|hidden|clip/.test(overflow+overflowY+overflowX)&&!invalidOverflowDisplayValues.has(display)}var tableElements=new Set([`table`,`td`,`th`]);function isTableElement(element){return tableElements.has(getNodeName(element))}var topLayerSelectors=[`:popover-open`,`:modal`];function isTopLayer(element){return topLayerSelectors.some(selector=>{try{return element.matches(selector)}catch{return!1}})}var transformProperties=[`transform`,`translate`,`scale`,`rotate`,`perspective`],willChangeValues=[`transform`,`translate`,`scale`,`rotate`,`perspective`,`filter`],containValues=[`paint`,`layout`,`strict`,`content`];function isContainingBlock(elementOrCss){let webkit=isWebKit(),css$1=isElement(elementOrCss)?getComputedStyle$1(elementOrCss):elementOrCss;return transformProperties.some(value=>css$1[value]?css$1[value]!==`none`:!1)||(css$1.containerType?css$1.containerType!==`normal`:!1)||!webkit&&(css$1.backdropFilter?css$1.backdropFilter!==`none`:!1)||!webkit&&(css$1.filter?css$1.filter!==`none`:!1)||willChangeValues.some(value=>(css$1.willChange||``).includes(value))||containValues.some(value=>(css$1.contain||``).includes(value))}function getContainingBlock(element){let currentNode=getParentNode(element);for(;isHTMLElement(currentNode)&&!isLastTraversableNode(currentNode);){if(isContainingBlock(currentNode))return currentNode;if(isTopLayer(currentNode))return null;currentNode=getParentNode(currentNode)}return null}function isWebKit(){return typeof CSS>`u`||!CSS.supports?!1:CSS.supports(`-webkit-backdrop-filter`,`none`)}var lastTraversableNodeNames=new Set([`html`,`body`,`#document`]);function isLastTraversableNode(node){return lastTraversableNodeNames.has(getNodeName(node))}function getComputedStyle$1(element){return getWindow(element).getComputedStyle(element)}function getNodeScroll(element){return isElement(element)?{scrollLeft:element.scrollLeft,scrollTop:element.scrollTop}:{scrollLeft:element.scrollX,scrollTop:element.scrollY}}function getParentNode(node){if(getNodeName(node)===`html`)return node;let result=node.assignedSlot||node.parentNode||isShadowRoot(node)&&node.host||getDocumentElement(node);return isShadowRoot(result)?result.host:result}function getNearestOverflowAncestor(node){let parentNode=getParentNode(node);return isLastTraversableNode(parentNode)?node.ownerDocument?node.ownerDocument.body:node.body:isHTMLElement(parentNode)&&isOverflowElement(parentNode)?parentNode:getNearestOverflowAncestor(parentNode)}function getOverflowAncestors(node,list,traverseIframes){var _node$ownerDocument2;list===void 0&&(list=[]),traverseIframes===void 0&&(traverseIframes=!0);let scrollableAncestor=getNearestOverflowAncestor(node),isBody=scrollableAncestor===node.ownerDocument?.body,win=getWindow(scrollableAncestor);if(isBody){let frameElement=getFrameElement(win);return list.concat(win,win.visualViewport||[],isOverflowElement(scrollableAncestor)?scrollableAncestor:[],frameElement&&traverseIframes?getOverflowAncestors(frameElement):[])}return list.concat(scrollableAncestor,getOverflowAncestors(scrollableAncestor,[],traverseIframes))}function getFrameElement(win){return win.parent&&Object.getPrototypeOf(win.parent)?win.frameElement:null}function getCssDimensions(element){let css$1=getComputedStyle$1(element),width=parseFloat(css$1.width)||0,height=parseFloat(css$1.height)||0,hasOffset=isHTMLElement(element),offsetWidth=hasOffset?element.offsetWidth:width,offsetHeight=hasOffset?element.offsetHeight:height,shouldFallback=round(width)!==offsetWidth||round(height)!==offsetHeight;return shouldFallback&&(width=offsetWidth,height=offsetHeight),{width,height,$:shouldFallback}}function unwrapElement(element){return isElement(element)?element:element.contextElement}function getScale(element){let domElement=unwrapElement(element);if(!isHTMLElement(domElement))return createCoords(1);let rect=domElement.getBoundingClientRect(),{width,height,$}=getCssDimensions(domElement),x=($?round(rect.width):rect.width)/width,y=($?round(rect.height):rect.height)/height;return(!x||!Number.isFinite(x))&&(x=1),(!y||!Number.isFinite(y))&&(y=1),{x,y}}var noOffsets=createCoords(0);function getVisualOffsets(element){let win=getWindow(element);return!isWebKit()||!win.visualViewport?noOffsets:{x:win.visualViewport.offsetLeft,y:win.visualViewport.offsetTop}}function shouldAddVisualOffsets(element,isFixed,floatingOffsetParent){return isFixed===void 0&&(isFixed=!1),!floatingOffsetParent||isFixed&&floatingOffsetParent!==getWindow(element)?!1:isFixed}function getBoundingClientRect(element,includeScale,isFixedStrategy,offsetParent){includeScale===void 0&&(includeScale=!1),isFixedStrategy===void 0&&(isFixedStrategy=!1);let clientRect=element.getBoundingClientRect(),domElement=unwrapElement(element),scale=createCoords(1);includeScale&&(offsetParent?isElement(offsetParent)&&(scale=getScale(offsetParent)):scale=getScale(element));let visualOffsets=shouldAddVisualOffsets(domElement,isFixedStrategy,offsetParent)?getVisualOffsets(domElement):createCoords(0),x=(clientRect.left+visualOffsets.x)/scale.x,y=(clientRect.top+visualOffsets.y)/scale.y,width=clientRect.width/scale.x,height=clientRect.height/scale.y;if(domElement){let win=getWindow(domElement),offsetWin=offsetParent&&isElement(offsetParent)?getWindow(offsetParent):offsetParent,currentWin=win,currentIFrame=getFrameElement(currentWin);for(;currentIFrame&&offsetParent&&offsetWin!==currentWin;){let iframeScale=getScale(currentIFrame),iframeRect=currentIFrame.getBoundingClientRect(),css$1=getComputedStyle$1(currentIFrame),left=iframeRect.left+(currentIFrame.clientLeft+parseFloat(css$1.paddingLeft))*iframeScale.x,top=iframeRect.top+(currentIFrame.clientTop+parseFloat(css$1.paddingTop))*iframeScale.y;x*=iframeScale.x,y*=iframeScale.y,width*=iframeScale.x,height*=iframeScale.y,x+=left,y+=top,currentWin=getWindow(currentIFrame),currentIFrame=getFrameElement(currentWin)}}return rectToClientRect({width,height,x,y})}function getWindowScrollBarX(element,rect){let leftScroll=getNodeScroll(element).scrollLeft;return rect?rect.left+leftScroll:getBoundingClientRect(getDocumentElement(element)).left+leftScroll}function getHTMLOffset(documentElement,scroll){let htmlRect=documentElement.getBoundingClientRect();return{x:htmlRect.left+scroll.scrollLeft-getWindowScrollBarX(documentElement,htmlRect),y:htmlRect.top+scroll.scrollTop}}function convertOffsetParentRelativeRectToViewportRelativeRect(_ref){let{elements,rect,offsetParent,strategy}=_ref,isFixed=strategy===`fixed`,documentElement=getDocumentElement(offsetParent),topLayer=elements?isTopLayer(elements.floating):!1;if(offsetParent===documentElement||topLayer&&isFixed)return rect;let scroll={scrollLeft:0,scrollTop:0},scale=createCoords(1),offsets=createCoords(0),isOffsetParentAnElement=isHTMLElement(offsetParent);if((isOffsetParentAnElement||!isOffsetParentAnElement&&!isFixed)&&((getNodeName(offsetParent)!==`body`||isOverflowElement(documentElement))&&(scroll=getNodeScroll(offsetParent)),isHTMLElement(offsetParent))){let offsetRect=getBoundingClientRect(offsetParent);scale=getScale(offsetParent),offsets.x=offsetRect.x+offsetParent.clientLeft,offsets.y=offsetRect.y+offsetParent.clientTop}let htmlOffset=documentElement&&!isOffsetParentAnElement&&!isFixed?getHTMLOffset(documentElement,scroll):createCoords(0);return{width:rect.width*scale.x,height:rect.height*scale.y,x:rect.x*scale.x-scroll.scrollLeft*scale.x+offsets.x+htmlOffset.x,y:rect.y*scale.y-scroll.scrollTop*scale.y+offsets.y+htmlOffset.y}}function getClientRects(element){return Array.from(element.getClientRects())}function getDocumentRect(element){let html$4=getDocumentElement(element),scroll=getNodeScroll(element),body=element.ownerDocument.body,width=max(html$4.scrollWidth,html$4.clientWidth,body.scrollWidth,body.clientWidth),height=max(html$4.scrollHeight,html$4.clientHeight,body.scrollHeight,body.clientHeight),x=-scroll.scrollLeft+getWindowScrollBarX(element),y=-scroll.scrollTop;return getComputedStyle$1(body).direction===`rtl`&&(x+=max(html$4.clientWidth,body.clientWidth)-width),{width,height,x,y}}var SCROLLBAR_MAX=25;function getViewportRect(element,strategy){let win=getWindow(element),html$4=getDocumentElement(element),visualViewport=win.visualViewport,width=html$4.clientWidth,height=html$4.clientHeight,x=0,y=0;if(visualViewport){width=visualViewport.width,height=visualViewport.height;let visualViewportBased=isWebKit();(!visualViewportBased||visualViewportBased&&strategy===`fixed`)&&(x=visualViewport.offsetLeft,y=visualViewport.offsetTop)}let windowScrollbarX=getWindowScrollBarX(html$4);if(windowScrollbarX<=0){let doc=html$4.ownerDocument,body=doc.body,bodyStyles=getComputedStyle(body),bodyMarginInline=doc.compatMode===`CSS1Compat`&&parseFloat(bodyStyles.marginLeft)+parseFloat(bodyStyles.marginRight)||0,clippingStableScrollbarWidth=Math.abs(html$4.clientWidth-body.clientWidth-bodyMarginInline);clippingStableScrollbarWidth<=SCROLLBAR_MAX&&(width-=clippingStableScrollbarWidth)}else windowScrollbarX<=SCROLLBAR_MAX&&(width+=windowScrollbarX);return{width,height,x,y}}var absoluteOrFixed=new Set([`absolute`,`fixed`]);function getInnerBoundingClientRect(element,strategy){let clientRect=getBoundingClientRect(element,!0,strategy===`fixed`),top=clientRect.top+element.clientTop,left=clientRect.left+element.clientLeft,scale=isHTMLElement(element)?getScale(element):createCoords(1);return{width:element.clientWidth*scale.x,height:element.clientHeight*scale.y,x:left*scale.x,y:top*scale.y}}function getClientRectFromClippingAncestor(element,clippingAncestor,strategy){let rect;if(clippingAncestor===`viewport`)rect=getViewportRect(element,strategy);else if(clippingAncestor===`document`)rect=getDocumentRect(getDocumentElement(element));else if(isElement(clippingAncestor))rect=getInnerBoundingClientRect(clippingAncestor,strategy);else{let visualOffsets=getVisualOffsets(element);rect={x:clippingAncestor.x-visualOffsets.x,y:clippingAncestor.y-visualOffsets.y,width:clippingAncestor.width,height:clippingAncestor.height}}return rectToClientRect(rect)}function hasFixedPositionAncestor(element,stopNode){let parentNode=getParentNode(element);return parentNode===stopNode||!isElement(parentNode)||isLastTraversableNode(parentNode)?!1:getComputedStyle$1(parentNode).position===`fixed`||hasFixedPositionAncestor(parentNode,stopNode)}function getClippingElementAncestors(element,cache){let cachedResult=cache.get(element);if(cachedResult)return cachedResult;let result=getOverflowAncestors(element,[],!1).filter(el=>isElement(el)&&getNodeName(el)!==`body`),currentContainingBlockComputedStyle=null,elementIsFixed=getComputedStyle$1(element).position===`fixed`,currentNode=elementIsFixed?getParentNode(element):element;for(;isElement(currentNode)&&!isLastTraversableNode(currentNode);){let computedStyle=getComputedStyle$1(currentNode),currentNodeIsContaining=isContainingBlock(currentNode);!currentNodeIsContaining&&computedStyle.position===`fixed`&&(currentContainingBlockComputedStyle=null),(elementIsFixed?!currentNodeIsContaining&&!currentContainingBlockComputedStyle:!currentNodeIsContaining&&computedStyle.position===`static`&¤tContainingBlockComputedStyle&&absoluteOrFixed.has(currentContainingBlockComputedStyle.position)||isOverflowElement(currentNode)&&!currentNodeIsContaining&&hasFixedPositionAncestor(element,currentNode))?result=result.filter(ancestor=>ancestor!==currentNode):currentContainingBlockComputedStyle=computedStyle,currentNode=getParentNode(currentNode)}return cache.set(element,result),result}function getClippingRect(_ref){let{element,boundary,rootBoundary,strategy}=_ref,clippingAncestors=[...boundary===`clippingAncestors`?isTopLayer(element)?[]:getClippingElementAncestors(element,this._c):[].concat(boundary),rootBoundary],firstClippingAncestor=clippingAncestors[0],clippingRect=clippingAncestors.reduce((accRect,clippingAncestor)=>{let rect=getClientRectFromClippingAncestor(element,clippingAncestor,strategy);return accRect.top=max(rect.top,accRect.top),accRect.right=min(rect.right,accRect.right),accRect.bottom=min(rect.bottom,accRect.bottom),accRect.left=max(rect.left,accRect.left),accRect},getClientRectFromClippingAncestor(element,firstClippingAncestor,strategy));return{width:clippingRect.right-clippingRect.left,height:clippingRect.bottom-clippingRect.top,x:clippingRect.left,y:clippingRect.top}}function getDimensions(element){let{width,height}=getCssDimensions(element);return{width,height}}function getRectRelativeToOffsetParent(element,offsetParent,strategy){let isOffsetParentAnElement=isHTMLElement(offsetParent),documentElement=getDocumentElement(offsetParent),isFixed=strategy===`fixed`,rect=getBoundingClientRect(element,!0,isFixed,offsetParent),scroll={scrollLeft:0,scrollTop:0},offsets=createCoords(0);function setLeftRTLScrollbarOffset(){offsets.x=getWindowScrollBarX(documentElement)}if(isOffsetParentAnElement||!isOffsetParentAnElement&&!isFixed)if((getNodeName(offsetParent)!==`body`||isOverflowElement(documentElement))&&(scroll=getNodeScroll(offsetParent)),isOffsetParentAnElement){let offsetRect=getBoundingClientRect(offsetParent,!0,isFixed,offsetParent);offsets.x=offsetRect.x+offsetParent.clientLeft,offsets.y=offsetRect.y+offsetParent.clientTop}else documentElement&&setLeftRTLScrollbarOffset();isFixed&&!isOffsetParentAnElement&&documentElement&&setLeftRTLScrollbarOffset();let htmlOffset=documentElement&&!isOffsetParentAnElement&&!isFixed?getHTMLOffset(documentElement,scroll):createCoords(0);return{x:rect.left+scroll.scrollLeft-offsets.x-htmlOffset.x,y:rect.top+scroll.scrollTop-offsets.y-htmlOffset.y,width:rect.width,height:rect.height}}function isStaticPositioned(element){return getComputedStyle$1(element).position===`static`}function getTrueOffsetParent(element,polyfill){if(!isHTMLElement(element)||getComputedStyle$1(element).position===`fixed`)return null;if(polyfill)return polyfill(element);let rawOffsetParent=element.offsetParent;return getDocumentElement(element)===rawOffsetParent&&(rawOffsetParent=rawOffsetParent.ownerDocument.body),rawOffsetParent}function getOffsetParent(element,polyfill){let win=getWindow(element);if(isTopLayer(element))return win;if(!isHTMLElement(element)){let svgOffsetParent=getParentNode(element);for(;svgOffsetParent&&!isLastTraversableNode(svgOffsetParent);){if(isElement(svgOffsetParent)&&!isStaticPositioned(svgOffsetParent))return svgOffsetParent;svgOffsetParent=getParentNode(svgOffsetParent)}return win}let offsetParent=getTrueOffsetParent(element,polyfill);for(;offsetParent&&isTableElement(offsetParent)&&isStaticPositioned(offsetParent);)offsetParent=getTrueOffsetParent(offsetParent,polyfill);return offsetParent&&isLastTraversableNode(offsetParent)&&isStaticPositioned(offsetParent)&&!isContainingBlock(offsetParent)?win:offsetParent||getContainingBlock(element)||win}var getElementRects=async function(data){let getOffsetParentFn=this.getOffsetParent||getOffsetParent,getDimensionsFn=this.getDimensions,floatingDimensions=await getDimensionsFn(data.floating);return{reference:getRectRelativeToOffsetParent(data.reference,await getOffsetParentFn(data.floating),data.strategy),floating:{x:0,y:0,width:floatingDimensions.width,height:floatingDimensions.height}}};function isRTL(element){return getComputedStyle$1(element).direction===`rtl`}var platform={convertOffsetParentRelativeRectToViewportRelativeRect,getDocumentElement,getClippingRect,getOffsetParent,getElementRects,getClientRects,getDimensions,getScale,isElement,isRTL};function rectsAreEqual(a,b){return a.x===b.x&&a.y===b.y&&a.width===b.width&&a.height===b.height}function observeMove(element,onMove){let io=null,timeoutId,root=getDocumentElement(element);function cleanup(){var _io;clearTimeout(timeoutId),(_io=io)==null||_io.disconnect(),io=null}function refresh(skip,threshold){skip===void 0&&(skip=!1),threshold===void 0&&(threshold=1),cleanup();let elementRectForRootMargin=element.getBoundingClientRect(),{left,top,width,height}=elementRectForRootMargin;if(skip||onMove(),!width||!height)return;let insetTop=floor(top),insetRight=floor(root.clientWidth-(left+width)),insetBottom=floor(root.clientHeight-(top+height)),insetLeft=floor(left),options={rootMargin:-insetTop+`px `+-insetRight+`px `+-insetBottom+`px `+-insetLeft+`px`,threshold:max(0,min(1,threshold))||1},isFirstUpdate=!0;function handleObserve(entries){let ratio=entries[0].intersectionRatio;if(ratio!==threshold){if(!isFirstUpdate)return refresh();ratio?refresh(!1,ratio):timeoutId=setTimeout(()=>{refresh(!1,1e-7)},1e3)}ratio===1&&!rectsAreEqual(elementRectForRootMargin,element.getBoundingClientRect())&&refresh(),isFirstUpdate=!1}try{io=new IntersectionObserver(handleObserve,{...options,root:root.ownerDocument})}catch{io=new IntersectionObserver(handleObserve,options)}io.observe(element)}return refresh(!0),cleanup}function autoUpdate(reference,floating,update,options){options===void 0&&(options={});let{ancestorScroll=!0,ancestorResize=!0,elementResize=typeof ResizeObserver==`function`,layoutShift=typeof IntersectionObserver==`function`,animationFrame=!1}=options,referenceEl=unwrapElement(reference),ancestors=ancestorScroll||ancestorResize?[...referenceEl?getOverflowAncestors(referenceEl):[],...getOverflowAncestors(floating)]:[];ancestors.forEach(ancestor=>{ancestorScroll&&ancestor.addEventListener(`scroll`,update,{passive:!0}),ancestorResize&&ancestor.addEventListener(`resize`,update)});let cleanupIo=referenceEl&&layoutShift?observeMove(referenceEl,update):null,reobserveFrame=-1,resizeObserver=null;elementResize&&(resizeObserver=new ResizeObserver(_ref=>{let[firstEntry]=_ref;firstEntry&&firstEntry.target===referenceEl&&resizeObserver&&(resizeObserver.unobserve(floating),cancelAnimationFrame(reobserveFrame),reobserveFrame=requestAnimationFrame(()=>{var _resizeObserver;(_resizeObserver=resizeObserver)==null||_resizeObserver.observe(floating)})),update()}),referenceEl&&!animationFrame&&resizeObserver.observe(referenceEl),resizeObserver.observe(floating));let frameId,prevRefRect=animationFrame?getBoundingClientRect(reference):null;animationFrame&&frameLoop();function frameLoop(){let nextRefRect=getBoundingClientRect(reference);prevRefRect&&!rectsAreEqual(prevRefRect,nextRefRect)&&update(),prevRefRect=nextRefRect,frameId=requestAnimationFrame(frameLoop)}return update(),()=>{var _resizeObserver2;ancestors.forEach(ancestor=>{ancestorScroll&&ancestor.removeEventListener(`scroll`,update),ancestorResize&&ancestor.removeEventListener(`resize`,update)}),cleanupIo?.(),(_resizeObserver2=resizeObserver)==null||_resizeObserver2.disconnect(),resizeObserver=null,animationFrame&&cancelAnimationFrame(frameId)}}var offset=offset$1,flip=flip$1,computePosition=(reference,floating,options)=>{let cache=new Map,mergedOptions={platform,...options},platformWithCache={...mergedOptions.platform,_c:cache};return computePosition$1(reference,floating,{...mergedOptions,platform:platformWithCache})},cleanupCallbacks=new WeakMap;const setPopoverCleanup=(element,cleanup)=>{clearPopoverCleanup(element),cleanupCallbacks.set(element,cleanup)},clearPopoverCleanup=element=>{let cleanup=cleanupCallbacks.get(element);cleanup&&(cleanup(),cleanupCallbacks.delete(element))},createItemActionsMenuPopover=({element,activeAction,getGridItemById,placementItemActionsMenu,renderOverlayContent:renderOverlayContent$1,removeItemActionsMenuPopover:removeItemActionsMenuPopover$1})=>{let popover=element.querySelector(`.grid-item-actions-popover`),triggerElement=element.querySelector(`.grid-stack-item-content`),gridItem=getGridItemById(element.getAttribute(`gs-id`)??``);if(activeAction&&popover&&(removeItemActionsMenuPopover$1(element),popover=null),!popover){let fragment=document.createDocumentFragment();(0,lit.render)(renderOverlayContent$1(gridItem?.item,activeAction),fragment),popover=fragment.querySelector(`.grid-item-actions-popover`),element.append(popover)}let cleanup=autoUpdate(triggerElement,popover,async()=>{let{x,y}=await computePosition(triggerElement,popover,{placement:gridItem?.item?.placementActionsMenu??placementItemActionsMenu??`right-start`,middleware:[offset(0),flip({crossAxis:!1})]});popover.style.left=`${x}px`,popover.style.top=`${y}px`});setPopoverCleanup(popover,cleanup),popover.matches(`:popover-open`)||popover.showPopover()},removeItemActionsMenuPopover=gridItem=>{let popover=gridItem.querySelector(`.grid-item-actions-popover`);popover&&(clearPopoverCleanup(popover),popover.matches(`:popover-open`)&&popover.hidePopover(),popover.remove())},isGridArrowKey=key=>key===`ArrowLeft`||key===`ArrowRight`||key===`ArrowUp`||key===`ArrowDown`,getGridKeyboardUpdate=({key,node,maxColumns,shiftKey,ctrlKey,metaKey})=>{let action={ArrowLeft:{move:{x:node.x-1},resize:{x:node.x-1,w:node.w+1},shrink:{w:node.w-1},canMove:node.x>0,canResize:node.x>0,canShrink:node.w>1},ArrowRight:{move:{x:node.x+1},resize:{w:node.w+1},shrink:{x:node.x+1,w:node.w-1},canMove:node.x<maxColumns-node.w,canResize:node.x+node.w<maxColumns,canShrink:node.w>1},ArrowUp:{move:{y:node.y-1},resize:{y:node.y-1,h:node.h+1},shrink:{h:node.h-1},canMove:node.y>0,canResize:node.y>0,canShrink:node.h>1},ArrowDown:{move:{y:node.y+1},resize:{h:node.h+1},shrink:{y:node.y+1,h:node.h-1},canMove:!0,canResize:!0,canShrink:node.h>1}}[key];if(shiftKey&&action.canResize)return action.resize;if((ctrlKey||metaKey)&&action.canShrink)return action.shrink;if(action.canMove)return action.move},handleGridKeyDown=({event,viewMode,focusedItemElement,activeItemElement,gridElement,grid,columns,handleDeleteItem,removeItemActionsMenuPopover:removeItemActionsMenuPopover$1,createItemActionsMenuPopover:createItemActionsMenuPopover$1})=>{if(viewMode)return{focusedItemElement,activeItemElement};let nextFocusedItemElement=focusedItemElement,nextActiveItemElement=activeItemElement;if(event.key===`Delete`&&focusedItemElement)handleDeleteItem(new Event(`delete`)),nextFocusedItemElement=void 0,activeItemElement===focusedItemElement&&(nextActiveItemElement=void 0);else if(event.key===`Escape`&&focusedItemElement)focusedItemElement.removeAttribute(`focused`),removeItemActionsMenuPopover$1(focusedItemElement),nextFocusedItemElement=void 0,gridElement.focus();else if(event.key===`Enter`&&focusedItemElement)event.preventDefault(),event.stopPropagation(),activeItemElement&&(activeItemElement.removeAttribute(`active`),gridElement.removeAttribute(`has-active-item`),removeItemActionsMenuPopover$1(activeItemElement),nextActiveItemElement=void 0),gridElement.querySelectorAll(`.grid-stack-item`).forEach(item=>{item!==focusedItemElement&&removeItemActionsMenuPopover$1(item)}),createItemActionsMenuPopover$1(focusedItemElement),requestAnimationFrame(()=>{let menu=focusedItemElement.querySelector(`luzmo-item-grid-item-actions-menu`);menu&&menu.focus()});else if(focusedItemElement&&grid&&isGridArrowKey(event.key)){event.preventDefault(),event.stopPropagation();let node=focusedItemElement.gridstackNode;if(!node)return{focusedItemElement:nextFocusedItemElement,activeItemElement:nextActiveItemElement};let updateData=getGridKeyboardUpdate({key:event.key,node,maxColumns:columns,shiftKey:event.shiftKey,ctrlKey:event.ctrlKey,metaKey:event.metaKey});updateData&&grid.update(focusedItemElement,updateData)}return{focusedItemElement:nextFocusedItemElement,activeItemElement:nextActiveItemElement}};var DEFAULT_MARGIN=16,DEFAULT_HINT_OFFSET=10,getRGBA=(rgbValue,opacity)=>opacity>=1?`rgba(${rgbValue.r},${rgbValue.g},${rgbValue.b},1)`:opacity<=0?`rgba(${rgbValue.r},${rgbValue.g},${rgbValue.b},0)`:`rgba(${rgbValue.r},${rgbValue.g},${rgbValue.b},${opacity})`;const resolveGridTheme=async({theme,currentTheme})=>theme?.type===`custom`?structuredClone(theme):theme?.id&&require_themes.n.includes(theme.id)&¤tTheme?.id!==theme.id?{...await require_themes.t(theme.id),id:theme.id}:theme?.id&¤tTheme?.id!==theme.id||!theme&¤tTheme?currentTheme:await require_themes.t(`default`),getGridHalfMargins=theme=>[(theme?.margins?.[0]??DEFAULT_MARGIN)/2,(theme?.margins?.[1]??DEFAULT_MARGIN)/2],getDimensionsHintOffset=theme=>DEFAULT_HINT_OFFSET-(theme?.margins?.[0]??DEFAULT_HINT_OFFSET),getGridBoxShadow=theme=>{let boxShadow=theme?.boxShadow;if(!boxShadow)return``;let color=new require_color.t(boxShadow.color),rgbValues={r:Math.round(color.srgb.r*255),g:Math.round(color.srgb.g*255),b:Math.round(color.srgb.b*255)},gutter=theme?.margins?.[0]??DEFAULT_MARGIN,scale=Math.min(gutter/10,2);return boxShadow.size===`none`?`none`:boxShadow.size===`S`?`0 ${scale*2}px ${scale*4}px ${getRGBA(rgbValues,.16)}, 0 ${scale*2}px ${scale*4}px ${getRGBA(rgbValues,.23)}`:boxShadow.size===`M`?`0 ${scale*8}px ${scale*16}px ${getRGBA(rgbValues,.19)}, 0 ${scale*4}px ${scale*4}px ${getRGBA(rgbValues,.23)}`:boxShadow.size===`L`?`0 ${scale*12}px ${scale*24}px ${getRGBA(rgbValues,.25)}, 0 ${scale*8}px ${scale*8}px ${getRGBA(rgbValues,.22)}`:``},getGridCssVariables=theme=>{let boxShadowString=getGridBoxShadow(theme);return new Map([[`--grid-font-family`,theme?.font?.fontFamily],[`--grid-background`,theme?.background],[`--grid-item-box-shadow`,boxShadowString],[`--grid-item-background`,theme?.itemsBackground],[`--grid-item-border-color`,theme?.borders?.[`border-color`]],[`--grid-item-border-style`,theme?.borders?.[`border-style`]],[`--grid-item-border-radius`,theme?.borders?.[`border-radius`]],[`--grid-item-border-width`,`${theme?.borders?.[`border-top-width`]}`],[`--grid-item-border-top-width`,theme?.borders?.[`border-top-width`]],[`--grid-item-border-right-width`,theme?.borders?.[`border-right-width`]],[`--grid-item-border-bottom-width`,theme?.borders?.[`border-bottom-width`]],[`--grid-item-border-left-width`,theme?.borders?.[`border-left-width`]]])},isGridDarkBackground=theme=>{let background=theme?.itemsBackground??theme?.background;return background?new require_color.t(background).luminance<.5:!1},applyThemeProperties=(style,fullTheme)=>{fullTheme&&getGridCssVariables(fullTheme).forEach((value,cssVariable)=>{value?style.setProperty(cssVariable,value):style.removeProperty(cssVariable)})};var buildGridActionsMenu=({item,defaultItemActionsMenu,activeAction})=>{let actionGroups=generateActionsMenu(item?.actionsMenu)??generateActionsMenu(defaultItemActionsMenu)??defaultActionsMenu();return!require_item_list.r.find(itemType=>itemType.type===item?.type)?.containsData&&!item?.actionsMenu&&!defaultItemActionsMenu&&(actionGroups=actionGroups.map(group=>({...group,actions:group.actions?.filter(action=>action.action!==`edit-data`)}))),activeAction&&(actionGroups=actionGroups.map(group=>({...group,actions:group.actions?.map(action=>({...action,active:action.action===activeAction?!0:action.active}))}))),actionGroups};const renderOverlayContent=({item,activeAction,defaultItemActionsMenu,placementItemActionsMenu,language,handleAction})=>lit.html`
|
|
255
|
+
<div class="grid-item-actions-popover" popover="manual">
|
|
256
|
+
<luzmo-item-grid-item-actions-menu
|
|
257
|
+
.actions=${buildGridActionsMenu({item,defaultItemActionsMenu,activeAction})}
|
|
258
|
+
placement=${item?.placementActionsMenu??placementItemActionsMenu??`right-start`}
|
|
259
|
+
.language=${language}
|
|
260
|
+
@luzmo-item-grid-item-action=${handleAction}
|
|
261
|
+
>
|
|
262
|
+
</luzmo-item-grid-item-actions-menu>
|
|
263
|
+
</div>
|
|
264
|
+
`,renderGridItem=({item,index,initialized,viewMode,contentLanguage,fullTheme,appServer,apiHost,authKey,authToken,handleMouseover,handleMouseout,handleFocus,handleBlur})=>{let options={...item.options,locale:contentLanguage};options.theme||=fullTheme?.id?{id:fullTheme.id}:structuredClone(fullTheme);let showDragHandle=!viewMode;return lit.html`
|
|
265
|
+
<div
|
|
266
|
+
class="luzmo-item-grid-item has-luzmo-viz-item"
|
|
267
|
+
luzmo-item-grid-item-id=${item.id??``}
|
|
268
|
+
tabindex="0"
|
|
269
|
+
role="row"
|
|
270
|
+
@mouseover=${handleMouseover}
|
|
271
|
+
@mouseout=${handleMouseout}
|
|
272
|
+
@focus=${handleFocus}
|
|
273
|
+
@blur=${handleBlur}
|
|
274
|
+
>
|
|
275
|
+
<div
|
|
276
|
+
class="grid-stack-item-content"
|
|
277
|
+
role="gridcell"
|
|
278
|
+
aria-label="Grid item ${index+1}"
|
|
279
|
+
>
|
|
280
|
+
${showDragHandle?lit.html`
|
|
281
|
+
<div class="grid-item-drag-handle">
|
|
282
|
+
<luzmo-icon .icon=${_luzmo_icons.luzmoArrows} size="s"></luzmo-icon>
|
|
283
|
+
</div>
|
|
284
|
+
`:lit.html`
|
|
285
|
+
|
|
286
|
+
`}
|
|
287
|
+
${initialized?lit.html`
|
|
288
|
+
<luzmo-embed-viz-item
|
|
289
|
+
.appServer=${appServer}
|
|
290
|
+
.apiHost=${apiHost}
|
|
291
|
+
.authKey=${authKey}
|
|
292
|
+
.authToken=${authToken}
|
|
293
|
+
.type=${item.type}
|
|
294
|
+
.slots=${item.slots}
|
|
295
|
+
.options=${options}
|
|
296
|
+
.filters=${item.filters}
|
|
297
|
+
.language=${contentLanguage}
|
|
298
|
+
.canFilter=${item.canFilter??`all`}
|
|
299
|
+
></luzmo-embed-viz-item>`:lit.html`
|
|
300
|
+
|
|
301
|
+
`}
|
|
302
|
+
</div>
|
|
303
|
+
</div>
|
|
304
|
+
`},renderGridItems=({items,initialized,viewMode,contentLanguage,fullTheme,appServer,apiHost,authKey,authToken,renderItem})=>(0,lit_directives_repeat_js.repeat)(items,item=>item.id,(item,index)=>(0,lit_directives_guard_js.guard)([item,initialized,viewMode,contentLanguage,fullTheme,appServer,apiHost,authKey,authToken],()=>renderItem(item,index))),renderGrid=({items,initialized,viewMode,contentLanguage,fullTheme,appServer,apiHost,authKey,authToken,columns,ensureGridItemId:ensureGridItemId$1,handleMouseover,handleMouseout,handleFocus,handleBlur})=>{items.forEach(item=>{ensureGridItemId$1(item)});let gridItems=renderGridItems({items,initialized,viewMode,contentLanguage,fullTheme,appServer,apiHost,authKey,authToken,renderItem:(item,index)=>renderGridItem({item,index,initialized,viewMode,contentLanguage,fullTheme,appServer,apiHost,authKey,authToken,handleMouseover,handleMouseout,handleFocus,handleBlur})});return lit.html`
|
|
305
|
+
<div
|
|
306
|
+
?dark-background=${initialized?isGridDarkBackground(fullTheme):!1}
|
|
307
|
+
class="grid-stack"
|
|
308
|
+
data-grid-columns=${columns}
|
|
309
|
+
role="grid"
|
|
310
|
+
aria-label="Dashboard grid"
|
|
311
|
+
>
|
|
312
|
+
${gridItems}
|
|
313
|
+
</div>
|
|
314
|
+
`};var Utils=class Utils{static getElements(els,root=document){if(typeof els==`string`){let doc=`getElementById`in root?root:void 0;if(doc&&!isNaN(+els[0])){let el=doc.getElementById(els);return el?[el]:[]}let list=root.querySelectorAll(els);if(!list.length&&els[0]!==`.`&&els[0]!==`#`&&(list=root.querySelectorAll(`.`+els),list.length||(list=root.querySelectorAll(`#`+els)),!list.length)){let el=root.querySelector(`[gs-id="${els}"]`);return el?[el]:[]}return Array.from(list)}return[els]}static getElement(els,root=document){if(typeof els==`string`){let doc=`getElementById`in root?root:void 0;if(!els.length)return null;if(doc&&els[0]===`#`)return doc.getElementById(els.substring(1));if(els[0]===`#`||els[0]===`.`||els[0]===`[`)return root.querySelector(els);if(doc&&!isNaN(+els[0]))return doc.getElementById(els);let el=root.querySelector(els);return doc&&!el&&(el=doc.getElementById(els)),el||=root.querySelector(`.`+els),el}return els}static lazyLoad(n){return n.lazyLoad||n.grid?.opts?.lazyLoad&&n.lazyLoad!==!1}static createDiv(classes,parent){let el=document.createElement(`div`);return classes.forEach(c=>{c&&el.classList.add(c)}),parent?.appendChild(el),el}static shouldSizeToContent(n,strict=!1){return n?.grid&&(strict?n.sizeToContent===!0||n.grid.opts.sizeToContent===!0&&n.sizeToContent===void 0:!!n.sizeToContent||n.grid.opts.sizeToContent&&n.sizeToContent!==!1)}static isIntercepted(a,b){return!(a.y>=b.y+b.h||a.y+a.h<=b.y||a.x+a.w<=b.x||a.x>=b.x+b.w)}static isTouching(a,b){return Utils.isIntercepted(a,{x:b.x-.5,y:b.y-.5,w:b.w+1,h:b.h+1})}static areaIntercept(a,b){let x0=a.x>b.x?a.x:b.x,x1=a.x+a.w<b.x+b.w?a.x+a.w:b.x+b.w;if(x1<=x0)return 0;let y0=a.y>b.y?a.y:b.y,y1=a.y+a.h<b.y+b.h?a.y+a.h:b.y+b.h;return y1<=y0?0:(x1-x0)*(y1-y0)}static area(a){return a.w*a.h}static sort(nodes,dir=1){let und=1e4;return nodes.sort((a,b)=>{let diffY=dir*((a.y??und)-(b.y??und));return diffY===0?dir*((a.x??und)-(b.x??und)):diffY})}static find(nodes,id){return id?nodes.find(n=>n.id===id):void 0}static toBool(v){return typeof v==`boolean`?v:typeof v==`string`?(v=v.toLowerCase(),!(v===``||v===`no`||v===`false`||v===`0`)):!!v}static toNumber(value){return value===null||value.length===0?void 0:Number(value)}static parseHeight(val){let h,unit=`px`;if(typeof val==`string`)if(val===`auto`||val===``)h=0;else{let match=val.match(/^(-[0-9]+\.[0-9]+|[0-9]*\.[0-9]+|-[0-9]+|[0-9]+)(px|em|rem|vh|vw|%|cm|mm)?$/);if(!match)throw Error(`Invalid height val = ${val}`);unit=match[2]||`px`,h=parseFloat(match[1])}else h=val;return{h,unit}}static defaults(target,...sources){return sources.forEach(source=>{for(let key in source){if(!source.hasOwnProperty(key))return;target[key]===null||target[key]===void 0?target[key]=source[key]:typeof source[key]==`object`&&typeof target[key]==`object`&&Utils.defaults(target[key],source[key])}}),target}static same(a,b){if(typeof a!=`object`)return a==b;if(typeof a!=typeof b||Object.keys(a).length!==Object.keys(b).length)return!1;for(let key in a)if(a[key]!==b[key])return!1;return!0}static copyPos(a,b,doMinMax=!1){return b.x!==void 0&&(a.x=b.x),b.y!==void 0&&(a.y=b.y),b.w!==void 0&&(a.w=b.w),b.h!==void 0&&(a.h=b.h),doMinMax&&(b.minW&&(a.minW=b.minW),b.minH&&(a.minH=b.minH),b.maxW&&(a.maxW=b.maxW),b.maxH&&(a.maxH=b.maxH)),a}static samePos(a,b){return a&&b&&a.x===b.x&&a.y===b.y&&(a.w||1)===(b.w||1)&&(a.h||1)===(b.h||1)}static sanitizeMinMax(node){node.minW||delete node.minW,node.minH||delete node.minH,node.maxW||delete node.maxW,node.maxH||delete node.maxH}static removeInternalAndSame(a,b){if(!(typeof a!=`object`||typeof b!=`object`)&&!(Array.isArray(a)||Array.isArray(b)))for(let key in a){let aVal=a[key],bVal=b[key];key[0]===`_`||aVal===bVal?delete a[key]:aVal&&typeof aVal==`object`&&bVal!==void 0&&(Utils.removeInternalAndSame(aVal,bVal),Object.keys(aVal).length||delete a[key])}}static removeInternalForSave(n,removeEl=!0){for(let key in n)(key[0]===`_`||n[key]===null||n[key]===void 0)&&delete n[key];delete n.grid,removeEl&&delete n.el,n.autoPosition||delete n.autoPosition,n.noResize||delete n.noResize,n.noMove||delete n.noMove,n.locked||delete n.locked,(n.w===1||n.w===n.minW)&&delete n.w,(n.h===1||n.h===n.minH)&&delete n.h}static throttle(func,delay){let isWaiting=!1;return(...args)=>{isWaiting||(isWaiting=!0,setTimeout(()=>{func(...args),isWaiting=!1},delay))}}static removePositioningStyles(el){let style=el.style;style.position&&style.removeProperty(`position`),style.left&&style.removeProperty(`left`),style.top&&style.removeProperty(`top`),style.width&&style.removeProperty(`width`),style.height&&style.removeProperty(`height`)}static getScrollElement(el){if(!el)return document.scrollingElement||document.documentElement;let style=getComputedStyle(el);return/(auto|scroll)/.test(style.overflow+style.overflowY)?el:Utils.getScrollElement(el.parentElement)}static updateScrollPosition(el,position,distance){let scrollEl=Utils.getScrollElement(el);if(!scrollEl)return;let elRect=el.getBoundingClientRect(),scrollRect=scrollEl.getBoundingClientRect(),innerHeightOrClientHeight=window.innerHeight||document.documentElement.clientHeight,offsetDiffDown=elRect.bottom-Math.min(scrollRect.bottom,innerHeightOrClientHeight),offsetDiffUp=elRect.top-Math.max(scrollRect.top,0),prevScroll=scrollEl.scrollTop;offsetDiffUp<0&&distance<0?el.offsetHeight>scrollRect.height?scrollEl.scrollTop+=distance:scrollEl.scrollTop+=Math.abs(offsetDiffUp)>Math.abs(distance)?distance:offsetDiffUp:offsetDiffDown>0&&distance>0&&(el.offsetHeight>scrollRect.height?scrollEl.scrollTop+=distance:scrollEl.scrollTop+=offsetDiffDown>distance?distance:offsetDiffDown),position.top+=scrollEl.scrollTop-prevScroll}static updateScrollResize(event,el,distance){let scrollEl=Utils.getScrollElement(el),height=scrollEl.clientHeight,offsetTop=scrollEl===Utils.getScrollElement()?0:scrollEl.getBoundingClientRect().top,pointerPosY=event.clientY-offsetTop,top=pointerPosY<distance,bottom=pointerPosY>height-distance;top?scrollEl.scrollBy({behavior:`smooth`,top:pointerPosY-distance}):bottom&&scrollEl.scrollBy({behavior:`smooth`,top:distance-(height-pointerPosY)})}static clone(obj){return typeof obj!=`object`||!obj?obj:obj instanceof Array?[...obj]:{...obj}}static cloneDeep(obj){let skipFields=[`parentGrid`,`el`,`grid`,`subGrid`,`engine`],ret=Utils.clone(obj);for(let key in ret)ret.hasOwnProperty(key)&&typeof ret[key]==`object`&&key.substring(0,2)!==`__`&&!skipFields.find(k=>k===key)&&(ret[key]=Utils.cloneDeep(obj[key]));return ret}static cloneNode(el){let node=el.cloneNode(!0);return node.removeAttribute(`id`),node}static appendTo(el,parent){let parentNode;parentNode=typeof parent==`string`?Utils.getElement(parent):parent,parentNode&&parentNode.appendChild(el)}static addElStyles(el,styles){if(styles instanceof Object)for(let s in styles)styles.hasOwnProperty(s)&&(Array.isArray(styles[s])?styles[s].forEach(val=>{el.style[s]=val}):el.style[s]=styles[s])}static initEvent(e,info){let evt={type:info.type},obj={button:0,which:0,buttons:1,bubbles:!0,cancelable:!0,target:info.target?info.target:e.target};return[`altKey`,`ctrlKey`,`metaKey`,`shiftKey`].forEach(p=>evt[p]=e[p]),[`pageX`,`pageY`,`clientX`,`clientY`,`screenX`,`screenY`].forEach(p=>evt[p]=e[p]),{...evt,...obj}}static simulateMouseEvent(e,simulatedType,target){let me=e,simulatedEvent=new MouseEvent(simulatedType,{bubbles:!0,composed:!0,cancelable:!0,view:window,detail:1,screenX:e.screenX,screenY:e.screenY,clientX:e.clientX,clientY:e.clientY,ctrlKey:me.ctrlKey??!1,altKey:me.altKey??!1,shiftKey:me.shiftKey??!1,metaKey:me.metaKey??!1,button:0,relatedTarget:e.target});(target||e.target).dispatchEvent(simulatedEvent)}static getValuesFromTransformedElement(parent){let transformReference=document.createElement(`div`);Utils.addElStyles(transformReference,{opacity:`0`,position:`fixed`,top:`0px`,left:`0px`,width:`1px`,height:`1px`,zIndex:`-999999`}),parent.appendChild(transformReference);let transformValues=transformReference.getBoundingClientRect();return parent.removeChild(transformReference),transformReference.remove(),{xScale:1/transformValues.width,yScale:1/transformValues.height,xOffset:transformValues.left,yOffset:transformValues.top}}static swap(o,a,b){if(!o)return;let tmp=o[a];o[a]=o[b],o[b]=tmp}static canBeRotated(n){return!(!n||n.w===n.h||n.locked||n.noResize||n.grid?.opts.disableResize||n.minW&&n.minW===n.maxW||n.minH&&n.minH===n.maxH)}},GridStackEngine=class GridStackEngine{constructor(opts={}){this.addedNodes=[],this.removedNodes=[],this.defaultColumn=12,this.column=opts.column||this.defaultColumn,this.column>this.defaultColumn&&(this.defaultColumn=this.column),this.maxRow=opts.maxRow,this._float=opts.float,this.nodes=opts.nodes||[],this.onChange=opts.onChange}batchUpdate(flag=!0,doPack=!0){return!!this.batchMode===flag?this:(this.batchMode=flag,flag?(this._prevFloat=this._float,this._float=!0,this.cleanNodes(),this.saveInitial()):(this._float=this._prevFloat,delete this._prevFloat,doPack&&this._packNodes(),this._notify()),this)}_useEntireRowArea(node,nn){return(!this.float||this.batchMode&&!this._prevFloat)&&!this._hasLocked&&(!node._moving||node._skipDown||nn.y<=node.y)}_fixCollisions(node,nn=node,collide,opt={}){if(this.sortNodes(-1),collide||=this.collide(node,nn),!collide)return!1;if(node._moving&&!opt.nested&&!this.float&&this.swap(node,collide))return!0;let area=nn;!this._loading&&this._useEntireRowArea(node,nn)&&(area={x:0,w:this.column,y:nn.y,h:nn.h},collide=this.collide(node,area,opt.skip));let didMove=!1,newOpt={nested:!0,pack:!1},counter=0;for(;collide||=this.collide(node,area,opt.skip);){if(counter++>this.nodes.length*2)throw Error(`Infinite collide check`);let moved;if(collide.locked||this._loading||node._moving&&!node._skipDown&&nn.y>node.y&&!this.float&&(!this.collide(collide,{...collide,y:node.y},node)||!this.collide(collide,{...collide,y:nn.y-collide.h},node))){node._skipDown=node._skipDown||nn.y>node.y;let newNN={...nn,y:collide.y+collide.h,...newOpt};moved=this._loading&&Utils.samePos(node,newNN)?!0:this.moveNode(node,newNN),(collide.locked||this._loading)&&moved?Utils.copyPos(nn,node):!collide.locked&&moved&&opt.pack&&(this._packNodes(),nn.y=collide.y+collide.h,Utils.copyPos(node,nn)),didMove||=moved}else moved=this.moveNode(collide,{...collide,y:nn.y+nn.h,skip:node,...newOpt});if(!moved)return didMove;collide=void 0}return didMove}collide(skip,area=skip,skip2){let skipId=skip._id,skip2Id=skip2?._id;return this.nodes.find(n=>n._id!==skipId&&n._id!==skip2Id&&Utils.isIntercepted(n,area))}collideAll(skip,area=skip,skip2){let skipId=skip._id,skip2Id=skip2?._id;return this.nodes.filter(n=>n._id!==skipId&&n._id!==skip2Id&&Utils.isIntercepted(n,area))}directionCollideCoverage(node,o,collides){if(!o.rect||!node._rect)return;let r0=node._rect,r={...o.rect};r.y>r0.y?(r.h+=r.y-r0.y,r.y=r0.y):r.h+=r0.y-r.y,r.x>r0.x?(r.w+=r.x-r0.x,r.x=r0.x):r.w+=r0.x-r.x;let collide,overMax=.5;for(let n of collides){if(n.locked||!n._rect)break;let r2=n._rect,yOver=Number.MAX_VALUE,xOver=Number.MAX_VALUE;r0.y<r2.y?yOver=(r.y+r.h-r2.y)/r2.h:r0.y+r0.h>r2.y+r2.h&&(yOver=(r2.y+r2.h-r.y)/r2.h),r0.x<r2.x?xOver=(r.x+r.w-r2.x)/r2.w:r0.x+r0.w>r2.x+r2.w&&(xOver=(r2.x+r2.w-r.x)/r2.w);let over=Math.min(xOver,yOver);over>overMax&&(overMax=over,collide=n)}return o.collide=collide,collide}cacheRects(w,h,top,right,bottom,left){return this.nodes.forEach(n=>n._rect={y:n.y*h+top,x:n.x*w+left,w:n.w*w-left-right,h:n.h*h-top-bottom}),this}swap(a,b){if(!b||b.locked||!a||a.locked)return!1;function _doSwap(){let x=b.x,y=b.y;return b.x=a.x,b.y=a.y,a.h==b.h?a.w==b.w?(a.x=x,a.y=y):(a.x=b.x+b.w,a.y=y):(a.x=x,a.y=b.y+b.h),a._dirty=b._dirty=!0,!0}let touching;if(a.w===b.w&&a.h===b.h&&(a.x===b.x||a.y===b.y)&&(touching=Utils.isTouching(a,b)))return _doSwap();if(touching!==!1){if(a.w===b.w&&a.x===b.x&&(touching||=Utils.isTouching(a,b))){if(b.y<a.y){let t=a;a=b,b=t}return _doSwap()}if(touching!==!1){if(a.h===b.h&&a.y===b.y&&(touching||=Utils.isTouching(a,b))){if(b.x<a.x){let t=a;a=b,b=t}return _doSwap()}return!1}}}isAreaEmpty(x,y,w,h){let nn={x:x||0,y:y||0,w:w||1,h:h||1};return!this.collide(nn)}compact(layout=`compact`,doSort=!0){if(this.nodes.length===0)return this;doSort&&this.sortNodes();let wasBatch=this.batchMode;wasBatch||this.batchUpdate();let wasColumnResize=this._inColumnResize;wasColumnResize||(this._inColumnResize=!0);let copyNodes=this.nodes;return this.nodes=[],copyNodes.forEach((n,index,list)=>{let after;n.locked||(n.autoPosition=!0,layout===`list`&&index&&(after=list[index-1])),this.addNode(n,!1,after)}),wasColumnResize||delete this._inColumnResize,wasBatch||this.batchUpdate(!1),this}set float(val){this._float!==val&&(this._float=val||!1,val||this._packNodes()._notify())}get float(){return this._float||!1}sortNodes(dir=1){return this.nodes=Utils.sort(this.nodes,dir),this}_packNodes(){return this.batchMode?this:(this.sortNodes(),this.float?this.nodes.forEach(n=>{if(n._updating||n._orig===void 0||n.y===n._orig.y)return;let newY=n.y;for(;newY>n._orig.y;)--newY,this.collide(n,{x:n.x,y:newY,w:n.w,h:n.h})||(n._dirty=!0,n.y=newY)}):this.nodes.forEach((n,i)=>{if(!n.locked)for(;n.y>0;){let newY=i===0?0:n.y-1;if(!(i===0||!this.collide(n,{x:n.x,y:newY,w:n.w,h:n.h})))break;n._dirty=n.y!==newY,n.y=newY}}),this)}prepareNode(node,resizing){node._id=node._id??GridStackEngine._idSeq++;let id=node.id;if(id){let count=1;for(;this.nodes.find(n=>n.id===node.id&&n!==node);)node.id=id+`_`+ count++}(node.x===void 0||node.y===void 0||node.x===null||node.y===null)&&(node.autoPosition=!0);let defaults={x:0,y:0,w:1,h:1};return Utils.defaults(node,defaults),node.autoPosition||delete node.autoPosition,node.noResize||delete node.noResize,node.noMove||delete node.noMove,Utils.sanitizeMinMax(node),typeof node.x==`string`&&(node.x=Number(node.x)),typeof node.y==`string`&&(node.y=Number(node.y)),typeof node.w==`string`&&(node.w=Number(node.w)),typeof node.h==`string`&&(node.h=Number(node.h)),isNaN(node.x)&&(node.x=defaults.x,node.autoPosition=!0),isNaN(node.y)&&(node.y=defaults.y,node.autoPosition=!0),isNaN(node.w)&&(node.w=defaults.w),isNaN(node.h)&&(node.h=defaults.h),this.nodeBoundFix(node,resizing),node}nodeBoundFix(node,resizing){let before=node._orig||Utils.copyPos({},node);if(node.maxW&&(node.w=Math.min(node.w||1,node.maxW)),node.maxH&&(node.h=Math.min(node.h||1,node.maxH)),node.minW&&(node.w=Math.max(node.w||1,node.minW)),node.minH&&(node.h=Math.max(node.h||1,node.minH)),(node.x||0)+(node.w||1)>this.column&&this.column<this.defaultColumn&&!this._inColumnResize&&!this.skipCacheUpdate&&node._id!=null&&this.findCacheLayout(node,this.defaultColumn)===-1){let copy={...node};copy.autoPosition||copy.x===void 0?(delete copy.x,delete copy.y):copy.x=Math.min(this.defaultColumn-1,copy.x),copy.w=Math.min(this.defaultColumn,copy.w||1),this.cacheOneLayout(copy,this.defaultColumn)}return node.w>this.column?node.w=this.column:node.w<1&&(node.w=1),this.maxRow&&node.h>this.maxRow?node.h=this.maxRow:node.h<1&&(node.h=1),node.x<0&&(node.x=0),node.y<0&&(node.y=0),node.x+node.w>this.column&&(resizing?node.w=this.column-node.x:node.x=this.column-node.w),this.maxRow&&node.y+node.h>this.maxRow&&(resizing?node.h=this.maxRow-node.y:node.y=this.maxRow-node.h),Utils.samePos(node,before)||(node._dirty=!0),this}getDirtyNodes(verify){return verify?this.nodes.filter(n=>n._dirty&&!Utils.samePos(n,n._orig)):this.nodes.filter(n=>n._dirty)}_notify(removedNodes){if(this.batchMode||!this.onChange)return this;let dirtyNodes=(removedNodes||[]).concat(this.getDirtyNodes());return this.onChange(dirtyNodes),this}cleanNodes(){return this.batchMode||this.nodes.forEach(n=>{delete n._dirty,delete n._lastTried}),this}saveInitial(){return this.nodes.forEach(n=>{n._orig=Utils.copyPos({},n),delete n._dirty}),this._hasLocked=this.nodes.some(n=>n.locked),this}restoreInitial(){return this.nodes.forEach(n=>{!n._orig||Utils.samePos(n,n._orig)||(Utils.copyPos(n,n._orig),n._dirty=!0)}),this._notify(),this}findEmptyPosition(node,nodeList=this.nodes,column=this.column,after){let start=after?after.y*column+(after.x+after.w):0,found=!1;for(let i=start;!found;++i){let x=i%column,y=Math.floor(i/column);if(x+node.w>column)continue;let box={x,y,w:node.w,h:node.h};nodeList.find(n=>Utils.isIntercepted(box,n))||((node.x!==x||node.y!==y)&&(node._dirty=!0),node.x=x,node.y=y,delete node.autoPosition,found=!0)}return found}addNode(node,triggerAddEvent=!1,after){let dup=this.nodes.find(n=>n._id===node._id);if(dup)return dup;this._inColumnResize?this.nodeBoundFix(node):this.prepareNode(node),delete node._temporaryRemoved,delete node._removeDOM;let skipCollision;return node.autoPosition&&this.findEmptyPosition(node,this.nodes,this.column,after)&&(delete node.autoPosition,skipCollision=!0),this.nodes.push(node),triggerAddEvent&&this.addedNodes.push(node),skipCollision||this._fixCollisions(node),this.batchMode||this._packNodes()._notify(),node}removeNode(node,removeDOM=!0,triggerEvent=!1){return this.nodes.find(n=>n._id===node._id)?(triggerEvent&&this.removedNodes.push(node),removeDOM&&(node._removeDOM=!0),this.nodes=this.nodes.filter(n=>n._id!==node._id),node._isAboutToRemove||this._packNodes(),this._notify([node]),this):this}removeAll(removeDOM=!0,triggerEvent=!0){if(delete this._layouts,!this.nodes.length)return this;removeDOM&&this.nodes.forEach(n=>n._removeDOM=!0);let removedNodes=this.nodes;return this.removedNodes=triggerEvent?removedNodes:[],this.nodes=[],this._notify(removedNodes)}moveNodeCheck(node,o){if(!this.changedPosConstrain(node,o))return!1;if(o.pack=!0,!this.maxRow)return this.moveNode(node,o);let clonedNode,clone=new GridStackEngine({column:this.column,float:this.float,nodes:this.nodes.map(n=>n._id===node._id?(clonedNode={...n},clonedNode):{...n})});if(!clonedNode)return!1;let canMove=clone.moveNode(clonedNode,o)&&clone.getRow()<=Math.max(this.getRow(),this.maxRow);if(!canMove&&!o.resizing&&o.collide){let collide=o.collide.el.gridstackNode;if(this.swap(node,collide))return this._notify(),!0}return canMove?(clone.nodes.filter(n=>n._dirty).forEach(c=>{let n=this.nodes.find(a=>a._id===c._id);n&&(Utils.copyPos(n,c),n._dirty=!0)}),this._notify(),!0):!1}willItFit(node){if(delete node._willFitPos,!this.maxRow)return!0;let clone=new GridStackEngine({column:this.column,float:this.float,nodes:this.nodes.map(n$1=>({...n$1}))}),n={...node};return this.cleanupNode(n),delete n.el,delete n._id,delete n.content,delete n.grid,clone.addNode(n),clone.getRow()<=this.maxRow?(node._willFitPos=Utils.copyPos({},n),!0):!1}changedPosConstrain(node,p){return p.w=p.w||node.w,p.h=p.h||node.h,node.x!==p.x||node.y!==p.y?!0:(node.maxW&&(p.w=Math.min(p.w,node.maxW)),node.maxH&&(p.h=Math.min(p.h,node.maxH)),node.minW&&(p.w=Math.max(p.w,node.minW)),node.minH&&(p.h=Math.max(p.h,node.minH)),node.w!==p.w||node.h!==p.h)}moveNode(node,o){if(!node||!o)return!1;let wasUndefinedPack;o.pack===void 0&&!this.batchMode&&(wasUndefinedPack=o.pack=!0),typeof o.x!=`number`&&(o.x=node.x),typeof o.y!=`number`&&(o.y=node.y),typeof o.w!=`number`&&(o.w=node.w),typeof o.h!=`number`&&(o.h=node.h);let resizing=node.w!==o.w||node.h!==o.h,nn=Utils.copyPos({},node,!0);if(Utils.copyPos(nn,o),this.nodeBoundFix(nn,resizing),Utils.copyPos(o,nn),!o.forceCollide&&Utils.samePos(node,o))return!1;let prevPos=Utils.copyPos({},node),collides=this.collideAll(node,nn,o.skip),needToMove=!0;if(collides.length){let activeDrag=node._moving&&!o.nested,collide=activeDrag?this.directionCollideCoverage(node,o,collides):collides[0];if(activeDrag&&collide&&node.grid?.opts?.subGridDynamic&&!node.grid._isTemp){let over=Utils.areaIntercept(o.rect,collide._rect),a1=Utils.area(o.rect),a2=Utils.area(collide._rect);over/(a1<a2?a1:a2)>.8&&(collide.grid.makeSubGrid(collide.el,void 0,node),collide=void 0)}collide?needToMove=!this._fixCollisions(node,nn,collide,o):(needToMove=!1,wasUndefinedPack&&delete o.pack)}return needToMove&&!Utils.samePos(node,nn)&&(node._dirty=!0,Utils.copyPos(node,nn)),o.pack&&this._packNodes()._notify(),!Utils.samePos(node,prevPos)}getRow(){return this.nodes.reduce((row,n)=>Math.max(row,n.y+n.h),0)}beginUpdate(node){return node._updating||(node._updating=!0,delete node._skipDown,this.batchMode||this.saveInitial()),this}endUpdate(){let n=this.nodes.find(n$1=>n$1._updating);return n&&(delete n._updating,delete n._skipDown),this}save(saveElement=!0,saveCB,column){let len=this._layouts?.length||0,layout;len&&(column?column!==this.column&&(layout=this._layouts[column]):this.column!==len-1&&(layout=this._layouts[len-1]));let list=[];return this.sortNodes(),this.nodes.forEach(n=>{let wl=layout?.find(l=>l._id===n._id),w={...n,...wl||{}};Utils.removeInternalForSave(w,!saveElement),saveCB&&saveCB(n,w),list.push(w)}),list}layoutsNodesChange(nodes){return!this._layouts||this._inColumnResize||this._layouts.forEach((layout,column)=>{if(!layout||column===this.column)return this;if(column<this.column)this._layouts[column]=void 0;else{let ratio=column/this.column;nodes.forEach(node=>{if(!node._orig)return;let n=layout.find(l=>l._id===node._id);n&&(n.y>=0&&node.y!==node._orig.y&&(n.y+=node.y-node._orig.y,n.y<0&&(n.y=0)),node.x!==node._orig.x&&(n.x=Math.round(node.x*ratio),n.x<0&&(n.x=0)),node.w!==node._orig.w&&(n.w=Math.round(node.w*ratio),n.w<1&&(n.w=1)))})}}),this}columnChanged(prevColumn,column,layout=`moveScale`){if(!this.nodes.length||!column||prevColumn===column)return this;let doCompact=layout===`compact`||layout===`list`;doCompact&&this.sortNodes(1),column<prevColumn&&this.cacheLayout(this.nodes,prevColumn),this.batchUpdate();let newNodes=[],nodes=doCompact?this.nodes:Utils.sort(this.nodes,-1);if(column>prevColumn&&this._layouts){let cacheNodes=this._layouts[column]||[],lastIndex=this._layouts.length-1;!cacheNodes.length&&prevColumn!==lastIndex&&this._layouts[lastIndex]?.length&&(prevColumn=lastIndex,this._layouts[lastIndex].forEach(cacheNode=>{let n=nodes.find(n$1=>n$1._id===cacheNode._id);n&&(!doCompact&&!cacheNode.autoPosition&&(n.x=cacheNode.x??n.x,n.y=cacheNode.y??n.y),n.w=cacheNode.w??n.w,(cacheNode.x==null||cacheNode.y===void 0)&&(n.autoPosition=!0))})),cacheNodes.forEach(cacheNode=>{let j=nodes.findIndex(n=>n._id===cacheNode._id);if(j!==-1){let n=nodes[j];if(doCompact){n.w=cacheNode.w;return}(cacheNode.autoPosition||isNaN(cacheNode.x)||isNaN(cacheNode.y))&&this.findEmptyPosition(cacheNode,newNodes),cacheNode.autoPosition||(n.x=cacheNode.x??n.x,n.y=cacheNode.y??n.y,n.w=cacheNode.w??n.w,newNodes.push(n)),nodes.splice(j,1)}})}if(doCompact)this.compact(layout,!1);else{if(nodes.length)if(typeof layout==`function`)layout(column,prevColumn,newNodes,nodes);else{let ratio=doCompact||layout===`none`?1:column/prevColumn,move=layout===`move`||layout===`moveScale`,scale=layout===`scale`||layout===`moveScale`;nodes.forEach(node=>{node.x=column===1?0:move?Math.round(node.x*ratio):Math.min(node.x,column-1),node.w=column===1||prevColumn===1?1:scale?Math.round(node.w*ratio)||1:Math.min(node.w,column),newNodes.push(node)}),nodes=[]}newNodes=Utils.sort(newNodes,-1),this._inColumnResize=!0,this.nodes=[],newNodes.forEach(node=>{this.addNode(node,!1),delete node._orig})}return this.nodes.forEach(n=>delete n._orig),this.batchUpdate(!1,!doCompact),delete this._inColumnResize,this}cacheLayout(nodes,column,clear=!1){let copy=[];return nodes.forEach((n,i)=>{n._id===void 0&&(n._id=(n.id?this.nodes.find(n2=>n2.id===n.id):void 0)?._id??GridStackEngine._idSeq++),copy[i]={x:n.x,y:n.y,w:n.w,_id:n._id}}),this._layouts=clear?[]:this._layouts||[],this._layouts[column]=copy,this}cacheOneLayout(n,column){n._id=n._id??GridStackEngine._idSeq++;let l={x:n.x,y:n.y,w:n.w,_id:n._id};(n.autoPosition||n.x===void 0)&&(delete l.x,delete l.y,n.autoPosition&&(l.autoPosition=!0)),this._layouts=this._layouts||[],this._layouts[column]=this._layouts[column]||[];let index=this.findCacheLayout(n,column);return index===-1?this._layouts[column].push(l):this._layouts[column][index]=l,this}findCacheLayout(n,column){return this._layouts?.[column]?.findIndex(l=>l._id===n._id)??-1}removeNodeFromLayoutCache(n){if(this._layouts)for(let i=0;i<this._layouts.length;i++){let index=this.findCacheLayout(n,i);index!==-1&&this._layouts[i].splice(index,1)}}cleanupNode(node){for(let prop in node)prop[0]===`_`&&prop!==`_id`&&delete node[prop];return this}};GridStackEngine._idSeq=0;const gridDefaults={alwaysShowResizeHandle:`mobile`,animate:!0,auto:!0,cellHeight:`auto`,cellHeightThrottle:100,cellHeightUnit:`px`,column:12,draggable:{handle:`.grid-stack-item-content`,appendTo:`body`,scroll:!0},handle:`.grid-stack-item-content`,itemClass:`grid-stack-item`,margin:10,marginUnit:`px`,maxRow:0,minRow:0,placeholderClass:`grid-stack-placeholder`,placeholderText:``,removableOptions:{accept:`grid-stack-item`,decline:`grid-stack-non-removable`},resizable:{handles:`se`},rtl:`auto`};var DDManager=class{};const isTouch=typeof window<`u`&&typeof document<`u`&&(`ontouchstart`in document||`ontouchstart`in window||window.DocumentTouch&&document instanceof window.DocumentTouch||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0);var DDTouch=class{};function simulateMouseEvent(e,simulatedType){e.touches.length>1||(e.cancelable&&e.preventDefault(),Utils.simulateMouseEvent(e.changedTouches[0],simulatedType))}function simulatePointerMouseEvent(e,simulatedType){e.cancelable&&e.preventDefault(),Utils.simulateMouseEvent(e,simulatedType)}function touchstart(e){DDTouch.touchHandled||(DDTouch.touchHandled=!0,simulateMouseEvent(e,`mousedown`))}function touchmove(e){DDTouch.touchHandled&&simulateMouseEvent(e,`mousemove`)}function touchend(e){if(!DDTouch.touchHandled)return;DDTouch.pointerLeaveTimeout&&(window.clearTimeout(DDTouch.pointerLeaveTimeout),delete DDTouch.pointerLeaveTimeout);let wasDragging=!!DDManager.dragElement;simulateMouseEvent(e,`mouseup`),wasDragging||simulateMouseEvent(e,`click`),DDTouch.touchHandled=!1}function pointerdown(e){e.pointerType!==`mouse`&&e.target.releasePointerCapture(e.pointerId)}function pointerenter(e){DDManager.dragElement&&e.pointerType!==`mouse`&&simulatePointerMouseEvent(e,`mouseenter`)}function pointerleave(e){DDManager.dragElement&&e.pointerType!==`mouse`&&(DDTouch.pointerLeaveTimeout=window.setTimeout(()=>{delete DDTouch.pointerLeaveTimeout,simulatePointerMouseEvent(e,`mouseleave`)},10))}var DDResizableHandle=class DDResizableHandle{constructor(host,dir,option){this.host=host,this.dir=dir,this.option=option,this.moving=!1,this._mouseDown=this._mouseDown.bind(this),this._mouseMove=this._mouseMove.bind(this),this._mouseUp=this._mouseUp.bind(this),this._keyEvent=this._keyEvent.bind(this),this._init()}_init(){if(this.option.element)try{this.el=this.option.element instanceof HTMLElement?this.option.element:this.host.querySelector(this.option.element)}catch(error){this.option.element=void 0,console.error(`Query for resizeable handle failed, falling back`,error)}return this.el||(this.el=document.createElement(`div`),this.host.appendChild(this.el)),this.el.classList.add(`ui-resizable-handle`),this.el.classList.add(`${DDResizableHandle.prefix}${this.dir}`),this.el.style.zIndex=`100`,this.el.style.userSelect=`none`,this.el.addEventListener(`mousedown`,this._mouseDown),isTouch&&(this.el.addEventListener(`touchstart`,touchstart),this.el.addEventListener(`pointerdown`,pointerdown)),this}destroy(){return this.moving&&this._mouseUp(this.mouseDownEvent),this.el.removeEventListener(`mousedown`,this._mouseDown),isTouch&&(this.el.removeEventListener(`touchstart`,touchstart),this.el.removeEventListener(`pointerdown`,pointerdown)),this.option.element||this.host.removeChild(this.el),delete this.el,delete this.host,this}_mouseDown(e){this.mouseDownEvent=e,document.addEventListener(`mousemove`,this._mouseMove,{capture:!0,passive:!0}),document.addEventListener(`mouseup`,this._mouseUp,!0),isTouch&&(this.el.addEventListener(`touchmove`,touchmove),this.el.addEventListener(`touchend`,touchend)),e.stopPropagation(),e.preventDefault()}_mouseMove(e){let s=this.mouseDownEvent;this.moving?this._triggerEvent(`move`,e):Math.abs(e.x-s.x)+Math.abs(e.y-s.y)>2&&(this.moving=!0,this._triggerEvent(`start`,this.mouseDownEvent),this._triggerEvent(`move`,e),document.addEventListener(`keydown`,this._keyEvent)),e.stopPropagation()}_mouseUp(e){this.moving&&(this._triggerEvent(`stop`,e),document.removeEventListener(`keydown`,this._keyEvent)),document.removeEventListener(`mousemove`,this._mouseMove,!0),document.removeEventListener(`mouseup`,this._mouseUp,!0),isTouch&&(this.el.removeEventListener(`touchmove`,touchmove),this.el.removeEventListener(`touchend`,touchend)),delete this.moving,delete this.mouseDownEvent,e.stopPropagation(),e.preventDefault()}_keyEvent(e){e.key===`Escape`&&(this.host.gridstackNode?.grid?.engine.restoreInitial(),this._mouseUp(this.mouseDownEvent))}_triggerEvent(name,event){return this.option[name]&&this.option[name](event),this}};DDResizableHandle.prefix=`ui-resizable-`;var DDBaseImplement=class{constructor(){this._eventRegister={}}get disabled(){return this._disabled}on(event,callback){this._eventRegister[event]=callback}off(event){delete this._eventRegister[event]}enable(){this._disabled=!1}disable(){this._disabled=!0}destroy(){delete this._eventRegister}triggerEvent(eventName,event){if(!this.disabled&&this._eventRegister&&this._eventRegister[eventName])return this._eventRegister[eventName](event)}},DDResizable=class DDResizable extends DDBaseImplement{constructor(el,option={}){super(),this.el=el,this.option=option,this.rectScale={x:1,y:1},this._ui=()=>{let containmentRect=this.el.parentElement.getBoundingClientRect(),newRect={width:this.originalRect.width,height:this.originalRect.height+this.scrolled,left:this.originalRect.left,top:this.originalRect.top-this.scrolled},rect=this.temporalRect||newRect;return{position:{left:(rect.left-containmentRect.left)*this.rectScale.x,top:(rect.top-containmentRect.top)*this.rectScale.y},size:{width:rect.width*this.rectScale.x,height:rect.height*this.rectScale.y}}},this._mouseOver=this._mouseOver.bind(this),this._mouseOut=this._mouseOut.bind(this),this.enable(),this._setupAutoHide(this.option.autoHide),this._setupHandlers()}on(event,callback){super.on(event,callback)}off(event){super.off(event)}enable(){super.enable(),this.el.classList.remove(`ui-resizable-disabled`),this._setupAutoHide(this.option.autoHide)}disable(){super.disable(),this.el.classList.add(`ui-resizable-disabled`),this._setupAutoHide(!1)}destroy(){this._removeHandlers(),this._setupAutoHide(!1),delete this.el,super.destroy()}updateOption(opts){let updateHandles=opts.handles&&opts.handles!==this.option.handles,updateAutoHide=opts.autoHide&&opts.autoHide!==this.option.autoHide;return Object.keys(opts).forEach(key=>this.option[key]=opts[key]),updateHandles&&(this._removeHandlers(),this._setupHandlers()),updateAutoHide&&this._setupAutoHide(this.option.autoHide),this}_setupAutoHide(auto){return auto?(this.el.classList.add(`ui-resizable-autohide`),this.el.addEventListener(`mouseover`,this._mouseOver),this.el.addEventListener(`mouseout`,this._mouseOut)):(this.el.classList.remove(`ui-resizable-autohide`),this.el.removeEventListener(`mouseover`,this._mouseOver),this.el.removeEventListener(`mouseout`,this._mouseOut),DDManager.overResizeElement===this&&delete DDManager.overResizeElement),this}_mouseOver(e){DDManager.overResizeElement||DDManager.dragElement||(DDManager.overResizeElement=this,this.el.classList.remove(`ui-resizable-autohide`))}_mouseOut(e){DDManager.overResizeElement===this&&(delete DDManager.overResizeElement,this.el.classList.add(`ui-resizable-autohide`))}_setupHandlers(){return this.handlers=this.option.handles.split(`,`).map(dir=>dir.trim()).map(dir=>new DDResizableHandle(this.el,dir,{element:this.option.element,start:event=>this._resizeStart(event),stop:event=>this._resizeStop(event),move:event=>this._resizing(event,dir)})),this}_resizeStart(event){this.sizeToContent=Utils.shouldSizeToContent(this.el.gridstackNode,!0),this.originalRect=this.el.getBoundingClientRect(),this.scrollEl=Utils.getScrollElement(this.el),this.scrollY=this.scrollEl.scrollTop,this.scrolled=0,this.startEvent=event,this._setupHelper(),this._applyChange();let ev=Utils.initEvent(event,{type:`resizestart`,target:this.el});return this.option.start&&this.option.start(ev,this._ui()),this.el.classList.add(`ui-resizable-resizing`),this.triggerEvent(`resizestart`,ev),this}_resizing(event,dir){this.scrolled=this.scrollEl.scrollTop-this.scrollY,this.temporalRect=this._getChange(event,dir),this._applyChange();let ev=Utils.initEvent(event,{type:`resize`,target:this.el});return this.option.resize&&this.option.resize(ev,this._ui()),this.triggerEvent(`resize`,ev),this}_resizeStop(event){let ev=Utils.initEvent(event,{type:`resizestop`,target:this.el});return this._cleanHelper(),this.option.stop&&this.option.stop(ev),this.el.classList.remove(`ui-resizable-resizing`),this.triggerEvent(`resizestop`,ev),delete this.startEvent,delete this.originalRect,delete this.temporalRect,delete this.scrollY,delete this.scrolled,this}_setupHelper(){this.elOriginStyleVal=DDResizable._originStyleProp.map(prop=>this.el.style[prop]),this.parentOriginStylePosition=this.el.parentElement.style.position;let parent=this.el.parentElement,dragTransform=Utils.getValuesFromTransformedElement(parent);return this.rectScale={x:dragTransform.xScale,y:dragTransform.yScale},getComputedStyle(this.el.parentElement).position.match(/static/)&&(this.el.parentElement.style.position=`relative`),this.el.style.position=`absolute`,this.el.style.opacity=`0.8`,this}_cleanHelper(){return DDResizable._originStyleProp.forEach((prop,i)=>{this.el.style[prop]=this.elOriginStyleVal[i]||null}),this.el.parentElement.style.position=this.parentOriginStylePosition||null,this}_getChange(event,dir){let oEvent=this.startEvent,newRect={width:this.originalRect.width,height:this.originalRect.height+this.scrolled,left:this.originalRect.left,top:this.originalRect.top-this.scrolled},offsetX=event.clientX-oEvent.clientX,offsetY=this.sizeToContent?0:event.clientY-oEvent.clientY,moveLeft,moveUp;dir.indexOf(`e`)>-1?newRect.width+=offsetX:dir.indexOf(`w`)>-1&&(newRect.width-=offsetX,newRect.left+=offsetX,moveLeft=!0),dir.indexOf(`s`)>-1?newRect.height+=offsetY:dir.indexOf(`n`)>-1&&(newRect.height-=offsetY,newRect.top+=offsetY,moveUp=!0);let constrain=this._constrainSize(newRect.width,newRect.height,moveLeft,moveUp);return Math.round(newRect.width)!==Math.round(constrain.width)&&(dir.indexOf(`w`)>-1&&(newRect.left+=newRect.width-constrain.width),newRect.width=constrain.width),Math.round(newRect.height)!==Math.round(constrain.height)&&(dir.indexOf(`n`)>-1&&(newRect.top+=newRect.height-constrain.height),newRect.height=constrain.height),newRect}_constrainSize(oWidth,oHeight,moveLeft,moveUp){let o=this.option,maxWidth=(moveLeft?o.maxWidthMoveLeft:o.maxWidth)||2**53-1,minWidth=o.minWidth/this.rectScale.x||oWidth,maxHeight=(moveUp?o.maxHeightMoveUp:o.maxHeight)||2**53-1,minHeight=o.minHeight/this.rectScale.y||oHeight;return{width:Math.min(maxWidth,Math.max(minWidth,oWidth)),height:Math.min(maxHeight,Math.max(minHeight,oHeight))}}_applyChange(){let containmentRect={left:0,top:0,width:0,height:0};if(this.el.style.position===`absolute`){let{left,top}=this.el.parentElement.getBoundingClientRect();containmentRect={left,top,width:0,height:0}}return this.temporalRect&&Object.keys(this.temporalRect).forEach(key=>{let value=this.temporalRect[key],scaleReciprocal=key===`width`||key===`left`?this.rectScale.x:key===`height`||key===`top`?this.rectScale.y:1;this.el.style[key]=(value-containmentRect[key])*scaleReciprocal+`px`}),this}_removeHandlers(){return this.handlers.forEach(handle=>handle.destroy()),delete this.handlers,this}};DDResizable._originStyleProp=[`width`,`height`,`position`,`left`,`top`,`opacity`,`zIndex`];var skipMouseDown=`input,textarea,button,select,option,[contenteditable="true"],.ui-resizable-handle`,DDDraggable=class DDDraggable extends DDBaseImplement{constructor(el,option={}){super(),this.el=el,this.option=option,this.dragTransform={xScale:1,yScale:1,xOffset:0,yOffset:0};let handleName=option?.handle?.substring(1),n=el.gridstackNode;this.dragEls=!handleName||el.classList.contains(handleName)?[el]:n?.subGrid?[el.querySelector(option.handle)||el]:Array.from(el.querySelectorAll(option.handle)),this.dragEls.length===0&&(this.dragEls=[el]),this._mouseDown=this._mouseDown.bind(this),this._mouseMove=this._mouseMove.bind(this),this._mouseUp=this._mouseUp.bind(this),this._keyEvent=this._keyEvent.bind(this),this.enable()}on(event,callback){super.on(event,callback)}off(event){super.off(event)}enable(){this.disabled!==!1&&(super.enable(),this.dragEls.forEach(dragEl=>{dragEl.addEventListener(`mousedown`,this._mouseDown),isTouch&&(dragEl.addEventListener(`touchstart`,touchstart),dragEl.addEventListener(`pointerdown`,pointerdown))}),this.el.classList.remove(`ui-draggable-disabled`))}disable(forDestroy=!1){this.disabled!==!0&&(super.disable(),this.dragEls.forEach(dragEl=>{dragEl.removeEventListener(`mousedown`,this._mouseDown),isTouch&&(dragEl.removeEventListener(`touchstart`,touchstart),dragEl.removeEventListener(`pointerdown`,pointerdown))}),forDestroy||this.el.classList.add(`ui-draggable-disabled`))}destroy(){this.dragTimeout&&window.clearTimeout(this.dragTimeout),delete this.dragTimeout,this.mouseDownEvent&&this._mouseUp(this.mouseDownEvent),this.disable(!0),delete this.el,delete this.helper,delete this.option,super.destroy()}updateOption(opts){return Object.keys(opts).forEach(key=>this.option[key]=opts[key]),this}_mouseDown(e){if(DDTouch.touchHandled&&e.isTrusted&&(DDTouch.touchHandled=!1),!DDManager.mouseHandled)return e.button!==0||!this.dragEls.find(el=>el===e.target)&&e.target.closest(skipMouseDown)||this.option.cancel&&e.target.closest(this.option.cancel)?!0:(this.mouseDownEvent=e,delete this.dragging,delete DDManager.dragElement,delete DDManager.dropElement,document.addEventListener(`mousemove`,this._mouseMove,{capture:!0,passive:!0}),document.addEventListener(`mouseup`,this._mouseUp,!0),isTouch&&(e.currentTarget.addEventListener(`touchmove`,touchmove),e.currentTarget.addEventListener(`touchend`,touchend)),e.preventDefault(),document.activeElement&&document.activeElement.blur(),DDManager.mouseHandled=!0,!0)}_callDrag(e){if(!this.dragging)return;let ev=Utils.initEvent(e,{target:this.el,type:`drag`});this.option.drag&&this.option.drag(ev,this.ui()),this.triggerEvent(`drag`,ev)}_mouseMove(e){let s=this.mouseDownEvent;if(this.lastDrag=e,this.dragging)if(this._dragFollow(e),DDManager.pauseDrag){let pause=Number.isInteger(DDManager.pauseDrag)?DDManager.pauseDrag:100;this.dragTimeout&&window.clearTimeout(this.dragTimeout),this.dragTimeout=window.setTimeout(()=>this._callDrag(e),pause)}else this._callDrag(e);else if(Math.abs(e.x-s.x)+Math.abs(e.y-s.y)>3){this.dragging=!0,DDManager.dragElement=this;let grid=this.el.gridstackNode?.grid;grid?DDManager.dropElement=grid.el.ddElement.ddDroppable:delete DDManager.dropElement,this.helper=this._createHelper(),this._setupHelperContainmentStyle(),this.dragTransform=Utils.getValuesFromTransformedElement(this.helperContainment),this.dragOffset=this._getDragOffset(e,this.el,this.helperContainment),this._setupHelperStyle(e);let ev=Utils.initEvent(e,{target:this.el,type:`dragstart`});this.option.start&&this.option.start(ev,this.ui()),this.triggerEvent(`dragstart`,ev),document.addEventListener(`keydown`,this._keyEvent)}return!0}_mouseUp(e){if(document.removeEventListener(`mousemove`,this._mouseMove,!0),document.removeEventListener(`mouseup`,this._mouseUp,!0),isTouch&&e.currentTarget&&(e.currentTarget.removeEventListener(`touchmove`,touchmove,!0),e.currentTarget.removeEventListener(`touchend`,touchend,!0)),this.dragging){delete this.dragging,delete this.el.gridstackNode?._origRotate,document.removeEventListener(`keydown`,this._keyEvent),DDManager.dropElement?.el===this.el.parentElement&&delete DDManager.dropElement,this.helperContainment.style.position=this.parentOriginStylePosition||null,this.helper!==this.el&&this.helper.remove(),this._removeHelperStyle();let ev=Utils.initEvent(e,{target:this.el,type:`dragstop`});this.option.stop&&this.option.stop(ev),this.triggerEvent(`dragstop`,ev),DDManager.dropElement&&DDManager.dropElement.drop(e)}delete this.helper,delete this.mouseDownEvent,delete DDManager.dragElement,delete DDManager.dropElement,delete DDManager.mouseHandled,e.preventDefault()}_keyEvent(e){let n=this.el.gridstackNode,grid=n?.grid||DDManager.dropElement?.el?.gridstack;if(e.key===`Escape`)n&&n._origRotate&&(n._orig=n._origRotate,delete n._origRotate),grid?.cancelDrag(),this._mouseUp(this.mouseDownEvent);else if(n&&grid&&(e.key===`r`||e.key===`R`)){if(!Utils.canBeRotated(n))return;n._origRotate=n._origRotate||{...n._orig},delete n._moving,grid.setAnimation(!1).rotate(n.el,{top:-this.dragOffset.offsetTop,left:-this.dragOffset.offsetLeft}).setAnimation(),n._moving=!0,this.dragOffset=this._getDragOffset(this.lastDrag,n.el,this.helperContainment),this.helper.style.width=this.dragOffset.width+`px`,this.helper.style.height=this.dragOffset.height+`px`,Utils.swap(n._orig,`w`,`h`),delete n._rect,this._mouseMove(this.lastDrag)}}_createHelper(){let helper=this.el;return typeof this.option.helper==`function`?helper=this.option.helper(this.el):this.option.helper===`clone`&&(helper=Utils.cloneNode(this.el)),helper.parentElement||Utils.appendTo(helper,this.option.appendTo===`parent`?this.el.parentElement:this.option.appendTo),this.dragElementOriginStyle=DDDraggable.originStyleProp.map(prop=>this.el.style[prop]),helper}_setupHelperStyle(e){this.helper.classList.add(`ui-draggable-dragging`),this.el.gridstackNode?.grid?.el.classList.add(`grid-stack-dragging`);let style=this.helper.style;return style.pointerEvents=`none`,style.width=this.dragOffset.width+`px`,style.height=this.dragOffset.height+`px`,style.willChange=`left, top`,style.position=`fixed`,this._dragFollow(e),style.transition=`none`,setTimeout(()=>{this.helper&&(style.transition=null)},0),this}_removeHelperStyle(){if(this.helper.classList.remove(`ui-draggable-dragging`),this.el.gridstackNode?.grid?.el.classList.remove(`grid-stack-dragging`),!this.helper?.gridstackNode?._isAboutToRemove&&this.dragElementOriginStyle){let helper=this.helper,transition=this.dragElementOriginStyle.transition||null;helper.style.transition=this.dragElementOriginStyle.transition=`none`,DDDraggable.originStyleProp.forEach(prop=>helper.style[prop]=this.dragElementOriginStyle[prop]||null),setTimeout(()=>helper.style.transition=transition,50)}return delete this.dragElementOriginStyle,this}_dragFollow(e){let containmentRect={left:0,top:0},style=this.helper.style,offset$2=this.dragOffset;style.left=(e.clientX+offset$2.offsetLeft-containmentRect.left)*this.dragTransform.xScale+`px`,style.top=(e.clientY+offset$2.offsetTop-containmentRect.top)*this.dragTransform.yScale+`px`}_setupHelperContainmentStyle(){return this.helperContainment=this.helper.parentElement,this.helper.style.position!==`fixed`&&(this.parentOriginStylePosition=this.helperContainment.style.position,getComputedStyle(this.helperContainment).position.match(/static/)&&(this.helperContainment.style.position=`relative`)),this}_getDragOffset(event,el,parent){let xformOffsetX=0,xformOffsetY=0;parent&&(xformOffsetX=this.dragTransform.xOffset,xformOffsetY=this.dragTransform.yOffset);let targetOffset=el.getBoundingClientRect();return{left:targetOffset.left,top:targetOffset.top,offsetLeft:-event.clientX+targetOffset.left-xformOffsetX,offsetTop:-event.clientY+targetOffset.top-xformOffsetY,width:targetOffset.width*this.dragTransform.xScale,height:targetOffset.height*this.dragTransform.yScale}}ui(){let containmentRect=this.el.parentElement.getBoundingClientRect(),offset$2=this.helper.getBoundingClientRect();return{position:{top:(offset$2.top-containmentRect.top)*this.dragTransform.yScale,left:(offset$2.left-containmentRect.left)*this.dragTransform.xScale}}}};DDDraggable.originStyleProp=[`width`,`height`,`transform`,`transform-origin`,`transition`,`pointerEvents`,`position`,`left`,`top`,`minWidth`,`willChange`];var DDDroppable=class extends DDBaseImplement{constructor(el,option={}){super(),this.el=el,this.option=option,this._mouseEnter=this._mouseEnter.bind(this),this._mouseLeave=this._mouseLeave.bind(this),this.enable(),this._setupAccept()}on(event,callback){super.on(event,callback)}off(event){super.off(event)}enable(){this.disabled!==!1&&(super.enable(),this.el.classList.add(`ui-droppable`),this.el.classList.remove(`ui-droppable-disabled`),this.el.addEventListener(`mouseenter`,this._mouseEnter),this.el.addEventListener(`mouseleave`,this._mouseLeave),isTouch&&(this.el.addEventListener(`pointerenter`,pointerenter),this.el.addEventListener(`pointerleave`,pointerleave)))}disable(forDestroy=!1){this.disabled!==!0&&(super.disable(),this.el.classList.remove(`ui-droppable`),forDestroy||this.el.classList.add(`ui-droppable-disabled`),this.el.removeEventListener(`mouseenter`,this._mouseEnter),this.el.removeEventListener(`mouseleave`,this._mouseLeave),isTouch&&(this.el.removeEventListener(`pointerenter`,pointerenter),this.el.removeEventListener(`pointerleave`,pointerleave)))}destroy(){this.disable(!0),this.el.classList.remove(`ui-droppable`),this.el.classList.remove(`ui-droppable-disabled`),super.destroy()}updateOption(opts){return Object.keys(opts).forEach(key=>this.option[key]=opts[key]),this._setupAccept(),this}_mouseEnter(e){if(!DDManager.dragElement||DDTouch.touchHandled&&e.isTrusted||!this._canDrop(DDManager.dragElement.el))return;e.preventDefault(),e.stopPropagation(),DDManager.dropElement&&DDManager.dropElement!==this&&DDManager.dropElement._mouseLeave(e,!0),DDManager.dropElement=this;let ev=Utils.initEvent(e,{target:this.el,type:`dropover`});this.option.over&&this.option.over(ev,this._ui(DDManager.dragElement)),this.triggerEvent(`dropover`,ev),this.el.classList.add(`ui-droppable-over`)}_mouseLeave(e,calledByEnter=!1){if(!DDManager.dragElement||DDManager.dropElement!==this)return;e.preventDefault(),e.stopPropagation();let ev=Utils.initEvent(e,{target:this.el,type:`dropout`});if(this.option.out&&this.option.out(ev,this._ui(DDManager.dragElement)),this.triggerEvent(`dropout`,ev),DDManager.dropElement===this&&(delete DDManager.dropElement,!calledByEnter)){let parentDrop,parent=this.el.parentElement;for(;!parentDrop&&parent;)parentDrop=parent.ddElement?.ddDroppable,parent=parent.parentElement;parentDrop&&parentDrop._mouseEnter(e)}}drop(e){e.preventDefault();let ev=Utils.initEvent(e,{target:this.el,type:`drop`});this.option.drop&&this.option.drop(ev,this._ui(DDManager.dragElement)),this.triggerEvent(`drop`,ev)}_canDrop(el){return el&&(!this.accept||this.accept(el))}_setupAccept(){return this.option.accept&&(typeof this.option.accept==`string`?this.accept=el=>el.classList.contains(this.option.accept)||el.matches(this.option.accept):this.accept=this.option.accept),this}_ui(drag){return{draggable:drag.el,...drag.ui()}}},DDElement=class DDElement{static init(el){return el.ddElement||=new DDElement(el),el.ddElement}constructor(el){this.el=el}on(eventName,callback){return this.ddDraggable&&[`drag`,`dragstart`,`dragstop`].indexOf(eventName)>-1?this.ddDraggable.on(eventName,callback):this.ddDroppable&&[`drop`,`dropover`,`dropout`].indexOf(eventName)>-1?this.ddDroppable.on(eventName,callback):this.ddResizable&&[`resizestart`,`resize`,`resizestop`].indexOf(eventName)>-1&&this.ddResizable.on(eventName,callback),this}off(eventName){return this.ddDraggable&&[`drag`,`dragstart`,`dragstop`].indexOf(eventName)>-1?this.ddDraggable.off(eventName):this.ddDroppable&&[`drop`,`dropover`,`dropout`].indexOf(eventName)>-1?this.ddDroppable.off(eventName):this.ddResizable&&[`resizestart`,`resize`,`resizestop`].indexOf(eventName)>-1&&this.ddResizable.off(eventName),this}setupDraggable(opts){return this.ddDraggable?this.ddDraggable.updateOption(opts):this.ddDraggable=new DDDraggable(this.el,opts),this}cleanDraggable(){return this.ddDraggable&&(this.ddDraggable.destroy(),delete this.ddDraggable),this}setupResizable(opts){return this.ddResizable?this.ddResizable.updateOption(opts):this.ddResizable=new DDResizable(this.el,opts),this}cleanResizable(){return this.ddResizable&&(this.ddResizable.destroy(),delete this.ddResizable),this}setupDroppable(opts){return this.ddDroppable?this.ddDroppable.updateOption(opts):this.ddDroppable=new DDDroppable(this.el,opts),this}cleanDroppable(){return this.ddDroppable&&(this.ddDroppable.destroy(),delete this.ddDroppable),this}},DDGridStack=class{resizable(el,opts,key,value){return this._getDDElements(el,opts).forEach(dEl=>{if(opts===`disable`||opts===`enable`)dEl.ddResizable&&dEl.ddResizable[opts]();else if(opts===`destroy`)dEl.ddResizable&&dEl.cleanResizable();else if(opts===`option`)dEl.setupResizable({[key]:value});else{let grid=dEl.el.gridstackNode.grid,handles=dEl.el.getAttribute(`gs-resize-handles`)||grid.opts.resizable.handles||`e,s,se`;handles===`all`&&(handles=`n,e,s,w,se,sw,ne,nw`);let autoHide=!grid.opts.alwaysShowResizeHandle;dEl.setupResizable({...grid.opts.resizable,handles,autoHide,start:opts.start,stop:opts.stop,resize:opts.resize})}}),this}draggable(el,opts,key,value){return this._getDDElements(el,opts).forEach(dEl=>{if(opts===`disable`||opts===`enable`)dEl.ddDraggable&&dEl.ddDraggable[opts]();else if(opts===`destroy`)dEl.ddDraggable&&dEl.cleanDraggable();else if(opts===`option`)dEl.setupDraggable({[key]:value});else{let grid=dEl.el.gridstackNode.grid;dEl.setupDraggable({...grid.opts.draggable,start:opts.start,stop:opts.stop,drag:opts.drag})}}),this}dragIn(el,opts){return this._getDDElements(el).forEach(dEl=>dEl.setupDraggable(opts)),this}droppable(el,opts,key,value){return typeof opts.accept==`function`&&!opts._accept&&(opts._accept=opts.accept,opts.accept=el$1=>opts._accept(el$1)),this._getDDElements(el,opts).forEach(dEl=>{opts===`disable`||opts===`enable`?dEl.ddDroppable&&dEl.ddDroppable[opts]():opts===`destroy`?dEl.ddDroppable&&dEl.cleanDroppable():opts===`option`?dEl.setupDroppable({[key]:value}):dEl.setupDroppable(opts)}),this}isDroppable(el){return!!(el?.ddElement?.ddDroppable&&!el.ddElement.ddDroppable.disabled)}isDraggable(el){return!!(el?.ddElement?.ddDraggable&&!el.ddElement.ddDraggable.disabled)}isResizable(el){return!!(el?.ddElement?.ddResizable&&!el.ddElement.ddResizable.disabled)}on(el,name,callback){return this._getDDElements(el).forEach(dEl=>dEl.on(name,event=>{callback(event,DDManager.dragElement?DDManager.dragElement.el:event.target,DDManager.dragElement?DDManager.dragElement.helper:null)})),this}off(el,name){return this._getDDElements(el).forEach(dEl=>dEl.off(name)),this}_getDDElements(els,opts){let create=els.gridstack||opts!==`destroy`&&opts!==`disable`,hosts=Utils.getElements(els);return hosts.length?hosts.map(e=>e.ddElement||(create?DDElement.init(e):null)).filter(d=>d):[]}},dd=new DDGridStack,GridStack=class GridStack{static init(options={},elOrString=`.grid-stack`){if(typeof document>`u`)return null;let el=GridStack.getGridElement(elOrString);return el?(el.gridstack||=new GridStack(el,Utils.cloneDeep(options)),el.gridstack):(typeof elOrString==`string`?console.error(`GridStack.initAll() no grid was found with selector "`+elOrString+`" - element missing or wrong selector ?
|
|
315
|
+
Note: ".grid-stack" is required for proper CSS styling and drag/drop, and is the default selector.`):console.error(`GridStack.init() no grid element was passed.`),null)}static initAll(options={},selector=`.grid-stack`){let grids=[];return typeof document>`u`?grids:(GridStack.getGridElements(selector).forEach(el=>{el.gridstack||=new GridStack(el,Utils.cloneDeep(options)),grids.push(el.gridstack)}),grids.length===0&&console.error(`GridStack.initAll() no grid was found with selector "`+selector+`" - element missing or wrong selector ?
|
|
316
|
+
Note: ".grid-stack" is required for proper CSS styling and drag/drop, and is the default selector.`),grids)}static addGrid(parent,opt={}){if(!parent)return null;let el=parent;if(el.gridstack){let grid=el.gridstack;return opt&&(grid.opts={...grid.opts,...opt}),opt.children!==void 0&&grid.load(opt.children),grid}return(!parent.classList.contains(`grid-stack`)||GridStack.addRemoveCB)&&(el=GridStack.addRemoveCB?GridStack.addRemoveCB(parent,opt,!0,!0):Utils.createDiv([`grid-stack`,opt.class],parent)),GridStack.init(opt,el)}static registerEngine(engineClass){GridStack.engineClass=engineClass}get placeholder(){if(!this._placeholder){this._placeholder=Utils.createDiv([this.opts.placeholderClass,gridDefaults.itemClass,this.opts.itemClass]);let placeholderChild=Utils.createDiv([`placeholder-content`],this._placeholder);this.opts.placeholderText&&(placeholderChild.textContent=this.opts.placeholderText)}return this._placeholder}constructor(el,opts={}){this.el=el,this.opts=opts,this.animationDelay=310,this._gsEventHandler={},this._extraDragRow=0,this.dragTransform={xScale:1,yScale:1,xOffset:0,yOffset:0},el.gridstack=this,this.opts=opts||={},el.classList.contains(`grid-stack`)||this.el.classList.add(`grid-stack`),opts.row&&(opts.minRow=opts.maxRow=opts.row,delete opts.row);let rowAttr=Utils.toNumber(el.getAttribute(`gs-row`));opts.column===`auto`&&delete opts.column,opts.alwaysShowResizeHandle!==void 0&&(opts._alwaysShowResizeHandle=opts.alwaysShowResizeHandle);let resp=opts.columnOpts;if(resp){let bk=resp.breakpoints;!resp.columnWidth&&!bk?.length?delete opts.columnOpts:(resp.columnMax=resp.columnMax||12,bk?.length>1&&bk.sort((a,b)=>(b.w||0)-(a.w||0)))}let defaults={...Utils.cloneDeep(gridDefaults),column:Utils.toNumber(el.getAttribute(`gs-column`))||gridDefaults.column,minRow:rowAttr||Utils.toNumber(el.getAttribute(`gs-min-row`))||gridDefaults.minRow,maxRow:rowAttr||Utils.toNumber(el.getAttribute(`gs-max-row`))||gridDefaults.maxRow,staticGrid:Utils.toBool(el.getAttribute(`gs-static`))||gridDefaults.staticGrid,sizeToContent:Utils.toBool(el.getAttribute(`gs-size-to-content`))||void 0,draggable:{handle:(opts.handleClass?`.`+opts.handleClass:opts.handle?opts.handle:``)||gridDefaults.draggable.handle},removableOptions:{accept:opts.itemClass||gridDefaults.removableOptions.accept,decline:gridDefaults.removableOptions.decline}};el.getAttribute(`gs-animate`)&&(defaults.animate=Utils.toBool(el.getAttribute(`gs-animate`))),opts=Utils.defaults(opts,defaults),this._initMargin(),this.checkDynamicColumn(),this._updateColumnVar(opts),opts.rtl===`auto`&&(opts.rtl=el.style.direction===`rtl`),opts.rtl&&this.el.classList.add(`grid-stack-rtl`);let parentNode=this.el.closest(`.`+gridDefaults.itemClass)?.gridstackNode;if(parentNode&&(parentNode.subGrid=this,this.parentGridNode=parentNode,this.el.classList.add(`grid-stack-nested`),parentNode.el.classList.add(`grid-stack-sub-grid`)),this._isAutoCellHeight=opts.cellHeight===`auto`,this._isAutoCellHeight||opts.cellHeight===`initial`)this.cellHeight(void 0);else{typeof opts.cellHeight==`number`&&opts.cellHeightUnit&&opts.cellHeightUnit!==gridDefaults.cellHeightUnit&&(opts.cellHeight+=opts.cellHeightUnit,delete opts.cellHeightUnit);let val=opts.cellHeight;delete opts.cellHeight,this.cellHeight(val)}if(opts.alwaysShowResizeHandle===`mobile`&&(opts.alwaysShowResizeHandle=isTouch),this._setStaticClass(),this.engine=new(opts.engineClass||GridStack.engineClass||GridStackEngine)({column:this.getColumn(),float:opts.float,maxRow:opts.maxRow,onChange:cbNodes=>{cbNodes.forEach(n=>{let el$1=n.el;el$1&&(n._removeDOM?(el$1&&el$1.remove(),delete n._removeDOM):this._writePosAttr(el$1,n))}),this._updateContainerHeight()}}),opts.auto&&(this.batchUpdate(),this.engine._loading=!0,this.getGridItems().forEach(el$1=>this._prepareElement(el$1)),delete this.engine._loading,this.batchUpdate(!1)),opts.children){let children=opts.children;delete opts.children,children.length&&this.load(children)}this.setAnimation(),opts.subGridDynamic&&!DDManager.pauseDrag&&(DDManager.pauseDrag=!0),opts.draggable?.pause!==void 0&&(DDManager.pauseDrag=opts.draggable.pause),this._setupRemoveDrop(),this._setupAcceptWidget(),this._updateResizeEvent()}_updateColumnVar(opts=this.opts){this.el.classList.add(`gs-`+opts.column),typeof opts.column==`number`&&this.el.style.setProperty(`--gs-column-width`,`${100/opts.column}%`)}addWidget(w){if(!w)return;if(typeof w==`string`){console.error(`V11: GridStack.addWidget() does not support string anymore. see #2736`);return}if(w.ELEMENT_NODE)return console.error(`V11: GridStack.addWidget() does not support HTMLElement anymore. use makeWidget()`),this.makeWidget(w);let el,node=w;if(node.grid=this,el=node.el?node.el:GridStack.addRemoveCB?GridStack.addRemoveCB(this.el,w,!0,!1):this.createWidgetDivs(node),!el)return;if(node=el.gridstackNode,node&&el.parentElement===this.el&&this.engine.nodes.find(n=>n._id===node._id))return el;let domAttr=this._readAttr(el);return Utils.defaults(w,domAttr),this.engine.prepareNode(w),this.el.appendChild(el),this.makeWidget(el,w),el}createWidgetDivs(n){let el=Utils.createDiv([`grid-stack-item`,this.opts.itemClass]),cont=Utils.createDiv([`grid-stack-item-content`],el);return Utils.lazyLoad(n)?n.visibleObservable||(n.visibleObservable=new IntersectionObserver(([entry])=>{entry.isIntersecting&&(n.visibleObservable?.disconnect(),delete n.visibleObservable,GridStack.renderCB(cont,n),n.grid?.prepareDragDrop(n.el))}),window.setTimeout(()=>n.visibleObservable?.observe(el))):GridStack.renderCB(cont,n),el}makeSubGrid(el,ops,nodeToAdd,saveContent=!0){let node=el.gridstackNode;if(node||=this.makeWidget(el).gridstackNode,node.subGrid?.el)return node.subGrid;let subGridTemplate,grid=this;for(;grid&&!subGridTemplate;)subGridTemplate=grid.opts?.subGridOpts,grid=grid.parentGridNode?.grid;ops=Utils.cloneDeep({...this.opts,id:void 0,children:void 0,column:`auto`,columnOpts:void 0,layout:`list`,subGridOpts:void 0,...subGridTemplate||{},...ops||node.subGridOpts||{}}),node.subGridOpts=ops;let autoColumn;ops.column===`auto`&&(autoColumn=!0,ops.column=Math.max(node.w||1,nodeToAdd?.w||1),delete ops.columnOpts);let content=node.el.querySelector(`.grid-stack-item-content`),newItem,newItemOpt;if(saveContent&&(this._removeDD(node.el),newItemOpt={...node,x:0,y:0},Utils.removeInternalForSave(newItemOpt),delete newItemOpt.subGridOpts,node.content&&(newItemOpt.content=node.content,delete node.content),GridStack.addRemoveCB?newItem=GridStack.addRemoveCB(this.el,newItemOpt,!0,!1):(newItem=Utils.createDiv([`grid-stack-item`]),newItem.appendChild(content),content=Utils.createDiv([`grid-stack-item-content`],node.el)),this.prepareDragDrop(node.el)),nodeToAdd){let w=autoColumn?ops.column:node.w,h=node.h+nodeToAdd.h,style=node.el.style;style.transition=`none`,this.update(node.el,{w,h}),setTimeout(()=>style.transition=null)}let subGrid=node.subGrid=GridStack.addGrid(content,ops);return nodeToAdd?._moving&&(subGrid._isTemp=!0),autoColumn&&(subGrid._autoColumn=!0),saveContent&&subGrid.makeWidget(newItem,newItemOpt),nodeToAdd&&(nodeToAdd._moving?window.setTimeout(()=>Utils.simulateMouseEvent(nodeToAdd._event,`mouseenter`,subGrid.el),0):subGrid.makeWidget(node.el,node)),this.resizeToContentCheck(!1,node),subGrid}removeAsSubGrid(nodeThatRemoved){let pGrid=this.parentGridNode?.grid;pGrid&&(pGrid.batchUpdate(),pGrid.removeWidget(this.parentGridNode.el,!0,!0),this.engine.nodes.forEach(n=>{n.x+=this.parentGridNode.x,n.y+=this.parentGridNode.y,pGrid.makeWidget(n.el,n)}),pGrid.batchUpdate(!1),this.parentGridNode&&delete this.parentGridNode.subGrid,delete this.parentGridNode,nodeThatRemoved&&window.setTimeout(()=>Utils.simulateMouseEvent(nodeThatRemoved._event,`mouseenter`,pGrid.el),0))}save(saveContent=!0,saveGridOpt=!1,saveCB=GridStack.saveCB,column){let list=this.engine.save(saveContent,saveCB,column);if(list.forEach(n=>{if(saveContent&&n.el&&!n.subGrid&&!saveCB)n.content=n.el.querySelector(`.grid-stack-item-content`)?.innerHTML,n.content||delete n.content;else if(!saveContent&&!saveCB&&delete n.content,n.subGrid?.el){let column$1=n.w||n.subGrid.getColumn(),listOrOpt=n.subGrid.save(saveContent,saveGridOpt,saveCB,column$1);n.subGridOpts=saveGridOpt?listOrOpt:{children:listOrOpt},delete n.subGrid}delete n.el}),saveGridOpt){let o=Utils.cloneDeep(this.opts);o.marginBottom===o.marginTop&&o.marginRight===o.marginLeft&&o.marginTop===o.marginRight&&(o.margin=o.marginTop,delete o.marginTop,delete o.marginRight,delete o.marginBottom,delete o.marginLeft),o.rtl===(this.el.style.direction===`rtl`)&&(o.rtl=`auto`),this._isAutoCellHeight&&(o.cellHeight=`auto`),this._autoColumn&&(o.column=`auto`);let origShow=o._alwaysShowResizeHandle;return delete o._alwaysShowResizeHandle,origShow===void 0?delete o.alwaysShowResizeHandle:o.alwaysShowResizeHandle=origShow,Utils.removeInternalAndSame(o,gridDefaults),o.children=list,o}return list}load(items,addRemove=GridStack.addRemoveCB||!0){items=Utils.cloneDeep(items);let column=this.getColumn();items.forEach(n=>{n.w=n.w||n.minW||1,n.h=n.h||n.minH||1}),items=Utils.sort(items),this.engine.skipCacheUpdate=this._ignoreLayoutsNodeChange=!0;let maxColumn=0;items.forEach(n=>{maxColumn=Math.max(maxColumn,(n.x||0)+n.w)}),maxColumn>this.engine.defaultColumn&&(this.engine.defaultColumn=maxColumn),maxColumn>column&&(this.engine.nodes.length===0&&this.responseLayout?(this.engine.nodes=items,this.engine.columnChanged(maxColumn,column,this.responseLayout),items=this.engine.nodes,this.engine.nodes=[],delete this.responseLayout):this.engine.cacheLayout(items,maxColumn,!0));let prevCB=GridStack.addRemoveCB;typeof addRemove==`function`&&(GridStack.addRemoveCB=addRemove);let removed=[];this.batchUpdate();let blank=!this.engine.nodes.length,noAnim=blank&&this.opts.animate;noAnim&&this.setAnimation(!1),!blank&&addRemove&&[...this.engine.nodes].forEach(n=>{n.id&&(Utils.find(items,n.id)||(GridStack.addRemoveCB&&GridStack.addRemoveCB(this.el,n,!1,!1),removed.push(n),this.removeWidget(n.el,!0,!1)))}),this.engine._loading=!0;let updateNodes=[];return this.engine.nodes=this.engine.nodes.filter(n=>Utils.find(items,n.id)?(updateNodes.push(n),!1):!0),items.forEach(w=>{let item=Utils.find(updateNodes,w.id);if(item){if(Utils.shouldSizeToContent(item)&&(w.h=item.h),this.engine.nodeBoundFix(w),(w.autoPosition||w.x===void 0||w.y===void 0)&&(w.w=w.w||item.w,w.h=w.h||item.h,this.engine.findEmptyPosition(w)),this.engine.nodes.push(item),Utils.samePos(item,w)&&this.engine.nodes.length>1&&(this.moveNode(item,{...w,forceCollide:!0}),Utils.copyPos(w,item)),this.update(item.el,w),w.subGridOpts?.children){let sub=item.el.querySelector(`.grid-stack`);sub&&sub.gridstack&&sub.gridstack.load(w.subGridOpts.children)}}else addRemove&&this.addWidget(w)}),delete this.engine._loading,this.engine.removedNodes=removed,this.batchUpdate(!1),delete this._ignoreLayoutsNodeChange,delete this.engine.skipCacheUpdate,prevCB?GridStack.addRemoveCB=prevCB:delete GridStack.addRemoveCB,noAnim&&this.setAnimation(!0,!0),this}batchUpdate(flag=!0){return this.engine.batchUpdate(flag),flag||(this._updateContainerHeight(),this._triggerRemoveEvent(),this._triggerAddEvent(),this._triggerChangeEvent()),this}getCellHeight(forcePixel=!1){if(this.opts.cellHeight&&this.opts.cellHeight!==`auto`&&(!forcePixel||!this.opts.cellHeightUnit||this.opts.cellHeightUnit===`px`))return this.opts.cellHeight;if(this.opts.cellHeightUnit===`rem`)return this.opts.cellHeight*parseFloat(getComputedStyle(document.documentElement).fontSize);if(this.opts.cellHeightUnit===`em`)return this.opts.cellHeight*parseFloat(getComputedStyle(this.el).fontSize);if(this.opts.cellHeightUnit===`cm`)return this.opts.cellHeight*(96/2.54);if(this.opts.cellHeightUnit===`mm`)return this.opts.cellHeight*(96/2.54)/10;let el=this.el.querySelector(`.`+this.opts.itemClass);if(el){let h=Utils.toNumber(el.getAttribute(`gs-h`))||1;return Math.round(el.offsetHeight/h)}let rows=parseInt(this.el.getAttribute(`gs-current-row`));return rows?Math.round(this.el.getBoundingClientRect().height/rows):this.opts.cellHeight}cellHeight(val){if(val!==void 0&&this._isAutoCellHeight!==(val===`auto`)&&(this._isAutoCellHeight=val===`auto`,this._updateResizeEvent()),(val===`initial`||val===`auto`)&&(val=void 0),val===void 0){let marginDiff=-this.opts.marginRight-this.opts.marginLeft+this.opts.marginTop+this.opts.marginBottom;val=this.cellWidth()+marginDiff}let data=Utils.parseHeight(val);return this.opts.cellHeightUnit===data.unit&&this.opts.cellHeight===data.h?this:(this.opts.cellHeightUnit=data.unit,this.opts.cellHeight=data.h,this.el.style.setProperty(`--gs-cell-height`,`${this.opts.cellHeight}${this.opts.cellHeightUnit}`),this._updateContainerHeight(),this.resizeToContentCheck(),this)}cellWidth(){return this._widthOrContainer()/this.getColumn()}_widthOrContainer(forBreakpoint=!1){return forBreakpoint&&this.opts.columnOpts?.breakpointForWindow?window.innerWidth:this.el.clientWidth||this.el.parentElement.clientWidth||window.innerWidth}checkDynamicColumn(){let resp=this.opts.columnOpts;if(!resp||!resp.columnWidth&&!resp.breakpoints?.length)return!1;let column=this.getColumn(),newColumn=column,w=this._widthOrContainer(!0);if(resp.columnWidth)newColumn=Math.min(Math.round(w/resp.columnWidth)||1,resp.columnMax);else{newColumn=resp.columnMax;let i=0;for(;i<resp.breakpoints.length&&w<=resp.breakpoints[i].w;)newColumn=resp.breakpoints[i++].c||column}if(newColumn!==column){let bk=resp.breakpoints?.find(b=>b.c===newColumn);return this.column(newColumn,bk?.layout||resp.layout),!0}return!1}compact(layout=`compact`,doSort=!0){return this.engine.compact(layout,doSort),this._triggerChangeEvent(),this}column(column,layout=`moveScale`){if(!column||column<1||this.opts.column===column)return this;let oldColumn=this.getColumn();return this.opts.column=column,this.engine?(this.engine.column=column,this.el.classList.remove(`gs-`+oldColumn),this._updateColumnVar(),this.engine.columnChanged(oldColumn,column,layout),this._isAutoCellHeight&&this.cellHeight(),this.resizeToContentCheck(!0),this._ignoreLayoutsNodeChange=!0,this._triggerChangeEvent(),delete this._ignoreLayoutsNodeChange,this):(this.responseLayout=layout,this)}getColumn(){return this.opts.column}getGridItems(){return Array.from(this.el.children).filter(el=>el.matches(`.`+this.opts.itemClass)&&!el.matches(`.`+this.opts.placeholderClass))}isIgnoreChangeCB(){return this._ignoreLayoutsNodeChange}destroy(removeDOM=!0){if(this.el)return this.offAll(),this._updateResizeEvent(!0),this.setStatic(!0,!1),this.setAnimation(!1),removeDOM?this.el.parentNode.removeChild(this.el):(this.removeAll(removeDOM),this.el.removeAttribute(`gs-current-row`)),this.parentGridNode&&delete this.parentGridNode.subGrid,delete this.parentGridNode,delete this.opts,delete this._placeholder?.gridstackNode,delete this._placeholder,delete this.engine,delete this.el.gridstack,delete this.el,this}float(val){return this.opts.float!==val&&(this.opts.float=this.engine.float=val,this._triggerChangeEvent()),this}getFloat(){return this.engine.float}getCellFromPixel(position,useDocRelative=!1){let box=this.el.getBoundingClientRect(),containerPos;containerPos=useDocRelative?{top:box.top+document.documentElement.scrollTop,left:box.left}:{top:this.el.offsetTop,left:this.el.offsetLeft};let relativeLeft=position.left-containerPos.left,relativeTop=position.top-containerPos.top,columnWidth=box.width/this.getColumn(),rowHeight=box.height/parseInt(this.el.getAttribute(`gs-current-row`));return{x:Math.floor(relativeLeft/columnWidth),y:Math.floor(relativeTop/rowHeight)}}getRow(){return Math.max(this.engine.getRow(),this.opts.minRow||0)}isAreaEmpty(x,y,w,h){return this.engine.isAreaEmpty(x,y,w,h)}makeWidget(els,options){let el=GridStack.getElement(els);if(!el||el.gridstackNode)return el;el.parentElement||this.el.appendChild(el),this._prepareElement(el,!0,options);let node=el.gridstackNode;this._updateContainerHeight(),node.subGridOpts&&this.makeSubGrid(el,node.subGridOpts,void 0,!1);let resetIgnoreLayoutsNodeChange;return this.opts.column===1&&!this._ignoreLayoutsNodeChange&&(resetIgnoreLayoutsNodeChange=this._ignoreLayoutsNodeChange=!0),this._triggerAddEvent(),this._triggerChangeEvent(),resetIgnoreLayoutsNodeChange&&delete this._ignoreLayoutsNodeChange,el}on(name,callback){return name.indexOf(` `)===-1?(name===`change`||name===`added`||name===`removed`||name===`enable`||name===`disable`?(name===`enable`||name===`disable`?this._gsEventHandler[name]=event=>callback(event):this._gsEventHandler[name]=event=>{event.detail&&callback(event,event.detail)},this.el.addEventListener(name,this._gsEventHandler[name])):name===`drag`||name===`dragstart`||name===`dragstop`||name===`resizestart`||name===`resize`||name===`resizestop`||name===`dropped`||name===`resizecontent`?this._gsEventHandler[name]=callback:console.error(`GridStack.on(`+name+`) event not supported`),this):(name.split(` `).forEach(name$1=>this.on(name$1,callback)),this)}off(name){return name.indexOf(` `)===-1?((name===`change`||name===`added`||name===`removed`||name===`enable`||name===`disable`)&&this._gsEventHandler[name]&&this.el.removeEventListener(name,this._gsEventHandler[name]),delete this._gsEventHandler[name],this):(name.split(` `).forEach(name$1=>this.off(name$1)),this)}offAll(){return Object.keys(this._gsEventHandler).forEach(key=>this.off(key)),this}removeWidget(els,removeDOM=!0,triggerEvent=!0){return els?(GridStack.getElements(els).forEach(el=>{if(el.parentElement&&el.parentElement!==this.el)return;let node=el.gridstackNode;node||=this.engine.nodes.find(n=>el===n.el),node&&(removeDOM&&GridStack.addRemoveCB&&GridStack.addRemoveCB(this.el,node,!1,!1),delete el.gridstackNode,this._removeDD(el),this.engine.removeNode(node,removeDOM,triggerEvent),removeDOM&&el.parentElement&&el.remove())}),triggerEvent&&(this._triggerRemoveEvent(),this._triggerChangeEvent()),this):(console.error(`Error: GridStack.removeWidget(undefined) called`),this)}removeAll(removeDOM=!0,triggerEvent=!0){return this.engine.nodes.forEach(n=>{removeDOM&&GridStack.addRemoveCB&&GridStack.addRemoveCB(this.el,n,!1,!1),delete n.el.gridstackNode,this.opts.staticGrid||this._removeDD(n.el)}),this.engine.removeAll(removeDOM,triggerEvent),triggerEvent&&this._triggerRemoveEvent(),this}setAnimation(doAnimate=this.opts.animate,delay){return delay?setTimeout(()=>{this.opts&&this.setAnimation(doAnimate)}):doAnimate?this.el.classList.add(`grid-stack-animate`):this.el.classList.remove(`grid-stack-animate`),this.opts.animate=doAnimate,this}hasAnimationCSS(){return this.el.classList.contains(`grid-stack-animate`)}setStatic(val,updateClass=!0,recurse=!0){return!!this.opts.staticGrid===val?this:(val?this.opts.staticGrid=!0:delete this.opts.staticGrid,this._setupRemoveDrop(),this._setupAcceptWidget(),this.engine.nodes.forEach(n=>{this.prepareDragDrop(n.el),n.subGrid&&recurse&&n.subGrid.setStatic(val,updateClass,recurse)}),updateClass&&this._setStaticClass(),this)}updateOptions(o){let opts=this.opts;return o===opts?this:(o.acceptWidgets!==void 0&&(opts.acceptWidgets=o.acceptWidgets,this._setupAcceptWidget()),o.animate!==void 0&&this.setAnimation(o.animate),o.cellHeight&&this.cellHeight(o.cellHeight),o.class!==void 0&&o.class!==opts.class&&(opts.class&&this.el.classList.remove(opts.class),o.class&&this.el.classList.add(o.class)),o.columnOpts?(this.opts.columnOpts=o.columnOpts,this.checkDynamicColumn()):o.columnOpts===null&&this.opts.columnOpts?(delete this.opts.columnOpts,this._updateResizeEvent()):typeof o.column==`number`&&this.column(o.column),o.margin!==void 0&&this.margin(o.margin),o.staticGrid!==void 0&&this.setStatic(o.staticGrid),o.disableDrag!==void 0&&!o.staticGrid&&this.enableMove(!o.disableDrag),o.disableResize!==void 0&&!o.staticGrid&&this.enableResize(!o.disableResize),o.float!==void 0&&this.float(o.float),o.row===void 0?(o.minRow!==void 0&&(opts.minRow=o.minRow,this._updateContainerHeight()),o.maxRow!==void 0&&(opts.maxRow=o.maxRow)):(opts.minRow=opts.maxRow=opts.row=o.row,this._updateContainerHeight()),o.lazyLoad!==void 0&&(opts.lazyLoad=o.lazyLoad),o.children?.length&&this.load(o.children),this)}update(els,opt){return GridStack.getElements(els).forEach(el=>{let n=el?.gridstackNode;if(!n)return;let w={...Utils.copyPos({},n),...Utils.cloneDeep(opt)};this.engine.nodeBoundFix(w),delete w.autoPosition;let keys=[`x`,`y`,`w`,`h`],m;if(keys.some(k=>w[k]!==void 0&&w[k]!==n[k])&&(m={},keys.forEach(k=>{m[k]=w[k]===void 0?n[k]:w[k],delete w[k]})),!m&&(w.minW||w.minH||w.maxW||w.maxH)&&(m={}),w.content!==void 0){let itemContent=el.querySelector(`.grid-stack-item-content`);itemContent&&itemContent.textContent!==w.content&&(n.content=w.content,GridStack.renderCB(itemContent,w),n.subGrid?.el&&(itemContent.appendChild(n.subGrid.el),n.subGrid._updateContainerHeight())),delete w.content}let changed=!1,ddChanged=!1;for(let key in w)key[0]!==`_`&&n[key]!==w[key]&&(n[key]=w[key],changed=!0,ddChanged||=!this.opts.staticGrid&&(key===`noResize`||key===`noMove`||key===`locked`));if(Utils.sanitizeMinMax(n),m){let widthChanged=m.w!==void 0&&m.w!==n.w;this.moveNode(n,m),widthChanged&&n.subGrid?n.subGrid.onResize(this.hasAnimationCSS()?n.w:void 0):this.resizeToContentCheck(widthChanged,n),delete n._orig}(m||changed)&&this._writeAttr(el,n),ddChanged&&this.prepareDragDrop(n.el),GridStack.updateCB&&GridStack.updateCB(n)}),this}moveNode(n,m){let wasUpdating=n._updating;wasUpdating||this.engine.cleanNodes().beginUpdate(n),this.engine.moveNode(n,m),this._updateContainerHeight(),wasUpdating||(this._triggerChangeEvent(),this.engine.endUpdate())}resizeToContent(el){if(!el||(el.classList.remove(`size-to-content-max`),!el.clientHeight))return;let n=el.gridstackNode;if(!n)return;let grid=n.grid;if(!grid||el.parentElement!==grid.el)return;let cell=grid.getCellHeight(!0);if(!cell)return;let height=n.h?n.h*cell:el.clientHeight,item;if(n.resizeToContentParent&&(item=el.querySelector(n.resizeToContentParent)),item||=el.querySelector(GridStack.resizeToContentParent),!item)return;let padding=el.clientHeight-item.clientHeight,itemH=n.h?n.h*cell-padding:item.clientHeight,wantedH;if(n.subGrid){wantedH=n.subGrid.getRow()*n.subGrid.getCellHeight(!0);let subRec=n.subGrid.el.getBoundingClientRect(),parentRec=el.getBoundingClientRect();wantedH+=subRec.top-parentRec.top}else if(n.subGridOpts?.children?.length)return;else{let child=item.firstElementChild;if(!child){console.error(`Error: GridStack.resizeToContent() widget id:${n.id} '${GridStack.resizeToContentParent}'.firstElementChild is null, make sure to have a div like container. Skipping sizing.`);return}wantedH=child.getBoundingClientRect().height||itemH}if(itemH===wantedH)return;height+=wantedH-itemH;let h=Math.ceil(height/cell),softMax=Number.isInteger(n.sizeToContent)?n.sizeToContent:0;softMax&&h>softMax&&(h=softMax,el.classList.add(`size-to-content-max`)),n.minH&&h<n.minH?h=n.minH:n.maxH&&h>n.maxH&&(h=n.maxH),h!==n.h&&(grid._ignoreLayoutsNodeChange=!0,grid.moveNode(n,{h}),delete grid._ignoreLayoutsNodeChange)}resizeToContentCBCheck(el){GridStack.resizeToContentCB?GridStack.resizeToContentCB(el):this.resizeToContent(el)}rotate(els,relative){return GridStack.getElements(els).forEach(el=>{let n=el.gridstackNode;if(!Utils.canBeRotated(n))return;let rot={w:n.h,h:n.w,minH:n.minW,minW:n.minH,maxH:n.maxW,maxW:n.maxH};if(relative){let pivotX=relative.left>0?Math.floor(relative.left/this.cellWidth()):0,pivotY=relative.top>0?Math.floor(relative.top/this.opts.cellHeight):0;rot.x=n.x+pivotX-(n.h-(pivotY+1)),rot.y=n.y+pivotY-pivotX}Object.keys(rot).forEach(k=>{rot[k]===void 0&&delete rot[k]});let _orig=n._orig;this.update(el,rot),n._orig=_orig}),this}margin(value){if(!(typeof value==`string`&&value.split(` `).length>1)){let data=Utils.parseHeight(value);if(this.opts.marginUnit===data.unit&&this.opts.margin===data.h)return}return this.opts.margin=value,this.opts.marginTop=this.opts.marginBottom=this.opts.marginLeft=this.opts.marginRight=void 0,this._initMargin(),this}getMargin(){return this.opts.margin}willItFit(node){return this.engine.willItFit(node)}_triggerChangeEvent(){if(this.engine.batchMode)return this;let elements=this.engine.getDirtyNodes(!0);return elements&&elements.length&&(this._ignoreLayoutsNodeChange||this.engine.layoutsNodesChange(elements),this._triggerEvent(`change`,elements)),this.engine.saveInitial(),this}_triggerAddEvent(){if(this.engine.batchMode)return this;if(this.engine.addedNodes?.length){this._ignoreLayoutsNodeChange||this.engine.layoutsNodesChange(this.engine.addedNodes),this.engine.addedNodes.forEach(n=>{delete n._dirty});let addedNodes=[...this.engine.addedNodes];this.engine.addedNodes=[],this._triggerEvent(`added`,addedNodes)}return this}_triggerRemoveEvent(){if(this.engine.batchMode)return this;if(this.engine.removedNodes?.length){let removedNodes=[...this.engine.removedNodes];this.engine.removedNodes=[],this._triggerEvent(`removed`,removedNodes)}return this}_triggerEvent(type,data){let event=data?new CustomEvent(type,{bubbles:!1,detail:data}):new Event(type),grid=this;for(;grid.parentGridNode;)grid=grid.parentGridNode.grid;return grid.el.dispatchEvent(event),this}_updateContainerHeight(){if(!this.engine||this.engine.batchMode)return this;let parent=this.parentGridNode,row=this.getRow()+this._extraDragRow,cellHeight=this.opts.cellHeight,unit=this.opts.cellHeightUnit;if(!cellHeight)return this;if(!parent&&!this.opts.minRow){let cssMinHeight=Utils.parseHeight(getComputedStyle(this.el).minHeight);if(cssMinHeight.h>0&&cssMinHeight.unit===unit){let minRow=Math.floor(cssMinHeight.h/cellHeight);row<minRow&&(row=minRow)}}return this.el.setAttribute(`gs-current-row`,String(row)),this.el.style.removeProperty(`min-height`),this.el.style.removeProperty(`height`),row&&(this.el.style[parent?`minHeight`:`height`]=row*cellHeight+unit),parent&&Utils.shouldSizeToContent(parent)&&parent.grid.resizeToContentCBCheck(parent.el),this}_prepareElement(el,triggerAddEvent=!1,node){node||=this._readAttr(el),el.gridstackNode=node,node.el=el,node.grid=this,node=this.engine.addNode(node,triggerAddEvent),this._writeAttr(el,node),el.classList.add(gridDefaults.itemClass,this.opts.itemClass);let sizeToContent=Utils.shouldSizeToContent(node);return sizeToContent?el.classList.add(`size-to-content`):el.classList.remove(`size-to-content`),sizeToContent&&this.resizeToContentCheck(!1,node),Utils.lazyLoad(node)||this.prepareDragDrop(node.el),this}_writePosAttr(el,n){return(!n._moving&&!n._resizing||this._placeholder===el)&&(el.style.top=n.y?n.y===1?`var(--gs-cell-height)`:`calc(${n.y} * var(--gs-cell-height))`:null,el.style.left=n.x?n.x===1?`var(--gs-column-width)`:`calc(${n.x} * var(--gs-column-width))`:null,el.style.width=n.w>1?`calc(${n.w} * var(--gs-column-width))`:null,el.style.height=n.h>1?`calc(${n.h} * var(--gs-cell-height))`:null),el.setAttribute(`gs-x`,String(n.x)),el.setAttribute(`gs-y`,String(n.y)),n.w>1?el.setAttribute(`gs-w`,String(n.w)):el.removeAttribute(`gs-w`),n.h>1?el.setAttribute(`gs-h`,String(n.h)):el.removeAttribute(`gs-h`),this}_writeAttr(el,node){if(!node)return this;this._writePosAttr(el,node);let attrs={noResize:`gs-no-resize`,noMove:`gs-no-move`,locked:`gs-locked`,id:`gs-id`,sizeToContent:`gs-size-to-content`};for(let key in attrs)node[key]?el.setAttribute(attrs[key],String(node[key])):el.removeAttribute(attrs[key]);return this}_readAttr(el,clearDefaultAttr=!0){let n={};n.x=Utils.toNumber(el.getAttribute(`gs-x`)),n.y=Utils.toNumber(el.getAttribute(`gs-y`)),n.w=Utils.toNumber(el.getAttribute(`gs-w`)),n.h=Utils.toNumber(el.getAttribute(`gs-h`)),n.autoPosition=Utils.toBool(el.getAttribute(`gs-auto-position`)),n.noResize=Utils.toBool(el.getAttribute(`gs-no-resize`)),n.noMove=Utils.toBool(el.getAttribute(`gs-no-move`)),n.locked=Utils.toBool(el.getAttribute(`gs-locked`));let attr=el.getAttribute(`gs-size-to-content`);for(let key in attr&&(attr===`true`||attr===`false`?n.sizeToContent=Utils.toBool(attr):n.sizeToContent=parseInt(attr,10)),n.id=el.getAttribute(`gs-id`),n.maxW=Utils.toNumber(el.getAttribute(`gs-max-w`)),n.minW=Utils.toNumber(el.getAttribute(`gs-min-w`)),n.maxH=Utils.toNumber(el.getAttribute(`gs-max-h`)),n.minH=Utils.toNumber(el.getAttribute(`gs-min-h`)),clearDefaultAttr&&(n.w===1&&el.removeAttribute(`gs-w`),n.h===1&&el.removeAttribute(`gs-h`),n.maxW&&el.removeAttribute(`gs-max-w`),n.minW&&el.removeAttribute(`gs-min-w`),n.maxH&&el.removeAttribute(`gs-max-h`),n.minH&&el.removeAttribute(`gs-min-h`)),n){if(!n.hasOwnProperty(key))return;!n[key]&&n[key]!==0&&key!==`sizeToContent`&&delete n[key]}return n}_setStaticClass(){let classes=[`grid-stack-static`];return this.opts.staticGrid?(this.el.classList.add(...classes),this.el.setAttribute(`gs-static`,`true`)):(this.el.classList.remove(...classes),this.el.removeAttribute(`gs-static`)),this}onResize(clientWidth=this.el?.clientWidth){if(!clientWidth||this.prevWidth===clientWidth)return;this.prevWidth=clientWidth,this.batchUpdate();let columnChanged=!1;return this._autoColumn&&this.parentGridNode?this.opts.column!==this.parentGridNode.w&&(this.column(this.parentGridNode.w,this.opts.layout||`list`),columnChanged=!0):columnChanged=this.checkDynamicColumn(),this._isAutoCellHeight&&this.cellHeight(),this.engine.nodes.forEach(n=>{n.subGrid&&n.subGrid.onResize()}),this._skipInitialResize||this.resizeToContentCheck(columnChanged),delete this._skipInitialResize,this.batchUpdate(!1),this}resizeToContentCheck(delay=!1,n=void 0){if(this.engine){if(delay&&this.hasAnimationCSS())return setTimeout(()=>this.resizeToContentCheck(!1,n),this.animationDelay);if(n)Utils.shouldSizeToContent(n)&&this.resizeToContentCBCheck(n.el);else if(this.engine.nodes.some(n$1=>Utils.shouldSizeToContent(n$1))){let nodes=[...this.engine.nodes];this.batchUpdate(),nodes.forEach(n$1=>{Utils.shouldSizeToContent(n$1)&&this.resizeToContentCBCheck(n$1.el)}),this._ignoreLayoutsNodeChange=!0,this.batchUpdate(!1),this._ignoreLayoutsNodeChange=!1}this._gsEventHandler.resizecontent&&this._gsEventHandler.resizecontent(null,n?[n]:this.engine.nodes)}}_updateResizeEvent(forceRemove=!1){let trackSize=!this.parentGridNode&&(this._isAutoCellHeight||this.opts.sizeToContent||this.opts.columnOpts||this.engine.nodes.find(n=>n.sizeToContent));return!forceRemove&&trackSize&&!this.resizeObserver?(this._sizeThrottle=Utils.throttle(()=>this.onResize(),this.opts.cellHeightThrottle),this.resizeObserver=new ResizeObserver(()=>this._sizeThrottle()),this.resizeObserver.observe(this.el),this._skipInitialResize=!0):(forceRemove||!trackSize)&&this.resizeObserver&&(this.resizeObserver.disconnect(),delete this.resizeObserver,delete this._sizeThrottle),this}static getElement(els=`.grid-stack-item`){return Utils.getElement(els)}static getElements(els=`.grid-stack-item`){return Utils.getElements(els)}static getGridElement(els){return GridStack.getElement(els)}static getGridElements(els){return Utils.getElements(els)}_initMargin(){let data,margin=0,margins=[];typeof this.opts.margin==`string`&&(margins=this.opts.margin.split(` `)),margins.length===2?(this.opts.marginTop=this.opts.marginBottom=margins[0],this.opts.marginLeft=this.opts.marginRight=margins[1]):margins.length===4?(this.opts.marginTop=margins[0],this.opts.marginRight=margins[1],this.opts.marginBottom=margins[2],this.opts.marginLeft=margins[3]):(data=Utils.parseHeight(this.opts.margin),this.opts.marginUnit=data.unit,margin=this.opts.margin=data.h),[`marginTop`,`marginRight`,`marginBottom`,`marginLeft`].forEach(k=>{this.opts[k]===void 0?this.opts[k]=margin:(data=Utils.parseHeight(this.opts[k]),this.opts[k]=data.h,delete this.opts.margin)}),this.opts.marginUnit=data.unit,this.opts.marginTop===this.opts.marginBottom&&this.opts.marginLeft===this.opts.marginRight&&this.opts.marginTop===this.opts.marginRight&&(this.opts.margin=this.opts.marginTop);let style=this.el.style;return style.setProperty(`--gs-item-margin-top`,`${this.opts.marginTop}${this.opts.marginUnit}`),style.setProperty(`--gs-item-margin-bottom`,`${this.opts.marginBottom}${this.opts.marginUnit}`),style.setProperty(`--gs-item-margin-right`,`${this.opts.marginRight}${this.opts.marginUnit}`),style.setProperty(`--gs-item-margin-left`,`${this.opts.marginLeft}${this.opts.marginUnit}`),this}static getDD(){return dd}static setupDragIn(dragIn,dragInOptions,widgets,root=document){dragInOptions?.pause!==void 0&&(DDManager.pauseDrag=dragInOptions.pause),dragInOptions={appendTo:`body`,helper:`clone`,...dragInOptions||{}},(typeof dragIn==`string`?Utils.getElements(dragIn,root):dragIn).forEach((el,i)=>{dd.isDraggable(el)||dd.dragIn(el,dragInOptions),widgets?.[i]&&(el.gridstackNode=widgets[i])})}movable(els,val){return this.opts.staticGrid||GridStack.getElements(els).forEach(el=>{let n=el.gridstackNode;n&&(val?delete n.noMove:n.noMove=!0,this.prepareDragDrop(n.el))}),this}resizable(els,val){return this.opts.staticGrid||GridStack.getElements(els).forEach(el=>{let n=el.gridstackNode;n&&(val?delete n.noResize:n.noResize=!0,this.prepareDragDrop(n.el))}),this}disable(recurse=!0){if(!this.opts.staticGrid)return this.enableMove(!1,recurse),this.enableResize(!1,recurse),this._triggerEvent(`disable`),this}enable(recurse=!0){if(!this.opts.staticGrid)return this.enableMove(!0,recurse),this.enableResize(!0,recurse),this._triggerEvent(`enable`),this}enableMove(doEnable,recurse=!0){return this.opts.staticGrid?this:(doEnable?delete this.opts.disableDrag:this.opts.disableDrag=!0,this.engine.nodes.forEach(n=>{this.prepareDragDrop(n.el),n.subGrid&&recurse&&n.subGrid.enableMove(doEnable,recurse)}),this)}enableResize(doEnable,recurse=!0){return this.opts.staticGrid?this:(doEnable?delete this.opts.disableResize:this.opts.disableResize=!0,this.engine.nodes.forEach(n=>{this.prepareDragDrop(n.el),n.subGrid&&recurse&&n.subGrid.enableResize(doEnable,recurse)}),this)}cancelDrag(){let n=this._placeholder?.gridstackNode;n&&(n._isExternal?(n._isAboutToRemove=!0,this.engine.removeNode(n)):n._isAboutToRemove&&GridStack._itemRemoving(n.el,!1),this.engine.restoreInitial())}_removeDD(el){return dd.draggable(el,`destroy`).resizable(el,`destroy`),el.gridstackNode&&delete el.gridstackNode._initDD,delete el.ddElement,this}_setupAcceptWidget(){if(this.opts.staticGrid||!this.opts.acceptWidgets&&!this.opts.removable)return dd.droppable(this.el,`destroy`),this;let cellHeight,cellWidth,onDrag=(event,el,helper)=>{helper||=el;let node=helper.gridstackNode;if(!node)return;if(!node.grid?.el){helper.style.transform=`scale(${1/this.dragTransform.xScale},${1/this.dragTransform.yScale})`;let helperRect=helper.getBoundingClientRect();helper.style.left=helperRect.x+(this.dragTransform.xScale-1)*(event.clientX-helperRect.x)/this.dragTransform.xScale+`px`,helper.style.top=helperRect.y+(this.dragTransform.yScale-1)*(event.clientY-helperRect.y)/this.dragTransform.yScale+`px`,helper.style.transformOrigin=`0px 0px`}let{top,left}=helper.getBoundingClientRect(),rect=this.el.getBoundingClientRect();left-=rect.left,top-=rect.top;let ui={position:{top:top*this.dragTransform.xScale,left:left*this.dragTransform.yScale}};if(node._temporaryRemoved){if(node.x=Math.max(0,Math.round(left/cellWidth)),node.y=Math.max(0,Math.round(top/cellHeight)),delete node.autoPosition,this.engine.nodeBoundFix(node),!this.engine.willItFit(node)){if(node.autoPosition=!0,!this.engine.willItFit(node)){dd.off(el,`drag`);return}node._willFitPos&&(Utils.copyPos(node,node._willFitPos),delete node._willFitPos)}this._onStartMoving(helper,event,ui,node,cellWidth,cellHeight)}else this._dragOrResize(helper,event,ui,node,cellWidth,cellHeight)};return dd.droppable(this.el,{accept:el=>{let node=el.gridstackNode||this._readAttr(el,!1);if(node?.grid===this)return!0;if(!this.opts.acceptWidgets)return!1;let canAccept=!0;if(typeof this.opts.acceptWidgets==`function`)canAccept=this.opts.acceptWidgets(el);else{let selector=this.opts.acceptWidgets===!0?`.grid-stack-item`:this.opts.acceptWidgets;canAccept=el.matches(selector)}if(canAccept&&node&&this.opts.maxRow){let n={w:node.w,h:node.h,minW:node.minW,minH:node.minH};canAccept=this.engine.willItFit(n)}return canAccept}}).on(this.el,`dropover`,(event,el,helper)=>{let node=helper?.gridstackNode||el.gridstackNode;if(node?.grid===this&&!node._temporaryRemoved)return!1;if(node?._sidebarOrig&&(node.w=node._sidebarOrig.w,node.h=node._sidebarOrig.h),node?.grid&&node.grid!==this&&!node._temporaryRemoved&&node.grid._leave(el,helper),helper||=el,cellWidth=this.cellWidth(),cellHeight=this.getCellHeight(!0),!node){let attr=helper.getAttribute(`data-gs-widget`)||helper.getAttribute(`gridstacknode`);if(attr){try{node=JSON.parse(attr)}catch{console.error(`Gridstack dropover: Bad JSON format: `,attr)}helper.removeAttribute(`data-gs-widget`),helper.removeAttribute(`gridstacknode`)}node||=this._readAttr(helper),node._sidebarOrig={w:node.w,h:node.h}}node.grid||(node.el||(node={...node}),node._isExternal=!0,helper.gridstackNode=node);let w=node.w||Math.round(helper.offsetWidth/cellWidth)||1,h=node.h||Math.round(helper.offsetHeight/cellHeight)||1;return node.grid&&node.grid!==this?(el._gridstackNodeOrig||=node,el.gridstackNode=node={...node,w,h,grid:this},delete node.x,delete node.y,this.engine.cleanupNode(node).nodeBoundFix(node),node._initDD=node._isExternal=node._temporaryRemoved=!0):(node.w=w,node.h=h,node._temporaryRemoved=!0),GridStack._itemRemoving(node.el,!1),dd.on(el,`drag`,onDrag),onDrag(event,el,helper),!1}).on(this.el,`dropout`,(event,el,helper)=>{let node=helper?.gridstackNode||el.gridstackNode;return node&&(!node.grid||node.grid===this)&&(this._leave(el,helper),this._isTemp&&this.removeAsSubGrid(node)),!1}).on(this.el,`drop`,(event,el,helper)=>{let node=helper?.gridstackNode||el.gridstackNode;if(node?.grid===this&&!node._isExternal)return!1;let wasAdded=!!this.placeholder.parentElement,wasSidebar=el!==helper;this.placeholder.remove(),delete this.placeholder.gridstackNode,wasAdded&&this.opts.animate&&(this.setAnimation(!1),this.setAnimation(!0,!0));let origNode=el._gridstackNodeOrig;if(delete el._gridstackNodeOrig,wasAdded&&origNode?.grid&&origNode.grid!==this){let oGrid=origNode.grid;oGrid.engine.removeNodeFromLayoutCache(origNode),oGrid.engine.removedNodes.push(origNode),oGrid._triggerRemoveEvent()._triggerChangeEvent(),oGrid.parentGridNode&&!oGrid.engine.nodes.length&&oGrid.opts.subGridDynamic&&oGrid.removeAsSubGrid()}if(!node||(wasAdded&&(this.engine.cleanupNode(node),node.grid=this),delete node.grid?._isTemp,dd.off(el,`drag`),helper===el?el.remove():(helper.remove(),el=helper),this._removeDD(el),!wasAdded))return!1;let subGrid=node.subGrid?.el?.gridstack;return Utils.copyPos(node,this._readAttr(this.placeholder)),Utils.removePositioningStyles(el),wasSidebar&&(node.content||node.subGridOpts||GridStack.addRemoveCB)?(delete node.el,el=this.addWidget(node)):(this._prepareElement(el,!0,node),this.el.appendChild(el),this.resizeToContentCheck(!1,node),subGrid&&(subGrid.parentGridNode=node),this._updateContainerHeight()),this.engine.addedNodes.push(node),this._triggerAddEvent(),this._triggerChangeEvent(),this.engine.endUpdate(),this._gsEventHandler.dropped&&this._gsEventHandler.dropped({...event,type:`dropped`},origNode&&origNode.grid?origNode:void 0,node),!1}),this}static _itemRemoving(el,remove){if(!el)return;let node=el?el.gridstackNode:void 0;!node?.grid||el.classList.contains(node.grid.opts.removableOptions.decline)||(remove?node._isAboutToRemove=!0:delete node._isAboutToRemove,remove?el.classList.add(`grid-stack-item-removing`):el.classList.remove(`grid-stack-item-removing`))}_setupRemoveDrop(){if(typeof this.opts.removable!=`string`)return this;let trashEl=document.querySelector(this.opts.removable);return trashEl&&!this.opts.staticGrid&&!dd.isDroppable(trashEl)&&dd.droppable(trashEl,this.opts.removableOptions).on(trashEl,`dropover`,(event,el)=>GridStack._itemRemoving(el,!0)).on(trashEl,`dropout`,(event,el)=>GridStack._itemRemoving(el,!1)),this}prepareDragDrop(el,force=!1){let node=el?.gridstackNode;if(!node)return;let noMove=node.noMove||this.opts.disableDrag,noResize=node.noResize||this.opts.disableResize,disable=this.opts.staticGrid||noMove&&noResize;if((force||disable)&&(node._initDD&&(this._removeDD(el),delete node._initDD),disable&&el.classList.add(`ui-draggable-disabled`,`ui-resizable-disabled`),!force))return this;if(!node._initDD){let cellWidth,cellHeight,onStartMoving=(event,ui)=>{this.triggerEvent(event,event.target),cellWidth=this.cellWidth(),cellHeight=this.getCellHeight(!0),this._onStartMoving(el,event,ui,node,cellWidth,cellHeight)},dragOrResize=(event,ui)=>{this._dragOrResize(el,event,ui,node,cellWidth,cellHeight)},onEndMoving=event=>{this.placeholder.remove(),delete this.placeholder.gridstackNode,delete node._moving,delete node._resizing,delete node._event,delete node._lastTried;let widthChanged=node.w!==node._orig.w,target=event.target;if(!(!target.gridstackNode||target.gridstackNode.grid!==this)){if(node.el=target,node._isAboutToRemove){let grid=el.gridstackNode.grid;grid._gsEventHandler[event.type]&&grid._gsEventHandler[event.type](event,target),grid.engine.nodes.push(node),grid.removeWidget(el,!0,!0)}else Utils.removePositioningStyles(target),node._temporaryRemoved?(this._writePosAttr(target,node),this.engine.addNode(node)):this._writePosAttr(target,node),this.triggerEvent(event,target);this._extraDragRow=0,this._updateContainerHeight(),this._triggerChangeEvent(),this.engine.endUpdate(),event.type===`resizestop`&&(Number.isInteger(node.sizeToContent)&&(node.sizeToContent=node.h),this.resizeToContentCheck(widthChanged,node))}};dd.draggable(el,{start:onStartMoving,stop:onEndMoving,drag:dragOrResize}).resizable(el,{start:onStartMoving,stop:onEndMoving,resize:dragOrResize}),node._initDD=!0}return dd.draggable(el,noMove?`disable`:`enable`).resizable(el,noResize?`disable`:`enable`),this}_onStartMoving(el,event,ui,node,cellWidth,cellHeight){if(this.engine.cleanNodes().beginUpdate(node),this._writePosAttr(this.placeholder,node),this.el.appendChild(this.placeholder),this.placeholder.gridstackNode=node,node.grid?.el)this.dragTransform=Utils.getValuesFromTransformedElement(el);else if(this.placeholder&&this.placeholder.closest(`.grid-stack`)){let gridEl=this.placeholder.closest(`.grid-stack`);this.dragTransform=Utils.getValuesFromTransformedElement(gridEl)}else this.dragTransform={xScale:1,xOffset:0,yScale:1,yOffset:0};if(node.el=this.placeholder,node._lastUiPosition=ui.position,node._prevYPix=ui.position.top,node._moving=event.type===`dragstart`,node._resizing=event.type===`resizestart`,delete node._lastTried,event.type===`dropover`&&node._temporaryRemoved&&(this.engine.addNode(node),node._moving=!0),this.engine.cacheRects(cellWidth,cellHeight,this.opts.marginTop,this.opts.marginRight,this.opts.marginBottom,this.opts.marginLeft),event.type===`resizestart`){let colLeft=this.getColumn()-node.x,rowLeft=(this.opts.maxRow||2**53-1)-node.y;dd.resizable(el,`option`,`minWidth`,cellWidth*Math.min(node.minW||1,colLeft)).resizable(el,`option`,`minHeight`,cellHeight*Math.min(node.minH||1,rowLeft)).resizable(el,`option`,`maxWidth`,cellWidth*Math.min(node.maxW||2**53-1,colLeft)).resizable(el,`option`,`maxWidthMoveLeft`,cellWidth*Math.min(node.maxW||2**53-1,node.x+node.w)).resizable(el,`option`,`maxHeight`,cellHeight*Math.min(node.maxH||2**53-1,rowLeft)).resizable(el,`option`,`maxHeightMoveUp`,cellHeight*Math.min(node.maxH||2**53-1,node.y+node.h))}}_dragOrResize(el,event,ui,node,cellWidth,cellHeight){let p={...node._orig},resizing,mLeft=this.opts.marginLeft,mRight=this.opts.marginRight,mTop=this.opts.marginTop,mBottom=this.opts.marginBottom,mHeight=Math.round(cellHeight*.1),mWidth=Math.round(cellWidth*.1);if(mLeft=Math.min(mLeft,mWidth),mRight=Math.min(mRight,mWidth),mTop=Math.min(mTop,mHeight),mBottom=Math.min(mBottom,mHeight),event.type===`drag`){if(node._temporaryRemoved)return;let distance=ui.position.top-node._prevYPix;node._prevYPix=ui.position.top,this.opts.draggable.scroll!==!1&&Utils.updateScrollPosition(el,ui.position,distance);let left=ui.position.left+(ui.position.left>node._lastUiPosition.left?-mRight:mLeft),top=ui.position.top+(ui.position.top>node._lastUiPosition.top?-mBottom:mTop);p.x=Math.round(left/cellWidth),p.y=Math.round(top/cellHeight);let prev=this._extraDragRow;if(this.engine.collide(node,p)){let row=this.getRow(),extra=Math.max(0,p.y+node.h-row);this.opts.maxRow&&row+extra>this.opts.maxRow&&(extra=Math.max(0,this.opts.maxRow-row)),this._extraDragRow=extra}else this._extraDragRow=0;if(this._extraDragRow!==prev&&this._updateContainerHeight(),node.x===p.x&&node.y===p.y)return}else if(event.type===`resize`){if(p.x<0||(Utils.updateScrollResize(event,el,cellHeight),p.w=Math.round((ui.size.width-mLeft)/cellWidth),p.h=Math.round((ui.size.height-mTop)/cellHeight),node.w===p.w&&node.h===p.h)||node._lastTried&&node._lastTried.w===p.w&&node._lastTried.h===p.h)return;let left=ui.position.left+mLeft,top=ui.position.top+mTop;p.x=Math.round(left/cellWidth),p.y=Math.round(top/cellHeight),resizing=!0}node._event=event,node._lastTried=p;let rect={x:ui.position.left+mLeft,y:ui.position.top+mTop,w:(ui.size?ui.size.width:node.w*cellWidth)-mLeft-mRight,h:(ui.size?ui.size.height:node.h*cellHeight)-mTop-mBottom};if(this.engine.moveNodeCheck(node,{...p,cellWidth,cellHeight,rect,resizing})){node._lastUiPosition=ui.position,this.engine.cacheRects(cellWidth,cellHeight,mTop,mRight,mBottom,mLeft),delete node._skipDown,resizing&&node.subGrid&&node.subGrid.onResize(),this._extraDragRow=0,this._updateContainerHeight();let target=event.target;node._sidebarOrig||this._writePosAttr(target,node),this.triggerEvent(event,target)}}triggerEvent(event,target){let grid=this;for(;grid.parentGridNode;)grid=grid.parentGridNode.grid;grid._gsEventHandler[event.type]&&grid._gsEventHandler[event.type](event,target)}_leave(el,helper){helper||=el;let node=helper.gridstackNode;if(!node||(helper.style.transform=helper.style.transformOrigin=null,dd.off(el,`drag`),node._temporaryRemoved))return;node._temporaryRemoved=!0,this.engine.removeNode(node),node.el=node._isExternal&&helper?helper:el;let sidebarOrig=node._sidebarOrig;node._isExternal&&this.engine.cleanupNode(node),node._sidebarOrig=sidebarOrig,this.opts.removable===!0&&GridStack._itemRemoving(el,!0),el._gridstackNodeOrig?(el.gridstackNode=el._gridstackNodeOrig,delete el._gridstackNodeOrig):node._isExternal&&this.engine.restoreInitial()}};GridStack.renderCB=(el,w)=>{el&&w?.content&&(el.textContent=w.content)},GridStack.resizeToContentParent=`.grid-stack-item-content`,GridStack.Utils=Utils,GridStack.Engine=GridStackEngine,GridStack.GDRev=`12.4.2`;const initializeGridStack=({gridElement,gridItemElements,items,columns,rowHeight,viewMode,fullTheme,onCreateOrUpdateDimensionsHint,onRemoveDimensionsHint,onChange})=>{let[verticalMargin,horizontalMargin]=getGridHalfMargins(fullTheme),gridOptions={column:columns,cellHeight:rowHeight,marginTop:verticalMargin,marginLeft:horizontalMargin,marginRight:horizontalMargin,marginBottom:verticalMargin,animate:!0,auto:!1,float:!1,removable:!1,acceptWidgets:!0,disableDrag:viewMode,disableResize:viewMode,minRow:1,resizable:{handles:[`n`,`ne`,`e`,`se`,`s`,`sw`,`w`,`nw`].join(`, `)},handle:`.grid-item-drag-handle`},grid=GridStack.init(gridOptions,gridElement);return grid.batchUpdate(),gridItemElements.forEach(element=>{let itemId=element.getAttribute(`luzmo-item-grid-item-id`),gridItemOptions=buildGridWidgetOptions(items.find(currentItem=>currentItem.id===itemId),itemId??void 0);grid.makeWidget(element,gridItemOptions)}),grid.batchUpdate(!1),grid.on(`resizestart`,(_event,element)=>{onCreateOrUpdateDimensionsHint(element,element.getAttribute(`gs-w`)??``,element.getAttribute(`gs-h`)??``)}),grid.on(`resize`,(_event,element)=>{onCreateOrUpdateDimensionsHint(element,element.getAttribute(`gs-w`)??``,element.getAttribute(`gs-h`)??``)}),grid.on(`resizestop`,(_event,element)=>{onRemoveDimensionsHint(element)}),grid.on(`change`,(_event,changedItems)=>{onChange(changedItems)}),grid},applyGridStackChanges=(items,changedItems)=>{changedItems.forEach(item=>{if(!item?.id)return;let itemIndex=items.findIndex(currentItem=>currentItem.id===item.id);itemIndex!==-1&&(items[itemIndex]={...items[itemIndex],position:{sizeX:item.w??1,sizeY:item.h??1,row:item.y??0,col:item.x??0}})})},createOrUpdateDimensionsHint=({element,numberOfColumns,numberOfRows,offsetHint})=>{let existingHintElement=element.querySelector(`.dimensions-hint-popover`);if(existingHintElement){existingHintElement.style.display=numberOfColumns.length>0&&numberOfRows.length>0?`block`:`none`,existingHintElement.textContent=`${numberOfColumns} × ${numberOfRows}`;return}let hintElement=document.createElement(`div`);hintElement.className=`dimensions-hint-popover`,hintElement.setAttribute(`popover`,`hint`),hintElement.style.display=numberOfColumns.length>0&&numberOfRows.length>0?`block`:`none`,hintElement.textContent=`${numberOfColumns} × ${numberOfRows}`,element.append(hintElement),setPopoverCleanup(hintElement,autoUpdate(element,hintElement,async()=>{let{x,y}=await computePosition(element,hintElement,{placement:`bottom`,middleware:[offset(offsetHint),flip()]});hintElement.style.left=`${x}px`,hintElement.style.top=`${y}px`})),hintElement.matches(`:popover-open`)||hintElement.showPopover()},removeDimensionsHint=element=>{let hintElement=element.querySelector(`.dimensions-hint-popover`);hintElement&&(clearPopoverCleanup(hintElement),hintElement.matches(`:popover-open`)&&hintElement.hidePopover(),hintElement.remove())},syncGridItems=({initialized,grid,hasItemsChanged,hasItemAdded,gridItemElements,items,gridElement})=>{if(!initialized||!grid||!hasItemsChanged&&!hasItemAdded)return hasItemAdded;let currentElements=gridItemElements;return hasItemAdded&&(gridItemElements.forEach(itemElement=>{itemElement.hasAttribute(`orphan`)&&itemElement.remove()}),currentElements=gridElement.querySelectorAll(`.luzmo-item-grid-item`)),grid.setAnimation(!1),grid.batchUpdate(),grid.removeAll(!1),items.forEach(item=>{let newElement=findGridItemElementById(currentElements,item.id);newElement&&grid.makeWidget(newElement,buildGridWidgetOptions(item,item.id))}),grid.batchUpdate(!1),grid.setAnimation(!0),!1},applyViewModeChange=({initialized,grid,hasViewModeChanged,viewMode,previousViewMode,activeItemElement,gridElement,cleanupActiveItem})=>{if(!initialized||!grid||!hasViewModeChanged||viewMode===previousViewMode)return activeItemElement;if(viewMode){if(grid.disable(),activeItemElement){cleanupActiveItem(activeItemElement),gridElement.removeAttribute(`has-active-item`);return}return activeItemElement}return grid.enable(),activeItemElement};var LuzmoItemGrid=class extends _luzmo_lucero_utils.LuzmoElement{constructor(..._args){super(..._args),this.appServer=`https://app.luzmo.com/`,this.apiHost=`https://api.luzmo.com`,this.language=`en`,this.contentLanguage=`en`,this.columns=48,this.rowHeight=16,this.viewMode=!1,this.placementItemActionsMenu=`right-start`,this.items=[],this.renderers={},this._initialized=!1,this.defaultRenderer=item=>lit.html`
|
|
317
|
+
<div class="grid-item-content">
|
|
318
|
+
<div class="grid-item-type">${item.type}</div>
|
|
319
|
+
</div>
|
|
320
|
+
`,this._hasItemAdded=!1,this._handleMouseout=event=>{if(this.viewMode)return;let gridItem=getGridItemElementFromTarget(event.target);gridItem&&shouldRemovePopoverOnMouseout({event,gridItem})&&this._removeItemActionsMenuPopover(gridItem)},this._handleKeyDown=event=>{let state$2=handleGridKeyDown({event,viewMode:this.viewMode,focusedItemElement:this._focusedItemElement,activeItemElement:this._activeItemElement,gridElement:this._gridElement,grid:this._grid,columns:this.columns??48,handleDeleteItem:this._handleDeleteItem,removeItemActionsMenuPopover:this._removeItemActionsMenuPopover.bind(this),createItemActionsMenuPopover:this._createItemActionsMenuPopover.bind(this)});this._focusedItemElement=state$2.focusedItemElement,this._activeItemElement=state$2.activeItemElement},this._handleFocus=event=>{this._focusedItemElement=applyGridItemFocus({event,focusedItemElement:this._focusedItemElement,removeItemActionsMenuPopover:this._removeItemActionsMenuPopover.bind(this)})},this._handleBlur=event=>{let result=clearGridItemFocus({event,focusedItemElement:this._focusedItemElement,removeItemActionsMenuPopover:this._removeItemActionsMenuPopover.bind(this)});this._focusedItemElement=result.focusedItemElement,result.shouldFocusGrid&&this._gridElement.focus()},this._handleGridClick=event=>{this._activeItemActionToggle=handleGridClick({event,gridElement:this._gridElement,hostElement:this,items:this.items,activeItemActionToggle:this._activeItemActionToggle,cleanupActiveItem:this._cleanupActiveItem.bind(this),dispatchItemActionEvent:this._dispatchItemActionEvent.bind(this)}).activeItemActionToggle},this._handleAction=event=>{let state$2=handleGridAction({event,gridElement:this._gridElement,items:this.items,state:{activeItemElement:this._activeItemElement,activeItemActionToggle:this._activeItemActionToggle},cleanupActiveItem:this._cleanupActiveItem.bind(this),dispatchItemActionEvent:this._dispatchItemActionEvent.bind(this),handleDeleteItem:this._handleDeleteItem,handleCloneItem:this._handleCloneItem,createItemActionsMenuPopover:this._createItemActionsMenuPopover.bind(this)});this._activeItemElement=state$2.activeItemElement,this._activeItemActionToggle=state$2.activeItemActionToggle},this._handleDeleteItem=event=>{let gridItemElement=resolveGridItemForDelete(event,this._focusedItemElement);gridItemElement&&this.removeGridItemById(gridItemElement.getAttribute(`gs-id`)||``)},this._handleCloneItem=event=>{handleCloneItem({event,hasGrid:!!this._grid,items:this.items,createId:v4_default,addGridItem:this.addGridItem.bind(this),dispatchItemActionEvent:this._dispatchItemActionEvent.bind(this)})}}static get styles(){return[(0,lit.unsafeCSS)(gridstack_min_default),(0,lit.unsafeCSS)(item_grid_module_default)]}async _loadTheme(theme){let wasInitialized=this._initialized;if(this._fullTheme=await resolveGridTheme({theme,currentTheme:this._fullTheme}),this._initialized&&applyThemeProperties(this.style,this._fullTheme),!this._initialized&&this._gridElement&&await new Promise(resolve=>{requestAnimationFrame(()=>{this._initializeGrid(),resolve()})}),this._grid){let[verticalMargin,horizontalMargin]=getGridHalfMargins(this.theme);this._grid.margin([verticalMargin,horizontalMargin].join(` `))}wasInitialized&&this.requestUpdate()}firstUpdated(){document.addEventListener(`click`,this._handleGridClick),this.addEventListener(`keydown`,this._handleKeyDown)}disconnectedCallback(){super.disconnectedCallback(),this._cleanup(),document.removeEventListener(`click`,this._handleGridClick),this.removeEventListener(`keydown`,this._handleKeyDown)}willUpdate(changedProperties){if(super.willUpdate(changedProperties),changedProperties.has(`_initialized`)&&(applyThemeProperties(this.style,this._fullTheme),this._initialized&&this._grid&&this._fullTheme?.margins)){let[verticalMargin,horizontalMargin]=getGridHalfMargins(this._fullTheme);this._grid.margin([verticalMargin,horizontalMargin].join(` `))}}updated(changedProperties){super.updated(changedProperties);let hasContentLanguageChanged=changedProperties.has(`contentLanguage`),hasViewModeChanged=changedProperties.has(`viewMode`),hasItemsChanged=changedProperties.has(`items`),hasThemeChanged=changedProperties.has(`theme`);normalizeGridItems(this.items,v4_default),this._hasItemAdded=syncGridItems({initialized:this._initialized,grid:this._grid,hasItemsChanged,hasItemAdded:this._hasItemAdded,gridItemElements:this._gridItemElements,items:this.items,gridElement:this._gridElement}),hasContentLanguageChanged&&updateLuzmoVizItemsLanguage(this._gridItemElements,this.contentLanguage),this._activeItemElement=applyViewModeChange({initialized:this._initialized,grid:this._grid,hasViewModeChanged,viewMode:this.viewMode,previousViewMode:changedProperties.get(`viewMode`),activeItemElement:this._activeItemElement,gridElement:this._gridElement,cleanupActiveItem:this._cleanupActiveItem.bind(this)}),(hasThemeChanged||!this._fullTheme&&!this._initialized)&&this._loadTheme(this.theme)}_handleMouseover(event){if(this.viewMode)return;let gridItem=getGridItemElementFromTarget(event.target);gridItem&&this._createItemActionsMenuPopover(gridItem)}_cleanupActiveItem(item){this._activeItemElement=cleanupActiveGridItem({item,activeItemElement:this._activeItemElement,gridElement:this._gridElement,removeItemActionsMenuPopover:this._removeItemActionsMenuPopover.bind(this)})}_dispatchItemActionEvent(action,actionType,active,element,itemId,item,deletedId,originalElement){dispatchGridItemActionEvent({target:this,action,actionType,active,items:this.items,element,itemId,item,deletedId,originalElement})}_cleanup(){for(let item of this._gridItemElements)this._cleanupActiveItem(item);this._grid&&=(this._grid.destroy(),void 0),this._initialized=!1}_initializeGrid(){this._initialized||!this._gridElement||(this._grid=initializeGridStack({gridElement:this._gridElement,gridItemElements:this._gridItemElements,items:this.items,columns:this.columns??48,rowHeight:this.rowHeight??16,viewMode:this.viewMode,fullTheme:this._fullTheme,onCreateOrUpdateDimensionsHint:this._createOrUpdateDimensionsHint.bind(this),onRemoveDimensionsHint:this._removeDimensionsHint.bind(this),onChange:changedItems=>{applyGridStackChanges(this.items,changedItems),dispatchGridLifecycleEvent({target:this,eventName:`luzmo-item-grid-changed`,detail:{element:this._gridElement,grid:this._grid,items:this.items}})}}),this._initialized=!0,dispatchGridLifecycleEvent({target:this,eventName:`luzmo-item-grid-ready`,detail:{element:this._gridElement,grid:this._grid,items:this.items}}))}_createOrUpdateDimensionsHint(element,numberOfColumns,numberOfRows){createOrUpdateDimensionsHint({element,numberOfColumns,numberOfRows,offsetHint:getDimensionsHintOffset(this.theme)})}_removeDimensionsHint(element){removeDimensionsHint(element)}get grid(){return this._grid}get gridItems(){return mapGridItems(this.items,this._gridElement)}registerRenderer(type,renderer){this.renderers={...this.renderers,[type]:renderer}}_renderOverlayContent(item,activeAction){return renderOverlayContent({item,activeAction,defaultItemActionsMenu:this.defaultItemActionsMenu,placementItemActionsMenu:this.placementItemActionsMenu,language:this.language,handleAction:this._handleAction})}_createItemActionsMenuPopover(element,activeAction){createItemActionsMenuPopover({element,activeAction,getGridItemById:this.getGridItemById.bind(this),placementItemActionsMenu:this.placementItemActionsMenu,renderOverlayContent:this._renderOverlayContent.bind(this),removeItemActionsMenuPopover:this._removeItemActionsMenuPopover.bind(this)})}_removeItemActionsMenuPopover(gridItem){removeItemActionsMenuPopover(gridItem)}getGridItemById(id){return this.gridItems.find(item=>item.item.id===id)}addGridItem(newItem){!this._initialized&&this._gridElement&&console.warn(`Grid is not initialized, wait for grid-ready event`);let{item,element:newElement}=addGridItem({newItem,gridElement:this._gridElement,grid:this._grid,createId:v4_default});return this.items.push(item),this._hasItemAdded=!0,this._activeItemElement&&this._cleanupActiveItem(this._activeItemElement),this.requestUpdate(),requestAnimationFrame(()=>{let rect=newElement.getBoundingClientRect();(rect.bottom>window.innerHeight||rect.top<0)&&newElement.scrollIntoView({behavior:`smooth`,block:`center`})}),newElement}removeGridItem(gridItem){this.removeGridItemById(gridItem?.id??``)}removeGridItemById(id){let result=removeGridItemById({id,grid:this._grid,items:this.items,getGridItemById:this.getGridItemById.bind(this),removeItemActionsMenuPopover:this._removeItemActionsMenuPopover.bind(this),activeItemElement:this._activeItemElement,cleanupActiveItem:this._cleanupActiveItem.bind(this)});this._activeItemElement=result.activeItemElement,this._focusedItemElement=result.focusedItemElement}async triggerItemAction(itemId,action,options){await this.updateComplete;let gridItemData=this.getGridItemById(itemId);if(!gridItemData?.element){console.warn(`Grid item with id "${itemId}" not found`);return}let result=triggerGridItemAction({gridElement:this._gridElement,items:this.items,gridItemData,itemId,action,options,state:{activeItemElement:this._activeItemElement,activeItemActionToggle:this._activeItemActionToggle},cleanupActiveItem:this._cleanupActiveItem.bind(this),dispatchItemActionEvent:this._dispatchItemActionEvent.bind(this),createItemActionsMenuPopover:this._createItemActionsMenuPopover.bind(this)});return this._activeItemElement=result.state.activeItemElement,this._activeItemActionToggle=result.state.activeItemActionToggle,result.result}deactivateItems(){let result=deactivateGridItems({gridElement:this._gridElement,items:this.items,state:{activeItemElement:this._activeItemElement,activeItemActionToggle:this._activeItemActionToggle},cleanupActiveItem:this._cleanupActiveItem.bind(this),dispatchItemActionEvent:this._dispatchItemActionEvent.bind(this)});return this._activeItemElement=result.state.activeItemElement,this._activeItemActionToggle=result.state.activeItemActionToggle,result.deactivatedCount}_renderGrid(){return renderGrid({items:this.items,initialized:this._initialized,viewMode:this.viewMode,contentLanguage:this.contentLanguage,fullTheme:this._fullTheme,appServer:this.appServer,apiHost:this.apiHost,authKey:this.authKey,authToken:this.authToken,columns:this.columns??48,ensureGridItemId:item=>ensureGridItemId(item,v4_default),handleMouseover:this._handleMouseover.bind(this),handleMouseout:this._handleMouseout,handleFocus:this._handleFocus,handleBlur:this._handleBlur})}render(){return this._renderGrid()}};require_decorate.t([(0,lit_decorators_js.property)({type:String,attribute:`app-server`,reflect:!0})],LuzmoItemGrid.prototype,`appServer`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:String,attribute:`api-host`,reflect:!0})],LuzmoItemGrid.prototype,`apiHost`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:String,attribute:`auth-key`,reflect:!0})],LuzmoItemGrid.prototype,`authKey`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:String,attribute:`auth-token`,reflect:!0})],LuzmoItemGrid.prototype,`authToken`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:Number,attribute:`cache-time`,reflect:!0})],LuzmoItemGrid.prototype,`cacheTime`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:String,reflect:!0})],LuzmoItemGrid.prototype,`language`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:String,attribute:`content-language`,reflect:!0})],LuzmoItemGrid.prototype,`contentLanguage`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:Number,reflect:!0})],LuzmoItemGrid.prototype,`columns`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:Number,reflect:!0,attribute:`row-height`})],LuzmoItemGrid.prototype,`rowHeight`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:Boolean,reflect:!0,attribute:`view-mode`})],LuzmoItemGrid.prototype,`viewMode`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:String,reflect:!0,attribute:`placement-item-actions-menu`})],LuzmoItemGrid.prototype,`placementItemActionsMenu`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:Array,reflect:!0,attribute:`default-item-actions-menu`})],LuzmoItemGrid.prototype,`defaultItemActionsMenu`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:Object,reflect:!0})],LuzmoItemGrid.prototype,`theme`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:Array,reflect:!1})],LuzmoItemGrid.prototype,`items`,void 0),require_decorate.t([(0,lit_decorators_js.property)({type:Object,reflect:!1})],LuzmoItemGrid.prototype,`renderers`,void 0),require_decorate.t([(0,lit_decorators_js.state)()],LuzmoItemGrid.prototype,`_initialized`,void 0),require_decorate.t([(0,lit_decorators_js.query)(`.grid-stack`)],LuzmoItemGrid.prototype,`_gridElement`,void 0),require_decorate.t([(0,lit_decorators_js.queryAll)(`.luzmo-item-grid-item`)],LuzmoItemGrid.prototype,`_gridItemElements`,void 0),customElements.get(`luzmo-item-grid`)||customElements.define(`luzmo-item-grid`,LuzmoItemGrid),customElements.get(`luzmo-item-grid-item-actions-menu`)||customElements.define(`luzmo-item-grid-item-actions-menu`,LuzmoItemGridItemActionsMenu),Object.defineProperty(exports,`n`,{enumerable:!0,get:function(){return LuzmoItemGridItemActionsMenu}}),Object.defineProperty(exports,`t`,{enumerable:!0,get:function(){return LuzmoItemGrid}});
|