@x-wave/blog 2.2.3 → 2.2.5
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/index.js +174 -174
- package/package.json +1 -1
- package/styles/index.css +1 -1
package/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsxs as i, jsx as e, Fragment as U } from "react/jsx-runtime";
|
|
2
|
-
import { useTranslation as
|
|
2
|
+
import { useTranslation as D } from "react-i18next";
|
|
3
3
|
import { useLocation as Y, useNavigate as Q, Link as de, useParams as pe, Navigate as qe, Routes as Xe, Route as xe } from "react-router-dom";
|
|
4
4
|
import { CaretLeft as Ye, CaretRight as Oe, ArrowSquareOut as Ve, User as Je, CalendarBlank as Ze, X as ve, Tag as et, MagnifyingGlass as Se, List as tt, Sun as Pe, Moon as Me, Monitor as Be, CaretDown as _e, Globe as nt } from "@phosphor-icons/react";
|
|
5
5
|
import { useState as T, useEffect as S, createContext as at, useContext as ot, useRef as G } from "react";
|
|
@@ -13,7 +13,7 @@ const lt = "_tabContainer_zk6h4_1", it = "_tab_zk6h4_1", dt = "_active_zk6h4_45"
|
|
|
13
13
|
active: dt
|
|
14
14
|
};
|
|
15
15
|
function ut({ hasAdvanced: t }) {
|
|
16
|
-
const { t: n } =
|
|
16
|
+
const { t: n } = D(), s = Y(), c = Q();
|
|
17
17
|
if (!t) return null;
|
|
18
18
|
const r = new URLSearchParams(s.search).has("advanced"), _ = () => {
|
|
19
19
|
if (r) {
|
|
@@ -71,12 +71,12 @@ function He(t) {
|
|
|
71
71
|
continue;
|
|
72
72
|
}
|
|
73
73
|
if (l && !k.startsWith("-") && (a[o] = v.slice(), v.length = 0, l = !1), k != null && k.includes(":")) {
|
|
74
|
-
const [f, ...b] = k.split(":"),
|
|
75
|
-
if (o = f.trim(),
|
|
74
|
+
const [f, ...b] = k.split(":"), y = b.join(":").trim();
|
|
75
|
+
if (o = f.trim(), !y) {
|
|
76
76
|
l = !0;
|
|
77
77
|
continue;
|
|
78
78
|
}
|
|
79
|
-
|
|
79
|
+
y === "true" ? a[o] = !0 : y === "false" ? a[o] = !1 : a[o] = y;
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
l && v.length > 0 && (a[o] = v);
|
|
@@ -193,10 +193,10 @@ function Vo(t) {
|
|
|
193
193
|
discoverArticles: n.discoverArticles
|
|
194
194
|
};
|
|
195
195
|
}
|
|
196
|
-
const
|
|
197
|
-
const n = () => t || (typeof window > "u" ? "system" : localStorage.getItem(
|
|
196
|
+
const je = "app-theme", Fe = () => typeof window > "u" ? "light" : window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light", Ee = (t) => t === "system" ? Fe() : t, ze = (t) => {
|
|
197
|
+
const n = () => t || (typeof window > "u" ? "system" : localStorage.getItem(je) || "system"), [s, c] = T(n);
|
|
198
198
|
return S(() => {
|
|
199
|
-
const r =
|
|
199
|
+
const r = Ee(s), _ = document.querySelector(".xw-blog-root");
|
|
200
200
|
if (_ && (_.classList.remove("light", "dark"), _.classList.add(r)), s === "system") {
|
|
201
201
|
const d = window.matchMedia("(prefers-color-scheme: dark)"), u = () => {
|
|
202
202
|
const a = Fe(), m = document.querySelector(".xw-blog-root");
|
|
@@ -207,11 +207,11 @@ const Ee = "app-theme", Fe = () => typeof window > "u" ? "light" : window.matchM
|
|
|
207
207
|
}, [s]), {
|
|
208
208
|
theme: s,
|
|
209
209
|
setTheme: (r) => {
|
|
210
|
-
localStorage.setItem(
|
|
210
|
+
localStorage.setItem(je, r), c(r);
|
|
211
211
|
},
|
|
212
|
-
effectiveTheme:
|
|
212
|
+
effectiveTheme: Ee(s)
|
|
213
213
|
};
|
|
214
|
-
}, mt = (t) => "items" in t,
|
|
214
|
+
}, mt = (t) => "items" in t, Ae = (t) => "items" in t, _t = async (t, n, s) => {
|
|
215
215
|
const c = [];
|
|
216
216
|
for (const h of t)
|
|
217
217
|
if (mt(h)) {
|
|
@@ -320,7 +320,7 @@ function Ue(t) {
|
|
|
320
320
|
h === "advanced" ? n.advanced = !0 : h.startsWith("a=") && (n.anchor = h.substring(2));
|
|
321
321
|
return n;
|
|
322
322
|
}
|
|
323
|
-
function
|
|
323
|
+
function De(t, n = 80) {
|
|
324
324
|
const s = document.getElementById(t);
|
|
325
325
|
if (s) {
|
|
326
326
|
const h = s.getBoundingClientRect().top + window.pageYOffset - n;
|
|
@@ -341,15 +341,15 @@ function ft(t = "smooth") {
|
|
|
341
341
|
behavior: t
|
|
342
342
|
});
|
|
343
343
|
}
|
|
344
|
-
const bt = "_articleNavigation_kz84g_1", kt = "_navContainer_kz84g_7", Nt = "_navLink_kz84g_24", wt = "_navLinkContent_kz84g_61", It = "_navIcon_kz84g_76",
|
|
344
|
+
const bt = "_articleNavigation_kz84g_1", kt = "_navContainer_kz84g_7", Nt = "_navLink_kz84g_24", wt = "_navLinkContent_kz84g_61", It = "_navIcon_kz84g_76", yt = "_navText_kz84g_83", $t = "_navLabel_kz84g_90", Ct = "_navTitle_kz84g_98", q = {
|
|
345
345
|
articleNavigation: bt,
|
|
346
346
|
navContainer: kt,
|
|
347
347
|
navLink: Nt,
|
|
348
348
|
navLinkContent: wt,
|
|
349
349
|
navIcon: It,
|
|
350
|
-
navText:
|
|
351
|
-
navLabel:
|
|
352
|
-
navTitle:
|
|
350
|
+
navText: yt,
|
|
351
|
+
navLabel: $t,
|
|
352
|
+
navTitle: Ct
|
|
353
353
|
};
|
|
354
354
|
function Tt({
|
|
355
355
|
prevSlug: t,
|
|
@@ -358,7 +358,7 @@ function Tt({
|
|
|
358
358
|
nextTitle: c,
|
|
359
359
|
language: h
|
|
360
360
|
}) {
|
|
361
|
-
const { t: r } =
|
|
361
|
+
const { t: r } = D(), { config: _ } = R(), d = Y(), a = Ue(d.search).advanced, m = _.basePath || "", o = (v) => {
|
|
362
362
|
const w = `${m}/${h}/${v}`;
|
|
363
363
|
return a ? `${w}?advanced=true` : w;
|
|
364
364
|
};
|
|
@@ -408,7 +408,7 @@ const Lt = "_blogSidebar_n1up9_1", xt = "_section_n1up9_21", St = "_sectionTitle
|
|
|
408
408
|
link: Mt
|
|
409
409
|
};
|
|
410
410
|
function Bt() {
|
|
411
|
-
const { t } =
|
|
411
|
+
const { t } = D(), { config: n } = R(), s = n.socialLinks || [];
|
|
412
412
|
return s.length === 0 ? null : /* @__PURE__ */ e("aside", { className: oe.blogSidebar, children: /* @__PURE__ */ i("div", { className: oe.section, children: [
|
|
413
413
|
/* @__PURE__ */ e("h3", { className: oe.sectionTitle, children: t("ui.connect") }),
|
|
414
414
|
/* @__PURE__ */ e("div", { className: oe.linksList, children: s.map((c, h) => {
|
|
@@ -430,16 +430,16 @@ function Bt() {
|
|
|
430
430
|
}) })
|
|
431
431
|
] }) });
|
|
432
432
|
}
|
|
433
|
-
const
|
|
434
|
-
breadcrumb:
|
|
435
|
-
breadcrumbList:
|
|
436
|
-
breadcrumbItem:
|
|
437
|
-
breadcrumbLink:
|
|
433
|
+
const jt = "_breadcrumb_rarc4_1", Et = "_breadcrumbList_rarc4_5", At = "_breadcrumbItem_rarc4_15", Dt = "_breadcrumbLink_rarc4_21", Rt = "_breadcrumbSeparator_rarc4_41", qt = "_breadcrumbCurrent_rarc4_46", X = {
|
|
434
|
+
breadcrumb: jt,
|
|
435
|
+
breadcrumbList: Et,
|
|
436
|
+
breadcrumbItem: At,
|
|
437
|
+
breadcrumbLink: Dt,
|
|
438
438
|
breadcrumbSeparator: Rt,
|
|
439
439
|
breadcrumbCurrent: qt
|
|
440
440
|
};
|
|
441
441
|
function Ot({ articleTitle: t, language: n }) {
|
|
442
|
-
const { t: s } =
|
|
442
|
+
const { t: s } = D(), { config: c } = R(), h = Q(), _ = `${c.basePath || ""}/${n}`, d = (a) => {
|
|
443
443
|
a.preventDefault(), window.scrollTo({ top: 0, left: 0, behavior: "auto" }), h(_);
|
|
444
444
|
}, u = (a, m = 60) => a.length <= m ? a : `${a.substring(0, m)}…`;
|
|
445
445
|
return /* @__PURE__ */ e("nav", { className: X.breadcrumb, "aria-label": "Breadcrumb", children: /* @__PURE__ */ i("ol", { className: X.breadcrumbList, children: [
|
|
@@ -464,7 +464,7 @@ const Wt = "_metadata_bsge0_1", Ht = "_author_bsge0_9", Ft = "_date_bsge0_10", m
|
|
|
464
464
|
date: Ft
|
|
465
465
|
};
|
|
466
466
|
function ge({ date: t, author: n }) {
|
|
467
|
-
const { t: s } =
|
|
467
|
+
const { t: s } = D();
|
|
468
468
|
return !t && !n ? null : /* @__PURE__ */ i("div", { className: me.metadata, children: [
|
|
469
469
|
n && /* @__PURE__ */ i("span", { className: me.author, children: [
|
|
470
470
|
/* @__PURE__ */ e(Je, { size: 16, weight: "regular" }),
|
|
@@ -497,20 +497,20 @@ function an({
|
|
|
497
497
|
content: t,
|
|
498
498
|
englishContent: n
|
|
499
499
|
}) {
|
|
500
|
-
const { t: s } =
|
|
500
|
+
const { t: s } = D(), c = Y(), h = Q(), [r, _] = T([]), [d, u] = T(""), a = G(null);
|
|
501
501
|
S(() => {
|
|
502
502
|
u(""), (() => {
|
|
503
503
|
const l = /^(#{1,6})\s+(.+)$/gm, v = [];
|
|
504
504
|
let w = l.exec(t);
|
|
505
505
|
const g = [];
|
|
506
506
|
for (; w !== null; ) {
|
|
507
|
-
const
|
|
508
|
-
g.push({ level:
|
|
507
|
+
const y = w[1].length, P = w[2].trim();
|
|
508
|
+
g.push({ level: y, text: P }), w = l.exec(t);
|
|
509
509
|
}
|
|
510
510
|
const k = /^(#{1,6})\s+(.+)$/gm;
|
|
511
511
|
let f = k.exec(n), b = 0;
|
|
512
512
|
for (; f !== null && b < g.length; ) {
|
|
513
|
-
const
|
|
513
|
+
const y = f[2].trim(), P = ee(y);
|
|
514
514
|
v.push({
|
|
515
515
|
id: P,
|
|
516
516
|
text: g[b].text,
|
|
@@ -605,7 +605,7 @@ function pn({
|
|
|
605
605
|
language: s,
|
|
606
606
|
onClose: c
|
|
607
607
|
}) {
|
|
608
|
-
const { t: h } =
|
|
608
|
+
const { t: h } = D(), { config: r } = R(), _ = Q(), d = (u) => {
|
|
609
609
|
const a = r.basePath || "";
|
|
610
610
|
_(`${a}/${s}/${u}`), c();
|
|
611
611
|
};
|
|
@@ -656,7 +656,7 @@ const vn = "_tags_11t8a_1", fn = "_compact_11t8a_9", bn = "_tagLabel_11t8a_15",
|
|
|
656
656
|
tag: wn
|
|
657
657
|
};
|
|
658
658
|
function In({ tags: t, variant: n = "default", onTagClick: s }) {
|
|
659
|
-
const { t: c } =
|
|
659
|
+
const { t: c } = D();
|
|
660
660
|
if (!t || t.length === 0) return null;
|
|
661
661
|
const h = (r) => {
|
|
662
662
|
s && s(r);
|
|
@@ -688,10 +688,10 @@ function In({ tags: t, variant: n = "default", onTagClick: s }) {
|
|
|
688
688
|
}
|
|
689
689
|
);
|
|
690
690
|
}
|
|
691
|
-
const
|
|
692
|
-
contentPage:
|
|
693
|
-
withMetadata:
|
|
694
|
-
loadingContainer:
|
|
691
|
+
const yn = "_contentPage_1jss6_1", $n = "_withMetadata_1jss6_30", Cn = "_loadingContainer_1jss6_64", Tn = "_errorContainer_1jss6_65", Ln = "_skeletonTitle_1jss6_87", xn = "_skeletonParagraph_1jss6_96", Sn = "_skeletonParagraphShort_1jss6_109", Pn = "_errorText_1jss6_123", Mn = "_mdxContent_1jss6_128", Bn = "_codeBlock_1jss6_316", jn = "_codeLanguage_1jss6_320", A = {
|
|
692
|
+
contentPage: yn,
|
|
693
|
+
withMetadata: $n,
|
|
694
|
+
loadingContainer: Cn,
|
|
695
695
|
errorContainer: Tn,
|
|
696
696
|
skeletonTitle: Ln,
|
|
697
697
|
skeletonParagraph: xn,
|
|
@@ -699,7 +699,7 @@ const $n = "_contentPage_mc666_1", Cn = "_withMetadata_mc666_30", yn = "_loading
|
|
|
699
699
|
errorText: Pn,
|
|
700
700
|
mdxContent: Mn,
|
|
701
701
|
codeBlock: Bn,
|
|
702
|
-
codeLanguage:
|
|
702
|
+
codeLanguage: jn
|
|
703
703
|
}, Re = (t) => {
|
|
704
704
|
const n = t.match(/^\s*#\s+(.+)\s*(?:\n+|$)/);
|
|
705
705
|
return n ? {
|
|
@@ -707,9 +707,9 @@ const $n = "_contentPage_mc666_1", Cn = "_withMetadata_mc666_30", yn = "_loading
|
|
|
707
707
|
content: t.replace(/^\s*#\s+.+\s*(?:\n+|$)/, "")
|
|
708
708
|
} : { title: void 0, content: t };
|
|
709
709
|
};
|
|
710
|
-
function
|
|
711
|
-
var we, Ie, $e, Ce
|
|
712
|
-
const { slug: n } = pe(), s = Y(), { config: c, loadContent: h, loadEnglishContent: r, discoverArticles: _ } = R(), [d, u] = T(""), [a, m] = T(""), [o, l] = T({}), [v, w] = T(!0), [g, k] = T(null), [f, b] = T(!0), [
|
|
710
|
+
function En({ language: t }) {
|
|
711
|
+
var we, Ie, ye, $e, Ce;
|
|
712
|
+
const { slug: n } = pe(), s = Y(), { config: c, loadContent: h, loadEnglishContent: r, discoverArticles: _ } = R(), [d, u] = T(""), [a, m] = T(""), [o, l] = T({}), [v, w] = T(!0), [g, k] = T(null), [f, b] = T(!0), [y, P] = T(null), [N, C] = T(""), [M, W] = T({}), z = G(0), te = G([]), ce = Ue(s.search), V = ce.advanced;
|
|
713
713
|
if (S(() => {
|
|
714
714
|
(async () => {
|
|
715
715
|
if (n) {
|
|
@@ -732,9 +732,9 @@ function An({ language: t }) {
|
|
|
732
732
|
} catch {
|
|
733
733
|
V && (L = await r(n, !1));
|
|
734
734
|
}
|
|
735
|
-
const
|
|
735
|
+
const E = typeof I.frontmatter.title == "string" ? I.frontmatter.title : void 0;
|
|
736
736
|
let ne = I.content, J = L, ue = "";
|
|
737
|
-
if (
|
|
737
|
+
if (E) {
|
|
738
738
|
const ie = Re(L), Qe = Re(I.content);
|
|
739
739
|
ue = ie.title || "", J = ie.content, ne = Qe.content;
|
|
740
740
|
} else
|
|
@@ -747,7 +747,7 @@ function An({ language: t }) {
|
|
|
747
747
|
const ie = he[2].trim();
|
|
748
748
|
Le.push(ie), he = Te.exec(J);
|
|
749
749
|
}
|
|
750
|
-
te.current = Le,
|
|
750
|
+
te.current = Le, C(ue), m(J), u(ne), l(I.frontmatter);
|
|
751
751
|
} catch (I) {
|
|
752
752
|
k(I instanceof Error ? I.message : "Failed to load content");
|
|
753
753
|
} finally {
|
|
@@ -758,7 +758,7 @@ function An({ language: t }) {
|
|
|
758
758
|
}, [n, t, V, h, r]), S(() => {
|
|
759
759
|
if (!v && ce.anchor) {
|
|
760
760
|
const p = setTimeout(() => {
|
|
761
|
-
|
|
761
|
+
De(ce.anchor);
|
|
762
762
|
}, 150);
|
|
763
763
|
return () => clearTimeout(p);
|
|
764
764
|
}
|
|
@@ -776,14 +776,14 @@ function An({ language: t }) {
|
|
|
776
776
|
}
|
|
777
777
|
})();
|
|
778
778
|
}, [n, t, c.showArticleNavigation, _]), v)
|
|
779
|
-
return /* @__PURE__ */ e("div", { className:
|
|
780
|
-
/* @__PURE__ */ e("div", { className:
|
|
781
|
-
/* @__PURE__ */ e("div", { className:
|
|
782
|
-
/* @__PURE__ */ e("div", { className:
|
|
783
|
-
/* @__PURE__ */ e("div", { className:
|
|
779
|
+
return /* @__PURE__ */ e("div", { className: A.contentPage, children: /* @__PURE__ */ i("div", { className: A.loadingContainer, children: [
|
|
780
|
+
/* @__PURE__ */ e("div", { className: A.skeletonTitle }),
|
|
781
|
+
/* @__PURE__ */ e("div", { className: A.skeletonParagraph }),
|
|
782
|
+
/* @__PURE__ */ e("div", { className: A.skeletonParagraph }),
|
|
783
|
+
/* @__PURE__ */ e("div", { className: A.skeletonParagraphShort })
|
|
784
784
|
] }) });
|
|
785
785
|
if (g)
|
|
786
|
-
return /* @__PURE__ */ e("div", { className:
|
|
786
|
+
return /* @__PURE__ */ e("div", { className: A.contentPage, children: /* @__PURE__ */ e("div", { className: A.errorContainer, children: /* @__PURE__ */ i("div", { className: A.errorText, children: [
|
|
787
787
|
"Error: ",
|
|
788
788
|
g
|
|
789
789
|
] }) }) });
|
|
@@ -791,10 +791,10 @@ function An({ language: t }) {
|
|
|
791
791
|
z.current = 0;
|
|
792
792
|
let Ne = !1;
|
|
793
793
|
const le = (p, I) => {
|
|
794
|
-
p.preventDefault(),
|
|
794
|
+
p.preventDefault(), De(I), vt(I, V);
|
|
795
795
|
};
|
|
796
796
|
return /* @__PURE__ */ i(U, { children: [
|
|
797
|
-
/* @__PURE__ */ i("div", { className:
|
|
797
|
+
/* @__PURE__ */ i("div", { className: A.contentPage, children: [
|
|
798
798
|
/* @__PURE__ */ e(ut, { hasAdvanced: o.hasAdvanced || !1 }),
|
|
799
799
|
re && /* @__PURE__ */ i(U, { children: [
|
|
800
800
|
/* @__PURE__ */ e(Ot, { articleTitle: o.title, language: t }),
|
|
@@ -802,20 +802,20 @@ function An({ language: t }) {
|
|
|
802
802
|
"h1",
|
|
803
803
|
{
|
|
804
804
|
id: Ge,
|
|
805
|
-
className: ke ?
|
|
805
|
+
className: ke ? A.withMetadata : void 0,
|
|
806
806
|
style: c.articleTitleFont ? { fontFamily: c.articleTitleFont } : void 0,
|
|
807
807
|
children: o.title
|
|
808
808
|
}
|
|
809
809
|
),
|
|
810
810
|
ke && /* @__PURE__ */ e(ge, { date: o.date, author: o.author })
|
|
811
811
|
] }),
|
|
812
|
-
/* @__PURE__ */ e("div", { className:
|
|
812
|
+
/* @__PURE__ */ e("div", { className: A.mdxContent, children: /* @__PURE__ */ e(
|
|
813
813
|
ct,
|
|
814
814
|
{
|
|
815
815
|
remarkPlugins: [rt],
|
|
816
816
|
components: {
|
|
817
817
|
h1: ({ children: p }) => {
|
|
818
|
-
const I = z.current++, B = te.current[I] || "", L = ee(B),
|
|
818
|
+
const I = z.current++, B = te.current[I] || "", L = ee(B), E = !Ne;
|
|
819
819
|
Ne = !0;
|
|
820
820
|
const ne = o.date || o.author;
|
|
821
821
|
return /* @__PURE__ */ i(U, { children: [
|
|
@@ -823,7 +823,7 @@ function An({ language: t }) {
|
|
|
823
823
|
"h1",
|
|
824
824
|
{
|
|
825
825
|
id: L,
|
|
826
|
-
className:
|
|
826
|
+
className: E && ne && !re ? A.withMetadata : void 0,
|
|
827
827
|
children: /* @__PURE__ */ e(
|
|
828
828
|
"a",
|
|
829
829
|
{
|
|
@@ -835,7 +835,7 @@ function An({ language: t }) {
|
|
|
835
835
|
)
|
|
836
836
|
}
|
|
837
837
|
),
|
|
838
|
-
|
|
838
|
+
E && ne && !re && /* @__PURE__ */ e(
|
|
839
839
|
ge,
|
|
840
840
|
{
|
|
841
841
|
date: o.date,
|
|
@@ -850,7 +850,7 @@ function An({ language: t }) {
|
|
|
850
850
|
"a",
|
|
851
851
|
{
|
|
852
852
|
href: `#${L}`,
|
|
853
|
-
onClick: (
|
|
853
|
+
onClick: (E) => le(E, L),
|
|
854
854
|
style: { color: "inherit", textDecoration: "none" },
|
|
855
855
|
children: p
|
|
856
856
|
}
|
|
@@ -862,7 +862,7 @@ function An({ language: t }) {
|
|
|
862
862
|
"a",
|
|
863
863
|
{
|
|
864
864
|
href: `#${L}`,
|
|
865
|
-
onClick: (
|
|
865
|
+
onClick: (E) => le(E, L),
|
|
866
866
|
style: { color: "inherit", textDecoration: "none" },
|
|
867
867
|
children: p
|
|
868
868
|
}
|
|
@@ -874,7 +874,7 @@ function An({ language: t }) {
|
|
|
874
874
|
"a",
|
|
875
875
|
{
|
|
876
876
|
href: `#${L}`,
|
|
877
|
-
onClick: (
|
|
877
|
+
onClick: (E) => le(E, L),
|
|
878
878
|
style: { color: "inherit", textDecoration: "none" },
|
|
879
879
|
children: p
|
|
880
880
|
}
|
|
@@ -895,9 +895,9 @@ function An({ language: t }) {
|
|
|
895
895
|
code: ({ className: p, children: I, ...B }) => {
|
|
896
896
|
if (!p)
|
|
897
897
|
return /* @__PURE__ */ e("code", { ...B, children: I });
|
|
898
|
-
const
|
|
899
|
-
return /* @__PURE__ */ i("div", { className:
|
|
900
|
-
|
|
898
|
+
const E = (p == null ? void 0 : p.replace("language-", "")) || "";
|
|
899
|
+
return /* @__PURE__ */ i("div", { className: A.codeBlock, children: [
|
|
900
|
+
E && /* @__PURE__ */ e("div", { className: A.codeLanguage, children: E }),
|
|
901
901
|
/* @__PURE__ */ e("pre", { children: /* @__PURE__ */ e("code", { className: p, ...B, children: I }) })
|
|
902
902
|
] });
|
|
903
903
|
},
|
|
@@ -906,12 +906,12 @@ function An({ language: t }) {
|
|
|
906
906
|
blockquote: ({ children: p }) => /* @__PURE__ */ e("blockquote", { children: p }),
|
|
907
907
|
a: ({ href: p, children: I, ...B }) => {
|
|
908
908
|
if (p != null && p.startsWith("./")) {
|
|
909
|
-
const L = p.slice(2),
|
|
909
|
+
const L = p.slice(2), E = pt(
|
|
910
910
|
L,
|
|
911
911
|
t,
|
|
912
912
|
c.basePath
|
|
913
913
|
);
|
|
914
|
-
return /* @__PURE__ */ e("a", { href:
|
|
914
|
+
return /* @__PURE__ */ e("a", { href: E, ...B, children: I });
|
|
915
915
|
}
|
|
916
916
|
return p != null && p.startsWith("http://") || p != null && p.startsWith("https://") ? /* @__PURE__ */ e(
|
|
917
917
|
"a",
|
|
@@ -944,27 +944,27 @@ function An({ language: t }) {
|
|
|
944
944
|
{
|
|
945
945
|
prevSlug: (we = M.prev) == null ? void 0 : we.slug,
|
|
946
946
|
prevTitle: (Ie = M.prev) == null ? void 0 : Ie.title,
|
|
947
|
-
nextSlug: (
|
|
948
|
-
nextTitle: (
|
|
947
|
+
nextSlug: (ye = M.next) == null ? void 0 : ye.slug,
|
|
948
|
+
nextTitle: ($e = M.next) == null ? void 0 : $e.title,
|
|
949
949
|
language: t
|
|
950
950
|
}
|
|
951
951
|
)
|
|
952
952
|
] }),
|
|
953
953
|
f && /* @__PURE__ */ e(an, { content: d, englishContent: a }),
|
|
954
|
-
|
|
954
|
+
y && ((Ce = c.tagIndex) == null ? void 0 : Ce[t]) && /* @__PURE__ */ e(
|
|
955
955
|
pn,
|
|
956
956
|
{
|
|
957
|
-
tag:
|
|
958
|
-
results: c.tagIndex[t][
|
|
957
|
+
tag: y,
|
|
958
|
+
results: c.tagIndex[t][y] || [],
|
|
959
959
|
language: t,
|
|
960
960
|
onClose: () => P(null)
|
|
961
961
|
}
|
|
962
962
|
)
|
|
963
963
|
] });
|
|
964
964
|
}
|
|
965
|
-
const
|
|
966
|
-
searchButton:
|
|
967
|
-
searchIcon:
|
|
965
|
+
const An = "_searchButton_1k9sl_1", Dn = "_searchIcon_1k9sl_17", Rn = "_searchHint_1k9sl_23", qn = "_kbd_1k9sl_27", On = "_searchOverlay_1k9sl_42", Wn = "_searchModal_1k9sl_67", Hn = "_searchHeader_1k9sl_91", Fn = "_searchInput_1k9sl_105", zn = "_closeButton_1k9sl_123", Kn = "_searchResults_1k9sl_144", Un = "_resultsList_1k9sl_152", Gn = "_resultItem_1k9sl_158", Qn = "_selected_1k9sl_173", Xn = "_resultTitle_1k9sl_176", Yn = "_resultSlug_1k9sl_180", Vn = "_noResults_1k9sl_186", Jn = "_searchHints_1k9sl_193", Zn = "_hint_1k9sl_210", x = {
|
|
966
|
+
searchButton: An,
|
|
967
|
+
searchIcon: Dn,
|
|
968
968
|
searchHint: Rn,
|
|
969
969
|
kbd: qn,
|
|
970
970
|
searchOverlay: On,
|
|
@@ -983,7 +983,7 @@ const Dn = "_searchButton_1k9sl_1", jn = "_searchIcon_1k9sl_17", Rn = "_searchHi
|
|
|
983
983
|
hint: Zn
|
|
984
984
|
};
|
|
985
985
|
function ea({ language: t }) {
|
|
986
|
-
const { t: n } =
|
|
986
|
+
const { t: n } = D(), s = Q(), { config: c, discoverArticles: h } = R(), [r, _] = T(!1), [d, u] = T(""), [a, m] = T([]), [o, l] = T(0), [v, w] = T([]), g = G(null), k = G(null), b = typeof navigator < "u" && /(Mac|iPhone|iPod|iPad)/i.test(navigator.platform) ? "⌘K" : "Ctrl+K";
|
|
987
987
|
S(() => {
|
|
988
988
|
(async () => {
|
|
989
989
|
try {
|
|
@@ -993,8 +993,8 @@ function ea({ language: t }) {
|
|
|
993
993
|
description: W.description
|
|
994
994
|
}));
|
|
995
995
|
w(M);
|
|
996
|
-
} catch (
|
|
997
|
-
console.error("Failed to build search index:",
|
|
996
|
+
} catch (C) {
|
|
997
|
+
console.error("Failed to build search index:", C);
|
|
998
998
|
}
|
|
999
999
|
})();
|
|
1000
1000
|
}, [t, h]), S(() => {
|
|
@@ -1002,19 +1002,19 @@ function ea({ language: t }) {
|
|
|
1002
1002
|
m([]), l(0);
|
|
1003
1003
|
return;
|
|
1004
1004
|
}
|
|
1005
|
-
const N = d.toLowerCase(),
|
|
1005
|
+
const N = d.toLowerCase(), C = v.filter(
|
|
1006
1006
|
(M) => {
|
|
1007
1007
|
var W;
|
|
1008
1008
|
return M.title.toLowerCase().includes(N) || M.slug.toLowerCase().includes(N) || ((W = M.description) == null ? void 0 : W.toLowerCase().includes(N));
|
|
1009
1009
|
}
|
|
1010
1010
|
);
|
|
1011
|
-
m(
|
|
1011
|
+
m(C), l(0);
|
|
1012
1012
|
}, [d, v]), S(() => {
|
|
1013
|
-
const N = (
|
|
1014
|
-
(
|
|
1013
|
+
const N = (C) => {
|
|
1014
|
+
(C.metaKey || C.ctrlKey) && C.key === "k" && (C.preventDefault(), _(!0), setTimeout(() => {
|
|
1015
1015
|
var M;
|
|
1016
1016
|
return (M = g.current) == null ? void 0 : M.focus();
|
|
1017
|
-
}, 100)),
|
|
1017
|
+
}, 100)), C.key === "Escape" && r && (_(!1), u(""));
|
|
1018
1018
|
};
|
|
1019
1019
|
return document.addEventListener("keydown", N), () => document.removeEventListener("keydown", N);
|
|
1020
1020
|
}, [r]), S(() => {
|
|
@@ -1023,25 +1023,25 @@ function ea({ language: t }) {
|
|
|
1023
1023
|
var M;
|
|
1024
1024
|
return (M = g.current) == null ? void 0 : M.focus();
|
|
1025
1025
|
}, 100);
|
|
1026
|
-
},
|
|
1026
|
+
}, C = () => {
|
|
1027
1027
|
_(!1), u("");
|
|
1028
1028
|
};
|
|
1029
|
-
return window.addEventListener("blog:open-search", N), window.addEventListener("blog:close-search",
|
|
1030
|
-
window.removeEventListener("blog:open-search", N), window.removeEventListener("blog:close-search",
|
|
1029
|
+
return window.addEventListener("blog:open-search", N), window.addEventListener("blog:close-search", C), () => {
|
|
1030
|
+
window.removeEventListener("blog:open-search", N), window.removeEventListener("blog:close-search", C);
|
|
1031
1031
|
};
|
|
1032
1032
|
}, []);
|
|
1033
|
-
const
|
|
1034
|
-
N.key === "ArrowDown" ? (N.preventDefault(), l((
|
|
1033
|
+
const y = (N) => {
|
|
1034
|
+
N.key === "ArrowDown" ? (N.preventDefault(), l((C) => Math.min(C + 1, a.length - 1))) : N.key === "ArrowUp" ? (N.preventDefault(), l((C) => Math.max(C - 1, 0))) : N.key === "Enter" && a[o] && (N.preventDefault(), P(a[o].slug));
|
|
1035
1035
|
};
|
|
1036
1036
|
S(() => {
|
|
1037
|
-
const N = (
|
|
1038
|
-
k.current && !k.current.contains(
|
|
1037
|
+
const N = (C) => {
|
|
1038
|
+
k.current && !k.current.contains(C.target) && (_(!1), u(""));
|
|
1039
1039
|
};
|
|
1040
1040
|
return r && document.addEventListener("mousedown", N), () => document.removeEventListener("mousedown", N);
|
|
1041
1041
|
}, [r]);
|
|
1042
1042
|
const P = (N) => {
|
|
1043
|
-
const
|
|
1044
|
-
s(`${
|
|
1043
|
+
const C = c.basePath || "";
|
|
1044
|
+
s(`${C}/${t}/${N}`), _(!1), u("");
|
|
1045
1045
|
};
|
|
1046
1046
|
return /* @__PURE__ */ i(U, { children: [
|
|
1047
1047
|
/* @__PURE__ */ i(
|
|
@@ -1089,7 +1089,7 @@ function ea({ language: t }) {
|
|
|
1089
1089
|
placeholder: n("ui.searchPlaceholder"),
|
|
1090
1090
|
value: d,
|
|
1091
1091
|
onChange: (N) => u(N.target.value),
|
|
1092
|
-
onKeyDown:
|
|
1092
|
+
onKeyDown: y
|
|
1093
1093
|
}
|
|
1094
1094
|
),
|
|
1095
1095
|
/* @__PURE__ */ e(
|
|
@@ -1105,13 +1105,13 @@ function ea({ language: t }) {
|
|
|
1105
1105
|
}
|
|
1106
1106
|
)
|
|
1107
1107
|
] }),
|
|
1108
|
-
d && /* @__PURE__ */ e("div", { className: x.searchResults, children: a.length === 0 ? /* @__PURE__ */ e("div", { className: x.noResults, children: n("ui.noSearchResults") }) : /* @__PURE__ */ e("ul", { className: x.resultsList, children: a.map((N,
|
|
1108
|
+
d && /* @__PURE__ */ e("div", { className: x.searchResults, children: a.length === 0 ? /* @__PURE__ */ e("div", { className: x.noResults, children: n("ui.noSearchResults") }) : /* @__PURE__ */ e("ul", { className: x.resultsList, children: a.map((N, C) => /* @__PURE__ */ e("li", { children: /* @__PURE__ */ i(
|
|
1109
1109
|
"button",
|
|
1110
1110
|
{
|
|
1111
1111
|
type: "button",
|
|
1112
|
-
className: `${x.resultItem} ${
|
|
1112
|
+
className: `${x.resultItem} ${C === o ? x.selected : ""}`,
|
|
1113
1113
|
onClick: () => P(N.slug),
|
|
1114
|
-
onMouseEnter: () => l(
|
|
1114
|
+
onMouseEnter: () => l(C),
|
|
1115
1115
|
children: [
|
|
1116
1116
|
/* @__PURE__ */ e("div", { className: x.resultTitle, children: N.title }),
|
|
1117
1117
|
/* @__PURE__ */ i("div", { className: x.resultSlug, children: [
|
|
@@ -1145,7 +1145,7 @@ function ea({ language: t }) {
|
|
|
1145
1145
|
)
|
|
1146
1146
|
] });
|
|
1147
1147
|
}
|
|
1148
|
-
const ta = "_header_jrobc_1", na = "_container_jrobc_24", aa = "_content_jrobc_36", oa = "_leftSection_jrobc_43", sa = "_mobileMenuButton_jrobc_49", ca = "_burgerIcon_jrobc_87", ra = "_logo_jrobc_92", la = "_nav_jrobc_98", ia = "_navLink_jrobc_109", da = "_externalIcon_jrobc_135", ua = "_supportDropdown_jrobc_141", ha = "_themeDropdown_jrobc_145", ma = "_themeButton_jrobc_149", _a = "_themeIcon_jrobc_171", ga = "_supportButton_jrobc_177", pa = "_caretIcon_jrobc_198", va = "_dropdownMenu_jrobc_208", fa = "_dropdownItem_jrobc_221", ba = "_dropdownIcon_jrobc_244",
|
|
1148
|
+
const ta = "_header_jrobc_1", na = "_container_jrobc_24", aa = "_content_jrobc_36", oa = "_leftSection_jrobc_43", sa = "_mobileMenuButton_jrobc_49", ca = "_burgerIcon_jrobc_87", ra = "_logo_jrobc_92", la = "_nav_jrobc_98", ia = "_navLink_jrobc_109", da = "_externalIcon_jrobc_135", ua = "_supportDropdown_jrobc_141", ha = "_themeDropdown_jrobc_145", ma = "_themeButton_jrobc_149", _a = "_themeIcon_jrobc_171", ga = "_supportButton_jrobc_177", pa = "_caretIcon_jrobc_198", va = "_dropdownMenu_jrobc_208", fa = "_dropdownItem_jrobc_221", ba = "_dropdownIcon_jrobc_244", $ = {
|
|
1149
1149
|
header: ta,
|
|
1150
1150
|
container: na,
|
|
1151
1151
|
content: aa,
|
|
@@ -1167,47 +1167,47 @@ const ta = "_header_jrobc_1", na = "_container_jrobc_24", aa = "_content_jrobc_3
|
|
|
1167
1167
|
dropdownIcon: ba
|
|
1168
1168
|
};
|
|
1169
1169
|
function ka({ onMobileMenuToggle: t }) {
|
|
1170
|
-
const { t: n, i18n: s } =
|
|
1170
|
+
const { t: n, i18n: s } = D(), { config: c } = R(), h = c.header ?? {}, r = h.navLinks ?? [], _ = h.dropdownItems ?? [], [d, u] = T(!1), [a, m] = T(!1), { theme: o, setTheme: l } = ze(), v = G(null), w = G(null);
|
|
1171
1171
|
return S(() => {
|
|
1172
1172
|
const g = (k) => {
|
|
1173
1173
|
v.current && !v.current.contains(k.target) && u(!1), w.current && !w.current.contains(k.target) && m(!1);
|
|
1174
1174
|
};
|
|
1175
1175
|
return document.addEventListener("mousedown", g), () => document.removeEventListener("mousedown", g);
|
|
1176
|
-
}, []), /* @__PURE__ */ e("header", { className:
|
|
1177
|
-
/* @__PURE__ */ i("div", { className:
|
|
1176
|
+
}, []), /* @__PURE__ */ e("header", { className: $.header, children: /* @__PURE__ */ e("div", { className: $.container, children: /* @__PURE__ */ i("div", { className: $.content, children: [
|
|
1177
|
+
/* @__PURE__ */ i("div", { className: $.leftSection, children: [
|
|
1178
1178
|
/* @__PURE__ */ e(
|
|
1179
1179
|
"button",
|
|
1180
1180
|
{
|
|
1181
1181
|
type: "button",
|
|
1182
|
-
className:
|
|
1182
|
+
className: $.mobileMenuButton,
|
|
1183
1183
|
onClick: t,
|
|
1184
1184
|
"aria-label": "Open menu",
|
|
1185
|
-
children: /* @__PURE__ */ e(tt, { className:
|
|
1185
|
+
children: /* @__PURE__ */ e(tt, { className: $.burgerIcon })
|
|
1186
1186
|
}
|
|
1187
1187
|
),
|
|
1188
|
-
/* @__PURE__ */ e("div", { className:
|
|
1188
|
+
/* @__PURE__ */ e("div", { className: $.logo })
|
|
1189
1189
|
] }),
|
|
1190
|
-
/* @__PURE__ */ i("nav", { className:
|
|
1190
|
+
/* @__PURE__ */ i("nav", { className: $.nav, children: [
|
|
1191
1191
|
/* @__PURE__ */ e(ea, { language: s.language }),
|
|
1192
|
-
/* @__PURE__ */ i("div", { className:
|
|
1192
|
+
/* @__PURE__ */ i("div", { className: $.themeDropdown, ref: w, children: [
|
|
1193
1193
|
/* @__PURE__ */ i(
|
|
1194
1194
|
"button",
|
|
1195
1195
|
{
|
|
1196
1196
|
type: "button",
|
|
1197
|
-
className:
|
|
1197
|
+
className: $.themeButton,
|
|
1198
1198
|
onClick: () => m(!a),
|
|
1199
1199
|
"aria-expanded": a,
|
|
1200
1200
|
"aria-haspopup": "true",
|
|
1201
1201
|
"aria-label": n("ui.theme"),
|
|
1202
1202
|
children: [
|
|
1203
|
-
o === "light" && /* @__PURE__ */ e(Pe, { className:
|
|
1204
|
-
o === "dark" && /* @__PURE__ */ e(Me, { className:
|
|
1205
|
-
o === "system" && /* @__PURE__ */ e(Be, { className:
|
|
1206
|
-
/* @__PURE__ */ e(_e, { className:
|
|
1203
|
+
o === "light" && /* @__PURE__ */ e(Pe, { className: $.themeIcon }),
|
|
1204
|
+
o === "dark" && /* @__PURE__ */ e(Me, { className: $.themeIcon }),
|
|
1205
|
+
o === "system" && /* @__PURE__ */ e(Be, { className: $.themeIcon }),
|
|
1206
|
+
/* @__PURE__ */ e(_e, { className: $.caretIcon })
|
|
1207
1207
|
]
|
|
1208
1208
|
}
|
|
1209
1209
|
),
|
|
1210
|
-
a && /* @__PURE__ */ i("div", { className:
|
|
1210
|
+
a && /* @__PURE__ */ i("div", { className: $.dropdownMenu, children: [
|
|
1211
1211
|
/* @__PURE__ */ i(
|
|
1212
1212
|
"button",
|
|
1213
1213
|
{
|
|
@@ -1215,9 +1215,9 @@ function ka({ onMobileMenuToggle: t }) {
|
|
|
1215
1215
|
onClick: () => {
|
|
1216
1216
|
l("light"), m(!1);
|
|
1217
1217
|
},
|
|
1218
|
-
className:
|
|
1218
|
+
className: $.dropdownItem,
|
|
1219
1219
|
children: [
|
|
1220
|
-
/* @__PURE__ */ e(Pe, { className:
|
|
1220
|
+
/* @__PURE__ */ e(Pe, { className: $.dropdownIcon }),
|
|
1221
1221
|
n("ui.light")
|
|
1222
1222
|
]
|
|
1223
1223
|
}
|
|
@@ -1229,9 +1229,9 @@ function ka({ onMobileMenuToggle: t }) {
|
|
|
1229
1229
|
onClick: () => {
|
|
1230
1230
|
l("dark"), m(!1);
|
|
1231
1231
|
},
|
|
1232
|
-
className:
|
|
1232
|
+
className: $.dropdownItem,
|
|
1233
1233
|
children: [
|
|
1234
|
-
/* @__PURE__ */ e(Me, { className:
|
|
1234
|
+
/* @__PURE__ */ e(Me, { className: $.dropdownIcon }),
|
|
1235
1235
|
n("ui.dark")
|
|
1236
1236
|
]
|
|
1237
1237
|
}
|
|
@@ -1243,41 +1243,41 @@ function ka({ onMobileMenuToggle: t }) {
|
|
|
1243
1243
|
onClick: () => {
|
|
1244
1244
|
l("system"), m(!1);
|
|
1245
1245
|
},
|
|
1246
|
-
className:
|
|
1246
|
+
className: $.dropdownItem,
|
|
1247
1247
|
children: [
|
|
1248
|
-
/* @__PURE__ */ e(Be, { className:
|
|
1248
|
+
/* @__PURE__ */ e(Be, { className: $.dropdownIcon }),
|
|
1249
1249
|
n("ui.system")
|
|
1250
1250
|
]
|
|
1251
1251
|
}
|
|
1252
1252
|
)
|
|
1253
1253
|
] })
|
|
1254
1254
|
] }),
|
|
1255
|
-
_.length > 0 && /* @__PURE__ */ i("div", { className:
|
|
1255
|
+
_.length > 0 && /* @__PURE__ */ i("div", { className: $.supportDropdown, ref: v, children: [
|
|
1256
1256
|
/* @__PURE__ */ i(
|
|
1257
1257
|
"button",
|
|
1258
1258
|
{
|
|
1259
1259
|
type: "button",
|
|
1260
|
-
className:
|
|
1260
|
+
className: $.supportButton,
|
|
1261
1261
|
onClick: () => u(!d),
|
|
1262
1262
|
"aria-expanded": d,
|
|
1263
1263
|
"aria-haspopup": "true",
|
|
1264
1264
|
children: [
|
|
1265
1265
|
n("ui.support"),
|
|
1266
|
-
/* @__PURE__ */ e(_e, { className:
|
|
1266
|
+
/* @__PURE__ */ e(_e, { className: $.caretIcon })
|
|
1267
1267
|
]
|
|
1268
1268
|
}
|
|
1269
1269
|
),
|
|
1270
|
-
d && /* @__PURE__ */ e("div", { className:
|
|
1271
|
-
const f = g.target ?? (g.url.startsWith("http") ? "_blank" : "_self"), b = g.rel ?? (f === "_blank" ? "noopener noreferrer" : void 0),
|
|
1270
|
+
d && /* @__PURE__ */ e("div", { className: $.dropdownMenu, children: _.map((g, k) => {
|
|
1271
|
+
const f = g.target ?? (g.url.startsWith("http") ? "_blank" : "_self"), b = g.rel ?? (f === "_blank" ? "noopener noreferrer" : void 0), y = g.icon;
|
|
1272
1272
|
return /* @__PURE__ */ i(
|
|
1273
1273
|
"a",
|
|
1274
1274
|
{
|
|
1275
1275
|
href: g.url,
|
|
1276
1276
|
target: f,
|
|
1277
1277
|
rel: b,
|
|
1278
|
-
className:
|
|
1278
|
+
className: $.dropdownItem,
|
|
1279
1279
|
children: [
|
|
1280
|
-
|
|
1280
|
+
y && /* @__PURE__ */ e(y, { className: $.dropdownIcon }),
|
|
1281
1281
|
g.label
|
|
1282
1282
|
]
|
|
1283
1283
|
},
|
|
@@ -1286,17 +1286,17 @@ function ka({ onMobileMenuToggle: t }) {
|
|
|
1286
1286
|
}) })
|
|
1287
1287
|
] }),
|
|
1288
1288
|
r.map((g, k) => {
|
|
1289
|
-
const f = g.target ?? (typeof g.url == "string" && g.url.startsWith("http") ? "_blank" : "_self"), b = g.rel ?? (f === "_blank" ? "noopener noreferrer" : void 0),
|
|
1289
|
+
const f = g.target ?? (typeof g.url == "string" && g.url.startsWith("http") ? "_blank" : "_self"), b = g.rel ?? (f === "_blank" ? "noopener noreferrer" : void 0), y = g.icon;
|
|
1290
1290
|
return /* @__PURE__ */ i(
|
|
1291
1291
|
"a",
|
|
1292
1292
|
{
|
|
1293
1293
|
href: g.url,
|
|
1294
1294
|
target: f,
|
|
1295
1295
|
rel: b,
|
|
1296
|
-
className: g.className ??
|
|
1296
|
+
className: g.className ?? $.navLink,
|
|
1297
1297
|
children: [
|
|
1298
1298
|
g.label,
|
|
1299
|
-
|
|
1299
|
+
y && /* @__PURE__ */ e(y, { className: $.externalIcon })
|
|
1300
1300
|
]
|
|
1301
1301
|
},
|
|
1302
1302
|
k
|
|
@@ -1309,7 +1309,7 @@ function fe({
|
|
|
1309
1309
|
styles: t,
|
|
1310
1310
|
onLanguageChange: n
|
|
1311
1311
|
}) {
|
|
1312
|
-
const { i18n: s } =
|
|
1312
|
+
const { i18n: s } = D(), c = Y(), h = Q(), { config: r } = R(), [_, d] = T(!1), u = G(null), a = s.language, m = (l) => {
|
|
1313
1313
|
const v = r.basePath || "";
|
|
1314
1314
|
let w = c.pathname;
|
|
1315
1315
|
v && w.startsWith(v) && (w = w.slice(v.length));
|
|
@@ -1357,7 +1357,7 @@ function fe({
|
|
|
1357
1357
|
] });
|
|
1358
1358
|
}
|
|
1359
1359
|
function be({ styles: t, onLinkClick: n }) {
|
|
1360
|
-
const { i18n: s } =
|
|
1360
|
+
const { i18n: s } = D(), c = Y(), { config: h, loadContent: r } = R(), [_, d] = T([]), [u, a] = T({}), [m, o] = T(!0), l = s.language;
|
|
1361
1361
|
S(() => {
|
|
1362
1362
|
(async () => {
|
|
1363
1363
|
if (!h.navigationData) {
|
|
@@ -1369,17 +1369,17 @@ function be({ styles: t, onLinkClick: n }) {
|
|
|
1369
1369
|
h.navigationData,
|
|
1370
1370
|
l,
|
|
1371
1371
|
r
|
|
1372
|
-
),
|
|
1373
|
-
(P, N,
|
|
1374
|
-
if (
|
|
1375
|
-
const M = h.navigationData[
|
|
1372
|
+
), y = b.reduce(
|
|
1373
|
+
(P, N, C) => {
|
|
1374
|
+
if (Ae(N)) {
|
|
1375
|
+
const M = h.navigationData[C], W = "items" in M && M.defaultOpen === !0;
|
|
1376
1376
|
P[N.title] = W;
|
|
1377
1377
|
}
|
|
1378
1378
|
return P;
|
|
1379
1379
|
},
|
|
1380
1380
|
{}
|
|
1381
1381
|
);
|
|
1382
|
-
a(
|
|
1382
|
+
a(y), d(b), o(!1);
|
|
1383
1383
|
} catch (b) {
|
|
1384
1384
|
console.error("Failed to load navigation data:", b), o(!1);
|
|
1385
1385
|
}
|
|
@@ -1392,15 +1392,15 @@ function be({ styles: t, onLinkClick: n }) {
|
|
|
1392
1392
|
}));
|
|
1393
1393
|
}, w = (f) => {
|
|
1394
1394
|
const b = h.basePath || "";
|
|
1395
|
-
let
|
|
1396
|
-
b &&
|
|
1397
|
-
const P =
|
|
1395
|
+
let y = c.pathname;
|
|
1396
|
+
b && y.startsWith(b) && (y = y.slice(b.length));
|
|
1397
|
+
const P = y.split("/").filter(Boolean);
|
|
1398
1398
|
return P[P.length - 1] === f;
|
|
1399
1399
|
}, g = (f) => {
|
|
1400
1400
|
const b = h.basePath || "";
|
|
1401
|
-
let
|
|
1402
|
-
b &&
|
|
1403
|
-
const P =
|
|
1401
|
+
let y = c.pathname;
|
|
1402
|
+
b && y.startsWith(b) && (y = y.slice(b.length));
|
|
1403
|
+
const P = y.split("/").filter(Boolean);
|
|
1404
1404
|
return P[0] && h.supportedLanguages.includes(P[0]) ? `${b}/${P[0]}/${f}` : `${b}/${l}/${f}`;
|
|
1405
1405
|
}, k = () => {
|
|
1406
1406
|
n == null || n();
|
|
@@ -1420,7 +1420,7 @@ function be({ styles: t, onLinkClick: n }) {
|
|
|
1420
1420
|
/* @__PURE__ */ e("div", { className: t.skeletonItem })
|
|
1421
1421
|
] })
|
|
1422
1422
|
] })
|
|
1423
|
-
] }) : /* @__PURE__ */ e("div", { className: t.navigation, children: _.map((f) =>
|
|
1423
|
+
] }) : /* @__PURE__ */ e("div", { className: t.navigation, children: _.map((f) => Ae(f) ? /* @__PURE__ */ i("div", { className: t.section, children: [
|
|
1424
1424
|
/* @__PURE__ */ i(
|
|
1425
1425
|
"button",
|
|
1426
1426
|
{
|
|
@@ -1464,13 +1464,13 @@ function Zo({
|
|
|
1464
1464
|
/* @__PURE__ */ e(be, { styles: t, onLinkClick: n })
|
|
1465
1465
|
] });
|
|
1466
1466
|
}
|
|
1467
|
-
const Na = "_backdrop_1a7pu_1", wa = "_open_1a7pu_13", Ia = "_mobileMenu_1a7pu_18",
|
|
1467
|
+
const Na = "_backdrop_1a7pu_1", wa = "_open_1a7pu_13", Ia = "_mobileMenu_1a7pu_18", ya = "_header_1a7pu_37", $a = "_brand_1a7pu_46", Ca = "_cloudIcon_1a7pu_53", Ta = "_title_1a7pu_62", La = "_closeButton_1a7pu_69", xa = "_closeIcon_1a7pu_101", Sa = "_languageSection_1a7pu_106", Pa = "_languageSelect_1a7pu_112", Ma = "_languageButton_1a7pu_117", Ba = "_icon_1a7pu_156", ja = "_chevron_1a7pu_162", Ea = "_languageDropdown_1a7pu_172", Aa = "_languageOption_1a7pu_185", Da = "_selected_1a7pu_226", Ra = "_scrollArea_1a7pu_231", qa = "_navigation_1a7pu_237", Oa = "_section_1a7pu_241", Wa = "_sectionButton_1a7pu_245", Ha = "_expanded_1a7pu_285", Fa = "_sectionItems_1a7pu_289", za = "_navItem_1a7pu_297", Ka = "_active_1a7pu_310", Ua = "_navItemContent_1a7pu_316", Ga = "_navItemTitle_1a7pu_322", O = {
|
|
1468
1468
|
backdrop: Na,
|
|
1469
1469
|
open: wa,
|
|
1470
1470
|
mobileMenu: Ia,
|
|
1471
|
-
header:
|
|
1472
|
-
brand:
|
|
1473
|
-
cloudIcon:
|
|
1471
|
+
header: ya,
|
|
1472
|
+
brand: $a,
|
|
1473
|
+
cloudIcon: Ca,
|
|
1474
1474
|
title: Ta,
|
|
1475
1475
|
closeButton: La,
|
|
1476
1476
|
closeIcon: xa,
|
|
@@ -1478,10 +1478,10 @@ const Na = "_backdrop_1a7pu_1", wa = "_open_1a7pu_13", Ia = "_mobileMenu_1a7pu_1
|
|
|
1478
1478
|
languageSelect: Pa,
|
|
1479
1479
|
languageButton: Ma,
|
|
1480
1480
|
icon: Ba,
|
|
1481
|
-
chevron:
|
|
1482
|
-
languageDropdown:
|
|
1483
|
-
languageOption:
|
|
1484
|
-
selected:
|
|
1481
|
+
chevron: ja,
|
|
1482
|
+
languageDropdown: Ea,
|
|
1483
|
+
languageOption: Aa,
|
|
1484
|
+
selected: Da,
|
|
1485
1485
|
scrollArea: Ra,
|
|
1486
1486
|
navigation: qa,
|
|
1487
1487
|
section: Oa,
|
|
@@ -1574,15 +1574,15 @@ function wo() {
|
|
|
1574
1574
|
/* @__PURE__ */ e("div", { className: K.scrollArea, children: /* @__PURE__ */ e(be, { styles: K }) })
|
|
1575
1575
|
] });
|
|
1576
1576
|
}
|
|
1577
|
-
const Io = "
|
|
1577
|
+
const Io = "_app_b0d4r_1", yo = "_layout_b0d4r_9", $o = "_main_b0d4r_15", Co = "_fullWidth_b0d4r_21", To = "_contentWrapper_b0d4r_30", se = {
|
|
1578
1578
|
app: Io,
|
|
1579
|
-
layout:
|
|
1580
|
-
main:
|
|
1581
|
-
fullWidth:
|
|
1579
|
+
layout: yo,
|
|
1580
|
+
main: $o,
|
|
1581
|
+
fullWidth: Co,
|
|
1582
1582
|
contentWrapper: To
|
|
1583
1583
|
};
|
|
1584
1584
|
function Lo({ children: t }) {
|
|
1585
|
-
const { language: n } = pe(), { i18n: s } =
|
|
1585
|
+
const { language: n } = pe(), { i18n: s } = D(), { config: c } = R(), [h, r] = T(!1);
|
|
1586
1586
|
S(() => {
|
|
1587
1587
|
n && c.supportedLanguages.includes(n) && s.changeLanguage(n);
|
|
1588
1588
|
}, [n, s, c.supportedLanguages]);
|
|
@@ -1609,22 +1609,22 @@ function Lo({ children: t }) {
|
|
|
1609
1609
|
] })
|
|
1610
1610
|
] });
|
|
1611
1611
|
}
|
|
1612
|
-
const xo = "
|
|
1612
|
+
const xo = "_homePage_1otqy_1", So = "_header_1otqy_20", Po = "_title_1otqy_24", Mo = "_articlesList_1otqy_31", Bo = "_articleCard_1otqy_37", jo = "_articleTitle_1otqy_56", Eo = "_articleDescription_1otqy_63", Ao = "_empty_1otqy_71", Do = "_skeletonCard_1otqy_85", Ro = "_skeletonTitle_1otqy_95", qo = "_skeletonText_1otqy_104", Oo = "_skeletonMetadata_1otqy_113", j = {
|
|
1613
1613
|
homePage: xo,
|
|
1614
1614
|
header: So,
|
|
1615
1615
|
title: Po,
|
|
1616
1616
|
articlesList: Mo,
|
|
1617
1617
|
articleCard: Bo,
|
|
1618
|
-
articleTitle:
|
|
1619
|
-
articleDescription:
|
|
1620
|
-
empty:
|
|
1621
|
-
skeletonCard:
|
|
1618
|
+
articleTitle: jo,
|
|
1619
|
+
articleDescription: Eo,
|
|
1620
|
+
empty: Ao,
|
|
1621
|
+
skeletonCard: Do,
|
|
1622
1622
|
skeletonTitle: Ro,
|
|
1623
1623
|
skeletonText: qo,
|
|
1624
1624
|
skeletonMetadata: Oo
|
|
1625
1625
|
};
|
|
1626
1626
|
function Wo() {
|
|
1627
|
-
const { i18n: t, t: n } =
|
|
1627
|
+
const { i18n: t, t: n } = D(), { config: s, discoverArticles: c } = R(), h = Q(), [r, _] = T([]), [d, u] = T(!0), a = s.articleTitleFont ? { fontFamily: s.articleTitleFont } : void 0;
|
|
1628
1628
|
S(() => {
|
|
1629
1629
|
(async () => {
|
|
1630
1630
|
try {
|
|
@@ -1641,26 +1641,26 @@ function Wo() {
|
|
|
1641
1641
|
const l = s.basePath || "";
|
|
1642
1642
|
window.scrollTo({ top: 0, left: 0, behavior: "auto" }), h(`${l}/${t.language}/${o}`);
|
|
1643
1643
|
};
|
|
1644
|
-
return d ? /* @__PURE__ */ i("div", { className:
|
|
1645
|
-
/* @__PURE__ */ e("div", { className:
|
|
1646
|
-
/* @__PURE__ */ e("div", { className:
|
|
1647
|
-
/* @__PURE__ */ e("div", { className:
|
|
1648
|
-
/* @__PURE__ */ e("div", { className:
|
|
1649
|
-
/* @__PURE__ */ e("div", { className:
|
|
1650
|
-
/* @__PURE__ */ e("div", { className:
|
|
1644
|
+
return d ? /* @__PURE__ */ i("div", { className: j.homePage, children: [
|
|
1645
|
+
/* @__PURE__ */ e("div", { className: j.header, children: /* @__PURE__ */ e("h2", { className: j.title, children: n("ui.latestPosts") }) }),
|
|
1646
|
+
/* @__PURE__ */ e("div", { className: j.articlesList, children: [...Array(5)].map((o, l) => /* @__PURE__ */ i("div", { className: j.skeletonCard, children: [
|
|
1647
|
+
/* @__PURE__ */ e("div", { className: j.skeletonTitle }),
|
|
1648
|
+
/* @__PURE__ */ e("div", { className: j.skeletonText }),
|
|
1649
|
+
/* @__PURE__ */ e("div", { className: j.skeletonText }),
|
|
1650
|
+
/* @__PURE__ */ e("div", { className: j.skeletonMetadata })
|
|
1651
1651
|
] }, l)) })
|
|
1652
|
-
] }) : r.length === 0 ? /* @__PURE__ */ e("div", { className:
|
|
1653
|
-
/* @__PURE__ */ i("div", { className:
|
|
1654
|
-
/* @__PURE__ */ e("div", { className:
|
|
1655
|
-
/* @__PURE__ */ e("div", { className:
|
|
1652
|
+
] }) : r.length === 0 ? /* @__PURE__ */ e("div", { className: j.empty, children: n("ui.noArticlesFound") }) : /* @__PURE__ */ i(U, { children: [
|
|
1653
|
+
/* @__PURE__ */ i("div", { className: j.homePage, children: [
|
|
1654
|
+
/* @__PURE__ */ e("div", { className: j.header, children: /* @__PURE__ */ e("h3", { className: j.title, children: n("ui.latestPosts") }) }),
|
|
1655
|
+
/* @__PURE__ */ e("div", { className: j.articlesList, children: r.map((o) => /* @__PURE__ */ i(
|
|
1656
1656
|
"button",
|
|
1657
1657
|
{
|
|
1658
|
-
className:
|
|
1658
|
+
className: j.articleCard,
|
|
1659
1659
|
onClick: () => m(o.slug),
|
|
1660
1660
|
type: "button",
|
|
1661
1661
|
children: [
|
|
1662
|
-
/* @__PURE__ */ e("h2", { className:
|
|
1663
|
-
o.description && /* @__PURE__ */ e("p", { className:
|
|
1662
|
+
/* @__PURE__ */ e("h2", { className: j.articleTitle, style: a, children: o.title }),
|
|
1663
|
+
o.description && /* @__PURE__ */ e("p", { className: j.articleDescription, children: o.description }),
|
|
1664
1664
|
/* @__PURE__ */ e(ge, { date: o.date, author: o.author })
|
|
1665
1665
|
]
|
|
1666
1666
|
},
|
|
@@ -1673,7 +1673,7 @@ function Wo() {
|
|
|
1673
1673
|
function es() {
|
|
1674
1674
|
const { language: t } = pe(), { config: n } = R();
|
|
1675
1675
|
return /* @__PURE__ */ e(Lo, { children: /* @__PURE__ */ i(Xe, { children: [
|
|
1676
|
-
/* @__PURE__ */ e(xe, { path: "/:slug", element: /* @__PURE__ */ e(
|
|
1676
|
+
/* @__PURE__ */ e(xe, { path: "/:slug", element: /* @__PURE__ */ e(En, { language: t }) }),
|
|
1677
1677
|
/* @__PURE__ */ e(
|
|
1678
1678
|
xe,
|
|
1679
1679
|
{
|
|
@@ -1694,7 +1694,7 @@ function ts() {
|
|
|
1694
1694
|
};
|
|
1695
1695
|
}
|
|
1696
1696
|
function ns() {
|
|
1697
|
-
const { i18n: t } =
|
|
1697
|
+
const { i18n: t } = D(), n = Y(), s = Q(), { config: c } = R();
|
|
1698
1698
|
return (h) => {
|
|
1699
1699
|
const r = c.basePath || "";
|
|
1700
1700
|
let _ = n.pathname;
|
|
@@ -1713,7 +1713,7 @@ export {
|
|
|
1713
1713
|
ht as BlogRoot,
|
|
1714
1714
|
Bt as BlogSidebar,
|
|
1715
1715
|
Ot as Breadcrumb,
|
|
1716
|
-
|
|
1716
|
+
En as ContentPage,
|
|
1717
1717
|
Lo as DocumentationLayout,
|
|
1718
1718
|
es as DocumentationRoutes,
|
|
1719
1719
|
ka as Header,
|
package/package.json
CHANGED
package/styles/index.css
CHANGED
|
@@ -214,4 +214,4 @@
|
|
|
214
214
|
--xw-sidebar-border: oklch(1 0 0 / 10%);
|
|
215
215
|
--xw-sidebar-ring: oklch(0.556 0 0);
|
|
216
216
|
}
|
|
217
|
-
._tabContainer_zk6h4_1{display:inline-flex;background-color:var(--xw-card);border:1px solid var(--xw-border);border-radius:.5rem;margin-bottom:2rem;overflow:hidden}._tab_zk6h4_1{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._tab_zk6h4_1:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._tab_zk6h4_1:disabled{pointer-events:none;opacity:.5}._tab_zk6h4_1{padding:.5rem 1rem;font-size:.87rem;font-weight:500;background-color:transparent;border:none;border-radius:0;color:var(--xw-muted-foreground);cursor:pointer;white-space:nowrap}._tab_zk6h4_1:not(:last-child){border-right:1px solid var(--xw-border)}._tab_zk6h4_1._active_zk6h4_45{background-color:var(--xw-accent);color:var(--xw-accent-foreground)}._tab_zk6h4_1:hover:not(._active_zk6h4_45){background-color:var(--xw-muted);color:var(--xw-foreground)}._tab_zk6h4_1:focus-visible{outline:2px solid var(--xw-accent);outline-offset:-2px}._articleNavigation_kz84g_1{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--xw-border)}._navContainer_kz84g_7{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:767px){._navContainer_kz84g_7{grid-template-columns:1fr;gap:1rem}}@media(min-width:1024px){._navContainer_kz84g_7{gap:1.5rem}}._navLink_kz84g_24{display:flex;padding:1rem;border:1px solid var(--xw-border);border-radius:.5rem;text-decoration:none;color:var(--xw-foreground);background-color:var(--xw-background);transition:all .2s ease;box-shadow:0 1px 3px #0000000d}._navLink_kz84g_24:hover{border-color:var(--xw-ring);background-color:var(--xw-card);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}._navLink_kz84g_24:first-child{justify-content:flex-start}@media(max-width:767px){._navLink_kz84g_24:first-child{justify-content:center;text-align:center}}._navLink_kz84g_24:last-child{justify-content:flex-end;text-align:right}@media(max-width:767px){._navLink_kz84g_24:last-child{justify-content:center;text-align:center}}._navLinkContent_kz84g_61{display:flex;align-items:center;gap:.75rem;min-width:0;width:100%}@media(max-width:767px){._navLinkContent_kz84g_61{justify-content:center;flex-direction:column;text-align:center}}._navIcon_kz84g_76{display:flex;align-items:center;color:var(--xw-primary);flex-shrink:0}._navText_kz84g_83{display:flex;flex-direction:column;gap:.25rem;min-width:0}._navLabel_kz84g_90{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--xw-muted-foreground)}._navTitle_kz84g_98{font-size:.875rem;font-weight:400;color:var(--xw-foreground);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.4}@media(min-width:1024px){._navTitle_kz84g_98{font-size:.9rem}}._blogSidebar_n1up9_1{position:sticky;top:0;align-self:flex-start;height:fit-content;max-height:calc(100vh - 8rem);overflow-y:auto;padding:0 0 2rem 1.5rem;margin-left:2rem;background:transparent;border-left:1px solid var(--xw-border);flex-shrink:0;width:250px}@media(max-width:1024px){._blogSidebar_n1up9_1{display:none}}._section_n1up9_21{margin-bottom:2rem}._section_n1up9_21:last-child{margin-bottom:0}._sectionTitle_n1up9_28{font-size:.75rem;font-weight:600;color:var(--xw-foreground);margin:0 0 1rem}._linksList_n1up9_35{display:flex;flex-direction:column;gap:.25rem}._link_n1up9_35{display:flex;align-items:center;gap:.5rem;padding:.5rem;color:var(--xw-foreground);text-decoration:none;border-radius:.25rem;transition:all .15s cubic-bezier(.4,0,.2,1);font-size:.875rem}._link_n1up9_35:hover{color:var(--xw-primary)}._link_n1up9_35 svg{flex-shrink:0}._breadcrumb_rarc4_1{margin-bottom:1rem}._breadcrumbList_rarc4_5{display:flex;align-items:center;list-style:none;margin:0;padding:0;font-size:.875rem;color:var(--xw-muted-foreground)}._breadcrumbItem_rarc4_15{display:flex;align-items:center;gap:.25rem}._breadcrumbLink_rarc4_21{background:none;border:none;cursor:pointer;color:var(--xw-link);text-decoration:none;font-size:inherit;padding:0;font-weight:500;transition:color .2s ease}._breadcrumbLink_rarc4_21:hover{color:var(--xw-primary);text-decoration:underline}._breadcrumbLink_rarc4_21:focus-visible{outline:2px solid var(--xw-primary);outline-offset:2px}._breadcrumbSeparator_rarc4_41{color:var(--xw-border);margin:0 .5rem}._breadcrumbCurrent_rarc4_46{color:var(--xw-foreground);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:20rem}@media(max-width:767px){._breadcrumbCurrent_rarc4_46{max-width:10rem}}._metadata_bsge0_1{display:flex;align-items:center;gap:1.5rem;margin-top:1rem;margin-bottom:1rem}._author_bsge0_9,._date_bsge0_10{display:flex;align-items:center;gap:.5rem;font-weight:500;font-size:.9rem}._author_bsge0_9 svg,._date_bsge0_10 svg{flex-shrink:0}._date_bsge0_10{color:var(--xw-text-secondary, #666)}._tableOfContents_9ofak_1{position:sticky;top:5rem;align-self:flex-start;height:fit-content;max-height:calc(100vh - 8rem);overflow-y:auto;padding:2rem 0 2rem 1.5rem;margin-left:2rem;background:transparent;border-left:1px solid var(--xw-border);flex-shrink:0;max-width:250px}@media(max-width:1024px){._tableOfContents_9ofak_1{display:none}}._header_9ofak_21{margin-bottom:1rem}._title_9ofak_25{font-size:.75rem;font-weight:500;color:var(--xw-muted-foreground);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}._nav_9ofak_34 ul{margin:0;padding:0;list-style:none}._list_9ofak_40{display:flex;flex-direction:column;gap:.125rem;margin:0}._link_9ofak_47{display:block;width:100%;padding:.25rem 0;text-align:left;background:none;border:none;cursor:pointer;font-size:.875rem;line-height:1.4;color:var(--xw-muted-foreground);text-decoration:none;border-radius:.25rem;transition:all .15s cubic-bezier(.4,0,.2,1);position:relative;font-family:inherit}._link_9ofak_47:hover{color:var(--xw-foreground)}._link_9ofak_47:focus{outline:none;color:var(--xw-foreground)}._link_9ofak_47._active_9ofak_71{color:var(--xw-primary);font-weight:500}._link_9ofak_47._active_9ofak_71:before{content:"";position:absolute;left:-1.5rem;top:50%;transform:translateY(-50%);width:1px;height:1rem;background-color:var(--xw-primary);border-radius:.5px}._level1_9ofak_87{font-weight:500;padding-left:0;margin-bottom:.125rem}._level2_9ofak_93{padding-left:.5rem;margin-bottom:.0625rem}._level3_9ofak_98{padding-left:1rem;font-size:.8125rem;margin-bottom:.0625rem}._level4_9ofak_104{padding-left:1.5rem;font-size:.8125rem;margin-bottom:.0625rem}._level5_9ofak_110{padding-left:2rem;font-size:.75rem;margin-bottom:.0625rem}._level6_9ofak_116{padding-left:2.5rem;font-size:.75rem;margin-bottom:.0625rem}._tableOfContents_9ofak_1::-webkit-scrollbar{width:4px}._tableOfContents_9ofak_1::-webkit-scrollbar-track{background:transparent}._tableOfContents_9ofak_1::-webkit-scrollbar-thumb{background:var(--xw-border);border-radius:2px}._tableOfContents_9ofak_1::-webkit-scrollbar-thumb:hover{background:var(--xw-muted-foreground)}._overlay_1e1d4_1{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;animation:_fadeIn_1e1d4_1 .2s ease;height:100vh}@keyframes _fadeIn_1e1d4_1{0%{opacity:0}to{opacity:1}}._modal_1e1d4_26{width:90%;max-width:600px;background:var(--xw-card);border:1px solid var(--xw-border);border-radius:.75rem;box-shadow:0 20px 60px #0000004d;animation:_slideIn_1e1d4_1 .2s ease;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}@keyframes _slideIn_1e1d4_1{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}._header_1e1d4_50{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--xw-border)}._title_1e1d4_58{font-size:1.125rem;font-weight:600;color:var(--xw-foreground);margin:0}._closeButton_1e1d4_65{background:none;border:none;color:var(--xw-muted-foreground);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .2s ease}._closeButton_1e1d4_65 svg{width:1.25rem;height:1.25rem}._closeButton_1e1d4_65:hover{background:var(--xw-secondary);color:var(--xw-foreground)}._results_1e1d4_86{flex:1;overflow-y:auto;padding:.5rem;min-height:200px;max-height:400px}._resultsList_1e1d4_94{list-style:none;padding:0;margin:0}._resultItem_1e1d4_100{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;width:100%;padding:.75rem 1rem;background:none;border:none;border-radius:.5rem;cursor:pointer;text-align:left;transition:all .15s ease;color:var(--xw-foreground)}._resultItem_1e1d4_100:hover{background:var(--xw-secondary)}._resultTitle_1e1d4_119{font-weight:500;font-size:.95rem}._resultSlug_1e1d4_124{font-size:.8rem;color:var(--xw-muted-foreground);opacity:.8}._noResults_1e1d4_130{padding:3rem 1rem;text-align:center;color:var(--xw-muted-foreground);font-size:.9rem}._tags_11t8a_1{display:flex;align-items:center;gap:.75rem;margin:2rem 0 1rem;padding:1rem 0 0;border-top:1px solid var(--xw-border)}._tags_11t8a_1._compact_11t8a_9{margin:2rem 0 1rem;padding:1rem 0 0;border-top:1px solid var(--xw-border)}._tagLabel_11t8a_15{display:flex;align-items:center;gap:.5rem;color:var(--xw-muted-foreground);font-size:.875rem;font-weight:500;white-space:nowrap}._tagIcon_11t8a_25{width:1.125rem;height:1.125rem}._tagList_11t8a_30{display:flex;flex-wrap:wrap;gap:.5rem}._tag_11t8a_1{display:inline-flex;align-items:center;padding:.25rem .75rem;background:none;border:1px solid var(--xw-border);border-radius:.75rem;color:var(--xw-muted-foreground);font-size:.8rem;font-weight:400;cursor:pointer;transition:all .2s ease}._tag_11t8a_1:hover{color:var(--xw-foreground);border-color:var(--xw-ring)}._contentPage_mc666_1{flex:1;max-width:48rem;margin:0;padding:0 0 2rem}@media(max-width:767px){._contentPage_mc666_1{padding:1rem;max-width:none}}@media(max-width:1024px){._contentPage_mc666_1{max-width:none;padding:2rem}}._contentPage_mc666_1>h1{font-size:1.875rem;font-weight:600;letter-spacing:-.025em;margin-top:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--xw-border);padding-bottom:.75rem;line-height:1.2;scroll-margin-top:5rem}._contentPage_mc666_1>h1._withMetadata_mc666_30{border-bottom:none;padding-bottom:0;margin-bottom:.5rem}._metadata_mc666_36{display:flex;gap:1rem;align-items:center;padding:.5rem 0 1rem;color:var(--xw-muted-foreground);font-size:.875rem;border-bottom:1px solid var(--xw-border);margin-bottom:1rem}._metadata_mc666_36 ._author_mc666_46,._metadata_mc666_36 ._date_mc666_47{display:flex;align-items:center;gap:.5rem}._metadata_mc666_36 ._author_mc666_46{font-weight:500;color:var(--xw-foreground)}@media(max-width:767px){._metadata_mc666_36{flex-direction:column;align-items:flex-start;gap:.25rem}}._loadingContainer_mc666_64,._errorContainer_mc666_65{display:flex;align-items:center;justify-content:center;height:16rem}._loadingContainer_mc666_64{flex-direction:column;align-items:flex-start;gap:1.5rem;padding:2rem 0}@keyframes _shimmer_mc666_1{0%{background-position:-1000px 0}to{background-position:1000px 0}}._skeletonTitle_mc666_87{width:60%;height:2.5rem;background:linear-gradient(90deg,var(--xw-muted) 0%,color-mix(in oklch,var(--xw-muted) 50%,white) 50%,var(--xw-muted) 100%);background-size:1000px 100%;animation:_shimmer_mc666_1 2s infinite linear;border-radius:.5rem}._skeletonParagraph_mc666_96{width:100%;height:1rem;background:linear-gradient(90deg,var(--xw-muted) 0%,color-mix(in oklch,var(--xw-muted) 50%,white) 50%,var(--xw-muted) 100%);background-size:1000px 100%;animation:_shimmer_mc666_1 2s infinite linear;border-radius:.25rem;margin-bottom:.5rem}._skeletonParagraph_mc666_96:not(:last-child){margin-bottom:1rem}._skeletonParagraphShort_mc666_109{width:70%;height:1rem;background:linear-gradient(90deg,var(--xw-muted) 0%,color-mix(in oklch,var(--xw-muted) 50%,white) 50%,var(--xw-muted) 100%);background-size:1000px 100%;animation:_shimmer_mc666_1 2s infinite linear;border-radius:.25rem}._loadingText_mc666_118{color:var(--xw-muted-foreground);font-size:1rem}._errorText_mc666_123{color:var(--xw-destructive);font-size:1rem}._mdxContent_mc666_128{max-width:none}._mdxContent_mc666_128 h1{font-size:1.875rem;font-weight:600;letter-spacing:-.025em;margin-bottom:1.5rem;border-bottom:1px solid var(--xw-border);padding-bottom:.75rem;line-height:1.2;scroll-margin-top:5rem}._mdxContent_mc666_128 h1._withMetadata_mc666_30{border-bottom:none;padding-bottom:0;margin-bottom:.5rem}._mdxContent_mc666_128 h1 a{color:inherit;text-decoration:none;border:none;position:relative}._mdxContent_mc666_128 h1 a:hover{color:inherit;border:none}._mdxContent_mc666_128 h1 a:hover:before{content:"#";position:absolute;left:-1.5rem;color:var(--xw-link);opacity:.7;font-weight:400}._mdxContent_mc666_128 h2{font-size:1.5rem;font-weight:500;letter-spacing:-.02em;margin-bottom:1rem;margin-top:2.5rem;border-bottom:1px solid var(--xw-border);padding-bottom:.5rem;line-height:1.3;scroll-margin-top:5rem}._mdxContent_mc666_128 h2 a{color:inherit;text-decoration:none;border:none;position:relative}._mdxContent_mc666_128 h2 a:hover{color:inherit;border:none}._mdxContent_mc666_128 h2 a:hover:before{content:"#";position:absolute;left:-1.5rem;color:var(--xw-link);opacity:.7;font-weight:400}._mdxContent_mc666_128 h3{font-size:1.25rem;font-weight:500;letter-spacing:-.015em;margin-bottom:.75rem;margin-top:2rem;line-height:1.4;scroll-margin-top:5rem}._mdxContent_mc666_128 h3 a{color:inherit;text-decoration:none;border:none;position:relative}._mdxContent_mc666_128 h3 a:hover{color:inherit;border:none}._mdxContent_mc666_128 h3 a:hover:before{content:"#";position:absolute;left:-1.5rem;color:var(--xw-link);opacity:.7;font-weight:400}._mdxContent_mc666_128 h4{font-size:1.125rem;font-weight:500;letter-spacing:-.01em;margin-bottom:.5rem;margin-top:1.5rem;line-height:1.4;scroll-margin-top:5rem}._mdxContent_mc666_128 h4 a{color:inherit;text-decoration:none;border:none;position:relative}._mdxContent_mc666_128 h4 a:hover{color:inherit;border:none}._mdxContent_mc666_128 h4 a:hover:before{content:"#";position:absolute;left:-1.5rem;color:var(--xw-link);opacity:.7;font-weight:400}._mdxContent_mc666_128 h5{font-size:1rem;font-weight:500;margin-bottom:.5rem;margin-top:1.25rem;line-height:1.5}._mdxContent_mc666_128 h6{font-size:.875rem;font-weight:500;margin-bottom:.5rem;margin-top:1rem;line-height:1.5}._mdxContent_mc666_128 p{font-size:1rem;line-height:1.65;margin-bottom:1rem;color:var(--xw-foreground)}._mdxContent_mc666_128 ul,._mdxContent_mc666_128 ol{margin-bottom:1rem;padding-left:1.5rem}._mdxContent_mc666_128 ul li,._mdxContent_mc666_128 ol li{font-size:1rem;line-height:1.65;margin-bottom:.375rem}._mdxContent_mc666_128 ul ul,._mdxContent_mc666_128 ul ol,._mdxContent_mc666_128 ol ul,._mdxContent_mc666_128 ol ol{margin-top:.375rem;margin-bottom:.375rem}._mdxContent_mc666_128 ul{list-style-type:disc}._mdxContent_mc666_128 ol{list-style-type:decimal}._mdxContent_mc666_128 code{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.875rem;background-color:var(--xw-muted);padding:.1875rem .4375rem;border-radius:.25rem;color:var(--xw-foreground);font-weight:500}._mdxContent_mc666_128 pre{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;background-color:var(--xw-muted);padding:1.25rem;border-radius:.75rem;overflow-x:auto;margin:1.5rem 0;position:relative;border:1px solid var(--xw-border)}._mdxContent_mc666_128 pre code{background-color:transparent;padding:0;color:inherit;font-weight:400}._mdxContent_mc666_128 ._codeBlock_mc666_316{position:relative;margin-bottom:1.5rem}._mdxContent_mc666_128 ._codeLanguage_mc666_320{position:absolute;top:.5rem;right:.5rem;font-size:.75rem;color:var(--xw-muted-foreground);background-color:var(--xw-background);padding:.25rem .5rem;border-radius:.25rem;border:1px solid var(--xw-border)}._mdxContent_mc666_128 blockquote{border-left:3px solid var(--xw-accent);padding-left:1rem;font-style:italic;color:var(--xw-muted-foreground);margin-bottom:1rem;margin-top:1rem}._mdxContent_mc666_128 blockquote p{margin-bottom:.5rem}._mdxContent_mc666_128 blockquote p:last-child{margin-bottom:0}._mdxContent_mc666_128 a{color:var(--xw-link);text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1);border-bottom:1px solid transparent}._mdxContent_mc666_128 a:hover{color:color-mix(in oklch,var(--xw-link) 80%,transparent);border-bottom-color:currentColor}._mdxContent_mc666_128 strong{font-weight:600}._mdxContent_mc666_128 em{font-style:italic}._mdxContent_mc666_128 table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.95rem}._mdxContent_mc666_128 table th,._mdxContent_mc666_128 table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--xw-border);line-height:1.4}._mdxContent_mc666_128 table th{font-weight:500;background-color:var(--xw-muted);font-size:.875rem;letter-spacing:.025em}._mdxContent_mc666_128 table tbody tr:hover{background-color:color-mix(in oklch,var(--xw-muted) 50%,transparent)}._mdxContent_mc666_128 img{max-width:100%;height:auto;border-radius:.5rem;margin:1.5rem 0;border:1px solid var(--xw-border)}._mdxContent_mc666_128 hr{border:none;border-top:1px solid var(--xw-border);margin:2rem 0}._searchButton_1k9sl_1{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:.375rem;background:none;border:none;color:var(--xw-muted-foreground);cursor:pointer;transition:all .2s ease;font-size:.875rem}._searchButton_1k9sl_1:hover{border-color:var(--xw-input)}._searchButton_1k9sl_1 ._searchIcon_1k9sl_17{width:1rem;height:1rem;opacity:.6}@media(max-width:768px){._searchButton_1k9sl_1 ._searchHint_1k9sl_23{display:none}}._searchButton_1k9sl_1 ._kbd_1k9sl_27{display:none;padding:.125rem .375rem;background:var(--xw-card);border:1px solid var(--xw-border);border-radius:.25rem;font-size:.75rem;font-family:monospace}@media(min-width:768px){._searchButton_1k9sl_1 ._kbd_1k9sl_27{display:block}}._searchOverlay_1k9sl_42{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;animation:_fadeIn_1k9sl_1 .2s ease;height:100vh}@keyframes _fadeIn_1k9sl_1{0%{opacity:0}to{opacity:1}}._searchModal_1k9sl_67{width:90%;max-width:600px;background:var(--xw-card);border:1px solid var(--xw-border);border-radius:.75rem;box-shadow:0 20px 60px #0000004d;animation:_slideIn_1k9sl_1 .2s ease;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}@keyframes _slideIn_1k9sl_1{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}._searchHeader_1k9sl_91{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--xw-border)}._searchHeader_1k9sl_91 ._searchIcon_1k9sl_17{width:1.25rem;height:1.25rem;opacity:.5;flex-shrink:0}._searchInput_1k9sl_105{flex:1;border:none;background:transparent;color:var(--xw-foreground);font-size:1rem;outline:none}._searchInput_1k9sl_105:focus{border:none;outline:none;box-shadow:none}._searchInput_1k9sl_105::placeholder{color:var(--xw-muted-foreground);opacity:.6}._closeButton_1k9sl_123{background:none;border:none;color:var(--xw-muted-foreground);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .2s ease}._closeButton_1k9sl_123 svg{width:1.25rem;height:1.25rem}._closeButton_1k9sl_123:hover{background:var(--xw-secondary);color:var(--xw-foreground)}._searchResults_1k9sl_144{flex:1;overflow-y:auto;padding:.5rem;min-height:200px;max-height:400px}._resultsList_1k9sl_152{list-style:none;padding:0;margin:0}._resultItem_1k9sl_158{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;width:100%;padding:.75rem 1rem;background:none;border:none;border-radius:.5rem;cursor:pointer;text-align:left;transition:all .15s ease;color:var(--xw-foreground)}._resultItem_1k9sl_158:hover,._resultItem_1k9sl_158._selected_1k9sl_173{background:var(--xw-secondary)}._resultItem_1k9sl_158 ._resultTitle_1k9sl_176{font-weight:500;font-size:.95rem}._resultItem_1k9sl_158 ._resultSlug_1k9sl_180{font-size:.8rem;color:var(--xw-muted-foreground);opacity:.8}._noResults_1k9sl_186{padding:3rem 1rem;text-align:center;color:var(--xw-muted-foreground);font-size:.9rem}._searchHints_1k9sl_193{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1.25rem;border-top:1px solid var(--xw-border);background:var(--xw-secondary);font-size:.8rem;color:var(--xw-muted-foreground)}@media(max-width:768px){._searchHints_1k9sl_193{flex-direction:column;align-items:flex-start;gap:.5rem}}._searchHints_1k9sl_193 ._hint_1k9sl_210{display:flex;align-items:center;gap:.5rem}._searchHints_1k9sl_193 ._hint_1k9sl_210 kbd{padding:.125rem .375rem;background:var(--xw-card);border:1px solid var(--xw-border);border-radius:.25rem;font-size:.75rem;font-family:monospace;min-width:1.5rem;text-align:center}._header_jrobc_1{position:sticky;top:0;z-index:1020;background-color:#fffc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);height:3.5rem;padding-left:16rem}.dark ._header_jrobc_1{background-color:#2020201a}@supports not (backdrop-filter: blur(12px)){._header_jrobc_1{background-color:var(--xw-background)}}@media(max-width:767px){._header_jrobc_1{padding:0}}._container_jrobc_24{width:100%;max-width:1400px;margin:0 auto;padding:0 1.5rem}@media(max-width:767px){._container_jrobc_24{padding:0 1rem}}._content_jrobc_36{display:flex;align-items:center;justify-content:space-between;height:3.5rem}._leftSection_jrobc_43{display:flex;align-items:center;gap:1rem}._mobileMenuButton_jrobc_49{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._mobileMenuButton_jrobc_49:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._mobileMenuButton_jrobc_49:disabled{pointer-events:none;opacity:.5}._mobileMenuButton_jrobc_49{padding:.5rem;background-color:transparent;color:var(--xw-muted-foreground);border-radius:.5rem;display:none}._mobileMenuButton_jrobc_49:hover{background-color:var(--xw-muted);color:var(--xw-foreground)}@media(max-width:767px){._mobileMenuButton_jrobc_49{display:flex}}._burgerIcon_jrobc_87{width:1.25rem;height:1.25rem}._logo_jrobc_92,._nav_jrobc_98{display:flex;align-items:center;gap:.5rem}@media(max-width:767px){._nav_jrobc_98{gap:.25rem}}._navLink_jrobc_109{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;color:var(--xw-muted-foreground);text-decoration:none;transition:all .15s cubic-bezier(.4,0,.2,1)}._navLink_jrobc_109:hover{color:var(--xw-foreground)}._navLink_jrobc_109:focus{outline:none}._githubIcon_jrobc_128{width:1rem;height:1rem;flex-shrink:0;transition:transform .15s cubic-bezier(.4,0,.2,1)}._externalIcon_jrobc_135{width:1rem;height:1rem;flex-shrink:0}._supportDropdown_jrobc_141,._themeDropdown_jrobc_145{position:relative}._themeButton_jrobc_149{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:.5rem;font-size:.875rem;font-weight:500;color:var(--xw-muted-foreground);background:none;border:none;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1)}._themeButton_jrobc_149:hover{color:var(--xw-foreground);background-color:var(--xw-muted)}._themeButton_jrobc_149:focus{outline:none}._themeIcon_jrobc_171{width:1.125rem;height:1.125rem;flex-shrink:0}._supportButton_jrobc_177{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;color:var(--xw-muted-foreground);background:none;border:none;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1)}._supportButton_jrobc_177:hover{color:var(--xw-foreground)}._supportButton_jrobc_177:focus{outline:none}._caretIcon_jrobc_198{width:.875rem;height:.875rem;flex-shrink:0;transition:transform .15s cubic-bezier(.4,0,.2,1)}button[aria-expanded=true] ._caretIcon_jrobc_198{transform:rotate(180deg)}._dropdownMenu_jrobc_208{position:absolute;top:calc(100% + .25rem);right:0;min-width:10rem;background-color:var(--xw-popover);border:1px solid var(--xw-border);border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;z-index:1000;overflow:hidden}._dropdownItem_jrobc_221{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem 1rem;font-size:.875rem;color:var(--xw-popover-foreground);text-decoration:none;background:none;border:none;cursor:pointer;text-align:left;transition:background-color .15s cubic-bezier(.4,0,.2,1)}._dropdownItem_jrobc_221:hover{background-color:var(--xw-muted)}._dropdownItem_jrobc_221:focus{outline:none;background-color:var(--xw-muted)}._dropdownIcon_jrobc_244{width:1rem;height:1rem;flex-shrink:0}@media(max-width:767px){._logoText_jrobc_251{font-size:1rem}._navLink_jrobc_109{padding:.25rem .5rem;font-size:.8rem;gap:.25rem}._githubIcon_jrobc_128{width:.875rem;height:.875rem}}._backdrop_1a7pu_1{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:1040;opacity:0;visibility:hidden;transition:all .15s cubic-bezier(.4,0,.2,1)}._backdrop_1a7pu_1._open_1a7pu_13{opacity:1;visibility:visible}._mobileMenu_1a7pu_18{position:fixed;top:0;left:0;width:320px;height:100vh;background-color:var(--xw-background);border-right:1px solid var(--xw-border);z-index:1050;transform:translate(-100%);transition:transform .15s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;overflow:hidden}._mobileMenu_1a7pu_18._open_1a7pu_13{transform:translate(0)}._header_1a7pu_37{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--xw-border);flex-shrink:0}._brand_1a7pu_46{flex:1;display:flex;align-items:center;gap:.5rem}._cloudIcon_1a7pu_53{width:1.5rem;height:1.5rem;flex-shrink:0}._cloudIcon_1a7pu_53 .accent{fill:#d33079}._title_1a7pu_62{font-size:1.125rem;font-weight:600;color:var(--xw-foreground);margin:0}._closeButton_1a7pu_69{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._closeButton_1a7pu_69:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._closeButton_1a7pu_69:disabled{pointer-events:none;opacity:.5}._closeButton_1a7pu_69{padding:.5rem;background-color:transparent;color:var(--xw-muted-foreground);border-radius:.5rem}._closeButton_1a7pu_69:hover{background-color:var(--xw-muted);color:var(--xw-foreground)}._closeIcon_1a7pu_101{width:1.25rem;height:1.25rem}._languageSection_1a7pu_106{padding:1.5rem;border-bottom:1px solid var(--xw-border);flex-shrink:0}._languageSelect_1a7pu_112{position:relative;width:100%}._languageButton_1a7pu_117{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._languageButton_1a7pu_117:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._languageButton_1a7pu_117:disabled{pointer-events:none;opacity:.5}._languageButton_1a7pu_117{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem 1rem;background-color:var(--xw-background);border:1px solid var(--xw-border);color:var(--xw-foreground);gap:.5rem}._languageButton_1a7pu_117:hover,._languageButton_1a7pu_117[aria-expanded=true]{background-color:var(--xw-muted)}._icon_1a7pu_156{width:1rem;height:1rem;flex-shrink:0}._chevron_1a7pu_162{width:1rem;height:1rem;transition:transform .15s cubic-bezier(.4,0,.2,1);margin-left:auto}._languageButton_1a7pu_117[aria-expanded=true] ._chevron_1a7pu_162{transform:rotate(180deg)}._languageDropdown_1a7pu_172{position:absolute;top:100%;left:0;right:0;background-color:var(--xw-popover);border:1px solid var(--xw-border);border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;z-index:1000;margin-top:.25rem}._languageOption_1a7pu_185{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._languageOption_1a7pu_185:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._languageOption_1a7pu_185:disabled{pointer-events:none;opacity:.5}._languageOption_1a7pu_185{width:100%;padding:.5rem 1rem;background-color:transparent;color:var(--xw-foreground);text-align:left;justify-content:flex-start;border-radius:0}._languageOption_1a7pu_185:first-child{border-top-left-radius:.5rem;border-top-right-radius:.5rem}._languageOption_1a7pu_185:last-child{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}._languageOption_1a7pu_185:hover{background-color:var(--xw-muted)}._languageOption_1a7pu_185._selected_1a7pu_226{background-color:var(--xw-accent);color:var(--xw-accent-foreground)}._scrollArea_1a7pu_231{flex:1;overflow-y:auto;padding:1.5rem 0}._navigation_1a7pu_237{padding:0 1.5rem}._section_1a7pu_241{margin-bottom:1rem}._sectionButton_1a7pu_245{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._sectionButton_1a7pu_245:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._sectionButton_1a7pu_245:disabled{pointer-events:none;opacity:.5}._sectionButton_1a7pu_245{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem 1rem;background-color:transparent;color:var(--xw-foreground);font-weight:600;gap:.5rem;border-radius:.5rem}._sectionButton_1a7pu_245:hover{background-color:var(--xw-muted)}._sectionButton_1a7pu_245 ._icon_1a7pu_156{transition:transform .15s cubic-bezier(.4,0,.2,1);margin-left:auto}._sectionButton_1a7pu_245._expanded_1a7pu_285 ._icon_1a7pu_156{transform:rotate(90deg)}._sectionItems_1a7pu_289{margin-top:.5rem;margin-left:1rem;display:flex;flex-direction:column;gap:.25rem}._navItem_1a7pu_297{display:block;padding:.5rem 1rem;border-radius:.5rem;color:var(--xw-muted-foreground);text-decoration:none;transition:all .15s cubic-bezier(.4,0,.2,1);font-size:.875rem}._navItem_1a7pu_297:hover{background-color:var(--xw-muted);color:var(--xw-foreground)}._navItem_1a7pu_297._active_1a7pu_310{background-color:var(--xw-accent);color:var(--xw-accent-foreground);font-weight:500}._navItemContent_1a7pu_316{display:flex;align-items:center;gap:.5rem}._navItemTitle_1a7pu_322{flex:1}@media(min-width:1024px){._mobileMenu_1a7pu_18,._backdrop_1a7pu_1{display:none}}._sidebar_1qgjy_1{position:fixed;top:0;left:0;width:16rem;height:100vh;background-color:var(--xw-sidebar);overflow-y:auto;z-index:1020}@media(max-width:767px){._sidebar_1qgjy_1{display:none}}._header_1qgjy_17{position:sticky;top:0;z-index:1020;padding:1rem;background-color:var(--xw-sidebar);display:flex;flex-direction:column;gap:.5rem;padding-bottom:0}._brand_1qgjy_29{display:flex;align-items:center;gap:.5rem}._cloudIcon_1qgjy_35{width:1.5rem;height:1.5rem;flex-shrink:0}._cloudIcon_1qgjy_35 .accent{fill:#d33079}._title_1qgjy_44{font-size:1rem;font-weight:600;line-height:1.5;margin:0;letter-spacing:-.02em;color:var(--xw-foreground)}._languageSelect_1qgjy_55{position:relative;margin-top:.25rem;width:100%}._languageButton_1qgjy_61{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._languageButton_1qgjy_61:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._languageButton_1qgjy_61:disabled{pointer-events:none;opacity:.5}._languageButton_1qgjy_61{display:flex;align-items:center;justify-content:space-between;padding:.25rem .5rem;width:100%;gap:.25rem;font-size:.8rem;background:transparent;border:1px solid var(--xw-border);border-radius:.25rem;color:var(--xw-muted-foreground)}._languageButton_1qgjy_61:hover{background-color:var(--xw-muted);color:var(--xw-foreground)}._languageButton_1qgjy_61 ._icon_1qgjy_99{width:.875rem;height:.875rem;flex-shrink:0}._languageButton_1qgjy_61 ._chevron_1qgjy_104{width:.875rem;height:.875rem;flex-shrink:0;transition:transform .15s cubic-bezier(.4,0,.2,1)}._languageButton_1qgjy_61[aria-expanded=true] ._chevron_1qgjy_104{transform:rotate(180deg)}._languageDropdown_1qgjy_114{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background-color:var(--xw-popover);border:1px solid var(--xw-border);border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;z-index:1000;overflow:hidden}._languageOption_1qgjy_128{display:block;width:100%;padding:.25rem .5rem;text-align:left;background:none;border:none;color:var(--xw-popover-foreground);font-size:.85rem;cursor:pointer;transition:background-color .15s cubic-bezier(.4,0,.2,1)}._languageOption_1qgjy_128:hover{background-color:var(--xw-muted)}._languageOption_1qgjy_128:focus{outline:none;background-color:var(--xw-muted)}._languageOption_1qgjy_128._selected_1qgjy_147{background-color:var(--xw-muted);color:var(--xw-foreground)}._scrollArea_1qgjy_152{height:calc(100vh - 120px);padding:1rem .5rem 1rem 1rem;overflow-y:auto}._navigation_1qgjy_158{display:flex;flex-direction:column;gap:.125rem}._section_1qgjy_164{display:flex;flex-direction:column;gap:0}._sectionButton_1qgjy_170{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._sectionButton_1qgjy_170:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._sectionButton_1qgjy_170:disabled{pointer-events:none;opacity:.5}._sectionButton_1qgjy_170{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.25rem .5rem;font-weight:500;font-size:.85rem;color:var(--xw-muted-foreground);background:transparent;text-align:left;letter-spacing:-.01em;border:none}._sectionButton_1qgjy_170:hover{color:var(--xw-foreground)}._sectionButton_1qgjy_170 ._icon_1qgjy_99{width:.875rem;height:.875rem;transition:transform .15s cubic-bezier(.4,0,.2,1)}._sectionButton_1qgjy_170._expanded_1qgjy_213 ._icon_1qgjy_99{transform:rotate(90deg)}._sectionItems_1qgjy_217{margin-top:.25rem;padding-left:1rem;display:flex;flex-direction:column;gap:.125rem}._navItem_1qgjy_225{display:block;width:100%;padding:.25rem .5rem;border-radius:.25rem;font-size:.85rem;color:var(--xw-muted-foreground);text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1)}._navItem_1qgjy_225:hover{color:var(--xw-foreground)}._navItem_1qgjy_225._active_1qgjy_238{color:var(--xw-foreground);font-weight:500}._navItemContent_1qgjy_243{display:flex;align-items:center;justify-content:space-between;width:100%}._sidebar_1qgjy_1::-webkit-scrollbar{width:6px}._sidebar_1qgjy_1::-webkit-scrollbar-track{background:transparent}._sidebar_1qgjy_1::-webkit-scrollbar-thumb{background:var(--xw-muted-foreground);border-radius:9999px;opacity:.3}._sidebar_1qgjy_1::-webkit-scrollbar-thumb:hover{opacity:.6}._skeletonSection_1qgjy_267{display:flex;flex-direction:column;gap:0;margin-bottom:.5rem}._skeletonSectionTitle_1qgjy_274{height:1rem;width:60%;position:relative;overflow:hidden;background-color:#80808026;border-radius:.25rem;margin-bottom:.25rem}._skeletonSectionTitle_1qgjy_274:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.15) 50%,transparent 100%);animation:_skeleton-loading_1qgjy_1 1.5s ease-in-out infinite}._skeletonSectionItems_1qgjy_294{padding-left:1rem;display:flex;flex-direction:column;gap:.25rem;margin-top:.25rem}._skeletonItem_1qgjy_302{height:1rem;width:85%;position:relative;overflow:hidden;background-color:#80808026;border-radius:.25rem;margin-bottom:.125rem}._skeletonItem_1qgjy_302:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.15) 50%,transparent 100%);animation:_skeleton-loading_1qgjy_1 1.5s ease-in-out infinite}._skeletonItem_1qgjy_302:nth-child(2){width:75%}._skeletonItem_1qgjy_302:nth-child(2):before{animation-delay:.1s}@keyframes _skeleton-loading_1qgjy_1{0%{transform:translate(-100%)}to{transform:translate(200%)}}._app_wf6ni_1{min-height:100vh;background-color:var(--xw-background);color:var(--xw-foreground);display:flex;flex-direction:column}._layout_wf6ni_9{display:flex;flex:1;min-height:calc(100vh - 3.5rem)}._main_wf6ni_15{flex:1;display:flex;flex-direction:column;margin-left:16rem}._main_wf6ni_15._fullWidth_wf6ni_21{margin-left:0}@media(max-width:767px){._main_wf6ni_15{margin-left:0}}._contentWrapper_wf6ni_30{display:flex;flex:1;position:relative;width:100%;max-width:80rem;margin:0 auto;padding:2rem}._main_wf6ni_15._fullWidth_wf6ni_21 ._contentWrapper_wf6ni_30{width:auto}@media(max-width:1024px){._contentWrapper_wf6ni_30{padding:1.5rem}}@media(max-width:767px){._contentWrapper_wf6ni_30{padding:1rem}}._homePage_1q89n_1{flex:1;max-width:48rem;margin:0;padding:0 0 2rem}@media(max-width:767px){._homePage_1q89n_1{padding:1rem;max-width:none}}@media(max-width:1024px){._homePage_1q89n_1{max-width:none;padding:2rem}}._header_1q89n_20{margin-bottom:1rem}._title_1q89n_24{font-size:1.5rem;font-weight:700;color:var(--xw-foreground);margin-bottom:0!important}._articlesList_1q89n_31{display:flex;flex-direction:column;gap:1rem}._articleCard_1q89n_37{padding:1rem;border:1px solid var(--xw-border);border-radius:.5rem;background:transparent;cursor:pointer;text-align:left;transition:all .2s ease-in-out}._articleCard_1q89n_37:hover{border-color:var(--xw-primary);background-color:var(--xw-card);transform:translateY(-2px)}._articleCard_1q89n_37:focus-visible{outline:2px solid var(--xw-primary);outline-offset:2px}._articleTitle_1q89n_56{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;color:var(--xw-foreground)}._articleDescription_1q89n_63{font-size:.9rem;color:var(--xw-muted-foreground);margin:0 0 .5rem;line-height:1.5}._loading_1q89n_70,._empty_1q89n_71{padding:2rem;text-align:center;color:var(--xw-muted-foreground)}@keyframes _shimmer_1q89n_1{0%{background-position:-1000px 0}to{background-position:1000px 0}}._skeletonCard_1q89n_85{padding:1rem;border:1px solid var(--xw-border);border-radius:.5rem;background:transparent;display:flex;flex-direction:column;gap:.5rem}._skeletonTitle_1q89n_95{width:70%;height:1.5rem;background:linear-gradient(90deg,var(--xw-muted) 0%,color-mix(in oklch,var(--xw-muted) 50%,white) 50%,var(--xw-muted) 100%);background-size:1000px 100%;animation:_shimmer_1q89n_1 2s infinite linear;border-radius:.5rem}._skeletonText_1q89n_104{width:100%;height:1rem;background:linear-gradient(90deg,var(--xw-muted) 0%,color-mix(in oklch,var(--xw-muted) 50%,white) 50%,var(--xw-muted) 100%);background-size:1000px 100%;animation:_shimmer_1q89n_1 2s infinite linear;border-radius:.25rem}._skeletonMetadata_1q89n_113{width:40%;height:.875rem;background:linear-gradient(90deg,var(--xw-muted) 0%,color-mix(in oklch,var(--xw-muted) 50%,white) 50%,var(--xw-muted) 100%);background-size:1000px 100%;animation:_shimmer_1q89n_1 2s infinite linear;border-radius:.25rem;margin-top:.25rem}
|
|
217
|
+
._tabContainer_zk6h4_1{display:inline-flex;background-color:var(--xw-card);border:1px solid var(--xw-border);border-radius:.5rem;margin-bottom:2rem;overflow:hidden}._tab_zk6h4_1{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._tab_zk6h4_1:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._tab_zk6h4_1:disabled{pointer-events:none;opacity:.5}._tab_zk6h4_1{padding:.5rem 1rem;font-size:.87rem;font-weight:500;background-color:transparent;border:none;border-radius:0;color:var(--xw-muted-foreground);cursor:pointer;white-space:nowrap}._tab_zk6h4_1:not(:last-child){border-right:1px solid var(--xw-border)}._tab_zk6h4_1._active_zk6h4_45{background-color:var(--xw-accent);color:var(--xw-accent-foreground)}._tab_zk6h4_1:hover:not(._active_zk6h4_45){background-color:var(--xw-muted);color:var(--xw-foreground)}._tab_zk6h4_1:focus-visible{outline:2px solid var(--xw-accent);outline-offset:-2px}._articleNavigation_kz84g_1{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--xw-border)}._navContainer_kz84g_7{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:767px){._navContainer_kz84g_7{grid-template-columns:1fr;gap:1rem}}@media(min-width:1024px){._navContainer_kz84g_7{gap:1.5rem}}._navLink_kz84g_24{display:flex;padding:1rem;border:1px solid var(--xw-border);border-radius:.5rem;text-decoration:none;color:var(--xw-foreground);background-color:var(--xw-background);transition:all .2s ease;box-shadow:0 1px 3px #0000000d}._navLink_kz84g_24:hover{border-color:var(--xw-ring);background-color:var(--xw-card);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}._navLink_kz84g_24:first-child{justify-content:flex-start}@media(max-width:767px){._navLink_kz84g_24:first-child{justify-content:center;text-align:center}}._navLink_kz84g_24:last-child{justify-content:flex-end;text-align:right}@media(max-width:767px){._navLink_kz84g_24:last-child{justify-content:center;text-align:center}}._navLinkContent_kz84g_61{display:flex;align-items:center;gap:.75rem;min-width:0;width:100%}@media(max-width:767px){._navLinkContent_kz84g_61{justify-content:center;flex-direction:column;text-align:center}}._navIcon_kz84g_76{display:flex;align-items:center;color:var(--xw-primary);flex-shrink:0}._navText_kz84g_83{display:flex;flex-direction:column;gap:.25rem;min-width:0}._navLabel_kz84g_90{font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;color:var(--xw-muted-foreground)}._navTitle_kz84g_98{font-size:.875rem;font-weight:400;color:var(--xw-foreground);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.4}@media(min-width:1024px){._navTitle_kz84g_98{font-size:.9rem}}._blogSidebar_n1up9_1{position:sticky;top:0;align-self:flex-start;height:fit-content;max-height:calc(100vh - 8rem);overflow-y:auto;padding:0 0 2rem 1.5rem;margin-left:2rem;background:transparent;border-left:1px solid var(--xw-border);flex-shrink:0;width:250px}@media(max-width:1024px){._blogSidebar_n1up9_1{display:none}}._section_n1up9_21{margin-bottom:2rem}._section_n1up9_21:last-child{margin-bottom:0}._sectionTitle_n1up9_28{font-size:.75rem;font-weight:600;color:var(--xw-foreground);margin:0 0 1rem}._linksList_n1up9_35{display:flex;flex-direction:column;gap:.25rem}._link_n1up9_35{display:flex;align-items:center;gap:.5rem;padding:.5rem;color:var(--xw-foreground);text-decoration:none;border-radius:.25rem;transition:all .15s cubic-bezier(.4,0,.2,1);font-size:.875rem}._link_n1up9_35:hover{color:var(--xw-primary)}._link_n1up9_35 svg{flex-shrink:0}._breadcrumb_rarc4_1{margin-bottom:1rem}._breadcrumbList_rarc4_5{display:flex;align-items:center;list-style:none;margin:0;padding:0;font-size:.875rem;color:var(--xw-muted-foreground)}._breadcrumbItem_rarc4_15{display:flex;align-items:center;gap:.25rem}._breadcrumbLink_rarc4_21{background:none;border:none;cursor:pointer;color:var(--xw-link);text-decoration:none;font-size:inherit;padding:0;font-weight:500;transition:color .2s ease}._breadcrumbLink_rarc4_21:hover{color:var(--xw-primary);text-decoration:underline}._breadcrumbLink_rarc4_21:focus-visible{outline:2px solid var(--xw-primary);outline-offset:2px}._breadcrumbSeparator_rarc4_41{color:var(--xw-border);margin:0 .5rem}._breadcrumbCurrent_rarc4_46{color:var(--xw-foreground);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:20rem}@media(max-width:767px){._breadcrumbCurrent_rarc4_46{max-width:10rem}}._metadata_bsge0_1{display:flex;align-items:center;gap:1.5rem;margin-top:1rem;margin-bottom:1rem}._author_bsge0_9,._date_bsge0_10{display:flex;align-items:center;gap:.5rem;font-weight:500;font-size:.9rem}._author_bsge0_9 svg,._date_bsge0_10 svg{flex-shrink:0}._date_bsge0_10{color:var(--xw-text-secondary, #666)}._tableOfContents_9ofak_1{position:sticky;top:5rem;align-self:flex-start;height:fit-content;max-height:calc(100vh - 8rem);overflow-y:auto;padding:2rem 0 2rem 1.5rem;margin-left:2rem;background:transparent;border-left:1px solid var(--xw-border);flex-shrink:0;max-width:250px}@media(max-width:1024px){._tableOfContents_9ofak_1{display:none}}._header_9ofak_21{margin-bottom:1rem}._title_9ofak_25{font-size:.75rem;font-weight:500;color:var(--xw-muted-foreground);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}._nav_9ofak_34 ul{margin:0;padding:0;list-style:none}._list_9ofak_40{display:flex;flex-direction:column;gap:.125rem;margin:0}._link_9ofak_47{display:block;width:100%;padding:.25rem 0;text-align:left;background:none;border:none;cursor:pointer;font-size:.875rem;line-height:1.4;color:var(--xw-muted-foreground);text-decoration:none;border-radius:.25rem;transition:all .15s cubic-bezier(.4,0,.2,1);position:relative;font-family:inherit}._link_9ofak_47:hover{color:var(--xw-foreground)}._link_9ofak_47:focus{outline:none;color:var(--xw-foreground)}._link_9ofak_47._active_9ofak_71{color:var(--xw-primary);font-weight:500}._link_9ofak_47._active_9ofak_71:before{content:"";position:absolute;left:-1.5rem;top:50%;transform:translateY(-50%);width:1px;height:1rem;background-color:var(--xw-primary);border-radius:.5px}._level1_9ofak_87{font-weight:500;padding-left:0;margin-bottom:.125rem}._level2_9ofak_93{padding-left:.5rem;margin-bottom:.0625rem}._level3_9ofak_98{padding-left:1rem;font-size:.8125rem;margin-bottom:.0625rem}._level4_9ofak_104{padding-left:1.5rem;font-size:.8125rem;margin-bottom:.0625rem}._level5_9ofak_110{padding-left:2rem;font-size:.75rem;margin-bottom:.0625rem}._level6_9ofak_116{padding-left:2.5rem;font-size:.75rem;margin-bottom:.0625rem}._tableOfContents_9ofak_1::-webkit-scrollbar{width:4px}._tableOfContents_9ofak_1::-webkit-scrollbar-track{background:transparent}._tableOfContents_9ofak_1::-webkit-scrollbar-thumb{background:var(--xw-border);border-radius:2px}._tableOfContents_9ofak_1::-webkit-scrollbar-thumb:hover{background:var(--xw-muted-foreground)}._overlay_1e1d4_1{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;animation:_fadeIn_1e1d4_1 .2s ease;height:100vh}@keyframes _fadeIn_1e1d4_1{0%{opacity:0}to{opacity:1}}._modal_1e1d4_26{width:90%;max-width:600px;background:var(--xw-card);border:1px solid var(--xw-border);border-radius:.75rem;box-shadow:0 20px 60px #0000004d;animation:_slideIn_1e1d4_1 .2s ease;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}@keyframes _slideIn_1e1d4_1{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}._header_1e1d4_50{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--xw-border)}._title_1e1d4_58{font-size:1.125rem;font-weight:600;color:var(--xw-foreground);margin:0}._closeButton_1e1d4_65{background:none;border:none;color:var(--xw-muted-foreground);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .2s ease}._closeButton_1e1d4_65 svg{width:1.25rem;height:1.25rem}._closeButton_1e1d4_65:hover{background:var(--xw-secondary);color:var(--xw-foreground)}._results_1e1d4_86{flex:1;overflow-y:auto;padding:.5rem;min-height:200px;max-height:400px}._resultsList_1e1d4_94{list-style:none;padding:0;margin:0}._resultItem_1e1d4_100{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;width:100%;padding:.75rem 1rem;background:none;border:none;border-radius:.5rem;cursor:pointer;text-align:left;transition:all .15s ease;color:var(--xw-foreground)}._resultItem_1e1d4_100:hover{background:var(--xw-secondary)}._resultTitle_1e1d4_119{font-weight:500;font-size:.95rem}._resultSlug_1e1d4_124{font-size:.8rem;color:var(--xw-muted-foreground);opacity:.8}._noResults_1e1d4_130{padding:3rem 1rem;text-align:center;color:var(--xw-muted-foreground);font-size:.9rem}._tags_11t8a_1{display:flex;align-items:center;gap:.75rem;margin:2rem 0 1rem;padding:1rem 0 0;border-top:1px solid var(--xw-border)}._tags_11t8a_1._compact_11t8a_9{margin:2rem 0 1rem;padding:1rem 0 0;border-top:1px solid var(--xw-border)}._tagLabel_11t8a_15{display:flex;align-items:center;gap:.5rem;color:var(--xw-muted-foreground);font-size:.875rem;font-weight:500;white-space:nowrap}._tagIcon_11t8a_25{width:1.125rem;height:1.125rem}._tagList_11t8a_30{display:flex;flex-wrap:wrap;gap:.5rem}._tag_11t8a_1{display:inline-flex;align-items:center;padding:.25rem .75rem;background:none;border:1px solid var(--xw-border);border-radius:.75rem;color:var(--xw-muted-foreground);font-size:.8rem;font-weight:400;cursor:pointer;transition:all .2s ease}._tag_11t8a_1:hover{color:var(--xw-foreground);border-color:var(--xw-ring)}._contentPage_1jss6_1{flex:1;max-width:48rem;margin:0;padding:2rem 0}@media(max-width:767px){._contentPage_1jss6_1{padding:1rem;max-width:none}}@media(max-width:1024px){._contentPage_1jss6_1{max-width:none;padding:2rem}}._contentPage_1jss6_1>h1{font-size:1.875rem;font-weight:600;letter-spacing:-.025em;margin-top:1.5rem;margin-bottom:1.5rem;border-bottom:1px solid var(--xw-border);padding-bottom:.75rem;line-height:1.2;scroll-margin-top:5rem}._contentPage_1jss6_1>h1._withMetadata_1jss6_30{border-bottom:none;padding-bottom:0;margin-bottom:.5rem}._metadata_1jss6_36{display:flex;gap:1rem;align-items:center;padding:.5rem 0 1rem;color:var(--xw-muted-foreground);font-size:.875rem;border-bottom:1px solid var(--xw-border);margin-bottom:1rem}._metadata_1jss6_36 ._author_1jss6_46,._metadata_1jss6_36 ._date_1jss6_47{display:flex;align-items:center;gap:.5rem}._metadata_1jss6_36 ._author_1jss6_46{font-weight:500;color:var(--xw-foreground)}@media(max-width:767px){._metadata_1jss6_36{flex-direction:column;align-items:flex-start;gap:.25rem}}._loadingContainer_1jss6_64,._errorContainer_1jss6_65{display:flex;align-items:center;justify-content:center;height:16rem}._loadingContainer_1jss6_64{flex-direction:column;align-items:flex-start;gap:1.5rem;padding:2rem 0}@keyframes _shimmer_1jss6_1{0%{background-position:-1000px 0}to{background-position:1000px 0}}._skeletonTitle_1jss6_87{width:60%;height:2.5rem;background:linear-gradient(90deg,var(--xw-muted) 0%,color-mix(in oklch,var(--xw-muted) 50%,white) 50%,var(--xw-muted) 100%);background-size:1000px 100%;animation:_shimmer_1jss6_1 2s infinite linear;border-radius:.5rem}._skeletonParagraph_1jss6_96{width:100%;height:1rem;background:linear-gradient(90deg,var(--xw-muted) 0%,color-mix(in oklch,var(--xw-muted) 50%,white) 50%,var(--xw-muted) 100%);background-size:1000px 100%;animation:_shimmer_1jss6_1 2s infinite linear;border-radius:.25rem;margin-bottom:.5rem}._skeletonParagraph_1jss6_96:not(:last-child){margin-bottom:1rem}._skeletonParagraphShort_1jss6_109{width:70%;height:1rem;background:linear-gradient(90deg,var(--xw-muted) 0%,color-mix(in oklch,var(--xw-muted) 50%,white) 50%,var(--xw-muted) 100%);background-size:1000px 100%;animation:_shimmer_1jss6_1 2s infinite linear;border-radius:.25rem}._loadingText_1jss6_118{color:var(--xw-muted-foreground);font-size:1rem}._errorText_1jss6_123{color:var(--xw-destructive);font-size:1rem}._mdxContent_1jss6_128{max-width:none}._mdxContent_1jss6_128 h1{font-size:1.875rem;font-weight:600;letter-spacing:-.025em;margin-bottom:1.5rem;border-bottom:1px solid var(--xw-border);padding-bottom:.75rem;line-height:1.2;scroll-margin-top:5rem}._mdxContent_1jss6_128 h1._withMetadata_1jss6_30{border-bottom:none;padding-bottom:0;margin-bottom:.5rem}._mdxContent_1jss6_128 h1 a{color:inherit;text-decoration:none;border:none;position:relative}._mdxContent_1jss6_128 h1 a:hover{color:inherit;border:none}._mdxContent_1jss6_128 h1 a:hover:before{content:"#";position:absolute;left:-1.5rem;color:var(--xw-link);opacity:.7;font-weight:400}._mdxContent_1jss6_128 h2{font-size:1.5rem;font-weight:500;letter-spacing:-.02em;margin-bottom:1rem;margin-top:2.5rem;border-bottom:1px solid var(--xw-border);padding-bottom:.5rem;line-height:1.3;scroll-margin-top:5rem}._mdxContent_1jss6_128 h2 a{color:inherit;text-decoration:none;border:none;position:relative}._mdxContent_1jss6_128 h2 a:hover{color:inherit;border:none}._mdxContent_1jss6_128 h2 a:hover:before{content:"#";position:absolute;left:-1.5rem;color:var(--xw-link);opacity:.7;font-weight:400}._mdxContent_1jss6_128 h3{font-size:1.25rem;font-weight:500;letter-spacing:-.015em;margin-bottom:.75rem;margin-top:2rem;line-height:1.4;scroll-margin-top:5rem}._mdxContent_1jss6_128 h3 a{color:inherit;text-decoration:none;border:none;position:relative}._mdxContent_1jss6_128 h3 a:hover{color:inherit;border:none}._mdxContent_1jss6_128 h3 a:hover:before{content:"#";position:absolute;left:-1.5rem;color:var(--xw-link);opacity:.7;font-weight:400}._mdxContent_1jss6_128 h4{font-size:1.125rem;font-weight:500;letter-spacing:-.01em;margin-bottom:.5rem;margin-top:1.5rem;line-height:1.4;scroll-margin-top:5rem}._mdxContent_1jss6_128 h4 a{color:inherit;text-decoration:none;border:none;position:relative}._mdxContent_1jss6_128 h4 a:hover{color:inherit;border:none}._mdxContent_1jss6_128 h4 a:hover:before{content:"#";position:absolute;left:-1.5rem;color:var(--xw-link);opacity:.7;font-weight:400}._mdxContent_1jss6_128 h5{font-size:1rem;font-weight:500;margin-bottom:.5rem;margin-top:1.25rem;line-height:1.5}._mdxContent_1jss6_128 h6{font-size:.875rem;font-weight:500;margin-bottom:.5rem;margin-top:1rem;line-height:1.5}._mdxContent_1jss6_128 p{font-size:1rem;line-height:1.65;margin-bottom:1rem;color:var(--xw-foreground)}._mdxContent_1jss6_128 ul,._mdxContent_1jss6_128 ol{margin-bottom:1rem;padding-left:1.5rem}._mdxContent_1jss6_128 ul li,._mdxContent_1jss6_128 ol li{font-size:1rem;line-height:1.65;margin-bottom:.375rem}._mdxContent_1jss6_128 ul ul,._mdxContent_1jss6_128 ul ol,._mdxContent_1jss6_128 ol ul,._mdxContent_1jss6_128 ol ol{margin-top:.375rem;margin-bottom:.375rem}._mdxContent_1jss6_128 ul{list-style-type:disc}._mdxContent_1jss6_128 ol{list-style-type:decimal}._mdxContent_1jss6_128 code{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.875rem;background-color:var(--xw-muted);padding:.1875rem .4375rem;border-radius:.25rem;color:var(--xw-foreground);font-weight:500}._mdxContent_1jss6_128 pre{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;background-color:var(--xw-muted);padding:1.25rem;border-radius:.75rem;overflow-x:auto;margin:1.5rem 0;position:relative;border:1px solid var(--xw-border)}._mdxContent_1jss6_128 pre code{background-color:transparent;padding:0;color:inherit;font-weight:400}._mdxContent_1jss6_128 ._codeBlock_1jss6_316{position:relative;margin-bottom:1.5rem}._mdxContent_1jss6_128 ._codeLanguage_1jss6_320{position:absolute;top:.5rem;right:.5rem;font-size:.75rem;color:var(--xw-muted-foreground);background-color:var(--xw-background);padding:.25rem .5rem;border-radius:.25rem;border:1px solid var(--xw-border)}._mdxContent_1jss6_128 blockquote{border-left:3px solid var(--xw-accent);padding-left:1rem;font-style:italic;color:var(--xw-muted-foreground);margin-bottom:1rem;margin-top:1rem}._mdxContent_1jss6_128 blockquote p{margin-bottom:.5rem}._mdxContent_1jss6_128 blockquote p:last-child{margin-bottom:0}._mdxContent_1jss6_128 a{color:var(--xw-link);text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1);border-bottom:1px solid transparent}._mdxContent_1jss6_128 a:hover{color:color-mix(in oklch,var(--xw-link) 80%,transparent);border-bottom-color:currentColor}._mdxContent_1jss6_128 strong{font-weight:600}._mdxContent_1jss6_128 em{font-style:italic}._mdxContent_1jss6_128 table{width:100%;border-collapse:collapse;margin:1.5rem 0;font-size:.95rem}._mdxContent_1jss6_128 table th,._mdxContent_1jss6_128 table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid var(--xw-border);line-height:1.4}._mdxContent_1jss6_128 table th{font-weight:500;background-color:var(--xw-muted);font-size:.875rem;letter-spacing:.025em}._mdxContent_1jss6_128 table tbody tr:hover{background-color:color-mix(in oklch,var(--xw-muted) 50%,transparent)}._mdxContent_1jss6_128 img{max-width:100%;height:auto;border-radius:.5rem;margin:1.5rem 0;border:1px solid var(--xw-border)}._mdxContent_1jss6_128 hr{border:none;border-top:1px solid var(--xw-border);margin:2rem 0}._searchButton_1k9sl_1{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:.375rem;background:none;border:none;color:var(--xw-muted-foreground);cursor:pointer;transition:all .2s ease;font-size:.875rem}._searchButton_1k9sl_1:hover{border-color:var(--xw-input)}._searchButton_1k9sl_1 ._searchIcon_1k9sl_17{width:1rem;height:1rem;opacity:.6}@media(max-width:768px){._searchButton_1k9sl_1 ._searchHint_1k9sl_23{display:none}}._searchButton_1k9sl_1 ._kbd_1k9sl_27{display:none;padding:.125rem .375rem;background:var(--xw-card);border:1px solid var(--xw-border);border-radius:.25rem;font-size:.75rem;font-family:monospace}@media(min-width:768px){._searchButton_1k9sl_1 ._kbd_1k9sl_27{display:block}}._searchOverlay_1k9sl_42{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:flex-start;justify-content:center;padding-top:10vh;animation:_fadeIn_1k9sl_1 .2s ease;height:100vh}@keyframes _fadeIn_1k9sl_1{0%{opacity:0}to{opacity:1}}._searchModal_1k9sl_67{width:90%;max-width:600px;background:var(--xw-card);border:1px solid var(--xw-border);border-radius:.75rem;box-shadow:0 20px 60px #0000004d;animation:_slideIn_1k9sl_1 .2s ease;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}@keyframes _slideIn_1k9sl_1{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}._searchHeader_1k9sl_91{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--xw-border)}._searchHeader_1k9sl_91 ._searchIcon_1k9sl_17{width:1.25rem;height:1.25rem;opacity:.5;flex-shrink:0}._searchInput_1k9sl_105{flex:1;border:none;background:transparent;color:var(--xw-foreground);font-size:1rem;outline:none}._searchInput_1k9sl_105:focus{border:none;outline:none;box-shadow:none}._searchInput_1k9sl_105::placeholder{color:var(--xw-muted-foreground);opacity:.6}._closeButton_1k9sl_123{background:none;border:none;color:var(--xw-muted-foreground);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:.25rem;transition:all .2s ease}._closeButton_1k9sl_123 svg{width:1.25rem;height:1.25rem}._closeButton_1k9sl_123:hover{background:var(--xw-secondary);color:var(--xw-foreground)}._searchResults_1k9sl_144{flex:1;overflow-y:auto;padding:.5rem;min-height:200px;max-height:400px}._resultsList_1k9sl_152{list-style:none;padding:0;margin:0}._resultItem_1k9sl_158{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem;width:100%;padding:.75rem 1rem;background:none;border:none;border-radius:.5rem;cursor:pointer;text-align:left;transition:all .15s ease;color:var(--xw-foreground)}._resultItem_1k9sl_158:hover,._resultItem_1k9sl_158._selected_1k9sl_173{background:var(--xw-secondary)}._resultItem_1k9sl_158 ._resultTitle_1k9sl_176{font-weight:500;font-size:.95rem}._resultItem_1k9sl_158 ._resultSlug_1k9sl_180{font-size:.8rem;color:var(--xw-muted-foreground);opacity:.8}._noResults_1k9sl_186{padding:3rem 1rem;text-align:center;color:var(--xw-muted-foreground);font-size:.9rem}._searchHints_1k9sl_193{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1.25rem;border-top:1px solid var(--xw-border);background:var(--xw-secondary);font-size:.8rem;color:var(--xw-muted-foreground)}@media(max-width:768px){._searchHints_1k9sl_193{flex-direction:column;align-items:flex-start;gap:.5rem}}._searchHints_1k9sl_193 ._hint_1k9sl_210{display:flex;align-items:center;gap:.5rem}._searchHints_1k9sl_193 ._hint_1k9sl_210 kbd{padding:.125rem .375rem;background:var(--xw-card);border:1px solid var(--xw-border);border-radius:.25rem;font-size:.75rem;font-family:monospace;min-width:1.5rem;text-align:center}._header_jrobc_1{position:sticky;top:0;z-index:1020;background-color:#fffc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);height:3.5rem;padding-left:16rem}.dark ._header_jrobc_1{background-color:#2020201a}@supports not (backdrop-filter: blur(12px)){._header_jrobc_1{background-color:var(--xw-background)}}@media(max-width:767px){._header_jrobc_1{padding:0}}._container_jrobc_24{width:100%;max-width:1400px;margin:0 auto;padding:0 1.5rem}@media(max-width:767px){._container_jrobc_24{padding:0 1rem}}._content_jrobc_36{display:flex;align-items:center;justify-content:space-between;height:3.5rem}._leftSection_jrobc_43{display:flex;align-items:center;gap:1rem}._mobileMenuButton_jrobc_49{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._mobileMenuButton_jrobc_49:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._mobileMenuButton_jrobc_49:disabled{pointer-events:none;opacity:.5}._mobileMenuButton_jrobc_49{padding:.5rem;background-color:transparent;color:var(--xw-muted-foreground);border-radius:.5rem;display:none}._mobileMenuButton_jrobc_49:hover{background-color:var(--xw-muted);color:var(--xw-foreground)}@media(max-width:767px){._mobileMenuButton_jrobc_49{display:flex}}._burgerIcon_jrobc_87{width:1.25rem;height:1.25rem}._logo_jrobc_92,._nav_jrobc_98{display:flex;align-items:center;gap:.5rem}@media(max-width:767px){._nav_jrobc_98{gap:.25rem}}._navLink_jrobc_109{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;color:var(--xw-muted-foreground);text-decoration:none;transition:all .15s cubic-bezier(.4,0,.2,1)}._navLink_jrobc_109:hover{color:var(--xw-foreground)}._navLink_jrobc_109:focus{outline:none}._githubIcon_jrobc_128{width:1rem;height:1rem;flex-shrink:0;transition:transform .15s cubic-bezier(.4,0,.2,1)}._externalIcon_jrobc_135{width:1rem;height:1rem;flex-shrink:0}._supportDropdown_jrobc_141,._themeDropdown_jrobc_145{position:relative}._themeButton_jrobc_149{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem;border-radius:.5rem;font-size:.875rem;font-weight:500;color:var(--xw-muted-foreground);background:none;border:none;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1)}._themeButton_jrobc_149:hover{color:var(--xw-foreground);background-color:var(--xw-muted)}._themeButton_jrobc_149:focus{outline:none}._themeIcon_jrobc_171{width:1.125rem;height:1.125rem;flex-shrink:0}._supportButton_jrobc_177{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;color:var(--xw-muted-foreground);background:none;border:none;cursor:pointer;transition:all .15s cubic-bezier(.4,0,.2,1)}._supportButton_jrobc_177:hover{color:var(--xw-foreground)}._supportButton_jrobc_177:focus{outline:none}._caretIcon_jrobc_198{width:.875rem;height:.875rem;flex-shrink:0;transition:transform .15s cubic-bezier(.4,0,.2,1)}button[aria-expanded=true] ._caretIcon_jrobc_198{transform:rotate(180deg)}._dropdownMenu_jrobc_208{position:absolute;top:calc(100% + .25rem);right:0;min-width:10rem;background-color:var(--xw-popover);border:1px solid var(--xw-border);border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;z-index:1000;overflow:hidden}._dropdownItem_jrobc_221{display:flex;align-items:center;gap:.5rem;width:100%;padding:.5rem 1rem;font-size:.875rem;color:var(--xw-popover-foreground);text-decoration:none;background:none;border:none;cursor:pointer;text-align:left;transition:background-color .15s cubic-bezier(.4,0,.2,1)}._dropdownItem_jrobc_221:hover{background-color:var(--xw-muted)}._dropdownItem_jrobc_221:focus{outline:none;background-color:var(--xw-muted)}._dropdownIcon_jrobc_244{width:1rem;height:1rem;flex-shrink:0}@media(max-width:767px){._logoText_jrobc_251{font-size:1rem}._navLink_jrobc_109{padding:.25rem .5rem;font-size:.8rem;gap:.25rem}._githubIcon_jrobc_128{width:.875rem;height:.875rem}}._backdrop_1a7pu_1{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;z-index:1040;opacity:0;visibility:hidden;transition:all .15s cubic-bezier(.4,0,.2,1)}._backdrop_1a7pu_1._open_1a7pu_13{opacity:1;visibility:visible}._mobileMenu_1a7pu_18{position:fixed;top:0;left:0;width:320px;height:100vh;background-color:var(--xw-background);border-right:1px solid var(--xw-border);z-index:1050;transform:translate(-100%);transition:transform .15s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;overflow:hidden}._mobileMenu_1a7pu_18._open_1a7pu_13{transform:translate(0)}._header_1a7pu_37{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid var(--xw-border);flex-shrink:0}._brand_1a7pu_46{flex:1;display:flex;align-items:center;gap:.5rem}._cloudIcon_1a7pu_53{width:1.5rem;height:1.5rem;flex-shrink:0}._cloudIcon_1a7pu_53 .accent{fill:#d33079}._title_1a7pu_62{font-size:1.125rem;font-weight:600;color:var(--xw-foreground);margin:0}._closeButton_1a7pu_69{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._closeButton_1a7pu_69:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._closeButton_1a7pu_69:disabled{pointer-events:none;opacity:.5}._closeButton_1a7pu_69{padding:.5rem;background-color:transparent;color:var(--xw-muted-foreground);border-radius:.5rem}._closeButton_1a7pu_69:hover{background-color:var(--xw-muted);color:var(--xw-foreground)}._closeIcon_1a7pu_101{width:1.25rem;height:1.25rem}._languageSection_1a7pu_106{padding:1.5rem;border-bottom:1px solid var(--xw-border);flex-shrink:0}._languageSelect_1a7pu_112{position:relative;width:100%}._languageButton_1a7pu_117{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._languageButton_1a7pu_117:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._languageButton_1a7pu_117:disabled{pointer-events:none;opacity:.5}._languageButton_1a7pu_117{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem 1rem;background-color:var(--xw-background);border:1px solid var(--xw-border);color:var(--xw-foreground);gap:.5rem}._languageButton_1a7pu_117:hover,._languageButton_1a7pu_117[aria-expanded=true]{background-color:var(--xw-muted)}._icon_1a7pu_156{width:1rem;height:1rem;flex-shrink:0}._chevron_1a7pu_162{width:1rem;height:1rem;transition:transform .15s cubic-bezier(.4,0,.2,1);margin-left:auto}._languageButton_1a7pu_117[aria-expanded=true] ._chevron_1a7pu_162{transform:rotate(180deg)}._languageDropdown_1a7pu_172{position:absolute;top:100%;left:0;right:0;background-color:var(--xw-popover);border:1px solid var(--xw-border);border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;z-index:1000;margin-top:.25rem}._languageOption_1a7pu_185{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._languageOption_1a7pu_185:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._languageOption_1a7pu_185:disabled{pointer-events:none;opacity:.5}._languageOption_1a7pu_185{width:100%;padding:.5rem 1rem;background-color:transparent;color:var(--xw-foreground);text-align:left;justify-content:flex-start;border-radius:0}._languageOption_1a7pu_185:first-child{border-top-left-radius:.5rem;border-top-right-radius:.5rem}._languageOption_1a7pu_185:last-child{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}._languageOption_1a7pu_185:hover{background-color:var(--xw-muted)}._languageOption_1a7pu_185._selected_1a7pu_226{background-color:var(--xw-accent);color:var(--xw-accent-foreground)}._scrollArea_1a7pu_231{flex:1;overflow-y:auto;padding:1.5rem 0}._navigation_1a7pu_237{padding:0 1.5rem}._section_1a7pu_241{margin-bottom:1rem}._sectionButton_1a7pu_245{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._sectionButton_1a7pu_245:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._sectionButton_1a7pu_245:disabled{pointer-events:none;opacity:.5}._sectionButton_1a7pu_245{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem 1rem;background-color:transparent;color:var(--xw-foreground);font-weight:600;gap:.5rem;border-radius:.5rem}._sectionButton_1a7pu_245:hover{background-color:var(--xw-muted)}._sectionButton_1a7pu_245 ._icon_1a7pu_156{transition:transform .15s cubic-bezier(.4,0,.2,1);margin-left:auto}._sectionButton_1a7pu_245._expanded_1a7pu_285 ._icon_1a7pu_156{transform:rotate(90deg)}._sectionItems_1a7pu_289{margin-top:.5rem;margin-left:1rem;display:flex;flex-direction:column;gap:.25rem}._navItem_1a7pu_297{display:block;padding:.5rem 1rem;border-radius:.5rem;color:var(--xw-muted-foreground);text-decoration:none;transition:all .15s cubic-bezier(.4,0,.2,1);font-size:.875rem}._navItem_1a7pu_297:hover{background-color:var(--xw-muted);color:var(--xw-foreground)}._navItem_1a7pu_297._active_1a7pu_310{background-color:var(--xw-accent);color:var(--xw-accent-foreground);font-weight:500}._navItemContent_1a7pu_316{display:flex;align-items:center;gap:.5rem}._navItemTitle_1a7pu_322{flex:1}@media(min-width:1024px){._mobileMenu_1a7pu_18,._backdrop_1a7pu_1{display:none}}._sidebar_1qgjy_1{position:fixed;top:0;left:0;width:16rem;height:100vh;background-color:var(--xw-sidebar);overflow-y:auto;z-index:1020}@media(max-width:767px){._sidebar_1qgjy_1{display:none}}._header_1qgjy_17{position:sticky;top:0;z-index:1020;padding:1rem;background-color:var(--xw-sidebar);display:flex;flex-direction:column;gap:.5rem;padding-bottom:0}._brand_1qgjy_29{display:flex;align-items:center;gap:.5rem}._cloudIcon_1qgjy_35{width:1.5rem;height:1.5rem;flex-shrink:0}._cloudIcon_1qgjy_35 .accent{fill:#d33079}._title_1qgjy_44{font-size:1rem;font-weight:600;line-height:1.5;margin:0;letter-spacing:-.02em;color:var(--xw-foreground)}._languageSelect_1qgjy_55{position:relative;margin-top:.25rem;width:100%}._languageButton_1qgjy_61{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._languageButton_1qgjy_61:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._languageButton_1qgjy_61:disabled{pointer-events:none;opacity:.5}._languageButton_1qgjy_61{display:flex;align-items:center;justify-content:space-between;padding:.25rem .5rem;width:100%;gap:.25rem;font-size:.8rem;background:transparent;border:1px solid var(--xw-border);border-radius:.25rem;color:var(--xw-muted-foreground)}._languageButton_1qgjy_61:hover{background-color:var(--xw-muted);color:var(--xw-foreground)}._languageButton_1qgjy_61 ._icon_1qgjy_99{width:.875rem;height:.875rem;flex-shrink:0}._languageButton_1qgjy_61 ._chevron_1qgjy_104{width:.875rem;height:.875rem;flex-shrink:0;transition:transform .15s cubic-bezier(.4,0,.2,1)}._languageButton_1qgjy_61[aria-expanded=true] ._chevron_1qgjy_104{transform:rotate(180deg)}._languageDropdown_1qgjy_114{position:absolute;top:100%;left:0;right:0;margin-top:.25rem;background-color:var(--xw-popover);border:1px solid var(--xw-border);border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;z-index:1000;overflow:hidden}._languageOption_1qgjy_128{display:block;width:100%;padding:.25rem .5rem;text-align:left;background:none;border:none;color:var(--xw-popover-foreground);font-size:.85rem;cursor:pointer;transition:background-color .15s cubic-bezier(.4,0,.2,1)}._languageOption_1qgjy_128:hover{background-color:var(--xw-muted)}._languageOption_1qgjy_128:focus{outline:none;background-color:var(--xw-muted)}._languageOption_1qgjy_128._selected_1qgjy_147{background-color:var(--xw-muted);color:var(--xw-foreground)}._scrollArea_1qgjy_152{height:calc(100vh - 120px);padding:1rem .5rem 1rem 1rem;overflow-y:auto}._navigation_1qgjy_158{display:flex;flex-direction:column;gap:.125rem}._section_1qgjy_164{display:flex;flex-direction:column;gap:0}._sectionButton_1qgjy_170{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:.15s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;outline:none}._sectionButton_1qgjy_170:focus-visible{outline:2px solid var(--xw-ring);outline-offset:2px}._sectionButton_1qgjy_170:disabled{pointer-events:none;opacity:.5}._sectionButton_1qgjy_170{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.25rem .5rem;font-weight:500;font-size:.85rem;color:var(--xw-muted-foreground);background:transparent;text-align:left;letter-spacing:-.01em;border:none}._sectionButton_1qgjy_170:hover{color:var(--xw-foreground)}._sectionButton_1qgjy_170 ._icon_1qgjy_99{width:.875rem;height:.875rem;transition:transform .15s cubic-bezier(.4,0,.2,1)}._sectionButton_1qgjy_170._expanded_1qgjy_213 ._icon_1qgjy_99{transform:rotate(90deg)}._sectionItems_1qgjy_217{margin-top:.25rem;padding-left:1rem;display:flex;flex-direction:column;gap:.125rem}._navItem_1qgjy_225{display:block;width:100%;padding:.25rem .5rem;border-radius:.25rem;font-size:.85rem;color:var(--xw-muted-foreground);text-decoration:none;transition:color .15s cubic-bezier(.4,0,.2,1)}._navItem_1qgjy_225:hover{color:var(--xw-foreground)}._navItem_1qgjy_225._active_1qgjy_238{color:var(--xw-foreground);font-weight:500}._navItemContent_1qgjy_243{display:flex;align-items:center;justify-content:space-between;width:100%}._sidebar_1qgjy_1::-webkit-scrollbar{width:6px}._sidebar_1qgjy_1::-webkit-scrollbar-track{background:transparent}._sidebar_1qgjy_1::-webkit-scrollbar-thumb{background:var(--xw-muted-foreground);border-radius:9999px;opacity:.3}._sidebar_1qgjy_1::-webkit-scrollbar-thumb:hover{opacity:.6}._skeletonSection_1qgjy_267{display:flex;flex-direction:column;gap:0;margin-bottom:.5rem}._skeletonSectionTitle_1qgjy_274{height:1rem;width:60%;position:relative;overflow:hidden;background-color:#80808026;border-radius:.25rem;margin-bottom:.25rem}._skeletonSectionTitle_1qgjy_274:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.15) 50%,transparent 100%);animation:_skeleton-loading_1qgjy_1 1.5s ease-in-out infinite}._skeletonSectionItems_1qgjy_294{padding-left:1rem;display:flex;flex-direction:column;gap:.25rem;margin-top:.25rem}._skeletonItem_1qgjy_302{height:1rem;width:85%;position:relative;overflow:hidden;background-color:#80808026;border-radius:.25rem;margin-bottom:.125rem}._skeletonItem_1qgjy_302:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.15) 50%,transparent 100%);animation:_skeleton-loading_1qgjy_1 1.5s ease-in-out infinite}._skeletonItem_1qgjy_302:nth-child(2){width:75%}._skeletonItem_1qgjy_302:nth-child(2):before{animation-delay:.1s}@keyframes _skeleton-loading_1qgjy_1{0%{transform:translate(-100%)}to{transform:translate(200%)}}._app_b0d4r_1{min-height:100vh;background-color:var(--xw-background);color:var(--xw-foreground);display:flex;flex-direction:column}._layout_b0d4r_9{display:flex;flex:1;min-height:calc(100vh - 3.5rem)}._main_b0d4r_15{flex:1;display:flex;flex-direction:column;margin-left:16rem}._main_b0d4r_15._fullWidth_b0d4r_21{margin-left:0}@media(max-width:767px){._main_b0d4r_15{margin-left:0}}._contentWrapper_b0d4r_30{display:flex;flex:1;position:relative;width:100%;max-width:80rem;margin:0 auto;padding:0 2rem 2rem}._main_b0d4r_15._fullWidth_b0d4r_21 ._contentWrapper_b0d4r_30{width:auto}@media(max-width:1024px){._contentWrapper_b0d4r_30{padding:1.5rem}}@media(max-width:767px){._contentWrapper_b0d4r_30{padding:1rem}}._homePage_1otqy_1{flex:1;max-width:48rem;margin:0;padding:0 0 2rem}@media(max-width:767px){._homePage_1otqy_1{padding:1rem;max-width:none}}@media(max-width:1024px){._homePage_1otqy_1{max-width:none;padding:2rem}}._header_1otqy_20{margin-bottom:1.5rem}._title_1otqy_24{font-size:1.5rem;font-weight:700;color:var(--xw-foreground);margin-bottom:0!important}._articlesList_1otqy_31{display:flex;flex-direction:column;gap:1rem}._articleCard_1otqy_37{padding:1rem;border:1px solid var(--xw-border);border-radius:.5rem;background:transparent;cursor:pointer;text-align:left;transition:all .2s ease-in-out}._articleCard_1otqy_37:hover{border-color:var(--xw-primary);background-color:var(--xw-card);transform:translateY(-2px)}._articleCard_1otqy_37:focus-visible{outline:2px solid var(--xw-primary);outline-offset:2px}._articleTitle_1otqy_56{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;color:var(--xw-foreground)}._articleDescription_1otqy_63{font-size:.9rem;color:var(--xw-muted-foreground);margin:0 0 .5rem;line-height:1.5}._loading_1otqy_70,._empty_1otqy_71{padding:2rem;text-align:center;color:var(--xw-muted-foreground)}@keyframes _shimmer_1otqy_1{0%{background-position:-1000px 0}to{background-position:1000px 0}}._skeletonCard_1otqy_85{padding:1rem;border:1px solid var(--xw-border);border-radius:.5rem;background:transparent;display:flex;flex-direction:column;gap:.5rem}._skeletonTitle_1otqy_95{width:70%;height:1.5rem;background:linear-gradient(90deg,var(--xw-muted) 0%,color-mix(in oklch,var(--xw-muted) 50%,white) 50%,var(--xw-muted) 100%);background-size:1000px 100%;animation:_shimmer_1otqy_1 2s infinite linear;border-radius:.5rem}._skeletonText_1otqy_104{width:100%;height:1rem;background:linear-gradient(90deg,var(--xw-muted) 0%,color-mix(in oklch,var(--xw-muted) 50%,white) 50%,var(--xw-muted) 100%);background-size:1000px 100%;animation:_shimmer_1otqy_1 2s infinite linear;border-radius:.25rem}._skeletonMetadata_1otqy_113{width:40%;height:.875rem;background:linear-gradient(90deg,var(--xw-muted) 0%,color-mix(in oklch,var(--xw-muted) 50%,white) 50%,var(--xw-muted) 100%);background-size:1000px 100%;animation:_shimmer_1otqy_1 2s infinite linear;border-radius:.25rem;margin-top:.25rem}
|