@luzmo/analytics-components-kit 1.0.4-beta.3 → 1.0.4-beta.4

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.
Files changed (589) hide show
  1. package/components/ai-chat/ai-chat.d.ts +29 -6
  2. package/components/ai-chat/index.cjs +1 -1
  3. package/components/ai-chat/index.d.ts +1 -1
  4. package/components/ai-chat/index.js +1 -1
  5. package/components/ai-chat-CpK99nb7.cjs +300 -0
  6. package/components/{ai-chat-CXt4wCe0.js → ai-chat-e2lg3FLg.js} +321 -201
  7. package/components/ai-interaction-textarea/index.cjs +1 -1
  8. package/components/ai-interaction-textarea/index.js +1 -1
  9. package/components/{ai-interaction-textarea-B_-aZ9mc.cjs → ai-interaction-textarea-CSrEsHXV.cjs} +1 -1
  10. package/components/{ai-interaction-textarea-DSrZkuh9.js → ai-interaction-textarea-cAXXLnoj.js} +4 -4
  11. package/components/area-chart-options.config-Cf1VrUNv.cjs +20 -0
  12. package/components/{area-chart-options.config-BjdRY1sr.js → area-chart-options.config-DdYBA1_Q.js} +1 -1
  13. package/components/{area-chart-positioning.config-PZ-MmeDb.cjs → area-chart-positioning.config-CZgo9lkr.cjs} +1 -1
  14. package/components/{area-chart-positioning.config-hLhrDJ3v.js → area-chart-positioning.config-DAEbeAVX.js} +1 -1
  15. package/components/{bar-chart-slots.config-CkOVmYcA.cjs → area-chart-slots.config-BOhwdLnr.cjs} +1 -1
  16. package/components/{area-chart-slots.config-BpvvqFy_.js → area-chart-slots.config-Cmdkui4v.js} +1 -1
  17. package/components/bar-chart-options.config-BF7Q15FL.cjs +20 -0
  18. package/components/{bar-chart-options.config-DxNHV39Y.js → bar-chart-options.config-Cx3n0tCr.js} +1 -1
  19. package/components/{bar-chart-positioning.config-C6wWTn1o.js → bar-chart-positioning.config-71sM-GEA.js} +1 -1
  20. package/components/{bar-chart-positioning.config-DI8tOMbI.cjs → bar-chart-positioning.config-9_GWwUur.cjs} +1 -1
  21. package/components/{bar-chart-slots.config-CfIirCOX.js → bar-chart-slots.config-BWvrLYv5.js} +1 -1
  22. package/components/{choropleth-map-slots.config-ClMcW8wV.cjs → bar-chart-slots.config-DMWjAd5a.cjs} +1 -1
  23. package/components/base-DbEAseAh.cjs +20 -0
  24. package/components/base-store-DHC2m2Os.cjs +20 -0
  25. package/components/{base-store-D0jbv0bE.js → base-store-DmDe0dTU.js} +2 -2
  26. package/components/{base-DYkpEuMf.js → base-vk9LuivN.js} +3 -3
  27. package/components/box-plot-options.config-BkD5CYGz.cjs +20 -0
  28. package/components/{box-plot-options.config-CXey4hvi.js → box-plot-options.config-DB9iCCZg.js} +1 -1
  29. package/components/{box-plot-positioning.config-D_qhNWth.cjs → box-plot-positioning.config-BxIFcn-c.cjs} +1 -1
  30. package/components/{box-plot-positioning.config-XG-WcIlA.js → box-plot-positioning.config-DIck_I13.js} +1 -1
  31. package/components/box-plot-slots.config-5B_pTjPJ.cjs +20 -0
  32. package/components/{box-plot-slots.config-DclNulnH.js → box-plot-slots.config-BknEys-m.js} +1 -1
  33. package/components/bubble-chart-options.config-4f9FUNhc.cjs +20 -0
  34. package/components/{bubble-chart-options.config-CeaOv4eF.js → bubble-chart-options.config-D8o_9z0b.js} +1 -1
  35. package/components/{bubble-chart-positioning.config-o_r-GWQG.js → bubble-chart-positioning.config-BJi-Te33.js} +1 -1
  36. package/components/{bubble-chart-positioning.config-CHYBh_Nb.cjs → bubble-chart-positioning.config-Cf7K70G6.cjs} +1 -1
  37. package/components/{bubble-chart-slots.config-D7vQta7G.js → bubble-chart-slots.config-Djb-py0h.js} +1 -1
  38. package/components/{box-plot-slots.config-DL-tTTn9.cjs → bubble-chart-slots.config-VHKuntJk.cjs} +1 -1
  39. package/components/{bullet-chart-options.config-CLn7sV4W.js → bullet-chart-options.config-CmC75LQ8.js} +1 -1
  40. package/components/bullet-chart-options.config-DDygYBiy.cjs +20 -0
  41. package/components/{bullet-chart-positioning.config-BF8PflF6.cjs → bullet-chart-positioning.config-3yE6MOJU.cjs} +1 -1
  42. package/components/{bullet-chart-positioning.config-DE5oy4M6.js → bullet-chart-positioning.config-ByVG8aFe.js} +1 -1
  43. package/components/{bullet-chart-slots.config-IX7zJWc7.js → bullet-chart-slots.config-BECcf-yZ.js} +1 -1
  44. package/components/bullet-chart-slots.config-CZfTgKZ4.cjs +20 -0
  45. package/components/choropleth-map-options.config-5W6nNlL7.cjs +20 -0
  46. package/components/{choropleth-map-options.config-DzTlJSO3.js → choropleth-map-options.config-Bt-vXkKW.js} +2 -2
  47. package/components/{choropleth-map-positioning.config-Cf8bEIns.js → choropleth-map-positioning.config-BmUOKuYh.js} +1 -1
  48. package/components/{choropleth-map-positioning.config-DT1WWljP.cjs → choropleth-map-positioning.config-QpuHLCDR.cjs} +1 -1
  49. package/components/choropleth-map-slots.config-CZKWF1qV.cjs +20 -0
  50. package/components/{choropleth-map-slots.config-y0y9rf6i.js → choropleth-map-slots.config-DVrgJYSA.js} +1 -1
  51. package/components/circle-pack-chart-options.config-CD8MWMTw.cjs +20 -0
  52. package/components/{circle-pack-chart-options.config-DoLPbnPq.js → circle-pack-chart-options.config-CLA-ur8J.js} +1 -1
  53. package/components/{circle-pack-chart-positioning.config-DDpnake6.cjs → circle-pack-chart-positioning.config-EN3LKHeo.cjs} +1 -1
  54. package/components/{circle-pack-chart-positioning.config-Dy-DZ_de.js → circle-pack-chart-positioning.config-K_yHBCSG.js} +1 -1
  55. package/components/{circle-pack-chart-slots.config-X9WVAykN.js → circle-pack-chart-slots.config-BG6Gh03S.js} +1 -1
  56. package/components/circle-pack-chart-slots.config-GL7T5_o4.cjs +20 -0
  57. package/components/{circular-gauge-options.config-BPUFjqx8.js → circular-gauge-options.config-BFBmfsPn.js} +1 -1
  58. package/components/circular-gauge-options.config-D9gcbX57.cjs +20 -0
  59. package/components/{circular-gauge-positioning.config-DljBe7e-.js → circular-gauge-positioning.config-AH32vSIN.js} +1 -1
  60. package/components/{circular-gauge-positioning.config-D2t_3T1J.cjs → circular-gauge-positioning.config-CurZIsZj.cjs} +1 -1
  61. package/components/{circular-gauge-slots.config-NIEmIAIG.js → circular-gauge-slots.config-BSzOAb8B.js} +1 -1
  62. package/components/circular-gauge-slots.config-DUHabt3G.cjs +20 -0
  63. package/components/{color-CXw2IfjN.js → color-BWnYpOu7.js} +1 -1
  64. package/components/{color-range-utils-u4ziqRRA.js → color-range-utils-CwwtLDX_.js} +1 -1
  65. package/components/column-chart-options.config-CiIw23Yo.cjs +20 -0
  66. package/components/{column-chart-options.config-DQts3cE4.js → column-chart-options.config-V7v9PtQA.js} +1 -1
  67. package/components/{column-chart-positioning.config-Bob00Qnq.js → column-chart-positioning.config-DS8sLc1p.js} +1 -1
  68. package/components/{column-chart-positioning.config-Uvvr5PxW.cjs → column-chart-positioning.config-Dn7Ri3op.cjs} +1 -1
  69. package/components/{column-chart-slots.config-CoFarLvo.js → column-chart-slots.config-5BjkTrbt.js} +1 -1
  70. package/components/{bullet-chart-slots.config-BaTbWYvU.cjs → column-chart-slots.config-CM5aytbj.cjs} +1 -1
  71. package/components/{combination-chart-options.config-CjSV6Ic4.js → combination-chart-options.config-CgSqqLLE.js} +1 -1
  72. package/components/combination-chart-options.config-DaTYSfnr.cjs +20 -0
  73. package/components/{combination-chart-positioning.config-BzbcDQ2O.cjs → combination-chart-positioning.config-RNhQd78t.cjs} +1 -1
  74. package/components/{combination-chart-positioning.config-DG2CM16I.js → combination-chart-positioning.config-u9poMkSd.js} +1 -1
  75. package/components/combination-chart-slots.config-BwUOXFCR.cjs +20 -0
  76. package/components/{combination-chart-slots.config-BGRHSwfr.js → combination-chart-slots.config-DgM_T-9r.js} +1 -1
  77. package/components/{conditional-number-options.config-CZFqw31c.js → conditional-number-options.config-3_vXSC0j.js} +1 -1
  78. package/components/conditional-number-options.config-BPzCxo2q.cjs +20 -0
  79. package/components/{conditional-number-positioning.config-DpORiYgh.cjs → conditional-number-positioning.config-Cq4uJ35g.cjs} +1 -1
  80. package/components/{conditional-number-positioning.config-CT8PqxDT.js → conditional-number-positioning.config-Dnq3OP76.js} +1 -1
  81. package/components/conditional-number-slots.config-B7maHIaG.cjs +20 -0
  82. package/components/{conditional-number-slots.config-r_C8T2HH.js → conditional-number-slots.config-CzVPP4me.js} +1 -1
  83. package/components/{convert-data-field-to-slot-content-BQkSy_8B.cjs → convert-data-field-to-slot-content-DLzkk6dT.cjs} +1 -1
  84. package/components/{data-broker-CVDImE1j.js → data-broker-Bdv5V8Yp.js} +117 -111
  85. package/components/data-broker-DWEXs6-2.cjs +20 -0
  86. package/components/data-field/index.cjs +1 -1
  87. package/components/data-field/index.js +1 -1
  88. package/components/{data-field-RzkD37hR.js → data-field-CGY-TeOZ.js} +4 -4
  89. package/components/{data-field-CxUItUcs.cjs → data-field-CXK_vezu.cjs} +1 -1
  90. package/components/data-field-level/index.cjs +1 -1
  91. package/components/data-field-level/index.js +1 -1
  92. package/components/{data-field-level-zbu4U2m5.js → data-field-level-BsJ3eRQt.js} +7 -6
  93. package/components/data-field-level-CxF3DZmD.cjs +55 -0
  94. package/components/data-field-panel/index.cjs +1 -1
  95. package/components/data-field-panel/index.js +1 -1
  96. package/components/{data-field-panel-C3O77CIF.cjs → data-field-panel-Brzkhc5r.cjs} +1 -1
  97. package/components/{data-field-panel-Ob-hNZwz.js → data-field-panel-CNiGw9_F.js} +7 -7
  98. package/components/data-fields-select/index.js +1 -1
  99. package/components/{data-fields-select-CYQy6Ow-.js → data-fields-select-BcMFFFJV.js} +2 -2
  100. package/components/dataset-icon/index.js +1 -1
  101. package/components/{dataset-icon-BXEgg_8O.js → dataset-icon-CWT5Ju8w.js} +1 -1
  102. package/components/dataset-selector-list/index.cjs +1 -1
  103. package/components/dataset-selector-list/index.js +1 -1
  104. package/components/{dataset-selector-list-BW5v_7_L.cjs → dataset-selector-list-2Kz1oNFa.cjs} +1 -1
  105. package/components/{dataset-selector-list-DwfeaUGu.js → dataset-selector-list-CvjSPfPj.js} +3 -3
  106. package/components/dataset-selector-row/index.cjs +1 -1
  107. package/components/dataset-selector-row/index.js +1 -1
  108. package/components/{dataset-selector-row-CLbx0joD.js → dataset-selector-row-Beo9owAy.js} +4 -4
  109. package/components/{dataset-selector-row-BU7YhT7l.cjs → dataset-selector-row-DOhPbfDh.cjs} +1 -1
  110. package/components/date-comparison-filter-options.config-4yHPEJSU.cjs +20 -0
  111. package/components/{date-comparison-filter-options.config-s16IGX_4.js → date-comparison-filter-options.config-CsDlmT6L.js} +1 -1
  112. package/components/{date-comparison-filter-slots.config-DQBKeCRX.js → date-comparison-filter-slots.config-EEgNP09x.js} +1 -1
  113. package/components/date-comparison-filter-slots.config-oABOLs3D.cjs +20 -0
  114. package/components/date-filter-options.config-AFAngO_i.cjs +20 -0
  115. package/components/{date-filter-options.config-ChFEIjN3.js → date-filter-options.config-b8EHOjR1.js} +1 -1
  116. package/components/date-filter-slots.config-Cuzz0RjE.cjs +20 -0
  117. package/components/{date-filter-slots.config-DREsncpE.js → date-filter-slots.config-PJ_h3Aj7.js} +1 -1
  118. package/components/{decorate-CaYbmmmm.js → decorate-DyMgX_Uh.js} +1 -1
  119. package/components/display-settings/index.cjs +1 -1
  120. package/components/display-settings/index.js +1 -1
  121. package/components/{display-settings-ajA8j6kr.js → display-settings-BNoRfE1e.js} +3 -3
  122. package/components/display-settings-JuegpHpn.cjs +120 -0
  123. package/components/display-settings-binning/index.cjs +1 -1
  124. package/components/display-settings-binning/index.js +1 -1
  125. package/components/{display-settings-binning-MHns2Ns6.js → display-settings-binning-D4fXWXY_.js} +4 -4
  126. package/components/{display-settings-binning-GKaol6nW.cjs → display-settings-binning-DFA-s8JY.cjs} +1 -1
  127. package/components/display-settings-datetime/index.cjs +1 -1
  128. package/components/display-settings-datetime/index.js +1 -1
  129. package/components/{display-settings-datetime-D5eBAfWQ.js → display-settings-datetime-CcZ-aQjs.js} +5 -5
  130. package/components/{display-settings-datetime-CLRXVpld.cjs → display-settings-datetime-DjfBfyzM.cjs} +1 -1
  131. package/components/display-settings-grand-totals/index.cjs +1 -1
  132. package/components/display-settings-grand-totals/index.js +1 -1
  133. package/components/{display-settings-grand-totals-CpulhtNX.js → display-settings-grand-totals-CUlIPreM.js} +4 -4
  134. package/components/{display-settings-grand-totals-DltI_Z-x.cjs → display-settings-grand-totals-lf_RFqaR.cjs} +1 -1
  135. package/components/display-settings-numeric/index.cjs +1 -1
  136. package/components/display-settings-numeric/index.js +1 -1
  137. package/components/{display-settings-numeric-CurqaTi5.cjs → display-settings-numeric-C707pX1_.cjs} +1 -1
  138. package/components/{display-settings-numeric-DnyXOV_x.js → display-settings-numeric-VVEUpoAy.js} +3 -3
  139. package/components/display-settings-period-over-period/index.cjs +1 -1
  140. package/components/display-settings-period-over-period/index.js +1 -1
  141. package/components/{display-settings-period-over-period-Do4qG7yY.js → display-settings-period-over-period-02Elu2Rn.js} +3 -3
  142. package/components/{display-settings-period-over-period-DP2grX4n.cjs → display-settings-period-over-period-Be_A5whA.cjs} +1 -1
  143. package/components/donut-chart-options.config-D8Bvo6Cc.cjs +20 -0
  144. package/components/{donut-chart-options.config-WNOpb2n9.js → donut-chart-options.config-N0MWtn-o.js} +1 -1
  145. package/components/{donut-chart-positioning.config-BLnTmwTZ.cjs → donut-chart-positioning.config-ByXtDyY9.cjs} +1 -1
  146. package/components/{donut-chart-positioning.config-Bl96um6F.js → donut-chart-positioning.config-CH5pTYpi.js} +1 -1
  147. package/components/{conditional-number-slots.config-CWX6OuUa.cjs → donut-chart-slots.config-Bi08z-XB.cjs} +1 -1
  148. package/components/{donut-chart-slots.config-DEQ3Cw6c.js → donut-chart-slots.config-dQrT0g_x.js} +1 -1
  149. package/components/dropdown-filter-options.config-BRzYD0KE.cjs +20 -0
  150. package/components/{dropdown-filter-options.config-DBNawOPR.js → dropdown-filter-options.config-CziqJFPz.js} +1 -1
  151. package/components/{dropdown-filter-slots.config-DcStZGjV.js → dropdown-filter-slots.config-CQo3-kIo.js} +1 -1
  152. package/components/dropdown-filter-slots.config-CR-Ko6q_.cjs +20 -0
  153. package/components/{en-GB-B3xz84vF.cjs → en-GB-uxY5qmIM.cjs} +1 -1
  154. package/components/{en-B34alchz.cjs → en-US-q_Ruzags.cjs} +1 -1
  155. package/components/{en-US-B34alchz.cjs → en-q_Ruzags.cjs} +1 -1
  156. package/components/{evolution-number-options.config-CrIM2GTn.js → evolution-number-options.config-BfYN1Qgk.js} +1 -1
  157. package/components/evolution-number-options.config-CkqNYgWn.cjs +20 -0
  158. package/components/{evolution-number-positioning.config-DXNPD29G.js → evolution-number-positioning.config-B2_CNZP0.js} +1 -1
  159. package/components/{evolution-number-positioning.config-DSoC35zp.cjs → evolution-number-positioning.config-IFgvO_iZ.cjs} +1 -1
  160. package/components/{evolution-number-slots.config-Bq_JlxgK.js → evolution-number-slots.config-CBS0b0Yk.js} +1 -1
  161. package/components/{treemap-chart-slots.config-BJqqnUEF.cjs → evolution-number-slots.config-CikuQYgm.cjs} +1 -1
  162. package/components/filter-expression-picker/index.js +1 -1
  163. package/components/{filter-expression-picker-D_buTmzJ.js → filter-expression-picker-C0FJhbHk.js} +3 -3
  164. package/components/filter-item/index.cjs +1 -1
  165. package/components/filter-item/index.js +1 -1
  166. package/components/{filter-item-VzEHDr04.js → filter-item-C0AXDA_F.js} +7 -7
  167. package/components/{filter-item-DGnRmeaB.cjs → filter-item-C5O2G3Um.cjs} +1 -1
  168. package/components/filter-parameter-picker/index.js +1 -1
  169. package/components/filter-value-picker/index.cjs +1 -1
  170. package/components/filter-value-picker/index.js +1 -1
  171. package/components/{filter-value-picker-C1lDTmKM.cjs → filter-value-picker-BOL1zvCR.cjs} +1 -1
  172. package/components/{filter-value-picker-CIblY-PW.js → filter-value-picker-DZORmKwM.js} +6 -6
  173. package/components/filter-value-picker-datetime/index.js +1 -1
  174. package/components/{filter-value-picker-datetime-DQpEf_tv.js → filter-value-picker-datetime-0gRfWBzr.js} +2 -2
  175. package/components/filter-value-picker-hierarchy/index.cjs +1 -1
  176. package/components/filter-value-picker-hierarchy/index.js +1 -1
  177. package/components/{filter-value-picker-hierarchy-DaZlasgM.cjs → filter-value-picker-hierarchy-D8n6gV78.cjs} +1 -1
  178. package/components/{filter-value-picker-hierarchy-DzHUrpyk.js → filter-value-picker-hierarchy-Dt7VNcSd.js} +4 -4
  179. package/components/filter-value-picker-numeric/index.cjs +1 -1
  180. package/components/filter-value-picker-numeric/index.js +1 -1
  181. package/components/{filter-value-picker-numeric-BU975w8c.js → filter-value-picker-numeric-Cr7ll53O.js} +3 -3
  182. package/components/{filter-value-picker-numeric-D-dUSGAP.cjs → filter-value-picker-numeric-DBw1TZtm.cjs} +1 -1
  183. package/components/filters/index.cjs +1 -1
  184. package/components/filters/index.js +1 -1
  185. package/components/{filters-BgTnxSKg.js → filters-B3zHSR73.js} +5 -5
  186. package/components/{filters-Cx1S1-vx.cjs → filters-DIDatBfn.cjs} +1 -1
  187. package/components/formatter-BeXmurVe.cjs +20 -0
  188. package/components/formula/index.cjs +1 -1
  189. package/components/formula/index.js +1 -1
  190. package/components/formula-CPrZC9BC.cjs +45 -0
  191. package/components/{formula-codemirror-MygWCu2u.js → formula-codemirror-DycN-ivp.js} +1206 -1161
  192. package/components/formula-codemirror-uXTVVacE.cjs +215 -0
  193. package/components/{formula-display-store-BYa910x_.js → formula-display-store-B6dtlBPk.js} +5 -5
  194. package/components/{formula-display-store-DjjsQ5mW.cjs → formula-display-store-CCxSWPEB.cjs} +1 -1
  195. package/components/formula-editor/index.cjs +1 -1
  196. package/components/formula-editor/index.js +3 -3
  197. package/components/{formula-editor-4PoZ3BlC.cjs → formula-editor-BPMeTS5F.cjs} +1 -1
  198. package/components/{formula-editor-DeYzzLDr.js → formula-editor-BqHWUVdh.js} +10 -10
  199. package/components/formula-field/index.cjs +1 -1
  200. package/components/formula-field/index.js +1 -1
  201. package/components/{formula-field-DXdxspyY.js → formula-field-Bfy1qysp.js} +2 -2
  202. package/components/{formula-field-DkKXMIMg.cjs → formula-field-CAtaDtSP.cjs} +1 -1
  203. package/components/{formula-CeDEKB7D.js → formula-ibsKYWEh.js} +4 -4
  204. package/components/{formula-input-base-Dok5ujvH.js → formula-input-base-Cs71sKh1.js} +2 -2
  205. package/components/{formula-input-base-Bz_XVZcs.cjs → formula-input-base-_-8MncrA.cjs} +1 -1
  206. package/components/funnel-chart-options.config-BVmrhzna.cjs +20 -0
  207. package/components/{funnel-chart-options.config-k0X4rkj-.js → funnel-chart-options.config-D8fqrJvi.js} +1 -1
  208. package/components/{funnel-chart-positioning.config-CWSM8nTo.js → funnel-chart-positioning.config-BUMX4e-7.js} +1 -1
  209. package/components/{funnel-chart-positioning.config-BcsV1xp7.cjs → funnel-chart-positioning.config-CY042Tro.cjs} +1 -1
  210. package/components/funnel-chart-slots.config-B8zC6Q6_.cjs +20 -0
  211. package/components/{funnel-chart-slots.config-DKhaZf_r.js → funnel-chart-slots.config-CeGu8stc.js} +1 -1
  212. package/components/{get-css-variable-rHTFFWYM.cjs → get-css-variable-B8sJUuig.cjs} +1 -1
  213. package/components/{get-css-variable-Bpma6ZOo.js → get-css-variable-r1spgqX0.js} +1 -1
  214. package/components/{groupings-BNrLlXIB.cjs → groupings-DuX9SnZa.cjs} +1 -1
  215. package/components/{groupings-okwLJKoG.js → groupings-OLk5e7JO.js} +1 -1
  216. package/components/{heat-map-options.config-_xxAm6iG.js → heat-map-options.config-5zjlVaa0.js} +2 -2
  217. package/components/heat-map-options.config-xPdOcXDk.cjs +20 -0
  218. package/components/{heat-map-positioning.config-DQJP4mTG.js → heat-map-positioning.config-C7W5YbvL.js} +1 -1
  219. package/components/{heat-map-positioning.config-C0dkG5_9.cjs → heat-map-positioning.config-CjaNs9QU.cjs} +1 -1
  220. package/components/{heat-map-slots.config-BDfEGgq5.js → heat-map-slots.config-DBkkcvMN.js} +1 -1
  221. package/components/heat-map-slots.config-Wp_oS8JQ.cjs +20 -0
  222. package/components/{heat-table-options.config-DxRbWqJ8.js → heat-table-options.config-Blcs4JjF.js} +2 -2
  223. package/components/heat-table-options.config-DPbTFoRn.cjs +20 -0
  224. package/components/{heat-table-positioning.config-BzSpf7ed.cjs → heat-table-positioning.config-B2ko43lN.cjs} +1 -1
  225. package/components/{heat-table-positioning.config-WUHNZPT-.js → heat-table-positioning.config-C6d8wmTk.js} +1 -1
  226. package/components/heat-table-slots.config-BN7rtHZG.cjs +20 -0
  227. package/components/{heat-table-slots.config-CVh1TEJJ.js → heat-table-slots.config-CJOXI-Sf.js} +1 -1
  228. package/components/hexbin-map-options.config-CSFSqpMU.cjs +20 -0
  229. package/components/{hexbin-map-options.config-CmAmK-jM.js → hexbin-map-options.config-D5o0k890.js} +1 -1
  230. package/components/{hexbin-map-positioning.config-CJPhgdt2.js → hexbin-map-positioning.config-B9Af5odq.js} +1 -1
  231. package/components/{hexbin-map-positioning.config-Cno9WIc9.cjs → hexbin-map-positioning.config-CaP2fsiE.cjs} +1 -1
  232. package/components/{hexbin-map-slots.config-rxPZ4kwL.js → hexbin-map-slots.config-CpJIfl6o.js} +1 -1
  233. package/components/hexbin-map-slots.config-mx5zUTrA.cjs +20 -0
  234. package/components/{image-options.config-DJ2DEf7g.js → image-options.config-C46UQpMq.js} +1 -1
  235. package/components/image-options.config-DZ5q1D63.cjs +20 -0
  236. package/components/{image-slots.config-bDNDmiWy.js → image-slots.config-DjaT4mUk.js} +1 -1
  237. package/components/image-slots.config-ODQBVz5H.cjs +20 -0
  238. package/components/index.cjs +1 -1
  239. package/components/index.js +53 -53
  240. package/components/interactive-viz-item/index.cjs +1 -1
  241. package/components/interactive-viz-item/index.js +1 -1
  242. package/components/{interactive-viz-item-QVji6wbp.js → interactive-viz-item-CKRpHIwI.js} +7 -7
  243. package/components/{interactive-viz-item-63pap_oz.cjs → interactive-viz-item-D8btvzeg.cjs} +1 -1
  244. package/components/item-grid/index.cjs +1 -1
  245. package/components/item-grid/index.js +1 -1
  246. package/components/{item-grid-CO_cqGqJ.js → item-grid-BEwohat_.js} +9 -9
  247. package/components/{item-grid-CRAoMdCq.cjs → item-grid-CtW-2roU.cjs} +2 -2
  248. package/components/item-option/index.cjs +1 -1
  249. package/components/item-option/index.js +1 -1
  250. package/components/{item-option-Bc6qXONK.js → item-option-CSc3jmeo.js} +116 -166
  251. package/components/{item-option-iQM2pOGK.cjs → item-option-DkqkbwtF.cjs} +18 -18
  252. package/components/item-option-action-button-group/index.cjs +1 -1
  253. package/components/item-option-action-button-group/index.js +1 -1
  254. package/components/item-option-action-button-group-BoZWUGPs.cjs +53 -0
  255. package/components/{item-option-action-button-group-VpgTKSIV.js → item-option-action-button-group-D_K-T_wB.js} +3 -3
  256. package/components/{item-option-base-VV7gyznL.js → item-option-base-Do3zK0fN.js} +2 -2
  257. package/components/{item-option-base-Bk9L8Ie7.cjs → item-option-base-yH3-Snf-.cjs} +1 -1
  258. package/components/item-option-color-palette-picker/index.cjs +1 -1
  259. package/components/item-option-color-palette-picker/index.js +1 -1
  260. package/components/{item-option-color-palette-picker-kch0Ep_5.cjs → item-option-color-palette-picker-B9Umcsw_.cjs} +1 -1
  261. package/components/{item-option-color-palette-picker-CQgG_NPQ.js → item-option-color-palette-picker-CTvaiVJ1.js} +2 -2
  262. package/components/item-option-color-picker/index.cjs +1 -1
  263. package/components/item-option-color-picker/index.js +1 -1
  264. package/components/{item-option-color-picker-BmQBTQzb.js → item-option-color-picker-BLF9-2WR.js} +2 -2
  265. package/components/{item-option-color-picker-DeDwpICb.cjs → item-option-color-picker-FIPCBMIC.cjs} +1 -1
  266. package/components/item-option-color-range/index.cjs +1 -1
  267. package/components/item-option-color-range/index.js +1 -1
  268. package/components/item-option-color-range-BznRsx45.cjs +98 -0
  269. package/components/{item-option-color-range-D2kHXssY.js → item-option-color-range-mvlBVdZK.js} +4 -4
  270. package/components/item-option-multi-language-field/index.cjs +1 -1
  271. package/components/item-option-multi-language-field/index.js +1 -1
  272. package/components/{item-option-multi-language-field-DbqcqhhN.js → item-option-multi-language-field-BMJdbHOd.js} +2 -2
  273. package/components/{item-option-multi-language-field-Cc9ph205.cjs → item-option-multi-language-field-Rypasjvk.cjs} +1 -1
  274. package/components/item-option-number-field/index.cjs +1 -1
  275. package/components/item-option-number-field/index.js +1 -1
  276. package/components/{item-option-number-field-BbCVJeXZ.js → item-option-number-field-Bu4IYyNe.js} +2 -2
  277. package/components/{item-option-number-field-B6GFKuLN.cjs → item-option-number-field-sNlrQ5mG.cjs} +1 -1
  278. package/components/item-option-panel/index.cjs +1 -1
  279. package/components/item-option-panel/index.js +1 -1
  280. package/components/{item-option-panel-CrNZ0xIF.js → item-option-panel-Bmm9IeZR.js} +3 -3
  281. package/components/{item-option-panel-6UFGCcnF.cjs → item-option-panel-DEPAMt-A.cjs} +1 -1
  282. package/components/item-option-picker/index.cjs +1 -1
  283. package/components/item-option-picker/index.js +1 -1
  284. package/components/{item-option-picker-YquXTQNY.js → item-option-picker-6-VRIzb5.js} +2 -2
  285. package/components/{item-option-picker-DJKTAG9w.cjs → item-option-picker-DXZce4bl.cjs} +1 -1
  286. package/components/item-option-position-picker/index.cjs +1 -1
  287. package/components/item-option-position-picker/index.js +1 -1
  288. package/components/{item-option-position-picker-DKvsF-VQ.js → item-option-position-picker-DBy46OLT.js} +2 -2
  289. package/components/{item-option-position-picker-Csc4Y6dN.cjs → item-option-position-picker-DW12bwRL.cjs} +1 -1
  290. package/components/item-option-positions-number-field/index.cjs +1 -1
  291. package/components/item-option-positions-number-field/index.js +1 -1
  292. package/components/{item-option-positions-number-field-Bxcbu_IR.js → item-option-positions-number-field-BFW0c-PE.js} +2 -2
  293. package/components/{item-option-positions-number-field-DBV6Yekk.cjs → item-option-positions-number-field-HofP9ee6.cjs} +1 -1
  294. package/components/item-option-radio-button-group/index.cjs +1 -1
  295. package/components/item-option-radio-button-group/index.js +1 -1
  296. package/components/{item-option-radio-button-group-Bzh4RtSn.cjs → item-option-radio-button-group-BN_a7dSl.cjs} +1 -1
  297. package/components/{item-option-radio-button-group-Cw-xUSUS.js → item-option-radio-button-group-CpdXh9GA.js} +2 -2
  298. package/components/item-option-slider/index.cjs +1 -1
  299. package/components/item-option-slider/index.js +1 -1
  300. package/components/{item-option-slider-DUqo3Fw0.cjs → item-option-slider-B-CM9FzR.cjs} +1 -1
  301. package/components/{item-option-slider-BwQnaxvO.js → item-option-slider-CRjRQP3Z.js} +2 -2
  302. package/components/item-option-switch/index.cjs +1 -1
  303. package/components/item-option-switch/index.js +1 -1
  304. package/components/{item-option-switch-DBsakQjy.cjs → item-option-switch-CY6zMkI-.cjs} +1 -1
  305. package/components/{item-option-switch-IixoilYJ.js → item-option-switch-Q-IaH1Xr.js} +2 -2
  306. package/components/item-option-text-field/index.cjs +1 -1
  307. package/components/item-option-text-field/index.js +1 -1
  308. package/components/{item-option-text-field-CdWylobQ.js → item-option-text-field-BzHaYPud.js} +2 -2
  309. package/components/{item-option-text-field-B4V_sKnM.cjs → item-option-text-field-C2_1-zLs.cjs} +1 -1
  310. package/components/item-options-configs.cjs +1 -1
  311. package/components/item-options-configs.js +45 -45
  312. package/components/item-slot-drop/index.cjs +1 -1
  313. package/components/item-slot-drop/index.js +1 -1
  314. package/components/{item-slot-drop-BmvMi3dI.js → item-slot-drop-CNX2TBXB.js} +8 -8
  315. package/components/{item-slot-drop-D8KI2kny.cjs → item-slot-drop-CR-dvLaD.cjs} +1 -1
  316. package/components/item-slot-drop-panel/index.cjs +1 -1
  317. package/components/item-slot-drop-panel/index.js +1 -1
  318. package/components/{item-slot-drop-panel-D5vaJidp.js → item-slot-drop-panel-BaJoR9Zc.js} +41 -41
  319. package/components/{item-slot-drop-panel-Crw-ktDj.cjs → item-slot-drop-panel-DTvbJtNW.cjs} +1 -1
  320. package/components/item-slot-picker/index.cjs +1 -1
  321. package/components/item-slot-picker/index.js +1 -1
  322. package/components/{item-slot-picker-BgQAviso.cjs → item-slot-picker-CnKeeXp5.cjs} +1 -1
  323. package/components/item-slot-picker-panel/index.cjs +1 -1
  324. package/components/item-slot-picker-panel/index.js +1 -1
  325. package/components/{item-slot-picker-panel-DyhRlAKN.js → item-slot-picker-panel-BMapBAxj.js} +6 -6
  326. package/components/{item-slot-picker-panel-C26kZ4zE.cjs → item-slot-picker-panel-Dw682RiT.cjs} +1 -1
  327. package/components/{item-slot-picker-BZV33YoP.js → item-slot-picker-tHRu_jaI.js} +7 -7
  328. package/components/item-slots-configs.cjs +1 -1
  329. package/components/item-slots-configs.js +45 -45
  330. package/components/line-chart-options.config-BkK829A2.cjs +20 -0
  331. package/components/{line-chart-options.config-CfHRdG6O.js → line-chart-options.config-KFAaQqB_.js} +1 -1
  332. package/components/{line-chart-positioning.config-Cfcgse1N.js → line-chart-positioning.config-Bwe9-1yw.js} +1 -1
  333. package/components/{line-chart-positioning.config-pSGQm1C1.cjs → line-chart-positioning.config-CfVRqaxT.cjs} +1 -1
  334. package/components/{line-chart-slots.config-DKy4D4Yt.js → line-chart-slots.config-D0jaC82U.js} +1 -1
  335. package/components/{area-chart-slots.config-B56LJaky.cjs → line-chart-slots.config-vv66fcoE.cjs} +1 -1
  336. package/components/{load-data-fields-for-datasets-DeXLqWt4.js → load-data-fields-for-datasets-BNnr8x3m.js} +1 -1
  337. package/components/{load-data-fields-for-datasets-BVGaku2J.cjs → load-data-fields-for-datasets-CW4Voiex.cjs} +1 -1
  338. package/components/{localized-mixin-BYWQe1fg.js → localized-mixin-BvQbkZEL.js} +1 -1
  339. package/components/marker-map-options.config-BfPFVxpD.cjs +20 -0
  340. package/components/{marker-map-options.config-C_aGdRQQ.js → marker-map-options.config-D0RmFKKM.js} +1 -1
  341. package/components/{marker-map-positioning.config-B-HitobG.cjs → marker-map-positioning.config-DLXbw6Yd.cjs} +1 -1
  342. package/components/{marker-map-positioning.config-DTCPGbnG.js → marker-map-positioning.config-DLehY4Lv.js} +1 -1
  343. package/components/marker-map-slots.config-DigZk7lN.cjs +20 -0
  344. package/components/{marker-map-slots.config-BKRRAGwB.js → marker-map-slots.config-DsMklO0v.js} +1 -1
  345. package/components/{ohlc-chart-options.config-Bd-vLN0I.js → ohlc-chart-options.config-BBdUKmJ9.js} +1 -1
  346. package/components/{parallel-coordinates-plot-slots.config-BXZ-NmbH.cjs → ohlc-chart-options.config-BsBVP-Io.cjs} +1 -1
  347. package/components/{ohlc-chart-positioning.config-NhpIR1T3.cjs → ohlc-chart-positioning.config-BGU-mDPW.cjs} +1 -1
  348. package/components/{ohlc-chart-positioning.config-D0kJJkXw.js → ohlc-chart-positioning.config-Cz3zieDp.js} +1 -1
  349. package/components/{ohlc-chart-slots.config-DC8NCD0o.js → ohlc-chart-slots.config-BiQn5Kdg.js} +1 -1
  350. package/components/ohlc-chart-slots.config-D3fzoQJH.cjs +20 -0
  351. package/components/parallel-coordinates-plot-options.config--6iJkURT.cjs +20 -0
  352. package/components/{parallel-coordinates-plot-options.config-BUo6XxfP.js → parallel-coordinates-plot-options.config-KJrOL0Sr.js} +1 -1
  353. package/components/{parallel-coordinates-plot-positioning.config-DLF0U4lZ.cjs → parallel-coordinates-plot-positioning.config-CXIMbncP.cjs} +1 -1
  354. package/components/{parallel-coordinates-plot-positioning.config-Dzd0eaka.js → parallel-coordinates-plot-positioning.config-Cc8k6gqG.js} +1 -1
  355. package/components/{parallel-coordinates-plot-slots.config-Dy-9mztD.js → parallel-coordinates-plot-slots.config-B7QY714-.js} +1 -1
  356. package/components/parallel-coordinates-plot-slots.config-s_tLqGA-.cjs +20 -0
  357. package/components/pivot-table-options.config-CKGnnXa_.cjs +20 -0
  358. package/components/{pivot-table-options.config-DrzB4qVX.js → pivot-table-options.config-DEmZ_EQi.js} +1 -1
  359. package/components/{pivot-table-positioning.config-BvUjUkG3.cjs → pivot-table-positioning.config-BBd6xf8q.cjs} +1 -1
  360. package/components/{pivot-table-positioning.config-PKXfqjiN.js → pivot-table-positioning.config-BK7wgw1A.js} +1 -1
  361. package/components/{pivot-table-slots.config-OQe8tS40.js → pivot-table-slots.config-DpDaXLdw.js} +1 -1
  362. package/components/pivot-table-slots.config-KlYXL90k.cjs +20 -0
  363. package/components/{pragmatic-element-adapter-BFUFSRw6.js → pragmatic-element-adapter-C_7HSvGV.js} +1 -1
  364. package/components/{pragmatic-element-adapter-CKhTZWGj.cjs → pragmatic-element-adapter-DPWYJiW9.cjs} +2 -2
  365. package/components/pyramid-chart-options.config-8QtjhcJC.cjs +20 -0
  366. package/components/{pyramid-chart-options.config-Dux8839h.js → pyramid-chart-options.config-DiD3QFps.js} +1 -1
  367. package/components/{pyramid-chart-positioning.config-48iZhPdi.cjs → pyramid-chart-positioning.config-C7STytAm.cjs} +1 -1
  368. package/components/{pyramid-chart-positioning.config-C8yiD0R3.js → pyramid-chart-positioning.config-CGjiKyPG.js} +1 -1
  369. package/components/{pyramid-chart-slots.config-DwlZaBAF.js → pyramid-chart-slots.config-BrKgartT.js} +1 -1
  370. package/components/{regular-table-slots.config-BU6Ff96U.cjs → pyramid-chart-slots.config-CreUpxI2.cjs} +1 -1
  371. package/components/{radar-chart-options.config-ColtKo6Z.js → radar-chart-options.config-COBM2L3R.js} +1 -1
  372. package/components/radar-chart-options.config-DvW36_zk.cjs +20 -0
  373. package/components/{radar-chart-positioning.config-L5Eu5W1I.js → radar-chart-positioning.config-6xWEPHjC.js} +1 -1
  374. package/components/{radar-chart-positioning.config-CpqhJjoz.cjs → radar-chart-positioning.config-p0s42Zyt.cjs} +1 -1
  375. package/components/{strip-plot-options.config-vBd38UQs.cjs → radar-chart-slots.config-B3oIp-8w.cjs} +1 -1
  376. package/components/{radar-chart-slots.config-BuHg4Zeg.js → radar-chart-slots.config-SivEBhuj.js} +1 -1
  377. package/components/regular-table-options.config-B0WNqEjR.cjs +20 -0
  378. package/components/{regular-table-options.config-DopdB4eB.js → regular-table-options.config-B0zRcsWM.js} +1 -1
  379. package/components/{regular-table-slots.config--SVEN5Cu.js → regular-table-slots.config-M2axBXl4.js} +1 -1
  380. package/components/regular-table-slots.config-UwzWj6gg.cjs +20 -0
  381. package/components/route-map-options.config-CYNKz_Xm.cjs +20 -0
  382. package/components/{route-map-options.config-BCuJw5k3.js → route-map-options.config-CrMrDQ_l.js} +2 -2
  383. package/components/{route-map-positioning.config-DVb_Jiws.js → route-map-positioning.config-B2qAh6WW.js} +1 -1
  384. package/components/{route-map-positioning.config-DTwMkeiu.cjs → route-map-positioning.config-C8KmQ33c.cjs} +1 -1
  385. package/components/{route-map-slots.config-CmVIxDkx.js → route-map-slots.config-COCoP99E.js} +1 -1
  386. package/components/{ohlc-chart-options.config-D9h-VLdq.cjs → route-map-slots.config-DfYT65BF.cjs} +1 -1
  387. package/components/{sankey-diagram-options.config-BH3kpjFs.js → sankey-diagram-options.config-BYLiy1UX.js} +1 -1
  388. package/components/sankey-diagram-options.config-D49IZ1y3.cjs +20 -0
  389. package/components/{sankey-diagram-positioning.config-Dk0siSAo.js → sankey-diagram-positioning.config-CBLQktr4.js} +1 -1
  390. package/components/{sankey-diagram-positioning.config-_kyrBnJ4.cjs → sankey-diagram-positioning.config-DAF803wR.cjs} +1 -1
  391. package/components/{sankey-diagram-slots.config-lbkF8DWJ.js → sankey-diagram-slots.config-C-sqtrS-.js} +1 -1
  392. package/components/{line-chart-slots.config-Cjp4btvG.cjs → sankey-diagram-slots.config-D-_u4w36.cjs} +1 -1
  393. package/components/scatter-plot-options.config-BETVLevv.cjs +20 -0
  394. package/components/{scatter-plot-options.config-Dn6ILlJw.js → scatter-plot-options.config-BpUYcLt-.js} +1 -1
  395. package/components/{scatter-plot-positioning.config-DaYstFV8.cjs → scatter-plot-positioning.config-0hj66nn4.cjs} +1 -1
  396. package/components/{scatter-plot-positioning.config-440yA7x5.js → scatter-plot-positioning.config-Be9hQ727.js} +1 -1
  397. package/components/{bullet-chart-options.config-6nATAuC3.cjs → scatter-plot-slots.config-CrG6wQtV.cjs} +1 -1
  398. package/components/{scatter-plot-slots.config-DEFWWj0_.js → scatter-plot-slots.config-Dg78lS25.js} +1 -1
  399. package/components/{circular-gauge-slots.config-B6ajddW-.cjs → search-filter-options.config-B-dGVPhS.cjs} +1 -1
  400. package/components/{search-filter-options.config-DWKVxBc5.js → search-filter-options.config-lGQ-biU5.js} +1 -1
  401. package/components/{search-filter-slots.config-vyPYIXE7.js → search-filter-slots.config-BhDSDpNd.js} +1 -1
  402. package/components/search-filter-slots.config-DP06ulJA.cjs +20 -0
  403. package/components/slicer-filter-options.config-7OXpRWtw.cjs +20 -0
  404. package/components/{slicer-filter-options.config-C6HPrjIw.js → slicer-filter-options.config-B6rxZYcl.js} +1 -1
  405. package/components/{slicer-filter-positioning.config-B6wPo539.js → slicer-filter-positioning.config-BQoRGx8R.js} +1 -1
  406. package/components/{slicer-filter-positioning.config-DdfTuXdV.cjs → slicer-filter-positioning.config-CvcZ3qkf.cjs} +1 -1
  407. package/components/{radar-chart-slots.config-BISYnTom.cjs → slicer-filter-slots.config-CHKpdJvF.cjs} +1 -1
  408. package/components/{slicer-filter-slots.config-BZWCSkX4.js → slicer-filter-slots.config-XtuZoiId.js} +1 -1
  409. package/components/{slider-filter-options.config-CvqHWJIX.js → slider-filter-options.config-C7-5aoaC.js} +1 -1
  410. package/components/{venn-diagram-options.config-EmRhf40r.cjs → slider-filter-options.config-CRdbX1IJ.cjs} +1 -1
  411. package/components/{search-filter-slots.config-AhwsTdYC.cjs → slider-filter-slots.config-9R298H0t.cjs} +1 -1
  412. package/components/{slider-filter-slots.config-BY9X2rlz.js → slider-filter-slots.config-BYkIGVvh.js} +1 -1
  413. package/components/slot-menu/index.cjs +1 -1
  414. package/components/slot-menu/index.js +1 -1
  415. package/components/slot-menu-CkiIhk9e.cjs +64 -0
  416. package/components/{slot-menu-w7sla2N0.js → slot-menu-DZPe7qUA.js} +55 -51
  417. package/components/slot-menu-list/index.cjs +1 -1
  418. package/components/slot-menu-list/index.js +1 -1
  419. package/components/{slot-menu-list-gKDiWsHB.js → slot-menu-list-BRsAe3-b.js} +7 -6
  420. package/components/{slot-menu-list-D193fsQX.cjs → slot-menu-list-CCrkNqq8.cjs} +1 -1
  421. package/components/slots-config-DMC15sjT.js +77 -0
  422. package/components/slots-config-DVH0lz6t.cjs +20 -0
  423. package/components/{speedometer-chart-options.config-wX3KzciD.js → speedometer-chart-options.config-Bd3-G7S7.js} +1 -1
  424. package/components/speedometer-chart-options.config-BsIu28S3.cjs +20 -0
  425. package/components/{speedometer-chart-positioning.config-BVYrl1_s.cjs → speedometer-chart-positioning.config-CAsBGyZ7.cjs} +1 -1
  426. package/components/{speedometer-chart-positioning.config-rI2Jxymu.js → speedometer-chart-positioning.config-CsgmgREh.js} +1 -1
  427. package/components/{speedometer-chart-slots.config-0Tv8EtKT.js → speedometer-chart-slots.config-CkeiXSCy.js} +1 -1
  428. package/components/speedometer-chart-slots.config-S_hQm2MV.cjs +20 -0
  429. package/components/{spike-map-options.config-DpgsB_L-.js → spike-map-options.config-B_2BXI_9.js} +2 -2
  430. package/components/spike-map-options.config-aaiZyME6.cjs +20 -0
  431. package/components/{spike-map-positioning.config-CiY2ju4c.js → spike-map-positioning.config-BS8MuRkQ.js} +1 -1
  432. package/components/{spike-map-positioning.config-2XZLrk9D.cjs → spike-map-positioning.config-D4isshlL.cjs} +1 -1
  433. package/components/{spike-map-slots.config-C6e0NXiD.js → spike-map-slots.config-C44Vxsit.js} +1 -1
  434. package/components/{sunburst-chart-slots.config-BCNUNkd9.cjs → spike-map-slots.config-cKfaD6dQ.cjs} +1 -1
  435. package/components/{strip-plot-options.config-BzhxzU-s.js → strip-plot-options.config-By62J2Jj.js} +1 -1
  436. package/components/strip-plot-options.config-TB3rkoj2.cjs +20 -0
  437. package/components/{strip-plot-positioning.config-CFQPdgei.js → strip-plot-positioning.config-CufC8vJi.js} +1 -1
  438. package/components/{strip-plot-positioning.config-CkC8JUwR.cjs → strip-plot-positioning.config-NpwP9QGU.cjs} +1 -1
  439. package/components/strip-plot-slots.config-DNYlrK_c.cjs +20 -0
  440. package/components/{strip-plot-slots.config-BjwAuVoh.js → strip-plot-slots.config-xsNFXerT.js} +1 -1
  441. package/components/sunburst-chart-options.config-Ckk_kY_s.cjs +20 -0
  442. package/components/{sunburst-chart-options.config-Ba_H54ip.js → sunburst-chart-options.config-DwQwkQxR.js} +1 -1
  443. package/components/{sunburst-chart-positioning.config-DVt84HYB.cjs → sunburst-chart-positioning.config-C5UCbZWE.cjs} +1 -1
  444. package/components/{sunburst-chart-positioning.config-BHJf7n-T.js → sunburst-chart-positioning.config-D60TNhUU.js} +1 -1
  445. package/components/{sunburst-chart-slots.config-h114Cuzh.js → sunburst-chart-slots.config-D6Z2_Kh_.js} +1 -1
  446. package/components/{parallel-coordinates-plot-options.config-ovgY0A7j.cjs → sunburst-chart-slots.config-DkUUt5RF.cjs} +1 -1
  447. package/components/symbol-map-options.config-56eoWz4w.cjs +20 -0
  448. package/components/{symbol-map-options.config-DeJyZILi.js → symbol-map-options.config-uXEbOHWD.js} +1 -1
  449. package/components/{symbol-map-positioning.config-tZp8vwwl.js → symbol-map-positioning.config-D1esOfIw.js} +1 -1
  450. package/components/{symbol-map-positioning.config-DQK1q4GP.cjs → symbol-map-positioning.config-D__gPAF-.cjs} +1 -1
  451. package/components/{symbol-map-slots.config-BmvI5_VE.js → symbol-map-slots.config-CHTIkMw4.js} +1 -1
  452. package/components/symbol-map-slots.config-DwNf547A.cjs +20 -0
  453. package/components/{text-options.config-BXuZMKTG.js → text-options.config-B5y7YAqT.js} +1 -1
  454. package/components/text-options.config-BwBCG2yo.cjs +20 -0
  455. package/components/text-slots.config-CPghLc8b.cjs +20 -0
  456. package/components/{text-slots.config-18Chz73A.js → text-slots.config-sFoowMc6.js} +1 -1
  457. package/components/{treemap-chart-options.config-Be-LBEGy.js → treemap-chart-options.config-BouAbrk0.js} +1 -1
  458. package/components/treemap-chart-options.config-r6biULUj.cjs +20 -0
  459. package/components/{treemap-chart-positioning.config-DQfHJ-ZS.cjs → treemap-chart-positioning.config-BZ1yMqy5.cjs} +1 -1
  460. package/components/{treemap-chart-positioning.config-CEYAh7Uc.js → treemap-chart-positioning.config-DEnYiZKj.js} +1 -1
  461. package/components/{treemap-chart-slots.config-e7ORieH-.js → treemap-chart-slots.config-BjHBRWDJ.js} +1 -1
  462. package/components/{donut-chart-slots.config-RxPnpO6M.cjs → treemap-chart-slots.config-CS3ot6ZJ.cjs} +1 -1
  463. package/components/utils/base.cjs +1 -1
  464. package/components/utils/base.js +2 -2
  465. package/components/utils/store.cjs +1 -1
  466. package/components/utils/store.js +2 -2
  467. package/components/utils-Bn8v7iuu.cjs +20 -0
  468. package/components/{utils-Ci1YA9yB.js → utils-CIxpLDLh.js} +7 -7
  469. package/components/utils.cjs +1 -1
  470. package/components/utils.js +2 -2
  471. package/components/{v4-BK7K-jy_.js → v4-DIjJgmR0.js} +1 -1
  472. package/components/{venn-diagram-options.config-D3bEFsYa.js → venn-diagram-options.config-BZWBYEhB.js} +1 -1
  473. package/components/{image-slots.config-DprzKxj3.cjs → venn-diagram-options.config-BamlR1qo.cjs} +1 -1
  474. package/components/{venn-diagram-positioning.config-2rUFGTJh.js → venn-diagram-positioning.config-DMceiBb8.js} +1 -1
  475. package/components/{venn-diagram-positioning.config-DQa6-GAn.cjs → venn-diagram-positioning.config-DUvGRRSh.cjs} +1 -1
  476. package/components/{venn-diagram-slots.config-Dm-IC6JS.js → venn-diagram-slots.config-CM0HPIPD.js} +1 -1
  477. package/components/venn-diagram-slots.config-DYTmU8v2.cjs +20 -0
  478. package/components/video-options.config-BhBpkaLJ.cjs +20 -0
  479. package/components/{video-options.config-B5aOwGa4.js → video-options.config-DWuy1OHa.js} +1 -1
  480. package/components/{video-slots.config-D2MtpAGI.js → video-slots.config-B_aDlTp6.js} +1 -1
  481. package/components/video-slots.config-DMut7o7r.cjs +20 -0
  482. package/components/viz-item-menu/index.cjs +1 -1
  483. package/components/viz-item-menu/index.js +1 -1
  484. package/components/{viz-item-menu-B4BJBNEq.js → viz-item-menu-BisYrhhJ.js} +3 -3
  485. package/components/viz-item-menu-DEpm1w7U.cjs +55 -0
  486. package/components/{wordcloud-chart-options.config-DntH4Hvg.js → wordcloud-chart-options.config-D041tFDG.js} +1 -1
  487. package/components/wordcloud-chart-options.config-DgH4JgN2.cjs +20 -0
  488. package/components/{wordcloud-chart-positioning.config-DhoAsQP-.cjs → wordcloud-chart-positioning.config-CeP0_j_m.cjs} +1 -1
  489. package/components/{wordcloud-chart-positioning.config-C3Zulr2Q.js → wordcloud-chart-positioning.config-tVRXTpdQ.js} +1 -1
  490. package/components/{wordcloud-chart-slots.config-CsFBBXDz.js → wordcloud-chart-slots.config-Cy-Jgcaq.js} +1 -1
  491. package/components/{bubble-chart-slots.config-smlOOwcK.cjs → wordcloud-chart-slots.config-V29v2Fhr.cjs} +1 -1
  492. package/custom-elements.json +11 -4
  493. package/package.json +1 -1
  494. package/react/components/ai-chat.component.ts +6 -3
  495. package/react/esm/components/ai-chat.component.d.ts +4 -2
  496. package/react/esm/components/ai-chat.component.js +4 -2
  497. package/react/luzmo-stub.d.ts +1 -0
  498. package/react/utils/store/index.d.ts +5 -5
  499. package/react/utils/store/store-registry.d.ts +1 -1
  500. package/types/ai-chat.types.d.ts +27 -0
  501. package/utils/store/index.d.ts +5 -5
  502. package/utils/store/store-registry.d.ts +1 -1
  503. package/components/ai-chat-Dnf-C838.cjs +0 -258
  504. package/components/area-chart-options.config-CJYI-zcZ.cjs +0 -20
  505. package/components/bar-chart-options.config-D2a-U6kG.cjs +0 -20
  506. package/components/base-BCmPH4SF.cjs +0 -20
  507. package/components/base-store-ab2wBsBE.cjs +0 -20
  508. package/components/box-plot-options.config-Di28EvZb.cjs +0 -20
  509. package/components/bubble-chart-options.config-CnpBrIo6.cjs +0 -20
  510. package/components/choropleth-map-options.config-CmtZtBAC.cjs +0 -20
  511. package/components/circle-pack-chart-options.config-BA_G1sQ8.cjs +0 -20
  512. package/components/circle-pack-chart-slots.config-IH2KV7z1.cjs +0 -20
  513. package/components/circular-gauge-options.config-BtP-YDIr.cjs +0 -20
  514. package/components/column-chart-options.config-eJ1Cexxe.cjs +0 -20
  515. package/components/column-chart-slots.config-BY6y_rvE.cjs +0 -20
  516. package/components/combination-chart-options.config-C3kZ2fpK.cjs +0 -20
  517. package/components/combination-chart-slots.config-Ciza_y3a.cjs +0 -20
  518. package/components/conditional-number-options.config-CadHLi0m.cjs +0 -20
  519. package/components/data-broker-BH5WDG0j.cjs +0 -20
  520. package/components/data-field-level-55bJkqFt.cjs +0 -55
  521. package/components/date-comparison-filter-options.config--clPxHFt.cjs +0 -20
  522. package/components/date-comparison-filter-slots.config-KO9B0lfS.cjs +0 -20
  523. package/components/date-filter-options.config-BdNFe-Ds.cjs +0 -20
  524. package/components/date-filter-slots.config-BrQoD-EF.cjs +0 -20
  525. package/components/display-settings-COYLimuI.cjs +0 -120
  526. package/components/donut-chart-options.config-K-HkE7sL.cjs +0 -20
  527. package/components/dropdown-filter-options.config-B-Vvy0Nq.cjs +0 -20
  528. package/components/dropdown-filter-slots.config-BBZChIHC.cjs +0 -20
  529. package/components/evolution-number-options.config-Bt1FZqqQ.cjs +0 -20
  530. package/components/evolution-number-slots.config-CYxdcD-x.cjs +0 -20
  531. package/components/formatter-8m-wrIM-.cjs +0 -20
  532. package/components/formula-D7E8UieE.cjs +0 -45
  533. package/components/formula-codemirror-CFMYytMd.cjs +0 -215
  534. package/components/funnel-chart-options.config-BAIgb6x9.cjs +0 -20
  535. package/components/funnel-chart-slots.config-CSI5mdma.cjs +0 -20
  536. package/components/heat-map-options.config-Ct-93RVQ.cjs +0 -20
  537. package/components/heat-map-slots.config-D0mwjImu.cjs +0 -20
  538. package/components/heat-table-options.config-7IS5wa9l.cjs +0 -20
  539. package/components/heat-table-slots.config-CH6Q9203.cjs +0 -20
  540. package/components/hexbin-map-options.config-CUAv6zuD.cjs +0 -20
  541. package/components/hexbin-map-slots.config-BdkQVzI7.cjs +0 -20
  542. package/components/image-options.config-DXqA7sAa.cjs +0 -20
  543. package/components/item-option-action-button-group-jPUDKP3M.cjs +0 -53
  544. package/components/item-option-color-range-Cj6sZ72F.cjs +0 -98
  545. package/components/line-chart-options.config-DKQ1k4lg.cjs +0 -20
  546. package/components/marker-map-options.config-DBPPcGN4.cjs +0 -20
  547. package/components/marker-map-slots.config-BOQ8AwRv.cjs +0 -20
  548. package/components/ohlc-chart-slots.config-CUBUexI-.cjs +0 -20
  549. package/components/pivot-table-options.config-BxKo1DCU.cjs +0 -20
  550. package/components/pivot-table-slots.config-VxbOGtmB.cjs +0 -20
  551. package/components/pyramid-chart-options.config-lioHQSoq.cjs +0 -20
  552. package/components/pyramid-chart-slots.config-CN_Q2YsP.cjs +0 -20
  553. package/components/radar-chart-options.config-DhnoFEzo.cjs +0 -20
  554. package/components/regular-table-options.config-Bk6CBPgj.cjs +0 -20
  555. package/components/route-map-options.config-CAi93e7I.cjs +0 -20
  556. package/components/route-map-slots.config-Dznp0DT3.cjs +0 -20
  557. package/components/sankey-diagram-options.config-D7ZrZV0g.cjs +0 -20
  558. package/components/sankey-diagram-slots.config-TKCUvHOD.cjs +0 -20
  559. package/components/scatter-plot-options.config-DXqKb34r.cjs +0 -20
  560. package/components/scatter-plot-slots.config-CPsk9FUg.cjs +0 -20
  561. package/components/search-filter-options.config-DojMfRR_.cjs +0 -20
  562. package/components/slicer-filter-options.config-BhLn4U1W.cjs +0 -20
  563. package/components/slicer-filter-slots.config-zV15NWWS.cjs +0 -20
  564. package/components/slider-filter-options.config-B8am9mmE.cjs +0 -20
  565. package/components/slider-filter-slots.config-D9Hra0zE.cjs +0 -20
  566. package/components/slot-menu-BBnibMJU.cjs +0 -64
  567. package/components/slots-config-DIBoffEb.js +0 -77
  568. package/components/slots-config-YdyClHLc.cjs +0 -20
  569. package/components/speedometer-chart-options.config-DEW_D9w1.cjs +0 -20
  570. package/components/speedometer-chart-slots.config-1BqQZ2vP.cjs +0 -20
  571. package/components/spike-map-options.config-LPAyKMHe.cjs +0 -20
  572. package/components/spike-map-slots.config-B7OehIoc.cjs +0 -20
  573. package/components/strip-plot-slots.config-CAU0z3q4.cjs +0 -20
  574. package/components/sunburst-chart-options.config-CUFOuT2J.cjs +0 -20
  575. package/components/symbol-map-options.config-CR07hvK0.cjs +0 -20
  576. package/components/symbol-map-slots.config-Dz_tor5P.cjs +0 -20
  577. package/components/text-options.config-JI2D64hs.cjs +0 -20
  578. package/components/text-slots.config-0A6csMfd.cjs +0 -20
  579. package/components/treemap-chart-options.config-p21eSXKG.cjs +0 -20
  580. package/components/utils-CJf8VNzX.cjs +0 -20
  581. package/components/validate-CJkVJaL1.cjs +0 -20
  582. package/components/validate-J3P0rm_n.js +0 -28
  583. package/components/venn-diagram-slots.config-MpkJTf5q.cjs +0 -20
  584. package/components/video-options.config-Dh_lU4c1.cjs +0 -20
  585. package/components/video-slots.config-Bmh6mcUv.cjs +0 -20
  586. package/components/viz-item-menu-DD8ndROu.cjs +0 -55
  587. package/components/wordcloud-chart-options.config-mx2CbmrI.cjs +0 -20
  588. package/components/wordcloud-chart-slots.config-C303nwAz.cjs +0 -20
  589. /package/components/{chunk-mLOUI7ql.cjs → rolldown-runtime-mLOUI7ql.cjs} +0 -0
