@quoreadmin/ui 1.9.3 → 1.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (355) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.js +46 -44
  3. package/dist/index10.js +2 -2
  4. package/dist/index100.js +20 -25
  5. package/dist/index101.js +34 -0
  6. package/dist/{index102.js → index103.js} +1 -1
  7. package/dist/index105.js +147 -2
  8. package/dist/index106.js +2 -37
  9. package/dist/index107.js +39 -0
  10. package/dist/{index108.js → index109.js} +2 -2
  11. package/dist/index11.js +2 -2
  12. package/dist/{index110.js → index111.js} +1 -1
  13. package/dist/{index112.js → index113.js} +3 -3
  14. package/dist/{index114.js → index115.js} +6 -6
  15. package/dist/{index116.js → index117.js} +1 -1
  16. package/dist/{index118.js → index119.js} +5 -5
  17. package/dist/index12.js +2 -2
  18. package/dist/index13.js +2 -2
  19. package/dist/index131.js +272 -0
  20. package/dist/index134.js +8 -249
  21. package/dist/{index132.js → index136.js} +1 -1
  22. package/dist/index138.js +257 -0
  23. package/dist/index14.js +2 -2
  24. package/dist/index141.js +36 -45
  25. package/dist/index143.js +17 -1169
  26. package/dist/index145.js +38 -267
  27. package/dist/index147.js +1125 -286
  28. package/dist/index149.js +278 -15
  29. package/dist/index15.js +2 -2
  30. package/dist/index151.js +316 -69
  31. package/dist/index153.js +24 -558
  32. package/dist/index155.js +103 -0
  33. package/dist/index157.js +565 -0
  34. package/dist/index16.js +2 -2
  35. package/dist/{index158.js → index162.js} +1 -1
  36. package/dist/index165.js +353 -174
  37. package/dist/{index163.js → index167.js} +1 -1
  38. package/dist/index169.js +195 -482
  39. package/dist/index17.js +2 -2
  40. package/dist/index172.js +105 -852
  41. package/dist/index173.js +493 -36
  42. package/dist/index174.js +5507 -265
  43. package/dist/index175.js +87 -146
  44. package/dist/index176.js +847 -1185
  45. package/dist/index177.js +35 -769
  46. package/dist/index178.js +270 -1298
  47. package/dist/index179.js +142 -268
  48. package/dist/index18.js +2 -2
  49. package/dist/index180.js +1185 -92
  50. package/dist/index181.js +772 -2
  51. package/dist/index182.js +1229 -1297
  52. package/dist/index183.js +278 -0
  53. package/dist/index184.js +105 -17
  54. package/dist/index185.js +2 -18
  55. package/dist/index186.js +1372 -14
  56. package/dist/index188.js +14 -21
  57. package/dist/index189.js +18 -759
  58. package/dist/index19.js +2 -2
  59. package/dist/index190.js +18 -1144
  60. package/dist/index191.js +16 -1232
  61. package/dist/index192.js +22 -11274
  62. package/dist/index193.js +759 -36
  63. package/dist/index194.js +1144 -44
  64. package/dist/index195.js +1117 -1111
  65. package/dist/index196.js +11279 -0
  66. package/dist/index197.js +36 -5938
  67. package/dist/index198.js +42 -205
  68. package/dist/index199.js +1218 -25
  69. package/dist/index2.js +2 -2
  70. package/dist/index20.js +2 -2
  71. package/dist/index201.js +5932 -72
  72. package/dist/index202.js +199 -245
  73. package/dist/index203.js +25 -13674
  74. package/dist/index204.js +17 -26
  75. package/dist/index205.js +76 -61
  76. package/dist/index206.js +239 -224
  77. package/dist/index207.js +13659 -286
  78. package/dist/index208.js +27 -295
  79. package/dist/index209.js +62 -32
  80. package/dist/index21.js +2 -2
  81. package/dist/index210.js +236 -114
  82. package/dist/index211.js +305 -30
  83. package/dist/index212.js +295 -26
  84. package/dist/index213.js +30 -33
  85. package/dist/index214.js +114 -49
  86. package/dist/index215.js +33 -40
  87. package/dist/index216.js +26 -4
  88. package/dist/index217.js +36 -9
  89. package/dist/index218.js +50 -18
  90. package/dist/index219.js +43 -10
  91. package/dist/index22.js +2 -2
  92. package/dist/index220.js +4 -10
  93. package/dist/index221.js +9 -39
  94. package/dist/index222.js +19 -21
  95. package/dist/index223.js +10 -88
  96. package/dist/index224.js +9 -406
  97. package/dist/index225.js +39 -22
  98. package/dist/index226.js +21 -161
  99. package/dist/index227.js +157 -224
  100. package/dist/index228.js +222 -31
  101. package/dist/index229.js +37 -10
  102. package/dist/index23.js +2 -2
  103. package/dist/index230.js +10 -127
  104. package/dist/index231.js +148 -25
  105. package/dist/index232.js +20 -80
  106. package/dist/index233.js +1 -1
  107. package/dist/index234.js +15 -13
  108. package/dist/index235.js +198 -19
  109. package/dist/index236.js +68 -18
  110. package/dist/index237.js +87 -19
  111. package/dist/index238.js +383 -137
  112. package/dist/index239.js +34 -20
  113. package/dist/index24.js +2 -2
  114. package/dist/index240.js +39 -21
  115. package/dist/index241.js +20 -197
  116. package/dist/index242.js +21 -69
  117. package/dist/index243.js +22 -34
  118. package/dist/index244.js +19 -39
  119. package/dist/index245.js +836 -22
  120. package/dist/index246.js +701 -21
  121. package/dist/index247.js +176 -20
  122. package/dist/index248.js +20 -836
  123. package/dist/index249.js +19 -701
  124. package/dist/index250.js +22 -176
  125. package/dist/index251.js +12 -14
  126. package/dist/index252.js +9 -9
  127. package/dist/index253.js +3 -20
  128. package/dist/index254.js +187 -3
  129. package/dist/index255.js +42 -96
  130. package/dist/index256.js +1160 -70
  131. package/dist/index257.js +101 -1197
  132. package/dist/index258.js +1 -1
  133. package/dist/index259.js +1 -1
  134. package/dist/index26.js +2 -2
  135. package/dist/index260.js +1 -1
  136. package/dist/index261.js +37 -28
  137. package/dist/index262.js +21 -12
  138. package/dist/index263.js +9 -9
  139. package/dist/index264.js +20 -2
  140. package/dist/index266.js +2 -3636
  141. package/dist/index267.js +3620 -39
  142. package/dist/index268.js +30 -52
  143. package/dist/index269.js +47 -22
  144. package/dist/index27.js +2 -2
  145. package/dist/index270.js +25 -188
  146. package/dist/index271.js +213 -8
  147. package/dist/index272.js +9 -56
  148. package/dist/index273.js +41 -45
  149. package/dist/index274.js +46 -39
  150. package/dist/index275.js +36 -57
  151. package/dist/index276.js +41 -692
  152. package/dist/index277.js +707 -23
  153. package/dist/index278.js +25 -47
  154. package/dist/index279.js +63 -10
  155. package/dist/index28.js +2 -2
  156. package/dist/index280.js +10 -704
  157. package/dist/index281.js +655 -770
  158. package/dist/index282.js +820 -3
  159. package/dist/index283.js +80 -27
  160. package/dist/index284.js +20 -253
  161. package/dist/index285.js +20 -8
  162. package/dist/index286.js +42 -126
  163. package/dist/index287.js +59 -63
  164. package/dist/index288.js +26 -2
  165. package/dist/index289.js +21 -78
  166. package/dist/index29.js +2 -2
  167. package/dist/index290.js +21 -53
  168. package/dist/index291.js +16 -26
  169. package/dist/index292.js +17 -22
  170. package/dist/index293.js +253 -22
  171. package/dist/index294.js +5 -13
  172. package/dist/index295.js +137 -16
  173. package/dist/index296.js +82 -22
  174. package/dist/index297.js +23 -1534
  175. package/dist/index298.js +3 -386
  176. package/dist/index299.js +23 -2727
  177. package/dist/index3.js +2 -2
  178. package/dist/index30.js +2 -2
  179. package/dist/index300.js +252 -76
  180. package/dist/index301.js +4 -3790
  181. package/dist/index302.js +135 -55
  182. package/dist/index303.js +71 -77
  183. package/dist/index304.js +86 -21
  184. package/dist/index305.js +26 -932
  185. package/dist/index306.js +14 -20
  186. package/dist/index307.js +74 -19
  187. package/dist/index308.js +3 -19
  188. package/dist/index309.js +2 -69
  189. package/dist/index31.js +3 -3
  190. package/dist/index310.js +82 -18
  191. package/dist/index311.js +53 -19
  192. package/dist/index312.js +5 -21
  193. package/dist/index313.js +4 -21
  194. package/dist/index314.js +178 -62
  195. package/dist/index315.js +62 -14
  196. package/dist/index316.js +75 -84
  197. package/dist/index317.js +1485 -153
  198. package/dist/index318.js +357 -217
  199. package/dist/index319.js +2714 -245
  200. package/dist/index32.js +2 -2
  201. package/dist/index320.js +84 -4
  202. package/dist/index321.js +3785 -133
  203. package/dist/index322.js +57 -70
  204. package/dist/index323.js +75 -83
  205. package/dist/index324.js +21 -28
  206. package/dist/index325.js +933 -14
  207. package/dist/index326.js +21 -74
  208. package/dist/index327.js +19 -3
  209. package/dist/index328.js +20 -2
  210. package/dist/index329.js +66 -80
  211. package/dist/index33.js +2 -2
  212. package/dist/index330.js +19 -53
  213. package/dist/index331.js +19 -6
  214. package/dist/index332.js +21 -4
  215. package/dist/index333.js +21 -178
  216. package/dist/index334.js +62 -62
  217. package/dist/index335.js +2 -75
  218. package/dist/index336.js +15 -9
  219. package/dist/index337.js +83 -12
  220. package/dist/index338.js +197 -50
  221. package/dist/index339.js +243 -9
  222. package/dist/index34.js +2 -2
  223. package/dist/index340.js +35 -12
  224. package/dist/index341.js +8 -57
  225. package/dist/index342.js +12 -51
  226. package/dist/index343.js +49 -25
  227. package/dist/index344.js +12 -2
  228. package/dist/index345.js +14 -5
  229. package/dist/index346.js +58 -2
  230. package/dist/index347.js +52 -23
  231. package/dist/index348.js +28 -38
  232. package/dist/index349.js +2 -2
  233. package/dist/index35.js +2 -2
  234. package/dist/index350.js +4 -10
  235. package/dist/index351.js +2 -20
  236. package/dist/index352.js +22 -9
  237. package/dist/index353.js +40 -9
  238. package/dist/index354.js +2 -17
  239. package/dist/index355.js +11 -2
  240. package/dist/index356.js +20 -9
  241. package/dist/index357.js +10 -10
  242. package/dist/index358.js +9 -13
  243. package/dist/index359.js +16 -36
  244. package/dist/index36.js +2 -2
  245. package/dist/index360.js +2 -20
  246. package/dist/index361.js +9 -20
  247. package/dist/index362.js +9 -63
  248. package/dist/index363.js +14 -37
  249. package/dist/index364.js +1 -1
  250. package/dist/index365.js +1 -1
  251. package/dist/index366.js +5 -5
  252. package/dist/index368.js +2 -2
  253. package/dist/index37.js +2 -2
  254. package/dist/index370.js +2 -2
  255. package/dist/index372.js +1 -1
  256. package/dist/index374.js +4 -4
  257. package/dist/index375.js +3 -3
  258. package/dist/index376.js +19 -100
  259. package/dist/index377.js +19 -90
  260. package/dist/index378.js +63 -16
  261. package/dist/index379.js +36 -97
  262. package/dist/index38.js +5 -16
  263. package/dist/index380.js +1 -1
  264. package/dist/index381.js +3 -3
  265. package/dist/index384.js +3 -3
  266. package/dist/index386.js +1 -1
  267. package/dist/index388.js +3 -3
  268. package/dist/index389.js +5 -5
  269. package/dist/index39.js +15 -43
  270. package/dist/index390.js +3 -3
  271. package/dist/index392.js +17 -3
  272. package/dist/index393.js +101 -2
  273. package/dist/index394.js +91 -2
  274. package/dist/index395.js +98 -17
  275. package/dist/index396.js +3 -13
  276. package/dist/index397.js +2 -6
  277. package/dist/index398.js +2 -32
  278. package/dist/index399.js +19 -0
  279. package/dist/index4.js +2 -2
  280. package/dist/index40.js +42 -67
  281. package/dist/index400.js +15 -0
  282. package/dist/index401.js +8 -0
  283. package/dist/index402.js +34 -0
  284. package/dist/index41.js +66 -26
  285. package/dist/index42.js +25 -32
  286. package/dist/index43.js +32 -37
  287. package/dist/index44.js +37 -1389
  288. package/dist/index45.js +1362 -344
  289. package/dist/index46.js +364 -145
  290. package/dist/index47.js +155 -18
  291. package/dist/index48.js +16 -42
  292. package/dist/index49.js +45 -5
  293. package/dist/index5.js +2 -2
  294. package/dist/index50.js +5 -69
  295. package/dist/index51.js +67 -61
  296. package/dist/index52.js +57 -175
  297. package/dist/index53.js +173 -77
  298. package/dist/index54.js +79 -200
  299. package/dist/index55.js +206 -68
  300. package/dist/index56.js +69 -20
  301. package/dist/index57.js +20 -11
  302. package/dist/index58.js +10 -6
  303. package/dist/index59.js +5 -209
  304. package/dist/index6.js +2 -2
  305. package/dist/index60.js +210 -12
  306. package/dist/index61.js +12 -184
  307. package/dist/index62.js +176 -68
  308. package/dist/index63.js +79 -0
  309. package/dist/index65.js +7 -91
  310. package/dist/index66.js +93 -0
  311. package/dist/index7.js +2 -2
  312. package/dist/{index73.js → index74.js} +2 -2
  313. package/dist/index78.js +40 -308
  314. package/dist/index79.js +330 -0
  315. package/dist/index8.js +3 -3
  316. package/dist/{index82.js → index83.js} +5 -5
  317. package/dist/{index84.js → index85.js} +1 -1
  318. package/dist/index87.js +23 -131
  319. package/dist/index88.js +144 -0
  320. package/dist/index9.js +2 -2
  321. package/dist/{index89.js → index90.js} +5 -5
  322. package/dist/{index91.js → index92.js} +5 -5
  323. package/dist/{index97.js → index98.js} +5 -5
  324. package/dist/src/components/page-layout/page-layout.vue.d.ts +89 -0
  325. package/dist/src/components/room-details-popover/room-details-popover.d.ts +2087 -0
  326. package/dist/src/components/time-picker/time-picker.vue.d.ts +23 -7
  327. package/dist/src/index.d.ts +1 -0
  328. package/package.json +1 -1
  329. package/dist/index104.js +0 -149
  330. package/dist/index130.js +0 -16
  331. package/dist/index137.js +0 -56
  332. package/dist/index139.js +0 -37
  333. package/dist/index161.js +0 -389
  334. package/dist/index168.js +0 -116
  335. package/dist/index170.js +0 -5524
  336. package/dist/index171.js +0 -93
  337. package/dist/index187.js +0 -20
  338. package/dist/index200.js +0 -20
  339. package/dist/index64.js +0 -9
  340. package/dist/index77.js +0 -62
  341. package/dist/index86.js +0 -36
  342. package/dist/index99.js +0 -29
  343. /package/dist/{index120.js → index121.js} +0 -0
  344. /package/dist/{index122.js → index123.js} +0 -0
  345. /package/dist/{index124.js → index125.js} +0 -0
  346. /package/dist/{index126.js → index127.js} +0 -0
  347. /package/dist/{index128.js → index129.js} +0 -0
  348. /package/dist/{index156.js → index160.js} +0 -0
  349. /package/dist/{index67.js → index68.js} +0 -0
  350. /package/dist/{index69.js → index70.js} +0 -0
  351. /package/dist/{index71.js → index72.js} +0 -0
  352. /package/dist/{index75.js → index76.js} +0 -0
  353. /package/dist/{index80.js → index81.js} +0 -0
  354. /package/dist/{index93.js → index94.js} +0 -0
  355. /package/dist/{index95.js → index96.js} +0 -0
