@harbour-enterprises/superdoc 0.12.30 → 0.12.31-next.1

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 (54) hide show
  1. package/dist/chunks/{super-editor.es-J7K_8fA3.es.js → super-editor.es-Bt5pMkY-.es.js} +500 -236
  2. package/dist/chunks/{super-editor.es-0mAzj58N.cjs → super-editor.es-CzfjXQ8V.cjs} +499 -235
  3. package/dist/composables/use-high-contrast-mode.d.ts +5 -0
  4. package/dist/composables/use-high-contrast-mode.d.ts.map +1 -0
  5. package/dist/core/SuperDoc.d.ts +7 -0
  6. package/dist/core/SuperDoc.d.ts.map +1 -1
  7. package/dist/core/create-app.d.ts.map +1 -1
  8. package/dist/style.css +299 -245
  9. package/dist/super-editor/ai-writer.es.js +2 -2
  10. package/dist/super-editor/chunks/{converter-BSr2Ue72.js → converter-LyqpytFD.js} +2 -2
  11. package/dist/super-editor/chunks/{docx-zipper-BCUCSdEs.js → docx-zipper-CSx2w--M.js} +1 -1
  12. package/dist/super-editor/chunks/{editor-DOwVVn_i.js → editor-czvDp00c.js} +96 -35
  13. package/dist/super-editor/chunks/{toolbar-hUPYR8un.js → toolbar-BnvzLMKn.js} +80 -36
  14. package/dist/super-editor/components/toolbar/defaultItems.d.ts.map +1 -1
  15. package/dist/super-editor/composables/use-high-contrast-mode.d.ts +5 -0
  16. package/dist/super-editor/composables/use-high-contrast-mode.d.ts.map +1 -0
  17. package/dist/super-editor/converter.es.js +1 -1
  18. package/dist/super-editor/core/Editor.d.ts +1 -0
  19. package/dist/super-editor/core/Editor.d.ts.map +1 -1
  20. package/dist/super-editor/docx-zipper.es.js +2 -2
  21. package/dist/super-editor/editor.es.js +3 -3
  22. package/dist/super-editor/extensions/ai/ai-nodes.d.ts.map +1 -1
  23. package/dist/super-editor/extensions/bookmarks/bookmarks.d.ts.map +1 -1
  24. package/dist/super-editor/extensions/bullet-list/bullet-list.d.ts.map +1 -1
  25. package/dist/super-editor/extensions/comment/comment.d.ts.map +1 -1
  26. package/dist/super-editor/extensions/document/document.d.ts.map +1 -1
  27. package/dist/super-editor/extensions/field-annotation/field-annotation.d.ts.map +1 -1
  28. package/dist/super-editor/extensions/heading/heading.d.ts.map +1 -1
  29. package/dist/super-editor/extensions/image/image.d.ts.map +1 -1
  30. package/dist/super-editor/extensions/line-break/line-break.d.ts.map +1 -1
  31. package/dist/super-editor/extensions/list-item/list-item.d.ts.map +1 -1
  32. package/dist/super-editor/extensions/mention/mention.d.ts.map +1 -1
  33. package/dist/super-editor/extensions/ordered-list/ordered-list.d.ts.map +1 -1
  34. package/dist/super-editor/extensions/page-number/page-number.d.ts.map +1 -1
  35. package/dist/super-editor/extensions/pagination/pagination-helpers.d.ts.map +1 -1
  36. package/dist/super-editor/extensions/run-item/run-item.d.ts.map +1 -1
  37. package/dist/super-editor/extensions/shape-container/shape-container.d.ts.map +1 -1
  38. package/dist/super-editor/extensions/shape-textbox/shape-textbox.d.ts.map +1 -1
  39. package/dist/super-editor/extensions/structured-content/structured-content.d.ts.map +1 -1
  40. package/dist/super-editor/extensions/table/table.d.ts.map +1 -1
  41. package/dist/super-editor/extensions/table-cell/table-cell.d.ts.map +1 -1
  42. package/dist/super-editor/extensions/table-header/table-header.d.ts.map +1 -1
  43. package/dist/super-editor/extensions/table-row/table-row.d.ts.map +1 -1
  44. package/dist/super-editor/file-zipper.es.js +1 -1
  45. package/dist/super-editor/style.css +243 -196
  46. package/dist/super-editor/super-editor.es.js +334 -174
  47. package/dist/super-editor/toolbar.es.js +2 -2
  48. package/dist/super-editor.cjs +1 -1
  49. package/dist/super-editor.es.js +1 -1
  50. package/dist/superdoc.cjs +34 -9
  51. package/dist/superdoc.es.js +35 -10
  52. package/dist/superdoc.umd.js +536 -247
  53. package/dist/superdoc.umd.js.map +1 -1
  54. package/package.json +2 -1
@@ -9,14 +9,14 @@ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read fr
9
9
  var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
10
10
  var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
11
11
  var _SuperToolbar_instances, initToolbarGroups_fn, _interceptedCommands, makeToolbarItems_fn, initDefaultFonts_fn, updateHighlightColors_fn, deactivateAll_fn, updateToolbarHistory_fn, runCommandWithArgumentOnly_fn;
12
- import { _ as _export_sfc, a as getQuickFormatList, b as generateLinkedStyleString, I as ImagePlaceholderPluginKey, f as findPlaceholder, c as findParentNode, d as getActiveFormatting, i as isInTable, u as undoDepth, r as redoDepth, E as Editor, e as getStarterExtensions, P as Placeholder, h as getRichTextExtensions, M as Mark, j as Extension, A as Attribute, N as Node } from "./chunks/editor-DOwVVn_i.js";
13
- import { C, T, l, n, k, m } from "./chunks/editor-DOwVVn_i.js";
14
- import { a2 as getDefaultExportFromCjs, E as v4, a5 as vClickOutside, T as TextSelection, a as Plugin } from "./chunks/converter-BSr2Ue72.js";
15
- import { O } from "./chunks/converter-BSr2Ue72.js";
16
- import { ref, createElementBlock, openBlock, createElementVNode, unref, getCurrentInstance, computed, watch, onMounted, createCommentVNode, withDirectives, withKeys, normalizeClass, withModifiers, vModelText, createTextVNode, toDisplayString, Fragment, renderList, normalizeStyle, createVNode, h, createApp, reactive, onUnmounted, shallowRef, onBeforeUnmount, createBlock } from "vue";
17
- import { t as toolbarIcons, s as sanitizeNumber, T as Toolbar, N as NSkeleton } from "./chunks/toolbar-hUPYR8un.js";
12
+ import { _ as _export_sfc, u as useHighContrastMode, a as getQuickFormatList, b as generateLinkedStyleString, I as ImagePlaceholderPluginKey, f as findPlaceholder, c as findParentNode, d as getActiveFormatting, i as isInTable, e as undoDepth, r as redoDepth, E as Editor, h as getStarterExtensions, P as Placeholder, j as getRichTextExtensions, M as Mark, k as Extension, A as Attribute, N as Node } from "./chunks/editor-czvDp00c.js";
13
+ import { C, T, m, o, l, n } from "./chunks/editor-czvDp00c.js";
14
+ import { a2 as getDefaultExportFromCjs, E as v4, a5 as vClickOutside, T as TextSelection, a as Plugin } from "./chunks/converter-LyqpytFD.js";
15
+ import { O } from "./chunks/converter-LyqpytFD.js";
16
+ import { ref, createElementBlock, openBlock, normalizeClass, unref, createElementVNode, getCurrentInstance, computed, watch, onMounted, createCommentVNode, withDirectives, withKeys, withModifiers, vModelText, createTextVNode, toDisplayString, Fragment, renderList, normalizeStyle, createVNode, h, createApp, reactive, onUnmounted, shallowRef, onBeforeUnmount, createBlock } from "vue";
17
+ import { t as toolbarIcons, s as sanitizeNumber, T as Toolbar, N as NSkeleton } from "./chunks/toolbar-BnvzLMKn.js";
18
18
  import AIWriter from "./ai-writer.es.js";
