@zipify/wysiwyg 4.12.0-beta.2 → 4.12.0-beta.3

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 (48) hide show
  1. package/README.md +1 -1
  2. package/dist/cli.js +27 -27
  3. package/dist/node.js +21 -21
  4. package/dist/types/enums/Device.d.ts +2 -1
  5. package/dist/types/enums/TextSetting.d.ts +0 -1
  6. package/dist/types/services/NodeFactory.d.ts +1 -1
  7. package/dist/types/utils/clone.d.ts +1 -0
  8. package/dist/types/utils/index.d.ts +1 -1
  9. package/dist/wysiwyg.css +28 -46
  10. package/dist/wysiwyg.mjs +184 -326
  11. package/example/ExampleApp.vue +6 -3
  12. package/example/presets.js +203 -227
  13. package/lib/components/base/NumberField.vue +2 -2
  14. package/lib/components/toolbar/controls/index.js +0 -1
  15. package/lib/components/toolbar/layouts/ToolbarDesktop.vue +0 -2
  16. package/lib/components/toolbar/layouts/ToolbarMobile.vue +0 -2
  17. package/lib/enums/Device.ts +2 -1
  18. package/lib/enums/TextSetting.ts +0 -2
  19. package/lib/extensions/Alignment.js +3 -2
  20. package/lib/extensions/DeviceManager.js +20 -3
  21. package/lib/extensions/FontSize.js +12 -6
  22. package/lib/extensions/LineHeight.js +3 -2
  23. package/lib/extensions/__tests__/Alignment.test.js +14 -2
  24. package/lib/extensions/__tests__/FontSize.test.js +14 -2
  25. package/lib/extensions/__tests__/LineHeight.test.js +14 -2
  26. package/lib/extensions/__tests__/__snapshots__/Alignment.test.js.snap +27 -0
  27. package/lib/extensions/__tests__/__snapshots__/FontSize.test.js.snap +30 -0
  28. package/lib/extensions/__tests__/__snapshots__/LineHeight.test.js.snap +27 -0
  29. package/lib/extensions/core/NodeProcessor.js +4 -2
  30. package/lib/extensions/core/__tests__/NodeProcessor.test.js +10 -1
  31. package/lib/extensions/index.js +0 -2
  32. package/lib/services/NodeFactory.ts +1 -1
  33. package/lib/styles/content.css +0 -3
  34. package/lib/utils/clone.ts +3 -0
  35. package/lib/utils/convertFontSize.js +7 -2
  36. package/lib/utils/index.ts +1 -1
  37. package/package.json +3 -2
  38. package/dist/types/components/toolbar/controls/LetterSpacingControl.vue.d.ts +0 -2
  39. package/dist/types/extensions/LetterSpacing.d.ts +0 -2
  40. package/dist/types/utils/convertEmToPx.d.ts +0 -1
  41. package/dist/types/utils/convertLetterSpacing.d.ts +0 -1
  42. package/lib/assets/icons/letter-spacing.svg +0 -3
  43. package/lib/components/toolbar/controls/LetterSpacingControl.vue +0 -96
  44. package/lib/extensions/LetterSpacing.js +0 -78
  45. package/lib/extensions/__tests__/LetterSpacing.test.js +0 -117
  46. package/lib/extensions/__tests__/__snapshots__/LetterSpacing.test.js.snap +0 -121
  47. package/lib/utils/convertEmToPx.ts +0 -8
  48. package/lib/utils/convertLetterSpacing.ts +0 -5
package/dist/wysiwyg.mjs CHANGED
@@ -17428,11 +17428,11 @@ function debounce(fn2, ms) {
17428
17428
  };
17429
17429
  }
17430
17430
  function removeProperties(obj, keys2) {
17431
- var clone = Object.assign({}, obj);
17431
+ var clone2 = Object.assign({}, obj);
17432
17432
  keys2.forEach(function(key) {
17433
- delete clone[key];
17433
+ delete clone2[key];
17434
17434
  });
17435
- return clone;
17435
+ return clone2;
17436
17436
  }