package/dist/index281.js CHANGED
@@ -1,822 +1,707 @@
1
- import { Slice as m, Fragment as B, Node as x, Mark as R } from "./index299.js";
2
- import { ReplaceStep as P, ReplaceAroundStep as K, Transform as $ } from "./index297.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);
77
- }
78
- }
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
- }
1
+ const Ce = "aaa1rp3bb0ott3vie4c1le2ogado5udhabi7c0ademy5centure6ountant0s9o1tor4d0s1ult4e0g1ro2tna4f0l1rica5g0akhan5ency5i0g1rbus3force5tel5kdn3l0ibaba4pay4lfinanz6state5y2sace3tom5m0azon4ericanexpress7family11x2fam3ica3sterdam8nalytics7droid5quan4z2o0l2partments8p0le4q0uarelle8r0ab1mco4chi3my2pa2t0e3s0da2ia2sociates9t0hleta5torney7u0ction5di0ble3o3spost5thor3o0s4w0s2x0a2z0ure5ba0by2idu3namex4d1k2r0celona5laycard4s5efoot5gains6seball5ketball8uhaus5yern5b0c1t1va3cg1n2d1e0ats2uty4er2rlin4st0buy5t2f1g1h0arti5i0ble3d1ke2ng0o3o1z2j1lack0friday9ockbuster8g1omberg7ue3m0s1w2n0pparibas9o0ats3ehringer8fa2m1nd2o0k0ing5sch2tik2on4t1utique6x2r0adesco6idgestone9oadway5ker3ther5ussels7s1t1uild0ers6siness6y1zz3v1w1y1z0h3ca0b1fe2l0l1vinklein9m0era3p2non3petown5ital0one8r0avan4ds2e0er0s4s2sa1e1h1ino4t0ering5holic7ba1n1re3c1d1enter4o1rn3f0a1d2g1h0anel2nel4rity4se2t2eap3intai5ristmas6ome4urch5i0priani6rcle4sco3tadel4i0c2y3k1l0aims4eaning6ick2nic1que6othing5ud3ub0med6m1n1o0ach3des3ffee4llege4ogne5m0mbank4unity6pany2re3uter5sec4ndos3struction8ulting7tact3ractors9oking4l1p2rsica5untry4pon0s4rses6pa2r0edit0card4union9icket5own3s1uise0s6u0isinella9v1w1x1y0mru3ou3z2dad1nce3ta1e1ing3sun4y2clk3ds2e0al0er2s3gree4livery5l1oitte5ta3mocrat6ntal2ist5si0gn4v2hl2iamonds6et2gital5rect0ory7scount3ver5h2y2j1k1m1np2o0cs1tor4g1mains5t1wnload7rive4tv2ubai3nlop4pont4rban5vag2r2z2earth3t2c0o2deka3u0cation8e1g1mail3erck5nergy4gineer0ing9terprises10pson4quipment8r0icsson6ni3s0q1tate5t1u0rovision8s2vents5xchange6pert3osed4ress5traspace10fage2il1rwinds6th3mily4n0s2rm0ers5shion4t3edex3edback6rrari3ero6i0delity5o2lm2nal1nce1ial7re0stone6mdale6sh0ing5t0ness6j1k1lickr3ghts4r2orist4wers5y2m1o0o0d1tball6rd1ex2sale4um3undation8x2r0ee1senius7l1ogans4ntier7tr2ujitsu5n0d2rniture7tbol5yi3ga0l0lery3o1up4me0s3p1rden4y2b0iz3d0n2e0a1nt0ing5orge5f1g0ee3h1i0ft0s3ves2ing5l0ass3e1obal2o4m0ail3bh2o1x2n1odaddy5ld0point6f2o0dyear5g0le4p1t1v2p1q1r0ainger5phics5tis4een3ipe3ocery4up4s1t1u0cci3ge2ide2tars5ru3w1y2hair2mburg5ngout5us3bo2dfc0bank7ealth0care8lp1sinki6re1mes5iphop4samitsu7tachi5v2k0t2m1n1ockey4ldings5iday5medepot5goods5s0ense7nda3rse3spital5t0ing5t0els3mail5use3w2r1sbc3t1u0ghes5yatt3undai7ibm2cbc2e1u2d1e0ee3fm2kano4l1m0amat4db2mo0bilien9n0c1dustries8finiti5o2g1k1stitute6urance4e4t0ernational10uit4vestments10o1piranga7q1r0ish4s0maili5t0anbul7t0au2v3jaguar4va3cb2e0ep2tzt3welry6io2ll2m0p2nj2o0bs1urg4t1y2p0morgan6rs3uegos4niper7kaufen5ddi3e0rryhotels6properties14fh2g1h1i0a1ds2m1ndle4tchen5wi3m1n1oeln3matsu5sher5p0mg2n2r0d1ed3uokgroup8w1y0oto4z2la0caixa5mborghini8er3nd0rover6xess5salle5t0ino3robe5w0yer5b1c1ds2ease3clerc5frak4gal2o2xus4gbt3i0dl2fe0insurance9style7ghting6ke2lly3mited4o2ncoln4k2ve1ing5k1lc1p2oan0s3cker3us3l1ndon4tte1o3ve3pl0financial11r1s1t0d0a3u0ndbeck6xe1ury5v1y2ma0drid4if1son4keup4n0agement7go3p1rket0ing3s4riott5shalls7ttel5ba2c0kinsey7d1e0d0ia3et2lbourne7me1orial6n0u2rckmsd7g1h1iami3crosoft7l1ni1t2t0subishi9k1l0b1s2m0a2n1o0bi0le4da2e1i1m1nash3ey2ster5rmon3tgage6scow4to0rcycles9v0ie4p1q1r1s0d2t0n1r2u0seum3ic4v1w1x1y1z2na0b1goya4me2vy3ba2c1e0c1t0bank4flix4work5ustar5w0s2xt0direct7us4f0l2g0o2hk2i0co2ke1on3nja3ssan1y5l1o0kia3rton4w0ruz3tv4p1r0a1w2tt2u1yc2z2obi1server7ffice5kinawa6layan0group9lo3m0ega4ne1g1l0ine5oo2pen3racle3nge4g0anic5igins6saka4tsuka4t2vh3pa0ge2nasonic7ris2s1tners4s1y3y2ccw3e0t2f0izer5g1h0armacy6d1ilips5one2to0graphy6s4ysio5ics1tet2ures6d1n0g1k2oneer5zza4k1l0ace2y0station9umbing5s3m1n0c2ohl2ker3litie5rn2st3r0axi3ess3ime3o0d0uctions8f1gressive8mo2perties3y5tection8u0dential9s1t1ub2w0c2y2qa1pon3uebec3st5racing4dio4e0ad1lestate6tor2y4cipes5d0stone5umbrella9hab3ise0n3t2liance6n0t0als5pair3ort3ublican8st0aurant8view0s5xroth6ich0ardli6oh3l1o1p2o0cks3deo3gers4om3s0vp3u0gby3hr2n2w0e2yukyu6sa0arland6fe0ty4kura4le1on3msclub4ung5ndvik0coromant12ofi4p1rl2s1ve2xo3b0i1s2c0b1haeffler7midt4olarships8ol3ule3warz5ience5ot3d1e0arch3t2cure1ity6ek2lect4ner3rvices6ven3w1x0y3fr2g1h0angrila6rp3ell3ia1ksha5oes2p0ping5uji3w3i0lk2na1gles5te3j1k0i0n2y0pe4l0ing4m0art3ile4n0cf3o0ccer3ial4ftbank4ware6hu2lar2utions7ng1y2y2pa0ce3ort2t3r0l2s1t0ada2ples4r1tebank4farm7c0group6ockholm6rage3e3ream4udio2y3yle4u0cks3pplies3y2ort5rf1gery5zuki5v1watch4iss4x1y0dney4stems6z2tab1ipei4lk2obao4rget4tamotors6r2too4x0i3c0i2d0k2eam2ch0nology8l1masek5nnis4va3f1g1h0d1eater2re6iaa2ckets5enda4ps2res2ol4j0maxx4x2k0maxx5l1m0all4n1o0day3kyo3ols3p1ray3shiba5tal3urs3wn2yota3s3r0ade1ing4ining5vel0ers0insurance16ust3v2t1ube2i1nes3shu4v0s2w1z2ua1bank3s2g1k1nicom3versity8o2ol2ps2s1y1z2va0cations7na1guard7c1e0gas3ntures6risign5mögensberater2ung14sicherung10t2g1i0ajes4deo3g1king4llas4n1p1rgin4sa1ion4va1o3laanderen9n1odka3lvo3te1ing3o2yage5u2wales2mart4ter4ng0gou5tch0es6eather0channel12bcam3er2site5d0ding5ibo2r3f1hoswho6ien2ki2lliamhill9n0dows4e1ners6me2olterskluwer11odside6rk0s2ld3w2s1tc1f3xbox3erox4ihuan4n2xx2yz3yachts4hoo3maxun5ndex5e1odobashi7ga2kohama6u0tube6t1un3za0ppos4ra3ero3ip2m1one3uerich6w2", pe = "ελ1υ2бг1ел3дети4ею2католик6ом3мкд2он1сква6онлайн5рг3рус2ф2сайт3рб3укр3қаз3հայ3ישראל5קום3ابوظبي5رامكو5لاردن4بحرين5جزائر5سعودية6عليان5مغرب5مارات5یران5بارت2زار4يتك3ھارت5تونس4سودان3رية5شبكة4عراق2ب2مان4فلسطين6قطر3كاثوليك6وم3مصر2ليسيا5وريتانيا7قع4همراه5پاکستان7ڀارت4कॉम3नेट3भारत0म्3ोत5संगठन5বাংলা5ভারত2ৰত4ਭਾਰਤ4ભારત4ଭାରତ4இந்தியா6லங்கை6சிங்கப்பூர்11భారత్5ಭಾರತ4ഭാരതം5ලංකා4คอม3ไทย3ລາວ3გე2みんな3アマゾン4クラウド4グーグル4コム2ストア3セール3ファッション6ポイント4世界2中信1国1國1文网3亚马逊3企业2佛山2信息2健康2八卦2公司1益2台湾1灣2商城1店1标2嘉里0大酒店5在线2大拿2天主教3娱乐2家電2广东2微博2慈善2我爱你3手机2招聘2政务1府2新加坡2闻2时尚2書籍2机构2淡马锡3游戏2澳門2点看2移动2组织机构4网址1店1站1络2联通2谷歌2购物2通販2集团2電訊盈科4飞利浦3食品2餐厅2香格里拉3港2닷넷1컴2삼성2한국2", zt = "numeric", Bt = "ascii", Ft = "alpha", K = "asciinumeric", F = "alphanumeric", Kt = "domain", le = "emoji", Se = "scheme", Oe = "slashscheme", Pt = "whitespace";
2
+ function ye(t, n) {
3
+ return t in n || (n[t] = []), n[t];
167
4
  }
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;
5
+ function j(t, n, e) {
6
+ n[zt] && (n[K] = !0, n[F] = !0), n[Bt] && (n[K] = !0, n[Ft] = !0), n[K] && (n[F] = !0), n[Ft] && (n[F] = !0), n[F] && (n[Kt] = !0), n[le] && (n[Kt] = !0);
7
+ for (const s in n) {
8
+ const i = ye(s, e);
9
+ i.indexOf(t) < 0 && i.push(t);
175
10
  }
176
11
  }
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 + ")"));
12
+ function ke(t, n) {
13
+ const e = {};
14
+ for (const s in n)
15
+ n[s].indexOf(t) >= 0 && (e[s] = !0);
16
+ return e;
180
17
  }
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
- }
18
+ function p(t = null) {
19
+ this.j = {}, this.jr = [], this.jd = null, this.t = t;
20
+ }
21
+ p.groups = {};
22
+ p.prototype = {
23
+ accepts() {
24
+ return !!this.t;
25
+ },
188
26
  /**
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);
27
+ * Follow an existing transition from the given input to the next state.
28
+ * Does not mutate.
29
+ * @param {string} input character or token type to transition on
30
+ * @returns {?State<T>} the next state, if any
31
+ */
32
+ go(t) {
33
+ const n = this, e = n.j[t];
34
+ if (e)
35
+ return e;
36
+ for (let s = 0; s < n.jr.length; s++) {
37
+ const i = n.jr[s][0], r = n.jr[s][1];
38
+ if (r && i.test(t))
39
+ return r;
206
40
  }
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
- }
41
+ return n.jd;
42
+ },
217
43
  /**
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
- }
44
+ * Whether the state has a transition for the given input. Set the second
45
+ * argument to true to only look for an exact match (and not a default or
46
+ * regular-expression-based transition)
47
+ * @param {string} input
48
+ * @param {boolean} exactOnly
49
+ */
50
+ has(t, n = !1) {
51
+ return n ? t in this.j : !!this.go(t);
52
+ },
225
53
  /**
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
- }
54
+ * Short for "transition all"; create a transition from the array of items
55
+ * in the given list to the same final resulting state.
56
+ * @param {string | string[]} inputs Group of inputs to transition on
57
+ * @param {Transition<T> | State<T>} [next] Transition options
58
+ * @param {Flags} [flags] Collections flags to add token to
59
+ * @param {Collections<T>} [groups] Master list of token groups
60
+ */
61
+ ta(t, n, e, s) {
62
+ for (let i = 0; i < t.length; i++)
63
+ this.tt(t[i], n, e, s);
64
+ },
232
65
  /**
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);
66
+ * Short for "take regexp transition"; defines a transition for this state
67
+ * when it encounters a token which matches the given regular expression
68
+ * @param {RegExp} regexp Regular expression transition (populate first)
69
+ * @param {T | State<T>} [next] Transition options
70
+ * @param {Flags} [flags] Collections flags to add token to
71
+ * @param {Collections<T>} [groups] Master list of token groups
72
+ * @returns {State<T>} taken after the given input
73
+ */
74
+ tr(t, n, e, s) {
75
+ s = s || p.groups;
76
+ let i;
77
+ return n && n.j ? i = n : (i = new p(n), e && s && j(n, e, s)), this.jr.push([t, i]), i;
78
+ },
79
+ /**
80
+ * Short for "take transitions", will take as many sequential transitions as
81
+ * the length of the given input and returns the
82
+ * resulting final state.
83
+ * @param {string | string[]} input
84
+ * @param {T | State<T>} [next] Transition options
85
+ * @param {Flags} [flags] Collections flags to add token to
86
+ * @param {Collections<T>} [groups] Master list of token groups
87
+ * @returns {State<T>} taken after the given input
88
+ */
89
+ ts(t, n, e, s) {
90
+ let i = this;
91
+ const r = t.length;
92
+ if (!r)
93
+ return i;
94
+ for (let a = 0; a < r - 1; a++)
95
+ i = i.tt(t[a]);
96
+ return i.tt(t[r - 1], n, e, s);
97
+ },
98
+ /**
99
+ * Short for "take transition", this is a method for building/working with
100
+ * state machines.
101
+ *
102
+ * If a state already exists for the given input, returns it.
103
+ *
104
+ * If a token is specified, that state will emit that token when reached by
105
+ * the linkify engine.
106
+ *
107
+ * If no state exists, it will be initialized with some default transitions
108
+ * that resemble existing default transitions.
109
+ *
110
+ * If a state is given for the second argument, that state will be
111
+ * transitioned to on the given input regardless of what that input
112
+ * previously did.
113
+ *
114
+ * Specify a token group flags to define groups that this token belongs to.
115
+ * The token will be added to corresponding entires in the given groups
116
+ * object.
117
+ *
118
+ * @param {string} input character, token type to transition on
119
+ * @param {T | State<T>} [next] Transition options
120
+ * @param {Flags} [flags] Collections flags to add token to
121
+ * @param {Collections<T>} [groups] Master list of groups
122
+ * @returns {State<T>} taken after the given input
123
+ */
124
+ tt(t, n, e, s) {
125
+ s = s || p.groups;
126
+ const i = this;
127
+ if (n && n.j)
128
+ return i.j[t] = n, n;
129
+ const r = n;
130
+ let a, c = i.go(t);
131
+ if (c ? (a = new p(), Object.assign(a.j, c.j), a.jr.push.apply(a.jr, c.jr), a.jd = c.jd, a.t = c.t) : a = new p(), r) {
244
132
  if (s)
245
- t = s.$head;
246
- else
247
- return l.near(t, r);
133
+ if (a.t && typeof a.t == "string") {
134
+ const d = Object.assign(ke(a.t, s), e);
135
+ j(r, d, s);
136
+ } else e && j(r, e, s);
137
+ a.t = r;
248
138
  }
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);
139
+ return i.j[t] = a, a;
250
140
  }