@@ -17,7 +17,7 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-DrK3QZNa.cjs"),n=require("./color-Bl8h58rV.cjs"),r=require("./themes-kvrISOTz.cjs"),i=require("./v4-Dyp-SQ1c.cjs"),a=require("./item-list.cjs");let o=require("@luzmo/icons"),s=require("lit"),c=require("lit/decorators.js"),l=require("@lit/localize");require("@luzmo/lucero/icon"),require("@luzmo/lucero/tooltip");let u=require("lit/directives/repeat.js");require("@luzmo/lucero/action-button"),require("@luzmo/embed"),require("@luzmo/lucero/action-group");let d=require("@luzmo/lucero/utils"),f=require("lit/directives/guard.js");var p=`.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}.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:not(.grid-stack-rtl)>.grid-stack-item{left:0}.grid-stack.grid-stack-rtl>.grid-stack-item{right:0}.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,right,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,right .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,right,top,height,width}.grid-stack>.grid-stack-item[gs-y="0"]{top:0}.grid-stack:not(.grid-stack-rtl)>.grid-stack-item[gs-x="0"]{left:0}.grid-stack.grid-stack-rtl>.grid-stack-item[gs-x="0"]{right:0}`,m=(e,t)=>{e.forEach(e=>{let n=e.querySelector(`luzmo-embed-viz-item`);n&&(n.options={...n.options,locale:t})})},h=({action:e,actionType:t,active:n,items:r,element:i,itemId:a,item:o,deletedId:s,originalElement:c,updatedItems:l})=>({action:e,actionType:t,active:n,items:r,element:i,item:{...o,id:a,filters:o?.filters??[]},...s&&{deletedId:s},...c&&{originalElement:c},...l&&{updatedItems:l}}),g=({target:e,action:t,actionType:n,active:r,items:i,element:a,itemId:o,item:s,deletedId:c,originalElement:l,updatedItems:u})=>{e.dispatchEvent(new CustomEvent(`luzmo-item-grid-item-action`,{detail:h({action:t,actionType:n,active:r,items:i,element:a,itemId:o,item:s,deletedId:c,originalElement:l,updatedItems:u}),bubbles:!0,composed:!0,cancelable:!0}))},_=({target:e,itemStates:t,updatedItemStates:n,changedItemStates:r})=>{e.dispatchEvent(new CustomEvent(`luzmo-item-grid-item-states-changed`,{detail:{itemStates:t,updatedItemStates:n,changedItemStates:r},bubbles:!0,composed:!0}))},v=({target:e,eventName:t,detail:n})=>{e.dispatchEvent(new CustomEvent(t,{detail:n,bubbles:!0,composed:!0}))},y=e=>e instanceof Element?e:void 0,b=e=>y(e)?.closest(`.grid-stack-item`),x=({event:e,gridItem:t})=>y(e.relatedTarget)?.closest(`.grid-item-actions-popover`)?!1:!t.hasAttribute(`active`),ee=({event:e,focusedItemElement:t,removeItemActionsMenuPopover:n})=>{let r=b(e.target);return r?(t&&t!==r&&(t.removeAttribute(`focused`),n(t)),r.setAttribute(`focused`,`true`),r):t},S=({event:e,focusedItemElement:t,removeItemActionsMenuPopover:n})=>t?y(e.relatedTarget)?.closest(`luzmo-item-grid-item-actions-menu`)?{focusedItemElement:t,shouldFocusGrid:!1}:(t.removeAttribute(`focused`),n(t),{focusedItemElement:void 0,shouldFocusGrid:!0}):{focusedItemElement:void 0,shouldFocusGrid:!1},C=({item:e,activeItemElement:t,gridElement:n,removeItemActionsMenuPopover:r})=>{if(e.removeAttribute(`active`),r(e),t===e){n.removeAttribute(`has-active-item`);return}return t},w=({event:e,gridElement:t,items:n,state:r,cleanupActiveItem:i,dispatchItemActionEvent:a,createItemActionsMenuPopover:o})=>{e.stopPropagation();let s=e.detail,c=e.target?.closest(`.grid-stack-item`);if(!c)return r;let l=c.getAttribute(`gs-id`),u=n.find(e=>e.id===l);return s.type===`toggle`&&s.action===r.activeItemActionToggle&&c===r.activeItemElement?(r.activeItemElement=void 0,r.activeItemActionToggle=void 0,t.removeAttribute(`has-active-item`),c.removeAttribute(`active`),i(c),l&&a(s.action,s.type,!1,c,l,u),r):(t.querySelectorAll(`.grid-stack-item`).forEach(e=>{e!==c&&i(e)}),s.type===`toggle`?(r.activeItemElement=c,r.activeItemActionToggle=s.action,t.setAttribute(`has-active-item`,`true`),c.setAttribute(`active`,`true`),o(c,[s.action])):r.activeItemElement&&r.activeItemElement!==c&&(r.activeItemElement=void 0,r.activeItemActionToggle=void 0),l&&a(s.action,s.type,s.active,c,l,u),r)},te=({event:e,gridElement:t,hostElement:n,items:r,activeItemActionToggle:i,cleanupActiveItem:a,dispatchItemActionEvent:o})=>{let s=e.composedPath();if(!s.includes(t)&&!s.includes(n))return{activeItemActionToggle:i};let c=t.querySelector(`.grid-stack-item[active]`);if(!c||s.includes(c))return{activeItemActionToggle:i};let l=c.querySelector(`.grid-item-actions-popover`);if(l&&s.includes(l))return{activeItemActionToggle:i};let u=c.getAttribute(`gs-id`),d=r.find(e=>e.id===u);return a(c),i&&u&&o(i,`toggle`,!1,c,u,d),{activeItemActionToggle:void 0}},ne=({gridElement:e,items:t,gridItemData:n,itemId:r,action:i,options:a,state:o,cleanupActiveItem:s,dispatchItemActionEvent:c,createItemActionsMenuPopover:l})=>{if(!n?.element)return{result:void 0,state:o};let u=n.element,d=n.item,f=i===o.activeItemActionToggle&&u===o.activeItemElement,p=a?.active??!f;if(a?.active!==void 0&&p===f)return{result:f,state:o};if(!p)return o.activeItemElement=void 0,o.activeItemActionToggle=void 0,e.removeAttribute(`has-active-item`),u.removeAttribute(`active`),s(u),c(i,`toggle`,!1,u,r,d),{result:!1,state:o};if(o.activeItemElement&&o.activeItemElement!==u){let e=o.activeItemElement.getAttribute(`gs-id`),n=t.find(t=>t.id===e),r=o.activeItemActionToggle,i=o.activeItemElement;s(o.activeItemElement),o.activeItemElement=void 0,o.activeItemActionToggle=void 0,r&&e&&n&&c(r,`toggle`,!1,i,e,n)}return o.activeItemElement=u,o.activeItemActionToggle=i,e.setAttribute(`has-active-item`,`true`),u.setAttribute(`active`,`true`),l(u,[i]),c(i,`toggle`,!0,u,r,d),{result:!0,state:o}},re=({gridElement:e,items:t,state:n,cleanupActiveItem:r,dispatchItemActionEvent:i})=>{let a=0;if(n.activeItemElement&&n.activeItemActionToggle){let o=n.activeItemElement.getAttribute(`gs-id`),s=t.find(e=>e.id===o),c=n.activeItemActionToggle,l=n.activeItemElement;r(n.activeItemElement),n.activeItemElement=void 0,n.activeItemActionToggle=void 0,e.removeAttribute(`has-active-item`),c&&o&&s&&(i(c,`toggle`,!1,l,o,s),a++)}return{deactivatedCount:a,state:n}},ie={sizeX:1,sizeY:1,col:0,row:0},ae=e=>{e.forEach(e=>{if(!e.id)throw Error(`Grid item id is required`)})},oe=e=>{if(!e.id)throw Error(`Grid item id is required`);return e.id},se=(e,t)=>({id:t,x:e?.position?.col??0,y:e?.position?.row??0,w:e?.position?.sizeX??1,h:e?.position?.sizeY??1}),ce=(e,t)=>({...structuredClone(e),id:t,position:{...ie,...structuredClone(e.position)},canFilter:e.canFilter??`all`}),le=(e,t)=>{if(t){for(let n of e)if(n.getAttribute(`luzmo-item-grid-item-id`)===t)return n}},ue=(e,t)=>e.map(e=>{let n={item:e,element:t.querySelector(`[gs-id="${e.id}"]`)},r=n.element?.querySelector(`luzmo-embed-viz-item`);return r&&(n.luzmoElement=r),n}),de=({item:e,engine:t,existingItems:n,autoPosition:r,excludeNodeId:i})=>{let a=e.position,o=i?t.nodes.filter(e=>e.id!==i):t.nodes,s=new t.constructor({column:t.column,float:t.float,nodes:o.map(e=>({...e}))}),c={x:a.col,y:a.row,w:a.sizeX,h:a.sizeY,id:e.id,autoPosition:r};s.addNode(c);let l={...e,position:{col:c.x??a.col,row:c.y??a.row,sizeX:c.w??a.sizeX,sizeY:c.h??a.sizeY}};return{resolvedItem:l,updatedItems:[...n.map(e=>{let t=s.nodes.find(t=>t.id===e.id);return t&&t.x!=null&&t.y!=null&&t.w!=null&&t.h!=null?{...e,position:{col:t.x,row:t.y,sizeX:t.w,sizeY:t.h}}:e}),l]}},fe=({itemId:e,patch:t,engine:n,existingItems:r})=>{let i=r.find(t=>t.id===e);if(!i?.position)return r;let{resolvedItem:a,updatedItems:o}=de({item:{...i,position:{...i.position,...t}},engine:n,existingItems:r.filter(t=>t.id!==e),autoPosition:!1,excludeNodeId:e});return r.map(t=>t.id===e?a:o.find(e=>e.id===t.id)??t)},pe=e=>ce(e,e.id),me=Math.min,T=Math.max,he=Math.round,ge=Math.floor,E=e=>({x:e,y:e}),_e={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function ve(e,t){return typeof e==`function`?e(t):e}function D(e){return e.split(`-`)[0]}function ye(e){return e.split(`-`)[1]}function be(e){return e===`x`?`y`:`x`}function xe(e){return e===`y`?`height`:`width`}function O(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function Se(e){return be(O(e))}function Ce(e,t,n){n===void 0&&(n=!1);let r=ye(e),i=Se(e),a=xe(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=Me(o)),[o,Me(o)]}function we(e){let t=Me(e);return[Te(e),t,Te(t)]}function Te(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var Ee=[`left`,`right`],De=[`right`,`left`],Oe=[`top`,`bottom`],ke=[`bottom`,`top`];function Ae(e,t,n){switch(e){case`top`:case`bottom`:return n?t?De:Ee:t?Ee:De;case`left`:case`right`:return t?Oe:ke;default:return[]}}function je(e,t,n,r){let i=ye(e),a=Ae(D(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(Te)))),a}function Me(e){let t=D(e);return _e[t]+e.slice(t.length)}function Ne(e){return{top:0,right:0,bottom:0,left:0,...e}}function Pe(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:Ne(e)}function Fe(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function Ie(e,t,n){let{reference:r,floating:i}=e,a=O(t),o=Se(t),s=xe(o),c=D(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}switch(ye(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}async function Le(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=ve(t,e),p=Pe(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=Fe(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=Fe(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var Re=50,ze=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:Le},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=Ie(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<Re&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=Ie(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},Be=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=ve(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=D(r),_=O(o),v=D(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[Me(o)]:we(o)),x=p!==`none`;!d&&x&&b.push(...je(o,m,p,y));let ee=[o,...b],S=await s.detectOverflow(t,h),C=[],w=i.flip?.overflows||[];if(l&&C.push(S[g]),u){let e=Ce(r,a,y);C.push(S[e[0]],S[e[1]])}if(w=[...w,{placement:r,overflows:C}],!C.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=ee[e];if(t&&(!(u===`alignment`&&_!==O(t))||w.every(e=>O(e.placement)===_?e.overflows[0]>0:!0)))return{data:{index:e,overflows:w},reset:{placement:t}};let n=w.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=w.filter(e=>{if(x){let t=O(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}},Ve=new Set([`left`,`top`]);async function He(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=D(n),s=ye(n),c=O(n)===`y`,l=Ve.has(o)?-1:1,u=a&&c?-1:1,d=ve(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var Ue=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await He(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}};function We(){return typeof window<`u`}function k(e){return Ge(e)?(e.nodeName||``).toLowerCase():`#document`}function A(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function j(e){return((Ge(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function Ge(e){return We()?e instanceof Node||e instanceof A(e).Node:!1}function M(e){return We()?e instanceof Element||e instanceof A(e).Element:!1}function N(e){return We()?e instanceof HTMLElement||e instanceof A(e).HTMLElement:!1}function Ke(e){return!We()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof A(e).ShadowRoot}function P(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=L(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function qe(e){return/^(table|td|th)$/.test(k(e))}function Je(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var Ye=/transform|translate|scale|rotate|perspective|filter/,Xe=/paint|layout|strict|content/,F=e=>!!e&&e!==`none`,Ze;function Qe(e){let t=M(e)?L(e):e;return F(t.transform)||F(t.translate)||F(t.scale)||F(t.rotate)||F(t.perspective)||!et()&&(F(t.backdropFilter)||F(t.filter))||Ye.test(t.willChange||``)||Xe.test(t.contain||``)}function $e(e){let t=R(e);for(;N(t)&&!I(t);){if(Qe(t))return t;if(Je(t))return null;t=R(t)}return null}function et(){return Ze??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),Ze}function I(e){return/^(html|body|#document)$/.test(k(e))}function L(e){return A(e).getComputedStyle(e)}function tt(e){return M(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function R(e){if(k(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||Ke(e)&&e.host||j(e);return Ke(t)?t.host:t}function nt(e){let t=R(e);return I(t)?e.ownerDocument?e.ownerDocument.body:e.body:N(t)&&P(t)?t:nt(t)}function z(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=nt(e),i=r===e.ownerDocument?.body,a=A(r);if(i){let e=rt(a);return t.concat(a,a.visualViewport||[],P(r)?r:[],e&&n?z(e):[])}else return t.concat(r,z(r,[],n))}function rt(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function it(e){let t=L(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=N(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=he(n)!==a||he(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function at(e){return M(e)?e:e.contextElement}function B(e){let t=at(e);if(!N(t))return E(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=it(t),o=(a?he(n.width):n.width)/r,s=(a?he(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var ot=E(0);function st(e){let t=A(e);return!et()||!t.visualViewport?ot:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function ct(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==A(e)?!1:t}function V(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=at(e),o=E(1);t&&(r?M(r)&&(o=B(r)):o=B(e));let s=ct(a,n,r)?st(a):E(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=A(a),t=r&&M(r)?A(r):r,n=e,i=rt(n);for(;i&&r&&t!==n;){let e=B(i),t=i.getBoundingClientRect(),r=L(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=A(i),i=rt(n)}}return Fe({width:u,height:d,x:c,y:l})}function H(e,t){let n=tt(e).scrollLeft;return t?t.left+n:V(j(e)).left+n}function lt(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-H(e,n),y:n.top+t.scrollTop}}function ut(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=j(r),s=t?Je(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=E(1),u=E(0),d=N(r);if((d||!d&&!a)&&((k(r)!==`body`||P(o))&&(c=tt(r)),d)){let e=V(r);l=B(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?lt(o,c):E(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function dt(e){return Array.from(e.getClientRects())}function ft(e){let t=j(e),n=tt(e),r=e.ownerDocument.body,i=T(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=T(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+H(e),s=-n.scrollTop;return L(r).direction===`rtl`&&(o+=T(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var pt=25;function mt(e,t){let n=A(e),r=j(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=et();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=H(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=pt&&(a-=o)}else l<=pt&&(a+=l);return{width:a,height:o,x:s,y:c}}function ht(e,t){let n=V(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=N(e)?B(e):E(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function gt(e,t,n){let r;if(t===`viewport`)r=mt(e,n);else if(t===`document`)r=ft(j(e));else if(M(t))r=ht(t,n);else{let n=st(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return Fe(r)}function _t(e,t){let n=R(e);return n===t||!M(n)||I(n)?!1:L(n).position===`fixed`||_t(n,t)}function vt(e,t){let n=t.get(e);if(n)return n;let r=z(e,[],!1).filter(e=>M(e)&&k(e)!==`body`),i=null,a=L(e).position===`fixed`,o=a?R(e):e;for(;M(o)&&!I(o);){let t=L(o),n=Qe(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&(i.position===`absolute`||i.position===`fixed`)||P(o)&&!n&&_t(e,o))?r=r.filter(e=>e!==o):i=t,o=R(o)}return t.set(e,r),r}function yt(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?Je(t)?[]:vt(t,this._c):[].concat(n),r],o=gt(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=gt(t,a[e],i);s=T(n.top,s),c=me(n.right,c),l=me(n.bottom,l),u=T(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function bt(e){let{width:t,height:n}=it(e);return{width:t,height:n}}function xt(e,t,n){let r=N(t),i=j(t),a=n===`fixed`,o=V(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=E(0);function l(){c.x=H(i)}if(r||!r&&!a)if((k(t)!==`body`||P(i))&&(s=tt(t)),r){let e=V(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?lt(i,s):E(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function St(e){return L(e).position===`static`}function Ct(e,t){if(!N(e)||L(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return j(e)===n&&(n=n.ownerDocument.body),n}function wt(e,t){let n=A(e);if(Je(e))return n;if(!N(e)){let t=R(e);for(;t&&!I(t);){if(M(t)&&!St(t))return t;t=R(t)}return n}let r=Ct(e,t);for(;r&&qe(r)&&St(r);)r=Ct(r,t);return r&&I(r)&&St(r)&&!Qe(r)?n:r||$e(e)||n}var Tt=async function(e){let t=this.getOffsetParent||wt,n=this.getDimensions,r=await n(e.floating);return{reference:xt(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function Et(e){return L(e).direction===`rtl`}var Dt={convertOffsetParentRelativeRectToViewportRelativeRect:ut,getDocumentElement:j,getClippingRect:yt,getOffsetParent:wt,getElementRects:Tt,getClientRects:dt,getDimensions:bt,getScale:B,isElement:M,isRTL:Et};function Ot(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function kt(e,t){let n=null,r,i=j(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=ge(d),h=ge(i.clientWidth-(u+f)),g=ge(i.clientHeight-(d+p)),_=ge(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:T(0,me(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(n!==c){if(!y)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!Ot(l,e.getBoundingClientRect())&&o(),y=!1}try{n=new IntersectionObserver(b,{...v,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,v)}n.observe(e)}return o(!0),a}function At(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=at(e),u=i||a?[...l?z(l):[],...t?z(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?kt(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?V(e):null;c&&g();function g(){let t=V(e);h&&!Ot(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var jt=Ue,Mt=Be,Nt=(e,t,n)=>{let r=new Map,i={platform:Dt,...n},a={...i.platform,_c:r};return ze(e,t,{...i,platform:a})},Pt=new WeakMap,Ft=(e,t)=>{It(e),Pt.set(e,t)},It=e=>{let t=Pt.get(e);t&&(t(),Pt.delete(e))},Lt=({element:e,activeActions:t,getGridItemById:n,placementItemActionsMenu:r,renderOverlayContent:i,removeItemActionsMenuPopover:a,itemActionsDocumentPopover:o=!0})=>{let c=e.querySelector(`.grid-item-actions-popover`),l=e.querySelector(`.grid-stack-item-content`),u=n(e.getAttribute(`gs-id`)??``);if(t&&t.length>0&&c&&(a(e),c=null),!c){let n=document.createDocumentFragment();(0,s.render)(i(u?.item,t),n),c=n.querySelector(`.grid-item-actions-popover`),e.append(c)}let d=o?`absolute`:`fixed`,f=At(l,c,async()=>{let{x:e,y:t}=await Nt(l,c,{placement:u?.item?.placementActionsMenu??r??`right-start`,strategy:d,middleware:[jt(0),Mt({crossAxis:!1})]});c.style.left=`${e}px`,c.style.top=`${t}px`,o||(c.style.position=`fixed`,c.style.right=`auto`,c.style.bottom=`auto`,c.style.margin=`0`)});Ft(c,f),o&&c.isConnected&&!c.matches(`:popover-open`)&&c.showPopover()},Rt=e=>{let t=e.querySelector(`.grid-item-actions-popover`);t&&(It(t),t.hasAttribute(`popover`)&&t.matches(`:popover-open`)&&t.hidePopover(),t.remove())},zt=e=>e===`ArrowLeft`||e===`ArrowRight`||e===`ArrowUp`||e===`ArrowDown`,Bt=({key:e,node:t,maxColumns:n,shiftKey:r,ctrlKey:i,metaKey:a})=>{let o={ArrowLeft:{move:{x:t.x-1},resize:{x:t.x-1,w:t.w+1},shrink:{w:t.w-1},canMove:t.x>0,canResize:t.x>0,canShrink:t.w>1},ArrowRight:{move:{x:t.x+1},resize:{w:t.w+1},shrink:{x:t.x+1,w:t.w-1},canMove:t.x<n-t.w,canResize:t.x+t.w<n,canShrink:t.w>1},ArrowUp:{move:{y:t.y-1},resize:{y:t.y-1,h:t.h+1},shrink:{h:t.h-1},canMove:t.y>0,canResize:t.y>0,canShrink:t.h>1},ArrowDown:{move:{y:t.y+1},resize:{h:t.h+1},shrink:{y:t.y+1,h:t.h-1},canMove:!0,canResize:!0,canShrink:t.h>1}}[e];if(r&&o.canResize)return o.resize;if((i||a)&&o.canShrink)return o.shrink;if(o.canMove)return o.move},Vt=({event:e,viewMode:t,focusedItemElement:n,activeItemElement:r,gridElement:i,grid:a,columns:o,onDeleteRequest:s,removeItemActionsMenuPopover:c,createItemActionsMenuPopover:l})=>{if(t)return{focusedItemElement:n,activeItemElement:r};let u=n,d=r;if(e.key===`Delete`&&n){let e=n.nextElementSibling??n.previousElementSibling;s(n),u=e??void 0,u?requestAnimationFrame(()=>u?.focus()):i.focus(),r===n&&(d=void 0)}else if(e.key===`Escape`&&n)n.removeAttribute(`focused`),c(n),u=void 0,i.focus();else if(e.key===`Enter`&&n)e.preventDefault(),e.stopPropagation(),r&&(r.removeAttribute(`active`),i.removeAttribute(`has-active-item`),c(r),d=void 0),i.querySelectorAll(`.grid-stack-item`).forEach(e=>{e!==n&&c(e)}),l(n),requestAnimationFrame(()=>{let e=n.querySelector(`luzmo-item-grid-item-actions-menu`);e&&e.focus()});else if(n&&a&&zt(e.key)){e.preventDefault(),e.stopPropagation();let t=n.gridstackNode;if(!t)return{focusedItemElement:u,activeItemElement:d};let r=Bt({key:e.key,node:t,maxColumns:o,shiftKey:e.shiftKey,ctrlKey:e.ctrlKey,metaKey:e.metaKey});r&&a.update(n,r)}return{focusedItemElement:u,activeItemElement:d}},U={lock:{icon:o.luzmoLockOutline,label:`Lock`,tooltip:`Lock`,action:`lock`,type:`toggle`},edit:{icon:o.luzmoPencil,label:`Edit`,tooltip:`Edit`,action:`edit`,type:`toggle`},"edit-data":{icon:o.luzmoTable,label:`Edit data`,tooltip:`Data`,action:`edit-data`,type:`toggle`},"item-options":{icon:o.luzmoCog,label:`Item options`,tooltip:`Options`,action:`item-options`,type:`toggle`},filters:{icon:o.luzmoFilterOutline,label:`Filters`,tooltip:`Filters`,action:`filters`,type:`toggle`},clone:{icon:o.luzmoClone,label:`Clone`,tooltip:`Clone`,action:`clone`,type:`button`},delete:{icon:o.luzmoTrashOutline,label:`Delete`,tooltip:`Delete`,action:`delete`,type:`button`}},Ht=e=>{if(e)return structuredClone(e).map(e=>{if(e.type===`group`)return e.actions=e.actions??[],e.actions=e.actions.map(e=>{if(typeof e==`string`&&Object.hasOwn(U,e))return{...U[e]};if(typeof e==`object`)return e.icon=e.icon??o.luzmoCircle,e.label=e.label??e.action,e.tooltip=e.tooltip??e.label??e.action,e.type=[`toggle`,`button`].includes(e.type??``)?e.type:`button`,e}).filter(Boolean),e}).filter(Boolean)},Ut=()=>[{type:`group`,actions:[{...U[`edit-data`]},{...U[`item-options`]},{...U.clone}]},{type:`group`,actions:[{...U.delete}]}],Wt=16,Gt=10,W=(e,t)=>t>=1?`rgba(${e.r},${e.g},${e.b},1)`:t<=0?`rgba(${e.r},${e.g},${e.b},0)`:`rgba(${e.r},${e.g},${e.b},${t})`,Kt=async({theme:e,currentTheme:t})=>e?.type===`custom`?structuredClone(e):e?.id&&r.n.includes(e.id)&&t?.id!==e.id?{...await r.t(e.id),id:e.id}:e?.id&&t?.id!==e.id||!e&&t?t:await r.t(`default`),qt=e=>[(e?.margins?.[0]??Wt)/2,(e?.margins?.[1]??Wt)/2],Jt=e=>Gt-(e?.margins?.[0]??Gt),Yt=e=>{let t=e?.boxShadow;if(!t)return``;let r=new n.t(t.color),i={r:Math.round(r.srgb.r*255),g:Math.round(r.srgb.g*255),b:Math.round(r.srgb.b*255)},a=e?.margins?.[0]??Wt,o=Math.min(a/10,2);return t.size===`none`?`none`:t.size===`S`?`0 ${o*2}px ${o*4}px ${W(i,.16)}, 0 ${o*2}px ${o*4}px ${W(i,.23)}`:t.size===`M`?`0 ${o*8}px ${o*16}px ${W(i,.19)}, 0 ${o*4}px ${o*4}px ${W(i,.23)}`:t.size===`L`?`0 ${o*12}px ${o*24}px ${W(i,.25)}, 0 ${o*8}px ${o*8}px ${W(i,.22)}`:``},Xt=e=>{let t=Yt(e);return new Map([[`--grid-font-family`,e?.font?.fontFamily],[`--grid-background`,e?.background],[`--grid-item-box-shadow`,t],[`--grid-item-background`,e?.itemsBackground],[`--grid-item-border-color`,e?.borders?.[`border-color`]],[`--grid-item-border-style`,e?.borders?.[`border-style`]],[`--grid-item-border-radius`,e?.borders?.[`border-radius`]],[`--grid-item-border-width`,`${e?.borders?.[`border-top-width`]}`],[`--grid-item-border-top-width`,e?.borders?.[`border-top-width`]],[`--grid-item-border-right-width`,e?.borders?.[`border-right-width`]],[`--grid-item-border-bottom-width`,e?.borders?.[`border-bottom-width`]],[`--grid-item-border-left-width`,e?.borders?.[`border-left-width`]]])},Zt=e=>{let t=e?.itemsBackground??e?.background;return t?new n.t(t).luminance<.5:!1},Qt=(e,t)=>{t&&Xt(t).forEach((t,n)=>{t?e.setProperty(n,t):e.removeProperty(n)})},$t=({item:e,defaultItemActionsMenu:t,activeActions:n})=>{let r=Ht(e?.actionsMenu)??Ht(t)??Ut();if(!a.itemTypes.find(t=>t.type===e?.type)?.containsData&&!e?.actionsMenu&&!t&&(r=r.map(e=>({...e,actions:e.actions?.filter(e=>e.action!==`edit-data`)}))),n&&n.length>0){let e=new Set(n);r=r.map(t=>({...t,actions:t.actions?.map(t=>({...t,active:t.action&&e.has(t.action)?!0:t.active}))}))}return r},en=({item:e,activeActions:t,defaultItemActionsMenu:n,placementItemActionsMenu:r,language:i,handleAction:a,itemActionsDocumentPopover:o=!0})=>{let c=$t({item:e,defaultItemActionsMenu:n,activeActions:t});return s.html`
20
+ const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-DrK3QZNa.cjs"),n=require("./color-Bl8h58rV.cjs"),r=require("./themes-kvrISOTz.cjs"),i=require("./v4-Dyp-SQ1c.cjs"),a=require("./item-list.cjs");let o=require("@luzmo/icons");require("@luzmo/lucero/icon");let s=require("lit"),c=require("lit/decorators.js"),l=require("@lit/localize");require("@luzmo/lucero/tooltip");let u=require("lit/directives/repeat.js");require("@luzmo/lucero/action-button"),require("@luzmo/embed"),require("@luzmo/lucero/action-group");let d=require("@luzmo/lucero/utils"),f=require("lit/directives/guard.js");var p=`.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}.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:not(.grid-stack-rtl)>.grid-stack-item{left:0}.grid-stack.grid-stack-rtl>.grid-stack-item{right:0}.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,right,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,right .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,right,top,height,width}.grid-stack>.grid-stack-item[gs-y="0"]{top:0}.grid-stack:not(.grid-stack-rtl)>.grid-stack-item[gs-x="0"]{left:0}.grid-stack.grid-stack-rtl>.grid-stack-item[gs-x="0"]{right:0}`,m=(e,t)=>{e.forEach(e=>{let n=e.querySelector(`luzmo-embed-viz-item`);n&&(n.options={...n.options,locale:t})})},h=({action:e,actionType:t,active:n,items:r,element:i,itemId:a,item:o,deletedId:s,originalElement:c,updatedItems:l})=>({action:e,actionType:t,active:n,items:r,element:i,item:{...o,id:a,filters:o?.filters??[]},...s&&{deletedId:s},...c&&{originalElement:c},...l&&{updatedItems:l}}),g=({target:e,action:t,actionType:n,active:r,items:i,element:a,itemId:o,item:s,deletedId:c,originalElement:l,updatedItems:u})=>{e.dispatchEvent(new CustomEvent(`luzmo-item-grid-item-action`,{detail:h({action:t,actionType:n,active:r,items:i,element:a,itemId:o,item:s,deletedId:c,originalElement:l,updatedItems:u}),bubbles:!0,composed:!0,cancelable:!0}))},_=({target:e,itemStates:t,updatedItemStates:n,changedItemStates:r})=>{e.dispatchEvent(new CustomEvent(`luzmo-item-grid-item-states-changed`,{detail:{itemStates:t,updatedItemStates:n,changedItemStates:r},bubbles:!0,composed:!0}))},v=({target:e,eventName:t,detail:n})=>{e.dispatchEvent(new CustomEvent(t,{detail:n,bubbles:!0,composed:!0}))},y=e=>e instanceof Element?e:void 0,b=e=>y(e)?.closest(`.grid-stack-item`),x=({event:e,gridItem:t})=>!y(e.relatedTarget)?.closest(`.grid-item-actions-popover`)&&!t.hasAttribute(`active`),ee=({event:e,focusedItemElement:t,removeItemActionsMenuPopover:n})=>{let r=b(e.target);return r?(t&&t!==r&&(t.removeAttribute(`focused`),n(t)),r.setAttribute(`focused`,`true`),r):t},S=({event:e,focusedItemElement:t,removeItemActionsMenuPopover:n})=>t?y(e.relatedTarget)?.closest(`luzmo-item-grid-item-actions-menu`)?{focusedItemElement:t,shouldFocusGrid:!1}:(t.removeAttribute(`focused`),n(t),{focusedItemElement:void 0,shouldFocusGrid:!0}):{focusedItemElement:void 0,shouldFocusGrid:!1},C=({item:e,activeItemElement:t,gridElement:n,removeItemActionsMenuPopover:r})=>{if(e.removeAttribute(`active`),r(e),t===e){n.removeAttribute(`has-active-item`);return}return t},w=({event:e,gridElement:t,items:n,state:r,cleanupActiveItem:i,dispatchItemActionEvent:a,createItemActionsMenuPopover:o})=>{e.stopPropagation();let s=e.detail,c=e.target?.closest(`.grid-stack-item`);if(!c)return r;let l=c.getAttribute(`gs-id`),u=n.find(e=>e.id===l);return s.type===`toggle`&&s.action===r.activeItemActionToggle&&c===r.activeItemElement?(r.activeItemElement=void 0,r.activeItemActionToggle=void 0,t.removeAttribute(`has-active-item`),c.removeAttribute(`active`),i(c),l&&a(s.action,s.type,!1,c,l,u),r):(t.querySelectorAll(`.grid-stack-item`).forEach(e=>{e!==c&&i(e)}),s.type===`toggle`?(r.activeItemElement=c,r.activeItemActionToggle=s.action,t.setAttribute(`has-active-item`,`true`),c.setAttribute(`active`,`true`),o(c,[s.action])):r.activeItemElement&&r.activeItemElement!==c&&(r.activeItemElement=void 0,r.activeItemActionToggle=void 0),l&&a(s.action,s.type,s.active,c,l,u),r)},te=({event:e,gridElement:t,hostElement:n,items:r,activeItemActionToggle:i,cleanupActiveItem:a,dispatchItemActionEvent:o})=>{let s=e.composedPath();if(!s.includes(t)&&!s.includes(n))return{activeItemActionToggle:i};let c=t.querySelector(`.grid-stack-item[active]`);if(!c||s.includes(c))return{activeItemActionToggle:i};let l=c.querySelector(`.grid-item-actions-popover`);if(l&&s.includes(l))return{activeItemActionToggle:i};let u=c.getAttribute(`gs-id`),d=r.find(e=>e.id===u);return a(c),i&&u&&o(i,`toggle`,!1,c,u,d),{activeItemActionToggle:void 0}},ne=({gridElement:e,items:t,gridItemData:n,itemId:r,action:i,options:a,state:o,cleanupActiveItem:s,dispatchItemActionEvent:c,createItemActionsMenuPopover:l})=>{if(!n?.element)return{result:void 0,state:o};let u=n.element,d=n.item,f=i===o.activeItemActionToggle&&u===o.activeItemElement,p=a?.active??!f;if(a?.active!==void 0&&p===f)return{result:f,state:o};if(!p)return o.activeItemElement=void 0,o.activeItemActionToggle=void 0,e.removeAttribute(`has-active-item`),u.removeAttribute(`active`),s(u),c(i,`toggle`,!1,u,r,d),{result:!1,state:o};if(o.activeItemElement&&o.activeItemElement!==u){let e=o.activeItemElement.getAttribute(`gs-id`),n=t.find(t=>t.id===e),r=o.activeItemActionToggle,i=o.activeItemElement;s(o.activeItemElement),o.activeItemElement=void 0,o.activeItemActionToggle=void 0,r&&e&&n&&c(r,`toggle`,!1,i,e,n)}return o.activeItemElement=u,o.activeItemActionToggle=i,e.setAttribute(`has-active-item`,`true`),u.setAttribute(`active`,`true`),l(u,[i]),c(i,`toggle`,!0,u,r,d),{result:!0,state:o}},re=({gridElement:e,items:t,state:n,cleanupActiveItem:r,dispatchItemActionEvent:i})=>{let a=0;if(n.activeItemElement&&n.activeItemActionToggle){let o=n.activeItemElement.getAttribute(`gs-id`),s=t.find(e=>e.id===o),c=n.activeItemActionToggle,l=n.activeItemElement;r(n.activeItemElement),n.activeItemElement=void 0,n.activeItemActionToggle=void 0,e.removeAttribute(`has-active-item`),c&&o&&s&&(i(c,`toggle`,!1,l,o,s),a++)}return{deactivatedCount:a,state:n}},ie={sizeX:1,sizeY:1,col:0,row:0},ae=e=>{e.forEach(e=>{if(!e.id)throw Error(`Grid item id is required`)})},oe=e=>{if(!e.id)throw Error(`Grid item id is required`);return e.id},se=(e,t)=>({id:t,x:e?.position?.col??0,y:e?.position?.row??0,w:e?.position?.sizeX??1,h:e?.position?.sizeY??1}),ce=(e,t)=>({...structuredClone(e),id:t,position:{...ie,...structuredClone(e.position)},canFilter:e.canFilter??`all`}),le=(e,t)=>{if(t){for(let n of e)if(n.getAttribute(`luzmo-item-grid-item-id`)===t)return n}},ue=(e,t)=>e.map(e=>{let n={item:e,element:t.querySelector(`[gs-id="${e.id}"]`)},r=n.element?.querySelector(`luzmo-embed-viz-item`);return r&&(n.luzmoElement=r),n}),de=({item:e,engine:t,existingItems:n,autoPosition:r,excludeNodeId:i})=>{let a=e.position,o=i?t.nodes.filter(e=>e.id!==i):t.nodes,s=new t.constructor({column:t.column,float:t.float,nodes:o.map(e=>({...e}))}),c={x:a.col,y:a.row,w:a.sizeX,h:a.sizeY,id:e.id,autoPosition:r};s.addNode(c);let l={...e,position:{col:c.x??a.col,row:c.y??a.row,sizeX:c.w??a.sizeX,sizeY:c.h??a.sizeY}};return{resolvedItem:l,updatedItems:[...n.map(e=>{let t=s.nodes.find(t=>t.id===e.id);return t&&t.x!=null&&t.y!=null&&t.w!=null&&t.h!=null?{...e,position:{col:t.x,row:t.y,sizeX:t.w,sizeY:t.h}}:e}),l]}},fe=({itemId:e,patch:t,engine:n,existingItems:r})=>{let i=r.find(t=>t.id===e);if(!i?.position)return r;let{resolvedItem:a,updatedItems:o}=de({item:{...i,position:{...i.position,...t}},engine:n,existingItems:r.filter(t=>t.id!==e),autoPosition:!1,excludeNodeId:e});return r.map(t=>t.id===e?a:o.find(e=>e.id===t.id)??t)},pe=e=>ce(e,e.id),me=Math.min,T=Math.max,he=Math.round,ge=Math.floor,E=e=>({x:e,y:e}),_e={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function ve(e,t){return typeof e==`function`?e(t):e}function D(e){return e.split(`-`)[0]}function ye(e){return e.split(`-`)[1]}function be(e){return e===`x`?`y`:`x`}function xe(e){return e===`y`?`height`:`width`}function O(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function Se(e){return be(O(e))}function Ce(e,t,n){n===void 0&&(n=!1);let r=ye(e),i=Se(e),a=xe(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=Me(o)),[o,Me(o)]}function we(e){let t=Me(e);return[Te(e),t,Te(t)]}function Te(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var Ee=[`left`,`right`],De=[`right`,`left`],Oe=[`top`,`bottom`],ke=[`bottom`,`top`];function Ae(e,t,n){switch(e){case`top`:case`bottom`:return n?t?De:Ee:t?Ee:De;case`left`:case`right`:return t?Oe:ke;default:return[]}}function je(e,t,n,r){let i=ye(e),a=Ae(D(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(Te)))),a}function Me(e){let t=D(e);return _e[t]+e.slice(t.length)}function Ne(e){return{top:0,right:0,bottom:0,left:0,...e}}function Pe(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:Ne(e)}function Fe(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function Ie(e,t,n){let{reference:r,floating:i}=e,a=O(t),o=Se(t),s=xe(o),c=D(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}switch(ye(t)){case`start`:p[o]-=f*(n&&l?-1:1);break;case`end`:p[o]+=f*(n&&l?-1:1);break}return p}async function Le(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=ve(t,e),p=Pe(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=Fe(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=Fe(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var Re=50,ze=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:Le},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=Ie(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<Re&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=Ie(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},Be=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=ve(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=D(r),_=O(o),v=D(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[Me(o)]:we(o)),x=p!==`none`;!d&&x&&b.push(...je(o,m,p,y));let ee=[o,...b],S=await s.detectOverflow(t,h),C=[],w=i.flip?.overflows||[];if(l&&C.push(S[g]),u){let e=Ce(r,a,y);C.push(S[e[0]],S[e[1]])}if(w=[...w,{placement:r,overflows:C}],!C.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=ee[e];if(t&&(!(u===`alignment`&&_!==O(t))||w.every(e=>O(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:w},reset:{placement:t}};let n=w.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=w.filter(e=>{if(x){let t=O(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o;break}if(r!==n)return{reset:{placement:n}}}return{}}}},Ve=new Set([`left`,`top`]);async function He(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=D(n),s=ye(n),c=O(n)===`y`,l=Ve.has(o)?-1:1,u=a&&c?-1:1,d=ve(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var Ue=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await He(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}};function We(){return typeof window<`u`}function k(e){return Ge(e)?(e.nodeName||``).toLowerCase():`#document`}function A(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function j(e){return((Ge(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function Ge(e){return We()?e instanceof Node||e instanceof A(e).Node:!1}function M(e){return We()?e instanceof Element||e instanceof A(e).Element:!1}function N(e){return We()?e instanceof HTMLElement||e instanceof A(e).HTMLElement:!1}function Ke(e){return!We()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof A(e).ShadowRoot}function P(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=L(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function qe(e){return/^(table|td|th)$/.test(k(e))}function Je(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var Ye=/transform|translate|scale|rotate|perspective|filter/,Xe=/paint|layout|strict|content/,F=e=>!!e&&e!==`none`,Ze;function Qe(e){let t=M(e)?L(e):e;return F(t.transform)||F(t.translate)||F(t.scale)||F(t.rotate)||F(t.perspective)||!et()&&(F(t.backdropFilter)||F(t.filter))||Ye.test(t.willChange||``)||Xe.test(t.contain||``)}function $e(e){let t=R(e);for(;N(t)&&!I(t);){if(Qe(t))return t;if(Je(t))return null;t=R(t)}return null}function et(){return Ze??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),Ze}function I(e){return/^(html|body|#document)$/.test(k(e))}function L(e){return A(e).getComputedStyle(e)}function tt(e){return M(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function R(e){if(k(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||Ke(e)&&e.host||j(e);return Ke(t)?t.host:t}function nt(e){let t=R(e);return I(t)?e.ownerDocument?e.ownerDocument.body:e.body:N(t)&&P(t)?t:nt(t)}function z(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=nt(e),i=r===e.ownerDocument?.body,a=A(r);if(i){let e=rt(a);return t.concat(a,a.visualViewport||[],P(r)?r:[],e&&n?z(e):[])}else return t.concat(r,z(r,[],n))}function rt(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function it(e){let t=L(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=N(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=he(n)!==a||he(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function at(e){return M(e)?e:e.contextElement}function B(e){let t=at(e);if(!N(t))return E(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=it(t),o=(a?he(n.width):n.width)/r,s=(a?he(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var ot=E(0);function st(e){let t=A(e);return!et()||!t.visualViewport?ot:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function ct(e,t,n){return t===void 0&&(t=!1),!n||t&&n!==A(e)?!1:t}function V(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=at(e),o=E(1);t&&(r?M(r)&&(o=B(r)):o=B(e));let s=ct(a,n,r)?st(a):E(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a){let e=A(a),t=r&&M(r)?A(r):r,n=e,i=rt(n);for(;i&&r&&t!==n;){let e=B(i),t=i.getBoundingClientRect(),r=L(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=A(i),i=rt(n)}}return Fe({width:u,height:d,x:c,y:l})}function H(e,t){let n=tt(e).scrollLeft;return t?t.left+n:V(j(e)).left+n}function lt(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-H(e,n),y:n.top+t.scrollTop}}function ut(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=j(r),s=t?Je(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=E(1),u=E(0),d=N(r);if((d||!d&&!a)&&((k(r)!==`body`||P(o))&&(c=tt(r)),d)){let e=V(r);l=B(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?lt(o,c):E(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function dt(e){return Array.from(e.getClientRects())}function ft(e){let t=j(e),n=tt(e),r=e.ownerDocument.body,i=T(t.scrollWidth,t.clientWidth,r.scrollWidth,r.clientWidth),a=T(t.scrollHeight,t.clientHeight,r.scrollHeight,r.clientHeight),o=-n.scrollLeft+H(e),s=-n.scrollTop;return L(r).direction===`rtl`&&(o+=T(t.clientWidth,r.clientWidth)-i),{width:i,height:a,x:o,y:s}}var pt=25;function mt(e,t){let n=A(e),r=j(e),i=n.visualViewport,a=r.clientWidth,o=r.clientHeight,s=0,c=0;if(i){a=i.width,o=i.height;let e=et();(!e||e&&t===`fixed`)&&(s=i.offsetLeft,c=i.offsetTop)}let l=H(r);if(l<=0){let e=r.ownerDocument,t=e.body,n=getComputedStyle(t),i=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,o=Math.abs(r.clientWidth-t.clientWidth-i);o<=pt&&(a-=o)}else l<=pt&&(a+=l);return{width:a,height:o,x:s,y:c}}function ht(e,t){let n=V(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=N(e)?B(e):E(1);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function gt(e,t,n){let r;if(t===`viewport`)r=mt(e,n);else if(t===`document`)r=ft(j(e));else if(M(t))r=ht(t,n);else{let n=st(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return Fe(r)}function _t(e,t){let n=R(e);return n===t||!M(n)||I(n)?!1:L(n).position===`fixed`||_t(n,t)}function vt(e,t){let n=t.get(e);if(n)return n;let r=z(e,[],!1).filter(e=>M(e)&&k(e)!==`body`),i=null,a=L(e).position===`fixed`,o=a?R(e):e;for(;M(o)&&!I(o);){let t=L(o),n=Qe(o);!n&&t.position===`fixed`&&(i=null),(a?!n&&!i:!n&&t.position===`static`&&i&&(i.position===`absolute`||i.position===`fixed`)||P(o)&&!n&&_t(e,o))?r=r.filter(e=>e!==o):i=t,o=R(o)}return t.set(e,r),r}function yt(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?Je(t)?[]:vt(t,this._c):[].concat(n),r],o=gt(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=gt(t,a[e],i);s=T(n.top,s),c=me(n.right,c),l=me(n.bottom,l),u=T(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function bt(e){let{width:t,height:n}=it(e);return{width:t,height:n}}function xt(e,t,n){let r=N(t),i=j(t),a=n===`fixed`,o=V(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=E(0);function l(){c.x=H(i)}if(r||!r&&!a)if((k(t)!==`body`||P(i))&&(s=tt(t)),r){let e=V(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}else i&&l();a&&!r&&i&&l();let u=i&&!r&&!a?lt(i,s):E(0);return{x:o.left+s.scrollLeft-c.x-u.x,y:o.top+s.scrollTop-c.y-u.y,width:o.width,height:o.height}}function St(e){return L(e).position===`static`}function Ct(e,t){if(!N(e)||L(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return j(e)===n&&(n=n.ownerDocument.body),n}function wt(e,t){let n=A(e);if(Je(e))return n;if(!N(e)){let t=R(e);for(;t&&!I(t);){if(M(t)&&!St(t))return t;t=R(t)}return n}let r=Ct(e,t);for(;r&&qe(r)&&St(r);)r=Ct(r,t);return r&&I(r)&&St(r)&&!Qe(r)?n:r||$e(e)||n}var Tt=async function(e){let t=this.getOffsetParent||wt,n=this.getDimensions,r=await n(e.floating);return{reference:xt(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function Et(e){return L(e).direction===`rtl`}var Dt={convertOffsetParentRelativeRectToViewportRelativeRect:ut,getDocumentElement:j,getClippingRect:yt,getOffsetParent:wt,getElementRects:Tt,getClientRects:dt,getDimensions:bt,getScale:B,isElement:M,isRTL:Et};function Ot(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function kt(e,t){let n=null,r,i=j(e);function a(){var e;clearTimeout(r),(e=n)==null||e.disconnect(),n=null}function o(s,c){s===void 0&&(s=!1),c===void 0&&(c=1),a();let l=e.getBoundingClientRect(),{left:u,top:d,width:f,height:p}=l;if(s||t(),!f||!p)return;let m=ge(d),h=ge(i.clientWidth-(u+f)),g=ge(i.clientHeight-(d+p)),_=ge(u),v={rootMargin:-m+`px `+-h+`px `+-g+`px `+-_+`px`,threshold:T(0,me(1,c))||1},y=!0;function b(t){let n=t[0].intersectionRatio;if(n!==c){if(!y)return o();n?o(!1,n):r=setTimeout(()=>{o(!1,1e-7)},1e3)}n===1&&!Ot(l,e.getBoundingClientRect())&&o(),y=!1}try{n=new IntersectionObserver(b,{...v,root:i.ownerDocument})}catch{n=new IntersectionObserver(b,v)}n.observe(e)}return o(!0),a}function At(e,t,n,r){r===void 0&&(r={});let{ancestorScroll:i=!0,ancestorResize:a=!0,elementResize:o=typeof ResizeObserver==`function`,layoutShift:s=typeof IntersectionObserver==`function`,animationFrame:c=!1}=r,l=at(e),u=i||a?[...l?z(l):[],...t?z(t):[]]:[];u.forEach(e=>{i&&e.addEventListener(`scroll`,n,{passive:!0}),a&&e.addEventListener(`resize`,n)});let d=l&&s?kt(l,n):null,f=-1,p=null;o&&(p=new ResizeObserver(e=>{let[r]=e;r&&r.target===l&&p&&t&&(p.unobserve(t),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var e;(e=p)==null||e.observe(t)})),n()}),l&&!c&&p.observe(l),t&&p.observe(t));let m,h=c?V(e):null;c&&g();function g(){let t=V(e);h&&!Ot(h,t)&&n(),h=t,m=requestAnimationFrame(g)}return n(),()=>{var e;u.forEach(e=>{i&&e.removeEventListener(`scroll`,n),a&&e.removeEventListener(`resize`,n)}),d?.(),(e=p)==null||e.disconnect(),p=null,c&&cancelAnimationFrame(m)}}var jt=Ue,Mt=Be,Nt=(e,t,n)=>{let r=new Map,i={platform:Dt,...n},a={...i.platform,_c:r};return ze(e,t,{...i,platform:a})},Pt=new WeakMap,Ft=(e,t)=>{It(e),Pt.set(e,t)},It=e=>{let t=Pt.get(e);t&&(t(),Pt.delete(e))},Lt=({element:e,activeActions:t,getGridItemById:n,placementItemActionsMenu:r,renderOverlayContent:i,removeItemActionsMenuPopover:a,itemActionsDocumentPopover:o=!0})=>{let c=e.querySelector(`.grid-item-actions-popover`),l=e.querySelector(`.grid-stack-item-content`),u=n(e.getAttribute(`gs-id`)??``);if(t&&t.length>0&&c&&(a(e),c=null),!c){let n=document.createDocumentFragment();(0,s.render)(i(u?.item,t),n),c=n.querySelector(`.grid-item-actions-popover`),e.append(c)}let d=o?`absolute`:`fixed`,f=At(l,c,async()=>{let{x:e,y:t}=await Nt(l,c,{placement:u?.item?.placementActionsMenu??r??`right-start`,strategy:d,middleware:[jt(0),Mt({crossAxis:!1})]});c.style.left=`${e}px`,c.style.top=`${t}px`,o||(c.style.position=`fixed`,c.style.right=`auto`,c.style.bottom=`auto`,c.style.margin=`0`)});Ft(c,f),o&&c.isConnected&&!c.matches(`:popover-open`)&&c.showPopover()},Rt=e=>{let t=e.querySelector(`.grid-item-actions-popover`);t&&(It(t),t.hasAttribute(`popover`)&&t.matches(`:popover-open`)&&t.hidePopover(),t.remove())},zt=e=>e===`ArrowLeft`||e===`ArrowRight`||e===`ArrowUp`||e===`ArrowDown`,Bt=({key:e,node:t,maxColumns:n,shiftKey:r,ctrlKey:i,metaKey:a})=>{let o={ArrowLeft:{move:{x:t.x-1},resize:{x:t.x-1,w:t.w+1},shrink:{w:t.w-1},canMove:t.x>0,canResize:t.x>0,canShrink:t.w>1},ArrowRight:{move:{x:t.x+1},resize:{w:t.w+1},shrink:{x:t.x+1,w:t.w-1},canMove:t.x<n-t.w,canResize:t.x+t.w<n,canShrink:t.w>1},ArrowUp:{move:{y:t.y-1},resize:{y:t.y-1,h:t.h+1},shrink:{h:t.h-1},canMove:t.y>0,canResize:t.y>0,canShrink:t.h>1},ArrowDown:{move:{y:t.y+1},resize:{h:t.h+1},shrink:{y:t.y+1,h:t.h-1},canMove:!0,canResize:!0,canShrink:t.h>1}}[e];if(r&&o.canResize)return o.resize;if((i||a)&&o.canShrink)return o.shrink;if(o.canMove)return o.move},Vt=({event:e,viewMode:t,focusedItemElement:n,activeItemElement:r,gridElement:i,grid:a,columns:o,onDeleteRequest:s,removeItemActionsMenuPopover:c,createItemActionsMenuPopover:l})=>{if(t)return{focusedItemElement:n,activeItemElement:r};let u=n,d=r;if(e.key===`Delete`&&n){let e=n.nextElementSibling??n.previousElementSibling;s(n),u=e??void 0,u?requestAnimationFrame(()=>u?.focus()):i.focus(),r===n&&(d=void 0)}else if(e.key===`Escape`&&n)n.removeAttribute(`focused`),c(n),u=void 0,i.focus();else if(e.key===`Enter`&&n)e.preventDefault(),e.stopPropagation(),r&&(r.removeAttribute(`active`),i.removeAttribute(`has-active-item`),c(r),d=void 0),i.querySelectorAll(`.grid-stack-item`).forEach(e=>{e!==n&&c(e)}),l(n),requestAnimationFrame(()=>{let e=n.querySelector(`luzmo-item-grid-item-actions-menu`);e&&e.focus()});else if(n&&a&&zt(e.key)){e.preventDefault(),e.stopPropagation();let t=n.gridstackNode;if(!t)return{focusedItemElement:u,activeItemElement:d};let r=Bt({key:e.key,node:t,maxColumns:o,shiftKey:e.shiftKey,ctrlKey:e.ctrlKey,metaKey:e.metaKey});r&&a.update(n,r)}return{focusedItemElement:u,activeItemElement:d}},U={lock:{icon:o.luzmoLockOutline,label:`Lock`,tooltip:`Lock`,action:`lock`,type:`toggle`},edit:{icon:o.luzmoPencil,label:`Edit`,tooltip:`Edit`,action:`edit`,type:`toggle`},"edit-data":{icon:o.luzmoTable,label:`Edit data`,tooltip:`Data`,action:`edit-data`,type:`toggle`},"item-options":{icon:o.luzmoCog,label:`Item options`,tooltip:`Options`,action:`item-options`,type:`toggle`},filters:{icon:o.luzmoFilterOutline,label:`Filters`,tooltip:`Filters`,action:`filters`,type:`toggle`},clone:{icon:o.luzmoClone,label:`Clone`,tooltip:`Clone`,action:`clone`,type:`button`},delete:{icon:o.luzmoTrashOutline,label:`Delete`,tooltip:`Delete`,action:`delete`,type:`button`}},Ht=e=>{if(e)return structuredClone(e).map(e=>{if(e.type===`group`)return e.actions=e.actions??[],e.actions=e.actions.map(e=>{if(typeof e==`string`&&Object.hasOwn(U,e))return{...U[e]};if(typeof e==`object`)return e.icon=e.icon??o.luzmoCircle,e.label=e.label??e.action,e.tooltip=e.tooltip??e.label??e.action,e.type=[`toggle`,`button`].includes(e.type??``)?e.type:`button`,e}).filter(Boolean),e}).filter(Boolean)},Ut=()=>[{type:`group`,actions:[{...U[`edit-data`]},{...U[`item-options`]},{...U.clone}]},{type:`group`,actions:[{...U.delete}]}],Wt=16,Gt=10,W=(e,t)=>t>=1?`rgba(${e.r},${e.g},${e.b},1)`:t<=0?`rgba(${e.r},${e.g},${e.b},0)`:`rgba(${e.r},${e.g},${e.b},${t})`,Kt=async({theme:e,currentTheme:t})=>e?.type===`custom`?structuredClone(e):e?.id&&r.n.includes(e.id)&&t?.id!==e.id?{...await r.t(e.id),id:e.id}:e?.id&&t?.id!==e.id||!e&&t?t:await r.t(`default`),qt=e=>[(e?.margins?.[0]??Wt)/2,(e?.margins?.[1]??Wt)/2],Jt=e=>Gt-(e?.margins?.[0]??Gt),Yt=e=>{let t=e?.boxShadow;if(!t)return``;let r=new n.t(t.color),i={r:Math.round(r.srgb.r*255),g:Math.round(r.srgb.g*255),b:Math.round(r.srgb.b*255)},a=e?.margins?.[0]??Wt,o=Math.min(a/10,2);return t.size===`none`?`none`:t.size===`S`?`0 ${o*2}px ${o*4}px ${W(i,.16)}, 0 ${o*2}px ${o*4}px ${W(i,.23)}`:t.size===`M`?`0 ${o*8}px ${o*16}px ${W(i,.19)}, 0 ${o*4}px ${o*4}px ${W(i,.23)}`:t.size===`L`?`0 ${o*12}px ${o*24}px ${W(i,.25)}, 0 ${o*8}px ${o*8}px ${W(i,.22)}`:``},Xt=e=>{let t=Yt(e);return new Map([[`--grid-font-family`,e?.font?.fontFamily],[`--grid-background`,e?.background],[`--grid-item-box-shadow`,t],[`--grid-item-background`,e?.itemsBackground],[`--grid-item-border-color`,e?.borders?.[`border-color`]],[`--grid-item-border-style`,e?.borders?.[`border-style`]],[`--grid-item-border-radius`,e?.borders?.[`border-radius`]],[`--grid-item-border-width`,`${e?.borders?.[`border-top-width`]}`],[`--grid-item-border-top-width`,e?.borders?.[`border-top-width`]],[`--grid-item-border-right-width`,e?.borders?.[`border-right-width`]],[`--grid-item-border-bottom-width`,e?.borders?.[`border-bottom-width`]],[`--grid-item-border-left-width`,e?.borders?.[`border-left-width`]]])},Zt=e=>{let t=e?.itemsBackground??e?.background;return t?new n.t(t).luminance<.5:!1},Qt=(e,t)=>{t&&Xt(t).forEach((t,n)=>{t?e.setProperty(n,t):e.removeProperty(n)})},$t=({item:e,defaultItemActionsMenu:t,activeActions:n})=>{let r=Ht(e?.actionsMenu)??Ht(t)??Ut();if(!a.itemTypes.find(t=>t.type===e?.type)?.containsData&&!e?.actionsMenu&&!t&&(r=r.map(e=>({...e,actions:e.actions?.filter(e=>e.action!==`edit-data`)}))),n&&n.length>0){let e=new Set(n);r=r.map(t=>({...t,actions:t.actions?.map(t=>({...t,active:t.action&&e.has(t.action)?!0:t.active}))}))}return r},en=({item:e,activeActions:t,defaultItemActionsMenu:n,placementItemActionsMenu:r,language:i,handleAction:a,itemActionsDocumentPopover:o=!0})=>{let c=$t({item:e,defaultItemActionsMenu:n,activeActions:t});return s.html`
21
21
  <div class="grid-item-actions-popover" popover=${o?`manual`:s.nothing}>
