@quoreadmin/ui 1.10.17 → 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 (201) hide show
  1. package/dist/index138.js +137 -114
  2. package/dist/index15.js +43 -38
  3. package/dist/index186.js +4 -4
  4. package/dist/index193.js +7 -7
  5. package/dist/index198.js +17 -17
  6. package/dist/index201.js +21 -21
  7. package/dist/index202.js +1 -1
  8. package/dist/index203.js +1 -1
  9. package/dist/index206.js +2 -2
  10. package/dist/index208.js +14 -14
  11. package/dist/index209.js +1 -1
  12. package/dist/index210.js +1 -1
  13. package/dist/index211.js +3 -3
  14. package/dist/index212.js +6 -6
  15. package/dist/index216.js +2 -2
  16. package/dist/index217.js +1 -1
  17. package/dist/index219.js +4 -4
  18. package/dist/index22.js +28 -26
  19. package/dist/index221.js +1 -1
  20. package/dist/index222.js +1 -1
  21. package/dist/index223.js +1 -1
  22. package/dist/index224.js +4 -4
  23. package/dist/index226.js +1 -1
  24. package/dist/index230.js +1 -1
  25. package/dist/index233.js +1 -1
  26. package/dist/index234.js +1 -1
  27. package/dist/index235.js +1 -1
  28. package/dist/index236.js +1 -1
  29. package/dist/index237.js +1 -1
  30. package/dist/index238.js +3624 -149
  31. package/dist/index239.js +55 -20
  32. package/dist/index240.js +77 -22
  33. package/dist/index241.js +43 -190
  34. package/dist/index242.js +211 -66
  35. package/dist/index243.js +9 -33
  36. package/dist/index244.js +53 -36
  37. package/dist/index245.js +60 -160
  38. package/dist/index246.js +51 -225
  39. package/dist/index247.js +75 -37
  40. package/dist/index248.js +726 -10
  41. package/dist/index249.js +42 -22
  42. package/dist/index250.js +64 -22
  43. package/dist/index251.js +11 -20
  44. package/dist/index252.js +669 -800
  45. package/dist/index253.js +796 -678
  46. package/dist/index254.js +156 -171
  47. package/dist/index255.js +11 -13
  48. package/dist/index256.js +15 -13
  49. package/dist/index257.js +198 -19
  50. package/dist/index258.js +70 -3
  51. package/dist/index259.js +32 -185
  52. package/dist/index260.js +23 -116
  53. package/dist/index261.js +22 -1223
  54. package/dist/index262.js +13 -11
  55. package/dist/index263.js +11 -13
  56. package/dist/index264.js +836 -22
  57. package/dist/index265.js +701 -28
  58. package/dist/index266.js +176 -20
  59. package/dist/index267.js +14 -12
  60. package/dist/index268.js +20 -2
  61. package/dist/index269.js +20 -2
  62. package/dist/index270.js +3 -3636
  63. package/dist/index271.js +181 -49
  64. package/dist/index272.js +128 -72
  65. package/dist/index273.js +1216 -45
  66. package/dist/index274.js +20 -215
  67. package/dist/index275.js +22 -10
  68. package/dist/index276.js +22 -57
  69. package/dist/index277.js +29 -61
  70. package/dist/index278.js +20 -54
  71. package/dist/index279.js +20 -75
  72. package/dist/index280.js +2 -726
  73. package/dist/index281.js +2 -42
  74. package/dist/index282.js +160 -63
  75. package/dist/index283.js +227 -10
  76. package/dist/index284.js +36 -704
  77. package/dist/index285.js +9 -819
  78. package/dist/index290.js +3 -2
  79. package/dist/index291.js +25 -77
  80. package/dist/index292.js +2 -54
  81. package/dist/index293.js +78 -25
  82. package/dist/index294.js +1534 -22
  83. package/dist/index295.js +386 -22
  84. package/dist/index296.js +2731 -16
  85. package/dist/index297.js +86 -17
  86. package/dist/index298.js +3792 -23
  87. package/dist/index299.js +52 -254
  88. package/dist/index300.js +15 -6
  89. package/dist/index301.js +74 -130
  90. package/dist/index302.js +195 -66
  91. package/dist/index303.js +240 -81
  92. package/dist/index304.js +50 -25
  93. package/dist/index305.js +24 -14
  94. package/dist/index306.js +21 -74
  95. package/dist/index307.js +21 -3
  96. package/dist/index308.js +16 -2
  97. package/dist/index309.js +16 -82
  98. package/dist/index310.js +22 -52
  99. package/dist/index311.js +78 -5
  100. package/dist/index312.js +21 -4
  101. package/dist/index313.js +920 -164
  102. package/dist/index314.js +21 -62
  103. package/dist/index315.js +20 -75
  104. package/dist/index316.js +20 -3
  105. package/dist/index317.js +68 -26
  106. package/dist/index318.js +19 -1534
  107. package/dist/index319.js +19 -386
  108. package/dist/index320.js +22 -2731
  109. package/dist/index321.js +21 -85
  110. package/dist/index322.js +63 -3792
  111. package/dist/index323.js +8 -59
  112. package/dist/index324.js +12 -78
  113. package/dist/index325.js +54 -21
  114. package/dist/index326.js +9 -932
  115. package/dist/index327.js +13 -21
  116. package/dist/index328.js +57 -19
  117. package/dist/index329.js +51 -19
  118. package/dist/index330.js +30 -68
  119. package/dist/index331.js +2 -19
  120. package/dist/index332.js +5 -19
  121. package/dist/index333.js +2 -22
  122. package/dist/index334.js +23 -22
  123. package/dist/index335.js +41 -63
  124. package/dist/index336.js +2 -15
  125. package/dist/index337.js +11 -84
  126. package/dist/index338.js +18 -200
  127. package/dist/index339.js +10 -246
  128. package/dist/index340.js +10 -37
  129. package/dist/index341.js +16 -18
  130. package/dist/index342.js +2 -57
  131. package/dist/index343.js +9 -29
  132. package/dist/index344.js +9 -6
  133. package/dist/index345.js +12 -50
  134. package/dist/index346.js +261 -6
  135. package/dist/index347.js +5 -11
  136. package/dist/index348.js +140 -7
  137. package/dist/index349.js +73 -28
  138. package/dist/index350.js +87 -2
  139. package/dist/index351.js +29 -70
  140. package/dist/index352.js +15 -166
  141. package/dist/index353.js +74 -8
  142. package/dist/index354.js +3 -12
  143. package/dist/index355.js +2 -55
  144. package/dist/index356.js +80 -9
  145. package/dist/index357.js +52 -13
  146. package/dist/index358.js +4 -56
  147. package/dist/index359.js +4 -51
  148. package/dist/index360.js +171 -23
  149. package/dist/index361.js +63 -2
  150. package/dist/index362.js +74 -4
  151. package/dist/index363.js +37 -2
  152. package/dist/index364.js +20 -23
  153. package/dist/index365.js +19 -40
  154. package/dist/index366.js +64 -2
  155. package/dist/index367.js +36 -10
  156. package/dist/index368.js +16 -17
  157. package/dist/index369.js +57 -10
  158. package/dist/index370.js +29 -10
  159. package/dist/index371.js +6 -16
  160. package/dist/index372.js +52 -2
  161. package/dist/index373.js +6 -8
  162. package/dist/index374.js +11 -9
  163. package/dist/index375.js +6 -13
  164. package/dist/index376.js +28 -20
  165. package/dist/index377.js +2 -20
  166. package/dist/index378.js +67 -61
  167. package/dist/index379.js +166 -36
  168. package/dist/index380.js +98 -28
  169. package/dist/index381.js +90 -10
  170. package/dist/index382.js +98 -4
  171. package/dist/index383.js +17 -4
  172. package/dist/index384.js +30 -12
  173. package/dist/index385.js +11 -7
  174. package/dist/index386.js +3 -11
  175. package/dist/index387.js +3 -4
  176. package/dist/index388.js +13 -33
  177. package/dist/index389.js +7 -31
  178. package/dist/index390.js +12 -28
  179. package/dist/index391.js +5 -61
  180. package/dist/index392.js +33 -101
  181. package/dist/index393.js +31 -91
  182. package/dist/index394.js +27 -16
  183. package/dist/index395.js +59 -96
  184. package/dist/index396.js +1 -1
  185. package/dist/index401.js +1 -1
  186. package/dist/index402.js +2 -2
  187. package/dist/index88.js +43 -31
  188. package/dist/src/components/comment/comment.d.ts +9 -0
  189. package/dist/src/components/comment/comment.stories.d.ts +9 -0
  190. package/dist/src/components/comment-section/comment-section.d.ts +9 -0
  191. package/dist/src/components/comment-section/comment-section.stories.d.ts +9 -0
  192. package/dist/src/components/data-filter/data-filter.d.ts +27 -0
  193. package/dist/src/components/data-filter/data-filter.stories.d.ts +8 -0
  194. package/dist/src/components/data-list/data-list.d.ts +27 -0
  195. package/dist/src/components/grid/grid.stories.d.ts +36 -0
  196. package/dist/src/components/popover/popover.d.ts +17 -2
  197. package/dist/src/components/popover/popover.stories.d.ts +63 -0
  198. package/dist/src/components/room-details-popover/room-details-popover.d.ts +9 -0
  199. package/dist/src/views/lists.vue.d.ts +54 -0
  200. package/dist/src/views/tables.vue.d.ts +27 -0
  201. package/package.json +1 -1