141
+ };
142
+ const l = (t, n, e, s, i) => t.ta(n, e, s, i), f = (t, n, e, s, i) => t.tr(n, e, s, i), se = (t, n, e, s, i) => t.ts(n, e, s, i), o = (t, n, e, s, i) => t.tt(n, e, s, i), I = "WORD", Wt = "UWORD", ue = "ASCIINUMERICAL", he = "ALPHANUMERICAL", _ = "LOCALHOST", Gt = "TLD", Qt = "UTLD", tt = "SCHEME", U = "SLASH_SCHEME", qt = "NUM", $t = "WS", _t = "NL", W = "OPENBRACE", G = "CLOSEBRACE", et = "OPENBRACKET", nt = "CLOSEBRACKET", st = "OPENPAREN", it = "CLOSEPAREN", ot = "OPENANGLEBRACKET", rt = "CLOSEANGLEBRACKET", at = "FULLWIDTHLEFTPAREN", ct = "FULLWIDTHRIGHTPAREN", lt = "LEFTCORNERBRACKET", ut = "RIGHTCORNERBRACKET", ht = "LEFTWHITECORNERBRACKET", dt = "RIGHTWHITECORNERBRACKET", Et = "FULLWIDTHLESSTHAN", ft = "FULLWIDTHGREATERTHAN", mt = "AMPERSAND", gt = "APOSTROPHE", At = "ASTERISK", P = "AT", Tt = "BACKSLASH", Lt = "BACKTICK", Rt = "CARET", v = "COLON", Jt = "COMMA", Ct = "DOLLAR", y = "DOT", pt = "EQUALS", Yt = "EXCLAMATION", O = "HYPHEN", Q = "PERCENT", St = "PIPE", Ot = "PLUS", yt = "POUND", $ = "QUERY", Xt = "QUOTE", de = "FULLWIDTHMIDDLEDOT", Vt = "SEMI", k = "SLASH", q = "TILDE", kt = "UNDERSCORE", Ee = "EMOJI", bt = "SYM";
143
+ var fe = /* @__PURE__ */ Object.freeze({
144
+ __proto__: null,
145
+ ALPHANUMERICAL: he,
146
+ AMPERSAND: mt,
147
+ APOSTROPHE: gt,
148
+ ASCIINUMERICAL: ue,
149
+ ASTERISK: At,
150
+ AT: P,
151
+ BACKSLASH: Tt,
152
+ BACKTICK: Lt,
153
+ CARET: Rt,
154
+ CLOSEANGLEBRACKET: rt,
155
+ CLOSEBRACE: G,
156
+ CLOSEBRACKET: nt,
157
+ CLOSEPAREN: it,
158
+ COLON: v,
159
+ COMMA: Jt,
160
+ DOLLAR: Ct,
161
+ DOT: y,
162
+ EMOJI: Ee,
163
+ EQUALS: pt,
164
+ EXCLAMATION: Yt,
165
+ FULLWIDTHGREATERTHAN: ft,
166
+ FULLWIDTHLEFTPAREN: at,
167
+ FULLWIDTHLESSTHAN: Et,
168
+ FULLWIDTHMIDDLEDOT: de,
169
+ FULLWIDTHRIGHTPAREN: ct,
170
+ HYPHEN: O,
171
+ LEFTCORNERBRACKET: lt,
172
+ LEFTWHITECORNERBRACKET: ht,
173
+ LOCALHOST: _,
174
+ NL: _t,
175
+ NUM: qt,
176
+ OPENANGLEBRACKET: ot,
177
+ OPENBRACE: W,
178
+ OPENBRACKET: et,
179
+ OPENPAREN: st,
180
+ PERCENT: Q,
181
+ PIPE: St,
182
+ PLUS: Ot,
183
+ POUND: yt,
184
+ QUERY: $,
185
+ QUOTE: Xt,
186
+ RIGHTCORNERBRACKET: ut,
187
+ RIGHTWHITECORNERBRACKET: dt,
188
+ SCHEME: tt,
189
+ SEMI: Vt,
190
+ SLASH: k,
191
+ SLASH_SCHEME: U,
192
+ SYM: bt,
193
+ TILDE: q,
194
+ TLD: Gt,
195
+ UNDERSCORE: kt,
196
+ UTLD: Qt,
197
+ UWORD: Wt,
198
+ WORD: I,
199
+ WS: $t
200
+ });
201
+ const b = /[a-z]/, B = new RegExp("\\p{L}", "u"), vt = new RegExp("\\p{Emoji}", "u"), N = /\d/, jt = /\s/, ie = "\r", xt = `
202
+ `, be = "️", Ne = "‍", Ut = "";
203
+ let X = null, V = null;
204
+ function Ie(t = []) {
205
+ const n = {};
206
+ p.groups = n;
207
+ const e = new p();
208
+ X == null && (X = oe(Ce)), V == null && (V = oe(pe)), o(e, "'", gt), o(e, "{", W), o(e, "}", G), o(e, "[", et), o(e, "]", nt), o(e, "(", st), o(e, ")", it), o(e, "<", ot), o(e, ">", rt), o(e, "(", at), o(e, ")", ct), o(e, "「", lt), o(e, "」", ut), o(e, "『", ht), o(e, "』", dt), o(e, "<", Et), o(e, ">", ft), o(e, "&", mt), o(e, "*", At), o(e, "@", P), o(e, "`", Lt), o(e, "^", Rt), o(e, ":", v), o(e, ",", Jt), o(e, "$", Ct), o(e, ".", y), o(e, "=", pt), o(e, "!", Yt), o(e, "-", O), o(e, "%", Q), o(e, "|", St), o(e, "+", Ot), o(e, "#", yt), o(e, "?", $), o(e, '"', Xt), o(e, "/", k), o(e, ";", Vt), o(e, "~", q), o(e, "_", kt), o(e, "\\", Tt), o(e, "・", de);
209
+ const s = f(e, N, qt, {
210
+ [zt]: !0
211
+ });
212
+ f(s, N, s);
213
+ const i = f(s, b, ue, {
214
+ [K]: !0
215
+ }), r = f(s, B, he, {
216
+ [F]: !0
217
+ }), a = f(e, b, I, {
218
+ [Bt]: !0
219
+ });
220
+ f(a, N, i), f(a, b, a), f(i, N, i), f(i, b, i);
221
+ const c = f(e, B, Wt, {
222
+ [Ft]: !0
223
+ });
224
+ f(c, b), f(c, N, r), f(c, B, c), f(r, N, r), f(r, b), f(r, B, r);
225
+ const d = o(e, xt, _t, {
226
+ [Pt]: !0
227
+ }), m = o(e, ie, $t, {
228
+ [Pt]: !0
229
+ }), E = f(e, jt, $t, {
230
+ [Pt]: !0
231
+ });
232
+ o(e, Ut, E), o(m, xt, d), o(m, Ut, E), f(m, jt, E), o(E, ie), o(E, xt), f(E, jt, E), o(E, Ut, E);
233
+ const u = f(e, vt, Ee, {
234
+ [le]: !0
235
+ });
236
+ o(u, "#"), f(u, vt, u), o(u, be, u);
237
+ const g = o(u, Ne);
238
+ o(g, "#"), f(g, vt, u);
239
+ const A = [[b, a], [N, i]], H = [[b, null], [B, c], [N, r]];
240
+ for (let T = 0; T < X.length; T++)
241
+ D(e, X[T], Gt, I, A);
242
+ for (let T = 0; T < V.length; T++)
243
+ D(e, V[T], Qt, Wt, H);
244
+ j(Gt, {
245
+ tld: !0,
246
+ ascii: !0
247
+ }, n), j(Qt, {
248
+ utld: !0,
249
+ alpha: !0
250
+ }, n), D(e, "file", tt, I, A), D(e, "mailto", tt, I, A), D(e, "http", U, I, A), D(e, "https", U, I, A), D(e, "ftp", U, I, A), D(e, "ftps", U, I, A), j(tt, {
251
+ scheme: !0,
252
+ ascii: !0
253
+ }, n), j(U, {
254
+ slashscheme: !0,
255
+ ascii: !0
256
+ }, n), t = t.sort((T, C) => T[0] > C[0] ? 1 : -1);
257
+ for (let T = 0; T < t.length; T++) {
258
+ const C = t[T][0], L = t[T][1] ? {
259
+ [Se]: !0
260
+ } : {
261
+ [Oe]: !0
262
+ };
263
+ C.indexOf("-") >= 0 ? L[Kt] = !0 : b.test(C) ? N.test(C) ? L[K] = !0 : L[Bt] = !0 : L[zt] = !0, se(e, C, C, L);
264
+ }
265
+ return se(e, "localhost", _, {
266
+ ascii: !0
267
+ }), e.jd = new p(bt), {
268
+ start: e,
269
+ tokens: Object.assign({
270
+ groups: n
271
+ }, fe)
272
+ };
251
273
  }
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));
274
+ function me(t, n) {
275
+ const e = He(n.replace(/[A-Z]/g, (c) => c.toLowerCase())), s = e.length, i = [];
276
+ let r = 0, a = 0;
277
+ for (; a < s; ) {
278
+ let c = t, d = null, m = 0, E = null, u = -1, g = -1;
279
+ for (; a < s && (d = c.go(e[a])); )
280
+ c = d, c.accepts() ? (u = 0, g = 0, E = c) : u >= 0 && (u += e[a].length, g++), m += e[a].length, r += e[a].length, a++;
281
+ r -= u, a -= g, m -= u, i.push({
282
+ t: E.t,
283
+ // token type/name
284
+ v: n.slice(r - m, r),
285
+ // string value
286
+ s: r - m,
287
+ // start index
288
+ e: r
289
+ // end index (excluding)
290
+ });
262
291
  }
292
+ return i;
263
293
  }
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
- }
294
+ function He(t) {
295
+ const n = [], e = t.length;
296
+ let s = 0;
297
+ for (; s < e; ) {
298
+ let i = t.charCodeAt(s), r, a = i < 55296 || i > 56319 || s + 1 === e || (r = t.charCodeAt(s + 1)) < 56320 || r > 57343 ? t[s] : t.slice(s, s + 2);
299
+ n.push(a), s += a.length;
300
+ }
301
+ return n;
310
302
  }
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
- }
303
+ function D(t, n, e, s, i) {
304
+ let r;
305
+ const a = n.length;
306
+ for (let c = 0; c < a - 1; c++) {
307
+ const d = n[c];
308
+ t.j[d] ? r = t.j[d] : (r = new p(s), r.jr = i.slice(), t.j[d] = r), t = r;
309
+ }
310
+ return r = new p(e), r.jr = i.slice(), t.j[n[a - 1]] = r, r;
325
311
  }
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);
312
+ function oe(t) {
313
+ const n = [], e = [];
314
+ let s = 0, i = "0123456789";
315
+ for (; s < t.length; ) {
316
+ let r = 0;
317
+ for (; i.indexOf(t[s + r]) >= 0; )
318
+ r++;
319
+ if (r > 0) {
320
+ n.push(e.join(""));
321
+ for (let a = parseInt(t.substring(s, s + r), 10); a > 0; a--)
322
+ e.pop();
323
+ s += r;
338
324
  } 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;
325
+ e.push(t[s]), s++;
358
326
  }
327
+ return n;
359
328
  }
