@quoreadmin/ui 1.7.9 → 1.7.10

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 (205) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index140.js +2 -2
  3. package/dist/index142.js +13 -13
  4. package/dist/index144.js +4 -4
  5. package/dist/index155.js +1 -1
  6. package/dist/index159.js +7 -7
  7. package/dist/index172.js +14 -14
  8. package/dist/index173.js +3 -3
  9. package/dist/index183.js +2 -2
  10. package/dist/index185.js +9 -9
  11. package/dist/index187.js +5938 -36
  12. package/dist/index188.js +205 -42
  13. package/dist/index189.js +25 -1180
  14. package/dist/index190.js +20 -0
  15. package/dist/index191.js +72 -5932
  16. package/dist/index192.js +245 -199
  17. package/dist/index193.js +13674 -25
  18. package/dist/index194.js +26 -17
  19. package/dist/index195.js +61 -76
  20. package/dist/index196.js +224 -239
  21. package/dist/index197.js +283 -13659
  22. package/dist/index198.js +288 -27
  23. package/dist/index199.js +36 -63
  24. package/dist/index200.js +44 -238
  25. package/dist/index201.js +1169 -287
  26. package/dist/index203.js +29 -84
  27. package/dist/index204.js +109 -400
  28. package/dist/index205.js +36 -22
  29. package/dist/index206.js +26 -33
  30. package/dist/index207.js +31 -111
  31. package/dist/index208.js +9 -36
  32. package/dist/index209.js +19 -26
  33. package/dist/index210.js +10 -36
  34. package/dist/index211.js +10 -9
  35. package/dist/index212.js +50 -18
  36. package/dist/index213.js +43 -10
  37. package/dist/index214.js +4 -10
  38. package/dist/index215.js +36 -48
  39. package/dist/index216.js +21 -43
  40. package/dist/index217.js +87 -3
  41. package/dist/index218.js +403 -35
  42. package/dist/index219.js +22 -21
  43. package/dist/index220.js +4 -4
  44. package/dist/index221.js +1 -1
  45. package/dist/index222.js +1 -1
  46. package/dist/index223.js +1 -1
  47. package/dist/index224.js +7 -7
  48. package/dist/index225.js +2 -2
  49. package/dist/index227.js +2 -2
  50. package/dist/index232.js +3614 -109
  51. package/dist/index233.js +49 -32
  52. package/dist/index234.js +70 -73
  53. package/dist/index235.js +52 -20
  54. package/dist/index236.js +215 -20
  55. package/dist/index237.js +10 -20
  56. package/dist/index238.js +57 -20
  57. package/dist/index239.js +61 -22
  58. package/dist/index240.js +54 -22
  59. package/dist/index241.js +75 -20
  60. package/dist/index242.js +678 -791
  61. package/dist/index243.js +32 -695
  62. package/dist/index244.js +56 -168
  63. package/dist/index245.js +11 -22
  64. package/dist/index246.js +705 -20
  65. package/dist/index247.js +820 -20
  66. package/dist/index248.js +127 -3
  67. package/dist/index249.js +24 -173
  68. package/dist/index250.js +78 -131
  69. package/dist/index251.js +20 -1223
  70. package/dist/index252.js +10 -10
  71. package/dist/index253.js +13 -15
  72. package/dist/index254.js +13 -15
  73. package/dist/index255.js +15 -22
  74. package/dist/index256.js +15 -13
  75. package/dist/index257.js +12 -12
  76. package/dist/index258.js +836 -2
  77. package/dist/index259.js +702 -2
  78. package/dist/index260.js +170 -3626
  79. package/dist/index261.js +22 -55
  80. package/dist/index262.js +20 -77
  81. package/dist/index263.js +20 -52
  82. package/dist/index264.js +3 -215
  83. package/dist/index265.js +187 -10
  84. package/dist/index266.js +128 -52
  85. package/dist/index267.js +1214 -52
  86. package/dist/index268.js +20 -54
  87. package/dist/index269.js +22 -75
  88. package/dist/index270.js +21 -722
  89. package/dist/index271.js +29 -39
  90. package/dist/index272.js +20 -64
  91. package/dist/index273.js +20 -11
  92. package/dist/index274.js +2 -705
  93. package/dist/index275.js +2 -820
  94. package/dist/index280.js +54 -3
  95. package/dist/index281.js +77 -25
  96. package/dist/index282.js +25 -53
  97. package/dist/index283.js +21 -78
  98. package/dist/index284.js +13 -17
  99. package/dist/index285.js +16 -22
  100. package/dist/index286.js +17 -22
  101. package/dist/index287.js +22 -15
  102. package/dist/index288.js +3 -17
  103. package/dist/index289.js +27 -23
  104. package/dist/index290.js +1518 -2
  105. package/dist/index291.js +366 -215
  106. package/dist/index292.js +2729 -4
  107. package/dist/index293.js +83 -131
  108. package/dist/index294.js +3768 -66
  109. package/dist/index295.js +56 -83
  110. package/dist/index296.js +15 -29
  111. package/dist/index297.js +83 -8
  112. package/dist/index298.js +191 -64
  113. package/dist/index299.js +245 -3
  114. package/dist/index300.js +2 -2
  115. package/dist/index301.js +74 -78
  116. package/dist/index302.js +21 -53
  117. package/dist/index303.js +934 -5
  118. package/dist/index304.js +21 -4
  119. package/dist/index305.js +19 -178
  120. package/dist/index306.js +19 -62
  121. package/dist/index307.js +68 -74
  122. package/dist/index308.js +19 -1518
  123. package/dist/index309.js +19 -386
  124. package/dist/index310.js +22 -2731
  125. package/dist/index311.js +21 -85
  126. package/dist/index312.js +63 -3770
  127. package/dist/index313.js +227 -52
  128. package/dist/index314.js +5 -78
  129. package/dist/index315.js +133 -21
  130. package/dist/index316.js +62 -929
  131. package/dist/index317.js +86 -21
  132. package/dist/index318.js +28 -19
  133. package/dist/index319.js +7 -18
  134. package/dist/index320.js +73 -67
  135. package/dist/index321.js +4 -19
  136. package/dist/index322.js +2 -19
  137. package/dist/index323.js +82 -21
  138. package/dist/index324.js +53 -21
  139. package/dist/index325.js +6 -63
  140. package/dist/index326.js +5 -15
  141. package/dist/index327.js +166 -71
  142. package/dist/index328.js +57 -196
  143. package/dist/index329.js +75 -246
  144. package/dist/index330.js +36 -8
  145. package/dist/index331.js +8 -12
  146. package/dist/index332.js +12 -54
  147. package/dist/index333.js +52 -9
  148. package/dist/index334.js +11 -13
  149. package/dist/index335.js +9 -53
  150. package/dist/index336.js +55 -49
  151. package/dist/index337.js +49 -28
  152. package/dist/index338.js +31 -2
  153. package/dist/index339.js +2 -5
  154. package/dist/index340.js +5 -2
  155. package/dist/index341.js +2 -23
  156. package/dist/index342.js +21 -39
  157. package/dist/index343.js +41 -2
  158. package/dist/index344.js +2 -11
  159. package/dist/index345.js +11 -20
  160. package/dist/index346.js +18 -15
  161. package/dist/index347.js +16 -9
  162. package/dist/index348.js +9 -9
  163. package/dist/index349.js +10 -2
  164. package/dist/index350.js +2 -9
  165. package/dist/index351.js +9 -10
  166. package/dist/index352.js +10 -14
  167. package/dist/index353.js +14 -37
  168. package/dist/index354.js +19 -20
  169. package/dist/index355.js +19 -55
  170. package/dist/index356.js +63 -28
  171. package/dist/index357.js +37 -7
  172. package/dist/index358.js +18 -49
  173. package/dist/index359.js +56 -6
  174. package/dist/index360.js +27 -10
  175. package/dist/index361.js +7 -7
  176. package/dist/index362.js +51 -27
  177. package/dist/index363.js +6 -2
  178. package/dist/index364.js +11 -69
  179. package/dist/index365.js +6 -166
  180. package/dist/index366.js +28 -20
  181. package/dist/index367.js +2 -20
  182. package/dist/index368.js +67 -61
  183. package/dist/index369.js +166 -36
  184. package/dist/index370.js +98 -28
  185. package/dist/index371.js +90 -10
  186. package/dist/index372.js +98 -4
  187. package/dist/index373.js +17 -4
  188. package/dist/index374.js +30 -12
  189. package/dist/index375.js +11 -7
  190. package/dist/index376.js +3 -11
  191. package/dist/index377.js +3 -4
  192. package/dist/index378.js +13 -33
  193. package/dist/index379.js +7 -31
  194. package/dist/index380.js +12 -28
  195. package/dist/index381.js +5 -61
  196. package/dist/index382.js +33 -101
  197. package/dist/index383.js +31 -91
  198. package/dist/index384.js +27 -16
  199. package/dist/index385.js +59 -96
  200. package/dist/index386.js +1 -1
  201. package/dist/index391.js +1 -1
  202. package/dist/index392.js +2 -2
  203. package/dist/index44.js +22 -22
  204. package/package.json +1 -1
  205. package/dist/index202.js +0 -290
