@quoreadmin/ui 1.9.1 → 1.9.3
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.
- package/dist/index.css +1 -1
- package/dist/index104.js +2 -2
- package/dist/index110.js +1 -1
- package/dist/index114.js +2 -2
- package/dist/index118.js +3 -3
- package/dist/index132.js +1 -1
- package/dist/index134.js +2 -2
- package/dist/index143.js +338 -329
- package/dist/index145.js +1 -1
- package/dist/index147.js +6 -6
- package/dist/index153.js +156 -153
- package/dist/{index157.js → index158.js} +1 -1
- package/dist/{index160.js → index161.js} +1 -1
- package/dist/{index164.js → index165.js} +9 -9
- package/dist/index168.js +111 -492
- package/dist/index169.js +471 -5498
- package/dist/index170.js +5511 -80
- package/dist/index171.js +86 -856
- package/dist/index172.js +844 -21
- package/dist/index173.js +23 -265
- package/dist/index174.js +256 -126
- package/dist/index175.js +146 -1195
- package/dist/index176.js +1139 -712
- package/dist/index177.js +704 -1240
- package/dist/index178.js +1280 -248
- package/dist/index179.js +266 -96
- package/dist/index180.js +106 -2
- package/dist/index181.js +2 -1376
- package/dist/index182.js +1378 -0
- package/dist/index184.js +12 -12
- package/dist/index185.js +10 -10
- package/dist/index186.js +12 -12
- package/dist/index187.js +14 -21
- package/dist/index188.js +23 -757
- package/dist/index189.js +759 -1144
- package/dist/index190.js +1144 -1234
- package/dist/index191.js +1205 -11248
- package/dist/index192.js +11277 -36
- package/dist/index193.js +36 -44
- package/dist/index194.js +42 -1188
- package/dist/index195.js +1230 -0
- package/dist/index197.js +5830 -99
- package/dist/index198.js +188 -16
- package/dist/index199.js +25 -8
- package/dist/index200.js +16 -76
- package/dist/index201.js +74 -249
- package/dist/index202.js +229 -13660
- package/dist/index203.js +13684 -27
- package/dist/index204.js +26 -62
- package/dist/index205.js +40 -215
- package/dist/index206.js +206 -279
- package/dist/index207.js +281 -265
- package/dist/index208.js +287 -80
- package/dist/index209.js +29 -403
- package/dist/index210.js +116 -22
- package/dist/index211.js +32 -29
- package/dist/index212.js +26 -116
- package/dist/index213.js +31 -31
- package/dist/index214.js +51 -26
- package/dist/index215.js +41 -34
- package/dist/index216.js +3 -50
- package/dist/index217.js +9 -43
- package/dist/index218.js +18 -3
- package/dist/index219.js +9 -8
- package/dist/index220.js +10 -19
- package/dist/index221.js +39 -10
- package/dist/index222.js +21 -10
- package/dist/index223.js +84 -35
- package/dist/index224.js +407 -21
- package/dist/index225.js +19 -124
- package/dist/index226.js +158 -35
- package/dist/index227.js +227 -79
- package/dist/index228.js +36 -19
- package/dist/index229.js +10 -20
- package/dist/index230.js +126 -19
- package/dist/index231.js +34 -16
- package/dist/index232.js +80 -20
- package/dist/index233.js +19 -160
- package/dist/index234.js +11 -11
- package/dist/index235.js +13 -15
- package/dist/index236.js +19 -198
- package/dist/index237.js +19 -69
- package/dist/index238.js +159 -32
- package/dist/index239.js +19 -39
- package/dist/index240.js +12 -12
- package/dist/index241.js +198 -21
- package/dist/index242.js +69 -19
- package/dist/index243.js +34 -836
- package/dist/index244.js +24 -686
- package/dist/index245.js +22 -176
- package/dist/index246.js +6 -6
- package/dist/index247.js +7 -7
- package/dist/index248.js +836 -20
- package/dist/index249.js +702 -3
- package/dist/index250.js +172 -183
- package/dist/index251.js +21 -132
- package/dist/index252.js +20 -1223
- package/dist/index253.js +9 -9
- package/dist/index254.js +3 -22
- package/dist/index255.js +186 -21
- package/dist/index256.js +132 -28
- package/dist/index257.js +1223 -20
- package/dist/index258.js +13 -13
- package/dist/index259.js +22 -2
- package/dist/index260.js +22 -2
- package/dist/index261.js +28 -160
- package/dist/index262.js +20 -228
- package/dist/index263.js +19 -36
- package/dist/index264.js +2 -10
- package/dist/index265.js +2 -3636
- package/dist/index266.js +3620 -39
- package/dist/index267.js +30 -52
- package/dist/index268.js +47 -22
- package/dist/index269.js +25 -188
- package/dist/index270.js +213 -8
- package/dist/index271.js +9 -56
- package/dist/index272.js +41 -45
- package/dist/index273.js +46 -39
- package/dist/index274.js +36 -57
- package/dist/index275.js +41 -692
- package/dist/index276.js +707 -23
- package/dist/index277.js +25 -47
- package/dist/index278.js +63 -10
- package/dist/index279.js +10 -704
- package/dist/index280.js +655 -770
- package/dist/index281.js +801 -234
- package/dist/index282.js +3 -8
- package/dist/index283.js +24 -135
- package/dist/index284.js +232 -62
- package/dist/index285.js +8 -3
- package/dist/index286.js +135 -24
- package/dist/index287.js +73 -252
- package/dist/index288.js +2 -6
- package/dist/index289.js +73 -134
- package/dist/index290.js +52 -71
- package/dist/index291.js +25 -86
- package/dist/index292.js +21 -28
- package/dist/index293.js +20 -14
- package/dist/index294.js +16 -75
- package/dist/index295.js +17 -4
- package/dist/index296.js +23 -2
- package/dist/index297.js +1531 -80
- package/dist/index298.js +386 -53
- package/dist/index299.js +2729 -4
- package/dist/index300.js +85 -4
- package/dist/index301.js +3761 -148
- package/dist/index302.js +57 -60
- package/dist/index303.js +78 -74
- package/dist/index304.js +22 -2
- package/dist/index305.js +910 -54
- package/dist/index306.js +21 -53
- package/dist/index307.js +12 -18
- package/dist/index308.js +11 -13
- package/dist/index309.js +68 -21
- package/dist/index310.js +17 -14
- package/dist/index311.js +16 -14
- package/dist/index312.js +22 -23
- package/dist/index313.js +21 -78
- package/dist/index314.js +63 -22
- package/dist/index315.js +14 -934
- package/dist/index316.js +83 -21
- package/dist/index317.js +202 -20
- package/dist/index318.js +246 -20
- package/dist/index319.js +260 -67
- package/dist/index320.js +6 -19
- package/dist/index321.js +139 -18
- package/dist/index322.js +72 -21
- package/dist/index323.js +85 -20
- package/dist/index324.js +29 -63
- package/dist/index325.js +13 -1531
- package/dist/index326.js +67 -378
- package/dist/index327.js +3 -2730
- package/dist/index328.js +2 -86
- package/dist/index329.js +80 -3789
- package/dist/index330.js +51 -58
- package/dist/index331.js +6 -15
- package/dist/index332.js +4 -83
- package/dist/index333.js +165 -188
- package/dist/index334.js +56 -239
- package/dist/index335.js +75 -9
- package/dist/index336.js +8 -12
- package/dist/index337.js +12 -54
- package/dist/index338.js +52 -9
- package/dist/index339.js +11 -13
- package/dist/index340.js +9 -53
- package/dist/index341.js +55 -49
- package/dist/index342.js +49 -28
- package/dist/index343.js +31 -2
- package/dist/index344.js +2 -5
- package/dist/index345.js +5 -2
- package/dist/index346.js +2 -23
- package/dist/index347.js +21 -39
- package/dist/index348.js +41 -2
- package/dist/index349.js +2 -11
- package/dist/index350.js +11 -20
- package/dist/index351.js +20 -10
- package/dist/index352.js +9 -9
- package/dist/index353.js +9 -16
- package/dist/index354.js +17 -2
- package/dist/index355.js +2 -9
- package/dist/index356.js +9 -10
- package/dist/index357.js +10 -14
- package/dist/index358.js +14 -19
- package/dist/index359.js +36 -56
- package/dist/index360.js +19 -28
- package/dist/index361.js +19 -6
- package/dist/index362.js +60 -48
- package/dist/index363.js +37 -7
- package/dist/index364.js +18 -11
- package/dist/index365.js +57 -7
- package/dist/index366.js +29 -28
- package/dist/index367.js +7 -2
- package/dist/index368.js +50 -68
- package/dist/index369.js +6 -166
- package/dist/index370.js +11 -36
- package/dist/index371.js +7 -20
- package/dist/index372.js +28 -20
- package/dist/index373.js +2 -64
- package/dist/index374.js +70 -37
- package/dist/index375.js +164 -28
- package/dist/index376.js +100 -10
- package/dist/index377.js +90 -3
- package/dist/index378.js +17 -4
- package/dist/index379.js +97 -12
- package/dist/index380.js +31 -7
- package/dist/index381.js +10 -11
- package/dist/index382.js +3 -4
- package/dist/index383.js +4 -33
- package/dist/index384.js +12 -30
- package/dist/index385.js +7 -28
- package/dist/index386.js +12 -61
- package/dist/index387.js +5 -17
- package/dist/index388.js +33 -101
- package/dist/index389.js +31 -91
- package/dist/index390.js +27 -97
- package/dist/index391.js +61 -3
- package/dist/index392.js +3 -2
- package/dist/index393.js +2 -2
- package/dist/index394.js +2 -17
- package/dist/index395.js +15 -11
- package/dist/index396.js +13 -6
- package/dist/index397.js +6 -32
- package/dist/index398.js +34 -0
- package/dist/index44.js +288 -261
- package/dist/index49.js +4 -3
- package/dist/index50.js +2 -2
- package/dist/index51.js +1 -1
- package/dist/index52.js +1 -1
- package/dist/index53.js +1 -1
- package/dist/index54.js +1 -1
- package/dist/index56.js +2 -2
- package/dist/index58.js +1 -1
- package/dist/index60.js +5 -5
- package/dist/index61.js +1 -1
- package/dist/index73.js +2 -2
- package/dist/index77.js +1 -1
- package/dist/index82.js +1 -1
- package/dist/index87.js +1 -1
- package/dist/index89.js +3 -3
- package/dist/index91.js +2 -2
- package/dist/index97.js +2 -2
- package/dist/src/components/grid/grid.stories.d.ts +28 -22
- package/dist/src/components/list/list.stories.d.ts +14 -11
- package/dist/src/components/modal/modal.stories.d.ts +14 -11
- package/dist/src/components/select/select.d.ts +14 -12
- package/dist/src/components/select/select.stories.d.ts +42 -33
- package/package.json +2 -2
- package/dist/index167.js +0 -116
- package/dist/index183.js +0 -20
- package/dist/index196.js +0 -5940
- package/dist/src/components/room-details-popover/room-details-popover.d.ts +0 -2018
- /package/dist/{index155.js → index156.js} +0 -0
- /package/dist/{index162.js → index163.js} +0 -0
package/dist/index280.js
CHANGED
|
@@ -1,822 +1,707 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
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
|
-
|
|
178
|
-
|
|
179
|
-
|
|
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
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
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
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
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
|
-
|
|
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
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
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
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
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
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
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
|
|
246
|
-
|
|
247
|
-
|
|
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
|
|
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
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
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
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
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
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
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
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
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
|
-
|
|
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
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
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
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
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
|
-
|
|
399
|
-
|
|
353
|
+
Zt.prototype = {
|
|
354
|
+
o: J,
|
|
400
355
|
/**
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
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
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
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
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
return 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
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
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
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
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
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
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
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
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
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
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
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
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
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
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
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
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
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
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
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
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
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
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
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
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
|
-
|
|
516
|
-
|
|
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
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
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
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
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
|
-
|
|
602
|
-
|
|
603
|
-
|
|
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
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
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
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
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
|
-
|
|
788
|
-
|
|
789
|
-
|
|
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
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
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
|
-
|
|
814
|
-
|
|
815
|
-
p as
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
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
|
};
|