@templatical/editor 0.17.1 → 0.19.0

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 (111) hide show
  1. package/dist/{AiChatSidebar-LxCHMdcj.js → AiChatSidebar-DAQTFuvi.js} +2 -2
  2. package/dist/{AiFeatureMenu-Cr8pLXMj.js → AiFeatureMenu-aFSO20PR.js} +3 -3
  3. package/dist/{BlockIssueBadge-BQ1yB1me.js → BlockIssueBadge-BQmq1bxn.js} +2 -2
  4. package/dist/{CloudEditor-qzoNS8K4.js → CloudEditor-D0K-m1GA.js} +15 -13
  5. package/dist/{CollaboratorBar-BkfR0CyD.js → CollaboratorBar-CJO3l6Dt.js} +2 -2
  6. package/dist/ColorPicker-BsgpTJqK.js +552 -0
  7. package/dist/{CommentsSidebar-Cl93TN96.js → CommentsSidebar-BYMVucZh.js} +4 -4
  8. package/dist/{CountdownBlock-DbXfzwae.js → CountdownBlock-Bn5w7C-p.js} +1 -1
  9. package/dist/{CountdownToolbar-BqaMWRyB.js → CountdownToolbar-PJI3ffi1.js} +3 -3
  10. package/dist/{DesignReferenceSidebar-jVrdS8wW.js → DesignReferenceSidebar-QfAV8XT9.js} +13 -14
  11. package/dist/{IssuesPanel-Bq3yXg6M.js → IssuesPanel-CTjRgz8w.js} +2 -2
  12. package/dist/{ModuleBrowserModal-XEHfEO0O.js → ModuleBrowserModal-BNalLx0k.js} +7 -7
  13. package/dist/{ModulePreviewCanvas-BM8XUgbc.js → ModulePreviewCanvas-BwObwisa.js} +2 -2
  14. package/dist/{NumberWithSuffix-9FG7mNnn.js → NumberWithSuffix-D3BKz66W.js} +1 -1
  15. package/dist/{ParagraphEditor-Cs47wU1V.js → ParagraphEditor-Cf75UfSo.js} +42 -42
  16. package/dist/{RichTextEditorContent-DCzmVeyb.js → RichTextEditorContent-MdaLz6Q3.js} +5 -5
  17. package/dist/{SaveModuleDialog-BgOS9vCQ.js → SaveModuleDialog-MTjwiF9D.js} +6 -6
  18. package/dist/{SnapshotHistory-CLfYzwv9.js → SnapshotHistory-C_Y1LzAY.js} +4 -4
  19. package/dist/{TemplateScoringPanel-CMrfa9Rd.js → TemplateScoringPanel-DikuKc6i.js} +3 -3
  20. package/dist/{TestEmailModal-DTLfATNt.js → TestEmailModal-BW8aTtzf.js} +3 -3
  21. package/dist/{TitleEditor-Bq9S0C8Z.js → TitleEditor-CCUkbRN0.js} +7 -7
  22. package/dist/{TplModal-BW0FAtYe.js → TplModal-DoOwUKlT.js} +3 -3
  23. package/dist/{blockTypeIcons-CvSfLeyV.js → blockTypeIcons-BlPKjD7M.js} +1 -1
  24. package/dist/bundle-stats.json +7 -7
  25. package/dist/{ca-CSl--oWR.js → ca-DbWoy4rG.js} +2 -1
  26. package/dist/cdn/chunks/{AiFeatureMenu-B0zH66nO.js → AiFeatureMenu-RwJiaPXZ.js} +5 -5
  27. package/dist/cdn/chunks/{AiFeatureMenu-B0zH66nO.js.map → AiFeatureMenu-RwJiaPXZ.js.map} +1 -1
  28. package/dist/cdn/chunks/{BlockIssueBadge-yD4pKsU9.js → BlockIssueBadge-DM-TDKbr.js} +5 -5
  29. package/dist/cdn/chunks/{BlockIssueBadge-yD4pKsU9.js.map → BlockIssueBadge-DM-TDKbr.js.map} +1 -1
  30. package/dist/cdn/chunks/{CloudEditor-Da-aSmw5.js → CloudEditor-Dufl354p.js} +132 -130
  31. package/dist/cdn/chunks/CloudEditor-Dufl354p.js.map +1 -0
  32. package/dist/cdn/chunks/{CollaboratorBar-DixaFis-.js → CollaboratorBar-xsU20iPl.js} +3 -3
  33. package/dist/cdn/chunks/{CollaboratorBar-DixaFis-.js.map → CollaboratorBar-xsU20iPl.js.map} +1 -1
  34. package/dist/{ColorPicker-DfzDyNKe.js → cdn/chunks/ColorPicker-y_obnw4o.js} +234 -157
  35. package/dist/cdn/chunks/ColorPicker-y_obnw4o.js.map +1 -0
  36. package/dist/cdn/chunks/{CountdownBlock-jgBPbI1p.js → CountdownBlock-sHsRMe1q.js} +2 -2
  37. package/dist/cdn/chunks/{CountdownBlock-jgBPbI1p.js.map → CountdownBlock-sHsRMe1q.js.map} +1 -1
  38. package/dist/cdn/chunks/{CountdownToolbar-DrmZwvIH.js → CountdownToolbar-Ckc_jEi-.js} +4 -4
  39. package/dist/cdn/chunks/{CountdownToolbar-DrmZwvIH.js.map → CountdownToolbar-Ckc_jEi-.js.map} +1 -1
  40. package/dist/cdn/chunks/{IssuesPanel-CpyhXg9M.js → IssuesPanel-DF5Ajuna.js} +7 -7
  41. package/dist/cdn/chunks/{IssuesPanel-CpyhXg9M.js.map → IssuesPanel-DF5Ajuna.js.map} +1 -1
  42. package/dist/cdn/chunks/{ModuleBrowserModal-DPQLFTti.js → ModuleBrowserModal-DG4AVFjH.js} +8 -8
  43. package/dist/cdn/chunks/{ModuleBrowserModal-DPQLFTti.js.map → ModuleBrowserModal-DG4AVFjH.js.map} +1 -1
  44. package/dist/cdn/chunks/{ModulePreviewCanvas-Csc6M0RA.js → ModulePreviewCanvas-Bc_PcJuc.js} +24 -24
  45. package/dist/cdn/chunks/{ModulePreviewCanvas-Csc6M0RA.js.map → ModulePreviewCanvas-Bc_PcJuc.js.map} +1 -1
  46. package/dist/cdn/chunks/{NumberWithSuffix-YmcsBmCd.js → NumberWithSuffix-8fOO-LC_.js} +2 -2
  47. package/dist/cdn/chunks/{NumberWithSuffix-YmcsBmCd.js.map → NumberWithSuffix-8fOO-LC_.js.map} +1 -1
  48. package/dist/cdn/chunks/{ParagraphEditor-DR5AcHB0.js → ParagraphEditor-BkafKSju.js} +107 -107
  49. package/dist/cdn/chunks/{ParagraphEditor-DR5AcHB0.js.map → ParagraphEditor-BkafKSju.js.map} +1 -1
  50. package/dist/cdn/chunks/{RichTextEditorContent-52c2EuCT.js → RichTextEditorContent-BthhzOZS.js} +5 -5
  51. package/dist/cdn/chunks/{RichTextEditorContent-52c2EuCT.js.map → RichTextEditorContent-BthhzOZS.js.map} +1 -1
  52. package/dist/cdn/chunks/{SaveModuleDialog-dpRlVrrQ.js → SaveModuleDialog-DhsfYf2n.js} +4 -4
  53. package/dist/cdn/chunks/{SaveModuleDialog-dpRlVrrQ.js.map → SaveModuleDialog-DhsfYf2n.js.map} +1 -1
  54. package/dist/cdn/chunks/{TitleEditor-DtQTPAg3.js → TitleEditor-DLv9cXba.js} +8 -8
  55. package/dist/cdn/chunks/{TitleEditor-DtQTPAg3.js.map → TitleEditor-DLv9cXba.js.map} +1 -1
  56. package/dist/cdn/chunks/{blockTypeIcons-B0ktHdUG.js → blockTypeIcons-B0uibGX7.js} +7 -7
  57. package/dist/cdn/chunks/{blockTypeIcons-B0ktHdUG.js.map → blockTypeIcons-B0uibGX7.js.map} +1 -1
  58. package/dist/cdn/chunks/{ca-CSl--oWR.js → ca-DbWoy4rG.js} +3 -2
  59. package/dist/cdn/chunks/{ca-CSl--oWR.js.map → ca-DbWoy4rG.js.map} +1 -1
  60. package/dist/cdn/chunks/{de-ZaffrKDP.js → de-CgGOnerg.js} +3 -2
  61. package/dist/cdn/chunks/{de-ZaffrKDP.js.map → de-CgGOnerg.js.map} +1 -1
  62. package/dist/cdn/chunks/{en-CHuXeJDt.js → en-DrUV9xth.js} +3 -2
  63. package/dist/cdn/chunks/{en-CHuXeJDt.js.map → en-DrUV9xth.js.map} +1 -1
  64. package/dist/{es-CaC8VQjO.js → cdn/chunks/es-DwbKjU7q.js} +4 -1
  65. package/dist/cdn/chunks/{es-CaC8VQjO.js.map → es-DwbKjU7q.js.map} +1 -1
  66. package/dist/cdn/chunks/{extensions-CiewgCtw.js → extensions-DLHvZ0UH.js} +19 -19
  67. package/dist/cdn/chunks/{extensions-CiewgCtw.js.map → extensions-DLHvZ0UH.js.map} +1 -1
  68. package/dist/cdn/chunks/{features-DLu_D-6j.js → features-Cnfv4QAY.js} +1442 -1295
  69. package/dist/cdn/chunks/features-Cnfv4QAY.js.map +1 -0
  70. package/dist/cdn/chunks/{icons-B03IY-pm.js → icons-DbcM69bb.js} +2 -2
  71. package/dist/cdn/chunks/{icons-B03IY-pm.js.map → icons-DbcM69bb.js.map} +1 -1
  72. package/dist/cdn/chunks/{media-library-CYF18RNk.js → media-library-DpSMwHd4.js} +524 -524
  73. package/dist/cdn/chunks/{media-library-CYF18RNk.js.map → media-library-DpSMwHd4.js.map} +1 -1
  74. package/dist/cdn/chunks/{pt-BR-C74zfEWH.js → pt-BR-Bcc5Tjed.js} +3 -2
  75. package/dist/cdn/chunks/{pt-BR-C74zfEWH.js.map → pt-BR-Bcc5Tjed.js.map} +1 -1
  76. package/dist/cdn/chunks/{quality-LmsngN2B.js → quality-D9QqkRcU.js} +77 -77
  77. package/dist/cdn/chunks/{quality-LmsngN2B.js.map → quality-D9QqkRcU.js.map} +1 -1
  78. package/dist/cdn/chunks/{renderer-DAeNIQqa.js → renderer-BsLQZNXU.js} +14 -14
  79. package/dist/cdn/chunks/{renderer-DAeNIQqa.js.map → renderer-BsLQZNXU.js.map} +1 -1
  80. package/dist/cdn/chunks/{src-CModhUDN.js → src-zu1ehVNN.js} +6 -6
  81. package/dist/cdn/chunks/{src-CModhUDN.js.map → src-zu1ehVNN.js.map} +1 -1
  82. package/dist/cdn/chunks/{styles-hd_LBGaF.js → styles-Dx-jXeCd.js} +184 -184
  83. package/dist/cdn/chunks/{styles-hd_LBGaF.js.map → styles-Dx-jXeCd.js.map} +1 -1
  84. package/dist/cdn/editor.css +1 -1
  85. package/dist/cdn/editor.js +55 -52
  86. package/dist/cdn/editor.js.map +1 -1
  87. package/dist/{cloud-BogxOeZu.js → cloud-B-RebwxI.js} +5 -5
  88. package/dist/{de-ZaffrKDP.js → de-CgGOnerg.js} +2 -1
  89. package/dist/{dist-DoRIUsfz.js → dist-BJbqgyPn.js} +108 -94
  90. package/dist/{en-CHuXeJDt.js → en-DrUV9xth.js} +2 -1
  91. package/dist/{cdn/chunks/es-CaC8VQjO.js → es-DwbKjU7q.js} +2 -3
  92. package/dist/{extensions-DhgbhfBX.js → extensions-BCA9pyer.js} +11 -11
  93. package/dist/index.d.ts +68 -0
  94. package/dist/keys-DFaIbGR8.js +10 -0
  95. package/dist/{pt-BR-C74zfEWH.js → pt-BR-Bcc5Tjed.js} +2 -1
  96. package/dist/style.css +1 -1
  97. package/dist/{styles-BWC0jc5-.js → styles-64uLkPJV.js} +136 -136
  98. package/dist/templatical-editor.js +15 -12
  99. package/dist/{upload-BKg6hDRW.js → upload-y4gxiFp5.js} +3 -2
  100. package/dist/{useCloudI18n-CIKI0hCd.js → useCloudI18n-PCDOC2kz.js} +1 -1
  101. package/dist/{useEditorCore-FLMIhtv1.js → useEditorCore-ea9OrrH3.js} +870 -764
  102. package/dist/{useI18n-0EU_JVe7.js → useI18n-BNMzZTM5.js} +1 -1
  103. package/dist/{useMergeTag-C7v6MVah.js → useMergeTag-DfEY0eK5.js} +5 -5
  104. package/dist/{usePopoverPosition-BDqqnMeo.js → usePopoverPosition-F9STHRIr.js} +33 -6
  105. package/package.json +7 -7
  106. package/dist/cdn/chunks/CloudEditor-Da-aSmw5.js.map +0 -1
  107. package/dist/cdn/chunks/ColorPicker-O6xXCPEg.js +0 -471
  108. package/dist/cdn/chunks/ColorPicker-O6xXCPEg.js.map +0 -1
  109. package/dist/cdn/chunks/features-DLu_D-6j.js.map +0 -1
  110. package/dist/keys-WVNarXg8.js +0 -10
  111. package/dist/timeouts-Bmi_yePw.js +0 -4
@@ -1,28 +1,28 @@
1
1
  import { $ as e, A as t, B as n, D as r, Dt as i, E as a, Et as o, H as s, I as c, J as l, K as u, N as d, O as f, Ot as p, R as m, T as h, W as g, Y as _, Z as v, _ as y, c as b, d as x, et as S, g as C, h as w, j as T, k as E, l as D, m as O, nt as k, q as ee, r as A, rt as te, s as j, tt as ne, u as M, v as re, w as ie, x as N, y as ae, z as oe } from "./vue.runtime.esm-bundler-B0xoGkDv.js";
2
2
  import { c as P, o as se, s as ce } from "./runtime-dom.esm-bundler-GdMI8WqG.js";
3
- import { A as le, C as ue, D as de, M as fe, N as pe, O as me, P as he, S as ge, T as _e, _ as ve, b as ye, c as be, d as xe, f as Se, g as Ce, h as we, j as Te, k as Ee, l as De, m as Oe, n as ke, o as Ae, p as je, r as Me, s as Ne, t as Pe, u as Fe, v as Ie, w as Le, x as Re, y as ze } from "./dist-DoRIUsfz.js";
4
- import { f as Be, g as Ve, h as He, m as Ue } from "./dist-DYv_Pttj.js";
5
- import { a as We, c as Ge, o as Ke, r as qe, s as Je, t as Ye } from "./usePopoverPosition-BDqqnMeo.js";
6
- import { A as Xe, C as Ze, D as Qe, E as $e, F as et, I as tt, L as nt, O as rt, P as it, R as at, S as ot, T as st, _ as ct, a as lt, b as ut, d as dt, f as ft, g as pt, h as mt, i as ht, j as gt, k as _t, m as vt, n as yt, o as bt, p as xt, s as St, u as Ct, v as wt, w as Tt, x as Et, y as Dt } from "./keys-WVNarXg8.js";
7
- import { t as Ot } from "./useI18n-0EU_JVe7.js";
3
+ import { t as le } from "./upload-y4gxiFp5.js";
4
+ import { A as ue, C as de, D as fe, E as pe, F as me, I as he, M as ge, N as _e, P as ve, S as ye, T as be, _ as xe, a as Se, b as Ce, c as we, d as Te, f as Ee, g as De, h as Oe, i as ke, j as Ae, k as je, l as Me, m as Ne, n as Pe, p as Fe, r as Ie, t as Le, u as Re, v as ze, w as Be, x as Ve, y as He } from "./dist-BJbqgyPn.js";
5
+ import { f as Ue, g as We, h as Ge, m as Ke } from "./dist-DYv_Pttj.js";
6
+ import { c as qe, d as Je, i as Ye, l as Xe, o as Ze, r as Qe, t as $e, u as et } from "./usePopoverPosition-F9STHRIr.js";
7
+ import { A as tt, B as nt, C as rt, D as it, E as at, I as ot, L as st, M as ct, N as lt, O as ut, R as dt, S as ft, T as pt, _ as mt, a as ht, b as gt, d as _t, f as vt, g as yt, h as bt, i as xt, j as St, k as Ct, l as wt, m as Tt, n as Et, o as Dt, p as Ot, s as kt, v as At, w as jt, x as Mt, y as Nt, z as Pt } from "./keys-DFaIbGR8.js";
8
+ import { t as Ft } from "./useI18n-BNMzZTM5.js";
8
9
  import { t as F } from "./createLucideIcon-FSF4peHQ.js";
9
- import { t as kt } from "./loader-circle-BT38qSm3.js";
10
- import { t as At } from "./message-circle-BAHcL9S-.js";
11
- import { t as jt } from "./trash-2-CRBDolnR.js";
12
- import { t as Mt } from "./triangle-alert-B2g0ALvq.js";
13
- import { t as Nt } from "./upload-BKg6hDRW.js";
14
- import { t as Pt } from "./LoadingTrack-KIcREPlS.js";
15
- import { t as Ft } from "./_plugin-vue_export-helper-B3ysoDQm.js";
16
- import "./useCloudI18n-CIKI0hCd.js";
17
- import { t as It } from "./useMergeTag-C7v6MVah.js";
18
- import { t as Lt } from "./useAliveFlag-C43EhZFY.js";
10
+ import { t as It } from "./loader-circle-BT38qSm3.js";
11
+ import { t as Lt } from "./message-circle-BAHcL9S-.js";
12
+ import { t as Rt } from "./trash-2-CRBDolnR.js";
13
+ import { t as zt } from "./triangle-alert-B2g0ALvq.js";
14
+ import { t as Bt } from "./LoadingTrack-KIcREPlS.js";
15
+ import { t as Vt } from "./_plugin-vue_export-helper-B3ysoDQm.js";
16
+ import "./useCloudI18n-PCDOC2kz.js";
17
+ import { t as Ht } from "./useMergeTag-DfEY0eK5.js";
18
+ import { t as Ut } from "./useAliveFlag-C43EhZFY.js";
19
19
  //#region ../core/dist/index.js
