@quoreadmin/ui 1.10.16 → 1.10.18

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 (169) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index138.js +137 -114
  3. package/dist/index15.js +43 -38
  4. package/dist/index186.js +4 -4
  5. package/dist/index193.js +8 -8
  6. package/dist/index195.js +8 -8
  7. package/dist/index198.js +17 -17
  8. package/dist/index201.js +23 -23
  9. package/dist/index202.js +1 -1
  10. package/dist/index203.js +1 -1
  11. package/dist/index206.js +2 -2
  12. package/dist/index208.js +14 -14
  13. package/dist/index209.js +1 -1
  14. package/dist/index210.js +1 -1
  15. package/dist/index211.js +3 -3
  16. package/dist/index212.js +6 -6
  17. package/dist/index217.js +1 -1
  18. package/dist/index219.js +4 -4
  19. package/dist/index22.js +28 -26
  20. package/dist/index221.js +1 -1
  21. package/dist/index222.js +1 -1
  22. package/dist/index223.js +1 -1
  23. package/dist/index224.js +4 -4
  24. package/dist/index226.js +1 -1
  25. package/dist/index230.js +122 -156
  26. package/dist/index231.js +35 -225
  27. package/dist/index232.js +80 -37
  28. package/dist/index233.js +20 -10
  29. package/dist/index234.js +19 -160
  30. package/dist/index235.js +10 -10
  31. package/dist/index236.js +11 -11
  32. package/dist/index237.js +13 -15
  33. package/dist/index238.js +3619 -182
  34. package/dist/index239.js +51 -66
  35. package/dist/index240.js +74 -31
  36. package/dist/index241.js +48 -36
  37. package/dist/index242.js +182 -3603
  38. package/dist/index243.js +8 -53
  39. package/dist/index244.js +40 -60
  40. package/dist/index245.js +44 -35
  41. package/dist/index246.js +32 -193
  42. package/dist/index247.js +74 -9
  43. package/dist/index248.js +707 -38
  44. package/dist/index249.js +25 -44
  45. package/dist/index250.js +46 -36
  46. package/dist/index251.js +10 -74
  47. package/dist/index252.js +679 -700
  48. package/dist/index253.js +817 -39
  49. package/dist/index254.js +154 -57
  50. package/dist/index255.js +20 -11
  51. package/dist/index256.js +22 -705
  52. package/dist/index257.js +189 -810
  53. package/dist/index258.js +69 -21
  54. package/dist/index259.js +34 -22
  55. package/dist/index260.js +39 -19
  56. package/dist/index261.js +22 -836
  57. package/dist/index262.js +21 -701
  58. package/dist/index263.js +20 -176
  59. package/dist/index264.js +836 -20
  60. package/dist/index265.js +701 -19
  61. package/dist/index266.js +176 -22
  62. package/dist/index267.js +13 -11
  63. package/dist/index268.js +8 -8
  64. package/dist/index269.js +20 -3
  65. package/dist/index270.js +3 -187
  66. package/dist/index271.js +96 -42
  67. package/dist/index272.js +70 -1160
  68. package/dist/index273.js +1197 -101
  69. package/dist/index277.js +28 -37
  70. package/dist/index278.js +11 -20
  71. package/dist/index279.js +8 -8
  72. package/dist/index280.js +2 -20
  73. package/dist/index282.js +161 -2
  74. package/dist/index283.js +227 -79
  75. package/dist/index284.js +36 -19
  76. package/dist/index285.js +10 -20
  77. package/dist/index292.js +2 -54
  78. package/dist/index294.js +1534 -26
  79. package/dist/index295.js +386 -22
  80. package/dist/index296.js +2731 -22
  81. package/dist/index297.js +86 -16
  82. package/dist/index298.js +3792 -17
  83. package/dist/index299.js +59 -22
  84. package/dist/index300.js +14 -1533
  85. package/dist/index301.js +69 -371
  86. package/dist/index302.js +158 -2687
  87. package/dist/index303.js +233 -73
  88. package/dist/index304.js +54 -3792
  89. package/dist/index305.js +25 -59
  90. package/dist/index306.js +22 -15
  91. package/dist/index307.js +21 -83
  92. package/dist/index308.js +15 -201
  93. package/dist/index309.js +17 -246
  94. package/dist/index310.js +23 -2
  95. package/dist/index313.js +1 -1
  96. package/dist/index323.js +8 -261
  97. package/dist/index324.js +12 -5
  98. package/dist/index325.js +51 -136
  99. package/dist/index326.js +11 -72
  100. package/dist/index327.js +12 -85
  101. package/dist/index328.js +54 -25
  102. package/dist/index329.js +50 -14
  103. package/dist/index330.js +27 -71
  104. package/dist/index331.js +2 -4
  105. package/dist/index332.js +5 -2
  106. package/dist/index333.js +2 -83
  107. package/dist/index334.js +23 -53
  108. package/dist/index335.js +39 -4
  109. package/dist/index336.js +2 -5
  110. package/dist/index337.js +10 -178
  111. package/dist/index338.js +18 -61
  112. package/dist/index339.js +9 -74
  113. package/dist/index340.js +10 -9
  114. package/dist/index341.js +16 -12
  115. package/dist/index342.js +2 -55
  116. package/dist/index343.js +9 -12
  117. package/dist/index344.js +9 -13
  118. package/dist/index345.js +13 -57
  119. package/dist/index346.js +258 -48
  120. package/dist/index347.js +4 -29
  121. package/dist/index348.js +140 -2
  122. package/dist/index349.js +73 -5
  123. package/dist/index350.js +87 -2
  124. package/dist/index351.js +29 -23
  125. package/dist/index352.js +15 -40
  126. package/dist/index353.js +75 -2
  127. package/dist/index354.js +4 -11
  128. package/dist/index355.js +2 -20
  129. package/dist/index356.js +83 -10
  130. package/dist/index357.js +53 -10
  131. package/dist/index358.js +4 -15
  132. package/dist/index359.js +5 -2
  133. package/dist/index360.js +179 -9
  134. package/dist/index361.js +62 -9
  135. package/dist/index362.js +74 -13
  136. package/dist/index368.js +1 -1
  137. package/dist/index369.js +1 -1
  138. package/dist/index370.js +5 -5
  139. package/dist/index372.js +2 -2
  140. package/dist/index374.js +2 -2
  141. package/dist/index376.js +1 -1
  142. package/dist/index378.js +4 -4
  143. package/dist/index379.js +3 -3
  144. package/dist/index380.js +98 -95
  145. package/dist/index381.js +90 -100
  146. package/dist/index382.js +98 -91
  147. package/dist/index384.js +1 -1
  148. package/dist/index385.js +3 -3
  149. package/dist/index390.js +1 -1
  150. package/dist/index392.js +1 -1
  151. package/dist/index393.js +3 -3
  152. package/dist/index394.js +3 -3
  153. package/dist/index4.js +5 -5
  154. package/dist/index402.js +1 -1
  155. package/dist/index88.js +43 -31
  156. package/dist/src/components/comment/comment.d.ts +9 -0
  157. package/dist/src/components/comment/comment.stories.d.ts +9 -0
  158. package/dist/src/components/comment-section/comment-section.d.ts +9 -0
  159. package/dist/src/components/comment-section/comment-section.stories.d.ts +9 -0
  160. package/dist/src/components/data-filter/data-filter.d.ts +27 -0
  161. package/dist/src/components/data-filter/data-filter.stories.d.ts +8 -0
  162. package/dist/src/components/data-list/data-list.d.ts +27 -0
  163. package/dist/src/components/grid/grid.stories.d.ts +36 -0
  164. package/dist/src/components/popover/popover.d.ts +17 -2
  165. package/dist/src/components/popover/popover.stories.d.ts +63 -0
  166. package/dist/src/components/room-details-popover/room-details-popover.d.ts +9 -0
  167. package/dist/src/views/lists.vue.d.ts +54 -0
  168. package/dist/src/views/tables.vue.d.ts +27 -0
  169. package/package.json +1 -1
