@jupyterlab/rendermime 4.3.5 → 4.3.7
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/lib/renderers.js +25 -50
- package/lib/renderers.js.map +1 -1
- package/package.json +9 -9
- package/src/renderers.ts +40 -56
package/lib/renderers.js
CHANGED
|
@@ -13,7 +13,7 @@ import { removeMath, replaceMath } from './latex';
|
|
|
13
13
|
*
|
|
14
14
|
* @returns A promise which resolves when rendering is complete.
|
|
15
15
|
*/
|
|
16
|
-
export function renderHTML(options) {
|
|
16
|
+
export async function renderHTML(options) {
|
|
17
17
|
// Unpack the options.
|
|
18
18
|
let { host, source, trusted, sanitizer, resolver, linkHandler, shouldTypeset, latexTypesetter, translator } = options;
|
|
19
19
|
translator = translator || nullTranslator;
|
|
@@ -22,7 +22,7 @@ export function renderHTML(options) {
|
|
|
22
22
|
// Bail early if the source is empty.
|
|
23
23
|
if (!source) {
|
|
24
24
|
host.textContent = '';
|
|
25
|
-
return
|
|
25
|
+
return;
|
|
26
26
|
}
|
|
27
27
|
// Sanitize the source if it is not trusted. This removes all
|
|
28
28
|
// `<script>` tags as well as other potentially harmful HTML.
|
|
@@ -60,19 +60,12 @@ export function renderHTML(options) {
|
|
|
60
60
|
// Handle default behavior of nodes.
|
|
61
61
|
Private.handleDefaults(host, resolver);
|
|
62
62
|
// Patch the urls if a resolver is available.
|
|
63
|
-
let promise;
|
|
64
63
|
if (resolver) {
|
|
65
|
-
|
|
64
|
+
await Private.handleUrls(host, resolver, linkHandler);
|
|
66
65
|
}
|
|
67
|
-
|
|
68
|
-
|
|
66
|
+
if (shouldTypeset && latexTypesetter) {
|
|
67
|
+
latexTypesetter.typeset(host);
|
|
69
68
|
}
|
|
70
|
-
// Return the final rendered promise.
|
|
71
|
-
return promise.then(() => {
|
|
72
|
-
if (shouldTypeset && latexTypesetter) {
|
|
73
|
-
latexTypesetter.typeset(host);
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
69
|
}
|
|
77
70
|
/**
|
|
78
71
|
* Render an image into a host node.
|
|
@@ -81,7 +74,7 @@ export function renderHTML(options) {
|
|
|
81
74
|
*
|
|
82
75
|
* @returns A promise which resolves when rendering is complete.
|
|
83
76
|
*/
|
|
84
|
-
export function renderImage(options) {
|
|
77
|
+
export async function renderImage(options) {
|
|
85
78
|
// Unpack the options.
|
|
86
79
|
const { host, mimeType, source, width, height, needsBackground, unconfined } = options;
|
|
87
80
|
// Clear the content in the host.
|
|
@@ -108,8 +101,6 @@ export function renderImage(options) {
|
|
|
108
101
|
}
|
|
109
102
|
// Add the image to the host.
|
|
110
103
|
host.appendChild(img);
|
|
111
|
-
// Return the rendered promise.
|
|
112
|
-
return Promise.resolve(undefined);
|
|
113
104
|
}
|
|
114
105
|
/**
|
|
115
106
|
* Render LaTeX into a host node.
|
|
@@ -118,7 +109,7 @@ export function renderImage(options) {
|
|
|
118
109
|
*
|
|
119
110
|
* @returns A promise which resolves when rendering is complete.
|
|
120
111
|
*/
|
|
121
|
-
export function renderLatex(options) {
|
|
112
|
+
export async function renderLatex(options) {
|
|
122
113
|
// Unpack the options.
|
|
123
114
|
const { host, source, shouldTypeset, latexTypesetter } = options;
|
|
124
115
|
// Set the source on the node.
|
|
@@ -127,8 +118,6 @@ export function renderLatex(options) {
|
|
|
127
118
|
if (shouldTypeset && latexTypesetter) {
|
|
128
119
|
latexTypesetter.typeset(host);
|
|
129
120
|
}
|
|
130
|
-
// Return the rendered promise.
|
|
131
|
-
return Promise.resolve(undefined);
|
|
132
121
|
}
|
|
133
122
|
/**
|
|
134
123
|
* Render Markdown into a host node.
|
|
@@ -190,19 +179,19 @@ export async function renderMarkdown(options) {
|
|
|
190
179
|
*
|
|
191
180
|
* @returns A promise which resolves when rendering is complete.
|
|
192
181
|
*/
|
|
193
|
-
export function renderSVG(options) {
|
|
182
|
+
export async function renderSVG(options) {
|
|
194
183
|
// Unpack the options.
|
|
195
184
|
let { host, source, trusted, unconfined } = options;
|
|
196
185
|
// Clear the content if there is no source.
|
|
197
186
|
if (!source) {
|
|
198
187
|
host.textContent = '';
|
|
199
|
-
return
|
|
188
|
+
return;
|
|
200
189
|
}
|
|
201
190
|
// Display a message if the source is not trusted.
|
|
202
191
|
if (!trusted) {
|
|
203
192
|
host.textContent =
|
|
204
193
|
'Cannot display an untrusted SVG. Maybe you need to run the cell?';
|
|
205
|
-
return
|
|
194
|
+
return;
|
|
206
195
|
}
|
|
207
196
|
// Add missing SVG namespace (if actually missing)
|
|
208
197
|
const patt = '<svg[^>]+xmlns=[^>]+svg';
|
|
@@ -216,7 +205,6 @@ export function renderSVG(options) {
|
|
|
216
205
|
if (unconfined === true) {
|
|
217
206
|
host.classList.add('jp-mod-unconfined');
|
|
218
207
|
}
|
|
219
|
-
return Promise.resolve();
|
|
220
208
|
}
|
|
221
209
|
var ILinker;
|
|
222
210
|
(function (ILinker) {
|
|
@@ -442,13 +430,11 @@ function* alignedNodes(a, b) {
|
|
|
442
430
|
*
|
|
443
431
|
* @returns A promise which resolves when rendering is complete.
|
|
444
432
|
*/
|
|
445
|
-
export function renderText(options) {
|
|
433
|
+
export async function renderText(options) {
|
|
446
434
|
renderTextual(options, {
|
|
447
435
|
checkWeb: true,
|
|
448
436
|
checkPaths: false
|
|
449
437
|
});
|
|
450
|
-
// Return the rendered promise.
|
|
451
|
-
return Promise.resolve(undefined);
|
|
452
438
|
}
|
|
453
439
|
/**
|
|
454
440
|
* Sanitize HTML out using native browser sanitizer.
|
|
@@ -462,6 +448,7 @@ function nativeSanitize(source) {
|
|
|
462
448
|
el.textContent = source;
|
|
463
449
|
return el.innerHTML;
|
|
464
450
|
}
|
|
451
|
+
const ansiPrefix = '\x1b';
|
|
465
452
|
/**
|
|
466
453
|
* Render the textual representation into a host node.
|
|
467
454
|
*
|
|
@@ -471,8 +458,7 @@ function renderTextual(options, autoLinkOptions) {
|
|
|
471
458
|
var _a, _b;
|
|
472
459
|
// Unpack the options.
|
|
473
460
|
const { host, sanitizer, source } = options;
|
|
474
|
-
const
|
|
475
|
-
const hasAnsiPrefix = ansiPrefixRe.test(source);
|
|
461
|
+
const hasAnsiPrefix = source.includes(ansiPrefix);
|
|
476
462
|
// Create the HTML content:
|
|
477
463
|
// If no ANSI codes are present use a fast path for escaping.
|
|
478
464
|
const content = hasAnsiPrefix
|
|
@@ -596,7 +582,7 @@ function getApplicableLinkCache(cachedResult, preTextContent) {
|
|
|
596
582
|
*
|
|
597
583
|
* @returns A promise which resolves when rendering is complete.
|
|
598
584
|
*/
|
|
599
|
-
export function renderError(options) {
|
|
585
|
+
export async function renderError(options) {
|
|
600
586
|
// Unpack the options.
|
|
601
587
|
const { host, linkHandler, resolver } = options;
|
|
602
588
|
renderTextual(options, {
|
|
@@ -604,15 +590,9 @@ export function renderError(options) {
|
|
|
604
590
|
checkPaths: true
|
|
605
591
|
});
|
|
606
592
|
// Patch the paths if a resolver is available.
|
|
607
|
-
let promise;
|
|
608
593
|
if (resolver) {
|
|
609
|
-
|
|
594
|
+
await Private.handlePaths(host, resolver, linkHandler);
|
|
610
595
|
}
|
|
611
|
-
else {
|
|
612
|
-
promise = Promise.resolve(undefined);
|
|
613
|
-
}
|
|
614
|
-
// Return the rendered promise.
|
|
615
|
-
return promise;
|
|
616
596
|
}
|
|
617
597
|
/**
|
|
618
598
|
* Merge `<span>` nodes from a `<pre>` element with `<a>` nodes from linker.
|
|
@@ -754,8 +734,7 @@ var Private;
|
|
|
754
734
|
*
|
|
755
735
|
* @returns a promise fulfilled when the relative urls have been resolved.
|
|
756
736
|
*/
|
|
757
|
-
function handleUrls(node, resolver, linkHandler) {
|
|
758
|
-
// Set up an array to collect promises.
|
|
737
|
+
async function handleUrls(node, resolver, linkHandler) {
|
|
759
738
|
const promises = [];
|
|
760
739
|
// Handle HTML Elements with src attributes.
|
|
761
740
|
const nodes = node.querySelectorAll('*[src]');
|
|
@@ -772,12 +751,11 @@ var Private;
|
|
|
772
751
|
for (let i = 0; i < links.length; i++) {
|
|
773
752
|
promises.push(handleAttr(links[i], 'href', resolver));
|
|
774
753
|
}
|
|
775
|
-
|
|
776
|
-
return Promise.all(promises).then(() => undefined);
|
|
754
|
+
return Promise.all(promises);
|
|
777
755
|
}
|
|
778
756
|
Private.handleUrls = handleUrls;
|
|
779
757
|
/**
|
|
780
|
-
* Resolve the paths in `<a>` elements `data`
|
|
758
|
+
* Resolve the paths in `<a>` elements that have a `data-path` attribute.
|
|
781
759
|
*
|
|
782
760
|
* @param node - The head html element.
|
|
783
761
|
*
|
|
@@ -788,11 +766,8 @@ var Private;
|
|
|
788
766
|
* @returns a promise fulfilled when the relative urls have been resolved.
|
|
789
767
|
*/
|
|
790
768
|
async function handlePaths(node, resolver, linkHandler) {
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
for (let i = 0; i < anchors.length; i++) {
|
|
794
|
-
await handlePathAnchor(anchors[i], resolver, linkHandler);
|
|
795
|
-
}
|
|
769
|
+
const anchors = Array.from(node.querySelectorAll('a[data-path]'));
|
|
770
|
+
return Promise.all(anchors.map(anchor => handlePathAnchor(anchor, resolver, linkHandler)));
|
|
796
771
|
}
|
|
797
772
|
Private.handlePaths = handlePaths;
|
|
798
773
|
/**
|
|
@@ -846,7 +821,7 @@ var Private;
|
|
|
846
821
|
/**
|
|
847
822
|
* Handle an anchor node.
|
|
848
823
|
*/
|
|
849
|
-
function handleAnchor(anchor, resolver, linkHandler) {
|
|
824
|
+
async function handleAnchor(anchor, resolver, linkHandler) {
|
|
850
825
|
// Get the link path without the location prepended.
|
|
851
826
|
// (e.g. "./foo.md#Header 1" vs "http://localhost:8888/foo.md#Header 1")
|
|
852
827
|
let href = anchor.getAttribute('href') || '';
|
|
@@ -855,7 +830,7 @@ var Private;
|
|
|
855
830
|
: URLExt.isLocal(href);
|
|
856
831
|
// Bail if it is not a file-like url.
|
|
857
832
|
if (!href || !isLocal) {
|
|
858
|
-
return
|
|
833
|
+
return;
|
|
859
834
|
}
|
|
860
835
|
// Remove the hash until we can handle it.
|
|
861
836
|
const hash = anchor.hash;
|
|
@@ -863,7 +838,7 @@ var Private;
|
|
|
863
838
|
// Handle internal link in the file.
|
|
864
839
|
if (hash === href) {
|
|
865
840
|
anchor.target = '_self';
|
|
866
|
-
return
|
|
841
|
+
return;
|
|
867
842
|
}
|
|
868
843
|
// For external links, remove the hash until we have hash handling.
|
|
869
844
|
href = href.replace(hash, '');
|
|
@@ -913,7 +888,7 @@ var Private;
|
|
|
913
888
|
!linkHandler ||
|
|
914
889
|
!linkHandler.handlePath) {
|
|
915
890
|
anchor.replaceWith(...anchor.childNodes);
|
|
916
|
-
return
|
|
891
|
+
return;
|
|
917
892
|
}
|
|
918
893
|
try {
|
|
919
894
|
// Find given path
|
|
@@ -921,7 +896,7 @@ var Private;
|
|
|
921
896
|
if (!resolution) {
|
|
922
897
|
// Bail if the file does not exist
|
|
923
898
|
console.log('Path resolution bailing: does not exist');
|
|
924
|
-
return
|
|
899
|
+
return;
|
|
925
900
|
}
|
|
926
901
|
// Handle the click override.
|
|
927
902
|
linkHandler.handlePath(anchor, resolution.path, resolution.scope, locator);
|
package/lib/renderers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderers.js","sourceRoot":"","sources":["../src/renderers.ts"],"names":[],"mappings":"AAAA;;;+EAG+E;AAE/E,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAE/C,OAAO,EAAe,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,MAAM,MAAM,eAAe,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAElD;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,OAA4B;IACrD,sBAAsB;IACtB,IAAI,EACF,IAAI,EACJ,MAAM,EACN,OAAO,EACP,SAAS,EACT,QAAQ,EACR,WAAW,EACX,aAAa,EACb,eAAe,EACf,UAAU,EACX,GAAG,OAAO,CAAC;IAEZ,UAAU,GAAG,UAAU,IAAI,cAAc,CAAC;IAC1C,MAAM,KAAK,GAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7C,IAAI,cAAc,GAAG,MAAM,CAAC;IAE5B,qCAAqC;IACrC,IAAI,CAAC,MAAM,EAAE;QACX,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;KACnC;IAED,6DAA6D;IAC7D,6DAA6D;IAC7D,IAAI,CAAC,OAAO,EAAE;QACZ,cAAc,GAAG,GAAG,MAAM,EAAE,CAAC;QAC7B,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;KACrC;IAED,kCAAkC;IAClC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC;IAExB,IAAI,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;QAClD,oEAAoE;QACpE,qEAAqE;QACrE,kCAAkC;QAClC,IAAI,OAAO,EAAE;YACX,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;SACvC;aAAM;YACL,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC9C,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,EAAE,CAC5B,kIAAkI,CACnI,CAAC;YACF,MAAM,SAAS,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YACnD,SAAS,CAAC,WAAW,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;YACxC,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC,EAAE;gBAC1B,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC;gBAChC,OAAO,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;gBACtC,IAAI,IAAI,CAAC,UAAU,EAAE;oBACnB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;iBACnC;YACH,CAAC,CAAC;YACF,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC/B,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YACjC,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SAC/C;KACF;IAED,oCAAoC;IACpC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAEvC,6CAA6C;IAC7C,IAAI,OAAsB,CAAC;IAC3B,IAAI,QAAQ,EAAE;QACZ,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;KAC3D;SAAM;QACL,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;KACtC;IAED,qCAAqC;IACrC,OAAO,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE;QACvB,IAAI,aAAa,IAAI,eAAe,EAAE;YACpC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SAC/B;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAyDD;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CACzB,OAAmC;IAEnC,sBAAsB;IACtB,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,GAC1E,OAAO,CAAC;IAEV,iCAAiC;IACjC,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;IAEtB,4BAA4B;IAC5B,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAE1C,+BAA+B;IAC/B,GAAG,CAAC,GAAG,GAAG,QAAQ,QAAQ,WAAW,MAAM,EAAE,CAAC;IAE9C,yCAAyC;IACzC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC9B,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;KACrB;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC;KACnB;IAED,IAAI,eAAe,KAAK,OAAO,EAAE;QAC/B,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;KAChD;SAAM,IAAI,eAAe,KAAK,MAAM,EAAE;QACrC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;KAC/C;IAED,IAAI,UAAU,KAAK,IAAI,EAAE;QACvB,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;KACxC;IAED,6BAA6B;IAC7B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAEtB,+BAA+B;IAC/B,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC;AA+CD;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CACzB,OAAmC;IAEnC,sBAAsB;IACtB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC;IAEjE,8BAA8B;IAC9B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;IAE1B,8BAA8B;IAC9B,IAAI,aAAa,IAAI,eAAe,EAAE;QACpC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;KAC/B;IAED,+BAA+B;IAC/B,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC;AAgCD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAsC;IAEtC,sBAAsB;IACtB,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC;IAE5D,2CAA2C;IAC3C,IAAI,CAAC,MAAM,EAAE;QACX,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,OAAO;KACR;IAED,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,cAAc,EAAE;QAClB,2CAA2C;QAC3C,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAEjC,gCAAgC;QAChC,IAAI,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAElD,gBAAgB;QAChB,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;KACzC;SAAM;QACL,iEAAiE;QACjE,IAAI,GAAG,QAAQ,MAAM,QAAQ,CAAC;KAC/B;IAED,eAAe;IACf,MAAM,UAAU,CAAC;QACf,IAAI;QACJ,MAAM,EAAE,IAAI;QACZ,GAAG,MAAM;KACV,CAAC,CAAC;IAEH,iCAAiC;IACjC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,WAAiB,cAAc;IAwD7B;;;;;OAKG;IACH,SAAgB,cAAc,CAAC,MAAe;;QAC5C,OAAO,CAAC,MAAA,MAAM,CAAC,WAAW,mCAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACvD,CAAC;IAFe,6BAAc,iBAE7B,CAAA;AACH,CAAC,EAjEgB,cAAc,KAAd,cAAc,QAiE9B;AAED;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,OAAiC;IACzD,sBAAsB;IACtB,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAEpD,2CAA2C;IAC3C,IAAI,CAAC,MAAM,EAAE;QACX,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;QACtB,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;KACnC;IAED,kDAAkD;IAClD,IAAI,CAAC,OAAO,EAAE;QACZ,IAAI,CAAC,WAAW;YACd,kEAAkE,CAAC;QACrE,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;KACnC;IAED,kDAAkD;IAClD,MAAM,IAAI,GAAG,yBAAyB,CAAC;IACvC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;QAC3B,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,yCAAyC,CAAC,CAAC;KAC5E;IAED,gDAAgD;IAChD,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;IACxB,GAAG,CAAC,GAAG,GAAG,sBAAsB,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;IAC7D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAEtB,IAAI,UAAU,KAAK,IAAI,EAAE;QACvB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;KACzC;IACD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;AAC3B,CAAC;AA6ED,IAAU,OAAO,CA8BhB;AA9BD,WAAU,OAAO;IACf,iCAAiC;IACjC,mJAAmJ;IACnJ,MAAM,YAAY,GAAG,gCAAgC,CAAC;IACzC,oBAAY,GAAG,IAAI,MAAM,CACpC,iEAAiE;QAC/D,YAAY;QACZ,aAAa;QACb,YAAY;QACZ,uBAAuB,EACzB,IAAI,CACL,CAAC;IACF,iCAAiC;IACjC,oIAAoI;IACpI,MAAM,eAAe,GAAG,qCAAqC,CAAC;IAC9D,MAAM,eAAe,GAAG,qCAAqC,CAAC;IAC9D,MAAM,YAAY,GAAG,IAAI,MAAM,CAC7B,IAAI,eAAe,CAAC,MAAM,IAAI,eAAe,CAAC,MAAM,GAAG,CACxD,CAAC;IACF,MAAM,cAAc,GAAG,6BAA6B,CAAC;IACrD,MAAM,eAAe,GACnB,2DAA2D,CAAC;IAC9D,2EAA2E;IAC3E,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IACjD,qBAAa,GAAG,IAAI,MAAM,CACrC,WAAW,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,IAChE,eAAe,CAAC,MAClB,EAAE,EACF,GAAG,CACJ,CAAC;AACJ,CAAC,EA9BS,OAAO,KAAP,OAAO,QA8BhB;AAED;;GAEG;AACH,MAAM,SAAS;IAAf;QACE,UAAK,GAAG,OAAO,CAAC,YAAY,CAAC;IAoB/B,CAAC;IAnBC,YAAY,CAAC,GAAW,EAAE,KAAa;QACrC,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC9D,MAAM,CAAC,GAAG,GAAG,UAAU,CAAC;QACxB,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC;QACzB,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;QACnD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,WAAW,CAAC,GAAW;QACrB,iDAAiD;QACjD,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1D,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC;QACvD,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACxB,OAAO,GAAG,CAAC;IACb,CAAC;IACD,YAAY,CAAC,GAAW;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;CACF;AAED;;GAEG;AACH,MAAM,UAAU;IAAhB;QACE,UAAK,GAAG,OAAO,CAAC,aAAa,CAAC;IAkBhC,CAAC;IAjBC,YAAY,CAAC,IAAY,EAAE,KAAa,EAAE,QAAgC;QACxE,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAE3C,6BAA6B;QAC7B,4EAA4E;QAC5E,qEAAqE;QACrE,MAAM,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;QAE3B,mEAAmE;QACnE,uEAAuE;QACvE,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAC5C,IAAI,OAAO,GAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,MAAM,CAAC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;QAEjC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;QACnD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,SAAS,QAAQ,CACf,OAAe,EACf,OAAyB;IAEzB,MAAM,OAAO,GAAc,EAAE,CAAC;IAC9B,IAAI,OAAO,CAAC,QAAQ,EAAE;QACpB,OAAO,CAAC,IAAI,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC;KAC/B;IACD,IAAI,OAAO,CAAC,UAAU,EAAE;QACtB,OAAO,CAAC,IAAI,CAAC,IAAI,UAAU,EAAE,CAAC,CAAC;KAChC;IACD,MAAM,KAAK,GAAoC,EAAE,CAAC;IAElD,uDAAuD;IACvD,yDAAyD;IACzD,qDAAqD;IACrD,MAAM,OAAO,GAAG,CAAC,OAAe,EAAE,UAAkB,EAAE,EAAE;QACtD,IAAI,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE;YAChC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;YAC7C,OAAO;SACR;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QAEnC,IAAI,KAA6B,CAAC;QAClC,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3B,cAAc;QACd,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;QAEpB,OAAO,IAAI,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE;YAC5C,MAAM,iBAAiB,GAAG,OAAO,CAAC,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YACvE,IAAI,iBAAiB,EAAE;gBACrB,OAAO,CAAC,iBAAiB,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;aAC5C;YAED,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,EAAE,GAAG,KAAK,CAAC,MAAO,CAAC;YAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACnE,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY;gBAC/B,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC/B,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACb,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;YACxD,YAAY,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;SAC3C;QACD,MAAM,kBAAkB,GAAG,OAAO,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC;QAC3D,IAAI,kBAAkB,EAAE;YACtB,OAAO,CAAC,kBAAkB,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC;SAC7C;IACH,CAAC,CAAC;IAEF,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACpB,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CACvB,IAAO,EACP,EAAU;;IAEV,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,EAAO,CAAC;IAClC,GAAG,CAAC,WAAW,GAAG,MAAA,IAAI,CAAC,WAAW,0CAAE,KAAK,CAAC,CAAC,EAAE,EAAE,CAAW,CAAC;IAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,EAAO,CAAC;IACnC,IAAI,CAAC,WAAW,GAAG,MAAA,IAAI,CAAC,WAAW,0CAAE,KAAK,CAAC,EAAE,CAAW,CAAC;IACzD,OAAO;QACL,GAAG;QACH,IAAI;KACL,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,QAAQ,CAAC,CAAC,QAAQ,CAChB,KAAU;;IAEV,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,GAAG,CAAC;IACR,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE;QACtB,GAAG,GAAG,KAAK,GAAG,CAAC,CAAA,MAAA,IAAI,CAAC,WAAW,0CAAE,MAAM,KAAI,CAAC,CAAC,CAAC;QAC9C,MAAM;YACJ,IAAI;YACJ,KAAK;YACL,GAAG;YACH,MAAM,EAAE,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS;SACzC,CAAC;QACF,KAAK,GAAG,GAAG,CAAC;KACb;AACH,CAAC;AAED;;;;;GAKG;AACH,QAAQ,CAAC,CAAC,YAAY,CACpB,CAAM,EACN,CAAM;;IAEN,IAAI,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACtB,IAAI,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE;QAC3B,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;QACjB,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;QAEjB,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE;YACpD,0DAA0D;YAC1D,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YACrB,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;SACnB;aAAM,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE;YAC3D,0DAA0D;YAC1D,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrB,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;SACnB;aAAM;YACL,mEAAmE;YACnE,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,EAAE;gBAC1C,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;gBACvB,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;gBAClB,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;aACnB;iBAAM,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,EAAE;gBACxB;;;;;kBAKE;gBACF,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;gBAC9D,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE;oBACrB,0EAA0E;oBAC1E,CAAC,CAAC,IAAI,CAAC,WAAW,GAAG,MAAA,CAAC,CAAC,IAAI,CAAC,WAAW,0CAAE,KAAK,CAC5C,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CACR,CAAC;iBACb;gBACD,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;gBACpB,oCAAoC;gBACpC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;gBACd,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC;gBAChB,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;aACnB;iBAAM,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,EAAE;gBACxB,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;gBAC9D,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,EAAE;oBACrB,0EAA0E;oBAC1E,CAAC,CAAC,IAAI,CAAC,WAAW,GAAG,MAAA,CAAC,CAAC,IAAI,CAAC,WAAW,0CAAE,KAAK,CAC5C,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CACR,CAAC;iBACb;gBACD,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACpB,oCAAoC;gBACpC,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;gBACd,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC;gBAChB,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;aACnB;iBAAM;gBACL,MAAM,IAAI,KAAK,CACb,4BAA4B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CACrE,CAAC;aACH;SACF;KACF;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,OAAkC;IAC3D,aAAa,CAAC,OAAO,EAAE;QACrB,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,KAAK;KAClB,CAAC,CAAC;IAEH,+BAA+B;IAC/B,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,cAAc,CAAC,MAAc;IACpC,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,EAAE,CAAC,WAAW,GAAG,MAAM,CAAC;IACxB,OAAO,EAAE,CAAC,SAAS,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CACpB,OAAkC,EAClC,eAAiC;;IAEjC,sBAAsB;IACtB,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAE5C,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,uCAAuC;IACpE,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAEhD,2BAA2B;IAC3B,6DAA6D;IAC7D,MAAM,OAAO,GAAG,aAAa;QAC3B,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;YAC3C,WAAW,EAAE,CAAC,MAAM,CAAC;SACtB,CAAC;QACJ,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAE3B,+CAA+C;IAC/C,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC;IAExB,MAAM,cAAc,GAAG,GAAG,CAAC,WAAW,CAAC;IAEvC,MAAM,iBAAiB,GAAG,EAAE,CAAC;IAC7B,IAAI,eAAe,CAAC,QAAQ,EAAE;QAC5B,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAC/B;IACD,IAAI,eAAe,CAAC,UAAU,EAAE;QAC9B,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACjC;IACD,MAAM,aAAa,GAAG,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClD,IAAI,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC1D,IAAI,CAAC,UAAU,EAAE;QACf,UAAU,GAAG,IAAI,OAAO,EAAE,CAAC;QAC3B,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;KACtD;IAED,IAAI,GAAmB,CAAC;IACxB,IAAI,cAAc,EAAE;QAClB,uGAAuG;QACvG,IAAI,WAAyC,CAAC;QAC9C,IAAI,MAAA,MAAA,SAAS,CAAC,WAAW,yDAAI,mCAAI,IAAI,EAAE;YACrC,MAAM,KAAK,GAAG,sBAAsB,CAClC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,EACpB,cAAc,CACf,CAAC;YACF,IAAI,KAAK,EAAE;gBACT,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;gBACpD,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;gBAC1D,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACpD,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;gBAErC,IAAI,WAAW,YAAY,IAAI,IAAI,YAAY,YAAY,IAAI,EAAE;oBAC/D,MAAM,WAAW,GAAG,WAAW,CAAC;oBAChC,WAAW,CAAC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC;oBACtC,WAAW,GAAG;wBACZ,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBACzB,WAAW;wBACX,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC;qBACzB,CAAC;iBACH;qBAAM;oBACL,WAAW,GAAG,CAAC,GAAG,SAAS,EAAE,GAAG,YAAY,CAAC,CAAC;iBAC/C;aACF;iBAAM;gBACL,WAAW,GAAG,QAAQ,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;aACzD;YACD,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE;gBACnB,cAAc;gBACd,gFAAgF;gBAChF,uFAAuF;gBACvF,WAAW,EAAE,WAAW,CAAC,GAAG,CAC1B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAA6B,CACzD;aACF,CAAC,CAAC;SACJ;aAAM;YACL,WAAW,GAAG,CAAC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;SAClD;QAED,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAA+B,CAAC;QAC1E,GAAG,GAAG,UAAU,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;KACzC;SAAM;QACL,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;KACrC;IAED,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAqCD;;;GAGG;AACH,SAAS,sBAAsB,CAC7B,YAA6C,EAC7C,cAAsB;IAKtB,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,IAAI,CAAC;KACb;IACD,IAAI,cAAc,CAAC,MAAM,GAAG,YAAY,CAAC,cAAc,CAAC,MAAM,EAAE;QAC9D,wDAAwD;QACxD,wDAAwD;QACxD,OAAO,IAAI,CAAC;KACb;IACD,IAAI,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC,YAAY,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC7E,IAAI,WAAW,GAAG,YAAY,CAAC,WAAW,CAAC;IAC3C,MAAM,cAAc,GAClB,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAEhE,4BAA4B;IAC5B,wCAAwC;IACxC,2CAA2C;IAC3C,yCAAyC;IACzC,IACE,YAAY,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC1C,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAC1B;QACA,gEAAgE;QAChE,iDAAiD;KAClD;SAAM,IAAI,cAAc,YAAY,IAAI,EAAE;QACzC,2DAA2D;QAC3D,4DAA4D;QAC5D,6DAA6D;QAC7D,uDAAuD;QACvD,0DAA0D;QAC1D,gEAAgE;QAChE,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACvC,SAAS,GAAG,cAAc,CAAC,WAAW,GAAG,SAAS,CAAC;KACpD;SAAM;QACL,OAAO,IAAI,CAAC;KACb;IAED,yCAAyC;IACzC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,YAAY,CAAC,cAAc,CAAC,EAAE;QAC3D,OAAO,IAAI,CAAC;KACb;IACD,OAAO;QACL,WAAW;QACX,SAAS;KACV,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CACzB,OAAmC;IAEnC,sBAAsB;IACtB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAEhD,aAAa,CAAC,OAAO,EAAE;QACrB,QAAQ,EAAE,IAAI;QACd,UAAU,EAAE,IAAI;KACjB,CAAC,CAAC;IAEH,8CAA8C;IAC9C,IAAI,OAAsB,CAAC;IAC3B,IAAI,QAAQ,EAAE;QACZ,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;KAC5D;SAAM;QACL,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;KACtC;IAED,+BAA+B;IAC/B,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,SAAS,UAAU,CACjB,QAAoC,EACpC,WAAyC;IAEzC,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1C,IAAI,eAAe,GAAG,KAAK,CAAC;IAE5B,MAAM,aAAa,GAAmD,EAAE,CAAC;IAEzE,KAAK,IAAI,KAAK,IAAI,YAAY,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE;QACrD,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACb,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7B,eAAe,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,CAAC;YACvD,SAAS;SACV;aAAM,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACpB,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7B,eAAe,GAAG,KAAK,CAAC;YACxB,SAAS;SACV;QACD,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,KAAK,CAAC;QAEhC,MAAM,YAAY,GAAG,aAAa,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAE7D,gFAAgF;QAChF,0FAA0F;QAC1F,qCAAqC;QACrC,IACE,eAAe;YACd,QAA8B,CAAC,IAAI;gBACjC,YAAkC,CAAC,IAAI,EAC1C;YACA,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;SACnC;aAAM;YACL,kDAAkD;YAClD,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,KAAK,IAAI,CAAC,SAAS,CAAC;YACtD,wEAAwE;YACxE,IAAI,CAAC,QAAQ,EAAE;gBACb,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC5B,eAAe,GAAG,KAAK,CAAC;aACzB;iBAAM;gBACL,iGAAiG;gBACjG,oFAAoF;gBACpF,qCAAqC;gBACrC,QAAQ,CAAC,WAAW,GAAG,EAAE,CAAC;gBAC1B,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;gBAC9B,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC7B,eAAe,GAAG,IAAI,CAAC;aACxB;SACF;KACF;IACD,4EAA4E;IAC5E,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE;QACjC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KACxB;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AA0CD;;GAEG;AACH,IAAU,OAAO,CAukBhB;AAvkBD,WAAU,OAAO;IACf;;OAEG;IACU,qBAAa,GAAG,IAAI,GAAG,EAGjC,CAAC;IAEJ;;;;;;;OAOG;IACH,SAAgB,uBAAuB,CAAC,IAAiB;QACvD,iDAAiD;QACjD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAEhE,8BAA8B;QAC9B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,kDAAkD;YAClD,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE;gBACtB,SAAS;aACV;YAED,gDAAgD;YAChD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAE/C,sCAAsC;YACtC,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC;YAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE;gBAC5C,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACjC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;aACjC;YAED,wCAAwC;YACxC,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;YAEvC,wCAAwC;YACxC,MAAM,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;SAC/C;IACH,CAAC;IA3Be,+BAAuB,0BA2BtC,CAAA;IAED;;OAEG;IACH,SAAgB,cAAc,CAC5B,IAAiB,EACjB,QAAuC;QAEvC,0BAA0B;QAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACtB,6CAA6C;YAC7C,sCAAsC;YACtC,IAAI,CAAC,CAAC,EAAE,YAAY,iBAAiB,CAAC,EAAE;gBACtC,SAAS;aACV;YACD,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC;YACrB,MAAM,OAAO,GACX,QAAQ,IAAI,QAAQ,CAAC,OAAO;gBAC1B,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;gBACxB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC3B,8CAA8C;YAC9C,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE;gBACd,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;aAC1C;YACD,8CAA8C;YAC9C,IAAI,CAAC,OAAO,EAAE;gBACZ,EAAE,CAAC,GAAG,GAAG,UAAU,CAAC;aACrB;SACF;QAED,yBAAyB;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;QAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACpC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE;gBAChB,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC;aACvB;SACF;IACH,CAAC;IAnCe,sBAAc,iBAmC7B,CAAA;IAED;;;;;;;;;;OAUG;IACH,SAAgB,UAAU,CACxB,IAAiB,EACjB,QAA+B,EAC/B,WAA4C;QAE5C,uCAAuC;QACvC,MAAM,QAAQ,GAAoB,EAAE,CAAC;QAErC,4CAA4C;QAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACrC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAgB,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;SACrE;QAED,0BAA0B;QAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;SAChE;QAED,wBAAwB;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAChD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACrC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;SACvD;QAED,wBAAwB;QACxB,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC;IA5Be,kBAAU,aA4BzB,CAAA;IAED;;;;;;;;;;OAUG;IACI,KAAK,UAAU,WAAW,CAC/B,IAAiB,EACjB,QAA+B,EAC/B,WAA4C;QAE5C,0BAA0B;QAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;SAC3D;IACH,CAAC;IAVqB,mBAAW,cAUhC,CAAA;IAED;;OAEG;IACH,SAAgB,aAAa,CAAC,IAAiB;QAC7C,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACzD,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;YACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACvC,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC1B,MAAM,CAAC,EAAE,GAAG,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBAClD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBAC3C,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;gBACxB,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC;gBACzB,MAAM,CAAC,IAAI,GAAG,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC;gBAC9B,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;gBAC9C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;aAC5B;SACF;IACH,CAAC;IAfe,qBAAa,gBAe5B,CAAA;IAED;;OAEG;IACH,KAAK,UAAU,UAAU,CACvB,IAAiB,EACjB,IAAoB,EACpB,QAA+B;QAE/B,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO;YAC9B,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC;YAC1B,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC3B,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE;YACvB,OAAO;SACR;QACD,IAAI;YACF,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAClD,IAAI,GAAG,GAAG,MAAM,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;YACjD,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,OAAO,EAAE;gBAC1C,oCAAoC;gBACpC,2GAA2G;gBAC3G,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;aAC5D;YACD,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;SAC9B;QAAC,OAAO,GAAG,EAAE;YACZ,yCAAyC;YACzC,mDAAmD;YACnD,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC5B,MAAM,GAAG,CAAC;SACX;IACH,CAAC;IAED;;OAEG;IACH,SAAS,YAAY,CACnB,MAAyB,EACzB,QAA+B,EAC/B,WAA4C;QAE5C,oDAAoD;QACpD,wEAAwE;QACxE,IAAI,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO;YAC9B,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC;YACxB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzB,qCAAqC;QACrC,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE;YACrB,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;SACnC;QACD,0CAA0C;QAC1C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QACzB,IAAI,IAAI,EAAE;YACR,oCAAoC;YACpC,IAAI,IAAI,KAAK,IAAI,EAAE;gBACjB,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC;gBACxB,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;aACnC;YACD,mEAAmE;YACnE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;SAC/B;QACD,iCAAiC;QACjC,OAAO,QAAQ;aACZ,UAAU,CAAC,IAAI,CAAC;aAChB,IAAI,CAAC,OAAO,CAAC,EAAE;YACd,0CAA0C;YAC1C,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;YACzC,6BAA6B;YAC7B,IAAI,WAAW,EAAE;gBACf,WAAW,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;aAC5C;YACD,0CAA0C;YAC1C,OAAO,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC,CAAC;aACD,IAAI,CAAC,GAAG,CAAC,EAAE;YACV,0BAA0B;YAC1B,MAAM,CAAC,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC;QAC3B,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,EAAE;YACX,yCAAyC;YACzC,8BAA8B;YAC9B,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,KAAK,UAAU,gBAAgB,CAC7B,MAAyB,EACzB,QAA+B,EAC/B,WAA4C;QAE5C,IAAI,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC;QACrC,IAAI,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QACzE,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;QAC3B,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC;QAEvB,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO;YAC9B,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC;YACnC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAEpC,WAAW;QACX,+BAA+B;QAC/B,wCAAwC;QACxC,8DAA8D;QAC9D,IACE,CAAC,IAAI;YACL,CAAC,OAAO;YACR,CAAC,QAAQ,CAAC,WAAW;YACrB,CAAC,WAAW;YACZ,CAAC,WAAW,CAAC,UAAU,EACvB;YACA,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;YACzC,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;SACnC;QACD,IAAI;YACF,kBAAkB;YAClB,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAEpD,IAAI,CAAC,UAAU,EAAE;gBACf,kCAAkC;gBAClC,OAAO,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;gBACvD,OAAO,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;aACnC;YAED,6BAA6B;YAC7B,WAAW,CAAC,UAAU,CACpB,MAAM,EACN,UAAU,CAAC,IAAI,EACf,UAAU,CAAC,KAAK,EAChB,OAAO,CACR,CAAC;YAEF,0BAA0B;YAC1B,MAAM,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,GAAG,OAAO,CAAC;SACzC;QAAC,OAAO,GAAG,EAAE;YACZ,yCAAyC;YACzC,8BAA8B;YAC9B,OAAO,CAAC,IAAI,CAAC,oBAAoB,EAAE,GAAG,CAAC,CAAC;YACxC,MAAM,CAAC,IAAI,GAAG,6BAA6B,CAAC;SAC7C;IACH,CAAC;IACD,MAAM,WAAW,GAAG;QAClB,YAAY;QACZ,UAAU;QACV,YAAY;QACZ,aAAa;QACb,WAAW;QACX,cAAc;QACd,WAAW;QACX,YAAY;QACZ,oBAAoB;QACpB,kBAAkB;QAClB,oBAAoB;QACpB,qBAAqB;QACrB,mBAAmB;QACnB,sBAAsB;QACtB,mBAAmB;QACnB,oBAAoB;KACrB,CAAC;IAEF;;;OAGG;IACH,SAAS,gBAAgB,CACvB,KAAa,EACb,EAA0B,EAC1B,EAA0B,EAC1B,IAAa,EACb,SAAkB,EAClB,OAAgB,EAChB,GAAkB;QAElB,IAAI,KAAK,EAAE;YACT,MAAM,OAAO,GAAG,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,EAAE,CAAC;YAElB,IAAI,IAAI,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE;gBACvD,EAAE,IAAI,CAAC,CAAC,CAAC,kCAAkC;aAC5C;YACD,IAAI,OAAO,EAAE;gBACX,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;aACrB;YAED,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE;gBAC1B,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC;aACvC;iBAAM,IAAI,EAAE,CAAC,MAAM,EAAE;gBACpB,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC;aAClC;iBAAM,IAAI,OAAO,EAAE;gBAClB,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;aACzC;YAED,IAAI,OAAO,EAAE,KAAK,QAAQ,EAAE;gBAC1B,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC;aACvC;iBAAM,IAAI,EAAE,CAAC,MAAM,EAAE;gBACpB,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,GAAG,CAAC,CAAC;aAC7C;iBAAM,IAAI,OAAO,EAAE;gBAClB,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;aACzC;YAED,IAAI,IAAI,EAAE;gBACR,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;aAC3B;YAED,IAAI,SAAS,EAAE;gBACb,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;aAChC;YAED,IAAI,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE;gBACnC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAClB,IAAI,OAAO,CAAC,MAAM,EAAE;oBAClB,GAAG,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;iBAC3C;gBACD,IAAI,MAAM,CAAC,MAAM,EAAE;oBACjB,GAAG,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBAC3C;gBACD,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAChB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aACrB;iBAAM;gBACL,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACjB;SACF;IACH,CAAC;IAED;;OAEG;IACH,SAAS,iBAAiB,CAAC,OAAsB;QAC/C,IAAI,CAAC,CAAC;QACN,IAAI,CAAC,CAAC;QACN,IAAI,CAAC,CAAC;QACN,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;YAClC,aAAa;YACb,CAAC,GAAG,OAAO,CAAC,KAAK,EAAG,CAAC;YACrB,CAAC,GAAG,OAAO,CAAC,KAAK,EAAG,CAAC;YACrB,CAAC,GAAG,OAAO,CAAC,KAAK,EAAG,CAAC;YACrB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,EAAE;gBACzC,MAAM,IAAI,UAAU,CAAC,8BAA8B,CAAC,CAAC;aACtD;SACF;aAAM,IAAI,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE;YACzC,aAAa;YACb,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,EAAG,CAAC;YAC7B,IAAI,GAAG,GAAG,CAAC,EAAE;gBACX,MAAM,IAAI,UAAU,CAAC,0BAA0B,CAAC,CAAC;aAClD;iBAAM,IAAI,GAAG,GAAG,EAAE,EAAE;gBACnB,6BAA6B;gBAC7B,OAAO,GAAG,CAAC;aACZ;iBAAM,IAAI,GAAG,GAAG,GAAG,EAAE;gBACpB,oEAAoE;gBACpE,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;gBAChC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5B,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;gBACtC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC5B,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;gBACnB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;aAC7B;iBAAM,IAAI,GAAG,GAAG,GAAG,EAAE;gBACpB,6DAA6D;gBAC7D,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;aAClC;iBAAM;gBACL,MAAM,IAAI,UAAU,CAAC,2BAA2B,CAAC,CAAC;aACnD;SACF;aAAM;YACL,MAAM,IAAI,UAAU,CAAC,sCAAsC,CAAC,CAAC;SAC9D;QACD,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACnB,CAAC;IAED;;;;;;OAMG;IACH,SAAgB,QAAQ,CAAC,GAAW;QAClC,MAAM,MAAM,GAAG,qBAAqB,CAAC,CAAC,uCAAuC;QAC7E,IAAI,EAAE,GAA2B,EAAE,CAAC;QACpC,IAAI,EAAE,GAA2B,EAAE,CAAC;QACpC,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,IAAI,SAAS,GAAG,KAAK,CAAC;QACtB,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,KAAK,CAAC;QACV,MAAM,GAAG,GAAkB,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,IAAI,KAAK,GAAG,CAAC,CAAC;QAEd,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAElB,GAAG,IAAI,QAAQ,CAAC,CAAC,kCAAkC;QACnD,2BAA2B;QAC3B,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;YACjC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;gBACpB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAClC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACrC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;oBACtB,IAAI,IAAI,KAAK,EAAE,EAAE;wBACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;qBACjB;yBAAM,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;wBACtC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;qBAClC;yBAAM;wBACL,uCAAuC;wBACvC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;wBACnB,MAAM;qBACP;iBACF;aACF;iBAAM;gBACL,4BAA4B;aAC7B;YACD,MAAM,KAAK,GAAG,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YAChD,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;YAC/D,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC;YAEzB,OAAO,OAAO,CAAC,MAAM,EAAE;gBACrB,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;gBAC1B,QAAQ,CAAC,EAAE;oBACT,KAAK,CAAC;wBACJ,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;wBACb,IAAI,GAAG,KAAK,CAAC;wBACb,SAAS,GAAG,KAAK,CAAC;wBAClB,OAAO,GAAG,KAAK,CAAC;wBAChB,MAAM;oBACR,KAAK,CAAC,CAAC;oBACP,KAAK,CAAC;wBACJ,IAAI,GAAG,IAAI,CAAC;wBACZ,MAAM;oBACR,KAAK,CAAC;wBACJ,SAAS,GAAG,IAAI,CAAC;wBACjB,MAAM;oBACR,KAAK,CAAC;wBACJ,OAAO,GAAG,IAAI,CAAC;wBACf,MAAM;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE;wBACL,IAAI,GAAG,KAAK,CAAC;wBACb,MAAM;oBACR,KAAK,EAAE;wBACL,SAAS,GAAG,KAAK,CAAC;wBAClB,MAAM;oBACR,KAAK,EAAE;wBACL,OAAO,GAAG,KAAK,CAAC;wBAChB,MAAM;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE;wBACL,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;wBACZ,MAAM;oBACR,KAAK,EAAE;wBACL,IAAI;4BACF,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;yBACjC;wBAAC,OAAO,CAAC,EAAE;4BACV,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;yBACpB;wBACD,MAAM;oBACR,KAAK,EAAE;wBACL,EAAE,GAAG,EAAE,CAAC;wBACR,MAAM;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE;wBACL,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC;wBACZ,MAAM;oBACR,KAAK,EAAE;wBACL,IAAI;4BACF,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC;yBACjC;wBAAC,OAAO,CAAC,EAAE;4BACV,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;yBACpB;wBACD,MAAM;oBACR,KAAK,EAAE;wBACL,EAAE,GAAG,EAAE,CAAC;wBACR,MAAM;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE,CAAC;oBACR,KAAK,EAAE;wBACL,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;wBAChB,MAAM;oBACR,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG,CAAC;oBACT,KAAK,GAAG;wBACN,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;wBACjB,MAAM;oBACR,QAAQ;oBACR,4BAA4B;iBAC7B;aACF;SACF;QACD,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtB,CAAC;IArIe,gBAAQ,WAqIvB,CAAA;AACH,CAAC,EAvkBS,OAAO,KAAP,OAAO,QAukBhB"}
|
|
1
|
+
{"version":3,"file":"renderers.js","sourceRoot":"","sources":["../src/renderers.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jupyterlab/rendermime",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.7",
|
|
4
4
|
"description": "JupyterLab - RenderMime",
|
|
5
5
|
"homepage": "https://github.com/jupyterlab/jupyterlab",
|
|
6
6
|
"bugs": {
|
|
@@ -41,13 +41,13 @@
|
|
|
41
41
|
"watch": "tsc -b --watch"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@jupyterlab/apputils": "^4.4.
|
|
45
|
-
"@jupyterlab/coreutils": "^6.3.
|
|
46
|
-
"@jupyterlab/nbformat": "^4.3.
|
|
47
|
-
"@jupyterlab/observables": "^5.3.
|
|
48
|
-
"@jupyterlab/rendermime-interfaces": "^3.11.
|
|
49
|
-
"@jupyterlab/services": "^7.3.
|
|
50
|
-
"@jupyterlab/translation": "^4.3.
|
|
44
|
+
"@jupyterlab/apputils": "^4.4.7",
|
|
45
|
+
"@jupyterlab/coreutils": "^6.3.7",
|
|
46
|
+
"@jupyterlab/nbformat": "^4.3.7",
|
|
47
|
+
"@jupyterlab/observables": "^5.3.7",
|
|
48
|
+
"@jupyterlab/rendermime-interfaces": "^3.11.7",
|
|
49
|
+
"@jupyterlab/services": "^7.3.7",
|
|
50
|
+
"@jupyterlab/translation": "^4.3.7",
|
|
51
51
|
"@lumino/coreutils": "^2.2.0",
|
|
52
52
|
"@lumino/messaging": "^2.0.2",
|
|
53
53
|
"@lumino/signaling": "^2.1.3",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
"lodash.escape": "^4.0.1"
|
|
56
56
|
},
|
|
57
57
|
"devDependencies": {
|
|
58
|
-
"@jupyterlab/testing": "^4.3.
|
|
58
|
+
"@jupyterlab/testing": "^4.3.7",
|
|
59
59
|
"@types/jest": "^29.2.0",
|
|
60
60
|
"@types/lodash.escape": "^4.0.6",
|
|
61
61
|
"fs-extra": "^10.1.0",
|
package/src/renderers.ts
CHANGED
|
@@ -16,7 +16,7 @@ import { removeMath, replaceMath } from './latex';
|
|
|
16
16
|
*
|
|
17
17
|
* @returns A promise which resolves when rendering is complete.
|
|
18
18
|
*/
|
|
19
|
-
export function renderHTML(options: renderHTML.IOptions): Promise<void> {
|
|
19
|
+
export async function renderHTML(options: renderHTML.IOptions): Promise<void> {
|
|
20
20
|
// Unpack the options.
|
|
21
21
|
let {
|
|
22
22
|
host,
|
|
@@ -37,7 +37,7 @@ export function renderHTML(options: renderHTML.IOptions): Promise<void> {
|
|
|
37
37
|
// Bail early if the source is empty.
|
|
38
38
|
if (!source) {
|
|
39
39
|
host.textContent = '';
|
|
40
|
-
return
|
|
40
|
+
return;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
// Sanitize the source if it is not trusted. This removes all
|
|
@@ -81,19 +81,13 @@ export function renderHTML(options: renderHTML.IOptions): Promise<void> {
|
|
|
81
81
|
Private.handleDefaults(host, resolver);
|
|
82
82
|
|
|
83
83
|
// Patch the urls if a resolver is available.
|
|
84
|
-
let promise: Promise<void>;
|
|
85
84
|
if (resolver) {
|
|
86
|
-
|
|
87
|
-
} else {
|
|
88
|
-
promise = Promise.resolve(undefined);
|
|
85
|
+
await Private.handleUrls(host, resolver, linkHandler);
|
|
89
86
|
}
|
|
90
87
|
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
latexTypesetter.typeset(host);
|
|
95
|
-
}
|
|
96
|
-
});
|
|
88
|
+
if (shouldTypeset && latexTypesetter) {
|
|
89
|
+
latexTypesetter.typeset(host);
|
|
90
|
+
}
|
|
97
91
|
}
|
|
98
92
|
|
|
99
93
|
/**
|
|
@@ -158,7 +152,7 @@ export namespace renderHTML {
|
|
|
158
152
|
*
|
|
159
153
|
* @returns A promise which resolves when rendering is complete.
|
|
160
154
|
*/
|
|
161
|
-
export function renderImage(
|
|
155
|
+
export async function renderImage(
|
|
162
156
|
options: renderImage.IRenderOptions
|
|
163
157
|
): Promise<void> {
|
|
164
158
|
// Unpack the options.
|
|
@@ -194,9 +188,6 @@ export function renderImage(
|
|
|
194
188
|
|
|
195
189
|
// Add the image to the host.
|
|
196
190
|
host.appendChild(img);
|
|
197
|
-
|
|
198
|
-
// Return the rendered promise.
|
|
199
|
-
return Promise.resolve(undefined);
|
|
200
191
|
}
|
|
201
192
|
|
|
202
193
|
/**
|
|
@@ -251,7 +242,7 @@ export namespace renderImage {
|
|
|
251
242
|
*
|
|
252
243
|
* @returns A promise which resolves when rendering is complete.
|
|
253
244
|
*/
|
|
254
|
-
export function renderLatex(
|
|
245
|
+
export async function renderLatex(
|
|
255
246
|
options: renderLatex.IRenderOptions
|
|
256
247
|
): Promise<void> {
|
|
257
248
|
// Unpack the options.
|
|
@@ -264,9 +255,6 @@ export function renderLatex(
|
|
|
264
255
|
if (shouldTypeset && latexTypesetter) {
|
|
265
256
|
latexTypesetter.typeset(host);
|
|
266
257
|
}
|
|
267
|
-
|
|
268
|
-
// Return the rendered promise.
|
|
269
|
-
return Promise.resolve(undefined);
|
|
270
258
|
}
|
|
271
259
|
|
|
272
260
|
/**
|
|
@@ -421,21 +409,23 @@ export namespace renderMarkdown {
|
|
|
421
409
|
*
|
|
422
410
|
* @returns A promise which resolves when rendering is complete.
|
|
423
411
|
*/
|
|
424
|
-
export function renderSVG(
|
|
412
|
+
export async function renderSVG(
|
|
413
|
+
options: renderSVG.IRenderOptions
|
|
414
|
+
): Promise<void> {
|
|
425
415
|
// Unpack the options.
|
|
426
416
|
let { host, source, trusted, unconfined } = options;
|
|
427
417
|
|
|
428
418
|
// Clear the content if there is no source.
|
|
429
419
|
if (!source) {
|
|
430
420
|
host.textContent = '';
|
|
431
|
-
return
|
|
421
|
+
return;
|
|
432
422
|
}
|
|
433
423
|
|
|
434
424
|
// Display a message if the source is not trusted.
|
|
435
425
|
if (!trusted) {
|
|
436
426
|
host.textContent =
|
|
437
427
|
'Cannot display an untrusted SVG. Maybe you need to run the cell?';
|
|
438
|
-
return
|
|
428
|
+
return;
|
|
439
429
|
}
|
|
440
430
|
|
|
441
431
|
// Add missing SVG namespace (if actually missing)
|
|
@@ -452,7 +442,6 @@ export function renderSVG(options: renderSVG.IRenderOptions): Promise<void> {
|
|
|
452
442
|
if (unconfined === true) {
|
|
453
443
|
host.classList.add('jp-mod-unconfined');
|
|
454
444
|
}
|
|
455
|
-
return Promise.resolve();
|
|
456
445
|
}
|
|
457
446
|
|
|
458
447
|
/**
|
|
@@ -644,6 +633,7 @@ function autolink(
|
|
|
644
633
|
|
|
645
634
|
while (null != (match = regex.exec(content))) {
|
|
646
635
|
const stringBeforeMatch = content.substring(currentIndex, match.index);
|
|
636
|
+
|
|
647
637
|
if (stringBeforeMatch) {
|
|
648
638
|
linkify(stringBeforeMatch, regexIndex + 1);
|
|
649
639
|
}
|
|
@@ -786,14 +776,13 @@ function* alignedNodes<T extends Node, U extends Node>(
|
|
|
786
776
|
*
|
|
787
777
|
* @returns A promise which resolves when rendering is complete.
|
|
788
778
|
*/
|
|
789
|
-
export function renderText(
|
|
779
|
+
export async function renderText(
|
|
780
|
+
options: renderText.IRenderOptions
|
|
781
|
+
): Promise<void> {
|
|
790
782
|
renderTextual(options, {
|
|
791
783
|
checkWeb: true,
|
|
792
784
|
checkPaths: false
|
|
793
785
|
});
|
|
794
|
-
|
|
795
|
-
// Return the rendered promise.
|
|
796
|
-
return Promise.resolve(undefined);
|
|
797
786
|
}
|
|
798
787
|
|
|
799
788
|
/**
|
|
@@ -809,6 +798,8 @@ function nativeSanitize(source: string): string {
|
|
|
809
798
|
return el.innerHTML;
|
|
810
799
|
}
|
|
811
800
|
|
|
801
|
+
const ansiPrefix = '\x1b';
|
|
802
|
+
|
|
812
803
|
/**
|
|
813
804
|
* Render the textual representation into a host node.
|
|
814
805
|
*
|
|
@@ -821,8 +812,7 @@ function renderTextual(
|
|
|
821
812
|
// Unpack the options.
|
|
822
813
|
const { host, sanitizer, source } = options;
|
|
823
814
|
|
|
824
|
-
const
|
|
825
|
-
const hasAnsiPrefix = ansiPrefixRe.test(source);
|
|
815
|
+
const hasAnsiPrefix = source.includes(ansiPrefix);
|
|
826
816
|
|
|
827
817
|
// Create the HTML content:
|
|
828
818
|
// If no ANSI codes are present use a fast path for escaping.
|
|
@@ -1001,7 +991,7 @@ function getApplicableLinkCache(
|
|
|
1001
991
|
*
|
|
1002
992
|
* @returns A promise which resolves when rendering is complete.
|
|
1003
993
|
*/
|
|
1004
|
-
export function renderError(
|
|
994
|
+
export async function renderError(
|
|
1005
995
|
options: renderError.IRenderOptions
|
|
1006
996
|
): Promise<void> {
|
|
1007
997
|
// Unpack the options.
|
|
@@ -1013,15 +1003,9 @@ export function renderError(
|
|
|
1013
1003
|
});
|
|
1014
1004
|
|
|
1015
1005
|
// Patch the paths if a resolver is available.
|
|
1016
|
-
let promise: Promise<void>;
|
|
1017
1006
|
if (resolver) {
|
|
1018
|
-
|
|
1019
|
-
} else {
|
|
1020
|
-
promise = Promise.resolve(undefined);
|
|
1007
|
+
await Private.handlePaths(host, resolver, linkHandler);
|
|
1021
1008
|
}
|
|
1022
|
-
|
|
1023
|
-
// Return the rendered promise.
|
|
1024
|
-
return promise;
|
|
1025
1009
|
}
|
|
1026
1010
|
|
|
1027
1011
|
/**
|
|
@@ -1224,13 +1208,12 @@ namespace Private {
|
|
|
1224
1208
|
*
|
|
1225
1209
|
* @returns a promise fulfilled when the relative urls have been resolved.
|
|
1226
1210
|
*/
|
|
1227
|
-
export function handleUrls(
|
|
1211
|
+
export async function handleUrls(
|
|
1228
1212
|
node: HTMLElement,
|
|
1229
1213
|
resolver: IRenderMime.IResolver,
|
|
1230
1214
|
linkHandler: IRenderMime.ILinkHandler | null
|
|
1231
|
-
): Promise<
|
|
1232
|
-
|
|
1233
|
-
const promises: Promise<void>[] = [];
|
|
1215
|
+
): Promise<unknown> {
|
|
1216
|
+
const promises = [];
|
|
1234
1217
|
|
|
1235
1218
|
// Handle HTML Elements with src attributes.
|
|
1236
1219
|
const nodes = node.querySelectorAll('*[src]');
|
|
@@ -1250,12 +1233,11 @@ namespace Private {
|
|
|
1250
1233
|
promises.push(handleAttr(links[i], 'href', resolver));
|
|
1251
1234
|
}
|
|
1252
1235
|
|
|
1253
|
-
|
|
1254
|
-
return Promise.all(promises).then(() => undefined);
|
|
1236
|
+
return Promise.all(promises);
|
|
1255
1237
|
}
|
|
1256
1238
|
|
|
1257
1239
|
/**
|
|
1258
|
-
* Resolve the paths in `<a>` elements `data`
|
|
1240
|
+
* Resolve the paths in `<a>` elements that have a `data-path` attribute.
|
|
1259
1241
|
*
|
|
1260
1242
|
* @param node - The head html element.
|
|
1261
1243
|
*
|
|
@@ -1269,12 +1251,13 @@ namespace Private {
|
|
|
1269
1251
|
node: HTMLElement,
|
|
1270
1252
|
resolver: IRenderMime.IResolver,
|
|
1271
1253
|
linkHandler: IRenderMime.ILinkHandler | null
|
|
1272
|
-
): Promise<
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1254
|
+
): Promise<unknown> {
|
|
1255
|
+
const anchors: HTMLAnchorElement[] = Array.from(
|
|
1256
|
+
node.querySelectorAll('a[data-path]')
|
|
1257
|
+
);
|
|
1258
|
+
return Promise.all(
|
|
1259
|
+
anchors.map(anchor => handlePathAnchor(anchor, resolver, linkHandler))
|
|
1260
|
+
);
|
|
1278
1261
|
}
|
|
1279
1262
|
|
|
1280
1263
|
/**
|
|
@@ -1332,7 +1315,7 @@ namespace Private {
|
|
|
1332
1315
|
/**
|
|
1333
1316
|
* Handle an anchor node.
|
|
1334
1317
|
*/
|
|
1335
|
-
function handleAnchor(
|
|
1318
|
+
async function handleAnchor(
|
|
1336
1319
|
anchor: HTMLAnchorElement,
|
|
1337
1320
|
resolver: IRenderMime.IResolver,
|
|
1338
1321
|
linkHandler: IRenderMime.ILinkHandler | null
|
|
@@ -1345,7 +1328,7 @@ namespace Private {
|
|
|
1345
1328
|
: URLExt.isLocal(href);
|
|
1346
1329
|
// Bail if it is not a file-like url.
|
|
1347
1330
|
if (!href || !isLocal) {
|
|
1348
|
-
return
|
|
1331
|
+
return;
|
|
1349
1332
|
}
|
|
1350
1333
|
// Remove the hash until we can handle it.
|
|
1351
1334
|
const hash = anchor.hash;
|
|
@@ -1353,7 +1336,7 @@ namespace Private {
|
|
|
1353
1336
|
// Handle internal link in the file.
|
|
1354
1337
|
if (hash === href) {
|
|
1355
1338
|
anchor.target = '_self';
|
|
1356
|
-
return
|
|
1339
|
+
return;
|
|
1357
1340
|
}
|
|
1358
1341
|
// For external links, remove the hash until we have hash handling.
|
|
1359
1342
|
href = href.replace(hash, '');
|
|
@@ -1412,7 +1395,7 @@ namespace Private {
|
|
|
1412
1395
|
!linkHandler.handlePath
|
|
1413
1396
|
) {
|
|
1414
1397
|
anchor.replaceWith(...anchor.childNodes);
|
|
1415
|
-
return
|
|
1398
|
+
return;
|
|
1416
1399
|
}
|
|
1417
1400
|
try {
|
|
1418
1401
|
// Find given path
|
|
@@ -1421,7 +1404,7 @@ namespace Private {
|
|
|
1421
1404
|
if (!resolution) {
|
|
1422
1405
|
// Bail if the file does not exist
|
|
1423
1406
|
console.log('Path resolution bailing: does not exist');
|
|
1424
|
-
return
|
|
1407
|
+
return;
|
|
1425
1408
|
}
|
|
1426
1409
|
|
|
1427
1410
|
// Handle the click override.
|
|
@@ -1441,6 +1424,7 @@ namespace Private {
|
|
|
1441
1424
|
anchor.href = '#linking-failed-see-console';
|
|
1442
1425
|
}
|
|
1443
1426
|
}
|
|
1427
|
+
|
|
1444
1428
|
const ANSI_COLORS = [
|
|
1445
1429
|
'ansi-black',
|
|
1446
1430
|
'ansi-red',
|