20
- function Rt(e) {
20
+ function Wt(e) {
21
21
  return e === "1" ? 1 : e === "3" ? 3 : 2;
22
22
  }
23
- function zt(e) {
23
+ function Gt(e) {
24
24
  let t = ee({
25
- content: e.content ?? xe(e.defaultFontFamily, e.templateDefaults),
25
+ content: e.content ?? Fe(e.defaultFontFamily, e.templateDefaults),
26
26
  selectedBlockId: null,
27
27
  viewport: "desktop",
28
28
  darkMode: !1,
@@ -111,7 +111,7 @@ function zt(e) {
111
111
  if (c(n)) return;
112
112
  let o = a(t.content.blocks, n);
113
113
  if (o && o.type === "section") {
114
- if (r < 0 || r >= Rt(o.columns)) return;
114
+ if (r < 0 || r >= Wt(o.columns)) return;
115
115
  o.children[r] = o.children[r] || [];
116
116
  let t = o.children[r];
117
117
  i !== void 0 && i < t.length ? t.splice(i, 0, e) : t.push(e);
@@ -144,7 +144,7 @@ function zt(e) {
144
144
  let u;
145
145
  if (r) {
146
146
  let e = a(t.content.blocks, r);
147
- if (!e || e.type !== "section" || i < 0 || i >= Rt(e.columns)) return;
147
+ if (!e || e.type !== "section" || i < 0 || i >= Wt(e.columns)) return;
148
148
  e.children[i] = e.children[i] || [], u = e.children[i];
149
149
  } else u = t.content.blocks;
150
150
  let [d] = o.blocks.splice(l, 1);
@@ -173,9 +173,9 @@ function zt(e) {
173
173
  findBlockLocation: u
174
174
  };
175
175
  }
176
- var Bt = 50, Vt = 300, Ht = 1500;
177
- function Ut(e) {
178
- let { content: t, setContent: r, isRemoteOperation: i, maxSize: a = Bt } = e, o = _([]), s = _([]), c = _(!1), l = null, u = null, d = n(() => o.value.length > 0), f = n(() => s.value.length > 0);
176
+ var Kt = 50, qt = 300, Jt = 1500;
177
+ function Yt(e) {
178
+ let { content: t, setContent: r, isRemoteOperation: i, maxSize: a = Kt } = e, o = _([]), s = _([]), c = _(!1), l = null, u = null, d = n(() => o.value.length > 0), f = n(() => s.value.length > 0);
179
179
  function p() {
180
180
  return he(t.value);
181
181
  }
@@ -193,21 +193,21 @@ function Ut(e) {
193
193
  if (u && u.blockId === e) {
194
194
  clearTimeout(u.timeoutId), u.timeoutId = setTimeout(() => {
195
195
  u = null;
196
- }, Vt);
196
+ }, qt);
197
197
  return;
198
198
  }
199
199
  h(), m(p()), s.value = [], u = {
200
200
  blockId: e,
201
201
  timeoutId: setTimeout(() => {
202
202
  u = null;
203
- }, Vt)
203
+ }, qt)
204
204
  };
205
205
  }
206
206
  }
207
207
  function y() {
208
208
  c.value = !0, l && clearTimeout(l), l = setTimeout(() => {
209
209
  c.value = !1, l = null;
210
- }, Ht);
210
+ }, Jt);
211
211
  }
212
212
  function b() {
213
213
  if (o.value.length === 0) return;
@@ -239,33 +239,33 @@ function Ut(e) {
239
239
  destroy: C
240
240
  };
241
241
  }
242
- function Wt(e) {
242
+ function Xt(e) {
243
243
  e.type === "table" ? e.rows = e.rows.map((e) => ({
244
244
  ...e,
245
- id: ue(),
245
+ id: be(),
246
246
  cells: e.cells.map((e) => ({
247
247
  ...e,
248
- id: ue()
248
+ id: be()
249
249
  }))
250
250
  })) : e.type === "social" ? e.icons = e.icons.map((e) => ({
251
251
  ...e,
252
- id: ue()
252
+ id: be()
253
253
  })) : e.type === "menu" && (e.items = e.items.map((e) => ({
254
254
  ...e,
255
- id: ue()
255
+ id: be()
256
256
  })));
257
257
  }
258
- function Gt(e) {
258
+ function Zt(e) {
259
259
  let { addBlock: t, removeBlock: n, updateBlock: r, selectBlock: i, findBlockLocation: a } = e;
260
260
  function o(n, r, a) {
261
- let o = Ne(n, e.blockDefaults);
261
+ let o = Me(n, e.blockDefaults);
262
262
  return t(o, r, a), i(o.id), o;
263
263
  }
264
264
  function s(e, n, r) {
265
265
  let o = JSON.parse(JSON.stringify(e));
266
- if (o.id = ue(), Wt(o), o.type === "section" && (o.children = o.children.map((e) => e.map((e) => {
266
+ if (o.id = be(), Xt(o), o.type === "section" && (o.children = o.children.map((e) => e.map((e) => {
267
267
  let t = JSON.parse(JSON.stringify(e));
268
- return t.id = ue(), Wt(t), t;
268
+ return t.id = be(), Xt(t), t;
269
269
  }))), n !== void 0 || r !== void 0) t(o, n, r);
270
270
  else {
271
271
  let i = a?.(e.id) ?? null;
@@ -286,7 +286,7 @@ function Gt(e) {
286
286
  updateBlockProperty: l
287
287
  };
288
288
  }
289
- function Kt(e) {
289
+ function Qt(e) {
290
290
  let { content: t, isDirty: n, onChange: r, debounce: i = 1e3, enabled: a = !0 } = e, o = null, s = !1;
291
291
  function c() {
292
292
  return typeof a == "function" ? a() : a;
@@ -322,7 +322,7 @@ function Kt(e) {
322
322
  destroy: h
323
323
  };
324
324
  }
325
- function qt(e) {
325
+ function $t(e) {
326
326
  let t = ee(/* @__PURE__ */ new Set()), r = n(() => t.size > 0);
327
327
  function i(e) {
328
328
  return t.has(e);
@@ -340,7 +340,7 @@ function qt(e) {
340
340
  hasHiddenBlocks: r
341
341
  };
342
342
  }
343
- function Jt(e) {
343
+ function en(e) {
344
344
  let t = _(!1), r = _(!1), i = n(() => !!e.definition.value?.dataSource), a = n(() => i.value && !e.block.value.dataSourceFetched);
345
345
  async function o() {
346
346
  let n = e.definition.value;
@@ -370,7 +370,7 @@ function Jt(e) {
370
370
  needsFetch: a
371
371
  };
372
372
  }
373
- function Yt(e, t) {
373
+ function tn(e, t) {
374
374
  let n = e.addBlock, r = e.removeBlock, i = e.moveBlock, a = e.updateBlock, o = e.updateSettings;
375
375
  e.addBlock = (r, i, a, o) => {
376
376
  i && e.isBlockLocked(i) || (t.record(), n(r, i, a, o));
@@ -386,26 +386,89 @@ function Yt(e, t) {
386
386
  }
387
387
  //#endregion
388
388
  //#region src/utils/activeEditorTracker.ts
389
- var Xt = /* @__PURE__ */ new Set(), Zt = 0, Qt = 0;
390
- function $t() {
391
- let e = ++Qt;
392
- return Xt.add(e), Zt === 0 && (Zt = e), {
389
+ var nn = /* @__PURE__ */ new Set(), rn = 0, an = 0;
390
+ function on() {
391
+ let e = ++an;
392
+ return nn.add(e), rn === 0 && (rn = e), {
393
393
  id: e,
394
- isActive: () => Xt.size <= 1 || Zt === e,
394
+ isActive: () => nn.size <= 1 || rn === e,
395
395
  claim: () => {
396
- Zt = e;
396
+ rn = e;
397
397
  },
398
398
  dispose: () => {
399
- if (Xt.delete(e), Zt === e) {
400
- let e = Array.from(Xt);
401
- Zt = e[e.length - 1] ?? 0;
399
+ if (nn.delete(e), rn === e) {
400
+ let e = Array.from(nn);
401
+ rn = e[e.length - 1] ?? 0;
402
402
  }
403
403
  }
404
404
  };
405
405
  }
406
406
  //#endregion
407
+ //#region src/composables/useImageUrlResolver.ts
408
+ function sn(e) {
409
+ let t = ee(/* @__PURE__ */ new Map()), n = /* @__PURE__ */ new Set();
410
+ function r(e) {
411
+ return t.get(e);
412
+ }
413
+ function i(e) {
414
+ return t.has(e) || n.has(e);
415
+ }
416
+ function a(r) {
417
+ if (i(r)) return;
418
+ let a;
419
+ try {
420
+ a = e(r);
421
+ } catch {
422
+ t.set(r, null);
423
+ return;
424
+ }
425
+ if (a === null || typeof a == "string") {
426
+ t.set(r, a);
427
+ return;
428
+ }
429
+ n.add(r), Promise.resolve(a).then((e) => {
430
+ t.set(r, typeof e == "string" ? e : null);
431
+ }, () => {
432
+ t.set(r, null);
433
+ }).finally(() => n.delete(r));
434
+ }
435
+ return {
436
+ get: r,
437
+ has: i,
438
+ lookup: a
439
+ };
440
+ }
441
+ function cn(e) {
442
+ let t = N(gt, null), n = j(e);
443
+ if (!t) return n;
444
+ let r;
445
+ function i() {
446
+ r !== void 0 && (clearTimeout(r), r = void 0);
447
+ }
448
+ s() && u(i);
449
+ let a = !0;
450
+ return c(n, (e) => {
451
+ i();
452
+ let n = a;
453
+ if (a = !1, !(!e || t.has(e))) {
454
+ if (n) {
455
+ t.lookup(e);
456
+ return;
457
+ }
458
+ r = setTimeout(() => {
459
+ r = void 0, t.lookup(e);
460
+ }, 300);
461
+ }
462
+ }, { immediate: !0 }), j(() => {
463
+ let e = n.value;
464
+ if (!e) return e;
465
+ let r = t.get(e);
466
+ return typeof r == "string" && r.length > 0 ? r : e;
467
+ });
468
+ }
469
+ //#endregion
407
470
  //#region src/composables/useMergeTagPicker.ts
408
- function en() {
471
+ function ln() {
409
472
  let e = _(!1), t = _([]), n = null;
410
473
  function r(r) {
411
474
  if (n) {
@@ -435,7 +498,7 @@ function en() {
435
498
  }
436
499
  //#endregion
437
500
  //#region src/composables/useLogicTagPicker.ts
438
- function tn() {
501
+ function un() {
439
502
  let e = _(!1), t = _([]), n = _([]), r = null;
440
503
  function i(i, a) {
441
504
  if (r) {
@@ -466,17 +529,17 @@ function tn() {
466
529
  }
467
530
  //#endregion
468
531
  //#region src/composables/useTemplateLint.ts
469
- function nn(e) {
532
+ function dn(e) {
470
533
  return e ? e.disabled === !0 || e.accessibility === !1 && e.structure === !1 && e.links === !1 : !1;
471
534
  }
472
- function rn(e) {
473
- let t = _([]), n = _(!1), r = _(!1), i = v(null), a = nn(e.options), o = null, s = !1;
535
+ function fn(e) {
536
+ let t = _([]), n = _(!1), r = _(!1), i = v(null), a = dn(e.options), o = null, s = !1;
474
537
  a || l();
475
538
  async function l() {
476
539
  try {
477
540
  let t = await import("@templatical/quality");
478
541
  if (s) return;
479
- i.value = { lintTemplate: t.lintTemplate }, n.value = !0, u(), o = Ve(e.content, u, {
542
+ i.value = { lintTemplate: t.lintTemplate }, n.value = !0, u(), o = We(e.content, u, {
480
543
  debounce: e.debounce ?? 500,
481
544
  deep: !0
482
545
  });
@@ -511,12 +574,12 @@ function rn(e) {
511
574
  }
512
575
  //#endregion
513
576
  //#region src/utils/blockTypeLabels.ts
514
- function an(e, t) {
577
+ function pn(e, t) {
515
578
  return t.blocks[e] ?? e;
516
579
  }
517
580
  //#endregion
518
581
  //#region src/composables/useKeyboardReorder.ts
519
- function on(e, t) {
582
+ function mn(e, t) {
520
583
  let n = _(null), r = _(""), i = null;
521
584
  function a(t) {
522
585
  let n = e.content.value.blocks, r = n.findIndex((e) => e.id === t);
@@ -543,7 +606,7 @@ function on(e, t) {
543
606
  let r = a(n);
544
607
  if (!r) return "";
545
608
  let i = (r.sectionId ? s(r.sectionId, r.columnIndex ?? 0) : e.content.value.blocks)?.[r.index];
546
- return i ? an(i.type, t.t) : "";
609
+ return i ? pn(i.type, t.t) : "";
547
610
  }
548
611
  function s(t, n) {
549
612
  return e.content.value.blocks.find((e) => e.id === t && e.type === "section")?.children[n] ?? null;
@@ -612,13 +675,13 @@ function on(e, t) {
612
675
  }
613
676
  //#endregion
614
677
  //#region src/composables/useUiTheme.ts
615
- function sn(e) {
616
- let t = Ge("(prefers-color-scheme: dark)");
678
+ function hn(e) {
679
+ let t = Je("(prefers-color-scheme: dark)");
617
680
  return { resolvedTheme: j(() => e.value === "auto" ? t.value ? "dark" : "light" : e.value) };
618
681
  }
619
682
  //#endregion
620
683
  //#region src/composables/useThemeStyles.ts
621
- var cn = {
684
+ var gn = {
622
685
  bg: "--tpl-bg",
623
686
  bgElevated: "--tpl-bg-elevated",
624
687
  bgHover: "--tpl-bg-hover",
@@ -642,10 +705,10 @@ var cn = {
642
705
  dangerLight: "--tpl-danger-light",
643
706
  canvasBg: "--tpl-canvas-bg"
644
707
  };
645
- function ln({ themeOverrides: e, resolvedTheme: t, extraStyles: n }) {
708
+ function _n({ themeOverrides: e, resolvedTheme: t, extraStyles: n }) {
646
709
  return { themeStyles: j(() => {
647
710
  let r = {}, i = e.value, a = t.value === "dark" ? i.dark : i;
648
- if (a) for (let [e, t] of Object.entries(cn)) {
711
+ if (a) for (let [e, t] of Object.entries(gn)) {
649
712
  let n = a[e];
650
713
  n && (r[t] = n);
651
714
  }
@@ -654,27 +717,27 @@ function ln({ themeOverrides: e, resolvedTheme: t, extraStyles: n }) {
654
717
  }
655
718
  //#endregion
656
719
  //#region src/utils/logger.ts
657
- var un = "[Templatical]";
658
- function dn() {
720
+ var vn = "[Templatical]";
721
+ function yn() {
659
722
  return typeof process < "u" && process.env.NODE_ENV === "production";
660
723
  }
661
- var fn = {
724
+ var bn = {
662
725
  warn(...e) {
663
- console.warn(un, ...e);
726
+ console.warn(vn, ...e);
664
727
  },
665
728
  error(...e) {
666
- console.error(un, ...e);
729
+ console.error(vn, ...e);
667
730
  },
668
731
  debug(...e) {
669
- dn() || console.debug(un, ...e);
732
+ yn() || console.debug(vn, ...e);
670
733
  },
671
734
  info(...e) {
672
- dn() || console.info(un, ...e);
735
+ yn() || console.info(vn, ...e);
673
736
  }
674
737
  };
675
738
  //#endregion
676
739
  //#region src/composables/useBlockRegistry.ts
677
- function pn() {
740
+ function xn() {
678
741
  let e = v(/* @__PURE__ */ new Map());
679
742
  function t(t, n) {
680
743
  e.value.set(t, n), ne(e);
@@ -682,7 +745,7 @@ function pn() {
682
745
  function n(t, n) {
683
746
  let r = `custom:${t.type}`, i = {
684
747
  component: n,
685
- createBlock: () => Fe(t),
748
+ createBlock: () => Ee(t),
686
749
  definition: t
687
750
  };
688
751
  e.value.set(r, i), ne(e);
@@ -714,7 +777,7 @@ function pn() {
714
777
  strictFilters: !1
715
778
  }).parseAndRender(t.template, e.fieldValues);
716
779
  } catch (t) {
717
- return fn.error(`Failed to render custom block "${e.customType}":`, t), o(`Render error: ${e.customType}`);
780
+ return bn.error(`Failed to render custom block "${e.customType}":`, t), o(`Render error: ${e.customType}`);
718
781
  }
719
782
  }
720
783
  function c(t) {
@@ -732,9 +795,9 @@ function pn() {
732
795
  }
733
796
  //#endregion
734
797
  //#region src/composables/useCustomBlockStylesheets.ts
735
- function mn(e, t) {
798
+ function Sn(e, t) {
736
799
  return j(() => {
737
- let n = hn(e.value.blocks);
800
+ let n = Cn(e.value.blocks);
738
801
  if (n.size === 0) return [];
739
802
  let r = /* @__PURE__ */ new Set(), i = [];
740
803
  for (let e of n) {
@@ -746,61 +809,61 @@ function mn(e, t) {
746
809
  return i;
747
810
  });
748
811
  }
749
- function hn(e) {
812
+ function Cn(e) {
750
813
  let t = /* @__PURE__ */ new Set();
751
- return gn(e, t), t;
814
+ return wn(e, t), t;
752
815
  }
753
- function gn(e, t) {
816
+ function wn(e, t) {
754
817
  for (let n of e) {
755
- if (me(n)) {
818
+ if (ue(n)) {
756
819
  t.add(n.customType);
757
820
  continue;
758
821
  }
759
822
  if (n.type === "section") {
760
823
  let e = n.children;
761
824
  if (!e) continue;
762
- for (let n of e) gn(n, t);
825
+ for (let n of e) wn(n, t);
763
826
  }
764
827
  }
765
828
  }
766
829
  //#endregion
767
830
  //#region src/utils/registerBuiltInBlocks.ts
768
- var _n = [
831
+ var Tn = [
769
832
  {
770
833
  type: "section",
771
- createBlock: ve
834
+ createBlock: He
772
835
  },
773
836
  {
774
837
  type: "title",
775
- createBlock: Re
838
+ createBlock: de
776
839
  },
777
840
  {
778
841
  type: "paragraph",
779
- createBlock: Ce
842
+ createBlock: ze
780
843
  },
781
844
  {
782
845
  type: "image",
783
- createBlock: Oe
846
+ createBlock: De
784
847
  },
785
848
  {
786
849
  type: "button",
787
- createBlock: be
850
+ createBlock: Re
788
851
  },
789
852
  {
790
853
  type: "divider",
791
- createBlock: Se
854
+ createBlock: Ne
792
855
  },
793
856
  {
794
857
  type: "video",
795
- createBlock: ge
858
+ createBlock: Be
796
859
  },
797
860
  {
798
861
  type: "social",
799
- createBlock: Ie
862
+ createBlock: Ce
800
863
  },
801
864
  {
802
865
  type: "menu",
803
- createBlock: we
866
+ createBlock: xe
804
867
  },
805
868
  {
806
869
  type: "table",
@@ -808,19 +871,19 @@ var _n = [
808
871
  },
809
872
  {
810
873
  type: "spacer",
811
- createBlock: ze
874
+ createBlock: Ve
812
875
  },
813
876
  {
814
877
  type: "html",
815
- createBlock: je
878
+ createBlock: Oe
816
879
  },
817
880
  {
818
881
  type: "countdown",
819
- createBlock: De
882
+ createBlock: Te
820
883
  }
821
884
  ];
822
- function vn(e, t) {
823
- for (let n of _n) {
885
+ function En(e, t) {
886
+ for (let n of Tn) {
824
887
  let r = t[n.type];
825
888
  r && e.registerBuiltIn(n.type, {
826
889
  component: r,
@@ -830,12 +893,33 @@ function vn(e, t) {
830
893
  }
831
894
  //#endregion
832
895
  //#region src/utils/resolveHtmlBlockPreview.ts
833
- function yn(e) {
896
+ function Dn(e) {
834
897
  return typeof e == "boolean" ? e : e?.enabled ?? !1;
835
898
  }
836
899
  //#endregion
900
+ //#region src/utils/collectOffPaletteDefaults.ts
901
+ function On(e) {
902
+ return typeof e == "object" && !!e && !Array.isArray(e);
903
+ }
904
+ function kn(e, t, n) {
905
+ let r = new Set(e.map((e) => Qe(e))), i = [], a = (e, t) => {
906
+ for (let [n, o] of Object.entries(e)) typeof o == "string" ? o !== "" && /color$/i.test(n) && !r.has(Qe(o)) && i.push(`${t}.${n}: ${o}`) : On(o) && a(o, `${t}.${n}`);
907
+ }, o = t;
908
+ for (let [e, t] of Object.entries(Le)) {
909
+ let n = o?.[e];
910
+ a({
911
+ ...t,
912
+ ...On(n) ? n : {}
913
+ }, e);
914
+ }
915
+ return a({
916
+ ...Pe,
917
+ ...n ?? {}
918
+ }, "template"), i;
919
+ }
920
+ //#endregion
837
921
  //#region src/utils/keyboardShortcuts.ts
838
- function bn(e) {
922
+ function An(e) {
839
923
  for (let t of e.composedPath()) {
840
924
  if (!(t instanceof HTMLElement)) continue;
841
925
  if (t.isContentEditable) return !0;
@@ -844,14 +928,14 @@ function bn(e) {
844
928
  }
845
929
  return !1;
846
930
  }
847
- function xn(e, t) {
931
+ function jn(e, t) {
848
932
  let n = e.metaKey || e.ctrlKey;
849
933
  if (n && e.key.toLowerCase() === "s") {
850
934
  e.preventDefault(), t.onSave?.();
851
935
  return;
852
936
  }
853
937
  if (n && e.key.toLowerCase() === "z") {
854
- if (bn(e)) return;
938
+ if (An(e)) return;
855
939
  e.preventDefault(), e.shiftKey ? t.history.redo() : (t.onBeforeUndo?.(), t.history.undo());
856
940
  return;
857
941
  }
@@ -859,11 +943,11 @@ function xn(e, t) {
859
943
  t.selectBlock(null);
860
944
  return;
861
945
  }
862
- (e.key === "Delete" || e.key === "Backspace") && t.getSelectedBlockId() && !bn(e) && (e.preventDefault(), t.history.record(), t.removeBlock(t.getSelectedBlockId()));
946
+ (e.key === "Delete" || e.key === "Backspace") && t.getSelectedBlockId() && !An(e) && (e.preventDefault(), t.history.record(), t.removeBlock(t.getSelectedBlockId()));
863
947
  }
864
948
  //#endregion
865
949
  //#region src/utils/mergeTagLabelSegments.ts
866
- function Sn(e, t, n) {
950
+ function Mn(e, t, n) {
867
951
  if (!e) return [];
868
952
  let r = RegExp(`(${n.value.source}|${n.logic.source})`, "g"), i = [], a = 0, o;
869
953
  for (; (o = r.exec(e)) !== null;) {
@@ -872,12 +956,12 @@ function Sn(e, t, n) {
872
956
  value: e.slice(a, o.index)
873
957
  });
874
958
  let r = o[0];
875
- le(r, n) ? i.push({
959
+ ge(r, n) ? i.push({
876
960
  type: "tag",
877
- value: _e(r, t)
878
- }) : Ee(r, n) ? i.push({
961
+ value: fe(r, t)
962
+ }) : Ae(r, n) ? i.push({
879
963
  type: "tag",
880
- value: Le(r, n)
964
+ value: pe(r, n)
881
965
  }) : i.push({
882
966
  type: "text",
883
967
  value: r
@@ -890,20 +974,20 @@ function Sn(e, t, n) {
890
974
  }
891
975
  //#endregion
892
976
  //#region src/components/MergeTagPreviewText.vue
893
- var Cn = y({
977
+ var Nn = y({
894
978
  name: "MergeTagPreviewText",
895
979
  props: { text: {
896
980
  type: String,
897
981
  required: !0
898
982
  } },
899
983
  setup(e) {
900
- let t = N(Ze, []), n = N($e, Me.liquid), r = j(() => Sn(e.text, t, n));
984
+ let t = N(pt, []), n = N(ut, Se.liquid), r = j(() => Mn(e.text, t, n));
901
985
  return () => r.value.map((e, t) => e.type === "tag" ? ae("span", {
902
986
  key: t,
903
987
  class: "tpl-merge-tag-label"
904
988
  }, e.value) : e.value);
905
989
  }
906
- }), wn = { class: "tpl:text-center" }, Tn = ["href"], En = /* @__PURE__ */ y({
990
+ }), Pn = { class: "tpl:text-center" }, Fn = ["href"], In = /* @__PURE__ */ y({
907
991
  __name: "ButtonBlock",
908
992
  props: {
909
993
  block: {},
@@ -924,17 +1008,17 @@ var Cn = y({
924
1008
  };
925
1009
  return t.block.fontFamily && (e.fontFamily = t.block.fontFamily), t.block.width === "full" ? (e.display = "block", e.width = "100%", e.boxSizing = "border-box") : typeof t.block.width == "number" && (e.width = `${t.block.width}px`, e.boxSizing = "border-box"), e;
926
1010
  });
927
- return (t, r) => (f(), x("div", wn, [b("a", {
1011
+ return (t, r) => (f(), x("div", Pn, [b("a", {
928
1012
  href: e.block.url || "#",
929
1013
  style: i(n.value),
930
1014
  class: "tpl:cursor-default",
931
1015
  onClick: r[0] ||= P(() => {}, ["prevent"])
932
- }, [w(Cn, { text: e.block.text }, null, 8, ["text"])], 12, Tn)]));
1016
+ }, [w(Nn, { text: e.block.text }, null, 8, ["text"])], 12, Fn)]));
933
1017
  }
934
- }), Dn = F("bookmark", [["path", {
1018
+ }), Ln = F("bookmark", [["path", {
935
1019
  d: "M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z",
936
1020
  key: "oz39mx"
937
- }]]), On = F("box", [
1021
+ }]]), Rn = F("box", [
938
1022
  ["path", {
939
1023
  d: "M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z",
940
1024
  key: "hh9hay"
@@ -947,13 +1031,13 @@ var Cn = y({
947
1031
  d: "M12 22V12",
948
1032
  key: "d0xqtd"
949
1033
  }]
950
- ]), kn = F("code", [["path", {
1034
+ ]), zn = F("code", [["path", {
951
1035
  d: "m16 18 6-6-6-6",
952
1036
  key: "eg8j8"
953
1037
  }], ["path", {
954
1038
  d: "m8 6-6 6 6 6",
955
1039
  key: "ppft3o"
956
- }]]), An = F("copy", [["rect", {
1040
+ }]]), Bn = F("copy", [["rect", {
957
1041
  width: "14",
958
1042
  height: "14",
959
1043
  x: "8",
@@ -964,7 +1048,7 @@ var Cn = y({
964
1048
  }], ["path", {
965
1049
  d: "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",
966
1050
  key: "zix9uf"
967
- }]]), jn = F("eye-off", [
1051
+ }]]), Vn = F("eye-off", [
968
1052
  ["path", {
969
1053
  d: "M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",
970
1054
  key: "ct8e1f"
@@ -981,10 +1065,10 @@ var Cn = y({
981
1065
  d: "m2 2 20 20",
982
1066
  key: "1ooewy"
983
1067
  }]
984
- ]), Mn = F("funnel", [["path", {
1068
+ ]), Hn = F("funnel", [["path", {
985
1069
  d: "M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",
986
1070
  key: "sc7q7i"
987
- }]]), Nn = F("grip-vertical", [
1071
+ }]]), Un = F("grip-vertical", [
988
1072
  ["circle", {
989
1073
  cx: "9",
990
1074
  cy: "12",
@@ -1021,7 +1105,7 @@ var Cn = y({
1021
1105
  r: "1",
1022
1106
  key: "f4zoj3"
1023
1107
  }]
1024
- ]), Pn = F("image", [
1108
+ ]), Wn = F("image", [
1025
1109
  ["rect", {
1026
1110
  width: "18",
1027
1111
  height: "18",
@@ -1041,13 +1125,13 @@ var Cn = y({
1041
1125
  d: "m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",
1042
1126
  key: "1xmnt7"
1043
1127
  }]
1044
- ]), Fn = F("navigation", [["polygon", {
1128
+ ]), Gn = F("navigation", [["polygon", {
1045
1129
  points: "3 11 22 2 13 21 11 13 3 11",
1046
1130
  key: "1ltx0t"
1047
- }]]), In = F("puzzle", [["path", {
1131
+ }]]), Kn = F("puzzle", [["path", {
1048
1132
  d: "M15.39 4.39a1 1 0 0 0 1.68-.474 2.5 2.5 0 1 1 3.014 3.015 1 1 0 0 0-.474 1.68l1.683 1.682a2.414 2.414 0 0 1 0 3.414L19.61 15.39a1 1 0 0 1-1.68-.474 2.5 2.5 0 1 0-3.014 3.015 1 1 0 0 1 .474 1.68l-1.683 1.682a2.414 2.414 0 0 1-3.414 0L8.61 19.61a1 1 0 0 0-1.68.474 2.5 2.5 0 1 1-3.014-3.015 1 1 0 0 0 .474-1.68l-1.683-1.682a2.414 2.414 0 0 1 0-3.414L4.39 8.61a1 1 0 0 1 1.68.474 2.5 2.5 0 1 0 3.014-3.015 1 1 0 0 1-.474-1.68l1.683-1.682a2.414 2.414 0 0 1 3.414 0z",
1049
1133
  key: "w46dr5"
1050
- }]]), Ln = F("share-2", [
1134
+ }]]), qn = F("share-2", [
1051
1135
  ["circle", {
1052
1136
  cx: "18",
1053
1137
  cy: "5",
@@ -1080,7 +1164,7 @@ var Cn = y({
1080
1164
  y2: "10.49",
1081
1165
  key: "1n3mei"
1082
1166
  }]
1083
- ]), Rn = F("table", [
1167
+ ]), Jn = F("table", [
1084
1168
  ["path", {
1085
1169
  d: "M12 3v18",
1086
1170
  key: "108xh3"
@@ -1101,7 +1185,7 @@ var Cn = y({
1101
1185
  d: "M3 15h18",
1102
1186
  key: "5xshup"
1103
1187
  }]
1104
- ]), zn = F("video", [["path", {
1188
+ ]), Yn = F("video", [["path", {
1105
1189
  d: "m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",
1106
1190
  key: "ftymec"
1107
1191
  }], ["rect", {
@@ -1111,11 +1195,11 @@ var Cn = y({
1111
1195
  height: "12",
1112
1196
  rx: "2",
1113
1197
  key: "158x01"
1114
- }]]), Bn = ["innerHTML"], Vn = [
1198
+ }]]), Xn = ["innerHTML"], Zn = [
1115
1199
  "src",
1116
1200
  "width",
1117
1201
  "height"
1118
- ], Hn = /* @__PURE__ */ y({
1202
+ ], Qn = /* @__PURE__ */ y({
1119
1203
  __name: "CustomBlockIcon",
1120
1204
  props: {
1121
1205
  icon: {},
@@ -1131,14 +1215,14 @@ var Cn = y({
1131
1215
  height: `${n.value}px`
1132
1216
  }),
1133
1217
  innerHTML: e.icon
1134
- }, null, 12, Bn)) : a.value ? (f(), x("img", {
1218
+ }, null, 12, Xn)) : a.value ? (f(), x("img", {
1135
1219
  key: 1,
1136
1220
  src: e.icon,
1137
1221
  width: n.value,
1138
1222
  height: n.value,
1139
1223
  class: "tpl:inline-block",
1140
1224
  alt: ""
1141
- }, null, 8, Vn)) : (f(), D(k(On), {
1225
+ }, null, 8, Zn)) : (f(), D(k(Rn), {
1142
1226
  key: 2,
1143
1227
  size: n.value,
1144
1228
  "stroke-width": 1.5
@@ -1147,16 +1231,16 @@ var Cn = y({
1147
1231
  });
1148
1232
  //#endregion
1149
1233
  //#region src/composables/useEditorRoot.ts
1150
- function Un() {
1151
- return N(mt, document) ?? document;
1234
+ function $n() {
1235
+ return N(yt, document) ?? document;
1152
1236
  }
1153
1237
  //#endregion
1154
1238
  //#region src/composables/useFocusTrap.ts
1155
- var Wn = "a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])";
1156
- function Gn(e, t) {
1157
- let n = Un(), r = null, i = null, a = null;
1239
+ var er = "a[href], button:not([disabled]), input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])";
1240
+ function tr(e, t) {
1241
+ let n = $n(), r = null, i = null, a = null;
1158
1242
  function o() {
1159
- return e.value ? Array.from(e.value.querySelectorAll(Wn)).filter((e) => e.offsetParent !== null) : [];
1243
+ return e.value ? Array.from(e.value.querySelectorAll(er)).filter((e) => e.offsetParent !== null) : [];
1160
1244
  }
1161
1245
  function s(e) {
1162
1246
  if (e.key !== "Tab") return;
@@ -1171,7 +1255,7 @@ function Gn(e, t) {
1171
1255
  a = null;
1172
1256
  let t = o();
1173
1257
  t.length > 0 && (e.value?.querySelector("[autofocus], input:not([disabled])") ?? t[0]).focus();
1174
- }), i = Je(e, "keydown", s);
1258
+ }), i = et(e, "keydown", s);
1175
1259
  }
1176
1260
  function d(e = {}) {
1177
1261
  let t = e.restoreFocus !== !1;
@@ -1186,8 +1270,8 @@ function Gn(e, t) {
1186
1270
  }
1187
1271
  //#endregion
1188
1272
  //#region src/composables/useEmoji.ts
1189
- function Kn() {
1190
- let [e, t] = He(!1), n = v([]), r = !1;
1273
+ function nr() {
1274
+ let [e, t] = Ge(!1), n = v([]), r = !1;
1191
1275
  u(() => {
1192
1276
  r = !0;
1193
1277
  }), c(e, async (e) => {
@@ -1212,7 +1296,7 @@ function Kn() {
1212
1296
  }
1213
1297
  //#endregion
1214
1298
  //#region src/composables/useDragDrop.ts
1215
- function qn(e) {
1299
+ function rr(e) {
1216
1300
  let { onBlockMove: t, onBlockAdd: n } = e, r = _(!1), i = _(null), a = _(null);
1217
1301
  function o(e) {
1218
1302
  r.value = !0, i.value = e;
@@ -1262,7 +1346,7 @@ function qn(e) {
1262
1346
  }
1263
1347
  //#endregion
1264
1348
  //#region src/composables/useFonts.ts
1265
- var Jn = [
1349
+ var ir = [
1266
1350
  {
1267
1351
  value: "Arial",
1268
1352
  label: "Arial"
@@ -1291,7 +1375,7 @@ var Jn = [
1291
1375
  value: "Courier New",
1292
1376
  label: "Courier New"
1293
1377
  }
1294
- ], Yn = {
1378
+ ], ar = {
1295
1379
  arial: "Arial, sans-serif",
1296
1380
  helvetica: "Helvetica, sans-serif",
1297
1381
  georgia: "Georgia, serif",
@@ -1299,91 +1383,107 @@ var Jn = [
1299
1383
  verdana: "Verdana, sans-serif",
1300
1384
  "trebuchet ms": "'Trebuchet MS', sans-serif",
1301
1385
  "courier new": "'Courier New', monospace"
1302
- }, Xn = "Arial, sans-serif";
1303
- function Zn(e) {
1304
- let t = _(e?.customFonts ?? []), n = _(!0), r = _(!1), i = j(() => e?.defaultFallback ?? Xn);
1305
- function a(e) {
1386
+ }, or = "Arial, sans-serif";
1387
+ function sr(e) {
1388
+ if (e === void 0 || e === !0) return [...ir];
1389
+ if (e === !1) return [];
1390
+ let t = [], n = /* @__PURE__ */ new Set(), r = /* @__PURE__ */ new Set();
1391
+ for (let i of e) {
1392
+ let e = i.toLowerCase(), a = ir.find((t) => t.value.toLowerCase() === e);
1393
+ if (!a) {
1394
+ r.has(e) || (r.add(e), bn.warn(`config.fonts.builtIns: "${i}" is not a built-in font — skipping it. Built-in fonts are: ${ir.map((e) => e.value).join(", ")}.`));
1395
+ continue;
1396
+ }
1397
+ n.has(a.value) || (n.add(a.value), t.push(a));
1398
+ }
1399
+ return t;
1400
+ }
1401
+ function cr(e) {
1402
+ let t = _(e?.customFonts ?? []), n = _(!0), r = _(!1), i = sr(e?.builtIns), a = j(() => e?.defaultFallback ?? or);
1403
+ function o(e) {
1306
1404
  n.value = e;
1307
1405
  }
1308
- let o = j(() => {
1309
- let e = [...Jn];
1406
+ let c = j(() => {
1407
+ let e = [...i];
1310
1408
  if (!n.value) return e.sort((e, t) => e.label.localeCompare(t.label));
1311
1409
  let r = t.value.map((e) => ({
1312
1410
  value: e.name,
1313
1411
  label: e.name,
1314
1412
  isCustom: !0
1315
- })), i = [...e, ...r];
1316
- return i.sort((e, t) => e.label.localeCompare(t.label)), i;
1413
+ })), a = [...e, ...r];
1414
+ return a.sort((e, t) => e.label.localeCompare(t.label)), a;
1317
1415
  });
1318
- function c(e) {
1319
- return o.value.some((t) => t.label.toLowerCase() === e.toLowerCase() || t.value.toLowerCase().startsWith(e.toLowerCase()));
1320
- }
1321
1416
  function l(e) {
1322
- return Jn.some((t) => t.label.toLowerCase() === e.toLowerCase() || t.value.toLowerCase().startsWith(e.toLowerCase()));
1417
+ return c.value.some((t) => t.label.toLowerCase() === e.toLowerCase() || t.value.toLowerCase().startsWith(e.toLowerCase()));
1323
1418
  }
1324
- function d() {
1419
+ let d = e?.defaultFont ?? or.split(",")[0].trim();
1420
+ l(d) || bn.warn(`config.fonts: new templates seed "${d}", which the font picker doesn't offer — authors can't reselect it. Either add it to fonts.builtIns, or set fonts.defaultFont to an offered font.`);
1421
+ function f(e) {
1422
+ return ir.some((t) => t.label.toLowerCase() === e.toLowerCase() || t.value.toLowerCase().startsWith(e.toLowerCase()));
1423
+ }
1424
+ function p() {
1325
1425
  if (e?.defaultFont) {
1326
- if (!n.value && !l(e.defaultFont)) return Xn;
1327
- if (c(e.defaultFont)) {
1328
- let t = o.value.find((t) => t.label.toLowerCase() === e.defaultFont.toLowerCase() || t.value.toLowerCase().startsWith(e.defaultFont.toLowerCase()));
1426
+ if (!n.value && !f(e.defaultFont)) return or;
1427
+ if (l(e.defaultFont)) {
1428
+ let t = c.value.find((t) => t.label.toLowerCase() === e.defaultFont.toLowerCase() || t.value.toLowerCase().startsWith(e.defaultFont.toLowerCase()));
1329
1429
  if (t) return t.value;
1330
1430
  }
1331
1431
  }
1332
- return Xn;
1432
+ return or;
1333
1433
  }
1334
- let f = j(() => d());
1335
- function p(e) {
1336
- if (!e) return i.value;
1434
+ let m = j(() => p());
1435
+ function h(e) {
1436
+ if (!e) return a.value;
1337
1437
  let n = t.value.find((t) => t.name.toLowerCase() === e.toLowerCase());
1338
1438
  if (n) {
1339
- let e = n.fallback ?? i.value;
1439
+ let e = n.fallback ?? a.value;
1340
1440
  return `'${n.name}', ${e}`;
1341
1441
  }
1342
- return Yn[e.toLowerCase()] || (e.includes(",") ? e : `${e}, ${i.value}`);
1442
+ return ar[e.toLowerCase()] || (e.includes(",") ? e : `${e}, ${a.value}`);
1343
1443
  }
1344
- let m = [], h = !1;
1345
- async function g() {
1444
+ let g = [], v = !1;
1445
+ async function y() {
1346
1446
  if (t.value.length === 0) {
1347
- h || (r.value = !0);
1447
+ v || (r.value = !0);
1348
1448
  return;
1349
1449
  }
1350
1450
  let e = t.value.map(async (e) => {
1351
1451
  try {
1352
1452
  if (document.querySelector(`link[data-custom-font="${CSS.escape(e.name)}"]`)) return;
1353
1453
  let t = document.createElement("link");
1354
- t.rel = "stylesheet", t.href = e.url, t.setAttribute("data-custom-font", e.name), m.push(t), await new Promise((n, r) => {
1454
+ t.rel = "stylesheet", t.href = e.url, t.setAttribute("data-custom-font", e.name), g.push(t), await new Promise((n, r) => {
1355
1455
  t.onload = () => n(), t.onerror = () => r(/* @__PURE__ */ Error(`Failed to load font: ${e.name}`)), document.head.appendChild(t);
1356
1456
  });
1357
1457
  } catch (t) {
1358
- fn.warn(`Failed to load custom font "${e.name}":`, t);
1458
+ bn.warn(`Failed to load custom font "${e.name}":`, t);
1359
1459
  }
1360
1460
  });
1361
- await Promise.allSettled(e), !h && (r.value = !0);
1461
+ await Promise.allSettled(e), !v && (r.value = !0);
1362
1462
  }
1363
- function v() {
1364
- for (let e of m) e.remove();
1365
- m.length = 0;
1463
+ function b() {
1464
+ for (let e of g) e.remove();
1465
+ g.length = 0;
1366
1466
  }
1367
1467
  return s() && u(() => {
1368
- h = !0, v();
1468
+ v = !0, b();
1369
1469
  }), {
1370
- fonts: o,
1371
- defaultFont: f,
1372
- defaultFallback: i,
1470
+ fonts: c,
1471
+ defaultFont: m,
1472
+ defaultFallback: a,
1373
1473
  customFonts: t,
1374
1474
  customFontsEnabled: n,
1375
1475
  isLoaded: r,
1376
- setCustomFontsEnabled: a,
1377
- loadCustomFonts: g,
1378
- cleanupFontLinks: v,
1379
- getFontWithFallback: p,
1380
- getDefaultFont: d
1476
+ setCustomFontsEnabled: o,
1477
+ loadCustomFonts: y,
1478
+ cleanupFontLinks: b,
1479
+ getFontWithFallback: h,
1480
+ getDefaultFont: p
1381
1481
  };
1382
1482
  }
1383
1483
  //#endregion
1384
1484
  //#region src/composables/useLogicTag.ts
1385
- function Qn() {
1386
- let e = N(Et, []), t = N(ut, []), n = N($e, Me.liquid), r = N(Qe, null), i = N(ot, null), a = _(!1), o = !!r || e.length > 0 || t.length > 0, s = e.length > 0 || t.length > 0;
1485
+ function lr() {
1486
+ let e = N(rt, []), t = N(ft, []), n = N(ut, Se.liquid), r = N(Ct, null), i = N(jt, null), a = _(!1), o = !!r || e.length > 0 || t.length > 0, s = e.length > 0 || t.length > 0;
1387
1487
  async function c() {
1388
1488
  if (r) {
1389
1489
  a.value = !0;
@@ -1414,12 +1514,12 @@ function Qn() {
1414
1514
  }
1415
1515
  //#endregion
1416
1516
  //#region src/utils/mergeTagNodeSpec.ts
1417
- function $n(e, t, n) {
1418
- return Ee(e, n) ? {
1517
+ function ur(e, t, n) {
1518
+ return Ae(e, n) ? {
1419
1519
  type: "logicMergeTagNode",
1420
1520
  attrs: {
1421
1521
  value: e,
1422
- keyword: Le(e, n)
1522
+ keyword: pe(e, n)
1423
1523
  }
1424
1524
  } : {
1425
1525
  type: "mergeTagNode",
@@ -1431,15 +1531,15 @@ function $n(e, t, n) {
1431
1531
  }
1432
1532
  //#endregion
1433
1533
  //#region src/utils/insertLogicTag.ts
1434
- function er(e) {
1534
+ function dr(e) {
1435
1535
  return "before" in e && "after" in e;
1436
1536
  }
1437
- function tr(e, t, n) {
1438
- if (!er(t)) {
1439
- e.chain().focus().insertContent($n(t.value, t.label, n)).run();
1537
+ function fr(e, t, n) {
1538
+ if (!dr(t)) {
1539
+ e.chain().focus().insertContent(ur(t.value, t.label, n)).run();
1440
1540
  return;
1441
1541
  }
1442
- let r = $n(t.before, t.label, n), i = $n(t.after, t.label, n), { from: a, to: o } = e.state.selection;
1542
+ let r = ur(t.before, t.label, n), i = ur(t.after, t.label, n), { from: a, to: o } = e.state.selection;
1443
1543
  if (a !== o) {
1444
1544
  e.chain().focus().insertContentAt(o, i).insertContentAt(a, r).run();
1445
1545
  return;
@@ -1448,20 +1548,20 @@ function tr(e, t, n) {
1448
1548
  }
1449
1549
  //#endregion
1450
1550
  //#region src/utils/linkColorExtension.ts
1451
- function nr(e) {
1551
+ function pr(e) {
1452
1552
  if (!e) return null;
1453
1553
  let t = e.trim();
1454
1554
  return /^#[0-9a-f]{3,8}$/i.test(t) || /^(rgb|rgba|hsl|hsla)\(\s*[0-9.,%/\s]+\)$/i.test(t) || /^[a-z]+$/i.test(t) ? t : null;
1455
1555
  }
1456
- function rr(e) {
1556
+ function mr(e) {
1457
1557
  return e.extend({ addAttributes() {
1458
1558
  return {
1459
1559
  ...this.parent?.(),
1460
1560
  color: {
1461
1561
  default: null,
1462
- parseHTML: (e) => nr(qe(e.style.color)),
1562
+ parseHTML: (e) => pr(Ye(e.style.color)),
1463
1563
  renderHTML: (e) => {
1464
- let t = nr(e.color);
1564
+ let t = pr(e.color);
1465
1565
  return t ? { style: `color: ${t}` } : {};
1466
1566
  }
1467
1567
  }
@@ -1470,9 +1570,9 @@ function rr(e) {
1470
1570
  }
1471
1571
  //#endregion
1472
1572
  //#region src/composables/useRichTextLinkDialog.ts
1473
- function ir(e) {
1573
+ function hr(e) {
1474
1574
  let t = _(!1), n = _(""), r = _(""), i = _(null);
1475
- Gn(i, t);
1575
+ tr(i, t);
1476
1576
  function a() {
1477
1577
  let i = e.value?.getAttributes("link") ?? {};
1478
1578
  n.value = i.href || "", r.value = i.color || "", t.value = !0;
@@ -1481,7 +1581,7 @@ function ir(e) {
1481
1581
  if (n.value) {
1482
1582
  let t = c(n.value);
1483
1583
  if (t !== null) {
1484
- let n = nr(r.value), i = e.value?.chain().focus().extendMarkRange("link").setLink({ href: t }).updateAttributes("link", { color: n });
1584
+ let n = pr(r.value), i = e.value?.chain().focus().extendMarkRange("link").setLink({ href: t }).updateAttributes("link", { color: n });
1485
1585
  n && typeof e.value?.commands.unsetColor == "function" && i?.unsetColor(), i?.run();
1486
1586
  }
1487
1587
  }
@@ -1528,8 +1628,8 @@ function ir(e) {
1528
1628
  }
1529
1629
  //#endregion
1530
1630
  //#region src/composables/useRichTextEditor.ts
1531
- function ar(e) {
1532
- let t = N(vt, null), { mergeTags: n, canRequestMergeTag: r, isRequesting: i, requestMergeTag: a, syntax: o, autocomplete: s } = It(), { canInsertLogicTag: l, isRequesting: u, requestLogicTag: d } = Qn(), f = N(tt, null), p = (g(f) ? f.value : f)?.mergeTag?.suggestionEmpty ?? "No matching merge tags", m = de(o), y = v(null), { showLinkDialog: b, linkUrl: x, linkColor: S, linkDialogRef: C, openLinkDialog: w, insertLink: T, removeLink: E, closeLinkDialog: D, handleLinkKeydown: O } = ir(y), { start: k, stop: ee } = Ue(() => y.value?.commands.focus("end"), 0, { immediate: !1 }), A = v(null), te = _(!0), j = _(null), ne = !1;
1631
+ function gr(e) {
1632
+ let t = N(bt, null), { mergeTags: n, canRequestMergeTag: r, isRequesting: i, requestMergeTag: a, syntax: o, autocomplete: s } = Ht(), { canInsertLogicTag: l, isRequesting: u, requestLogicTag: d } = lr(), f = N(dt, null), p = (g(f) ? f.value : f)?.mergeTag?.suggestionEmpty ?? "No matching merge tags", m = je(o), y = v(null), { showLinkDialog: b, linkUrl: x, linkColor: S, linkDialogRef: C, openLinkDialog: w, insertLink: T, removeLink: E, closeLinkDialog: D, handleLinkKeydown: O } = hr(y), { start: k, stop: ee } = Ke(() => y.value?.commands.focus("end"), 0, { immediate: !1 }), A = v(null), te = _(!0), j = _(null), ne = !1;
1533
1633
  async function M() {
1534
1634
  j.value = null, te.value = !0;
1535
1635
  try {
@@ -1559,7 +1659,7 @@ function ar(e) {
1559
1659
  y.value = l, te.value = !1, k();
1560
1660
  } catch (t) {
1561
1661
  if (ne) return;
1562
- fn.error(`[${e.editorName ?? "RichTextEditor"}] Failed to initialize TipTap editor:`, t), j.value = t instanceof Error ? t.message : "Failed to load editor", te.value = !1;
1662
+ bn.error(`[${e.editorName ?? "RichTextEditor"}] Failed to initialize TipTap editor:`, t), j.value = t instanceof Error ? t.message : "Failed to load editor", te.value = !1;
1563
1663
  }
1564
1664
  }
1565
1665
  function re() {
@@ -1577,7 +1677,7 @@ function ar(e) {
1577
1677
  let a = n.some((e) => e instanceof HTMLElement && e.classList.contains("tpl-color-popover"));
1578
1678
  r.closest(".tpl-text-editor-wrapper") || r.closest(".tpl-text-toolbar") || r.closest(".tpl-link-dialog") || a || e.onDone();
1579
1679
  }
1580
- Je(document, "mousedown", ae), h(() => {
1680
+ et(document, "mousedown", ae), h(() => {
1581
1681
  ne = !0, ie(), ee(), y.value?.destroy();
1582
1682
  });
1583
1683
  async function oe() {
@@ -1589,7 +1689,7 @@ function ar(e) {
1589
1689
  }
1590
1690
  async function P() {
1591
1691
  let e = await d();
1592
- ne || (e && y.value ? tr(y.value, e, o) : y.value?.commands.focus());
1692
+ ne || (e && y.value ? fr(y.value, e, o) : y.value?.commands.focus());
1593
1693
  }
1594
1694
  return {
1595
1695
  editor: y,
@@ -1618,9 +1718,9 @@ function ar(e) {
1618
1718
  }
1619
1719
  //#endregion
1620
1720
  //#region src/composables/useSmallScreenNotice.ts
1621
- var or = "(max-width: 767px)";
1622
- function sr(e) {
1623
- let t = Ge(or);
1721
+ var _r = "(max-width: 767px)";
1722
+ function vr(e) {
1723
+ let t = Je(_r);
1624
1724
  return {
1625
1725
  isSmallScreen: t,
1626
1726
  showNotice: j(() => (S(e) ?? !0) && t.value)
@@ -1628,20 +1728,20 @@ function sr(e) {
1628
1728
  }
1629
1729
  //#endregion
1630
1730
  //#region src/components/blocks/CustomBlock.vue?vue&type=script&setup=true&lang.ts
1631
- var cr = { class: "tpl:w-full" }, lr = {
1731
+ var yr = { class: "tpl:w-full" }, br = {
1632
1732
  key: 0,
1633
1733
  class: "tpl:flex tpl:min-h-[80px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border tpl:border-dashed tpl:py-4 tpl:border-[var(--tpl-warning)] tpl:bg-[var(--tpl-warning-light)]"
1634
- }, ur = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, dr = {
1734
+ }, xr = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, Sr = {
1635
1735
  key: 1,
1636
1736
  class: "tpl:flex tpl:min-h-[80px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border tpl:border-dashed tpl:py-4 tpl:border-[var(--tpl-danger)] tpl:bg-[var(--tpl-danger-light)]"
1637
- }, fr = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, pr = {
1737
+ }, Cr = { class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]" }, wr = {
1638
1738
  key: 2,
1639
1739
  class: "tpl:relative"
1640
- }, mr = ["innerHTML"], hr = {
1740
+ }, Tr = ["innerHTML"], Er = {
1641
1741
  key: 0,
1642
1742
  class: "tpl:absolute tpl:inset-0 tpl:flex tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-3 tpl:rounded tpl:backdrop-blur-[2px]",
1643
1743
  style: { "background-color": "color-mix(in srgb, var(--tpl-bg) 80%, transparent)" }
1644
- }, gr = /* @__PURE__ */ y({
1744
+ }, Dr = /* @__PURE__ */ y({
1645
1745
  __name: "CustomBlock",
1646
1746
  props: {
1647
1747
  block: {},
@@ -1649,7 +1749,7 @@ var cr = { class: "tpl:w-full" }, lr = {
1649
1749
  },
1650
1750
  emits: ["fetchData"],
1651
1751
  setup(e, { emit: t }) {
1652
- let n = e, r = t, { t: i } = Ot(), o = N(bt, null), s = _(""), l = _(!1), u = j(() => o?.getDefinition(n.block.customType)), d = j(() => !!u.value), { isFetching: m, fetch: h, needsFetch: g, hasDataSource: v } = Jt({
1752
+ let n = e, r = t, { t: i } = Ft(), o = N(Dt, null), s = _(""), l = _(!1), u = j(() => o?.getDefinition(n.block.customType)), d = j(() => !!u.value), { isFetching: m, fetch: h, needsFetch: g, hasDataSource: v } = en({
1653
1753
  definition: u,
1654
1754
  block: j(() => n.block),
1655
1755
  onUpdate: (e, t) => {
@@ -1670,15 +1770,15 @@ var cr = { class: "tpl:w-full" }, lr = {
1670
1770
  }
1671
1771
  }
1672
1772
  }
1673
- let S = Be(y, 150);
1773
+ let S = Ue(y, 150);
1674
1774
  return a(() => {
1675
1775
  y();
1676
1776
  }), c(() => n.block.fieldValues, () => {
1677
1777
  S();
1678
- }, { deep: !0 }), (e, t) => (f(), x("div", cr, [d.value ? l.value ? (f(), x("div", dr, [w(k(Mt), {
1778
+ }, { deep: !0 }), (e, t) => (f(), x("div", yr, [d.value ? l.value ? (f(), x("div", Sr, [w(k(zt), {
1679
1779
  size: 24,
1680
1780
  class: "tpl:text-[var(--tpl-danger)]"
1681
- }), b("span", fr, p(k(i).customBlocks.renderError), 1)])) : (f(), x("div", pr, [b("div", { innerHTML: s.value }, null, 8, mr), k(v) && k(g) ? (f(), x("div", hr, [k(m) ? (f(), D(Pt, {
1781
+ }), b("span", Cr, p(k(i).customBlocks.renderError), 1)])) : (f(), x("div", wr, [b("div", { innerHTML: s.value }, null, 8, Tr), k(v) && k(g) ? (f(), x("div", Er, [k(m) ? (f(), D(Bt, {
1682
1782
  key: 1,
1683
1783
  class: "tpl:w-48"
1684
1784
  })) : (f(), x("button", {
@@ -1686,16 +1786,16 @@ var cr = { class: "tpl:w-full" }, lr = {
1686
1786
  type: "button",
1687
1787
  class: "tpl:flex tpl:cursor-pointer tpl:items-center tpl:gap-2 tpl:rounded-[var(--tpl-radius-sm)] tpl:border tpl:border-[var(--tpl-border)] tpl:px-4 tpl:py-2 tpl:text-sm tpl:font-semibold tpl:shadow-sm tpl:transition-all tpl:duration-150 hover:tpl:border-[var(--tpl-primary)] hover:tpl:shadow-md tpl:bg-[var(--tpl-primary-light)] tpl:text-[var(--tpl-primary-hover)]",
1688
1788
  onClick: t[0] ||= P((...e) => k(h) && k(h)(...e), ["stop"])
1689
- }, [u.value?.icon ? (f(), D(Hn, {
1789
+ }, [u.value?.icon ? (f(), D(Qn, {
1690
1790
  key: 0,
1691
1791
  icon: u.value.icon,
1692
1792
  size: 16
1693
- }, null, 8, ["icon"])) : M("", !0), O(" " + p(u.value?.dataSource?.label || k(i).customBlocks.dataSource.fetchButton), 1)]))])) : M("", !0)])) : (f(), x("div", lr, [w(k(In), {
1793
+ }, null, 8, ["icon"])) : M("", !0), O(" " + p(u.value?.dataSource?.label || k(i).customBlocks.dataSource.fetchButton), 1)]))])) : M("", !0)])) : (f(), x("div", br, [w(k(Kn), {
1694
1794
  size: 24,
1695
1795
  class: "tpl:text-[var(--tpl-warning)]"
1696
- }), b("span", ur, p(k(i).customBlocks.definitionNotFound), 1)]))]));
1796
+ }), b("span", xr, p(k(i).customBlocks.definitionNotFound), 1)]))]));
1697
1797
  }
1698
- }), _r = { class: "tpl:w-full" }, vr = /* @__PURE__ */ y({
1798
+ }), Or = { class: "tpl:w-full" }, kr = /* @__PURE__ */ y({
1699
1799
  __name: "DividerBlock",
1700
1800
  props: {
1701
1801
  block: {},
@@ -1707,28 +1807,28 @@ var cr = { class: "tpl:w-full" }, lr = {
1707
1807
  width: t.block.width === "full" ? "100%" : `${t.block.width}px`,
1708
1808
  margin: t.block.width === "full" ? "0" : "0 auto"
1709
1809
  }));
1710
- return (e, t) => (f(), x("div", _r, [b("hr", {
1810
+ return (e, t) => (f(), x("div", Or, [b("hr", {
1711
1811
  class: "tpl:m-0 tpl:border-none",
1712
1812
  style: i(n.value)
1713
1813
  }, null, 4)]));
1714
1814
  }
1715
- }), yr = { class: "tpl:w-full" }, br = ["srcdoc", "title"], xr = {
1815
+ }), Ar = { class: "tpl:w-full" }, jr = ["srcdoc", "title"], Mr = {
1716
1816
  key: 1,
1717
1817
  class: "tpl:flex tpl:min-h-[80px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border tpl:border-dashed tpl:py-4 tpl:border-[var(--tpl-border)] tpl:bg-[var(--tpl-bg-hover)]"
1718
- }, Sr = {
1818
+ }, Nr = {
1719
1819
  key: 0,
1720
1820
  class: "tpl:text-sm tpl:text-[var(--tpl-text-muted)]"
1721
- }, Cr = {
1821
+ }, Pr = {
1722
1822
  key: 1,
1723
1823
  class: "tpl:text-sm tpl:text-[var(--tpl-text-dim)]"
1724
- }, wr = /* @__PURE__ */ y({
1824
+ }, Fr = /* @__PURE__ */ y({
1725
1825
  __name: "HtmlBlock",
1726
1826
  props: {
1727
1827
  block: {},
1728
1828
  viewport: {}
1729
1829
  },
1730
1830
  setup(e) {
1731
- let t = e, { t: n } = Ot(), r = N(wt, !1), a = j(() => t.block.content.trim().length > 0), o = j(() => r && a.value), s = _(null), l = _(60), u = null;
1831
+ let t = e, { t: n } = Ft(), r = N(Nt, !1), a = j(() => t.block.content.trim().length > 0), o = j(() => r && a.value), s = _(null), l = _(60), u = null;
1732
1832
  function d() {
1733
1833
  let e = s.value?.contentDocument;
1734
1834
  e && (l.value = Math.max(e.body?.scrollHeight ?? 0, e.documentElement?.scrollHeight ?? 0));
@@ -1742,7 +1842,7 @@ var cr = { class: "tpl:w-full" }, lr = {
1742
1842
  e || (u?.disconnect(), u = null);
1743
1843
  }), h(() => {
1744
1844
  u?.disconnect(), u = null;
1745
- }), (t, r) => (f(), x("div", yr, [o.value ? (f(), x("iframe", {
1845
+ }), (t, r) => (f(), x("div", Ar, [o.value ? (f(), x("iframe", {
1746
1846
  key: 0,
1747
1847
  ref_key: "iframeRef",
1748
1848
  ref: s,
@@ -1752,18 +1852,18 @@ var cr = { class: "tpl:w-full" }, lr = {
1752
1852
  class: "tpl:block tpl:w-full tpl:border-0",
1753
1853
  style: i({ height: `${l.value}px` }),
1754
1854
  onLoad: m
1755
- }, null, 44, br)) : (f(), x("div", xr, [w(k(kn), {
1855
+ }, null, 44, jr)) : (f(), x("div", Mr, [w(k(zn), {
1756
1856
  size: 24,
1757
1857
  class: "tpl:text-[var(--tpl-text-dim)]"
1758
- }), a.value ? (f(), x("span", Sr, p(k(n).html.preview), 1)) : (f(), x("span", Cr, p(k(n).html.empty), 1))]))]));
1858
+ }), a.value ? (f(), x("span", Nr, p(k(n).html.preview), 1)) : (f(), x("span", Pr, p(k(n).html.empty), 1))]))]));
1759
1859
  }
1760
- }), Tr = "image/";
1761
- function Er(e) {
1762
- let { target: t, onFiles: n, enabled: r } = e, i = () => r === void 0 || S(r), { isOverDropZone: a } = We(t, {
1860
+ }), Ir = "image/";
1861
+ function Lr(e) {
1862
+ let { target: t, onFiles: n, enabled: r } = e, i = () => r === void 0 || S(r), { isOverDropZone: a } = qe(t, {
1763
1863
  preventDefaultForUnhandled: !0,
1764
1864
  onDrop: (e) => {
1765
1865
  if (!i()) return;
1766
- let t = (e ?? []).filter((e) => e.type.startsWith(Tr));
1866
+ let t = (e ?? []).filter((e) => e.type.startsWith(Ir));
1767
1867
  t.length > 0 && n([t[0]]);
1768
1868
  }
1769
1869
  });
@@ -1771,17 +1871,17 @@ function Er(e) {
1771
1871
  }
1772
1872
  //#endregion
1773
1873
  //#region src/components/blocks/ImageBlock.vue?vue&type=script&setup=true&lang.ts
1774
- var Dr = {
1874
+ var Rr = {
1775
1875
  key: 0,
1776
1876
  class: "tpl:pointer-events-none tpl:absolute tpl:inset-0 tpl:z-10 tpl:flex tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border-2 tpl:border-dashed tpl:text-xs tpl:font-medium tpl:border-[var(--tpl-primary)] tpl:text-[var(--tpl-primary)]",
1777
1877
  style: { "background-color": "color-mix(in srgb, var(--tpl-bg) 85%, transparent)" }
1778
- }, Or = ["href"], kr = ["src", "alt"], Ar = ["src", "alt"], jr = {
1878
+ }, zr = ["href"], Br = ["src", "alt"], Vr = ["src", "alt"], Hr = {
1779
1879
  class: "tpl:max-w-full tpl:truncate tpl:px-3 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-primary)]",
1780
1880
  style: { opacity: "0.7" }
1781
- }, Mr = ["href"], Nr = ["src", "alt"], Pr = ["src", "alt"], Fr = {
1881
+ }, Ur = ["href"], Wr = ["src", "alt"], Gr = ["src", "alt"], Kr = {
1782
1882
  key: 4,
1783
1883
  class: "tpl:flex tpl:min-h-[100px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border-2 tpl:border-dashed tpl:text-sm tpl:border-[var(--tpl-border-light)] tpl:bg-[var(--tpl-bg-hover)] tpl:text-[var(--tpl-text-dim)]"
1784
- }, Ir = ["aria-label"], Lr = { key: 1 }, Rr = /* @__PURE__ */ y({
1884
+ }, qr = ["aria-label"], Jr = { key: 1 }, Yr = /* @__PURE__ */ y({
1785
1885
  __name: "ImageBlock",
1786
1886
  props: {
1787
1887
  block: {},
@@ -1789,7 +1889,7 @@ var Dr = {
1789
1889
  },
1790
1890
  emits: ["update"],
1791
1891
  setup(e, { emit: t }) {
1792
- let n = e, r = t, { t: a } = Ot(), { syntax: o } = It(), s = N(rt, null), c = j(() => !!s), l = Lt();
1892
+ let n = e, r = t, { t: a } = Ft(), { syntax: o } = Ht(), s = N(tt, null), c = j(() => !!s), l = Ut();
1793
1893
  async function u() {
1794
1894
  let e = await s?.({ accept: ["images"] });
1795
1895
  if (l.alive && e) {
@@ -1816,7 +1916,7 @@ var Dr = {
1816
1916
  }
1817
1917
  }
1818
1918
  }
1819
- let { isOver: v } = Er({
1919
+ let { isOver: v } = Lr({
1820
1920
  target: d,
1821
1921
  enabled: h,
1822
1922
  onFiles: g
@@ -1829,18 +1929,18 @@ var Dr = {
1829
1929
  marginLeft: e === "center" || e === "right" ? "auto" : void 0,
1830
1930
  marginRight: e === "center" ? "auto" : void 0
1831
1931
  };
1832
- }), C = j(() => Ae(n.block.src, o));
1932
+ }), C = j(() => we(n.block.src, o)), T = cn(() => C.value ? void 0 : n.block.src), E = cn(() => C.value ? n.block.placeholderUrl : void 0);
1833
1933
  return (t, n) => (f(), x("div", {
1834
1934
  ref_key: "dropZoneRef",
1835
1935
  ref: d,
1836
1936
  "data-testid": "image-drop-zone",
1837
1937
  class: "tpl:relative tpl:w-full",
1838
1938
  style: i(y.value)
1839
- }, [h.value && (k(v) || m.value) ? (f(), x("div", Dr, [m.value ? (f(), x(A, { key: 0 }, [w(k(kt), {
1939
+ }, [h.value && (k(v) || m.value) ? (f(), x("div", Rr, [m.value ? (f(), x(A, { key: 0 }, [w(k(It), {
1840
1940
  class: "tpl-spinner",
1841
1941
  size: 20,
1842
1942
  "stroke-width": 2
1843
- }), O(" " + p(k(a).image.uploading), 1)], 64)) : (f(), x(A, { key: 1 }, [w(k(Nt), {
1943
+ }), O(" " + p(k(a).image.uploading), 1)], 64)) : (f(), x(A, { key: 1 }, [w(k(le), {
1844
1944
  size: 20,
1845
1945
  "stroke-width": 1.5
1846
1946
  }), O(" " + p(k(a).image.dropToUpload), 1)], 64))])) : M("", !0), e.block.src && C.value && e.block.placeholderUrl ? (f(), x(A, { key: 1 }, [e.block.linkUrl ? (f(), x("a", {
@@ -1852,25 +1952,25 @@ var Dr = {
1852
1952
  }, [b("img", {
1853
1953
  class: "tpl:border-0",
1854
1954
  loading: "lazy",
1855
- src: e.block.placeholderUrl,
1955
+ src: k(E),
1856
1956
  alt: e.block.alt || k(a).image.altTextPlaceholder,
1857
1957
  style: i(S.value)
1858
- }, null, 12, kr)], 8, Or)) : (f(), x("img", {
1958
+ }, null, 12, Br)], 8, zr)) : (f(), x("img", {
1859
1959
  key: 1,
1860
1960
  class: "tpl:border-0",
1861
- src: e.block.placeholderUrl,
1961
+ src: k(E),
1862
1962
  alt: e.block.alt,
1863
1963
  style: i(S.value)
1864
- }, null, 12, Ar))], 64)) : e.block.src && C.value ? (f(), x("div", {
1964
+ }, null, 12, Vr))], 64)) : e.block.src && C.value ? (f(), x("div", {
1865
1965
  key: 2,
1866
1966
  class: "tpl:!flex tpl:min-h-[120px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border-2 tpl:border-dashed tpl:text-center tpl:bg-[var(--tpl-bg-elevated)]",
1867
1967
  style: i([{ "border-color": "color-mix(in srgb, var(--tpl-primary) 40%, transparent)" }, S.value])
1868
- }, [w(k(Pn), {
1968
+ }, [w(k(Wn), {
1869
1969
  size: 32,
1870
1970
  "stroke-width": 1.5,
1871
1971
  class: "tpl:text-[var(--tpl-primary)]",
1872
1972
  style: { opacity: "0.5" }
1873
- }), b("span", jr, [w(Cn, { text: e.block.src }, null, 8, ["text"])])], 4)) : e.block.src ? (f(), x(A, { key: 3 }, [e.block.linkUrl ? (f(), x("a", {
1973
+ }), b("span", Hr, [w(Nn, { text: e.block.src }, null, 8, ["text"])])], 4)) : e.block.src ? (f(), x(A, { key: 3 }, [e.block.linkUrl ? (f(), x("a", {
1874
1974
  key: 0,
1875
1975
  href: e.block.linkUrl,
1876
1976
  target: "_blank",
@@ -1879,36 +1979,36 @@ var Dr = {
1879
1979
  }, [b("img", {
1880
1980
  class: "tpl:border-0",
1881
1981
  loading: "lazy",
1882
- src: e.block.src,
1982
+ src: k(T),
1883
1983
  alt: e.block.alt || k(a).image.altTextPlaceholder,
1884
1984
  style: i(S.value)
1885
- }, null, 12, Nr)], 8, Mr)) : (f(), x("img", {
1985
+ }, null, 12, Wr)], 8, Ur)) : (f(), x("img", {
1886
1986
  key: 1,
1887
1987
  class: "tpl:border-0",
1888
- src: e.block.src,
1988
+ src: k(T),
1889
1989
  alt: e.block.alt,
1890
1990
  style: i(S.value)
1891
- }, null, 12, Pr))], 64)) : (f(), x("div", Fr, [c.value ? (f(), x("button", {
1991
+ }, null, 12, Gr))], 64)) : (f(), x("div", Kr, [c.value ? (f(), x("button", {
1892
1992
  key: 0,
1893
1993
  "aria-label": k(a).image.browseMedia,
1894
1994
  class: "tpl:flex tpl:items-center tpl:gap-1.5 tpl:rounded-md tpl:border tpl:px-3 tpl:py-2 tpl:text-xs tpl:font-medium tpl:transition-all tpl:duration-150 tpl:cursor-pointer tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-primary)] tpl:bg-[var(--tpl-bg)]",
1895
1995
  onClick: P(u, ["stop"])
1896
- }, [w(k(Pn), {
1996
+ }, [w(k(Wn), {
1897
1997
  size: 14,
1898
1998
  "stroke-width": 1.5
1899
- }), O(" " + p(k(a).image.browseMedia), 1)], 8, Ir)) : (f(), x("span", Lr, p(k(a).image.clickToAdd), 1))]))], 4));
1999
+ }), O(" " + p(k(a).image.browseMedia), 1)], 8, qr)) : (f(), x("span", Jr, p(k(a).image.clickToAdd), 1))]))], 4));
1900
2000
  }
1901
- }), zr = { class: "tpl:w-full" }, Br = ["href"], Vr = {
2001
+ }), Xr = { class: "tpl:w-full" }, Zr = ["href"], Qr = {
1902
2002
  key: 1,
1903
2003
  class: "tpl:flex tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border tpl:border-dashed tpl:py-4 tpl:text-sm tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text-dim)]"
1904
- }, Hr = /* @__PURE__ */ y({
2004
+ }, $r = /* @__PURE__ */ y({
1905
2005
  __name: "MenuBlock",
1906
2006
  props: {
1907
2007
  block: {},
1908
2008
  viewport: {}
1909
2009
  },
1910
2010
  setup(e) {
1911
- let n = e, { t: r } = Ot(), a = j(() => ({
2011
+ let n = e, { t: r } = Ft(), a = j(() => ({
1912
2012
  display: "flex",
1913
2013
  flexWrap: "wrap",
1914
2014
  gap: `0 ${n.block.spacing}px`,
@@ -1920,7 +2020,7 @@ var Dr = {
1920
2020
  function s(e) {
1921
2021
  return e || n.block.linkColor || n.block.color;
1922
2022
  }
1923
- return (n, c) => (f(), x("div", zr, [o.value ? (f(), x("div", {
2023
+ return (n, c) => (f(), x("div", Xr, [o.value ? (f(), x("div", {
1924
2024
  key: 0,
1925
2025
  style: i(a.value)
1926
2026
  }, [(f(!0), x(A, null, t(e.block.items, (t, n) => (f(), x(A, { key: t.id }, [b("a", {
@@ -1932,15 +2032,15 @@ var Dr = {
1932
2032
  textDecoration: t.underline ? "underline" : "none"
1933
2033
  }),
1934
2034
  onClick: c[0] ||= P(() => {}, ["prevent"])
1935
- }, [w(Cn, { text: t.text || "..." }, null, 8, ["text"])], 12, Br), n < e.block.items.length - 1 ? (f(), x("span", {
2035
+ }, [w(Nn, { text: t.text || "..." }, null, 8, ["text"])], 12, Zr), n < e.block.items.length - 1 ? (f(), x("span", {
1936
2036
  key: 0,
1937
2037
  style: i({
1938
2038
  color: e.block.separatorColor,
1939
2039
  padding: `0 ${e.block.spacing}px`
1940
2040
  })
1941
- }, p(e.block.separator), 5)) : M("", !0)], 64))), 128))], 4)) : (f(), x("div", Vr, [w(k(Fn), { size: 16 }), b("span", null, p(k(r).menu.addLinks), 1)]))]));
2041
+ }, p(e.block.separator), 5)) : M("", !0)], 64))), 128))], 4)) : (f(), x("div", Qr, [w(k(Gn), { size: 16 }), b("span", null, p(k(r).menu.addLinks), 1)]))]));
1942
2042
  }
1943
- }), Ur = /* @__PURE__ */ new Set([
2043
+ }), ei = /* @__PURE__ */ new Set([
1944
2044
  "http",
1945
2045
  "https",
1946
2046
  "mailto",
@@ -1950,7 +2050,7 @@ var Dr = {
1950
2050
  "sms",
1951
2051
  "xmpp",
1952
2052
  "cid"
1953
- ]), Wr = /* @__PURE__ */ new Set([
2053
+ ]), ti = /* @__PURE__ */ new Set([
1954
2054
  "SCRIPT",
1955
2055
  "STYLE",
1956
2056
  "IFRAME",
@@ -1960,7 +2060,7 @@ var Dr = {
1960
2060
  "META",
1961
2061
  "BASE",
1962
2062
  "FORM"
1963
- ]), Gr = /* @__PURE__ */ new Set([
2063
+ ]), ni = /* @__PURE__ */ new Set([
1964
2064
  "href",
1965
2065
  "xlink:href",
1966
2066
  "formaction",
@@ -1969,16 +2069,16 @@ var Dr = {
1969
2069
  "background",
1970
2070
  "poster"
1971
2071
  ]);
1972
- function Kr(e, t) {
2072
+ function ri(e, t) {
1973
2073
  let n = e.replace(/[\t\n\r]/g, "").replace(/^[\u0000-\u0020]+/, "").trimEnd();
1974
2074
  if (!n || n.startsWith("#")) return !0;
1975
2075
  let r = /^([a-z][a-z0-9+.-]*):/i.exec(n);
1976
2076
  if (!r) return !0;
1977
2077
  let i = r[1].toLowerCase();
1978
- return Ur.has(i) ? !0 : t && i === "data" ? /^data:image\/(png|jpe?g|gif|webp|svg\+xml);/i.test(n) : !1;
2078
+ return ei.has(i) ? !0 : t && i === "data" ? /^data:image\/(png|jpe?g|gif|webp|svg\+xml);/i.test(n) : !1;
1979
2079
  }
1980
- function qr(e) {
1981
- if (Wr.has(e.tagName)) {
2080
+ function ii(e) {
2081
+ if (ti.has(e.tagName)) {
1982
2082
  e.remove();
1983
2083
  return;
1984
2084
  }
@@ -1990,29 +2090,29 @@ function qr(e) {
1990
2090
  e.removeAttribute(n);
1991
2091
  continue;
1992
2092
  }
1993
- if (Gr.has(t)) {
1994
- Kr(e.getAttribute(n) ?? "", !1) || e.removeAttribute(n);
2093
+ if (ni.has(t)) {
2094
+ ri(e.getAttribute(n) ?? "", !1) || e.removeAttribute(n);
1995
2095
  continue;
1996
2096
  }
1997
2097
  if (t === "src") {
1998
- Kr(e.getAttribute(n) ?? "", !0) || e.removeAttribute(n);
2098
+ ri(e.getAttribute(n) ?? "", !0) || e.removeAttribute(n);
1999
2099
  continue;
2000
2100
  }
2001
2101
  t === "srcdoc" && e.removeAttribute(n);
2002
2102
  }
2003
2103
  let n = Array.from(e.children);
2004
- for (let e of n) qr(e);
2104
+ for (let e of n) ii(e);
2005
2105
  }
2006
- function Jr(e) {
2106
+ function ai(e) {
2007
2107
  if (typeof DOMParser > "u") return e;
2008
2108
  let t = new DOMParser().parseFromString(`<!doctype html><body>${e}</body>`, "text/html").body, n = Array.from(t.children);
2009
- for (let e of n) qr(e);
2109
+ for (let e of n) ii(e);
2010
2110
  return t.innerHTML;
2011
2111
  }
2012
2112
  //#endregion
2013
2113
  //#region src/composables/useEditableTextBlock.ts
2014
- function Yr(e) {
2015
- let t = N(Ze, []), { syntax: n } = It(), r = j(() => Jr(Te(fe(e(), t), n))), i = _(!1), a = _(null), { top: o, left: s } = Ke(a), { toLocal: c } = Ye(), l = j(() => c({
2114
+ function oi(e) {
2115
+ let t = N(pt, []), { syntax: n } = Ht(), r = j(() => ai(_e(ve(e(), t), n))), i = _(!1), a = _(null), { top: o, left: s } = Xe(a), { toLocal: c } = $e(), l = j(() => c({
2016
2116
  top: o.value - 8,
2017
2117
  left: s.value
2018
2118
  }));
@@ -2033,14 +2133,14 @@ function Yr(e) {
2033
2133
  }
2034
2134
  //#endregion
2035
2135
  //#region src/components/blocks/ParagraphBlock.vue?vue&type=script&setup=true&lang.ts
2036
- var Xr = ["innerHTML"], Zr = /* @__PURE__ */ y({
2136
+ var si = ["innerHTML"], ci = /* @__PURE__ */ y({
2037
2137
  __name: "ParagraphBlock",
2038
2138
  props: {
2039
2139
  block: {},
2040
2140
  viewport: {}
2041
2141
  },
2042
2142
  setup(e) {
2043
- let t = e, n = C(() => import("./ParagraphEditor-Cs47wU1V.js")), { isEditing: r, blockRef: i, toolbarPosition: a, resolvedContent: o, handleDoubleClick: s, handleEditorDone: c } = Yr(() => t.block.content);
2143
+ let t = e, n = C(() => import("./ParagraphEditor-Cf75UfSo.js")), { isEditing: r, blockRef: i, toolbarPosition: a, resolvedContent: o, handleDoubleClick: s, handleEditorDone: c } = oi(() => t.block.content);
2044
2144
  return (t, l) => (f(), x("div", {
2045
2145
  ref_key: "blockRef",
2046
2146
  ref: i,
@@ -2059,46 +2159,46 @@ var Xr = ["innerHTML"], Zr = /* @__PURE__ */ y({
2059
2159
  key: 1,
2060
2160
  class: "tpl-text-content tpl:outline-none [&_a]:tpl:underline [&_li]:tpl:my-1 [&_ol]:tpl:my-2 [&_ol]:tpl:pl-6 [&_p]:tpl:m-0 [&_p]:tpl:mb-2 [&_p:last-child]:tpl:mb-0 [&_s]:tpl:line-through [&_sub]:tpl:align-sub [&_sub]:tpl:text-[0.75em] [&_sup]:tpl:align-super [&_sup]:tpl:text-[0.75em] [&_ul]:tpl:my-2 [&_ul]:tpl:pl-6",
2061
2161
  innerHTML: k(o)
2062
- }, null, 8, Xr))], 544));
2162
+ }, null, 8, si))], 544));
2063
2163
  }
2064
2164
  });
2065
2165
  //#endregion
2066
2166
  //#region src/utils/blockComponentResolver.ts
2067
- function Qr(e, t, n) {
2167
+ function li(e, t, n) {
2068
2168
  if (t) {
2069
2169
  let n = t.getComponent(e);
2070
2170
  if (n) return n;
2071
2171
  }
2072
2172
  return n[e.type] ?? null;
2073
2173
  }
2074
- function $r(e) {
2174
+ function ui(e) {
2075
2175
  let { padding: t, backgroundColor: n } = e.styles, r = {
2076
2176
  padding: `${t.top}px ${t.right}px ${t.bottom}px ${t.left}px`,
2077
2177
  backgroundColor: n || "transparent"
2078
2178
  };
2079
2179
  return e.type === "section" && e.borderRadius && e.borderRadius > 0 && (r.borderRadius = `${e.borderRadius}px`), r;
2080
2180
  }
2081
- function ei(e) {
2181
+ function di(e) {
2082
2182
  if (e.type !== "section" || !e.wrapper) return null;
2083
2183
  let t = e.wrapper, n = {};
2084
2184
  return t.backgroundColor && (n.backgroundColor = t.backgroundColor), t.padding && (n.padding = `${t.padding.top}px ${t.padding.right}px ${t.padding.bottom}px ${t.padding.left}px`), t.borderRadius && t.borderRadius > 0 && (n.borderRadius = `${t.borderRadius}px`), n;
2085
2185
  }
2086
2186
  //#endregion
2087
2187
  //#region src/components/blocks/BlockWrapper.vue?vue&type=script&setup=true&lang.ts
2088
- var ti = ["data-block-id", "data-block-type"], ni = ["aria-label"], ri = [
2188
+ var fi = ["data-block-id", "data-block-type"], pi = ["aria-label"], mi = [
2089
2189
  "aria-label",
2090
2190
  "aria-pressed",
2091
2191
  "title"
2092
- ], ii = ["aria-label", "title"], ai = ["aria-label", "title"], oi = ["aria-label", "title"], si = {
2192
+ ], hi = ["aria-label", "title"], gi = ["aria-label", "title"], _i = ["aria-label", "title"], vi = {
2093
2193
  key: 1,
2094
2194
  class: "tpl-block-hidden-overlay tpl:pointer-events-none tpl:absolute tpl:inset-0 tpl:z-[5] tpl:flex tpl:items-center tpl:justify-center tpl:rounded-sm"
2095
- }, ci = { class: "tpl:flex tpl:items-center tpl:gap-1 tpl:rounded tpl:px-2 tpl:py-1 tpl:text-[10px] tpl:font-medium tpl:bg-[var(--tpl-bg-elevated)] tpl:text-[var(--tpl-text-muted)] tpl:shadow-[var(--tpl-shadow-sm)]" }, li = {
2195
+ }, yi = { class: "tpl:flex tpl:items-center tpl:gap-1 tpl:rounded tpl:px-2 tpl:py-1 tpl:text-[10px] tpl:font-medium tpl:bg-[var(--tpl-bg-elevated)] tpl:text-[var(--tpl-text-muted)] tpl:shadow-[var(--tpl-shadow-sm)]" }, bi = {
2096
2196
  key: 2,
2097
2197
  class: "tpl:absolute tpl:-left-1 tpl:top-1/2 tpl:z-[5] tpl:-translate-x-full tpl:-translate-y-1/2"
2098
- }, ui = ["aria-label", "title"], di = {
2198
+ }, xi = ["aria-label", "title"], Si = {
2099
2199
  key: 3,
2100
2200
  class: "tpl:absolute tpl:-right-1 tpl:-top-1 tpl:z-[5] tpl:translate-x-full"
2101
- }, fi = ["aria-label"], pi = /*#__PURE__*/ Ft(/* @__PURE__ */ y({
2201
+ }, Ci = ["aria-label"], wi = /*#__PURE__*/ Vt(/* @__PURE__ */ y({
2102
2202
  __name: "BlockWrapper",
2103
2203
  props: {
2104
2204
  block: {},
@@ -2108,7 +2208,7 @@ var ti = ["data-block-id", "data-block-type"], ni = ["aria-label"], ri = [
2108
2208
  },
2109
2209
  emits: ["select"],
2110
2210
  setup(e, { emit: t }) {
2111
- let n = C(() => import("./BlockIssueBadge-BQ1yB1me.js")), r = e, a = t, { t: s, format: c } = Ot(), l = N(Dt, null), u = _(null), d = j(() => l?.liftedBlockId.value === r.block.id), m = j(() => d.value ? c(s.blockActions.dragLifted, { block: r.block.type }) : s.blockActions.drag);
2211
+ let n = C(() => import("./BlockIssueBadge-BQmq1bxn.js")), r = e, a = t, { t: s, format: c } = Ft(), l = N(Mt, null), u = _(null), d = j(() => l?.liftedBlockId.value === r.block.id), m = j(() => d.value ? c(s.blockActions.dragLifted, { block: r.block.type }) : s.blockActions.drag);
2112
2212
  async function h() {
2113
2213
  await ie(), u.value?.focus();
2114
2214
  }
@@ -2134,13 +2234,13 @@ var ti = ["data-block-id", "data-block-type"], ni = ["aria-label"], ri = [
2134
2234
  let v = j(() => !r.viewport || !r.block.visibility ? !1 : r.block.visibility[r.viewport] === !1), y = j(() => r.previewMode === !0 && v.value), S = j(() => r.viewport ? {
2135
2235
  desktop: s.viewport.desktop,
2136
2236
  mobile: s.viewport.mobile
2137
- }[r.viewport] ?? r.viewport : ""), E = j(() => !!r.block.displayCondition), D = N(ht, null), ee = N(Ct, null), A = N(St, {}), te = j(() => !!A.savedModules), ne = j(() => A.comments?.getBlockCount(r.block.id) ?? 0), re = j(() => {
2138
- let e = $r(r.block), t = {
2237
+ }[r.viewport] ?? r.viewport : ""), E = j(() => !!r.block.displayCondition), D = N(xt, null), ee = N(_t, null), A = N(kt, {}), te = j(() => !!A.savedModules), ne = j(() => A.comments?.getBlockCount(r.block.id) ?? 0), re = j(() => {
2238
+ let e = ui(r.block), t = {
2139
2239
  padding: e.padding,
2140
2240
  backgroundColor: e.backgroundColor
2141
2241
  };
2142
2242
  return e.borderRadius && (t.borderRadius = e.borderRadius), t;
2143
- }), ae = j(() => ei(r.block));
2243
+ }), ae = j(() => di(r.block));
2144
2244
  function oe(e) {
2145
2245
  r.previewMode || (e.target?.closest("a") && e.preventDefault(), e.stopPropagation(), a("select"));
2146
2246
  }
@@ -2183,60 +2283,60 @@ var ti = ["data-block-id", "data-block-type"], ni = ["aria-label"], ri = [
2183
2283
  "aria-keyshortcuts": "Space Enter ArrowUp ArrowDown Escape",
2184
2284
  title: k(s).blockActions.drag,
2185
2285
  onKeydown: g
2186
- }, [w(k(Nn), {
2286
+ }, [w(k(Un), {
2187
2287
  size: 14,
2188
2288
  "stroke-width": 1.5
2189
- })], 40, ri),
2289
+ })], 40, mi),
2190
2290
  b("button", {
2191
2291
  class: "tpl-block-action-btn tpl:flex tpl:size-7 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-sm tpl:border-none tpl:transition-colors tpl:duration-150",
2192
2292
  "aria-label": k(s).blockActions.duplicate,
2193
2293
  title: k(s).blockActions.duplicate,
2194
2294
  onClick: P(ce, ["stop"])
2195
- }, [w(k(An), {
2295
+ }, [w(k(Bn), {
2196
2296
  size: 14,
2197
2297
  "stroke-width": 1.5
2198
- })], 8, ii),
2298
+ })], 8, hi),
2199
2299
  te.value ? (f(), x("button", {
2200
2300
  key: 0,
2201
2301
  class: "tpl-block-action-btn tpl:flex tpl:size-7 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-sm tpl:border-none tpl:transition-colors tpl:duration-150",
2202
2302
  "aria-label": k(s).blockActions.saveAsModule,
2203
2303
  title: k(s).blockActions.saveAsModule,
2204
2304
  onClick: P(le, ["stop"])
2205
- }, [w(k(Dn), {
2305
+ }, [w(k(Ln), {
2206
2306
  size: 14,
2207
2307
  "stroke-width": 1.5
2208
- })], 8, ai)) : M("", !0),
2308
+ })], 8, gi)) : M("", !0),
2209
2309
  b("button", {
2210
2310
  class: "tpl-block-action-btn tpl-block-delete-btn tpl:flex tpl:size-7 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-sm tpl:border-none tpl:transition-colors tpl:duration-150",
2211
2311
  "aria-label": k(s).blockActions.delete,
2212
2312
  title: k(s).blockActions.delete,
2213
2313
  onClick: P(se, ["stop"])
2214
- }, [w(k(jt), {
2314
+ }, [w(k(Rt), {
2215
2315
  size: 14,
2216
2316
  "stroke-width": 1.5
2217
- })], 8, oi)
2218
- ], 8, ni)) : M("", !0),
2219
- v.value ? (f(), x("div", si, [b("span", ci, [w(k(jn), {
2317
+ })], 8, _i)
2318
+ ], 8, pi)) : M("", !0),
2319
+ v.value ? (f(), x("div", vi, [b("span", yi, [w(k(Vn), {
2220
2320
  size: 12,
2221
2321
  "stroke-width": 1.5
2222
2322
  }), O(" " + p(k(c)(k(s).blockActions.hiddenOnViewport, { viewport: S.value })), 1)])])) : M("", !0),
2223
- E.value && !v.value ? (f(), x("div", li, [b("button", {
2323
+ E.value && !v.value ? (f(), x("div", bi, [b("button", {
2224
2324
  class: "tpl-condition-toggle tpl:flex tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:rounded-md tpl:p-1 tpl:transition-colors tpl:duration-150 tpl:bg-[var(--tpl-bg-elevated)] tpl:text-[var(--tpl-primary)] tpl:border tpl:border-[var(--tpl-border)]",
2225
2325
  "aria-label": k(s).blockActions.conditionToggle,
2226
2326
  title: e.block.displayCondition?.label,
2227
2327
  onClick: P(ue, ["stop"])
2228
- }, [w(k(Mn), {
2328
+ }, [w(k(Hn), {
2229
2329
  size: 12,
2230
2330
  "stroke-width": 2
2231
- })], 8, ui)])) : M("", !0),
2232
- ne.value > 0 && !v.value ? (f(), x("div", di, [b("button", {
2331
+ })], 8, xi)])) : M("", !0),
2332
+ ne.value > 0 && !v.value ? (f(), x("div", Si, [b("button", {
2233
2333
  class: "tpl-comment-indicator tpl:flex tpl:min-h-6 tpl:min-w-6 tpl:cursor-pointer tpl:items-center tpl:justify-center tpl:gap-0.5 tpl:rounded-full tpl:border-none tpl:px-2 tpl:py-0.5 tpl:text-[10px] tpl:font-semibold tpl:transition-colors tpl:duration-150 tpl:bg-[var(--tpl-primary-light)] tpl:text-[var(--tpl-primary)]",
2234
2334
  "aria-label": k(c)(k(s).blockActions.comments, { count: String(ne.value) }),
2235
2335
  onClick: r[0] ||= P((t) => k(A).comments?.openForBlock(e.block.id), ["stop"])
2236
- }, [w(k(At), {
2336
+ }, [w(k(Lt), {
2237
2337
  size: 12,
2238
2338
  "stroke-width": 2.5
2239
- }), O(" " + p(ne.value), 1)], 8, fi)])) : M("", !0),
2339
+ }), O(" " + p(ne.value), 1)], 8, Ci)])) : M("", !0),
2240
2340
  ae.value ? (f(), x("div", {
2241
2341
  key: 4,
2242
2342
  class: "tpl-section-wrapper",
@@ -2249,31 +2349,31 @@ var ti = ["data-block-id", "data-block-type"], ni = ["aria-label"], ri = [
2249
2349
  class: "tpl-block-content",
2250
2350
  style: i(re.value)
2251
2351
  }, [T(t.$slots, "default", {}, void 0, !0)], 4))
2252
- ], 10, ti));
2352
+ ], 10, fi));
2253
2353
  }
2254
2354
  }), [["__scopeId", "data-v-7d9e7893"]]);
2255
2355
  //#endregion
2256
2356
  //#region src/utils/unwrapParagraph.ts
2257
- function mi(e) {
2357
+ function Ti(e) {
2258
2358
  let t = e.match(/^\s*<p\b[^>]*>([\s\S]*)<\/p>\s*$/);
2259
2359
  return !t || /<\/p>\s*<p\b/i.test(t[1]) ? e : t[1];
2260
2360
  }
2261
2361
  //#endregion
2262
2362
  //#region src/components/blocks/TitleBlock.vue
2263
- var hi = /* @__PURE__ */ y({
2363
+ var Ei = /* @__PURE__ */ y({
2264
2364
  __name: "TitleBlock",
2265
2365
  props: {
2266
2366
  block: {},
2267
2367
  viewport: {}
2268
2368
  },
2269
2369
  setup(e) {
2270
- let t = e, n = C(() => import("./TitleEditor-Bq9S0C8Z.js")), { isEditing: r, blockRef: a, toolbarPosition: o, resolvedContent: s, handleDoubleClick: c, handleEditorDone: l } = Yr(() => t.block.content), u = j(() => {
2370
+ let t = e, n = C(() => import("./TitleEditor-CCUkbRN0.js")), { isEditing: r, blockRef: a, toolbarPosition: o, resolvedContent: s, handleDoubleClick: c, handleEditorDone: l } = oi(() => t.block.content), u = j(() => {
2271
2371
  let e = {
2272
- fontSize: `${Pe[t.block.level]}px`,
2372
+ fontSize: `${Ie[t.block.level]}px`,
2273
2373
  textAlign: t.block.textAlign
2274
2374
  };
2275
2375
  return t.block.color && (e.color = t.block.color), t.block.fontFamily && (e.fontFamily = t.block.fontFamily), e;
2276
- }), p = j(() => `h${t.block.level}`), m = j(() => mi(s.value));
2376
+ }), p = j(() => `h${t.block.level}`), m = j(() => Ti(s.value));
2277
2377
  return (t, s) => (f(), x("div", {
2278
2378
  ref_key: "blockRef",
2279
2379
  ref: a,
@@ -2299,88 +2399,88 @@ var hi = /* @__PURE__ */ y({
2299
2399
  });
2300
2400
  //#endregion
2301
2401
  //#region src/utils/sectionColumnDrop.ts
2302
- function gi(e) {
2402
+ function Di(e) {
2303
2403
  return e.dataset.blockType !== "section" && e.dataset.paletteType !== "section";
2304
2404
  }
2305
2405
  //#endregion
2306
2406
  //#region ../../node_modules/.pnpm/vue-draggable-plus@0.6.1_@types+sortablejs@1.15.9/node_modules/vue-draggable-plus/dist/vue-draggable-plus.js
2307
- var _i = Object.defineProperty, vi = Object.getOwnPropertySymbols, yi = Object.prototype.hasOwnProperty, bi = Object.prototype.propertyIsEnumerable, xi = (e, t, n) => t in e ? _i(e, t, {
2407
+ var Oi = Object.defineProperty, ki = Object.getOwnPropertySymbols, Ai = Object.prototype.hasOwnProperty, ji = Object.prototype.propertyIsEnumerable, Mi = (e, t, n) => t in e ? Oi(e, t, {
2308
2408
  enumerable: !0,
2309
2409
  configurable: !0,
2310
2410
  writable: !0,
2311
2411
  value: n
2312
- }) : e[t] = n, Si = (e, t) => {
2313
- for (var n in t ||= {}) yi.call(t, n) && xi(e, n, t[n]);
2314
- if (vi) for (var n of vi(t)) bi.call(t, n) && xi(e, n, t[n]);
2412
+ }) : e[t] = n, Ni = (e, t) => {
2413
+ for (var n in t ||= {}) Ai.call(t, n) && Mi(e, n, t[n]);
2414
+ if (ki) for (var n of ki(t)) ji.call(t, n) && Mi(e, n, t[n]);
2315
2415
  return e;
2316
- }, Ci = (e, t) => {
2416
+ }, Pi = (e, t) => {
2317
2417
  var n = {};
2318
- for (var r in e) yi.call(e, r) && t.indexOf(r) < 0 && (n[r] = e[r]);
2319
- if (e != null && vi) for (var r of vi(e)) t.indexOf(r) < 0 && bi.call(e, r) && (n[r] = e[r]);
2418
+ for (var r in e) Ai.call(e, r) && t.indexOf(r) < 0 && (n[r] = e[r]);
2419
+ if (e != null && ki) for (var r of ki(e)) t.indexOf(r) < 0 && ji.call(e, r) && (n[r] = e[r]);
2320
2420
  return n;
2321
- }, wi = "[vue-draggable-plus]: ";
2322
- function Ti(e) {
2323
- console.warn(wi + e);
2421
+ }, Fi = "[vue-draggable-plus]: ";
2422
+ function Ii(e) {
2423
+ console.warn(Fi + e);
2324
2424
  }
2325
- function Ei(e) {
2326
- console.error(wi + e);
2425
+ function Li(e) {
2426
+ console.error(Fi + e);
2327
2427
  }
2328
- function Di(e, t, n) {
2428
+ function Ri(e, t, n) {
2329
2429
  return n >= 0 && n < e.length && e.splice(n, 0, e.splice(t, 1)[0]), e;
2330
2430
  }
2331
- function Oi(e) {
2431
+ function zi(e) {
2332
2432
  return e.replace(/-(\w)/g, (e, t) => t ? t.toUpperCase() : "");
2333
2433
  }
2334
- function ki(e) {
2335
- return Object.keys(e).reduce((t, n) => (e[n] !== void 0 && (t[Oi(n)] = e[n]), t), {});
2434
+ function Bi(e) {
2435
+ return Object.keys(e).reduce((t, n) => (e[n] !== void 0 && (t[zi(n)] = e[n]), t), {});
2336
2436
  }
2337
- function Ai(e, t) {
2437
+ function Vi(e, t) {
2338
2438
  return Array.isArray(e) && e.splice(t, 1), e;
2339
2439
  }
2340
- function ji(e, t, n) {
2440
+ function Hi(e, t, n) {
2341
2441
  return Array.isArray(e) && e.splice(t, 0, n), e;
2342
2442
  }
2343
- function Mi(e) {
2443
+ function Ui(e) {
2344
2444
  return e === void 0;
2345
2445
  }
2346
- function Ni(e) {
2446
+ function Wi(e) {
2347
2447
  return typeof e == "string";
2348
2448
  }
2349
- function Pi(e, t, n) {
2449
+ function Gi(e, t, n) {
2350
2450
  let r = e.children[n];
2351
2451
  e.insertBefore(t, r);
2352
2452
  }
2353
- function Fi(e) {
2453
+ function Ki(e) {
2354
2454
  e.parentNode && e.parentNode.removeChild(e);
2355
2455
  }
2356
- function Ii(e, t = document) {
2456
+ function qi(e, t = document) {
2357
2457
  let n = null;
2358
- return n = typeof t?.querySelector == "function" ? (t?.querySelector)?.call(t, e) : document.querySelector(e), n || Ti(`Element not found: ${e}`), n;
2458
+ return n = typeof t?.querySelector == "function" ? (t?.querySelector)?.call(t, e) : document.querySelector(e), n || Ii(`Element not found: ${e}`), n;
2359
2459
  }
2360
- function Li(e, t, n = null) {
2460
+ function Ji(e, t, n = null) {
2361
2461
  return function(...r) {
2362
2462
  return e.apply(n, r), t.apply(n, r);
2363
2463
  };
2364
2464
  }
2365
- function Ri(e, t) {
2366
- let n = Si({}, e);
2465
+ function Yi(e, t) {
2466
+ let n = Ni({}, e);
2367
2467
  return Object.keys(t).forEach((r) => {
2368
- n[r] ? n[r] = Li(e[r], t[r]) : n[r] = t[r];
2468
+ n[r] ? n[r] = Ji(e[r], t[r]) : n[r] = t[r];
2369
2469
  }), n;
2370
2470
  }
2371
- function zi(e) {
2471
+ function Xi(e) {
2372
2472
  return e instanceof HTMLElement;
2373
2473
  }
2374
- function Bi(e, t) {
2474
+ function Zi(e, t) {
2375
2475
  Object.keys(e).forEach((n) => {
2376
2476
  t(n, e[n]);
2377
2477
  });
2378
2478
  }
2379
- function Vi(e) {
2479
+ function Qi(e) {
2380
2480
  return e.charCodeAt(0) === 111 && e.charCodeAt(1) === 110 && (e.charCodeAt(2) > 122 || e.charCodeAt(2) < 97);
2381
2481
  }
2382
- var Hi = Object.assign;
2383
- function Ui(e, t) {
2482
+ var $i = Object.assign;
2483
+ function ea(e, t) {
2384
2484
  var n = Object.keys(e);
2385
2485
  if (Object.getOwnPropertySymbols) {
2386
2486
  var r = Object.getOwnPropertySymbols(e);
@@ -2390,26 +2490,26 @@ function Ui(e, t) {
2390
2490
  }
2391
2491
  return n;
2392
2492
  }
2393
- function Wi(e) {
2493
+ function ta(e) {
2394
2494
  for (var t = 1; t < arguments.length; t++) {
2395
2495
  var n = arguments[t] == null ? {} : arguments[t];
2396
- t % 2 ? Ui(Object(n), !0).forEach(function(t) {
2397
- Ki(e, t, n[t]);
2398
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : Ui(Object(n)).forEach(function(t) {
2496
+ t % 2 ? ea(Object(n), !0).forEach(function(t) {
2497
+ ra(e, t, n[t]);
2498
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : ea(Object(n)).forEach(function(t) {
2399
2499
  Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t));
2400
2500
  });
2401
2501
  }
2402
2502
  return e;
2403
2503
  }
2404
- function Gi(e) {
2504
+ function na(e) {
2405
2505
  "@babel/helpers - typeof";
2406
- return Gi = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(e) {
2506
+ return na = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(e) {
2407
2507
  return typeof e;
2408
2508
  } : function(e) {
2409
2509
  return e && typeof Symbol == "function" && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e;
2410
- }, Gi(e);
2510
+ }, na(e);
2411
2511
  }
2412
- function Ki(e, t, n) {
2512
+ function ra(e, t, n) {
2413
2513
  return t in e ? Object.defineProperty(e, t, {
2414
2514
  value: n,
2415
2515
  enumerable: !0,
@@ -2417,45 +2517,45 @@ function Ki(e, t, n) {
2417
2517
  writable: !0
2418
2518
  }) : e[t] = n, e;
2419
2519
  }
2420
- function qi() {
2421
- return qi = Object.assign || function(e) {
2520
+ function ia() {
2521
+ return ia = Object.assign || function(e) {
2422
2522
  for (var t = 1; t < arguments.length; t++) {
2423
2523
  var n = arguments[t];
2424
2524
  for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]);
2425
2525
  }
2426
2526
  return e;
2427
- }, qi.apply(this, arguments);
2527
+ }, ia.apply(this, arguments);
2428
2528
  }
2429
- function Ji(e, t) {
2529
+ function aa(e, t) {
2430
2530
  if (e == null) return {};
2431
2531
  var n = {}, r = Object.keys(e), i, a;
2432
2532
  for (a = 0; a < r.length; a++) i = r[a], !(t.indexOf(i) >= 0) && (n[i] = e[i]);
2433
2533
  return n;
2434
2534
  }
2435
- function Yi(e, t) {
2535
+ function oa(e, t) {
2436
2536
  if (e == null) return {};
2437
- var n = Ji(e, t), r, i;
2537
+ var n = aa(e, t), r, i;
2438
2538
  if (Object.getOwnPropertySymbols) {
2439
2539
  var a = Object.getOwnPropertySymbols(e);
2440
2540
  for (i = 0; i < a.length; i++) r = a[i], !(t.indexOf(r) >= 0) && Object.prototype.propertyIsEnumerable.call(e, r) && (n[r] = e[r]);
2441
2541
  }
2442
2542
  return n;
2443
2543
  }
2444
- var Xi = "1.15.2";
2445
- function Zi(e) {
2544
+ var sa = "1.15.2";
2545
+ function ca(e) {
2446
2546
  if (typeof window < "u" && window.navigator) return !!/* @__PURE__ */ navigator.userAgent.match(e);
2447
2547
  }
2448
- var Qi = Zi(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i), $i = Zi(/Edge/i), ea = Zi(/firefox/i), ta = Zi(/safari/i) && !Zi(/chrome/i) && !Zi(/android/i), na = Zi(/iP(ad|od|hone)/i), ra = Zi(/chrome/i) && Zi(/android/i), ia = {
2548
+ var la = ca(/(?:Trident.*rv[ :]?11\.|msie|iemobile|Windows Phone)/i), ua = ca(/Edge/i), da = ca(/firefox/i), fa = ca(/safari/i) && !ca(/chrome/i) && !ca(/android/i), pa = ca(/iP(ad|od|hone)/i), ma = ca(/chrome/i) && ca(/android/i), ha = {
2449
2549
  capture: !1,
2450
2550
  passive: !1
2451
2551
  };
2452
2552
  function I(e, t, n) {
2453
- e.addEventListener(t, n, !Qi && ia);
2553
+ e.addEventListener(t, n, !la && ha);
2454
2554
  }
2455
2555
  function L(e, t, n) {
2456
- e.removeEventListener(t, n, !Qi && ia);
2556
+ e.removeEventListener(t, n, !la && ha);
2457
2557
  }
2458
- function aa(e, t) {
2558
+ function ga(e, t) {
2459
2559
  if (t) {
2460
2560
  if (t[0] === ">" && (t = t.substring(1)), e) try {
2461
2561
  if (e.matches) return e.matches(t);
@@ -2467,22 +2567,22 @@ function aa(e, t) {
2467
2567
  return !1;
2468
2568
  }
2469
2569
  }
2470
- function oa(e) {
2570
+ function _a(e) {
2471
2571
  return e.host && e !== document && e.host.nodeType ? e.host : e.parentNode;
2472
2572
  }
2473
- function sa(e, t, n, r) {
2573
+ function va(e, t, n, r) {
2474
2574
  if (e) {
2475
2575
  n ||= document;
2476
2576
  do {
2477
- if (t != null && (t[0] === ">" ? e.parentNode === n && aa(e, t) : aa(e, t)) || r && e === n) return e;
2577
+ if (t != null && (t[0] === ">" ? e.parentNode === n && ga(e, t) : ga(e, t)) || r && e === n) return e;
2478
2578
  if (e === n) break;
2479
- } while (e = oa(e));
2579
+ } while (e = _a(e));
2480
2580
  }
2481
2581
  return null;
2482
2582
  }
2483
- var ca = /\s+/g;
2583
+ var ya = /\s+/g;
2484
2584
  function R(e, t, n) {
2485
- e && t && (e.classList ? e.classList[n ? "add" : "remove"](t) : e.className = ((" " + e.className + " ").replace(ca, " ").replace(" " + t + " ", " ") + (n ? " " + t : "")).replace(ca, " "));
2585
+ e && t && (e.classList ? e.classList[n ? "add" : "remove"](t) : e.className = ((" " + e.className + " ").replace(ya, " ").replace(" " + t + " ", " ") + (n ? " " + t : "")).replace(ya, " "));
2486
2586
  }
2487
2587
  function z(e, t, n) {
2488
2588
  var r = e && e.style;
@@ -2491,7 +2591,7 @@ function z(e, t, n) {
2491
2591
  !(t in r) && t.indexOf("webkit") === -1 && (t = "-webkit-" + t), r[t] = n + (typeof n == "string" ? "" : "px");
2492
2592
  }
2493
2593
  }
2494
- function la(e, t) {
2594
+ function ba(e, t) {
2495
2595
  var n = "";
2496
2596
  if (typeof e == "string") n = e;
2497
2597
  else do {
@@ -2501,7 +2601,7 @@ function la(e, t) {
2501
2601
  var i = window.DOMMatrix || window.WebKitCSSMatrix || window.CSSMatrix || window.MSCSSMatrix;
2502
2602
  return i && new i(n);
2503
2603
  }
2504
- function ua(e, t, n) {
2604
+ function xa(e, t, n) {
2505
2605
  if (e) {
2506
2606
  var r = e.getElementsByTagName(t), i = 0, a = r.length;
2507
2607
  if (n) for (; i < a; i++) n(r[i], i);
@@ -2509,13 +2609,13 @@ function ua(e, t, n) {
2509
2609
  }
2510
2610
  return [];
2511
2611
  }
2512
- function da() {
2612
+ function Sa() {
2513
2613
  return document.scrollingElement || document.documentElement;
2514
2614
  }
2515
2615
  function B(e, t, n, r, i) {
2516
2616
  if (!(!e.getBoundingClientRect && e !== window)) {
2517
2617
  var a, o, s, c, l, u, d;
2518
- if (e !== window && e.parentNode && e !== da() ? (a = e.getBoundingClientRect(), o = a.top, s = a.left, c = a.bottom, l = a.right, u = a.height, d = a.width) : (o = 0, s = 0, c = window.innerHeight, l = window.innerWidth, u = window.innerHeight, d = window.innerWidth), (t || n) && e !== window && (i ||= e.parentNode, !Qi)) do
2618
+ if (e !== window && e.parentNode && e !== Sa() ? (a = e.getBoundingClientRect(), o = a.top, s = a.left, c = a.bottom, l = a.right, u = a.height, d = a.width) : (o = 0, s = 0, c = window.innerHeight, l = window.innerWidth, u = window.innerHeight, d = window.innerWidth), (t || n) && e !== window && (i ||= e.parentNode, !la)) do
2519
2619
  if (i && i.getBoundingClientRect && (z(i, "transform") !== "none" || n && z(i, "position") !== "static")) {
2520
2620
  var f = i.getBoundingClientRect();
2521
2621
  o -= f.top + parseInt(z(i, "border-top-width")), s -= f.left + parseInt(z(i, "border-left-width")), c = o + a.height, l = s + a.width;
@@ -2523,7 +2623,7 @@ function B(e, t, n, r, i) {
2523
2623
  }
2524
2624
  while (i = i.parentNode);
2525
2625
  if (r && e !== window) {
2526
- var p = la(i || e), m = p && p.a, h = p && p.d;
2626
+ var p = ba(i || e), m = p && p.a, h = p && p.d;
2527
2627
  p && (o /= h, s /= m, d /= m, u /= h, c = o + u, l = s + d);
2528
2628
  }
2529
2629
  return {
@@ -2536,18 +2636,18 @@ function B(e, t, n, r, i) {
2536
2636
  };
2537
2637
  }
2538
2638
  }
2539
- function fa(e, t, n) {
2540
- for (var r = va(e, !0), i = B(e)[t]; r;) {
2639
+ function Ca(e, t, n) {
2640
+ for (var r = ka(e, !0), i = B(e)[t]; r;) {
2541
2641
  var a = B(r)[n], o = void 0;
2542
2642
  if (o = i >= a, !o) return r;
2543
- if (r === da()) break;
2544
- r = va(r, !1);
2643
+ if (r === Sa()) break;
2644
+ r = ka(r, !1);
2545
2645
  }
2546
2646
  return !1;
2547
2647
  }
2548
- function pa(e, t, n, r) {
2648
+ function wa(e, t, n, r) {
2549
2649
  for (var i = 0, a = 0, o = e.children; a < o.length;) {
2550
- if (o[a].style.display !== "none" && o[a] !== Q.ghost && (r || o[a] !== Q.dragged) && sa(o[a], n.draggable, e, !1)) {
2650
+ if (o[a].style.display !== "none" && o[a] !== Q.ghost && (r || o[a] !== Q.dragged) && va(o[a], n.draggable, e, !1)) {
2551
2651
  if (i === t) return o[a];
2552
2652
  i++;
2553
2653
  }
@@ -2555,84 +2655,84 @@ function pa(e, t, n, r) {
2555
2655
  }
2556
2656
  return null;
2557
2657
  }
2558
- function ma(e, t) {
2559
- for (var n = e.lastElementChild; n && (n === Q.ghost || z(n, "display") === "none" || t && !aa(n, t));) n = n.previousElementSibling;
2658
+ function Ta(e, t) {
2659
+ for (var n = e.lastElementChild; n && (n === Q.ghost || z(n, "display") === "none" || t && !ga(n, t));) n = n.previousElementSibling;
2560
2660
  return n || null;
2561
2661
  }
2562
- function ha(e, t) {
2662
+ function Ea(e, t) {
2563
2663
  var n = 0;
2564
2664
  if (!e || !e.parentNode) return -1;
2565
- for (; e = e.previousElementSibling;) e.nodeName.toUpperCase() !== "TEMPLATE" && e !== Q.clone && (!t || aa(e, t)) && n++;
2665
+ for (; e = e.previousElementSibling;) e.nodeName.toUpperCase() !== "TEMPLATE" && e !== Q.clone && (!t || ga(e, t)) && n++;
2566
2666
  return n;
2567
2667
  }
2568
- function ga(e) {
2569
- var t = 0, n = 0, r = da();
2668
+ function Da(e) {
2669
+ var t = 0, n = 0, r = Sa();
2570
2670
  if (e) do {
2571
- var i = la(e), a = i.a, o = i.d;
2671
+ var i = ba(e), a = i.a, o = i.d;
2572
2672
  t += e.scrollLeft * a, n += e.scrollTop * o;
2573
2673
  } while (e !== r && (e = e.parentNode));
2574
2674
  return [t, n];
2575
2675
  }
2576
- function _a(e, t) {
2676
+ function Oa(e, t) {
2577
2677
  for (var n in e) if (e.hasOwnProperty(n)) {
2578
2678
  for (var r in t) if (t.hasOwnProperty(r) && t[r] === e[n][r]) return Number(n);
2579
2679
  }
2580
2680
  return -1;
2581
2681
  }
2582
- function va(e, t) {
2583
- if (!e || !e.getBoundingClientRect) return da();
2682
+ function ka(e, t) {
2683
+ if (!e || !e.getBoundingClientRect) return Sa();
2584
2684
  var n = e, r = !1;
2585
2685
  do
2586
2686
  if (n.clientWidth < n.scrollWidth || n.clientHeight < n.scrollHeight) {
2587
2687
  var i = z(n);
2588
2688
  if (n.clientWidth < n.scrollWidth && (i.overflowX == "auto" || i.overflowX == "scroll") || n.clientHeight < n.scrollHeight && (i.overflowY == "auto" || i.overflowY == "scroll")) {
2589
- if (!n.getBoundingClientRect || n === document.body) return da();
2689
+ if (!n.getBoundingClientRect || n === document.body) return Sa();
2590
2690
  if (r || t) return n;
2591
2691
  r = !0;
2592
2692
  }
2593
2693
  }
2594
2694
  while (n = n.parentNode);
2595
- return da();
2695
+ return Sa();
2596
2696
  }
2597
- function ya(e, t) {
2697
+ function Aa(e, t) {
2598
2698
  if (e && t) for (var n in t) t.hasOwnProperty(n) && (e[n] = t[n]);
2599
2699
  return e;
2600
2700
  }
2601
- function ba(e, t) {
2701
+ function ja(e, t) {
2602
2702
  return Math.round(e.top) === Math.round(t.top) && Math.round(e.left) === Math.round(t.left) && Math.round(e.height) === Math.round(t.height) && Math.round(e.width) === Math.round(t.width);
2603
2703
  }
2604
- var xa;
2605
- function Sa(e, t) {
2704
+ var Ma;
2705
+ function Na(e, t) {
2606
2706
  return function() {
2607
- if (!xa) {
2707
+ if (!Ma) {
2608
2708
  var n = arguments, r = this;
2609
- n.length === 1 ? e.call(r, n[0]) : e.apply(r, n), xa = setTimeout(function() {
2610
- xa = void 0;
2709
+ n.length === 1 ? e.call(r, n[0]) : e.apply(r, n), Ma = setTimeout(function() {
2710
+ Ma = void 0;
2611
2711
  }, t);
2612
2712
  }
2613
2713
  };
2614
2714
  }
2615
- function Ca() {
2616
- clearTimeout(xa), xa = void 0;
2715
+ function Pa() {
2716
+ clearTimeout(Ma), Ma = void 0;
2617
2717
  }
2618
- function wa(e, t, n) {
2718
+ function Fa(e, t, n) {
2619
2719
  e.scrollLeft += t, e.scrollTop += n;
2620
2720
  }
2621
- function Ta(e) {
2721
+ function Ia(e) {
2622
2722
  var t = window.Polymer, n = window.jQuery || window.Zepto;
2623
2723
  return t && t.dom ? t.dom(e).cloneNode(!0) : n ? n(e).clone(!0)[0] : e.cloneNode(!0);
2624
2724
  }
2625
- function Ea(e, t, n) {
2725
+ function La(e, t, n) {
2626
2726
  var r = {};
2627
2727
  return Array.from(e.children).forEach(function(i) {
2628
- if (!(!sa(i, t.draggable, e, !1) || i.animated || i === n)) {
2728
+ if (!(!va(i, t.draggable, e, !1) || i.animated || i === n)) {
2629
2729
  var a = B(i);
2630
2730
  r.left = Math.min(r.left ?? Infinity, a.left), r.top = Math.min(r.top ?? Infinity, a.top), r.right = Math.max(r.right ?? -Infinity, a.right), r.bottom = Math.max(r.bottom ?? -Infinity, a.bottom);
2631
2731
  }
2632
2732
  }), r.width = r.right - r.left, r.height = r.bottom - r.top, r.x = r.left, r.y = r.top, r;
2633
2733
  }
2634
2734
  var V = "Sortable" + (/* @__PURE__ */ new Date()).getTime();
2635
- function Da() {
2735
+ function Ra() {
2636
2736
  var e = [], t;
2637
2737
  return {
2638
2738
  captureAnimationState: function() {
@@ -2642,9 +2742,9 @@ function Da() {
2642
2742
  target: t,
2643
2743
  rect: B(t)
2644
2744
  });
2645
- var n = Wi({}, e[e.length - 1].rect);
2745
+ var n = ta({}, e[e.length - 1].rect);
2646
2746
  if (t.thisAnimationDuration) {
2647
- var r = la(t, !0);
2747
+ var r = ba(t, !0);
2648
2748
  r && (n.top -= r.f, n.left -= r.e);
2649
2749
  }
2650
2750
  t.fromRect = n;
@@ -2655,7 +2755,7 @@ function Da() {
2655
2755
  e.push(t);
2656
2756
  },
2657
2757
  removeAnimationState: function(t) {
2658
- e.splice(_a(e, { target: t }), 1);
2758
+ e.splice(Oa(e, { target: t }), 1);
2659
2759
  },
2660
2760
  animateAll: function(n) {
2661
2761
  var r = this;
@@ -2665,8 +2765,8 @@ function Da() {
2665
2765
  }
2666
2766
  var i = !1, a = 0;
2667
2767
  e.forEach(function(e) {
2668
- var t = 0, n = e.target, o = n.fromRect, s = B(n), c = n.prevFromRect, l = n.prevToRect, u = e.rect, d = la(n, !0);
2669
- d && (s.top -= d.f, s.left -= d.e), n.toRect = s, n.thisAnimationDuration && ba(c, s) && !ba(o, s) && (u.top - s.top) / (u.left - s.left) === (o.top - s.top) / (o.left - s.left) && (t = ka(u, c, l, r.options)), ba(s, o) || (n.prevFromRect = o, n.prevToRect = s, t ||= r.options.animation, r.animate(n, u, s, t)), t && (i = !0, a = Math.max(a, t), clearTimeout(n.animationResetTimer), n.animationResetTimer = setTimeout(function() {
2768
+ var t = 0, n = e.target, o = n.fromRect, s = B(n), c = n.prevFromRect, l = n.prevToRect, u = e.rect, d = ba(n, !0);
2769
+ d && (s.top -= d.f, s.left -= d.e), n.toRect = s, n.thisAnimationDuration && ja(c, s) && !ja(o, s) && (u.top - s.top) / (u.left - s.left) === (o.top - s.top) / (o.left - s.left) && (t = Ba(u, c, l, r.options)), ja(s, o) || (n.prevFromRect = o, n.prevToRect = s, t ||= r.options.animation, r.animate(n, u, s, t)), t && (i = !0, a = Math.max(a, t), clearTimeout(n.animationResetTimer), n.animationResetTimer = setTimeout(function() {
2670
2770
  n.animationTime = 0, n.prevFromRect = null, n.fromRect = null, n.prevToRect = null, n.thisAnimationDuration = null;
2671
2771
  }, t), n.thisAnimationDuration = t);
2672
2772
  }), clearTimeout(t), i ? t = setTimeout(function() {
@@ -2676,26 +2776,26 @@ function Da() {
2676
2776
  animate: function(e, t, n, r) {
2677
2777
  if (r) {
2678
2778
  z(e, "transition", ""), z(e, "transform", "");
2679
- var i = la(this.el), a = i && i.a, o = i && i.d, s = (t.left - n.left) / (a || 1), c = (t.top - n.top) / (o || 1);
2680
- e.animatingX = !!s, e.animatingY = !!c, z(e, "transform", "translate3d(" + s + "px," + c + "px,0)"), this.forRepaintDummy = Oa(e), z(e, "transition", "transform " + r + "ms" + (this.options.easing ? " " + this.options.easing : "")), z(e, "transform", "translate3d(0,0,0)"), typeof e.animated == "number" && clearTimeout(e.animated), e.animated = setTimeout(function() {
2779
+ var i = ba(this.el), a = i && i.a, o = i && i.d, s = (t.left - n.left) / (a || 1), c = (t.top - n.top) / (o || 1);
2780
+ e.animatingX = !!s, e.animatingY = !!c, z(e, "transform", "translate3d(" + s + "px," + c + "px,0)"), this.forRepaintDummy = za(e), z(e, "transition", "transform " + r + "ms" + (this.options.easing ? " " + this.options.easing : "")), z(e, "transform", "translate3d(0,0,0)"), typeof e.animated == "number" && clearTimeout(e.animated), e.animated = setTimeout(function() {
2681
2781
  z(e, "transition", ""), z(e, "transform", ""), e.animated = !1, e.animatingX = !1, e.animatingY = !1;
2682
2782
  }, r);
2683
2783
  }
2684
2784
  }
2685
2785
  };
2686
2786
  }
2687
- function Oa(e) {
2787
+ function za(e) {
2688
2788
  return e.offsetWidth;
2689
2789
  }
2690
- function ka(e, t, n, r) {
2790
+ function Ba(e, t, n, r) {
2691
2791
  return Math.sqrt((t.top - e.top) ** 2 + (t.left - e.left) ** 2) / Math.sqrt((t.top - n.top) ** 2 + (t.left - n.left) ** 2) * r.animation;
2692
2792
  }
2693
- var Aa = [], ja = { initializeByDefault: !0 }, Ma = {
2793
+ var Va = [], Ha = { initializeByDefault: !0 }, Ua = {
2694
2794
  mount: function(e) {
2695
- for (var t in ja) ja.hasOwnProperty(t) && !(t in e) && (e[t] = ja[t]);
2696
- Aa.forEach(function(t) {
2795
+ for (var t in Ha) Ha.hasOwnProperty(t) && !(t in e) && (e[t] = Ha[t]);
2796
+ Va.forEach(function(t) {
2697
2797
  if (t.pluginName === e.pluginName) throw `Sortable: Cannot mount plugin ${e.pluginName} more than once`;
2698
- }), Aa.push(e);
2798
+ }), Va.push(e);
2699
2799
  },
2700
2800
  pluginEvent: function(e, t, n) {
2701
2801
  var r = this;
@@ -2703,16 +2803,16 @@ var Aa = [], ja = { initializeByDefault: !0 }, Ma = {
2703
2803
  r.eventCanceled = !0;
2704
2804
  };
2705
2805
  var i = e + "Global";
2706
- Aa.forEach(function(r) {
2707
- t[r.pluginName] && (t[r.pluginName][i] && t[r.pluginName][i](Wi({ sortable: t }, n)), t.options[r.pluginName] && t[r.pluginName][e] && t[r.pluginName][e](Wi({ sortable: t }, n)));
2806
+ Va.forEach(function(r) {
2807
+ t[r.pluginName] && (t[r.pluginName][i] && t[r.pluginName][i](ta({ sortable: t }, n)), t.options[r.pluginName] && t[r.pluginName][e] && t[r.pluginName][e](ta({ sortable: t }, n)));
2708
2808
  });
2709
2809
  },
2710
2810
  initializePlugins: function(e, t, n, r) {
2711
- for (var i in Aa.forEach(function(r) {
2811
+ for (var i in Va.forEach(function(r) {
2712
2812
  var i = r.pluginName;
2713
2813
  if (!(!e.options[i] && !r.initializeByDefault)) {
2714
2814
  var a = new r(e, t, e.options);
2715
- a.sortable = e, a.options = e.options, e[i] = a, qi(n, a.defaults);
2815
+ a.sortable = e, a.options = e.options, e[i] = a, ia(n, a.defaults);
2716
2816
  }
2717
2817
  }), e.options) if (e.options.hasOwnProperty(i)) {
2718
2818
  var a = this.modifyOption(e, i, e.options[i]);
@@ -2721,56 +2821,56 @@ var Aa = [], ja = { initializeByDefault: !0 }, Ma = {
2721
2821
  },
2722
2822
  getEventProperties: function(e, t) {
2723
2823
  var n = {};
2724
- return Aa.forEach(function(r) {
2725
- typeof r.eventProperties == "function" && qi(n, r.eventProperties.call(t[r.pluginName], e));
2824
+ return Va.forEach(function(r) {
2825
+ typeof r.eventProperties == "function" && ia(n, r.eventProperties.call(t[r.pluginName], e));
2726
2826
  }), n;
2727
2827
  },
2728
2828
  modifyOption: function(e, t, n) {
2729
2829
  var r;
2730
- return Aa.forEach(function(i) {
2830
+ return Va.forEach(function(i) {
2731
2831
  e[i.pluginName] && i.optionListeners && typeof i.optionListeners[t] == "function" && (r = i.optionListeners[t].call(e[i.pluginName], n));
2732
2832
  }), r;
2733
2833
  }
2734
2834
  };
2735
- function Na(e) {
2835
+ function Wa(e) {
2736
2836
  var t = e.sortable, n = e.rootEl, r = e.name, i = e.targetEl, a = e.cloneEl, o = e.toEl, s = e.fromEl, c = e.oldIndex, l = e.newIndex, u = e.oldDraggableIndex, d = e.newDraggableIndex, f = e.originalEvent, p = e.putSortable, m = e.extraEventProperties;
2737
2837
  if (t ||= n && n[V], t) {
2738
2838
  var h, g = t.options, _ = "on" + r.charAt(0).toUpperCase() + r.substr(1);
2739
- window.CustomEvent && !Qi && !$i ? h = new CustomEvent(r, {
2839
+ window.CustomEvent && !la && !ua ? h = new CustomEvent(r, {
2740
2840
  bubbles: !0,
2741
2841
  cancelable: !0
2742
2842
  }) : (h = document.createEvent("Event"), h.initEvent(r, !0, !0)), h.to = o || n, h.from = s || n, h.item = i || n, h.clone = a, h.oldIndex = c, h.newIndex = l, h.oldDraggableIndex = u, h.newDraggableIndex = d, h.originalEvent = f, h.pullMode = p ? p.lastPutMode : void 0;
2743
- var v = Wi(Wi({}, m), Ma.getEventProperties(r, t));
2843
+ var v = ta(ta({}, m), Ua.getEventProperties(r, t));
2744
2844
  for (var y in v) h[y] = v[y];
2745
2845
  n && n.dispatchEvent(h), g[_] && g[_].call(t, h);
2746
2846
  }
2747
2847
  }
2748
- var Pa = ["evt"], H = function(e, t) {
2749
- var n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, r = n.evt, i = Yi(n, Pa);
2750
- Ma.pluginEvent.bind(Q)(e, t, Wi({
2848
+ var Ga = ["evt"], H = function(e, t) {
2849
+ var n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : {}, r = n.evt, i = oa(n, Ga);
2850
+ Ua.pluginEvent.bind(Q)(e, t, ta({
2751
2851
  dragEl: W,
2752
2852
  parentEl: G,
2753
2853
  ghostEl: K,
2754
2854
  rootEl: q,
2755
- nextEl: Fa,
2756
- lastDownEl: Ia,
2855
+ nextEl: Ka,
2856
+ lastDownEl: qa,
2757
2857
  cloneEl: J,
2758
- cloneHidden: La,
2759
- dragStarted: Za,
2858
+ cloneHidden: Ja,
2859
+ dragStarted: co,
2760
2860
  putSortable: X,
2761
2861
  activeSortable: Q.active,
2762
2862
  originalEvent: r,
2763
- oldIndex: Ra,
2764
- oldDraggableIndex: za,
2863
+ oldIndex: Ya,
2864
+ oldDraggableIndex: Xa,
2765
2865
  newIndex: Y,
2766
- newDraggableIndex: Ba,
2767
- hideGhostForTarget: go,
2768
- unhideGhostForTarget: _o,
2866
+ newDraggableIndex: Za,
2867
+ hideGhostForTarget: Do,
2868
+ unhideGhostForTarget: Oo,
2769
2869
  cloneNowHidden: function() {
2770
- La = !0;
2870
+ Ja = !0;
2771
2871
  },
2772
2872
  cloneNowShown: function() {
2773
- La = !1;
2873
+ Ja = !1;
2774
2874
  },
2775
2875
  dispatchSortableEvent: function(e) {
2776
2876
  U({
@@ -2782,45 +2882,45 @@ var Pa = ["evt"], H = function(e, t) {
2782
2882
  }, i));
2783
2883
  };
2784
2884
  function U(e) {
2785
- Na(Wi({
2885
+ Wa(ta({
2786
2886
  putSortable: X,
2787
2887
  cloneEl: J,
2788
2888
  targetEl: W,
2789
2889
  rootEl: q,
2790
- oldIndex: Ra,
2791
- oldDraggableIndex: za,
2890
+ oldIndex: Ya,
2891
+ oldDraggableIndex: Xa,
2792
2892
  newIndex: Y,
2793
- newDraggableIndex: Ba
2893
+ newDraggableIndex: Za
2794
2894
  }, e));
2795
2895
  }
2796
- var W, G, K, q, Fa, Ia, J, La, Ra, Y, za, Ba, Va, X, Ha = !1, Ua = !1, Wa = [], Ga, Ka, qa, Ja, Ya, Xa, Za, Qa, $a, eo = !1, to = !1, no, Z, ro = [], io = !1, ao = [], oo = typeof document < "u", so = na, co = $i || Qi ? "cssFloat" : "float", lo = oo && !ra && !na && "draggable" in document.createElement("div"), uo = function() {
2797
- if (oo) {
2798
- if (Qi) return !1;
2896
+ var W, G, K, q, Ka, qa, J, Ja, Ya, Y, Xa, Za, Qa, X, $a = !1, eo = !1, to = [], no, ro, io, ao, oo, so, co, lo, uo, fo = !1, po = !1, mo, Z, ho = [], go = !1, _o = [], vo = typeof document < "u", yo = pa, bo = ua || la ? "cssFloat" : "float", xo = vo && !ma && !pa && "draggable" in document.createElement("div"), So = function() {
2897
+ if (vo) {
2898
+ if (la) return !1;
2799
2899
  var e = document.createElement("x");
2800
2900
  return e.style.cssText = "pointer-events:auto", e.style.pointerEvents === "auto";
2801
2901
  }
2802
- }(), fo = function(e, t) {
2803
- var n = z(e), r = parseInt(n.width) - parseInt(n.paddingLeft) - parseInt(n.paddingRight) - parseInt(n.borderLeftWidth) - parseInt(n.borderRightWidth), i = pa(e, 0, t), a = pa(e, 1, t), o = i && z(i), s = a && z(a), c = o && parseInt(o.marginLeft) + parseInt(o.marginRight) + B(i).width, l = s && parseInt(s.marginLeft) + parseInt(s.marginRight) + B(a).width;
2902
+ }(), Co = function(e, t) {
2903
+ var n = z(e), r = parseInt(n.width) - parseInt(n.paddingLeft) - parseInt(n.paddingRight) - parseInt(n.borderLeftWidth) - parseInt(n.borderRightWidth), i = wa(e, 0, t), a = wa(e, 1, t), o = i && z(i), s = a && z(a), c = o && parseInt(o.marginLeft) + parseInt(o.marginRight) + B(i).width, l = s && parseInt(s.marginLeft) + parseInt(s.marginRight) + B(a).width;
2804
2904
  if (n.display === "flex") return n.flexDirection === "column" || n.flexDirection === "column-reverse" ? "vertical" : "horizontal";
2805
2905
  if (n.display === "grid") return n.gridTemplateColumns.split(" ").length <= 1 ? "vertical" : "horizontal";
2806
2906
  if (i && o.float && o.float !== "none") {
2807
2907
  var u = o.float === "left" ? "left" : "right";
2808
2908
  return a && (s.clear === "both" || s.clear === u) ? "vertical" : "horizontal";
2809
2909
  }
2810
- return i && (o.display === "block" || o.display === "flex" || o.display === "table" || o.display === "grid" || c >= r && n[co] === "none" || a && n[co] === "none" && c + l > r) ? "vertical" : "horizontal";
2811
- }, po = function(e, t, n) {
2910
+ return i && (o.display === "block" || o.display === "flex" || o.display === "table" || o.display === "grid" || c >= r && n[bo] === "none" || a && n[bo] === "none" && c + l > r) ? "vertical" : "horizontal";
2911
+ }, wo = function(e, t, n) {
2812
2912
  var r = n ? e.left : e.top, i = n ? e.right : e.bottom, a = n ? e.width : e.height, o = n ? t.left : t.top, s = n ? t.right : t.bottom, c = n ? t.width : t.height;
2813
2913
  return r === o || i === s || r + a / 2 === o + c / 2;
2814
- }, mo = function(e, t) {
2914
+ }, To = function(e, t) {
2815
2915
  var n;
2816
- return Wa.some(function(r) {
2916
+ return to.some(function(r) {
2817
2917
  var i = r[V].options.emptyInsertThreshold;
2818
- if (!(!i || ma(r))) {
2918
+ if (!(!i || Ta(r))) {
2819
2919
  var a = B(r), o = e >= a.left - i && e <= a.right + i, s = t >= a.top - i && t <= a.bottom + i;
2820
2920
  if (o && s) return n = r;
2821
2921
  }
2822
2922
  }), n;
2823
- }, ho = function(e) {
2923
+ }, Eo = function(e) {
2824
2924
  function t(e, n) {
2825
2925
  return function(r, i, a, o) {
2826
2926
  var s = r.options.group.name && i.options.group.name && r.options.group.name === i.options.group.name;
@@ -2833,31 +2933,31 @@ var W, G, K, q, Fa, Ia, J, La, Ra, Y, za, Ba, Va, X, Ha = !1, Ua = !1, Wa = [],
2833
2933
  };
2834
2934
  }
2835
2935
  var n = {}, r = e.group;
2836
- (!r || Gi(r) != "object") && (r = { name: r }), n.name = r.name, n.checkPull = t(r.pull, !0), n.checkPut = t(r.put), n.revertClone = r.revertClone, e.group = n;
2837
- }, go = function() {
2838
- !uo && K && z(K, "display", "none");
2839
- }, _o = function() {
2840
- !uo && K && z(K, "display", "");
2936
+ (!r || na(r) != "object") && (r = { name: r }), n.name = r.name, n.checkPull = t(r.pull, !0), n.checkPut = t(r.put), n.revertClone = r.revertClone, e.group = n;
2937
+ }, Do = function() {
2938
+ !So && K && z(K, "display", "none");
2939
+ }, Oo = function() {
2940
+ !So && K && z(K, "display", "");
2841
2941
  };
2842
- oo && !ra && document.addEventListener("click", function(e) {
2843
- if (Ua) return e.preventDefault(), e.stopPropagation && e.stopPropagation(), e.stopImmediatePropagation && e.stopImmediatePropagation(), Ua = !1, !1;
2942
+ vo && !ma && document.addEventListener("click", function(e) {
2943
+ if (eo) return e.preventDefault(), e.stopPropagation && e.stopPropagation(), e.stopImmediatePropagation && e.stopImmediatePropagation(), eo = !1, !1;
2844
2944
  }, !0);
2845
- var vo = function(e) {
2945
+ var ko = function(e) {
2846
2946
  if (W) {
2847
2947
  e = e.touches ? e.touches[0] : e;
2848
- var t = mo(e.clientX, e.clientY);
2948
+ var t = To(e.clientX, e.clientY);
2849
2949
  if (t) {
2850
2950
  var n = {};
2851
2951
  for (var r in e) e.hasOwnProperty(r) && (n[r] = e[r]);
2852
2952
  n.target = n.rootEl = t, n.preventDefault = void 0, n.stopPropagation = void 0, t[V]._onDragOver(n);
2853
2953
  }
2854
2954
  }
2855
- }, yo = function(e) {
2955
+ }, Ao = function(e) {
2856
2956
  W && W.parentNode[V]._isOutsideThisEl(e.target);
2857
2957
  };
2858
2958
  function Q(e, t) {
2859
2959
  if (!(e && e.nodeType && e.nodeType === 1)) throw `Sortable: \`el\` must be an HTMLElement, not ${{}.toString.call(e)}`;
2860
- this.el = e, this.options = t = qi({}, t), e[V] = this;
2960
+ this.el = e, this.options = t = ia({}, t), e[V] = this;
2861
2961
  var n = {
2862
2962
  group: null,
2863
2963
  sort: !0,
@@ -2870,7 +2970,7 @@ function Q(e, t) {
2870
2970
  invertedSwapThreshold: null,
2871
2971
  removeCloneOnHide: !0,
2872
2972
  direction: function() {
2873
- return fo(e, this.options);
2973
+ return Co(e, this.options);
2874
2974
  },
2875
2975
  ghostClass: "sortable-ghost",
2876
2976
  chosenClass: "sortable-chosen",
@@ -2897,17 +2997,17 @@ function Q(e, t) {
2897
2997
  x: 0,
2898
2998
  y: 0
2899
2999
  },
2900
- supportPointer: Q.supportPointer !== !1 && "PointerEvent" in window && !ta,
3000
+ supportPointer: Q.supportPointer !== !1 && "PointerEvent" in window && !fa,
2901
3001
  emptyInsertThreshold: 5
2902
3002
  };
2903
- for (var r in Ma.initializePlugins(this, e, n), n) !(r in t) && (t[r] = n[r]);
2904
- for (var i in ho(t), this) i.charAt(0) === "_" && typeof this[i] == "function" && (this[i] = this[i].bind(this));
2905
- this.nativeDraggable = !t.forceFallback && lo, this.nativeDraggable && (this.options.touchStartThreshold = 1), t.supportPointer ? I(e, "pointerdown", this._onTapStart) : (I(e, "mousedown", this._onTapStart), I(e, "touchstart", this._onTapStart)), this.nativeDraggable && (I(e, "dragover", this), I(e, "dragenter", this)), Wa.push(this.el), t.store && t.store.get && this.sort(t.store.get(this) || []), qi(this, Da());
3003
+ for (var r in Ua.initializePlugins(this, e, n), n) !(r in t) && (t[r] = n[r]);
3004
+ for (var i in Eo(t), this) i.charAt(0) === "_" && typeof this[i] == "function" && (this[i] = this[i].bind(this));
3005
+ this.nativeDraggable = !t.forceFallback && xo, this.nativeDraggable && (this.options.touchStartThreshold = 1), t.supportPointer ? I(e, "pointerdown", this._onTapStart) : (I(e, "mousedown", this._onTapStart), I(e, "touchstart", this._onTapStart)), this.nativeDraggable && (I(e, "dragover", this), I(e, "dragenter", this)), to.push(this.el), t.store && t.store.get && this.sort(t.store.get(this) || []), ia(this, Ra());
2906
3006
  }
2907
3007
  Q.prototype = {
2908
3008
  constructor: Q,
2909
3009
  _isOutsideThisEl: function(e) {
2910
- !this.el.contains(e) && e !== this.el && (Qa = null);
3010
+ !this.el.contains(e) && e !== this.el && (lo = null);
2911
3011
  },
2912
3012
  _getDirection: function(e, t) {
2913
3013
  return typeof this.options.direction == "function" ? this.options.direction.call(this, e, t, W) : this.options.direction;
@@ -2915,8 +3015,8 @@ Q.prototype = {
2915
3015
  _onTapStart: function(e) {
2916
3016
  if (e.cancelable) {
2917
3017
  var t = this, n = this.el, r = this.options, i = r.preventOnFilter, a = e.type, o = e.touches && e.touches[0] || e.pointerType && e.pointerType === "touch" && e, s = (o || e).target, c = e.target.shadowRoot && (e.path && e.path[0] || e.composedPath && e.composedPath()[0]) || s, l = r.filter;
2918
- if (ko(n), !W && !(/mousedown|pointerdown/.test(a) && e.button !== 0 || r.disabled) && !c.isContentEditable && !(!this.nativeDraggable && ta && s && s.tagName.toUpperCase() === "SELECT") && (s = sa(s, r.draggable, n, !1), !(s && s.animated) && Ia !== s)) {
2919
- if (Ra = ha(s), za = ha(s, r.draggable), typeof l == "function") {
3018
+ if (Bo(n), !W && !(/mousedown|pointerdown/.test(a) && e.button !== 0 || r.disabled) && !c.isContentEditable && !(!this.nativeDraggable && fa && s && s.tagName.toUpperCase() === "SELECT") && (s = va(s, r.draggable, n, !1), !(s && s.animated) && qa !== s)) {
3019
+ if (Ya = Ea(s), Xa = Ea(s, r.draggable), typeof l == "function") {
2920
3020
  if (l.call(this, e, s, this)) {
2921
3021
  U({
2922
3022
  sortable: t,
@@ -2929,7 +3029,7 @@ Q.prototype = {
2929
3029
  return;
2930
3030
  }
2931
3031
  } else if (l && (l = l.split(",").some(function(r) {
2932
- if (r = sa(c, r.trim(), n, !1), r) return U({
3032
+ if (r = va(c, r.trim(), n, !1), r) return U({
2933
3033
  sortable: t,
2934
3034
  rootEl: r,
2935
3035
  name: "filter",
@@ -2941,7 +3041,7 @@ Q.prototype = {
2941
3041
  i && e.cancelable && e.preventDefault();
2942
3042
  return;
2943
3043
  }
2944
- r.handle && !sa(c, r.handle, n, !1) || this._prepareDragStart(e, o, s);
3044
+ r.handle && !va(c, r.handle, n, !1) || this._prepareDragStart(e, o, s);
2945
3045
  }
2946
3046
  }
2947
3047
  },
@@ -2949,23 +3049,23 @@ Q.prototype = {
2949
3049
  var r = this, i = r.el, a = r.options, o = i.ownerDocument, s;
2950
3050
  if (n && !W && n.parentNode === i) {
2951
3051
  var c = B(n);
2952
- if (q = i, W = n, G = W.parentNode, Fa = W.nextSibling, Ia = n, Va = a.group, Q.dragged = W, Ga = {
3052
+ if (q = i, W = n, G = W.parentNode, Ka = W.nextSibling, qa = n, Qa = a.group, Q.dragged = W, no = {
2953
3053
  target: W,
2954
3054
  clientX: (t || e).clientX,
2955
3055
  clientY: (t || e).clientY
2956
- }, Ya = Ga.clientX - c.left, Xa = Ga.clientY - c.top, this._lastX = (t || e).clientX, this._lastY = (t || e).clientY, W.style["will-change"] = "all", s = function() {
3056
+ }, oo = no.clientX - c.left, so = no.clientY - c.top, this._lastX = (t || e).clientX, this._lastY = (t || e).clientY, W.style["will-change"] = "all", s = function() {
2957
3057
  if (H("delayEnded", r, { evt: e }), Q.eventCanceled) {
2958
3058
  r._onDrop();
2959
3059
  return;
2960
3060
  }
2961
- r._disableDelayedDragEvents(), !ea && r.nativeDraggable && (W.draggable = !0), r._triggerDragStart(e, t), U({
3061
+ r._disableDelayedDragEvents(), !da && r.nativeDraggable && (W.draggable = !0), r._triggerDragStart(e, t), U({
2962
3062
  sortable: r,
2963
3063
  name: "choose",
2964
3064
  originalEvent: e
2965
3065
  }), R(W, a.chosenClass, !0);
2966
3066
  }, a.ignore.split(",").forEach(function(e) {
2967
- ua(W, e.trim(), So);
2968
- }), I(o, "dragover", vo), I(o, "mousemove", vo), I(o, "touchmove", vo), I(o, "mouseup", r._onDrop), I(o, "touchend", r._onDrop), I(o, "touchcancel", r._onDrop), ea && this.nativeDraggable && (this.options.touchStartThreshold = 4, W.draggable = !0), H("delayStart", this, { evt: e }), a.delay && (!a.delayOnTouchOnly || t) && (!this.nativeDraggable || !($i || Qi))) {
3067
+ xa(W, e.trim(), No);
3068
+ }), I(o, "dragover", ko), I(o, "mousemove", ko), I(o, "touchmove", ko), I(o, "mouseup", r._onDrop), I(o, "touchend", r._onDrop), I(o, "touchcancel", r._onDrop), da && this.nativeDraggable && (this.options.touchStartThreshold = 4, W.draggable = !0), H("delayStart", this, { evt: e }), a.delay && (!a.delayOnTouchOnly || t) && (!this.nativeDraggable || !(ua || la))) {
2969
3069
  if (Q.eventCanceled) {
2970
3070
  this._onDrop();
2971
3071
  return;
@@ -2979,7 +3079,7 @@ Q.prototype = {
2979
3079
  Math.max(Math.abs(t.clientX - this._lastX), Math.abs(t.clientY - this._lastY)) >= Math.floor(this.options.touchStartThreshold / (this.nativeDraggable && window.devicePixelRatio || 1)) && this._disableDelayedDrag();
2980
3080
  },
2981
3081
  _disableDelayedDrag: function() {
2982
- W && So(W), clearTimeout(this._dragStartTimer), this._disableDelayedDragEvents();
3082
+ W && No(W), clearTimeout(this._dragStartTimer), this._disableDelayedDragEvents();
2983
3083
  },
2984
3084
  _disableDelayedDragEvents: function() {
2985
3085
  var e = this.el.ownerDocument;
@@ -2988,14 +3088,14 @@ Q.prototype = {
2988
3088
  _triggerDragStart: function(e, t) {
2989
3089
  t ||= e.pointerType == "touch" && e, !this.nativeDraggable || t ? this.options.supportPointer ? I(document, "pointermove", this._onTouchMove) : t ? I(document, "touchmove", this._onTouchMove) : I(document, "mousemove", this._onTouchMove) : (I(W, "dragend", this), I(q, "dragstart", this._onDragStart));
2990
3090
  try {
2991
- document.selection ? Ao(function() {
3091
+ document.selection ? Vo(function() {
2992
3092
  document.selection.empty();
2993
3093
  }) : window.getSelection().removeAllRanges();
2994
3094
  } catch {}
2995
3095
  },
2996
3096
  _dragStarted: function(e, t) {
2997
- if (Ha = !1, q && W) {
2998
- H("dragStarted", this, { evt: t }), this.nativeDraggable && I(document, "dragover", yo);
3097
+ if ($a = !1, q && W) {
3098
+ H("dragStarted", this, { evt: t }), this.nativeDraggable && I(document, "dragover", Ao);
2999
3099
  var n = this.options;
3000
3100
  !e && R(W, n.dragClass, !1), R(W, n.ghostClass, !0), Q.active = this, e && this._appendGhost(), U({
3001
3101
  sortable: this,
@@ -3005,33 +3105,33 @@ Q.prototype = {
3005
3105
  } else this._nulling();
3006
3106
  },
3007
3107
  _emulateDragOver: function() {
3008
- if (Ka) {
3009
- this._lastX = Ka.clientX, this._lastY = Ka.clientY, go();
3010
- for (var e = document.elementFromPoint(Ka.clientX, Ka.clientY), t = e; e && e.shadowRoot && (e = e.shadowRoot.elementFromPoint(Ka.clientX, Ka.clientY), e !== t);) t = e;
3108
+ if (ro) {
3109
+ this._lastX = ro.clientX, this._lastY = ro.clientY, Do();
3110
+ for (var e = document.elementFromPoint(ro.clientX, ro.clientY), t = e; e && e.shadowRoot && (e = e.shadowRoot.elementFromPoint(ro.clientX, ro.clientY), e !== t);) t = e;
3011
3111
  if (W.parentNode[V]._isOutsideThisEl(e), t) do {
3012
3112
  if (t[V]) {
3013
3113
  var n = void 0;
3014
3114
  if (n = t[V]._onDragOver({
3015
- clientX: Ka.clientX,
3016
- clientY: Ka.clientY,
3115
+ clientX: ro.clientX,
3116
+ clientY: ro.clientY,
3017
3117
  target: e,
3018
3118
  rootEl: t
3019
3119
  }), n && !this.options.dragoverBubble) break;
3020
3120
  }
3021
3121
  e = t;
3022
3122
  } while (t = t.parentNode);
3023
- _o();
3123
+ Oo();
3024
3124
  }
3025
3125
  },
3026
3126
  _onTouchMove: function(e) {
3027
- if (Ga) {
3028
- var t = this.options, n = t.fallbackTolerance, r = t.fallbackOffset, i = e.touches ? e.touches[0] : e, a = K && la(K, !0), o = K && a && a.a, s = K && a && a.d, c = so && Z && ga(Z), l = (i.clientX - Ga.clientX + r.x) / (o || 1) + (c ? c[0] - ro[0] : 0) / (o || 1), u = (i.clientY - Ga.clientY + r.y) / (s || 1) + (c ? c[1] - ro[1] : 0) / (s || 1);
3029
- if (!Q.active && !Ha) {
3127
+ if (no) {
3128
+ var t = this.options, n = t.fallbackTolerance, r = t.fallbackOffset, i = e.touches ? e.touches[0] : e, a = K && ba(K, !0), o = K && a && a.a, s = K && a && a.d, c = yo && Z && Da(Z), l = (i.clientX - no.clientX + r.x) / (o || 1) + (c ? c[0] - ho[0] : 0) / (o || 1), u = (i.clientY - no.clientY + r.y) / (s || 1) + (c ? c[1] - ho[1] : 0) / (s || 1);
3129
+ if (!Q.active && !$a) {
3030
3130
  if (n && Math.max(Math.abs(i.clientX - this._lastX), Math.abs(i.clientY - this._lastY)) < n) return;
3031
3131
  this._onDragStart(e, !0);
3032
3132
  }
3033
3133
  if (K) {
3034
- a ? (a.e += l - (qa || 0), a.f += u - (Ja || 0)) : a = {
3134
+ a ? (a.e += l - (io || 0), a.f += u - (ao || 0)) : a = {
3035
3135
  a: 1,
3036
3136
  b: 0,
3037
3137
  c: 0,
@@ -3040,19 +3140,19 @@ Q.prototype = {
3040
3140
  f: u
3041
3141
  };
3042
3142
  var d = `matrix(${a.a},${a.b},${a.c},${a.d},${a.e},${a.f})`;
3043
- z(K, "webkitTransform", d), z(K, "mozTransform", d), z(K, "msTransform", d), z(K, "transform", d), qa = l, Ja = u, Ka = i;
3143
+ z(K, "webkitTransform", d), z(K, "mozTransform", d), z(K, "msTransform", d), z(K, "transform", d), io = l, ao = u, ro = i;
3044
3144
  }
3045
3145
  e.cancelable && e.preventDefault();
3046
3146
  }
3047
3147
  },
3048
3148
  _appendGhost: function() {
3049
3149
  if (!K) {
3050
- var e = this.options.fallbackOnBody ? document.body : q, t = B(W, !0, so, !0, e), n = this.options;
3051
- if (so) {
3150
+ var e = this.options.fallbackOnBody ? document.body : q, t = B(W, !0, yo, !0, e), n = this.options;
3151
+ if (yo) {
3052
3152
  for (Z = e; z(Z, "position") === "static" && z(Z, "transform") === "none" && Z !== document;) Z = Z.parentNode;
3053
- Z !== document.body && Z !== document.documentElement ? (Z === document && (Z = da()), t.top += Z.scrollTop, t.left += Z.scrollLeft) : Z = da(), ro = ga(Z);
3153
+ Z !== document.body && Z !== document.documentElement ? (Z === document && (Z = Sa()), t.top += Z.scrollTop, t.left += Z.scrollLeft) : Z = Sa(), ho = Da(Z);
3054
3154
  }
3055
- K = W.cloneNode(!0), R(K, n.ghostClass, !1), R(K, n.fallbackClass, !0), R(K, n.dragClass, !0), z(K, "transition", ""), z(K, "transform", ""), z(K, "box-sizing", "border-box"), z(K, "margin", 0), z(K, "top", t.top), z(K, "left", t.left), z(K, "width", t.width), z(K, "height", t.height), z(K, "opacity", "0.8"), z(K, "position", so ? "absolute" : "fixed"), z(K, "zIndex", "100000"), z(K, "pointerEvents", "none"), Q.ghost = K, e.appendChild(K), z(K, "transform-origin", Ya / parseInt(K.style.width) * 100 + "% " + Xa / parseInt(K.style.height) * 100 + "%");
3155
+ K = W.cloneNode(!0), R(K, n.ghostClass, !1), R(K, n.fallbackClass, !0), R(K, n.dragClass, !0), z(K, "transition", ""), z(K, "transform", ""), z(K, "box-sizing", "border-box"), z(K, "margin", 0), z(K, "top", t.top), z(K, "left", t.left), z(K, "width", t.width), z(K, "height", t.height), z(K, "opacity", "0.8"), z(K, "position", yo ? "absolute" : "fixed"), z(K, "zIndex", "100000"), z(K, "pointerEvents", "none"), Q.ghost = K, e.appendChild(K), z(K, "transform-origin", oo / parseInt(K.style.width) * 100 + "% " + so / parseInt(K.style.height) * 100 + "%");
3056
3156
  }
3057
3157
  },
3058
3158
  _onDragStart: function(e, t) {
@@ -3061,18 +3161,18 @@ Q.prototype = {
3061
3161
  this._onDrop();
3062
3162
  return;
3063
3163
  }
3064
- H("setupClone", this), Q.eventCanceled || (J = Ta(W), J.removeAttribute("id"), J.draggable = !1, J.style["will-change"] = "", this._hideClone(), R(J, this.options.chosenClass, !1), Q.clone = J), n.cloneId = Ao(function() {
3164
+ H("setupClone", this), Q.eventCanceled || (J = Ia(W), J.removeAttribute("id"), J.draggable = !1, J.style["will-change"] = "", this._hideClone(), R(J, this.options.chosenClass, !1), Q.clone = J), n.cloneId = Vo(function() {
3065
3165
  H("clone", n), !Q.eventCanceled && (n.options.removeCloneOnHide || q.insertBefore(J, W), n._hideClone(), U({
3066
3166
  sortable: n,
3067
3167
  name: "clone"
3068
3168
  }));
3069
- }), !t && R(W, i.dragClass, !0), t ? (Ua = !0, n._loopId = setInterval(n._emulateDragOver, 50)) : (L(document, "mouseup", n._onDrop), L(document, "touchend", n._onDrop), L(document, "touchcancel", n._onDrop), r && (r.effectAllowed = "move", i.setData && i.setData.call(n, r, W)), I(document, "drop", n), z(W, "transform", "translateZ(0)")), Ha = !0, n._dragStartId = Ao(n._dragStarted.bind(n, t, e)), I(document, "selectstart", n), Za = !0, ta && z(document.body, "user-select", "none");
3169
+ }), !t && R(W, i.dragClass, !0), t ? (eo = !0, n._loopId = setInterval(n._emulateDragOver, 50)) : (L(document, "mouseup", n._onDrop), L(document, "touchend", n._onDrop), L(document, "touchcancel", n._onDrop), r && (r.effectAllowed = "move", i.setData && i.setData.call(n, r, W)), I(document, "drop", n), z(W, "transform", "translateZ(0)")), $a = !0, n._dragStartId = Vo(n._dragStarted.bind(n, t, e)), I(document, "selectstart", n), co = !0, fa && z(document.body, "user-select", "none");
3070
3170
  },
3071
3171
  _onDragOver: function(e) {
3072
- var t = this.el, n = e.target, r, i, a, o = this.options, s = o.group, c = Q.active, l = Va === s, u = o.sort, d = X || c, f, p = this, m = !1;
3073
- if (io) return;
3172
+ var t = this.el, n = e.target, r, i, a, o = this.options, s = o.group, c = Q.active, l = Qa === s, u = o.sort, d = X || c, f, p = this, m = !1;
3173
+ if (go) return;
3074
3174
  function h(o, s) {
3075
- H(o, p, Wi({
3175
+ H(o, p, ta({
3076
3176
  evt: e,
3077
3177
  isOwner: l,
3078
3178
  axis: f ? "vertical" : "horizontal",
@@ -3084,7 +3184,7 @@ Q.prototype = {
3084
3184
  target: n,
3085
3185
  completed: _,
3086
3186
  onMove: function(n, i) {
3087
- return xo(q, t, W, r, n, B(n), e, i);
3187
+ return Mo(q, t, W, r, n, B(n), e, i);
3088
3188
  },
3089
3189
  changed: v
3090
3190
  }, s));
@@ -3095,48 +3195,48 @@ Q.prototype = {
3095
3195
  function _(r) {
3096
3196
  return h("dragOverCompleted", { insertion: r }), r && (l ? c._hideClone() : c._showClone(p), p !== d && (R(W, X ? X.options.ghostClass : c.options.ghostClass, !1), R(W, o.ghostClass, !0)), X !== p && p !== Q.active ? X = p : p === Q.active && X && (X = null), d === p && (p._ignoreWhileAnimating = n), p.animateAll(function() {
3097
3197
  h("dragOverAnimationComplete"), p._ignoreWhileAnimating = null;
3098
- }), p !== d && (d.animateAll(), d._ignoreWhileAnimating = null)), (n === W && !W.animated || n === t && !n.animated) && (Qa = null), !o.dragoverBubble && !e.rootEl && n !== document && (W.parentNode[V]._isOutsideThisEl(e.target), !r && vo(e)), !o.dragoverBubble && e.stopPropagation && e.stopPropagation(), m = !0;
3198
+ }), p !== d && (d.animateAll(), d._ignoreWhileAnimating = null)), (n === W && !W.animated || n === t && !n.animated) && (lo = null), !o.dragoverBubble && !e.rootEl && n !== document && (W.parentNode[V]._isOutsideThisEl(e.target), !r && ko(e)), !o.dragoverBubble && e.stopPropagation && e.stopPropagation(), m = !0;
3099
3199
  }
3100
3200
  function v() {
3101
- Y = ha(W), Ba = ha(W, o.draggable), U({
3201
+ Y = Ea(W), Za = Ea(W, o.draggable), U({
3102
3202
  sortable: p,
3103
3203
  name: "change",
3104
3204
  toEl: t,
3105
3205
  newIndex: Y,
3106
- newDraggableIndex: Ba,
3206
+ newDraggableIndex: Za,
3107
3207
  originalEvent: e
3108
3208
  });
3109
3209
  }
3110
- if (e.preventDefault !== void 0 && e.cancelable && e.preventDefault(), n = sa(n, o.draggable, t, !0), h("dragOver"), Q.eventCanceled) return m;
3210
+ if (e.preventDefault !== void 0 && e.cancelable && e.preventDefault(), n = va(n, o.draggable, t, !0), h("dragOver"), Q.eventCanceled) return m;
3111
3211
  if (W.contains(e.target) || n.animated && n.animatingX && n.animatingY || p._ignoreWhileAnimating === n) return _(!1);
3112
- if (Ua = !1, c && !o.disabled && (l ? u || (a = G !== q) : X === this || (this.lastPutMode = Va.checkPull(this, c, W, e)) && s.checkPut(this, c, W, e))) {
3212
+ if (eo = !1, c && !o.disabled && (l ? u || (a = G !== q) : X === this || (this.lastPutMode = Qa.checkPull(this, c, W, e)) && s.checkPut(this, c, W, e))) {
3113
3213
  if (f = this._getDirection(e, n) === "vertical", r = B(W), h("dragOverValid"), Q.eventCanceled) return m;
3114
- if (a) return G = q, g(), this._hideClone(), h("revert"), Q.eventCanceled || (Fa ? q.insertBefore(W, Fa) : q.appendChild(W)), _(!0);
3115
- var y = ma(t, o.draggable);
3116
- if (!y || To(e, f, this) && !y.animated) {
3214
+ if (a) return G = q, g(), this._hideClone(), h("revert"), Q.eventCanceled || (Ka ? q.insertBefore(W, Ka) : q.appendChild(W)), _(!0);
3215
+ var y = Ta(t, o.draggable);
3216
+ if (!y || Io(e, f, this) && !y.animated) {
3117
3217
  if (y === W) return _(!1);
3118
- if (y && t === e.target && (n = y), n && (i = B(n)), xo(q, t, W, r, n, i, e, !!n) !== !1) return g(), y && y.nextSibling ? t.insertBefore(W, y.nextSibling) : t.appendChild(W), G = t, v(), _(!0);
3119
- } else if (y && wo(e, f, this)) {
3120
- var b = pa(t, 0, o, !0);
3218
+ if (y && t === e.target && (n = y), n && (i = B(n)), Mo(q, t, W, r, n, i, e, !!n) !== !1) return g(), y && y.nextSibling ? t.insertBefore(W, y.nextSibling) : t.appendChild(W), G = t, v(), _(!0);
3219
+ } else if (y && Fo(e, f, this)) {
3220
+ var b = wa(t, 0, o, !0);
3121
3221
  if (b === W) return _(!1);
3122
- if (n = b, i = B(n), xo(q, t, W, r, n, i, e, !1) !== !1) return g(), t.insertBefore(W, b), G = t, v(), _(!0);
3222
+ if (n = b, i = B(n), Mo(q, t, W, r, n, i, e, !1) !== !1) return g(), t.insertBefore(W, b), G = t, v(), _(!0);
3123
3223
  } else if (n.parentNode === t) {
3124
3224
  i = B(n);
3125
- var x = 0, S, C = W.parentNode !== t, w = !po(W.animated && W.toRect || r, n.animated && n.toRect || i, f), T = f ? "top" : "left", E = fa(n, "top", "top") || fa(W, "top", "top"), D = E ? E.scrollTop : void 0;
3126
- Qa !== n && (S = i[T], eo = !1, to = !w && o.invertSwap || C), x = Eo(e, n, i, f, w ? 1 : o.swapThreshold, o.invertedSwapThreshold == null ? o.swapThreshold : o.invertedSwapThreshold, to, Qa === n);
3225
+ var x = 0, S, C = W.parentNode !== t, w = !wo(W.animated && W.toRect || r, n.animated && n.toRect || i, f), T = f ? "top" : "left", E = Ca(n, "top", "top") || Ca(W, "top", "top"), D = E ? E.scrollTop : void 0;
3226
+ lo !== n && (S = i[T], fo = !1, po = !w && o.invertSwap || C), x = Lo(e, n, i, f, w ? 1 : o.swapThreshold, o.invertedSwapThreshold == null ? o.swapThreshold : o.invertedSwapThreshold, po, lo === n);
3127
3227
  var O;
3128
3228
  if (x !== 0) {
3129
- var k = ha(W);
3229
+ var k = Ea(W);
3130
3230
  do
3131
3231
  k -= x, O = G.children[k];
3132
3232
  while (O && (z(O, "display") === "none" || O === K));
3133
3233
  }
3134
3234
  if (x === 0 || O === n) return _(!1);
3135
- Qa = n, $a = x;
3235
+ lo = n, uo = x;
3136
3236
  var ee = n.nextElementSibling, A = !1;
3137
3237
  A = x === 1;
3138
- var te = xo(q, t, W, r, n, i, e, A);
3139
- if (te !== !1) return (te === 1 || te === -1) && (A = te === 1), io = !0, setTimeout(Co, 30), g(), A && !ee ? t.appendChild(W) : n.parentNode.insertBefore(W, A ? ee : n), E && wa(E, 0, D - E.scrollTop), G = W.parentNode, S !== void 0 && !to && (no = Math.abs(S - B(n)[T])), v(), _(!0);
3238
+ var te = Mo(q, t, W, r, n, i, e, A);
3239
+ if (te !== !1) return (te === 1 || te === -1) && (A = te === 1), go = !0, setTimeout(Po, 30), g(), A && !ee ? t.appendChild(W) : n.parentNode.insertBefore(W, A ? ee : n), E && Fa(E, 0, D - E.scrollTop), G = W.parentNode, S !== void 0 && !po && (mo = Math.abs(S - B(n)[T])), v(), _(!0);
3140
3240
  }
3141
3241
  if (t.contains(W)) return _(!1);
3142
3242
  }
@@ -3144,7 +3244,7 @@ Q.prototype = {
3144
3244
  },
3145
3245
  _ignoreWhileAnimating: null,
3146
3246
  _offMoveEvents: function() {
3147
- L(document, "mousemove", this._onTouchMove), L(document, "touchmove", this._onTouchMove), L(document, "pointermove", this._onTouchMove), L(document, "dragover", vo), L(document, "mousemove", vo), L(document, "touchmove", vo);
3247
+ L(document, "mousemove", this._onTouchMove), L(document, "touchmove", this._onTouchMove), L(document, "pointermove", this._onTouchMove), L(document, "dragover", ko), L(document, "mousemove", ko), L(document, "touchmove", ko);
3148
3248
  },
3149
3249
  _offUpEvents: function() {
3150
3250
  var e = this.el.ownerDocument;
@@ -3152,18 +3252,18 @@ Q.prototype = {
3152
3252
  },
3153
3253
  _onDrop: function(e) {
3154
3254
  var t = this.el, n = this.options;
3155
- if (Y = ha(W), Ba = ha(W, n.draggable), H("drop", this, { evt: e }), G = W && W.parentNode, Y = ha(W), Ba = ha(W, n.draggable), Q.eventCanceled) {
3255
+ if (Y = Ea(W), Za = Ea(W, n.draggable), H("drop", this, { evt: e }), G = W && W.parentNode, Y = Ea(W), Za = Ea(W, n.draggable), Q.eventCanceled) {
3156
3256
  this._nulling();
3157
3257
  return;
3158
3258
  }
3159
- Ha = !1, to = !1, eo = !1, clearInterval(this._loopId), clearTimeout(this._dragStartTimer), jo(this.cloneId), jo(this._dragStartId), this.nativeDraggable && (L(document, "drop", this), L(t, "dragstart", this._onDragStart)), this._offMoveEvents(), this._offUpEvents(), ta && z(document.body, "user-select", ""), z(W, "transform", ""), e && (Za && (e.cancelable && e.preventDefault(), !n.dropBubble && e.stopPropagation()), K && K.parentNode && K.parentNode.removeChild(K), (q === G || X && X.lastPutMode !== "clone") && J && J.parentNode && J.parentNode.removeChild(J), W && (this.nativeDraggable && L(W, "dragend", this), So(W), W.style["will-change"] = "", Za && !Ha && R(W, X ? X.options.ghostClass : this.options.ghostClass, !1), R(W, this.options.chosenClass, !1), U({
3259
+ $a = !1, po = !1, fo = !1, clearInterval(this._loopId), clearTimeout(this._dragStartTimer), Ho(this.cloneId), Ho(this._dragStartId), this.nativeDraggable && (L(document, "drop", this), L(t, "dragstart", this._onDragStart)), this._offMoveEvents(), this._offUpEvents(), fa && z(document.body, "user-select", ""), z(W, "transform", ""), e && (co && (e.cancelable && e.preventDefault(), !n.dropBubble && e.stopPropagation()), K && K.parentNode && K.parentNode.removeChild(K), (q === G || X && X.lastPutMode !== "clone") && J && J.parentNode && J.parentNode.removeChild(J), W && (this.nativeDraggable && L(W, "dragend", this), No(W), W.style["will-change"] = "", co && !$a && R(W, X ? X.options.ghostClass : this.options.ghostClass, !1), R(W, this.options.chosenClass, !1), U({
3160
3260
  sortable: this,
3161
3261
  name: "unchoose",
3162
3262
  toEl: G,
3163
3263
  newIndex: null,
3164
3264
  newDraggableIndex: null,
3165
3265
  originalEvent: e
3166
- }), q === G ? Y !== Ra && Y >= 0 && (U({
3266
+ }), q === G ? Y !== Ya && Y >= 0 && (U({
3167
3267
  sortable: this,
3168
3268
  name: "update",
3169
3269
  toEl: G,
@@ -3195,7 +3295,7 @@ Q.prototype = {
3195
3295
  name: "sort",
3196
3296
  toEl: G,
3197
3297
  originalEvent: e
3198
- })), X && X.save()), Q.active && ((Y == null || Y === -1) && (Y = Ra, Ba = za), U({
3298
+ })), X && X.save()), Q.active && ((Y == null || Y === -1) && (Y = Ya, Za = Xa), U({
3199
3299
  sortable: this,
3200
3300
  name: "end",
3201
3301
  toEl: G,
@@ -3203,9 +3303,9 @@ Q.prototype = {
3203
3303
  }), this.save()))), this._nulling();
3204
3304
  },
3205
3305
  _nulling: function() {
3206
- H("nulling", this), q = W = G = K = Fa = J = Ia = La = Ga = Ka = Za = Y = Ba = Ra = za = Qa = $a = X = Va = Q.dragged = Q.ghost = Q.clone = Q.active = null, ao.forEach(function(e) {
3306
+ H("nulling", this), q = W = G = K = Ka = J = qa = Ja = no = ro = co = Y = Za = Ya = Xa = lo = uo = X = Qa = Q.dragged = Q.ghost = Q.clone = Q.active = null, _o.forEach(function(e) {
3207
3307
  e.checked = !0;
3208
- }), ao.length = qa = Ja = 0;
3308
+ }), _o.length = io = ao = 0;
3209
3309
  },
3210
3310
  handleEvent: function(e) {
3211
3311
  switch (e.type) {
@@ -3215,7 +3315,7 @@ Q.prototype = {
3215
3315
  break;
3216
3316
  case "dragenter":
3217
3317
  case "dragover":
3218
- W && (this._onDragOver(e), bo(e));
3318
+ W && (this._onDragOver(e), jo(e));
3219
3319
  break;
3220
3320
  case "selectstart":
3221
3321
  e.preventDefault();
@@ -3223,14 +3323,14 @@ Q.prototype = {
3223
3323
  }
3224
3324
  },
3225
3325
  toArray: function() {
3226
- for (var e = [], t, n = this.el.children, r = 0, i = n.length, a = this.options; r < i; r++) t = n[r], sa(t, a.draggable, this.el, !1) && e.push(t.getAttribute(a.dataIdAttr) || Oo(t));
3326
+ for (var e = [], t, n = this.el.children, r = 0, i = n.length, a = this.options; r < i; r++) t = n[r], va(t, a.draggable, this.el, !1) && e.push(t.getAttribute(a.dataIdAttr) || zo(t));
3227
3327
  return e;
3228
3328
  },
3229
3329
  sort: function(e, t) {
3230
3330
  var n = {}, r = this.el;
3231
3331
  this.toArray().forEach(function(e, t) {
3232
3332
  var i = r.children[t];
3233
- sa(i, this.options.draggable, r, !1) && (n[e] = i);
3333
+ va(i, this.options.draggable, r, !1) && (n[e] = i);
3234
3334
  }, this), t && this.captureAnimationState(), e.forEach(function(e) {
3235
3335
  n[e] && (r.removeChild(n[e]), r.appendChild(n[e]));
3236
3336
  }), t && this.animateAll();
@@ -3240,25 +3340,25 @@ Q.prototype = {
3240
3340
  e && e.set && e.set(this);
3241
3341
  },
3242
3342
  closest: function(e, t) {
3243
- return sa(e, t || this.options.draggable, this.el, !1);
3343
+ return va(e, t || this.options.draggable, this.el, !1);
3244
3344
  },
3245
3345
  option: function(e, t) {
3246
3346
  var n = this.options;
3247
3347
  if (t === void 0) return n[e];
3248
- var r = Ma.modifyOption(this, e, t);
3249
- r === void 0 ? n[e] = t : n[e] = r, e === "group" && ho(n);
3348
+ var r = Ua.modifyOption(this, e, t);
3349
+ r === void 0 ? n[e] = t : n[e] = r, e === "group" && Eo(n);
3250
3350
  },
3251
3351
  destroy: function() {
3252
3352
  H("destroy", this);
3253
3353
  var e = this.el;
3254
3354
  e[V] = null, L(e, "mousedown", this._onTapStart), L(e, "touchstart", this._onTapStart), L(e, "pointerdown", this._onTapStart), this.nativeDraggable && (L(e, "dragover", this), L(e, "dragenter", this)), Array.prototype.forEach.call(e.querySelectorAll("[draggable]"), function(e) {
3255
3355
  e.removeAttribute("draggable");
3256
- }), this._onDrop(), this._disableDelayedDragEvents(), Wa.splice(Wa.indexOf(this.el), 1), this.el = e = null;
3356
+ }), this._onDrop(), this._disableDelayedDragEvents(), to.splice(to.indexOf(this.el), 1), this.el = e = null;
3257
3357
  },
3258
3358
  _hideClone: function() {
3259
- if (!La) {
3359
+ if (!Ja) {
3260
3360
  if (H("hideClone", this), Q.eventCanceled) return;
3261
- z(J, "display", "none"), this.options.removeCloneOnHide && J.parentNode && J.parentNode.removeChild(J), La = !0;
3361
+ z(J, "display", "none"), this.options.removeCloneOnHide && J.parentNode && J.parentNode.removeChild(J), Ja = !0;
3262
3362
  }
3263
3363
  },
3264
3364
  _showClone: function(e) {
@@ -3266,99 +3366,99 @@ Q.prototype = {
3266
3366
  this._hideClone();
3267
3367
  return;
3268
3368
  }
3269
- if (La) {
3369
+ if (Ja) {
3270
3370
  if (H("showClone", this), Q.eventCanceled) return;
3271
- W.parentNode == q && !this.options.group.revertClone ? q.insertBefore(J, W) : Fa ? q.insertBefore(J, Fa) : q.appendChild(J), this.options.group.revertClone && this.animate(W, J), z(J, "display", ""), La = !1;
3371
+ W.parentNode == q && !this.options.group.revertClone ? q.insertBefore(J, W) : Ka ? q.insertBefore(J, Ka) : q.appendChild(J), this.options.group.revertClone && this.animate(W, J), z(J, "display", ""), Ja = !1;
3272
3372
  }
3273
3373
  }
3274
3374
  };
3275
- function bo(e) {
3375
+ function jo(e) {
3276
3376
  e.dataTransfer && (e.dataTransfer.dropEffect = "move"), e.cancelable && e.preventDefault();
3277
3377
  }
3278
- function xo(e, t, n, r, i, a, o, s) {
3378
+ function Mo(e, t, n, r, i, a, o, s) {
3279
3379
  var c, l = e[V], u = l.options.onMove, d;
3280
- return window.CustomEvent && !Qi && !$i ? c = new CustomEvent("move", {
3380
+ return window.CustomEvent && !la && !ua ? c = new CustomEvent("move", {
3281
3381
  bubbles: !0,
3282
3382
  cancelable: !0
3283
3383
  }) : (c = document.createEvent("Event"), c.initEvent("move", !0, !0)), c.to = t, c.from = e, c.dragged = n, c.draggedRect = r, c.related = i || t, c.relatedRect = a || B(t), c.willInsertAfter = s, c.originalEvent = o, e.dispatchEvent(c), u && (d = u.call(l, c, o)), d;
3284
3384
  }
3285
- function So(e) {
3385
+ function No(e) {
3286
3386
  e.draggable = !1;
3287
3387
  }
3288
- function Co() {
3289
- io = !1;
3388
+ function Po() {
3389
+ go = !1;
3290
3390
  }
3291
- function wo(e, t, n) {
3292
- var r = B(pa(n.el, 0, n.options, !0)), i = Ea(n.el, n.options, K), a = 10;
3391
+ function Fo(e, t, n) {
3392
+ var r = B(wa(n.el, 0, n.options, !0)), i = La(n.el, n.options, K), a = 10;
3293
3393
  return t ? e.clientX < i.left - a || e.clientY < r.top && e.clientX < r.right : e.clientY < i.top - a || e.clientY < r.bottom && e.clientX < r.left;
3294
3394
  }
3295
- function To(e, t, n) {
3296
- var r = B(ma(n.el, n.options.draggable)), i = Ea(n.el, n.options, K), a = 10;
3395
+ function Io(e, t, n) {
3396
+ var r = B(Ta(n.el, n.options.draggable)), i = La(n.el, n.options, K), a = 10;
3297
3397
  return t ? e.clientX > i.right + a || e.clientY > r.bottom && e.clientX > r.left : e.clientY > i.bottom + a || e.clientX > r.right && e.clientY > r.top;
3298
3398
  }
3299
- function Eo(e, t, n, r, i, a, o, s) {
3399
+ function Lo(e, t, n, r, i, a, o, s) {
3300
3400
  var c = r ? e.clientY : e.clientX, l = r ? n.height : n.width, u = r ? n.top : n.left, d = r ? n.bottom : n.right, f = !1;
3301
3401
  if (!o) {
3302
- if (s && no < l * i) {
3303
- if (!eo && ($a === 1 ? c > u + l * a / 2 : c < d - l * a / 2) && (eo = !0), eo) f = !0;
3304
- else if ($a === 1 ? c < u + no : c > d - no) return -$a;
3305
- } else if (c > u + l * (1 - i) / 2 && c < d - l * (1 - i) / 2) return Do(t);
3402
+ if (s && mo < l * i) {
3403
+ if (!fo && (uo === 1 ? c > u + l * a / 2 : c < d - l * a / 2) && (fo = !0), fo) f = !0;
3404
+ else if (uo === 1 ? c < u + mo : c > d - mo) return -uo;
3405
+ } else if (c > u + l * (1 - i) / 2 && c < d - l * (1 - i) / 2) return Ro(t);
3306
3406
  }
3307
3407
  return f ||= o, f && (c < u + l * a / 2 || c > d - l * a / 2) ? c > u + l / 2 ? 1 : -1 : 0;
3308
3408
  }
3309
- function Do(e) {
3310
- return ha(W) < ha(e) ? 1 : -1;
3409
+ function Ro(e) {
3410
+ return Ea(W) < Ea(e) ? 1 : -1;
3311
3411
  }
3312
- function Oo(e) {
3412
+ function zo(e) {
3313
3413
  for (var t = e.tagName + e.className + e.src + e.href + e.textContent, n = t.length, r = 0; n--;) r += t.charCodeAt(n);
3314
3414
  return r.toString(36);
3315
3415
  }
3316
- function ko(e) {
3317
- ao.length = 0;
3416
+ function Bo(e) {
3417
+ _o.length = 0;
3318
3418
  for (var t = e.getElementsByTagName("input"), n = t.length; n--;) {
3319
3419
  var r = t[n];
3320
- r.checked && ao.push(r);
3420
+ r.checked && _o.push(r);
3321
3421
  }
3322
3422
  }
3323
- function Ao(e) {
3423
+ function Vo(e) {
3324
3424
  return setTimeout(e, 0);
3325
3425
  }
3326
- function jo(e) {
3426
+ function Ho(e) {
3327
3427
  return clearTimeout(e);
3328
3428
  }
3329
- oo && I(document, "touchmove", function(e) {
3330
- (Q.active || Ha) && e.cancelable && e.preventDefault();
3429
+ vo && I(document, "touchmove", function(e) {
3430
+ (Q.active || $a) && e.cancelable && e.preventDefault();
3331
3431
  }), Q.utils = {
3332
3432
  on: I,
3333
3433
  off: L,
3334
3434
  css: z,
3335
- find: ua,
3435
+ find: xa,
3336
3436
  is: function(e, t) {
3337
- return !!sa(e, t, e, !1);
3437
+ return !!va(e, t, e, !1);
3338
3438
  },
3339
- extend: ya,
3340
- throttle: Sa,
3341
- closest: sa,
3439
+ extend: Aa,
3440
+ throttle: Na,
3441
+ closest: va,
3342
3442
  toggleClass: R,
3343
- clone: Ta,
3344
- index: ha,
3345
- nextTick: Ao,
3346
- cancelNextTick: jo,
3347
- detectDirection: fo,
3348
- getChild: pa
3443
+ clone: Ia,
3444
+ index: Ea,
3445
+ nextTick: Vo,
3446
+ cancelNextTick: Ho,
3447
+ detectDirection: Co,
3448
+ getChild: wa
3349
3449
  }, Q.get = function(e) {
3350
3450
  return e[V];
3351
3451
  }, Q.mount = function() {
3352
3452
  var e = [...arguments];
3353
3453
  e[0].constructor === Array && (e = e[0]), e.forEach(function(e) {
3354
3454
  if (!e.prototype || !e.prototype.constructor) throw `Sortable: Mounted plugin must be a constructor function, not ${{}.toString.call(e)}`;
3355
- e.utils && (Q.utils = Wi(Wi({}, Q.utils), e.utils)), Ma.mount(e);
3455
+ e.utils && (Q.utils = ta(ta({}, Q.utils), e.utils)), Ua.mount(e);
3356
3456
  });
3357
3457
  }, Q.create = function(e, t) {
3358
3458
  return new Q(e, t);
3359
- }, Q.version = Xi;
3360
- var $ = [], Mo, No, Po = !1, Fo, Io, Lo, Ro;
3361
- function zo() {
3459
+ }, Q.version = sa;
3460
+ var $ = [], Uo, Wo, Go = !1, Ko, qo, Jo, Yo;
3461
+ function Xo() {
3362
3462
  function e() {
3363
3463
  for (var e in this.defaults = {
3364
3464
  scroll: !0,
@@ -3378,63 +3478,63 @@ function zo() {
3378
3478
  !this.options.dragOverBubble && !t.rootEl && this._handleAutoScroll(t);
3379
3479
  },
3380
3480
  drop: function() {
3381
- this.sortable.nativeDraggable ? L(document, "dragover", this._handleAutoScroll) : (L(document, "pointermove", this._handleFallbackAutoScroll), L(document, "touchmove", this._handleFallbackAutoScroll), L(document, "mousemove", this._handleFallbackAutoScroll)), Vo(), Bo(), Ca();
3481
+ this.sortable.nativeDraggable ? L(document, "dragover", this._handleAutoScroll) : (L(document, "pointermove", this._handleFallbackAutoScroll), L(document, "touchmove", this._handleFallbackAutoScroll), L(document, "mousemove", this._handleFallbackAutoScroll)), Qo(), Zo(), Pa();
3382
3482
  },
3383
3483
  nulling: function() {
3384
- Lo = No = Mo = Po = Ro = Fo = Io = null, $.length = 0;
3484
+ Jo = Wo = Uo = Go = Yo = Ko = qo = null, $.length = 0;
3385
3485
  },
3386
3486
  _handleFallbackAutoScroll: function(e) {
3387
3487
  this._handleAutoScroll(e, !0);
3388
3488
  },
3389
3489
  _handleAutoScroll: function(e, t) {
3390
3490
  var n = this, r = (e.touches ? e.touches[0] : e).clientX, i = (e.touches ? e.touches[0] : e).clientY, a = document.elementFromPoint(r, i);
3391
- if (Lo = e, t || this.options.forceAutoScrollFallback || $i || Qi || ta) {
3392
- Ho(e, this.options, a, t);
3393
- var o = va(a, !0);
3394
- Po && (!Ro || r !== Fo || i !== Io) && (Ro && Vo(), Ro = setInterval(function() {
3395
- var a = va(document.elementFromPoint(r, i), !0);
3396
- a !== o && (o = a, Bo()), Ho(e, n.options, a, t);
3397
- }, 10), Fo = r, Io = i);
3491
+ if (Jo = e, t || this.options.forceAutoScrollFallback || ua || la || fa) {
3492
+ $o(e, this.options, a, t);
3493
+ var o = ka(a, !0);
3494
+ Go && (!Yo || r !== Ko || i !== qo) && (Yo && Qo(), Yo = setInterval(function() {
3495
+ var a = ka(document.elementFromPoint(r, i), !0);
3496
+ a !== o && (o = a, Zo()), $o(e, n.options, a, t);
3497
+ }, 10), Ko = r, qo = i);
3398
3498
  } else {
3399
- if (!this.options.bubbleScroll || va(a, !0) === da()) {
3400
- Bo();
3499
+ if (!this.options.bubbleScroll || ka(a, !0) === Sa()) {
3500
+ Zo();
3401
3501
  return;
3402
3502
  }
3403
- Ho(e, this.options, va(a, !1), !1);
3503
+ $o(e, this.options, ka(a, !1), !1);
3404
3504
  }
3405
3505
  }
3406
- }, qi(e, {
3506
+ }, ia(e, {
3407
3507
  pluginName: "scroll",
3408
3508
  initializeByDefault: !0
3409
3509
  });
3410
3510
  }
3411
- function Bo() {
3511
+ function Zo() {
3412
3512
  $.forEach(function(e) {
3413
3513
  clearInterval(e.pid);
3414
3514
  }), $ = [];
3415
3515
  }
3416
- function Vo() {
3417
- clearInterval(Ro);
3516
+ function Qo() {
3517
+ clearInterval(Yo);
3418
3518
  }
3419
- var Ho = Sa(function(e, t, n, r) {
3519
+ var $o = Na(function(e, t, n, r) {
3420
3520
  if (t.scroll) {
3421
- var i = (e.touches ? e.touches[0] : e).clientX, a = (e.touches ? e.touches[0] : e).clientY, o = t.scrollSensitivity, s = t.scrollSpeed, c = da(), l = !1, u;
3422
- No !== n && (No = n, Bo(), Mo = t.scroll, u = t.scrollFn, Mo === !0 && (Mo = va(n, !0)));
3423
- var d = 0, f = Mo;
3521
+ var i = (e.touches ? e.touches[0] : e).clientX, a = (e.touches ? e.touches[0] : e).clientY, o = t.scrollSensitivity, s = t.scrollSpeed, c = Sa(), l = !1, u;
3522
+ Wo !== n && (Wo = n, Zo(), Uo = t.scroll, u = t.scrollFn, Uo === !0 && (Uo = ka(n, !0)));
3523
+ var d = 0, f = Uo;
3424
3524
  do {
3425
3525
  var p = f, m = B(p), h = m.top, g = m.bottom, _ = m.left, v = m.right, y = m.width, b = m.height, x = void 0, S = void 0, C = p.scrollWidth, w = p.scrollHeight, T = z(p), E = p.scrollLeft, D = p.scrollTop;
3426
3526
  p === c ? (x = y < C && (T.overflowX === "auto" || T.overflowX === "scroll" || T.overflowX === "visible"), S = b < w && (T.overflowY === "auto" || T.overflowY === "scroll" || T.overflowY === "visible")) : (x = y < C && (T.overflowX === "auto" || T.overflowX === "scroll"), S = b < w && (T.overflowY === "auto" || T.overflowY === "scroll"));
3427
3527
  var O = x && (Math.abs(v - i) <= o && E + y < C) - (Math.abs(_ - i) <= o && !!E), k = S && (Math.abs(g - a) <= o && D + b < w) - (Math.abs(h - a) <= o && !!D);
3428
3528
  if (!$[d]) for (var ee = 0; ee <= d; ee++) $[ee] || ($[ee] = {});
3429
3529
  ($[d].vx != O || $[d].vy != k || $[d].el !== p) && ($[d].el = p, $[d].vx = O, $[d].vy = k, clearInterval($[d].pid), (O != 0 || k != 0) && (l = !0, $[d].pid = setInterval(function() {
3430
- r && this.layer === 0 && Q.active._onTouchMove(Lo);
3530
+ r && this.layer === 0 && Q.active._onTouchMove(Jo);
3431
3531
  var t = $[this.layer].vy ? $[this.layer].vy * s : 0, n = $[this.layer].vx ? $[this.layer].vx * s : 0;
3432
- typeof u == "function" && u.call(Q.dragged.parentNode[V], n, t, e, Lo, $[this.layer].el) !== "continue" || wa($[this.layer].el, n, t);
3532
+ typeof u == "function" && u.call(Q.dragged.parentNode[V], n, t, e, Jo, $[this.layer].el) !== "continue" || Fa($[this.layer].el, n, t);
3433
3533
  }.bind({ layer: d }), 24))), d++;
3434
- } while (t.bubbleScroll && f !== c && (f = va(f, !1)));
3435
- Po = l;
3534
+ } while (t.bubbleScroll && f !== c && (f = ka(f, !1)));
3535
+ Go = l;
3436
3536
  }
3437
- }, 30), Uo = function(e) {
3537
+ }, 30), es = function(e) {
3438
3538
  var t = e.originalEvent, n = e.putSortable, r = e.dragEl, i = e.activeSortable, a = e.dispatchSortableEvent, o = e.hideGhostForTarget, s = e.unhideGhostForTarget;
3439
3539
  if (t) {
3440
3540
  var c = n || i;
@@ -3446,8 +3546,8 @@ var Ho = Sa(function(e, t, n, r) {
3446
3546
  }));
3447
3547
  }
3448
3548
  };
3449
- function Wo() {}
3450
- Wo.prototype = {
3549
+ function ts() {}
3550
+ ts.prototype = {
3451
3551
  startIndex: null,
3452
3552
  dragStart: function(e) {
3453
3553
  var t = e.oldDraggableIndex;
@@ -3456,72 +3556,72 @@ Wo.prototype = {
3456
3556
  onSpill: function(e) {
3457
3557
  var t = e.dragEl, n = e.putSortable;
3458
3558
  this.sortable.captureAnimationState(), n && n.captureAnimationState();
3459
- var r = pa(this.sortable.el, this.startIndex, this.options);
3559
+ var r = wa(this.sortable.el, this.startIndex, this.options);
3460
3560
  r ? this.sortable.el.insertBefore(t, r) : this.sortable.el.appendChild(t), this.sortable.animateAll(), n && n.animateAll();
3461
3561
  },
3462
- drop: Uo
3463
- }, qi(Wo, { pluginName: "revertOnSpill" });
3464
- function Go() {}
3465
- Go.prototype = {
3562
+ drop: es
3563
+ }, ia(ts, { pluginName: "revertOnSpill" });
3564
+ function ns() {}
3565
+ ns.prototype = {
3466
3566
  onSpill: function(e) {
3467
3567
  var t = e.dragEl, n = e.putSortable || this.sortable;
3468
3568
  n.captureAnimationState(), t.parentNode && t.parentNode.removeChild(t), n.animateAll();
3469
3569
  },
3470
- drop: Uo
3471
- }, qi(Go, { pluginName: "removeOnSpill" }), Q.mount(new zo()), Q.mount(Go, Wo);
3472
- function Ko(e) {
3570
+ drop: es
3571
+ }, ia(ns, { pluginName: "removeOnSpill" }), Q.mount(new Xo()), Q.mount(ns, ts);
3572
+ function rs(e) {
3473
3573
  return e == null ? e : JSON.parse(JSON.stringify(e));
3474
3574
  }
3475
- function qo(e) {
3575
+ function is(e) {
3476
3576
  re() && r(e);
3477
3577
  }
3478
- function Jo(e) {
3578
+ function as(e) {
3479
3579
  re() ? a(e) : ie(e);
3480
3580
  }
3481
- var Yo = null, Xo = null;
3482
- function Zo(e = null, t = null) {
3483
- Yo = e, Xo = t;
3581
+ var os = null, ss = null;
3582
+ function cs(e = null, t = null) {
3583
+ os = e, ss = t;
3484
3584
  }
3485
- function Qo() {
3585
+ function ls() {
3486
3586
  return {
3487
- data: Yo,
3488
- clonedData: Xo
3587
+ data: os,
3588
+ clonedData: ss
3489
3589
  };
3490
3590
  }
3491
- var $o = Symbol("cloneElement");
3492
- function es(...e) {
3591
+ var us = Symbol("cloneElement");
3592
+ function ds(...e) {
3493
3593
  let t = re()?.proxy, n = null, r = e[0], [, i, a] = e;
3494
3594
  Array.isArray(k(i)) || (a = i, i = null);
3495
- let o = null, { immediate: s = !0, clone: l = Ko, forceFallback: u, fallbackOnBody: d, customUpdate: f } = k(a) ?? {};
3595
+ let o = null, { immediate: s = !0, clone: l = rs, forceFallback: u, fallbackOnBody: d, customUpdate: f } = k(a) ?? {};
3496
3596
  function p(e) {
3497
3597
  let { from: t, oldIndex: r, item: a } = e, o = Array.from(t.childNodes);
3498
3598
  n = u && !d ? o.slice(0, -1) : o;
3499
3599
  let s = k(k(i)?.[r]), c = l(s);
3500
- Zo(s, c), a[$o] = c;
3600
+ cs(s, c), a[us] = c;
3501
3601
  }
3502
3602
  function m(e) {
3503
- let t = e.item[$o];
3504
- if (!Mi(t)) {
3505
- if (Fi(e.item), g(i)) {
3603
+ let t = e.item[us];
3604
+ if (!Ui(t)) {
3605
+ if (Ki(e.item), g(i)) {
3506
3606
  let n = [...k(i)];
3507
- i.value = ji(n, e.newDraggableIndex, t);
3607
+ i.value = Hi(n, e.newDraggableIndex, t);
3508
3608
  return;
3509
3609
  }
3510
- ji(k(i), e.newDraggableIndex, t);
3610
+ Hi(k(i), e.newDraggableIndex, t);
3511
3611
  }
3512
3612
  }
3513
3613
  function h(e) {
3514
3614
  let { from: t, item: n, oldIndex: r, oldDraggableIndex: a, pullMode: o, clone: s } = e;
3515
- if (Pi(t, n, r), o === "clone") {
3516
- Fi(s);
3615
+ if (Gi(t, n, r), o === "clone") {
3616
+ Ki(s);
3517
3617
  return;
3518
3618
  }
3519
3619
  if (g(i)) {
3520
3620
  let e = [...k(i)];
3521
- i.value = Ai(e, a);
3621
+ i.value = Vi(e, a);
3522
3622
  return;
3523
3623
  }
3524
- Ai(k(i), a);
3624
+ Vi(k(i), a);
3525
3625
  }
3526
3626
  function _(e) {
3527
3627
  if (f) {
@@ -3529,12 +3629,12 @@ function es(...e) {
3529
3629
  return;
3530
3630
  }
3531
3631
  let { from: t, item: n, oldIndex: r, oldDraggableIndex: a, newDraggableIndex: o } = e;
3532
- if (Fi(n), Pi(t, n, r), g(i)) {
3632
+ if (Ki(n), Gi(t, n, r), g(i)) {
3533
3633
  let e = [...k(i)];
3534
- i.value = Di(e, a, o);
3634
+ i.value = Ri(e, a, o);
3535
3635
  return;
3536
3636
  }
3537
- Di(k(i), a, o);
3637
+ Ri(k(i), a, o);
3538
3638
  }
3539
3639
  function v(e) {
3540
3640
  let { newIndex: t, oldIndex: r, from: i, to: a } = e, o = null, s = t === r && i === a;
@@ -3553,7 +3653,7 @@ function es(...e) {
3553
3653
  n = null;
3554
3654
  }
3555
3655
  ie(() => {
3556
- if (Zo(), o) throw o;
3656
+ if (cs(), o) throw o;
3557
3657
  });
3558
3658
  }
3559
3659
  let y = {
@@ -3565,19 +3665,19 @@ function es(...e) {
3565
3665
  };
3566
3666
  function b(e) {
3567
3667
  let n = k(r);
3568
- return e ||= Ni(n) ? Ii(n, t?.$el) : n, e && !zi(e) && (e = e.$el), e || Ei("Root element not found"), e;
3668
+ return e ||= Wi(n) ? qi(n, t?.$el) : n, e && !Xi(e) && (e = e.$el), e || Li("Root element not found"), e;
3569
3669
  }
3570
3670
  function x() {
3571
- let e = k(a) ?? {}, { immediate: t, clone: n } = e, r = Ci(e, ["immediate", "clone"]);
3572
- return Bi(r, (e, t) => {
3573
- Vi(e) && (r[e] = (e, ...n) => (Hi(e, Qo()), t(e, ...n)));
3574
- }), Ri(i === null ? {} : y, r);
3671
+ let e = k(a) ?? {}, { immediate: t, clone: n } = e, r = Pi(e, ["immediate", "clone"]);
3672
+ return Zi(r, (e, t) => {
3673
+ Qi(e) && (r[e] = (e, ...n) => ($i(e, ls()), t(e, ...n)));
3674
+ }), Yi(i === null ? {} : y, r);
3575
3675
  }
3576
3676
  let S = (e) => {
3577
3677
  e = b(e), o && C.destroy(), o = new Q(e, x());
3578
3678
  };
3579
3679
  c(() => a, () => {
3580
- o && Bi(x(), (e, t) => {
3680
+ o && Zi(x(), (e, t) => {
3581
3681
  o?.option(e, t);
3582
3682
  });
3583
3683
  }, { deep: !0 });
@@ -3590,15 +3690,15 @@ function es(...e) {
3590
3690
  toArray: () => o?.toArray(),
3591
3691
  closest: (...e) => o?.closest(...e)
3592
3692
  };
3593
- return Jo(() => {
3693
+ return as(() => {
3594
3694
  s && S();
3595
- }), qo(C.destroy), Si({
3695
+ }), is(C.destroy), Ni({
3596
3696
  start: S,
3597
3697
  pause: () => C?.option("disabled", !0),
3598
3698
  resume: () => C?.option("disabled", !1)
3599
3699
  }, C);
3600
3700
  }
3601
- var ts = [
3701
+ var fs = [
3602
3702
  "update",
3603
3703
  "start",
3604
3704
  "add",
@@ -3611,7 +3711,7 @@ var ts = [
3611
3711
  "clone",
3612
3712
  "move",
3613
3713
  "change"
3614
- ], ns = y({
3714
+ ], ps = y({
3615
3715
  name: "VueDraggable",
3616
3716
  model: {
3617
3717
  prop: "modelValue",
@@ -3661,37 +3761,37 @@ var ts = [
3661
3761
  "tag",
3662
3762
  "target",
3663
3763
  "customUpdate",
3664
- ...ts.map((e) => `on${e.replace(/^\S/, (e) => e.toUpperCase())}`)
3764
+ ...fs.map((e) => `on${e.replace(/^\S/, (e) => e.toUpperCase())}`)
3665
3765
  ],
3666
- emits: ["update:modelValue", ...ts],
3766
+ emits: ["update:modelValue", ...fs],
3667
3767
  setup(t, { slots: n, emit: r, expose: i, attrs: a }) {
3668
- let o = ts.reduce((e, t) => {
3768
+ let o = fs.reduce((e, t) => {
3669
3769
  let n = `on${t.replace(/^\S/, (e) => e.toUpperCase())}`;
3670
3770
  return e[n] = (...e) => r(t, ...e), e;
3671
3771
  }, {}), s = j(() => {
3672
- let n = e(t), { modelValue: r } = n, i = Ci(n, ["modelValue"]), s = Object.entries(i).reduce((e, [t, n]) => {
3772
+ let n = e(t), { modelValue: r } = n, i = Pi(n, ["modelValue"]), s = Object.entries(i).reduce((e, [t, n]) => {
3673
3773
  let r = k(n);
3674
3774
  return r !== void 0 && (e[t] = r), e;
3675
3775
  }, {});
3676
- return Si(Si({}, o), ki(Si(Si({}, a), s)));
3776
+ return Ni(Ni({}, o), Bi(Ni(Ni({}, a), s)));
3677
3777
  }), c = j({
3678
3778
  get: () => t.modelValue,
3679
3779
  set: (e) => r("update:modelValue", e)
3680
- }), l = _(), u = ee(es(t.target || l, c, s));
3780
+ }), l = _(), u = ee(ds(t.target || l, c, s));
3681
3781
  return i(u), () => ae(t.tag || "div", { ref: l }, (n?.default)?.call(n, u));
3682
3782
  }
3683
- }), rs = {
3783
+ }), ms = {
3684
3784
  mounted: "mounted",
3685
3785
  unmounted: "unmounted"
3686
3786
  };
3687
- rs.mounted, rs.unmounted;
3787
+ ms.mounted, ms.unmounted;
3688
3788
  //#endregion
3689
3789
  //#region src/components/blocks/SectionBlock.vue?vue&type=script&setup=true&lang.ts
3690
- var is = { class: "tpl:w-full" }, as = {
3790
+ var hs = { class: "tpl:w-full" }, gs = {
3691
3791
  key: 0,
3692
3792
  "data-testid": "section-drop-hint",
3693
3793
  class: "tpl:pointer-events-none tpl:absolute tpl:inset-0 tpl:flex tpl:items-center tpl:justify-center tpl:text-xs tpl:text-[var(--tpl-text-dim)]"
3694
- }, os = /* @__PURE__ */ y({
3794
+ }, _s = /* @__PURE__ */ y({
3695
3795
  __name: "SectionBlock",
3696
3796
  props: {
3697
3797
  block: {},
@@ -3699,13 +3799,13 @@ var is = { class: "tpl:w-full" }, as = {
3699
3799
  },
3700
3800
  setup(e) {
3701
3801
  let n = {
3702
- title: hi,
3703
- paragraph: Zr,
3704
- image: Rr,
3705
- button: En,
3706
- divider: vr,
3707
- custom: gr
3708
- }, r = e, { t: a } = Ot(), s = at(vt, "SectionBlock"), c = N(Ct, null), l = N(bt, null), u = j(() => {
3802
+ title: Ei,
3803
+ paragraph: ci,
3804
+ image: Yr,
3805
+ button: In,
3806
+ divider: kr,
3807
+ custom: Dr
3808
+ }, r = e, { t: a } = Ft(), s = nt(bt, "SectionBlock"), c = N(_t, null), l = N(Dt, null), u = j(() => {
3709
3809
  switch (r.block.columns) {
3710
3810
  case "2": return ["50%", "50%"];
3711
3811
  case "3": return [
@@ -3731,7 +3831,7 @@ var is = { class: "tpl:w-full" }, as = {
3731
3831
  i[e] = n, s.updateBlock(r.block.id, { children: i });
3732
3832
  }
3733
3833
  function y(e) {
3734
- return Qr(e, l, n);
3834
+ return li(e, l, n);
3735
3835
  }
3736
3836
  function S(e, t) {
3737
3837
  e.type === "custom" && s.updateBlock(e.id, {
@@ -3739,16 +3839,16 @@ var is = { class: "tpl:w-full" }, as = {
3739
3839
  dataSourceFetched: t.dataSourceFetched
3740
3840
  });
3741
3841
  }
3742
- return (n, r) => (f(), x("div", is, [b("div", { class: o(["tpl:flex tpl:gap-0", { "tpl:flex-col": g.value }]) }, [(f(!0), x(A, null, t(h.value, (n, r) => (f(), x("div", {
3842
+ return (n, r) => (f(), x("div", hs, [b("div", { class: o(["tpl:flex tpl:gap-0", { "tpl:flex-col": g.value }]) }, [(f(!0), x(A, null, t(h.value, (n, r) => (f(), x("div", {
3743
3843
  key: r,
3744
3844
  class: o(["tpl:relative tpl:min-h-[60px] tpl:rounded", _(r).length === 0 ? "tpl:border tpl:border-dashed tpl:border-[var(--tpl-border)]" : ""]),
3745
3845
  style: i({ width: g.value ? "100%" : u.value[r] })
3746
- }, [w(k(ns), {
3846
+ }, [w(k(ps), {
3747
3847
  "model-value": _(r),
3748
3848
  group: {
3749
3849
  name: "blocks",
3750
3850
  pull: !0,
3751
- put: (e, t, n) => k(gi)(n)
3851
+ put: (e, t, n) => k(Di)(n)
3752
3852
  },
3753
3853
  animation: 150,
3754
3854
  "ghost-class": "tpl-ghost",
@@ -3761,7 +3861,7 @@ var is = { class: "tpl:w-full" }, as = {
3761
3861
  class: "tpl:min-h-[60px]",
3762
3862
  "onUpdate:modelValue": (e) => v(r, e)
3763
3863
  }, {
3764
- default: m(() => [(f(!0), x(A, null, t(_(r), (t) => oe((f(), x("div", { key: t.id }, [w(pi, {
3864
+ default: m(() => [(f(!0), x(A, null, t(_(r), (t) => oe((f(), x("div", { key: t.id }, [w(wi, {
3765
3865
  block: t,
3766
3866
  "is-selected": k(s).state.selectedBlockId === t.id,
3767
3867
  viewport: e.viewport,
@@ -3792,13 +3892,13 @@ var is = { class: "tpl:w-full" }, as = {
3792
3892
  "model-value",
3793
3893
  "group",
3794
3894
  "onUpdate:modelValue"
3795
- ]), _(r).length === 0 ? (f(), x("div", as, [b("span", null, p(k(a).section.dropHere), 1)])) : M("", !0)], 6))), 128))], 2)]));
3895
+ ]), _(r).length === 0 ? (f(), x("div", gs, [b("span", null, p(k(a).section.dropHere), 1)])) : M("", !0)], 6))), 128))], 2)]));
3796
3896
  }
3797
- }), ss = ke, cs = {
3897
+ }), vs = ke, ys = {
3798
3898
  small: 24,
3799
3899
  medium: 32,
3800
3900
  large: 48
3801
- }, ls = [
3901
+ }, bs = [
3802
3902
  "facebook",
3803
3903
  "twitter",
3804
3904
  "instagram",
@@ -3816,11 +3916,11 @@ var is = { class: "tpl:w-full" }, as = {
3816
3916
  "github",
3817
3917
  "dribbble",
3818
3918
  "behance"
3819
- ], us = [
3919
+ ], xs = [
3820
3920
  "width",
3821
3921
  "height",
3822
3922
  "fill"
3823
- ], ds = ["d"], fs = /* @__PURE__ */ y({
3923
+ ], Ss = ["d"], Cs = /* @__PURE__ */ y({
3824
3924
  __name: "SocialIconSvg",
3825
3925
  props: {
3826
3926
  platform: {},
@@ -3828,7 +3928,7 @@ var is = { class: "tpl:w-full" }, as = {
3828
3928
  iconSize: {}
3829
3929
  },
3830
3930
  setup(e) {
3831
- let t = e, n = j(() => ss[t.platform]), r = j(() => cs[t.iconSize]), a = j(() => {
3931
+ let t = e, n = j(() => vs[t.platform]), r = j(() => ys[t.iconSize]), a = j(() => {
3832
3932
  let e = {
3833
3933
  display: "inline-flex",
3834
3934
  alignItems: "center",
@@ -3872,25 +3972,25 @@ var is = { class: "tpl:w-full" }, as = {
3872
3972
  viewBox: "0 0 24 24",
3873
3973
  fill: s.value,
3874
3974
  xmlns: "http://www.w3.org/2000/svg"
3875
- }, [b("path", { d: n.value.path }, null, 8, ds)], 8, us))], 4));
3975
+ }, [b("path", { d: n.value.path }, null, 8, Ss)], 8, xs))], 4));
3876
3976
  }
3877
- }), ps = { class: "tpl:w-full" }, ms = ["href"], hs = {
3977
+ }), ws = { class: "tpl:w-full" }, Ts = ["href"], Es = {
3878
3978
  key: 1,
3879
3979
  class: "tpl:flex tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border tpl:border-dashed tpl:py-4 tpl:text-sm tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text-dim)]"
3880
- }, gs = /* @__PURE__ */ y({
3980
+ }, Ds = /* @__PURE__ */ y({
3881
3981
  __name: "SocialIconsBlock",
3882
3982
  props: {
3883
3983
  block: {},
3884
3984
  viewport: {}
3885
3985
  },
3886
3986
  setup(e) {
3887
- let n = e, { t: r } = Ot(), a = j(() => ({
3987
+ let n = e, { t: r } = Ft(), a = j(() => ({
3888
3988
  display: "flex",
3889
3989
  flexWrap: "wrap",
3890
3990
  gap: `${n.block.spacing}px`,
3891
3991
  justifyContent: n.block.align === "left" ? "flex-start" : n.block.align === "right" ? "flex-end" : "center"
3892
3992
  })), o = j(() => n.block.icons.length > 0);
3893
- return (n, s) => (f(), x("div", ps, [o.value ? (f(), x("div", {
3993
+ return (n, s) => (f(), x("div", ws, [o.value ? (f(), x("div", {
3894
3994
  key: 0,
3895
3995
  style: i(a.value)
3896
3996
  }, [(f(!0), x(A, null, t(e.block.icons, (t) => (f(), x("a", {
@@ -3898,7 +3998,7 @@ var is = { class: "tpl:w-full" }, as = {
3898
3998
  href: t.url || "#",
3899
3999
  class: "tpl:cursor-default",
3900
4000
  onClick: s[0] ||= P(() => {}, ["prevent"])
3901
- }, [w(fs, {
4001
+ }, [w(Cs, {
3902
4002
  platform: t.platform,
3903
4003
  "icon-style": e.block.iconStyle,
3904
4004
  "icon-size": e.block.iconSize
@@ -3906,44 +4006,44 @@ var is = { class: "tpl:w-full" }, as = {
3906
4006
  "platform",
3907
4007
  "icon-style",
3908
4008
  "icon-size"
3909
- ])], 8, ms))), 128))], 4)) : (f(), x("div", hs, [w(k(Ln), { size: 16 }), b("span", null, p(k(r).social.addIcons), 1)]))]));
4009
+ ])], 8, Ts))), 128))], 4)) : (f(), x("div", Es, [w(k(qn), { size: 16 }), b("span", null, p(k(r).social.addIcons), 1)]))]));
3910
4010
  }
3911
- }), _s = { class: "tpl:w-full" }, vs = {
4011
+ }), Os = { class: "tpl:w-full" }, ks = {
3912
4012
  key: 0,
3913
4013
  class: "tpl:absolute tpl:rounded tpl:px-2 tpl:py-0.5 tpl:text-[10px] tpl:font-medium",
3914
4014
  style: {
3915
4015
  "background-color": "var(--tpl-bg-hover)",
3916
4016
  color: "var(--tpl-text-dim)"
3917
4017
  }
3918
- }, ys = /* @__PURE__ */ y({
4018
+ }, As = /* @__PURE__ */ y({
3919
4019
  __name: "SpacerBlock",
3920
4020
  props: {
3921
4021
  block: {},
3922
4022
  viewport: {}
3923
4023
  },
3924
4024
  setup(e) {
3925
- let t = e, n = at(vt, "SpacerBlock"), r = j(() => ({
4025
+ let t = e, n = nt(bt, "SpacerBlock"), r = j(() => ({
3926
4026
  height: `${t.block.height}px`,
3927
4027
  minHeight: `${t.block.height}px`,
3928
4028
  ...n.state.previewMode ? {} : { borderColor: "var(--tpl-border)" }
3929
4029
  }));
3930
- return (t, a) => (f(), x("div", _s, [b("div", {
4030
+ return (t, a) => (f(), x("div", Os, [b("div", {
3931
4031
  style: i(r.value),
3932
4032
  class: o(["tpl:relative tpl:flex tpl:items-center tpl:justify-center", { "tpl:border-y tpl:border-dashed": !k(n).state.previewMode }])
3933
- }, [k(n).state.previewMode ? M("", !0) : (f(), x("span", vs, p(e.block.height) + "px ", 1))], 6)]));
4033
+ }, [k(n).state.previewMode ? M("", !0) : (f(), x("span", ks, p(e.block.height) + "px ", 1))], 6)]));
3934
4034
  }
3935
- }), bs = { class: "tpl:w-full" }, xs = { key: 0 }, Ss = [
4035
+ }), js = { class: "tpl:w-full" }, Ms = { key: 0 }, Ns = [
3936
4036
  "aria-label",
3937
4037
  "data-placeholder",
3938
4038
  "onBlur"
3939
- ], Cs = [
4039
+ ], Ps = [
3940
4040
  "aria-label",
3941
4041
  "data-placeholder",
3942
4042
  "onBlur"
3943
- ], ws = {
4043
+ ], Fs = {
3944
4044
  key: 1,
3945
4045
  class: "tpl:flex tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border tpl:border-dashed tpl:py-4 tpl:text-sm tpl:border-[var(--tpl-border)] tpl:text-[var(--tpl-text-dim)]"
3946
- }, Ts = /*#__PURE__*/ Ft(/* @__PURE__ */ y({
4046
+ }, Is = /*#__PURE__*/ Vt(/* @__PURE__ */ y({
3947
4047
  __name: "TableBlock",
3948
4048
  props: {
3949
4049
  block: {},
@@ -3957,7 +4057,7 @@ var is = { class: "tpl:w-full" }, as = {
3957
4057
  updated(e, t) {
3958
4058
  t.value !== t.oldValue && e.getRootNode().activeElement !== e && (e.textContent = t.value ?? "");
3959
4059
  }
3960
- }, r = e, { t: a } = Ot(), o = at(vt, "TableBlock"), s = j(() => r.block.rows.length > 0), c = j(() => {
4060
+ }, r = e, { t: a } = Ft(), o = nt(bt, "TableBlock"), s = j(() => r.block.rows.length > 0), c = j(() => {
3961
4061
  let e = {
3962
4062
  width: "100%",
3963
4063
  borderCollapse: "collapse",
@@ -3988,11 +4088,11 @@ var is = { class: "tpl:w-full" }, as = {
3988
4088
  } : n);
3989
4089
  o.updateBlock(r.block.id, { rows: a });
3990
4090
  }
3991
- return (e, r) => (f(), x("div", bs, [s.value ? (f(), x("table", {
4091
+ return (e, r) => (f(), x("div", js, [s.value ? (f(), x("table", {
3992
4092
  key: 0,
3993
4093
  style: i(c.value),
3994
4094
  class: "tpl-table-editable"
3995
- }, [d.value ? (f(), x("thead", xs, [b("tr", null, [(f(!0), x(A, null, t(d.value.cells, (e) => oe((f(), x("th", {
4095
+ }, [d.value ? (f(), x("thead", Ms, [b("tr", null, [(f(!0), x(A, null, t(d.value.cells, (e) => oe((f(), x("th", {
3996
4096
  key: e.id,
3997
4097
  style: i(u.value),
3998
4098
  "aria-label": k(a).table.cellPlaceholder,
@@ -4001,7 +4101,7 @@ var is = { class: "tpl:w-full" }, as = {
4001
4101
  onBlur: (t) => g(d.value.id, e.id, t),
4002
4102
  onKeydown: r[0] ||= ce(P((e) => e.target.blur(), ["prevent"]), ["enter"]),
4003
4103
  onClick: P(h, ["stop"])
4004
- }, null, 44, Ss)), [[n, e.content]])), 128))])])) : M("", !0), b("tbody", null, [(f(!0), x(A, null, t(m.value, (e) => (f(), x("tr", { key: e.id }, [(f(!0), x(A, null, t(e.cells, (t) => oe((f(), x("td", {
4104
+ }, null, 44, Ns)), [[n, e.content]])), 128))])])) : M("", !0), b("tbody", null, [(f(!0), x(A, null, t(m.value, (e) => (f(), x("tr", { key: e.id }, [(f(!0), x(A, null, t(e.cells, (t) => oe((f(), x("td", {
4005
4105
  key: t.id,
4006
4106
  style: i(l.value),
4007
4107
  "aria-label": k(a).table.cellPlaceholder,
@@ -4010,9 +4110,9 @@ var is = { class: "tpl:w-full" }, as = {
4010
4110
  onBlur: (n) => g(e.id, t.id, n),
4011
4111
  onKeydown: r[1] ||= ce(P((e) => e.target.blur(), ["prevent"]), ["enter"]),
4012
4112
  onClick: P(h, ["stop"])
4013
- }, null, 44, Cs)), [[n, t.content]])), 128))]))), 128))])], 4)) : (f(), x("div", ws, [w(k(Rn), { size: 16 }), b("span", null, p(k(a).table.empty), 1)]))]));
4113
+ }, null, 44, Ps)), [[n, t.content]])), 128))]))), 128))])], 4)) : (f(), x("div", Fs, [w(k(Jn), { size: 16 }), b("span", null, p(k(a).table.empty), 1)]))]));
4014
4114
  }
4015
- }), [["__scopeId", "data-v-963ac422"]]), Es = /* @__PURE__ */ y({
4115
+ }), [["__scopeId", "data-v-963ac422"]]), Ls = /* @__PURE__ */ y({
4016
4116
  __name: "VideoPlayButton",
4017
4117
  props: { hoverEffect: {
4018
4118
  type: Boolean,
@@ -4030,7 +4130,7 @@ var is = { class: "tpl:w-full" }, as = {
4030
4130
  });
4031
4131
  //#endregion
4032
4132
  //#region src/utils/videoThumbnail.ts
4033
- function Ds(e) {
4133
+ function Rs(e) {
4034
4134
  if (!e) return {
4035
4135
  platform: "unknown",
4036
4136
  videoId: null,
@@ -4062,25 +4162,25 @@ function Ds(e) {
4062
4162
  thumbnailUrl: null
4063
4163
  };
4064
4164
  }
4065
- function Os(e, t) {
4066
- return t || Ds(e).thumbnailUrl;
4165
+ function zs(e, t) {
4166
+ return t || Rs(e).thumbnailUrl;
4067
4167
  }
4068
4168
  //#endregion
4069
4169
  //#region src/components/blocks/VideoBlock.vue?vue&type=script&setup=true&lang.ts
4070
- var ks = ["src", "alt"], As = {
4170
+ var Bs = ["src", "alt"], Vs = {
4071
4171
  class: "tpl:max-w-full tpl:truncate tpl:px-3 tpl:text-xs tpl:font-medium tpl:text-[var(--tpl-primary)]",
4072
4172
  style: { opacity: "0.7" }
4073
- }, js = ["href"], Ms = ["src", "alt"], Ns = ["src", "alt"], Ps = {
4173
+ }, Hs = ["href"], Us = ["src", "alt"], Ws = ["src", "alt"], Gs = {
4074
4174
  key: 3,
4075
4175
  class: "tpl:flex tpl:min-h-[150px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border-2 tpl:border-dashed tpl:text-sm tpl:border-[var(--tpl-border-light)] tpl:bg-[var(--tpl-bg-hover)] tpl:text-[var(--tpl-text-dim)]"
4076
- }, Fs = /* @__PURE__ */ y({
4176
+ }, Ks = /* @__PURE__ */ y({
4077
4177
  __name: "VideoBlock",
4078
4178
  props: {
4079
4179
  block: {},
4080
4180
  viewport: {}
4081
4181
  },
4082
4182
  setup(e) {
4083
- let t = e, { t: n } = Ot(), { syntax: r } = It(), a = j(() => Ae(t.block.url, r) || Ae(t.block.thumbnailUrl, r)), o = j(() => a.value ? null : Os(t.block.url, t.block.thumbnailUrl)), s = j(() => ({ textAlign: t.block.align })), c = j(() => {
4183
+ let t = e, { t: n } = Ft(), { syntax: r } = Ht(), a = j(() => we(t.block.url, r) || we(t.block.thumbnailUrl, r)), o = cn(() => a.value ? void 0 : t.block.thumbnailUrl || void 0), s = cn(() => a.value ? t.block.placeholderUrl : void 0), c = j(() => a.value ? null : t.block.thumbnailUrl ? o.value ?? null : zs(t.block.url)), l = j(() => ({ textAlign: t.block.align })), u = j(() => {
4084
4184
  let e = t.block.align;
4085
4185
  return {
4086
4186
  maxWidth: "100%",
@@ -4089,89 +4189,89 @@ var ks = ["src", "alt"], As = {
4089
4189
  marginLeft: e === "center" || e === "right" ? "auto" : void 0,
4090
4190
  marginRight: e === "center" ? "auto" : void 0
4091
4191
  };
4092
- }), l = j(() => Ae(t.block.url, r) ? t.block.url : t.block.thumbnailUrl);
4192
+ }), d = j(() => we(t.block.url, r) ? t.block.url : t.block.thumbnailUrl);
4093
4193
  return (t, r) => (f(), x("div", {
4094
4194
  class: "tpl:w-full",
4095
- style: i(s.value)
4195
+ style: i(l.value)
4096
4196
  }, [a.value && e.block.placeholderUrl ? (f(), x("div", {
4097
4197
  key: 0,
4098
4198
  class: "tpl:relative tpl:inline-block",
4099
- style: i(c.value)
4199
+ style: i(u.value)
4100
4200
  }, [b("img", {
4101
4201
  class: "tpl:w-full tpl:border-0",
4102
- src: e.block.placeholderUrl,
4202
+ src: k(s),
4103
4203
  alt: e.block.alt
4104
- }, null, 8, ks), w(Es)], 4)) : a.value ? (f(), x("div", {
4204
+ }, null, 8, Bs), w(Ls)], 4)) : a.value ? (f(), x("div", {
4105
4205
  key: 1,
4106
4206
  class: "tpl:relative tpl:!flex tpl:min-h-[150px] tpl:flex-col tpl:items-center tpl:justify-center tpl:gap-2 tpl:rounded tpl:border-2 tpl:border-dashed tpl:text-center tpl:bg-[var(--tpl-bg-elevated)]",
4107
- style: i([{ "border-color": "color-mix(in srgb, var(--tpl-primary) 40%, transparent)" }, c.value])
4108
- }, [w(k(zn), {
4207
+ style: i([{ "border-color": "color-mix(in srgb, var(--tpl-primary) 40%, transparent)" }, u.value])
4208
+ }, [w(k(Yn), {
4109
4209
  size: 36,
4110
4210
  "stroke-width": 1.5,
4111
4211
  class: "tpl:text-[var(--tpl-primary)]",
4112
4212
  style: { opacity: "0.5" }
4113
- }), b("span", As, [w(Cn, { text: l.value }, null, 8, ["text"])])], 4)) : o.value ? (f(), x(A, { key: 2 }, [e.block.url ? (f(), x("a", {
4213
+ }), b("span", Vs, [w(Nn, { text: d.value }, null, 8, ["text"])])], 4)) : c.value ? (f(), x(A, { key: 2 }, [e.block.url ? (f(), x("a", {
4114
4214
  key: 0,
4115
4215
  href: e.block.url,
4116
4216
  target: "_blank",
4117
4217
  rel: "noopener noreferrer",
4118
4218
  class: "tpl:group tpl:relative tpl:inline-block",
4119
- style: i(c.value),
4219
+ style: i(u.value),
4120
4220
  onClick: r[0] ||= P(() => {}, ["prevent"])
4121
4221
  }, [b("img", {
4122
4222
  class: "tpl:w-full tpl:border-0",
4123
- src: o.value,
4223
+ src: c.value,
4124
4224
  alt: e.block.alt
4125
- }, null, 8, Ms), w(Es, { "hover-effect": "" })], 12, js)) : (f(), x("div", {
4225
+ }, null, 8, Us), w(Ls, { "hover-effect": "" })], 12, Hs)) : (f(), x("div", {
4126
4226
  key: 1,
4127
4227
  class: "tpl:relative tpl:inline-block",
4128
- style: i(c.value)
4228
+ style: i(u.value)
4129
4229
  }, [b("img", {
4130
4230
  class: "tpl:w-full tpl:border-0",
4131
- src: o.value,
4231
+ src: c.value,
4132
4232
  alt: e.block.alt
4133
- }, null, 8, Ns), w(Es)], 4))], 64)) : (f(), x("div", Ps, [w(k(zn), {
4233
+ }, null, 8, Ws), w(Ls)], 4))], 64)) : (f(), x("div", Gs, [w(k(Yn), {
4134
4234
  size: 40,
4135
4235
  "stroke-width": 1.5,
4136
4236
  class: "tpl:text-[var(--tpl-border-light)]"
4137
4237
  }), b("span", null, p(k(n).video.addVideo), 1)]))], 4));
4138
4238
  }
4139
- }), Is = {
4140
- section: os,
4141
- title: hi,
4142
- paragraph: Zr,
4143
- image: Rr,
4144
- button: En,
4145
- divider: vr,
4146
- video: Fs,
4147
- social: gs,
4148
- menu: Hr,
4149
- table: Ts,
4150
- spacer: ys,
4151
- html: wr,
4152
- countdown: C(() => import("./CountdownBlock-DbXfzwae.js").then((e) => e.n))
4239
+ }), qs = {
4240
+ section: _s,
4241
+ title: Ei,
4242
+ paragraph: ci,
4243
+ image: Yr,
4244
+ button: In,
4245
+ divider: kr,
4246
+ video: Ks,
4247
+ social: Ds,
4248
+ menu: $r,
4249
+ table: Is,
4250
+ spacer: As,
4251
+ html: Fr,
4252
+ countdown: C(() => import("./CountdownBlock-Bn5w7C-p.js").then((e) => e.n))
4153
4253
  };
4154
- function Ls(e) {
4155
- let { editor: t, config: n, translations: r, fontsManager: i } = e, { t: a, format: o } = Ot(r);
4254
+ function Js(e) {
4255
+ let { editor: t, config: n, translations: r, fontsManager: i } = e, { t: a, format: o } = Ft(r);
4156
4256
  t.setUiTheme(n.uiTheme ?? "auto");
4157
- let { resolvedTheme: l } = sn(j(() => t.state.uiTheme)), d = _(n.theme ?? {}), { themeStyles: f } = ln({
4257
+ let { resolvedTheme: l } = hn(j(() => t.state.uiTheme)), d = _(n.theme ?? {}), { themeStyles: f } = _n({
4158
4258
  themeOverrides: d,
4159
4259
  resolvedTheme: l,
4160
4260
  extraStyles: e.themeExtraStyles
4161
- }), p = Ut({
4261
+ }), p = Yt({
4162
4262
  content: t.content,
4163
4263
  setContent: (e, n) => t.setContent(e, n),
4164
4264
  ...e.historyOptions
4165
4265
  });
4166
- Yt(t, p);
4167
- let m = Gt({
4266
+ tn(t, p);
4267
+ let m = Zt({
4168
4268
  addBlock: t.addBlock,
4169
4269
  removeBlock: t.removeBlock,
4170
4270
  updateBlock: t.updateBlock,
4171
4271
  selectBlock: t.selectBlock,
4172
4272
  findBlockLocation: t.findBlockLocation,
4173
4273
  blockDefaults: n.blockDefaults
4174
- }), h = qt(t), g = e.autoSaveOptions !== null && e.autoSaveOptions !== void 0 ? Kt({
4274
+ }), h = $t(t), g = e.autoSaveOptions !== null && e.autoSaveOptions !== void 0 ? Qt({
4175
4275
  content: t.content,
4176
4276
  isDirty: () => t.state.isDirty,
4177
4277
  ...e.autoSaveOptions
@@ -4179,24 +4279,24 @@ function Ls(e) {
4179
4279
  g && (v = c(p.isNavigating, (e) => {
4180
4280
  e ? g.pause() : g.resume();
4181
4281
  }));
4182
- let y = on(t, {
4282
+ let y = mn(t, {
4183
4283
  t: a,
4184
4284
  format: o
4185
- }), b = pn();
4186
- if (vn(b, Is), n.customBlocks?.length) for (let e of n.customBlocks) b.registerCustom(e, gr);
4285
+ }), b = xn();
4286
+ if (En(b, qs), n.customBlocks?.length) for (let e of n.customBlocks) b.registerCustom(e, Dr);
4187
4287
  function x(e) {
4188
- for (let t of e) b.registerCustom(t, gr);
4288
+ for (let t of e) b.registerCustom(t, Dr);
4189
4289
  }
4190
- let S = $t();
4290
+ let S = on();
4191
4291
  if (s() && u(S.dispose), e.containerEl) {
4192
4292
  let t = e.containerEl;
4193
- Je(document, "pointerdown", (e) => {
4293
+ et(document, "pointerdown", (e) => {
4194
4294
  let n = t.value;
4195
4295
  n && (e.composedPath?.() ?? []).includes(n) && S.claim();
4196
4296
  }, { capture: !0 });
4197
4297
  }
4198
4298
  function C(r) {
4199
- S.isActive() && xn(r, {
4299
+ S.isActive() && jn(r, {
4200
4300
  history: p,
4201
4301
  selectBlock: (e) => t.selectBlock(e),
4202
4302
  getSelectedBlockId: () => t.state.selectedBlockId,
@@ -4205,21 +4305,27 @@ function Ls(e) {
4205
4305
  onBeforeUndo: e.keyboardOptions?.onBeforeUndo
4206
4306
  });
4207
4307
  }
4208
- Je(document, "keydown", C);
4308
+ et(document, "keydown", C);
4209
4309
  let w = _(null);
4210
- E(mt, e.editorRoot ?? document), E(gt, w), E(tt, r), E(vt, t), E(ct, p), E(ht, m), E(Ct, h), E(pt, i), E(et, f), E(nt, l), E(lt, n.blockDefaults), E(bt, b), E(dt, n.customBlocks ?? []), E(Xe, n.paletteBlocks), E(wt, yn(n.htmlBlockPreview)), E(ft, mn(t.content, b));
4211
- let T = pe(n.mergeTags?.syntax);
4212
- E(Ze, n.mergeTags?.tags ?? []), E($e, T), E(_t, n.mergeTags?.onRequest ?? null), E(Tt, n.mergeTags?.autocomplete !== !1), E(st, en()), E(Et, n.logicTags?.tags ?? []), E(ut, n.logicTags?.pairs ?? []), E(Qe, n.logicTags?.onRequest ?? null), E(ot, tn()), E(rt, n.onRequestMedia ?? null), E(xt, n.displayConditions?.conditions ?? []), E(yt, n.displayConditions?.allowCustom ?? !1), E(St, e.capabilities ?? {}), E(Dt, y);
4213
- let D = nn(n.lint) ? null : rn({
4310
+ E(yt, e.editorRoot ?? document), E(lt, w), E(dt, r), E(bt, t), E(At, p), E(xt, m), E(_t, h), E(mt, i), E(st, f), E(Pt, l), E(ht, n.blockDefaults), E(Dt, b), E(vt, n.customBlocks ?? []), E(ct, n.paletteBlocks), E(Nt, Dn(n.htmlBlockPreview));
4311
+ let T = Ze(n.colors);
4312
+ if (T.allowCustomIgnored && bn.warn("config.colors.allowCustom: false is ignored without presets keeping the color wheel and hex input so a color can still be chosen."), T.invalidPresets.length > 0 && bn.warn(`config.colors.presets skipped invalid entries: ${T.invalidPresets.join(", ")} presets must be hex colors (#rgb or #rrggbb).`), T.allowCustom === !1) {
4313
+ let e = kn(T.presets, n.blockDefaults, n.templateDefaults);
4314
+ e.length > 0 && bn.warn(`config.colors locks custom colours, but these block/template default colours fall outside colors.presets: ${e.join(", ")}. New blocks start on a colour the palette can't reselect — set blockDefaults / templateDefaults from the same palette.`);
4315
+ }
4316
+ E(wt, T), E(Ot, Sn(t.content, b));
4317
+ let D = me(n.mergeTags?.syntax);
4318
+ E(pt, n.mergeTags?.tags ?? []), E(ut, D), E(St, n.mergeTags?.onRequest ?? null), E(at, n.mergeTags?.autocomplete !== !1), E(it, ln()), E(rt, n.logicTags?.tags ?? []), E(ft, n.logicTags?.pairs ?? []), E(Ct, n.logicTags?.onRequest ?? null), E(jt, un()), E(tt, n.onRequestMedia ?? null), E(gt, n.resolveImageUrl ? sn(n.resolveImageUrl) : null), E(Tt, n.displayConditions?.conditions ?? []), E(Et, n.displayConditions?.allowCustom ?? !1), E(kt, e.capabilities ?? {}), E(Mt, y);
4319
+ let O = dn(n.lint) ? null : fn({
4214
4320
  content: t.content,
4215
4321
  options: n.lint ?? {},
4216
4322
  updateBlock: t.updateBlock,
4217
4323
  updateSettings: t.updateSettings,
4218
4324
  removeBlock: t.removeBlock
4219
4325
  });
4220
- E(it, D);
4221
- function O() {
4222
- v?.(), D?.destroy(), g?.destroy(), p.destroy();
4326
+ E(ot, O);
4327
+ function k() {
4328
+ v?.(), O?.destroy(), g?.destroy(), p.destroy();
4223
4329
  }
4224
4330
  return {
4225
4331
  t: a,
@@ -4233,11 +4339,11 @@ function Ls(e) {
4233
4339
  themeOverrides: d,
4234
4340
  registry: b,
4235
4341
  keyboardReorder: y,
4236
- templateLint: D,
4342
+ templateLint: O,
4237
4343
  popoverRoot: w,
4238
4344
  registerCustomBlocks: x,
4239
- destroy: O
4345
+ destroy: k
4240
4346
  };
4241
4347
  }
4242
4348
  //#endregion
4243
- export { Ln as A, zt as B, Qn as C, Gn as D, Kn as E, kn as F, En as I, fn as L, Pn as M, jn as N, Hn as O, An as P, an as R, rr as S, qn as T, wr as _, gs as a, sr as b, ns as c, $r as d, Qr as f, Er as g, Rr as h, ys as i, Fn as j, Rn as k, hi as l, Hr as m, Fs as n, ls as o, Zr as p, Ts as r, os as s, Ls as t, pi as u, vr as v, Zn as w, ar as x, gr as y, Jt as z };
4349
+ export { qn as A, Gt as B, lr as C, tr as D, nr as E, zn as F, In as I, bn as L, Wn as M, Vn as N, Qn as O, Bn as P, pn as R, mr as S, rr as T, Fr as _, Ds as a, vr as b, ps as c, ui as d, li as f, Lr as g, Yr as h, As as i, Gn as j, Jn as k, Ei as l, $r as m, Ks as n, bs as o, ci as p, Is as r, _s as s, Js as t, wi as u, kr as v, cr as w, gr as x, Dr as y, en as z };