package/dist/index243.js CHANGED
@@ -1,57 +1,12 @@
1
- import { Node as a, wrappingInputRule as c, mergeAttributes as d } from "./index242.js";
2
- import { createElement as i } from "./index306.js";
3
- var l = /^\s*>\s$/, g = a.create({
4
- name: "blockquote",
5
- addOptions() {
6
- return {
7
- HTMLAttributes: {}
8
- };
9
- },
1
+ import { Node as n } from "./index238.js";
2
+ var o = n.create({
3
+ name: "doc",
4
+ topNode: !0,
10
5
  content: "block+",
11
- group: "block",
12
- defining: !0,
13
- parseHTML() {
14
- return [{ tag: "blockquote" }];
15
- },
16
- renderHTML({ HTMLAttributes: t }) {
17
- return /* @__PURE__ */ i("blockquote", { ...d(this.options.HTMLAttributes, t), children: /* @__PURE__ */ i("slot", {}) });
18
- },
19
- parseMarkdown: (t, e) => e.createNode("blockquote", void 0, e.parseChildren(t.tokens || [])),
20
- renderMarkdown: (t, e) => {
21
- if (!t.content)
22
- return "";
23
- const r = ">", n = [];
24
- return t.content.forEach((u) => {
25
- const s = e.renderChildren([u]).split(`
26
- `).map((o) => o.trim() === "" ? r : `${r} ${o}`);
27
- n.push(s.join(`
28
- `));
29
- }), n.join(`
30
- ${r}
31
- `);
32
- },
33
- addCommands() {
34
- return {
35
- setBlockquote: () => ({ commands: t }) => t.wrapIn(this.name),
36
- toggleBlockquote: () => ({ commands: t }) => t.toggleWrap(this.name),
37
- unsetBlockquote: () => ({ commands: t }) => t.lift(this.name)
38
- };
39
- },
40
- addKeyboardShortcuts() {
41
- return {
42
- "Mod-Shift-b": () => this.editor.commands.toggleBlockquote()
43
- };
44
- },
45
- addInputRules() {
46
- return [
47
- c({
48
- find: l,
49
- type: this.type
50
- })
51
- ];
52
- }
6
+ renderMarkdown: (e, r) => e.content ? r.renderChildren(e.content, `
7
+
8
+ `) : ""
53
9
  });
54
10
  export {
55
- g as Blockquote,
56
- l as inputRegex
11
+ o as Document
57
12
  };
package/dist/index244.js CHANGED
@@ -1,79 +1,59 @@
1
- import { Mark as a, markPasteRule as r, markInputRule as s, mergeAttributes as o } from "./index242.js";
2
- import { createElement as n } from "./index306.js";
3
- var d = /(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))$/, l = /(?:^|\s)(\*\*(?!\s+\*\*)((?:[^*]+))\*\*(?!\s+\*\*))/g, i = /(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))$/, u = /(?:^|\s)(__(?!\s+__)((?:[^_]+))__(?!\s+__))/g, p = a.create({
4
- name: "bold",
1
+ import { Node as l, mergeAttributes as c } from "./index238.js";
2
+ var f = l.create({
3
+ name: "hardBreak",
4
+ markdownTokenName: "br",
5
5
  addOptions() {
6
6
  return {
7
+ keepMarks: !0,
7
8
  HTMLAttributes: {}
8
9
  };
9
10
  },
11
+ inline: !0,
12
+ group: "inline",
13
+ selectable: !1,
14
+ linebreakReplacement: !0,
10
15
  parseHTML() {
11
- return [
12
- {
13
- tag: "strong"
14
- },
15
- {
16
- tag: "b",
17
- getAttrs: (t) => t.style.fontWeight !== "normal" && null
18
- },
19
- {
20
- style: "font-weight=400",
21
- clearMark: (t) => t.type.name === this.name
22
- },
23
- {
24
- style: "font-weight",
25
- getAttrs: (t) => /^(bold(er)?|[5-9]\d{2,})$/.test(t) && null
26
- }
27
- ];
16
+ return [{ tag: "br" }];
28
17
  },
29
- renderHTML({ HTMLAttributes: t }) {
30
- return /* @__PURE__ */ n("strong", { ...o(this.options.HTMLAttributes, t), children: /* @__PURE__ */ n("slot", {}) });
18
+ renderHTML({ HTMLAttributes: e }) {
19
+ return ["br", c(this.options.HTMLAttributes, e)];
31
20
  },
32
- markdownTokenName: "strong",
33
- parseMarkdown: (t, e) => e.applyMark("bold", e.parseInline(t.tokens || [])),
34
- renderMarkdown: (t, e) => `**${e.renderChildren(t)}**`,
21
+ renderText() {
22
+ return `
23
+ `;
24
+ },
25
+ renderMarkdown: () => `
26
+ `,
27
+ parseMarkdown: () => ({
28
+ type: "hardBreak"
29
+ }),
35
30
  addCommands() {
36
31
  return {
37
- setBold: () => ({ commands: t }) => t.setMark(this.name),
38
- toggleBold: () => ({ commands: t }) => t.toggleMark(this.name),
39
- unsetBold: () => ({ commands: t }) => t.unsetMark(this.name)
32
+ setHardBreak: () => ({ commands: e, chain: n, state: a, editor: s }) => e.first([
33
+ () => e.exitCode(),
34
+ () => e.command(() => {
35
+ const { selection: r, storedMarks: o } = a;
36
+ if (r.$from.parent.type.spec.isolating)
37
+ return !1;
38
+ const { keepMarks: i } = this.options, { splittableMarks: d } = s.extensionManager, t = o || r.$to.parentOffset && r.$from.marks();
39
+ return n().insertContent({ type: this.name }).command(({ tr: u, dispatch: k }) => {
40
+ if (k && t && i) {
41
+ const m = t.filter((p) => d.includes(p.type.name));
42
+ u.ensureMarks(m);
43
+ }
44
+ return !0;
45
+ }).run();
46
+ })
47
+ ])
40
48
  };
41
49
  },
42
50
  addKeyboardShortcuts() {
43
51
  return {
44
- "Mod-b": () => this.editor.commands.toggleBold(),
45
- "Mod-B": () => this.editor.commands.toggleBold()
52
+ "Mod-Enter": () => this.editor.commands.setHardBreak(),
53
+ "Shift-Enter": () => this.editor.commands.setHardBreak()
46
54
  };
47
- },
48
- addInputRules() {
49
- return [
50
- s({
51
- find: d,
52
- type: this.type
53
- }),
54
- s({
55
- find: i,
56
- type: this.type
57
- })
58
- ];
59
- },
60
- addPasteRules() {
61
- return [
62
- r({
63
- find: l,
64
- type: this.type
65
- }),
66
- r({
67
- find: u,
68
- type: this.type
69
- })
70
- ];
71
55
  }
72
56
  });
73
57
  export {
74
- p as Bold,
75
- d as starInputRegex,
76
- l as starPasteRegex,
77
- i as underscoreInputRegex,
78
- u as underscorePasteRegex
58
+ f as HardBreak
79
59
  };
package/dist/index245.js CHANGED
@@ -1,54 +1,63 @@
1
- import { Mark as r, markPasteRule as n, markInputRule as a, mergeAttributes as d } from "./index242.js";
2
- var o = /(^|[^`])`([^`]+)`(?!`)$/, u = /(^|[^`])`([^`]+)`(?!`)/g, i = r.create({
3
- name: "code",
1
+ import { Node as l, textblockTypeInputRule as i, mergeAttributes as a } from "./index238.js";
2
+ var d = l.create({
3
+ name: "heading",
4
4
  addOptions() {
5
5
  return {
6
+ levels: [1, 2, 3, 4, 5, 6],
6
7
  HTMLAttributes: {}
7
8
  };
8
9
  },
9
- excludes: "_",
10
- code: !0,
11
- exitable: !0,
10
+ content: "inline*",
11
+ group: "block",
12
+ defining: !0,
13
+ addAttributes() {
14
+ return {
15
+ level: {
16
+ default: 1,
17
+ rendered: !1
18
+ }
19
+ };
20
+ },
12
21
  parseHTML() {
13
- return [{ tag: "code" }];
22
+ return this.options.levels.map((e) => ({
23
+ tag: `h${e}`,
24
+ attrs: { level: e }
25
+ }));
26
+ },
27
+ renderHTML({ node: e, HTMLAttributes: t }) {
28
+ return [`h${this.options.levels.includes(e.attrs.level) ? e.attrs.level : this.options.levels[0]}`, a(this.options.HTMLAttributes, t), 0];
14
29
  },
15
- renderHTML({ HTMLAttributes: e }) {
16
- return ["code", d(this.options.HTMLAttributes, e), 0];
30
+ parseMarkdown: (e, t) => t.createNode("heading", { level: e.depth || 1 }, t.parseInline(e.tokens || [])),
31
+ renderMarkdown: (e, t) => {
32
+ var r;
33
+ const n = (r = e.attrs) != null && r.level ? parseInt(e.attrs.level, 10) : 1, s = "#".repeat(n);
34
+ return e.content ? `${s} ${t.renderChildren(e.content)}` : "";
17
35
  },
18
- markdownTokenName: "codespan",
19
- parseMarkdown: (e, t) => t.applyMark("code", [{ type: "text", text: e.text || "" }]),
20
- renderMarkdown: (e, t) => e.content ? `\`${t.renderChildren(e.content)}\`` : "",
21
36
  addCommands() {
22
37
  return {
23
- setCode: () => ({ commands: e }) => e.setMark(this.name),
24
- toggleCode: () => ({ commands: e }) => e.toggleMark(this.name),
25
- unsetCode: () => ({ commands: e }) => e.unsetMark(this.name)
38
+ setHeading: (e) => ({ commands: t }) => this.options.levels.includes(e.level) ? t.setNode(this.name, e) : !1,
39
+ toggleHeading: (e) => ({ commands: t }) => this.options.levels.includes(e.level) ? t.toggleNode(this.name, "paragraph", e) : !1
26
40
  };
27
41
  },
28
42
  addKeyboardShortcuts() {
29
- return {
30
- "Mod-e": () => this.editor.commands.toggleCode()
31
- };
43
+ return this.options.levels.reduce(
44
+ (e, t) => ({
45
+ ...e,
46
+ [`Mod-Alt-${t}`]: () => this.editor.commands.toggleHeading({ level: t })
47
+ }),
48
+ {}
49
+ );
32
50
  },
33
51
  addInputRules() {
34
- return [
35
- a({
36
- find: o,
37
- type: this.type
38
- })
39
- ];
40
- },
41
- addPasteRules() {
42
- return [
43
- n({
44
- find: u,
45
- type: this.type
46
- })
47
- ];
52
+ return this.options.levels.map((e) => i({
53
+ find: new RegExp(`^(#{${Math.min(...this.options.levels)},${e}})\\s$`),
54
+ type: this.type,
55
+ getAttributes: {
56
+ level: e
57
+ }
58
+ }));
48
59
  }
49
60
  });
50
61
  export {
51
- i as Code,
52
- o as inputRegex,
53
- u as pasteRegex
62
+ d as Heading
54
63
  };
package/dist/index246.js CHANGED
@@ -1,217 +1,56 @@
1
- import { Node as k, textblockTypeInputRule as S, mergeAttributes as C } from "./index242.js";
2
- import { Plugin as w, PluginKey as B, TextSelection as T, Selection as L } from "./index257.js";
3
- var y = 4, M = /^```([a-z]+)?[\s\n]$/, N = /^~~~([a-z]+)?[\s\n]$/, $ = k.create({
4
- name: "codeBlock",
1
+ import { Node as m, nodeInputRule as f, canInsertNode as h, isNodeSelection as T, mergeAttributes as y } from "./index238.js";
2
+ import { TextSelection as s, NodeSelection as N } from "./index253.js";
3
+ var M = m.create({
4
+ name: "horizontalRule",
5
5
  addOptions() {
6
6
  return {
7
- languageClassPrefix: "language-",
8
- exitOnTripleEnter: !0,
9
- exitOnArrowDown: !0,
10
- defaultLanguage: null,
11
- enableTabIndentation: !1,
12
- tabSize: y,
13
- HTMLAttributes: {}
7
+ HTMLAttributes: {},
8
+ nextNodeType: "paragraph"
14
9
  };
15
10
  },
16
- content: "text*",
17
- marks: "",
18
11
  group: "block",
19
- code: !0,
20
- defining: !0,
21
- addAttributes() {
22
- return {
23
- language: {
24
- default: this.options.defaultLanguage,
25
- parseHTML: (e) => {
26
- var t;
27
- const { languageClassPrefix: r } = this.options;
28
- if (!r)
29
- return null;
30
- const o = [...((t = e.firstElementChild) == null ? void 0 : t.classList) || []].filter((s) => s.startsWith(r)).map((s) => s.replace(r, ""))[0];
31
- return o || null;
32
- },
33
- rendered: !1
34
- }
35
- };
36
- },
37
12
  parseHTML() {
38
- return [
39
- {
40
- tag: "pre",
41
- preserveWhitespace: "full"
42
- }
43
- ];
13
+ return [{ tag: "hr" }];
44
14
  },
45
- renderHTML({ node: e, HTMLAttributes: t }) {
46
- return [
47
- "pre",
48
- C(this.options.HTMLAttributes, t),
49
- [
50
- "code",
51
- {
52
- class: e.attrs.language ? this.options.languageClassPrefix + e.attrs.language : null
53
- },
54
- 0
55
- ]
56
- ];
57
- },
58
- markdownTokenName: "code",
59
- parseMarkdown: (e, t) => {
60
- var r;
61
- return ((r = e.raw) == null ? void 0 : r.startsWith("```")) === !1 && e.codeBlockStyle !== "indented" ? [] : t.createNode(
62
- "codeBlock",
63
- { language: e.lang || null },
64
- e.text ? [t.createTextNode(e.text)] : []
65
- );
66
- },
67
- renderMarkdown: (e, t) => {
68
- var r;
69
- let n = "";
70
- const a = ((r = e.attrs) == null ? void 0 : r.language) || "";
71
- return e.content ? n = [`\`\`\`${a}`, t.renderChildren(e.content), "```"].join(`
72
- `) : n = `\`\`\`${a}
73
-
74
- \`\`\``, n;
15
+ renderHTML({ HTMLAttributes: n }) {
16
+ return ["hr", y(this.options.HTMLAttributes, n)];
75
17
  },
18
+ markdownTokenName: "hr",
19
+ parseMarkdown: (n, o) => o.createNode("horizontalRule"),
20
+ renderMarkdown: () => "---",
76
21
  addCommands() {
77
22
  return {
78
- setCodeBlock: (e) => ({ commands: t }) => t.setNode(this.name, e),
79
- toggleCodeBlock: (e) => ({ commands: t }) => t.toggleNode(this.name, "paragraph", e)
80
- };
81
- },
82
- addKeyboardShortcuts() {
83
- return {
84
- "Mod-Alt-c": () => this.editor.commands.toggleCodeBlock(),
85
- // remove code block when at start of document or code block is empty
86
- Backspace: () => {
87
- const { empty: e, $anchor: t } = this.editor.state.selection, r = t.pos === 1;
88
- return !e || t.parent.type.name !== this.name ? !1 : r || !t.parent.textContent.length ? this.editor.commands.clearNodes() : !1;
89
- },
90
- // handle tab indentation
91
- Tab: ({ editor: e }) => {
92
- var t;
93
- if (!this.options.enableTabIndentation)
94
- return !1;
95
- const r = (t = this.options.tabSize) != null ? t : y, { state: n } = e, { selection: a } = n, { $from: o, empty: s } = a;
96
- if (o.parent.type !== this.type)
97
- return !1;
98
- const i = " ".repeat(r);
99
- return s ? e.commands.insertContent(i) : e.commands.command(({ tr: l }) => {
100
- const { from: c, to: f } = a, u = n.doc.textBetween(c, f, `
101
- `, `
102
- `).split(`
103
- `).map((p) => i + p).join(`
104
- `);
105
- return l.replaceWith(c, f, n.schema.text(u)), !0;
106
- });
107
- },
108
- // handle shift+tab reverse indentation
109
- "Shift-Tab": ({ editor: e }) => {
110
- var t;
111
- if (!this.options.enableTabIndentation)
23
+ setHorizontalRule: () => ({ chain: n, state: o }) => {
24
+ if (!h(o, o.schema.nodes[this.name]))
112
25
  return !1;
113
- const r = (t = this.options.tabSize) != null ? t : y, { state: n } = e, { selection: a } = n, { $from: o, empty: s } = a;
114
- return o.parent.type !== this.type ? !1 : s ? e.commands.command(({ tr: i }) => {
115
- var l;
116
- const { pos: c } = o, f = o.start(), h = o.end(), u = n.doc.textBetween(f, h, `
117
- `, `
118
- `).split(`
119
- `);
120
- let p = 0, g = 0;
121
- const b = c - f;
122
- for (let d = 0; d < u.length; d += 1) {
123
- if (g + u[d].length >= b) {
124
- p = d;
125
- break;
26
+ const { selection: i } = o, { $to: l } = i, r = n();
27
+ return T(i) ? r.insertContentAt(l.pos, {
28
+ type: this.name
29
+ }) : r.insertContent({ type: this.name }), r.command(({ state: p, tr: e, dispatch: u }) => {
30
+ if (u) {
31
+ const { $to: t } = e.selection, a = t.end();
32
+ if (t.nodeAfter)
33
+ t.nodeAfter.isTextblock ? e.setSelection(s.create(e.doc, t.pos + 1)) : t.nodeAfter.isBlock ? e.setSelection(N.create(e.doc, t.pos)) : e.setSelection(s.create(e.doc, t.pos));
34
+ else {
35
+ const c = p.schema.nodes[this.options.nextNodeType] || t.parent.type.contentMatch.defaultType, d = c?.create();
36
+ d && (e.insert(a, d), e.setSelection(s.create(e.doc, a + 1)));
126
37
  }
127
- g += u[d].length + 1;
38
+ e.scrollIntoView();
128
39
  }
129
- const A = ((l = u[p].match(/^ */)) == null ? void 0 : l[0]) || "", v = Math.min(A.length, r);
130
- if (v === 0)
131
- return !0;
132
- let m = f;
133
- for (let d = 0; d < p; d += 1)
134
- m += u[d].length + 1;
135
- return i.delete(m, m + v), c - m <= v && i.setSelection(T.create(i.doc, m)), !0;
136
- }) : e.commands.command(({ tr: i }) => {
137
- const { from: l, to: c } = a, x = n.doc.textBetween(l, c, `
138
- `, `
139
- `).split(`
140
- `).map((u) => {
141
- var p;
142
- const g = ((p = u.match(/^ */)) == null ? void 0 : p[0]) || "", b = Math.min(g.length, r);
143
- return u.slice(b);
144
- }).join(`
145
- `);
146
- return i.replaceWith(l, c, n.schema.text(x)), !0;
147
- });
148
- },
149
- // exit node on triple enter
150
- Enter: ({ editor: e }) => {
151
- if (!this.options.exitOnTripleEnter)
152
- return !1;
153
- const { state: t } = e, { selection: r } = t, { $from: n, empty: a } = r;
154
- if (!a || n.parent.type !== this.type)
155
- return !1;
156
- const o = n.parentOffset === n.parent.nodeSize - 2, s = n.parent.textContent.endsWith(`
157
-
158
- `);
159
- return !o || !s ? !1 : e.chain().command(({ tr: i }) => (i.delete(n.pos - 2, n.pos), !0)).exitCode().run();
160
- },
161
- // exit node on arrow down
162
- ArrowDown: ({ editor: e }) => {
163
- if (!this.options.exitOnArrowDown)
164
- return !1;
165
- const { state: t } = e, { selection: r, doc: n } = t, { $from: a, empty: o } = r;
166
- if (!o || a.parent.type !== this.type || !(a.parentOffset === a.parent.nodeSize - 2))
167
- return !1;
168
- const i = a.after();
169
- return i === void 0 ? !1 : n.nodeAt(i) ? e.commands.command(({ tr: c }) => (c.setSelection(L.near(n.resolve(i))), !0)) : e.commands.exitCode();
40
+ return !0;
41
+ }).run();
170
42
  }
171
43
  };
172
44
  },
173
45
  addInputRules() {
174
46
  return [
175
- S({
176
- find: M,
177
- type: this.type,
178
- getAttributes: (e) => ({
179
- language: e[1]
180
- })
181
- }),
182
- S({
183
- find: N,
184
- type: this.type,
185
- getAttributes: (e) => ({
186
- language: e[1]
187
- })
188
- })
189
- ];
190
- },
191
- addProseMirrorPlugins() {
192
- return [
193
- // this plugin creates a code block for pasted content from VS Code
194
- // we can also detect the copied code language
195
- new w({
196
- key: new B("codeBlockVSCodeHandler"),
197
- props: {
198
- handlePaste: (e, t) => {
199
- if (!t.clipboardData || this.editor.isActive(this.type.name))
200
- return !1;
201
- const r = t.clipboardData.getData("text/plain"), n = t.clipboardData.getData("vscode-editor-data"), a = n ? JSON.parse(n) : void 0, o = a?.mode;
202
- if (!r || !o)
203
- return !1;
204
- const { tr: s, schema: i } = e.state, l = i.text(r.replace(/\r\n?/g, `
205
- `));
206
- return s.replaceSelectionWith(this.type.create({ language: o }, l)), s.selection.$from.parent.type !== this.type && s.setSelection(T.near(s.doc.resolve(Math.max(0, s.selection.from - 2)))), s.setMeta("paste", !0), e.dispatch(s), !0;
207
- }
208
- }
47
+ f({
48
+ find: /^(?:---|—-|___\s|\*\*\*\s)$/,
49
+ type: this.type
209
50
  })
210
51
  ];
211
52
  }
212
53
  });
213
54
  export {
214
- $ as CodeBlock,
215
- M as backtickInputRegex,
216
- N as tildeInputRegex
55
+ M as HorizontalRule
217
56
  };
package/dist/index247.js CHANGED
@@ -1,12 +1,77 @@
1
- import { Node as n } from "./index242.js";
2
- var o = n.create({
3
- name: "doc",
4
- topNode: !0,
5
- content: "block+",
6
- renderMarkdown: (e, r) => e.content ? r.renderChildren(e.content, `
7
-
8
- `) : ""
1
+ import { Mark as s, markPasteRule as r, markInputRule as a, mergeAttributes as n } from "./index238.js";
2
+ var i = /(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))$/, d = /(?:^|\s)(\*(?!\s+\*)((?:[^*]+))\*(?!\s+\*))/g, o = /(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))$/, l = /(?:^|\s)(_(?!\s+_)((?:[^_]+))_(?!\s+_))/g, m = s.create({
3
+ name: "italic",
4
+ addOptions() {
5
+ return {
6
+ HTMLAttributes: {}
7
+ };
8
+ },
9
+ parseHTML() {
10
+ return [
11
+ {
12
+ tag: "em"
13
+ },
14
+ {
15
+ tag: "i",
16
+ getAttrs: (t) => t.style.fontStyle !== "normal" && null
17
+ },
18
+ {
19
+ style: "font-style=normal",
20
+ clearMark: (t) => t.type.name === this.name
21
+ },
22
+ {
23
+ style: "font-style=italic"
24
+ }
25
+ ];
26
+ },
27
+ renderHTML({ HTMLAttributes: t }) {
28
+ return ["em", n(this.options.HTMLAttributes, t), 0];
29
+ },
30
+ addCommands() {
31
+ return {
32
+ setItalic: () => ({ commands: t }) => t.setMark(this.name),
33
+ toggleItalic: () => ({ commands: t }) => t.toggleMark(this.name),
34
+ unsetItalic: () => ({ commands: t }) => t.unsetMark(this.name)
35
+ };
36
+ },
37
+ markdownTokenName: "em",
38
+ parseMarkdown: (t, e) => e.applyMark("italic", e.parseInline(t.tokens || [])),
39
+ renderMarkdown: (t, e) => `*${e.renderChildren(t)}*`,
40
+ addKeyboardShortcuts() {
41
+ return {
42
+ "Mod-i": () => this.editor.commands.toggleItalic(),
43
+ "Mod-I": () => this.editor.commands.toggleItalic()
44
+ };
45
+ },
46
+ addInputRules() {
47
+ return [
48
+ a({
49
+ find: i,
50
+ type: this.type
51
+ }),
52
+ a({
53
+ find: o,
54
+ type: this.type
55
+ })
56
+ ];
57
+ },
58
+ addPasteRules() {
59
+ return [
60
+ r({
61
+ find: d,
62
+ type: this.type
63
+ }),
64
+ r({
65
+ find: l,
66
+ type: this.type
67
+ })
68
+ ];
69
+ }
9
70
  });
10
71
  export {
11
- o as Document
72
+ m as Italic,
73
+ i as starInputRegex,
74
+ d as starPasteRegex,
75
+ o as underscoreInputRegex,
76
+ l as underscorePasteRegex
12
77
  };