artifactuse 0.1.28 → 0.1.29
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/README.md +20 -1
- package/dist/{index-D56xsAnF.js → index-DogWZVep.js} +370 -358
- package/dist/index.js +1 -1
- package/dist/react/index.js +44 -43
- package/dist/styles/components/inline-preview.css +9 -0
- package/dist/svelte/index.js +2 -1
- package/dist/vue/index.js +84 -83
- package/dist/vue2/index.js +40 -5
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var qr = Object.defineProperty;
|
|
2
2
|
var Zr = (e, t, r) => t in e ? qr(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
|
|
3
3
|
var P = (e, t, r) => Zr(e, typeof t != "symbol" ? t + "" : t, r);
|
|
4
|
-
const
|
|
4
|
+
const Ee = {
|
|
5
5
|
CODE: "code",
|
|
6
6
|
FORM: "form",
|
|
7
7
|
SOCIAL: "social"
|
|
@@ -306,19 +306,31 @@ function Wr(e, t) {
|
|
|
306
306
|
}
|
|
307
307
|
function Xr(e, t, r, a) {
|
|
308
308
|
const s = a.maxLines || 15;
|
|
309
|
+
function n(f, b) {
|
|
310
|
+
if (b) return !1;
|
|
311
|
+
const y = a.minClickableLines;
|
|
312
|
+
if (y == null) return !1;
|
|
313
|
+
const v = typeof y == "number" ? y : y.lines || 0, k = typeof y == "object" && Array.isArray(y.ignoreLanguages) ? y.ignoreLanguages : [];
|
|
314
|
+
return f < v && !k.includes(r);
|
|
315
|
+
}
|
|
316
|
+
function o(f, b) {
|
|
317
|
+
const y = a.actionLabel;
|
|
318
|
+
let v;
|
|
319
|
+
return typeof y == "string" ? v = y : y && typeof y == "object" && (v = y[f] || y.default || null), v || (v = f === "diff" || f === "patch" || f === "smartdiff" ? "View full diff" : "View full code"), `${v} (${b} lines)`;
|
|
320
|
+
}
|
|
309
321
|
if (r === "smartdiff")
|
|
310
322
|
try {
|
|
311
|
-
const
|
|
312
|
-
`),
|
|
313
|
-
`)),
|
|
314
|
-
return `<div class="artifactuse-inline-preview${
|
|
323
|
+
const f = JSON.parse(t), y = Wr(f.oldCode, f.newCode).split(`
|
|
324
|
+
`), v = y.slice(0, s), k = v.map((H) => H[0] || " "), $ = v.map((H) => H.slice(1)), R = ct($.join(`
|
|
325
|
+
`)), z = y.length > s, Z = f.language || "plaintext", A = n(y.length, z), j = A ? " artifactuse-inline-preview--static" : "", I = A ? ' data-non-clickable="true"' : "", T = o("smartdiff", y.length);
|
|
326
|
+
return `<div class="artifactuse-inline-preview${z ? " artifactuse-inline-preview--truncated" : ""}${j}" data-artifact-id="${e.id}" data-smartdiff="true" data-smartdiff-markers="${k.join(",")}"${I}><pre class="artifactuse-inline-preview__pre"><code class="language-${Z}">${R}</code></pre>` + (z ? `<div class="artifactuse-inline-preview__fade"><span class="artifactuse-inline-preview__action">${T}</span></div>` : "") + "</div>";
|
|
315
327
|
} catch {
|
|
316
328
|
}
|
|
317
|
-
let
|
|
318
|
-
const
|
|
319
|
-
`),
|
|
320
|
-
`),
|
|
321
|
-
return `<div class="artifactuse-inline-preview${
|
|
329
|
+
let i = t, u = r;
|
|
330
|
+
const c = i.split(`
|
|
331
|
+
`), d = c.slice(0, s).join(`
|
|
332
|
+
`), p = ct(d), w = c.length > s, l = n(c.length, w), g = l ? " artifactuse-inline-preview--static" : "", h = l ? ' data-non-clickable="true"' : "", m = o(r, c.length);
|
|
333
|
+
return `<div class="artifactuse-inline-preview${w ? " artifactuse-inline-preview--truncated" : ""}${g}" data-artifact-id="${e.id}"${h}><pre class="artifactuse-inline-preview__pre"><code class="language-${u}">${p}</code></pre>` + (w ? `<div class="artifactuse-inline-preview__fade"><span class="artifactuse-inline-preview__action">${m}</span></div>` : "") + "</div>";
|
|
322
334
|
}
|
|
323
335
|
function Kr(e, t = "panel") {
|
|
324
336
|
const r = Ur(e);
|
|
@@ -348,7 +360,7 @@ function Qr(e, t) {
|
|
|
348
360
|
}
|
|
349
361
|
function Yr(e) {
|
|
350
362
|
const t = e == null ? void 0 : e.toLowerCase();
|
|
351
|
-
return t === "form" ?
|
|
363
|
+
return t === "form" ? Ee.FORM : t === "social" ? Ee.SOCIAL : Ee.CODE;
|
|
352
364
|
}
|
|
353
365
|
function $e(e, t, r, a) {
|
|
354
366
|
const s = t == null ? void 0 : t.toLowerCase(), n = Yr(s), o = Qr(s, e);
|
|
@@ -392,34 +404,34 @@ function ea(e, t, r = {}) {
|
|
|
392
404
|
tabs: u = null,
|
|
393
405
|
viewMode: c = null
|
|
394
406
|
} = r;
|
|
395
|
-
function d(
|
|
396
|
-
return o ? o.languages === !0 ? !0 : Array.isArray(o.languages) ? o.languages.includes(
|
|
407
|
+
function d(m) {
|
|
408
|
+
return o ? o.languages === !0 ? !0 : Array.isArray(o.languages) ? o.languages.includes(m) : !1 : !1;
|
|
397
409
|
}
|
|
398
|
-
function p(
|
|
399
|
-
return i ? i.languages === !0 ? !0 : Array.isArray(i.languages) ? i.languages.includes(
|
|
410
|
+
function p(m) {
|
|
411
|
+
return i ? i.languages === !0 ? !0 : Array.isArray(i.languages) ? i.languages.includes(m) : !1 : !1;
|
|
400
412
|
}
|
|
401
413
|
const w = [], l = /<pre><code class="language-(\w+)">([\s\S]*?)<\/code><\/pre>/gi;
|
|
402
|
-
let
|
|
403
|
-
const
|
|
414
|
+
let g = 0;
|
|
415
|
+
const h = e.replace(l, (m, f, b) => {
|
|
404
416
|
const y = fr(b).trim(), v = y.split(`
|
|
405
417
|
`).length;
|
|
406
|
-
let k =
|
|
418
|
+
let k = f.toLowerCase();
|
|
407
419
|
if ((["xml", "markup", "html", "htm"].includes(k) || !k) && y.trim().startsWith("<svg") && (k = "svg"), p(k))
|
|
408
|
-
return
|
|
420
|
+
return g++, m;
|
|
409
421
|
const $ = pr(k);
|
|
410
422
|
let R = !1;
|
|
411
423
|
if (n ? R = !0 : k === "diff" || k === "patch" || k === "smartdiff" ? R = v > 10 : $ ? R = !0 : R = y.length >= s && v >= a, !R && d(k) && (R = !0), R) {
|
|
412
|
-
const
|
|
413
|
-
if (u && (
|
|
414
|
-
return Xr(
|
|
415
|
-
let
|
|
416
|
-
return
|
|
424
|
+
const z = $e(y, k, t, g);
|
|
425
|
+
if (u && (z.tabs = u), c && (z.viewMode = c), g++, w.push(z), d(k))
|
|
426
|
+
return Xr(z, y, k, o);
|
|
427
|
+
let Z = "panel";
|
|
428
|
+
return z.isInline && (Z = z.type === "social" ? "inline-social" : "inline-form"), Kr(z, Z);
|
|
417
429
|
}
|
|
418
|
-
return
|
|
430
|
+
return g++, m;
|
|
419
431
|
});
|
|
420
432
|
return {
|
|
421
433
|
artifacts: w,
|
|
422
|
-
html:
|
|
434
|
+
html: h
|
|
423
435
|
};
|
|
424
436
|
}
|
|
425
437
|
function ta() {
|
|
@@ -514,19 +526,19 @@ function ta() {
|
|
|
514
526
|
viewMode: v
|
|
515
527
|
}, r();
|
|
516
528
|
}
|
|
517
|
-
function
|
|
529
|
+
function g(v) {
|
|
518
530
|
e = {
|
|
519
531
|
...e,
|
|
520
532
|
isFullscreen: v
|
|
521
533
|
}, r();
|
|
522
534
|
}
|
|
523
|
-
function
|
|
535
|
+
function h(v) {
|
|
524
536
|
return e.artifacts.filter((k) => k.messageId === v);
|
|
525
537
|
}
|
|
526
|
-
function
|
|
538
|
+
function m(v) {
|
|
527
539
|
return e.artifacts.filter((k) => k.type === v);
|
|
528
540
|
}
|
|
529
|
-
function
|
|
541
|
+
function f() {
|
|
530
542
|
return e.artifacts.length;
|
|
531
543
|
}
|
|
532
544
|
function b() {
|
|
@@ -563,15 +575,15 @@ function ta() {
|
|
|
563
575
|
removeArtifact: i,
|
|
564
576
|
getArtifact: u,
|
|
565
577
|
getActiveArtifact: c,
|
|
566
|
-
getArtifactsByMessageId:
|
|
567
|
-
getArtifactsByType:
|
|
568
|
-
getArtifactCount:
|
|
578
|
+
getArtifactsByMessageId: h,
|
|
579
|
+
getArtifactsByType: m,
|
|
580
|
+
getArtifactCount: f,
|
|
569
581
|
// Panel state
|
|
570
582
|
setActiveArtifact: d,
|
|
571
583
|
clearActiveArtifact: p,
|
|
572
584
|
setPanelOpen: w,
|
|
573
585
|
setViewMode: l,
|
|
574
|
-
setFullscreen:
|
|
586
|
+
setFullscreen: g,
|
|
575
587
|
// Utilities
|
|
576
588
|
clear: b,
|
|
577
589
|
batch: y
|
|
@@ -606,21 +618,21 @@ function ra(e = []) {
|
|
|
606
618
|
((L = A.data) == null ? void 0 : L.type) === "artifactuse" && console.warn("[Bridge] Origin NOT allowed:", A.origin);
|
|
607
619
|
return;
|
|
608
620
|
}
|
|
609
|
-
const { type: j, action: I, data: T, requestId:
|
|
621
|
+
const { type: j, action: I, data: T, requestId: H } = A.data || {};
|
|
610
622
|
if (j !== "artifactuse") return;
|
|
611
623
|
if (I === "ready" || I === "panel:ready") {
|
|
612
|
-
console.log("[Bridge] panel:ready received, setting isReady=true"), n = !0, o = !0,
|
|
624
|
+
console.log("[Bridge] panel:ready received, setting isReady=true"), n = !0, o = !0, g();
|
|
613
625
|
return;
|
|
614
626
|
}
|
|
615
|
-
(a.get(I) || []).forEach((
|
|
627
|
+
(a.get(I) || []).forEach((C) => {
|
|
616
628
|
try {
|
|
617
|
-
|
|
629
|
+
C(T, H);
|
|
618
630
|
} catch (S) {
|
|
619
631
|
console.error(`Artifactuse bridge handler error (${I}):`, S);
|
|
620
632
|
}
|
|
621
|
-
}), (a.get("*") || []).forEach((
|
|
633
|
+
}), (a.get("*") || []).forEach((C) => {
|
|
622
634
|
try {
|
|
623
|
-
|
|
635
|
+
C({ action: I, data: T, requestId: H });
|
|
624
636
|
} catch (S) {
|
|
625
637
|
console.error("Artifactuse bridge wildcard handler error:", S);
|
|
626
638
|
}
|
|
@@ -637,12 +649,12 @@ function ra(e = []) {
|
|
|
637
649
|
return [...r];
|
|
638
650
|
}
|
|
639
651
|
function l(A) {
|
|
640
|
-
console.log("[Bridge] setIframe called, current isReady:", n, "readySignalReceived:", o, "same iframe:", s === A), s !== A && (s = A, o ? (console.log("[Bridge] Ready signal was already received, keeping isReady=true"), n = !0) : n = !1), console.log("[Bridge] setIframe done, isReady:", n, "pendingMessages:", i.length),
|
|
652
|
+
console.log("[Bridge] setIframe called, current isReady:", n, "readySignalReceived:", o, "same iframe:", s === A), s !== A && (s = A, o ? (console.log("[Bridge] Ready signal was already received, keeping isReady=true"), n = !0) : n = !1), console.log("[Bridge] setIframe done, isReady:", n, "pendingMessages:", i.length), g();
|
|
641
653
|
}
|
|
642
|
-
function
|
|
643
|
-
console.log("[Bridge] flushPendingMessages: isReady=", n, "hasIframe=", !!(s != null && s.contentWindow), "pending=", i.length), n && (s != null && s.contentWindow) && i.length > 0 && (console.log("[Bridge] Flushing", i.length, "pending messages"), i.forEach((A) =>
|
|
654
|
+
function g() {
|
|
655
|
+
console.log("[Bridge] flushPendingMessages: isReady=", n, "hasIframe=", !!(s != null && s.contentWindow), "pending=", i.length), n && (s != null && s.contentWindow) && i.length > 0 && (console.log("[Bridge] Flushing", i.length, "pending messages"), i.forEach((A) => h(A)), i.length = 0);
|
|
644
656
|
}
|
|
645
|
-
function
|
|
657
|
+
function h(A, j = "*") {
|
|
646
658
|
if (!(s != null && s.contentWindow))
|
|
647
659
|
return console.warn("Artifactuse: No panel iframe available"), !1;
|
|
648
660
|
try {
|
|
@@ -651,24 +663,24 @@ function ra(e = []) {
|
|
|
651
663
|
return console.error("Artifactuse bridge send error:", I), !1;
|
|
652
664
|
}
|
|
653
665
|
}
|
|
654
|
-
function
|
|
655
|
-
const
|
|
666
|
+
function m(A, j, I = null, T = "*") {
|
|
667
|
+
const H = {
|
|
656
668
|
type: "artifactuse",
|
|
657
669
|
action: A,
|
|
658
670
|
data: j,
|
|
659
671
|
requestId: I || ut(),
|
|
660
672
|
timestamp: Date.now()
|
|
661
673
|
};
|
|
662
|
-
return n ? (
|
|
674
|
+
return n ? (h(H, T), H.requestId) : (i.push(H), H.requestId);
|
|
663
675
|
}
|
|
664
|
-
function
|
|
665
|
-
return new Promise((T,
|
|
676
|
+
function f(A, j, I = 3e4) {
|
|
677
|
+
return new Promise((T, H) => {
|
|
666
678
|
const X = ut(), te = setTimeout(() => {
|
|
667
|
-
y(`${A}:response`, U),
|
|
679
|
+
y(`${A}:response`, U), H(new Error(`Artifactuse bridge request timeout: ${A}`));
|
|
668
680
|
}, I), U = (x, L) => {
|
|
669
681
|
L === X && (clearTimeout(te), y(`${A}:response`, U), T(x));
|
|
670
682
|
};
|
|
671
|
-
b(`${A}:response`, U),
|
|
683
|
+
b(`${A}:response`, U), m(A, j, X);
|
|
672
684
|
});
|
|
673
685
|
}
|
|
674
686
|
function b(A, j) {
|
|
@@ -682,35 +694,35 @@ function ra(e = []) {
|
|
|
682
694
|
}
|
|
683
695
|
}
|
|
684
696
|
function v(A) {
|
|
685
|
-
return
|
|
697
|
+
return m("load:artifact", A);
|
|
686
698
|
}
|
|
687
699
|
function k(A, j) {
|
|
688
|
-
return
|
|
700
|
+
return m("update:artifact", { artifactId: A, updates: j });
|
|
689
701
|
}
|
|
690
702
|
function $() {
|
|
691
|
-
return
|
|
703
|
+
return f("save", {});
|
|
692
704
|
}
|
|
693
705
|
function R(A = "default") {
|
|
694
|
-
return
|
|
706
|
+
return f("export", { format: A });
|
|
695
707
|
}
|
|
696
|
-
function
|
|
697
|
-
return
|
|
708
|
+
function z(A, j) {
|
|
709
|
+
return m("ai:response", A, j);
|
|
698
710
|
}
|
|
699
|
-
function
|
|
711
|
+
function Z() {
|
|
700
712
|
window.removeEventListener("message", c), a.clear(), r.clear(), s = null, n = !1, o = !1, i.length = 0;
|
|
701
713
|
}
|
|
702
714
|
return {
|
|
703
715
|
setIframe: l,
|
|
704
|
-
send:
|
|
705
|
-
request:
|
|
716
|
+
send: m,
|
|
717
|
+
request: f,
|
|
706
718
|
on: b,
|
|
707
719
|
off: y,
|
|
708
720
|
loadArtifact: v,
|
|
709
721
|
updateArtifact: k,
|
|
710
722
|
requestSave: $,
|
|
711
723
|
requestExport: R,
|
|
712
|
-
sendAIResponse:
|
|
713
|
-
destroy:
|
|
724
|
+
sendAIResponse: z,
|
|
725
|
+
destroy: Z,
|
|
714
726
|
// Origin management
|
|
715
727
|
addAllowedOrigin: d,
|
|
716
728
|
removeAllowedOrigin: p,
|
|
@@ -830,8 +842,8 @@ function na(e = "auto", t = {}) {
|
|
|
830
842
|
t.dark && (a.dark = { ...a.dark, ...ve(t.dark) }), t.light && (a.light = { ...a.light, ...ve(t.light) });
|
|
831
843
|
const s = { ...t };
|
|
832
844
|
if (delete s.dark, delete s.light, Object.keys(s).length > 0) {
|
|
833
|
-
const
|
|
834
|
-
a.dark = { ...a.dark, ...
|
|
845
|
+
const g = ve(s);
|
|
846
|
+
a.dark = { ...a.dark, ...g }, a.light = { ...a.light, ...g };
|
|
835
847
|
}
|
|
836
848
|
function n() {
|
|
837
849
|
return r === "auto" ? window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light" : r;
|
|
@@ -840,55 +852,55 @@ function na(e = "auto", t = {}) {
|
|
|
840
852
|
return a[n()];
|
|
841
853
|
}
|
|
842
854
|
function i() {
|
|
843
|
-
const
|
|
844
|
-
return Object.entries(
|
|
855
|
+
const g = o();
|
|
856
|
+
return Object.entries(g).map(([h, m]) => `--artifactuse-${ce(h)}: ${m};`).join(`
|
|
845
857
|
`);
|
|
846
858
|
}
|
|
847
|
-
function u(
|
|
848
|
-
const
|
|
849
|
-
Object.entries(
|
|
850
|
-
|
|
851
|
-
}),
|
|
859
|
+
function u(g = document.documentElement) {
|
|
860
|
+
const h = o(), m = n();
|
|
861
|
+
Object.entries(h).forEach(([f, b]) => {
|
|
862
|
+
g.style.setProperty(`--artifactuse-${ce(f)}`, b);
|
|
863
|
+
}), g.setAttribute("data-artifactuse-theme", m), g.classList.remove("artifactuse-dark", "artifactuse-light"), g.classList.add(`artifactuse-${m}`);
|
|
852
864
|
}
|
|
853
|
-
function c(
|
|
854
|
-
if (!["dark", "light", "auto"].includes(
|
|
855
|
-
console.warn(`Invalid theme: ${
|
|
865
|
+
function c(g) {
|
|
866
|
+
if (!["dark", "light", "auto"].includes(g)) {
|
|
867
|
+
console.warn(`Invalid theme: ${g}`);
|
|
856
868
|
return;
|
|
857
869
|
}
|
|
858
|
-
r =
|
|
870
|
+
r = g, u();
|
|
859
871
|
}
|
|
860
872
|
function d() {
|
|
861
|
-
const
|
|
862
|
-
c(
|
|
873
|
+
const g = n();
|
|
874
|
+
c(g === "dark" ? "light" : "dark");
|
|
863
875
|
}
|
|
864
|
-
function p(
|
|
865
|
-
const
|
|
866
|
-
|
|
876
|
+
function p(g, h = null) {
|
|
877
|
+
const m = ve(g);
|
|
878
|
+
h ? a[h] = { ...a[h], ...m } : (a.dark = { ...a.dark, ...m }, a.light = { ...a.light, ...m }), u();
|
|
867
879
|
}
|
|
868
|
-
function w(
|
|
869
|
-
const
|
|
870
|
-
r === "auto" && (u(),
|
|
880
|
+
function w(g) {
|
|
881
|
+
const h = window.matchMedia("(prefers-color-scheme: dark)"), m = (f) => {
|
|
882
|
+
r === "auto" && (u(), g && g(f.matches ? "dark" : "light"));
|
|
871
883
|
};
|
|
872
|
-
return
|
|
873
|
-
|
|
884
|
+
return h.addEventListener("change", m), () => {
|
|
885
|
+
h.removeEventListener("change", m);
|
|
874
886
|
};
|
|
875
887
|
}
|
|
876
888
|
function l() {
|
|
877
889
|
return `
|
|
878
890
|
:root,
|
|
879
891
|
[data-artifactuse-theme="dark"] {
|
|
880
|
-
${Object.entries(a.dark).map(([
|
|
892
|
+
${Object.entries(a.dark).map(([g, h]) => `--artifactuse-${ce(g)}: ${h};`).join(`
|
|
881
893
|
`)}
|
|
882
894
|
}
|
|
883
895
|
|
|
884
896
|
[data-artifactuse-theme="light"] {
|
|
885
|
-
${Object.entries(a.light).map(([
|
|
897
|
+
${Object.entries(a.light).map(([g, h]) => `--artifactuse-${ce(g)}: ${h};`).join(`
|
|
886
898
|
`)}
|
|
887
899
|
}
|
|
888
900
|
|
|
889
901
|
@media (prefers-color-scheme: light) {
|
|
890
902
|
:root:not([data-artifactuse-theme]) {
|
|
891
|
-
${Object.entries(a.light).map(([
|
|
903
|
+
${Object.entries(a.light).map(([g, h]) => `--artifactuse-${ce(g)}: ${h};`).join(`
|
|
892
904
|
`)}
|
|
893
905
|
}
|
|
894
906
|
}
|
|
@@ -996,8 +1008,8 @@ function la(e = {}) {
|
|
|
996
1008
|
var w;
|
|
997
1009
|
if (p.origin === t && ((w = p.data) == null ? void 0 : w.type) === "sdk-auth") {
|
|
998
1010
|
window.removeEventListener("message", c);
|
|
999
|
-
const { token: l, user:
|
|
1000
|
-
l ? (r({ token: l, user:
|
|
1011
|
+
const { token: l, user: g } = p.data;
|
|
1012
|
+
l ? (r({ token: l, user: g }), s({ token: l, user: g })) : n(new Error("Authentication failed"));
|
|
1001
1013
|
}
|
|
1002
1014
|
};
|
|
1003
1015
|
window.addEventListener("message", c);
|
|
@@ -1263,8 +1275,8 @@ function fa(e = {}) {
|
|
|
1263
1275
|
}
|
|
1264
1276
|
}, { dark: !1 });
|
|
1265
1277
|
}
|
|
1266
|
-
function o(w, l,
|
|
1267
|
-
return
|
|
1278
|
+
function o(w, l, g) {
|
|
1279
|
+
return g ? w.define([
|
|
1268
1280
|
{ tag: l.keyword, color: "#c084fc" },
|
|
1269
1281
|
{ tag: l.operator, color: "#94a3b8" },
|
|
1270
1282
|
{ tag: l.special(l.variableName), color: "#67e8f9" },
|
|
@@ -1357,8 +1369,8 @@ function fa(e = {}) {
|
|
|
1357
1369
|
function u(w) {
|
|
1358
1370
|
const l = i[w == null ? void 0 : w.toLowerCase()];
|
|
1359
1371
|
if (!l) return [];
|
|
1360
|
-
const
|
|
1361
|
-
return !
|
|
1372
|
+
const g = t[l.mod];
|
|
1373
|
+
return !g || typeof g[l.fn] != "function" ? [] : l.opts ? g[l.fn](l.opts) : g[l.fn]();
|
|
1362
1374
|
}
|
|
1363
1375
|
function c(w) {
|
|
1364
1376
|
return r === "auto" ? w === "dark" : r === "dark";
|
|
@@ -1367,31 +1379,31 @@ function fa(e = {}) {
|
|
|
1367
1379
|
var be, ie;
|
|
1368
1380
|
if (!a())
|
|
1369
1381
|
return console.warn("Artifactuse: CodeMirror modules not provided. Editor not available."), null;
|
|
1370
|
-
const { EditorState:
|
|
1371
|
-
EditorView:
|
|
1372
|
-
keymap:
|
|
1373
|
-
lineNumbers:
|
|
1382
|
+
const { EditorState: g } = t.state, {
|
|
1383
|
+
EditorView: h,
|
|
1384
|
+
keymap: m,
|
|
1385
|
+
lineNumbers: f,
|
|
1374
1386
|
highlightActiveLineGutter: b,
|
|
1375
1387
|
highlightSpecialChars: y,
|
|
1376
1388
|
drawSelection: v,
|
|
1377
1389
|
dropCursor: k,
|
|
1378
1390
|
rectangularSelection: $,
|
|
1379
1391
|
crosshairCursor: R,
|
|
1380
|
-
highlightActiveLine:
|
|
1381
|
-
} = t.view, { defaultKeymap:
|
|
1392
|
+
highlightActiveLine: z
|
|
1393
|
+
} = t.view, { defaultKeymap: Z, history: A, historyKeymap: j, indentWithTab: I } = t.commands, {
|
|
1382
1394
|
indentOnInput: T,
|
|
1383
|
-
syntaxHighlighting:
|
|
1395
|
+
syntaxHighlighting: H,
|
|
1384
1396
|
bracketMatching: X,
|
|
1385
1397
|
foldGutter: te,
|
|
1386
1398
|
foldKeymap: U,
|
|
1387
1399
|
HighlightStyle: x
|
|
1388
1400
|
} = t.language, {
|
|
1389
1401
|
closeBrackets: L,
|
|
1390
|
-
closeBracketsKeymap:
|
|
1402
|
+
closeBracketsKeymap: C,
|
|
1391
1403
|
autocompletion: S,
|
|
1392
1404
|
completionKeymap: D
|
|
1393
|
-
} = t.autocomplete, M = ((be = t.lezerHighlight) == null ? void 0 : be.tags) || ((ie = t.language) == null ? void 0 : ie.tags),
|
|
1394
|
-
|
|
1405
|
+
} = t.autocomplete, M = ((be = t.lezerHighlight) == null ? void 0 : be.tags) || ((ie = t.language) == null ? void 0 : ie.tags), B = c(l.sdkTheme), ne = B ? s(h) : n(h), re = [
|
|
1406
|
+
f(),
|
|
1395
1407
|
b(),
|
|
1396
1408
|
y(),
|
|
1397
1409
|
A(),
|
|
@@ -1401,18 +1413,18 @@ function fa(e = {}) {
|
|
|
1401
1413
|
}),
|
|
1402
1414
|
v(),
|
|
1403
1415
|
k(),
|
|
1404
|
-
|
|
1416
|
+
g.allowMultipleSelections.of(!0),
|
|
1405
1417
|
T(),
|
|
1406
|
-
...M ? [
|
|
1418
|
+
...M ? [H(o(x, M, B))] : [],
|
|
1407
1419
|
X(),
|
|
1408
1420
|
L(),
|
|
1409
1421
|
S(),
|
|
1410
1422
|
$(),
|
|
1411
1423
|
R(),
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
...
|
|
1415
|
-
...
|
|
1424
|
+
z(),
|
|
1425
|
+
m.of([
|
|
1426
|
+
...C,
|
|
1427
|
+
...Z,
|
|
1416
1428
|
...j,
|
|
1417
1429
|
...U,
|
|
1418
1430
|
...D,
|
|
@@ -1422,30 +1434,30 @@ function fa(e = {}) {
|
|
|
1422
1434
|
ne
|
|
1423
1435
|
];
|
|
1424
1436
|
l.onChange && re.push(
|
|
1425
|
-
|
|
1437
|
+
h.updateListener.of((oe) => {
|
|
1426
1438
|
oe.docChanged && l.onChange(oe.state.doc.toString());
|
|
1427
1439
|
})
|
|
1428
1440
|
);
|
|
1429
|
-
const ae =
|
|
1441
|
+
const ae = g.create({
|
|
1430
1442
|
doc: l.code || "",
|
|
1431
1443
|
extensions: re
|
|
1432
|
-
}),
|
|
1444
|
+
}), O = new h({
|
|
1433
1445
|
state: ae,
|
|
1434
1446
|
parent: w
|
|
1435
1447
|
});
|
|
1436
1448
|
return {
|
|
1437
|
-
view:
|
|
1449
|
+
view: O,
|
|
1438
1450
|
getCode() {
|
|
1439
|
-
return
|
|
1451
|
+
return O.state.doc.toString();
|
|
1440
1452
|
},
|
|
1441
1453
|
setCode(oe) {
|
|
1442
|
-
const it =
|
|
1443
|
-
it !== oe &&
|
|
1454
|
+
const it = O.state.doc.toString();
|
|
1455
|
+
it !== oe && O.dispatch({
|
|
1444
1456
|
changes: { from: 0, to: it.length, insert: oe }
|
|
1445
1457
|
});
|
|
1446
1458
|
},
|
|
1447
1459
|
destroy() {
|
|
1448
|
-
|
|
1460
|
+
O.destroy();
|
|
1449
1461
|
}
|
|
1450
1462
|
};
|
|
1451
1463
|
}
|
|
@@ -1469,7 +1481,7 @@ var he = { exec: () => null };
|
|
|
1469
1481
|
function _(e, t = "") {
|
|
1470
1482
|
let r = typeof e == "string" ? e : e.source, a = { replace: (s, n) => {
|
|
1471
1483
|
let o = typeof n == "string" ? n : n.source;
|
|
1472
|
-
return o = o.replace(
|
|
1484
|
+
return o = o.replace(q.caret, "$1"), r = r.replace(s, o), a;
|
|
1473
1485
|
}, getRegex: () => new RegExp(r, t) };
|
|
1474
1486
|
return a;
|
|
1475
1487
|
}
|
|
@@ -1479,17 +1491,17 @@ var ha = (() => {
|
|
|
1479
1491
|
} catch {
|
|
1480
1492
|
return !1;
|
|
1481
1493
|
}
|
|
1482
|
-
})(),
|
|
1483
|
-
]`).replace("lheading", br).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex() }, za = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, Ca = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, yr = /^( {2,}|\\)\n(?!\s*$)/, La = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,
|
|
1494
|
+
})(), q = { codeRemoveIndent: /^(?: {1,4}| {0,3}\t)/gm, outputLinkReplace: /\\([\[\]])/g, indentCodeCompensation: /^(\s+)(?:```)/, beginningSpace: /^\s+/, endingHash: /#$/, startingSpaceChar: /^ /, endingSpaceChar: / $/, nonSpaceChar: /[^ ]/, newLineCharGlobal: /\n/g, tabCharGlobal: /\t/g, multipleSpaceGlobal: /\s+/g, blankLine: /^[ \t]*$/, doubleBlankLine: /\n[ \t]*\n[ \t]*$/, blockquoteStart: /^ {0,3}>/, blockquoteSetextReplace: /\n {0,3}((?:=+|-+) *)(?=\n|$)/g, blockquoteSetextReplace2: /^ {0,3}>[ \t]?/gm, listReplaceTabs: /^\t+/, listReplaceNesting: /^ {1,4}(?=( {4})*[^ ])/g, listIsTask: /^\[[ xX]\] +\S/, listReplaceTask: /^\[[ xX]\] +/, listTaskCheckbox: /\[[ xX]\]/, anyLine: /\n.*\n/, hrefBrackets: /^<(.*)>$/, tableDelimiter: /[:|]/, tableAlignChars: /^\||\| *$/g, tableRowBlankLine: /\n[ \t]*$/, tableAlignRight: /^ *-+: *$/, tableAlignCenter: /^ *:-+: *$/, tableAlignLeft: /^ *:-+ *$/, startATag: /^<a /i, endATag: /^<\/a>/i, startPreScriptTag: /^<(pre|code|kbd|script)(\s|>)/i, endPreScriptTag: /^<\/(pre|code|kbd|script)(\s|>)/i, startAngleBracket: /^</, endAngleBracket: />$/, pedanticHrefTitle: /^([^'"]*[^\s])\s+(['"])(.*)\2/, unicodeAlphaNumeric: /[\p{L}\p{N}]/u, escapeTest: /[&<>"']/, escapeReplace: /[&<>"']/g, escapeTestNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/, escapeReplaceNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g, unescapeTest: /&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig, caret: /(^|[^\[])\^/g, percentDecode: /%25/g, findPipe: /\|/g, splitPipe: / \|/, slashPipe: /\\\|/g, carriageReturn: /\r\n|\r/g, spaceLine: /^ +$/gm, notSpaceStart: /^\S*/, endingNewline: /\n$/, listItemRegex: (e) => new RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`), nextBulletRegex: (e) => new RegExp(`^ {0,${Math.min(3, e - 1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`), hrRegex: (e) => new RegExp(`^ {0,${Math.min(3, e - 1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`), fencesBeginRegex: (e) => new RegExp(`^ {0,${Math.min(3, e - 1)}}(?:\`\`\`|~~~)`), headingBeginRegex: (e) => new RegExp(`^ {0,${Math.min(3, e - 1)}}#`), htmlBeginRegex: (e) => new RegExp(`^ {0,${Math.min(3, e - 1)}}<(?:[a-z].*>|!--)`, "i") }, ga = /^(?:[ \t]*(?:\n|$))+/, ma = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, wa = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, me = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, ba = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, Je = /(?:[*+-]|\d{1,9}[.)])/, wr = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, br = _(wr).replace(/bull/g, Je).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), va = _(wr).replace(/bull/g, Je).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), Qe = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/, ya = /^[^\n]+/, Ye = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, ka = _(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", Ye).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), xa = _(/^( {0,3}bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g, Je).getRegex(), _e = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", et = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, $a = _("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", et).replace("tag", _e).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), vr = _(Qe).replace("hr", me).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", _e).getRegex(), Aa = _(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", vr).getRegex(), tt = { blockquote: Aa, code: ma, def: ka, fences: wa, heading: ba, hr: me, html: $a, lheading: br, list: xa, newline: ga, paragraph: vr, table: he, text: ya }, pt = _("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", me).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", _e).getRegex(), Sa = { ...tt, lheading: va, table: pt, paragraph: _(Qe).replace("hr", me).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", pt).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", _e).getRegex() }, Ra = { ...tt, html: _(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment", et).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(), def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/, heading: /^(#{1,6})(.*)(?:\n+|$)/, fences: he, lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/, paragraph: _(Qe).replace("hr", me).replace("heading", ` *#{1,6} *[^
|
|
1495
|
+
]`).replace("lheading", br).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex() }, za = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, Ca = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, yr = /^( {2,}|\\)\n(?!\s*$)/, La = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, Te = /[\p{P}\p{S}]/u, rt = /[\s\p{P}\p{S}]/u, kr = /[^\s\p{P}\p{S}]/u, Ma = _(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, rt).getRegex(), xr = /(?!~)[\p{P}\p{S}]/u, _a = /(?!~)[\s\p{P}\p{S}]/u, Ta = /(?:[^\s\p{P}\p{S}]|~)/u, Ea = _(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", ha ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), $r = /^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/, Pa = _($r, "u").replace(/punct/g, Te).getRegex(), ja = _($r, "u").replace(/punct/g, xr).getRegex(), Ar = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", Ia = _(Ar, "gu").replace(/notPunctSpace/g, kr).replace(/punctSpace/g, rt).replace(/punct/g, Te).getRegex(), Da = _(Ar, "gu").replace(/notPunctSpace/g, Ta).replace(/punctSpace/g, _a).replace(/punct/g, xr).getRegex(), Ha = _("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, kr).replace(/punctSpace/g, rt).replace(/punct/g, Te).getRegex(), qa = _(/\\(punct)/, "gu").replace(/punct/g, Te).getRegex(), Za = _(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), Ba = _(et).replace("(?:-->|$)", "-->").getRegex(), Oa = _("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", Ba).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), Ae = /(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/, Va = _(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]*(?:\n[ \t]*)?)(title))?\s*\)/).replace("label", Ae).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), Sr = _(/^!?\[(label)\]\[(ref)\]/).replace("label", Ae).replace("ref", Ye).getRegex(), Rr = _(/^!?\[(ref)\](?:\[\])?/).replace("ref", Ye).getRegex(), Fa = _("reflink|nolink(?!\\()", "g").replace("reflink", Sr).replace("nolink", Rr).getRegex(), ft = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, at = { _backpedal: he, anyPunctuation: qa, autolink: Za, blockSkip: Ea, br: yr, code: Ca, del: he, emStrongLDelim: Pa, emStrongRDelimAst: Ia, emStrongRDelimUnd: Ha, escape: za, link: Va, nolink: Rr, punctuation: Ma, reflink: Sr, reflinkSearch: Fa, tag: Oa, text: La, url: he }, Na = { ...at, link: _(/^!?\[(label)\]\((.*?)\)/).replace("label", Ae).getRegex(), reflink: _(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", Ae).getRegex() }, De = { ...at, emStrongRDelimAst: Da, emStrongLDelim: ja, url: _(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol", ft).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(), _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/, del: /^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/, text: _(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol", ft).getRegex() }, Ua = { ...De, br: _(yr).replace("{2,}", "*").getRegex(), text: _(De.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex() }, ye = { normal: tt, gfm: Sa, pedantic: Ra }, le = { normal: at, gfm: De, breaks: Ua, pedantic: Na }, Ga = { "&": "&", "<": "<", ">": ">", '"': """, "'": "'" }, ht = (e) => Ga[e];
|
|
1484
1496
|
function G(e, t) {
|
|
1485
1497
|
if (t) {
|
|
1486
|
-
if (
|
|
1487
|
-
} else if (
|
|
1498
|
+
if (q.escapeTest.test(e)) return e.replace(q.escapeReplace, ht);
|
|
1499
|
+
} else if (q.escapeTestNoEncode.test(e)) return e.replace(q.escapeReplaceNoEncode, ht);
|
|
1488
1500
|
return e;
|
|
1489
1501
|
}
|
|
1490
1502
|
function gt(e) {
|
|
1491
1503
|
try {
|
|
1492
|
-
e = encodeURI(e).replace(
|
|
1504
|
+
e = encodeURI(e).replace(q.percentDecode, "%");
|
|
1493
1505
|
} catch {
|
|
1494
1506
|
return null;
|
|
1495
1507
|
}
|
|
@@ -1497,14 +1509,14 @@ function gt(e) {
|
|
|
1497
1509
|
}
|
|
1498
1510
|
function mt(e, t) {
|
|
1499
1511
|
var n;
|
|
1500
|
-
let r = e.replace(
|
|
1512
|
+
let r = e.replace(q.findPipe, (o, i, u) => {
|
|
1501
1513
|
let c = !1, d = i;
|
|
1502
1514
|
for (; --d >= 0 && u[d] === "\\"; ) c = !c;
|
|
1503
1515
|
return c ? "|" : " |";
|
|
1504
|
-
}), a = r.split(
|
|
1516
|
+
}), a = r.split(q.splitPipe), s = 0;
|
|
1505
1517
|
if (a[0].trim() || a.shift(), a.length > 0 && !((n = a.at(-1)) != null && n.trim()) && a.pop(), t) if (a.length > t) a.splice(t);
|
|
1506
1518
|
else for (; a.length < t; ) a.push("");
|
|
1507
|
-
for (; s < a.length; s++) a[s] = a[s].trim().replace(
|
|
1519
|
+
for (; s < a.length; s++) a[s] = a[s].trim().replace(q.slashPipe, "|");
|
|
1508
1520
|
return a;
|
|
1509
1521
|
}
|
|
1510
1522
|
function ue(e, t, r) {
|
|
@@ -1607,16 +1619,16 @@ ${d}` : d;
|
|
|
1607
1619
|
let w = n.at(-1);
|
|
1608
1620
|
if ((w == null ? void 0 : w.type) === "code") break;
|
|
1609
1621
|
if ((w == null ? void 0 : w.type) === "blockquote") {
|
|
1610
|
-
let l = w,
|
|
1622
|
+
let l = w, g = l.raw + `
|
|
1611
1623
|
` + r.join(`
|
|
1612
|
-
`),
|
|
1613
|
-
n[n.length - 1] =
|
|
1624
|
+
`), h = this.blockquote(g);
|
|
1625
|
+
n[n.length - 1] = h, a = a.substring(0, a.length - l.raw.length) + h.raw, s = s.substring(0, s.length - l.text.length) + h.text;
|
|
1614
1626
|
break;
|
|
1615
1627
|
} else if ((w == null ? void 0 : w.type) === "list") {
|
|
1616
|
-
let l = w,
|
|
1628
|
+
let l = w, g = l.raw + `
|
|
1617
1629
|
` + r.join(`
|
|
1618
|
-
`),
|
|
1619
|
-
n[n.length - 1] =
|
|
1630
|
+
`), h = this.list(g);
|
|
1631
|
+
n[n.length - 1] = h, a = a.substring(0, a.length - w.raw.length) + h.raw, s = s.substring(0, s.length - l.raw.length) + h.raw, r = g.substring(n.at(-1).raw.length).split(`
|
|
1620
1632
|
`);
|
|
1621
1633
|
continue;
|
|
1622
1634
|
}
|
|
@@ -1636,24 +1648,24 @@ ${d}` : d;
|
|
|
1636
1648
|
if (!(t = i.exec(e)) || this.rules.block.hr.test(e)) break;
|
|
1637
1649
|
p = t[0], e = e.substring(p.length);
|
|
1638
1650
|
let l = t[2].split(`
|
|
1639
|
-
`, 1)[0].replace(this.rules.other.listReplaceTabs, (
|
|
1640
|
-
`, 1)[0],
|
|
1641
|
-
if (this.options.pedantic ? (
|
|
1642
|
-
`, e = e.substring(
|
|
1643
|
-
let
|
|
1651
|
+
`, 1)[0].replace(this.rules.other.listReplaceTabs, (f) => " ".repeat(3 * f.length)), g = e.split(`
|
|
1652
|
+
`, 1)[0], h = !l.trim(), m = 0;
|
|
1653
|
+
if (this.options.pedantic ? (m = 2, w = l.trimStart()) : h ? m = t[1].length + 1 : (m = t[2].search(this.rules.other.nonSpaceChar), m = m > 4 ? 1 : m, w = l.slice(m), m += t[1].length), h && this.rules.other.blankLine.test(g) && (p += g + `
|
|
1654
|
+
`, e = e.substring(g.length + 1), d = !0), !d) {
|
|
1655
|
+
let f = this.rules.other.nextBulletRegex(m), b = this.rules.other.hrRegex(m), y = this.rules.other.fencesBeginRegex(m), v = this.rules.other.headingBeginRegex(m), k = this.rules.other.htmlBeginRegex(m);
|
|
1644
1656
|
for (; e; ) {
|
|
1645
1657
|
let $ = e.split(`
|
|
1646
1658
|
`, 1)[0], R;
|
|
1647
|
-
if (
|
|
1648
|
-
if (R.search(this.rules.other.nonSpaceChar) >=
|
|
1649
|
-
` + R.slice(
|
|
1659
|
+
if (g = $, this.options.pedantic ? (g = g.replace(this.rules.other.listReplaceNesting, " "), R = g) : R = g.replace(this.rules.other.tabCharGlobal, " "), y.test(g) || v.test(g) || k.test(g) || f.test(g) || b.test(g)) break;
|
|
1660
|
+
if (R.search(this.rules.other.nonSpaceChar) >= m || !g.trim()) w += `
|
|
1661
|
+
` + R.slice(m);
|
|
1650
1662
|
else {
|
|
1651
|
-
if (
|
|
1663
|
+
if (h || l.replace(this.rules.other.tabCharGlobal, " ").search(this.rules.other.nonSpaceChar) >= 4 || y.test(l) || v.test(l) || b.test(l)) break;
|
|
1652
1664
|
w += `
|
|
1653
|
-
` +
|
|
1665
|
+
` + g;
|
|
1654
1666
|
}
|
|
1655
|
-
!
|
|
1656
|
-
`, e = e.substring($.length + 1), l = R.slice(
|
|
1667
|
+
!h && !g.trim() && (h = !0), p += $ + `
|
|
1668
|
+
`, e = e.substring($.length + 1), l = R.slice(m);
|
|
1657
1669
|
}
|
|
1658
1670
|
}
|
|
1659
1671
|
o.loose || (u ? o.loose = !0 : this.rules.other.doubleBlankLine.test(p) && (u = !0)), o.items.push({ type: "list_item", raw: p, task: !!this.options.gfm && this.rules.other.listIsTask.test(w), loose: !1, text: w, tokens: [] }), o.raw += p;
|
|
@@ -1850,7 +1862,7 @@ ${d}` : d;
|
|
|
1850
1862
|
P(this, "inlineQueue");
|
|
1851
1863
|
P(this, "tokenizer");
|
|
1852
1864
|
this.tokens = [], this.tokens.links = /* @__PURE__ */ Object.create(null), this.options = t || ee, this.options.tokenizer = this.options.tokenizer || new Se(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = { inLink: !1, inRawBlock: !1, top: !0 };
|
|
1853
|
-
let r = { other:
|
|
1865
|
+
let r = { other: q, block: ye.normal, inline: le.normal };
|
|
1854
1866
|
this.options.pedantic ? (r.block = ye.pedantic, r.inline = le.pedantic) : this.options.gfm && (r.block = ye.gfm, this.options.breaks ? r.inline = le.breaks : r.inline = le.gfm), this.tokenizer.rules = r;
|
|
1855
1867
|
}
|
|
1856
1868
|
static get rules() {
|
|
@@ -1863,7 +1875,7 @@ ${d}` : d;
|
|
|
1863
1875
|
return new He(r).inlineTokens(t);
|
|
1864
1876
|
}
|
|
1865
1877
|
lex(t) {
|
|
1866
|
-
t = t.replace(
|
|
1878
|
+
t = t.replace(q.carriageReturn, `
|
|
1867
1879
|
`), this.blockTokens(t, this.tokens);
|
|
1868
1880
|
for (let r = 0; r < this.inlineQueue.length; r++) {
|
|
1869
1881
|
let a = this.inlineQueue[r];
|
|
@@ -1873,7 +1885,7 @@ ${d}` : d;
|
|
|
1873
1885
|
}
|
|
1874
1886
|
blockTokens(t, r = [], a = !1) {
|
|
1875
1887
|
var s, n, o;
|
|
1876
|
-
for (this.options.pedantic && (t = t.replace(
|
|
1888
|
+
for (this.options.pedantic && (t = t.replace(q.tabCharGlobal, " ").replace(q.spaceLine, "")); t; ) {
|
|
1877
1889
|
let i;
|
|
1878
1890
|
if ((n = (s = this.options.extensions) == null ? void 0 : s.block) != null && n.some((c) => (i = c.call({ lexer: this }, t, r)) ? (t = t.substring(i.raw.length), r.push(i), !0) : !1)) continue;
|
|
1879
1891
|
if (i = this.tokenizer.space(t)) {
|
|
@@ -1985,7 +1997,7 @@ ${d}` : d;
|
|
|
1985
1997
|
for (; t; ) {
|
|
1986
1998
|
o || (i = ""), o = !1;
|
|
1987
1999
|
let l;
|
|
1988
|
-
if ((p = (d = this.options.extensions) == null ? void 0 : d.inline) != null && p.some((
|
|
2000
|
+
if ((p = (d = this.options.extensions) == null ? void 0 : d.inline) != null && p.some((h) => (l = h.call({ lexer: this }, t, r)) ? (t = t.substring(l.raw.length), r.push(l), !0) : !1)) continue;
|
|
1989
2001
|
if (l = this.tokenizer.escape(t)) {
|
|
1990
2002
|
t = t.substring(l.raw.length), r.push(l);
|
|
1991
2003
|
continue;
|
|
@@ -2000,8 +2012,8 @@ ${d}` : d;
|
|
|
2000
2012
|
}
|
|
2001
2013
|
if (l = this.tokenizer.reflink(t, this.tokens.links)) {
|
|
2002
2014
|
t = t.substring(l.raw.length);
|
|
2003
|
-
let
|
|
2004
|
-
l.type === "text" && (
|
|
2015
|
+
let h = r.at(-1);
|
|
2016
|
+
l.type === "text" && (h == null ? void 0 : h.type) === "text" ? (h.raw += l.raw, h.text += l.text) : r.push(l);
|
|
2005
2017
|
continue;
|
|
2006
2018
|
}
|
|
2007
2019
|
if (l = this.tokenizer.emStrong(t, a, i)) {
|
|
@@ -2028,25 +2040,25 @@ ${d}` : d;
|
|
|
2028
2040
|
t = t.substring(l.raw.length), r.push(l);
|
|
2029
2041
|
continue;
|
|
2030
2042
|
}
|
|
2031
|
-
let
|
|
2043
|
+
let g = t;
|
|
2032
2044
|
if ((w = this.options.extensions) != null && w.startInline) {
|
|
2033
|
-
let
|
|
2045
|
+
let h = 1 / 0, m = t.slice(1), f;
|
|
2034
2046
|
this.options.extensions.startInline.forEach((b) => {
|
|
2035
|
-
|
|
2036
|
-
}),
|
|
2047
|
+
f = b.call({ lexer: this }, m), typeof f == "number" && f >= 0 && (h = Math.min(h, f));
|
|
2048
|
+
}), h < 1 / 0 && h >= 0 && (g = t.substring(0, h + 1));
|
|
2037
2049
|
}
|
|
2038
|
-
if (l = this.tokenizer.inlineText(
|
|
2050
|
+
if (l = this.tokenizer.inlineText(g)) {
|
|
2039
2051
|
t = t.substring(l.raw.length), l.raw.slice(-1) !== "_" && (i = l.raw.slice(-1)), o = !0;
|
|
2040
|
-
let
|
|
2041
|
-
(
|
|
2052
|
+
let h = r.at(-1);
|
|
2053
|
+
(h == null ? void 0 : h.type) === "text" ? (h.raw += l.raw, h.text += l.text) : r.push(l);
|
|
2042
2054
|
continue;
|
|
2043
2055
|
}
|
|
2044
2056
|
if (t) {
|
|
2045
|
-
let
|
|
2057
|
+
let h = "Infinite loop on byte: " + t.charCodeAt(0);
|
|
2046
2058
|
if (this.options.silent) {
|
|
2047
|
-
console.error(
|
|
2059
|
+
console.error(h);
|
|
2048
2060
|
break;
|
|
2049
|
-
} else throw new Error(
|
|
2061
|
+
} else throw new Error(h);
|
|
2050
2062
|
}
|
|
2051
2063
|
}
|
|
2052
2064
|
return r;
|
|
@@ -2062,7 +2074,7 @@ ${d}` : d;
|
|
|
2062
2074
|
}
|
|
2063
2075
|
code({ text: e, lang: t, escaped: r }) {
|
|
2064
2076
|
var n;
|
|
2065
|
-
let a = (n = (t || "").match(
|
|
2077
|
+
let a = (n = (t || "").match(q.notSpaceStart)) == null ? void 0 : n[0], s = e.replace(q.endingNewline, "") + `
|
|
2066
2078
|
`;
|
|
2067
2079
|
return a ? '<pre><code class="language-' + G(a) + '">' + (r ? s : G(s, !0)) + `</code></pre>
|
|
2068
2080
|
` : "<pre><code>" + (r ? s : G(s, !0)) + `</code></pre>
|
|
@@ -2685,37 +2697,37 @@ function rs(e) {
|
|
|
2685
2697
|
function as(e) {
|
|
2686
2698
|
const t = [];
|
|
2687
2699
|
e = e.replace(/<pre[^>]*>[\s\S]*?<\/pre>/gi, (l) => {
|
|
2688
|
-
const
|
|
2689
|
-
return t.push(l),
|
|
2700
|
+
const g = `__PROTECTED_${t.length}__`;
|
|
2701
|
+
return t.push(l), g;
|
|
2690
2702
|
}), e = e.replace(/<code[^>]*>[\s\S]*?<\/code>/gi, (l) => {
|
|
2691
|
-
const
|
|
2692
|
-
return t.push(l),
|
|
2703
|
+
const g = `__PROTECTED_${t.length}__`;
|
|
2704
|
+
return t.push(l), g;
|
|
2693
2705
|
}), e = e.replace(/<(video|audio|iframe)[^>]*>[\s\S]*?<\/\1>/gi, (l) => {
|
|
2694
|
-
const
|
|
2695
|
-
return t.push(l),
|
|
2706
|
+
const g = `__PROTECTED_${t.length}__`;
|
|
2707
|
+
return t.push(l), g;
|
|
2696
2708
|
});
|
|
2697
2709
|
const r = /\[([^\]]+)\]\((https:\/\/www\.pexels\.com\/video\/[^)]+)\)\s*(?:<\/p>)?\s*(?:<p>)?\s*(?:Preview image:\s*)?!\[([^\]]*)\]\((https:\/\/images\.pexels\.com\/videos\/[^)]+)\)/gi;
|
|
2698
|
-
e = e.replace(r, (l,
|
|
2710
|
+
e = e.replace(r, (l, g, h, m, f) => ns(g, h, f, m));
|
|
2699
2711
|
const a = /<a[^>]*href="(https?:\/\/[^"]+\.(mp4|webm|mov|avi|mkv|flv|wmv|m4v)(?:\?[^"]*)?)"[^>]*>[^<]*<\/a>/gi;
|
|
2700
|
-
e = e.replace(a, (l,
|
|
2712
|
+
e = e.replace(a, (l, g) => Be(g));
|
|
2701
2713
|
const s = new RegExp(`(?<!["'=])(https?:\\/\\/[^\\s<>"]+\\.(mp4|webm|mov|avi|mkv|flv|wmv|m4v)(\\?[^\\s<>"]*)?)(?!["'])`, "gi");
|
|
2702
|
-
e = e.replace(s, (l,
|
|
2714
|
+
e = e.replace(s, (l, g) => Be(g));
|
|
2703
2715
|
const n = /<a[^>]*href="(https?:\/\/(?:www\.)?(?:youtube\.com\/watch\?v=|youtu\.be\/)([a-zA-Z0-9_-]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
2704
|
-
e = e.replace(n, (l,
|
|
2716
|
+
e = e.replace(n, (l, g, h) => Oe(h));
|
|
2705
2717
|
const o = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?(?:youtube\\.com\\/watch\\?v=|youtu\\.be\\/)([a-zA-Z0-9_-]+))(?!["'])`, "gi");
|
|
2706
|
-
e = e.replace(o, (l,
|
|
2718
|
+
e = e.replace(o, (l, g, h) => Oe(h));
|
|
2707
2719
|
const i = /<a[^>]*href="(https?:\/\/(?:www\.)?vimeo\.com\/(\d+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
2708
|
-
e = e.replace(i, (l,
|
|
2720
|
+
e = e.replace(i, (l, g, h) => Ve(h));
|
|
2709
2721
|
const u = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?vimeo\\.com\\/(\\d+))(?!["'])`, "gi");
|
|
2710
|
-
e = e.replace(u, (l,
|
|
2722
|
+
e = e.replace(u, (l, g, h) => Ve(h));
|
|
2711
2723
|
const c = /<a[^>]*href="(https?:\/\/(?:www\.)?loom\.com\/share\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
2712
|
-
e = e.replace(c, (l,
|
|
2724
|
+
e = e.replace(c, (l, g, h) => Fe(h));
|
|
2713
2725
|
const d = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?loom\\.com\\/share\\/([a-zA-Z0-9]+))(?!["'])`, "gi");
|
|
2714
|
-
e = e.replace(d, (l,
|
|
2726
|
+
e = e.replace(d, (l, g, h) => Fe(h));
|
|
2715
2727
|
const p = /<a[^>]*href="(https?:\/\/(?:www\.)?dailymotion\.com\/video\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
2716
|
-
e = e.replace(p, (l,
|
|
2728
|
+
e = e.replace(p, (l, g, h) => Ne(h));
|
|
2717
2729
|
const w = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?dailymotion\\.com\\/video\\/([a-zA-Z0-9]+))(?!["'])`, "gi");
|
|
2718
|
-
e = e.replace(w, (l,
|
|
2730
|
+
e = e.replace(w, (l, g, h) => Ne(h));
|
|
2719
2731
|
for (let l = t.length - 1; l >= 0; l--)
|
|
2720
2732
|
e = e.replace(`__PROTECTED_${l}__`, t[l]);
|
|
2721
2733
|
return e;
|
|
@@ -2866,33 +2878,33 @@ function us(e, t = {}) {
|
|
|
2866
2878
|
const i = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?soundcloud\\.com\\/[^\\s<>"]+)(?!["'])`, "gi");
|
|
2867
2879
|
e = e.replace(i, ($, R) => yt(R));
|
|
2868
2880
|
const u = /<a[^>]*href="(https?:\/\/open\.spotify\.com\/track\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
2869
|
-
e = e.replace(u, ($, R,
|
|
2881
|
+
e = e.replace(u, ($, R, z) => V("track", z, r));
|
|
2870
2882
|
const c = new RegExp(`(?<!["'=])(https?:\\/\\/open\\.spotify\\.com\\/track\\/([a-zA-Z0-9]+))(?!["'])`, "gi");
|
|
2871
|
-
e = e.replace(c, ($, R,
|
|
2883
|
+
e = e.replace(c, ($, R, z) => V("track", z, r));
|
|
2872
2884
|
const d = /<a[^>]*href="(https?:\/\/open\.spotify\.com\/album\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
2873
|
-
e = e.replace(d, ($, R,
|
|
2885
|
+
e = e.replace(d, ($, R, z) => V("album", z, r));
|
|
2874
2886
|
const p = new RegExp(`(?<!["'=])(https?:\\/\\/open\\.spotify\\.com\\/album\\/([a-zA-Z0-9]+))(?!["'])`, "gi");
|
|
2875
|
-
e = e.replace(p, ($, R,
|
|
2887
|
+
e = e.replace(p, ($, R, z) => V("album", z, r));
|
|
2876
2888
|
const w = /<a[^>]*href="(https?:\/\/open\.spotify\.com\/playlist\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
2877
|
-
e = e.replace(w, ($, R,
|
|
2889
|
+
e = e.replace(w, ($, R, z) => V("playlist", z, r));
|
|
2878
2890
|
const l = new RegExp(`(?<!["'=])(https?:\\/\\/open\\.spotify\\.com\\/playlist\\/([a-zA-Z0-9]+))(?!["'])`, "gi");
|
|
2879
|
-
e = e.replace(l, ($, R,
|
|
2880
|
-
const
|
|
2881
|
-
e = e.replace(
|
|
2882
|
-
const
|
|
2883
|
-
e = e.replace(
|
|
2884
|
-
const
|
|
2885
|
-
e = e.replace(
|
|
2886
|
-
const
|
|
2887
|
-
e = e.replace(
|
|
2891
|
+
e = e.replace(l, ($, R, z) => V("playlist", z, r));
|
|
2892
|
+
const g = /<a[^>]*href="(https?:\/\/open\.spotify\.com\/artist\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
2893
|
+
e = e.replace(g, ($, R, z) => V("artist", z, r));
|
|
2894
|
+
const h = new RegExp(`(?<!["'=])(https?:\\/\\/open\\.spotify\\.com\\/artist\\/([a-zA-Z0-9]+))(?!["'])`, "gi");
|
|
2895
|
+
e = e.replace(h, ($, R, z) => V("artist", z, r));
|
|
2896
|
+
const m = /<a[^>]*href="(https?:\/\/open\.spotify\.com\/episode\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
2897
|
+
e = e.replace(m, ($, R, z) => V("episode", z, r));
|
|
2898
|
+
const f = new RegExp(`(?<!["'=])(https?:\\/\\/open\\.spotify\\.com\\/episode\\/([a-zA-Z0-9]+))(?!["'])`, "gi");
|
|
2899
|
+
e = e.replace(f, ($, R, z) => V("episode", z, r));
|
|
2888
2900
|
const b = /<a[^>]*href="(https?:\/\/open\.spotify\.com\/show\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
2889
|
-
e = e.replace(b, ($, R,
|
|
2901
|
+
e = e.replace(b, ($, R, z) => V("show", z, r));
|
|
2890
2902
|
const y = new RegExp(`(?<!["'=])(https?:\\/\\/open\\.spotify\\.com\\/show\\/([a-zA-Z0-9]+))(?!["'])`, "gi");
|
|
2891
|
-
e = e.replace(y, ($, R,
|
|
2903
|
+
e = e.replace(y, ($, R, z) => V("show", z, r));
|
|
2892
2904
|
const v = /<a[^>]*href="(https?:\/\/music\.apple\.com\/([a-z]{2})\/([a-z-]+)\/[^\/]+\/(\d+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
2893
|
-
e = e.replace(v, ($, R,
|
|
2905
|
+
e = e.replace(v, ($, R, z, Z, A) => kt(z, Z, A));
|
|
2894
2906
|
const k = new RegExp(`(?<!["'=])(https?:\\/\\/music\\.apple\\.com\\/([a-z]{2})\\/([a-z-]+)\\/[^\\/\\s]+\\/(\\d+))(?!["'])`, "gi");
|
|
2895
|
-
e = e.replace(k, ($, R,
|
|
2907
|
+
e = e.replace(k, ($, R, z, Z, A) => kt(z, Z, A));
|
|
2896
2908
|
for (let $ = a.length - 1; $ >= 0; $--)
|
|
2897
2909
|
e = e.replace(`__PROTECTED_${$}__`, a[$]);
|
|
2898
2910
|
return e;
|
|
@@ -3054,7 +3066,7 @@ function ps(e = document) {
|
|
|
3054
3066
|
function fs(e) {
|
|
3055
3067
|
const t = e.dataset.playerId, r = e.dataset.audioSrc;
|
|
3056
3068
|
if (!t || !r) return;
|
|
3057
|
-
const a = e.querySelector(".artifactuse-audio-element"), s = e.querySelector(".artifactuse-audio-play-btn"), n = e.querySelector(".artifactuse-audio-icon-play"), o = e.querySelector(".artifactuse-audio-icon-pause"), i = e.querySelector(".artifactuse-audio-current"), u = e.querySelector(".artifactuse-audio-duration"), c = e.querySelector(".artifactuse-audio-waveform"), d = e.querySelector(".artifactuse-audio-waveform-canvas"), p = e.querySelector(".artifactuse-audio-waveform-progress"), w = e.querySelector(".artifactuse-audio-waveform-hover"), l = e.querySelector(".artifactuse-audio-mute-btn"),
|
|
3069
|
+
const a = e.querySelector(".artifactuse-audio-element"), s = e.querySelector(".artifactuse-audio-play-btn"), n = e.querySelector(".artifactuse-audio-icon-play"), o = e.querySelector(".artifactuse-audio-icon-pause"), i = e.querySelector(".artifactuse-audio-current"), u = e.querySelector(".artifactuse-audio-duration"), c = e.querySelector(".artifactuse-audio-waveform"), d = e.querySelector(".artifactuse-audio-waveform-canvas"), p = e.querySelector(".artifactuse-audio-waveform-progress"), w = e.querySelector(".artifactuse-audio-waveform-hover"), l = e.querySelector(".artifactuse-audio-mute-btn"), g = e.querySelector(".artifactuse-audio-icon-volume"), h = e.querySelector(".artifactuse-audio-icon-muted"), m = e.querySelector(".artifactuse-audio-volume-slider"), f = e.querySelector(".artifactuse-audio-speed-btn");
|
|
3058
3070
|
if (!a) return;
|
|
3059
3071
|
const b = {
|
|
3060
3072
|
isPlaying: !1,
|
|
@@ -3088,13 +3100,13 @@ function fs(e) {
|
|
|
3088
3100
|
}), c == null || c.addEventListener("mouseleave", () => {
|
|
3089
3101
|
w.style.width = "0%";
|
|
3090
3102
|
}), l == null || l.addEventListener("click", () => {
|
|
3091
|
-
b.isMuted = !b.isMuted, a.muted = b.isMuted,
|
|
3092
|
-
}),
|
|
3103
|
+
b.isMuted = !b.isMuted, a.muted = b.isMuted, g.style.display = b.isMuted ? "none" : "", h.style.display = b.isMuted ? "" : "none", b.isMuted ? m.value = 0 : m.value = b.volume * 100;
|
|
3104
|
+
}), m == null || m.addEventListener("input", (y) => {
|
|
3093
3105
|
const v = parseInt(y.target.value, 10) / 100;
|
|
3094
|
-
b.volume = v, a.volume = v, v === 0 ? (b.isMuted = !0,
|
|
3095
|
-
}),
|
|
3106
|
+
b.volume = v, a.volume = v, v === 0 ? (b.isMuted = !0, g.style.display = "none", h.style.display = "") : (b.isMuted = !1, a.muted = !1, g.style.display = "", h.style.display = "none");
|
|
3107
|
+
}), f == null || f.addEventListener("click", () => {
|
|
3096
3108
|
const v = (je.indexOf(b.playbackRate) + 1) % je.length;
|
|
3097
|
-
b.playbackRate = je[v], a.playbackRate = b.playbackRate,
|
|
3109
|
+
b.playbackRate = je[v], a.playbackRate = b.playbackRate, f.querySelector("span").textContent = `${b.playbackRate}x`;
|
|
3098
3110
|
}), e.addEventListener("keydown", (y) => {
|
|
3099
3111
|
switch (y.key) {
|
|
3100
3112
|
case " ":
|
|
@@ -3108,10 +3120,10 @@ function fs(e) {
|
|
|
3108
3120
|
y.preventDefault(), a.currentTime = Math.min(a.duration, a.currentTime + 5);
|
|
3109
3121
|
break;
|
|
3110
3122
|
case "ArrowUp":
|
|
3111
|
-
y.preventDefault(), b.volume = Math.min(1, b.volume + 0.1), a.volume = b.volume,
|
|
3123
|
+
y.preventDefault(), b.volume = Math.min(1, b.volume + 0.1), a.volume = b.volume, m.value = b.volume * 100;
|
|
3112
3124
|
break;
|
|
3113
3125
|
case "ArrowDown":
|
|
3114
|
-
y.preventDefault(), b.volume = Math.max(0, b.volume - 0.1), a.volume = b.volume,
|
|
3126
|
+
y.preventDefault(), b.volume = Math.max(0, b.volume - 0.1), a.volume = b.volume, m.value = b.volume * 100;
|
|
3115
3127
|
break;
|
|
3116
3128
|
case "m":
|
|
3117
3129
|
y.preventDefault(), l == null || l.click();
|
|
@@ -3152,8 +3164,8 @@ function $t(e, t, r, a) {
|
|
|
3152
3164
|
e.clearRect(0, 0, r, a);
|
|
3153
3165
|
const s = 2, o = s + 2, i = a / 2, c = getComputedStyle(document.documentElement).getPropertyValue("--artifactuse-text-muted").trim() || "107, 114, 128";
|
|
3154
3166
|
e.fillStyle = `rgba(${c}, 0.4)`, t.forEach((d, p) => {
|
|
3155
|
-
const w = p * o, l = d * (a * 0.8),
|
|
3156
|
-
e.beginPath(), e.roundRect(w, i -
|
|
3167
|
+
const w = p * o, l = d * (a * 0.8), g = l / 2, h = s / 2;
|
|
3168
|
+
e.beginPath(), e.roundRect(w, i - g, s, l, h), e.fill();
|
|
3157
3169
|
});
|
|
3158
3170
|
}
|
|
3159
3171
|
function At(e) {
|
|
@@ -3185,58 +3197,58 @@ function ws() {
|
|
|
3185
3197
|
}
|
|
3186
3198
|
function bs(e) {
|
|
3187
3199
|
const t = [];
|
|
3188
|
-
e = e.replace(/<pre[^>]*>[\s\S]*?<\/pre>/gi, (
|
|
3189
|
-
const
|
|
3190
|
-
return t.push(
|
|
3191
|
-
}), e = e.replace(/<code[^>]*>[\s\S]*?<\/code>/gi, (
|
|
3192
|
-
const
|
|
3193
|
-
return t.push(
|
|
3194
|
-
}), e = e.replace(/<iframe[^>]*>[\s\S]*?<\/iframe>/gi, (
|
|
3195
|
-
const
|
|
3196
|
-
return t.push(
|
|
3200
|
+
e = e.replace(/<pre[^>]*>[\s\S]*?<\/pre>/gi, (m) => {
|
|
3201
|
+
const f = `__PROTECTED_MAP_${t.length}__`;
|
|
3202
|
+
return t.push(m), f;
|
|
3203
|
+
}), e = e.replace(/<code[^>]*>[\s\S]*?<\/code>/gi, (m) => {
|
|
3204
|
+
const f = `__PROTECTED_MAP_${t.length}__`;
|
|
3205
|
+
return t.push(m), f;
|
|
3206
|
+
}), e = e.replace(/<iframe[^>]*>[\s\S]*?<\/iframe>/gi, (m) => {
|
|
3207
|
+
const f = `__PROTECTED_MAP_${t.length}__`;
|
|
3208
|
+
return t.push(m), f;
|
|
3197
3209
|
});
|
|
3198
3210
|
const r = /<a[^>]*href="(https?:\/\/(?:www\.)?google\.com\/maps\/embed\?pb=[^"]+)"[^>]*>[^<]*<\/a>/gi;
|
|
3199
|
-
e = e.replace(r, (
|
|
3211
|
+
e = e.replace(r, (m, f) => {
|
|
3200
3212
|
const b = `__PROTECTED_MAP_${t.length}__`;
|
|
3201
|
-
return t.push(zt(
|
|
3213
|
+
return t.push(zt(f)), b;
|
|
3202
3214
|
});
|
|
3203
3215
|
const a = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?google\\.com\\/maps\\/embed\\?pb=[^\\s<>"]+)(?!["'])`, "gi");
|
|
3204
|
-
e = e.replace(a, (
|
|
3216
|
+
e = e.replace(a, (m, f) => {
|
|
3205
3217
|
const b = `__PROTECTED_MAP_${t.length}__`;
|
|
3206
|
-
return t.push(zt(
|
|
3218
|
+
return t.push(zt(f)), b;
|
|
3207
3219
|
});
|
|
3208
3220
|
const s = /<a[^>]*href="(https?:\/\/(?:www\.)?google\.com\/maps\/place\/([^\/\?"]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3209
|
-
e = e.replace(s, (
|
|
3221
|
+
e = e.replace(s, (m, f, b) => W(decodeURIComponent(b.replace(/\+/g, " "))));
|
|
3210
3222
|
const n = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?google\\.com\\/maps\\/place\\/([^\\/\\?\\s]+))(?!["'])`, "gi");
|
|
3211
|
-
e = e.replace(n, (
|
|
3223
|
+
e = e.replace(n, (m, f, b) => W(decodeURIComponent(b.replace(/\+/g, " "))));
|
|
3212
3224
|
const o = /<a[^>]*href="(https?:\/\/(?:www\.)?google\.com\/maps\/@([0-9.-]+),([0-9.-]+),([0-9]+)z[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3213
|
-
e = e.replace(o, (
|
|
3225
|
+
e = e.replace(o, (m, f, b, y, v) => Ue(b, y, v));
|
|
3214
3226
|
const i = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?google\\.com\\/maps\\/@([0-9.-]+),([0-9.-]+),([0-9]+)z)(?!["'])`, "gi");
|
|
3215
|
-
e = e.replace(i, (
|
|
3227
|
+
e = e.replace(i, (m, f, b, y, v) => Ue(b, y, v));
|
|
3216
3228
|
const u = /<a[^>]*href="(https?:\/\/maps\.google\.com\/\?q=([^\s"&]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3217
|
-
e = e.replace(u, (
|
|
3229
|
+
e = e.replace(u, (m, f, b) => W(decodeURIComponent(b)));
|
|
3218
3230
|
const c = new RegExp(`(?<!["'=])(https?:\\/\\/maps\\.google\\.com\\/\\?q=([^\\s"&]+))(?!["'])`, "gi");
|
|
3219
|
-
e = e.replace(c, (
|
|
3231
|
+
e = e.replace(c, (m, f, b) => W(decodeURIComponent(b)));
|
|
3220
3232
|
const d = /<a[^>]*href="(https?:\/\/(?:www\.)?google\.com\/maps\/search\/([^\/\?"]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3221
|
-
e = e.replace(d, (
|
|
3233
|
+
e = e.replace(d, (m, f, b) => W(decodeURIComponent(b.replace(/\+/g, " "))));
|
|
3222
3234
|
const p = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?google\\.com\\/maps\\/search\\/([^\\/\\?\\s]+))(?!["'])`, "gi");
|
|
3223
|
-
e = e.replace(p, (
|
|
3235
|
+
e = e.replace(p, (m, f, b) => W(decodeURIComponent(b.replace(/\+/g, " "))));
|
|
3224
3236
|
const w = /<a[^>]*href="(https?:\/\/(?:www\.)?google\.com\/maps\/search\/\?[^"]*query=([^"&]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3225
|
-
e = e.replace(w, (
|
|
3237
|
+
e = e.replace(w, (m, f, b) => W(decodeURIComponent(b.replace(/\+/g, " "))));
|
|
3226
3238
|
const l = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?google\\.com\\/maps\\/search\\/\\?[^\\s"]*query=([^\\s"&]+))(?!["'])`, "gi");
|
|
3227
|
-
e = e.replace(l, (
|
|
3228
|
-
const
|
|
3229
|
-
e = e.replace(
|
|
3230
|
-
const v =
|
|
3239
|
+
e = e.replace(l, (m, f, b) => W(decodeURIComponent(b.replace(/\+/g, " "))));
|
|
3240
|
+
const g = /<a[^>]*href="(https?:\/\/(?:www\.)?openstreetmap\.org\/[^"]*mlat=([0-9.-]+)[^"]*mlon=([0-9.-]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3241
|
+
e = e.replace(g, (m, f, b, y) => {
|
|
3242
|
+
const v = f.match(/#map=(\d+)/), k = v ? v[1] : 15;
|
|
3231
3243
|
return Ct(b, y, k);
|
|
3232
3244
|
});
|
|
3233
|
-
const
|
|
3234
|
-
e = e.replace(
|
|
3235
|
-
const v =
|
|
3245
|
+
const h = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?openstreetmap\\.org\\/[^\\s]*mlat=([0-9.-]+)[^\\s]*mlon=([0-9.-]+))(?!["'])`, "gi");
|
|
3246
|
+
e = e.replace(h, (m, f, b, y) => {
|
|
3247
|
+
const v = f.match(/#map=(\d+)/), k = v ? v[1] : 15;
|
|
3236
3248
|
return Ct(b, y, k);
|
|
3237
3249
|
});
|
|
3238
|
-
for (let
|
|
3239
|
-
e = e.replace(`__PROTECTED_MAP_${
|
|
3250
|
+
for (let m = t.length - 1; m >= 0; m--)
|
|
3251
|
+
e = e.replace(`__PROTECTED_MAP_${m}__`, t[m]);
|
|
3240
3252
|
return e;
|
|
3241
3253
|
}
|
|
3242
3254
|
function zt(e) {
|
|
@@ -3341,23 +3353,23 @@ function vs(e, t = {}) {
|
|
|
3341
3353
|
const u = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?instagram\\.com\\/reel\\/([a-zA-Z0-9_-]+))(?!["'])`, "gi");
|
|
3342
3354
|
e = e.replace(u, (y, v, k) => _t(k));
|
|
3343
3355
|
const c = /<a[^>]*href="(https?:\/\/(?:www\.)?tiktok\.com\/@([a-zA-Z0-9_.]+)\/video\/(\d+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3344
|
-
e = e.replace(c, (y, v, k, $) =>
|
|
3356
|
+
e = e.replace(c, (y, v, k, $) => Tt($));
|
|
3345
3357
|
const d = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?tiktok\\.com\\/@([a-zA-Z0-9_.]+)\\/video\\/(\\d+))(?!["'])`, "gi");
|
|
3346
|
-
e = e.replace(d, (y, v, k, $) =>
|
|
3358
|
+
e = e.replace(d, (y, v, k, $) => Tt($));
|
|
3347
3359
|
const p = /<a[^>]*href="(https?:\/\/(?:www\.)?linkedin\.com\/(?:posts|feed\/update)\/([a-zA-Z0-9_:-]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3348
|
-
e = e.replace(p, (y, v, k) =>
|
|
3360
|
+
e = e.replace(p, (y, v, k) => Et(k, v));
|
|
3349
3361
|
const w = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?linkedin\\.com\\/(?:posts|feed\\/update)\\/([a-zA-Z0-9_:-]+))(?!["'])`, "gi");
|
|
3350
|
-
e = e.replace(w, (y, v, k) =>
|
|
3362
|
+
e = e.replace(w, (y, v, k) => Et(k, v));
|
|
3351
3363
|
const l = /<a[^>]*href="(https?:\/\/(?:www\.)?reddit\.com\/r\/([a-zA-Z0-9_]+)\/comments\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3352
3364
|
e = e.replace(l, (y, v, k, $) => Pt(k, $, v));
|
|
3353
|
-
const
|
|
3354
|
-
e = e.replace(
|
|
3355
|
-
const
|
|
3356
|
-
e = e.replace(
|
|
3357
|
-
const
|
|
3358
|
-
e = e.replace(
|
|
3359
|
-
const
|
|
3360
|
-
e = e.replace(
|
|
3365
|
+
const g = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?reddit\\.com\\/r\\/([a-zA-Z0-9_]+)\\/comments\\/([a-zA-Z0-9]+))(?!["'])`, "gi");
|
|
3366
|
+
e = e.replace(g, (y, v, k, $) => Pt(k, $, v));
|
|
3367
|
+
const h = /<a[^>]*href="(https?:\/\/(?:www\.)?facebook\.com\/[a-zA-Z0-9.]+\/posts\/\d+[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3368
|
+
e = e.replace(h, (y, v) => jt(v));
|
|
3369
|
+
const m = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?facebook\\.com\\/[a-zA-Z0-9.]+\\/posts\\/\\d+)(?!["'])`, "gi");
|
|
3370
|
+
e = e.replace(m, (y, v) => jt(v));
|
|
3371
|
+
const f = /<a[^>]*href="(https?:\/\/(?:www\.)?pinterest\.com\/pin\/(\d+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3372
|
+
e = e.replace(f, (y, v, k) => It(k));
|
|
3361
3373
|
const b = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?pinterest\\.com\\/pin\\/(\\d+))(?!["'])`, "gi");
|
|
3362
3374
|
return e = e.replace(b, (y, v, k) => It(k)), e;
|
|
3363
3375
|
}
|
|
@@ -3399,7 +3411,7 @@ function _t(e) {
|
|
|
3399
3411
|
</div>
|
|
3400
3412
|
`;
|
|
3401
3413
|
}
|
|
3402
|
-
function
|
|
3414
|
+
function Tt(e) {
|
|
3403
3415
|
return `
|
|
3404
3416
|
<div class="artifactuse-tiktok-wrapper">
|
|
3405
3417
|
<iframe
|
|
@@ -3412,7 +3424,7 @@ function Et(e) {
|
|
|
3412
3424
|
</div>
|
|
3413
3425
|
`;
|
|
3414
3426
|
}
|
|
3415
|
-
function
|
|
3427
|
+
function Et(e, t) {
|
|
3416
3428
|
return `
|
|
3417
3429
|
<div class="artifactuse-linkedin-wrapper">
|
|
3418
3430
|
<iframe
|
|
@@ -3596,29 +3608,29 @@ function $s(e) {
|
|
|
3596
3608
|
}
|
|
3597
3609
|
function As(e, t = {}) {
|
|
3598
3610
|
const r = t.theme || "dark", a = /<a[^>]*href="(https?:\/\/gist\.github\.com\/([a-zA-Z0-9_-]+)\/([a-f0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3599
|
-
e = e.replace(a, (
|
|
3611
|
+
e = e.replace(a, (h, m, f, b) => Zt(f, b));
|
|
3600
3612
|
const s = new RegExp(`(?<!["'=])(https?:\\/\\/gist\\.github\\.com\\/([a-zA-Z0-9_-]+)\\/([a-f0-9]+))(?!["'])`, "gi");
|
|
3601
|
-
e = e.replace(s, (
|
|
3613
|
+
e = e.replace(s, (h, m, f, b) => Zt(f, b));
|
|
3602
3614
|
const n = /<a[^>]*href="(https?:\/\/codepen\.io\/([a-zA-Z0-9_-]+)\/(?:pen|full|details)\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3603
|
-
e = e.replace(n, (
|
|
3615
|
+
e = e.replace(n, (h, m, f, b) => Bt(f, b, r));
|
|
3604
3616
|
const o = new RegExp(`(?<!["'=])(https?:\\/\\/codepen\\.io\\/([a-zA-Z0-9_-]+)\\/(?:pen|full|details)\\/([a-zA-Z0-9]+))(?!["'])`, "gi");
|
|
3605
|
-
e = e.replace(o, (
|
|
3617
|
+
e = e.replace(o, (h, m, f, b) => Bt(f, b, r));
|
|
3606
3618
|
const i = /<a[^>]*href="(https?:\/\/codesandbox\.io\/(?:s|embed)\/([a-zA-Z0-9-]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3607
|
-
e = e.replace(i, (
|
|
3619
|
+
e = e.replace(i, (h, m, f) => Ot(f, r));
|
|
3608
3620
|
const u = new RegExp(`(?<!["'=])(https?:\\/\\/codesandbox\\.io\\/(?:s|embed)\\/([a-zA-Z0-9-]+))(?!["'])`, "gi");
|
|
3609
|
-
e = e.replace(u, (
|
|
3621
|
+
e = e.replace(u, (h, m, f) => Ot(f, r));
|
|
3610
3622
|
const c = /<a[^>]*href="(https?:\/\/jsfiddle\.net\/([a-zA-Z0-9_]+)\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3611
|
-
e = e.replace(c, (
|
|
3623
|
+
e = e.replace(c, (h, m, f, b) => Vt(f, b, r));
|
|
3612
3624
|
const d = new RegExp(`(?<!["'=])(https?:\\/\\/jsfiddle\\.net\\/([a-zA-Z0-9_]+)\\/([a-zA-Z0-9]+))(?!["'])`, "gi");
|
|
3613
|
-
e = e.replace(d, (
|
|
3625
|
+
e = e.replace(d, (h, m, f, b) => Vt(f, b, r));
|
|
3614
3626
|
const p = /<a[^>]*href="(https?:\/\/stackblitz\.com\/(?:edit|embed)\/([a-zA-Z0-9-]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3615
|
-
e = e.replace(p, (
|
|
3627
|
+
e = e.replace(p, (h, m, f) => Ft(f, r));
|
|
3616
3628
|
const w = new RegExp(`(?<!["'=])(https?:\\/\\/stackblitz\\.com\\/(?:edit|embed)\\/([a-zA-Z0-9-]+))(?!["'])`, "gi");
|
|
3617
|
-
e = e.replace(w, (
|
|
3629
|
+
e = e.replace(w, (h, m, f) => Ft(f, r));
|
|
3618
3630
|
const l = /<a[^>]*href="(https?:\/\/replit\.com\/@([a-zA-Z0-9_]+)\/([a-zA-Z0-9_-]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3619
|
-
e = e.replace(l, (
|
|
3620
|
-
const
|
|
3621
|
-
return e = e.replace(
|
|
3631
|
+
e = e.replace(l, (h, m, f, b) => Nt(f, b, r));
|
|
3632
|
+
const g = new RegExp(`(?<!["'=])(https?:\\/\\/replit\\.com\\/@([a-zA-Z0-9_]+)\\/([a-zA-Z0-9_-]+))(?!["'])`, "gi");
|
|
3633
|
+
return e = e.replace(g, (h, m, f, b) => Nt(f, b, r)), e;
|
|
3622
3634
|
}
|
|
3623
3635
|
function Zt(e, t) {
|
|
3624
3636
|
return `
|
|
@@ -3766,29 +3778,29 @@ function Xt(e) {
|
|
|
3766
3778
|
}
|
|
3767
3779
|
function Rs(e, t = {}) {
|
|
3768
3780
|
const r = t.theme || "dark", a = /<a[^>]*href="(https?:\/\/sketchfab\.com\/(?:3d-)?models\/([a-zA-Z0-9-]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3769
|
-
e = e.replace(a, (
|
|
3781
|
+
e = e.replace(a, (h, m, f) => Kt(f, r));
|
|
3770
3782
|
const s = new RegExp(`(?<!["'=])(https?:\\/\\/sketchfab\\.com\\/(?:3d-)?models\\/([a-zA-Z0-9-]+))(?!["'])`, "gi");
|
|
3771
|
-
e = e.replace(s, (
|
|
3783
|
+
e = e.replace(s, (h, m, f) => Kt(f, r));
|
|
3772
3784
|
const n = /<a[^>]*href="(https?:\/\/(?:www\.)?figma\.com\/(?:file|design)\/([a-zA-Z0-9]+)(?:\/[^?\s"]*)?(?:\?node-id=([^&\s"]+))?[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3773
|
-
e = e.replace(n, (
|
|
3785
|
+
e = e.replace(n, (h, m, f, b) => Jt(f, b));
|
|
3774
3786
|
const o = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?figma\\.com\\/(?:file|design)\\/([a-zA-Z0-9]+)(?:\\/[^?\\s]*)?(?:\\?node-id=([^&\\s]+))?)(?!["'])`, "gi");
|
|
3775
|
-
e = e.replace(o, (
|
|
3787
|
+
e = e.replace(o, (h, m, f, b) => Jt(f, b));
|
|
3776
3788
|
const i = /<a[^>]*href="(https?:\/\/(?:www\.)?figma\.com\/proto\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3777
|
-
e = e.replace(i, (
|
|
3789
|
+
e = e.replace(i, (h, m, f) => Qt(f, m));
|
|
3778
3790
|
const u = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?figma\\.com\\/proto\\/([a-zA-Z0-9]+)[^\\s]*)(?!["'])`, "gi");
|
|
3779
|
-
e = e.replace(u, (
|
|
3791
|
+
e = e.replace(u, (h, m, f) => Qt(f, m));
|
|
3780
3792
|
const c = /<a[^>]*href="(https?:\/\/(?:www\.)?canva\.com\/design\/([a-zA-Z0-9_-]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3781
|
-
e = e.replace(c, (
|
|
3793
|
+
e = e.replace(c, (h, m, f) => Yt(f, m));
|
|
3782
3794
|
const d = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?canva\\.com\\/design\\/([a-zA-Z0-9_-]+)[^\\s]*)(?!["'])`, "gi");
|
|
3783
|
-
e = e.replace(d, (
|
|
3795
|
+
e = e.replace(d, (h, m, f) => Yt(f, m));
|
|
3784
3796
|
const p = /<a[^>]*href="(https?:\/\/dribbble\.com\/shots\/(\d+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3785
|
-
e = e.replace(p, (
|
|
3797
|
+
e = e.replace(p, (h, m, f) => er(f));
|
|
3786
3798
|
const w = new RegExp(`(?<!["'=])(https?:\\/\\/dribbble\\.com\\/shots\\/(\\d+))(?!["'])`, "gi");
|
|
3787
|
-
e = e.replace(w, (
|
|
3799
|
+
e = e.replace(w, (h, m, f) => er(f));
|
|
3788
3800
|
const l = /<a[^>]*href="(https?:\/\/(?:www\.)?behance\.net\/gallery\/(\d+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3789
|
-
e = e.replace(l, (
|
|
3790
|
-
const
|
|
3791
|
-
return e = e.replace(
|
|
3801
|
+
e = e.replace(l, (h, m, f) => tr(f, m));
|
|
3802
|
+
const g = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?behance\\.net\\/gallery\\/(\\d+)[^\\s]*)(?!["'])`, "gi");
|
|
3803
|
+
return e = e.replace(g, (h, m, f) => tr(f, m)), e;
|
|
3792
3804
|
}
|
|
3793
3805
|
function Kt(e, t = "dark") {
|
|
3794
3806
|
return `
|
|
@@ -3876,33 +3888,33 @@ function tr(e, t) {
|
|
|
3876
3888
|
}
|
|
3877
3889
|
function zs(e, t = {}) {
|
|
3878
3890
|
const r = t.theme || "dark", a = /<a[^>]*href="(https?:\/\/(?:[a-zA-Z0-9-]+\.)?typeform\.com\/to\/([a-zA-Z0-9]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3879
|
-
e = e.replace(a, (
|
|
3891
|
+
e = e.replace(a, (f, b, y) => rr(y));
|
|
3880
3892
|
const s = new RegExp(`(?<!["'=])(https?:\\/\\/(?:[a-zA-Z0-9-]+\\.)?typeform\\.com\\/to\\/([a-zA-Z0-9]+))(?!["'])`, "gi");
|
|
3881
|
-
e = e.replace(s, (
|
|
3893
|
+
e = e.replace(s, (f, b, y) => rr(y));
|
|
3882
3894
|
const n = /<a[^>]*href="(https?:\/\/calendly\.com\/([a-zA-Z0-9_-]+)(?:\/([a-zA-Z0-9_-]+))?[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3883
|
-
e = e.replace(n, (
|
|
3895
|
+
e = e.replace(n, (f, b, y, v) => ar(y, v));
|
|
3884
3896
|
const o = new RegExp(`(?<!["'=])(https?:\\/\\/calendly\\.com\\/([a-zA-Z0-9_-]+)(?:\\/([a-zA-Z0-9_-]+))?)(?!["'])`, "gi");
|
|
3885
|
-
e = e.replace(o, (
|
|
3897
|
+
e = e.replace(o, (f, b, y, v) => ar(y, v));
|
|
3886
3898
|
const i = /<a[^>]*href="(https?:\/\/calendar\.google\.com\/calendar\/appointments\/schedules\/([a-zA-Z0-9_-]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3887
|
-
e = e.replace(i, (
|
|
3899
|
+
e = e.replace(i, (f, b, y) => sr(y));
|
|
3888
3900
|
const u = new RegExp(`(?<!["'=])(https?:\\/\\/calendar\\.google\\.com\\/calendar\\/appointments\\/schedules\\/([a-zA-Z0-9_-]+))(?!["'])`, "gi");
|
|
3889
|
-
e = e.replace(u, (
|
|
3901
|
+
e = e.replace(u, (f, b, y) => sr(y));
|
|
3890
3902
|
const c = /<a[^>]*href="(https?:\/\/cal\.com\/([a-zA-Z0-9_-]+)(?:\/([a-zA-Z0-9_-]+))?[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3891
|
-
e = e.replace(c, (
|
|
3903
|
+
e = e.replace(c, (f, b, y, v) => nr(y, v, r));
|
|
3892
3904
|
const d = new RegExp(`(?<!["'=])(https?:\\/\\/cal\\.com\\/([a-zA-Z0-9_-]+)(?:\\/([a-zA-Z0-9_-]+))?)(?!["'])`, "gi");
|
|
3893
|
-
e = e.replace(d, (
|
|
3905
|
+
e = e.replace(d, (f, b, y, v) => nr(y, v, r));
|
|
3894
3906
|
const p = /<a[^>]*href="(https?:\/\/(?:www\.)?notion\.so\/([a-zA-Z0-9-]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3895
|
-
e = e.replace(p, (
|
|
3907
|
+
e = e.replace(p, (f, b, y) => ir(y));
|
|
3896
3908
|
const w = new RegExp(`(?<!["'=])(https?:\\/\\/(?:www\\.)?notion\\.so\\/([a-zA-Z0-9-]+))(?!["'])`, "gi");
|
|
3897
|
-
e = e.replace(w, (
|
|
3909
|
+
e = e.replace(w, (f, b, y) => ir(y));
|
|
3898
3910
|
const l = /<a[^>]*href="(https?:\/\/airtable\.com\/(?:embed\/)?([a-zA-Z0-9]+)(?:\/([a-zA-Z0-9]+))?[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3899
|
-
e = e.replace(l, (
|
|
3900
|
-
const
|
|
3901
|
-
e = e.replace(
|
|
3902
|
-
const
|
|
3903
|
-
e = e.replace(
|
|
3904
|
-
const
|
|
3905
|
-
return e = e.replace(
|
|
3911
|
+
e = e.replace(l, (f, b, y, v) => or(y, v));
|
|
3912
|
+
const g = new RegExp(`(?<!["'=])(https?:\\/\\/airtable\\.com\\/(?:embed\\/)?([a-zA-Z0-9]+)(?:\\/([a-zA-Z0-9]+))?)(?!["'])`, "gi");
|
|
3913
|
+
e = e.replace(g, (f, b, y, v) => or(y, v));
|
|
3914
|
+
const h = /<a[^>]*href="(https?:\/\/miro\.com\/app\/board\/([a-zA-Z0-9_=-]+)[^"]*)"[^>]*>[^<]*<\/a>/gi;
|
|
3915
|
+
e = e.replace(h, (f, b, y) => cr(y));
|
|
3916
|
+
const m = new RegExp(`(?<!["'=])(https?:\\/\\/miro\\.com\\/app\\/board\\/([a-zA-Z0-9_=-]+))(?!["'])`, "gi");
|
|
3917
|
+
return e = e.replace(m, (f, b, y) => cr(y)), e;
|
|
3906
3918
|
}
|
|
3907
3919
|
function rr(e) {
|
|
3908
3920
|
return `
|
|
@@ -4120,15 +4132,15 @@ async function cn(e, t) {
|
|
|
4120
4132
|
const r = document.querySelector(`[data-mermaid-id="${e}"]`);
|
|
4121
4133
|
r && (r.dataset.mermaidDiagram = Lr(t), r.dataset.rendered = "false", r.innerHTML = '<div class="artifactuse-mermaid-loading">Loading diagram...</div>', await Ce());
|
|
4122
4134
|
}
|
|
4123
|
-
function
|
|
4135
|
+
function Ts(e) {
|
|
4124
4136
|
const t = /<table([^>]*)>([\s\S]*?)<\/table>/gi;
|
|
4125
4137
|
let r = 0;
|
|
4126
4138
|
return e = e.replace(t, (a, s, n) => {
|
|
4127
4139
|
const o = `artifactuse-table-${r++}`;
|
|
4128
|
-
return
|
|
4140
|
+
return Es(o, s, n);
|
|
4129
4141
|
}), e;
|
|
4130
4142
|
}
|
|
4131
|
-
function
|
|
4143
|
+
function Es(e, t, r) {
|
|
4132
4144
|
const a = /<thead/i.test(r) || /<th/i.test(r), s = (r.match(/<tr/gi) || []).length;
|
|
4133
4145
|
if (!a || s < 3)
|
|
4134
4146
|
return `<table${t} class="artifactuse-table">${r}</table>`;
|
|
@@ -4229,8 +4241,8 @@ function Hs(e, t, r = !0) {
|
|
|
4229
4241
|
const p = parseFloat(c.replace(/[,$%]/g, "")), w = parseFloat(d.replace(/[,$%]/g, ""));
|
|
4230
4242
|
if (!isNaN(p) && !isNaN(w))
|
|
4231
4243
|
return r ? p - w : w - p;
|
|
4232
|
-
const l = new Date(c),
|
|
4233
|
-
return !isNaN(l.getTime()) && !isNaN(
|
|
4244
|
+
const l = new Date(c), g = new Date(d);
|
|
4245
|
+
return !isNaN(l.getTime()) && !isNaN(g.getTime()) ? r ? l - g : g - l : r ? c.localeCompare(d) : d.localeCompare(c);
|
|
4234
4246
|
}), s.forEach((n) => a.appendChild(n));
|
|
4235
4247
|
}
|
|
4236
4248
|
function qs(e, t) {
|
|
@@ -4289,7 +4301,7 @@ function Zs() {
|
|
|
4289
4301
|
});
|
|
4290
4302
|
}
|
|
4291
4303
|
let J = null, Le = !1;
|
|
4292
|
-
function
|
|
4304
|
+
function Tr(e) {
|
|
4293
4305
|
return e = Bs(e), e = e.replace(/\$\$([\s\S]*?)\$\$/g, (t, r) => fe(r.trim(), !0)), e = e.replace(/\\\[([\s\S]*?)\\\]/g, (t, r) => fe(r.trim(), !0)), e = e.replace(new RegExp("(?<!\\$)\\$(?!\\$)((?:[^$\\\\]|\\\\.)+?)\\$(?!\\$)", "g"), (t, r) => fe(r.trim(), !1)), e = e.replace(/\\\(([\s\S]*?)\\\)/g, (t, r) => fe(r.trim(), !1)), e;
|
|
4294
4306
|
}
|
|
4295
4307
|
function Bs(e) {
|
|
@@ -4309,7 +4321,7 @@ function fe(e, t = !1) {
|
|
|
4309
4321
|
function Vs(e) {
|
|
4310
4322
|
return e.replace(/&/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(/</g, "<").replace(/>/g, ">");
|
|
4311
4323
|
}
|
|
4312
|
-
function
|
|
4324
|
+
function Er(e) {
|
|
4313
4325
|
return e.replace(/</g, "<").replace(/>/g, ">").replace(/"/g, '"').replace(/'/g, "'").replace(/&/g, "&");
|
|
4314
4326
|
}
|
|
4315
4327
|
function Pr() {
|
|
@@ -4322,7 +4334,7 @@ function Pr() {
|
|
|
4322
4334
|
function Fs() {
|
|
4323
4335
|
document.querySelectorAll(".artifactuse-math-container").forEach((e) => {
|
|
4324
4336
|
if (e.dataset.rendered === "true") return;
|
|
4325
|
-
const t =
|
|
4337
|
+
const t = Er(e.dataset.tex);
|
|
4326
4338
|
e.innerHTML = `<code class="artifactuse-math-fallback" title="Math rendering unavailable">${We(t)}</code>`, e.dataset.rendered = "true", e.classList.add("artifactuse-math-fallback-container");
|
|
4327
4339
|
});
|
|
4328
4340
|
}
|
|
@@ -4333,7 +4345,7 @@ function ur() {
|
|
|
4333
4345
|
}
|
|
4334
4346
|
document.querySelectorAll(".artifactuse-math-container").forEach((e) => {
|
|
4335
4347
|
if (e.dataset.rendered === "true") return;
|
|
4336
|
-
const t =
|
|
4348
|
+
const t = Er(e.dataset.tex), r = e.dataset.display === "true";
|
|
4337
4349
|
try {
|
|
4338
4350
|
katex.render(t, e, {
|
|
4339
4351
|
displayMode: r,
|
|
@@ -4389,7 +4401,7 @@ function dn() {
|
|
|
4389
4401
|
function pn(e) {
|
|
4390
4402
|
if (!e) return Promise.resolve();
|
|
4391
4403
|
let t = e.innerHTML;
|
|
4392
|
-
return t =
|
|
4404
|
+
return t = Tr(t), e.innerHTML = t, Pr();
|
|
4393
4405
|
}
|
|
4394
4406
|
const fn = {
|
|
4395
4407
|
// Fractions
|
|
@@ -4716,11 +4728,11 @@ function Ks(e, t) {
|
|
|
4716
4728
|
return null;
|
|
4717
4729
|
w.endsWith("/") || (w += "");
|
|
4718
4730
|
const l = new URLSearchParams();
|
|
4719
|
-
c.theme && l.set("theme", c.theme), c.accent && l.set("accent", c.accent), c.params && Object.entries(c.params).forEach(([
|
|
4720
|
-
l.set(
|
|
4731
|
+
c.theme && l.set("theme", c.theme), c.accent && l.set("accent", c.accent), c.params && Object.entries(c.params).forEach(([h, m]) => {
|
|
4732
|
+
l.set(h, m);
|
|
4721
4733
|
});
|
|
4722
|
-
const
|
|
4723
|
-
return
|
|
4734
|
+
const g = l.toString();
|
|
4735
|
+
return g ? `${w}?${g}` : w;
|
|
4724
4736
|
}
|
|
4725
4737
|
function s(u) {
|
|
4726
4738
|
const c = u == null ? void 0 : u.toLowerCase();
|
|
@@ -4757,39 +4769,39 @@ function Ks(e, t) {
|
|
|
4757
4769
|
}
|
|
4758
4770
|
function bn(e = {}) {
|
|
4759
4771
|
const t = Hr(Ws, e), r = ta(), a = { ...Ir, ...t.panels }, s = Xs(a, t.cdnUrl), n = ra(s), o = na(t.theme, t.colors || {}), i = Ks(t, n), u = pa(t.sharing), c = fa(t.editor);
|
|
4760
|
-
function d(x, L,
|
|
4772
|
+
function d(x, L, C = {}) {
|
|
4761
4773
|
let S = E.parse(x);
|
|
4762
|
-
const D = [], M = { theme: o.resolved },
|
|
4774
|
+
const D = [], M = { theme: o.resolved }, B = C.inlinePreview ?? t.inlinePreview ?? null, ne = C.inlineCode ?? t.inlineCode ?? null, re = C.tabs ?? t.tabs ?? null, ae = C.viewMode ?? t.viewMode ?? null;
|
|
4763
4775
|
if (t.processors.codeBlocks) {
|
|
4764
|
-
const
|
|
4776
|
+
const O = ea(S, L, {
|
|
4765
4777
|
...t.codeExtraction,
|
|
4766
|
-
inlinePreview:
|
|
4778
|
+
inlinePreview: B,
|
|
4767
4779
|
inlineCode: ne,
|
|
4768
4780
|
tabs: re,
|
|
4769
4781
|
viewMode: ae
|
|
4770
4782
|
});
|
|
4771
|
-
S =
|
|
4783
|
+
S = O.html, D.push(...O.artifacts);
|
|
4772
4784
|
}
|
|
4773
|
-
return t.processors.images && (S = Qa(S)), t.processors.imageGalleries && (S = Ya(S)), t.processors.videos && (S = as(S)), t.processors.videoGalleries && (S = os(S)), t.processors.audio && (S = us(S, M)), t.processors.maps && (S = bs(S)), t.processors.social && (S = vs(S, M)), t.processors.documents && (S = ys(S), S = ks(S), S = xs(S)), t.processors.codeEmbeds && (S = As(S, M)), t.processors.dataViz && (S = Ss(S)), t.processors.design && (S = Rs(S, M)), t.processors.interactive && (S = zs(S, M)), t.processors.tables && (S =
|
|
4774
|
-
r.addArtifact(
|
|
4785
|
+
return t.processors.images && (S = Qa(S)), t.processors.imageGalleries && (S = Ya(S)), t.processors.videos && (S = as(S)), t.processors.videoGalleries && (S = os(S)), t.processors.audio && (S = us(S, M)), t.processors.maps && (S = bs(S)), t.processors.social && (S = vs(S, M)), t.processors.documents && (S = ys(S), S = ks(S), S = xs(S)), t.processors.codeEmbeds && (S = As(S, M)), t.processors.dataViz && (S = Ss(S)), t.processors.design && (S = Rs(S, M)), t.processors.interactive && (S = zs(S, M)), t.processors.tables && (S = Ts(S)), t.processors.math && (S = Tr(S)), t.processors.mermaid && (S = Cr(S)), D.forEach((O) => {
|
|
4786
|
+
r.addArtifact(O);
|
|
4775
4787
|
}), {
|
|
4776
4788
|
html: S,
|
|
4777
4789
|
artifacts: D
|
|
4778
4790
|
};
|
|
4779
4791
|
}
|
|
4780
4792
|
async function p(x = document) {
|
|
4781
|
-
const L = [],
|
|
4782
|
-
t.processors.math && L.push(Pr()), t.processors.mermaid && L.push(_r(
|
|
4793
|
+
const L = [], C = { theme: o.resolved };
|
|
4794
|
+
t.processors.math && L.push(Pr()), t.processors.mermaid && L.push(_r(C)), t.processors.tables && Zs(), t.processors.audio && ps(x), t.syntaxHighlight && (jr(x), (x === document ? document : x).querySelectorAll(".artifactuse-inline-preview[data-smartdiff]").forEach((M) => {
|
|
4783
4795
|
var ae;
|
|
4784
|
-
const
|
|
4785
|
-
if (!
|
|
4786
|
-
const ne = ((ae = M.dataset.smartdiffMarkers) == null ? void 0 : ae.split(",")) || [], re =
|
|
4796
|
+
const B = M.querySelector("code");
|
|
4797
|
+
if (!B || B.dataset.smartdiffProcessed) return;
|
|
4798
|
+
const ne = ((ae = M.dataset.smartdiffMarkers) == null ? void 0 : ae.split(",")) || [], re = B.innerHTML.split(`
|
|
4787
4799
|
`);
|
|
4788
|
-
|
|
4800
|
+
B.innerHTML = re.map((O, be) => {
|
|
4789
4801
|
const ie = ne[be];
|
|
4790
|
-
return ie === "-" ? `<span class="token deleted">${
|
|
4802
|
+
return ie === "-" ? `<span class="token deleted">${O}</span>` : ie === "+" ? `<span class="token inserted">${O}</span>` : O;
|
|
4791
4803
|
}).join(`
|
|
4792
|
-
`),
|
|
4804
|
+
`), B.dataset.smartdiffProcessed = "true";
|
|
4793
4805
|
})), await Promise.all(L);
|
|
4794
4806
|
}
|
|
4795
4807
|
function w(x) {
|
|
@@ -4799,24 +4811,24 @@ function bn(e = {}) {
|
|
|
4799
4811
|
}
|
|
4800
4812
|
r.setActiveArtifact(x.id), r.setPanelOpen(!0), x.viewMode && r.setViewMode(x.viewMode), T("artifact:opened", x);
|
|
4801
4813
|
}
|
|
4802
|
-
function l(x, L,
|
|
4803
|
-
const S = x.split(".").pop(), D =
|
|
4804
|
-
return
|
|
4814
|
+
function l(x, L, C = {}) {
|
|
4815
|
+
const S = x.split(".").pop(), D = C.language || Nr(S) || S, M = C.title || x;
|
|
4816
|
+
return g(L, D, { ...C, title: M });
|
|
4805
4817
|
}
|
|
4806
|
-
function
|
|
4807
|
-
const S =
|
|
4808
|
-
return M.title =
|
|
4818
|
+
function g(x, L, C = {}) {
|
|
4819
|
+
const S = C.messageId || Vr("open"), D = k({ type: L, language: L }) ? L : "txt", M = $e(x, D, S, 0);
|
|
4820
|
+
return M.title = C.title || M.title, M.isInline = !1, M.editorLanguage = L, C.tabs && (M.tabs = C.tabs), C.panelUrl && (M.panelUrl = C.panelUrl), r.addArtifact(M), w(M), C.viewMode ? r.setViewMode(C.viewMode) : C.tabs && r.setViewMode(C.tabs[0]), M;
|
|
4809
4821
|
}
|
|
4810
|
-
function
|
|
4822
|
+
function h(x, L, C = {}) {
|
|
4811
4823
|
const S = typeof x == "string" ? x : x == null ? void 0 : x.id, D = r.getArtifact(S);
|
|
4812
4824
|
if (!D) return null;
|
|
4813
4825
|
const M = { ...D, code: L, _refreshToken: Date.now() };
|
|
4814
|
-
return
|
|
4826
|
+
return C.title !== void 0 && (M.title = C.title), C.tabs !== void 0 && (M.tabs = C.tabs), C.panelUrl !== void 0 && (M.panelUrl = C.panelUrl), r.addArtifact(M), T("artifact:updated", { artifactId: S, artifact: r.getArtifact(S) }), r.getArtifact(S);
|
|
4815
4827
|
}
|
|
4816
|
-
function
|
|
4828
|
+
function m() {
|
|
4817
4829
|
r.setPanelOpen(!1), r.setFullscreen(!1), T("panel:closed");
|
|
4818
4830
|
}
|
|
4819
|
-
function
|
|
4831
|
+
function f() {
|
|
4820
4832
|
const x = !r.getState().isPanelOpen;
|
|
4821
4833
|
r.clearActiveArtifact(), r.setPanelOpen(x), x || r.setFullscreen(!1), T("panel:toggled", { isOpen: x });
|
|
4822
4834
|
}
|
|
@@ -4830,12 +4842,12 @@ function bn(e = {}) {
|
|
|
4830
4842
|
function v(x, L = {}) {
|
|
4831
4843
|
if (!x) return null;
|
|
4832
4844
|
if (x.panelUrl) return x.panelUrl;
|
|
4833
|
-
const { type:
|
|
4845
|
+
const { type: C, language: S } = x, D = {
|
|
4834
4846
|
theme: L.theme || o.resolved
|
|
4835
4847
|
}, M = o.colors;
|
|
4836
4848
|
M != null && M.primary && (D.accent = M.primary);
|
|
4837
|
-
let
|
|
4838
|
-
return !
|
|
4849
|
+
let B = i.resolve(C, D);
|
|
4850
|
+
return !B && S && (B = i.resolve(S, D)), B;
|
|
4839
4851
|
}
|
|
4840
4852
|
function k(x) {
|
|
4841
4853
|
return x ? i.has(x.type) || i.has(x.language) : !1;
|
|
@@ -4846,26 +4858,26 @@ function bn(e = {}) {
|
|
|
4846
4858
|
function R(x) {
|
|
4847
4859
|
i.unregister(x);
|
|
4848
4860
|
}
|
|
4849
|
-
function
|
|
4861
|
+
function z() {
|
|
4850
4862
|
return i.getTypes();
|
|
4851
4863
|
}
|
|
4852
|
-
function
|
|
4864
|
+
function Z(x, L) {
|
|
4853
4865
|
n.send(x, L);
|
|
4854
4866
|
}
|
|
4855
4867
|
const A = /* @__PURE__ */ new Map();
|
|
4856
4868
|
function j(x, L) {
|
|
4857
4869
|
return A.has(x) || A.set(x, /* @__PURE__ */ new Set()), A.get(x).add(L), () => {
|
|
4858
|
-
var
|
|
4859
|
-
(
|
|
4870
|
+
var C;
|
|
4871
|
+
(C = A.get(x)) == null || C.delete(L);
|
|
4860
4872
|
};
|
|
4861
4873
|
}
|
|
4862
4874
|
function I(x, L) {
|
|
4863
|
-
var
|
|
4864
|
-
(
|
|
4875
|
+
var C;
|
|
4876
|
+
(C = A.get(x)) == null || C.delete(L);
|
|
4865
4877
|
}
|
|
4866
4878
|
function T(x, L) {
|
|
4867
|
-
var
|
|
4868
|
-
(
|
|
4879
|
+
var C;
|
|
4880
|
+
(C = A.get(x)) == null || C.forEach((S) => {
|
|
4869
4881
|
try {
|
|
4870
4882
|
S(L);
|
|
4871
4883
|
} catch (D) {
|
|
@@ -4874,7 +4886,7 @@ function bn(e = {}) {
|
|
|
4874
4886
|
});
|
|
4875
4887
|
}
|
|
4876
4888
|
n.on("ai:request", (x) => T("ai:request", x)), n.on("save:request", (x) => T("save:request", x)), n.on("export:complete", (x) => T("export:complete", x)), n.on("form:submit", (x) => T("form:submit", x)), n.on("form:cancel", (x) => T("form:cancel", x)), n.on("form:step", (x) => T("form:step", x)), n.on("social:copy", (x) => T("social:copy", x));
|
|
4877
|
-
function
|
|
4889
|
+
function H() {
|
|
4878
4890
|
o.apply();
|
|
4879
4891
|
}
|
|
4880
4892
|
function X(x) {
|
|
@@ -4899,24 +4911,24 @@ function bn(e = {}) {
|
|
|
4899
4911
|
// Panel control
|
|
4900
4912
|
openArtifact: w,
|
|
4901
4913
|
openFile: l,
|
|
4902
|
-
openCode:
|
|
4903
|
-
updateFile:
|
|
4904
|
-
closePanel:
|
|
4905
|
-
togglePanel:
|
|
4914
|
+
openCode: g,
|
|
4915
|
+
updateFile: h,
|
|
4916
|
+
closePanel: m,
|
|
4917
|
+
togglePanel: f,
|
|
4906
4918
|
toggleFullscreen: b,
|
|
4907
4919
|
setViewMode: y,
|
|
4908
4920
|
getPanelUrl: v,
|
|
4909
|
-
sendToPanel:
|
|
4921
|
+
sendToPanel: Z,
|
|
4910
4922
|
// Panel management (new)
|
|
4911
4923
|
hasPanel: k,
|
|
4912
4924
|
registerPanel: $,
|
|
4913
4925
|
unregisterPanel: R,
|
|
4914
|
-
getPanelTypes:
|
|
4926
|
+
getPanelTypes: z,
|
|
4915
4927
|
panelResolver: i,
|
|
4916
4928
|
// Expose for advanced use
|
|
4917
4929
|
// Theme
|
|
4918
4930
|
theme: o,
|
|
4919
|
-
applyTheme:
|
|
4931
|
+
applyTheme: H,
|
|
4920
4932
|
setTheme: X,
|
|
4921
4933
|
getTheme: te,
|
|
4922
4934
|
// Events
|
|
@@ -4984,8 +4996,8 @@ export {
|
|
|
4984
4996
|
Lt as R,
|
|
4985
4997
|
Mt as S,
|
|
4986
4998
|
_t as T,
|
|
4987
|
-
|
|
4988
|
-
|
|
4999
|
+
Tt as U,
|
|
5000
|
+
Et as V,
|
|
4989
5001
|
Pt as W,
|
|
4990
5002
|
jt as X,
|
|
4991
5003
|
It as Y,
|
|
@@ -5008,15 +5020,15 @@ export {
|
|
|
5008
5020
|
nn as aC,
|
|
5009
5021
|
on as aD,
|
|
5010
5022
|
cn as aE,
|
|
5011
|
-
|
|
5012
|
-
|
|
5023
|
+
Ts as aF,
|
|
5024
|
+
Es as aG,
|
|
5013
5025
|
js as aH,
|
|
5014
5026
|
Is as aI,
|
|
5015
5027
|
Ds as aJ,
|
|
5016
5028
|
Hs as aK,
|
|
5017
5029
|
qs as aL,
|
|
5018
5030
|
Zs as aM,
|
|
5019
|
-
|
|
5031
|
+
Tr as aN,
|
|
5020
5032
|
fe as aO,
|
|
5021
5033
|
Pr as aP,
|
|
5022
5034
|
Ns as aQ,
|