19
- import { D } from "./chunks/docx-zipper-BCUCSdEs.js";
19
+ import { D } from "./chunks/docx-zipper-CSx2w--M.js";
20
20
  import { createZip } from "./file-zipper.es.js";
21
21
  var eventemitter3 = { exports: {} };
22
22
  (function(module) {
@@ -327,71 +327,80 @@ const useToolbarItem = (options) => {
327
327
  onDeactivate
328
328
  };
329
329
  };
330
- const _hoisted_1$b = { class: "alignment-buttons" };
330
+ const _hoisted_1$b = ["innerHTML"];
331
331
  const _hoisted_2$9 = ["innerHTML"];
332
- const _hoisted_3$8 = ["innerHTML"];
332
+ const _hoisted_3$7 = ["innerHTML"];
333
333
  const _hoisted_4$3 = ["innerHTML"];
334
- const _hoisted_5$3 = ["innerHTML"];
335
334
  const _sfc_main$c = {
336
335
  __name: "AlignmentButtons",
337
336
  emits: ["select"],
338
337
  setup(__props, { emit: __emit }) {
338
+ const { isHighContrastMode } = useHighContrastMode();
339
339
  const emit = __emit;
340
340
  const select = (alignment2) => {
341
341
  emit("select", alignment2);
342
342
  };
343
343
  return (_ctx, _cache) => {
344
- return openBlock(), createElementBlock("div", _hoisted_1$b, [
344
+ return openBlock(), createElementBlock("div", {
345
+ class: normalizeClass(["alignment-buttons", { "high-contrast": unref(isHighContrastMode) }])
346
+ }, [
345
347
  createElementVNode("div", {
346
348
  class: "button-icon",
347
349
  onClick: _cache[0] || (_cache[0] = ($event) => select("left")),
348
350
  innerHTML: unref(toolbarIcons).alignLeft,
349
- "data-item": "btn-textAlign-option"
350
- }, null, 8, _hoisted_2$9),
351
+ "data-item": "btn-textAlign-option",
352
+ role: "menuitem",
353
+ "aria-label": "Align left"
354
+ }, null, 8, _hoisted_1$b),
351
355
  createElementVNode("div", {
352
356
  class: "button-icon",
353
357
  onClick: _cache[1] || (_cache[1] = ($event) => select("center")),
354
358
  innerHTML: unref(toolbarIcons).alignCenter,
355
- "data-item": "btn-textAlign-option"
356
- }, null, 8, _hoisted_3$8),
359
+ "data-item": "btn-textAlign-option",
360
+ role: "menuitem",
361
+ "aria-label": "Align center"
362
+ }, null, 8, _hoisted_2$9),
357
363
  createElementVNode("div", {
358
364
  class: "button-icon",
359
365
  onClick: _cache[2] || (_cache[2] = ($event) => select("right")),
360
366
  innerHTML: unref(toolbarIcons).alignRight,
361
- "data-item": "btn-textAlign-option"
362
- }, null, 8, _hoisted_4$3),
367
+ "data-item": "btn-textAlign-option",
368
+ role: "menuitem",
369
+ "aria-label": "Align right"
370
+ }, null, 8, _hoisted_3$7),
363
371
  createElementVNode("div", {
364
372
  class: "button-icon",
365
373
  onClick: _cache[3] || (_cache[3] = ($event) => select("justify")),
366
374
  innerHTML: unref(toolbarIcons).alignJustify,
367
- "data-item": "btn-textAlign-option"
368
- }, null, 8, _hoisted_5$3)
369
- ]);
375
+ "data-item": "btn-textAlign-option",
376
+ role: "menuitem",
377
+ "aria-label": "Justify"
378
+ }, null, 8, _hoisted_4$3)
379
+ ], 2);
370
380
  };
371
381
  }
372
382
  };