360
- l.jsonID("all", d);
361
- const z = {
362
- map() {
363
- return this;
364
- },
365
- resolve(i) {
366
- return new d(i);
367
- }
329
+ const J = {
330
+ defaultProtocol: "http",
331
+ events: null,
332
+ format: re,
333
+ formatHref: re,
334
+ nl2br: !1,
335
+ tagName: "a",
336
+ target: null,
337
+ rel: null,
338
+ validate: !0,
339
+ truncate: 1 / 0,
340
+ className: null,
341
+ attributes: null,
342
+ ignoreTags: [],
343
+ render: null
368
344
  };
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;
381
- }
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));
345
+ function Zt(t, n = null) {
346
+ let e = Object.assign({}, J);
347
+ t && (e = Object.assign(e, t instanceof Zt ? t.o : t));
348
+ const s = e.ignoreTags, i = [];
349
+ for (let r = 0; r < s.length; r++)
350
+ i.push(s[r].toUpperCase());
351
+ this.o = e, n && (this.defaultRender = n), this.ignoreTags = i;
397
352
  }
398
- const b = 1, k = 2, F = 4;
399
- class W extends $ {
353
+ Zt.prototype = {
354
+ o: J,
400
355
  /**
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
- }
356
+ * @type string[]
357
+ */
358
+ ignoreTags: [],
406
359
  /**
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
- }
360
+ * @param {IntermediateRepresentation} ir
361
+ * @returns {any}
362
+ */
363
+ defaultRender(t) {
364
+ return t;
365
+ },
415
366
  /**
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
- }
367
+ * Returns true or false based on whether a token should be displayed as a
368
+ * link based on the user options.
369
+ * @param {MultiToken} token
370
+ * @returns {boolean}
371
+ */
372
+ check(t) {
373
+ return this.get("validate", t.toString(), t);
374
+ },
375
+ // Private methods
376
+ /**
377
+ * Resolve an option's value based on the value of the option and the given
378
+ * params. If operator and token are specified and the target option is
379
+ * callable, automatically calls the function with the given argument.
380
+ * @template {keyof Opts} K
381
+ * @param {K} key Name of option to use
382
+ * @param {string} [operator] will be passed to the target option if it's a
383
+ * function. If not specified, RAW function value gets returned
384
+ * @param {MultiToken} [token] The token from linkify.tokenize
385
+ * @returns {Opts[K] | any}
386
+ */
387
+ get(t, n, e) {
388
+ const s = n != null;
389
+ let i = this.o[t];
390
+ return i && (typeof i == "object" ? (i = e.t in i ? i[e.t] : J[t], typeof i == "function" && s && (i = i(n, e))) : typeof i == "function" && s && (i = i(n, e.t, e)), i);
391
+ },
424
392
  /**
425
- Whether the selection was explicitly updated by this transaction.
426
- */
427
- get selectionSet() {
428
- return (this.updated & b) > 0;
429
- }
393
+ * @template {keyof Opts} L
394
+ * @param {L} key Name of options object to use
395
+ * @param {string} [operator]
396
+ * @param {MultiToken} [token]
397
+ * @returns {Opts[L] | any}
398
+ */
399
+ getObj(t, n, e) {
400
+ let s = this.o[t];
401
+ return typeof s == "function" && n != null && (s = s(n, e.t, e)), s;
402
+ },
430
403
  /**
431
- Set the current stored marks.
432
- */
433
- setStoredMarks(e) {
434
- return this.storedMarks = e, this.updated |= k, this;
404
+ * Convert the given token to a rendered element that may be added to the
405
+ * calling-interface's DOM
406
+ * @param {MultiToken} token Token to render to an HTML element
407
+ * @returns {any} Render result; e.g., HTML string, DOM element, React
408
+ * Component, etc.
409
+ */
410
+ render(t) {
411
+ const n = t.render(this);
412
+ return (this.get("render", null, t) || this.defaultRender)(n, t.t, t);
435
413
  }
414
+ };
415
+ function re(t) {
416
+ return t;
417
+ }
418
+ function ge(t, n) {
419
+ this.t = "token", this.v = t, this.tk = n;
420
+ }
421
+ ge.prototype = {
422
+ isLink: !1,
423
+ /**
424
+ * Return the string this token represents.
425
+ * @return {string}
426
+ */
427
+ toString() {
428
+ return this.v;
429
+ },
436
430
  /**
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
- }
431
+ * What should the value for this token be in the `href` HTML attribute?
432
+ * Returns the `.toString` value by default.
433
+ * @param {string} [scheme]
434
+ * @return {string}
435
+ */
436
+ toHref(t) {
437
+ return this.toString();
438
+ },
444
439
  /**
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
- }
440
+ * @param {Options} options Formatting options
441
+ * @returns {string}
442
+ */
443
+ toFormattedString(t) {
444
+ const n = this.toString(), e = t.get("truncate", n, this), s = t.get("format", n, this);
445
+ return e && s.length > e ? s.substring(0, e) + "…" : s;
446
+ },
450
447
  /**
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
- }
448
+ *
449
+ * @param {Options} options
450
+ * @returns {string}
451
+ */
452
+ toFormattedHref(t) {
453
+ return t.get("formatHref", this.toHref(t.get("defaultProtocol")), this);
454
+ },
456
455
  /**
457
- Whether the stored marks were explicitly set for this transaction.
458
- */
459
- get storedMarksSet() {
460
- return (this.updated & k) > 0;
461
- }
456
+ * The start index of this token in the original input string
457
+ * @returns {number}
458
+ */
459
+ startIndex() {
460
+ return this.tk[0].s;
461
+ },
462
462
  /**
463
- @internal
464
- */
465
- addStep(e, t) {
466
- super.addStep(e, t), this.updated = this.updated & ~k, this.storedMarks = null;
467
- }
463
+ * The end index of this token in the original input string (up to this
464
+ * index but not including it)
465
+ * @returns {number}
466
+ */
467
+ endIndex() {
468
+ return this.tk[this.tk.length - 1].e;
469
+ },
468
470
  /**
469
- Update the timestamp for the transaction.
470
- */
471
- setTime(e) {
472
- return this.time = e, this;
473
- }
471
+ Returns an object of relevant values for this token, which includes keys
472
+ * type - Kind of token ('url', 'email', etc.)
473
+ * value - Original text
474
+ * href - The value that should be added to the anchor tag's href
475
+ attribute
476
+ @method toObject
477
+ @param {string} [protocol] `'http'` by default
478
+ */
479
+ toObject(t = J.defaultProtocol) {
480
+ return {
481
+ type: this.t,
482
+ value: this.toString(),
483
+ isLink: this.isLink,
484
+ href: this.toHref(t),
485
+ start: this.startIndex(),
486
+ end: this.endIndex()
487
+ };
488
+ },
474
489
  /**
475
- Replace the current selection with the given slice.
476
- */
477
- replaceSelection(e) {
478
- return this.selection.replace(this, e), this;
479
- }
490
+ *
491
+ * @param {Options} options Formatting option
492
+ */
493
+ toFormattedObject(t) {
494
+ return {
495
+ type: this.t,
496
+ value: this.toFormattedString(t),
497
+ isLink: this.isLink,
498
+ href: this.toFormattedHref(t),
499
+ start: this.startIndex(),
500
+ end: this.endIndex()
501
+ };
502
+ },
480
503
  /**
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
- }
504
+ * Whether this token should be rendered as a link according to the given options
505
+ * @param {Options} options
506
+ * @returns {boolean}
507
+ */
508
+ validate(t) {
509
+ return t.get("validate", this.toString(), this);
510
+ },
489
511
  /**
490
- Delete the selection.
491
- */
492
- deleteSelection() {
493
- return this.selection.replace(this), this;
512
+ * Return an object that represents how this link should be rendered.
513
+ * @param {Options} options Formattinng options
514
+ */
515
+ render(t) {
516
+ const n = this, e = this.toHref(t.get("defaultProtocol")), s = t.get("formatHref", e, this), i = t.get("tagName", e, n), r = this.toFormattedString(t), a = {}, c = t.get("className", e, n), d = t.get("target", e, n), m = t.get("rel", e, n), E = t.getObj("attributes", e, n), u = t.getObj("events", e, n);
517
+ return a.href = s, c && (a.class = c), d && (a.target = d), m && (a.rel = m), E && Object.assign(a, E), {
518
+ tagName: i,
519
+ attributes: a,
520
+ content: r,
521
+ eventListeners: u
522
+ };
494
523
  }
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;
524
+ };
525
+ function Nt(t, n) {
526
+ class e extends ge {
527
+ constructor(i, r) {
528
+ super(i, r), this.t = t;
512
529
  }
513
530
  }
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
- }
531
+ for (const s in n)
532
+ e.prototype[s] = n[s];
533
+ return e.t = t, e;
549
534
  }
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
- }
535
+ const ae = Nt("email", {
536
+ isLink: !0,
537
+ toHref() {
538
+ return "mailto:" + this.toString();
539
+ }
540
+ }), ce = Nt("text"), we = Nt("nl"), Z = Nt("url", {
541
+ isLink: !0,
542
+ /**
543
+ Lowercases relevant parts of the domain and adds the protocol if
544
+ required. Note that this will not escape unsafe HTML characters in the
545
+ URL.
546
+ @param {string} [scheme] default scheme (e.g., 'https')
547
+ @return {string} the full href
548
+ */
549
+ toHref(t = J.defaultProtocol) {
550
+ return this.hasProtocol() ? this.v : `${t}://${this.v}`;
551
+ },
552
+ /**
553
+ * Check whether this URL token has a protocol
554
+ * @return {boolean}
555
+ */
556
+ hasProtocol() {
557
+ const t = this.tk;
558
+ return t.length >= 2 && t[0].t !== _ && t[1].t === v;
559
+ }
560
+ }), S = (t) => new p(t);
561
+ function De({
562
+ groups: t
563
+ }) {
564
+ const n = t.domain.concat([mt, At, P, Tt, Lt, Rt, Ct, pt, O, qt, Q, St, Ot, yt, k, bt, q, kt]), e = [gt, v, Jt, y, Yt, Q, $, Xt, Vt, ot, rt, W, G, nt, et, st, it, at, ct, lt, ut, ht, dt, Et, ft], s = [mt, gt, At, Tt, Lt, Rt, Ct, pt, O, W, G, Q, St, Ot, yt, $, k, bt, q, kt], i = S(), r = o(i, q);
565
+ l(r, s, r), l(r, t.domain, r);
566
+ const a = S(), c = S(), d = S();
567
+ l(i, t.domain, a), l(i, t.scheme, c), l(i, t.slashscheme, d), l(a, s, r), l(a, t.domain, a);
568
+ const m = o(a, P);
569
+ o(r, P, m), o(c, P, m), o(d, P, m);
570
+ const E = o(r, y);
571
+ l(E, s, r), l(E, t.domain, r);
572
+ const u = S();
573
+ l(m, t.domain, u), l(u, t.domain, u);
574
+ const g = o(u, y);
575
+ l(g, t.domain, u);
576
+ const A = S(ae);
577
+ l(g, t.tld, A), l(g, t.utld, A), o(m, _, A);
578
+ const H = o(u, O);
579
+ o(H, O, H), l(H, t.domain, u), l(A, t.domain, u), o(A, y, g), o(A, O, H);
580
+ const T = o(A, v);
581
+ l(T, t.numeric, ae);
582
+ const C = o(a, O), w = o(a, y);
583
+ o(C, O, C), l(C, t.domain, a), l(w, s, r), l(w, t.domain, a);
584
+ const L = S(Z);
585
+ l(w, t.tld, L), l(w, t.utld, L), l(L, t.domain, a), l(L, s, r), o(L, y, w), o(L, O, C), o(L, P, m);
586
+ const Te = o(L, v), te = S(Z);
587
+ l(Te, t.numeric, te);
588
+ const R = S(Z), M = S();
589
+ l(R, n, R), l(R, e, M), l(M, n, R), l(M, e, M), o(L, k, R), o(te, k, R);
590
+ const It = o(c, v), Le = o(d, v), Re = o(Le, k), Ht = o(Re, k);
591
+ l(c, t.domain, a), o(c, y, w), o(c, O, C), l(d, t.domain, a), o(d, y, w), o(d, O, C), l(It, t.domain, R), o(It, k, R), o(It, $, R), l(Ht, t.domain, R), l(Ht, n, R), o(Ht, k, R);
592
+ const ee = [
593
+ [W, G],
594
+ // {}
595
+ [et, nt],
596
+ // []
597
+ [st, it],
598
+ // ()
599
+ [ot, rt],
600
+ // <>
601
+ [at, ct],
602
+ // ()
603
+ [lt, ut],
604
+ // 「」
605
+ [ht, dt],
606
+ // 『』
607
+ [Et, ft]
608
+ // <>
609
+ ];
610
+ for (let wt = 0; wt < ee.length; wt++) {
611
+ const [ne, Dt] = ee[wt], Y = o(R, ne);
612
+ o(M, ne, Y), o(Y, Dt, R);
613
+ const x = S(Z);
614
+ l(Y, n, x);
615
+ const z = S();
616
+ l(Y, e), l(x, n, x), l(x, e, z), l(z, n, x), l(z, e, z), o(x, Dt, R), o(z, Dt, R);
617
+ }
618
+ return o(i, _, L), o(i, _t, we), {
619
+ start: i,
620
+ tokens: fe
621
+ };
557
622
  }
558
- const L = [
559
- new S("doc", {
560
- init(i) {
561
- return i.doc || i.schema.topNodeType.createAndFill();
562
- },
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);
570
- },
571
- apply(i) {
572
- return i.selection;
573
- }
574
- }),
575
- new S("storedMarks", {
576
- init(i) {
577
- return i.storedMarks || null;
578
- },
579
- apply(i, e, t, r) {
580
- return r.selection.$cursor ? i.storedMarks : null;
623
+ function Pe(t, n, e) {
624
+ let s = e.length, i = 0, r = [], a = [];
625
+ for (; i < s; ) {
626
+ let c = t, d = null, m = null, E = 0, u = null, g = -1;
627
+ for (; i < s && !(d = c.go(e[i].t)); )
628
+ a.push(e[i++]);
629
+ for (; i < s && (m = d || c.go(e[i].t)); )
630
+ d = null, c = m, c.accepts() ? (g = 0, u = c) : g >= 0 && g++, i++, E++;
631
+ if (g < 0)
632
+ i -= E, i < s && (a.push(e[i]), i++);
633
+ else {
634
+ a.length > 0 && (r.push(Mt(ce, n, a)), a = []), i -= g, E -= g;
635
+ const A = u.t, H = e.slice(i - E, i);
636
+ r.push(Mt(A, n, H));
581
637
  }
582
- }),
583
- new S("scrollToSelection", {
584
- init() {
585
- return 0;
586
- },
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
638
  }
639
+ return a.length > 0 && r.push(Mt(ce, n, a)), r;
600
640
  }
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;
635
- }
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 });
660
- }
661
- t.push(h), r = r.applyInner(h), s = !0;
662
- }
663
- n && (n[o] = { state: r, n: t.length });
664
- }
665
- }
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]));
729
- }
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
- }
760
- }
761
- s[o.name] = o.init(e, s);
762
- }
763
- }), s;
764
- }
641
+ function Mt(t, n, e) {
642
+ const s = e[0].s, i = e[e.length - 1].e, r = n.slice(s, i);
643
+ return new t(r, e);
765
644
  }
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;
645
+ const ve = typeof console < "u" && console && console.warn || (() => {
646
+ }), je = "until manual call of linkify.init(). Register all schemes and plugins before invoking linkify the first time.", h = {
647
+ scanner: null,
648
+ parser: null,
649
+ tokenQueue: [],
650
+ pluginQueue: [],
651
+ customSchemes: [],
652
+ initialized: !1
653
+ };
654
+ function Ue() {
655
+ return p.groups = {}, h.scanner = null, h.parser = null, h.tokenQueue = [], h.pluginQueue = [], h.customSchemes = [], h.initialized = !1, h;
772
656
  }
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
- }
657
+ function Me(t, n = !1) {
658
+ if (h.initialized && ve(`linkifyjs: already initialized - will not register custom scheme "${t}" ${je}`), !/^[0-9a-z]+(-[0-9a-z]+)*$/.test(t))
659
+ throw new Error(`linkifyjs: incorrect scheme format.
660
+ 1. Must only contain digits, lowercase ASCII letters or "-"
661
+ 2. Cannot start or end with "-"
662
+ 3. "-" cannot repeat`);
663
+ h.customSchemes.push([t, n]);
786
664
  }
