@quoreadmin/ui 1.10.32 → 1.11.0

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 (374) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.js +29 -27
  3. package/dist/index10.js +2 -2
  4. package/dist/index101.js +20 -25
  5. package/dist/index102.js +34 -0
  6. package/dist/{index103.js → index104.js} +1 -1
  7. package/dist/index106.js +147 -2
  8. package/dist/index107.js +2 -37
  9. package/dist/index108.js +39 -0
  10. package/dist/index11.js +2 -2
  11. package/dist/{index109.js → index110.js} +2 -2
  12. package/dist/{index111.js → index112.js} +1 -1
  13. package/dist/{index113.js → index114.js} +3 -3
  14. package/dist/{index115.js → index116.js} +5 -5
  15. package/dist/{index117.js → index118.js} +1 -1
  16. package/dist/index12.js +2 -2
  17. package/dist/{index119.js → index120.js} +5 -5
  18. package/dist/index13.js +2 -2
  19. package/dist/{index131.js → index132.js} +2 -2
  20. package/dist/{index136.js → index137.js} +1 -1
  21. package/dist/{index138.js → index139.js} +2 -2
  22. package/dist/index14.js +2 -2
  23. package/dist/index142.js +167 -0
  24. package/dist/{index143.js → index146.js} +1 -1
  25. package/dist/index15.js +2 -2
  26. package/dist/{index147.js → index150.js} +391 -408
  27. package/dist/{index149.js → index152.js} +1 -1
  28. package/dist/{index151.js → index154.js} +10 -10
  29. package/dist/index16.js +2 -2
  30. package/dist/index160.js +581 -86
  31. package/dist/index163.js +93 -0
  32. package/dist/index165.js +87 -356
  33. package/dist/index168.js +389 -0
  34. package/dist/index17.js +2 -2
  35. package/dist/{index167.js → index170.js} +1 -1
  36. package/dist/index172.js +205 -111
  37. package/dist/index175.js +110 -87
  38. package/dist/index176.js +478 -844
  39. package/dist/index177.js +5520 -36
  40. package/dist/index178.js +90 -279
  41. package/dist/index179.js +833 -122
  42. package/dist/index18.js +2 -2
  43. package/dist/index180.js +36 -1197
  44. package/dist/index181.js +268 -760
  45. package/dist/index182.js +146 -1304
  46. package/dist/index183.js +1151 -228
  47. package/dist/index184.js +754 -88
  48. package/dist/index185.js +1308 -2
  49. package/dist/index186.js +259 -1359
  50. package/dist/index187.js +108 -0
  51. package/dist/index188.js +2 -18
  52. package/dist/index189.js +1372 -14
  53. package/dist/index19.js +2 -2
  54. package/dist/index191.js +8 -8
  55. package/dist/index192.js +10 -17
  56. package/dist/index193.js +18 -759
  57. package/dist/index194.js +18 -1177
  58. package/dist/index195.js +22 -1231
  59. package/dist/index196.js +740 -11258
  60. package/dist/index197.js +1177 -36
  61. package/dist/index198.js +1233 -43
  62. package/dist/index199.js +11258 -1209
  63. package/dist/index2.js +2 -2
  64. package/dist/index20.js +3 -3
  65. package/dist/index200.js +38 -0
  66. package/dist/index201.js +44 -5938
  67. package/dist/index202.js +1149 -128
  68. package/dist/index204.js +5933 -13
  69. package/dist/index205.js +205 -76
  70. package/dist/index206.js +28 -246
  71. package/dist/index207.js +14 -13680
  72. package/dist/index208.js +77 -26
  73. package/dist/index209.js +245 -55
  74. package/dist/index21.js +2 -2
  75. package/dist/index210.js +13655 -209
  76. package/dist/index211.js +26 -310
  77. package/dist/index212.js +43 -277
  78. package/dist/index213.js +237 -32
  79. package/dist/index214.js +303 -108
  80. package/dist/index215.js +295 -34
  81. package/dist/index216.js +33 -26
  82. package/dist/index217.js +111 -31
  83. package/dist/index218.js +35 -50
  84. package/dist/index219.js +26 -43
  85. package/dist/index22.js +2 -2
  86. package/dist/index220.js +35 -3
  87. package/dist/index221.js +51 -9
  88. package/dist/index222.js +42 -18
  89. package/dist/index223.js +4 -10
  90. package/dist/index224.js +9 -10
  91. package/dist/index225.js +18 -38
  92. package/dist/index226.js +10 -21
  93. package/dist/index227.js +10 -88
  94. package/dist/index228.js +35 -403
  95. package/dist/index229.js +21 -22
  96. package/dist/index23.js +2 -2
  97. package/dist/index230.js +67 -106
  98. package/dist/index231.js +395 -26
  99. package/dist/index232.js +17 -75
  100. package/dist/index233.js +126 -19
  101. package/dist/index234.js +34 -16
  102. package/dist/index235.js +80 -20
  103. package/dist/index236.js +12 -12
  104. package/dist/index237.js +11 -11
  105. package/dist/index238.js +19 -160
  106. package/dist/index239.js +11 -11
  107. package/dist/index24.js +2 -2
  108. package/dist/index240.js +13 -15
  109. package/dist/index241.js +129 -167
  110. package/dist/index242.js +19 -69
  111. package/dist/index243.js +21 -33
  112. package/dist/index244.js +184 -25
  113. package/dist/index245.js +68 -159
  114. package/dist/index246.js +33 -227
  115. package/dist/index247.js +39 -36
  116. package/dist/index248.js +252 -9
  117. package/dist/index249.js +8 -253
  118. package/dist/index250.js +138 -8
  119. package/dist/index251.js +68 -123
  120. package/dist/index252.js +156 -78
  121. package/dist/index253.js +228 -22
  122. package/dist/index254.js +36 -21
  123. package/dist/index255.js +10 -20
  124. package/dist/index256.js +22 -836
  125. package/dist/index257.js +21 -701
  126. package/dist/index258.js +20 -176
  127. package/dist/index259.js +836 -22
  128. package/dist/index26.js +2 -2
  129. package/dist/index260.js +701 -19
  130. package/dist/index261.js +176 -20
  131. package/dist/index262.js +22 -3
  132. package/dist/index263.js +19 -186
  133. package/dist/index264.js +19 -132
  134. package/dist/index265.js +3 -1223
  135. package/dist/index266.js +185 -18
  136. package/dist/index267.js +132 -21
  137. package/dist/index268.js +1223 -22
  138. package/dist/index269.js +13 -22
  139. package/dist/index27.js +2 -2
  140. package/dist/index270.js +15 -13
  141. package/dist/index271.js +14 -12
  142. package/dist/index272.js +29 -2
  143. package/dist/index273.js +20 -2
  144. package/dist/index274.js +20 -3709
  145. package/dist/index275.js +2 -60
  146. package/dist/index276.js +2 -83
  147. package/dist/index277.js +3690 -33
  148. package/dist/index278.js +34 -189
  149. package/dist/index279.js +82 -9
  150. package/dist/index28.js +2 -2
  151. package/dist/index280.js +34 -39
  152. package/dist/index281.js +186 -32
  153. package/dist/index282.js +9 -53
  154. package/dist/index283.js +39 -63
  155. package/dist/index284.js +35 -702
  156. package/dist/index285.js +40 -33
  157. package/dist/index286.js +40 -23
  158. package/dist/index287.js +727 -10
  159. package/dist/index288.js +38 -696
  160. package/dist/index289.js +62 -818
  161. package/dist/index29.js +2 -2
  162. package/dist/index290.js +11 -2
  163. package/dist/index291.js +694 -68
  164. package/dist/index292.js +819 -53
  165. package/dist/index293.js +2 -26
  166. package/dist/index294.js +78 -21
  167. package/dist/index295.js +53 -21
  168. package/dist/index296.js +26 -16
  169. package/dist/index297.js +22 -17
  170. package/dist/index298.js +21 -22
  171. package/dist/index299.js +16 -3
  172. package/dist/index3.js +2 -2
  173. package/dist/index30.js +2 -2
  174. package/dist/index300.js +17 -27
  175. package/dist/index301.js +22 -234
  176. package/dist/index302.js +78 -5
  177. package/dist/index303.js +21 -133
  178. package/dist/index304.js +929 -62
  179. package/dist/index305.js +21 -86
  180. package/dist/index306.js +19 -28
  181. package/dist/index307.js +18 -7
  182. package/dist/index308.js +67 -73
  183. package/dist/index309.js +19 -4
  184. package/dist/index31.js +3 -3
  185. package/dist/index310.js +19 -2
  186. package/dist/index311.js +21 -82
  187. package/dist/index312.js +21 -53
  188. package/dist/index313.js +63 -6
  189. package/dist/index314.js +83 -4
  190. package/dist/index315.js +3 -179
  191. package/dist/index316.js +25 -61
  192. package/dist/index317.js +1533 -74
  193. package/dist/index318.js +346 -1494
  194. package/dist/index319.js +2675 -330
  195. package/dist/index32.js +2 -2
  196. package/dist/index320.js +72 -2717
  197. package/dist/index321.js +3788 -76
  198. package/dist/index322.js +49 -3787
  199. package/dist/index323.js +15 -60
  200. package/dist/index324.js +84 -15
  201. package/dist/index325.js +188 -70
  202. package/dist/index326.js +220 -176
  203. package/dist/index327.js +31 -240
  204. package/dist/index328.js +125 -74
  205. package/dist/index329.js +400 -22
  206. package/dist/index33.js +2 -2
  207. package/dist/index330.js +223 -923
  208. package/dist/index331.js +5 -21
  209. package/dist/index332.js +133 -19
  210. package/dist/index333.js +67 -19
  211. package/dist/index334.js +82 -64
  212. package/dist/index335.js +29 -19
  213. package/dist/index336.js +8 -18
  214. package/dist/index337.js +74 -21
  215. package/dist/index338.js +3 -21
  216. package/dist/index339.js +2 -63
  217. package/dist/index34.js +2 -2
  218. package/dist/index340.js +77 -31
  219. package/dist/index341.js +53 -9
  220. package/dist/index342.js +6 -10
  221. package/dist/index343.js +5 -14
  222. package/dist/index344.js +179 -10
  223. package/dist/index345.js +61 -15
  224. package/dist/index346.js +75 -9
  225. package/dist/index347.js +19 -12
  226. package/dist/index348.js +19 -54
  227. package/dist/index349.js +63 -11
  228. package/dist/index35.js +2 -2
  229. package/dist/index350.js +37 -14
  230. package/dist/index351.js +8 -57
  231. package/dist/index352.js +12 -51
  232. package/dist/index353.js +49 -25
  233. package/dist/index354.js +12 -2
  234. package/dist/index355.js +14 -5
  235. package/dist/index356.js +58 -2
  236. package/dist/index357.js +52 -23
  237. package/dist/index358.js +28 -38
  238. package/dist/index359.js +2 -2
  239. package/dist/index36.js +2 -2
  240. package/dist/index360.js +4 -10
  241. package/dist/index361.js +2 -20
  242. package/dist/index362.js +23 -2
  243. package/dist/index363.js +40 -8
  244. package/dist/index364.js +2 -21
  245. package/dist/index365.js +11 -56
  246. package/dist/index366.js +18 -27
  247. package/dist/index367.js +10 -7
  248. package/dist/index368.js +9 -51
  249. package/dist/index369.js +16 -5
  250. package/dist/index37.js +2 -2
  251. package/dist/index370.js +2 -12
  252. package/dist/index371.js +8 -6
  253. package/dist/index372.js +10 -28
  254. package/dist/index373.js +14 -2
  255. package/dist/index374.js +20 -69
  256. package/dist/index375.js +54 -165
  257. package/dist/index376.js +28 -19
  258. package/dist/index377.js +6 -19
  259. package/dist/index378.js +48 -60
  260. package/dist/index379.js +6 -37
  261. package/dist/index38.js +2 -2
  262. package/dist/index380.js +10 -29
  263. package/dist/index381.js +7 -11
  264. package/dist/index382.js +28 -4
  265. package/dist/index383.js +2 -4
  266. package/dist/index384.js +69 -12
  267. package/dist/index385.js +167 -7
  268. package/dist/index386.js +133 -11
  269. package/dist/index387.js +17 -5
  270. package/dist/index388.js +101 -33
  271. package/dist/index389.js +91 -31
  272. package/dist/index39.js +2 -2
  273. package/dist/index390.js +97 -27
  274. package/dist/index391.js +28 -58
  275. package/dist/index392.js +10 -100
  276. package/dist/index393.js +3 -90
  277. package/dist/index394.js +4 -98
  278. package/dist/index395.js +13 -17
  279. package/dist/index396.js +7 -3
  280. package/dist/index397.js +12 -2
  281. package/dist/index398.js +5 -2
  282. package/dist/index399.js +33 -17
  283. package/dist/index4.js +2 -2
  284. package/dist/index40.js +2 -2
  285. package/dist/index400.js +31 -13
  286. package/dist/index401.js +28 -6
  287. package/dist/index402.js +57 -28
  288. package/dist/index403.js +489 -0
  289. package/dist/index404.js +128 -0
  290. package/dist/index405.js +5 -0
  291. package/dist/index406.js +4 -0
  292. package/dist/index407.js +4 -0
  293. package/dist/index408.js +19 -0
  294. package/dist/index409.js +15 -0
  295. package/dist/index41.js +2 -2
  296. package/dist/index410.js +8 -0
  297. package/dist/index411.js +34 -0
  298. package/dist/index42.js +4 -29
  299. package/dist/index43.js +25 -32
  300. package/dist/index44.js +32 -37
  301. package/dist/index45.js +37 -1389
  302. package/dist/index46.js +1350 -348
  303. package/dist/index47.js +367 -145
  304. package/dist/index48.js +155 -18
  305. package/dist/index49.js +16 -42
  306. package/dist/index5.js +2 -2
  307. package/dist/index50.js +45 -5
  308. package/dist/index51.js +5 -69
  309. package/dist/index52.js +67 -61
  310. package/dist/index53.js +57 -175
  311. package/dist/index54.js +173 -77
  312. package/dist/index55.js +79 -200
  313. package/dist/index56.js +206 -68
  314. package/dist/index57.js +69 -20
  315. package/dist/index58.js +20 -11
  316. package/dist/index59.js +10 -6
  317. package/dist/index6.js +2 -2
  318. package/dist/index60.js +5 -209
  319. package/dist/index61.js +210 -12
  320. package/dist/index62.js +12 -184
  321. package/dist/index63.js +176 -68
  322. package/dist/index64.js +79 -0
  323. package/dist/index66.js +7 -91
  324. package/dist/index67.js +93 -0
  325. package/dist/index7.js +2 -2
  326. package/dist/{index74.js → index75.js} +2 -2
  327. package/dist/index79.js +38 -395
  328. package/dist/index8.js +3 -3
  329. package/dist/index80.js +419 -0
  330. package/dist/{index83.js → index84.js} +4 -4
  331. package/dist/{index85.js → index86.js} +1 -1
  332. package/dist/index88.js +23 -143
  333. package/dist/index89.js +156 -0
  334. package/dist/index9.js +2 -2
  335. package/dist/{index90.js → index91.js} +5 -5
  336. package/dist/{index92.js → index93.js} +5 -5
  337. package/dist/index99.js +204 -0
  338. package/dist/src/components/date-picker/date-picker.d.ts +33 -0
  339. package/dist/src/components/date-picker/date-picker.stories.d.ts +108 -0
  340. package/dist/src/components/popper/popper.vue.d.ts +90 -0
  341. package/dist/src/components/popper/use-popper.d.ts +37 -0
  342. package/dist/src/index.d.ts +1 -0
  343. package/package.json +2 -1
  344. package/dist/index100.js +0 -29
  345. package/dist/index105.js +0 -149
  346. package/dist/index157.js +0 -575
  347. package/dist/index162.js +0 -120
  348. package/dist/index169.js +0 -210
  349. package/dist/index173.js +0 -497
  350. package/dist/index174.js +0 -5524
  351. package/dist/index190.js +0 -20
  352. package/dist/index203.js +0 -37
  353. package/dist/index65.js +0 -9
  354. package/dist/index78.js +0 -62
  355. package/dist/index87.js +0 -36
  356. package/dist/index98.js +0 -132
  357. package/dist/src/components/room-details-popover/room-details-popover.d.ts +0 -2142
  358. /package/dist/{index121.js → index122.js} +0 -0
  359. /package/dist/{index123.js → index124.js} +0 -0
  360. /package/dist/{index125.js → index126.js} +0 -0
  361. /package/dist/{index127.js → index128.js} +0 -0
  362. /package/dist/{index129.js → index130.js} +0 -0
  363. /package/dist/{index134.js → index135.js} +0 -0
  364. /package/dist/{index141.js → index144.js} +0 -0
  365. /package/dist/{index145.js → index148.js} +0 -0
  366. /package/dist/{index153.js → index156.js} +0 -0
  367. /package/dist/{index155.js → index158.js} +0 -0
  368. /package/dist/{index68.js → index69.js} +0 -0
  369. /package/dist/{index70.js → index71.js} +0 -0
  370. /package/dist/{index72.js → index73.js} +0 -0
  371. /package/dist/{index76.js → index77.js} +0 -0
  372. /package/dist/{index81.js → index82.js} +0 -0
  373. /package/dist/{index94.js → index95.js} +0 -0
  374. /package/dist/{index96.js → index97.js} +0 -0
