@quoreadmin/ui 1.7.20 → 1.8.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 (355) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.js +42 -40
  3. package/dist/index10.js +2 -2
  4. package/dist/{index100.js → index101.js} +1 -1
  5. package/dist/index103.js +138 -6
  6. package/dist/index104.js +4 -0
  7. package/dist/index107.js +2 -2
  8. package/dist/index109.js +1 -1
  9. package/dist/index11.js +2 -2
  10. package/dist/index111.js +3 -3
  11. package/dist/index113.js +6 -6
  12. package/dist/index115.js +1 -1
  13. package/dist/index117.js +5 -5
  14. package/dist/index12.js +2 -2
  15. package/dist/index127.js +69 -10
  16. package/dist/index129.js +9 -75
  17. package/dist/index13.js +2 -2
  18. package/dist/index131.js +68 -243
  19. package/dist/index133.js +257 -0
  20. package/dist/index136.js +35 -16
  21. package/dist/index138.js +22 -50
  22. package/dist/index14.js +2 -2
  23. package/dist/index140.js +38 -1110
  24. package/dist/index142.js +1059 -216
  25. package/dist/index144.js +238 -294
  26. package/dist/index146.js +335 -16
  27. package/dist/index148.js +15 -87
  28. package/dist/index15.js +2 -2
  29. package/dist/index150.js +71 -61
  30. package/dist/index152.js +66 -93
  31. package/dist/index154.js +120 -0
  32. package/dist/index157.js +373 -28
  33. package/dist/index159.js +28 -194
  34. package/dist/index16.js +2 -2
  35. package/dist/index161.js +210 -0
  36. package/dist/index164.js +110 -5518
  37. package/dist/index165.js +484 -80
  38. package/dist/index166.js +5505 -844
  39. package/dist/index167.js +90 -37
  40. package/dist/index168.js +816 -235
  41. package/dist/index169.js +28 -140
  42. package/dist/index17.js +2 -2
  43. package/dist/index170.js +271 -1190
  44. package/dist/index171.js +134 -756
  45. package/dist/index172.js +1133 -1242
  46. package/dist/index173.js +753 -257
  47. package/dist/index174.js +1290 -88
  48. package/dist/index175.js +276 -2
  49. package/dist/index176.js +86 -1356
  50. package/dist/index177.js +4 -0
  51. package/dist/index178.js +1372 -14
  52. package/dist/index18.js +2 -2
  53. package/dist/index180.js +11 -11
  54. package/dist/index181.js +11 -11
  55. package/dist/index182.js +12 -19
  56. package/dist/index183.js +18 -759
  57. package/dist/index184.js +25 -1122
  58. package/dist/index185.js +625 -1100
  59. package/dist/index186.js +1122 -11277
  60. package/dist/index187.js +1234 -36
  61. package/dist/index188.js +11276 -43
  62. package/dist/index19.js +2 -2
  63. package/dist/index191.js +36 -5938
  64. package/dist/index192.js +42 -205
  65. package/dist/index193.js +5922 -19
  66. package/dist/index194.js +199 -10
  67. package/dist/index195.js +33 -76
  68. package/dist/index196.js +14 -249
  69. package/dist/index197.js +72 -13678
  70. package/dist/index198.js +253 -27
  71. package/dist/index199.js +13669 -48
  72. package/dist/index2.js +2 -2
  73. package/dist/index20.js +2 -2
  74. package/dist/index200.js +25 -236
  75. package/dist/index201.js +45 -290
  76. package/dist/index202.js +179 -229
  77. package/dist/index203.js +304 -29
  78. package/dist/index204.js +286 -114
  79. package/dist/index205.js +29 -32
  80. package/dist/index206.js +116 -26
  81. package/dist/index207.js +31 -31
  82. package/dist/index208.js +26 -9
  83. package/dist/index209.js +35 -18
  84. package/dist/index21.js +2 -2
  85. package/dist/index210.js +8 -9
  86. package/dist/index211.js +19 -10
  87. package/dist/index212.js +10 -51
  88. package/dist/index213.js +9 -42
  89. package/dist/index214.js +50 -3
  90. package/dist/index215.js +40 -36
  91. package/dist/index216.js +4 -21
  92. package/dist/index217.js +35 -84
  93. package/dist/index218.js +21 -407
  94. package/dist/index219.js +159 -20
  95. package/dist/index22.js +3 -3
  96. package/dist/index220.js +19 -160
  97. package/dist/index221.js +10 -10
  98. package/dist/index222.js +15 -13
  99. package/dist/index223.js +198 -21
  100. package/dist/index224.js +51 -180
  101. package/dist/index225.js +82 -64
  102. package/dist/index226.js +406 -33
  103. package/dist/index227.js +33 -39
  104. package/dist/index228.js +36 -123
  105. package/dist/index229.js +158 -35
  106. package/dist/index23.js +2 -2
  107. package/dist/index230.js +227 -79
  108. package/dist/index231.js +36 -19
  109. package/dist/index232.js +10 -20
  110. package/dist/index233.js +22 -20
  111. package/dist/index234.js +126 -19
  112. package/dist/index235.js +35 -158
  113. package/dist/index236.js +79 -227
  114. package/dist/index237.js +19 -36
  115. package/dist/index238.js +20 -10
  116. package/dist/index239.js +20 -3632
  117. package/dist/index24.js +2 -2
  118. package/dist/index240.js +20 -55
  119. package/dist/index241.js +22 -77
  120. package/dist/index242.js +22 -52
  121. package/dist/index243.js +20 -215
  122. package/dist/index244.js +836 -10
  123. package/dist/index245.js +695 -50
  124. package/dist/index246.js +174 -59
  125. package/dist/index247.js +22 -54
  126. package/dist/index248.js +20 -75
  127. package/dist/index249.js +19 -722
  128. package/dist/index25.js +60 -11
  129. package/dist/index250.js +3 -39
  130. package/dist/index251.js +181 -58
  131. package/dist/index252.js +133 -11
  132. package/dist/index253.js +1189 -671
  133. package/dist/index254.js +20 -820
  134. package/dist/index255.js +11 -11
  135. package/dist/index256.js +9 -9
  136. package/dist/index257.js +22 -13
  137. package/dist/index258.js +20 -836
  138. package/dist/index259.js +19 -701
  139. package/dist/index26.js +1 -1
  140. package/dist/index260.js +2 -176
  141. package/dist/index261.js +2 -22
  142. package/dist/index262.js +3632 -20
  143. package/dist/index263.js +55 -20
  144. package/dist/index264.js +77 -3
  145. package/dist/index265.js +46 -181
  146. package/dist/index266.js +209 -127
  147. package/dist/index267.js +10 -1223
  148. package/dist/index268.js +57 -20
  149. package/dist/index269.js +61 -22
  150. package/dist/index27.js +1 -1
  151. package/dist/index270.js +54 -22
  152. package/dist/index271.js +75 -29
  153. package/dist/index272.js +722 -19
  154. package/dist/index273.js +39 -20
  155. package/dist/index274.js +64 -2
  156. package/dist/index275.js +11 -2
  157. package/dist/index276.js +689 -237
  158. package/dist/index277.js +820 -8
  159. package/dist/index278.js +42 -126
  160. package/dist/index279.js +59 -63
  161. package/dist/index28.js +1 -1
  162. package/dist/index280.js +26 -3
  163. package/dist/index281.js +21 -26
  164. package/dist/index282.js +21 -53
  165. package/dist/index283.js +15 -78
  166. package/dist/index284.js +17 -26
  167. package/dist/index285.js +253 -22
  168. package/dist/index286.js +8 -22
  169. package/dist/index287.js +137 -15
  170. package/dist/index288.js +83 -17
  171. package/dist/index289.js +2 -2
  172. package/dist/index29.js +1 -1
  173. package/dist/index290.js +3 -2
  174. package/dist/index291.js +24 -1515
  175. package/dist/index292.js +2 -386
  176. package/dist/index293.js +245 -2714
  177. package/dist/index294.js +4 -84
  178. package/dist/index295.js +135 -3765
  179. package/dist/index296.js +70 -57
  180. package/dist/index297.js +86 -14
  181. package/dist/index298.js +27 -82
  182. package/dist/index299.js +13 -199
  183. package/dist/index3.js +2 -2
  184. package/dist/index30.js +1 -1
  185. package/dist/index300.js +66 -237
  186. package/dist/index301.js +3 -78
  187. package/dist/index302.js +2 -22
  188. package/dist/index303.js +74 -926
  189. package/dist/index304.js +52 -21
  190. package/dist/index305.js +5 -19
  191. package/dist/index306.js +4 -19
  192. package/dist/index307.js +171 -61
  193. package/dist/index308.js +62 -18
  194. package/dist/index309.js +74 -18
  195. package/dist/index31.js +1 -1
  196. package/dist/index310.js +78 -21
  197. package/dist/index311.js +11 -11
  198. package/dist/index312.js +930 -58
  199. package/dist/index313.js +21 -261
  200. package/dist/index314.js +19 -5
  201. package/dist/index315.js +19 -139
  202. package/dist/index316.js +67 -71
  203. package/dist/index317.js +17 -85
  204. package/dist/index318.js +19 -29
  205. package/dist/index319.js +21 -15
  206. package/dist/index32.js +1 -1
  207. package/dist/index320.js +21 -74
  208. package/dist/index321.js +63 -4
  209. package/dist/index322.js +1518 -2
  210. package/dist/index323.js +376 -73
  211. package/dist/index324.js +2726 -48
  212. package/dist/index325.js +84 -4
  213. package/dist/index326.js +3769 -4
  214. package/dist/index327.js +51 -170
  215. package/dist/index328.js +14 -62
  216. package/dist/index329.js +84 -75
  217. package/dist/index33.js +1 -1
  218. package/dist/index330.js +201 -8
  219. package/dist/index331.js +245 -12
  220. package/dist/index332.js +32 -50
  221. package/dist/index333.js +8 -11
  222. package/dist/index334.js +12 -13
  223. package/dist/index335.js +49 -52
  224. package/dist/index336.js +9 -49
  225. package/dist/index337.js +10 -27
  226. package/dist/index338.js +58 -2
  227. package/dist/index339.js +52 -5
  228. package/dist/index34.js +1 -1
  229. package/dist/index340.js +31 -2
  230. package/dist/index341.js +2 -23
  231. package/dist/index342.js +4 -40
  232. package/dist/index343.js +2 -2
  233. package/dist/index344.js +22 -10
  234. package/dist/index345.js +38 -17
  235. package/dist/index346.js +2 -17
  236. package/dist/index347.js +10 -9
  237. package/dist/index348.js +20 -10
  238. package/dist/index349.js +17 -2
  239. package/dist/index35.js +1 -1
  240. package/dist/index350.js +9 -8
  241. package/dist/index351.js +10 -10
  242. package/dist/index352.js +2 -14
  243. package/dist/index353.js +9 -37
  244. package/dist/index354.js +9 -19
  245. package/dist/index355.js +14 -20
  246. package/dist/index356.js +17 -62
  247. package/dist/index357.js +56 -36
  248. package/dist/index358.js +26 -16
  249. package/dist/index359.js +6 -56
  250. package/dist/index36.js +1 -1
  251. package/dist/index360.js +51 -28
  252. package/dist/index361.js +7 -7
  253. package/dist/index362.js +11 -51
  254. package/dist/index363.js +6 -6
  255. package/dist/index364.js +28 -12
  256. package/dist/index365.js +2 -7
  257. package/dist/index366.js +69 -27
  258. package/dist/index367.js +167 -2
  259. package/dist/index368.js +20 -70
  260. package/dist/index369.js +20 -167
  261. package/dist/index37.js +4 -16
  262. package/dist/index370.js +61 -98
  263. package/dist/index371.js +37 -91
  264. package/dist/index372.js +30 -97
  265. package/dist/index373.js +11 -17
  266. package/dist/index374.js +3 -30
  267. package/dist/index375.js +3 -10
  268. package/dist/index376.js +13 -4
  269. package/dist/index377.js +7 -4
  270. package/dist/index378.js +12 -13
  271. package/dist/index379.js +5 -7
  272. package/dist/index38.js +15 -43
  273. package/dist/index380.js +33 -12
  274. package/dist/index381.js +31 -5
  275. package/dist/index382.js +27 -32
  276. package/dist/index383.js +58 -28
  277. package/dist/index384.js +16 -27
  278. package/dist/index385.js +99 -59
  279. package/dist/index386.js +91 -3
  280. package/dist/index387.js +98 -2
  281. package/dist/index388.js +3 -2
  282. package/dist/index389.js +2 -17
  283. package/dist/index39.js +42 -67
  284. package/dist/index390.js +2 -13
  285. package/dist/index391.js +17 -6
  286. package/dist/index392.js +13 -32
  287. package/dist/index393.js +8 -0
  288. package/dist/index394.js +34 -0
  289. package/dist/index4.js +2 -2
  290. package/dist/index40.js +66 -26
  291. package/dist/index41.js +25 -32
  292. package/dist/index42.js +32 -37
  293. package/dist/index43.js +37 -1300
  294. package/dist/index44.js +1273 -337
  295. package/dist/index45.js +357 -145
  296. package/dist/index46.js +155 -18
  297. package/dist/index47.js +16 -42
  298. package/dist/index48.js +44 -68
  299. package/dist/index49.js +67 -61
  300. package/dist/index5.js +2 -2
  301. package/dist/index50.js +57 -175
  302. package/dist/index51.js +173 -77
  303. package/dist/index52.js +78 -199
  304. package/dist/index53.js +206 -68
  305. package/dist/index54.js +69 -20
  306. package/dist/index55.js +20 -11
  307. package/dist/index56.js +10 -6
  308. package/dist/index57.js +5 -209
  309. package/dist/index58.js +210 -12
  310. package/dist/index59.js +12 -184
  311. package/dist/index6.js +2 -2
  312. package/dist/index60.js +176 -68
  313. package/dist/index61.js +79 -0
  314. package/dist/index63.js +7 -63
  315. package/dist/index64.js +65 -0
  316. package/dist/index7.js +2 -2
  317. package/dist/{index71.js → index72.js} +2 -2
  318. package/dist/index76.js +40 -308
  319. package/dist/index77.js +330 -0
  320. package/dist/index8.js +3 -3
  321. package/dist/{index80.js → index81.js} +5 -5
  322. package/dist/{index82.js → index83.js} +1 -1
  323. package/dist/index85.js +23 -131
  324. package/dist/index86.js +144 -0
  325. package/dist/{index87.js → index88.js} +5 -5
  326. package/dist/index9.js +2 -2
  327. package/dist/{index89.js → index90.js} +5 -5
  328. package/dist/{index95.js → index96.js} +3 -3
  329. package/dist/index98.js +20 -25
  330. package/dist/index99.js +34 -0
  331. package/dist/src/components/footer-actions/footer-actions.stories.d.ts +33 -1
  332. package/dist/src/components/footer-actions/footer-actions.vue.d.ts +29 -2
  333. package/dist/src/components/page-header/page-header.stories.d.ts +394 -0
  334. package/dist/src/components/page-header/page-header.vue.d.ts +43 -0
  335. package/dist/src/index.d.ts +1 -0
  336. package/package.json +1 -1
  337. package/src/assets/illustrations/app-icon-news.svg +1 -0
  338. package/dist/index102.js +0 -142
  339. package/dist/index134.js +0 -56
  340. package/dist/index155.js +0 -389
  341. package/dist/index162.js +0 -116
  342. package/dist/index163.js +0 -497
  343. package/dist/index179.js +0 -20
  344. package/dist/index62.js +0 -9
  345. package/dist/index75.js +0 -62
  346. package/dist/index84.js +0 -36
  347. package/dist/index97.js +0 -29
  348. package/dist/src/components/footer-actions/footer-actions.d.ts +0 -3
  349. /package/dist/{index65.js → index66.js} +0 -0
  350. /package/dist/{index67.js → index68.js} +0 -0
  351. /package/dist/{index69.js → index70.js} +0 -0
  352. /package/dist/{index73.js → index74.js} +0 -0
  353. /package/dist/{index78.js → index79.js} +0 -0
  354. /package/dist/{index91.js → index92.js} +0 -0
  355. /package/dist/{index93.js → index94.js} +0 -0