22
22
  <luzmo-item-grid-item-actions-menu
23
23
  .actions=${c}
@@ -77,7 +77,7 @@ const e=require("./decorate-DCJt-2rt.cjs"),t=require("./localized-mixin-DrK3QZNa
77
77
  >
78
78
  ${_}
79
79
  </div>
80
- `},G=class e{static getElements(e,t=document){if(typeof e==`string`){let n=`getElementById`in t?t:void 0;if(n&&!isNaN(+e[0])){let t=n.getElementById(e);return t?[t]:[]}let r=t.querySelectorAll(e);if(!r.length&&e[0]!==`.`&&e[0]!==`#`&&(r=t.querySelectorAll(`.`+e),r.length||(r=t.querySelectorAll(`#`+e)),!r.length)){let n=t.querySelector(`[gs-id="${e}"]`);return n?[n]:[]}return Array.from(r)}return[e]}static getElement(e,t=document){if(typeof e==`string`){let n=`getElementById`in t?t:void 0;if(!e.length)return null;if(n&&e[0]===`#`)return n.getElementById(e.substring(1));if(e[0]===`#`||e[0]===`.`||e[0]===`[`)return t.querySelector(e);if(n&&!isNaN(+e[0]))return n.getElementById(e);let r=t.querySelector(e);return n&&!r&&(r=n.getElementById(e)),r||=t.querySelector(`.`+e),r}return e}static lazyLoad(e){return e.lazyLoad||e.grid?.opts?.lazyLoad&&e.lazyLoad!==!1}static createDiv(e,t){let n=document.createElement(`div`);return e.forEach(e=>{e&&n.classList.add(e)}),t?.appendChild(n),n}static shouldSizeToContent(e,t=!1){return e?.grid&&(t?e.sizeToContent===!0||e.grid.opts.sizeToContent===!0&&e.sizeToContent===void 0:!!e.sizeToContent||e.grid.opts.sizeToContent&&e.sizeToContent!==!1)}static isIntercepted(e,t){return!(e.y>=t.y+t.h||e.y+e.h<=t.y||e.x+e.w<=t.x||e.x>=t.x+t.w)}static isTouching(t,n){return e.isIntercepted(t,{x:n.x-.5,y:n.y-.5,w:n.w+1,h:n.h+1})}static areaIntercept(e,t){let n=e.x>t.x?e.x:t.x,r=e.x+e.w<t.x+t.w?e.x+e.w:t.x+t.w;if(r<=n)return 0;let i=e.y>t.y?e.y:t.y,a=e.y+e.h<t.y+t.h?e.y+e.h:t.y+t.h;return a<=i?0:(r-n)*(a-i)}static area(e){return e.w*e.h}static sort(e,t=1){let n=1e4;return e.sort((e,r)=>{let i=t*((e.y??n)-(r.y??n));return i===0?t*((e.x??n)-(r.x??n)):i})}static find(e,t){return t?e.find(e=>e.id===t):void 0}static toBool(e){return typeof e==`boolean`?e:typeof e==`string`?(e=e.toLowerCase(),!(e===``||e===`no`||e===`false`||e===`0`)):!!e}static toNumber(e){return e===null||e.length===0?void 0:Number(e)}static parseHeight(e){let t,n=`px`;if(typeof e==`string`)if(e===`auto`||e===``)t=0;else{let r=e.match(/^(-[0-9]+\.[0-9]+|[0-9]*\.[0-9]+|-[0-9]+|[0-9]+)(px|em|rem|vh|vw|%|cm|mm)?$/);if(!r)throw Error(`Invalid height val = ${e}`);n=r[2]||`px`,t=parseFloat(r[1])}else t=e;return{h:t,unit:n}}static defaults(t,...n){return n.forEach(n=>{for(let r in n){if(!n.hasOwnProperty(r))return;t[r]===null||t[r]===void 0?t[r]=n[r]:typeof n[r]==`object`&&typeof t[r]==`object`&&e.defaults(t[r],n[r])}}),t}static same(e,t){if(typeof e!=`object`)return e==t;if(typeof e!=typeof t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}static copyPos(e,t,n=!1){return t.x!==void 0&&(e.x=t.x),t.y!==void 0&&(e.y=t.y),t.w!==void 0&&(e.w=t.w),t.h!==void 0&&(e.h=t.h),n&&(t.minW&&(e.minW=t.minW),t.minH&&(e.minH=t.minH),t.maxW&&(e.maxW=t.maxW),t.maxH&&(e.maxH=t.maxH)),e}static samePos(e,t){return e&&t&&e.x===t.x&&e.y===t.y&&(e.w||1)===(t.w||1)&&(e.h||1)===(t.h||1)}static sanitizeMinMax(e){e.minW||delete e.minW,e.minH||delete e.minH,e.maxW||delete e.maxW,e.maxH||delete e.maxH}static removeInternalAndSame(t,n){if(!(typeof t!=`object`||typeof n!=`object`)&&!(Array.isArray(t)||Array.isArray(n)))for(let r in t){let i=t[r],a=n[r];r[0]===`_`||i===a?delete t[r]:i&&typeof i==`object`&&a!==void 0&&(e.removeInternalAndSame(i,a),Object.keys(i).length||delete t[r])}}static removeInternalForSave(e,t=!0){for(let t in e)(t[0]===`_`||e[t]===null||e[t]===void 0)&&delete e[t];delete e.grid,t&&delete e.el,e.autoPosition||delete e.autoPosition,e.noResize||delete e.noResize,e.noMove||delete e.noMove,e.locked||delete e.locked,(e.w===1||e.w===e.minW)&&delete e.w,(e.h===1||e.h===e.minH)&&delete e.h}static throttle(e,t){let n=!1;return(...r)=>{n||(n=!0,setTimeout(()=>{e(...r),n=!1},t))}}static removePositioningStyles(e){let t=e.style;t.position&&t.removeProperty(`position`),t.left&&t.removeProperty(`left`),t.top&&t.removeProperty(`top`),t.width&&t.removeProperty(`width`),t.height&&t.removeProperty(`height`)}static getScrollElement(t){if(!t)return document.scrollingElement||document.documentElement;let n=getComputedStyle(t).overflowY;return(n===`auto`||n===`scroll`)&&t.scrollHeight>t.clientHeight?t:e.getScrollElement(t.parentElement)}static updateScrollResize(t,n,r){let i=e.getScrollElement(n),a=i.clientHeight,o=i===e.getScrollElement()?0:i.getBoundingClientRect().top,s=t.clientY-o,c=s<r,l=s>a-r;c?i.scrollBy({behavior:`smooth`,top:s-r}):l&&i.scrollBy({behavior:`smooth`,top:r-(a-s)})}static clone(e){return typeof e!=`object`||!e?e:e instanceof Array?[...e]:{...e}}static cloneDeep(t){let n=[`parentGrid`,`el`,`grid`,`subGrid`,`engine`],r=e.clone(t);for(let i in r)r.hasOwnProperty(i)&&typeof r[i]==`object`&&i.substring(0,2)!==`__`&&!n.find(e=>e===i)&&(r[i]=e.cloneDeep(t[i]));return r}static cloneNode(e){let t=e.cloneNode(!0);return t.removeAttribute(`id`),t}static appendTo(t,n){let r;r=typeof n==`string`?e.getElement(n):n,r&&r.appendChild(t)}static addElStyles(e,t){if(t instanceof Object)for(let n in t)t.hasOwnProperty(n)&&(Array.isArray(t[n])?t[n].forEach(t=>{e.style[n]=t}):e.style[n]=t[n])}static initEvent(e,t){let n={type:t.type},r={button:0,which:0,buttons:1,bubbles:!0,cancelable:!0,target:t.target?t.target:e.target};return[`altKey`,`ctrlKey`,`metaKey`,`shiftKey`].forEach(t=>n[t]=e[t]),[`pageX`,`pageY`,`clientX`,`clientY`,`screenX`,`screenY`].forEach(t=>n[t]=e[t]),{...n,...r}}static simulateMouseEvent(e,t,n){let r=e,i=new MouseEvent(t,{bubbles:!0,composed:!0,cancelable:!0,view:window,detail:1,screenX:e.screenX,screenY:e.screenY,clientX:e.clientX,clientY:e.clientY,ctrlKey:r.ctrlKey??!1,altKey:r.altKey??!1,shiftKey:r.shiftKey??!1,metaKey:r.metaKey??!1,button:0,relatedTarget:e.target});(n||e.target).dispatchEvent(i)}static getValuesFromTransformedElement(t){let n=document.createElement(`div`);e.addElStyles(n,{opacity:`0`,position:`fixed`,top:`0px`,left:`0px`,width:`1px`,height:`1px`,zIndex:`-999999`}),t.appendChild(n);let r=n.getBoundingClientRect();return t.removeChild(n),n.remove(),{xScale:1/r.width,yScale:1/r.height,xOffset:r.left,yOffset:r.top}}static swap(e,t,n){if(!e)return;let r=e[t];e[t]=e[n],e[n]=r}static canBeRotated(e){return!(!e||e.w===e.h||e.locked||e.noResize||e.grid?.opts.disableResize||e.minW&&e.minW===e.maxW||e.minH&&e.minH===e.maxH)}},an=class e{constructor(e={}){this.addedNodes=[],this.removedNodes=[],this.defaultColumn=12,this.column=e.column||this.defaultColumn,this.column>this.defaultColumn&&(this.defaultColumn=this.column),this.maxRow=e.maxRow,this._float=e.float,this.nodes=e.nodes||[],this.onChange=e.onChange}batchUpdate(e=!0,t=!0){return!!this.batchMode===e?this:(this.batchMode=e,e?(this._prevFloat=this._float,this._float=!0,this.cleanNodes(),this.saveInitial()):(this._float=this._prevFloat,delete this._prevFloat,t&&this._packNodes(),this._notify()),this)}_useEntireRowArea(e,t){return(!this.float||this.batchMode&&!this._prevFloat)&&!this._hasLocked&&(!e._moving||e._skipDown||t.y<=e.y)}_fixCollisions(e,t=e,n,r={}){if(this.sortNodes(-1),n||=this.collide(e,t),!n)return!1;if(e._moving&&!r.nested&&!this.float&&this.swap(e,n))return!0;let i=t;!this._loading&&this._useEntireRowArea(e,t)&&(i={x:0,w:this.column,y:t.y,h:t.h},n=this.collide(e,i,r.skip));let a=!1,o={nested:!0,pack:!1},s=0;for(;n||=this.collide(e,i,r.skip);){if(s++>this.nodes.length*2)throw Error(`Infinite collide check`);let i;if(n.locked||this._loading||e._moving&&!e._skipDown&&t.y>e.y&&!this.float&&(!this.collide(n,{...n,y:e.y},e)||!this.collide(n,{...n,y:t.y-n.h},e))){e._skipDown=e._skipDown||t.y>e.y;let s={...t,y:n.y+n.h,...o};i=this._loading&&G.samePos(e,s)?!0:this.moveNode(e,s),(n.locked||this._loading)&&i?G.copyPos(t,e):!n.locked&&i&&r.pack&&(this._packNodes(),t.y=n.y+n.h,G.copyPos(e,t)),a||=i}else i=this.moveNode(n,{...n,y:t.y+t.h,skip:e,...o});if(!i)return a;n=void 0}return a}collide(e,t=e,n){let r=e._id,i=n?._id;return this.nodes.find(e=>e._id!==r&&e._id!==i&&G.isIntercepted(e,t))}collideAll(e,t=e,n){let r=e._id,i=n?._id;return this.nodes.filter(e=>e._id!==r&&e._id!==i&&G.isIntercepted(e,t))}directionCollideCoverage(e,t,n){if(!t.rect||!e._rect)return;let r=e._rect,i={...t.rect};i.y>r.y?(i.h+=i.y-r.y,i.y=r.y):i.h+=r.y-i.y,i.x>r.x?(i.w+=i.x-r.x,i.x=r.x):i.w+=r.x-i.x;let a,o=.5;for(let e of n){if(e.locked||!e._rect)break;let t=e._rect,n=Number.MAX_VALUE,s=Number.MAX_VALUE;r.y<t.y?n=(i.y+i.h-t.y)/t.h:r.y+r.h>t.y+t.h&&(n=(t.y+t.h-i.y)/t.h),r.x<t.x?s=(i.x+i.w-t.x)/t.w:r.x+r.w>t.x+t.w&&(s=(t.x+t.w-i.x)/t.w);let c=Math.min(s,n);c>o&&(o=c,a=e)}return t.collide=a,a}cacheRects(e,t,n,r,i,a){return this.nodes.forEach(o=>o._rect={y:o.y*t+n,x:o.x*e+a,w:o.w*e-a-r,h:o.h*t-n-i}),this}swap(e,t){if(!t||t.locked||!e||e.locked)return!1;function n(){let n=t.x,r=t.y;return t.x=e.x,t.y=e.y,e.h==t.h?e.w==t.w?(e.x=n,e.y=r):(e.x=t.x+t.w,e.y=r):(e.x=n,e.y=t.y+t.h),e._dirty=t._dirty=!0,!0}let r;if(e.w===t.w&&e.h===t.h&&(e.x===t.x||e.y===t.y)&&(r=G.isTouching(e,t)))return n();if(r!==!1){if(e.w===t.w&&e.x===t.x&&(r||=G.isTouching(e,t))){if(t.y<e.y){let n=e;e=t,t=n}return n()}if(r!==!1){if(e.h===t.h&&e.y===t.y&&(r||=G.isTouching(e,t))){if(t.x<e.x){let n=e;e=t,t=n}return n()}return!1}}}isAreaEmpty(e,t,n,r){let i={x:e||0,y:t||0,w:n||1,h:r||1};return!this.collide(i)}compact(e=`compact`,t=!0){if(this.nodes.length===0)return this;t&&this.sortNodes();let n=this.batchMode;n||this.batchUpdate();let r=this._inColumnResize;r||(this._inColumnResize=!0);let i=this.nodes;return this.nodes=[],i.forEach((t,n,r)=>{let i;t.locked||(t.autoPosition=!0,e===`list`&&n&&(i=r[n-1])),this.addNode(t,!1,i)}),r||delete this._inColumnResize,n||this.batchUpdate(!1),this}set float(e){this._float!==e&&(this._float=e||!1,e||this._packNodes()._notify())}get float(){return this._float||!1}sortNodes(e=1){return this.nodes=G.sort(this.nodes,e),this}_packNodes(){return this.batchMode?this:(this.sortNodes(),this.float?this.nodes.forEach(e=>{if(e._updating||e._orig===void 0||e.y===e._orig.y)return;let t=e.y;for(;t>e._orig.y;)--t,this.collide(e,{x:e.x,y:t,w:e.w,h:e.h})||(e._dirty=!0,e.y=t)}):this.nodes.forEach((e,t)=>{if(!e.locked)for(;e.y>0;){let n=t===0?0:e.y-1;if(!(t===0||!this.collide(e,{x:e.x,y:n,w:e.w,h:e.h})))break;e._dirty=e.y!==n,e.y=n}}),this)}prepareNode(t,n){t._id=t._id??e._idSeq++;let r=t.id;if(r){let e=1;for(;this.nodes.find(e=>e.id===t.id&&e!==t);)t.id=r+`_`+ e++}(t.x===void 0||t.y===void 0||t.x===null||t.y===null)&&(t.autoPosition=!0);let i={x:0,y:0,w:1,h:1};return G.defaults(t,i),t.autoPosition||delete t.autoPosition,t.noResize||delete t.noResize,t.noMove||delete t.noMove,G.sanitizeMinMax(t),typeof t.x==`string`&&(t.x=Number(t.x)),typeof t.y==`string`&&(t.y=Number(t.y)),typeof t.w==`string`&&(t.w=Number(t.w)),typeof t.h==`string`&&(t.h=Number(t.h)),isNaN(t.x)&&(t.x=i.x,t.autoPosition=!0),isNaN(t.y)&&(t.y=i.y,t.autoPosition=!0),isNaN(t.w)&&(t.w=i.w),isNaN(t.h)&&(t.h=i.h),this.nodeBoundFix(t,n),t}nodeBoundFix(e,t){let n=e._orig||G.copyPos({},e);if(e.maxW&&(e.w=Math.min(e.w||1,e.maxW)),e.maxH&&(e.h=Math.min(e.h||1,e.maxH)),e.minW&&(e.w=Math.max(e.w||1,e.minW)),e.minH&&(e.h=Math.max(e.h||1,e.minH)),(e.x||0)+(e.w||1)>this.column&&this.column<this.defaultColumn&&!this._inColumnResize&&!this.skipCacheUpdate&&e._id!=null&&this.findCacheLayout(e,this.defaultColumn)===-1){let t={...e};t.autoPosition||t.x===void 0?(delete t.x,delete t.y):t.x=Math.min(this.defaultColumn-1,t.x),t.w=Math.min(this.defaultColumn,t.w||1),this.cacheOneLayout(t,this.defaultColumn)}return e.w>this.column?e.w=this.column:e.w<1&&(e.w=1),this.maxRow&&e.h>this.maxRow?e.h=this.maxRow:e.h<1&&(e.h=1),e.x<0&&(e.x=0),e.y<0&&(e.y=0),e.x+e.w>this.column&&(t?e.w=this.column-e.x:e.x=this.column-e.w),this.maxRow&&e.y+e.h>this.maxRow&&(t?e.h=this.maxRow-e.y:e.y=this.maxRow-e.h),G.samePos(e,n)||(e._dirty=!0),this}getDirtyNodes(e){return e?this.nodes.filter(e=>e._dirty&&!G.samePos(e,e._orig)):this.nodes.filter(e=>e._dirty)}_notify(e){if(this.batchMode||!this.onChange)return this;let t=(e||[]).concat(this.getDirtyNodes());return this.onChange(t),this}cleanNodes(){return this.batchMode||this.nodes.forEach(e=>{delete e._dirty,delete e._lastTried}),this}saveInitial(){return this.nodes.forEach(e=>{e._orig=G.copyPos({},e),delete e._dirty}),this._hasLocked=this.nodes.some(e=>e.locked),this}restoreInitial(){return this.nodes.forEach(e=>{!e._orig||G.samePos(e,e._orig)||(G.copyPos(e,e._orig),e._dirty=!0)}),this._notify(),this}findEmptyPosition(e,t=this.nodes,n=this.column,r){let i=r?r.y*n+(r.x+r.w):0,a=!1;for(let r=i;!a;++r){let i=r%n,o=Math.floor(r/n);if(i+e.w>n)continue;let s={x:i,y:o,w:e.w,h:e.h};t.find(e=>G.isIntercepted(s,e))||((e.x!==i||e.y!==o)&&(e._dirty=!0),e.x=i,e.y=o,delete e.autoPosition,a=!0)}return a}addNode(e,t=!1,n){let r=this.nodes.find(t=>t._id===e._id);if(r)return r;this._inColumnResize?this.nodeBoundFix(e):this.prepareNode(e),delete e._temporaryRemoved,delete e._removeDOM;let i;return e.autoPosition&&this.findEmptyPosition(e,this.nodes,this.column,n)&&(delete e.autoPosition,i=!0),this.nodes.push(e),t&&this.addedNodes.push(e),i||this._fixCollisions(e),this.batchMode||this._packNodes()._notify(),e}removeNode(e,t=!0,n=!1){return this.nodes.find(t=>t._id===e._id)?(n&&this.removedNodes.push(e),t&&(e._removeDOM=!0),this.nodes=this.nodes.filter(t=>t._id!==e._id),e._isAboutToRemove||this._packNodes(),this._notify([e]),this):this}removeAll(e=!0,t=!0){if(delete this._layouts,!this.nodes.length)return this;e&&this.nodes.forEach(e=>e._removeDOM=!0);let n=this.nodes;return this.removedNodes=t?n:[],this.nodes=[],this._notify(n)}moveNodeCheck(t,n){if(!this.changedPosConstrain(t,n))return!1;if(n.pack=!0,!this.maxRow)return this.moveNode(t,n);let r,i=new e({column:this.column,float:this.float,nodes:this.nodes.map(e=>e._id===t._id?(r={...e},r):{...e})});if(!r)return!1;let a=i.moveNode(r,n)&&i.getRow()<=Math.max(this.getRow(),this.maxRow);if(!a&&!n.resizing&&n.collide){let e=n.collide.el.gridstackNode;if(this.swap(t,e))return this._notify(),!0}return a?(i.nodes.filter(e=>e._dirty).forEach(e=>{let t=this.nodes.find(t=>t._id===e._id);t&&(G.copyPos(t,e),t._dirty=!0)}),this._notify(),!0):!1}willItFit(t){if(delete t._willFitPos,!this.maxRow)return!0;let n=new e({column:this.column,float:this.float,nodes:this.nodes.map(e=>({...e}))}),r={...t};return this.cleanupNode(r),delete r.el,delete r._id,delete r.content,delete r.grid,n.addNode(r),n.getRow()<=this.maxRow?(t._willFitPos=G.copyPos({},r),!0):!1}changedPosConstrain(e,t){return t.w=t.w||e.w,t.h=t.h||e.h,e.x!==t.x||e.y!==t.y?!0:(e.maxW&&(t.w=Math.min(t.w,e.maxW)),e.maxH&&(t.h=Math.min(t.h,e.maxH)),e.minW&&(t.w=Math.max(t.w,e.minW)),e.minH&&(t.h=Math.max(t.h,e.minH)),e.w!==t.w||e.h!==t.h)}moveNode(e,t){if(!e||!t)return!1;let n;t.pack===void 0&&!this.batchMode&&(n=t.pack=!0),typeof t.x!=`number`&&(t.x=e.x),typeof t.y!=`number`&&(t.y=e.y),typeof t.w!=`number`&&(t.w=e.w),typeof t.h!=`number`&&(t.h=e.h);let r=e.w!==t.w||e.h!==t.h,i=G.copyPos({},e,!0);if(G.copyPos(i,t),this.nodeBoundFix(i,r),G.copyPos(t,i),!t.forceCollide&&G.samePos(e,t))return!1;let a=G.copyPos({},e),o=this.collideAll(e,i,t.skip),s=!0;if(o.length){let r=e._moving&&!t.nested,a=r?this.directionCollideCoverage(e,t,o):o[0];if(r&&a&&e.grid?.opts?.subGridDynamic&&!e.grid._isTemp){let n=G.areaIntercept(t.rect,a._rect),r=G.area(t.rect),i=G.area(a._rect);n/(r<i?r:i)>.8&&(a.grid.makeSubGrid(a.el,void 0,e),a=void 0)}a?s=!this._fixCollisions(e,i,a,t):(s=!1,n&&delete t.pack)}return s&&!G.samePos(e,i)&&(e._dirty=!0,G.copyPos(e,i)),t.pack&&this._packNodes()._notify(),!G.samePos(e,a)}getRow(){return this.nodes.reduce((e,t)=>Math.max(e,t.y+t.h),0)}beginUpdate(e){return e._updating||(e._updating=!0,delete e._skipDown,this.batchMode||this.saveInitial()),this}endUpdate(){let e=this.nodes.find(e=>e._updating);return e&&(delete e._updating,delete e._skipDown),this}save(e=!0,t,n){let r=this._layouts?.length||0,i;r&&(n?n!==this.column&&(i=this._layouts[n]):this.column!==r-1&&(i=this._layouts[r-1]));let a=[];return this.sortNodes(),this.nodes.forEach(n=>{let r=i?.find(e=>e._id===n._id),o={...n,...r||{}};G.removeInternalForSave(o,!e),t&&t(n,o),a.push(o)}),a}layoutsNodesChange(e){return!this._layouts||this._inColumnResize||this._layouts.forEach((t,n)=>{if(!t||n===this.column)return this;if(n<this.column)this._layouts[n]=void 0;else{let r=n/this.column;e.forEach(e=>{if(!e._orig)return;let n=t.find(t=>t._id===e._id);n&&(n.y>=0&&e.y!==e._orig.y&&(n.y+=e.y-e._orig.y,n.y<0&&(n.y=0)),e.x!==e._orig.x&&(n.x=Math.round(e.x*r),n.x<0&&(n.x=0)),e.w!==e._orig.w&&(n.w=Math.round(e.w*r),n.w<1&&(n.w=1)))})}}),this}columnChanged(e,t,n=`moveScale`){if(!this.nodes.length||!t||e===t)return this;let r=n===`compact`||n===`list`;r&&this.sortNodes(1),t<e&&this.cacheLayout(this.nodes,e),this.batchUpdate();let i=[],a=r?this.nodes:G.sort(this.nodes,-1);if(t>e&&this._layouts){let n=this._layouts[t]||[],o=this._layouts.length-1;!n.length&&e!==o&&this._layouts[o]?.length&&(e=o,this._layouts[o].forEach(e=>{let t=a.find(t=>t._id===e._id);t&&(!r&&!e.autoPosition&&(t.x=e.x??t.x,t.y=e.y??t.y),t.w=e.w??t.w,(e.x==null||e.y===void 0)&&(t.autoPosition=!0))})),n.forEach(e=>{let t=a.findIndex(t=>t._id===e._id);if(t!==-1){let n=a[t];if(r){n.w=e.w;return}(e.autoPosition||isNaN(e.x)||isNaN(e.y))&&this.findEmptyPosition(e,i),e.autoPosition||(n.x=e.x??n.x,n.y=e.y??n.y,n.w=e.w??n.w,i.push(n)),a.splice(t,1)}})}if(r)this.compact(n,!1);else{if(a.length)if(typeof n==`function`)n(t,e,i,a);else{let o=r||n===`none`?1:t/e,s=n===`move`||n===`moveScale`,c=n===`scale`||n===`moveScale`;a.forEach(n=>{n.x=t===1?0:s?Math.round(n.x*o):Math.min(n.x,t-1),n.w=t===1||e===1?1:c?Math.round(n.w*o)||1:Math.min(n.w,t),i.push(n)}),a=[]}i=G.sort(i,-1),this._inColumnResize=!0,this.nodes=[],i.forEach(e=>{this.addNode(e,!1),delete e._orig})}return this.nodes.forEach(e=>delete e._orig),this.batchUpdate(!1,!r),delete this._inColumnResize,this}cacheLayout(t,n,r=!1){let i=[];return t.forEach((t,n)=>{t._id===void 0&&(t._id=(t.id?this.nodes.find(e=>e.id===t.id):void 0)?._id??e._idSeq++),i[n]={x:t.x,y:t.y,w:t.w,_id:t._id}}),this._layouts=r?[]:this._layouts||[],this._layouts[n]=i,this}cacheOneLayout(t,n){t._id=t._id??e._idSeq++;let r={x:t.x,y:t.y,w:t.w,_id:t._id};(t.autoPosition||t.x===void 0)&&(delete r.x,delete r.y,t.autoPosition&&(r.autoPosition=!0)),this._layouts=this._layouts||[],this._layouts[n]=this._layouts[n]||[];let i=this.findCacheLayout(t,n);return i===-1?this._layouts[n].push(r):this._layouts[n][i]=r,this}findCacheLayout(e,t){return this._layouts?.[t]?.findIndex(t=>t._id===e._id)??-1}removeNodeFromLayoutCache(e){if(this._layouts)for(let t=0;t<this._layouts.length;t++){let n=this.findCacheLayout(e,t);n!==-1&&this._layouts[t].splice(n,1)}}cleanupNode(e){for(let t in e)t[0]===`_`&&t!==`_id`&&delete e[t];return this}};an._idSeq=0;var K={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`},q=class{},J=typeof window<`u`&&typeof document<`u`&&(`ontouchstart`in document||`ontouchstart`in window||window.DocumentTouch&&document instanceof window.DocumentTouch||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0),Y=class{};function on(e,t){e.touches.length>1||(e.cancelable&&e.preventDefault(),G.simulateMouseEvent(e.changedTouches[0],t))}function sn(e,t){e.cancelable&&e.preventDefault(),G.simulateMouseEvent(e,t)}function cn(e){Y.touchHandled||(Y.touchHandled=!0,on(e,`mousedown`))}function ln(e){Y.touchHandled&&on(e,`mousemove`)}function un(e){if(!Y.touchHandled)return;Y.pointerLeaveTimeout&&(window.clearTimeout(Y.pointerLeaveTimeout),delete Y.pointerLeaveTimeout);let t=!!q.dragElement;on(e,`mouseup`),t||on(e,`click`),Y.touchHandled=!1}function dn(e){e.pointerType!==`mouse`&&e.target.releasePointerCapture(e.pointerId)}function fn(e){q.dragElement&&e.pointerType!==`mouse`&&sn(e,`mouseenter`)}function pn(e){q.dragElement&&e.pointerType!==`mouse`&&(Y.pointerLeaveTimeout=window.setTimeout(()=>{delete Y.pointerLeaveTimeout,sn(e,`mouseleave`)},10))}var mn=class e{constructor(e,t,n){this.host=e,this.dir=t,this.option=n,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(e){this.option.element=void 0,console.error(`Query for resizeable handle failed, falling back`,e)}return this.el||(this.el=document.createElement(`div`),this.host.appendChild(this.el)),this.el.classList.add(`ui-resizable-handle`),this.el.classList.add(`${e.prefix}${this.dir}`),this.el.style.zIndex=`100`,this.el.style.userSelect=`none`,this.el.addEventListener(`mousedown`,this._mouseDown),J&&(this.el.addEventListener(`touchstart`,cn),this.el.addEventListener(`pointerdown`,dn)),this}destroy(){return this.moving&&this._mouseUp(this.mouseDownEvent),this.el.removeEventListener(`mousedown`,this._mouseDown),J&&(this.el.removeEventListener(`touchstart`,cn),this.el.removeEventListener(`pointerdown`,dn)),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),J&&(this.el.addEventListener(`touchmove`,ln),this.el.addEventListener(`touchend`,un)),e.stopPropagation(),e.preventDefault()}_mouseMove(e){let t=this.mouseDownEvent;this.moving?this._triggerEvent(`move`,e):Math.abs(e.x-t.x)+Math.abs(e.y-t.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),J&&(this.el.removeEventListener(`touchmove`,ln),this.el.removeEventListener(`touchend`,un)),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(e,t){return this.option[e]&&this.option[e](t),this}};mn.prefix=`ui-resizable-`;var hn=class{constructor(){this._eventRegister={}}get disabled(){return this._disabled}on(e,t){this._eventRegister[e]=t}off(e){delete this._eventRegister[e]}enable(){this._disabled=!1}disable(){this._disabled=!0}destroy(){delete this._eventRegister}triggerEvent(e,t){if(!this.disabled&&this._eventRegister&&this._eventRegister[e])return this._eventRegister[e](t)}},gn=class e extends hn{constructor(e,t={}){super(),this.el=e,this.option=t,this.rectScale={x:1,y:1},this._ui=()=>{let e=this.el.parentElement.getBoundingClientRect(),t={width:this.originalRect.width,height:this.originalRect.height+this.scrolled,left:this.originalRect.left,right:this.originalRect.right,top:this.originalRect.top-this.scrolled},n=this.temporalRect||t;return{position:{left:this.option.rtl?(e.right-n.right)*this.rectScale.x:(n.left-e.left)*this.rectScale.x,top:(n.top-e.top)*this.rectScale.y},size:{width:n.width*this.rectScale.x,height:n.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(e,t){super.on(e,t)}off(e){super.off(e)}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(e){let t=e.handles&&e.handles!==this.option.handles,n=e.autoHide&&e.autoHide!==this.option.autoHide;return Object.keys(e).forEach(t=>this.option[t]=e[t]),t&&(this._removeHandlers(),this._setupHandlers()),n&&this._setupAutoHide(this.option.autoHide),this}_setupAutoHide(e){return e?(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),q.overResizeElement===this&&delete q.overResizeElement),this}_mouseOver(e){q.overResizeElement||q.dragElement||(q.overResizeElement=this,this.el.classList.remove(`ui-resizable-autohide`))}_mouseOut(e){q.overResizeElement===this&&(delete q.overResizeElement,this.el.classList.add(`ui-resizable-autohide`))}_setupHandlers(){return this.handlers=this.option.handles.split(`,`).map(e=>e.trim()).map(e=>new mn(this.el,e,{element:this.option.element,start:e=>this._resizeStart(e),stop:e=>this._resizeStop(e),move:t=>this._resizing(t,e)})),this}_resizeStart(e){this.sizeToContent=G.shouldSizeToContent(this.el.gridstackNode,!0),this.originalRect=this.el.getBoundingClientRect(),this.scrollEl=G.getScrollElement(this.el),this.scrollY=this.scrollEl.scrollTop,this.scrolled=0,this.startEvent=e,this._setupHelper(),this._applyChange();let t=G.initEvent(e,{type:`resizestart`,target:this.el});return this.option.start&&this.option.start(t,this._ui()),this.el.classList.add(`ui-resizable-resizing`),this.triggerEvent(`resizestart`,t),this}_resizing(e,t){this.scrolled=this.scrollEl.scrollTop-this.scrollY,this.temporalRect=this._getChange(e,t),this._applyChange();let n=G.initEvent(e,{type:`resize`,target:this.el});return n.resizeDir=t,n.hasMovedX=this.option.rtl?t.includes(`e`):t.includes(`w`),n.hasMovedY=t.includes(`n`),this.option.resize&&this.option.resize(n,this._ui()),this.triggerEvent(`resize`,n),this}_resizeStop(e){let t=G.initEvent(e,{type:`resizestop`,target:this.el});return this._cleanHelper(),this.option.stop&&this.option.stop(t),this.el.classList.remove(`ui-resizable-resizing`),this.triggerEvent(`resizestop`,t),delete this.startEvent,delete this.originalRect,delete this.temporalRect,delete this.scrollY,delete this.scrolled,this}_setupHelper(){this.elOriginStyleVal=e._originStyleProp.map(e=>this.el.style[e]),this.parentOriginStylePosition=this.el.parentElement.style.position;let t=this.el.parentElement,n=G.getValuesFromTransformedElement(t);return this.rectScale={x:n.xScale,y:n.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 e._originStyleProp.forEach((e,t)=>{this.el.style[e]=this.elOriginStyleVal[t]||null}),this.el.parentElement.style.position=this.parentOriginStylePosition||null,this}_getChange(e,t){let n=this.startEvent,r={width:this.originalRect.width,height:this.originalRect.height+this.scrolled,left:this.originalRect.left,right:this.originalRect.right,top:this.originalRect.top-this.scrolled},i=e.clientX-n.clientX,a=this.sizeToContent?0:e.clientY-n.clientY,o,s,c=this.option.rtl;!c&&t.indexOf(`e`)>-1?r.width+=i:c&&t.indexOf(`w`)>-1?r.width-=i:!c&&t.indexOf(`w`)>-1?(r.width-=i,r.left+=i,o=!0):c&&t.indexOf(`e`)>-1&&(r.width+=i,r.right+=i,o=!0),t.indexOf(`s`)>-1?r.height+=a:t.indexOf(`n`)>-1&&(r.height-=a,r.top+=a,s=!0);let l=this._constrainSize(r.width,r.height,o,s);return Math.round(r.width)!==Math.round(l.width)&&(!c&&t.indexOf(`w`)>-1?r.left+=r.width-l.width:c&&t.indexOf(`e`)>-1&&(r.right-=r.width-l.width),r.width=l.width),Math.round(r.height)!==Math.round(l.height)&&(t.indexOf(`n`)>-1&&(r.top+=r.height-l.height),r.height=l.height),r}_constrainSize(e,t,n,r){let i=this.option,a=(n?i.maxWidthMoveLeft:i.maxWidth)||2**53-1,o=i.minWidth/this.rectScale.x||e,s=(r?i.maxHeightMoveUp:i.maxHeight)||2**53-1,c=i.minHeight/this.rectScale.y||t;return{width:Math.min(a,Math.max(o,e)),height:Math.min(s,Math.max(c,t))}}_applyChange(){let e={left:0,right:0,top:0,width:0,height:0};if(this.el.style.position===`absolute`){let{left:t,right:n,top:r}=this.el.parentElement.getBoundingClientRect();e={left:t,right:n,top:r,width:0,height:0}}return this.temporalRect&&Object.entries(this.temporalRect).forEach(([t,n])=>{if(this.option.rtl?t===`left`:t===`right`)return;let r=t===`width`||t===`left`||t===`right`?this.rectScale.x:t===`height`||t===`top`?this.rectScale.y:1,i;i=t===`right`?(e.right-n)*this.rectScale.x+`px`:(n-e[t])*r+`px`,this.el.style[t]=i}),this}_removeHandlers(){return this.handlers.forEach(e=>e.destroy()),delete this.handlers,this}};gn._originStyleProp=[`width`,`height`,`position`,`left`,`right`,`top`,`opacity`,`zIndex`];var _n=`input,textarea,button,select,option,[contenteditable="true"],.ui-resizable-handle`,vn=class e extends hn{constructor(e,t={}){super(),this.el=e,this.option=t,this.dragTransform={xScale:1,yScale:1,xOffset:0,yOffset:0},this._autoScrollTick=()=>{let e=this.helper,t=this._autoScrollContainer;if(!e||!t){this._stopScrolling();return}let n=this._getClipping(e,t);if(n===0){this._stopScrolling();return}if(!this._autoScrollMaxSpeed){let e=window.innerHeight||document.documentElement.clientHeight;this._autoScrollMaxSpeed=Math.max(e/150,4)}let r=Math.min(Math.abs(n)*.5,this._autoScrollMaxSpeed),i=n>0?r:-r,a=t.scrollTop;if(t.scrollTop+=i,t.scrollTop===a){this._stopScrolling();return}this.dragging&&this.lastDrag&&(this._dragFollow(this.lastDrag),this._callDrag(this.lastDrag)),this._autoScrollAnimId=requestAnimationFrame(this._autoScrollTick)};let n=t?.handle?.substring(1),r=e.gridstackNode;this.dragEls=!n||e.classList.contains(n)?[e]:r?.subGrid?[e.querySelector(t.handle)||e]:this.getAllHandles(),this.dragEls.length===0&&(this.dragEls=[e]),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()}getAllHandles(){return Array.from(this.el.querySelectorAll(this.option.handle)).filter(e=>{if(!(e instanceof HTMLElement))return!1;let t=e.closest(`.grid-stack-item`);return t===this.el||!t})}on(e,t){super.on(e,t)}off(e){super.off(e)}enable(){this.disabled!==!1&&(super.enable(),this.dragEls.forEach(e=>{e.addEventListener(`mousedown`,this._mouseDown),J&&(e.addEventListener(`touchstart`,cn),e.addEventListener(`pointerdown`,dn))}),this.el.classList.remove(`ui-draggable-disabled`))}disable(e=!1){this.disabled!==!0&&(super.disable(),this.dragEls.forEach(e=>{e.removeEventListener(`mousedown`,this._mouseDown),J&&(e.removeEventListener(`touchstart`,cn),e.removeEventListener(`pointerdown`,dn))}),e||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(e){return Object.keys(e).forEach(t=>this.option[t]=e[t]),this}_mouseDown(e){if(Y.touchHandled&&e.isTrusted&&(Y.touchHandled=!1),!q.mouseHandled)return e.button!==0||!this.dragEls.find(t=>t===e.target)&&e.target.closest(_n)||this.option.cancel&&e.target.closest(this.option.cancel)?!0:(this.mouseDownEvent=e,delete this.dragging,delete q.dragElement,delete q.dropElement,delete this._autoScrollMaxSpeed,delete this._autoScrollContainer,document.addEventListener(`mousemove`,this._mouseMove,{capture:!0,passive:!0}),document.addEventListener(`mouseup`,this._mouseUp,!0),J&&(e.currentTarget.addEventListener(`touchmove`,ln),e.currentTarget.addEventListener(`touchend`,un)),e.preventDefault(),document.activeElement&&document.activeElement.blur(),q.mouseHandled=!0,!0)}_callDrag(e){if(!this.dragging)return;let t=G.initEvent(e,{target:this.el,type:`drag`});this.option.drag&&this.option.drag(t,this.ui()),this.triggerEvent(`drag`,t)}_mouseMove(e){let t=this.mouseDownEvent;if(this.lastDrag=e,this.dragging)if(this._dragFollow(e),q.pauseDrag){let t=Number.isInteger(q.pauseDrag)?q.pauseDrag:100;this.dragTimeout&&window.clearTimeout(this.dragTimeout),this.dragTimeout=window.setTimeout(()=>this._callDrag(e),t)}else this._callDrag(e);else if(Math.abs(e.x-t.x)+Math.abs(e.y-t.y)>3){this.dragging=!0,q.dragElement=this;let t=this.el.gridstackNode?.grid;t?q.dropElement=t.el.ddElement.ddDroppable:delete q.dropElement,this.helper=this._createHelper(),this._setupHelperContainmentStyle(),this.dragTransform=G.getValuesFromTransformedElement(this.helperContainment),this.dragOffset=this._getDragOffset(e,this.el,this.helperContainment),this._setupHelperStyle(e);let n=G.initEvent(e,{target:this.el,type:`dragstart`});this.option.start&&this.option.start(n,this.ui()),this.triggerEvent(`dragstart`,n),document.addEventListener(`keydown`,this._keyEvent)}return!0}_mouseUp(e){if(this._stopScrolling(),document.removeEventListener(`mousemove`,this._mouseMove,!0),document.removeEventListener(`mouseup`,this._mouseUp,!0),J&&e.currentTarget&&(e.currentTarget.removeEventListener(`touchmove`,ln,!0),e.currentTarget.removeEventListener(`touchend`,un,!0)),this.dragging){delete this.dragging,delete this.el.gridstackNode?._origRotate,document.removeEventListener(`keydown`,this._keyEvent),q.dropElement?.el===this.el.parentElement&&delete q.dropElement,this.helperContainment.style.position=this.parentOriginStylePosition||null,this.helper!==this.el&&this.helper.remove(),this._removeHelperStyle();let t=G.initEvent(e,{target:this.el,type:`dragstop`});this.option.stop&&this.option.stop(t),this.triggerEvent(`dragstop`,t),q.dropElement&&q.dropElement.drop(e)}delete this.helper,delete this.mouseDownEvent,delete q.dragElement,delete q.dropElement,delete q.mouseHandled,e.preventDefault()}_keyEvent(e){let t=this.el.gridstackNode,n=t?.grid||q.dropElement?.el?.gridstack;if(e.key===`Escape`)t&&t._origRotate&&(t._orig=t._origRotate,delete t._origRotate),n?.cancelDrag(),this._mouseUp(this.mouseDownEvent);else if(t&&n&&(e.key===`r`||e.key===`R`)){if(!G.canBeRotated(t))return;t._origRotate=t._origRotate||{...t._orig},delete t._moving,n.setAnimation(!1).rotate(t.el,{top:-this.dragOffset.offsetTop,left:-this.dragOffset.offsetX}).setAnimation(),t._moving=!0,this.dragOffset=this._getDragOffset(this.lastDrag,t.el,this.helperContainment),this.helper.style.width=this.dragOffset.width+`px`,this.helper.style.height=this.dragOffset.height+`px`,G.swap(t._orig,`w`,`h`),delete t._rect,this._mouseMove(this.lastDrag)}}_createHelper(){let t=this.el;return typeof this.option.helper==`function`?t=this.option.helper(this.el):this.option.helper===`clone`&&(t=G.cloneNode(this.el)),t.parentElement||G.appendTo(t,this.option.appendTo===`parent`?this.el.parentElement:this.option.appendTo),this.dragElementOriginStyle=e.originStyleProp.map(e=>this.el.style[e]),t}_setupHelperStyle(e){this.helper.classList.add(`ui-draggable-dragging`),this.el.gridstackNode?.grid?.el.classList.add(`grid-stack-dragging`);let t=this.helper.style;return t.pointerEvents=`none`,t.width=this.dragOffset.width+`px`,t.height=this.dragOffset.height+`px`,t.willChange=`left, right, top`,t.position=`fixed`,this._dragFollow(e),t.transition=`none`,setTimeout(()=>{this.helper&&(t.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 t=this.helper,n=this.dragElementOriginStyle.transition||null;t.style.transition=this.dragElementOriginStyle.transition=`none`,e.originStyleProp.forEach(e=>t.style[e]=this.dragElementOriginStyle[e]||null),setTimeout(()=>t.style.transition=n,50)}return delete this.dragElementOriginStyle,this}_dragFollow(e){let t=this.helper.style,n=this.dragOffset;this.option.rtl?(t.right=(window.innerWidth-e.clientX+n.offsetX)*this.dragTransform.xScale+`px`,t.left&&=``):(t.left=(e.clientX+n.offsetX)*this.dragTransform.xScale+`px`,t.right&&=``),t.top=(e.clientY+n.offsetTop)*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(e,t,n){let r=0,i=0;n&&(r=this.dragTransform.xOffset,i=this.dragTransform.yOffset);let a=t.getBoundingClientRect(),o=this.option.rtl?a.right:a.left,s=this.option.rtl?e.clientX-a.right+r:-e.clientX+a.left-r;return{x:o,top:a.top,offsetX:s,offsetTop:-e.clientY+a.top-i,width:a.width*this.dragTransform.xScale,height:a.height*this.dragTransform.yScale}}updateScrollPosition(e){this._autoScrollContainer=G.getScrollElement(e),this._getClipping(this.helper,this._autoScrollContainer)===0?this._stopScrolling():this._autoScrollAnimId||=requestAnimationFrame(this._autoScrollTick)}_getClipping(e,t){let n=e.getBoundingClientRect(),r=t.getBoundingClientRect(),i=window.innerHeight||document.documentElement.clientHeight;if(n.bottom<r.top||n.top>r.bottom)return 0;let a=n.bottom-Math.min(r.bottom,i),o=n.top-Math.max(r.top,0);return o<0?o:a>0?a:0}_stopScrolling(){this._autoScrollAnimId&&(cancelAnimationFrame(this._autoScrollAnimId),delete this._autoScrollAnimId)}ui(){let e=this.el.parentElement.getBoundingClientRect(),t=this.helper.getBoundingClientRect(),n=this.option.rtl?(e.right-t.right)*this.dragTransform.xScale:(t.left-e.left)*this.dragTransform.xScale;return{position:{top:(t.top-e.top)*this.dragTransform.yScale,left:n}}}};vn.originStyleProp=[`width`,`height`,`transform`,`transform-origin`,`transition`,`pointerEvents`,`position`,`left`,`right`,`top`,`minWidth`,`willChange`];var yn=class extends hn{constructor(e,t={}){super(),this.el=e,this.option=t,this._mouseEnter=this._mouseEnter.bind(this),this._mouseLeave=this._mouseLeave.bind(this),this.enable(),this._setupAccept()}on(e,t){super.on(e,t)}off(e){super.off(e)}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),J&&(this.el.addEventListener(`pointerenter`,fn),this.el.addEventListener(`pointerleave`,pn)))}disable(e=!1){this.disabled!==!0&&(super.disable(),this.el.classList.remove(`ui-droppable`),e||this.el.classList.add(`ui-droppable-disabled`),this.el.removeEventListener(`mouseenter`,this._mouseEnter),this.el.removeEventListener(`mouseleave`,this._mouseLeave),J&&(this.el.removeEventListener(`pointerenter`,fn),this.el.removeEventListener(`pointerleave`,pn)))}destroy(){this.disable(!0),this.el.classList.remove(`ui-droppable`),this.el.classList.remove(`ui-droppable-disabled`),super.destroy()}updateOption(e){return Object.keys(e).forEach(t=>this.option[t]=e[t]),this._setupAccept(),this}_mouseEnter(e){if(!q.dragElement||Y.touchHandled&&e.isTrusted||!this._canDrop(q.dragElement.el))return;e.preventDefault(),e.stopPropagation(),q.dragElement._stopScrolling(),q.dropElement&&q.dropElement!==this&&q.dropElement._mouseLeave(e,!0),q.dropElement=this;let t=G.initEvent(e,{target:this.el,type:`dropover`});this.option.over&&this.option.over(t,this._ui(q.dragElement)),this.triggerEvent(`dropover`,t),this.el.classList.add(`ui-droppable-over`)}_mouseLeave(e,t=!1){if(!q.dragElement||q.dropElement!==this)return;e.preventDefault(),e.stopPropagation(),t&&q.dragElement._stopScrolling();let n=G.initEvent(e,{target:this.el,type:`dropout`});if(this.option.out&&this.option.out(n,this._ui(q.dragElement)),this.triggerEvent(`dropout`,n),q.dropElement===this&&(delete q.dropElement,!t)){let t,n=this.el.parentElement;for(;!t&&n;)t=n.ddElement?.ddDroppable,n=n.parentElement;t&&t._mouseEnter(e)}}drop(e){e.preventDefault();let t=G.initEvent(e,{target:this.el,type:`drop`});this.option.drop&&this.option.drop(t,this._ui(q.dragElement)),this.triggerEvent(`drop`,t)}_canDrop(e){return e&&(!this.accept||this.accept(e))}_setupAccept(){return this.option.accept&&(typeof this.option.accept==`string`?this.accept=e=>e.classList.contains(this.option.accept)||e.matches(this.option.accept):this.accept=this.option.accept),this}_ui(e){return{draggable:e.el,...e.ui()}}},bn=class e{static init(t){return t.ddElement||=new e(t),t.ddElement}constructor(e){this.el=e}on(e,t){return this.ddDraggable&&[`drag`,`dragstart`,`dragstop`].indexOf(e)>-1?this.ddDraggable.on(e,t):this.ddDroppable&&[`drop`,`dropover`,`dropout`].indexOf(e)>-1?this.ddDroppable.on(e,t):this.ddResizable&&[`resizestart`,`resize`,`resizestop`].indexOf(e)>-1&&this.ddResizable.on(e,t),this}off(e){return this.ddDraggable&&[`drag`,`dragstart`,`dragstop`].indexOf(e)>-1?this.ddDraggable.off(e):this.ddDroppable&&[`drop`,`dropover`,`dropout`].indexOf(e)>-1?this.ddDroppable.off(e):this.ddResizable&&[`resizestart`,`resize`,`resizestop`].indexOf(e)>-1&&this.ddResizable.off(e),this}setupDraggable(e){return this.ddDraggable?this.ddDraggable.updateOption(e):this.ddDraggable=new vn(this.el,e),this}cleanDraggable(){return this.ddDraggable&&(this.ddDraggable.destroy(),delete this.ddDraggable),this}setupResizable(e){return this.ddResizable?this.ddResizable.updateOption(e):this.ddResizable=new gn(this.el,e),this}cleanResizable(){return this.ddResizable&&(this.ddResizable.destroy(),delete this.ddResizable),this}setupDroppable(e){return this.ddDroppable?this.ddDroppable.updateOption(e):this.ddDroppable=new yn(this.el,e),this}cleanDroppable(){return this.ddDroppable&&(this.ddDroppable.destroy(),delete this.ddDroppable),this}},X=new class{resizable(e,t,n,r){return this._getDDElements(e,t).forEach(e=>{if(t===`disable`||t===`enable`)e.ddResizable&&e.ddResizable[t]();else if(t===`destroy`)e.ddResizable&&e.cleanResizable();else if(t===`option`)e.setupResizable({[n]:r});else{let n=e.el.gridstackNode.grid,r=e.el.getAttribute(`gs-resize-handles`)||n.opts.resizable.handles||`e,s,se`;r===`all`&&(r=`n,e,s,w,se,sw,ne,nw`);let i=!n.opts.alwaysShowResizeHandle;e.setupResizable({...n.opts.resizable,handles:r,autoHide:i,start:t.start,stop:t.stop,resize:t.resize,rtl:t.rtl})}}),this}draggable(e,t,n,r){return this._getDDElements(e,t).forEach(e=>{if(t===`disable`||t===`enable`)e.ddDraggable&&e.ddDraggable[t]();else if(t===`destroy`)e.ddDraggable&&e.cleanDraggable();else if(t===`option`)e.setupDraggable({[n]:r});else{let n=e.el.gridstackNode.grid;e.setupDraggable({...n.opts.draggable,start:t.start,stop:t.stop,drag:t.drag,rtl:t.rtl})}}),this}dragIn(e,t){return this._getDDElements(e).forEach(e=>e.setupDraggable(t)),this}droppable(e,t,n,r){return typeof t.accept==`function`&&!t._accept&&(t._accept=t.accept,t.accept=e=>t._accept(e)),this._getDDElements(e,t).forEach(e=>{t===`disable`||t===`enable`?e.ddDroppable&&e.ddDroppable[t]():t===`destroy`?e.ddDroppable&&e.cleanDroppable():t===`option`?e.setupDroppable({[n]:r}):e.setupDroppable(t)}),this}isDroppable(e){return!!(e?.ddElement?.ddDroppable&&!e.ddElement.ddDroppable.disabled)}isDraggable(e){return!!(e?.ddElement?.ddDraggable&&!e.ddElement.ddDraggable.disabled)}isResizable(e){return!!(e?.ddElement?.ddResizable&&!e.ddElement.ddResizable.disabled)}on(e,t,n){return this._getDDElements(e).forEach(e=>e.on(t,e=>{n(e,q.dragElement?q.dragElement.el:e.target,q.dragElement?q.dragElement.helper:null)})),this}off(e,t){return this._getDDElements(e).forEach(e=>e.off(t)),this}_getDDElements(e,t){let n=e.gridstack||t!==`destroy`&&t!==`disable`,r=G.getElements(e);return r.length?r.map(e=>e.ddElement||(n?bn.init(e):null)).filter(e=>e):[]}},Z=class e{static init(t={},n=`.grid-stack`){if(typeof document>`u`)return null;let r=e.getGridElement(n);return r?(r.gridstack||=new e(r,G.cloneDeep(t)),r.gridstack):(console.error(typeof n==`string`?`GridStack.initAll() no grid was found with selector "`+n+`" - element missing or wrong selector ?
80
+ `},G=class e{static getElements(e,t=document){if(typeof e==`string`){let n=`getElementById`in t?t:void 0;if(n&&!isNaN(+e[0])){let t=n.getElementById(e);return t?[t]:[]}let r=t.querySelectorAll(e);if(!r.length&&e[0]!==`.`&&e[0]!==`#`&&(r=t.querySelectorAll(`.`+e),r.length||(r=t.querySelectorAll(`#`+e)),!r.length)){let n=t.querySelector(`[gs-id="${e}"]`);return n?[n]:[]}return Array.from(r)}return[e]}static getElement(e,t=document){if(typeof e==`string`){let n=`getElementById`in t?t:void 0;if(!e.length)return null;if(n&&e[0]===`#`)return n.getElementById(e.substring(1));if(e[0]===`#`||e[0]===`.`||e[0]===`[`)return t.querySelector(e);if(n&&!isNaN(+e[0]))return n.getElementById(e);let r=t.querySelector(e);return n&&!r&&(r=n.getElementById(e)),r||=t.querySelector(`.`+e),r}return e}static lazyLoad(e){return e.lazyLoad||e.grid?.opts?.lazyLoad&&e.lazyLoad!==!1}static createDiv(e,t){let n=document.createElement(`div`);return e.forEach(e=>{e&&n.classList.add(e)}),t?.appendChild(n),n}static shouldSizeToContent(e,t=!1){return e?.grid&&(t?e.sizeToContent===!0||e.grid.opts.sizeToContent===!0&&e.sizeToContent===void 0:!!e.sizeToContent||e.grid.opts.sizeToContent&&e.sizeToContent!==!1)}static isIntercepted(e,t){return!(e.y>=t.y+t.h||e.y+e.h<=t.y||e.x+e.w<=t.x||e.x>=t.x+t.w)}static isTouching(t,n){return e.isIntercepted(t,{x:n.x-.5,y:n.y-.5,w:n.w+1,h:n.h+1})}static areaIntercept(e,t){let n=e.x>t.x?e.x:t.x,r=e.x+e.w<t.x+t.w?e.x+e.w:t.x+t.w;if(r<=n)return 0;let i=e.y>t.y?e.y:t.y,a=e.y+e.h<t.y+t.h?e.y+e.h:t.y+t.h;return a<=i?0:(r-n)*(a-i)}static area(e){return e.w*e.h}static sort(e,t=1){let n=1e4;return e.sort((e,r)=>{let i=t*((e.y??n)-(r.y??n));return i===0?t*((e.x??n)-(r.x??n)):i})}static find(e,t){return t?e.find(e=>e.id===t):void 0}static toBool(e){return typeof e==`boolean`?e:typeof e==`string`?(e=e.toLowerCase(),!(e===``||e===`no`||e===`false`||e===`0`)):!!e}static toNumber(e){return e===null||e.length===0?void 0:Number(e)}static parseHeight(e){let t,n=`px`;if(typeof e==`string`)if(e===`auto`||e===``)t=0;else{let r=e.match(/^(-[0-9]+\.[0-9]+|[0-9]*\.[0-9]+|-[0-9]+|[0-9]+)(px|em|rem|vh|vw|%|cm|mm)?$/);if(!r)throw Error(`Invalid height val = ${e}`);n=r[2]||`px`,t=parseFloat(r[1])}else t=e;return{h:t,unit:n}}static defaults(t,...n){return n.forEach(n=>{for(let r in n){if(!n.hasOwnProperty(r))return;t[r]===null||t[r]===void 0?t[r]=n[r]:typeof n[r]==`object`&&typeof t[r]==`object`&&e.defaults(t[r],n[r])}}),t}static same(e,t){if(typeof e!=`object`)return e==t;if(typeof e!=typeof t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}static copyPos(e,t,n=!1){return t.x!==void 0&&(e.x=t.x),t.y!==void 0&&(e.y=t.y),t.w!==void 0&&(e.w=t.w),t.h!==void 0&&(e.h=t.h),n&&(t.minW&&(e.minW=t.minW),t.minH&&(e.minH=t.minH),t.maxW&&(e.maxW=t.maxW),t.maxH&&(e.maxH=t.maxH)),e}static samePos(e,t){return e&&t&&e.x===t.x&&e.y===t.y&&(e.w||1)===(t.w||1)&&(e.h||1)===(t.h||1)}static sanitizeMinMax(e){e.minW||delete e.minW,e.minH||delete e.minH,e.maxW||delete e.maxW,e.maxH||delete e.maxH}static removeInternalAndSame(t,n){if(!(typeof t!=`object`||typeof n!=`object`)&&!(Array.isArray(t)||Array.isArray(n)))for(let r in t){let i=t[r],a=n[r];r[0]===`_`||i===a?delete t[r]:i&&typeof i==`object`&&a!==void 0&&(e.removeInternalAndSame(i,a),Object.keys(i).length||delete t[r])}}static removeInternalForSave(e,t=!0){for(let t in e)(t[0]===`_`||e[t]===null||e[t]===void 0)&&delete e[t];delete e.grid,t&&delete e.el,e.autoPosition||delete e.autoPosition,e.noResize||delete e.noResize,e.noMove||delete e.noMove,e.locked||delete e.locked,(e.w===1||e.w===e.minW)&&delete e.w,(e.h===1||e.h===e.minH)&&delete e.h}static throttle(e,t){let n=!1;return(...r)=>{n||(n=!0,setTimeout(()=>{e(...r),n=!1},t))}}static removePositioningStyles(e){let t=e.style;t.position&&t.removeProperty(`position`),t.left&&t.removeProperty(`left`),t.top&&t.removeProperty(`top`),t.width&&t.removeProperty(`width`),t.height&&t.removeProperty(`height`)}static getScrollElement(t){if(!t)return document.scrollingElement||document.documentElement;let n=getComputedStyle(t).overflowY;return(n===`auto`||n===`scroll`)&&t.scrollHeight>t.clientHeight?t:e.getScrollElement(t.parentElement)}static updateScrollResize(t,n,r){let i=e.getScrollElement(n),a=i.clientHeight,o=i===e.getScrollElement()?0:i.getBoundingClientRect().top,s=t.clientY-o,c=s<r,l=s>a-r;c?i.scrollBy({behavior:`smooth`,top:s-r}):l&&i.scrollBy({behavior:`smooth`,top:r-(a-s)})}static clone(e){return typeof e!=`object`||!e?e:e instanceof Array?[...e]:{...e}}static cloneDeep(t){let n=[`parentGrid`,`el`,`grid`,`subGrid`,`engine`],r=e.clone(t);for(let i in r)r.hasOwnProperty(i)&&typeof r[i]==`object`&&i.substring(0,2)!==`__`&&!n.find(e=>e===i)&&(r[i]=e.cloneDeep(t[i]));return r}static cloneNode(e){let t=e.cloneNode(!0);return t.removeAttribute(`id`),t}static appendTo(t,n){let r;r=typeof n==`string`?e.getElement(n):n,r&&r.appendChild(t)}static addElStyles(e,t){if(t instanceof Object)for(let n in t)t.hasOwnProperty(n)&&(Array.isArray(t[n])?t[n].forEach(t=>{e.style[n]=t}):e.style[n]=t[n])}static initEvent(e,t){let n={type:t.type},r={button:0,which:0,buttons:1,bubbles:!0,cancelable:!0,target:t.target?t.target:e.target};return[`altKey`,`ctrlKey`,`metaKey`,`shiftKey`].forEach(t=>n[t]=e[t]),[`pageX`,`pageY`,`clientX`,`clientY`,`screenX`,`screenY`].forEach(t=>n[t]=e[t]),{...n,...r}}static simulateMouseEvent(e,t,n){let r=e,i=new MouseEvent(t,{bubbles:!0,composed:!0,cancelable:!0,view:window,detail:1,screenX:e.screenX,screenY:e.screenY,clientX:e.clientX,clientY:e.clientY,ctrlKey:r.ctrlKey??!1,altKey:r.altKey??!1,shiftKey:r.shiftKey??!1,metaKey:r.metaKey??!1,button:0,relatedTarget:e.target});(n||e.target).dispatchEvent(i)}static getValuesFromTransformedElement(t){let n=document.createElement(`div`);e.addElStyles(n,{opacity:`0`,position:`fixed`,top:`0px`,left:`0px`,width:`1px`,height:`1px`,zIndex:`-999999`}),t.appendChild(n);let r=n.getBoundingClientRect();return t.removeChild(n),n.remove(),{xScale:1/r.width,yScale:1/r.height,xOffset:r.left,yOffset:r.top}}static swap(e,t,n){if(!e)return;let r=e[t];e[t]=e[n],e[n]=r}static canBeRotated(e){return!(!e||e.w===e.h||e.locked||e.noResize||e.grid?.opts.disableResize||e.minW&&e.minW===e.maxW||e.minH&&e.minH===e.maxH)}},an=class e{constructor(e={}){this.addedNodes=[],this.removedNodes=[],this.defaultColumn=12,this.column=e.column||this.defaultColumn,this.column>this.defaultColumn&&(this.defaultColumn=this.column),this.maxRow=e.maxRow,this._float=e.float,this.nodes=e.nodes||[],this.onChange=e.onChange}batchUpdate(e=!0,t=!0){return!!this.batchMode===e?this:(this.batchMode=e,e?(this._prevFloat=this._float,this._float=!0,this.cleanNodes(),this.saveInitial()):(this._float=this._prevFloat,delete this._prevFloat,t&&this._packNodes(),this._notify()),this)}_useEntireRowArea(e,t){return(!this.float||this.batchMode&&!this._prevFloat)&&!this._hasLocked&&(!e._moving||e._skipDown||t.y<=e.y)}_fixCollisions(e,t=e,n,r={}){if(this.sortNodes(-1),n||=this.collide(e,t),!n)return!1;if(e._moving&&!r.nested&&!this.float&&this.swap(e,n))return!0;let i=t;!this._loading&&this._useEntireRowArea(e,t)&&(i={x:0,w:this.column,y:t.y,h:t.h},n=this.collide(e,i,r.skip));let a=!1,o={nested:!0,pack:!1},s=0;for(;n||=this.collide(e,i,r.skip);){if(s++>this.nodes.length*2)throw Error(`Infinite collide check`);let i;if(n.locked||this._loading||e._moving&&!e._skipDown&&t.y>e.y&&!this.float&&(!this.collide(n,{...n,y:e.y},e)||!this.collide(n,{...n,y:t.y-n.h},e))){e._skipDown=e._skipDown||t.y>e.y;let s={...t,y:n.y+n.h,...o};i=this._loading&&G.samePos(e,s)?!0:this.moveNode(e,s),(n.locked||this._loading)&&i?G.copyPos(t,e):!n.locked&&i&&r.pack&&(this._packNodes(),t.y=n.y+n.h,G.copyPos(e,t)),a||=i}else i=this.moveNode(n,{...n,y:t.y+t.h,skip:e,...o});if(!i)return a;n=void 0}return a}collide(e,t=e,n){let r=e._id,i=n?._id;return this.nodes.find(e=>e._id!==r&&e._id!==i&&G.isIntercepted(e,t))}collideAll(e,t=e,n){let r=e._id,i=n?._id;return this.nodes.filter(e=>e._id!==r&&e._id!==i&&G.isIntercepted(e,t))}directionCollideCoverage(e,t,n){if(!t.rect||!e._rect)return;let r=e._rect,i={...t.rect};i.y>r.y?(i.h+=i.y-r.y,i.y=r.y):i.h+=r.y-i.y,i.x>r.x?(i.w+=i.x-r.x,i.x=r.x):i.w+=r.x-i.x;let a,o=.5;for(let e of n){if(e.locked||!e._rect)break;let t=e._rect,n=Number.MAX_VALUE,s=Number.MAX_VALUE;r.y<t.y?n=(i.y+i.h-t.y)/t.h:r.y+r.h>t.y+t.h&&(n=(t.y+t.h-i.y)/t.h),r.x<t.x?s=(i.x+i.w-t.x)/t.w:r.x+r.w>t.x+t.w&&(s=(t.x+t.w-i.x)/t.w);let c=Math.min(s,n);c>o&&(o=c,a=e)}return t.collide=a,a}cacheRects(e,t,n,r,i,a){return this.nodes.forEach(o=>o._rect={y:o.y*t+n,x:o.x*e+a,w:o.w*e-a-r,h:o.h*t-n-i}),this}swap(e,t){if(!t||t.locked||!e||e.locked)return!1;function n(){let n=t.x,r=t.y;return t.x=e.x,t.y=e.y,e.h==t.h?e.w==t.w?(e.x=n,e.y=r):(e.x=t.x+t.w,e.y=r):(e.x=n,e.y=t.y+t.h),e._dirty=t._dirty=!0,!0}let r;if(e.w===t.w&&e.h===t.h&&(e.x===t.x||e.y===t.y)&&(r=G.isTouching(e,t)))return n();if(r!==!1){if(e.w===t.w&&e.x===t.x&&(r||=G.isTouching(e,t))){if(t.y<e.y){let n=e;e=t,t=n}return n()}if(r!==!1){if(e.h===t.h&&e.y===t.y&&(r||=G.isTouching(e,t))){if(t.x<e.x){let n=e;e=t,t=n}return n()}return!1}}}isAreaEmpty(e,t,n,r){let i={x:e||0,y:t||0,w:n||1,h:r||1};return!this.collide(i)}compact(e=`compact`,t=!0){if(this.nodes.length===0)return this;t&&this.sortNodes();let n=this.batchMode;n||this.batchUpdate();let r=this._inColumnResize;r||(this._inColumnResize=!0);let i=this.nodes;return this.nodes=[],i.forEach((t,n,r)=>{let i;t.locked||(t.autoPosition=!0,e===`list`&&n&&(i=r[n-1])),this.addNode(t,!1,i)}),r||delete this._inColumnResize,n||this.batchUpdate(!1),this}set float(e){this._float!==e&&(this._float=e||!1,e||this._packNodes()._notify())}get float(){return this._float||!1}sortNodes(e=1){return this.nodes=G.sort(this.nodes,e),this}_packNodes(){return this.batchMode?this:(this.sortNodes(),this.float?this.nodes.forEach(e=>{if(e._updating||e._orig===void 0||e.y===e._orig.y)return;let t=e.y;for(;t>e._orig.y;)--t,this.collide(e,{x:e.x,y:t,w:e.w,h:e.h})||(e._dirty=!0,e.y=t)}):this.nodes.forEach((e,t)=>{if(!e.locked)for(;e.y>0;){let n=t===0?0:e.y-1;if(!(t===0||!this.collide(e,{x:e.x,y:n,w:e.w,h:e.h})))break;e._dirty=e.y!==n,e.y=n}}),this)}prepareNode(t,n){t._id=t._id??e._idSeq++;let r=t.id;if(r){let e=1;for(;this.nodes.find(e=>e.id===t.id&&e!==t);)t.id=r+`_`+e++}(t.x===void 0||t.y===void 0||t.x===null||t.y===null)&&(t.autoPosition=!0);let i={x:0,y:0,w:1,h:1};return G.defaults(t,i),t.autoPosition||delete t.autoPosition,t.noResize||delete t.noResize,t.noMove||delete t.noMove,G.sanitizeMinMax(t),typeof t.x==`string`&&(t.x=Number(t.x)),typeof t.y==`string`&&(t.y=Number(t.y)),typeof t.w==`string`&&(t.w=Number(t.w)),typeof t.h==`string`&&(t.h=Number(t.h)),isNaN(t.x)&&(t.x=i.x,t.autoPosition=!0),isNaN(t.y)&&(t.y=i.y,t.autoPosition=!0),isNaN(t.w)&&(t.w=i.w),isNaN(t.h)&&(t.h=i.h),this.nodeBoundFix(t,n),t}nodeBoundFix(e,t){let n=e._orig||G.copyPos({},e);if(e.maxW&&(e.w=Math.min(e.w||1,e.maxW)),e.maxH&&(e.h=Math.min(e.h||1,e.maxH)),e.minW&&(e.w=Math.max(e.w||1,e.minW)),e.minH&&(e.h=Math.max(e.h||1,e.minH)),(e.x||0)+(e.w||1)>this.column&&this.column<this.defaultColumn&&!this._inColumnResize&&!this.skipCacheUpdate&&e._id!=null&&this.findCacheLayout(e,this.defaultColumn)===-1){let t={...e};t.autoPosition||t.x===void 0?(delete t.x,delete t.y):t.x=Math.min(this.defaultColumn-1,t.x),t.w=Math.min(this.defaultColumn,t.w||1),this.cacheOneLayout(t,this.defaultColumn)}return e.w>this.column?e.w=this.column:e.w<1&&(e.w=1),this.maxRow&&e.h>this.maxRow?e.h=this.maxRow:e.h<1&&(e.h=1),e.x<0&&(e.x=0),e.y<0&&(e.y=0),e.x+e.w>this.column&&(t?e.w=this.column-e.x:e.x=this.column-e.w),this.maxRow&&e.y+e.h>this.maxRow&&(t?e.h=this.maxRow-e.y:e.y=this.maxRow-e.h),G.samePos(e,n)||(e._dirty=!0),this}getDirtyNodes(e){return e?this.nodes.filter(e=>e._dirty&&!G.samePos(e,e._orig)):this.nodes.filter(e=>e._dirty)}_notify(e){if(this.batchMode||!this.onChange)return this;let t=(e||[]).concat(this.getDirtyNodes());return this.onChange(t),this}cleanNodes(){return this.batchMode||this.nodes.forEach(e=>{delete e._dirty,delete e._lastTried}),this}saveInitial(){return this.nodes.forEach(e=>{e._orig=G.copyPos({},e),delete e._dirty}),this._hasLocked=this.nodes.some(e=>e.locked),this}restoreInitial(){return this.nodes.forEach(e=>{!e._orig||G.samePos(e,e._orig)||(G.copyPos(e,e._orig),e._dirty=!0)}),this._notify(),this}findEmptyPosition(e,t=this.nodes,n=this.column,r){let i=r?r.y*n+(r.x+r.w):0,a=!1;for(let r=i;!a;++r){let i=r%n,o=Math.floor(r/n);if(i+e.w>n)continue;let s={x:i,y:o,w:e.w,h:e.h};t.find(e=>G.isIntercepted(s,e))||((e.x!==i||e.y!==o)&&(e._dirty=!0),e.x=i,e.y=o,delete e.autoPosition,a=!0)}return a}addNode(e,t=!1,n){let r=this.nodes.find(t=>t._id===e._id);if(r)return r;this._inColumnResize?this.nodeBoundFix(e):this.prepareNode(e),delete e._temporaryRemoved,delete e._removeDOM;let i;return e.autoPosition&&this.findEmptyPosition(e,this.nodes,this.column,n)&&(delete e.autoPosition,i=!0),this.nodes.push(e),t&&this.addedNodes.push(e),i||this._fixCollisions(e),this.batchMode||this._packNodes()._notify(),e}removeNode(e,t=!0,n=!1){return this.nodes.find(t=>t._id===e._id)?(n&&this.removedNodes.push(e),t&&(e._removeDOM=!0),this.nodes=this.nodes.filter(t=>t._id!==e._id),e._isAboutToRemove||this._packNodes(),this._notify([e]),this):this}removeAll(e=!0,t=!0){if(delete this._layouts,!this.nodes.length)return this;e&&this.nodes.forEach(e=>e._removeDOM=!0);let n=this.nodes;return this.removedNodes=t?n:[],this.nodes=[],this._notify(n)}moveNodeCheck(t,n){if(!this.changedPosConstrain(t,n))return!1;if(n.pack=!0,!this.maxRow)return this.moveNode(t,n);let r,i=new e({column:this.column,float:this.float,nodes:this.nodes.map(e=>e._id===t._id?(r={...e},r):{...e})});if(!r)return!1;let a=i.moveNode(r,n)&&i.getRow()<=Math.max(this.getRow(),this.maxRow);if(!a&&!n.resizing&&n.collide){let e=n.collide.el.gridstackNode;if(this.swap(t,e))return this._notify(),!0}return a?(i.nodes.filter(e=>e._dirty).forEach(e=>{let t=this.nodes.find(t=>t._id===e._id);t&&(G.copyPos(t,e),t._dirty=!0)}),this._notify(),!0):!1}willItFit(t){if(delete t._willFitPos,!this.maxRow)return!0;let n=new e({column:this.column,float:this.float,nodes:this.nodes.map(e=>({...e}))}),r={...t};return this.cleanupNode(r),delete r.el,delete r._id,delete r.content,delete r.grid,n.addNode(r),n.getRow()<=this.maxRow?(t._willFitPos=G.copyPos({},r),!0):!1}changedPosConstrain(e,t){return t.w=t.w||e.w,t.h=t.h||e.h,e.x!==t.x||e.y!==t.y?!0:(e.maxW&&(t.w=Math.min(t.w,e.maxW)),e.maxH&&(t.h=Math.min(t.h,e.maxH)),e.minW&&(t.w=Math.max(t.w,e.minW)),e.minH&&(t.h=Math.max(t.h,e.minH)),e.w!==t.w||e.h!==t.h)}moveNode(e,t){if(!e||!t)return!1;let n;t.pack===void 0&&!this.batchMode&&(n=t.pack=!0),typeof t.x!=`number`&&(t.x=e.x),typeof t.y!=`number`&&(t.y=e.y),typeof t.w!=`number`&&(t.w=e.w),typeof t.h!=`number`&&(t.h=e.h);let r=e.w!==t.w||e.h!==t.h,i=G.copyPos({},e,!0);if(G.copyPos(i,t),this.nodeBoundFix(i,r),G.copyPos(t,i),!t.forceCollide&&G.samePos(e,t))return!1;let a=G.copyPos({},e),o=this.collideAll(e,i,t.skip),s=!0;if(o.length){let r=e._moving&&!t.nested,a=r?this.directionCollideCoverage(e,t,o):o[0];if(r&&a&&e.grid?.opts?.subGridDynamic&&!e.grid._isTemp){let n=G.areaIntercept(t.rect,a._rect),r=G.area(t.rect),i=G.area(a._rect);n/(r<i?r:i)>.8&&(a.grid.makeSubGrid(a.el,void 0,e),a=void 0)}a?s=!this._fixCollisions(e,i,a,t):(s=!1,n&&delete t.pack)}return s&&!G.samePos(e,i)&&(e._dirty=!0,G.copyPos(e,i)),t.pack&&this._packNodes()._notify(),!G.samePos(e,a)}getRow(){return this.nodes.reduce((e,t)=>Math.max(e,t.y+t.h),0)}beginUpdate(e){return e._updating||(e._updating=!0,delete e._skipDown,this.batchMode||this.saveInitial()),this}endUpdate(){let e=this.nodes.find(e=>e._updating);return e&&(delete e._updating,delete e._skipDown),this}save(e=!0,t,n){let r=this._layouts?.length||0,i;r&&(n?n!==this.column&&(i=this._layouts[n]):this.column!==r-1&&(i=this._layouts[r-1]));let a=[];return this.sortNodes(),this.nodes.forEach(n=>{let r=i?.find(e=>e._id===n._id),o={...n,...r||{}};G.removeInternalForSave(o,!e),t&&t(n,o),a.push(o)}),a}layoutsNodesChange(e){return!this._layouts||this._inColumnResize||this._layouts.forEach((t,n)=>{if(!t||n===this.column)return this;if(n<this.column)this._layouts[n]=void 0;else{let r=n/this.column;e.forEach(e=>{if(!e._orig)return;let n=t.find(t=>t._id===e._id);n&&(n.y>=0&&e.y!==e._orig.y&&(n.y+=e.y-e._orig.y,n.y<0&&(n.y=0)),e.x!==e._orig.x&&(n.x=Math.round(e.x*r),n.x<0&&(n.x=0)),e.w!==e._orig.w&&(n.w=Math.round(e.w*r),n.w<1&&(n.w=1)))})}}),this}columnChanged(e,t,n=`moveScale`){if(!this.nodes.length||!t||e===t)return this;let r=n===`compact`||n===`list`;r&&this.sortNodes(1),t<e&&this.cacheLayout(this.nodes,e),this.batchUpdate();let i=[],a=r?this.nodes:G.sort(this.nodes,-1);if(t>e&&this._layouts){let n=this._layouts[t]||[],o=this._layouts.length-1;!n.length&&e!==o&&this._layouts[o]?.length&&(e=o,this._layouts[o].forEach(e=>{let t=a.find(t=>t._id===e._id);t&&(!r&&!e.autoPosition&&(t.x=e.x??t.x,t.y=e.y??t.y),t.w=e.w??t.w,(e.x==null||e.y===void 0)&&(t.autoPosition=!0))})),n.forEach(e=>{let t=a.findIndex(t=>t._id===e._id);if(t!==-1){let n=a[t];if(r){n.w=e.w;return}(e.autoPosition||isNaN(e.x)||isNaN(e.y))&&this.findEmptyPosition(e,i),e.autoPosition||(n.x=e.x??n.x,n.y=e.y??n.y,n.w=e.w??n.w,i.push(n)),a.splice(t,1)}})}if(r)this.compact(n,!1);else{if(a.length)if(typeof n==`function`)n(t,e,i,a);else{let o=r||n===`none`?1:t/e,s=n===`move`||n===`moveScale`,c=n===`scale`||n===`moveScale`;a.forEach(n=>{n.x=t===1?0:s?Math.round(n.x*o):Math.min(n.x,t-1),n.w=t===1||e===1?1:c?Math.round(n.w*o)||1:Math.min(n.w,t),i.push(n)}),a=[]}i=G.sort(i,-1),this._inColumnResize=!0,this.nodes=[],i.forEach(e=>{this.addNode(e,!1),delete e._orig})}return this.nodes.forEach(e=>delete e._orig),this.batchUpdate(!1,!r),delete this._inColumnResize,this}cacheLayout(t,n,r=!1){let i=[];return t.forEach((t,n)=>{t._id===void 0&&(t._id=(t.id?this.nodes.find(e=>e.id===t.id):void 0)?._id??e._idSeq++),i[n]={x:t.x,y:t.y,w:t.w,_id:t._id}}),this._layouts=r?[]:this._layouts||[],this._layouts[n]=i,this}cacheOneLayout(t,n){t._id=t._id??e._idSeq++;let r={x:t.x,y:t.y,w:t.w,_id:t._id};(t.autoPosition||t.x===void 0)&&(delete r.x,delete r.y,t.autoPosition&&(r.autoPosition=!0)),this._layouts=this._layouts||[],this._layouts[n]=this._layouts[n]||[];let i=this.findCacheLayout(t,n);return i===-1?this._layouts[n].push(r):this._layouts[n][i]=r,this}findCacheLayout(e,t){return this._layouts?.[t]?.findIndex(t=>t._id===e._id)??-1}removeNodeFromLayoutCache(e){if(this._layouts)for(let t=0;t<this._layouts.length;t++){let n=this.findCacheLayout(e,t);n!==-1&&this._layouts[t].splice(n,1)}}cleanupNode(e){for(let t in e)t[0]===`_`&&t!==`_id`&&delete e[t];return this}};an._idSeq=0;var K={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`},q=class{},J=typeof window<`u`&&typeof document<`u`&&(`ontouchstart`in document||`ontouchstart`in window||window.DocumentTouch&&document instanceof window.DocumentTouch||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0),Y=class{};function on(e,t){e.touches.length>1||(e.cancelable&&e.preventDefault(),G.simulateMouseEvent(e.changedTouches[0],t))}function sn(e,t){e.cancelable&&e.preventDefault(),G.simulateMouseEvent(e,t)}function cn(e){Y.touchHandled||(Y.touchHandled=!0,on(e,`mousedown`))}function ln(e){Y.touchHandled&&on(e,`mousemove`)}function un(e){if(!Y.touchHandled)return;Y.pointerLeaveTimeout&&(window.clearTimeout(Y.pointerLeaveTimeout),delete Y.pointerLeaveTimeout);let t=!!q.dragElement;on(e,`mouseup`),t||on(e,`click`),Y.touchHandled=!1}function dn(e){e.pointerType!==`mouse`&&e.target.releasePointerCapture(e.pointerId)}function fn(e){q.dragElement&&e.pointerType!==`mouse`&&sn(e,`mouseenter`)}function pn(e){q.dragElement&&e.pointerType!==`mouse`&&(Y.pointerLeaveTimeout=window.setTimeout(()=>{delete Y.pointerLeaveTimeout,sn(e,`mouseleave`)},10))}var mn=class e{constructor(e,t,n){this.host=e,this.dir=t,this.option=n,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(e){this.option.element=void 0,console.error(`Query for resizeable handle failed, falling back`,e)}return this.el||(this.el=document.createElement(`div`),this.host.appendChild(this.el)),this.el.classList.add(`ui-resizable-handle`),this.el.classList.add(`${e.prefix}${this.dir}`),this.el.style.zIndex=`100`,this.el.style.userSelect=`none`,this.el.addEventListener(`mousedown`,this._mouseDown),J&&(this.el.addEventListener(`touchstart`,cn),this.el.addEventListener(`pointerdown`,dn)),this}destroy(){return this.moving&&this._mouseUp(this.mouseDownEvent),this.el.removeEventListener(`mousedown`,this._mouseDown),J&&(this.el.removeEventListener(`touchstart`,cn),this.el.removeEventListener(`pointerdown`,dn)),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),J&&(this.el.addEventListener(`touchmove`,ln),this.el.addEventListener(`touchend`,un)),e.stopPropagation(),e.preventDefault()}_mouseMove(e){let t=this.mouseDownEvent;this.moving?this._triggerEvent(`move`,e):Math.abs(e.x-t.x)+Math.abs(e.y-t.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),J&&(this.el.removeEventListener(`touchmove`,ln),this.el.removeEventListener(`touchend`,un)),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(e,t){return this.option[e]&&this.option[e](t),this}};mn.prefix=`ui-resizable-`;var hn=class{constructor(){this._eventRegister={}}get disabled(){return this._disabled}on(e,t){this._eventRegister[e]=t}off(e){delete this._eventRegister[e]}enable(){this._disabled=!1}disable(){this._disabled=!0}destroy(){delete this._eventRegister}triggerEvent(e,t){if(!this.disabled&&this._eventRegister&&this._eventRegister[e])return this._eventRegister[e](t)}},gn=class e extends hn{constructor(e,t={}){super(),this.el=e,this.option=t,this.rectScale={x:1,y:1},this._ui=()=>{let e=this.el.parentElement.getBoundingClientRect(),t={width:this.originalRect.width,height:this.originalRect.height+this.scrolled,left:this.originalRect.left,right:this.originalRect.right,top:this.originalRect.top-this.scrolled},n=this.temporalRect||t;return{position:{left:this.option.rtl?(e.right-n.right)*this.rectScale.x:(n.left-e.left)*this.rectScale.x,top:(n.top-e.top)*this.rectScale.y},size:{width:n.width*this.rectScale.x,height:n.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(e,t){super.on(e,t)}off(e){super.off(e)}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(e){let t=e.handles&&e.handles!==this.option.handles,n=e.autoHide&&e.autoHide!==this.option.autoHide;return Object.keys(e).forEach(t=>this.option[t]=e[t]),t&&(this._removeHandlers(),this._setupHandlers()),n&&this._setupAutoHide(this.option.autoHide),this}_setupAutoHide(e){return e?(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),q.overResizeElement===this&&delete q.overResizeElement),this}_mouseOver(e){q.overResizeElement||q.dragElement||(q.overResizeElement=this,this.el.classList.remove(`ui-resizable-autohide`))}_mouseOut(e){q.overResizeElement===this&&(delete q.overResizeElement,this.el.classList.add(`ui-resizable-autohide`))}_setupHandlers(){return this.handlers=this.option.handles.split(`,`).map(e=>e.trim()).map(e=>new mn(this.el,e,{element:this.option.element,start:e=>this._resizeStart(e),stop:e=>this._resizeStop(e),move:t=>this._resizing(t,e)})),this}_resizeStart(e){this.sizeToContent=G.shouldSizeToContent(this.el.gridstackNode,!0),this.originalRect=this.el.getBoundingClientRect(),this.scrollEl=G.getScrollElement(this.el),this.scrollY=this.scrollEl.scrollTop,this.scrolled=0,this.startEvent=e,this._setupHelper(),this._applyChange();let t=G.initEvent(e,{type:`resizestart`,target:this.el});return this.option.start&&this.option.start(t,this._ui()),this.el.classList.add(`ui-resizable-resizing`),this.triggerEvent(`resizestart`,t),this}_resizing(e,t){this.scrolled=this.scrollEl.scrollTop-this.scrollY,this.temporalRect=this._getChange(e,t),this._applyChange();let n=G.initEvent(e,{type:`resize`,target:this.el});return n.resizeDir=t,n.hasMovedX=this.option.rtl?t.includes(`e`):t.includes(`w`),n.hasMovedY=t.includes(`n`),this.option.resize&&this.option.resize(n,this._ui()),this.triggerEvent(`resize`,n),this}_resizeStop(e){let t=G.initEvent(e,{type:`resizestop`,target:this.el});return this._cleanHelper(),this.option.stop&&this.option.stop(t),this.el.classList.remove(`ui-resizable-resizing`),this.triggerEvent(`resizestop`,t),delete this.startEvent,delete this.originalRect,delete this.temporalRect,delete this.scrollY,delete this.scrolled,this}_setupHelper(){this.elOriginStyleVal=e._originStyleProp.map(e=>this.el.style[e]),this.parentOriginStylePosition=this.el.parentElement.style.position;let t=this.el.parentElement,n=G.getValuesFromTransformedElement(t);return this.rectScale={x:n.xScale,y:n.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 e._originStyleProp.forEach((e,t)=>{this.el.style[e]=this.elOriginStyleVal[t]||null}),this.el.parentElement.style.position=this.parentOriginStylePosition||null,this}_getChange(e,t){let n=this.startEvent,r={width:this.originalRect.width,height:this.originalRect.height+this.scrolled,left:this.originalRect.left,right:this.originalRect.right,top:this.originalRect.top-this.scrolled},i=e.clientX-n.clientX,a=this.sizeToContent?0:e.clientY-n.clientY,o,s,c=this.option.rtl;!c&&t.indexOf(`e`)>-1?r.width+=i:c&&t.indexOf(`w`)>-1?r.width-=i:!c&&t.indexOf(`w`)>-1?(r.width-=i,r.left+=i,o=!0):c&&t.indexOf(`e`)>-1&&(r.width+=i,r.right+=i,o=!0),t.indexOf(`s`)>-1?r.height+=a:t.indexOf(`n`)>-1&&(r.height-=a,r.top+=a,s=!0);let l=this._constrainSize(r.width,r.height,o,s);return Math.round(r.width)!==Math.round(l.width)&&(!c&&t.indexOf(`w`)>-1?r.left+=r.width-l.width:c&&t.indexOf(`e`)>-1&&(r.right-=r.width-l.width),r.width=l.width),Math.round(r.height)!==Math.round(l.height)&&(t.indexOf(`n`)>-1&&(r.top+=r.height-l.height),r.height=l.height),r}_constrainSize(e,t,n,r){let i=this.option,a=(n?i.maxWidthMoveLeft:i.maxWidth)||2**53-1,o=i.minWidth/this.rectScale.x||e,s=(r?i.maxHeightMoveUp:i.maxHeight)||2**53-1,c=i.minHeight/this.rectScale.y||t;return{width:Math.min(a,Math.max(o,e)),height:Math.min(s,Math.max(c,t))}}_applyChange(){let e={left:0,right:0,top:0,width:0,height:0};if(this.el.style.position===`absolute`){let{left:t,right:n,top:r}=this.el.parentElement.getBoundingClientRect();e={left:t,right:n,top:r,width:0,height:0}}return this.temporalRect&&Object.entries(this.temporalRect).forEach(([t,n])=>{if(this.option.rtl?t===`left`:t===`right`)return;let r=t===`width`||t===`left`||t===`right`?this.rectScale.x:t===`height`||t===`top`?this.rectScale.y:1,i;i=t===`right`?(e.right-n)*this.rectScale.x+`px`:(n-e[t])*r+`px`,this.el.style[t]=i}),this}_removeHandlers(){return this.handlers.forEach(e=>e.destroy()),delete this.handlers,this}};gn._originStyleProp=[`width`,`height`,`position`,`left`,`right`,`top`,`opacity`,`zIndex`];var _n=`input,textarea,button,select,option,[contenteditable="true"],.ui-resizable-handle`,vn=class e extends hn{constructor(e,t={}){super(),this.el=e,this.option=t,this.dragTransform={xScale:1,yScale:1,xOffset:0,yOffset:0},this._autoScrollTick=()=>{let e=this.helper,t=this._autoScrollContainer;if(!e||!t){this._stopScrolling();return}let n=this._getClipping(e,t);if(n===0){this._stopScrolling();return}if(!this._autoScrollMaxSpeed){let e=window.innerHeight||document.documentElement.clientHeight;this._autoScrollMaxSpeed=Math.max(e/150,4)}let r=Math.min(Math.abs(n)*.5,this._autoScrollMaxSpeed),i=n>0?r:-r,a=t.scrollTop;if(t.scrollTop+=i,t.scrollTop===a){this._stopScrolling();return}this.dragging&&this.lastDrag&&(this._dragFollow(this.lastDrag),this._callDrag(this.lastDrag)),this._autoScrollAnimId=requestAnimationFrame(this._autoScrollTick)};let n=t?.handle?.substring(1),r=e.gridstackNode;this.dragEls=!n||e.classList.contains(n)?[e]:r?.subGrid?[e.querySelector(t.handle)||e]:this.getAllHandles(),this.dragEls.length===0&&(this.dragEls=[e]),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()}getAllHandles(){return Array.from(this.el.querySelectorAll(this.option.handle)).filter(e=>{if(!(e instanceof HTMLElement))return!1;let t=e.closest(`.grid-stack-item`);return t===this.el||!t})}on(e,t){super.on(e,t)}off(e){super.off(e)}enable(){this.disabled!==!1&&(super.enable(),this.dragEls.forEach(e=>{e.addEventListener(`mousedown`,this._mouseDown),J&&(e.addEventListener(`touchstart`,cn),e.addEventListener(`pointerdown`,dn))}),this.el.classList.remove(`ui-draggable-disabled`))}disable(e=!1){this.disabled!==!0&&(super.disable(),this.dragEls.forEach(e=>{e.removeEventListener(`mousedown`,this._mouseDown),J&&(e.removeEventListener(`touchstart`,cn),e.removeEventListener(`pointerdown`,dn))}),e||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(e){return Object.keys(e).forEach(t=>this.option[t]=e[t]),this}_mouseDown(e){if(Y.touchHandled&&e.isTrusted&&(Y.touchHandled=!1),!q.mouseHandled)return e.button!==0||!this.dragEls.find(t=>t===e.target)&&e.target.closest(_n)||this.option.cancel&&e.target.closest(this.option.cancel)?!0:(this.mouseDownEvent=e,delete this.dragging,delete q.dragElement,delete q.dropElement,delete this._autoScrollMaxSpeed,delete this._autoScrollContainer,document.addEventListener(`mousemove`,this._mouseMove,{capture:!0,passive:!0}),document.addEventListener(`mouseup`,this._mouseUp,!0),J&&(e.currentTarget.addEventListener(`touchmove`,ln),e.currentTarget.addEventListener(`touchend`,un)),e.preventDefault(),document.activeElement&&document.activeElement.blur(),q.mouseHandled=!0,!0)}_callDrag(e){if(!this.dragging)return;let t=G.initEvent(e,{target:this.el,type:`drag`});this.option.drag&&this.option.drag(t,this.ui()),this.triggerEvent(`drag`,t)}_mouseMove(e){let t=this.mouseDownEvent;if(this.lastDrag=e,this.dragging)if(this._dragFollow(e),q.pauseDrag){let t=Number.isInteger(q.pauseDrag)?q.pauseDrag:100;this.dragTimeout&&window.clearTimeout(this.dragTimeout),this.dragTimeout=window.setTimeout(()=>this._callDrag(e),t)}else this._callDrag(e);else if(Math.abs(e.x-t.x)+Math.abs(e.y-t.y)>3){this.dragging=!0,q.dragElement=this;let t=this.el.gridstackNode?.grid;t?q.dropElement=t.el.ddElement.ddDroppable:delete q.dropElement,this.helper=this._createHelper(),this._setupHelperContainmentStyle(),this.dragTransform=G.getValuesFromTransformedElement(this.helperContainment),this.dragOffset=this._getDragOffset(e,this.el,this.helperContainment),this._setupHelperStyle(e);let n=G.initEvent(e,{target:this.el,type:`dragstart`});this.option.start&&this.option.start(n,this.ui()),this.triggerEvent(`dragstart`,n),document.addEventListener(`keydown`,this._keyEvent)}return!0}_mouseUp(e){if(this._stopScrolling(),document.removeEventListener(`mousemove`,this._mouseMove,!0),document.removeEventListener(`mouseup`,this._mouseUp,!0),J&&e.currentTarget&&(e.currentTarget.removeEventListener(`touchmove`,ln,!0),e.currentTarget.removeEventListener(`touchend`,un,!0)),this.dragging){delete this.dragging,delete this.el.gridstackNode?._origRotate,document.removeEventListener(`keydown`,this._keyEvent),q.dropElement?.el===this.el.parentElement&&delete q.dropElement,this.helperContainment.style.position=this.parentOriginStylePosition||null,this.helper!==this.el&&this.helper.remove(),this._removeHelperStyle();let t=G.initEvent(e,{target:this.el,type:`dragstop`});this.option.stop&&this.option.stop(t),this.triggerEvent(`dragstop`,t),q.dropElement&&q.dropElement.drop(e)}delete this.helper,delete this.mouseDownEvent,delete q.dragElement,delete q.dropElement,delete q.mouseHandled,e.preventDefault()}_keyEvent(e){let t=this.el.gridstackNode,n=t?.grid||q.dropElement?.el?.gridstack;if(e.key===`Escape`)t&&t._origRotate&&(t._orig=t._origRotate,delete t._origRotate),n?.cancelDrag(),this._mouseUp(this.mouseDownEvent);else if(t&&n&&(e.key===`r`||e.key===`R`)){if(!G.canBeRotated(t))return;t._origRotate=t._origRotate||{...t._orig},delete t._moving,n.setAnimation(!1).rotate(t.el,{top:-this.dragOffset.offsetTop,left:-this.dragOffset.offsetX}).setAnimation(),t._moving=!0,this.dragOffset=this._getDragOffset(this.lastDrag,t.el,this.helperContainment),this.helper.style.width=this.dragOffset.width+`px`,this.helper.style.height=this.dragOffset.height+`px`,G.swap(t._orig,`w`,`h`),delete t._rect,this._mouseMove(this.lastDrag)}}_createHelper(){let t=this.el;return typeof this.option.helper==`function`?t=this.option.helper(this.el):this.option.helper===`clone`&&(t=G.cloneNode(this.el)),t.parentElement||G.appendTo(t,this.option.appendTo===`parent`?this.el.parentElement:this.option.appendTo),this.dragElementOriginStyle=e.originStyleProp.map(e=>this.el.style[e]),t}_setupHelperStyle(e){this.helper.classList.add(`ui-draggable-dragging`),this.el.gridstackNode?.grid?.el.classList.add(`grid-stack-dragging`);let t=this.helper.style;return t.pointerEvents=`none`,t.width=this.dragOffset.width+`px`,t.height=this.dragOffset.height+`px`,t.willChange=`left, right, top`,t.position=`fixed`,this._dragFollow(e),t.transition=`none`,setTimeout(()=>{this.helper&&(t.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 t=this.helper,n=this.dragElementOriginStyle.transition||null;t.style.transition=this.dragElementOriginStyle.transition=`none`,e.originStyleProp.forEach(e=>t.style[e]=this.dragElementOriginStyle[e]||null),setTimeout(()=>t.style.transition=n,50)}return delete this.dragElementOriginStyle,this}_dragFollow(e){let t=this.helper.style,n=this.dragOffset;this.option.rtl?(t.right=(window.innerWidth-e.clientX+n.offsetX)*this.dragTransform.xScale+`px`,t.left&&=``):(t.left=(e.clientX+n.offsetX)*this.dragTransform.xScale+`px`,t.right&&=``),t.top=(e.clientY+n.offsetTop)*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(e,t,n){let r=0,i=0;n&&(r=this.dragTransform.xOffset,i=this.dragTransform.yOffset);let a=t.getBoundingClientRect(),o=this.option.rtl?a.right:a.left,s=this.option.rtl?e.clientX-a.right+r:-e.clientX+a.left-r;return{x:o,top:a.top,offsetX:s,offsetTop:-e.clientY+a.top-i,width:a.width*this.dragTransform.xScale,height:a.height*this.dragTransform.yScale}}updateScrollPosition(e){this._autoScrollContainer=G.getScrollElement(e),this._getClipping(this.helper,this._autoScrollContainer)===0?this._stopScrolling():this._autoScrollAnimId||=requestAnimationFrame(this._autoScrollTick)}_getClipping(e,t){let n=e.getBoundingClientRect(),r=t.getBoundingClientRect(),i=window.innerHeight||document.documentElement.clientHeight;if(n.bottom<r.top||n.top>r.bottom)return 0;let a=n.bottom-Math.min(r.bottom,i),o=n.top-Math.max(r.top,0);return o<0?o:a>0?a:0}_stopScrolling(){this._autoScrollAnimId&&(cancelAnimationFrame(this._autoScrollAnimId),delete this._autoScrollAnimId)}ui(){let e=this.el.parentElement.getBoundingClientRect(),t=this.helper.getBoundingClientRect(),n=this.option.rtl?(e.right-t.right)*this.dragTransform.xScale:(t.left-e.left)*this.dragTransform.xScale;return{position:{top:(t.top-e.top)*this.dragTransform.yScale,left:n}}}};vn.originStyleProp=[`width`,`height`,`transform`,`transform-origin`,`transition`,`pointerEvents`,`position`,`left`,`right`,`top`,`minWidth`,`willChange`];var yn=class extends hn{constructor(e,t={}){super(),this.el=e,this.option=t,this._mouseEnter=this._mouseEnter.bind(this),this._mouseLeave=this._mouseLeave.bind(this),this.enable(),this._setupAccept()}on(e,t){super.on(e,t)}off(e){super.off(e)}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),J&&(this.el.addEventListener(`pointerenter`,fn),this.el.addEventListener(`pointerleave`,pn)))}disable(e=!1){this.disabled!==!0&&(super.disable(),this.el.classList.remove(`ui-droppable`),e||this.el.classList.add(`ui-droppable-disabled`),this.el.removeEventListener(`mouseenter`,this._mouseEnter),this.el.removeEventListener(`mouseleave`,this._mouseLeave),J&&(this.el.removeEventListener(`pointerenter`,fn),this.el.removeEventListener(`pointerleave`,pn)))}destroy(){this.disable(!0),this.el.classList.remove(`ui-droppable`),this.el.classList.remove(`ui-droppable-disabled`),super.destroy()}updateOption(e){return Object.keys(e).forEach(t=>this.option[t]=e[t]),this._setupAccept(),this}_mouseEnter(e){if(!q.dragElement||Y.touchHandled&&e.isTrusted||!this._canDrop(q.dragElement.el))return;e.preventDefault(),e.stopPropagation(),q.dragElement._stopScrolling(),q.dropElement&&q.dropElement!==this&&q.dropElement._mouseLeave(e,!0),q.dropElement=this;let t=G.initEvent(e,{target:this.el,type:`dropover`});this.option.over&&this.option.over(t,this._ui(q.dragElement)),this.triggerEvent(`dropover`,t),this.el.classList.add(`ui-droppable-over`)}_mouseLeave(e,t=!1){if(!q.dragElement||q.dropElement!==this)return;e.preventDefault(),e.stopPropagation(),t&&q.dragElement._stopScrolling();let n=G.initEvent(e,{target:this.el,type:`dropout`});if(this.option.out&&this.option.out(n,this._ui(q.dragElement)),this.triggerEvent(`dropout`,n),q.dropElement===this&&(delete q.dropElement,!t)){let t,n=this.el.parentElement;for(;!t&&n;)t=n.ddElement?.ddDroppable,n=n.parentElement;t&&t._mouseEnter(e)}}drop(e){e.preventDefault();let t=G.initEvent(e,{target:this.el,type:`drop`});this.option.drop&&this.option.drop(t,this._ui(q.dragElement)),this.triggerEvent(`drop`,t)}_canDrop(e){return e&&(!this.accept||this.accept(e))}_setupAccept(){return this.option.accept&&(typeof this.option.accept==`string`?this.accept=e=>e.classList.contains(this.option.accept)||e.matches(this.option.accept):this.accept=this.option.accept),this}_ui(e){return{draggable:e.el,...e.ui()}}},bn=class e{static init(t){return t.ddElement||=new e(t),t.ddElement}constructor(e){this.el=e}on(e,t){return this.ddDraggable&&[`drag`,`dragstart`,`dragstop`].indexOf(e)>-1?this.ddDraggable.on(e,t):this.ddDroppable&&[`drop`,`dropover`,`dropout`].indexOf(e)>-1?this.ddDroppable.on(e,t):this.ddResizable&&[`resizestart`,`resize`,`resizestop`].indexOf(e)>-1&&this.ddResizable.on(e,t),this}off(e){return this.ddDraggable&&[`drag`,`dragstart`,`dragstop`].indexOf(e)>-1?this.ddDraggable.off(e):this.ddDroppable&&[`drop`,`dropover`,`dropout`].indexOf(e)>-1?this.ddDroppable.off(e):this.ddResizable&&[`resizestart`,`resize`,`resizestop`].indexOf(e)>-1&&this.ddResizable.off(e),this}setupDraggable(e){return this.ddDraggable?this.ddDraggable.updateOption(e):this.ddDraggable=new vn(this.el,e),this}cleanDraggable(){return this.ddDraggable&&(this.ddDraggable.destroy(),delete this.ddDraggable),this}setupResizable(e){return this.ddResizable?this.ddResizable.updateOption(e):this.ddResizable=new gn(this.el,e),this}cleanResizable(){return this.ddResizable&&(this.ddResizable.destroy(),delete this.ddResizable),this}setupDroppable(e){return this.ddDroppable?this.ddDroppable.updateOption(e):this.ddDroppable=new yn(this.el,e),this}cleanDroppable(){return this.ddDroppable&&(this.ddDroppable.destroy(),delete this.ddDroppable),this}},X=new class{resizable(e,t,n,r){return this._getDDElements(e,t).forEach(e=>{if(t===`disable`||t===`enable`)e.ddResizable&&e.ddResizable[t]();else if(t===`destroy`)e.ddResizable&&e.cleanResizable();else if(t===`option`)e.setupResizable({[n]:r});else{let n=e.el.gridstackNode.grid,r=e.el.getAttribute(`gs-resize-handles`)||n.opts.resizable.handles||`e,s,se`;r===`all`&&(r=`n,e,s,w,se,sw,ne,nw`);let i=!n.opts.alwaysShowResizeHandle;e.setupResizable({...n.opts.resizable,handles:r,autoHide:i,start:t.start,stop:t.stop,resize:t.resize,rtl:t.rtl})}}),this}draggable(e,t,n,r){return this._getDDElements(e,t).forEach(e=>{if(t===`disable`||t===`enable`)e.ddDraggable&&e.ddDraggable[t]();else if(t===`destroy`)e.ddDraggable&&e.cleanDraggable();else if(t===`option`)e.setupDraggable({[n]:r});else{let n=e.el.gridstackNode.grid;e.setupDraggable({...n.opts.draggable,start:t.start,stop:t.stop,drag:t.drag,rtl:t.rtl})}}),this}dragIn(e,t){return this._getDDElements(e).forEach(e=>e.setupDraggable(t)),this}droppable(e,t,n,r){return typeof t.accept==`function`&&!t._accept&&(t._accept=t.accept,t.accept=e=>t._accept(e)),this._getDDElements(e,t).forEach(e=>{t===`disable`||t===`enable`?e.ddDroppable&&e.ddDroppable[t]():t===`destroy`?e.ddDroppable&&e.cleanDroppable():t===`option`?e.setupDroppable({[n]:r}):e.setupDroppable(t)}),this}isDroppable(e){return!!(e?.ddElement?.ddDroppable&&!e.ddElement.ddDroppable.disabled)}isDraggable(e){return!!(e?.ddElement?.ddDraggable&&!e.ddElement.ddDraggable.disabled)}isResizable(e){return!!(e?.ddElement?.ddResizable&&!e.ddElement.ddResizable.disabled)}on(e,t,n){return this._getDDElements(e).forEach(e=>e.on(t,e=>{n(e,q.dragElement?q.dragElement.el:e.target,q.dragElement?q.dragElement.helper:null)})),this}off(e,t){return this._getDDElements(e).forEach(e=>e.off(t)),this}_getDDElements(e,t){let n=e.gridstack||t!==`destroy`&&t!==`disable`,r=G.getElements(e);return r.length?r.map(e=>e.ddElement||(n?bn.init(e):null)).filter(e=>e):[]}},Z=class e{static init(t={},n=`.grid-stack`){if(typeof document>`u`)return null;let r=e.getGridElement(n);return r?(r.gridstack||=new e(r,G.cloneDeep(t)),r.gridstack):(console.error(typeof n==`string`?`GridStack.initAll() no grid was found with selector "`+n+`" - element missing or wrong selector ?
81
81
  Note: ".grid-stack" is required for proper CSS styling and drag/drop, and is the default selector.`:`GridStack.init() no grid element was passed.`),null)}static initAll(t={},n=`.grid-stack`){let r=[];return typeof document>`u`?r:(e.getGridElements(n).forEach(n=>{n.gridstack||=new e(n,G.cloneDeep(t)),r.push(n.gridstack)}),r.length===0&&console.error(`GridStack.initAll() no grid was found with selector "`+n+`" - element missing or wrong selector ?
82
82
  Note: ".grid-stack" is required for proper CSS styling and drag/drop, and is the default selector.`),r)}static addGrid(t,n={}){if(!t)return null;let r=t;if(r.gridstack){let e=r.gridstack;return n&&(e.opts={...e.opts,...n}),n.children!==void 0&&e.load(n.children),e}return(!t.classList.contains(`grid-stack`)||e.addRemoveCB)&&(r=e.addRemoveCB?e.addRemoveCB(t,n,!0,!0):G.createDiv([`grid-stack`,n.class],t)),e.init(n,r)}static registerEngine(t){e.engineClass=t}get placeholder(){if(!this._placeholder){this._placeholder=G.createDiv([this.opts.placeholderClass,K.itemClass,this.opts.itemClass]);let e=G.createDiv([`placeholder-content`],this._placeholder);this.opts.placeholderText&&(e.textContent=this.opts.placeholderText)}return this._placeholder}constructor(t,n={}){this.el=t,this.opts=n,this.animationDelay=310,this._gsEventHandler={},this._extraDragRow=0,this.dragTransform={xScale:1,yScale:1,xOffset:0,yOffset:0},t.gridstack=this,this.opts=n||={},t.classList.contains(`grid-stack`)||this.el.classList.add(`grid-stack`),n.row&&(n.minRow=n.maxRow=n.row,delete n.row);let r=G.toNumber(t.getAttribute(`gs-row`));n.column===`auto`&&delete n.column,n.alwaysShowResizeHandle!==void 0&&(n._alwaysShowResizeHandle=n.alwaysShowResizeHandle);let i=n.columnOpts;if(i){let e=i.breakpoints;!i.columnWidth&&!e?.length?delete n.columnOpts:(i.columnMax=i.columnMax||12,e?.length>1&&e.sort((e,t)=>(t.w||0)-(e.w||0)))}let a={...G.cloneDeep(K),column:G.toNumber(t.getAttribute(`gs-column`))||K.column,minRow:r||G.toNumber(t.getAttribute(`gs-min-row`))||K.minRow,maxRow:r||G.toNumber(t.getAttribute(`gs-max-row`))||K.maxRow,staticGrid:G.toBool(t.getAttribute(`gs-static`))||K.staticGrid,sizeToContent:G.toBool(t.getAttribute(`gs-size-to-content`))||void 0,draggable:{handle:(n.handleClass?`.`+n.handleClass:n.handle?n.handle:``)||K.draggable.handle},removableOptions:{accept:n.itemClass||K.removableOptions.accept,decline:K.removableOptions.decline}};t.getAttribute(`gs-animate`)&&(a.animate=G.toBool(t.getAttribute(`gs-animate`))),n=G.defaults(n,a),this._initMargin(),this.checkDynamicColumn(),this._updateColumnVar(n),n.rtl===`auto`&&(n.rtl=t.style.direction===`rtl`),n.rtl&&this.el.classList.add(`grid-stack-rtl`);let o=this.el.closest(`.`+K.itemClass)?.gridstackNode;if(o&&(o.subGrid=this,this.parentGridNode=o,this.el.classList.add(`grid-stack-nested`),o.el.classList.add(`grid-stack-sub-grid`)),this._isAutoCellHeight=n.cellHeight===`auto`,this._isAutoCellHeight||n.cellHeight===`initial`)this.cellHeight(void 0);else{typeof n.cellHeight==`number`&&n.cellHeightUnit&&n.cellHeightUnit!==K.cellHeightUnit&&(n.cellHeight+=n.cellHeightUnit,delete n.cellHeightUnit);let e=n.cellHeight;delete n.cellHeight,this.cellHeight(e)}n.alwaysShowResizeHandle===`mobile`&&(n.alwaysShowResizeHandle=J),this._setStaticClass();let s=n.engineClass||e.engineClass||an;if(this.engine=new s({column:this.getColumn(),float:n.float,maxRow:n.maxRow,onChange:e=>{e.forEach(e=>{let t=e.el;t&&(e._removeDOM?(t&&t.remove(),delete e._removeDOM):this._writePosAttr(t,e))}),this._updateContainerHeight()}}),n.auto&&(this.batchUpdate(),this.engine._loading=!0,this.getGridItems().forEach(e=>this._prepareElement(e)),delete this.engine._loading,this.batchUpdate(!1)),n.children){let e=n.children;delete n.children,e.length&&this.load(e)}this.setAnimation(),n.subGridDynamic&&!q.pauseDrag&&(q.pauseDrag=!0),n.draggable?.pause!==void 0&&(q.pauseDrag=n.draggable.pause),this._setupRemoveDrop(),this._setupAcceptWidget(),this._updateResizeEvent()}_updateColumnVar(e=this.opts){this.el.classList.add(`gs-`+e.column),typeof e.column==`number`&&this.el.style.setProperty(`--gs-column-width`,`${100/e.column}%`)}addWidget(t){if(!t)return;if(typeof t==`string`){console.error(`V11: GridStack.addWidget() does not support string anymore. see #2736`);return}if(t.ELEMENT_NODE)return console.error(`V11: GridStack.addWidget() does not support HTMLElement anymore. use makeWidget()`),this.makeWidget(t);let n,r=t;if(r.grid=this,n=r.el?r.el:e.addRemoveCB?e.addRemoveCB(this.el,t,!0,!1):this.createWidgetDivs(r),!n)return;if(r=n.gridstackNode,r&&n.parentElement===this.el&&this.engine.nodes.find(e=>e._id===r._id))return n;let i=this._readAttr(n);return G.defaults(t,i),this.engine.prepareNode(t),this.el.appendChild(n),this.makeWidget(n,t),n}createWidgetDivs(t){let n=G.createDiv([`grid-stack-item`,this.opts.itemClass]),r=G.createDiv([`grid-stack-item-content`],n);return G.lazyLoad(t)?t.visibleObservable||(t.visibleObservable=new IntersectionObserver(([n])=>{n.isIntersecting&&(t.visibleObservable?.disconnect(),delete t.visibleObservable,e.renderCB(r,t),t.grid?.prepareDragDrop(t.el))}),window.setTimeout(()=>t.visibleObservable?.observe(n))):e.renderCB(r,t),n}makeSubGrid(t,n,r,i=!0){let a=t.gridstackNode;if(a||=this.makeWidget(t).gridstackNode,a.subGrid?.el)return a.subGrid;let o,s=this;for(;s&&!o;)o=s.opts?.subGridOpts,s=s.parentGridNode?.grid;n=G.cloneDeep({...this.opts,id:void 0,children:void 0,column:`auto`,columnOpts:void 0,layout:`list`,subGridOpts:void 0,...o||{},...n||a.subGridOpts||{}}),a.subGridOpts=n;let c;n.column===`auto`&&(c=!0,n.column=Math.max(a.w||1,r?.w||1),delete n.columnOpts);let l=a.el.querySelector(`.grid-stack-item-content`),u,d;if(i&&(this._removeDD(a.el),d={...a,x:0,y:0},G.removeInternalForSave(d),delete d.subGridOpts,a.content&&(d.content=a.content,delete a.content),e.addRemoveCB?u=e.addRemoveCB(this.el,d,!0,!1):(u=G.createDiv([`grid-stack-item`]),u.appendChild(l),l=G.createDiv([`grid-stack-item-content`],a.el)),this.prepareDragDrop(a.el)),r){let e=c?n.column:a.w,t=a.h+r.h,i=a.el.style;i.transition=`none`,this.update(a.el,{w:e,h:t}),setTimeout(()=>i.transition=null)}let f=a.subGrid=e.addGrid(l,n);return r?._moving&&(f._isTemp=!0),c&&(f._autoColumn=!0),i&&f.makeWidget(u,d),r&&(r._moving?window.setTimeout(()=>G.simulateMouseEvent(r._event,`mouseenter`,f.el),0):f.makeWidget(a.el,a)),this.resizeToContentCheck(!1,a),f}removeAsSubGrid(e){let t=this.parentGridNode?.grid;t&&(t.batchUpdate(),t.removeWidget(this.parentGridNode.el,!0,!0),this.engine.nodes.forEach(e=>{e.x+=this.parentGridNode.x,e.y+=this.parentGridNode.y,t.makeWidget(e.el,e)}),t.batchUpdate(!1),this.parentGridNode&&delete this.parentGridNode.subGrid,delete this.parentGridNode,e&&window.setTimeout(()=>G.simulateMouseEvent(e._event,`mouseenter`,t.el),0))}save(t=!0,n=!1,r=e.saveCB,i){let a=this.engine.save(t,r,i);if(a.forEach(e=>{if(t&&e.el&&!e.subGrid&&!r)e.content=e.el.querySelector(`.grid-stack-item-content`)?.innerHTML,e.content||delete e.content;else if(!t&&!r&&delete e.content,e.subGrid?.el){let i=e.w||e.subGrid.getColumn(),a=e.subGrid.save(t,n,r,i);e.subGridOpts=n?a:{children:a},delete e.subGrid}delete e.el}),n){let e=G.cloneDeep(this.opts);e.marginBottom===e.marginTop&&e.marginRight===e.marginLeft&&e.marginTop===e.marginRight&&(e.margin=e.marginTop,delete e.marginTop,delete e.marginRight,delete e.marginBottom,delete e.marginLeft),e.rtl===(this.el.style.direction===`rtl`)&&(e.rtl=`auto`),this._isAutoCellHeight&&(e.cellHeight=`auto`),this._autoColumn&&(e.column=`auto`);let t=e._alwaysShowResizeHandle;return delete e._alwaysShowResizeHandle,t===void 0?delete e.alwaysShowResizeHandle:e.alwaysShowResizeHandle=t,G.removeInternalAndSame(e,K),e.children=a,e}return a}load(t,n=e.addRemoveCB||!0){t.forEach(e=>{e.w=e.w||e.minW||1,e.h=e.h||e.minH||1}),t=G.sort(t),this.engine.skipCacheUpdate=this._ignoreLayoutsNodeChange=!0;let r=0;t.forEach(e=>{r=Math.max(r,(e.x||0)+e.w)}),r>this.engine.defaultColumn&&(this.engine.defaultColumn=r);let i=this.getColumn();r>i&&(this.engine.nodes.length===0&&this.responseLayout?(this.engine.nodes=t,this.engine.columnChanged(r,i,this.responseLayout),t=this.engine.nodes,this.engine.nodes=[],delete this.responseLayout):this.engine.cacheLayout(t,r,!0));let a=e.addRemoveCB;typeof n==`function`&&(e.addRemoveCB=n);let o=[];this.batchUpdate();let s=!this.engine.nodes.length,c=s&&this.opts.animate;c&&this.setAnimation(!1),!s&&n&&[...this.engine.nodes].forEach(n=>{n.id&&(G.find(t,n.id)||(e.addRemoveCB&&e.addRemoveCB(this.el,n,!1,!1),o.push(n),this.removeWidget(n.el,!0,!1)))}),this.engine._loading=!0;let l=[];return this.engine.nodes=this.engine.nodes.filter(e=>G.find(t,e.id)?(l.push(e),!1):!0),t.forEach(e=>{let t=G.find(l,e.id);if(t){if(G.shouldSizeToContent(t)&&(e.h=t.h),this.engine.nodeBoundFix(e),(e.autoPosition||e.x===void 0||e.y===void 0)&&(e.w=e.w||t.w,e.h=e.h||t.h,this.engine.findEmptyPosition(e)),this.engine.nodes.push(t),G.samePos(t,e)&&this.engine.nodes.length>1&&(this.moveNode(t,{...e,forceCollide:!0}),G.copyPos(e,t)),this.update(t.el,e),e.subGridOpts?.children){let n=t.el.querySelector(`.grid-stack`);n&&n.gridstack&&n.gridstack.load(e.subGridOpts.children)}}else n&&this.addWidget(e)}),delete this.engine._loading,this.engine.removedNodes=o,this.batchUpdate(!1),delete this._ignoreLayoutsNodeChange,delete this.engine.skipCacheUpdate,a?e.addRemoveCB=a:delete e.addRemoveCB,c&&this.setAnimation(!0,!0),this}batchUpdate(e=!0){return this.engine.batchUpdate(e),e||(this._updateContainerHeight(),this._triggerRemoveEvent(),this._triggerAddEvent(),this._triggerChangeEvent()),this}getCellHeight(e=!1){if(this.opts.cellHeight&&this.opts.cellHeight!==`auto`&&(!e||!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 t=this.el.querySelector(`.`+this.opts.itemClass);if(t){let e=G.toNumber(t.getAttribute(`gs-h`))||1;return Math.round(t.offsetHeight/e)}let n=parseInt(this.el.getAttribute(`gs-current-row`));return n?Math.round(this.el.getBoundingClientRect().height/n):this.opts.cellHeight}cellHeight(e){if(e!==void 0&&this._isAutoCellHeight!==(e===`auto`)&&(this._isAutoCellHeight=e===`auto`,this._updateResizeEvent()),(e===`initial`||e===`auto`)&&(e=void 0),e===void 0){let t=-this.opts.marginRight-this.opts.marginLeft+this.opts.marginTop+this.opts.marginBottom;e=this.cellWidth()+t}let t=G.parseHeight(e);return this.opts.cellHeightUnit===t.unit&&this.opts.cellHeight===t.h?this:(this.opts.cellHeightUnit=t.unit,this.opts.cellHeight=t.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(e=!1){return e&&this.opts.columnOpts?.breakpointForWindow?window.innerWidth:this.el.clientWidth||this.el.parentElement.clientWidth||window.innerWidth}checkDynamicColumn(){let e=this.opts.columnOpts;if(!e||!e.columnWidth&&!e.breakpoints?.length)return!1;let t=this.getColumn(),n=t,r=this._widthOrContainer(!0);if(e.columnWidth)n=Math.min(Math.round(r/e.columnWidth)||1,e.columnMax);else{n=e.columnMax;let i=0;for(;i<e.breakpoints.length&&r<=e.breakpoints[i].w;)n=e.breakpoints[i++].c||t}if(n!==t){let t=e.breakpoints?.find(e=>e.c===n);return this.column(n,t?.layout||e.layout),!0}return!1}compact(e=`compact`,t=!0){return this.engine.compact(e,t),this._triggerChangeEvent(),this}column(e,t=`moveScale`){if(!e||e<1||this.opts.column===e)return this;let n=this.getColumn();return this.opts.column=e,this.engine?(this.engine.column=e,this.el.classList.remove(`gs-`+n),this._updateColumnVar(),this.engine.columnChanged(n,e,t),this._isAutoCellHeight&&this.cellHeight(),this.resizeToContentCheck(!0),this._ignoreLayoutsNodeChange=!0,this._triggerChangeEvent(),delete this._ignoreLayoutsNodeChange,this):(this.responseLayout=t,this)}getColumn(){return this.opts.column}getGridItems(){return Array.from(this.el.children).filter(e=>e.matches(`.`+this.opts.itemClass)&&!e.matches(`.`+this.opts.placeholderClass))}isIgnoreChangeCB(){return this._ignoreLayoutsNodeChange}destroy(e=!0){if(this.el)return this.offAll(),this._updateResizeEvent(!0),this.setStatic(!0,!1),this.setAnimation(!1),e?this.el.parentNode.removeChild(this.el):(this.removeAll(e),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(e){return this.opts.float!==e&&(this.opts.float=this.engine.float=e,this._triggerChangeEvent()),this}getFloat(){return this.engine.float}getCellFromPixel(e,t=!1){let n=this.el.getBoundingClientRect(),r;r=t?{top:n.top+document.documentElement.scrollTop,left:n.left}:{top:this.el.offsetTop,left:this.el.offsetLeft};let i=e.left-r.left,a=e.top-r.top,o=n.width/this.getColumn(),s=n.height/parseInt(this.el.getAttribute(`gs-current-row`));return{x:Math.floor(i/o),y:Math.floor(a/s)}}getRow(){return Math.max(this.engine.getRow(),this.opts.minRow||0)}isAreaEmpty(e,t,n,r){return this.engine.isAreaEmpty(e,t,n,r)}makeWidget(t,n){let r=e.getElement(t);if(!r||r.gridstackNode)return r;r.parentElement||this.el.appendChild(r),this._prepareElement(r,!0,n);let i=r.gridstackNode;this._updateContainerHeight(),i.subGridOpts&&this.makeSubGrid(r,i.subGridOpts,void 0,!1);let a;return this.opts.column===1&&!this._ignoreLayoutsNodeChange&&(a=this._ignoreLayoutsNodeChange=!0),this._triggerAddEvent(),this._triggerChangeEvent(),a&&delete this._ignoreLayoutsNodeChange,r}on(e,t){return e.indexOf(` `)===-1?(e===`change`||e===`added`||e===`removed`||e===`enable`||e===`disable`?(e===`enable`||e===`disable`?this._gsEventHandler[e]=e=>t(e):this._gsEventHandler[e]=e=>{e.detail&&t(e,e.detail)},this.el.addEventListener(e,this._gsEventHandler[e])):e===`drag`||e===`dragstart`||e===`dragstop`||e===`resizestart`||e===`resize`||e===`resizestop`||e===`dropped`||e===`resizecontent`?this._gsEventHandler[e]=t:console.error(`GridStack.on(`+e+`) event not supported`),this):(e.split(` `).forEach(e=>this.on(e,t)),this)}off(e){return e.indexOf(` `)===-1?((e===`change`||e===`added`||e===`removed`||e===`enable`||e===`disable`)&&this._gsEventHandler[e]&&this.el.removeEventListener(e,this._gsEventHandler[e]),delete this._gsEventHandler[e],this):(e.split(` `).forEach(e=>this.off(e)),this)}offAll(){return Object.keys(this._gsEventHandler).forEach(e=>this.off(e)),this}removeWidget(t,n=!0,r=!0){return t?(e.getElements(t).forEach(t=>{if(t.parentElement&&t.parentElement!==this.el)return;let i=t.gridstackNode;i||=this.engine.nodes.find(e=>t===e.el),i&&(n&&e.addRemoveCB&&e.addRemoveCB(this.el,i,!1,!1),delete t.gridstackNode,this._removeDD(t),this.engine.removeNode(i,n,r),n&&t.parentElement&&t.remove())}),r&&(this._triggerRemoveEvent(),this._triggerChangeEvent()),this):(console.error(`Error: GridStack.removeWidget(undefined) called`),this)}removeAll(t=!0,n=!0){return this.engine.nodes.forEach(n=>{t&&e.addRemoveCB&&e.addRemoveCB(this.el,n,!1,!1),delete n.el.gridstackNode,this.opts.staticGrid||this._removeDD(n.el)}),this.engine.removeAll(t,n),n&&this._triggerRemoveEvent(),this}setAnimation(e=this.opts.animate,t){return t?setTimeout(()=>{this.opts&&this.setAnimation(e)}):e?this.el.classList.add(`grid-stack-animate`):this.el.classList.remove(`grid-stack-animate`),this.opts.animate=e,this}hasAnimationCSS(){return this.el.classList.contains(`grid-stack-animate`)}setStatic(e,t=!0,n=!0){return!!this.opts.staticGrid===e?this:(e?this.opts.staticGrid=!0:delete this.opts.staticGrid,this._setupRemoveDrop(),this._setupAcceptWidget(),this.engine.nodes.forEach(r=>{this.prepareDragDrop(r.el),r.subGrid&&n&&r.subGrid.setStatic(e,t,n)}),t&&this._setStaticClass(),this)}updateOptions(e){let t=this.opts;if(e===t)return this;if(e.acceptWidgets!==void 0&&(t.acceptWidgets=e.acceptWidgets,this._setupAcceptWidget()),e.animate!==void 0&&this.setAnimation(e.animate),e.cellHeight&&this.cellHeight(e.cellHeight),e.class!==void 0&&e.class!==t.class&&(t.class&&this.el.classList.remove(t.class),e.class&&this.el.classList.add(e.class)),e.columnOpts){let t=!!this.opts.columnOpts;this.opts.columnOpts=e.columnOpts,t!==!!this.opts.columnOpts&&this._updateResizeEvent(),this.checkDynamicColumn()}else e.columnOpts===null&&this.opts.columnOpts?(delete this.opts.columnOpts,this._updateResizeEvent()):typeof e.column==`number`&&this.column(e.column);return e.margin!==void 0&&this.margin(e.margin),e.staticGrid!==void 0&&this.setStatic(e.staticGrid),e.disableDrag!==void 0&&!e.staticGrid&&this.enableMove(!e.disableDrag),e.disableResize!==void 0&&!e.staticGrid&&this.enableResize(!e.disableResize),e.float!==void 0&&this.float(e.float),e.row===void 0?(e.minRow!==void 0&&(t.minRow=e.minRow,this._updateContainerHeight()),e.maxRow!==void 0&&(t.maxRow=this.engine.maxRow=e.maxRow)):(t.minRow=t.maxRow=t.row=e.row,this._updateContainerHeight()),e.lazyLoad!==void 0&&(t.lazyLoad=e.lazyLoad),e.children?.length&&this.load(e.children),this}update(t,n){return e.getElements(t).forEach(t=>{let r=t?.gridstackNode;if(!r)return;let i={...G.copyPos({},r),...G.cloneDeep(n)};this.engine.nodeBoundFix(i),delete i.autoPosition;let a=[`x`,`y`,`w`,`h`],o;if(a.some(e=>i[e]!==void 0&&i[e]!==r[e])&&(o={},a.forEach(e=>{o[e]=i[e]===void 0?r[e]:i[e],delete i[e]})),!o&&(i.minW||i.minH||i.maxW||i.maxH)&&(o={}),i.content!==void 0){let n=t.querySelector(`.grid-stack-item-content`);n&&n.textContent!==i.content&&(r.content=i.content,e.renderCB(n,i),r.subGrid?.el&&(n.appendChild(r.subGrid.el),r.subGrid._updateContainerHeight())),delete i.content}let s=!1,c=!1;for(let e in i)e[0]!==`_`&&r[e]!==i[e]&&(r[e]=i[e],s=!0,c||=!this.opts.staticGrid&&(e===`noResize`||e===`noMove`||e===`locked`));if(G.sanitizeMinMax(r),o){let e=o.w!==void 0&&o.w!==r.w;this.moveNode(r,o),e&&r.subGrid?r.subGrid.onResize(this.hasAnimationCSS()?r.w:void 0):this.resizeToContentCheck(e,r),delete r._orig}(o||s)&&this._writeAttr(t,r),c&&this.prepareDragDrop(r.el),e.updateCB&&e.updateCB(r)}),this}moveNode(e,t){let n=e._updating;n||this.engine.cleanNodes().beginUpdate(e),this.engine.moveNode(e,t),this._updateContainerHeight(),n||(this._triggerChangeEvent(),this.engine.endUpdate())}resizeToContent(t){if(!t||(t.classList.remove(`size-to-content-max`),!t.clientHeight))return;let n=t.gridstackNode;if(!n)return;let r=n.grid;if(!r||t.parentElement!==r.el)return;let i=r.getCellHeight(!0);if(!i)return;let a=n.h?n.h*i:t.clientHeight,o;if(n.resizeToContentParent&&(o=t.querySelector(n.resizeToContentParent)),o||=t.querySelector(e.resizeToContentParent),!o)return;let s=t.clientHeight-o.clientHeight,c=n.h?n.h*i-s:o.clientHeight,l;if(n.subGrid){l=n.subGrid.getRow()*n.subGrid.getCellHeight(!0);let e=n.subGrid.el.getBoundingClientRect(),r=t.getBoundingClientRect();l+=e.top-r.top}else if(n.subGridOpts?.children?.length)return;else{let t=o.firstElementChild;if(!t){console.error(`Error: GridStack.resizeToContent() widget id:${n.id} '${e.resizeToContentParent}'.firstElementChild is null, make sure to have a div like container. Skipping sizing.`);return}l=t.getBoundingClientRect().height||c}if(c===l)return;a+=l-c;let u=Math.ceil(a/i),d=Number.isInteger(n.sizeToContent)?n.sizeToContent:0;d&&u>d&&(u=d,t.classList.add(`size-to-content-max`)),n.minH&&u<n.minH?u=n.minH:n.maxH&&u>n.maxH&&(u=n.maxH),u!==n.h&&(r._ignoreLayoutsNodeChange=!0,r.moveNode(n,{h:u}),delete r._ignoreLayoutsNodeChange)}resizeToContentCBCheck(t){e.resizeToContentCB?e.resizeToContentCB(t):this.resizeToContent(t)}rotate(t,n){return e.getElements(t).forEach(e=>{let t=e.gridstackNode;if(!G.canBeRotated(t))return;let r={w:t.h,h:t.w,minH:t.minW,minW:t.minH,maxH:t.maxW,maxW:t.maxH};if(n){let e=n.left>0?Math.floor(n.left/this.cellWidth()):0,i=n.top>0?Math.floor(n.top/this.opts.cellHeight):0;r.x=t.x+e-(t.h-(i+1)),r.y=t.y+i-e}Object.keys(r).forEach(e=>{r[e]===void 0&&delete r[e]});let i=t._orig;this.update(e,r),t._orig=i}),this}margin(e){if(!(typeof e==`string`&&e.split(` `).length>1)){let t=G.parseHeight(e);if(this.opts.marginUnit===t.unit&&this.opts.margin===t.h)return}return this.opts.margin=e,this.opts.marginTop=this.opts.marginBottom=this.opts.marginLeft=this.opts.marginRight=void 0,this._initMargin(),this}getMargin(){return this.opts.margin}willItFit(e){return this.engine.willItFit(e)}_triggerChangeEvent(){if(this.engine.batchMode)return this;let e=this.engine.getDirtyNodes(!0);return e&&e.length&&(this._ignoreLayoutsNodeChange||this.engine.layoutsNodesChange(e),this._triggerEvent(`change`,e)),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(e=>{delete e._dirty});let e=[...this.engine.addedNodes];this.engine.addedNodes=[],this._triggerEvent(`added`,e)}return this}_triggerRemoveEvent(){if(this.engine.batchMode)return this;if(this.engine.removedNodes?.length){let e=[...this.engine.removedNodes];this.engine.removedNodes=[],this._triggerEvent(`removed`,e)}return this}_triggerEvent(e,t){let n=t?new CustomEvent(e,{bubbles:!1,detail:t}):new Event(e),r=this;for(;r.parentGridNode;)r=r.parentGridNode.grid;return r.el.dispatchEvent(n),this}_updateContainerHeight(){if(!this.engine||this.engine.batchMode)return this;let e=this.parentGridNode,t=this.getRow()+this._extraDragRow,n=this.opts.cellHeight,r=this.opts.cellHeightUnit;if(!n)return this;if(!e&&!this.opts.minRow){let e=G.parseHeight(getComputedStyle(this.el).minHeight);if(e.h>0&&e.unit===r){let r=Math.floor(e.h/n);t<r&&(t=r)}}return this.el.setAttribute(`gs-current-row`,String(t)),this.el.style.removeProperty(`min-height`),this.el.style.removeProperty(`height`),t&&(this.el.style[e?`minHeight`:`height`]=t*n+r),e&&G.shouldSizeToContent(e)&&e.grid.resizeToContentCBCheck(e.el),this}_prepareElement(e,t=!1,n){n||=this._readAttr(e),e.gridstackNode=n,n.el=e,n.grid=this,n=this.engine.addNode(n,t),this._writeAttr(e,n),e.classList.add(K.itemClass,this.opts.itemClass);let r=G.shouldSizeToContent(n);return r?e.classList.add(`size-to-content`):e.classList.remove(`size-to-content`),r&&this.resizeToContentCheck(!1,n),G.lazyLoad(n)||this.prepareDragDrop(n.el),this}_writePosAttr(e,t){if(!t._moving&&!t._resizing||this._placeholder===e){let n=this.opts.rtl?`right`:`left`;e.style.top=t.y?t.y===1?`var(--gs-cell-height)`:`calc(${t.y} * var(--gs-cell-height))`:null,e.style[n]=t.x?t.x===1?`var(--gs-column-width)`:`calc(${t.x} * var(--gs-column-width))`:null,e.style.width=t.w>1?`calc(${t.w} * var(--gs-column-width))`:null,e.style.height=t.h>1?`calc(${t.h} * var(--gs-cell-height))`:null}return e.setAttribute(`gs-x`,String(t.x)),e.setAttribute(`gs-y`,String(t.y)),t.w>1?e.setAttribute(`gs-w`,String(t.w)):e.removeAttribute(`gs-w`),t.h>1?e.setAttribute(`gs-h`,String(t.h)):e.removeAttribute(`gs-h`),this}_writeAttr(e,t){if(!t)return this;this._writePosAttr(e,t);let n={noResize:`gs-no-resize`,noMove:`gs-no-move`,locked:`gs-locked`,id:`gs-id`,sizeToContent:`gs-size-to-content`};for(let r in n)t[r]?e.setAttribute(n[r],String(t[r])):e.removeAttribute(n[r]);return this}_readAttr(e,t=!0){let n={};n.x=G.toNumber(e.getAttribute(`gs-x`)),n.y=G.toNumber(e.getAttribute(`gs-y`)),n.w=G.toNumber(e.getAttribute(`gs-w`)),n.h=G.toNumber(e.getAttribute(`gs-h`)),n.autoPosition=G.toBool(e.getAttribute(`gs-auto-position`)),n.noResize=G.toBool(e.getAttribute(`gs-no-resize`)),n.noMove=G.toBool(e.getAttribute(`gs-no-move`)),n.locked=G.toBool(e.getAttribute(`gs-locked`));let r=e.getAttribute(`gs-size-to-content`);r&&(r===`true`||r===`false`?n.sizeToContent=G.toBool(r):n.sizeToContent=parseInt(r,10)),n.id=e.getAttribute(`gs-id`),n.maxW=G.toNumber(e.getAttribute(`gs-max-w`)),n.minW=G.toNumber(e.getAttribute(`gs-min-w`)),n.maxH=G.toNumber(e.getAttribute(`gs-max-h`)),n.minH=G.toNumber(e.getAttribute(`gs-min-h`)),t&&(n.w===1&&e.removeAttribute(`gs-w`),n.h===1&&e.removeAttribute(`gs-h`),n.maxW&&e.removeAttribute(`gs-max-w`),n.minW&&e.removeAttribute(`gs-min-w`),n.maxH&&e.removeAttribute(`gs-max-h`),n.minH&&e.removeAttribute(`gs-min-h`));for(let e in n){if(!n.hasOwnProperty(e))return;!n[e]&&n[e]!==0&&e!==`sizeToContent`&&delete n[e]}return n}_setStaticClass(){let e=[`grid-stack-static`];return this.opts.staticGrid?(this.el.classList.add(...e),this.el.setAttribute(`gs-static`,`true`)):(this.el.classList.remove(...e),this.el.removeAttribute(`gs-static`)),this}onResize(e=this.el?.clientWidth){if(!e||this.prevWidth===e)return;this.prevWidth=e,this.batchUpdate();let t=!1;return this._autoColumn&&this.parentGridNode?this.opts.column!==this.parentGridNode.w&&(this.column(this.parentGridNode.w,this.opts.layout||`list`),t=!0):t=this.checkDynamicColumn(),this._isAutoCellHeight&&this.cellHeight(),this.engine.nodes.forEach(e=>{e.subGrid&&e.subGrid.onResize()}),this._skipInitialResize||this.resizeToContentCheck(t),delete this._skipInitialResize,this.batchUpdate(!1),this}resizeToContentCheck(e=!1,t=void 0){if(this.engine){if(e&&this.hasAnimationCSS())return setTimeout(()=>this.resizeToContentCheck(!1,t),this.animationDelay);if(t)G.shouldSizeToContent(t)&&this.resizeToContentCBCheck(t.el);else if(this.engine.nodes.some(e=>G.shouldSizeToContent(e))){let e=[...this.engine.nodes];this.batchUpdate(),e.forEach(e=>{G.shouldSizeToContent(e)&&this.resizeToContentCBCheck(e.el)}),this._ignoreLayoutsNodeChange=!0,this.batchUpdate(!1),this._ignoreLayoutsNodeChange=!1}this._gsEventHandler.resizecontent&&this._gsEventHandler.resizecontent(null,t?[t]:this.engine.nodes)}}_updateResizeEvent(e=!1){let t=!this.parentGridNode&&(this._isAutoCellHeight||this.opts.sizeToContent||this.opts.columnOpts||this.engine.nodes.find(e=>e.sizeToContent));return!e&&t&&!this.resizeObserver?(this._sizeThrottle=G.throttle(()=>this.onResize(),this.opts.cellHeightThrottle),this.resizeObserver=new ResizeObserver(()=>this._sizeThrottle()),this.resizeObserver.observe(this.el),this._skipInitialResize=!0):(e||!t)&&this.resizeObserver&&(this.resizeObserver.disconnect(),delete this.resizeObserver,delete this._sizeThrottle),this}static getElement(e=`.grid-stack-item`){return G.getElement(e)}static getElements(e=`.grid-stack-item`){return G.getElements(e)}static getGridElement(t){return e.getElement(t)}static getGridElements(e){return G.getElements(e)}_initMargin(){let e,t=0,n=[];typeof this.opts.margin==`string`&&(n=this.opts.margin.split(` `)),n.length===2?(this.opts.marginTop=this.opts.marginBottom=n[0],this.opts.marginLeft=this.opts.marginRight=n[1]):n.length===4?(this.opts.marginTop=n[0],this.opts.marginRight=n[1],this.opts.marginBottom=n[2],this.opts.marginLeft=n[3]):(e=G.parseHeight(this.opts.margin),this.opts.marginUnit=e.unit,t=this.opts.margin=e.h),[`marginTop`,`marginRight`,`marginBottom`,`marginLeft`].forEach(n=>{this.opts[n]===void 0?this.opts[n]=t:(e=G.parseHeight(this.opts[n]),this.opts[n]=e.h,delete this.opts.margin)}),this.opts.marginUnit=e.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 r=this.el.style;return r.setProperty(`--gs-item-margin-top`,`${this.opts.marginTop}${this.opts.marginUnit}`),r.setProperty(`--gs-item-margin-bottom`,`${this.opts.marginBottom}${this.opts.marginUnit}`),r.setProperty(`--gs-item-margin-right`,`${this.opts.marginRight}${this.opts.marginUnit}`),r.setProperty(`--gs-item-margin-left`,`${this.opts.marginLeft}${this.opts.marginUnit}`),this}static getDD(){return X}static setupDragIn(e,t,n,r=document){t?.pause!==void 0&&(q.pauseDrag=t.pause),t={appendTo:`body`,helper:`clone`,...t||{}},(typeof e==`string`?G.getElements(e,r):e).forEach((e,r)=>{X.isDraggable(e)||X.dragIn(e,t),n?.[r]&&(e.gridstackNode=n[r])})}movable(t,n){return this.opts.staticGrid||e.getElements(t).forEach(e=>{let t=e.gridstackNode;t&&(n?delete t.noMove:t.noMove=!0,this.prepareDragDrop(t.el))}),this}resizable(t,n){return this.opts.staticGrid||e.getElements(t).forEach(e=>{let t=e.gridstackNode;t&&(n?delete t.noResize:t.noResize=!0,this.prepareDragDrop(t.el))}),this}disable(e=!0){if(!this.opts.staticGrid)return this.enableMove(!1,e),this.enableResize(!1,e),this._triggerEvent(`disable`),this}enable(e=!0){if(!this.opts.staticGrid)return this.enableMove(!0,e),this.enableResize(!0,e),this._triggerEvent(`enable`),this}enableMove(e,t=!0){return this.opts.staticGrid?this:(e?delete this.opts.disableDrag:this.opts.disableDrag=!0,this.engine.nodes.forEach(n=>{this.prepareDragDrop(n.el),n.subGrid&&t&&n.subGrid.enableMove(e,t)}),this)}enableResize(e,t=!0){return this.opts.staticGrid?this:(e?delete this.opts.disableResize:this.opts.disableResize=!0,this.engine.nodes.forEach(n=>{this.prepareDragDrop(n.el),n.subGrid&&t&&n.subGrid.enableResize(e,t)}),this)}cancelDrag(){let t=this._placeholder?.gridstackNode;t&&(t._isExternal?(t._isAboutToRemove=!0,this.engine.removeNode(t)):t._isAboutToRemove&&e._itemRemoving(t.el,!1),this.engine.restoreInitial())}_removeDD(e){return X.draggable(e,`destroy`).resizable(e,`destroy`),e.gridstackNode&&delete e.gridstackNode._initDD,delete e.ddElement,this}_setupAcceptWidget(){if(this.opts.staticGrid||!this.opts.acceptWidgets&&!this.opts.removable)return X.droppable(this.el,`destroy`),this;let t,n,r=(e,r,i)=>{i||=r;let a=i.gridstackNode;if(!a)return;if(!a.grid?.el){i.style.transform=`scale(${1/this.dragTransform.xScale},${1/this.dragTransform.yScale})`;let t=i.getBoundingClientRect();i.style.left=t.x+(this.dragTransform.xScale-1)*(e.clientX-t.x)/this.dragTransform.xScale+`px`,i.style.top=t.y+(this.dragTransform.yScale-1)*(e.clientY-t.y)/this.dragTransform.yScale+`px`,i.style.transformOrigin=`0px 0px`}let{top:o,left:s}=i.getBoundingClientRect(),c=this.el.getBoundingClientRect();s-=c.left,o-=c.top;let l={position:{top:o*this.dragTransform.xScale,left:s*this.dragTransform.yScale}};if(a._temporaryRemoved){if(a.x=Math.max(0,Math.round(s/n)),a.y=Math.max(0,Math.round(o/t)),delete a.autoPosition,this.engine.nodeBoundFix(a),!this.engine.willItFit(a)){if(a.autoPosition=!0,!this.engine.willItFit(a)){X.off(r,`drag`);return}a._willFitPos&&(G.copyPos(a,a._willFitPos),delete a._willFitPos)}this._onStartMoving(i,e,l,a,n,t)}else this._dragOrResize(i,e,l,a,n,t)};return X.droppable(this.el,{accept:e=>{let t=e.gridstackNode||this._readAttr(e,!1);if(t?.grid===this)return!0;if(!this.opts.acceptWidgets)return!1;let n=!0;if(typeof this.opts.acceptWidgets==`function`)n=this.opts.acceptWidgets(e);else{let t=this.opts.acceptWidgets===!0?`.grid-stack-item`:this.opts.acceptWidgets;n=e.matches(t)}if(n&&t&&this.opts.maxRow){let e={w:t.w,h:t.h,minW:t.minW,minH:t.minH};n=this.engine.willItFit(e)}return n}}).on(this.el,`dropover`,(i,a,o)=>{let s=o?.gridstackNode||a.gridstackNode;if(s?.grid===this&&!s._temporaryRemoved)return!1;if(s?._sidebarOrig&&(s.w=s._sidebarOrig.w,s.h=s._sidebarOrig.h),s?.grid&&s.grid!==this&&!s._temporaryRemoved&&s.grid._leave(a,o),o||=a,n=this.cellWidth(),t=this.getCellHeight(!0),!s){let e=o.getAttribute(`data-gs-widget`)||o.getAttribute(`gridstacknode`);if(e){try{s=JSON.parse(e)}catch{console.error(`Gridstack dropover: Bad JSON format: `,e)}o.removeAttribute(`data-gs-widget`),o.removeAttribute(`gridstacknode`)}s||=this._readAttr(o),s._sidebarOrig={w:s.w,h:s.h}}s.grid||(s.el||(s={...s}),s._isExternal=!0,o.gridstackNode=s);let c=s.w||Math.round(o.offsetWidth/n)||1,l=s.h||Math.round(o.offsetHeight/t)||1;return s.grid&&s.grid!==this?(a._gridstackNodeOrig||=s,a.gridstackNode=s={...s,w:c,h:l,grid:this},delete s.x,delete s.y,this.engine.cleanupNode(s).nodeBoundFix(s),s._initDD=s._isExternal=s._temporaryRemoved=!0):(s.w=c,s.h=l,s._temporaryRemoved=!0),e._itemRemoving(s.el,!1),X.on(a,`drag`,r),r(i,a,o),!1}).on(this.el,`dropout`,(e,t,n)=>{let r=n?.gridstackNode||t.gridstackNode;return r&&(!r.grid||r.grid===this)&&(this._leave(t,n),this._isTemp&&this.removeAsSubGrid(r)),!1}).on(this.el,`drop`,(t,n,r)=>{let i=r?.gridstackNode||n.gridstackNode;if(i?.grid===this&&!i._isExternal)return!1;let a=!!this.placeholder.parentElement,o=n!==r;this.placeholder.remove(),delete this.placeholder.gridstackNode,a&&this.opts.animate&&(this.setAnimation(!1),this.setAnimation(!0,!0));let s=n._gridstackNodeOrig;if(delete n._gridstackNodeOrig,a&&s?.grid&&s.grid!==this){let e=s.grid;e.engine.removeNodeFromLayoutCache(s),e.engine.removedNodes.push(s),e._triggerRemoveEvent()._triggerChangeEvent(),e.parentGridNode&&!e.engine.nodes.length&&e.opts.subGridDynamic&&e.removeAsSubGrid()}if(!i||(a&&(this.engine.cleanupNode(i),i.grid=this),delete i.grid?._isTemp,X.off(n,`drag`),r===n?n.remove():(r.remove(),n=r),this._removeDD(n),!a))return!1;let c=i.subGrid?.el?.gridstack;return G.copyPos(i,this._readAttr(this.placeholder)),G.removePositioningStyles(n),o&&(i.content||i.subGridOpts||e.addRemoveCB)?(delete i.el,n=this.addWidget(i)):(this._prepareElement(n,!0,i),this.el.appendChild(n),this.resizeToContentCheck(!1,i),c&&(c.parentGridNode=i),this._updateContainerHeight()),this.engine.addedNodes.push(i),this._triggerAddEvent(),this._triggerChangeEvent(),this.engine.endUpdate(),this._gsEventHandler.dropped&&this._gsEventHandler.dropped({...t,type:`dropped`},s&&s.grid?s:void 0,i),!1}),this}static _itemRemoving(e,t){if(!e)return;let n=e?e.gridstackNode:void 0;!n?.grid||e.classList.contains(n.grid.opts.removableOptions.decline)||(t?n._isAboutToRemove=!0:delete n._isAboutToRemove,t?e.classList.add(`grid-stack-item-removing`):e.classList.remove(`grid-stack-item-removing`))}_setupRemoveDrop(){if(typeof this.opts.removable!=`string`)return this;let t=document.querySelector(this.opts.removable);return t&&!this.opts.staticGrid&&!X.isDroppable(t)&&X.droppable(t,this.opts.removableOptions).on(t,`dropover`,(t,n)=>e._itemRemoving(n,!0)).on(t,`dropout`,(t,n)=>e._itemRemoving(n,!1)),this}prepareDragDrop(e,t=!1){let n=e?.gridstackNode;if(!n)return;let r=n.noMove||this.opts.disableDrag,i=n.noResize||this.opts.disableResize,a=this.opts.staticGrid||r&&i;if((t||a)&&(n._initDD&&(this._removeDD(e),delete n._initDD),a))return e.classList.add(`ui-draggable-disabled`,`ui-resizable-disabled`),this;if(!n._initDD){let t,r,i=(i,a)=>{this.triggerEvent(i,i.target),t=this.cellWidth(),r=this.getCellHeight(!0),this._onStartMoving(e,i,a,n,t,r)},a=(i,a)=>{this._dragOrResize(e,i,a,n,t,r)},o=t=>{this.placeholder.remove(),delete this.placeholder.gridstackNode,delete n._moving,delete n._resizing,delete n._event,delete n._lastTried;let r=n.w!==n._orig.w,i=t.target;if(!(!i.gridstackNode||i.gridstackNode.grid!==this)){if(n.el=i,n._isAboutToRemove){let r=e.gridstackNode.grid;r._gsEventHandler[t.type]&&r._gsEventHandler[t.type](t,i),r.engine.nodes.push(n),r.removeWidget(e,!0,!0)}else G.removePositioningStyles(i),n._temporaryRemoved?(this._writePosAttr(i,n),this.engine.addNode(n)):this._writePosAttr(i,n),this.triggerEvent(t,i);this._extraDragRow=0,this._updateContainerHeight(),this._triggerChangeEvent(),this.engine.endUpdate(),t.type===`resizestop`&&(Number.isInteger(n.sizeToContent)&&(n.sizeToContent=n.h),this.resizeToContentCheck(r,n))}};X.draggable(e,{start:i,stop:o,drag:a,rtl:this.opts.rtl}).resizable(e,{start:i,stop:o,resize:a,rtl:this.opts.rtl}),n._initDD=!0}return X.draggable(e,r?`disable`:`enable`).resizable(e,i?`disable`:`enable`),this}_onStartMoving(e,t,n,r,i,a){if(this.engine.cleanNodes().beginUpdate(r),this._writePosAttr(this.placeholder,r),this.el.appendChild(this.placeholder),this.placeholder.gridstackNode=r,r.grid?.el)this.dragTransform=G.getValuesFromTransformedElement(e);else if(this.placeholder&&this.placeholder.closest(`.grid-stack`)){let e=this.placeholder.closest(`.grid-stack`);this.dragTransform=G.getValuesFromTransformedElement(e)}else this.dragTransform={xScale:1,xOffset:0,yScale:1,yOffset:0};if(r.el=this.placeholder,r._lastUiPosition=n.position,r._prevYPix=n.position.top,r._moving=t.type===`dragstart`,r._resizing=t.type===`resizestart`,delete r._lastTried,t.type===`dropover`&&r._temporaryRemoved&&(this.engine.addNode(r),r._moving=!0),this.engine.cacheRects(i,a,this.opts.marginTop,this.opts.marginRight,this.opts.marginBottom,this.opts.marginLeft),t.type===`resizestart`){let t=this.getColumn()-r.x,n=(this.opts.maxRow||2**53-1)-r.y;X.resizable(e,`option`,`minWidth`,i*Math.min(r.minW||1,t)).resizable(e,`option`,`minHeight`,a*Math.min(r.minH||1,n)).resizable(e,`option`,`maxWidth`,i*Math.min(r.maxW||2**53-1,t)).resizable(e,`option`,`maxWidthMoveLeft`,i*Math.min(r.maxW||2**53-1,r.x+r.w)).resizable(e,`option`,`maxHeight`,a*Math.min(r.maxH||2**53-1,n)).resizable(e,`option`,`maxHeightMoveUp`,a*Math.min(r.maxH||2**53-1,r.y+r.h))}}_dragOrResize(e,t,n,r,i,a){let o={...r._orig},s,c=this.opts.marginLeft,l=this.opts.marginRight,u=this.opts.marginTop,d=this.opts.marginBottom,f=Math.round(a*.1),p=Math.round(i*.1);if(c=Math.min(c,p),l=Math.min(l,p),u=Math.min(u,f),d=Math.min(d,f),t.type===`drag`){if(r._temporaryRemoved)return;r._prevYPix=n.position.top,this.opts.draggable.scroll!==!1&&q.dragElement?.updateScrollPosition(this.el);let e=n.position.left+(n.position.left>r._lastUiPosition.left?-l:c),t=n.position.top+(n.position.top>r._lastUiPosition.top?-d:u);o.x=Math.round(e/i),o.y=Math.round(t/a);let s=this._extraDragRow;if(this.engine.collide(r,o)){let e=this.getRow(),t=Math.max(0,o.y+r.h-e);this.opts.maxRow&&e+t>this.opts.maxRow&&(t=Math.max(0,this.opts.maxRow-e)),this._extraDragRow=t}else this._extraDragRow=0;if(this._extraDragRow!==s&&this._updateContainerHeight(),r.x===o.x&&r.y===o.y)return}else if(t.type===`resize`){if(o.x<0||(G.updateScrollResize(t,e,a),o.w=Math.round((n.size.width-c)/i),o.h=Math.round((n.size.height-u)/a),r.w===o.w&&r.h===o.h)||r._lastTried&&r._lastTried.w===o.w&&r._lastTried.h===o.h)return;if(t.hasMovedX){let e=n.position.left+c;o.x=Math.round(e/i)}if(t.hasMovedY){let e=n.position.top+u;o.y=Math.round(e/a)}s=!0}r._event=t,r._lastTried=o;let m={x:n.position.left+c,y:n.position.top+u,w:(n.size?n.size.width:r.w*i)-c-l,h:(n.size?n.size.height:r.h*a)-u-d};if(this.engine.moveNodeCheck(r,{...o,cellWidth:i,cellHeight:a,rect:m,resizing:s})){r._lastUiPosition=n.position,this.engine.cacheRects(i,a,u,l,d,c),delete r._skipDown,s&&r.subGrid&&r.subGrid.onResize(),this._extraDragRow=0,this._updateContainerHeight();let e=t.target;r._sidebarOrig||this._writePosAttr(e,r),this.triggerEvent(t,e)}}triggerEvent(e,t){let n=this;for(;n.parentGridNode;)n=n.parentGridNode.grid;n._gsEventHandler[e.type]&&n._gsEventHandler[e.type](e,t)}_leave(t,n){n||=t;let r=n.gridstackNode;if(!r||(n.style.transform=n.style.transformOrigin=null,X.off(t,`drag`),r._temporaryRemoved))return;r._temporaryRemoved=!0,this.engine.removeNode(r),r.el=r._isExternal&&n?n:t;let i=r._sidebarOrig;r._isExternal&&this.engine.cleanupNode(r),r._sidebarOrig=i,this.opts.removable===!0&&e._itemRemoving(t,!0),t._gridstackNodeOrig?(t.gridstackNode=t._gridstackNodeOrig,delete t._gridstackNodeOrig):r._isExternal&&this.engine.restoreInitial()}};Z.renderCB=(e,t)=>{e&&t?.content&&(e.textContent=t.content)},Z.resizeToContentParent=`.grid-stack-item-content`,Z.Utils=G,Z.Engine=an,Z.GDRev=`12.6.0`;var xn=({gridElement:e,gridItemElements:t,items:n,columns:r,rowHeight:i,viewMode:a,fullTheme:o,onCreateOrUpdateDimensionsHint:s,onRemoveDimensionsHint:c,onChange:l})=>{let[u,d]=qt(o),f={column:r,cellHeight:i,marginTop:u,marginLeft:d,marginRight:d,marginBottom:u,animate:!0,auto:!1,float:!1,removable:!1,acceptWidgets:!0,disableDrag:a,disableResize:a,minRow:1,resizable:{handles:[`n`,`ne`,`e`,`se`,`s`,`sw`,`w`,`nw`].join(`, `)},handle:`.grid-item-drag-handle`},p=Z.init(f,e);return p.batchUpdate(),t.forEach(e=>{let t=e.getAttribute(`luzmo-item-grid-item-id`),r=se(n.find(e=>e.id===t),t??void 0);p.makeWidget(e,r)}),p.batchUpdate(!1),p.on(`resizestart`,(e,t)=>{s(t,t.getAttribute(`gs-w`)??``,t.getAttribute(`gs-h`)??``)}),p.on(`resize`,(e,t)=>{s(t,t.getAttribute(`gs-w`)??``,t.getAttribute(`gs-h`)??``)}),p.on(`resizestop`,(e,t)=>{c(t)}),p.on(`change`,(e,t)=>{l(t)}),p},Sn=(e,t)=>{let n=new Map(t.filter(e=>e.id).map(e=>[e.id,e]));return e.map(e=>{let t=e.id?n.get(e.id):void 0;return t?{...e,position:{sizeX:t.w??1,sizeY:t.h??1,row:t.y??0,col:t.x??0}}:e})},Cn=({element:e,numberOfColumns:t,numberOfRows:n,offsetHint:r})=>{let i=e.querySelector(`.dimensions-hint-popover`);if(i){i.style.display=t.length>0&&n.length>0?`block`:`none`,i.textContent=`${t} × ${n}`;return}let a=document.createElement(`div`);a.className=`dimensions-hint-popover`,a.setAttribute(`popover`,`hint`),a.style.display=t.length>0&&n.length>0?`block`:`none`,a.textContent=`${t} × ${n}`,e.append(a),Ft(a,At(e,a,async()=>{let{x:t,y:n}=await Nt(e,a,{placement:`bottom`,middleware:[jt(r),Mt()]});a.style.left=`${t}px`,a.style.top=`${n}px`})),a.matches(`:popover-open`)||a.showPopover()},wn=e=>{let t=e.querySelector(`.dimensions-hint-popover`);t&&(It(t),t.matches(`:popover-open`)&&t.hidePopover(),t.remove())},Tn=({initialized:e,grid:t,hasItemsChanged:n,gridItemElements:r,items:i})=>{!e||!t||!n||(t.setAnimation(!1),t.batchUpdate(),t.removeAll(!1),i.forEach(e=>{let n=le(r,e.id);n&&t.makeWidget(n,se(e,e.id))}),t.batchUpdate(!1),t.setAnimation(!0))},En=({initialized:e,grid:t,hasViewModeChanged:n,viewMode:r,previousViewMode:i,activeItemElement:a,gridElement:o,cleanupActiveItem:s})=>{if(!e||!t||!n||r===i)return a;if(r){if(t.disable(),a){s(a),o.removeAttribute(`has-active-item`);return}return a}return t.enable(),a},Dn=`: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}`,Q=class extends t.t(d.LuzmoElement){constructor(...e){super(...e),this.placement=`right-start`,this.actions=Ut()}static get styles(){return[(0,s.unsafeCSS)(Dn)]}get isVertical(){return this.placement.includes(`left`)||this.placement.includes(`right`)}_dispatchAction(e){this.dispatchEvent(new CustomEvent(`luzmo-item-grid-item-action`,{bubbles:!0,composed:!0,detail:{action:e.action,type:e.type,active:e.active}}))}_handleActionClick(e,t){e.stopPropagation(),t.type===`toggle`&&(t.active=!t.active,this.actions.forEach(e=>{e.actions?.forEach(e=>{t!==e&&e.active&&(e.active=!1)})})),this._dispatchAction(t),this.requestUpdate()}clearActiveToggles(){this.actions=this.actions.map(e=>({...e,actions:e.actions?.map(e=>(e.type===`toggle`&&(e.active=!1),e))??[]}))}focus(){let e=this.shadowRoot?.querySelectorAll(`luzmo-action-button[toggles]`);e&&e[0]?.focus()}_generateActionButton(e){let t={Data:(0,l.msg)(`Data`,{desc:`Grid item action tooltip`}),Options:(0,l.msg)(`Options`,{desc:`Grid item action tooltip`}),Clone:(0,l.msg)(`Clone`,{desc:`Grid item action tooltip`}),Delete:(0,l.msg)(`Delete`,{desc:`Delete action label`}),Edit:(0,l.msg)(`Edit`,{desc:`Edit action label`}),Lock:(0,l.msg)(`Lock`,{desc:`Grid item action tooltip`}),Filters:(0,l.msg)(`Filters`,{desc:`Grid item action tooltip`})};return s.html`
83
83
  <luzmo-action-button
@@ -17,4 +17,4 @@
17
17
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18
18
  * SOFTWARE.
19
19
  * */
20
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../item-option-iQM2pOGK.cjs");exports.LuzmoItemOption=e.t;
20
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require("../item-option-DkqkbwtF.cjs");exports.LuzmoItemOption=e.t;
@@ -24,5 +24,5 @@
24
24
  e.setAttribute("data-luzmo-vars", ""), e.textContent = "html{--luzmo-animation-duration: 0.15s;--luzmo-border-color: rgba(var(--luzmo-border-color-rgb), 0.1);--luzmo-border-color-hover: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-down: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-border-color-focus: rgba(var(--luzmo-border-color-rgb), 0.15);--luzmo-border-color-rgb: 0, 0, 0;--luzmo-border-color-full: rgb(180, 180, 180);--luzmo-border-color-full-hover: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-full-down: color-mix(in oklch, var(--luzmo-border-color-full), black 45%);--luzmo-border-color-full-focus: color-mix(in oklch, var(--luzmo-border-color-full), black 25%);--luzmo-border-color-disabled: #dddddd;--luzmo-border-radius: 6px;--luzmo-border-radius-s: 4px;--luzmo-border-radius-l: 8px;--luzmo-border-radius-xl: 12px;--luzmo-border-radius-full: 999rem;--luzmo-background-color: #ffffff;--luzmo-background-color-rgb: 255, 255, 255;--luzmo-background-color-disabled: #eeeeee;--luzmo-background-color-hover: color-mix( in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5% );--luzmo-background-color-down: color-mix(in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 7%), black 1%);--luzmo-background-color-focus: color-mix( in oklch, color-mix(in oklch, var(--luzmo-background-color), var(--luzmo-primary) 5%), black 1.5% );--luzmo-background-color-highlight: rgb(240, 240, 240);--luzmo-background-color-highlight-disabled: rgb(245, 245, 245);--luzmo-background-color-highlight-hover: color-mix(in oklch, var(--luzmo-background-color-highlight), black 10%);--luzmo-background-color-highlight-down: color-mix(in oklch, var(--luzmo-background-color-highlight), black 20%);--luzmo-background-color-highlight-focus: color-mix(in oklch, var(--luzmo-background-color-highlight), black 10%);--luzmo-background-color-alt-1: rgb(250, 250, 250);--luzmo-background-color-alt-2: rgb(239, 239, 239);--luzmo-border-width: 1px;--luzmo-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', Helvetica, Arial, sans-serif;--luzmo-font-size-xs: 10px;--luzmo-font-size-s: 12px;--luzmo-font-size-m: 14px;--luzmo-font-size: 14px;--luzmo-font-size-l: 16px;--luzmo-font-size-xl: 18px;--luzmo-font-size-xxl: 20px;--luzmo-font-style: normal;--luzmo-line-height: normal;--luzmo-font-weight: 400;--luzmo-font-weight-semibold: 500;--luzmo-font-weight-bold: 600;--luzmo-font-color: #333;--luzmo-font-color-hard: #000;--luzmo-font-color-disabled: var(--luzmo-color-disabled);--luzmo-font-color-extra-dimmed: #888;--luzmo-font-color-hover: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-font-color-down: color-mix(in oklch, var(--luzmo-font-color), black 20%);--luzmo-font-color-focus: color-mix(in oklch, var(--luzmo-font-color), black 8%);--luzmo-scrollbar-size: 6px;--luzmo-scrollbar-width: thin;--luzmo-scrollbar-track-background: transparent;--luzmo-scrollbar-track-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-background: rgba(var(--luzmo-border-color-rgb), 0.3);--luzmo-scrollbar-thumb-border-radius: var(--luzmo-border-radius-s);--luzmo-scrollbar-thumb-hover-background: rgba(var(--luzmo-border-color-rgb), 0.4);--luzmo-primary: #4434ff;--luzmo-primary-hover: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-down: color-mix(in oklch, var(--luzmo-primary), black 20%);--luzmo-primary-focus: color-mix(in oklch, var(--luzmo-primary), black 8%);--luzmo-primary-inverse-color: #ffffff;--luzmo-primary-rgb: 68, 52, 255;--luzmo-secondary: #ff00ff;--luzmo-secondary-hover: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-down: color-mix(in oklch, var(--luzmo-secondary), black 20%);--luzmo-secondary-focus: color-mix(in oklch, var(--luzmo-secondary), black 8%);--luzmo-secondary-inverse-color: #ffffff;--luzmo-secondary-rgb: 255, 0, 255;--luzmo-secondary-outline: rgba(255, 0, 255, 0.2);--luzmo-negative-color: #ca221c;--luzmo-negative-color-hover: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-down: color-mix(in oklch, var(--luzmo-negative-color), black 20%);--luzmo-negative-color-focus: color-mix(in oklch, var(--luzmo-negative-color), black 8%);--luzmo-negative-color-rgb: 202, 34, 28;--luzmo-positive-color: rgb(20, 150, 101);--luzmo-positive-color-hover: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-down: color-mix(in oklch, var(--luzmo-positive-color), black 20%);--luzmo-positive-color-focus: color-mix(in oklch, var(--luzmo-positive-color), black 8%);--luzmo-positive-color-rgb: 20, 150, 101;--luzmo-selected-color: rgb(110, 110, 110);--luzmo-selected-color-hover: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-down: color-mix(in oklch, var(--luzmo-selected-color), black 45%);--luzmo-selected-color-focus: color-mix(in oklch, var(--luzmo-selected-color), black 25%);--luzmo-selected-color-hard: #1e1e1e;--luzmo-selected-color-hard-hover: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-selected-color-hard-down: color-mix(in oklch, var(--luzmo-selected-color-hard), black 45%);--luzmo-selected-color-hard-focus: color-mix(in oklch, var(--luzmo-selected-color-hard), black 25%);--luzmo-color-informative: #1a77e9;--luzmo-color-informative-rgb: 26, 119, 233;--luzmo-color-disabled: #aaaaaa;--luzmo-spacing-1: 2px;--luzmo-spacing-2: 4px;--luzmo-spacing-3: 8px;--luzmo-spacing-4: 12px;--luzmo-spacing-5: 16px;--luzmo-indicator-gap: 2px;--luzmo-indicator-width: 1px;--luzmo-indicator-color: var(--luzmo-primary);--luzmo-component-height-xxs: 20px;--luzmo-component-height-xs: 24px;--luzmo-component-height-s: 28px;--luzmo-component-height: 32px;--luzmo-component-height-l: 40px;--luzmo-component-height-xl: 48px;--luzmo-component-height-xxl: 64px;--luzmo-icon-size-xxs: 12px;--luzmo-icon-size-xs: 14px;--luzmo-icon-size-s: 16px;--luzmo-icon-size-m: 18px;--luzmo-icon-size-l: 20px;--luzmo-icon-size-xl: 22px;--luzmo-icon-size-xxl: 32px}", document.head.appendChild(e);
25
25
  }
26
26
  })();
27
- import { t as e } from "../item-option-Bc6qXONK.js";
27
+ import { t as e } from "../item-option-CSc3jmeo.js";
28
28
  export { e as LuzmoItemOption };