package/dist/index326.js CHANGED
@@ -1,204 +1,248 @@
1
- import { keydownHandler as v } from "./index323.js";
2
- import { Plugin as w, TextSelection as m, NodeSelection as x, Selection as u } from "./index289.js";
3
- import { Fragment as h, Slice as g } from "./index320.js";
4
- import { DecorationSet as S, Decoration as A } from "./index322.js";
5
- class i extends u {
6
- /**
7
- Create a gap cursor.
8
- */
9
- constructor(e) {
10
- super(e, e);
1
+ import P from "./index390.js";
2
+ import { Mapping as k } from "./index317.js";
3
+ import { Plugin as H, PluginKey as O } from "./index292.js";
4
+ const D = 500;
5
+ class c {
6
+ constructor(t, e) {
7
+ this.items = t, this.eventCount = e;
11
8
  }
12
- map(e, t) {
13
- let o = e.resolve(t.map(this.head));
14
- return i.valid(o) ? new i(o) : u.near(o);
15
- }
16
- content() {
17
- return g.empty;
9
+ // Pop the latest event off the branch's history and apply it
10
+ // to a document transform.
11
+ popEvent(t, e) {
12
+ if (this.eventCount == 0)
13
+ return null;
14
+ let i = this.items.length;
15
+ for (; ; i--)
16
+ if (this.items.get(i - 1).selection) {
17
+ --i;
18
+ break;
19
+ }
20
+ let s, p;
21
+ e && (s = this.remapping(i, this.items.length), p = s.maps.length);
22
+ let l = t.tr, r, m, u = [], f = [];
23
+ return this.items.forEach((a, o) => {
24
+ if (!a.step) {
25
+ s || (s = this.remapping(i, o + 1), p = s.maps.length), p--, f.push(a);
26
+ return;
27
+ }
28
+ if (s) {
29
+ f.push(new g(a.map));
30
+ let d = a.step.map(s.slice(p)), v;
31
+ d && l.maybeStep(d).doc && (v = l.mapping.maps[l.mapping.maps.length - 1], u.push(new g(v, void 0, void 0, u.length + f.length))), p--, v && s.appendMap(v, p);
32
+ } else
33
+ l.maybeStep(a.step);
34
+ if (a.selection)
35
+ return r = s ? a.selection.map(s.slice(p)) : a.selection, m = new c(this.items.slice(0, i).append(f.reverse().concat(u)), this.eventCount - 1), !1;
36
+ }, this.items.length, 0), { remaining: m, transform: l, selection: r };
18
37
  }
19
- eq(e) {
20
- return e instanceof i && e.head == this.head;
38
+ // Create a new branch with the given transform added.
39
+ addTransform(t, e, i, s) {
40
+ let p = [], l = this.eventCount, r = this.items, m = !s && r.length ? r.get(r.length - 1) : null;
41
+ for (let f = 0; f < t.steps.length; f++) {
42
+ let a = t.steps[f].invert(t.docs[f]), o = new g(t.mapping.maps[f], a, e), d;
43
+ (d = m && m.merge(o)) && (o = d, f ? p.pop() : r = r.slice(0, r.length - 1)), p.push(o), e && (l++, e = void 0), s || (m = o);
44
+ }
45
+ let u = l - i.depth;
46
+ return u > y && (r = x(r, u), l -= u), new c(r.append(p), l);
21
47
  }
22
- toJSON() {
23
- return { type: "gapcursor", pos: this.head };
48
+ remapping(t, e) {
49
+ let i = new k();
50
+ return this.items.forEach((s, p) => {
51
+ let l = s.mirrorOffset != null && p - s.mirrorOffset >= t ? i.maps.length - s.mirrorOffset : void 0;
52
+ i.appendMap(s.map, l);
53
+ }, t, e), i;
24
54
  }
25
- /**
26
- @internal
27
- */
28
- static fromJSON(e, t) {
29
- if (typeof t.pos != "number")
30
- throw new RangeError("Invalid input for GapCursor.fromJSON");
31
- return new i(e.resolve(t.pos));
55
+ addMaps(t) {
56
+ return this.eventCount == 0 ? this : new c(this.items.append(t.map((e) => new g(e))), this.eventCount);
32
57
  }
33
- /**
34
- @internal
35
- */
36
- getBookmark() {
37
- return new d(this.anchor);
58
+ // When the collab module receives remote changes, the history has
59
+ // to know about those, so that it can adjust the steps that were
60
+ // rebased on top of the remote changes, and include the position
61
+ // maps for the remote changes in its array of items.
62
+ rebased(t, e) {
63
+ if (!this.eventCount)
64
+ return this;
65
+ let i = [], s = Math.max(0, this.items.length - e), p = t.mapping, l = t.steps.length, r = this.eventCount;
66
+ this.items.forEach((o) => {
67
+ o.selection && r--;
68
+ }, s);
69
+ let m = e;
70
+ this.items.forEach((o) => {
71
+ let d = p.getMirror(--m);
72
+ if (d == null)
73
+ return;
74
+ l = Math.min(l, d);
75
+ let v = p.maps[d];
76
+ if (o.step) {
77
+ let S = t.steps[d].invert(t.docs[d]), E = o.selection && o.selection.map(p.slice(m + 1, d));
78
+ E && r++, i.push(new g(v, S, E));
79
+ } else
80
+ i.push(new g(v));
81
+ }, s);
82
+ let u = [];
83
+ for (let o = e; o < l; o++)
84
+ u.push(new g(p.maps[o]));
85
+ let f = this.items.slice(0, s).append(u).append(i), a = new c(f, r);
86
+ return a.emptyItemCount() > D && (a = a.compress(this.items.length - i.length)), a;
38
87
  }
39
- /**
40
- @internal
41
- */
42
- static valid(e) {
43
- let t = e.parent;
44
- if (t.inlineContent || !y(e) || !b(e))
45
- return !1;
46
- let o = t.type.spec.allowGapCursor;
47
- if (o != null)
48
- return o;
49
- let r = t.contentMatchAt(e.index()).defaultType;
50
- return r && r.isTextblock;
88
+ emptyItemCount() {
89
+ let t = 0;
90
+ return this.items.forEach((e) => {
91
+ e.step || t++;
92
+ }), t;
51
93
  }
52
- /**
53
- @internal
54
- */
55
- static findGapCursorFrom(e, t, o = !1) {
56
- e: for (; ; ) {
57
- if (!o && i.valid(e))
58
- return e;
59
- let r = e.pos, s = null;
60
- for (let l = e.depth; ; l--) {
61
- let a = e.node(l);
62
- if (t > 0 ? e.indexAfter(l) < a.childCount : e.index(l) > 0) {
63
- s = a.child(t > 0 ? e.indexAfter(l) : e.index(l) - 1);
64
- break;
65
- } else if (l == 0)
66
- return null;
67
- r += t;
68
- let f = e.doc.resolve(r);
69
- if (i.valid(f))
70
- return f;
71
- }
72
- for (; ; ) {
73
- let l = t > 0 ? s.firstChild : s.lastChild;
74
- if (!l) {
75
- if (s.isAtom && !s.isText && !x.isSelectable(s)) {
76
- e = e.doc.resolve(r + s.nodeSize * t), o = !1;
77
- continue e;
78
- }
79
- break;
94
+ // Compressing a branch means rewriting it to push the air (map-only
95
+ // items) out. During collaboration, these naturally accumulate
96
+ // because each remote change adds one. The `upto` argument is used
97
+ // to ensure that only the items below a given level are compressed,
98
+ // because `rebased` relies on a clean, untouched set of items in
99
+ // order to associate old items with rebased steps.
100
+ compress(t = this.items.length) {
101
+ let e = this.remapping(0, t), i = e.maps.length, s = [], p = 0;
102
+ return this.items.forEach((l, r) => {
103
+ if (r >= t)
104
+ s.push(l), l.selection && p++;
105
+ else if (l.step) {
106
+ let m = l.step.map(e.slice(i)), u = m && m.getMap();
107
+ if (i--, u && e.appendMap(u, i), m) {
108
+ let f = l.selection && l.selection.map(e.slice(i));
109
+ f && p++;
110
+ let a = new g(u.invert(), m, f), o, d = s.length - 1;
111
+ (o = s.length && s[d].merge(a)) ? s[d] = o : s.push(a);
80
112
  }
81
- s = l, r += t;
82
- let a = e.doc.resolve(r);
83
- if (i.valid(a))
84
- return a;
85
- }
86
- return null;
87
- }
113
+ } else l.map && i--;
114
+ }, this.items.length, 0), new c(P.from(s.reverse()), p);
88
115
  }
89
116
  }
90
- i.prototype.visible = !1;
91
- i.findFrom = i.findGapCursorFrom;
92
- u.jsonID("gapcursor", i);
93
- class d {
94
- constructor(e) {
95
- this.pos = e;
117
+ c.empty = new c(P.empty, 0);
118
+ function x(n, t) {
119
+ let e;
120
+ return n.forEach((i, s) => {
121
+ if (i.selection && t-- == 0)
122
+ return e = s, !1;
123
+ }), n.slice(e);
124
+ }
125
+ class g {
126
+ constructor(t, e, i, s) {
127
+ this.map = t, this.step = e, this.selection = i, this.mirrorOffset = s;
96
128
  }
97
- map(e) {
98
- return new d(e.map(this.pos));
129
+ merge(t) {
130
+ if (this.step && t.step && !t.selection) {
131
+ let e = t.step.merge(this.step);
132
+ if (e)
133
+ return new g(e.getMap().invert(), e, this.selection);
134
+ }
99
135
  }
100
- resolve(e) {
101
- let t = e.resolve(this.pos);
102
- return i.valid(t) ? new i(t) : u.near(t);
136
+ }
137
+ class h {
138
+ constructor(t, e, i, s, p) {
139
+ this.done = t, this.undone = e, this.prevRanges = i, this.prevTime = s, this.prevComposition = p;
103
140
  }
104
141
  }
105
- function C(n) {
106
- return n.isAtom || n.spec.isolating || n.spec.createGapCursor;
142
+ const y = 20;
143
+ function F(n, t, e, i) {
144
+ let s = e.getMeta(w), p;
145
+ if (s)
146
+ return s.historyState;
147
+ e.getMeta(j) && (n = new h(n.done, n.undone, null, 0, -1));
148
+ let l = e.getMeta("appendedTransaction");
149
+ if (e.steps.length == 0)
150
+ return n;
151
+ if (l && l.getMeta(w))
152
+ return l.getMeta(w).redo ? new h(n.done.addTransform(e, void 0, i, M(t)), n.undone, I(e.mapping.maps), n.prevTime, n.prevComposition) : new h(n.done, n.undone.addTransform(e, void 0, i, M(t)), null, n.prevTime, n.prevComposition);
153
+ if (e.getMeta("addToHistory") !== !1 && !(l && l.getMeta("addToHistory") === !1)) {
154
+ let r = e.getMeta("composition"), m = n.prevTime == 0 || !l && n.prevComposition != r && (n.prevTime < (e.time || 0) - i.newGroupDelay || !G(e, n.prevRanges)), u = l ? C(n.prevRanges, e.mapping) : I(e.mapping.maps);
155
+ return new h(n.done.addTransform(e, m ? t.selection.getBookmark() : void 0, i, M(t)), c.empty, u, e.time, r ?? n.prevComposition);
156
+ } else return (p = e.getMeta("rebased")) ? new h(n.done.rebased(e, p), n.undone.rebased(e, p), C(n.prevRanges, e.mapping), n.prevTime, n.prevComposition) : new h(n.done.addMaps(e.mapping.maps), n.undone.addMaps(e.mapping.maps), C(n.prevRanges, e.mapping), n.prevTime, n.prevComposition);
107
157
  }
108
- function y(n) {
109
- for (let e = n.depth; e >= 0; e--) {
110
- let t = n.index(e), o = n.node(e);
111
- if (t == 0) {
112
- if (o.type.spec.isolating)
113
- return !0;
114
- continue;
115
- }
116
- for (let r = o.child(t - 1); ; r = r.lastChild) {
117
- if (r.childCount == 0 && !r.inlineContent || C(r.type))
118
- return !0;
119
- if (r.inlineContent)
120
- return !1;
121
- }
158
+ function G(n, t) {
159
+ if (!t)
160
+ return !1;
161
+ if (!n.docChanged)
162
+ return !0;
163
+ let e = !1;
164
+ return n.mapping.maps[0].forEach((i, s) => {
165
+ for (let p = 0; p < t.length; p += 2)
166
+ i <= t[p + 1] && s >= t[p] && (e = !0);
167
+ }), e;
168
+ }
169
+ function I(n) {
170
+ let t = [];
171
+ for (let e = n.length - 1; e >= 0 && t.length == 0; e--)
172
+ n[e].forEach((i, s, p, l) => t.push(p, l));
173
+ return t;
174
+ }
175
+ function C(n, t) {
176
+ if (!n)
177
+ return null;
178
+ let e = [];
179
+ for (let i = 0; i < n.length; i += 2) {
180
+ let s = t.map(n[i], 1), p = t.map(n[i + 1], -1);
181
+ s <= p && e.push(s, p);
122
182
  }
123
- return !0;
183
+ return e;
124
184
  }
125
- function b(n) {
126
- for (let e = n.depth; e >= 0; e--) {
127
- let t = n.indexAfter(e), o = n.node(e);
128
- if (t == o.childCount) {
129
- if (o.type.spec.isolating)
130
- return !0;
131
- continue;
132
- }
133
- for (let r = o.child(t); ; r = r.firstChild) {
134
- if (r.childCount == 0 && !r.inlineContent || C(r.type))
135
- return !0;
136
- if (r.inlineContent)
137
- return !1;
138
- }
185
+ function K(n, t, e) {
186
+ let i = M(t), s = w.get(t).spec.config, p = (e ? n.undone : n.done).popEvent(t, i);
187
+ if (!p)
188
+ return null;
189
+ let l = p.selection.resolve(p.transform.doc), r = (e ? n.done : n.undone).addTransform(p.transform, t.selection.getBookmark(), s, i), m = new h(e ? r : p.remaining, e ? p.remaining : r, null, 0, -1);
190
+ return p.transform.setSelection(l).setMeta(w, { redo: e, historyState: m });
191
+ }
192
+ let T = !1, b = null;
193
+ function M(n) {
194
+ let t = n.plugins;
195
+ if (b != t) {
196
+ T = !1, b = t;
197
+ for (let e = 0; e < t.length; e++)
198
+ if (t[e].spec.historyPreserveItems) {
199
+ T = !0;
200
+ break;
201
+ }
139
202
  }
140
- return !0;
203
+ return T;
141
204
  }
142
- function B() {
143
- return new w({
144
- props: {
145
- decorations: F,
146
- createSelectionBetween(n, e, t) {
147
- return e.pos == t.pos && i.valid(t) ? new i(t) : null;
205
+ const w = new O("history"), j = new O("closeHistory");
206
+ function W(n = {}) {
207
+ return n = {
208
+ depth: n.depth || 100,
209
+ newGroupDelay: n.newGroupDelay || 500
210
+ }, new H({
211
+ key: w,
212
+ state: {
213
+ init() {
214
+ return new h(c.empty, c.empty, null, 0, -1);
148
215
  },
149
- handleClick: T,
150
- handleKeyDown: k,
151
- handleDOMEvents: { beforeinput: D }
216
+ apply(t, e, i) {
217
+ return F(e, i, t, n);
218
+ }
219
+ },
220
+ config: n,
221
+ props: {
222
+ handleDOMEvents: {
223
+ beforeinput(t, e) {
224
+ let i = e.inputType, s = i == "historyUndo" ? A : i == "historyRedo" ? U : null;
225
+ return !s || !t.editable ? !1 : (e.preventDefault(), s(t.state, t.dispatch));
226
+ }
227
+ }
152
228
  }
153
229
  });
154
230
  }
155
- const k = v({
156
- ArrowLeft: c("horiz", -1),
157
- ArrowRight: c("horiz", 1),
158
- ArrowUp: c("vert", -1),
159
- ArrowDown: c("vert", 1)
160
- });
161
- function c(n, e) {
162
- const t = n == "vert" ? e > 0 ? "down" : "up" : e > 0 ? "right" : "left";
163
- return function(o, r, s) {
164
- let l = o.selection, a = e > 0 ? l.$to : l.$from, f = l.empty;
165
- if (l instanceof m) {
166
- if (!s.endOfTextblock(t) || a.depth == 0)
167
- return !1;
168
- f = !1, a = o.doc.resolve(e > 0 ? a.after() : a.before());
231
+ function R(n, t) {
232
+ return (e, i) => {
233
+ let s = w.getState(e);
234
+ if (!s || (n ? s.undone : s.done).eventCount == 0)
235
+ return !1;
236
+ if (i) {
237
+ let p = K(s, e, n);
238
+ p && i(t ? p.scrollIntoView() : p);
169
239
  }
170
- let p = i.findGapCursorFrom(a, e, f);
171
- return p ? (r && r(o.tr.setSelection(new i(p))), !0) : !1;
240
+ return !0;
172
241
  };
173
242
  }
174
- function T(n, e, t) {
175
- if (!n || !n.editable)
176
- return !1;
177
- let o = n.state.doc.resolve(e);
178
- if (!i.valid(o))
179
- return !1;
180
- let r = n.posAtCoords({ left: t.clientX, top: t.clientY });
181
- return r && r.inside > -1 && x.isSelectable(n.state.doc.nodeAt(r.inside)) ? !1 : (n.dispatch(n.state.tr.setSelection(new i(o))), !0);
182
- }
183
- function D(n, e) {
184
- if (e.inputType != "insertCompositionText" || !(n.state.selection instanceof i))
185
- return !1;
186
- let { $from: t } = n.state.selection, o = t.parent.contentMatchAt(t.index()).findWrapping(n.state.schema.nodes.text);
187
- if (!o)
188
- return !1;
189
- let r = h.empty;
190
- for (let l = o.length - 1; l >= 0; l--)
191
- r = h.from(o[l].createAndFill(null, r));
192
- let s = n.state.tr.replace(t.pos, t.pos, new g(r, 0, 0));
193
- return s.setSelection(m.near(s.doc.resolve(t.pos + 1))), n.dispatch(s), !1;
194
- }
195
- function F(n) {
196
- if (!(n.selection instanceof i))
197
- return null;
198
- let e = document.createElement("div");
199
- return e.className = "ProseMirror-gapcursor", S.create(n.doc, [A.widget(n.selection.head, e, { key: "gapcursor" })]);
200
- }
243
+ const A = R(!1, !0), U = R(!0, !0);
201
244
  export {
202
- i as GapCursor,
203
- B as gapCursor
245
+ W as history,
246
+ U as redo,
247
+ A as undo
204
248
  };