@quoreadmin/ui 1.8.11 → 1.9.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 (359) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.js +35 -33
  3. package/dist/index10.js +2 -2
  4. package/dist/index100.js +34 -0
  5. package/dist/{index101.js → index102.js} +1 -1
  6. package/dist/index104.js +140 -2
  7. package/dist/index105.js +2 -37
  8. package/dist/index106.js +39 -0
  9. package/dist/{index107.js → index108.js} +2 -2
  10. package/dist/index11.js +2 -2
  11. package/dist/{index109.js → index110.js} +1 -1
  12. package/dist/{index111.js → index112.js} +3 -3
  13. package/dist/{index113.js → index114.js} +5 -5
  14. package/dist/{index115.js → index116.js} +1 -1
  15. package/dist/{index117.js → index118.js} +5 -5
  16. package/dist/index12.js +2 -2
  17. package/dist/index13.js +2 -2
  18. package/dist/{index131.js → index132.js} +1 -1
  19. package/dist/{index133.js → index134.js} +2 -2
  20. package/dist/index14.js +2 -2
  21. package/dist/{index142.js → index143.js} +4 -4
  22. package/dist/{index144.js → index145.js} +1 -1
  23. package/dist/{index146.js → index147.js} +10 -10
  24. package/dist/index15.js +2 -2
  25. package/dist/index153.js +562 -0
  26. package/dist/index157.js +87 -356
  27. package/dist/index16.js +2 -2
  28. package/dist/index160.js +389 -0
  29. package/dist/{index159.js → index162.js} +1 -1
  30. package/dist/index164.js +205 -111
  31. package/dist/index167.js +110 -87
  32. package/dist/index168.js +478 -844
  33. package/dist/index169.js +5520 -36
  34. package/dist/index17.js +2 -2
  35. package/dist/index170.js +90 -279
  36. package/dist/index171.js +833 -122
  37. package/dist/index172.js +36 -1197
  38. package/dist/index173.js +268 -760
  39. package/dist/index174.js +146 -1304
  40. package/dist/index175.js +1151 -228
  41. package/dist/index176.js +754 -88
  42. package/dist/index177.js +1308 -2
  43. package/dist/index178.js +259 -1359
  44. package/dist/index179.js +108 -0
  45. package/dist/index18.js +2 -2
  46. package/dist/index180.js +2 -18
  47. package/dist/index181.js +1372 -14
  48. package/dist/index183.js +8 -8
  49. package/dist/index184.js +10 -17
  50. package/dist/index185.js +18 -759
  51. package/dist/index186.js +18 -1144
  52. package/dist/index187.js +22 -1231
  53. package/dist/index188.js +740 -11258
  54. package/dist/index189.js +1144 -36
  55. package/dist/index19.js +2 -2
  56. package/dist/index190.js +1233 -43
  57. package/dist/index191.js +11260 -1173
  58. package/dist/index192.js +38 -0
  59. package/dist/index193.js +44 -5938
  60. package/dist/index194.js +1116 -133
  61. package/dist/index196.js +5933 -13
  62. package/dist/index197.js +205 -76
  63. package/dist/index198.js +28 -246
  64. package/dist/index199.js +14 -13680
  65. package/dist/index2.js +2 -2
  66. package/dist/index20.js +2 -2
  67. package/dist/index200.js +77 -26
  68. package/dist/index201.js +245 -55
  69. package/dist/index202.js +13655 -209
  70. package/dist/index203.js +26 -310
  71. package/dist/index204.js +43 -275
  72. package/dist/index205.js +237 -32
  73. package/dist/index206.js +303 -108
  74. package/dist/index207.js +293 -34
  75. package/dist/index208.js +88 -26
  76. package/dist/index209.js +407 -36
  77. package/dist/index21.js +2 -2
  78. package/dist/index210.js +22 -51
  79. package/dist/index211.js +31 -41
  80. package/dist/index212.js +115 -3
  81. package/dist/index213.js +36 -9
  82. package/dist/index214.js +26 -19
  83. package/dist/index215.js +36 -10
  84. package/dist/index216.js +51 -10
  85. package/dist/index217.js +40 -36
  86. package/dist/index218.js +4 -21
  87. package/dist/index219.js +9 -88
  88. package/dist/index22.js +2 -2
  89. package/dist/index220.js +19 -407
  90. package/dist/index221.js +10 -22
  91. package/dist/index222.js +10 -161
  92. package/dist/index223.js +38 -19
  93. package/dist/index224.js +21 -20
  94. package/dist/index225.js +126 -21
  95. package/dist/index226.js +22 -183
  96. package/dist/index227.js +79 -69
  97. package/dist/index228.js +20 -34
  98. package/dist/index229.js +19 -39
  99. package/dist/index23.js +2 -2
  100. package/dist/index230.js +19 -160
  101. package/dist/index231.js +20 -228
  102. package/dist/index232.js +19 -36
  103. package/dist/index233.js +160 -9
  104. package/dist/index234.js +218 -117
  105. package/dist/index235.js +36 -37
  106. package/dist/index236.js +10 -80
  107. package/dist/index237.js +3636 -20
  108. package/dist/index238.js +55 -20
  109. package/dist/index239.js +77 -20
  110. package/dist/index24.js +2 -2
  111. package/dist/index240.js +52 -20
  112. package/dist/index241.js +215 -22
  113. package/dist/index242.js +10 -22
  114. package/dist/index243.js +57 -20
  115. package/dist/index244.js +47 -822
  116. package/dist/index245.js +44 -692
  117. package/dist/index246.js +67 -168
  118. package/dist/index247.js +725 -21
  119. package/dist/index248.js +42 -20
  120. package/dist/index249.js +64 -20
  121. package/dist/index250.js +11 -3
  122. package/dist/index251.js +691 -173
  123. package/dist/index252.js +810 -123
  124. package/dist/index253.js +92 -1154
  125. package/dist/index254.js +8 -8
  126. package/dist/index255.js +8 -8
  127. package/dist/index256.js +198 -21
  128. package/dist/index257.js +69 -28
  129. package/dist/index258.js +33 -19
  130. package/dist/index259.js +39 -19
  131. package/dist/index26.js +2 -2
  132. package/dist/index260.js +22 -2
  133. package/dist/index261.js +22 -2
  134. package/dist/index262.js +20 -3636
  135. package/dist/index263.js +826 -45
  136. package/dist/index264.js +693 -68
  137. package/dist/index265.js +174 -50
  138. package/dist/index266.js +22 -215
  139. package/dist/index267.js +20 -10
  140. package/dist/index268.js +20 -57
  141. package/dist/index269.js +3 -61
  142. package/dist/index27.js +2 -2
  143. package/dist/index270.js +182 -49
  144. package/dist/index271.js +128 -70
  145. package/dist/index272.js +1193 -696
  146. package/dist/index273.js +20 -42
  147. package/dist/index274.js +22 -64
  148. package/dist/index275.js +22 -11
  149. package/dist/index276.js +29 -705
  150. package/dist/index277.js +20 -820
  151. package/dist/index278.js +20 -253
  152. package/dist/index279.js +2 -8
  153. package/dist/index28.js +2 -2
  154. package/dist/index280.js +2 -138
  155. package/dist/index281.js +232 -62
  156. package/dist/index282.js +7 -53
  157. package/dist/index283.js +118 -59
  158. package/dist/index284.js +83 -26
  159. package/dist/index285.js +3 -22
  160. package/dist/index286.js +26 -21
  161. package/dist/index287.js +2 -16
  162. package/dist/index288.js +78 -16
  163. package/dist/index289.js +1534 -23
  164. package/dist/index29.js +2 -2
  165. package/dist/index290.js +386 -3
  166. package/dist/index291.js +2727 -23
  167. package/dist/index292.js +76 -252
  168. package/dist/index293.js +3790 -4
  169. package/dist/index294.js +55 -135
  170. package/dist/index295.js +15 -73
  171. package/dist/index296.js +77 -80
  172. package/dist/index297.js +201 -28
  173. package/dist/index298.js +244 -14
  174. package/dist/index299.js +52 -73
  175. package/dist/index3.js +2 -2
  176. package/dist/index30.js +2 -2
  177. package/dist/index300.js +25 -3
  178. package/dist/index301.js +22 -2
  179. package/dist/index302.js +21 -82
  180. package/dist/index303.js +16 -53
  181. package/dist/index304.js +17 -6
  182. package/dist/index305.js +23 -5
  183. package/dist/index306.js +74 -174
  184. package/dist/index307.js +21 -62
  185. package/dist/index308.js +934 -74
  186. package/dist/index309.js +22 -2
  187. package/dist/index31.js +3 -3
  188. package/dist/index310.js +20 -1534
  189. package/dist/index311.js +20 -386
  190. package/dist/index312.js +69 -2731
  191. package/dist/index313.js +19 -86
  192. package/dist/index314.js +19 -3792
  193. package/dist/index315.js +21 -59
  194. package/dist/index316.js +21 -78
  195. package/dist/index317.js +63 -22
  196. package/dist/index318.js +248 -921
  197. package/dist/index319.js +5 -21
  198. package/dist/index32.js +2 -2
  199. package/dist/index320.js +139 -19
  200. package/dist/index321.js +72 -19
  201. package/dist/index322.js +82 -64
  202. package/dist/index323.js +29 -19
  203. package/dist/index324.js +16 -19
  204. package/dist/index325.js +74 -21
  205. package/dist/index326.js +3 -21
  206. package/dist/index327.js +2 -63
  207. package/dist/index328.js +83 -15
  208. package/dist/index329.js +51 -82
  209. package/dist/index33.js +2 -2
  210. package/dist/index330.js +4 -200
  211. package/dist/index331.js +4 -245
  212. package/dist/index332.js +171 -29
  213. package/dist/index333.js +62 -8
  214. package/dist/index334.js +75 -13
  215. package/dist/index335.js +8 -54
  216. package/dist/index336.js +12 -11
  217. package/dist/index337.js +52 -11
  218. package/dist/index338.js +9 -55
  219. package/dist/index339.js +13 -51
  220. package/dist/index34.js +2 -2
  221. package/dist/index340.js +51 -24
  222. package/dist/index341.js +52 -2
  223. package/dist/index342.js +31 -5
  224. package/dist/index343.js +2 -2
  225. package/dist/index344.js +4 -22
  226. package/dist/index345.js +2 -41
  227. package/dist/index346.js +23 -2
  228. package/dist/index347.js +40 -10
  229. package/dist/index348.js +2 -20
  230. package/dist/index349.js +10 -9
  231. package/dist/index35.js +2 -2
  232. package/dist/index350.js +20 -10
  233. package/dist/index351.js +9 -16
  234. package/dist/index352.js +10 -2
  235. package/dist/index353.js +16 -8
  236. package/dist/index354.js +2 -10
  237. package/dist/index355.js +8 -13
  238. package/dist/index356.js +9 -18
  239. package/dist/index357.js +14 -57
  240. package/dist/index358.js +35 -27
  241. package/dist/index359.js +19 -6
  242. package/dist/index36.js +2 -2
  243. package/dist/index360.js +19 -51
  244. package/dist/index361.js +64 -7
  245. package/dist/index362.js +37 -12
  246. package/dist/index363.js +18 -6
  247. package/dist/index364.js +57 -28
  248. package/dist/index365.js +29 -2
  249. package/dist/index366.js +7 -70
  250. package/dist/index367.js +48 -163
  251. package/dist/index368.js +7 -20
  252. package/dist/index369.js +11 -19
  253. package/dist/index37.js +2 -2
  254. package/dist/index370.js +7 -64
  255. package/dist/index371.js +28 -37
  256. package/dist/index372.js +2 -31
  257. package/dist/index373.js +70 -11
  258. package/dist/index374.js +167 -4
  259. package/dist/index375.js +98 -4
  260. package/dist/index376.js +100 -12
  261. package/dist/index377.js +91 -7
  262. package/dist/index378.js +17 -12
  263. package/dist/index379.js +30 -4
  264. package/dist/index38.js +2 -2
  265. package/dist/index380.js +11 -33
  266. package/dist/index381.js +4 -31
  267. package/dist/index382.js +4 -28
  268. package/dist/index383.js +12 -60
  269. package/dist/index384.js +7 -17
  270. package/dist/index385.js +11 -100
  271. package/dist/index386.js +4 -90
  272. package/dist/index387.js +33 -98
  273. package/dist/index388.js +31 -3
  274. package/dist/index389.js +28 -2
  275. package/dist/index39.js +2 -2
  276. package/dist/index390.js +61 -2
  277. package/dist/index391.js +3 -17
  278. package/dist/index392.js +2 -13
  279. package/dist/index393.js +2 -6
  280. package/dist/index394.js +17 -32
  281. package/dist/index395.js +15 -0
  282. package/dist/index396.js +8 -0
  283. package/dist/index397.js +34 -0
  284. package/dist/index4.js +2 -2
  285. package/dist/index40.js +2 -2
  286. package/dist/index41.js +2 -2
  287. package/dist/index42.js +2 -2
  288. package/dist/index43.js +2 -2
  289. package/dist/index44.js +4 -4
  290. package/dist/index45.js +10 -10
  291. package/dist/index46.js +2 -2
  292. package/dist/index47.js +2 -2
  293. package/dist/index48.js +3 -3
  294. package/dist/index49.js +4 -69
  295. package/dist/index5.js +2 -2
  296. package/dist/index50.js +67 -61
  297. package/dist/index51.js +57 -175
  298. package/dist/index52.js +173 -77
  299. package/dist/index53.js +79 -200
  300. package/dist/index54.js +206 -68
  301. package/dist/index55.js +69 -20
  302. package/dist/index56.js +20 -11
  303. package/dist/index57.js +10 -6
  304. package/dist/index58.js +5 -209
  305. package/dist/index59.js +210 -12
  306. package/dist/index6.js +2 -2
  307. package/dist/index60.js +12 -184
  308. package/dist/index61.js +176 -68
  309. package/dist/index62.js +79 -0
  310. package/dist/index64.js +7 -91
  311. package/dist/index65.js +93 -0
  312. package/dist/index7.js +12 -12
  313. package/dist/{index72.js → index73.js} +2 -2
  314. package/dist/index77.js +40 -308
  315. package/dist/index78.js +330 -0
  316. package/dist/index8.js +3 -3
  317. package/dist/{index81.js → index82.js} +4 -4
  318. package/dist/{index83.js → index84.js} +1 -1
  319. package/dist/index86.js +23 -131
  320. package/dist/index87.js +144 -0
  321. package/dist/{index88.js → index89.js} +5 -5
  322. package/dist/index9.js +2 -2
  323. package/dist/{index90.js → index91.js} +5 -5
  324. package/dist/{index96.js → index97.js} +4 -4
  325. package/dist/index99.js +20 -25
  326. package/dist/src/components/time-picker/time-picker.stories.d.ts +25 -0
  327. package/dist/src/components/time-picker/time-picker.vue.d.ts +52 -0
  328. package/dist/src/index.d.ts +1 -0
  329. package/package.json +1 -1
  330. package/dist/index103.js +0 -142
  331. package/dist/index154.js +0 -120
  332. package/dist/index161.js +0 -210
  333. package/dist/index165.js +0 -497
  334. package/dist/index166.js +0 -5524
  335. package/dist/index182.js +0 -20
  336. package/dist/index195.js +0 -37
  337. package/dist/index63.js +0 -9
  338. package/dist/index76.js +0 -62
  339. package/dist/index85.js +0 -36
  340. package/dist/index98.js +0 -29
  341. /package/dist/{index119.js → index120.js} +0 -0
  342. /package/dist/{index121.js → index122.js} +0 -0
  343. /package/dist/{index123.js → index124.js} +0 -0
  344. /package/dist/{index125.js → index126.js} +0 -0
  345. /package/dist/{index127.js → index128.js} +0 -0
  346. /package/dist/{index129.js → index130.js} +0 -0
  347. /package/dist/{index136.js → index137.js} +0 -0
  348. /package/dist/{index138.js → index139.js} +0 -0
  349. /package/dist/{index140.js → index141.js} +0 -0
  350. /package/dist/{index148.js → index149.js} +0 -0
  351. /package/dist/{index150.js → index151.js} +0 -0
  352. /package/dist/{index152.js → index155.js} +0 -0
  353. /package/dist/{index66.js → index67.js} +0 -0
  354. /package/dist/{index68.js → index69.js} +0 -0
  355. /package/dist/{index70.js → index71.js} +0 -0
  356. /package/dist/{index74.js → index75.js} +0 -0
  357. /package/dist/{index79.js → index80.js} +0 -0
  358. /package/dist/{index92.js → index93.js} +0 -0
  359. /package/dist/{index94.js → index95.js} +0 -0