package/dist/index253.js CHANGED
@@ -1,704 +1,822 @@
1
- import Q from "./index251.js";
2
- import { DomHandler as p } from "./index180.js";
3
- import U from "./index228.js";
4
- import K from "./index330.js";
5
- import { resolveComponent as X, openBlock as R, createElementBlock as W, mergeProps as M, renderSlot as A, createElementVNode as Y, Fragment as k, renderList as q, createCommentVNode as D, createVNode as Z } from "vue";
6
- var $ = {
7
- name: "BaseVirtualScroller",
8
- extends: U,
9
- props: {
10
- id: {
11
- type: String,
12
- default: null
13
- },
14
- style: null,
15
- class: null,
16
- items: {
17
- type: Array,
18
- default: null
19
- },
20
- itemSize: {
21
- type: [Number, Array],
22
- default: 0
23
- },
24
- scrollHeight: null,
25
- scrollWidth: null,
26
- orientation: {
27
- type: String,
28
- default: "vertical"
29
- },
30
- numToleratedItems: {
31
- type: Number,
32
- default: null
33
- },
34
- delay: {
35
- type: Number,
36
- default: 0
37
- },
38
- resizeDelay: {
39
- type: Number,
40
- default: 10
41
- },
42
- lazy: {
43
- type: Boolean,
44
- default: !1
45
- },
46
- disabled: {
47
- type: Boolean,
48
- default: !1
49
- },
50
- loaderDisabled: {
51
- type: Boolean,
52
- default: !1
53
- },
54
- columns: {
55
- type: Array,
56
- default: null
57
- },
58
- loading: {
59
- type: Boolean,
60
- default: !1
61
- },
62
- showSpacer: {
63
- type: Boolean,
64
- default: !0
65
- },
66
- showLoader: {
67
- type: Boolean,
68
- default: !1
69
- },
70
- tabindex: {
71
- type: Number,
72
- default: 0
73
- },
74
- inline: {
75
- type: Boolean,
76
- default: !1
77
- },
78
- step: {
79
- type: Number,
80
- default: 0
81
- },
82
- appendOnly: {
83
- type: Boolean,
84
- default: !1
85
- },
86
- autoSize: {
87
- type: Boolean,
88
- default: !1
1
+ import { Slice as m, Fragment as B, Node as x, Mark as R } from "./index296.js";
2
+ import { ReplaceStep as P, ReplaceAroundStep as K, Transform as $ } from "./index294.js";
3
+ const O = /* @__PURE__ */ Object.create(null);
4
+ class l {
5
+ /**
6
+ Initialize a selection with the head and anchor and ranges. If no
7
+ ranges are given, constructs a single range across `$anchor` and
8
+ `$head`.
9
+ */
10
+ constructor(e, t, r) {
11
+ this.$anchor = e, this.$head = t, this.ranges = r || [new q(e.min(t), e.max(t))];
12
+ }
13
+ /**
14
+ The selection's anchor, as an unresolved position.
15
+ */
16
+ get anchor() {
17
+ return this.$anchor.pos;
18
+ }
19
+ /**
20
+ The selection's head.
21
+ */
22
+ get head() {
23
+ return this.$head.pos;
24
+ }
25
+ /**
26
+ The lower bound of the selection's main range.
27
+ */
28
+ get from() {
29
+ return this.$from.pos;
30
+ }
31
+ /**
32
+ The upper bound of the selection's main range.
33
+ */
34
+ get to() {
35
+ return this.$to.pos;
36
+ }
37
+ /**
38
+ The resolved lower bound of the selection's main range.
39
+ */
40
+ get $from() {
41
+ return this.ranges[0].$from;
42
+ }
43
+ /**
44
+ The resolved upper bound of the selection's main range.
45
+ */
46
+ get $to() {
47
+ return this.ranges[0].$to;
48
+ }
49
+ /**
50
+ Indicates whether the selection contains any content.
51
+ */
52
+ get empty() {
53
+ let e = this.ranges;
54
+ for (let t = 0; t < e.length; t++)
55
+ if (e[t].$from.pos != e[t].$to.pos)
56
+ return !1;
57
+ return !0;
58
+ }
59
+ /**
60
+ Get the content of this selection as a slice.
61
+ */
62
+ content() {
63
+ return this.$from.doc.slice(this.from, this.to, !0);
64
+ }
65
+ /**
66
+ Replace the selection with a slice or, if no slice is given,
67
+ delete the selection. Will append to the given transaction.
68
+ */
69
+ replace(e, t = m.empty) {
70
+ let r = t.content.lastChild, n = null;
71
+ for (let a = 0; a < t.openEnd; a++)
72
+ n = r, r = r.lastChild;
73
+ let s = e.steps.length, o = this.ranges;
74
+ for (let a = 0; a < o.length; a++) {
75
+ let { $from: c, $to: u } = o[a], h = e.mapping.slice(s);
76
+ e.replaceRange(h.map(c.pos), h.map(u.pos), a ? m.empty : t), a == 0 && E(e, s, (r ? r.isInline : n && n.isTextblock) ? -1 : 1);
89
77
  }
90
- },
91
- style: K,
92
- provide: function() {
93
- return {
94
- $parentInstance: this
95
- };
96
- },
97
- beforeMount: function() {
98
- var t;
99
- K.loadStyle({
100
- nonce: (t = this.$primevueConfig) === null || t === void 0 || (t = t.csp) === null || t === void 0 ? void 0 : t.nonce
101
- });
102
78
  }
103
- };
104
- function E(e) {
105
- "@babel/helpers - typeof";
106
- return E = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
107
- return typeof t;
108
- } : function(t) {
109
- return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
110
- }, E(e);
79
+ /**
80
+ Replace the selection with the given node, appending the changes
81
+ to the given transaction.
82
+ */
83
+ replaceWith(e, t) {
84
+ let r = e.steps.length, n = this.ranges;
85
+ for (let s = 0; s < n.length; s++) {
86
+ let { $from: o, $to: a } = n[s], c = e.mapping.slice(r), u = c.map(o.pos), h = c.map(a.pos);
87
+ s ? e.deleteRange(u, h) : (e.replaceRangeWith(u, h, t), E(e, r, t.isInline ? -1 : 1));
88
+ }
89
+ }
90
+ /**
91
+ Find a valid cursor or leaf node selection starting at the given
92
+ position and searching back if `dir` is negative, and forward if
93
+ positive. When `textOnly` is true, only consider cursor
94
+ selections. Will return null when no valid selection position is
95
+ found.
96
+ */
97
+ static findFrom(e, t, r = !1) {
98
+ let n = e.parent.inlineContent ? new f(e) : g(e.node(0), e.parent, e.pos, e.index(), t, r);
99
+ if (n)
100
+ return n;
101
+ for (let s = e.depth - 1; s >= 0; s--) {
102
+ let o = t < 0 ? g(e.node(0), e.node(s), e.before(s + 1), e.index(s), t, r) : g(e.node(0), e.node(s), e.after(s + 1), e.index(s) + 1, t, r);
103
+ if (o)
104
+ return o;
105
+ }
106
+ return null;
107
+ }
108
+ /**
109
+ Find a valid cursor or leaf node selection near the given
110
+ position. Searches forward first by default, but if `bias` is
111
+ negative, it will search backwards first.
112
+ */
113
+ static near(e, t = 1) {
114
+ return this.findFrom(e, t) || this.findFrom(e, -t) || new d(e.node(0));
115
+ }
116
+ /**
117
+ Find the cursor or leaf node selection closest to the start of
118
+ the given document. Will return an
119
+ [`AllSelection`](https://prosemirror.net/docs/ref/#state.AllSelection) if no valid position
120
+ exists.
121
+ */
122
+ static atStart(e) {
123
+ return g(e, e, 0, 0, 1) || new d(e);
124
+ }
125
+ /**
126
+ Find the cursor or leaf node selection closest to the end of the
127
+ given document.
128
+ */
129
+ static atEnd(e) {
130
+ return g(e, e, e.content.size, e.childCount, -1) || new d(e);
131
+ }
132
+ /**
133
+ Deserialize the JSON representation of a selection. Must be
134
+ implemented for custom classes (as a static class method).
135
+ */
136
+ static fromJSON(e, t) {
137
+ if (!t || !t.type)
138
+ throw new RangeError("Invalid input for Selection.fromJSON");
139
+ let r = O[t.type];
140
+ if (!r)
141
+ throw new RangeError(`No selection type ${t.type} defined`);
142
+ return r.fromJSON(e, t);
143
+ }
144
+ /**
145
+ To be able to deserialize selections from JSON, custom selection
146
+ classes must register themselves with an ID string, so that they
147
+ can be disambiguated. Try to pick something that's unlikely to
148
+ clash with classes from other modules.
149
+ */
150
+ static jsonID(e, t) {
151
+ if (e in O)
152
+ throw new RangeError("Duplicate use of selection JSON ID " + e);
153
+ return O[e] = t, t.prototype.jsonID = e, t;
154
+ }
155
+ /**
156
+ Get a [bookmark](https://prosemirror.net/docs/ref/#state.SelectionBookmark) for this selection,
157
+ which is a value that can be mapped without having access to a
158
+ current document, and later resolved to a real selection for a
159
+ given document again. (This is used mostly by the history to
160
+ track and restore old selections.) The default implementation of
161
+ this method just converts the selection to a text selection and
162
+ returns the bookmark for that.
163
+ */
164
+ getBookmark() {
165
+ return f.between(this.$anchor, this.$head).getBookmark();
166
+ }
167
+ }
168
+ l.prototype.visible = !0;
169
+ class q {
170
+ /**
171
+ Create a range.
172
+ */
173
+ constructor(e, t) {
174
+ this.$from = e, this.$to = t;
175
+ }
111
176
  }
112
- function G(e, t) {
113
- var i = Object.keys(e);
114
- if (Object.getOwnPropertySymbols) {
115
- var n = Object.getOwnPropertySymbols(e);
116
- t && (n = n.filter(function(r) {
117
- return Object.getOwnPropertyDescriptor(e, r).enumerable;
118
- })), i.push.apply(i, n);
119
- }
120
- return i;
177
+ let I = !1;
178
+ function T(i) {
179
+ !I && !i.parent.inlineContent && (I = !0, console.warn("TextSelection endpoint not pointing into a node with inline content (" + i.parent.type.name + ")"));
121
180
  }
122
- function j(e) {
123
- for (var t = 1; t < arguments.length; t++) {
124
- var i = arguments[t] != null ? arguments[t] : {};
125
- t % 2 ? G(Object(i), !0).forEach(function(n) {
126
- J(e, n, i[n]);
127
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(i)) : G(Object(i)).forEach(function(n) {
128
- Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(i, n));
129
- });
181
+ class f extends l {
182
+ /**
183
+ Construct a text selection between the given points.
184
+ */
185
+ constructor(e, t = e) {
186
+ T(e), T(t), super(e, t);
187
+ }
188
+ /**
189
+ Returns a resolved position if this is a cursor selection (an
190
+ empty text selection), and null otherwise.
191
+ */
192
+ get $cursor() {
193
+ return this.$anchor.pos == this.$head.pos ? this.$head : null;
194
+ }
195
+ map(e, t) {
196
+ let r = e.resolve(t.map(this.head));
197
+ if (!r.parent.inlineContent)
198
+ return l.near(r);
199
+ let n = e.resolve(t.map(this.anchor));
200
+ return new f(n.parent.inlineContent ? n : r, r);
201
+ }
202
+ replace(e, t = m.empty) {
203
+ if (super.replace(e, t), t == m.empty) {
204
+ let r = this.$from.marksAcross(this.$to);
205
+ r && e.ensureMarks(r);
206
+ }
207
+ }
208
+ eq(e) {
209
+ return e instanceof f && e.anchor == this.anchor && e.head == this.head;
210
+ }
211
+ getBookmark() {
212
+ return new y(this.anchor, this.head);
213
+ }
214
+ toJSON() {
215
+ return { type: "text", anchor: this.anchor, head: this.head };
216
+ }
217
+ /**
218
+ @internal
219
+ */
220
+ static fromJSON(e, t) {
221
+ if (typeof t.anchor != "number" || typeof t.head != "number")
222
+ throw new RangeError("Invalid input for TextSelection.fromJSON");
223
+ return new f(e.resolve(t.anchor), e.resolve(t.head));
224
+ }
225
+ /**
226
+ Create a text selection from non-resolved positions.
227
+ */
228
+ static create(e, t, r = t) {
229
+ let n = e.resolve(t);
230
+ return new this(n, r == t ? n : e.resolve(r));
231
+ }
232
+ /**
233
+ Return a text selection that spans the given positions or, if
234
+ they aren't text positions, find a text selection near them.
235
+ `bias` determines whether the method searches forward (default)
236
+ or backwards (negative number) first. Will fall back to calling
237
+ [`Selection.near`](https://prosemirror.net/docs/ref/#state.Selection^near) when the document
238
+ doesn't contain a valid text position.
239
+ */
240
+ static between(e, t, r) {
241
+ let n = e.pos - t.pos;
242
+ if ((!r || n) && (r = n >= 0 ? 1 : -1), !t.parent.inlineContent) {
243
+ let s = l.findFrom(t, r, !0) || l.findFrom(t, -r, !0);
244
+ if (s)
245
+ t = s.$head;
246
+ else
247
+ return l.near(t, r);
248
+ }
249
+ return e.parent.inlineContent || (n == 0 ? e = t : (e = (l.findFrom(e, -r, !0) || l.findFrom(e, r, !0)).$anchor, e.pos < t.pos != n < 0 && (e = t))), new f(e, t);
130
250
  }
131
- return e;
132
251
  }
133
- function J(e, t, i) {
134
- return t = x(t), t in e ? Object.defineProperty(e, t, { value: i, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = i, e;
252
+ l.jsonID("text", f);
253
+ class y {
254
+ constructor(e, t) {
255
+ this.anchor = e, this.head = t;
256
+ }
257
+ map(e) {
258
+ return new y(e.map(this.anchor), e.map(this.head));
259
+ }
260
+ resolve(e) {
261
+ return f.between(e.resolve(this.anchor), e.resolve(this.head));
262
+ }
135
263
  }
136
- function x(e) {
137
- var t = tt(e, "string");
138
- return E(t) == "symbol" ? t : String(t);
264
+ class p extends l {
265
+ /**
266
+ Create a node selection. Does not verify the validity of its
267
+ argument.
268
+ */
269
+ constructor(e) {
270
+ let t = e.nodeAfter, r = e.node(0).resolve(e.pos + t.nodeSize);
271
+ super(e, r), this.node = t;
272
+ }
273
+ map(e, t) {
274
+ let { deleted: r, pos: n } = t.mapResult(this.anchor), s = e.resolve(n);
275
+ return r ? l.near(s) : new p(s);
276
+ }
277
+ content() {
278
+ return new m(B.from(this.node), 0, 0);
279
+ }
280
+ eq(e) {
281
+ return e instanceof p && e.anchor == this.anchor;
282
+ }
283
+ toJSON() {
284
+ return { type: "node", anchor: this.anchor };
285
+ }
286
+ getBookmark() {
287
+ return new J(this.anchor);
288
+ }
289
+ /**
290
+ @internal
291
+ */
292
+ static fromJSON(e, t) {
293
+ if (typeof t.anchor != "number")
294
+ throw new RangeError("Invalid input for NodeSelection.fromJSON");
295
+ return new p(e.resolve(t.anchor));
296
+ }
297
+ /**
298
+ Create a node selection from non-resolved positions.
299
+ */
300
+ static create(e, t) {
301
+ return new p(e.resolve(t));
302
+ }
303
+ /**
304
+ Determines whether the given node may be selected as a node
305
+ selection.
306
+ */
307
+ static isSelectable(e) {
308
+ return !e.isText && e.type.spec.selectable !== !1;
309
+ }
139
310
  }
140
- function tt(e, t) {
141
- if (E(e) != "object" || !e) return e;
142
- var i = e[Symbol.toPrimitive];
143
- if (i !== void 0) {
144
- var n = i.call(e, t);
145
- if (E(n) != "object") return n;
146
- throw new TypeError("@@toPrimitive must return a primitive value.");
147
- }
148
- return (t === "string" ? String : Number)(e);
311
+ p.prototype.visible = !1;
312
+ l.jsonID("node", p);
313
+ class J {
314
+ constructor(e) {
315
+ this.anchor = e;
316
+ }
317
+ map(e) {
318
+ let { deleted: t, pos: r } = e.mapResult(this.anchor);
319
+ return t ? new y(r, r) : new J(r);
320
+ }
321
+ resolve(e) {
322
+ let t = e.resolve(this.anchor), r = t.nodeAfter;
323
+ return r && p.isSelectable(r) ? new p(t) : l.near(t);
324
+ }
149
325
  }
150
- var et = {
151
- name: "VirtualScroller",
152
- extends: $,
153
- inheritAttrs: !1,
154
- emits: ["update:numToleratedItems", "scroll", "scroll-index-change", "lazy-load"],
155
- data: function() {
156
- var t = this.isBoth();
157
- return {
158
- first: t ? {
159
- rows: 0,
160
- cols: 0
161
- } : 0,
162
- last: t ? {
163
- rows: 0,
164
- cols: 0
165
- } : 0,
166
- page: t ? {
167
- rows: 0,
168
- cols: 0
169
- } : 0,
170
- numItemsInViewport: t ? {
171
- rows: 0,
172
- cols: 0
173
- } : 0,
174
- lastScrollPos: t ? {
175
- top: 0,
176
- left: 0
177
- } : 0,
178
- d_numToleratedItems: this.numToleratedItems,
179
- d_loading: this.loading,
180
- loaderArr: [],
181
- spacerStyle: {},
182
- contentStyle: {}
183
- };
326
+ class d extends l {
327
+ /**
328
+ Create an all-selection over the given document.
329
+ */
330
+ constructor(e) {
331
+ super(e.resolve(0), e.resolve(e.content.size));
332
+ }
333
+ replace(e, t = m.empty) {
334
+ if (t == m.empty) {
335
+ e.delete(0, e.doc.content.size);
336
+ let r = l.atStart(e.doc);
337
+ r.eq(e.selection) || e.setSelection(r);
338
+ } else
339
+ super.replace(e, t);
340
+ }
341
+ toJSON() {
342
+ return { type: "all" };
343
+ }
344
+ /**
345
+ @internal
346
+ */
347
+ static fromJSON(e) {
348
+ return new d(e);
349
+ }
350
+ map(e) {
351
+ return new d(e);
352
+ }
353
+ eq(e) {
354
+ return e instanceof d;
355
+ }
356
+ getBookmark() {
357
+ return z;
358
+ }
359
+ }
360
+ l.jsonID("all", d);
361
+ const z = {
362
+ map() {
363
+ return this;
184
364
  },
185
- element: null,
186
- content: null,
187
- lastScrollPos: null,
188
- scrollTimeout: null,
189
- resizeTimeout: null,
190
- defaultWidth: 0,
191
- defaultHeight: 0,
192
- defaultContentWidth: 0,
193
- defaultContentHeight: 0,
194
- isRangeChanged: !1,
195
- lazyLoadState: {},
196
- resizeListener: null,
197
- initialized: !1,
198
- watch: {
199
- numToleratedItems: function(t) {
200
- this.d_numToleratedItems = t;
201
- },
202
- loading: function(t, i) {
203
- this.lazy && t !== i && t !== this.d_loading && (this.d_loading = t);
204
- },
205
- items: function(t, i) {
206
- (!i || i.length !== (t || []).length) && (this.init(), this.calculateAutoSize());
207
- },
208
- itemSize: function() {
209
- this.init(), this.calculateAutoSize();
210
- },
211
- orientation: function() {
212
- this.lastScrollPos = this.isBoth() ? {
213
- top: 0,
214
- left: 0
215
- } : 0;
216
- },
217
- scrollHeight: function() {
218
- this.init(), this.calculateAutoSize();
219
- },
220
- scrollWidth: function() {
221
- this.init(), this.calculateAutoSize();
365
+ resolve(i) {
366
+ return new d(i);
367
+ }
368
+ };
369
+ function g(i, e, t, r, n, s = !1) {
370
+ if (e.inlineContent)
371
+ return f.create(i, t);
372
+ for (let o = r - (n > 0 ? 0 : 1); n > 0 ? o < e.childCount : o >= 0; o += n) {
373
+ let a = e.child(o);
374
+ if (a.isAtom) {
375
+ if (!s && p.isSelectable(a))
376
+ return p.create(i, t - (n < 0 ? a.nodeSize : 0));
377
+ } else {
378
+ let c = g(i, a, t + n, n < 0 ? a.childCount : 0, n, s);
379
+ if (c)
380
+ return c;
222
381
  }
223
- },
224
- mounted: function() {
225
- this.viewInit(), this.lastScrollPos = this.isBoth() ? {
226
- top: 0,
227
- left: 0
228
- } : 0, this.lazyLoadState = this.lazyLoadState || {};
229
- },
230
- updated: function() {
231
- !this.initialized && this.viewInit();
232
- },
233
- unmounted: function() {
234
- this.unbindResizeListener(), this.initialized = !1;
235
- },
236
- methods: {
237
- viewInit: function() {
238
- p.isVisible(this.element) && (this.setContentEl(this.content), this.init(), this.calculateAutoSize(), this.bindResizeListener(), this.defaultWidth = p.getWidth(this.element), this.defaultHeight = p.getHeight(this.element), this.defaultContentWidth = p.getWidth(this.content), this.defaultContentHeight = p.getHeight(this.content), this.initialized = !0);
239
- },
240
- init: function() {
241
- this.disabled || (this.setSize(), this.calculateOptions(), this.setSpacerSize());
242
- },
243
- isVertical: function() {
244
- return this.orientation === "vertical";
382
+ t += a.nodeSize * n;
383
+ }
384
+ return null;
385
+ }
386
+ function E(i, e, t) {
387
+ let r = i.steps.length - 1;
388
+ if (r < e)
389
+ return;
390
+ let n = i.steps[r];
391
+ if (!(n instanceof P || n instanceof K))
392
+ return;
393
+ let s = i.mapping.maps[r], o;
394
+ s.forEach((a, c, u, h) => {
395
+ o == null && (o = h);
396
+ }), i.setSelection(l.near(i.doc.resolve(o), t));
397
+ }
398
+ const b = 1, k = 2, F = 4;
399
+ class W extends $ {
400
+ /**
401
+ @internal
402
+ */
403
+ constructor(e) {
404
+ super(e.doc), this.curSelectionFor = 0, this.updated = 0, this.meta = /* @__PURE__ */ Object.create(null), this.time = Date.now(), this.curSelection = e.selection, this.storedMarks = e.storedMarks;
405
+ }
406
+ /**
407
+ The transaction's current selection. This defaults to the editor
408
+ selection [mapped](https://prosemirror.net/docs/ref/#state.Selection.map) through the steps in the
409
+ transaction, but can be overwritten with
410
+ [`setSelection`](https://prosemirror.net/docs/ref/#state.Transaction.setSelection).
411
+ */
412
+ get selection() {
413
+ return this.curSelectionFor < this.steps.length && (this.curSelection = this.curSelection.map(this.doc, this.mapping.slice(this.curSelectionFor)), this.curSelectionFor = this.steps.length), this.curSelection;
414
+ }
415
+ /**
416
+ Update the transaction's current selection. Will determine the
417
+ selection that the editor gets when the transaction is applied.
418
+ */
419
+ setSelection(e) {
420
+ if (e.$from.doc != this.doc)
421
+ throw new RangeError("Selection passed to setSelection must point at the current document");
422
+ return this.curSelection = e, this.curSelectionFor = this.steps.length, this.updated = (this.updated | b) & ~k, this.storedMarks = null, this;
423
+ }
424
+ /**
425
+ Whether the selection was explicitly updated by this transaction.
426
+ */
427
+ get selectionSet() {
428
+ return (this.updated & b) > 0;
429
+ }
430
+ /**
431
+ Set the current stored marks.
432
+ */
433
+ setStoredMarks(e) {
434
+ return this.storedMarks = e, this.updated |= k, this;
435
+ }
436
+ /**
437
+ Make sure the current stored marks or, if that is null, the marks
438
+ at the selection, match the given set of marks. Does nothing if
439
+ this is already the case.
440
+ */
441
+ ensureMarks(e) {
442
+ return R.sameSet(this.storedMarks || this.selection.$from.marks(), e) || this.setStoredMarks(e), this;
443
+ }
444
+ /**
445
+ Add a mark to the set of stored marks.
446
+ */
447
+ addStoredMark(e) {
448
+ return this.ensureMarks(e.addToSet(this.storedMarks || this.selection.$head.marks()));
449
+ }
450
+ /**
451
+ Remove a mark or mark type from the set of stored marks.
452
+ */
453
+ removeStoredMark(e) {
454
+ return this.ensureMarks(e.removeFromSet(this.storedMarks || this.selection.$head.marks()));
455
+ }
456
+ /**
457
+ Whether the stored marks were explicitly set for this transaction.
458
+ */
459
+ get storedMarksSet() {
460
+ return (this.updated & k) > 0;
461
+ }
462
+ /**
463
+ @internal
464
+ */
465
+ addStep(e, t) {
466
+ super.addStep(e, t), this.updated = this.updated & ~k, this.storedMarks = null;
467
+ }
468
+ /**
469
+ Update the timestamp for the transaction.
470
+ */
471
+ setTime(e) {
472
+ return this.time = e, this;
473
+ }
474
+ /**
475
+ Replace the current selection with the given slice.
476
+ */
477
+ replaceSelection(e) {
478
+ return this.selection.replace(this, e), this;
479
+ }
480
+ /**
481
+ Replace the selection with the given node. When `inheritMarks` is
482
+ true and the content is inline, it inherits the marks from the
483
+ place where it is inserted.
484
+ */
485
+ replaceSelectionWith(e, t = !0) {
486
+ let r = this.selection;
487
+ return t && (e = e.mark(this.storedMarks || (r.empty ? r.$from.marks() : r.$from.marksAcross(r.$to) || R.none))), r.replaceWith(this, e), this;
488
+ }
489
+ /**
490
+ Delete the selection.
491
+ */
492
+ deleteSelection() {
493
+ return this.selection.replace(this), this;
494
+ }
495
+ /**
496
+ Replace the given range, or the selection if no range is given,
497
+ with a text node containing the given string.
498
+ */
499
+ insertText(e, t, r) {
500
+ let n = this.doc.type.schema;
501
+ if (t == null)
502
+ return e ? this.replaceSelectionWith(n.text(e), !0) : this.deleteSelection();
503
+ {
504
+ if (r == null && (r = t), !e)
505
+ return this.deleteRange(t, r);
506
+ let s = this.storedMarks;
507
+ if (!s) {
508
+ let o = this.doc.resolve(t);
509
+ s = r == t ? o.marks() : o.marksAcross(this.doc.resolve(r));
510
+ }
511
+ return this.replaceRangeWith(t, r, n.text(e, s)), !this.selection.empty && this.selection.to == t + e.length && this.setSelection(l.near(this.selection.$to)), this;
512
+ }
513
+ }
514
+ /**
515
+ Store a metadata property in this transaction, keyed either by
516
+ name or by plugin.
517
+ */
518
+ setMeta(e, t) {
519
+ return this.meta[typeof e == "string" ? e : e.key] = t, this;
520
+ }
521
+ /**
522
+ Retrieve a metadata property for a given name or plugin.
523
+ */
524
+ getMeta(e) {
525
+ return this.meta[typeof e == "string" ? e : e.key];
526
+ }
527
+ /**
528
+ Returns true if this transaction doesn't contain any metadata,
529
+ and can thus safely be extended.
530
+ */
531
+ get isGeneric() {
532
+ for (let e in this.meta)
533
+ return !1;
534
+ return !0;
535
+ }
536
+ /**
537
+ Indicate that the editor should scroll the selection into view
538
+ when updated to the state produced by this transaction.
539
+ */
540
+ scrollIntoView() {
541
+ return this.updated |= F, this;
542
+ }
543
+ /**
544
+ True when this transaction has had `scrollIntoView` called on it.
545
+ */
546
+ get scrolledIntoView() {
547
+ return (this.updated & F) > 0;
548
+ }
549
+ }
550
+ function D(i, e) {
551
+ return !e || !i ? i : i.bind(e);
552
+ }
553
+ class S {
554
+ constructor(e, t, r) {
555
+ this.name = e, this.init = D(t.init, r), this.apply = D(t.apply, r);
556
+ }
557
+ }
558
+ const L = [
559
+ new S("doc", {
560
+ init(i) {
561
+ return i.doc || i.schema.topNodeType.createAndFill();
245
562
  },
246
- isHorizontal: function() {
247
- return this.orientation === "horizontal";
563
+ apply(i) {
564
+ return i.doc;
565
+ }
566
+ }),
567
+ new S("selection", {
568
+ init(i, e) {
569
+ return i.selection || l.atStart(e.doc);
248
570
  },
249
- isBoth: function() {
250
- return this.orientation === "both";
571
+ apply(i) {
572
+ return i.selection;
573
+ }
574
+ }),
575
+ new S("storedMarks", {
576
+ init(i) {
577
+ return i.storedMarks || null;
251
578
  },
252
- scrollTo: function(t) {
253
- this.element && this.element.scrollTo(t);
579
+ apply(i, e, t, r) {
580
+ return r.selection.$cursor ? i.storedMarks : null;
581
+ }
582
+ }),
583
+ new S("scrollToSelection", {
584
+ init() {
585
+ return 0;
254
586
  },
255
- scrollToIndex: function(t) {
256
- var i = this, n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "auto", r = this.isBoth(), s = this.isHorizontal(), l = r ? t.every(function(P) {
257
- return P > -1;
258
- }) : t > -1;
259
- if (l) {
260
- var a = this.first, h = this.element, u = h.scrollTop, o = u === void 0 ? 0 : u, c = h.scrollLeft, m = c === void 0 ? 0 : c, y = this.calculateNumItems(), g = y.numToleratedItems, v = this.getContentPosition(), S = this.itemSize, b = function() {
261
- var I = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, H = arguments.length > 1 ? arguments[1] : void 0;
262
- return I <= H ? 0 : I;
263
- }, w = function(I, H, V) {
264
- return I * H + V;
265
- }, L = function() {
266
- var I = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, H = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
267
- return i.scrollTo({
268
- left: I,
269
- top: H,
270
- behavior: n
271
- });
272
- }, d = r ? {
273
- rows: 0,
274
- cols: 0
275
- } : 0, T = !1, B = !1;
276
- r ? (d = {
277
- rows: b(t[0], g[0]),
278
- cols: b(t[1], g[1])
279
- }, L(w(d.cols, S[1], v.left), w(d.rows, S[0], v.top)), B = this.lastScrollPos.top !== o || this.lastScrollPos.left !== m, T = d.rows !== a.rows || d.cols !== a.cols) : (d = b(t, g), s ? L(w(d, S, v.left), o) : L(m, w(d, S, v.top)), B = this.lastScrollPos !== (s ? m : o), T = d !== a), this.isRangeChanged = T, B && (this.first = d);
587
+ apply(i, e) {
588
+ return i.scrolledIntoView ? e + 1 : e;
589
+ }
590
+ })
591
+ ];
592
+ class v {
593
+ constructor(e, t) {
594
+ this.schema = e, this.plugins = [], this.pluginsByKey = /* @__PURE__ */ Object.create(null), this.fields = L.slice(), t && t.forEach((r) => {
595
+ if (this.pluginsByKey[r.key])
596
+ throw new RangeError("Adding different instances of a keyed plugin (" + r.key + ")");
597
+ this.plugins.push(r), this.pluginsByKey[r.key] = r, r.spec.state && this.fields.push(new S(r.key, r.spec.state, r));
598
+ });
599
+ }
600
+ }
601
+ class w {
602
+ /**
603
+ @internal
604
+ */
605
+ constructor(e) {
606
+ this.config = e;
607
+ }
608
+ /**
609
+ The schema of the state's document.
610
+ */
611
+ get schema() {
612
+ return this.config.schema;
613
+ }
614
+ /**
615
+ The plugins that are active in this state.
616
+ */
617
+ get plugins() {
618
+ return this.config.plugins;
619
+ }
620
+ /**
621
+ Apply the given transaction to produce a new state.
622
+ */
623
+ apply(e) {
624
+ return this.applyTransaction(e).state;
625
+ }
626
+ /**
627
+ @internal
628
+ */
629
+ filterTransaction(e, t = -1) {
630
+ for (let r = 0; r < this.config.plugins.length; r++)
631
+ if (r != t) {
632
+ let n = this.config.plugins[r];
633
+ if (n.spec.filterTransaction && !n.spec.filterTransaction.call(n, e, this))
634
+ return !1;
280
635
  }
281
- },
282
- scrollInView: function(t, i) {
283
- var n = this, r = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : "auto";
284
- if (i) {
285
- var s = this.isBoth(), l = this.isHorizontal(), a = s ? t.every(function(S) {
286
- return S > -1;
287
- }) : t > -1;
288
- if (a) {
289
- var h = this.getRenderedRange(), u = h.first, o = h.viewport, c = function() {
290
- var b = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, w = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
291
- return n.scrollTo({
292
- left: b,
293
- top: w,
294
- behavior: r
295
- });
296
- }, m = i === "to-start", y = i === "to-end";
297
- if (m) {
298
- if (s)
299
- o.first.rows - u.rows > t[0] ? c(o.first.cols * this.itemSize[1], (o.first.rows - 1) * this.itemSize[0]) : o.first.cols - u.cols > t[1] && c((o.first.cols - 1) * this.itemSize[1], o.first.rows * this.itemSize[0]);
300
- else if (o.first - u > t) {
301
- var g = (o.first - 1) * this.itemSize;
302
- l ? c(g, 0) : c(0, g);
303
- }
304
- } else if (y) {
305
- if (s)
306
- o.last.rows - u.rows <= t[0] + 1 ? c(o.first.cols * this.itemSize[1], (o.first.rows + 1) * this.itemSize[0]) : o.last.cols - u.cols <= t[1] + 1 && c((o.first.cols + 1) * this.itemSize[1], o.first.rows * this.itemSize[0]);
307
- else if (o.last - u <= t + 1) {
308
- var v = (o.first + 1) * this.itemSize;
309
- l ? c(v, 0) : c(0, v);
636
+ return !0;
637
+ }
638
+ /**
639
+ Verbose variant of [`apply`](https://prosemirror.net/docs/ref/#state.EditorState.apply) that
640
+ returns the precise transactions that were applied (which might
641
+ be influenced by the [transaction
642
+ hooks](https://prosemirror.net/docs/ref/#state.PluginSpec.filterTransaction) of
643
+ plugins) along with the new state.
644
+ */
645
+ applyTransaction(e) {
646
+ if (!this.filterTransaction(e))
647
+ return { state: this, transactions: [] };
648
+ let t = [e], r = this.applyInner(e), n = null;
649
+ for (; ; ) {
650
+ let s = !1;
651
+ for (let o = 0; o < this.config.plugins.length; o++) {
652
+ let a = this.config.plugins[o];
653
+ if (a.spec.appendTransaction) {
654
+ let c = n ? n[o].n : 0, u = n ? n[o].state : this, h = c < t.length && a.spec.appendTransaction.call(a, c ? t.slice(c) : t, u, r);
655
+ if (h && r.filterTransaction(h, o)) {
656
+ if (h.setMeta("appendedTransaction", e), !n) {
657
+ n = [];
658
+ for (let M = 0; M < this.config.plugins.length; M++)
659
+ n.push(M < o ? { state: r, n: t.length } : { state: this, n: 0 });
310
660
  }
661
+ t.push(h), r = r.applyInner(h), s = !0;
311
662
  }
312
- }
313
- } else
314
- this.scrollToIndex(t, r);
315
- },
316
- getRenderedRange: function() {
317
- var t = function(c, m) {
318
- return Math.floor(c / (m || c));
319
- }, i = this.first, n = 0;
320
- if (this.element) {
321
- var r = this.isBoth(), s = this.isHorizontal(), l = this.element, a = l.scrollTop, h = l.scrollLeft;
322
- if (r)
323
- i = {
324
- rows: t(a, this.itemSize[0]),
325
- cols: t(h, this.itemSize[1])
326
- }, n = {
327
- rows: i.rows + this.numItemsInViewport.rows,
328
- cols: i.cols + this.numItemsInViewport.cols
329
- };
330
- else {
331
- var u = s ? h : a;
332
- i = t(u, this.itemSize), n = i + this.numItemsInViewport;
333
- }
334
- }
335
- return {
336
- first: this.first,
337
- last: this.last,
338
- viewport: {
339
- first: i,
340
- last: n
341
- }
342
- };
343
- },
344
- calculateNumItems: function() {
345
- var t = this.isBoth(), i = this.isHorizontal(), n = this.itemSize, r = this.getContentPosition(), s = this.element ? this.element.offsetWidth - r.left : 0, l = this.element ? this.element.offsetHeight - r.top : 0, a = function(m, y) {
346
- return Math.ceil(m / (y || m));
347
- }, h = function(m) {
348
- return Math.ceil(m / 2);
349
- }, u = t ? {
350
- rows: a(l, n[0]),
351
- cols: a(s, n[1])
352
- } : a(i ? s : l, n), o = this.d_numToleratedItems || (t ? [h(u.rows), h(u.cols)] : h(u));
353
- return {
354
- numItemsInViewport: u,
355
- numToleratedItems: o
356
- };
357
- },
358
- calculateOptions: function() {
359
- var t = this, i = this.isBoth(), n = this.first, r = this.calculateNumItems(), s = r.numItemsInViewport, l = r.numToleratedItems, a = function(o, c, m) {
360
- var y = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : !1;
361
- return t.getLast(o + c + (o < m ? 2 : 3) * m, y);
362
- }, h = i ? {
363
- rows: a(n.rows, s.rows, l[0]),
364
- cols: a(n.cols, s.cols, l[1], !0)
365
- } : a(n, s, l);
366
- this.last = h, this.numItemsInViewport = s, this.d_numToleratedItems = l, this.$emit("update:numToleratedItems", this.d_numToleratedItems), this.showLoader && (this.loaderArr = i ? Array.from({
367
- length: s.rows
368
- }).map(function() {
369
- return Array.from({
370
- length: s.cols
371
- });
372
- }) : Array.from({
373
- length: s
374
- })), this.lazy && Promise.resolve().then(function() {
375
- var u;
376
- t.lazyLoadState = {
377
- first: t.step ? i ? {
378
- rows: 0,
379
- cols: n.cols
380
- } : 0 : n,
381
- last: Math.min(t.step ? t.step : h, ((u = t.items) === null || u === void 0 ? void 0 : u.length) || 0)
382
- }, t.$emit("lazy-load", t.lazyLoadState);
383
- });
384
- },
385
- calculateAutoSize: function() {
386
- var t = this;
387
- this.autoSize && !this.d_loading && Promise.resolve().then(function() {
388
- if (t.content) {
389
- var i = t.isBoth(), n = t.isHorizontal(), r = t.isVertical();
390
- t.content.style.minHeight = t.content.style.minWidth = "auto", t.content.style.position = "relative", t.element.style.contain = "none";
391
- var s = [p.getWidth(t.element), p.getHeight(t.element)], l = s[0], a = s[1];
392
- (i || n) && (t.element.style.width = l < t.defaultWidth ? l + "px" : t.scrollWidth || t.defaultWidth + "px"), (i || r) && (t.element.style.height = a < t.defaultHeight ? a + "px" : t.scrollHeight || t.defaultHeight + "px"), t.content.style.minHeight = t.content.style.minWidth = "", t.content.style.position = "", t.element.style.contain = "";
393
- }
394
- });
395
- },
396
- getLast: function() {
397
- var t, i, n = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, r = arguments.length > 1 ? arguments[1] : void 0;
398
- return this.items ? Math.min(r ? ((t = this.columns || this.items[0]) === null || t === void 0 ? void 0 : t.length) || 0 : ((i = this.items) === null || i === void 0 ? void 0 : i.length) || 0, n) : 0;
399
- },
400
- getContentPosition: function() {
401
- if (this.content) {
402
- var t = getComputedStyle(this.content), i = parseFloat(t.paddingLeft) + Math.max(parseFloat(t.left) || 0, 0), n = parseFloat(t.paddingRight) + Math.max(parseFloat(t.right) || 0, 0), r = parseFloat(t.paddingTop) + Math.max(parseFloat(t.top) || 0, 0), s = parseFloat(t.paddingBottom) + Math.max(parseFloat(t.bottom) || 0, 0);
403
- return {
404
- left: i,
405
- right: n,
406
- top: r,
407
- bottom: s,
408
- x: i + n,
409
- y: r + s
410
- };
411
- }
412
- return {
413
- left: 0,
414
- right: 0,
415
- top: 0,
416
- bottom: 0,
417
- x: 0,
418
- y: 0
419
- };
420
- },
421
- setSize: function() {
422
- var t = this;
423
- if (this.element) {
424
- var i = this.isBoth(), n = this.isHorizontal(), r = this.element.parentElement, s = this.scrollWidth || "".concat(this.element.offsetWidth || r.offsetWidth, "px"), l = this.scrollHeight || "".concat(this.element.offsetHeight || r.offsetHeight, "px"), a = function(u, o) {
425
- return t.element.style[u] = o;
426
- };
427
- i || n ? (a("height", l), a("width", s)) : a("height", l);
428
- }
429
- },
430
- setSpacerSize: function() {
431
- var t = this, i = this.items;
432
- if (i) {
433
- var n = this.isBoth(), r = this.isHorizontal(), s = this.getContentPosition(), l = function(h, u, o) {
434
- var c = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : 0;
435
- return t.spacerStyle = j(j({}, t.spacerStyle), J({}, "".concat(h), (u || []).length * o + c + "px"));
436
- };
437
- n ? (l("height", i, this.itemSize[0], s.y), l("width", this.columns || i[1], this.itemSize[1], s.x)) : r ? l("width", this.columns || i, this.itemSize, s.x) : l("height", i, this.itemSize, s.y);
438
- }
439
- },
440
- setContentPosition: function(t) {
441
- var i = this;
442
- if (this.content && !this.appendOnly) {
443
- var n = this.isBoth(), r = this.isHorizontal(), s = t ? t.first : this.first, l = function(o, c) {
444
- return o * c;
445
- }, a = function() {
446
- var o = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : 0, c = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0;
447
- return i.contentStyle = j(j({}, i.contentStyle), {
448
- transform: "translate3d(".concat(o, "px, ").concat(c, "px, 0)")
449
- });
450
- };
451
- if (n)
452
- a(l(s.cols, this.itemSize[1]), l(s.rows, this.itemSize[0]));
453
- else {
454
- var h = l(s, this.itemSize);
455
- r ? a(h, 0) : a(0, h);
663
+ n && (n[o] = { state: r, n: t.length });
456
664
  }
457
665
  }
458
- },
459
- onScrollPositionChange: function(t) {
460
- var i = this, n = t.target, r = this.isBoth(), s = this.isHorizontal(), l = this.getContentPosition(), a = function(f, z) {
461
- return f ? f > z ? f - z : f : 0;
462
- }, h = function(f, z) {
463
- return Math.floor(f / (z || f));
464
- }, u = function(f, z, N, F, C, O) {
465
- return f <= C ? C : O ? N - F - C : z + C - 1;
466
- }, o = function(f, z, N, F, C, O, _) {
467
- return f <= O ? 0 : Math.max(0, _ ? f < z ? N : f - O : f > z ? N : f - 2 * O);
468
- }, c = function(f, z, N, F, C, O) {
469
- var _ = z + F + 2 * C;
470
- return f >= C && (_ += C + 1), i.getLast(_, O);
471
- }, m = a(n.scrollTop, l.top), y = a(n.scrollLeft, l.left), g = r ? {
472
- rows: 0,
473
- cols: 0
474
- } : 0, v = this.last, S = !1, b = this.lastScrollPos;
475
- if (r) {
476
- var w = this.lastScrollPos.top <= m, L = this.lastScrollPos.left <= y;
477
- if (!this.appendOnly || this.appendOnly && (w || L)) {
478
- var d = {
479
- rows: h(m, this.itemSize[0]),
480
- cols: h(y, this.itemSize[1])
481
- }, T = {
482
- rows: u(d.rows, this.first.rows, this.last.rows, this.numItemsInViewport.rows, this.d_numToleratedItems[0], w),
483
- cols: u(d.cols, this.first.cols, this.last.cols, this.numItemsInViewport.cols, this.d_numToleratedItems[1], L)
484
- };
485
- g = {
486
- rows: o(d.rows, T.rows, this.first.rows, this.last.rows, this.numItemsInViewport.rows, this.d_numToleratedItems[0], w),
487
- cols: o(d.cols, T.cols, this.first.cols, this.last.cols, this.numItemsInViewport.cols, this.d_numToleratedItems[1], L)
488
- }, v = {
489
- rows: c(d.rows, g.rows, this.last.rows, this.numItemsInViewport.rows, this.d_numToleratedItems[0]),
490
- cols: c(d.cols, g.cols, this.last.cols, this.numItemsInViewport.cols, this.d_numToleratedItems[1], !0)
491
- }, S = g.rows !== this.first.rows || v.rows !== this.last.rows || g.cols !== this.first.cols || v.cols !== this.last.cols || this.isRangeChanged, b = {
492
- top: m,
493
- left: y
494
- };
495
- }
496
- } else {
497
- var B = s ? y : m, P = this.lastScrollPos <= B;
498
- if (!this.appendOnly || this.appendOnly && P) {
499
- var I = h(B, this.itemSize), H = u(I, this.first, this.last, this.numItemsInViewport, this.d_numToleratedItems, P);
500
- g = o(I, H, this.first, this.last, this.numItemsInViewport, this.d_numToleratedItems, P), v = c(I, g, this.last, this.numItemsInViewport, this.d_numToleratedItems), S = g !== this.first || v !== this.last || this.isRangeChanged, b = B;
501
- }
502
- }
503
- return {
504
- first: g,
505
- last: v,
506
- isRangeChanged: S,
507
- scrollPos: b
508
- };
509
- },
510
- onScrollChange: function(t) {
511
- var i = this.onScrollPositionChange(t), n = i.first, r = i.last, s = i.isRangeChanged, l = i.scrollPos;
512
- if (s) {
513
- var a = {
514
- first: n,
515
- last: r
516
- };
517
- if (this.setContentPosition(a), this.first = n, this.last = r, this.lastScrollPos = l, this.$emit("scroll-index-change", a), this.lazy && this.isPageChanged(n)) {
518
- var h, u, o = {
519
- first: this.step ? Math.min(this.getPageByFirst(n) * this.step, (((h = this.items) === null || h === void 0 ? void 0 : h.length) || 0) - this.step) : n,
520
- last: Math.min(this.step ? (this.getPageByFirst(n) + 1) * this.step : r, ((u = this.items) === null || u === void 0 ? void 0 : u.length) || 0)
521
- }, c = this.lazyLoadState.first !== o.first || this.lazyLoadState.last !== o.last;
522
- c && this.$emit("lazy-load", o), this.lazyLoadState = o;
523
- }
666
+ if (!s)
667
+ return { state: r, transactions: t };
668
+ }
669
+ }
670
+ /**
671
+ @internal
672
+ */
673
+ applyInner(e) {
674
+ if (!e.before.eq(this.doc))
675
+ throw new RangeError("Applying a mismatched transaction");
676
+ let t = new w(this.config), r = this.config.fields;
677
+ for (let n = 0; n < r.length; n++) {
678
+ let s = r[n];
679
+ t[s.name] = s.apply(e, this[s.name], this, t);
680
+ }
681
+ return t;
682
+ }
683
+ /**
684
+ Accessor that constructs and returns a new [transaction](https://prosemirror.net/docs/ref/#state.Transaction) from this state.
685
+ */
686
+ get tr() {
687
+ return new W(this);
688
+ }
689
+ /**
690
+ Create a new state.
691
+ */
692
+ static create(e) {
693
+ let t = new v(e.doc ? e.doc.type.schema : e.schema, e.plugins), r = new w(t);
694
+ for (let n = 0; n < t.fields.length; n++)
695
+ r[t.fields[n].name] = t.fields[n].init(e, r);
696
+ return r;
697
+ }
698
+ /**
699
+ Create a new state based on this one, but with an adjusted set
700
+ of active plugins. State fields that exist in both sets of
701
+ plugins are kept unchanged. Those that no longer exist are
702
+ dropped, and those that are new are initialized using their
703
+ [`init`](https://prosemirror.net/docs/ref/#state.StateField.init) method, passing in the new
704
+ configuration object..
705
+ */
706
+ reconfigure(e) {
707
+ let t = new v(this.schema, e.plugins), r = t.fields, n = new w(t);
708
+ for (let s = 0; s < r.length; s++) {
709
+ let o = r[s].name;
710
+ n[o] = this.hasOwnProperty(o) ? this[o] : r[s].init(e, n);
711
+ }
712
+ return n;
713
+ }
714
+ /**
715
+ Serialize this state to JSON. If you want to serialize the state
716
+ of plugins, pass an object mapping property names to use in the
717
+ resulting JSON object to plugin objects. The argument may also be
718
+ a string or number, in which case it is ignored, to support the
719
+ way `JSON.stringify` calls `toString` methods.
720
+ */
721
+ toJSON(e) {
722
+ let t = { doc: this.doc.toJSON(), selection: this.selection.toJSON() };
723
+ if (this.storedMarks && (t.storedMarks = this.storedMarks.map((r) => r.toJSON())), e && typeof e == "object")
724
+ for (let r in e) {
725
+ if (r == "doc" || r == "selection")
726
+ throw new RangeError("The JSON fields `doc` and `selection` are reserved");
727
+ let n = e[r], s = n.spec.state;
728
+ s && s.toJSON && (t[r] = s.toJSON.call(n, this[n.key]));
524
729
  }
525
- },
526
- onScroll: function(t) {
527
- var i = this;
528
- if (this.$emit("scroll", t), this.delay) {
529
- if (this.scrollTimeout && clearTimeout(this.scrollTimeout), this.isPageChanged()) {
530
- if (!this.d_loading && this.showLoader) {
531
- var n = this.onScrollPositionChange(t), r = n.isRangeChanged, s = r || (this.step ? this.isPageChanged() : !1);
532
- s && (this.d_loading = !0);
730
+ return t;
731
+ }
732
+ /**
733
+ Deserialize a JSON representation of a state. `config` should
734
+ have at least a `schema` field, and should contain array of
735
+ plugins to initialize the state with. `pluginFields` can be used
736
+ to deserialize the state of plugins, by associating plugin
737
+ instances with the property names they use in the JSON object.
738
+ */
739
+ static fromJSON(e, t, r) {
740
+ if (!t)
741
+ throw new RangeError("Invalid input for EditorState.fromJSON");
742
+ if (!e.schema)
743
+ throw new RangeError("Required config field 'schema' missing");
744
+ let n = new v(e.schema, e.plugins), s = new w(n);
745
+ return n.fields.forEach((o) => {
746
+ if (o.name == "doc")
747
+ s.doc = x.fromJSON(e.schema, t.doc);
748
+ else if (o.name == "selection")
749
+ s.selection = l.fromJSON(s.doc, t.selection);
750
+ else if (o.name == "storedMarks")
751
+ t.storedMarks && (s.storedMarks = t.storedMarks.map(e.schema.markFromJSON));
752
+ else {
753
+ if (r)
754
+ for (let a in r) {
755
+ let c = r[a], u = c.spec.state;
756
+ if (c.key == o.name && u && u.fromJSON && Object.prototype.hasOwnProperty.call(t, a)) {
757
+ s[o.name] = u.fromJSON.call(c, e, t[a], s);
758
+ return;
759
+ }
533
760
  }
534
- this.scrollTimeout = setTimeout(function() {
535
- i.onScrollChange(t), i.d_loading && i.showLoader && (!i.lazy || i.loading === void 0) && (i.d_loading = !1, i.page = i.getPageByFirst());
536
- }, this.delay);
537
- }
538
- } else
539
- this.onScrollChange(t);
540
- },
541
- onResize: function() {
542
- var t = this;
543
- this.resizeTimeout && clearTimeout(this.resizeTimeout), this.resizeTimeout = setTimeout(function() {
544
- if (p.isVisible(t.element)) {
545
- var i = t.isBoth(), n = t.isVertical(), r = t.isHorizontal(), s = [p.getWidth(t.element), p.getHeight(t.element)], l = s[0], a = s[1], h = l !== t.defaultWidth, u = a !== t.defaultHeight, o = i ? h || u : r ? h : n ? u : !1;
546
- o && (t.d_numToleratedItems = t.numToleratedItems, t.defaultWidth = l, t.defaultHeight = a, t.defaultContentWidth = p.getWidth(t.content), t.defaultContentHeight = p.getHeight(t.content), t.init());
547
- }
548
- }, this.resizeDelay);
549
- },
550
- bindResizeListener: function() {
551
- this.resizeListener || (this.resizeListener = this.onResize.bind(this), window.addEventListener("resize", this.resizeListener), window.addEventListener("orientationchange", this.resizeListener));
552
- },
553
- unbindResizeListener: function() {
554
- this.resizeListener && (window.removeEventListener("resize", this.resizeListener), window.removeEventListener("orientationchange", this.resizeListener), this.resizeListener = null);
555
- },
556
- getOptions: function(t) {
557
- var i = (this.items || []).length, n = this.isBoth() ? this.first.rows + t : this.first + t;
558
- return {
559
- index: n,
560
- count: i,
561
- first: n === 0,
562
- last: n === i - 1,
563
- even: n % 2 === 0,
564
- odd: n % 2 !== 0
565
- };
566
- },
567
- getLoaderOptions: function(t, i) {
568
- var n = this.loaderArr.length;
569
- return j({
570
- index: t,
571
- count: n,
572
- first: t === 0,
573
- last: t === n - 1,
574
- even: t % 2 === 0,
575
- odd: t % 2 !== 0
576
- }, i);
577
- },
578
- getPageByFirst: function(t) {
579
- return Math.floor(((t ?? this.first) + this.d_numToleratedItems * 4) / (this.step || 1));
580
- },
581
- isPageChanged: function(t) {
582
- return this.step ? this.page !== this.getPageByFirst(t ?? this.first) : !0;
583
- },
584
- setContentEl: function(t) {
585
- this.content = t || this.content || p.findSingle(this.element, '[data-pc-section="content"]');
586
- },
587
- elementRef: function(t) {
588
- this.element = t;
589
- },
590
- contentRef: function(t) {
591
- this.content = t;
592
- }
593
- },
594
- computed: {
595
- containerClass: function() {
596
- return ["p-virtualscroller", this.class, {
597
- "p-virtualscroller-inline": this.inline,
598
- "p-virtualscroller-both p-both-scroll": this.isBoth(),
599
- "p-virtualscroller-horizontal p-horizontal-scroll": this.isHorizontal()
600
- }];
601
- },
602
- contentClass: function() {
603
- return ["p-virtualscroller-content", {
604
- "p-virtualscroller-loading": this.d_loading
605
- }];
606
- },
607
- loaderClass: function() {
608
- return ["p-virtualscroller-loader", {
609
- "p-component-overlay": !this.$slots.loader
610
- }];
611
- },
612
- loadedItems: function() {
613
- var t = this;
614
- return this.items && !this.d_loading ? this.isBoth() ? this.items.slice(this.appendOnly ? 0 : this.first.rows, this.last.rows).map(function(i) {
615
- return t.columns ? i : i.slice(t.appendOnly ? 0 : t.first.cols, t.last.cols);
616
- }) : this.isHorizontal() && this.columns ? this.items : this.items.slice(this.appendOnly ? 0 : this.first, this.last) : [];
617
- },
618
- loadedRows: function() {
619
- return this.d_loading ? this.loaderDisabled ? this.loaderArr : [] : this.loadedItems;
620
- },
621
- loadedColumns: function() {
622
- if (this.columns) {
623
- var t = this.isBoth(), i = this.isHorizontal();
624
- if (t || i)
625
- return this.d_loading && this.loaderDisabled ? t ? this.loaderArr[0] : this.loaderArr : this.columns.slice(t ? this.first.cols : this.first, t ? this.last.cols : this.last);
761
+ s[o.name] = o.init(e, s);
626
762
  }
627
- return this.columns;
628
- }
629
- },
630
- components: {
631
- SpinnerIcon: Q
632
- }
633
- }, it = ["tabindex"];
634
- function st(e, t, i, n, r, s) {
635
- var l = X("SpinnerIcon");
636
- return e.disabled ? (R(), W(k, {
637
- key: 1
638
- }, [A(e.$slots, "default"), A(e.$slots, "content", {
639
- items: e.items,
640
- rows: e.items,
641
- columns: s.loadedColumns
642
- })], 64)) : (R(), W("div", M({
643
- key: 0,
644
- ref: s.elementRef,
645
- class: s.containerClass,
646
- tabindex: e.tabindex,
647
- style: e.style,
648
- onScroll: t[0] || (t[0] = function() {
649
- return s.onScroll && s.onScroll.apply(s, arguments);
650
- })
651
- }, e.ptmi("root")), [A(e.$slots, "content", {
652
- styleClass: s.contentClass,
653
- items: s.loadedItems,
654
- getItemOptions: s.getOptions,
655
- loading: r.d_loading,
656
- getLoaderOptions: s.getLoaderOptions,
657
- itemSize: e.itemSize,
658
- rows: s.loadedRows,
659
- columns: s.loadedColumns,
660
- contentRef: s.contentRef,
661
- spacerStyle: r.spacerStyle,
662
- contentStyle: r.contentStyle,
663
- vertical: s.isVertical(),
664
- horizontal: s.isHorizontal(),
665
- both: s.isBoth()
666
- }, function() {
667
- return [Y("div", M({
668
- ref: s.contentRef,
669
- class: s.contentClass,
670
- style: r.contentStyle
671
- }, e.ptm("content")), [(R(!0), W(k, null, q(s.loadedItems, function(a, h) {
672
- return A(e.$slots, "item", {
673
- key: h,
674
- item: a,
675
- options: s.getOptions(h)
676
- });
677
- }), 128))], 16)];
678
- }), e.showSpacer ? (R(), W("div", M({
679
- key: 0,
680
- class: "p-virtualscroller-spacer",
681
- style: r.spacerStyle
682
- }, e.ptm("spacer")), null, 16)) : D("", !0), !e.loaderDisabled && e.showLoader && r.d_loading ? (R(), W("div", M({
683
- key: 1,
684
- class: s.loaderClass
685
- }, e.ptm("loader")), [e.$slots && e.$slots.loader ? (R(!0), W(k, {
686
- key: 0
687
- }, q(r.loaderArr, function(a, h) {
688
- return A(e.$slots, "loader", {
689
- key: h,
690
- options: s.getLoaderOptions(h, s.isBoth() && {
691
- numCols: e.d_numItemsInViewport.cols
692
- })
693
- });
694
- }), 128)) : D("", !0), A(e.$slots, "loadingicon", {}, function() {
695
- return [Z(l, M({
696
- spin: "",
697
- class: "p-virtualscroller-loading-icon"
698
- }, e.ptm("loadingIcon")), null, 16)];
699
- })], 16)) : D("", !0)], 16, it));
763
+ }), s;
764
+ }
765
+ }
766
+ function A(i, e, t) {
767
+ for (let r in i) {
768
+ let n = i[r];
769
+ n instanceof Function ? n = n.bind(e) : r == "handleDOMEvents" && (n = A(n, e, {})), t[r] = n;
770
+ }
771
+ return t;
772
+ }
773
+ class G {
774
+ /**
775
+ Create a plugin.
776
+ */
777
+ constructor(e) {
778
+ this.spec = e, this.props = {}, e.props && A(e.props, this, this.props), this.key = e.key ? e.key.key : C("plugin");
779
+ }
780
+ /**
781
+ Extract the plugin's state field from an editor state.
782
+ */
783
+ getState(e) {
784
+ return e[this.key];
785
+ }
786
+ }
787
+ const N = /* @__PURE__ */ Object.create(null);
788
+ function C(i) {
789
+ return i in N ? i + "$" + ++N[i] : (N[i] = 0, i + "$");
790
+ }
791
+ class H {
792
+ /**
793
+ Create a plugin key.
794
+ */
795
+ constructor(e = "key") {
796
+ this.key = C(e);
797
+ }
798
+ /**
799
+ Get the active plugin with this key, if any, from an editor
800
+ state.
801
+ */
802
+ get(e) {
803
+ return e.config.pluginsByKey[this.key];
804
+ }
805
+ /**
806
+ Get the plugin's state from an editor state.
807
+ */
808
+ getState(e) {
809
+ return e[this.key];
810
+ }
700
811
  }
701
- et.render = st;
702
812
  export {
703
- et as default
813
+ d as AllSelection,
814
+ w as EditorState,
815
+ p as NodeSelection,
816
+ G as Plugin,
817
+ H as PluginKey,
818
+ l as Selection,
819
+ q as SelectionRange,
820
+ f as TextSelection,
821
+ W as Transaction
704
822
  };