package/dist/index202.js CHANGED
@@ -1,290 +1,240 @@
1
- import { Extension as u, isNodeEmpty as w, callOrReturn as v, getExtensionField as S, isNodeSelection as P } from "./index239.js";
2
- import { Plugin as p, PluginKey as m } from "./index254.js";
3
- import { dropCursor as z } from "./index298.js";
4
- import { Decoration as g, DecorationSet as f } from "./index295.js";
5
- import { gapCursor as N } from "./index299.js";
6
- import { history as E, redo as M, undo as O } from "./index300.js";
7
- u.create({
8
- name: "characterCount",
1
+ import { Mark as y, Extension as l, mergeAttributes as p } from "./index262.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,
9
19
  addOptions() {
10
20
  return {
11
- limit: null,
12
- mode: "textSize",
13
- textCounter: (e) => e.length,
14
- wordCounter: (e) => e.split(" ").filter((t) => t !== "").length
21
+ HTMLAttributes: {},
22
+ mergeNestedSpanStyles: !0
15
23
  };
16
24
  },
17
- addStorage() {
18
- return {
19
- characters: () => 0,
20
- words: () => 0
21
- };
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];
22
36
  },
23
- onBeforeCreate() {
24
- this.storage.characters = (e) => {
25
- const t = e?.node || this.editor.state.doc;
26
- if ((e?.mode || this.options.mode) === "textSize") {
27
- const r = t.textBetween(0, t.content.size, void 0, " ");
28
- return this.options.textCounter(r);
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;
29
47
  }
30
- return t.nodeSize;
31
- }, this.storage.words = (e) => {
32
- const t = e?.node || this.editor.state.doc, n = t.textBetween(0, t.content.size, " ", " ");
33
- return this.options.wordCounter(n);
48
+ };
49
+ }
50
+ }), m = l.create({
51
+ name: "backgroundColor",
52
+ addOptions() {
53
+ return {
54
+ types: ["textStyle"]
34
55
  };
35
56
  },
36
- addProseMirrorPlugins() {
37
- let e = !1;
57
+ addGlobalAttributes() {
38
58
  return [
39
- new p({
40
- key: new m("characterCount"),
41
- appendTransaction: (t, n, r) => {
42
- if (e)
43
- return;
44
- const o = this.options.limit;
45
- if (o == null || o === 0) {
46
- e = !0;
47
- return;
48
- }
49
- const s = this.storage.characters({ node: r.doc });
50
- if (s > o) {
51
- const i = s - o, d = 0, a = i;
52
- console.warn(
53
- `[CharacterCount] Initial content exceeded limit of ${o} characters. Content was automatically trimmed.`
54
- );
55
- const c = r.tr.deleteRange(d, a);
56
- return e = !0, c;
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
+ } : {}
57
83
  }
58
- e = !0;
59
- },
60
- filterTransaction: (t, n) => {
61
- const r = this.options.limit;
62
- if (!t.docChanged || r === 0 || r === null || r === void 0)
63
- return !0;
64
- const o = this.storage.characters({ node: n.doc }), s = this.storage.characters({ node: t.doc });
65
- if (s <= r || o > r && s > r && s <= o)
66
- return !0;
67
- if (o > r && s > r && s > o || !t.getMeta("paste"))
68
- return !1;
69
- const d = t.selection.$head.pos, a = s - r, c = d - a, l = d;
70
- return t.deleteRange(c, l), !(this.storage.characters({ node: t.doc }) > r);
71
84
  }
72
- })
85
+ }
73
86
  ];
74
- }
75
- });
76
- var k = u.create({
77
- name: "dropCursor",
78
- addOptions() {
87
+ },
88
+ addCommands() {
79
89
  return {
80
- color: "currentColor",
81
- width: 1,
82
- class: void 0
90
+ setBackgroundColor: (t) => ({ chain: e }) => e().setMark("textStyle", { backgroundColor: t }).run(),
91
+ unsetBackgroundColor: () => ({ chain: t }) => t().setMark("textStyle", { backgroundColor: null }).removeEmptyTextStyle().run()
83
92
  };
84
- },
85
- addProseMirrorPlugins() {
86
- return [z(this.options)];
87
93
  }
88
- });
89
- u.create({
90
- name: "focus",
94
+ }), g = l.create({
95
+ name: "color",
91
96
  addOptions() {
92
97
  return {
93
- className: "has-focus",
94
- mode: "all"
98
+ types: ["textStyle"]
95
99
  };
96
100
  },
97
- addProseMirrorPlugins() {
101
+ addGlobalAttributes() {
98
102
  return [
99
- new p({
100
- key: new m("focus"),
101
- props: {
102
- decorations: ({ doc: e, selection: t }) => {
103
- const { isEditable: n, isFocused: r } = this.editor, { anchor: o } = t, s = [];
104
- if (!n || !r)
105
- return f.create(e, []);
106
- let i = 0;
107
- this.options.mode === "deepest" && e.descendants((a, c) => {
108
- if (a.isText)
109
- return;
110
- if (!(o >= c && o <= c + a.nodeSize - 1))
111
- return !1;
112
- i += 1;
113
- });
114
- let d = 0;
115
- return e.descendants((a, c) => {
116
- if (a.isText || !(o >= c && o <= c + a.nodeSize - 1))
117
- return !1;
118
- if (d += 1, this.options.mode === "deepest" && i - d > 0 || this.options.mode === "shallowest" && d > 1)
119
- return this.options.mode === "deepest";
120
- s.push(
121
- g.node(c, c + a.nodeSize, {
122
- class: this.options.className
123
- })
124
- );
125
- }), f.create(e, s);
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
+ } : {}
126
127
  }
127
128
  }
128
- })
129
+ }
129
130
  ];
130
- }
131
- });
132
- var F = u.create({
133
- name: "gapCursor",
134
- addProseMirrorPlugins() {
135
- return [N()];
136
131
  },
137
- extendNodeSchema(e) {
138
- var t;
139
- const n = {
140
- name: e.name,
141
- options: e.options,
142
- storage: e.storage
143
- };
132
+ addCommands() {
144
133
  return {
145
- allowGapCursor: (t = v(S(e, "allowGapCursor", n))) != null ? t : null
134
+ setColor: (t) => ({ chain: e }) => e().setMark("textStyle", { color: t }).run(),
135
+ unsetColor: () => ({ chain: t }) => t().setMark("textStyle", { color: null }).removeEmptyTextStyle().run()
146
136
  };
147
137
  }
148
- }), R = u.create({
149
- name: "placeholder",
138
+ }), h = l.create({
139
+ name: "fontFamily",
150
140
  addOptions() {
151
141
  return {
152
- emptyEditorClass: "is-editor-empty",
153
- emptyNodeClass: "is-empty",
154
- placeholder: "Write something …",
155
- showOnlyWhenEditable: !0,
156
- showOnlyCurrent: !0,
157
- includeChildren: !1
142
+ types: ["textStyle"]
158
143
  };
159
144
  },
160
- addProseMirrorPlugins() {
145
+ addGlobalAttributes() {
161
146
  return [
162
- new p({
163
- key: new m("placeholder"),
164
- props: {
165
- decorations: ({ doc: e, selection: t }) => {
166
- const n = this.editor.isEditable || !this.options.showOnlyWhenEditable, { anchor: r } = t, o = [];
167
- if (!n)
168
- return null;
169
- const s = this.editor.isEmpty;
170
- return e.descendants((i, d) => {
171
- const a = r >= d && r <= d + i.nodeSize, c = !i.isLeaf && w(i);
172
- if ((a || !this.options.showOnlyCurrent) && c) {
173
- const l = [this.options.emptyNodeClass];
174
- s && l.push(this.options.emptyEditorClass);
175
- const h = g.node(d, d + i.nodeSize, {
176
- class: l.join(" "),
177
- "data-placeholder": typeof this.options.placeholder == "function" ? this.options.placeholder({
178
- editor: this.editor,
179
- node: i,
180
- pos: d,
181
- hasAnchor: a
182
- }) : this.options.placeholder
183
- });
184
- o.push(h);
185
- }
186
- return this.options.includeChildren;
187
- }), f.create(e, o);
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
+ } : {}
188
156
  }
189
157
  }
190
- })
158
+ }
191
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
+ };
192
166
  }
193
- });
194
- u.create({
195
- name: "selection",
167
+ }), S = l.create({
168
+ name: "fontSize",
196
169
  addOptions() {
197
170
  return {
198
- className: "selection"
171
+ types: ["textStyle"]
199
172
  };
200
173
  },
201
- addProseMirrorPlugins() {
202
- const { editor: e, options: t } = this;
174
+ addGlobalAttributes() {
203
175
  return [
204
- new p({
205
- key: new m("selection"),
206
- props: {
207
- decorations(n) {
208
- return n.selection.empty || e.isFocused || !e.isEditable || P(n.selection) || e.view.dragging ? null : f.create(n.doc, [
209
- g.inline(n.selection.from, n.selection.to, {
210
- class: t.className
211
- })
212
- ]);
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
+ } : {}
213
185
  }
214
186
  }
215
- })
187
+ }
216
188
  ];
189
+ },
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
+ };
217
195
  }