373
- const AlignmentButtons = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-932a4937"]]);
374
- const _hoisted_1$a = { class: "link-input-ctn" };
375
- const _hoisted_2$8 = {
383
+ const AlignmentButtons = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-58d8a9bb"]]);
384
+ const _hoisted_1$a = {
376
385
  key: 0,
377
386
  class: "link-title"
378
387
  };
379
- const _hoisted_3$7 = {
388
+ const _hoisted_2$8 = {
380
389
  key: 1,
381
390
  class: "link-title"
382
391
  };
383
- const _hoisted_4$2 = {
392
+ const _hoisted_3$6 = {
384
393
  key: 2,
385
394
  class: "link-title"
386
395
  };
387
- const _hoisted_5$2 = { key: 3 };
388
- const _hoisted_6$1 = { class: "input-row" };
389
- const _hoisted_7$1 = ["innerHTML"];
390
- const _hoisted_8 = ["onKeydown"];
391
- const _hoisted_9 = ["innerHTML"];
392
- const _hoisted_10 = { class: "input-row link-buttons" };
393
- const _hoisted_11 = ["innerHTML"];
394
- const _hoisted_12 = {
396
+ const _hoisted_4$2 = { key: 3 };
397
+ const _hoisted_5$2 = { class: "input-row" };
398
+ const _hoisted_6$1 = ["innerHTML"];
399
+ const _hoisted_7 = ["onKeydown"];
400
+ const _hoisted_8 = ["innerHTML"];
401
+ const _hoisted_9 = { class: "input-row link-buttons" };
402
+ const _hoisted_10 = ["innerHTML"];
403
+ const _hoisted_11 = {
395
404
  key: 4,
396
405
  class: "input-row go-to-anchor clickable"
397
406
  };
@@ -424,6 +433,7 @@ const _sfc_main$b = {
424
433
  setup(__props, { emit: __emit }) {
425
434
  const emit = __emit;
426
435
  const props = __props;
436
+ const { isHighContrastMode } = useHighContrastMode();
427
437
  const { proxy } = getCurrentInstance();
428
438
  const handleSubmit = () => {
429
439
  if (proxy?.$submit instanceof Function) proxy.$submit();
@@ -474,16 +484,19 @@ const _sfc_main$b = {
474
484
  if (props.showInput) focusInput();
475
485
  });
476
486
  return (_ctx, _cache) => {
477
- return openBlock(), createElementBlock("div", _hoisted_1$a, [
478
- !__props.href ? (openBlock(), createElementBlock("div", _hoisted_2$8, "Add link")) : isAnchor.value ? (openBlock(), createElementBlock("div", _hoisted_3$7, "Page anchor")) : (openBlock(), createElementBlock("div", _hoisted_4$2, "Edit link")),
479
- __props.showInput && !isAnchor.value ? (openBlock(), createElementBlock("div", _hoisted_5$2, [
480
- createElementVNode("div", _hoisted_6$1, [
487
+ return openBlock(), createElementBlock("div", {
488
+ class: normalizeClass(["link-input-ctn", { "high-contrast": unref(isHighContrastMode) }])
489
+ }, [
490
+ !__props.href ? (openBlock(), createElementBlock("div", _hoisted_1$a, "Add link")) : isAnchor.value ? (openBlock(), createElementBlock("div", _hoisted_2$8, "Page anchor")) : (openBlock(), createElementBlock("div", _hoisted_3$6, "Edit link")),
491
+ __props.showInput && !isAnchor.value ? (openBlock(), createElementBlock("div", _hoisted_4$2, [
492
+ createElementVNode("div", _hoisted_5$2, [
481
493
  createElementVNode("div", {
482
494
  class: "input-icon",
483
495
  innerHTML: unref(toolbarIcons).linkInput
484
- }, null, 8, _hoisted_7$1),
496
+ }, null, 8, _hoisted_6$1),
485
497
  withDirectives(createElementVNode("input", {
486
498
  type: "text",
499
+ name: "link",
487
500
  placeholder: "Type or paste a link",
488
501
  class: normalizeClass({ error: urlError.value }),
489
502
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => rawUrl.value = $event),
@@ -491,7 +504,7 @@ const _sfc_main$b = {
491
504
  withKeys(withModifiers(handleSubmit, ["stop", "prevent"]), ["enter"]),
492
505
  _cache[1] || (_cache[1] = ($event) => urlError.value = false)
493
506
  ]
494
- }, null, 42, _hoisted_8), [
507
+ }, null, 42, _hoisted_7), [
495
508
  [vModelText, rawUrl.value]
496
509
  ]),
497
510
  createElementVNode("div", {
@@ -499,9 +512,9 @@ const _sfc_main$b = {
499
512
  innerHTML: unref(toolbarIcons).openLink,
500
513
  onClick: openLink,
501
514
  "data-item": "btn-link-open"
502
- }, null, 10, _hoisted_9)
515
+ }, null, 10, _hoisted_8)
503
516
  ]),
504
- createElementVNode("div", _hoisted_10, [
517
+ createElementVNode("div", _hoisted_9, [
505
518
  __props.href ? (openBlock(), createElementBlock("button", {
506
519
  key: 0,
507
520
  class: "remove-btn",
@@ -511,7 +524,7 @@ const _sfc_main$b = {
511
524
  createElementVNode("div", {
512
525
  class: "remove-btn__icon",
513
526
  innerHTML: unref(toolbarIcons).removeLink
514
- }, null, 8, _hoisted_11),
527
+ }, null, 8, _hoisted_10),
515
528
  _cache[3] || (_cache[3] = createTextVNode(" Remove "))
516
529
  ])) : createCommentVNode("", true),
517
530
  showApply.value ? (openBlock(), createElementBlock("button", {
@@ -521,23 +534,22 @@ const _sfc_main$b = {
521
534
  "data-item": "btn-link-apply"
522
535
  }, toDisplayString(getApplyText.value), 3)) : createCommentVNode("", true)
523
536
  ])
524
- ])) : isAnchor.value ? (openBlock(), createElementBlock("div", _hoisted_12, [
537
+ ])) : isAnchor.value ? (openBlock(), createElementBlock("div", _hoisted_11, [
525
538
  createElementVNode("a", {
526
539
  onClick: _cache[2] || (_cache[2] = withModifiers((...args) => __props.goToAnchor && __props.goToAnchor(...args), ["stop", "prevent"]))
527
540
  }, "Go to " + toDisplayString(__props.href.startsWith("#_") ? __props.href.substring(2) : __props.href), 1)
528
541
  ])) : createCommentVNode("", true)
529
- ]);
542
+ ], 2);
530
543
  };
531
544
  }
532
545
  };
533
- const LinkInput = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-04bac853"]]);
534
- const _hoisted_1$9 = { class: "document-mode" };
535
- const _hoisted_2$7 = ["onClick"];
536
- const _hoisted_3$6 = { class: "document-mode-column icon-column" };
537
- const _hoisted_4$1 = ["innerHTML"];
538
- const _hoisted_5$1 = { class: "document-mode-column text-column" };
539
- const _hoisted_6 = { class: "document-mode-type" };
540
- const _hoisted_7 = { class: "document-mode-description" };
546
+ const LinkInput = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-64aa14bc"]]);
547
+ const _hoisted_1$9 = ["onClick"];
548
+ const _hoisted_2$7 = { class: "document-mode-column icon-column" };
549
+ const _hoisted_3$5 = ["innerHTML"];
550
+ const _hoisted_4$1 = { class: "document-mode-column text-column" };
551
+ const _hoisted_5$1 = { class: "document-mode-type" };
552
+ const _hoisted_6 = { class: "document-mode-description" };
541
553
  const _sfc_main$a = {
542
554
  __name: "DocumentMode",
543
555
  props: {
@@ -548,34 +560,38 @@ const _sfc_main$a = {
548
560
  emits: ["select"],
549
561
  setup(__props, { emit: __emit }) {
550
562
  const emit = __emit;
563
+ const { isHighContrastMode } = useHighContrastMode();
551
564
  const handleClick = (item) => {
552
565
  emit("select", item);
553
566
  };
554
567
  return (_ctx, _cache) => {
555
- return openBlock(), createElementBlock("div", _hoisted_1$9, [
568
+ return openBlock(), createElementBlock("div", {
569
+ class: normalizeClass(["document-mode", { "high-contrast": unref(isHighContrastMode) }])
570
+ }, [
556
571
  (openBlock(true), createElementBlock(Fragment, null, renderList(__props.options, (option) => {
557
572
  return openBlock(), createElementBlock("div", {
558
573
  class: normalizeClass(["option-item", { disabled: option.disabled }]),
559
574
  onClick: ($event) => handleClick(option),
560
- "data-item": "btn-documentMode-option"
575
+ "data-item": "btn-documentMode-option",
576
+ role: "menuitem"
561
577
  }, [
562
- createElementVNode("div", _hoisted_3$6, [
578
+ createElementVNode("div", _hoisted_2$7, [
563
579
  createElementVNode("div", {
564
580
  class: "icon-column__icon",
565
581
  innerHTML: option.icon
566
- }, null, 8, _hoisted_4$1)
582
+ }, null, 8, _hoisted_3$5)
567
583
  ]),
568
- createElementVNode("div", _hoisted_5$1, [
569
- createElementVNode("div", _hoisted_6, toDisplayString(option.label), 1),
570
- createElementVNode("div", _hoisted_7, toDisplayString(option.description), 1)
584
+ createElementVNode("div", _hoisted_4$1, [
585
+ createElementVNode("div", _hoisted_5$1, toDisplayString(option.label), 1),
586
+ createElementVNode("div", _hoisted_6, toDisplayString(option.description), 1)
571
587
  ])
572
- ], 10, _hoisted_2$7);
588
+ ], 10, _hoisted_1$9);
573
589
  }), 256))
574
- ]);
590
+ ], 2);
575
591
  };
576
592
  }
577
593
  };
578
- const DocumentMode = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__scopeId", "data-v-8afd7fbb"]]);
594
+ const DocumentMode = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["__scopeId", "data-v-050d9d49"]]);
579
595
  const _hoisted_1$8 = {
580
596
  key: 0,
581
597
  class: "linked-style-buttons"
@@ -618,9 +634,9 @@ const _sfc_main$9 = {
618
634
  }
619
635
  };
620
636
  const LinkedStyle = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["__scopeId", "data-v-bf5a8c1e"]]);
621
- const _hoisted_1$7 = ["onClick"];
637
+ const _hoisted_1$7 = ["aria-label", "onClick"];
622
638
  const _hoisted_2$5 = ["innerHTML"];
623
- const _hoisted_3$5 = ["innerHTML"];
639
+ const _hoisted_3$4 = ["innerHTML"];
624
640
  const _sfc_main$8 = {
625
641
  __name: "IconGridRow",
626
642
  props: {
@@ -657,12 +673,15 @@ const _sfc_main$8 = {
657
673
  return openBlock(true), createElementBlock(Fragment, null, renderList(__props.icons, (row, rowIndex) => {
658
674
  return openBlock(), createElementBlock("div", {
659
675
  class: "option-row",
660
- key: rowIndex
676
+ key: rowIndex,
677
+ role: "group"
661
678
  }, [
662
679
  (openBlock(true), createElementBlock(Fragment, null, renderList(row, (option, optionIndex) => {
663
680
  return openBlock(), createElementBlock("div", {
664
681
  class: "option",
665
682
  key: optionIndex,
683
+ "aria-label": option.label,
684
+ role: "menuitem",
666
685
  onClick: withModifiers(($event) => handleClick(option), ["stop", "prevent"])
667
686
  }, [
668
687
  createElementVNode("div", {
@@ -675,7 +694,7 @@ const _sfc_main$8 = {
675
694
  class: "option__check",
676
695
  innerHTML: unref(toolbarIcons).colorOptionCheck,
677
696
  style: normalizeStyle(getCheckStyle(option.value, optionIndex))
678
- }, null, 12, _hoisted_3$5)) : createCommentVNode("", true)
697
+ }, null, 12, _hoisted_3$4)) : createCommentVNode("", true)
679
698
  ], 8, _hoisted_1$7);
680
699
  }), 128))
681
700
  ]);
@@ -683,11 +702,11 @@ const _sfc_main$8 = {
683
702
  };
684
703
  }
685
704
  };
686
- const IconGridRow = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__scopeId", "data-v-6a2a9a40"]]);
705
+ const IconGridRow = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["__scopeId", "data-v-d96a82fa"]]);
687
706
  const DropIcon = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M320 512c53.2 0 101.4-21.6 136.1-56.6l-298.3-235C140 257.1 128 292.3 128 320c0 106 86 192 192 192zM505.2 370.7c4.4-16.2 6.8-33.1 6.8-50.7c0-91.2-130.2-262.3-166.6-308.3C339.4 4.2 330.5 0 320.9 0l-1.8 0c-9.6 0-18.5 4.2-24.5 11.7C277.8 33 240.7 81.3 205.8 136L38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L505.2 370.7zM224 336c0 44.2 35.8 80 80 80c8.8 0 16 7.2 16 16s-7.2 16-16 16c-61.9 0-112-50.1-112-112c0-8.8 7.2-16 16-16s16 7.2 16 16z"/></svg>\n';
688
707
  const _hoisted_1$6 = { class: "options-grid-wrap" };
689
708
  const _hoisted_2$4 = ["innerHTML"];
690
- const _hoisted_3$4 = { class: "option-grid-ctn" };
709
+ const _hoisted_3$3 = { class: "option-grid-ctn" };
691
710
  const _sfc_main$7 = {
692
711
  __name: "IconGrid",
693
712
  props: {
@@ -719,6 +738,8 @@ const _sfc_main$7 = {
719
738
  __props.hasNoneIcon ? (openBlock(), createElementBlock("div", {
720
739
  key: 0,
721
740
  class: "none-option",
741
+ role: "menuitem",
742
+ "aria-label": "Clear color selection",
722
743
  onClick: _cache[0] || (_cache[0] = ($event) => handleSelect("none"))
723
744
  }, [
724
745
  createElementVNode("span", {
@@ -727,7 +748,7 @@ const _sfc_main$7 = {
727
748
  }, null, 8, _hoisted_2$4),
728
749
  _cache[1] || (_cache[1] = createTextVNode(" None "))
729
750
  ])) : createCommentVNode("", true),
730
- createElementVNode("div", _hoisted_3$4, [
751
+ createElementVNode("div", _hoisted_3$3, [
731
752
  createVNode(IconGridRow, {
732
753
  icons: __props.icons,
733
754
  "active-color": __props.activeColor,
@@ -746,7 +767,7 @@ const _sfc_main$7 = {
746
767
  };
747
768
  }
748
769
  };
749
- const IconGrid = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__scopeId", "data-v-47b783db"]]);
770
+ const IconGrid = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["__scopeId", "data-v-9246bdef"]]);
750
771
  const closeDropdown$1 = (dropdown) => {
751
772
  dropdown.expand.value = false;
752
773
  };
@@ -780,84 +801,83 @@ const renderColorOptions = (superToolbar, button, customIcons = [], hasNoneIcon
780
801
  };
781
802
  const icons = [
782
803
  [
783
- makeColorOption("#111111"),
784
- makeColorOption("#333333"),
785
- makeColorOption("#5C5C5C"),
786
- makeColorOption("#858585"),
787
- makeColorOption("#ADADAD"),
788
- makeColorOption("#D6D6D6"),
789
- makeColorOption("#FFFFFF")
804
+ makeColorOption("#111111", "black"),
805
+ makeColorOption("#333333", "dark gray"),
806
+ makeColorOption("#5C5C5C", "medium gray"),
807
+ makeColorOption("#858585", "light gray"),
808
+ makeColorOption("#ADADAD", "very light gray"),
809
+ makeColorOption("#D6D6D6", "transparent gray"),
810
+ makeColorOption("#FFFFFF", "white")
790
811
  ],
791
812
  [
792
- makeColorOption("#860028"),
793
- makeColorOption("#D2003F"),
794
- makeColorOption("#DB3365"),
795
- makeColorOption("#E4668C"),
796
- makeColorOption("#ED99B2"),
797
- makeColorOption("#F6CCD9"),
798
- makeColorOption("#FF004D")
813
+ makeColorOption("#860028", "dark red"),
814
+ makeColorOption("#D2003F", "red"),
815
+ makeColorOption("#DB3365", "coral red"),
816
+ makeColorOption("#E4668C", "light red"),
817
+ makeColorOption("#ED99B2", "pale pink"),
818
+ makeColorOption("#F6CCD9", "transparent pink"),
819
+ makeColorOption("#FF004D", "bright pink")
799
820
  ],
800
821
  [
801
- makeColorOption("#83015E"),
802
- makeColorOption("#CD0194"),
803
- makeColorOption("#D734A9"),
804
- makeColorOption("#E167BF"),
805
- makeColorOption("#EB99D4"),
806
- makeColorOption("#F5CCEA"),
807
- makeColorOption("#FF00A8")
822
+ makeColorOption("#83015E", "dark purple"),
823
+ makeColorOption("#CD0194", "purple"),
824
+ makeColorOption("#D734A9", "orchid"),
825
+ makeColorOption("#E167BF", "light purple"),
826
+ makeColorOption("#EB99D4", "lavender"),
827
+ makeColorOption("#F5CCEA", "transparent pink"),
828
+ makeColorOption("#FF00A8", "neon pink")
808
829
  ],
809
830
  [
810
- makeColorOption("#8E220A"),
811
- makeColorOption("#DD340F"),
812
- makeColorOption("#E45C3F"),
813
- makeColorOption("#EB856F"),
814
- makeColorOption("#F1AE9F"),
815
- makeColorOption("#F8D6CF"),
816
- makeColorOption("#FF7A00")
831
+ makeColorOption("#8E220A", "maroon"),
832
+ makeColorOption("#DD340F", "red-orange"),
833
+ makeColorOption("#E45C3F", "burnt orange"),
834
+ makeColorOption("#EB856F", "peach"),
835
+ makeColorOption("#F1AE9F", "pale peach"),
836
+ makeColorOption("#F8D6CF", "transparent peach"),
837
+ makeColorOption("#FF7A00", "orange")
817
838
  ],
818
839
  [
819
- makeColorOption("#947D02"),
820
- makeColorOption("#E7C302"),
821
- makeColorOption("#ECCF35"),
822
- makeColorOption("#F1DB67"),
823
- makeColorOption("#F5E79A"),
824
- makeColorOption("#FAF3CC"),
825
- makeColorOption("#FAFF09")
840
+ makeColorOption("#947D02", "olive"),
841
+ makeColorOption("#E7C302", "mustard yellow"),
842
+ makeColorOption("#ECCF35", "yellow"),
843
+ makeColorOption("#F1DB67", "light yellow"),
844
+ makeColorOption("#F5E79A", "very pale yellow"),
845
+ makeColorOption("#FAF3CC", "transparent yellow"),
846
+ makeColorOption("#FAFF09", "neon yellow")
826
847
  ],
827
848
  [
828
- makeColorOption("#055432"),
829
- makeColorOption("#07834F"),
830
- makeColorOption("#399C72"),
831
- makeColorOption("#6AB595"),
832
- makeColorOption("#9CCDB9"),
833
- makeColorOption("#CDE6DC"),
834
- makeColorOption("#05F38F")
849
+ makeColorOption("#055432", "forest green"),
850
+ makeColorOption("#07834F", "green"),
851
+ makeColorOption("#399C72", "medium green"),
852
+ makeColorOption("#6AB595", "light green"),
853
+ makeColorOption("#9CCDB9", "mint"),
854
+ makeColorOption("#CDE6DC", "transparent mint"),
855
+ makeColorOption("#05F38F", "bright teal")
835
856
  ],
836
857
  [
837
- makeColorOption("#063E7E"),
838
- makeColorOption("#0A60C5"),
839
- makeColorOption("#3B80D1"),
840
- makeColorOption("#6CA0DC"),
841
- makeColorOption("#9DBFE8"),
842
- makeColorOption("#CEDFF3"),
843
- makeColorOption("#21c8ce")
858
+ makeColorOption("#063E7E", "navy blue"),
859
+ makeColorOption("#0A60C5", "blue"),
860
+ makeColorOption("#3B80D1", "sky blue"),
861
+ makeColorOption("#6CA0DC", "cornflower blue"),
862
+ makeColorOption("#9DBFE8", "light blue"),
863
+ makeColorOption("#CEDFF3", "very light blue"),
864
+ makeColorOption("#21c8ce", "cyan")
844
865
  ],
845
866
  [
846
- makeColorOption("#3E027A"),
847
- makeColorOption("#6103BF"),
848
- makeColorOption("#8136CC"),
849
- makeColorOption("#A068D9"),
850
- makeColorOption("#C09AE6"),
851
- makeColorOption("#DFCDF2"),
852
- makeColorOption("#A91DFF")
867
+ makeColorOption("#3E027A", "deep purple"),
868
+ makeColorOption("#6103BF", "indigo"),
869
+ makeColorOption("#8136CC", "violet"),
870
+ makeColorOption("#A068D9", "lavender pink"),
871
+ makeColorOption("#C09AE6", "light lilac"),
872
+ makeColorOption("#DFCDF2", "transparent lilac"),
873
+ makeColorOption("#A91DFF", "neon purple")
853
874
  ]
854
875
  ];
855
876
  const getAvailableColorOptions = () => {
856
877
  return icons.flat().map((item) => item.value);
857
878
  };
858
- const _hoisted_1$5 = { class: "toolbar-table-grid-wrapper" };
859
- const _hoisted_2$3 = ["data-cols", "data-rows", "onClick"];
860
- const _hoisted_3$3 = { class: "toolbar-table-grid-value" };
879
+ const _hoisted_1$5 = ["data-cols", "data-rows", "onClick"];
880
+ const _hoisted_2$3 = ["aria-valuetext"];
861
881
  const _sfc_main$6 = {
862
882
  __name: "TableGrid",
863
883
  emits: ["select", "clickoutside"],
@@ -865,6 +885,7 @@ const _sfc_main$6 = {
865
885
  const emit = __emit;
866
886
  const selectedRows = ref(0);
867
887
  const selectedCols = ref(0);
888
+ const { isHighContrastMode } = useHighContrastMode();
868
889
  const onTableGridMouseOver = (event) => {
869
890
  let target = event.target;
870
891
  let isGrid = !!target.dataset.grid;
@@ -892,7 +913,9 @@ const _sfc_main$6 = {
892
913
  emit("select", { cols, rows });
893
914
  };
894
915
  return (_ctx, _cache) => {
895
- return openBlock(), createElementBlock("div", _hoisted_1$5, [
916
+ return openBlock(), createElementBlock("div", {
917
+ class: normalizeClass(["toolbar-table-grid-wrapper", { "high-contrast": unref(isHighContrastMode) }])
918
+ }, [
896
919
  createElementVNode("div", {
897
920
  class: "toolbar-table-grid",
898
921
  onMouseover: onTableGridMouseOver,
@@ -908,19 +931,22 @@ const _sfc_main$6 = {
908
931
  "data-rows": i,
909
932
  "data-item": "true",
910
933
  onClick: withModifiers(($event) => handleClick({ cols: n2, rows: i }), ["stop", "prevent"])
911
- }, null, 8, _hoisted_2$3);
934
+ }, null, 8, _hoisted_1$5);
912
935
  }), 64))
913
936
  ], 64);
914
937
  }), 64))
915
938
  ], 32),
916
- createElementVNode("div", _hoisted_3$3, toDisplayString(selectedRows.value) + " x " + toDisplayString(selectedCols.value), 1)
917
- ]);
939
+ createElementVNode("div", {
940
+ class: "toolbar-table-grid-value",
941
+ "aria-valuetext": `${selectedRows.value} x ${selectedCols.value}`
942
+ }, toDisplayString(selectedRows.value) + " x " + toDisplayString(selectedCols.value), 9, _hoisted_2$3)
943
+ ], 2);
918
944
  };
