@splunk/react-ui 4.42.0 → 4.43.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.
- package/CHANGELOG.md +25 -0
- package/Code.js +611 -426
- package/ComboBox.js +25 -32
- package/Date.js +21 -26
- package/Dropdown.js +1 -1
- package/JSONTree.js +30 -24
- package/MIGRATION.mdx +48 -53
- package/Menu.js +12 -8
- package/Multiselect.js +1 -1
- package/Number.js +418 -392
- package/Paginator.js +269 -251
- package/Popover.js +412 -345
- package/RadioList.js +44 -43
- package/ResultsMenu.d.ts +2 -0
- package/Search.js +56 -65
- package/Select.js +1 -1
- package/TabBar.js +4 -0
- package/Table.js +146 -146
- package/TransitionOpen.js +16 -14
- package/Tree.js +20 -14
- package/package.json +6 -6
- package/types/src/Button/Button.d.ts +1 -0
- package/types/src/Code/Code.d.ts +1 -1
- package/types/src/ComboBox/ComboBox.d.ts +6 -3
- package/types/src/Date/Date.d.ts +0 -1
- package/types/src/Dropdown/docs/examples/TooltipButtonToggle.d.ts +2 -0
- package/types/src/Multiselect/Multiselect.d.ts +2 -0
- package/types/src/Number/Number.d.ts +3 -10
- package/types/src/Number/utils.d.ts +29 -0
- package/types/src/Paginator/Paginator.d.ts +15 -2
- package/types/src/Paginator/docs/examples/CustomPages.d.ts +2 -0
- package/types/src/Popover/Popover.d.ts +17 -8
- package/types/src/Popover/PopoverMenuContext.d.ts +6 -0
- package/types/src/Popover/PopoverProvider.d.ts +23 -0
- package/types/src/Popover/index.d.ts +2 -1
- package/types/src/RadioList/RadioList.d.ts +1 -1
- package/types/src/Select/SelectBase.d.ts +1 -1
- package/types/src/Select/docs/examples/Appearance.d.ts +1 -11
- package/types/src/Select/docs/examples/Basic.d.ts +1 -9
- package/types/src/Select/docs/examples/Children.d.ts +1 -9
- package/types/src/Select/docs/examples/Descriptions.d.ts +1 -9
- package/types/src/Select/docs/examples/Fetching.d.ts +1 -22
- package/types/src/Select/docs/examples/Filter.d.ts +1 -9
- package/types/src/Select/docs/examples/Headings.d.ts +1 -9
- package/types/src/Select/docs/examples/LoadMoreOnScrollBottom.d.ts +1 -24
- package/types/src/Select/docs/examples/Prefix.d.ts +1 -9
- package/types/src/Select/docs/examples/Truncate.d.ts +1 -9
- package/types/src/Table/docs/examples/Click.d.ts +2 -16
- package/types/src/Table/docs/examples/ClickRows.d.ts +2 -16
- package/types/src/Table/docs/examples/Complex.d.ts +2 -50
- package/types/src/Table/docs/examples/FilterColumnValues.d.ts +1 -13
- package/types/src/Table/docs/examples/HeadDropdownCell.d.ts +1 -17
- package/types/src/Table/docs/examples/ReorderColumns.d.ts +2 -21
- package/types/src/Table/docs/examples/ReorderRows.d.ts +2 -21
- package/types/src/Table/docs/examples/Resizable.d.ts +2 -23
- package/types/src/Table/docs/examples/ResizableFill.d.ts +2 -23
- package/types/src/Table/docs/examples/RowActions.d.ts +2 -39
- package/types/src/Table/docs/examples/Selectable.d.ts +2 -18
- package/types/src/Table/docs/examples/SortableColumns.d.ts +1 -11
- package/useResizeObserver.js +122 -90
- package/types/src/Dropdown/docs/examples/OtherToggles.d.ts +0 -2
- package/types/src/Popover/PopoverContext.d.ts +0 -6
package/Code.js
CHANGED
|
@@ -1,13 +1,106 @@
|
|
|
1
1
|
/******/ (() => {
|
|
2
2
|
// webpackBootstrap
|
|
3
3
|
/******/ var e = {
|
|
4
|
+
/***/ 6283:
|
|
5
|
+
/***/ (e, t, n) => {
|
|
6
|
+
"use strict";
|
|
7
|
+
// EXPORTS
|
|
8
|
+
n.d(t, {
|
|
9
|
+
default: () => /* reexport */ p
|
|
10
|
+
});
|
|
11
|
+
// EXTERNAL MODULE: external "react"
|
|
12
|
+
var r = n(9497);
|
|
13
|
+
// CONCATENATED MODULE: ./src/useResizeObserver/useResizeObserver.ts
|
|
14
|
+
function a(e, t) {
|
|
15
|
+
return u(e) || l(e, t) || i(e, t) || s();
|
|
16
|
+
}
|
|
17
|
+
function s() {
|
|
18
|
+
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
19
|
+
}
|
|
20
|
+
function i(e, t) {
|
|
21
|
+
if (e) {
|
|
22
|
+
if ("string" == typeof e) return o(e, t);
|
|
23
|
+
var n = {}.toString.call(e).slice(8, -1);
|
|
24
|
+
return "Object" === n && e.constructor && (n = e.constructor.name), "Map" === n || "Set" === n ? Array.from(e) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? o(e, t) : void 0;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
function o(e, t) {
|
|
28
|
+
(null == t || t > e.length) && (t = e.length);
|
|
29
|
+
for (var n = 0, r = Array(t); n < t; n++) {
|
|
30
|
+
r[n] = e[n];
|
|
31
|
+
}
|
|
32
|
+
return r;
|
|
33
|
+
}
|
|
34
|
+
function l(e, t) {
|
|
35
|
+
var n = null == e ? null : "undefined" != typeof Symbol && e[Symbol.iterator] || e["@@iterator"];
|
|
36
|
+
if (null != n) {
|
|
37
|
+
var r, a, s, i, o = [], l = !0, u = !1;
|
|
38
|
+
try {
|
|
39
|
+
if (s = (n = n.call(e)).next, 0 === t) {
|
|
40
|
+
if (Object(n) !== n) return;
|
|
41
|
+
l = !1;
|
|
42
|
+
} else for (;!(l = (r = s.call(n)).done) && (o.push(r.value), o.length !== t); l = !0) {
|
|
43
|
+
}
|
|
44
|
+
} catch (e) {
|
|
45
|
+
u = !0, a = e;
|
|
46
|
+
} finally {
|
|
47
|
+
try {
|
|
48
|
+
if (!l && null != n["return"] && (i = n["return"](), Object(i) !== i)) return;
|
|
49
|
+
} finally {
|
|
50
|
+
if (u) throw a;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return o;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
function u(e) {
|
|
57
|
+
if (Array.isArray(e)) return e;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Watches a React ref element for changes in size.
|
|
61
|
+
*
|
|
62
|
+
* @param ref - The React ref to observe size changes on
|
|
63
|
+
*/ var c = function e(t) {
|
|
64
|
+
var n = (0, r.useState)({
|
|
65
|
+
width: 0,
|
|
66
|
+
height: 0
|
|
67
|
+
}), s = a(n, 2), i = s[0], o = s[1];
|
|
68
|
+
(0, r.useEffect)((function() {
|
|
69
|
+
var e = t.current;
|
|
70
|
+
if (typeof window !== "undefined" && window.ResizeObserver) {
|
|
71
|
+
var n = new ResizeObserver((function(e) {
|
|
72
|
+
if (e[0]) {
|
|
73
|
+
var n, r;
|
|
74
|
+
o({
|
|
75
|
+
width: (t === null || t === void 0 ? void 0 : (n = t.current) === null || n === void 0 ? void 0 : n.getBoundingClientRect().width) || 0,
|
|
76
|
+
height: (t === null || t === void 0 ? void 0 : (r = t.current) === null || r === void 0 ? void 0 : r.getBoundingClientRect().height) || 0
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
}));
|
|
80
|
+
if (e) {
|
|
81
|
+
n.observe(e);
|
|
82
|
+
}
|
|
83
|
+
return function() {
|
|
84
|
+
if (e) {
|
|
85
|
+
n.unobserve(e);
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
}
|
|
89
|
+
// Return a no-op function to satisfy consistent-return rule
|
|
90
|
+
return function() {};
|
|
91
|
+
}), [ t ]);
|
|
92
|
+
return i;
|
|
93
|
+
};
|
|
94
|
+
/* harmony default export */ const p = c;
|
|
95
|
+
} // CONCATENATED MODULE: ./src/useResizeObserver/index.ts
|
|
96
|
+
/***/ ,
|
|
4
97
|
/***/ 74:
|
|
5
98
|
/***/ e => {
|
|
6
99
|
(function() {
|
|
7
100
|
var t = undefined;
|
|
8
|
-
var
|
|
101
|
+
var n = undefined;
|
|
9
102
|
/// <reference lib="WebWorker"/>
|
|
10
|
-
var
|
|
103
|
+
var r = typeof t !== "undefined" ? t : typeof WorkerGlobalScope !== "undefined" && self instanceof WorkerGlobalScope ? self : {};
|
|
11
104
|
/**
|
|
12
105
|
* Prism: Lightweight, robust, elegant syntax highlighting
|
|
13
106
|
*
|
|
@@ -15,12 +108,12 @@
|
|
|
15
108
|
* @author Lea Verou <https://lea.verou.me>
|
|
16
109
|
* @namespace
|
|
17
110
|
* @public
|
|
18
|
-
*/ var
|
|
111
|
+
*/ var a = function(e) {
|
|
19
112
|
// Private helper vars
|
|
20
|
-
var
|
|
21
|
-
var
|
|
113
|
+
var n = /(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i;
|
|
114
|
+
var r = 0;
|
|
22
115
|
// The grammar object for plaintext
|
|
23
|
-
var
|
|
116
|
+
var a = {};
|
|
24
117
|
var s = {
|
|
25
118
|
/**
|
|
26
119
|
* By default, Prism will attempt to highlight all code elements (by calling {@link Prism.highlightAll}) on the
|
|
@@ -113,7 +206,7 @@
|
|
|
113
206
|
objId: function(e) {
|
|
114
207
|
if (!e["__id"]) {
|
|
115
208
|
Object.defineProperty(e, "__id", {
|
|
116
|
-
value: ++
|
|
209
|
+
value: ++r
|
|
117
210
|
});
|
|
118
211
|
}
|
|
119
212
|
return e["__id"];
|
|
@@ -128,38 +221,38 @@
|
|
|
128
221
|
* @returns {T}
|
|
129
222
|
* @template T
|
|
130
223
|
*/
|
|
131
|
-
clone: function e(t,
|
|
132
|
-
|
|
133
|
-
var n;
|
|
224
|
+
clone: function e(t, n) {
|
|
225
|
+
n = n || {};
|
|
134
226
|
var r;
|
|
227
|
+
var a;
|
|
135
228
|
switch (s.util.type(t)) {
|
|
136
229
|
case "Object":
|
|
137
|
-
|
|
138
|
-
if (a
|
|
139
|
-
return a
|
|
230
|
+
a = s.util.objId(t);
|
|
231
|
+
if (n[a]) {
|
|
232
|
+
return n[a];
|
|
140
233
|
}
|
|
141
|
-
|
|
142
|
-
a
|
|
234
|
+
r = /** @type {Record<string, any>} */ {};
|
|
235
|
+
n[a] = r;
|
|
143
236
|
for (var i in t) {
|
|
144
237
|
if (t.hasOwnProperty(i)) {
|
|
145
|
-
|
|
238
|
+
r[i] = e(t[i], n);
|
|
146
239
|
}
|
|
147
240
|
}
|
|
148
241
|
/** @type {any} */
|
|
149
|
-
return
|
|
242
|
+
return r;
|
|
150
243
|
|
|
151
244
|
case "Array":
|
|
152
|
-
|
|
153
|
-
if (a
|
|
154
|
-
return a
|
|
245
|
+
a = s.util.objId(t);
|
|
246
|
+
if (n[a]) {
|
|
247
|
+
return n[a];
|
|
155
248
|
}
|
|
156
|
-
|
|
157
|
-
a
|
|
158
|
-
/** @type {Array} */ /** @type {any} */ t.forEach((function(t,
|
|
159
|
-
|
|
249
|
+
r = [];
|
|
250
|
+
n[a] = r;
|
|
251
|
+
/** @type {Array} */ /** @type {any} */ t.forEach((function(t, a) {
|
|
252
|
+
r[a] = e(t, n);
|
|
160
253
|
}));
|
|
161
254
|
/** @type {any} */
|
|
162
|
-
return
|
|
255
|
+
return r;
|
|
163
256
|
|
|
164
257
|
default:
|
|
165
258
|
return t;
|
|
@@ -175,7 +268,7 @@
|
|
|
175
268
|
*/
|
|
176
269
|
getLanguage: function(e) {
|
|
177
270
|
while (e) {
|
|
178
|
-
var t =
|
|
271
|
+
var t = n.exec(e.className);
|
|
179
272
|
if (t) {
|
|
180
273
|
return t[1].toLowerCase();
|
|
181
274
|
}
|
|
@@ -193,7 +286,7 @@
|
|
|
193
286
|
setLanguage: function(e, t) {
|
|
194
287
|
// remove all `language-xxxx` classes
|
|
195
288
|
// (this might leave behind a leading space)
|
|
196
|
-
e.className = e.className.replace(RegExp(
|
|
289
|
+
e.className = e.className.replace(RegExp(n, "gi"), "");
|
|
197
290
|
// add the new `language-xxxx` class
|
|
198
291
|
// (using `classList` will automatically clean up spaces for us)
|
|
199
292
|
e.classList.add("language-" + t);
|
|
@@ -218,18 +311,18 @@
|
|
|
218
311
|
// this will not work for inline scripts
|
|
219
312
|
try {
|
|
220
313
|
throw new Error;
|
|
221
|
-
} catch (
|
|
314
|
+
} catch (r) {
|
|
222
315
|
// Get file src url from stack. Specifically works with the format of stack traces in IE.
|
|
223
316
|
// A stack will look like this:
|
|
224
317
|
// Error
|
|
225
318
|
// at _.util.currentScript (http://localhost/components/prism-core.js:119:5)
|
|
226
319
|
// at Global code (http://localhost/components/prism-core.js:606:1)
|
|
227
|
-
var e = (/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(
|
|
320
|
+
var e = (/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(r.stack) || [])[1];
|
|
228
321
|
if (e) {
|
|
229
322
|
var t = document.getElementsByTagName("script");
|
|
230
|
-
for (var
|
|
231
|
-
if (t[
|
|
232
|
-
return t[
|
|
323
|
+
for (var n in t) {
|
|
324
|
+
if (t[n].src == e) {
|
|
325
|
+
return t[n];
|
|
233
326
|
}
|
|
234
327
|
}
|
|
235
328
|
}
|
|
@@ -255,19 +348,19 @@
|
|
|
255
348
|
* @param {boolean} [defaultActivation=false]
|
|
256
349
|
* @returns {boolean}
|
|
257
350
|
*/
|
|
258
|
-
isActive: function(e, t,
|
|
259
|
-
var
|
|
351
|
+
isActive: function(e, t, n) {
|
|
352
|
+
var r = "no-" + t;
|
|
260
353
|
while (e) {
|
|
261
|
-
var
|
|
262
|
-
if (
|
|
354
|
+
var a = e.classList;
|
|
355
|
+
if (a.contains(t)) {
|
|
263
356
|
return true;
|
|
264
357
|
}
|
|
265
|
-
if (
|
|
358
|
+
if (a.contains(r)) {
|
|
266
359
|
return false;
|
|
267
360
|
}
|
|
268
361
|
e = e.parentElement;
|
|
269
362
|
}
|
|
270
|
-
return !!
|
|
363
|
+
return !!n;
|
|
271
364
|
}
|
|
272
365
|
},
|
|
273
366
|
/**
|
|
@@ -281,10 +374,10 @@
|
|
|
281
374
|
/**
|
|
282
375
|
* The grammar for plain, unformatted text.
|
|
283
376
|
*/
|
|
284
|
-
plain:
|
|
285
|
-
plaintext:
|
|
286
|
-
text:
|
|
287
|
-
txt:
|
|
377
|
+
plain: a,
|
|
378
|
+
plaintext: a,
|
|
379
|
+
text: a,
|
|
380
|
+
txt: a,
|
|
288
381
|
/**
|
|
289
382
|
* Creates a deep copy of the language with the given id and appends the given tokens.
|
|
290
383
|
*
|
|
@@ -314,11 +407,11 @@
|
|
|
314
407
|
* });
|
|
315
408
|
*/
|
|
316
409
|
extend: function(e, t) {
|
|
317
|
-
var
|
|
318
|
-
for (var
|
|
319
|
-
|
|
410
|
+
var n = s.util.clone(s.languages[e]);
|
|
411
|
+
for (var r in t) {
|
|
412
|
+
n[r] = t[r];
|
|
320
413
|
}
|
|
321
|
-
return
|
|
414
|
+
return n;
|
|
322
415
|
},
|
|
323
416
|
/**
|
|
324
417
|
* Inserts tokens _before_ another token in a language definition or any other grammar.
|
|
@@ -395,50 +488,50 @@
|
|
|
395
488
|
* @returns {Grammar} The new grammar object.
|
|
396
489
|
* @public
|
|
397
490
|
*/
|
|
398
|
-
insertBefore: function(e, t,
|
|
399
|
-
|
|
400
|
-
var
|
|
491
|
+
insertBefore: function(e, t, n, r) {
|
|
492
|
+
r = r || /** @type {any} */ s.languages;
|
|
493
|
+
var a = r[e];
|
|
401
494
|
/** @type {Grammar} */ var i = {};
|
|
402
|
-
for (var o in
|
|
403
|
-
if (
|
|
495
|
+
for (var o in a) {
|
|
496
|
+
if (a.hasOwnProperty(o)) {
|
|
404
497
|
if (o == t) {
|
|
405
|
-
for (var l in
|
|
406
|
-
if (
|
|
407
|
-
i[l] =
|
|
498
|
+
for (var l in n) {
|
|
499
|
+
if (n.hasOwnProperty(l)) {
|
|
500
|
+
i[l] = n[l];
|
|
408
501
|
}
|
|
409
502
|
}
|
|
410
503
|
}
|
|
411
504
|
// Do not insert token which also occur in insert. See #1525
|
|
412
|
-
if (!
|
|
413
|
-
i[o] =
|
|
505
|
+
if (!n.hasOwnProperty(o)) {
|
|
506
|
+
i[o] = a[o];
|
|
414
507
|
}
|
|
415
508
|
}
|
|
416
509
|
}
|
|
417
|
-
var u =
|
|
418
|
-
|
|
510
|
+
var u = r[e];
|
|
511
|
+
r[e] = i;
|
|
419
512
|
// Update references in other language definitions
|
|
420
|
-
s.languages.DFS(s.languages, (function(t,
|
|
421
|
-
if (
|
|
513
|
+
s.languages.DFS(s.languages, (function(t, n) {
|
|
514
|
+
if (n === u && t != e) {
|
|
422
515
|
this[t] = i;
|
|
423
516
|
}
|
|
424
517
|
}));
|
|
425
518
|
return i;
|
|
426
519
|
},
|
|
427
520
|
// Traverse a language definition with Depth First Search
|
|
428
|
-
DFS: function e(t,
|
|
429
|
-
|
|
521
|
+
DFS: function e(t, n, r, a) {
|
|
522
|
+
a = a || {};
|
|
430
523
|
var i = s.util.objId;
|
|
431
524
|
for (var o in t) {
|
|
432
525
|
if (t.hasOwnProperty(o)) {
|
|
433
|
-
|
|
526
|
+
n.call(t, o, t[o], r || o);
|
|
434
527
|
var l = t[o];
|
|
435
528
|
var u = s.util.type(l);
|
|
436
|
-
if (u === "Object" && !
|
|
437
|
-
|
|
438
|
-
e(l,
|
|
439
|
-
} else if (u === "Array" && !
|
|
440
|
-
|
|
441
|
-
e(l,
|
|
529
|
+
if (u === "Object" && !a[i(l)]) {
|
|
530
|
+
a[i(l)] = true;
|
|
531
|
+
e(l, n, null, a);
|
|
532
|
+
} else if (u === "Array" && !a[i(l)]) {
|
|
533
|
+
a[i(l)] = true;
|
|
534
|
+
e(l, n, o, a);
|
|
442
535
|
}
|
|
443
536
|
}
|
|
444
537
|
}
|
|
@@ -475,17 +568,17 @@
|
|
|
475
568
|
* @memberof Prism
|
|
476
569
|
* @public
|
|
477
570
|
*/
|
|
478
|
-
highlightAllUnder: function(e, t,
|
|
479
|
-
var
|
|
480
|
-
callback:
|
|
571
|
+
highlightAllUnder: function(e, t, n) {
|
|
572
|
+
var r = {
|
|
573
|
+
callback: n,
|
|
481
574
|
container: e,
|
|
482
575
|
selector: 'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'
|
|
483
576
|
};
|
|
484
|
-
s.hooks.run("before-highlightall",
|
|
485
|
-
|
|
486
|
-
s.hooks.run("before-all-elements-highlight",
|
|
487
|
-
for (var
|
|
488
|
-
s.highlightElement(i, t === true,
|
|
577
|
+
s.hooks.run("before-highlightall", r);
|
|
578
|
+
r.elements = Array.prototype.slice.apply(r.container.querySelectorAll(r.selector));
|
|
579
|
+
s.hooks.run("before-all-elements-highlight", r);
|
|
580
|
+
for (var a = 0, i; i = r.elements[a++]; ) {
|
|
581
|
+
s.highlightElement(i, t === true, r.callback);
|
|
489
582
|
}
|
|
490
583
|
},
|
|
491
584
|
/**
|
|
@@ -516,21 +609,21 @@
|
|
|
516
609
|
* @memberof Prism
|
|
517
610
|
* @public
|
|
518
611
|
*/
|
|
519
|
-
highlightElement: function(t,
|
|
612
|
+
highlightElement: function(t, n, r) {
|
|
520
613
|
// Find language
|
|
521
|
-
var
|
|
522
|
-
var i = s.languages[
|
|
614
|
+
var a = s.util.getLanguage(t);
|
|
615
|
+
var i = s.languages[a];
|
|
523
616
|
// Set language on the element, if not present
|
|
524
|
-
s.util.setLanguage(t,
|
|
617
|
+
s.util.setLanguage(t, a);
|
|
525
618
|
// Set language on the parent, for styling
|
|
526
619
|
var o = t.parentElement;
|
|
527
620
|
if (o && o.nodeName.toLowerCase() === "pre") {
|
|
528
|
-
s.util.setLanguage(o,
|
|
621
|
+
s.util.setLanguage(o, a);
|
|
529
622
|
}
|
|
530
623
|
var l = t.textContent;
|
|
531
624
|
var u = {
|
|
532
625
|
element: t,
|
|
533
|
-
language:
|
|
626
|
+
language: a,
|
|
534
627
|
grammar: i,
|
|
535
628
|
code: l
|
|
536
629
|
};
|
|
@@ -540,7 +633,7 @@
|
|
|
540
633
|
u.element.innerHTML = u.highlightedCode;
|
|
541
634
|
s.hooks.run("after-highlight", u);
|
|
542
635
|
s.hooks.run("complete", u);
|
|
543
|
-
|
|
636
|
+
r && r.call(u.element);
|
|
544
637
|
}
|
|
545
638
|
s.hooks.run("before-sanity-check", u);
|
|
546
639
|
// plugins may change/add the parent/element
|
|
@@ -550,7 +643,7 @@
|
|
|
550
643
|
}
|
|
551
644
|
if (!u.code) {
|
|
552
645
|
s.hooks.run("complete", u);
|
|
553
|
-
|
|
646
|
+
r && r.call(u.element);
|
|
554
647
|
return;
|
|
555
648
|
}
|
|
556
649
|
s.hooks.run("before-highlight", u);
|
|
@@ -558,7 +651,7 @@
|
|
|
558
651
|
c(s.util.encode(u.code));
|
|
559
652
|
return;
|
|
560
653
|
}
|
|
561
|
-
if (
|
|
654
|
+
if (n && e.Worker) {
|
|
562
655
|
var p = new Worker(s.filename);
|
|
563
656
|
p.onmessage = function(e) {
|
|
564
657
|
c(e.data);
|
|
@@ -592,19 +685,19 @@
|
|
|
592
685
|
* @example
|
|
593
686
|
* Prism.highlight('var foo = true;', Prism.languages.javascript, 'javascript');
|
|
594
687
|
*/
|
|
595
|
-
highlight: function(e, t,
|
|
596
|
-
var
|
|
688
|
+
highlight: function(e, t, n) {
|
|
689
|
+
var r = {
|
|
597
690
|
code: e,
|
|
598
691
|
grammar: t,
|
|
599
|
-
language:
|
|
692
|
+
language: n
|
|
600
693
|
};
|
|
601
|
-
s.hooks.run("before-tokenize",
|
|
602
|
-
if (!
|
|
603
|
-
throw new Error('The language "' +
|
|
694
|
+
s.hooks.run("before-tokenize", r);
|
|
695
|
+
if (!r.grammar) {
|
|
696
|
+
throw new Error('The language "' + r.language + '" has no grammar.');
|
|
604
697
|
}
|
|
605
|
-
|
|
606
|
-
s.hooks.run("after-tokenize",
|
|
607
|
-
return i.stringify(s.util.encode(
|
|
698
|
+
r.tokens = s.tokenize(r.code, r.grammar);
|
|
699
|
+
s.hooks.run("after-tokenize", r);
|
|
700
|
+
return i.stringify(s.util.encode(r.tokens), r.language);
|
|
608
701
|
},
|
|
609
702
|
/**
|
|
610
703
|
* This is the heart of Prism, and the most low-level function you can use. It accepts a string of text as input
|
|
@@ -631,17 +724,17 @@
|
|
|
631
724
|
* });
|
|
632
725
|
*/
|
|
633
726
|
tokenize: function(e, t) {
|
|
634
|
-
var
|
|
635
|
-
if (
|
|
636
|
-
for (var
|
|
637
|
-
t[
|
|
727
|
+
var n = t.rest;
|
|
728
|
+
if (n) {
|
|
729
|
+
for (var r in n) {
|
|
730
|
+
t[r] = n[r];
|
|
638
731
|
}
|
|
639
732
|
delete t.rest;
|
|
640
733
|
}
|
|
641
|
-
var
|
|
642
|
-
c(
|
|
643
|
-
l(e,
|
|
644
|
-
return d(
|
|
734
|
+
var a = new u;
|
|
735
|
+
c(a, a.head, e);
|
|
736
|
+
l(e, a, t, a.head, 0);
|
|
737
|
+
return d(a);
|
|
645
738
|
},
|
|
646
739
|
/**
|
|
647
740
|
* @namespace
|
|
@@ -663,9 +756,9 @@
|
|
|
663
756
|
* @public
|
|
664
757
|
*/
|
|
665
758
|
add: function(e, t) {
|
|
666
|
-
var
|
|
667
|
-
|
|
668
|
-
|
|
759
|
+
var n = s.hooks.all;
|
|
760
|
+
n[e] = n[e] || [];
|
|
761
|
+
n[e].push(t);
|
|
669
762
|
},
|
|
670
763
|
/**
|
|
671
764
|
* Runs a hook invoking all registered callbacks with the given environment variables.
|
|
@@ -677,12 +770,12 @@
|
|
|
677
770
|
* @public
|
|
678
771
|
*/
|
|
679
772
|
run: function(e, t) {
|
|
680
|
-
var
|
|
681
|
-
if (!
|
|
773
|
+
var n = s.hooks.all[e];
|
|
774
|
+
if (!n || !n.length) {
|
|
682
775
|
return;
|
|
683
776
|
}
|
|
684
|
-
for (var
|
|
685
|
-
|
|
777
|
+
for (var r = 0, a; a = n[r++]; ) {
|
|
778
|
+
a(t);
|
|
686
779
|
}
|
|
687
780
|
}
|
|
688
781
|
},
|
|
@@ -703,7 +796,7 @@
|
|
|
703
796
|
* @class
|
|
704
797
|
* @global
|
|
705
798
|
* @public
|
|
706
|
-
*/ function i(e, t,
|
|
799
|
+
*/ function i(e, t, n, r) {
|
|
707
800
|
/**
|
|
708
801
|
* The type of the token.
|
|
709
802
|
*
|
|
@@ -728,9 +821,9 @@
|
|
|
728
821
|
* @type {string|string[]}
|
|
729
822
|
* @see GrammarToken
|
|
730
823
|
* @public
|
|
731
|
-
*/ this.alias =
|
|
824
|
+
*/ this.alias = n;
|
|
732
825
|
// Copy of the full string this token was created from
|
|
733
|
-
this.length = (
|
|
826
|
+
this.length = (r || "").length | 0;
|
|
734
827
|
}
|
|
735
828
|
/**
|
|
736
829
|
* A token stream is an array of strings and {@link Token Token} objects.
|
|
@@ -758,39 +851,39 @@
|
|
|
758
851
|
* @returns {string} The HTML representation of the token or token stream.
|
|
759
852
|
* @memberof Token
|
|
760
853
|
* @static
|
|
761
|
-
*/ i.stringify = function e(t,
|
|
854
|
+
*/ i.stringify = function e(t, n) {
|
|
762
855
|
if (typeof t == "string") {
|
|
763
856
|
return t;
|
|
764
857
|
}
|
|
765
858
|
if (Array.isArray(t)) {
|
|
766
|
-
var
|
|
859
|
+
var r = "";
|
|
767
860
|
t.forEach((function(t) {
|
|
768
|
-
|
|
861
|
+
r += e(t, n);
|
|
769
862
|
}));
|
|
770
|
-
return
|
|
863
|
+
return r;
|
|
771
864
|
}
|
|
772
|
-
var
|
|
865
|
+
var a = {
|
|
773
866
|
type: t.type,
|
|
774
|
-
content: e(t.content,
|
|
867
|
+
content: e(t.content, n),
|
|
775
868
|
tag: "span",
|
|
776
869
|
classes: [ "token", t.type ],
|
|
777
870
|
attributes: {},
|
|
778
|
-
language:
|
|
871
|
+
language: n
|
|
779
872
|
};
|
|
780
873
|
var i = t.alias;
|
|
781
874
|
if (i) {
|
|
782
875
|
if (Array.isArray(i)) {
|
|
783
|
-
Array.prototype.push.apply(
|
|
876
|
+
Array.prototype.push.apply(a.classes, i);
|
|
784
877
|
} else {
|
|
785
|
-
|
|
878
|
+
a.classes.push(i);
|
|
786
879
|
}
|
|
787
880
|
}
|
|
788
|
-
s.hooks.run("wrap",
|
|
881
|
+
s.hooks.run("wrap", a);
|
|
789
882
|
var o = "";
|
|
790
|
-
for (var l in
|
|
791
|
-
o += " " + l + '="' + (
|
|
883
|
+
for (var l in a.attributes) {
|
|
884
|
+
o += " " + l + '="' + (a.attributes[l] || "").replace(/"/g, """) + '"';
|
|
792
885
|
}
|
|
793
|
-
return "<" +
|
|
886
|
+
return "<" + a.tag + ' class="' + a.classes.join(" ") + '"' + o + ">" + a.content + "</" + a.tag + ">";
|
|
794
887
|
};
|
|
795
888
|
/**
|
|
796
889
|
* @param {RegExp} pattern
|
|
@@ -798,16 +891,16 @@
|
|
|
798
891
|
* @param {string} text
|
|
799
892
|
* @param {boolean} lookbehind
|
|
800
893
|
* @returns {RegExpExecArray | null}
|
|
801
|
-
*/ function o(e, t,
|
|
894
|
+
*/ function o(e, t, n, r) {
|
|
802
895
|
e.lastIndex = t;
|
|
803
|
-
var
|
|
804
|
-
if (
|
|
896
|
+
var a = e.exec(n);
|
|
897
|
+
if (a && r && a[1]) {
|
|
805
898
|
// change the match to remove the text matched by the Prism lookbehind group
|
|
806
|
-
var s =
|
|
807
|
-
|
|
808
|
-
|
|
899
|
+
var s = a[1].length;
|
|
900
|
+
a.index += s;
|
|
901
|
+
a[0] = a[0].slice(s);
|
|
809
902
|
}
|
|
810
|
-
return
|
|
903
|
+
return a;
|
|
811
904
|
}
|
|
812
905
|
/**
|
|
813
906
|
* @param {string} text
|
|
@@ -822,12 +915,12 @@
|
|
|
822
915
|
* @typedef RematchOptions
|
|
823
916
|
* @property {string} cause
|
|
824
917
|
* @property {number} reach
|
|
825
|
-
*/ function l(e, t,
|
|
826
|
-
for (var d in
|
|
827
|
-
if (!
|
|
918
|
+
*/ function l(e, t, n, r, a, u) {
|
|
919
|
+
for (var d in n) {
|
|
920
|
+
if (!n.hasOwnProperty(d) || !n[d]) {
|
|
828
921
|
continue;
|
|
829
922
|
}
|
|
830
|
-
var g =
|
|
923
|
+
var g = n[d];
|
|
831
924
|
g = Array.isArray(g) ? g : [ g ];
|
|
832
925
|
for (var f = 0; f < g.length; ++f) {
|
|
833
926
|
if (u && u.cause == d + "," + f) {
|
|
@@ -845,19 +938,19 @@
|
|
|
845
938
|
}
|
|
846
939
|
/** @type {RegExp} */ var x = m.pattern || m;
|
|
847
940
|
for (// iterate the token list and keep track of the current token/string position
|
|
848
|
-
var S =
|
|
941
|
+
var S = r.next, A = a; S !== t.tail; A += S.value.length, S = S.next) {
|
|
849
942
|
if (u && A >= u.reach) {
|
|
850
943
|
break;
|
|
851
944
|
}
|
|
852
|
-
var
|
|
945
|
+
var w = S.value;
|
|
853
946
|
if (t.length > e.length) {
|
|
854
947
|
// Something went terribly wrong, ABORT, ABORT!
|
|
855
948
|
return;
|
|
856
949
|
}
|
|
857
|
-
if (
|
|
950
|
+
if (w instanceof i) {
|
|
858
951
|
continue;
|
|
859
952
|
}
|
|
860
|
-
var
|
|
953
|
+
var F = 1;
|
|
861
954
|
// this is the to parameter of removeBetween
|
|
862
955
|
var E;
|
|
863
956
|
if (b) {
|
|
@@ -867,41 +960,41 @@
|
|
|
867
960
|
}
|
|
868
961
|
var _ = E.index;
|
|
869
962
|
var O = E.index + E[0].length;
|
|
870
|
-
var
|
|
963
|
+
var I = A;
|
|
871
964
|
// find the node that contains the match
|
|
872
|
-
|
|
873
|
-
while (_ >=
|
|
965
|
+
I += S.value.length;
|
|
966
|
+
while (_ >= I) {
|
|
874
967
|
S = S.next;
|
|
875
|
-
|
|
968
|
+
I += S.value.length;
|
|
876
969
|
}
|
|
877
970
|
// adjust pos (and p)
|
|
878
|
-
|
|
879
|
-
A =
|
|
971
|
+
I -= S.value.length;
|
|
972
|
+
A = I;
|
|
880
973
|
// the current node is a Token, then the match starts inside another Token, which is invalid
|
|
881
974
|
if (S.value instanceof i) {
|
|
882
975
|
continue;
|
|
883
976
|
}
|
|
884
977
|
// find the last node which is affected by this match
|
|
885
|
-
for (var
|
|
886
|
-
|
|
887
|
-
|
|
978
|
+
for (var T = S; T !== t.tail && (I < O || typeof T.value === "string"); T = T.next) {
|
|
979
|
+
F++;
|
|
980
|
+
I += T.value.length;
|
|
888
981
|
}
|
|
889
|
-
|
|
982
|
+
F--;
|
|
890
983
|
// replace with the new match
|
|
891
|
-
|
|
984
|
+
w = e.slice(A, I);
|
|
892
985
|
E.index -= A;
|
|
893
986
|
} else {
|
|
894
|
-
E = o(x, 0,
|
|
987
|
+
E = o(x, 0, w, v);
|
|
895
988
|
if (!E) {
|
|
896
989
|
continue;
|
|
897
990
|
}
|
|
898
991
|
}
|
|
899
992
|
// eslint-disable-next-line no-redeclare
|
|
900
993
|
var _ = E.index;
|
|
901
|
-
var
|
|
902
|
-
var R =
|
|
903
|
-
var P =
|
|
904
|
-
var N = A +
|
|
994
|
+
var $ = E[0];
|
|
995
|
+
var R = w.slice(0, _);
|
|
996
|
+
var P = w.slice(_ + $.length);
|
|
997
|
+
var N = A + w.length;
|
|
905
998
|
if (u && N > u.reach) {
|
|
906
999
|
u.reach = N;
|
|
907
1000
|
}
|
|
@@ -910,24 +1003,24 @@
|
|
|
910
1003
|
C = c(t, C, R);
|
|
911
1004
|
A += R.length;
|
|
912
1005
|
}
|
|
913
|
-
p(t, C,
|
|
914
|
-
var
|
|
915
|
-
S = c(t, C,
|
|
1006
|
+
p(t, C, F);
|
|
1007
|
+
var j = new i(d, h ? s.tokenize($, h) : $, y, $);
|
|
1008
|
+
S = c(t, C, j);
|
|
916
1009
|
if (P) {
|
|
917
1010
|
c(t, S, P);
|
|
918
1011
|
}
|
|
919
|
-
if (
|
|
1012
|
+
if (F > 1) {
|
|
920
1013
|
// at least one Token object was removed, so we have to do some rematching
|
|
921
1014
|
// this can only happen if the current pattern is greedy
|
|
922
1015
|
/** @type {RematchOptions} */
|
|
923
|
-
var
|
|
1016
|
+
var D = {
|
|
924
1017
|
cause: d + "," + f,
|
|
925
1018
|
reach: N
|
|
926
1019
|
};
|
|
927
|
-
l(e, t,
|
|
1020
|
+
l(e, t, n, S.prev, A, D);
|
|
928
1021
|
// the reach might have been extended because of the rematching
|
|
929
|
-
if (u &&
|
|
930
|
-
u.reach =
|
|
1022
|
+
if (u && D.reach > u.reach) {
|
|
1023
|
+
u.reach = D.reach;
|
|
931
1024
|
}
|
|
932
1025
|
}
|
|
933
1026
|
}
|
|
@@ -970,18 +1063,18 @@
|
|
|
970
1063
|
* @param {T} value
|
|
971
1064
|
* @returns {LinkedListNode<T>} The added node.
|
|
972
1065
|
* @template T
|
|
973
|
-
*/ function c(e, t,
|
|
1066
|
+
*/ function c(e, t, n) {
|
|
974
1067
|
// assumes that node != list.tail && values.length >= 0
|
|
975
|
-
var
|
|
976
|
-
var
|
|
977
|
-
value:
|
|
1068
|
+
var r = t.next;
|
|
1069
|
+
var a = {
|
|
1070
|
+
value: n,
|
|
978
1071
|
prev: t,
|
|
979
|
-
next:
|
|
1072
|
+
next: r
|
|
980
1073
|
};
|
|
981
|
-
t.next =
|
|
982
|
-
|
|
1074
|
+
t.next = a;
|
|
1075
|
+
r.prev = a;
|
|
983
1076
|
e.length++;
|
|
984
|
-
return
|
|
1077
|
+
return a;
|
|
985
1078
|
}
|
|
986
1079
|
/**
|
|
987
1080
|
* Removes `count` nodes after the given node. The given node will not be removed.
|
|
@@ -990,14 +1083,14 @@
|
|
|
990
1083
|
* @param {LinkedListNode<T>} node
|
|
991
1084
|
* @param {number} count
|
|
992
1085
|
* @template T
|
|
993
|
-
*/ function p(e, t,
|
|
994
|
-
var
|
|
995
|
-
for (var
|
|
996
|
-
|
|
1086
|
+
*/ function p(e, t, n) {
|
|
1087
|
+
var r = t.next;
|
|
1088
|
+
for (var a = 0; a < n && r !== e.tail; a++) {
|
|
1089
|
+
r = r.next;
|
|
997
1090
|
}
|
|
998
|
-
t.next =
|
|
999
|
-
|
|
1000
|
-
e.length -=
|
|
1091
|
+
t.next = r;
|
|
1092
|
+
r.prev = t;
|
|
1093
|
+
e.length -= a;
|
|
1001
1094
|
}
|
|
1002
1095
|
/**
|
|
1003
1096
|
* @param {LinkedList<T>} list
|
|
@@ -1005,10 +1098,10 @@
|
|
|
1005
1098
|
* @template T
|
|
1006
1099
|
*/ function d(e) {
|
|
1007
1100
|
var t = [];
|
|
1008
|
-
var
|
|
1009
|
-
while (
|
|
1010
|
-
t.push(
|
|
1011
|
-
|
|
1101
|
+
var n = e.head.next;
|
|
1102
|
+
while (n !== e.tail) {
|
|
1103
|
+
t.push(n.value);
|
|
1104
|
+
n = n.next;
|
|
1012
1105
|
}
|
|
1013
1106
|
return t;
|
|
1014
1107
|
}
|
|
@@ -1020,11 +1113,11 @@
|
|
|
1020
1113
|
if (!s.disableWorkerMessageHandler) {
|
|
1021
1114
|
// In worker
|
|
1022
1115
|
e.addEventListener("message", (function(t) {
|
|
1023
|
-
var
|
|
1024
|
-
var
|
|
1025
|
-
var
|
|
1026
|
-
var i =
|
|
1027
|
-
e.postMessage(s.highlight(
|
|
1116
|
+
var n = JSON.parse(t.data);
|
|
1117
|
+
var r = n.language;
|
|
1118
|
+
var a = n.code;
|
|
1119
|
+
var i = n.immediateClose;
|
|
1120
|
+
e.postMessage(s.highlight(a, s.languages[r], r));
|
|
1028
1121
|
if (i) {
|
|
1029
1122
|
e.close();
|
|
1030
1123
|
}
|
|
@@ -1064,13 +1157,13 @@
|
|
|
1064
1157
|
}
|
|
1065
1158
|
}
|
|
1066
1159
|
return s;
|
|
1067
|
-
}(
|
|
1160
|
+
}(r);
|
|
1068
1161
|
if (true && e.exports) {
|
|
1069
|
-
e.exports =
|
|
1162
|
+
e.exports = a;
|
|
1070
1163
|
}
|
|
1071
1164
|
// hack for components to work correctly in node.js
|
|
1072
|
-
if (typeof
|
|
1073
|
-
|
|
1165
|
+
if (typeof n !== "undefined") {
|
|
1166
|
+
n.Prism = a;
|
|
1074
1167
|
}
|
|
1075
1168
|
// some additional documentation/types
|
|
1076
1169
|
/**
|
|
@@ -1117,7 +1210,7 @@
|
|
|
1117
1210
|
* @public
|
|
1118
1211
|
*/
|
|
1119
1212
|
// https://www.json.org/json-en.html
|
|
1120
|
-
|
|
1213
|
+
a.languages.json = {
|
|
1121
1214
|
property: {
|
|
1122
1215
|
pattern: /(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,
|
|
1123
1216
|
lookbehind: true,
|
|
@@ -1141,8 +1234,8 @@
|
|
|
1141
1234
|
alias: "keyword"
|
|
1142
1235
|
}
|
|
1143
1236
|
};
|
|
1144
|
-
|
|
1145
|
-
|
|
1237
|
+
a.languages.webmanifest = a.languages.json;
|
|
1238
|
+
a.languages.markup = {
|
|
1146
1239
|
comment: {
|
|
1147
1240
|
pattern: /<!--(?:(?!<!--)[\s\S])*?-->/,
|
|
1148
1241
|
greedy: true
|
|
@@ -1213,15 +1306,15 @@
|
|
|
1213
1306
|
alias: "named-entity"
|
|
1214
1307
|
}, /&#x?[\da-f]{1,8};/i ]
|
|
1215
1308
|
};
|
|
1216
|
-
|
|
1217
|
-
|
|
1309
|
+
a.languages.markup["tag"].inside["attr-value"].inside["entity"] = a.languages.markup["entity"];
|
|
1310
|
+
a.languages.markup["doctype"].inside["internal-subset"].inside = a.languages.markup;
|
|
1218
1311
|
// Plugin to make entity title show the real entity, idea by Roman Komarov
|
|
1219
|
-
|
|
1312
|
+
a.hooks.add("wrap", (function(e) {
|
|
1220
1313
|
if (e.type === "entity") {
|
|
1221
1314
|
e.attributes["title"] = e.content.replace(/&/, "&");
|
|
1222
1315
|
}
|
|
1223
1316
|
}));
|
|
1224
|
-
Object.defineProperty(
|
|
1317
|
+
Object.defineProperty(a.languages.markup.tag, "addInlined", {
|
|
1225
1318
|
/**
|
|
1226
1319
|
* Adds an inlined language to markup.
|
|
1227
1320
|
*
|
|
@@ -1233,23 +1326,23 @@
|
|
|
1233
1326
|
* @example
|
|
1234
1327
|
* addInlined('style', 'css');
|
|
1235
1328
|
*/
|
|
1236
|
-
value: function e(t,
|
|
1237
|
-
var
|
|
1238
|
-
|
|
1329
|
+
value: function e(t, n) {
|
|
1330
|
+
var r = {};
|
|
1331
|
+
r["language-" + n] = {
|
|
1239
1332
|
pattern: /(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,
|
|
1240
1333
|
lookbehind: true,
|
|
1241
|
-
inside:
|
|
1334
|
+
inside: a.languages[n]
|
|
1242
1335
|
};
|
|
1243
|
-
|
|
1336
|
+
r["cdata"] = /^<!\[CDATA\[|\]\]>$/i;
|
|
1244
1337
|
var s = {
|
|
1245
1338
|
"included-cdata": {
|
|
1246
1339
|
pattern: /<!\[CDATA\[[\s\S]*?\]\]>/i,
|
|
1247
|
-
inside:
|
|
1340
|
+
inside: r
|
|
1248
1341
|
}
|
|
1249
1342
|
};
|
|
1250
|
-
s["language-" +
|
|
1343
|
+
s["language-" + n] = {
|
|
1251
1344
|
pattern: /[\s\S]+/,
|
|
1252
|
-
inside:
|
|
1345
|
+
inside: a.languages[n]
|
|
1253
1346
|
};
|
|
1254
1347
|
var i = {};
|
|
1255
1348
|
i[t] = {
|
|
@@ -1260,10 +1353,10 @@
|
|
|
1260
1353
|
greedy: true,
|
|
1261
1354
|
inside: s
|
|
1262
1355
|
};
|
|
1263
|
-
|
|
1356
|
+
a.languages.insertBefore("markup", "cdata", i);
|
|
1264
1357
|
}
|
|
1265
1358
|
});
|
|
1266
|
-
Object.defineProperty(
|
|
1359
|
+
Object.defineProperty(a.languages.markup.tag, "addAttribute", {
|
|
1267
1360
|
/**
|
|
1268
1361
|
* Adds an pattern to highlight languages embedded in HTML attributes.
|
|
1269
1362
|
*
|
|
@@ -1276,7 +1369,7 @@
|
|
|
1276
1369
|
* addAttribute('style', 'css');
|
|
1277
1370
|
*/
|
|
1278
1371
|
value: function(e, t) {
|
|
1279
|
-
|
|
1372
|
+
a.languages.markup.tag.inside["special-attr"].push({
|
|
1280
1373
|
pattern: RegExp(/(^|["'\s])/.source + "(?:" + e + ")" + /\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source, "i"),
|
|
1281
1374
|
lookbehind: true,
|
|
1282
1375
|
inside: {
|
|
@@ -1288,7 +1381,7 @@
|
|
|
1288
1381
|
pattern: /(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,
|
|
1289
1382
|
lookbehind: true,
|
|
1290
1383
|
alias: [ t, "language-" + t ],
|
|
1291
|
-
inside:
|
|
1384
|
+
inside: a.languages[t]
|
|
1292
1385
|
},
|
|
1293
1386
|
punctuation: [ {
|
|
1294
1387
|
pattern: /^=/,
|
|
@@ -1300,14 +1393,14 @@
|
|
|
1300
1393
|
});
|
|
1301
1394
|
}
|
|
1302
1395
|
});
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1396
|
+
a.languages.html = a.languages.markup;
|
|
1397
|
+
a.languages.mathml = a.languages.markup;
|
|
1398
|
+
a.languages.svg = a.languages.markup;
|
|
1399
|
+
a.languages.xml = a.languages.extend("markup", {});
|
|
1400
|
+
a.languages.ssml = a.languages.xml;
|
|
1401
|
+
a.languages.atom = a.languages.xml;
|
|
1402
|
+
a.languages.rss = a.languages.xml;
|
|
1403
|
+
a.languages.clike = {
|
|
1311
1404
|
comment: [ {
|
|
1312
1405
|
pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,
|
|
1313
1406
|
lookbehind: true,
|
|
@@ -1335,8 +1428,8 @@
|
|
|
1335
1428
|
operator: /[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,
|
|
1336
1429
|
punctuation: /[{}[\];(),.:]/
|
|
1337
1430
|
};
|
|
1338
|
-
|
|
1339
|
-
"class-name": [
|
|
1431
|
+
a.languages.javascript = a.languages.extend("clike", {
|
|
1432
|
+
"class-name": [ a.languages.clike["class-name"], {
|
|
1340
1433
|
pattern: /(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,
|
|
1341
1434
|
lookbehind: true
|
|
1342
1435
|
} ],
|
|
@@ -1367,8 +1460,8 @@
|
|
|
1367
1460
|
},
|
|
1368
1461
|
operator: /--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/
|
|
1369
1462
|
});
|
|
1370
|
-
|
|
1371
|
-
|
|
1463
|
+
a.languages.javascript["class-name"][0].pattern = /(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/;
|
|
1464
|
+
a.languages.insertBefore("javascript", "keyword", {
|
|
1372
1465
|
regex: {
|
|
1373
1466
|
pattern: RegExp(
|
|
1374
1467
|
// lookbehind
|
|
@@ -1390,7 +1483,7 @@
|
|
|
1390
1483
|
pattern: /^(\/)[\s\S]+(?=\/[a-z]*$)/,
|
|
1391
1484
|
lookbehind: true,
|
|
1392
1485
|
alias: "language-regex",
|
|
1393
|
-
inside:
|
|
1486
|
+
inside: a.languages.regex
|
|
1394
1487
|
},
|
|
1395
1488
|
"regex-delimiter": /^\/|\/$/,
|
|
1396
1489
|
"regex-flags": /^[a-z]+$/
|
|
@@ -1404,23 +1497,23 @@
|
|
|
1404
1497
|
parameter: [ {
|
|
1405
1498
|
pattern: /(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,
|
|
1406
1499
|
lookbehind: true,
|
|
1407
|
-
inside:
|
|
1500
|
+
inside: a.languages.javascript
|
|
1408
1501
|
}, {
|
|
1409
1502
|
pattern: /(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,
|
|
1410
1503
|
lookbehind: true,
|
|
1411
|
-
inside:
|
|
1504
|
+
inside: a.languages.javascript
|
|
1412
1505
|
}, {
|
|
1413
1506
|
pattern: /(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,
|
|
1414
1507
|
lookbehind: true,
|
|
1415
|
-
inside:
|
|
1508
|
+
inside: a.languages.javascript
|
|
1416
1509
|
}, {
|
|
1417
1510
|
pattern: /((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,
|
|
1418
1511
|
lookbehind: true,
|
|
1419
|
-
inside:
|
|
1512
|
+
inside: a.languages.javascript
|
|
1420
1513
|
} ],
|
|
1421
1514
|
constant: /\b[A-Z](?:[A-Z_]|\dx?)*\b/
|
|
1422
1515
|
});
|
|
1423
|
-
|
|
1516
|
+
a.languages.insertBefore("javascript", "string", {
|
|
1424
1517
|
hashbang: {
|
|
1425
1518
|
pattern: /^#!.*/,
|
|
1426
1519
|
greedy: true,
|
|
@@ -1442,7 +1535,7 @@
|
|
|
1442
1535
|
pattern: /^\$\{|\}$/,
|
|
1443
1536
|
alias: "punctuation"
|
|
1444
1537
|
},
|
|
1445
|
-
rest:
|
|
1538
|
+
rest: a.languages.javascript
|
|
1446
1539
|
}
|
|
1447
1540
|
},
|
|
1448
1541
|
string: /[\s\S]+/
|
|
@@ -1455,39 +1548,39 @@
|
|
|
1455
1548
|
alias: "property"
|
|
1456
1549
|
}
|
|
1457
1550
|
});
|
|
1458
|
-
|
|
1551
|
+
a.languages.insertBefore("javascript", "operator", {
|
|
1459
1552
|
"literal-property": {
|
|
1460
1553
|
pattern: /((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,
|
|
1461
1554
|
lookbehind: true,
|
|
1462
1555
|
alias: "property"
|
|
1463
1556
|
}
|
|
1464
1557
|
});
|
|
1465
|
-
if (
|
|
1466
|
-
|
|
1558
|
+
if (a.languages.markup) {
|
|
1559
|
+
a.languages.markup.tag.addInlined("script", "javascript");
|
|
1467
1560
|
// add attribute support for all DOM events.
|
|
1468
1561
|
// https://developer.mozilla.org/en-US/docs/Web/Events#Standard_events
|
|
1469
|
-
|
|
1562
|
+
a.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source, "javascript");
|
|
1470
1563
|
}
|
|
1471
|
-
|
|
1564
|
+
a.languages.js = a.languages.javascript;
|
|
1472
1565
|
(function(e) {
|
|
1473
1566
|
var t = e.util.clone(e.languages.javascript);
|
|
1474
|
-
var
|
|
1475
|
-
var
|
|
1476
|
-
var
|
|
1567
|
+
var n = /(?:\s|\/\/.*(?!.)|\/\*(?:[^*]|\*(?!\/))\*\/)/.source;
|
|
1568
|
+
var r = /(?:\{(?:\{(?:\{[^{}]*\}|[^{}])*\}|[^{}])*\})/.source;
|
|
1569
|
+
var a = /(?:\{<S>*\.{3}(?:[^{}]|<BRACES>)*\})/.source;
|
|
1477
1570
|
/**
|
|
1478
1571
|
* @param {string} source
|
|
1479
1572
|
* @param {string} [flags]
|
|
1480
1573
|
*/ function s(e, t) {
|
|
1481
1574
|
e = e.replace(/<S>/g, (function() {
|
|
1482
|
-
return a;
|
|
1483
|
-
})).replace(/<BRACES>/g, (function() {
|
|
1484
1575
|
return n;
|
|
1485
|
-
})).replace(/<
|
|
1576
|
+
})).replace(/<BRACES>/g, (function() {
|
|
1486
1577
|
return r;
|
|
1578
|
+
})).replace(/<SPREAD>/g, (function() {
|
|
1579
|
+
return a;
|
|
1487
1580
|
}));
|
|
1488
1581
|
return RegExp(e, t);
|
|
1489
1582
|
}
|
|
1490
|
-
|
|
1583
|
+
a = s(a).source;
|
|
1491
1584
|
e.languages.jsx = e.languages.extend("markup", t);
|
|
1492
1585
|
e.languages.jsx.tag.pattern = s(/<\/?(?:[\w.:-]+(?:<S>+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|<BRACES>))?|<SPREAD>))*<S>*\/?)?>/.source);
|
|
1493
1586
|
e.languages.jsx.tag.inside["tag"].pattern = /^<\/?[^\s>\/]*/;
|
|
@@ -1528,60 +1621,60 @@
|
|
|
1528
1621
|
return e.content.map(i).join("");
|
|
1529
1622
|
};
|
|
1530
1623
|
var o = function(t) {
|
|
1531
|
-
var
|
|
1532
|
-
for (var
|
|
1533
|
-
var
|
|
1624
|
+
var n = [];
|
|
1625
|
+
for (var r = 0; r < t.length; r++) {
|
|
1626
|
+
var a = t[r];
|
|
1534
1627
|
var s = false;
|
|
1535
|
-
if (typeof
|
|
1536
|
-
if (
|
|
1628
|
+
if (typeof a !== "string") {
|
|
1629
|
+
if (a.type === "tag" && a.content[0] && a.content[0].type === "tag") {
|
|
1537
1630
|
// We found a tag, now find its kind
|
|
1538
|
-
if (
|
|
1631
|
+
if (a.content[0].content[0].content === "</") {
|
|
1539
1632
|
// Closing tag
|
|
1540
|
-
if (
|
|
1633
|
+
if (n.length > 0 && n[n.length - 1].tagName === i(a.content[0].content[1])) {
|
|
1541
1634
|
// Pop matching opening tag
|
|
1542
|
-
|
|
1635
|
+
n.pop();
|
|
1543
1636
|
}
|
|
1544
1637
|
} else {
|
|
1545
|
-
if (
|
|
1638
|
+
if (a.content[a.content.length - 1].content === "/>") {
|
|
1546
1639
|
// Autoclosed tag, ignore
|
|
1547
1640
|
} else {
|
|
1548
1641
|
// Opening tag
|
|
1549
|
-
|
|
1550
|
-
tagName: i(
|
|
1642
|
+
n.push({
|
|
1643
|
+
tagName: i(a.content[0].content[1]),
|
|
1551
1644
|
openedBraces: 0
|
|
1552
1645
|
});
|
|
1553
1646
|
}
|
|
1554
1647
|
}
|
|
1555
|
-
} else if (
|
|
1648
|
+
} else if (n.length > 0 && a.type === "punctuation" && a.content === "{") {
|
|
1556
1649
|
// Here we might have entered a JSX context inside a tag
|
|
1557
|
-
|
|
1558
|
-
} else if (
|
|
1650
|
+
n[n.length - 1].openedBraces++;
|
|
1651
|
+
} else if (n.length > 0 && n[n.length - 1].openedBraces > 0 && a.type === "punctuation" && a.content === "}") {
|
|
1559
1652
|
// Here we might have left a JSX context inside a tag
|
|
1560
|
-
|
|
1653
|
+
n[n.length - 1].openedBraces--;
|
|
1561
1654
|
} else {
|
|
1562
1655
|
s = true;
|
|
1563
1656
|
}
|
|
1564
1657
|
}
|
|
1565
|
-
if (s || typeof
|
|
1566
|
-
if (
|
|
1658
|
+
if (s || typeof a === "string") {
|
|
1659
|
+
if (n.length > 0 && n[n.length - 1].openedBraces === 0) {
|
|
1567
1660
|
// Here we are inside a tag, and not inside a JSX context.
|
|
1568
1661
|
// That's plain text: drop any tokens matched.
|
|
1569
|
-
var l = i(
|
|
1662
|
+
var l = i(a);
|
|
1570
1663
|
// And merge text with adjacent text
|
|
1571
|
-
if (
|
|
1572
|
-
l += i(t[
|
|
1573
|
-
t.splice(
|
|
1664
|
+
if (r < t.length - 1 && (typeof t[r + 1] === "string" || t[r + 1].type === "plain-text")) {
|
|
1665
|
+
l += i(t[r + 1]);
|
|
1666
|
+
t.splice(r + 1, 1);
|
|
1574
1667
|
}
|
|
1575
|
-
if (
|
|
1576
|
-
l = i(t[
|
|
1577
|
-
t.splice(
|
|
1578
|
-
|
|
1668
|
+
if (r > 0 && (typeof t[r - 1] === "string" || t[r - 1].type === "plain-text")) {
|
|
1669
|
+
l = i(t[r - 1]) + l;
|
|
1670
|
+
t.splice(r - 1, 1);
|
|
1671
|
+
r--;
|
|
1579
1672
|
}
|
|
1580
|
-
t[
|
|
1673
|
+
t[r] = new e.Token("plain-text", l, null, l);
|
|
1581
1674
|
}
|
|
1582
1675
|
}
|
|
1583
|
-
if (
|
|
1584
|
-
o(
|
|
1676
|
+
if (a.content && typeof a.content !== "string") {
|
|
1677
|
+
o(a.content);
|
|
1585
1678
|
}
|
|
1586
1679
|
}
|
|
1587
1680
|
};
|
|
@@ -1591,7 +1684,7 @@
|
|
|
1591
1684
|
}
|
|
1592
1685
|
o(e.tokens);
|
|
1593
1686
|
}));
|
|
1594
|
-
})(
|
|
1687
|
+
})(a);
|
|
1595
1688
|
(function(e) {
|
|
1596
1689
|
e.languages.typescript = e.languages.extend("javascript", {
|
|
1597
1690
|
"class-name": {
|
|
@@ -1642,7 +1735,7 @@
|
|
|
1642
1735
|
}
|
|
1643
1736
|
});
|
|
1644
1737
|
e.languages.ts = e.languages.typescript;
|
|
1645
|
-
})(
|
|
1738
|
+
})(a);
|
|
1646
1739
|
(function(e) {
|
|
1647
1740
|
var t = e.util.clone(e.languages.typescript);
|
|
1648
1741
|
e.languages.tsx = e.languages.extend("jsx", t);
|
|
@@ -1652,10 +1745,10 @@
|
|
|
1652
1745
|
// This will prevent collisions between TSX tags and TS generic types.
|
|
1653
1746
|
// Idea by https://github.com/karlhorky
|
|
1654
1747
|
// Discussion: https://github.com/PrismJS/prism/issues/2594#issuecomment-710666928
|
|
1655
|
-
var
|
|
1656
|
-
|
|
1657
|
-
|
|
1658
|
-
})(
|
|
1748
|
+
var n = e.languages.tsx.tag;
|
|
1749
|
+
n.pattern = RegExp(/(^|[^\w$]|(?=<\/))/.source + "(?:" + n.pattern.source + ")", n.pattern.flags);
|
|
1750
|
+
n.lookbehind = true;
|
|
1751
|
+
})(a);
|
|
1659
1752
|
(function(e) {
|
|
1660
1753
|
var t = /(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;
|
|
1661
1754
|
e.languages.css = {
|
|
@@ -1708,27 +1801,27 @@
|
|
|
1708
1801
|
punctuation: /[(){};:,]/
|
|
1709
1802
|
};
|
|
1710
1803
|
e.languages.css["atrule"].inside.rest = e.languages.css;
|
|
1711
|
-
var
|
|
1712
|
-
if (
|
|
1713
|
-
|
|
1714
|
-
|
|
1804
|
+
var n = e.languages.markup;
|
|
1805
|
+
if (n) {
|
|
1806
|
+
n.tag.addInlined("style", "css");
|
|
1807
|
+
n.tag.addAttribute("style", "css");
|
|
1715
1808
|
}
|
|
1716
|
-
})(
|
|
1809
|
+
})(a);
|
|
1717
1810
|
(function(e) {
|
|
1718
1811
|
// $ set | grep '^[A-Z][^[:space:]]*=' | cut -d= -f1 | tr '\n' '|'
|
|
1719
1812
|
// + LC_ALL, RANDOM, REPLY, SECONDS.
|
|
1720
1813
|
// + make sure PS1..4 are here as they are not always set,
|
|
1721
1814
|
// - some useless things.
|
|
1722
1815
|
var t = "\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b";
|
|
1723
|
-
var
|
|
1816
|
+
var n = {
|
|
1724
1817
|
pattern: /(^(["']?)\w+\2)[ \t]+\S.*/,
|
|
1725
1818
|
lookbehind: true,
|
|
1726
1819
|
alias: "punctuation",
|
|
1727
1820
|
// this looks reasonably well in all themes
|
|
1728
1821
|
inside: null
|
|
1729
1822
|
};
|
|
1730
|
-
var
|
|
1731
|
-
bash:
|
|
1823
|
+
var r = {
|
|
1824
|
+
bash: n,
|
|
1732
1825
|
environment: {
|
|
1733
1826
|
pattern: RegExp("\\$" + t),
|
|
1734
1827
|
alias: "constant"
|
|
@@ -1832,7 +1925,7 @@
|
|
|
1832
1925
|
pattern: /((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,
|
|
1833
1926
|
lookbehind: true,
|
|
1834
1927
|
greedy: true,
|
|
1835
|
-
inside:
|
|
1928
|
+
inside: r
|
|
1836
1929
|
},
|
|
1837
1930
|
// Here-document with quotes around the tag
|
|
1838
1931
|
// → No expansion (so no “inside”).
|
|
@@ -1841,7 +1934,7 @@
|
|
|
1841
1934
|
lookbehind: true,
|
|
1842
1935
|
greedy: true,
|
|
1843
1936
|
inside: {
|
|
1844
|
-
bash:
|
|
1937
|
+
bash: n
|
|
1845
1938
|
}
|
|
1846
1939
|
},
|
|
1847
1940
|
// “Normal” string
|
|
@@ -1850,7 +1943,7 @@
|
|
|
1850
1943
|
pattern: /(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,
|
|
1851
1944
|
lookbehind: true,
|
|
1852
1945
|
greedy: true,
|
|
1853
|
-
inside:
|
|
1946
|
+
inside: r
|
|
1854
1947
|
}, {
|
|
1855
1948
|
// https://www.gnu.org/software/bash/manual/html_node/Single-Quotes.html
|
|
1856
1949
|
pattern: /(^|[^$\\])'[^']*'/,
|
|
@@ -1861,14 +1954,14 @@
|
|
|
1861
1954
|
pattern: /\$'(?:[^'\\]|\\[\s\S])*'/,
|
|
1862
1955
|
greedy: true,
|
|
1863
1956
|
inside: {
|
|
1864
|
-
entity:
|
|
1957
|
+
entity: r.entity
|
|
1865
1958
|
}
|
|
1866
1959
|
} ],
|
|
1867
1960
|
environment: {
|
|
1868
1961
|
pattern: RegExp("\\$?" + t),
|
|
1869
1962
|
alias: "constant"
|
|
1870
1963
|
},
|
|
1871
|
-
variable:
|
|
1964
|
+
variable: r.variable,
|
|
1872
1965
|
function: {
|
|
1873
1966
|
pattern: /(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cargo|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|java|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|sysctl|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,
|
|
1874
1967
|
lookbehind: true
|
|
@@ -1908,27 +2001,27 @@
|
|
|
1908
2001
|
lookbehind: true
|
|
1909
2002
|
}
|
|
1910
2003
|
};
|
|
1911
|
-
|
|
1912
|
-
/* Patterns in command substitution. */ var
|
|
1913
|
-
var s =
|
|
1914
|
-
for (var i = 0; i <
|
|
1915
|
-
s[
|
|
2004
|
+
n.inside = e.languages.bash;
|
|
2005
|
+
/* Patterns in command substitution. */ var a = [ "comment", "function-name", "for-or-select", "assign-left", "parameter", "string", "environment", "function", "keyword", "builtin", "boolean", "file-descriptor", "operator", "punctuation", "number" ];
|
|
2006
|
+
var s = r.variable[1].inside;
|
|
2007
|
+
for (var i = 0; i < a.length; i++) {
|
|
2008
|
+
s[a[i]] = e.languages.bash[a[i]];
|
|
1916
2009
|
}
|
|
1917
2010
|
e.languages.sh = e.languages.bash;
|
|
1918
2011
|
e.languages.shell = e.languages.bash;
|
|
1919
|
-
})(
|
|
2012
|
+
})(a);
|
|
1920
2013
|
(function(e) {
|
|
1921
2014
|
// https://yaml.org/spec/1.2/spec.html#c-ns-anchor-property
|
|
1922
2015
|
// https://yaml.org/spec/1.2/spec.html#c-ns-alias-node
|
|
1923
2016
|
var t = /[*&][^\s[\]{},]+/;
|
|
1924
2017
|
// https://yaml.org/spec/1.2/spec.html#c-ns-tag-property
|
|
1925
|
-
var
|
|
2018
|
+
var n = /!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/;
|
|
1926
2019
|
// https://yaml.org/spec/1.2/spec.html#c-ns-properties(n,c)
|
|
1927
|
-
var
|
|
2020
|
+
var r = "(?:" + n.source + "(?:[ \t]+" + t.source + ")?|" + t.source + "(?:[ \t]+" + n.source + ")?)";
|
|
1928
2021
|
// https://yaml.org/spec/1.2/spec.html#ns-plain(n,c)
|
|
1929
2022
|
// This is a simplified version that doesn't support "#" and multiline keys
|
|
1930
2023
|
// All these long scarry character classes are simplified versions of YAML's characters
|
|
1931
|
-
var
|
|
2024
|
+
var a = /(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*/.source.replace(/<PLAIN>/g, (function() {
|
|
1932
2025
|
return /[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source;
|
|
1933
2026
|
}));
|
|
1934
2027
|
var s = /"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;
|
|
@@ -1940,17 +2033,17 @@
|
|
|
1940
2033
|
*/ function i(e, t) {
|
|
1941
2034
|
t = (t || "").replace(/m/g, "") + "m";
|
|
1942
2035
|
// add m flag
|
|
1943
|
-
var
|
|
1944
|
-
return
|
|
2036
|
+
var n = /([:\-,[{]\s*(?:\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<<prop>>/g, (function() {
|
|
2037
|
+
return r;
|
|
1945
2038
|
})).replace(/<<value>>/g, (function() {
|
|
1946
2039
|
return e;
|
|
1947
2040
|
}));
|
|
1948
|
-
return RegExp(
|
|
2041
|
+
return RegExp(n, t);
|
|
1949
2042
|
}
|
|
1950
2043
|
e.languages.yaml = {
|
|
1951
2044
|
scalar: {
|
|
1952
2045
|
pattern: RegExp(/([\-:]\s*(?:\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<<prop>>/g, (function() {
|
|
1953
|
-
return
|
|
2046
|
+
return r;
|
|
1954
2047
|
}))),
|
|
1955
2048
|
lookbehind: true,
|
|
1956
2049
|
alias: "string"
|
|
@@ -1958,9 +2051,9 @@
|
|
|
1958
2051
|
comment: /#.*/,
|
|
1959
2052
|
key: {
|
|
1960
2053
|
pattern: RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\s*:\s)/.source.replace(/<<prop>>/g, (function() {
|
|
1961
|
-
return
|
|
2054
|
+
return r;
|
|
1962
2055
|
})).replace(/<<key>>/g, (function() {
|
|
1963
|
-
return "(?:" +
|
|
2056
|
+
return "(?:" + a + "|" + s + ")";
|
|
1964
2057
|
}))),
|
|
1965
2058
|
lookbehind: true,
|
|
1966
2059
|
greedy: true,
|
|
@@ -1995,13 +2088,13 @@
|
|
|
1995
2088
|
pattern: i(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source, "i"),
|
|
1996
2089
|
lookbehind: true
|
|
1997
2090
|
},
|
|
1998
|
-
tag:
|
|
2091
|
+
tag: n,
|
|
1999
2092
|
important: t,
|
|
2000
2093
|
punctuation: /---|[:[\]{}\-,|>?]|\.\.\./
|
|
2001
2094
|
};
|
|
2002
2095
|
e.languages.yml = e.languages.yaml;
|
|
2003
|
-
})(
|
|
2004
|
-
|
|
2096
|
+
})(a);
|
|
2097
|
+
a.languages["splunk-spl"] = {
|
|
2005
2098
|
comment: /`comment\("(?:\\.|[^\\"])*"\)`/,
|
|
2006
2099
|
string: {
|
|
2007
2100
|
pattern: /"(?:\\.|[^\\"])*"/,
|
|
@@ -2026,6 +2119,11 @@
|
|
|
2026
2119
|
punctuation: /[()[\],]/
|
|
2027
2120
|
};
|
|
2028
2121
|
})();
|
|
2122
|
+
/***/ },
|
|
2123
|
+
/***/ 9497:
|
|
2124
|
+
/***/ e => {
|
|
2125
|
+
"use strict";
|
|
2126
|
+
e.exports = require("react");
|
|
2029
2127
|
/***/
|
|
2030
2128
|
/******/ }
|
|
2031
2129
|
};
|
|
@@ -2034,21 +2132,21 @@
|
|
|
2034
2132
|
/******/ var t = {};
|
|
2035
2133
|
/******/
|
|
2036
2134
|
/******/ // The require function
|
|
2037
|
-
/******/ function
|
|
2135
|
+
/******/ function n(r) {
|
|
2038
2136
|
/******/ // Check if module is in cache
|
|
2039
|
-
/******/ var
|
|
2040
|
-
/******/ if (
|
|
2041
|
-
/******/ return
|
|
2137
|
+
/******/ var a = t[r];
|
|
2138
|
+
/******/ if (a !== undefined) {
|
|
2139
|
+
/******/ return a.exports;
|
|
2042
2140
|
/******/ }
|
|
2043
2141
|
/******/ // Create a new module (and put it into the cache)
|
|
2044
|
-
/******/ var s = t[
|
|
2142
|
+
/******/ var s = t[r] = {
|
|
2045
2143
|
/******/ // no module.id needed
|
|
2046
2144
|
/******/ // no module.loaded needed
|
|
2047
2145
|
/******/ exports: {}
|
|
2048
2146
|
/******/ };
|
|
2049
2147
|
/******/
|
|
2050
2148
|
/******/ // Execute the module function
|
|
2051
|
-
/******/ e[
|
|
2149
|
+
/******/ e[r](s, s.exports, n);
|
|
2052
2150
|
/******/
|
|
2053
2151
|
/******/ // Return the exports of the module
|
|
2054
2152
|
/******/ return s.exports;
|
|
@@ -2058,12 +2156,12 @@
|
|
|
2058
2156
|
/******/ /* webpack/runtime/compat get default export */
|
|
2059
2157
|
/******/ (() => {
|
|
2060
2158
|
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
|
2061
|
-
/******/
|
|
2159
|
+
/******/ n.n = e => {
|
|
2062
2160
|
/******/ var t = e && e.__esModule ?
|
|
2063
2161
|
/******/ () => e["default"]
|
|
2064
2162
|
/******/ : () => e
|
|
2065
2163
|
/******/;
|
|
2066
|
-
|
|
2164
|
+
n.d(t, {
|
|
2067
2165
|
a: t
|
|
2068
2166
|
});
|
|
2069
2167
|
/******/ return t;
|
|
@@ -2073,12 +2171,12 @@
|
|
|
2073
2171
|
/******/ /* webpack/runtime/define property getters */
|
|
2074
2172
|
/******/ (() => {
|
|
2075
2173
|
/******/ // define getter functions for harmony exports
|
|
2076
|
-
/******/
|
|
2077
|
-
/******/ for (var
|
|
2078
|
-
/******/ if (
|
|
2079
|
-
/******/ Object.defineProperty(e,
|
|
2174
|
+
/******/ n.d = (e, t) => {
|
|
2175
|
+
/******/ for (var r in t) {
|
|
2176
|
+
/******/ if (n.o(t, r) && !n.o(e, r)) {
|
|
2177
|
+
/******/ Object.defineProperty(e, r, {
|
|
2080
2178
|
enumerable: true,
|
|
2081
|
-
get: t[
|
|
2179
|
+
get: t[r]
|
|
2082
2180
|
});
|
|
2083
2181
|
/******/ }
|
|
2084
2182
|
/******/ }
|
|
@@ -2087,14 +2185,14 @@
|
|
|
2087
2185
|
/******/
|
|
2088
2186
|
/******/ /* webpack/runtime/hasOwnProperty shorthand */
|
|
2089
2187
|
/******/ (() => {
|
|
2090
|
-
/******/
|
|
2188
|
+
/******/ n.o = (e, t) => Object.prototype.hasOwnProperty.call(e, t)
|
|
2091
2189
|
/******/;
|
|
2092
2190
|
})();
|
|
2093
2191
|
/******/
|
|
2094
2192
|
/******/ /* webpack/runtime/make namespace object */
|
|
2095
2193
|
/******/ (() => {
|
|
2096
2194
|
/******/ // define __esModule on exports
|
|
2097
|
-
/******/
|
|
2195
|
+
/******/ n.r = e => {
|
|
2098
2196
|
/******/ if (typeof Symbol !== "undefined" && Symbol.toStringTag) {
|
|
2099
2197
|
/******/ Object.defineProperty(e, Symbol.toStringTag, {
|
|
2100
2198
|
value: "Module"
|
|
@@ -2106,43 +2204,43 @@
|
|
|
2106
2204
|
/******/ };
|
|
2107
2205
|
/******/ })();
|
|
2108
2206
|
/******/
|
|
2109
|
-
/************************************************************************/ var
|
|
2207
|
+
/************************************************************************/ var r = {};
|
|
2110
2208
|
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
|
|
2111
2209
|
(() => {
|
|
2112
2210
|
"use strict";
|
|
2113
2211
|
// ESM COMPAT FLAG
|
|
2114
|
-
|
|
2212
|
+
n.r(r);
|
|
2115
2213
|
// EXPORTS
|
|
2116
|
-
|
|
2117
|
-
default: () => /* reexport */
|
|
2214
|
+
n.d(r, {
|
|
2215
|
+
default: () => /* reexport */ Z
|
|
2118
2216
|
});
|
|
2119
|
-
//
|
|
2120
|
-
|
|
2121
|
-
var t =
|
|
2217
|
+
// EXTERNAL MODULE: external "react"
|
|
2218
|
+
var e = n(9497);
|
|
2219
|
+
var t = n.n(e);
|
|
2122
2220
|
// CONCATENATED MODULE: external "prop-types"
|
|
2123
|
-
const
|
|
2124
|
-
var s =
|
|
2221
|
+
const a = require("prop-types");
|
|
2222
|
+
var s = n.n(a);
|
|
2125
2223
|
// CONCATENATED MODULE: external "lodash/castArray"
|
|
2126
2224
|
const i = require("lodash/castArray");
|
|
2127
|
-
var o =
|
|
2225
|
+
var o = n.n(i);
|
|
2128
2226
|
// CONCATENATED MODULE: external "lodash/flatten"
|
|
2129
2227
|
const l = require("lodash/flatten");
|
|
2130
|
-
var u =
|
|
2228
|
+
var u = n.n(l);
|
|
2131
2229
|
// CONCATENATED MODULE: external "lodash/indexOf"
|
|
2132
2230
|
const c = require("lodash/indexOf");
|
|
2133
|
-
var p =
|
|
2231
|
+
var p = n.n(c);
|
|
2134
2232
|
// CONCATENATED MODULE: external "lodash/repeat"
|
|
2135
2233
|
const d = require("lodash/repeat");
|
|
2136
|
-
var g =
|
|
2234
|
+
var g = n.n(d);
|
|
2137
2235
|
// CONCATENATED MODULE: external "lodash/times"
|
|
2138
2236
|
const f = require("lodash/times");
|
|
2139
|
-
var m =
|
|
2237
|
+
var m = n.n(f);
|
|
2140
2238
|
// EXTERNAL MODULE: ./src/Code/prism/prism.empty
|
|
2141
|
-
var h =
|
|
2142
|
-
var v =
|
|
2239
|
+
var h = n(74);
|
|
2240
|
+
var v = n.n(h);
|
|
2143
2241
|
// CONCATENATED MODULE: external "styled-components"
|
|
2144
2242
|
const b = require("styled-components");
|
|
2145
|
-
var y =
|
|
2243
|
+
var y = n.n(b);
|
|
2146
2244
|
// CONCATENATED MODULE: external "@splunk/themes"
|
|
2147
2245
|
const k = require("@splunk/themes");
|
|
2148
2246
|
// CONCATENATED MODULE: ./src/Code/CodeStyles.ts
|
|
@@ -2166,14 +2264,14 @@
|
|
|
2166
2264
|
displayName: "CodeStyles__StyledIndent",
|
|
2167
2265
|
componentId: "sc-1eq4k68-2"
|
|
2168
2266
|
})([ "&:not(:last-child){background-image:linear-gradient( to left,rgba(0,0,0,0.15) 1px,transparent 1px,transparent );}" ]);
|
|
2169
|
-
var
|
|
2267
|
+
var w = (0, k.pick)({
|
|
2170
2268
|
prisma: k.variables.syntaxGray,
|
|
2171
2269
|
enterprise: {
|
|
2172
2270
|
dark: k.variables.gray60,
|
|
2173
2271
|
light: k.variables.syntaxGray
|
|
2174
2272
|
}
|
|
2175
2273
|
});
|
|
2176
|
-
var
|
|
2274
|
+
var F = (0, k.pick)({
|
|
2177
2275
|
prisma: k.variables.syntaxPurple,
|
|
2178
2276
|
enterprise: {
|
|
2179
2277
|
dark: k.variables.syntaxPurpleLight,
|
|
@@ -2189,20 +2287,20 @@
|
|
|
2189
2287
|
});
|
|
2190
2288
|
var _ = k.variables.syntaxBlue;
|
|
2191
2289
|
var O = k.variables.syntaxRed;
|
|
2192
|
-
var
|
|
2193
|
-
comment:
|
|
2194
|
-
prolog:
|
|
2195
|
-
doctype:
|
|
2196
|
-
cdata:
|
|
2197
|
-
punctuation:
|
|
2198
|
-
property:
|
|
2199
|
-
tag:
|
|
2200
|
-
boolean:
|
|
2201
|
-
number:
|
|
2202
|
-
constant:
|
|
2203
|
-
symbol:
|
|
2204
|
-
deleted:
|
|
2205
|
-
key:
|
|
2290
|
+
var I = {
|
|
2291
|
+
comment: w,
|
|
2292
|
+
prolog: w,
|
|
2293
|
+
doctype: w,
|
|
2294
|
+
cdata: w,
|
|
2295
|
+
punctuation: w,
|
|
2296
|
+
property: F,
|
|
2297
|
+
tag: F,
|
|
2298
|
+
boolean: F,
|
|
2299
|
+
number: F,
|
|
2300
|
+
constant: F,
|
|
2301
|
+
symbol: F,
|
|
2302
|
+
deleted: F,
|
|
2303
|
+
key: F,
|
|
2206
2304
|
selector: E,
|
|
2207
2305
|
"attr-name": E,
|
|
2208
2306
|
string: E,
|
|
@@ -2220,12 +2318,12 @@
|
|
|
2220
2318
|
important: k.variables.syntaxOrange,
|
|
2221
2319
|
variable: k.variables.syntaxOrange
|
|
2222
2320
|
};
|
|
2223
|
-
var
|
|
2321
|
+
var T = y().span.withConfig({
|
|
2224
2322
|
displayName: "CodeStyles__StyledToken",
|
|
2225
2323
|
componentId: "sc-1eq4k68-3"
|
|
2226
2324
|
})([ "color:", ";cursor:", ";opacity:", ";font-style:", ";font-weight:", ";" ], (function(e) {
|
|
2227
2325
|
var t = e.partType;
|
|
2228
|
-
return
|
|
2326
|
+
return I[t];
|
|
2229
2327
|
}), (function(e) {
|
|
2230
2328
|
var t = e.partType;
|
|
2231
2329
|
return t === "entity" ? "help" : null;
|
|
@@ -2239,125 +2337,212 @@
|
|
|
2239
2337
|
var t = e.partType;
|
|
2240
2338
|
return t === "important" || t === "bold" ? "bold" : null;
|
|
2241
2339
|
}));
|
|
2340
|
+
// CONCATENATED MODULE: ./src/utils/updateReactRef.ts
|
|
2341
|
+
/**
|
|
2342
|
+
* Updates a React ref. Callback refs and object refs (from `createRef` and `useRef`) are supported.
|
|
2343
|
+
*
|
|
2344
|
+
* @param ref - The React callback or object ref. Can be `null` or `undefined`.
|
|
2345
|
+
* @param current - The new value of the ref.
|
|
2346
|
+
*/
|
|
2347
|
+
function $(e, t) {
|
|
2348
|
+
if (e) {
|
|
2349
|
+
if (typeof e === "function") {
|
|
2350
|
+
e(t);
|
|
2351
|
+
} else {
|
|
2352
|
+
// the public signature of this util uses React.Ref<T> to mirror the way React types refs.
|
|
2353
|
+
// the intention here is to signal "we will take care of setting 'current', not you".
|
|
2354
|
+
e.current = t;
|
|
2355
|
+
// eslint-disable-line no-param-reassign
|
|
2356
|
+
}
|
|
2357
|
+
}
|
|
2358
|
+
}
|
|
2359
|
+
// EXTERNAL MODULE: ./src/useResizeObserver/index.ts + 1 modules
|
|
2360
|
+
var R = n(6283);
|
|
2242
2361
|
// CONCATENATED MODULE: ./src/Code/Code.tsx
|
|
2243
|
-
function
|
|
2244
|
-
return
|
|
2362
|
+
function P() {
|
|
2363
|
+
return P = Object.assign ? Object.assign.bind() : function(e) {
|
|
2245
2364
|
for (var t = 1; t < arguments.length; t++) {
|
|
2246
|
-
var
|
|
2247
|
-
for (var
|
|
2248
|
-
({}).hasOwnProperty.call(
|
|
2365
|
+
var n = arguments[t];
|
|
2366
|
+
for (var r in n) {
|
|
2367
|
+
({}).hasOwnProperty.call(n, r) && (e[r] = n[r]);
|
|
2249
2368
|
}
|
|
2250
2369
|
}
|
|
2251
2370
|
return e;
|
|
2252
|
-
},
|
|
2371
|
+
}, P.apply(null, arguments);
|
|
2372
|
+
}
|
|
2373
|
+
function N(e, t) {
|
|
2374
|
+
return B(e) || L(e, t) || j(e, t) || C();
|
|
2375
|
+
}
|
|
2376
|
+
function C() {
|
|
2377
|
+
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
2378
|
+
}
|
|
2379
|
+
function j(e, t) {
|
|
2380
|
+
if (e) {
|
|
2381
|
+
if ("string" == typeof e) return D(e, t);
|
|
2382
|
+
var n = {}.toString.call(e).slice(8, -1);
|
|
2383
|
+
return "Object" === n && e.constructor && (n = e.constructor.name), "Map" === n || "Set" === n ? Array.from(e) : "Arguments" === n || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? D(e, t) : void 0;
|
|
2384
|
+
}
|
|
2385
|
+
}
|
|
2386
|
+
function D(e, t) {
|
|
2387
|
+
(null == t || t > e.length) && (t = e.length);
|
|
2388
|
+
for (var n = 0, r = Array(t); n < t; n++) {
|
|
2389
|
+
r[n] = e[n];
|
|
2390
|
+
}
|
|
2391
|
+
return r;
|
|
2392
|
+
}
|
|
2393
|
+
function L(e, t) {
|
|
2394
|
+
var n = null == e ? null : "undefined" != typeof Symbol && e[Symbol.iterator] || e["@@iterator"];
|
|
2395
|
+
if (null != n) {
|
|
2396
|
+
var r, a, s, i, o = [], l = !0, u = !1;
|
|
2397
|
+
try {
|
|
2398
|
+
if (s = (n = n.call(e)).next, 0 === t) {
|
|
2399
|
+
if (Object(n) !== n) return;
|
|
2400
|
+
l = !1;
|
|
2401
|
+
} else for (;!(l = (r = s.call(n)).done) && (o.push(r.value), o.length !== t); l = !0) {
|
|
2402
|
+
}
|
|
2403
|
+
} catch (e) {
|
|
2404
|
+
u = !0, a = e;
|
|
2405
|
+
} finally {
|
|
2406
|
+
try {
|
|
2407
|
+
if (!l && null != n["return"] && (i = n["return"](), Object(i) !== i)) return;
|
|
2408
|
+
} finally {
|
|
2409
|
+
if (u) throw a;
|
|
2410
|
+
}
|
|
2411
|
+
}
|
|
2412
|
+
return o;
|
|
2413
|
+
}
|
|
2414
|
+
}
|
|
2415
|
+
function B(e) {
|
|
2416
|
+
if (Array.isArray(e)) return e;
|
|
2253
2417
|
}
|
|
2254
|
-
function
|
|
2418
|
+
function G(e, t) {
|
|
2255
2419
|
if (null == e) return {};
|
|
2256
|
-
var
|
|
2420
|
+
var n, r, a = M(e, t);
|
|
2257
2421
|
if (Object.getOwnPropertySymbols) {
|
|
2258
2422
|
var s = Object.getOwnPropertySymbols(e);
|
|
2259
|
-
for (
|
|
2260
|
-
|
|
2423
|
+
for (r = 0; r < s.length; r++) {
|
|
2424
|
+
n = s[r], t.includes(n) || {}.propertyIsEnumerable.call(e, n) && (a[n] = e[n]);
|
|
2261
2425
|
}
|
|
2262
2426
|
}
|
|
2263
|
-
return
|
|
2427
|
+
return a;
|
|
2264
2428
|
}
|
|
2265
|
-
function
|
|
2429
|
+
function M(e, t) {
|
|
2266
2430
|
if (null == e) return {};
|
|
2267
|
-
var
|
|
2268
|
-
for (var
|
|
2269
|
-
if ({}.hasOwnProperty.call(e,
|
|
2270
|
-
if (t.includes(
|
|
2271
|
-
|
|
2431
|
+
var n = {};
|
|
2432
|
+
for (var r in e) {
|
|
2433
|
+
if ({}.hasOwnProperty.call(e, r)) {
|
|
2434
|
+
if (t.includes(r)) continue;
|
|
2435
|
+
n[r] = e[r];
|
|
2272
2436
|
}
|
|
2273
2437
|
}
|
|
2274
|
-
return
|
|
2438
|
+
return n;
|
|
2275
2439
|
}
|
|
2276
2440
|
// Prism requires special handling to work around issues related to global scope and
|
|
2277
2441
|
// auto formatting. The import below points to an empty file which is replaced at build
|
|
2278
2442
|
// time, see ./prism/build-isolated-prism.js for details.
|
|
2279
2443
|
// typed as 'prismjs'
|
|
2280
|
-
var
|
|
2281
|
-
function
|
|
2444
|
+
var z = [ "bash", "clike", "css", "html", "json", "javascript", "js", "jsx", "typescript", "ts", "tsx", "markup", "mathml", "plain", "plaintext", "splunk-spl", "svg", "text", "txt", "xml", "yaml", "yml" ];
|
|
2445
|
+
function H(e, t) {
|
|
2446
|
+
if ([ "plain", "plaintext", "text", "txt" ].indexOf(t) >= 0) {
|
|
2447
|
+
return v().tokenize(e, {});
|
|
2448
|
+
}
|
|
2282
2449
|
return v().tokenize(e, v().languages[t]);
|
|
2283
2450
|
}
|
|
2284
|
-
var
|
|
2451
|
+
var q = {
|
|
2285
2452
|
elementRef: s().oneOfType([ s().func, s().object ]),
|
|
2286
2453
|
indentChars: s().number,
|
|
2287
|
-
language: s().oneOf(
|
|
2288
|
-
languageFallback: s().oneOf(
|
|
2454
|
+
language: s().oneOf(z),
|
|
2455
|
+
languageFallback: s().oneOf(z),
|
|
2289
2456
|
showIndentGuide: s().bool,
|
|
2290
2457
|
value: s().string
|
|
2291
2458
|
};
|
|
2292
|
-
function
|
|
2293
|
-
var
|
|
2459
|
+
function U(n) {
|
|
2460
|
+
var r = n.elementRef, a = n.indentChars, s = a === void 0 ? 4 : a, i = n.language, l = n.languageFallback, c = l === void 0 ? "javascript" : l, d = n.showIndentGuide, f = d === void 0 ? true : d, h = n.value, v = h === void 0 ? "" : h, b = G(n, [ "elementRef", "indentChars", "language", "languageFallback", "showIndentGuide", "value" ]);
|
|
2294
2461
|
// @docs-props-type CodePropsBase
|
|
2295
|
-
var
|
|
2296
|
-
var
|
|
2297
|
-
|
|
2298
|
-
|
|
2299
|
-
|
|
2462
|
+
var y = (0, e.useRef)(null);
|
|
2463
|
+
var k = (0, e.useState)(undefined), w = N(k, 2), F = w[0], E = w[1];
|
|
2464
|
+
var _ = (0, R["default"])(y), O = _.width, I = _.height;
|
|
2465
|
+
var C = (0, e.useCallback)((function(e) {
|
|
2466
|
+
$(y, e);
|
|
2467
|
+
$(r, e);
|
|
2468
|
+
}), [ r ]);
|
|
2469
|
+
(0, e.useEffect)((function() {
|
|
2470
|
+
var e = y.current;
|
|
2471
|
+
if (e) {
|
|
2472
|
+
var t = e.scrollHeight > Math.round(I);
|
|
2473
|
+
var n = e.scrollWidth > Math.round(O);
|
|
2474
|
+
var r = t || n;
|
|
2475
|
+
E(r ? 0 : undefined);
|
|
2476
|
+
}
|
|
2477
|
+
}), [ y, O, I ]);
|
|
2478
|
+
var j = g()(" ", s);
|
|
2479
|
+
var D = function e(n) {
|
|
2480
|
+
var r = Math.floor(n / s);
|
|
2481
|
+
var a = n % s;
|
|
2482
|
+
var i = m()(r, (function(e) {
|
|
2300
2483
|
|
|
2301
2484
|
return t().createElement(A, {
|
|
2302
2485
|
key: e.toString()
|
|
2303
|
-
},
|
|
2486
|
+
}, j);
|
|
2304
2487
|
}));
|
|
2305
|
-
if (
|
|
2306
|
-
i.push(g()(" ",
|
|
2488
|
+
if (a) {
|
|
2489
|
+
i.push(g()(" ", a));
|
|
2307
2490
|
}
|
|
2308
2491
|
return i;
|
|
2309
2492
|
};
|
|
2310
|
-
|
|
2311
|
-
|
|
2312
|
-
|
|
2313
|
-
|
|
2314
|
-
|
|
2315
|
-
var
|
|
2316
|
-
|
|
2317
|
-
|
|
2318
|
-
|
|
2319
|
-
|
|
2493
|
+
var L = p()(z, i) > -1;
|
|
2494
|
+
(0, e.useEffect)((function() {
|
|
2495
|
+
// a fix for SUI-5425, where the Markdown component doesn't pass a valid language in some circumstances
|
|
2496
|
+
if (false) {}
|
|
2497
|
+
}), [ L, i, c ]);
|
|
2498
|
+
var B = L && i ? i : c;
|
|
2499
|
+
var M = H(v, B);
|
|
2500
|
+
var q = function e(n) {
|
|
2501
|
+
return o()(n).map((function(n, r) {
|
|
2502
|
+
if (typeof n === "string") {
|
|
2503
|
+
if (!f) {
|
|
2504
|
+
return n;
|
|
2320
2505
|
}
|
|
2321
|
-
var
|
|
2322
|
-
if (
|
|
2323
|
-
return
|
|
2506
|
+
var a = n.split("\n");
|
|
2507
|
+
if (a.length === 1) {
|
|
2508
|
+
return n;
|
|
2324
2509
|
}
|
|
2325
|
-
return u()(
|
|
2326
|
-
var
|
|
2510
|
+
return u()(a.map((function(e, n) {
|
|
2511
|
+
var a = n === 0 ? [] : [ "\n" ];
|
|
2327
2512
|
var s = e.match(/^(\s+)(.*)/);
|
|
2328
2513
|
if (!s) {
|
|
2329
|
-
|
|
2514
|
+
a.push(e);
|
|
2330
2515
|
} else {
|
|
2331
|
-
|
|
2332
|
-
key: "".concat(
|
|
2333
|
-
},
|
|
2516
|
+
a.push( t().createElement("span", {
|
|
2517
|
+
key: "".concat(r.toString(), ":").concat(n.toString())
|
|
2518
|
+
}, D(s[1].length)), s[2]);
|
|
2334
2519
|
}
|
|
2335
|
-
return
|
|
2520
|
+
return a;
|
|
2336
2521
|
})));
|
|
2337
2522
|
}
|
|
2338
|
-
var s = typeof
|
|
2523
|
+
var s = typeof n.content === "string" ? n.content : e(n.content);
|
|
2339
2524
|
|
|
2340
2525
|
// eslint-disable-next-line react/no-array-index-key
|
|
2341
|
-
return t().createElement(
|
|
2342
|
-
"data-part-type":
|
|
2343
|
-
partType:
|
|
2344
|
-
key:
|
|
2526
|
+
return t().createElement(T, {
|
|
2527
|
+
"data-part-type": n.type,
|
|
2528
|
+
partType: n.type,
|
|
2529
|
+
key: r.toString()
|
|
2345
2530
|
}, s);
|
|
2346
2531
|
}));
|
|
2347
2532
|
};
|
|
2348
|
-
var
|
|
2533
|
+
var U = q(M);
|
|
2349
2534
|
|
|
2350
|
-
return t().createElement(x,
|
|
2535
|
+
return t().createElement(x, P({
|
|
2351
2536
|
"data-test": "code",
|
|
2352
|
-
ref:
|
|
2353
|
-
tabIndex:
|
|
2354
|
-
},
|
|
2355
|
-
className: "language-".concat(
|
|
2356
|
-
},
|
|
2537
|
+
ref: C,
|
|
2538
|
+
tabIndex: F
|
|
2539
|
+
}, b), t().createElement(S, {
|
|
2540
|
+
className: "language-".concat(B)
|
|
2541
|
+
}, U));
|
|
2357
2542
|
}
|
|
2358
|
-
|
|
2359
|
-
/* harmony default export */ const
|
|
2543
|
+
U.propTypes = q;
|
|
2544
|
+
/* harmony default export */ const Z = U;
|
|
2360
2545
|
}) // CONCATENATED MODULE: ./src/Code/index.ts
|
|
2361
2546
|
();
|
|
2362
|
-
module.exports =
|
|
2547
|
+
module.exports = r;
|
|
2363
2548
|
/******/})();
|