218
- });
219
- function y({ types: e, node: t }) {
220
- return t && Array.isArray(e) && e.includes(t.type) || t?.type === e;
221
- }
222
- var G = u.create({
223
- name: "trailingNode",
196
+ }), b = l.create({
197
+ name: "lineHeight",
224
198
  addOptions() {
225
199
  return {
226
- node: void 0,
227
- notAfter: []
200
+ types: ["textStyle"]
228
201
  };
229
202
  },
230
- addProseMirrorPlugins() {
231
- var e;
232
- const t = new m(this.name), n = this.options.node || ((e = this.editor.schema.topNodeType.contentMatch.defaultType) == null ? void 0 : e.name) || "paragraph", r = Object.entries(this.editor.schema.nodes).map(([, o]) => o).filter((o) => (this.options.notAfter || []).concat(n).includes(o.name));
203
+ addGlobalAttributes() {
233
204
  return [
234
- new p({
235
- key: t,
236
- appendTransaction: (o, s, i) => {
237
- const { doc: d, tr: a, schema: c } = i, l = t.getState(i), h = d.content.size, C = c.nodes[n];
238
- if (l)
239
- return a.insert(h, C.create());
240
- },
241
- state: {
242
- init: (o, s) => {
243
- const i = s.tr.doc.lastChild;
244
- return !y({ node: i, types: r });
245
- },
246
- apply: (o, s) => {
247
- if (!o.docChanged || o.getMeta("__uniqueIDTransaction"))
248
- return s;
249
- const i = o.doc.lastChild;
250
- return !y({ node: i, types: r });
205
+ {
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
+ } : {}
251
214
  }
252
215
  }
253
- })
216
+ }
254
217
  ];
255
- }
256
- }), B = u.create({
257
- name: "undoRedo",
258
- addOptions() {
259
- return {
260
- depth: 100,
261
- newGroupDelay: 500
262
- };
263
218
  },
264
219
  addCommands() {
265
220
  return {
266
- undo: () => ({ state: e, dispatch: t }) => O(e, t),
267
- redo: () => ({ state: e, dispatch: t }) => M(e, t)
268
- };
269
- },
270
- addProseMirrorPlugins() {
271
- return [E(this.options)];
272
- },
273
- addKeyboardShortcuts() {
274
- return {
275
- "Mod-z": () => this.editor.commands.undo(),
276
- "Shift-Mod-z": () => this.editor.commands.redo(),
277
- "Mod-y": () => this.editor.commands.redo(),
278
- // Russian keyboard layouts
279
- "Mod-я": () => this.editor.commands.undo(),
280
- "Shift-Mod-я": () => this.editor.commands.redo()
221
+ setLineHeight: (t) => ({ chain: e }) => e().setMark("textStyle", { lineHeight: t }).run(),
222
+ unsetLineHeight: () => ({ chain: t }) => t().setMark("textStyle", { lineHeight: null }).removeEmptyTextStyle().run()
281
223
  };
282
224
  }
283
225
  });
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;
231
+ }
232
+ });
284
233
  export {
285
- k as Dropcursor,
286
- F as Gapcursor,
287
- R as Placeholder,
288
- G as TrailingNode,
289
- B as UndoRedo
234
+ m as BackgroundColor,
235
+ g as Color,
236
+ h as FontFamily,
237
+ S as FontSize,
238
+ b as LineHeight,
239
+ c as TextStyle
290
240
  };