package/dist/index194.js CHANGED
@@ -1,20 +1,29 @@
1
- import r from "./index204.js";
2
- var o = {
3
- name: "Row",
4
- extends: r,
5
- inject: ["$rows"],
6
- mounted: function() {
7
- var t;
8
- (t = this.$rows) === null || t === void 0 || t.add(this.$);
9
- },
10
- unmounted: function() {
11
- var t;
12
- (t = this.$rows) === null || t === void 0 || t.delete(this.$);
13
- },
14
- render: function() {
15
- return null;
1
+ import { Extension as r } from "./index232.js";
2
+ import { Blockquote as n } from "./index233.js";
3
+ import { Bold as p } from "./index234.js";
4
+ import { Code as f } from "./index235.js";
5
+ import { CodeBlock as h } from "./index236.js";
6
+ import { Document as u } from "./index237.js";
7
+ import { HardBreak as l } from "./index238.js";
8
+ import { Heading as a } from "./index239.js";
9
+ import { HorizontalRule as c } from "./index240.js";
10
+ import { Italic as d } from "./index241.js";
11
+ import { Link as m } from "./index197.js";
12
+ import { BulletList as g, ListItem as k, ListKeymap as B, OrderedList as L } from "./index242.js";
13
+ import { Paragraph as x } from "./index243.js";
14
+ import { Strike as b } from "./index244.js";
15
+ import { Text as v } from "./index245.js";
16
+ import { Underline as R } from "./index195.js";
17
+ import { Dropcursor as K, Gapcursor as _, UndoRedo as I, TrailingNode as q } from "./index198.js";
18
+ var y = r.create({
19
+ name: "starterKit",
20
+ addExtensions() {
21
+ var i, s, t, e;
22
+ const o = [];
23
+ return this.options.bold !== !1 && o.push(p.configure(this.options.bold)), this.options.blockquote !== !1 && o.push(n.configure(this.options.blockquote)), this.options.bulletList !== !1 && o.push(g.configure(this.options.bulletList)), this.options.code !== !1 && o.push(f.configure(this.options.code)), this.options.codeBlock !== !1 && o.push(h.configure(this.options.codeBlock)), this.options.document !== !1 && o.push(u.configure(this.options.document)), this.options.dropcursor !== !1 && o.push(K.configure(this.options.dropcursor)), this.options.gapcursor !== !1 && o.push(_.configure(this.options.gapcursor)), this.options.hardBreak !== !1 && o.push(l.configure(this.options.hardBreak)), this.options.heading !== !1 && o.push(a.configure(this.options.heading)), this.options.undoRedo !== !1 && o.push(I.configure(this.options.undoRedo)), this.options.horizontalRule !== !1 && o.push(c.configure(this.options.horizontalRule)), this.options.italic !== !1 && o.push(d.configure(this.options.italic)), this.options.listItem !== !1 && o.push(k.configure(this.options.listItem)), this.options.listKeymap !== !1 && o.push(B.configure((i = this.options) == null ? void 0 : i.listKeymap)), this.options.link !== !1 && o.push(m.configure((s = this.options) == null ? void 0 : s.link)), this.options.orderedList !== !1 && o.push(L.configure(this.options.orderedList)), this.options.paragraph !== !1 && o.push(x.configure(this.options.paragraph)), this.options.strike !== !1 && o.push(b.configure(this.options.strike)), this.options.text !== !1 && o.push(v.configure(this.options.text)), this.options.underline !== !1 && o.push(R.configure((t = this.options) == null ? void 0 : t.underline)), this.options.trailingNode !== !1 && o.push(q.configure((e = this.options) == null ? void 0 : e.trailingNode)), o;
16
24
  }
17
- };
25
+ }), M = y;
18
26
  export {
19
- o as default
27
+ y as StarterKit,
28
+ M as default
20
29
  };
package/dist/index195.js CHANGED
@@ -1,80 +1,65 @@
1
- const I = {
2
- variantFlipOrder: { start: "sme", middle: "mse", end: "ems" },
3
- positionFlipOrder: { top: "tbrl", right: "rltb", bottom: "btrl", left: "lrbt" },
4
- position: "bottom",
5
- margin: 8,
6
- padding: 0
7
- }, J = (n, i, m) => {
8
- const {
9
- container: r,
10
- arrow: a,
11
- margin: e,
12
- padding: l,
13
- position: V,
14
- variantFlipOrder: C,
15
- positionFlipOrder: M
16
- } = {
17
- container: document.documentElement.getBoundingClientRect(),
18
- ...I,
19
- ...m
20
- }, { left: F, top: K } = i.style;
21
- i.style.left = "0", i.style.top = "0";
22
- const t = n.getBoundingClientRect(), o = i.getBoundingClientRect(), P = {
23
- t: t.top - o.height - e,
24
- b: t.bottom + e,
25
- r: t.right + e,
26
- l: t.left - o.width - e
27
- }, R = {
28
- vs: t.left,
29
- vm: t.left + t.width / 2 - o.width / 2,
30
- ve: t.left + t.width - o.width,
31
- hs: t.top,
32
- hm: t.bottom - t.height / 2 - o.height / 2,
33
- he: t.bottom - o.height
34
- }, [$, E = "middle"] = V.split("-"), L = M[$], j = C[E], { top: y, left: x, bottom: B, right: O } = r;
35
- for (const c of L) {
36
- const s = c === "t" || c === "b";
37
- let p = P[c];
38
- const [d, g] = s ? ["top", "left"] : ["left", "top"], [u, b] = s ? [o.height, o.width] : [o.width, o.height], [z, T] = s ? [B, O] : [O, B], [H, k] = s ? [y, x] : [x, y];
39
- if (!(p < H || p + u + l > z))
40
- for (const v of j) {
41
- let f = R[(s ? "v" : "h") + v];
42
- if (!(f < k || f + b + l > T)) {
43
- if (f -= o[g], p -= o[d], i.style[g] = `${f}px`, i.style[d] = `${p}px`, a) {
44
- const w = s ? t.width / 2 : t.height / 2, h = b / 2, S = w > h, q = {
45
- s: S ? h : w,
46
- m: h,
47
- e: S ? h : b - w
48
- }, A = {
49
- t: u,
50
- b: 0,
51
- r: 0,
52
- l: u
53
- }, D = f + q[v], G = p + A[c];
54
- a.style[g] = `${D}px`, a.style[d] = `${G}px`;
55
- }
56
- return c + v;
57
- }
1
+ import { Mark as s, mergeAttributes as d } from "./index232.js";
2
+ var u = s.create({
3
+ name: "underline",
4
+ addOptions() {
5
+ return {
6
+ HTMLAttributes: {}
7
+ };
8
+ },
9
+ parseHTML() {
10
+ return [
11
+ {
12
+ tag: "u"
13
+ },
14
+ {
15
+ style: "text-decoration",
16
+ consuming: !1,
17
+ getAttrs: (e) => e.includes("underline") ? {} : !1
58
18
  }
59
- }
60
- return i.style.left = F, i.style.top = K, null;
61
- }, N = (n, i, m) => {
62
- const r = typeof n == "object" && !(n instanceof HTMLElement) ? n : { reference: n, popper: i, ...m };
63
- return {
64
- /**
65
- * Repositions the current popper.
66
- * @param options Optional options which get merged with the current ones.
67
- */
68
- update(a = r) {
69
- const { reference: e, popper: l } = Object.assign(r, a);
70
- if (!l || !e)
71
- throw new Error("Popper- or reference-element missing.");
72
- return J(e, l, r);
19
+ ];
20
+ },
21
+ renderHTML({ HTMLAttributes: e }) {
22
+ return ["u", d(this.options.HTMLAttributes, e), 0];
23
+ },
24
+ parseMarkdown(e, n) {
25
+ return n.applyMark(this.name || "underline", n.parseInline(e.tokens || []));
26
+ },
27
+ renderMarkdown(e, n) {
28
+ return `++${n.renderChildren(e)}++`;
29
+ },
30
+ markdownTokenizer: {
31
+ name: "underline",
32
+ level: "inline",
33
+ start(e) {
34
+ return e.indexOf("++");
35
+ },
36
+ tokenize(e, n, i) {
37
+ const r = /^(\+\+)([\s\S]+?)(\+\+)/.exec(e);
38
+ if (!r)
39
+ return;
40
+ const t = r[2].trim();
41
+ return {
42
+ type: "underline",
43
+ raw: r[0],
44
+ text: t,
45
+ tokens: i.inlineTokens(t)
46
+ };
73
47
  }
74
- };
75
- };
48
+ },
49
+ addCommands() {
50
+ return {
51
+ setUnderline: () => ({ commands: e }) => e.setMark(this.name),
52
+ toggleUnderline: () => ({ commands: e }) => e.toggleMark(this.name),
53
+ unsetUnderline: () => ({ commands: e }) => e.unsetMark(this.name)
54
+ };
55
+ },
56
+ addKeyboardShortcuts() {
57
+ return {
58
+ "Mod-u": () => this.editor.commands.toggleUnderline(),
59
+ "Mod-U": () => this.editor.commands.toggleUnderline()
60
+ };
61
+ }
62
+ });
76
63
  export {
77
- N as createPopper,
78
- I as defaults,
79
- J as reposition
64
+ u as Underline
80
65
  };
package/dist/index196.js CHANGED
@@ -1,255 +1,240 @@
1
- import { Editor as p } from "./index260.js";
2
- import { CommandManager as y, Extendable as M, Extension as T, InputRule as F, MappablePosition as I, Mark as B, Node as O, NodePos as D, PasteRule as _, callOrReturn as j, canInsertNode as V, combineTransactionSteps as q, commands as z, createAtomBlockMarkdownSpec as L, createBlockMarkdownSpec as U, createChainableState as $, createDocument as H, createInlineMarkdownSpec as W, createMappablePosition as G, createNodeFromContent as J, createStyleTag as K, defaultBlockAt as Q, deleteProps as X, elementFromString as Y, extensions as Z, findChildrenInRange as ee, findDuplicates as te, findParentNode as ne, findParentNodeClosestToPos as re, flattenExtensions as ie, fromString as oe, getAttributes as ae, getAttributesFromExtensions as se, getChangedRanges as le, getExtensionField as de, getHTMLFromFragment as ue, getMarkAttributes as ce, getMarkRange as pe, getMarkType as ge, getMarksBetween as me, getNodeAtPosition as ve, getNodeAttributes as Se, getNodeType as he, getRenderedAttributes as xe, getSchemaByResolvedExtensions as fe, getSchemaTypeByName as we, getSchemaTypeNameByName as Ee, getSplittedAttributes as Ne, getText as be, getTextBetween as Ce, getTextContentFromNodes as ke, getTextSerializersFromSchema as Ae, getUpdatedPosition as Re, injectExtensionAttributesToParseRule as Pe, inputRulesPlugin as ye, isActive as Me, isAndroid as Te, isAtEndOfNode as Fe, isAtStartOfNode as Ie, isEmptyObject as Be, isExtensionRulesEnabled as Oe, isFunction as De, isList as _e, isMacOS as je, isMarkActive as Ve, isNodeActive as qe, isNodeEmpty as ze, isNodeSelection as Le, isNumber as Ue, isPlainObject as $e, isRegExp as He, isSafari as We, isTextSelection as Ge, isiOS as Je, markInputRule as Ke, markPasteRule as Qe, markdown as Xe, mergeAttributes as Ye, mergeDeep as Ze, minMax as et, nodeInputRule as tt, objectIncludes as nt, parseAttributes as rt, parseIndentedBlocks as it, pasteRulesPlugin as ot, removeDuplicates as at, renderNestedMarkdownContent as st, resolveExtensions as lt, resolveFocusPosition as dt, selectionToInsertionEnd as ut, serializeAttributes as ct, sortExtensions as pt, splitExtensions as gt, textblockTypeInputRule as mt, updateMarkViewAttributes as vt, wrappingInputRule as St } from "./index260.js";
3
- import { defineComponent as s, h as l, ref as g, getCurrentInstance as m, watchEffect as v, nextTick as S, unref as h, onBeforeUnmount as u, shallowRef as x, onMounted as f, markRaw as w, customRef as E } from "vue";
4
- function d(t) {
5
- return E((e, r) => ({
6
- get() {
7
- return e(), t;
8
- },
9
- set(n) {
10
- t = n, requestAnimationFrame(() => {
11
- requestAnimationFrame(() => {
12
- r();
13
- });
14
- });
15
- }
16
- }));
17
- }
18
- var N = class extends p {
19
- constructor(t = {}) {
20
- return super(t), this.contentComponent = null, this.appContext = null, this.reactiveState = d(this.view.state), this.reactiveExtensionStorage = d(this.extensionStorage), this.on("beforeTransaction", ({ nextState: e }) => {
21
- this.reactiveState.value = e, this.reactiveExtensionStorage.value = this.extensionStorage;
22
- }), w(this);
23
- }
24
- get state() {
25
- return this.reactiveState ? this.reactiveState.value : this.view.state;
26
- }
27
- get storage() {
28
- return this.reactiveExtensionStorage ? this.reactiveExtensionStorage.value : super.storage;
29
- }
30
- /**
31
- * Register a ProseMirror plugin.
32
- */
33
- registerPlugin(t, e) {
34
- const r = super.registerPlugin(t, e);
35
- return this.reactiveState && (this.reactiveState.value = r), r;
1
+ import { Mark as y, Extension as l, mergeAttributes as p } from "./index232.js";
2
+ var d = 20, u = (t, e = 0) => {
3
+ const r = [];
4
+ return !t.children.length || e > d || Array.from(t.children).forEach((o) => {
5
+ o.tagName === "SPAN" ? r.push(o) : o.children.length && r.push(...u(o, e + 1));
6
+ }), r;
7
+ }, f = (t) => {
8
+ if (!t.children.length)
9
+ return;
10
+ const e = u(t);
11
+ e && e.forEach((r) => {
12
+ var o, n;
13
+ const s = r.getAttribute("style"), i = (n = (o = r.parentElement) == null ? void 0 : o.closest("span")) == null ? void 0 : n.getAttribute("style");
14
+ r.setAttribute("style", `${i};${s}`);
15
+ });
16
+ }, c = y.create({
17
+ name: "textStyle",
18
+ priority: 101,
19
+ addOptions() {
20
+ return {
21
+ HTMLAttributes: {},
22
+ mergeNestedSpanStyles: !0
23
+ };
24
+ },
25
+ parseHTML() {
26
+ return [
27
+ {
28
+ tag: "span",
29
+ consuming: !1,
30
+ getAttrs: (t) => t.hasAttribute("style") ? (this.options.mergeNestedSpanStyles && f(t), {}) : !1
31
+ }
32
+ ];
33
+ },
34
+ renderHTML({ HTMLAttributes: t }) {
35
+ return ["span", p(this.options.HTMLAttributes, t), 0];
36
+ },
37
+ addCommands() {
38
+ return {
39
+ toggleTextStyle: (t) => ({ commands: e }) => e.toggleMark(this.name, t),
40
+ removeEmptyTextStyle: () => ({ tr: t }) => {
41
+ const { selection: e } = t;
42
+ return t.doc.nodesBetween(e.from, e.to, (r, o) => {
43
+ if (r.isTextblock)
44
+ return !0;
45
+ r.marks.filter((n) => n.type === this.type).some((n) => Object.values(n.attrs).some((s) => !!s)) || t.removeMark(o, o + r.nodeSize, this.type);
46
+ }), !0;
47
+ }
48
+ };
36
49
  }
37
- /**
38
- * Unregister a ProseMirror plugin.
39
- */
40
- unregisterPlugin(t) {
41
- const e = super.unregisterPlugin(t);
42
- return this.reactiveState && e && (this.reactiveState.value = e), e;
50
+ }), m = l.create({
51
+ name: "backgroundColor",
52
+ addOptions() {
53
+ return {
54
+ types: ["textStyle"]
55
+ };
56
+ },
57
+ addGlobalAttributes() {
58
+ return [
59
+ {
60
+ types: this.options.types,
61
+ attributes: {
62
+ backgroundColor: {
63
+ default: null,
64
+ parseHTML: (t) => {
65
+ var e;
66
+ const r = t.getAttribute("style");
67
+ if (r) {
68
+ const o = r.split(";").map((n) => n.trim()).filter(Boolean);
69
+ for (let n = o.length - 1; n >= 0; n -= 1) {
70
+ const s = o[n].split(":");
71
+ if (s.length >= 2) {
72
+ const i = s[0].trim().toLowerCase(), a = s.slice(1).join(":").trim();
73
+ if (i === "background-color")
74
+ return a.replace(/['"]+/g, "");
75
+ }
76
+ }
77
+ }
78
+ return (e = t.style.backgroundColor) == null ? void 0 : e.replace(/['"]+/g, "");
79
+ },
80
+ renderHTML: (t) => t.backgroundColor ? {
81
+ style: `background-color: ${t.backgroundColor}`
82
+ } : {}
83
+ }
84
+ }
85
+ }
86
+ ];
87
+ },
88
+ addCommands() {
89
+ return {
90
+ setBackgroundColor: (t) => ({ chain: e }) => e().setMark("textStyle", { backgroundColor: t }).run(),
91
+ unsetBackgroundColor: () => ({ chain: t }) => t().setMark("textStyle", { backgroundColor: null }).removeEmptyTextStyle().run()
92
+ };
43
93
  }
44
- }, k = s({
45
- name: "EditorContent",
46
- props: {
47
- editor: {
48
- default: null,
49
- type: Object
50
- }
94
+ }), g = l.create({
95
+ name: "color",
96
+ addOptions() {
97
+ return {
98
+ types: ["textStyle"]
99
+ };
100
+ },
101
+ addGlobalAttributes() {
102
+ return [
103
+ {
104
+ types: this.options.types,
105
+ attributes: {
106
+ color: {
107
+ default: null,
108
+ parseHTML: (t) => {
109
+ var e;
110
+ const r = t.getAttribute("style");
111
+ if (r) {
112
+ const o = r.split(";").map((n) => n.trim()).filter(Boolean);
113
+ for (let n = o.length - 1; n >= 0; n -= 1) {
114
+ const s = o[n].split(":");
115
+ if (s.length >= 2) {
116
+ const i = s[0].trim().toLowerCase(), a = s.slice(1).join(":").trim();
117
+ if (i === "color")
118
+ return a.replace(/['"]+/g, "");
119
+ }
120
+ }
121
+ }
122
+ return (e = t.style.color) == null ? void 0 : e.replace(/['"]+/g, "");
123
+ },
124
+ renderHTML: (t) => t.color ? {
125
+ style: `color: ${t.color}`
126
+ } : {}
127
+ }
128
+ }
129
+ }
130
+ ];
51
131
  },
52
- setup(t) {
53
- const e = g(), r = m();
54
- return v(() => {
55
- const n = t.editor;
56
- n && n.options.element && e.value && S(() => {
57
- var i;
58
- if (!e.value || !((i = n.view.dom) != null && i.parentNode))
59
- return;
60
- const a = h(e.value);
61
- e.value.append(...n.view.dom.parentNode.childNodes), n.contentComponent = r.ctx._, r && (n.appContext = {
62
- ...r.appContext,
63
- // Vue internally uses prototype chain to forward/shadow injects across the entire component chain
64
- // so don't use object spread operator or 'Object.assign' and just set `provides` as is on editor's appContext
65
- // @ts-expect-error forward instance's 'provides' into appContext
66
- provides: r.provides
67
- }), n.setOptions({
68
- element: a
69
- }), n.createNodeViews();
70
- });
71
- }), u(() => {
72
- const n = t.editor;
73
- n && (n.contentComponent = null, n.appContext = null);
74
- }), { rootEl: e };
132
+ addCommands() {
133
+ return {
134
+ setColor: (t) => ({ chain: e }) => e().setMark("textStyle", { color: t }).run(),
135
+ unsetColor: () => ({ chain: t }) => t().setMark("textStyle", { color: null }).removeEmptyTextStyle().run()
136
+ };
137
+ }
138
+ }), h = l.create({
139
+ name: "fontFamily",
140
+ addOptions() {
141
+ return {
142
+ types: ["textStyle"]
143
+ };
75
144
  },
76
- render() {
77
- return l("div", {
78
- ref: (t) => {
79
- this.rootEl = t;
145
+ addGlobalAttributes() {
146
+ return [
147
+ {
148
+ types: this.options.types,
149
+ attributes: {
150
+ fontFamily: {
151
+ default: null,
152
+ parseHTML: (t) => t.style.fontFamily,
153
+ renderHTML: (t) => t.fontFamily ? {
154
+ style: `font-family: ${t.fontFamily}`
155
+ } : {}
156
+ }
157
+ }
80
158
  }
81
- });
159
+ ];
160
+ },
161
+ addCommands() {
162
+ return {
163
+ setFontFamily: (t) => ({ chain: e }) => e().setMark("textStyle", { fontFamily: t }).run(),
164
+ unsetFontFamily: () => ({ chain: t }) => t().setMark("textStyle", { fontFamily: null }).removeEmptyTextStyle().run()
165
+ };
82
166
  }
83
- });
84
- s({
85
- name: "NodeViewContent",
86
- props: {
87
- as: {
88
- type: String,
89
- default: "div"
90
- }
167
+ }), S = l.create({
168
+ name: "fontSize",
169
+ addOptions() {
170
+ return {
171
+ types: ["textStyle"]
172
+ };
173
+ },
174
+ addGlobalAttributes() {
175
+ return [
176
+ {
177
+ types: this.options.types,
178
+ attributes: {
179
+ fontSize: {
180
+ default: null,
181
+ parseHTML: (t) => t.style.fontSize,
182
+ renderHTML: (t) => t.fontSize ? {
183
+ style: `font-size: ${t.fontSize}`
184
+ } : {}
185
+ }
186
+ }
187
+ }
188
+ ];
91
189
  },
92
- render() {
93
- return l(this.as, {
94
- style: {
95
- whiteSpace: "pre-wrap"
96
- },
97
- "data-node-view-content": ""
98
- });
190
+ addCommands() {
191
+ return {
192
+ setFontSize: (t) => ({ chain: e }) => e().setMark("textStyle", { fontSize: t }).run(),
193
+ unsetFontSize: () => ({ chain: t }) => t().setMark("textStyle", { fontSize: null }).removeEmptyTextStyle().run()
194
+ };
99
195
  }
100
- });
101
- s({
102
- name: "NodeViewWrapper",
103
- props: {
104
- as: {
105
- type: String,
106
- default: "div"
107
- }
196
+ }), b = l.create({
197
+ name: "lineHeight",
198
+ addOptions() {
199
+ return {
200
+ types: ["textStyle"]
201
+ };
108
202
  },
109
- inject: ["onDragStart", "decorationClasses"],
110
- render() {
111
- var t, e;
112
- return l(
113
- this.as,
203
+ addGlobalAttributes() {
204
+ return [
114
205
  {
115
- // @ts-ignore
116
- class: this.decorationClasses,
117
- style: {
118
- whiteSpace: "normal"
119
- },
120
- "data-node-view-wrapper": "",
121
- // @ts-ignore (https://github.com/vuejs/vue-next/issues/3031)
122
- onDragstart: this.onDragStart
123
- },
124
- (e = (t = this.$slots).default) == null ? void 0 : e.call(t)
125
- );
206
+ types: this.options.types,
207
+ attributes: {
208
+ lineHeight: {
209
+ default: null,
210
+ parseHTML: (t) => t.style.lineHeight,
211
+ renderHTML: (t) => t.lineHeight ? {
212
+ style: `line-height: ${t.lineHeight}`
213
+ } : {}
214
+ }
215
+ }
216
+ }
217
+ ];
218
+ },
219
+ addCommands() {
220
+ return {
221
+ setLineHeight: (t) => ({ chain: e }) => e().setMark("textStyle", { lineHeight: t }).run(),
222
+ unsetLineHeight: () => ({ chain: t }) => t().setMark("textStyle", { lineHeight: null }).removeEmptyTextStyle().run()
223
+ };
126
224
  }
127
225
  });
128
- var A = (t = {}) => {
129
- const e = x();
130
- return f(() => {
131
- e.value = new N(t);
132
- }), u(() => {
133
- var r, n, i, a;
134
- const o = (n = (r = e.value) == null ? void 0 : r.view.dom) == null ? void 0 : n.parentNode, c = o?.cloneNode(!0);
135
- (i = o?.parentNode) == null || i.replaceChild(c, o), (a = e.value) == null || a.destroy();
136
- }), e;
137
- };
138
- s({
139
- name: "MarkViewContent",
140
- props: {
141
- as: {
142
- type: String,
143
- default: "span"
144
- }
145
- },
146
- render() {
147
- return l(this.as, {
148
- style: {
149
- whiteSpace: "inherit"
150
- },
151
- "data-mark-view-content": ""
152
- });
226
+ l.create({
227
+ name: "textStyleKit",
228
+ addExtensions() {
229
+ const t = [];
230
+ return this.options.backgroundColor !== !1 && t.push(m.configure(this.options.backgroundColor)), this.options.color !== !1 && t.push(g.configure(this.options.color)), this.options.fontFamily !== !1 && t.push(h.configure(this.options.fontFamily)), this.options.fontSize !== !1 && t.push(S.configure(this.options.fontSize)), this.options.lineHeight !== !1 && t.push(b.configure(this.options.lineHeight)), this.options.textStyle !== !1 && t.push(c.configure(this.options.textStyle)), t;
153
231
  }
154
232
  });
155
233
  export {
156
- y as CommandManager,
157
- N as Editor,
158
- k as EditorContent,
159
- M as Extendable,
160
- T as Extension,
161
- F as InputRule,
162
- I as MappablePosition,
163
- B as Mark,
164
- O as Node,
165
- D as NodePos,
166
- _ as PasteRule,
167
- j as callOrReturn,
168
- V as canInsertNode,
169
- q as combineTransactionSteps,
170
- z as commands,
171
- L as createAtomBlockMarkdownSpec,
172
- U as createBlockMarkdownSpec,
173
- $ as createChainableState,
174
- H as createDocument,
175
- W as createInlineMarkdownSpec,
176
- G as createMappablePosition,
177
- J as createNodeFromContent,
178
- K as createStyleTag,
179
- Q as defaultBlockAt,
180
- X as deleteProps,
181
- Y as elementFromString,
182
- Z as extensions,
183
- ee as findChildrenInRange,
184
- te as findDuplicates,
185
- ne as findParentNode,
186
- re as findParentNodeClosestToPos,
187
- ie as flattenExtensions,
188
- oe as fromString,
189
- ae as getAttributes,
190
- se as getAttributesFromExtensions,
191
- le as getChangedRanges,
192
- de as getExtensionField,
193
- ue as getHTMLFromFragment,
194
- ce as getMarkAttributes,
195
- pe as getMarkRange,
196
- ge as getMarkType,
197
- me as getMarksBetween,
198
- ve as getNodeAtPosition,
199
- Se as getNodeAttributes,
200
- he as getNodeType,
201
- xe as getRenderedAttributes,
202
- fe as getSchemaByResolvedExtensions,
203
- we as getSchemaTypeByName,
204
- Ee as getSchemaTypeNameByName,
205
- Ne as getSplittedAttributes,
206
- be as getText,
207
- Ce as getTextBetween,
208
- ke as getTextContentFromNodes,
209
- Ae as getTextSerializersFromSchema,
210
- Re as getUpdatedPosition,
211
- Pe as injectExtensionAttributesToParseRule,
212
- ye as inputRulesPlugin,
213
- Me as isActive,
214
- Te as isAndroid,
215
- Fe as isAtEndOfNode,
216
- Ie as isAtStartOfNode,
217
- Be as isEmptyObject,
218
- Oe as isExtensionRulesEnabled,
219
- De as isFunction,
220
- _e as isList,
221
- je as isMacOS,
222
- Ve as isMarkActive,
223
- qe as isNodeActive,
224
- ze as isNodeEmpty,
225
- Le as isNodeSelection,
226
- Ue as isNumber,
227
- $e as isPlainObject,
228
- He as isRegExp,
229
- We as isSafari,
230
- Ge as isTextSelection,
231
- Je as isiOS,
232
- Ke as markInputRule,
233
- Qe as markPasteRule,
234
- Xe as markdown,
235
- Ye as mergeAttributes,
236
- Ze as mergeDeep,
237
- et as minMax,
238
- tt as nodeInputRule,
239
- nt as objectIncludes,
240
- rt as parseAttributes,
241
- it as parseIndentedBlocks,
242
- ot as pasteRulesPlugin,
243
- at as removeDuplicates,
244
- st as renderNestedMarkdownContent,
245
- lt as resolveExtensions,
246
- dt as resolveFocusPosition,
247
- ut as selectionToInsertionEnd,
248
- ct as serializeAttributes,
249
- pt as sortExtensions,
250
- gt as splitExtensions,
251
- mt as textblockTypeInputRule,
252
- vt as updateMarkViewAttributes,
253
- A as useEditor,
254
- St as wrappingInputRule
234
+ m as BackgroundColor,
235
+ g as Color,
236
+ h as FontFamily,
237
+ S as FontSize,
238
+ b as LineHeight,
239
+ c as TextStyle
255
240
  };