787
- const N = /* @__PURE__ */ Object.create(null);
788
- function C(i) {
789
- return i in N ? i + "$" + ++N[i] : (N[i] = 0, i + "$");
665
+ function xe() {
666
+ h.scanner = Ie(h.customSchemes);
667
+ for (let t = 0; t < h.tokenQueue.length; t++)
668
+ h.tokenQueue[t][1]({
669
+ scanner: h.scanner
670
+ });
671
+ h.parser = De(h.scanner.tokens);
672
+ for (let t = 0; t < h.pluginQueue.length; t++)
673
+ h.pluginQueue[t][1]({
674
+ scanner: h.scanner,
675
+ parser: h.parser
676
+ });
677
+ return h.initialized = !0, h;
790
678
  }
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
- }
679
+ function Ae(t) {
680
+ return h.initialized || xe(), Pe(h.parser.start, t, me(h.scanner.start, t));
681
+ }
682
+ Ae.scan = me;
683
+ function ze(t, n = null, e = null) {
684
+ if (n && typeof n == "object") {
685
+ if (e)
686
+ throw Error(`linkifyjs: Invalid link type ${n}; must be a string`);
687
+ e = n, n = null;
688
+ }
689
+ const s = new Zt(e), i = Ae(t), r = [];
690
+ for (let a = 0; a < i.length; a++) {
691
+ const c = i[a];
692
+ c.isLink && (!n || c.t === n) && s.check(c) && r.push(c.toFormattedObject(s));
693
+ }
694
+ return r;
811
695
  }
812
696
  export {
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
697
+ ge as MultiToken,
698
+ Zt as Options,
699
+ p as State,
700
+ Nt as createTokenClass,
701
+ ze as find,
702
+ xe as init,
703
+ Me as registerCustomProtocol,
704
+ Ue as reset,
705
+ He as stringToArray,
706
+ Ae as tokenize
822
707
  };