package/dist/index206.js CHANGED
@@ -1,118 +1,313 @@
1
- import { toArray as p, notNullish as x, noop as M, tryOnScopeDispose as g, watchImmediate as S, isClient as W, isObject as A } from "./index207.js";
2
- import { getLifeCycleTarget as q, tryOnUnmounted as z } from "./index207.js";
3
- import { toValue as a, computed as y, shallowRef as I, watch as T, unref as j, getCurrentInstance as w, onMounted as B } from "vue";
4
- const C = W ? window : void 0;
5
- function d(t) {
6
- var o;
7
- const l = a(t);
8
- return (o = l?.$el) != null ? o : l;
1
+ import { Mark as x, markPasteRule as b, mergeAttributes as v, combineTransactionSteps as w, getChangedRanges as T, findChildrenInRange as _, getMarksBetween as O, getAttributes as R } from "./index237.js";
2
+ import { registerCustomProtocol as C, tokenize as H, find as M, reset as U } from "./index251.js";
3
+ import { Plugin as g, PluginKey as A } from "./index252.js";
4
+ var P = "[\0-   ᠎ -\u2029  ]", B = new RegExp(P), I = new RegExp(`${P}$`), W = new RegExp(P, "g");
5
+ function $(t) {
6
+ return t.length === 1 ? t[0].isLink : t.length === 3 && t[1].isLink ? ["()", "[]"].includes(t[0].value + t[2].value) : !1;
9
7
  }
10
- function U(...t) {
11
- const o = [], l = () => {
12
- o.forEach((e) => e()), o.length = 0;
13
- }, h = (e, n, u, r) => (e.addEventListener(n, u, r), () => e.removeEventListener(n, u, r)), c = y(() => {
14
- const e = p(a(t[0])).filter((n) => n != null);
15
- return e.every((n) => typeof n != "string") ? e : void 0;
16
- }), m = S(
17
- () => {
18
- var e, n;
19
- return [
20
- (n = (e = c.value) == null ? void 0 : e.map((u) => d(u))) != null ? n : [C].filter((u) => u != null),
21
- p(a(c.value ? t[1] : t[0])),
22
- p(j(c.value ? t[2] : t[1])),
23
- // @ts-expect-error - TypeScript gets the correct types, but somehow still complains
24
- a(c.value ? t[3] : t[2])
25
- ];
26
- },
27
- ([e, n, u, r]) => {
28
- if (l(), !e?.length || !n?.length || !u?.length)
8
+ function z(t) {
9
+ return new g({
10
+ key: new A("autolink"),
11
+ appendTransaction: (e, r, o) => {
12
+ const n = e.some((a) => a.docChanged) && !r.doc.eq(o.doc), l = e.some((a) => a.getMeta("preventAutolink"));
13
+ if (!n || l)
29
14
  return;
30
- const s = A(r) ? { ...r } : r;
31
- o.push(
32
- ...e.flatMap(
33
- (b) => n.flatMap(
34
- (v) => u.map((i) => h(b, v, i, s))
35
- )
36
- )
37
- );
38
- },
39
- { flush: "post" }
40
- ), f = () => {
41
- m(), l();
42
- };
43
- return g(l), f;
44
- }
45
- // @__NO_SIDE_EFFECTS__
46
- function D() {
47
- const t = I(!1), o = w();
48
- return o && B(() => {
49
- t.value = !0;
50
- }, o), t;
15
+ const { tr: i } = o, d = w(r.doc, [...e]);
16
+ if (T(d).forEach(({ newRange: a }) => {
17
+ const f = _(o.doc, a, (h) => h.isTextblock);
18
+ let c, k;
19
+ if (f.length > 1)
20
+ c = f[0], k = o.doc.textBetween(
21
+ c.pos,
22
+ c.pos + c.node.nodeSize,
23
+ void 0,
24
+ " "
25
+ );
26
+ else if (f.length) {
27
+ const h = o.doc.textBetween(a.from, a.to, " ", " ");
28
+ if (!I.test(h))
29
+ return;
30
+ c = f[0], k = o.doc.textBetween(c.pos, a.to, void 0, " ");
31
+ }
32
+ if (c && k) {
33
+ const h = k.split(B).filter(Boolean);
34
+ if (h.length <= 0)
35
+ return !1;
36
+ const m = h[h.length - 1], E = c.pos + k.lastIndexOf(m);
37
+ if (!m)
38
+ return !1;
39
+ const L = H(m).map((s) => s.toObject(t.defaultProtocol));
40
+ if (!$(L))
41
+ return !1;
42
+ L.filter((s) => s.isLink).map((s) => ({
43
+ ...s,
44
+ from: E + s.start + 1,
45
+ to: E + s.end + 1
46
+ })).filter((s) => o.schema.marks.code ? !o.doc.rangeHasMark(s.from, s.to, o.schema.marks.code) : !0).filter((s) => t.validate(s.value)).filter((s) => t.shouldAutoLink(s.value)).forEach((s) => {
47
+ O(s.from, s.to, o.doc).some((y) => y.mark.type === t.type) || i.addMark(
48
+ s.from,
49
+ s.to,
50
+ t.type.create({
51
+ href: s.href
52
+ })
53
+ );
54
+ });
55
+ }
56
+ }), !!i.steps.length)
57
+ return i;
58
+ }
59
+ });
51
60
  }
52
- // @__NO_SIDE_EFFECTS__
53
61
  function N(t) {
54
- const o = /* @__PURE__ */ D();
55
- return y(() => (o.value, !!t()));
62
+ return new g({
63
+ key: new A("handleClickLink"),
64
+ props: {
65
+ handleClick: (e, r, o) => {
66
+ var n, l;
67
+ if (o.button !== 0 || !e.editable)
68
+ return !1;
69
+ let i = null;
70
+ if (o.target instanceof HTMLAnchorElement)
71
+ i = o.target;
72
+ else {
73
+ const u = o.target;
74
+ if (!u)
75
+ return !1;
76
+ const a = t.editor.view.dom;
77
+ i = u.closest("a"), i && !a.contains(i) && (i = null);
78
+ }
79
+ if (!i)
80
+ return !1;
81
+ let d = !1;
82
+ if (t.enableClickSelection && (d = t.editor.commands.extendMarkRange(t.type.name)), t.openOnClick) {
83
+ const u = R(e.state, t.type.name), a = (n = i.href) != null ? n : u.href, f = (l = i.target) != null ? l : u.target;
84
+ a && (window.open(a, f), d = !0);
85
+ }
86
+ return d;
87
+ }
88
+ }
89
+ });
56
90
  }
57
- function V(t, o, l = {}) {
58
- const {
59
- root: h,
60
- rootMargin: c = "0px",
61
- threshold: m = 0,
62
- window: f = C,
63
- immediate: e = !0
64
- } = l, n = /* @__PURE__ */ N(() => f && "IntersectionObserver" in f), u = y(() => {
65
- const i = a(t);
66
- return p(i).map(d).filter(x);
91
+ function V(t) {
92
+ return new g({
93
+ key: new A("handlePasteLink"),
94
+ props: {
95
+ handlePaste: (e, r, o) => {
96
+ const { shouldAutoLink: n } = t, { state: l } = e, { selection: i } = l, { empty: d } = i;
97
+ if (d)
98
+ return !1;
99
+ let u = "";
100
+ o.content.forEach((f) => {
101
+ u += f.textContent;
102
+ });
103
+ const a = M(u, { defaultProtocol: t.defaultProtocol }).find(
104
+ (f) => f.isLink && f.value === u
105
+ );
106
+ return !u || !a || n !== void 0 && !n(a.value) ? !1 : t.editor.commands.setMark(t.type, {
107
+ href: a.href
108
+ });
109
+ }
110
+ }
67
111
  });
68
- let r = M;
69
- const s = I(e), b = n.value ? T(
70
- () => [u.value, d(h), s.value],
71
- ([i, L]) => {
72
- if (r(), !s.value || !i.length)
112
+ }
113
+ function p(t, e) {
114
+ const r = ["http", "https", "ftp", "ftps", "mailto", "tel", "callto", "sms", "cid", "xmpp"];
115
+ return e && e.forEach((o) => {
116
+ const n = typeof o == "string" ? o : o.scheme;
117
+ n && r.push(n);
118
+ }), !t || t.replace(W, "").match(
119
+ new RegExp(
120
+ // eslint-disable-next-line no-useless-escape
121
+ `^(?:(?:${r.join("|")}):|[^a-z]|[a-z0-9+.-]+(?:[^a-z+.-:]|$))`,
122
+ "i"
123
+ )
124
+ );
125
+ }
126
+ var X = x.create({
127
+ name: "link",
128
+ priority: 1e3,
129
+ keepOnSplit: !1,
130
+ exitable: !0,
131
+ onCreate() {
132
+ this.options.validate && !this.options.shouldAutoLink && (this.options.shouldAutoLink = this.options.validate, console.warn("The `validate` option is deprecated. Rename to the `shouldAutoLink` option instead.")), this.options.protocols.forEach((t) => {
133
+ if (typeof t == "string") {
134
+ C(t);
73
135
  return;
74
- const E = new IntersectionObserver(
75
- o,
76
- {
77
- root: d(L),
78
- rootMargin: c,
79
- threshold: m
136
+ }
137
+ C(t.scheme, t.optionalSlashes);
138
+ });
139
+ },
140
+ onDestroy() {
141
+ U();
142
+ },
143
+ inclusive() {
144
+ return this.options.autolink;
145
+ },
146
+ addOptions() {
147
+ return {
148
+ openOnClick: !0,
149
+ enableClickSelection: !1,
150
+ linkOnPaste: !0,
151
+ autolink: !0,
152
+ protocols: [],
153
+ defaultProtocol: "http",
154
+ HTMLAttributes: {
155
+ target: "_blank",
156
+ rel: "noopener noreferrer nofollow",
157
+ class: null
158
+ },
159
+ isAllowedUri: (t, e) => !!p(t, e.protocols),
160
+ validate: (t) => !!t,
161
+ shouldAutoLink: (t) => {
162
+ const e = /^[a-z][a-z0-9+.-]*:\/\//i.test(t), r = /^[a-z][a-z0-9+.-]*:/i.test(t);
163
+ if (e || r && !t.includes("@"))
164
+ return !0;
165
+ const n = (t.includes("@") ? t.split("@").pop() : t).split(/[/?#:]/)[0];
166
+ return !(/^\d{1,3}(\.\d{1,3}){3}$/.test(n) || !/\./.test(n));
167
+ }
168
+ };
169
+ },
170
+ addAttributes() {
171
+ return {
172
+ href: {
173
+ default: null,
174
+ parseHTML(t) {
175
+ return t.getAttribute("href");
80
176
  }
81
- );
82
- i.forEach((O) => O && E.observe(O)), r = () => {
83
- E.disconnect(), r = M;
84
- };
85
- },
86
- { immediate: e, flush: "post" }
87
- ) : M, v = () => {
88
- r(), b(), s.value = !1;
89
- };
90
- return g(v), {
91
- isSupported: n,
92
- isActive: s,
93
- pause() {
94
- r(), s.value = !1;
95
- },
96
- resume() {
97
- s.value = !0;
98
- },
99
- stop: v
100
- };
101
- }
177
+ },
178
+ target: {
179
+ default: this.options.HTMLAttributes.target
180
+ },
181
+ rel: {
182
+ default: this.options.HTMLAttributes.rel
183
+ },
184
+ class: {
185
+ default: this.options.HTMLAttributes.class
186
+ },
187
+ title: {
188
+ default: null
189
+ }
190
+ };
191
+ },
192
+ parseHTML() {
193
+ return [
194
+ {
195
+ tag: "a[href]",
196
+ getAttrs: (t) => {
197
+ const e = t.getAttribute("href");
198
+ return !e || !this.options.isAllowedUri(e, {
199
+ defaultValidate: (r) => !!p(r, this.options.protocols),
200
+ protocols: this.options.protocols,
201
+ defaultProtocol: this.options.defaultProtocol
202
+ }) ? !1 : null;
203
+ }
204
+ }
205
+ ];
206
+ },
207
+ renderHTML({ HTMLAttributes: t }) {
208
+ return this.options.isAllowedUri(t.href, {
209
+ defaultValidate: (e) => !!p(e, this.options.protocols),
210
+ protocols: this.options.protocols,
211
+ defaultProtocol: this.options.defaultProtocol
212
+ }) ? ["a", v(this.options.HTMLAttributes, t), 0] : ["a", v(this.options.HTMLAttributes, { ...t, href: "" }), 0];
213
+ },
214
+ markdownTokenName: "link",
215
+ parseMarkdown: (t, e) => e.applyMark("link", e.parseInline(t.tokens || []), {
216
+ href: t.href,
217
+ title: t.title || null
218
+ }),
219
+ renderMarkdown: (t, e) => {
220
+ var r, o, n, l;
221
+ const i = (o = (r = t.attrs) == null ? void 0 : r.href) != null ? o : "", d = (l = (n = t.attrs) == null ? void 0 : n.title) != null ? l : "", u = e.renderChildren(t);
222
+ return d ? `[${u}](${i} "${d}")` : `[${u}](${i})`;
223
+ },
224
+ addCommands() {
225
+ return {
226
+ setLink: (t) => ({ chain: e }) => {
227
+ const { href: r } = t;
228
+ return this.options.isAllowedUri(r, {
229
+ defaultValidate: (o) => !!p(o, this.options.protocols),
230
+ protocols: this.options.protocols,
231
+ defaultProtocol: this.options.defaultProtocol
232
+ }) ? e().setMark(this.name, t).setMeta("preventAutolink", !0).run() : !1;
233
+ },
234
+ toggleLink: (t) => ({ chain: e }) => {
235
+ const { href: r } = t || {};
236
+ return r && !this.options.isAllowedUri(r, {
237
+ defaultValidate: (o) => !!p(o, this.options.protocols),
238
+ protocols: this.options.protocols,
239
+ defaultProtocol: this.options.defaultProtocol
240
+ }) ? !1 : e().toggleMark(this.name, t, { extendEmptyMarkRange: !0 }).setMeta("preventAutolink", !0).run();
241
+ },
242
+ unsetLink: () => ({ chain: t }) => t().unsetMark(this.name, { extendEmptyMarkRange: !0 }).setMeta("preventAutolink", !0).run()
243
+ };
244
+ },
245
+ addPasteRules() {
246
+ return [
247
+ b({
248
+ find: (t) => {
249
+ const e = [];
250
+ if (t) {
251
+ const { protocols: r, defaultProtocol: o } = this.options, n = M(t).filter(
252
+ (l) => l.isLink && this.options.isAllowedUri(l.value, {
253
+ defaultValidate: (i) => !!p(i, r),
254
+ protocols: r,
255
+ defaultProtocol: o
256
+ })
257
+ );
258
+ n.length && n.forEach((l) => {
259
+ this.options.shouldAutoLink(l.value) && e.push({
260
+ text: l.value,
261
+ data: {
262
+ href: l.href
263
+ },
264
+ index: l.start
265
+ });
266
+ });
267
+ }
268
+ return e;
269
+ },
270
+ type: this.type,
271
+ getAttributes: (t) => {
272
+ var e;
273
+ return {
274
+ href: (e = t.data) == null ? void 0 : e.href
275
+ };
276
+ }
277
+ })
278
+ ];
279
+ },
280
+ addProseMirrorPlugins() {
281
+ const t = [], { protocols: e, defaultProtocol: r } = this.options;
282
+ return this.options.autolink && t.push(
283
+ z({
284
+ type: this.type,
285
+ defaultProtocol: this.options.defaultProtocol,
286
+ validate: (o) => this.options.isAllowedUri(o, {
287
+ defaultValidate: (n) => !!p(n, e),
288
+ protocols: e,
289
+ defaultProtocol: r
290
+ }),
291
+ shouldAutoLink: this.options.shouldAutoLink
292
+ })
293
+ ), t.push(
294
+ N({
295
+ type: this.type,
296
+ editor: this.editor,
297
+ openOnClick: this.options.openOnClick === "whenNotEditable" ? !0 : this.options.openOnClick,
298
+ enableClickSelection: this.options.enableClickSelection
299
+ })
300
+ ), this.options.linkOnPaste && t.push(
301
+ V({
302
+ editor: this.editor,
303
+ defaultProtocol: this.options.defaultProtocol,
304
+ type: this.type,
305
+ shouldAutoLink: this.options.shouldAutoLink
306
+ })
307
+ ), t;
308
+ }
309
+ });
102
310
  export {
103
- C as defaultWindow,
104
- q as getLifeCycleTarget,
105
- W as isClient,
106
- A as isObject,
107
- M as noop,
108
- x as notNullish,
109
- p as toArray,
110
- g as tryOnScopeDispose,
111
- z as tryOnUnmounted,
112
- d as unrefElement,
113
- U as useEventListener,
114
- V as useIntersectionObserver,
115
- D as useMounted,
116
- N as useSupported,
117
- S as watchImmediate
311
+ X as Link,
312
+ p as isAllowedUri
118
313
  };