17437
17437
  function splitBySpaces(value) {
17438
17438
  return value.split(/\s+/).filter(Boolean);
@@ -19256,6 +19256,7 @@ var Device = /* @__PURE__ */ ((Device2) => {
19256
19256
  Device2["DESKTOP"] = "desktop";
19257
19257
  Device2["TABLET"] = "tablet";
19258
19258
  Device2["MOBILE"] = "mobile";
19259
+ Device2["ALL"] = "all";
19259
19260
  return Device2;
19260
19261
  })(Device || {});
19261
19262
  const DeviceList = [
@@ -19333,7 +19334,6 @@ var TextSetting = /* @__PURE__ */ ((TextSetting2) => {
19333
19334
  TextSetting2["FONT_STYLE"] = "font_style";
19334
19335
  TextSetting2["FONT_WEIGHT"] = "font_weight";
19335
19336
  TextSetting2["LINE_HEIGHT"] = "line_height";
19336
- TextSetting2["LETTER_SPACING"] = "letter_spacing";
19337
19337
  TextSetting2["TEXT_DECORATION"] = "text_decoration";
19338
19338
  TextSetting2["SUPERSCRIPT"] = "superscript";
19339
19339
  TextSetting2["MARGIN"] = "margin";
@@ -19365,7 +19365,6 @@ const TextBlockMarkList = [
19365
19365
  "font_size",
19366
19366
  "font_style",
19367
19367
  "font_weight",
19368
- "letter_spacing",
19369
19368
  "text_decoration",
19370
19369
  "superscript"
19371
19370
  /* SUPERSCRIPT */
@@ -19392,17 +19391,17 @@ const _export_sfc = (sfc, props) => {
19392
19391
  }
19393
19392
  return target;
19394
19393
  };
19395
- const _sfc_main$M = {
19394
+ const _sfc_main$L = {
19396
19395
  name: "ToolbarGroup"
19397
19396
  };
19398
- const _hoisted_1$q = { class: "zw-toolbar__group" };
19397
+ const _hoisted_1$p = { class: "zw-toolbar__group" };
19399
19398
  function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) {
19400
- return openBlock(), createElementBlock("div", _hoisted_1$q, [
19399
+ return openBlock(), createElementBlock("div", _hoisted_1$p, [
19401
19400
  renderSlot(_ctx.$slots, "default", {}, void 0, true)
19402
19401
  ]);
19403
19402
  }
19404
- const ToolbarGroup = /* @__PURE__ */ _export_sfc(_sfc_main$M, [["render", _sfc_render$4], ["__scopeId", "data-v-8467d9b8"]]);
19405
- const _sfc_main$L = {
19403
+ const ToolbarGroup = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["render", _sfc_render$4], ["__scopeId", "data-v-8467d9b8"]]);
19404
+ const _sfc_main$K = {
19406
19405
  name: "ToolbarDivider",
19407
19406
  props: {
19408
19407
  vertical: {
@@ -19429,17 +19428,17 @@ function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) {
19429
19428
  class: normalizeClass(["zw-toolbar__divider", $setup.classes])
19430
19429
  }, null, 2);
19431
19430
  }
19432
- const ToolbarDivider = /* @__PURE__ */ _export_sfc(_sfc_main$L, [["render", _sfc_render$3], ["__scopeId", "data-v-1a453fb5"]]);
19433
- const _sfc_main$K = {
19431
+ const ToolbarDivider = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render$3], ["__scopeId", "data-v-1a453fb5"]]);
19432
+ const _sfc_main$J = {
19434
19433
  name: "ToolbarRow"
19435
19434
  };
19436
- const _hoisted_1$p = { class: "zw-toolbar__row" };
19435
+ const _hoisted_1$o = { class: "zw-toolbar__row" };
19437
19436
  function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) {
19438
- return openBlock(), createElementBlock("div", _hoisted_1$p, [
19437
+ return openBlock(), createElementBlock("div", _hoisted_1$o, [
19439
19438
  renderSlot(_ctx.$slots, "default", {}, void 0, true)
19440
19439
  ]);
19441
19440
  }
19442
- const ToolbarRow = /* @__PURE__ */ _export_sfc(_sfc_main$K, [["render", _sfc_render$2], ["__scopeId", "data-v-14a4e361"]]);
19441
+ const ToolbarRow = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["render", _sfc_render$2], ["__scopeId", "data-v-14a4e361"]]);
19443
19442
  const InjectionTokens$1 = Object.freeze({
19444
19443
  FONTS: Symbol("fonts"),
19445
19444
  FONT_SIZES: Symbol("fontSizes"),
@@ -21328,13 +21327,11 @@ function createKeyboardShortcut(command2, ...args) {
21328
21327
  function convertColor(raw) {
21329
21328
  return normalizeColor(raw);
21330
21329
  }
21331
- function convertEmToPx(value, wrapperEl) {
21330
+ function convertFontSize(value, wrapperEl) {
21331
+ if (!value.includes("em")) return parseInt(value);
21332
21332
  const containerValue = ContextWindow.getComputedStyle(wrapperEl).fontSize;
21333
21333
  const size = parseFloat(value) * parseFloat(containerValue);
21334
- return Math.round(size * 10) / 10;
21335
- }
21336
- function convertFontSize(value, wrapperEl) {
21337
- return String(value).includes("em") ? Math.round(convertEmToPx(value, wrapperEl)) : parseInt(value);
21334
+ return Math.round(size);
21338
21335
  }
21339
21336
  function getFontSize(sourceEl, wrapperEl) {
21340
21337
  const source = sourceEl.firstElementChild || sourceEl;
@@ -21347,9 +21344,6 @@ function convertLineHeight(value, sourceEl, wrapperEl) {
21347
21344
  const fontSize = convertFontSize(rawFontSize, wrapperEl);
21348
21345
  return fontSize ? (parseInt(value) / fontSize).toFixed(2) : null;
21349
21346
  }
21350
- function convertLetterSpacing(value, wrapperEl) {
21351
- return String(value).includes("em") ? convertEmToPx(value, wrapperEl) : parseFloat(value);
21352
- }
21353
21347
  const MAPPING = {
21354
21348
  start: Alignment.LEFT,
21355
21349
  end: Alignment.RIGHT
@@ -21367,22 +21361,21 @@ const __vite_glob_0_5 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" sty
21367
21361
  const __vite_glob_0_6 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="M16.64 19.93h-1.715a.75.75 0 0 1-.475-.145.82.82 0 0 1-.268-.359l-.89-2.433H8.35l-.891 2.433a.78.78 0 0 1-.26.347.73.73 0 0 1-.475.157H5L9.686 8h2.269l4.686 11.93Zm-7.72-4.505h3.803l-1.452-3.968a18.048 18.048 0 0 1-.219-.623c-.08-.24-.158-.5-.235-.78-.077.28-.152.542-.227.784a8.742 8.742 0 0 1-.218.635L8.92 15.425Zm14.968 4.505h-.915a.987.987 0 0 1-.454-.087c-.11-.058-.192-.175-.248-.35l-.181-.603a7.005 7.005 0 0 1-.631.507c-.206.146-.42.269-.64.368a3.26 3.26 0 0 1-.7.222c-.248.05-.523.075-.826.075-.357 0-.687-.049-.99-.145a2.134 2.134 0 0 1-.78-.433 1.967 1.967 0 0 1-.507-.718 2.545 2.545 0 0 1-.181-.998c0-.319.084-.634.251-.945.168-.31.447-.59.838-.841.39-.25.91-.458 1.559-.623.649-.165 1.455-.258 2.417-.28v-.495c0-.567-.12-.986-.359-1.259-.239-.272-.587-.408-1.043-.408-.33 0-.605.039-.825.116a3.17 3.17 0 0 0-.574.26 25.11 25.11 0 0 1-.45.26.912.912 0 0 1-.453.115.59.59 0 0 1-.355-.107.843.843 0 0 1-.239-.264l-.371-.652c.973-.891 2.148-1.337 3.523-1.337.494 0 .936.081 1.324.244.387.162.716.387.985.676.27.289.475.634.615 1.036.14.401.21.841.21 1.32v5.346Zm-3.96-1.271c.21 0 .402-.02.578-.058.176-.038.342-.096.5-.173.156-.077.307-.172.453-.285a4.13 4.13 0 0 0 .441-.4v-1.427c-.594.027-1.09.078-1.489.153a3.967 3.967 0 0 0-.961.284c-.242.116-.414.25-.516.404a.894.894 0 0 0-.152.504c0 .357.106.613.317.767.212.154.489.231.83.231Z" clip-rule="evenodd"/>\n</svg>\n';
21368
21362
  const __vite_glob_0_7 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="M22 20.62a2.42 2.42 0 0 1-4.84 0c0-1.25 2.42-4.54 2.42-4.54S22 19.37 22 20.62ZM9.92 15.425l1.452-3.951c.071-.182.145-.394.219-.636.074-.242.149-.503.226-.783a17.223 17.223 0 0 0 .454 1.402l1.452 3.968H9.919Zm5.411 4.199c.226-.795.658-1.684 1.184-2.562L12.955 8h-2.269L6 19.93h1.725a.736.736 0 0 0 .474-.157.792.792 0 0 0 .26-.347l.891-2.434h4.941l.891 2.434c.031.079.097.134.148.198Z" clip-rule="evenodd"/>\n</svg>\n';
21369
21363
  const __vite_glob_0_8 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="M18 9V7h-7v2h2.64l-1.22 10H10v2h7v-2h-2.83L15.4 9H18Z"/>\n</svg>\n';
21370
- const __vite_glob_0_9 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 24 24">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="M3 19V5h1.8v14zm16.2 0V5H21v14zM7.815 16.375l3.375-8.75h1.62l3.375 8.75h-1.552l-.81-2.231h-3.645l-.81 2.231zm2.835-3.5h2.7l-1.305-3.631h-.09z" clip-rule="evenodd"/>\n</svg>\n';
21371
- const __vite_glob_0_10 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="m5 10 3-3 3 3H9v8h2l-3 3-3-3h2v-8H5Zm8-3h10v2H13V7Zm10 6H13v2h10v-2Zm0 6H13v2h10v-2Z" clip-rule="evenodd"/>\n</svg>\n';
21372
- const __vite_glob_0_11 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="M12 17.5h-2a3.5 3.5 0 1 1 0-7h2V9h-2a5 5 0 0 0 0 10h2v-1.5Zm6-4.5h-8v2h8v-2Zm-2-4h2a5 5 0 0 1 0 10h-2v-1.5h2a3.5 3.5 0 1 0 0-7h-2V9Z" clip-rule="evenodd"/>\n</svg>\n';
21373
- const __vite_glob_0_12 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <rect width="9" height="9" x="9.5" y="9.5" stroke="var(--zw-icon-foreground)" rx="4.5"/>\n</svg>\n';
21374
- const __vite_glob_0_13 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="M15.108 18.184V19H10.5v-.816h1.842v-5.862c0-.176.006-.354.018-.534l-1.53 1.314a.375.375 0 0 1-.156.084.373.373 0 0 1-.27-.048.318.318 0 0 1-.084-.078l-.336-.462 2.562-2.214h.87v7.8h1.692Zm1.519.156a.8.8 0 0 1 .054-.294.829.829 0 0 1 .156-.24.77.77 0 0 1 .534-.222.77.77 0 0 1 .696.462c.04.092.06.19.06.294a.744.744 0 0 1-.222.534.692.692 0 0 1-.24.156.73.73 0 0 1-.294.06.73.73 0 0 1-.294-.06.692.692 0 0 1-.396-.39.816.816 0 0 1-.054-.3Z"/>\n</svg>\n';
21375
- const __vite_glob_0_14 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <rect width="10" height="10" x="9" y="9" fill="var(--zw-icon-foreground)" rx="5"/>\n</svg>\n';
21376
- const __vite_glob_0_15 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="M12.086 9.802h.834v11.292h-.834V9.802Zm2.592 8.538a.8.8 0 0 1 .054-.294.829.829 0 0 1 .156-.24.77.77 0 0 1 .534-.222.77.77 0 0 1 .696.462c.04.092.06.19.06.294a.744.744 0 0 1-.222.534.692.692 0 0 1-.24.156.73.73 0 0 1-.294.06.73.73 0 0 1-.294-.06.692.692 0 0 1-.396-.39.816.816 0 0 1-.054-.3Z"/>\n</svg>\n';
21377
- const __vite_glob_0_16 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="m13.664 15.808-1.35-3.498a7.11 7.11 0 0 1-.252-.804c-.084.324-.17.594-.258.81l-1.35 3.492h3.21ZM16.088 19h-.9a.387.387 0 0 1-.252-.078.48.48 0 0 1-.144-.198l-.804-2.076H10.13l-.804 2.076a.421.421 0 0 1-.138.192.383.383 0 0 1-.252.084h-.9l3.438-8.598h1.176L16.088 19Zm.7-.66a.8.8 0 0 1 .053-.294.829.829 0 0 1 .156-.24.77.77 0 0 1 .534-.222.77.77 0 0 1 .696.462c.04.092.06.19.06.294a.744.744 0 0 1-.222.534.692.692 0 0 1-.24.156.73.73 0 0 1-.294.06.73.73 0 0 1-.294-.06.692.692 0 0 1-.396-.39.816.816 0 0 1-.054-.3Z"/>\n</svg>\n';
21378
- const __vite_glob_0_17 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="M9 9h10v10H9z"/>\n</svg>\n';
21379
- const __vite_glob_0_18 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="M14.089 6.726a1 1 0 0 1 1.425-.003l6.8 6.882a1 1 0 0 1 .007 1.398L17.2 20.3l-.2.2c-2.2 2.1-5.7 2-7.8-.2l-3.516-3.6a1 1 0 0 1 0-1.399l8.405-8.575Zm1.81 12.674c.1 0 .2 0 .2-.1l4.8-5-6.1-6.2-5 5.1 6.1 6.2Z" clip-rule="evenodd"/>\n</svg>\n';
21380
- const __vite_glob_0_19 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="M14 9.333V6.666l-3.334 3.333L14 13.333v-2.667c2.206 0 4 1.793 4 4s-1.794 4-4 4c-2.207 0-4-1.793-4-4H8.666A5.332 5.332 0 0 0 14 19.999a5.332 5.332 0 0 0 5.333-5.333A5.332 5.332 0 0 0 14 9.333Z"/>\n</svg>\n';
21381
- const __vite_glob_0_20 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="m14 12.731.77.27H20v2H8v-2h2.84a2.892 2.892 0 0 1-.46-.71 3.61 3.61 0 0 1-.29-1.52c0-.484.1-.964.29-1.41a3.5 3.5 0 0 1 .83-1.2 4 4 0 0 1 1.35-.84 4.74 4.74 0 0 1 1.83-.32 6 6 0 0 1 2.11.41 5 5 0 0 1 1.68 1l-.46.88a.69.69 0 0 1-.18.22.41.41 0 0 1-.25.07.69.69 0 0 1-.39-.16 5.551 5.551 0 0 0-.56-.36 4.641 4.641 0 0 0-.8-.36 3.44 3.44 0 0 0-1.14-.16 3.16 3.16 0 0 0-1.11.17 2.29 2.29 0 0 0-.8.45 1.87 1.87 0 0 0-.49.67 2.138 2.138 0 0 0-.11.79c-.023.357.08.711.29 1 .206.267.465.489.76.65.338.187.693.34 1.06.46Zm1.99 6.06c.24-.22.427-.49.55-.79.135-.315.2-.657.19-1h1.74a4.58 4.58 0 0 1-.25 1.38 4 4 0 0 1-.91 1.37 4.231 4.231 0 0 1-1.46.92 5.503 5.503 0 0 1-2 .33 6.13 6.13 0 0 1-2.5-.46 5.66 5.66 0 0 1-1.89-1.31l.54-.88a.61.61 0 0 1 .19-.17.45.45 0 0 1 .25-.07.5.5 0 0 1 .28.1c.128.077.251.16.37.25l.46.33c.19.13.391.243.6.34.245.107.5.191.76.25.328.076.664.11 1 .1a3.67 3.67 0 0 0 1.19-.18c.328-.109.63-.282.89-.51Z" clip-rule="evenodd"/>\n</svg>\n';
21382
- const __vite_glob_0_21 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="M21.985 8.625h-1.75V9.5h2.625v.875h-3.5v-1.75c0-.481.394-.875.875-.875h1.75v-.875H19.36V6h2.625c.481 0 .875.394.875.875v.875a.878.878 0 0 1-.875.875ZM7.88 20h2.327l2.975-4.742h.105L16.262 20h2.328l-4.069-6.361L18.32 7.75h-2.345l-2.687 4.366h-.105L10.48 7.75H8.15l3.78 5.889L7.88 20Z"/>\n</svg>\n';
21383
- const __vite_glob_0_22 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="M15.4 16.06a3.3 3.3 0 0 1-1.4.29 3.12 3.12 0 0 1-1.39-.29 2.88 2.88 0 0 1-1.05-.81 3.711 3.711 0 0 1-.65-1.25 5.659 5.659 0 0 1-.22-1.6V7H9v5.41a6.89 6.89 0 0 0 .34 2.22 5.29 5.29 0 0 0 1 1.77c.437.501.975.904 1.58 1.18A5 5 0 0 0 14 18a5 5 0 0 0 2.08-.42 4.61 4.61 0 0 0 1.57-1.18 5.27 5.27 0 0 0 1-1.77 6.89 6.89 0 0 0 .35-2.22V7h-1.69v5.41a5.659 5.659 0 0 1-.22 1.59 3.71 3.71 0 0 1-.69 1.25c-.27.34-.61.617-1 .81ZM20 19H8v2h12v-2Z" clip-rule="evenodd"/>\n</svg>\n';
21384
- const __vite_glob_0_23 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 20 20">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="M18.96 10a5 5 0 0 0-5-5h-2v1.5h2a3.49 3.49 0 0 1 1.58 6.61L13.43 11h.53V9h-2.53l-7-7-1.47 1.47L17.49 18l1.47-1.47-2.34-2.34A4.93 4.93 0 0 0 18.96 10Zm-13 1h1.59L5.96 9.41V11ZM3.81 7.26A3.47 3.47 0 0 0 2.46 10a3.5 3.5 0 0 0 3.5 3.5h2V15h-2a5 5 0 0 1-3.21-8.8l1.06 1.06Z" clip-rule="evenodd"/>\n</svg>\n';
21385
- const modules = /* @__PURE__ */ Object.assign({ "../assets/icons/alignment-center.svg": __vite_glob_0_0, "../assets/icons/alignment-justify.svg": __vite_glob_0_1, "../assets/icons/alignment-left.svg": __vite_glob_0_2, "../assets/icons/alignment-right.svg": __vite_glob_0_3, "../assets/icons/arrow.svg": __vite_glob_0_4, "../assets/icons/background-color.svg": __vite_glob_0_5, "../assets/icons/case-style.svg": __vite_glob_0_6, "../assets/icons/font-color.svg": __vite_glob_0_7, "../assets/icons/italic.svg": __vite_glob_0_8, "../assets/icons/letter-spacing.svg": __vite_glob_0_9, "../assets/icons/line-height.svg": __vite_glob_0_10, "../assets/icons/link.svg": __vite_glob_0_11, "../assets/icons/list-circle.svg": __vite_glob_0_12, "../assets/icons/list-decimal.svg": __vite_glob_0_13, "../assets/icons/list-disc.svg": __vite_glob_0_14, "../assets/icons/list-latin.svg": __vite_glob_0_15, "../assets/icons/list-roman.svg": __vite_glob_0_16, "../assets/icons/list-square.svg": __vite_glob_0_17, "../assets/icons/remove-format.svg": __vite_glob_0_18, "../assets/icons/reset-styles.svg": __vite_glob_0_19, "../assets/icons/strike-through.svg": __vite_glob_0_20, "../assets/icons/superscript.svg": __vite_glob_0_21, "../assets/icons/underline.svg": __vite_glob_0_22, "../assets/icons/unlink.svg": __vite_glob_0_23 });
21364
+ const __vite_glob_0_9 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="m5 10 3-3 3 3H9v8h2l-3 3-3-3h2v-8H5Zm8-3h10v2H13V7Zm10 6H13v2h10v-2Zm0 6H13v2h10v-2Z" clip-rule="evenodd"/>\n</svg>\n';
21365
+ const __vite_glob_0_10 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="M12 17.5h-2a3.5 3.5 0 1 1 0-7h2V9h-2a5 5 0 0 0 0 10h2v-1.5Zm6-4.5h-8v2h8v-2Zm-2-4h2a5 5 0 0 1 0 10h-2v-1.5h2a3.5 3.5 0 1 0 0-7h-2V9Z" clip-rule="evenodd"/>\n</svg>\n';
21366
+ const __vite_glob_0_11 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <rect width="9" height="9" x="9.5" y="9.5" stroke="var(--zw-icon-foreground)" rx="4.5"/>\n</svg>\n';
21367
+ const __vite_glob_0_12 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="M15.108 18.184V19H10.5v-.816h1.842v-5.862c0-.176.006-.354.018-.534l-1.53 1.314a.375.375 0 0 1-.156.084.373.373 0 0 1-.27-.048.318.318 0 0 1-.084-.078l-.336-.462 2.562-2.214h.87v7.8h1.692Zm1.519.156a.8.8 0 0 1 .054-.294.829.829 0 0 1 .156-.24.77.77 0 0 1 .534-.222.77.77 0 0 1 .696.462c.04.092.06.19.06.294a.744.744 0 0 1-.222.534.692.692 0 0 1-.24.156.73.73 0 0 1-.294.06.73.73 0 0 1-.294-.06.692.692 0 0 1-.396-.39.816.816 0 0 1-.054-.3Z"/>\n</svg>\n';
21368
+ const __vite_glob_0_13 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <rect width="10" height="10" x="9" y="9" fill="var(--zw-icon-foreground)" rx="5"/>\n</svg>\n';
21369
+ const __vite_glob_0_14 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="M12.086 9.802h.834v11.292h-.834V9.802Zm2.592 8.538a.8.8 0 0 1 .054-.294.829.829 0 0 1 .156-.24.77.77 0 0 1 .534-.222.77.77 0 0 1 .696.462c.04.092.06.19.06.294a.744.744 0 0 1-.222.534.692.692 0 0 1-.24.156.73.73 0 0 1-.294.06.73.73 0 0 1-.294-.06.692.692 0 0 1-.396-.39.816.816 0 0 1-.054-.3Z"/>\n</svg>\n';
21370
+ const __vite_glob_0_15 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="m13.664 15.808-1.35-3.498a7.11 7.11 0 0 1-.252-.804c-.084.324-.17.594-.258.81l-1.35 3.492h3.21ZM16.088 19h-.9a.387.387 0 0 1-.252-.078.48.48 0 0 1-.144-.198l-.804-2.076H10.13l-.804 2.076a.421.421 0 0 1-.138.192.383.383 0 0 1-.252.084h-.9l3.438-8.598h1.176L16.088 19Zm.7-.66a.8.8 0 0 1 .053-.294.829.829 0 0 1 .156-.24.77.77 0 0 1 .534-.222.77.77 0 0 1 .696.462c.04.092.06.19.06.294a.744.744 0 0 1-.222.534.692.692 0 0 1-.24.156.73.73 0 0 1-.294.06.73.73 0 0 1-.294-.06.692.692 0 0 1-.396-.39.816.816 0 0 1-.054-.3Z"/>\n</svg>\n';
21371
+ const __vite_glob_0_16 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="M9 9h10v10H9z"/>\n</svg>\n';
21372
+ const __vite_glob_0_17 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="M14.089 6.726a1 1 0 0 1 1.425-.003l6.8 6.882a1 1 0 0 1 .007 1.398L17.2 20.3l-.2.2c-2.2 2.1-5.7 2-7.8-.2l-3.516-3.6a1 1 0 0 1 0-1.399l8.405-8.575Zm1.81 12.674c.1 0 .2 0 .2-.1l4.8-5-6.1-6.2-5 5.1 6.1 6.2Z" clip-rule="evenodd"/>\n</svg>\n';
21373
+ const __vite_glob_0_18 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="M14 9.333V6.666l-3.334 3.333L14 13.333v-2.667c2.206 0 4 1.793 4 4s-1.794 4-4 4c-2.207 0-4-1.793-4-4H8.666A5.332 5.332 0 0 0 14 19.999a5.332 5.332 0 0 0 5.333-5.333A5.332 5.332 0 0 0 14 9.333Z"/>\n</svg>\n';
21374
+ const __vite_glob_0_19 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="m14 12.731.77.27H20v2H8v-2h2.84a2.892 2.892 0 0 1-.46-.71 3.61 3.61 0 0 1-.29-1.52c0-.484.1-.964.29-1.41a3.5 3.5 0 0 1 .83-1.2 4 4 0 0 1 1.35-.84 4.74 4.74 0 0 1 1.83-.32 6 6 0 0 1 2.11.41 5 5 0 0 1 1.68 1l-.46.88a.69.69 0 0 1-.18.22.41.41 0 0 1-.25.07.69.69 0 0 1-.39-.16 5.551 5.551 0 0 0-.56-.36 4.641 4.641 0 0 0-.8-.36 3.44 3.44 0 0 0-1.14-.16 3.16 3.16 0 0 0-1.11.17 2.29 2.29 0 0 0-.8.45 1.87 1.87 0 0 0-.49.67 2.138 2.138 0 0 0-.11.79c-.023.357.08.711.29 1 .206.267.465.489.76.65.338.187.693.34 1.06.46Zm1.99 6.06c.24-.22.427-.49.55-.79.135-.315.2-.657.19-1h1.74a4.58 4.58 0 0 1-.25 1.38 4 4 0 0 1-.91 1.37 4.231 4.231 0 0 1-1.46.92 5.503 5.503 0 0 1-2 .33 6.13 6.13 0 0 1-2.5-.46 5.66 5.66 0 0 1-1.89-1.31l.54-.88a.61.61 0 0 1 .19-.17.45.45 0 0 1 .25-.07.5.5 0 0 1 .28.1c.128.077.251.16.37.25l.46.33c.19.13.391.243.6.34.245.107.5.191.76.25.328.076.664.11 1 .1a3.67 3.67 0 0 0 1.19-.18c.328-.109.63-.282.89-.51Z" clip-rule="evenodd"/>\n</svg>\n';
21375
+ const __vite_glob_0_20 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" d="M21.985 8.625h-1.75V9.5h2.625v.875h-3.5v-1.75c0-.481.394-.875.875-.875h1.75v-.875H19.36V6h2.625c.481 0 .875.394.875.875v.875a.878.878 0 0 1-.875.875ZM7.88 20h2.327l2.975-4.742h.105L16.262 20h2.328l-4.069-6.361L18.32 7.75h-2.345l-2.687 4.366h-.105L10.48 7.75H8.15l3.78 5.889L7.88 20Z"/>\n</svg>\n';
21376
+ const __vite_glob_0_21 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 28 28">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="M15.4 16.06a3.3 3.3 0 0 1-1.4.29 3.12 3.12 0 0 1-1.39-.29 2.88 2.88 0 0 1-1.05-.81 3.711 3.711 0 0 1-.65-1.25 5.659 5.659 0 0 1-.22-1.6V7H9v5.41a6.89 6.89 0 0 0 .34 2.22 5.29 5.29 0 0 0 1 1.77c.437.501.975.904 1.58 1.18A5 5 0 0 0 14 18a5 5 0 0 0 2.08-.42 4.61 4.61 0 0 0 1.57-1.18 5.27 5.27 0 0 0 1-1.77 6.89 6.89 0 0 0 .35-2.22V7h-1.69v5.41a5.659 5.659 0 0 1-.22 1.59 3.71 3.71 0 0 1-.69 1.25c-.27.34-.61.617-1 .81ZM20 19H8v2h12v-2Z" clip-rule="evenodd"/>\n</svg>\n';
21377
+ const __vite_glob_0_22 = '<svg xmlns="http://www.w3.org/2000/svg" fill="none" style="width:var(--zw-icon-width);height:var(--zw-icon-height)" viewBox="0 0 20 20">\n <path fill="var(--zw-icon-foreground)" fill-rule="evenodd" d="M18.96 10a5 5 0 0 0-5-5h-2v1.5h2a3.49 3.49 0 0 1 1.58 6.61L13.43 11h.53V9h-2.53l-7-7-1.47 1.47L17.49 18l1.47-1.47-2.34-2.34A4.93 4.93 0 0 0 18.96 10Zm-13 1h1.59L5.96 9.41V11ZM3.81 7.26A3.47 3.47 0 0 0 2.46 10a3.5 3.5 0 0 0 3.5 3.5h2V15h-2a5 5 0 0 1-3.21-8.8l1.06 1.06Z" clip-rule="evenodd"/>\n</svg>\n';
21378
+ const modules = /* @__PURE__ */ Object.assign({ "../assets/icons/alignment-center.svg": __vite_glob_0_0, "../assets/icons/alignment-justify.svg": __vite_glob_0_1, "../assets/icons/alignment-left.svg": __vite_glob_0_2, "../assets/icons/alignment-right.svg": __vite_glob_0_3, "../assets/icons/arrow.svg": __vite_glob_0_4, "../assets/icons/background-color.svg": __vite_glob_0_5, "../assets/icons/case-style.svg": __vite_glob_0_6, "../assets/icons/font-color.svg": __vite_glob_0_7, "../assets/icons/italic.svg": __vite_glob_0_8, "../assets/icons/line-height.svg": __vite_glob_0_9, "../assets/icons/link.svg": __vite_glob_0_10, "../assets/icons/list-circle.svg": __vite_glob_0_11, "../assets/icons/list-decimal.svg": __vite_glob_0_12, "../assets/icons/list-disc.svg": __vite_glob_0_13, "../assets/icons/list-latin.svg": __vite_glob_0_14, "../assets/icons/list-roman.svg": __vite_glob_0_15, "../assets/icons/list-square.svg": __vite_glob_0_16, "../assets/icons/remove-format.svg": __vite_glob_0_17, "../assets/icons/reset-styles.svg": __vite_glob_0_18, "../assets/icons/strike-through.svg": __vite_glob_0_19, "../assets/icons/superscript.svg": __vite_glob_0_20, "../assets/icons/underline.svg": __vite_glob_0_21, "../assets/icons/unlink.svg": __vite_glob_0_22 });
21386
21379
  function importIcon(name) {
21387
21380
  return modules[`../assets/icons/${name}.svg`] || "";
21388
21381
  }
@@ -23151,6 +23144,9 @@ const cloneDeep = /* @__PURE__ */ getDefaultExportFromCjs(cloneDeepExports);
23151
23144
  function copyMark(mark) {
23152
23145
  return mark.type.create(cloneDeep(mark.attrs));
23153
23146
  }
23147
+ function clone(value) {
23148
+ return JSON.parse(JSON.stringify(value));
23149
+ }
23154
23150
  function removeNodeMark({ tr: tr2, node, position, mark }) {
23155
23151
  return node.isText ? tr2.removeMark(position, position + node.nodeSize, mark) : tr2.removeNodeMark(position, mark);
23156
23152
  }
@@ -23159,12 +23155,13 @@ const NodeProcessor = Extension.create({
23159
23155
  addCommands() {
23160
23156
  return {
23161
23157
  setBlockAttributes: createCommand(({ commands: commands2, state }, name, attrs, defaults2 = {}) => {
23158
+ const safeAttrs = clone(attrs);
23162
23159
  const current = unref(commands2.getBlockAttributes(name)) ?? {};
23163
23160
  const { doc: doc2, tr: tr2 } = state;
23164
23161
  const { from: from2, to } = tr2.selection;
23165
23162
  doc2.nodesBetween(from2, to, (node, position) => {
23166
23163
  if (!NodeBlockTypeList.includes(node.type.name)) return;
23167
- tr2.setNodeAttribute(position, name, { ...defaults2, ...current, ...attrs });
23164
+ tr2.setNodeAttribute(position, name, { ...defaults2, ...current, ...safeAttrs });
23168
23165
  });
23169
23166
  }),
23170
23167
  getBlockAttributes: createCommand(({ editor }, name, defaults2) => computed(() => {
@@ -23249,7 +23246,7 @@ const NodeProcessor = Extension.create({
23249
23246
  return computed(() => {
23250
23247
  for (const attrs of unref(selectionRef)) {
23251
23248
  const value = attrs[unref(deviceRef)];
23252
- if (value || value === 0) return value;
23249
+ if (value) return value;
23253
23250
  }
23254
23251
  return unref(defaultRef);
23255
23252
  });
@@ -23819,17 +23816,21 @@ const FontSize = Mark2.create({
23819
23816
  return computed(() => unref(preset)[unref(device)].font_size.replace("px", ""));
23820
23817
  }),
23821
23818
  applyFontSize: createCommand(({ commands: commands2 }, value) => {
23822
- const device = unref(commands2.getDevice());
23823
- commands2.applyMark(this.name, { [device]: value }, {
23819
+ const targetDevices = commands2.getTargetDevices();
23820
+ const attrs = Object.fromEntries(targetDevices.map((device) => [device, value]));
23821
+ commands2.applyMark(this.name, attrs, {
23824
23822
  isAppliedToParent: (parentMark, mark) => {
23825
23823
  if (parentMark.type.name !== mark.type.name) return false;
23826
- return parentMark.attrs[device] === mark.attrs[device];
23824
+ return targetDevices.every((device) => parentMark.attrs[device] === mark.attrs[device]);
23827
23825
  },
23828
23826
  onAppliedToParent: ({ tr: tr2, node, position, mark }) => {
23829
- const attrs = { ...mark.attrs, [device]: null };
23830
- const canRemove = !Object.values(attrs).some((value2) => !!value2);
23827
+ const updatedAttrs = { ...mark.attrs };
23828
+ targetDevices.forEach((device) => {
23829
+ updatedAttrs[device] = null;
23830
+ });
23831
+ const canRemove = !Object.values(updatedAttrs).some((value2) => !!value2);
23831
23832
  if (canRemove) return false;
23832
- const updated = mark.type.create(attrs);
23833
+ const updated = mark.type.create(updatedAttrs);
23833
23834
  if (node.isText) {
23834
23835
  tr2.addMark(position, position + node.nodeSize, updated);
23835
23836
  return;
@@ -23961,7 +23962,17 @@ const DeviceManager = Extension.create({
23961
23962
  name: "device_manager",
23962
23963
  addCommands() {
23963
23964
  return {
23964
- getDevice: createCommand(() => toRef(this.options, "device"))
23965
+ getDevice: createCommand(() => {
23966
+ const deviceRef = toRef(this.options, "device");
23967
+ return computed(() => {
23968
+ const device = unref(deviceRef);
23969
+ return device === Device.ALL ? Device.DESKTOP : device;
23970
+ });
23971
+ }),
23972
+ getTargetDevices: createCommand(() => {
23973
+ const device = unref(this.options.device);
23974
+ return device === Device.ALL ? [Device.DESKTOP, Device.TABLET, Device.MOBILE] : [device];
23975
+ })
23965
23976
  };
23966
23977
  }
23967
23978
  });
@@ -24213,8 +24224,9 @@ const AlignmentExtension = Extension.create({
24213
24224
  addCommands() {
24214
24225
  return {
24215
24226
  applyAlignment: createCommand(({ commands: commands2 }, value) => {
24216
- const device = unref(commands2.getDevice());
24217
- commands2.setBlockAttributes(this.name, { [device]: value }, DEFAULTS$1);
24227
+ const targetDevices = commands2.getTargetDevices();
24228
+ const attrs = Object.fromEntries(targetDevices.map((device) => [device, value]));
24229
+ commands2.setBlockAttributes(this.name, attrs, DEFAULTS$1);
24218
24230
  }),
24219
24231
  removeAlignment: createCommand(({ commands: commands2 }) => commands2.removeBlockAttributes(this.name)),
24220
24232
  getAlignment: createCommand(({ commands: commands2 }) => {
@@ -24297,70 +24309,13 @@ const LineHeight = Extension.create({
24297
24309
  return computed(() => unref(preset)[unref(device)].line_height);
24298
24310
  }),
24299
24311
  applyLineHeight: createCommand(({ commands: commands2 }, value) => {
24300
- const device = unref(commands2.getDevice());
24301
- commands2.setBlockAttributes(this.name, { [device]: value }, DEFAULTS);
24312
+ const targetDevices = commands2.getTargetDevices();
24313
+ const attrs = Object.fromEntries(targetDevices.map((device) => [device, value]));
24314
+ commands2.setBlockAttributes(this.name, attrs, DEFAULTS);
24302
24315
  })
24303
24316
  };
24304
24317
  }
24305
24318
  });
24306
- const LetterSpacing = Mark2.create({
24307
- name: TextSetting.LETTER_SPACING,
24308
- group: MarkGroup.SETTINGS,
24309
- addAttributes: () => ({
24310
- mobile: { default: null },
24311
- tablet: { default: null },
24312
- desktop: { default: null }
24313
- }),
24314
- addCommands() {
24315
- return {
24316
- getLetterSpacing: createCommand(({ commands: commands2 }) => {
24317
- return commands2.getDeviceSettingMark(this.name, commands2.getDefaultLetterSpacing());
24318
- }),
24319
- getDefaultLetterSpacing: createCommand(({ commands: commands2 }) => {
24320
- const device = commands2.getDevice();
24321
- const preset = commands2.getPreset();
24322
- return computed(() => unref(preset)[unref(device)].letter_spacing ?? null);
24323
- }),
24324
- applyLetterSpacing: createCommand(({ commands: commands2 }, value) => {
24325
- const device = unref(commands2.getDevice());
24326
- commands2.applyMark(this.name, { [device]: value });
24327
- })
24328
- };
24329
- },
24330
- parseHTML() {
24331
- const parse = (value) => {
24332
- if (!value) return null;
24333
- const wrapperEl = unref(this.options.wrapperRef);
24334
- const converted = convertLetterSpacing(value, wrapperEl);
24335
- return `${converted}px`;
24336
- };
24337
- return [
24338
- {
24339
- tag: '[style*="--zw-letter-spacing"]',
24340
- getAttrs: ({ style: style2 }) => ({
24341
- mobile: parse(style2.getPropertyValue("--zw-letter-spacing-mobile")),
24342
- tablet: parse(style2.getPropertyValue("--zw-letter-spacing-tablet")),
24343
- desktop: parse(style2.getPropertyValue("--zw-letter-spacing-desktop"))
24344
- })
24345
- },
24346
- {
24347
- style: "letter-spacing",
24348
- getAttrs: (input) => {
24349
- const value = parse(input);
24350
- return { desktop: value, tablet: value, mobile: value };
24351
- }
24352
- }
24353
- ];
24354
- },
24355
- renderHTML({ HTMLAttributes: attrs }) {
24356
- const addUnits = (value) => value ? `${value}px` : null;
24357
- return renderMark({
24358
- letter_spacing_mobile: addUnits(attrs.mobile),
24359
- letter_spacing_tablet: addUnits(attrs.tablet),
24360
- letter_spacing_desktop: addUnits(attrs.desktop)
24361
- });
24362
- }
24363
- });
24364
24319
  const ListItem$1 = Node$1.create({
24365
24320
  name: "listItem",
24366
24321
  addOptions() {
@@ -25080,7 +25035,6 @@ function buildExtensions(options) {
25080
25035
  LineHeight.configure({
25081
25036
  wrapperRef: options.wrapperRef
25082
25037
  }),
25083
- LetterSpacing,
25084
25038
  Link.configure({
25085
25039
  preset: toRef(presetsMap, "link"),
25086
25040
  basePresetClass: options.basePresetClass,
@@ -26090,8 +26044,8 @@ function tooltip(el, { value, modifiers: modifiers2 }) {
26090
26044
  if (modifiers2.xs) el.dataset.tooltipSize = "xs";
26091
26045
  if (modifiers2.lg) el.dataset.tooltipSize = "lg";
26092
26046
  }
26093
- const _hoisted_1$o = ["disabled"];
26094
- const _sfc_main$J = {
26047
+ const _hoisted_1$n = ["disabled"];
26048
+ const _sfc_main$I = {
26095
26049
  __name: "Button",
26096
26050
  props: {
26097
26051
  skin: {
@@ -26132,13 +26086,13 @@ const _sfc_main$J = {
26132
26086
  onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("click", $event))
26133
26087
  }, [
26134
26088
  renderSlot(_ctx.$slots, "default", {}, void 0, true)
26135
- ], 10, _hoisted_1$o);
26089
+ ], 10, _hoisted_1$n);
26136
26090
  };
26137
26091
  }
26138
26092
  };
26139
- const Button = /* @__PURE__ */ _export_sfc(_sfc_main$J, [["__scopeId", "data-v-9ea2a71b"]]);
26140
- const _hoisted_1$n = { class: "zw-button-toggle" };
26141
- const _sfc_main$I = {
26093
+ const Button = /* @__PURE__ */ _export_sfc(_sfc_main$I, [["__scopeId", "data-v-9ea2a71b"]]);
26094
+ const _hoisted_1$m = { class: "zw-button-toggle" };
26095
+ const _sfc_main$H = {
26142
26096
  __name: "ButtonToggle",
26143
26097
  props: {
26144
26098
  value: {
@@ -26153,7 +26107,7 @@ const _sfc_main$I = {
26153
26107
  emits: ["change"],
26154
26108
  setup(__props) {
26155
26109
  return (_ctx, _cache) => {
26156
- return openBlock(), createElementBlock("div", _hoisted_1$n, [
26110
+ return openBlock(), createElementBlock("div", _hoisted_1$m, [
26157
26111
  (openBlock(true), createElementBlock(Fragment$1, null, renderList(__props.options, (option) => {
26158
26112
  return renderSlot(_ctx.$slots, "option", {
26159
26113
  option,
@@ -26165,9 +26119,9 @@ const _sfc_main$I = {
26165
26119
  };
26166
26120
  }
26167
26121
  };
26168
- const ButtonToggle = /* @__PURE__ */ _export_sfc(_sfc_main$I, [["__scopeId", "data-v-bbdc7b20"]]);
26169
- const _hoisted_1$m = ["innerHTML"];
26170
- const _sfc_main$H = {
26122
+ const ButtonToggle = /* @__PURE__ */ _export_sfc(_sfc_main$H, [["__scopeId", "data-v-bbdc7b20"]]);
26123
+ const _hoisted_1$l = ["innerHTML"];
26124
+ const _sfc_main$G = {
26171
26125
  __name: "Icon",
26172
26126
  props: {
26173
26127
  name: {
@@ -26207,11 +26161,11 @@ const _sfc_main$H = {
26207
26161
  class: normalizeClass(["zw-icon", iconClasses.value]),
26208
26162
  style: normalizeStyle(iconStyles.value),
26209
26163
  innerHTML: source.value
26210
- }, null, 14, _hoisted_1$m);
26164
+ }, null, 14, _hoisted_1$l);
26211
26165
  };
26212
26166
  }
26213
26167
  };
26214
- const Icon = /* @__PURE__ */ _export_sfc(_sfc_main$H, [["__scopeId", "data-v-09bee8af"]]);
26168
+ const Icon = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["__scopeId", "data-v-09bee8af"]]);
26215
26169
  function useValidator({ validations }) {
26216
26170
  const error = ref(null);
26217
26171
  function validate() {
@@ -26351,7 +26305,7 @@ function useScrollView() {
26351
26305
  }
26352
26306
  return { scrollToElement };
26353
26307
  }
26354
- const _sfc_main$G = {
26308
+ const _sfc_main$F = {
26355
26309
  __name: "ScrollView",
26356
26310
  setup(__props) {
26357
26311
  const hostRef = ref(null);
@@ -26374,9 +26328,9 @@ const _sfc_main$G = {
26374
26328
  };
26375
26329
  }
26376
26330
  };
26377
- const ScrollView = /* @__PURE__ */ _export_sfc(_sfc_main$G, [["__scopeId", "data-v-07fd5408"]]);
26378
- const _hoisted_1$l = ["for"];
26379
- const _sfc_main$F = {
26331
+ const ScrollView = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["__scopeId", "data-v-07fd5408"]]);
26332
+ const _hoisted_1$k = ["for"];
26333
+ const _sfc_main$E = {
26380
26334
  __name: "FieldLabel",
26381
26335
  props: {
26382
26336
  fieldId: {
@@ -26392,13 +26346,13 @@ const _sfc_main$F = {
26392
26346
  for: __props.fieldId
26393
26347
  }, [
26394
26348
  renderSlot(_ctx.$slots, "default", {}, void 0, true)
26395
- ], 8, _hoisted_1$l);
26349
+ ], 8, _hoisted_1$k);
26396
26350
  };
26397
26351
  }
26398
26352
  };
26399
- const FieldLabel = /* @__PURE__ */ _export_sfc(_sfc_main$F, [["__scopeId", "data-v-7ab8105c"]]);
26400
- const _hoisted_1$k = ["id", "min", "max", "step", "value"];
26401
- const _sfc_main$E = {
26353
+ const FieldLabel = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["__scopeId", "data-v-7ab8105c"]]);
26354
+ const _hoisted_1$j = ["id", "min", "max", "step", "value"];
26355
+ const _sfc_main$D = {
26402
26356
  __name: "Range",
26403
26357
  props: {
26404
26358
  min: {
@@ -26454,19 +26408,19 @@ const _sfc_main$E = {
26454
26408
  value: unref(tempValue),
26455
26409
  style: normalizeStyle(inputStyles.value),
26456
26410
  onInput: _cache[0] || (_cache[0] = ($event) => update($event))
26457
- }, null, 44, _hoisted_1$k);
26411
+ }, null, 44, _hoisted_1$j);
26458
26412
  };
26459
26413
  }
26460
26414
  };
26461
- const Range = /* @__PURE__ */ _export_sfc(_sfc_main$E, [["__scopeId", "data-v-c0059745"]]);
26462
- const _hoisted_1$j = ["id", "disabled", "value"];
26463
- const _hoisted_2$7 = { class: "zw-number-field__controls" };
26415
+ const Range = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__scopeId", "data-v-c0059745"]]);
26416
+ const _hoisted_1$i = ["id", "disabled", "value"];
26417
+ const _hoisted_2$6 = { class: "zw-number-field__controls" };
26464
26418
  const _hoisted_3$2 = { class: "zw-number-field__buttons" };
26465
26419
  const _hoisted_4$1 = {
26466
26420
  key: 0,
26467
26421
  class: "zw-number-field__units"
26468
26422
  };
26469
- const _sfc_main$D = {
26423
+ const _sfc_main$C = {
26470
26424
  __name: "NumberField",
26471
26425
  props: {
26472
26426
  value: {
@@ -26539,8 +26493,8 @@ const _sfc_main$D = {
26539
26493
  disabled: __props.disabled,
26540
26494
  value: tempValue.value,
26541
26495
  onChange
26542
- }, null, 40, _hoisted_1$j),
26543
- createElementVNode("div", _hoisted_2$7, [
26496
+ }, null, 40, _hoisted_1$i),
26497
+ createElementVNode("div", _hoisted_2$6, [
26544
26498
  createElementVNode("div", _hoisted_3$2, [
26545
26499
  createVNode(unref(Button), {
26546
26500
  class: "zw-number-field__increment-button",
@@ -26563,7 +26517,7 @@ const _sfc_main$D = {
26563
26517
  };
26564
26518
  }
26565
26519
  };
26566
- const NumberField = /* @__PURE__ */ _export_sfc(_sfc_main$D, [["__scopeId", "data-v-962cf185"]]);
26520
+ const NumberField = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["__scopeId", "data-v-e462abc1"]]);
26567
26521
  const min = Math.min;
26568
26522
  const max = Math.max;
26569
26523
  const round = Math.round;
@@ -28020,7 +27974,7 @@ function useFloating(reference2, floating, options) {
28020
27974
  update
28021
27975
  };
28022
27976
  }
28023
- const _sfc_main$C = {
27977
+ const _sfc_main$B = {
28024
27978
  __name: "ModalFloating",
28025
27979
  props: {
28026
27980
  referenceRef: {
@@ -28086,8 +28040,8 @@ const _sfc_main$C = {
28086
28040
  };
28087
28041
  }
28088
28042
  };
28089
- const ModalFloating = /* @__PURE__ */ _export_sfc(_sfc_main$C, [["__scopeId", "data-v-b3c0b9ad"]]);
28090
- const _sfc_main$B = {
28043
+ const ModalFloating = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["__scopeId", "data-v-b3c0b9ad"]]);
28044
+ const _sfc_main$A = {
28091
28045
  __name: "Modal",
28092
28046
  props: {
28093
28047
  referenceRef: {
@@ -28192,16 +28146,16 @@ const _sfc_main$B = {
28192
28146
  };
28193
28147
  }
28194
28148
  };
28195
- const Modal = /* @__PURE__ */ _export_sfc(_sfc_main$B, [["__scopeId", "data-v-72ecfd23"]]);
28196
- const _hoisted_1$i = { class: "zw-field" };
28197
- const _hoisted_2$6 = ["for"];
28149
+ const Modal = /* @__PURE__ */ _export_sfc(_sfc_main$A, [["__scopeId", "data-v-72ecfd23"]]);
28150
+ const _hoisted_1$h = { class: "zw-field" };
28151
+ const _hoisted_2$5 = ["for"];
28198
28152
  const _hoisted_3$1 = ["value", "id", "placeholder"];
28199
28153
  const _hoisted_4 = {
28200
28154
  key: 0,
28201
28155
  class: "zw-field__label--error",
28202
28156
  "data-test-selector": "error"
28203
28157
  };
28204
- const _sfc_main$A = {
28158
+ const _sfc_main$z = {
28205
28159
  __name: "TextField",
28206
28160
  props: {
28207
28161
  value: {
@@ -28232,12 +28186,12 @@ const _sfc_main$A = {
28232
28186
  return props.label.toLowerCase().replace(/[^a-zA-Z0-9]+(.)/g, (m, chr) => chr.toUpperCase());
28233
28187
  });
28234
28188
  return (_ctx, _cache) => {
28235
- return openBlock(), createElementBlock("div", _hoisted_1$i, [
28189
+ return openBlock(), createElementBlock("div", _hoisted_1$h, [
28236
28190
  createElementVNode("label", {
28237
28191
  class: "zw-field__label",
28238
28192
  for: fieldId.value,
28239
28193
  "data-test-selector": "label"
28240
- }, toDisplayString(__props.label), 9, _hoisted_2$6),
28194
+ }, toDisplayString(__props.label), 9, _hoisted_2$5),
28241
28195
  createElementVNode("input", {
28242
28196
  class: "zw-field__input",
28243
28197
  type: "text",
@@ -28252,11 +28206,11 @@ const _sfc_main$A = {
28252
28206
  };
28253
28207
  }
28254
28208
  };
28255
- const TextField = /* @__PURE__ */ _export_sfc(_sfc_main$A, [["__scopeId", "data-v-dfa0d6f0"]]);
28256
- const _hoisted_1$h = { class: "zw-checkbox" };
28257
- const _hoisted_2$5 = ["checked"];
28209
+ const TextField = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["__scopeId", "data-v-dfa0d6f0"]]);
28210
+ const _hoisted_1$g = { class: "zw-checkbox" };
28211
+ const _hoisted_2$4 = ["checked"];
28258
28212
  const _hoisted_3 = { class: "zw-checkbox__label" };
28259
- const _sfc_main$z = {
28213
+ const _sfc_main$y = {
28260
28214
  __name: "Checkbox",
28261
28215
  props: {
28262
28216
  value: {
@@ -28275,20 +28229,20 @@ const _sfc_main$z = {
28275
28229
  const emit = __emit;
28276
28230
  const onCheckedChanged = () => emit("input", !props.value);
28277
28231
  return (_ctx, _cache) => {
28278
- return openBlock(), createElementBlock("label", _hoisted_1$h, [
28232
+ return openBlock(), createElementBlock("label", _hoisted_1$g, [
28279
28233
  createElementVNode("input", {
28280
28234
  class: "zw-checkbox__field",
28281
28235
  type: "checkbox",
28282
28236
  checked: __props.value,
28283
28237
  onClick: onCheckedChanged
28284
- }, null, 8, _hoisted_2$5),
28238
+ }, null, 8, _hoisted_2$4),
28285
28239
  _cache[0] || (_cache[0] = createElementVNode("span", { class: "zw-checkbox__indicator zw-margin-right--xs" }, null, -1)),
28286
28240
  createElementVNode("span", _hoisted_3, toDisplayString(__props.label), 1)
28287
28241
  ]);
28288
28242
  };
28289
28243
  }
28290
28244
  };
28291
- const Checkbox = /* @__PURE__ */ _export_sfc(_sfc_main$z, [["__scopeId", "data-v-e1624b5d"]]);
28245
+ const Checkbox = /* @__PURE__ */ _export_sfc(_sfc_main$y, [["__scopeId", "data-v-e1624b5d"]]);
28292
28246
  const InjectionTokens = Object.freeze({
28293
28247
  ACTIVE_MANAGER: Symbol("dropdownActiveManager"),
28294
28248
  TOGGLER: Symbol("dropdownToggler"),
@@ -28315,13 +28269,13 @@ function useDropdownEntityTitle(entityRef) {
28315
28269
  return ((_a = entityRef.value) == null ? void 0 : _a.title) || ((_b = entityRef.value) == null ? void 0 : _b.id) || "";
28316
28270
  });
28317
28271
  }
28318
- const _hoisted_1$g = { class: "zw-dropdown__activator-title zw-text--truncate" };
28319
- const _hoisted_2$4 = {
28272
+ const _hoisted_1$f = { class: "zw-dropdown__activator-title zw-text--truncate" };
28273
+ const _hoisted_2$3 = {
28320
28274
  key: 0,
28321
28275
  class: "zw-dropdown__customized-indicator",
28322
28276
  "data-test-selector": "customizedIndicator"
28323
28277
  };
28324
- const _sfc_main$y = {
28278
+ const _sfc_main$x = {
28325
28279
  __name: "DropdownActivator",
28326
28280
  props: {
28327
28281
  color: {
@@ -28357,8 +28311,8 @@ const _sfc_main$y = {
28357
28311
  onClick: unref(dropdownToggler).open
28358
28312
  }, {
28359
28313
  default: withCtx(() => [
28360
- createElementVNode("span", _hoisted_1$g, toDisplayString(unref(activeOptionTitle)), 1),
28361
- __props.isCustomized ? withDirectives((openBlock(), createElementBlock("span", _hoisted_2$4, null, 512)), [
28314
+ createElementVNode("span", _hoisted_1$f, toDisplayString(unref(activeOptionTitle)), 1),
28315
+ __props.isCustomized ? withDirectives((openBlock(), createElementBlock("span", _hoisted_2$3, null, 512)), [
28362
28316
  [
28363
28317
  unref(tooltip),
28364
28318
  "Style differs from Page Styles",
@@ -28379,8 +28333,8 @@ const _sfc_main$y = {
28379
28333
  };
28380
28334
  }
28381
28335
  };
28382
- const DropdownActivator = /* @__PURE__ */ _export_sfc(_sfc_main$y, [["__scopeId", "data-v-678de368"]]);
28383
- const _sfc_main$x = {
28336
+ const DropdownActivator = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["__scopeId", "data-v-678de368"]]);
28337
+ const _sfc_main$w = {
28384
28338
  __name: "DropdownOption",
28385
28339
  props: {
28386
28340
  option: {
@@ -28431,10 +28385,10 @@ const _sfc_main$x = {
28431
28385
  };
28432
28386
  }
28433
28387
  };
28434
- const DropdownOption = /* @__PURE__ */ _export_sfc(_sfc_main$x, [["__scopeId", "data-v-2e8320d2"]]);
28435
- const _hoisted_1$f = { class: "zw-dropdown__group" };
28436
- const _hoisted_2$3 = { class: "zw-dropdown__group-title" };
28437
- const _sfc_main$w = {
28388
+ const DropdownOption = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["__scopeId", "data-v-2e8320d2"]]);
28389
+ const _hoisted_1$e = { class: "zw-dropdown__group" };
28390
+ const _hoisted_2$2 = { class: "zw-dropdown__group-title" };
28391
+ const _sfc_main$v = {
28438
28392
  __name: "DropdownGroup",
28439
28393
  props: {
28440
28394
  group: {
@@ -28446,8 +28400,8 @@ const _sfc_main$w = {
28446
28400
  const props = __props;
28447
28401
  const groupTitle = useDropdownEntityTitle(toRef(props, "group"));
28448
28402
  return (_ctx, _cache) => {
28449
- return openBlock(), createElementBlock("div", _hoisted_1$f, [
28450
- createElementVNode("p", _hoisted_2$3, toDisplayString(unref(groupTitle)), 1),
28403
+ return openBlock(), createElementBlock("div", _hoisted_1$e, [
28404
+ createElementVNode("p", _hoisted_2$2, toDisplayString(unref(groupTitle)), 1),
28451
28405
  (openBlock(true), createElementBlock(Fragment$1, null, renderList(__props.group.options, (option) => {
28452
28406
  return renderSlot(_ctx.$slots, "option", { option }, () => [
28453
28407
  createVNode(unref(DropdownOption), { option }, null, 8, ["option"])
@@ -28457,18 +28411,18 @@ const _sfc_main$w = {
28457
28411
  };
28458
28412
  }
28459
28413
  };
28460
- const DropdownGroup = /* @__PURE__ */ _export_sfc(_sfc_main$w, [["__scopeId", "data-v-2239aa7b"]]);
28461
- const _sfc_main$v = {};
28462
- const _hoisted_1$e = { class: "zw-dropdown__divider" };
28414
+ const DropdownGroup = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["__scopeId", "data-v-2239aa7b"]]);
28415
+ const _sfc_main$u = {};
28416
+ const _hoisted_1$d = { class: "zw-dropdown__divider" };
28463
28417
  function _sfc_render$1(_ctx, _cache) {
28464
- return openBlock(), createElementBlock("div", _hoisted_1$e);
28418
+ return openBlock(), createElementBlock("div", _hoisted_1$d);
28465
28419
  }
28466
- const DropdownDivider = /* @__PURE__ */ _export_sfc(_sfc_main$v, [["render", _sfc_render$1], ["__scopeId", "data-v-91a22273"]]);
28467
- const _hoisted_1$d = {
28420
+ const DropdownDivider = /* @__PURE__ */ _export_sfc(_sfc_main$u, [["render", _sfc_render$1], ["__scopeId", "data-v-91a22273"]]);
28421
+ const _hoisted_1$c = {
28468
28422
  class: "zw-dropdown__menu",
28469
28423
  "data-test-selector": "dropdownMenu"
28470
28424
  };
28471
- const _sfc_main$u = {
28425
+ const _sfc_main$t = {
28472
28426
  __name: "DropdownMenu",
28473
28427
  props: {
28474
28428
  options: {
@@ -28481,7 +28435,7 @@ const _sfc_main$u = {
28481
28435
  return (_ctx, _cache) => {
28482
28436
  return openBlock(), createBlock(unref(ScrollView), null, {
28483
28437
  default: withCtx(() => [
28484
- createElementVNode("div", _hoisted_1$d, [
28438
+ createElementVNode("div", _hoisted_1$c, [
28485
28439
  (openBlock(true), createElementBlock(Fragment$1, null, renderList(__props.options, (option, index) => {
28486
28440
  return openBlock(), createElementBlock(Fragment$1, null, [
28487
28441
  option.options ? (openBlock(), createElementBlock(Fragment$1, { key: 0 }, [
@@ -28512,7 +28466,7 @@ const _sfc_main$u = {
28512
28466
  };
28513
28467
  }
28514
28468
  };
28515
- const _sfc_main$t = {
28469
+ const _sfc_main$s = {
28516
28470
  __name: "Dropdown",
28517
28471
  props: {
28518
28472
  value: {
@@ -28576,7 +28530,7 @@ const _sfc_main$t = {
28576
28530
  "reference-ref": dropdownRef.value
28577
28531
  }, {
28578
28532
  default: withCtx(() => [
28579
- createVNode(unref(_sfc_main$u), { options: __props.options }, {
28533
+ createVNode(unref(_sfc_main$t), { options: __props.options }, {
28580
28534
  option: withCtx((attrs) => [
28581
28535
  renderSlot(_ctx.$slots, "option", normalizeProps(guardReactiveProps(attrs)), void 0, true)
28582
28536
  ]),
@@ -28589,7 +28543,7 @@ const _sfc_main$t = {
28589
28543
  };
28590
28544
  }
28591
28545
  };
28592
- const Dropdown = /* @__PURE__ */ _export_sfc(_sfc_main$t, [["__scopeId", "data-v-0d65726d"]]);
28546
+ const Dropdown = /* @__PURE__ */ _export_sfc(_sfc_main$s, [["__scopeId", "data-v-0d65726d"]]);
28593
28547
  function usePickerApi({ pickerRef, colorRef, onChange, onClosed, onBeforeOpened }) {
28594
28548
  const isOpened = computed(() => {
28595
28549
  var _a;
@@ -28654,7 +28608,7 @@ function usePickerHotkeys({ isOpenedRef, onCancel, onApply }) {
28654
28608
  options: { capture: true }
28655
28609
  });
28656
28610
  }
28657
- const _sfc_main$s = {
28611
+ const _sfc_main$r = {
28658
28612
  __name: "ColorPicker",
28659
28613
  props: {
28660
28614
  value: {
@@ -28725,11 +28679,11 @@ function useRecentFonts({ limit }) {
28725
28679
  const isEmpty = computed(() => !fonts.value.length);
28726
28680
  return { fonts, isEmpty, add };
28727
28681
  }
28728
- const _hoisted_1$c = {
28682
+ const _hoisted_1$b = {
28729
28683
  key: 0,
28730
28684
  class: "zw-dropdown__default-option"
28731
28685
  };
28732
- const _sfc_main$r = {
28686
+ const _sfc_main$q = {
28733
28687
  __name: "FontFamilyControl",
28734
28688
  setup(__props) {
28735
28689
  const fonts = inject(InjectionTokens$1.FONTS);
@@ -28784,7 +28738,7 @@ const _sfc_main$r = {
28784
28738
  }, {
28785
28739
  default: withCtx(() => [
28786
28740
  createTextVNode(toDisplayString(option.id) + " ", 1),
28787
- option.isDefault ? (openBlock(), createElementBlock("span", _hoisted_1$c, "(Default)")) : createCommentVNode("", true)
28741
+ option.isDefault ? (openBlock(), createElementBlock("span", _hoisted_1$b, "(Default)")) : createCommentVNode("", true)
28788
28742
  ]),
28789
28743
  _: 2
28790
28744
  }, 1032, ["option", "style"])), [
@@ -28798,12 +28752,12 @@ const _sfc_main$r = {
28798
28752
  };
28799
28753
  }
28800
28754
  };
28801
- const FontFamilyControl = /* @__PURE__ */ _export_sfc(_sfc_main$r, [["__scopeId", "data-v-e3657967"]]);
28802
- const _hoisted_1$b = {
28755
+ const FontFamilyControl = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["__scopeId", "data-v-e3657967"]]);
28756
+ const _hoisted_1$a = {
28803
28757
  key: 0,
28804
28758
  class: "zw-dropdown__default-option"
28805
28759
  };
28806
- const _sfc_main$q = {
28760
+ const _sfc_main$p = {
28807
28761
  __name: "FontWeightControl",
28808
28762
  setup(__props) {
28809
28763
  const editor = inject(InjectionTokens$1.EDITOR);
@@ -28833,7 +28787,7 @@ const _sfc_main$q = {
28833
28787
  }, {
28834
28788
  default: withCtx(() => [
28835
28789
  createTextVNode(toDisplayString(option.id) + " ", 1),
28836
- option.isDefault ? (openBlock(), createElementBlock("span", _hoisted_1$b, "(Default)")) : createCommentVNode("", true)
28790
+ option.isDefault ? (openBlock(), createElementBlock("span", _hoisted_1$a, "(Default)")) : createCommentVNode("", true)
28837
28791
  ]),
28838
28792
  _: 2
28839
28793
  }, 1032, ["option"])), [
@@ -28847,12 +28801,12 @@ const _sfc_main$q = {
28847
28801
  };
28848
28802
  }
28849
28803
  };
28850
- const FontWeightControl = /* @__PURE__ */ _export_sfc(_sfc_main$q, [["__scopeId", "data-v-6c8237c7"]]);
28851
- const _hoisted_1$a = {
28804
+ const FontWeightControl = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__scopeId", "data-v-6c8237c7"]]);
28805
+ const _hoisted_1$9 = {
28852
28806
  key: 0,
28853
28807
  class: "zw-dropdown__default-option"
28854
28808
  };
28855
- const _sfc_main$p = {
28809
+ const _sfc_main$o = {
28856
28810
  __name: "FontSizeControl",
28857
28811
  setup(__props) {
28858
28812
  const fontSizes = inject(InjectionTokens$1.FONT_SIZES);
@@ -28883,7 +28837,7 @@ const _sfc_main$p = {
28883
28837
  }, {
28884
28838
  default: withCtx(() => [
28885
28839
  createTextVNode(toDisplayString(option.title) + " ", 1),
28886
- option.isDefault ? (openBlock(), createElementBlock("span", _hoisted_1$a, "(Default)")) : createCommentVNode("", true)
28840
+ option.isDefault ? (openBlock(), createElementBlock("span", _hoisted_1$9, "(Default)")) : createCommentVNode("", true)
28887
28841
  ]),
28888
28842
  _: 2
28889
28843
  }, 1032, ["option"])), [
@@ -28897,13 +28851,13 @@ const _sfc_main$p = {
28897
28851
  };
28898
28852
  }
28899
28853
  };
28900
- const FontSizeControl = /* @__PURE__ */ _export_sfc(_sfc_main$p, [["__scopeId", "data-v-779fe48e"]]);
28901
- const _hoisted_1$9 = {
28854
+ const FontSizeControl = /* @__PURE__ */ _export_sfc(_sfc_main$o, [["__scopeId", "data-v-779fe48e"]]);
28855
+ const _hoisted_1$8 = {
28902
28856
  key: 0,
28903
28857
  class: "zw-button__customized-indicator",
28904
28858
  "data-test-selector": "customizedIndicator"
28905
28859
  };
28906
- const _sfc_main$o = {
28860
+ const _sfc_main$n = {
28907
28861
  __name: "FontColorControl",
28908
28862
  setup(__props) {
28909
28863
  const editor = inject(InjectionTokens$1.EDITOR);
@@ -28911,7 +28865,7 @@ const _sfc_main$o = {
28911
28865
  const isCustomized = editor.commands.isSettingCustomized(TextSetting.FONT_COLOR);
28912
28866
  const apply2 = (color) => editor.chain().applyFontColor(color).run();
28913
28867
  return (_ctx, _cache) => {
28914
- return openBlock(), createBlock(unref(_sfc_main$s), {
28868
+ return openBlock(), createBlock(unref(_sfc_main$r), {
28915
28869
  value: unref(currentValue),
28916
28870
  onChange: apply2
28917
28871
  }, {
@@ -28929,7 +28883,7 @@ const _sfc_main$o = {
28929
28883
  size: "28px",
28930
28884
  "auto-color": ""
28931
28885
  }),
28932
- unref(isCustomized) ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$9, null, 512)), [
28886
+ unref(isCustomized) ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$8, null, 512)), [
28933
28887
  [
28934
28888
  unref(tooltip),
28935
28889
  "Style differs from Page Styles",
@@ -28948,14 +28902,14 @@ const _sfc_main$o = {
28948
28902
  };
28949
28903
  }
28950
28904
  };
28951
- const _sfc_main$n = {
28905
+ const _sfc_main$m = {
28952
28906
  __name: "BackgroundColorControl",
28953
28907
  setup(__props) {
28954
28908
  const editor = inject(InjectionTokens$1.EDITOR);
28955
28909
  const currentValue = editor.commands.getBackgroundColor();
28956
28910
  const apply2 = (color) => editor.chain().applyBackgroundColor(color).run();
28957
28911
  return (_ctx, _cache) => {
28958
- return openBlock(), createBlock(unref(_sfc_main$s), {
28912
+ return openBlock(), createBlock(unref(_sfc_main$r), {
28959
28913
  value: unref(currentValue),
28960
28914
  onChange: apply2
28961
28915
  }, {
@@ -28983,12 +28937,12 @@ const _sfc_main$n = {
28983
28937
  };
28984
28938
  }
28985
28939
  };
28986
- const _hoisted_1$8 = {
28940
+ const _hoisted_1$7 = {
28987
28941
  key: 0,
28988
28942
  class: "zw-button__customized-indicator",
28989
28943
  "data-test-selector": "customizedIndicator"
28990
28944
  };
28991
- const _sfc_main$m = {
28945
+ const _sfc_main$l = {
28992
28946
  __name: "ItalicControl",
28993
28947
  setup(__props) {
28994
28948
  const editor = inject(InjectionTokens$1.EDITOR);
@@ -29011,7 +28965,7 @@ const _sfc_main$m = {
29011
28965
  size: "28px",
29012
28966
  "auto-color": ""
29013
28967
  }),
29014
- unref(isCustomized) ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$8, null, 512)), [
28968
+ unref(isCustomized) ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$7, null, 512)), [
29015
28969
  [
29016
28970
  unref(tooltip),
29017
28971
  "Style differs from Page Styles",
@@ -29027,12 +28981,12 @@ const _sfc_main$m = {
29027
28981
  };
29028
28982
  }
29029
28983
  };
29030
- const _hoisted_1$7 = {
28984
+ const _hoisted_1$6 = {
29031
28985
  key: 0,
29032
28986
  class: "zw-button__customized-indicator",
29033
28987
  "data-test-selector": "customizedIndicator"
29034
28988
  };
29035
- const _sfc_main$l = {
28989
+ const _sfc_main$k = {
29036
28990
  __name: "UnderlineControl",
29037
28991
  setup(__props) {
29038
28992
  const editor = inject(InjectionTokens$1.EDITOR);
@@ -29053,7 +29007,7 @@ const _sfc_main$l = {
29053
29007
  size: "28px",
29054
29008
  "auto-color": ""
29055
29009
  }),
29056
- unref(isCustomized) ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$7, null, 512)), [
29010
+ unref(isCustomized) ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$6, null, 512)), [
29057
29011
  [
29058
29012
  unref(tooltip),
29059
29013
  "Style differs from Page Styles",
@@ -29069,7 +29023,7 @@ const _sfc_main$l = {
29069
29023
  };
29070
29024
  }
29071
29025
  };
29072
- const _sfc_main$k = {
29026
+ const _sfc_main$j = {
29073
29027
  __name: "StrikeThroughControl",
29074
29028
  setup(__props) {
29075
29029
  const editor = inject(InjectionTokens$1.EDITOR);
@@ -29096,7 +29050,7 @@ const _sfc_main$k = {
29096
29050
  };
29097
29051
  }
29098
29052
  };
29099
- const _sfc_main$j = {
29053
+ const _sfc_main$i = {
29100
29054
  __name: "SuperscriptControl",
29101
29055
  setup(__props) {
29102
29056
  const editor = inject(InjectionTokens$1.EDITOR);
@@ -29123,7 +29077,7 @@ const _sfc_main$j = {
29123
29077
  };
29124
29078
  }
29125
29079
  };
29126
- const _sfc_main$i = {
29080
+ const _sfc_main$h = {
29127
29081
  __name: "CaseStyleControl",
29128
29082
  setup(__props) {
29129
29083
  const styles = [
@@ -29162,7 +29116,7 @@ const _sfc_main$i = {
29162
29116
  };
29163
29117
  }
29164
29118
  };
29165
- const _sfc_main$h = {
29119
+ const _sfc_main$g = {
29166
29120
  __name: "AlignmentControl",
29167
29121
  emits: ["applied"],
29168
29122
  setup(__props, { emit: __emit }) {
@@ -29237,13 +29191,13 @@ const _sfc_main$h = {
29237
29191
  };
29238
29192
  }
29239
29193
  };
29240
- const _hoisted_1$6 = {
29194
+ const _hoisted_1$5 = {
29241
29195
  key: 0,
29242
29196
  class: "zw-button__customized-indicator",
29243
29197
  "data-test-selector": "customizedIndicator"
29244
29198
  };
29245
- const _hoisted_2$2 = { class: "zw-line-height-control__row" };
29246
- const _sfc_main$g = {
29199
+ const _hoisted_2$1 = { class: "zw-line-height-control__row" };
29200
+ const _sfc_main$f = {
29247
29201
  __name: "LineHeightControl",
29248
29202
  setup(__props) {
29249
29203
  const editor = inject(InjectionTokens$1.EDITOR);
@@ -29271,7 +29225,7 @@ const _sfc_main$g = {
29271
29225
  size: "28px",
29272
29226
  "auto-color": ""
29273
29227
  }),
29274
- unref(isCustomized) ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$6, null, 512)), [
29228
+ unref(isCustomized) ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$5, null, 512)), [
29275
29229
  [
29276
29230
  unref(tooltip),
29277
29231
  "Style differs from Page Styles",
@@ -29299,7 +29253,7 @@ const _sfc_main$g = {
29299
29253
  ])),
29300
29254
  _: 1
29301
29255
  }),
29302
- createElementVNode("div", _hoisted_2$2, [
29256
+ createElementVNode("div", _hoisted_2$1, [
29303
29257
  createVNode(unref(Range), {
29304
29258
  class: "zw-line-height-control__range",
29305
29259
  step: "0.1",
@@ -29325,101 +29279,7 @@ const _sfc_main$g = {
29325
29279
  };
29326
29280
  }
29327
29281
  };
29328
- const LineHeightControl = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__scopeId", "data-v-643242a1"]]);
29329
- const _hoisted_1$5 = {
29330
- key: 0,
29331
- class: "zw-button__customized-indicator",
29332
- "data-test-selector": "customizedIndicator"
29333
- };
29334
- const _hoisted_2$1 = { class: "zw-letter-spacing-control__row" };
29335
- const MIN_VALUE = -1.6;
29336
- const MAX_VALUE = 3.2;
29337
- const STEP = 0.1;
29338
- const _sfc_main$f = {
29339
- __name: "LetterSpacingControl",
29340
- setup(__props) {
29341
- const editor = inject(InjectionTokens$1.EDITOR);
29342
- const wrapperRef = ref(null);
29343
- const toggler = useModalToggler();
29344
- const valueRef = editor.commands.getLetterSpacing();
29345
- const currentValue = computed(() => valueRef.value ?? 0);
29346
- const isCustomized = editor.commands.isSettingCustomized(TextSetting.LETTER_SPACING);
29347
- const apply2 = (value) => editor.commands.applyLetterSpacing(value);
29348
- return (_ctx, _cache) => {
29349
- return openBlock(), createElementBlock("div", {
29350
- class: "zw-position--relative",
29351
- ref_key: "wrapperRef",
29352
- ref: wrapperRef
29353
- }, [
29354
- withDirectives((openBlock(), createBlock(unref(Button), {
29355
- class: "zw-position--relative",
29356
- icon: "",
29357
- skin: "toolbar",
29358
- active: unref(toggler).isOpened,
29359
- onClick: unref(toggler).open
29360
- }, {
29361
- default: withCtx(() => [
29362
- createVNode(unref(Icon), {
29363
- name: "letter-spacing",
29364
- size: "28px",
29365
- "auto-color": ""
29366
- }),
29367
- unref(isCustomized) ? withDirectives((openBlock(), createElementBlock("span", _hoisted_1$5, null, 512)), [
29368
- [
29369
- unref(tooltip),
29370
- "Style differs from Page Styles",
29371
- void 0,
29372
- { lg: true }
29373
- ]
29374
- ]) : createCommentVNode("", true)
29375
- ]),
29376
- _: 1
29377
- }, 8, ["active", "onClick"])), [
29378
- [unref(tooltip), "Letter Spacing"]
29379
- ]),
29380
- createVNode(unref(Modal), {
29381
- class: "zw-letter-spacing-control__modal",
29382
- toggler: unref(toggler),
29383
- "reference-ref": wrapperRef.value
29384
- }, {
29385
- default: withCtx(() => [
29386
- createVNode(unref(FieldLabel), {
29387
- class: "zw-margin-bottom--xs",
29388
- "field-id": "wswg-letter-spacing"
29389
- }, {
29390
- default: withCtx(() => _cache[0] || (_cache[0] = [
29391
- createTextVNode(" Letter Spacing ")
29392
- ])),
29393
- _: 1
29394
- }),
29395
- createElementVNode("div", _hoisted_2$1, [
29396
- createVNode(unref(Range), {
29397
- class: "zw-letter-spacing-control__range",
29398
- step: STEP,
29399
- min: MIN_VALUE,
29400
- max: MAX_VALUE,
29401
- value: currentValue.value,
29402
- onInput: apply2
29403
- }, null, 8, ["value"]),
29404
- createVNode(unref(NumberField), {
29405
- step: STEP,
29406
- min: MIN_VALUE,
29407
- max: MAX_VALUE,
29408
- units: "px",
29409
- class: "zw-letter-spacing-control__field",
29410
- "field-id": "wswg-letter-spacing",
29411
- value: currentValue.value,
29412
- onInput: apply2
29413
- }, null, 8, ["value"])
29414
- ])
29415
- ]),
29416
- _: 1
29417
- }, 8, ["toggler", "reference-ref"])
29418
- ], 512);
29419
- };
29420
- }
29421
- };
29422
- const LetterSpacingControl = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-62d3e8b2"]]);
29282
+ const LineHeightControl = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-643242a1"]]);
29423
29283
  const _hoisted_1$4 = { class: "zpa-list-control" };
29424
29284
  const _sfc_main$e = {
29425
29285
  __name: "ListControl",
@@ -30075,8 +29935,8 @@ const _sfc_main$5 = {
30075
29935
  createVNode(unref(ToolbarDivider), { vertical: "" }),
30076
29936
  createVNode(unref(ToolbarGroup), null, {
30077
29937
  default: withCtx(() => [
30078
- createVNode(unref(_sfc_main$o)),
30079
- createVNode(unref(_sfc_main$n))
29938
+ createVNode(unref(_sfc_main$n)),
29939
+ createVNode(unref(_sfc_main$m))
30080
29940
  ]),
30081
29941
  _: 1
30082
29942
  })
@@ -30088,19 +29948,18 @@ const _sfc_main$5 = {
30088
29948
  default: withCtx(() => [
30089
29949
  createVNode(unref(ToolbarGroup), null, {
30090
29950
  default: withCtx(() => [
30091
- createVNode(unref(_sfc_main$m)),
30092
29951
  createVNode(unref(_sfc_main$l)),
30093
29952
  createVNode(unref(_sfc_main$k)),
30094
29953
  createVNode(unref(_sfc_main$j)),
30095
- createVNode(unref(_sfc_main$i))
29954
+ createVNode(unref(_sfc_main$i)),
29955
+ createVNode(unref(_sfc_main$h))
30096
29956
  ]),
30097
29957
  _: 1
30098
29958
  }),
30099
29959
  createVNode(unref(ToolbarDivider), { vertical: "" }),
30100
- createVNode(unref(_sfc_main$h)),
29960
+ createVNode(unref(_sfc_main$g)),
30101
29961
  createVNode(unref(ToolbarDivider), { vertical: "" }),
30102
29962
  createVNode(unref(LineHeightControl)),
30103
- createVNode(unref(LetterSpacingControl)),
30104
29963
  createVNode(unref(ToolbarDivider), { vertical: "" }),
30105
29964
  createVNode(unref(ListControl)),
30106
29965
  createVNode(unref(ToolbarDivider), { vertical: "" }),
@@ -30140,19 +29999,19 @@ const _sfc_main$4 = {
30140
29999
  createVNode(unref(ToolbarDivider), { vertical: "" }),
30141
30000
  createVNode(unref(ToolbarGroup), null, {
30142
30001
  default: withCtx(() => [
30143
- createVNode(unref(_sfc_main$o)),
30144
- createVNode(unref(_sfc_main$n))
30002
+ createVNode(unref(_sfc_main$n)),
30003
+ createVNode(unref(_sfc_main$m))
30145
30004
  ]),
30146
30005
  _: 1
30147
30006
  }),
30148
30007
  createVNode(unref(ToolbarDivider), { vertical: "" }),
30149
30008
  createVNode(unref(ToolbarGroup), null, {
30150
30009
  default: withCtx(() => [
30151
- createVNode(unref(_sfc_main$m)),
30152
30010
  createVNode(unref(_sfc_main$l)),
30153
30011
  createVNode(unref(_sfc_main$k)),
30154
30012
  createVNode(unref(_sfc_main$j)),
30155
- createVNode(unref(_sfc_main$i))
30013
+ createVNode(unref(_sfc_main$i)),
30014
+ createVNode(unref(_sfc_main$h))
30156
30015
  ]),
30157
30016
  _: 1
30158
30017
  })
@@ -30162,10 +30021,9 @@ const _sfc_main$4 = {
30162
30021
  createVNode(unref(ToolbarDivider), { horizontal: "" }),
30163
30022
  createVNode(unref(ToolbarRow), null, {
30164
30023
  default: withCtx(() => [
30165
- createVNode(unref(_sfc_main$h)),
30024
+ createVNode(unref(_sfc_main$g)),
30166
30025
  createVNode(unref(ToolbarDivider), { vertical: "" }),
30167
30026
  createVNode(unref(LineHeightControl)),
30168
- createVNode(unref(LetterSpacingControl)),
30169
30027
  createVNode(unref(ToolbarDivider), { vertical: "" }),
30170
30028
  createVNode(unref(ListControl)),
30171
30029
  createVNode(unref(ToolbarDivider), { vertical: "" }),
@@ -30211,19 +30069,19 @@ const _sfc_main$3 = {
30211
30069
  createVNode(unref(ToolbarDivider), { vertical: "" }),
30212
30070
  createVNode(unref(ToolbarGroup), null, {
30213
30071
  default: withCtx(() => [
30214
- createVNode(unref(_sfc_main$o)),
30215
- createVNode(unref(_sfc_main$n))
30072
+ createVNode(unref(_sfc_main$n)),
30073
+ createVNode(unref(_sfc_main$m))
30216
30074
  ]),
30217
30075
  _: 1
30218
30076
  }),
30219
30077
  createVNode(unref(ToolbarDivider), { vertical: "" }),
30220
30078
  createVNode(unref(ToolbarGroup), null, {
30221
30079
  default: withCtx(() => [
30222
- createVNode(unref(_sfc_main$m)),
30223
30080
  createVNode(unref(_sfc_main$l)),
30224
30081
  createVNode(unref(_sfc_main$k)),
30225
30082
  createVNode(unref(_sfc_main$j)),
30226
- createVNode(unref(_sfc_main$i))
30083
+ createVNode(unref(_sfc_main$i)),
30084
+ createVNode(unref(_sfc_main$h))
30227
30085
  ]),
30228
30086
  _: 1
30229
30087
  })
@@ -30233,7 +30091,7 @@ const _sfc_main$3 = {
30233
30091
  createVNode(unref(ToolbarDivider), { horizontal: "" }),
30234
30092
  createVNode(unref(ToolbarRow), null, {
30235
30093
  default: withCtx(() => [
30236
- createVNode(unref(_sfc_main$h)),
30094
+ createVNode(unref(_sfc_main$g)),
30237
30095
  createVNode(unref(ToolbarDivider), { vertical: "" }),
30238
30096
  createVNode(unref(LineHeightControl)),
30239
30097
  createVNode(unref(ToolbarDivider), { vertical: "" }),
@@ -30584,7 +30442,7 @@ export {
30584
30442
  ButtonToggle,
30585
30443
  CaseStyle,
30586
30444
  Checkbox,
30587
- _sfc_main$s as ColorPicker,
30445
+ _sfc_main$r as ColorPicker,
30588
30446
  Device,
30589
30447
  DeviceList,
30590
30448
  Dropdown,