919
945
  }
920
946
  };
921
- const TableGrid = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-06352ab9"]]);
947
+ const TableGrid = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["__scopeId", "data-v-617bf152"]]);
922
948
  const _hoisted_1$4 = { class: "toolbar-table-actions" };
923
- const _hoisted_2$2 = ["onClick", "data-item"];
949
+ const _hoisted_2$2 = ["onClick", "data-item", "ariaLabel"];
924
950
  const _hoisted_3$2 = { class: "toolbar-table-actions__icon" };
925
951
  const _hoisted_4 = ["innerHTML"];
926
952
  const _hoisted_5 = { class: "toolbar-table-actions__label" };
@@ -943,7 +969,9 @@ const _sfc_main$5 = {
943
969
  return openBlock(), createElementBlock("div", {
944
970
  class: normalizeClass(["toolbar-table-actions__item", { "toolbar-table-actions__item--border": option.bottomBorder }]),
945
971
  onClick: ($event) => handleClick(option),
946
- "data-item": option.props?.["data-item"] || ""
972
+ "data-item": option.props?.["data-item"] || "",
973
+ ariaLabel: option.props?.ariaLabel,
974
+ role: "menuitem"
947
975
  }, [
948
976
  createElementVNode("div", _hoisted_3$2, [
949
977
  createElementVNode("div", {
@@ -958,7 +986,7 @@ const _sfc_main$5 = {
958
986
  };
959
987
  }
960
988
  };
961
- const TableActions = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-fdbfb4b0"]]);
989
+ const TableActions = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["__scopeId", "data-v-f82e859a"]]);
962
990
  const checkIconSvg = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.--><path d="M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z"/></svg>\n';
963
991
  const _hoisted_1$3 = { class: "search-input-ctn" };
964
992
  const _hoisted_2$1 = { class: "row" };
@@ -1059,7 +1087,10 @@ const makeDefaultItems = ({
1059
1087
  name: "bold",
1060
1088
  command: "toggleBold",
1061
1089
  icon: toolbarIcons2.bold,
1062
- tooltip: toolbarTexts2.bold
1090
+ tooltip: toolbarTexts2.bold,
1091
+ attributes: {
1092
+ ariaLabel: "Bold"
1093
+ }
1063
1094
  });
1064
1095
  const fontButton = useToolbarItem({
1065
1096
  type: "dropdown",
@@ -1074,6 +1105,9 @@ const makeDefaultItems = ({
1074
1105
  isWide: true,
1075
1106
  style: { width: "116px" },
1076
1107
  suppressActiveHighlight: true,
1108
+ attributes: {
1109
+ ariaLabel: "Font family"
1110
+ },
1077
1111
  options: [...toolbarFonts ? toolbarFonts : TOOLBAR_FONTS],
1078
1112
  onActivate: ({ fontFamily }) => {
1079
1113
  if (!fontFamily) return;
@@ -1094,6 +1128,9 @@ const makeDefaultItems = ({
1094
1128
  hasCaret: false,
1095
1129
  isWide: true,
1096
1130
  suppressActiveHighlight: true,
1131
+ attributes: {
1132
+ ariaLabel: "AI"
1133
+ },
1097
1134
  options: [
1098
1135
  {
1099
1136
  type: "render",
@@ -1141,6 +1178,9 @@ const makeDefaultItems = ({
1141
1178
  suppressActiveHighlight: true,
1142
1179
  isWide: true,
1143
1180
  command: "setFontSize",
1181
+ attributes: {
1182
+ ariaLabel: "Font size"
1183
+ },
1144
1184
  options: [
1145
1185
  { label: "8", key: "8pt", props: { "data-item": "btn-fontSize-option" } },
1146
1186
  { label: "9", key: "9pt", props: { "data-item": "btn-fontSize-option" } },
@@ -1176,14 +1216,20 @@ const makeDefaultItems = ({
1176
1216
  name: "italic",
1177
1217
  command: "toggleItalic",
1178
1218
  icon: toolbarIcons2.italic,
1179
- tooltip: toolbarTexts2.italic
1219
+ tooltip: toolbarTexts2.italic,
1220
+ attributes: {
1221
+ ariaLabel: "Italic"
1222
+ }
1180
1223
  });
1181
1224
  const underline = useToolbarItem({
1182
1225
  type: "button",
1183
1226
  name: "underline",
1184
1227
  command: "toggleUnderline",
1185
1228
  icon: toolbarIcons2.underline,
1186
- tooltip: toolbarTexts2.underline
1229
+ tooltip: toolbarTexts2.underline,
1230
+ attributes: {
1231
+ ariaLabel: "Underline"
1232
+ }
1187
1233
  });
1188
1234
  const highlight = useToolbarItem({
1189
1235
  type: "dropdown",
@@ -1196,6 +1242,9 @@ const makeDefaultItems = ({
1196
1242
  command: "setHighlight",
1197
1243
  noArgumentCommand: "unsetHighlight",
1198
1244
  suppressActiveHighlight: true,
1245
+ attributes: {
1246
+ ariaLabel: "Highlight"
1247
+ },
1199
1248
  options: [
1200
1249
  {
1201
1250
  key: "color",
@@ -1218,6 +1267,9 @@ const makeDefaultItems = ({
1218
1267
  tooltip: toolbarTexts2.color,
1219
1268
  command: "setColor",
1220
1269
  suppressActiveHighlight: true,
1270
+ attributes: {
1271
+ ariaLabel: "Color"
1272
+ },
1221
1273
  options: [
1222
1274
  {
1223
1275
  key: "color",
@@ -1238,6 +1290,9 @@ const makeDefaultItems = ({
1238
1290
  tooltip: toolbarTexts2.search,
1239
1291
  group: "right",
1240
1292
  inputRef: searchRef,
1293
+ attributes: {
1294
+ ariaLabel: "Search"
1295
+ },
1241
1296
  options: [
1242
1297
  {
1243
1298
  type: "render",
@@ -1263,6 +1318,9 @@ const makeDefaultItems = ({
1263
1318
  markName: "link",
1264
1319
  icon: toolbarIcons2.link,
1265
1320
  tooltip: toolbarTexts2.link,
1321
+ attributes: {
1322
+ ariaLabel: "Link dropdown"
1323
+ },
1266
1324
  options: [
1267
1325
  {
1268
1326
  type: "render",
@@ -1316,7 +1374,10 @@ const makeDefaultItems = ({
1316
1374
  command: "startImageUpload",
1317
1375
  icon: toolbarIcons2.image,
1318
1376
  tooltip: toolbarTexts2.image,
1319
- disabled: false
1377
+ disabled: false,
1378
+ attributes: {
1379
+ ariaLabel: "Image"
1380
+ }
1320
1381
  });
1321
1382
  const tableItem = useToolbarItem({
1322
1383
  type: "dropdown",
@@ -1327,6 +1388,9 @@ const makeDefaultItems = ({
1327
1388
  tooltip: toolbarTexts2.table,
1328
1389
  command: "insertTable",
1329
1390
  suppressActiveHighlight: true,
1391
+ attributes: {
1392
+ ariaLabel: "Table"
1393
+ },
1330
1394
  options: [
1331
1395
  {
1332
1396
  key: "table",
@@ -1353,6 +1417,9 @@ const makeDefaultItems = ({
1353
1417
  icon: toolbarIcons2.tableActions,
1354
1418
  hideLabel: true,
1355
1419
  disabled: true,
1420
+ attributes: {
1421
+ ariaLabel: "Table actions"
1422
+ },
1356
1423
  options: [
1357
1424
  {
1358
1425
  type: "render",
@@ -1365,69 +1432,102 @@ const makeDefaultItems = ({
1365
1432
  label: toolbarTexts2.addRowBefore,
1366
1433
  command: "addRowBefore",
1367
1434
  icon: toolbarIcons2.addRowBefore,
1368
- props: { "data-item": "btn-tableActions-option" }
1435
+ props: {
1436
+ "data-item": "btn-tableActions-option",
1437
+ ariaLabel: "Add row before"
1438
+ }
1369
1439
  },
1370
1440
  {
1371
1441
  label: toolbarTexts2.addRowAfter,
1372
1442
  command: "addRowAfter",
1373
1443
  icon: toolbarIcons2.addRowAfter,
1374
- props: { "data-item": "btn-tableActions-option" }
1444
+ props: {
1445
+ "data-item": "btn-tableActions-option",
1446
+ ariaLabel: "Add row after"
1447
+ }
1375
1448
  },
1376
1449
  {
1377
1450
  label: toolbarTexts2.addColumnBefore,
1378
1451
  command: "addColumnBefore",
1379
1452
  icon: toolbarIcons2.addColumnBefore,
1380
- props: { "data-item": "btn-tableActions-option" }
1453
+ props: {
1454
+ "data-item": "btn-tableActions-option",
1455
+ ariaLabel: "Add column before"
1456
+ }
1381
1457
  },
1382
1458
  {
1383
1459
  label: toolbarTexts2.addColumnAfter,
1384
1460
  command: "addColumnAfter",
1385
1461
  icon: toolbarIcons2.addColumnAfter,
1386
1462
  bottomBorder: true,
1387
- props: { "data-item": "btn-tableActions-option" }
1463
+ props: {
1464
+ "data-item": "btn-tableActions-option",
1465
+ ariaLabel: "Add column after"
1466
+ }
1388
1467
  },
1389
1468
  {
1390
1469
  label: toolbarTexts2.deleteRow,
1391
1470
  command: "deleteRow",
1392
1471
  icon: toolbarIcons2.deleteRow,
1393
- props: { "data-item": "btn-tableActions-option" }
1472
+ props: {
1473
+ "data-item": "btn-tableActions-option",
1474
+ ariaLabel: "Delete row"
1475
+ }
1394
1476
  },
1395
1477
  {
1396
1478
  label: toolbarTexts2.deleteColumn,
1397
1479
  command: "deleteColumn",
1398
1480
  icon: toolbarIcons2.deleteColumn,
1399
- props: { "data-item": "btn-tableActions-option" }
1481
+ props: {
1482
+ "data-item": "btn-tableActions-option",
1483
+ ariaLabel: "Delete column"
1484
+ }
1400
1485
  },
1401
1486
  {
1402
1487
  label: toolbarTexts2.deleteTable,
1403
1488
  command: "deleteTable",
1404
1489
  icon: toolbarIcons2.deleteTable,
1405
- props: { "data-item": "btn-tableActions-option" }
1490
+ props: {
1491
+ "data-item": "btn-tableActions-option",
1492
+ ariaLabel: "Delete table"
1493
+ }
1406
1494
  },
1407
1495
  {
1408
1496
  label: toolbarTexts2.transparentBorders,
1409
1497
  command: "deleteCellAndTableBorders",
1410
1498
  icon: toolbarIcons2.deleteBorders,
1411
1499
  bottomBorder: true,
1412
- props: { "data-item": "btn-tableActions-option" }
1500
+ props: {
1501
+ "data-item": "btn-tableActions-option",
1502
+ ariaLabel: "Delete cell and table borders"
1503
+ }
1413
1504
  },
1414
1505
  {
1415
1506
  label: toolbarTexts2.mergeCells,
1416
1507
  command: "mergeCells",
1417
1508
  icon: toolbarIcons2.mergeCells,
1418
- props: { "data-item": "btn-tableActions-option" }
1509
+ props: {
1510
+ "data-item": "btn-tableActions-option",
1511
+ ariaLabel: "Merge cells"
1512
+ }
1419
1513
  },
1420
1514
  {
1421
1515
  label: toolbarTexts2.splitCell,
1422
1516
  command: "splitCell",
1423
1517
  icon: toolbarIcons2.splitCell,
1424
- props: { "data-item": "btn-tableActions-option" }
1518
+ props: {
1519
+ "data-item": "btn-tableActions-option",
1520
+ ariaLabel: "Split cells"
1521
+ }
1425
1522
  },
1426
1523
  {
1427
1524
  label: toolbarTexts2.fixTables,
1428
1525
  command: "fixTables",
1429
1526
  icon: toolbarIcons2.fixTables,
1430
- props: { "data-item": "btn-tableActions-option" }
1527
+ props: {
1528
+ "data-item": "btn-tableActions-option",
1529
+ ariaLabel: "Fix tables"
1530
+ }
1431
1531
  }
1432
1532
  ];
1433
1533
  function renderTableActions(tableActionsItem2) {
@@ -1450,6 +1550,9 @@ const makeDefaultItems = ({
1450
1550
  markName: "textAlign",
1451
1551
  labelAttr: "textAlign",
1452
1552
  suppressActiveHighlight: true,
1553
+ attributes: {
1554
+ ariaLabel: "Text align"
1555
+ },
1453
1556
  options: [
1454
1557
  {
1455
1558
  type: "render",
@@ -1493,14 +1596,20 @@ const makeDefaultItems = ({
1493
1596
  name: "list",
1494
1597
  command: "toggleBulletList",
1495
1598
  icon: toolbarIcons2.bulletList,
1496
- tooltip: toolbarTexts2.bulletList
1599
+ tooltip: toolbarTexts2.bulletList,
1600
+ attributes: {
1601
+ ariaLabel: "Bullet list"
1602
+ }
1497
1603
  });
1498
1604
  const numberedList = useToolbarItem({
1499
1605
  type: "button",
1500
1606
  name: "numberedlist",
1501
1607
  command: "toggleOrderedList",
1502
1608
  icon: toolbarIcons2.numberedList,
1503
- tooltip: toolbarTexts2.numberedList
1609
+ tooltip: toolbarTexts2.numberedList,
1610
+ attributes: {
1611
+ ariaLabel: "Numbered list"
1612
+ }
1504
1613
  });
1505
1614
  const indentLeft = useToolbarItem({
1506
1615
  type: "button",
@@ -1508,7 +1617,10 @@ const makeDefaultItems = ({
1508
1617
  command: "decreaseTextIndent",
1509
1618
  icon: toolbarIcons2.indentLeft,
1510
1619
  tooltip: toolbarTexts2.indentLeft,
1511
- disabled: false
1620
+ disabled: false,
1621
+ attributes: {
1622
+ ariaLabel: "Left indent"
1623
+ }
1512
1624
  });
1513
1625
  const indentRight = useToolbarItem({
1514
1626
  type: "button",
@@ -1516,14 +1628,20 @@ const makeDefaultItems = ({
1516
1628
  command: "increaseTextIndent",
1517
1629
  icon: toolbarIcons2.indentRight,
1518
1630
  tooltip: toolbarTexts2.indentRight,
1519
- disabled: false
1631
+ disabled: false,
1632
+ attributes: {
1633
+ ariaLabel: "Right indent"
1634
+ }
1520
1635
  });
1521
1636
  const overflow = useToolbarItem({
1522
1637
  type: "overflow",
1523
1638
  name: "overflow",
1524
1639
  command: "toggleOverflow",
1525
1640
  icon: toolbarIcons2.overflow,
1526
- disabled: false
1641
+ disabled: false,
1642
+ attributes: {
1643
+ ariaLabel: "Overflow items"
1644
+ }
1527
1645
  });
1528
1646
  const zoom = useToolbarItem({
1529
1647
  type: "dropdown",
@@ -1537,6 +1655,9 @@ const makeDefaultItems = ({
1537
1655
  isWide: true,
1538
1656
  inlineTextInputVisible: false,
1539
1657
  hasInlineTextInput: true,
1658
+ attributes: {
1659
+ ariaLabel: "Zoom"
1660
+ },
1540
1661
  options: [
1541
1662
  { label: "50%", key: 0.5, props: { "data-item": "btn-zoom-option" } },
1542
1663
  { label: "75%", key: 0.75, props: { "data-item": "btn-zoom-option" } },
@@ -1559,6 +1680,9 @@ const makeDefaultItems = ({
1559
1680
  command: "undo",
1560
1681
  icon: toolbarIcons2.undo,
1561
1682
  group: "left",
1683
+ attributes: {
1684
+ ariaLabel: "Undo"
1685
+ },
1562
1686
  onDeactivate: () => {
1563
1687
  undo.disabled.value = !superToolbar.undoDepth;
1564
1688
  }
@@ -1571,6 +1695,9 @@ const makeDefaultItems = ({
1571
1695
  command: "redo",
1572
1696
  icon: toolbarIcons2.redo,
1573
1697
  group: "left",
1698
+ attributes: {
1699
+ ariaLabel: "Redo"
1700
+ },
1574
1701
  onDeactivate: () => {
1575
1702
  redo.disabled.value = !superToolbar.redoDepth;
1576
1703
  }
@@ -1582,7 +1709,10 @@ const makeDefaultItems = ({
1582
1709
  tooltip: toolbarTexts2.trackChanges,
1583
1710
  command: "toggleTrackChanges",
1584
1711
  icon: toolbarIcons2.trackChanges,
1585
- group: "left"
1712
+ group: "left",
1713
+ attributes: {
1714
+ ariaLabel: "Track changes"
1715
+ }
1586
1716
  });
1587
1717
  const acceptTrackedChangeBySelection = useToolbarItem({
1588
1718
  type: "button",
@@ -1591,7 +1721,10 @@ const makeDefaultItems = ({
1591
1721
  tooltip: toolbarTexts2.trackChangesAccept,
1592
1722
  command: "acceptTrackedChangeBySelection",
1593
1723
  icon: toolbarIcons2.trackChangesAccept,
1594
- group: "left"
1724
+ group: "left",
1725
+ attributes: {
1726
+ ariaLabel: "Accept tracked changes"
1727
+ }
1595
1728
  });
1596
1729
  const rejectTrackedChangeOnSelection = useToolbarItem({
1597
1730
  type: "button",
@@ -1600,7 +1733,10 @@ const makeDefaultItems = ({
1600
1733
  tooltip: toolbarTexts2.trackChangesReject,
1601
1734
  command: "rejectTrackedChangeOnSelection",
1602
1735
  icon: toolbarIcons2.trackChangesReject,
1603
- group: "left"
1736
+ group: "left",
1737
+ attributes: {
1738
+ ariaLabel: "Reject tracked changes"
1739
+ }
1604
1740
  });
1605
1741
  const toggleTrackChangesOriginal = useToolbarItem({
1606
1742
  type: "button",
@@ -1609,7 +1745,10 @@ const makeDefaultItems = ({
1609
1745
  tooltip: toolbarTexts2.trackChangesOriginal,
1610
1746
  command: "toggleTrackChangesShowOriginal",
1611
1747
  icon: toolbarIcons2.trackChangesOriginal,
1612
- group: "left"
1748
+ group: "left",
1749
+ attributes: {
1750
+ ariaLabel: "Toggle tracked changes show original"
1751
+ }
1613
1752
  });
1614
1753
  const toggleTrackChangesFinal = useToolbarItem({
1615
1754
  type: "button",
@@ -1618,14 +1757,20 @@ const makeDefaultItems = ({
1618
1757
  tooltip: toolbarTexts2.trackChangesFinal,
1619
1758
  command: "toggleTrackChangesShowFinal",
1620
1759
  icon: toolbarIcons2.trackChangesFinal,
1621
- group: "left"
1760
+ group: "left",
1761
+ attributes: {
1762
+ ariaLabel: "Toggle tracked changes show final"
1763
+ }
1622
1764
  });
1623
1765
  const clearFormatting = useToolbarItem({
1624
1766
  type: "button",
1625
1767
  name: "clearFormatting",
1626
1768
  command: "clearFormat",
1627
1769
  tooltip: toolbarTexts2.clearFormatting,
1628
- icon: toolbarIcons2.clearFormatting
1770
+ icon: toolbarIcons2.clearFormatting,
1771
+ attributes: {
1772
+ ariaLabel: "Clear formatting"
1773
+ }
1629
1774
  });
1630
1775
  [
1631
1776
  bold,
@@ -1641,7 +1786,10 @@ const makeDefaultItems = ({
1641
1786
  name: "copyFormat",
1642
1787
  tooltip: toolbarTexts2.copyFormat,
1643
1788
  icon: toolbarIcons2.copyFormat,
1644
- command: "copyFormat"
1789
+ command: "copyFormat",
1790
+ attributes: {
1791
+ ariaLabel: "Copy formatting"
1792
+ }
1645
1793
  });
1646
1794
  const getDocumentOptionsAfterRole = (role2, documentOptions2) => {
1647
1795
  if (role2 === "editor") return documentOptions2;
@@ -1670,7 +1818,8 @@ const makeDefaultItems = ({
1670
1818
  disabled: role !== "editor",
1671
1819
  attributes: {
1672
1820
  dropdownPosition: "right",
1673
- className: "toolbar-item--doc-mode"
1821
+ className: "toolbar-item--doc-mode",
1822
+ ariaLabel: "Document mode"
1674
1823
  },
1675
1824
  options: [
1676
1825
  {
@@ -1717,7 +1866,10 @@ const makeDefaultItems = ({
1717
1866
  name: "pageBreakTool",
1718
1867
  command: "insertPageBreak",
1719
1868
  icon: toolbarIcons2.pageBreak,
1720
- tooltip: toolbarTexts2.pageBreak
1869
+ tooltip: toolbarTexts2.pageBreak,
1870
+ attributes: {
1871
+ ariaLabel: "Page break"
1872
+ }
1721
1873
  });
1722
1874
  const controlSizes = /* @__PURE__ */ new Map([
1723
1875
  ["separator", 20],
@@ -1735,7 +1887,10 @@ const makeDefaultItems = ({
1735
1887
  name: "ruler",
1736
1888
  command: "toggleRuler",
1737
1889
  icon: toolbarIcons2.ruler,
1738
- tooltip: toolbarTexts2.ruler
1890
+ tooltip: toolbarTexts2.ruler,
1891
+ attributes: {
1892
+ ariaLabel: "Ruler"
1893
+ }
1739
1894
  });
1740
1895
  const selectedLinkedStyle = ref(null);
1741
1896
  const linkedStyles = useToolbarItem({
@@ -1751,7 +1906,8 @@ const makeDefaultItems = ({
1751
1906
  suppressActiveHighlight: true,
1752
1907
  disabled: false,
1753
1908
  attributes: {
1754
- className: "toolbar-item--linked-styles"
1909
+ className: "toolbar-item--linked-styles",
1910
+ ariaLabel: "Linked styles"
1755
1911
  },
1756
1912
  options: [
1757
1913
  {
@@ -1798,6 +1954,9 @@ const makeDefaultItems = ({
1798
1954
  command: "setLineHeight",
1799
1955
  dropdownValueKey: "key",
1800
1956
  selectedValue: "1",
1957
+ attributes: {
1958
+ ariaLabel: "Line height"
1959
+ },
1801
1960
  options: [
1802
1961
  { label: "1,0", key: "1", icon: () => renderIcon("1", lineHeight.selectedValue), props: { "data-item": "btn-lineHeight-option" } },
1803
1962
  { label: "1,15", key: "1.15", icon: () => renderIcon("1.15", lineHeight.selectedValue), props: { "data-item": "btn-lineHeight-option" } },
@@ -3173,7 +3332,8 @@ const _sfc_main$2 = {
3173
3332
  createElementVNode("div", {
3174
3333
  ref_key: "editorElem",
3175
3334
  ref: editorElem,
3176
- class: "editor-element super-editor__element"
3335
+ class: "editor-element super-editor__element",
3336
+ role: "presentation"
3177
3337
  }, null, 512)
3178
3338
  ], 544),
3179
3339
  !editorReady.value ? (openBlock(), createElementBlock("div", _hoisted_2, [
@@ -3225,7 +3385,7 @@ const _sfc_main$2 = {
3225
3385
  };
3226
3386
  }
3227
3387
  };
3228
- const SuperEditor = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-ff8f86f4"]]);
3388
+ const SuperEditor = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-f27b7c30"]]);
3229
3389
  const _sfc_main$1 = {
3230
3390
  __name: "BasicUpload",
3231
3391
  emits: ["file-change"],
@@ -3358,12 +3518,12 @@ export {
3358
3518
  Toolbar,
3359
3519
  T as TrackChangesBasePluginKey,
3360
3520
  createZip,
3361
- l as fieldAnnotationHelpers,
3521
+ m as fieldAnnotationHelpers,
3362
3522
  getActiveFormatting,
3363
3523
  getAllowedImageDimensions,
3364
- n as getMarksFromSelection,
3524
+ o as getMarksFromSelection,
3365
3525
  getRichTextExtensions,
3366
3526
  getStarterExtensions,
3367
- k as helpers,
3368
- m as trackChangesHelpers
3527
+ l as helpers,
3528
+ n as trackChangesHelpers
3369
3529
  };