@shadow-shard-tools/docs-core 1.0.15 → 1.0.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser/serverOnly.d.ts +15 -0
- package/dist/browser/serverOnly.d.ts.map +1 -0
- package/dist/browser/serverOnly.js +33 -0
- package/dist/browser/serverOnly.js.map +1 -0
- package/dist/browser.d.ts +38 -0
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +45 -0
- package/dist/browser.js.map +1 -0
- package/dist/configs/clientConfig.d.ts +18 -0
- package/dist/configs/clientConfig.d.ts.map +1 -0
- package/dist/configs/clientConfig.js +58 -0
- package/dist/configs/clientConfig.js.map +1 -0
- package/dist/configs/index.d.ts +4 -2
- package/dist/configs/index.d.ts.map +1 -1
- package/dist/configs/index.js +4 -2
- package/dist/configs/index.js.map +1 -1
- package/dist/configs/sstDocsConfig.d.ts +4 -5
- package/dist/configs/sstDocsConfig.d.ts.map +1 -1
- package/dist/configs/sstDocsConfig.js +141 -51
- package/dist/configs/sstDocsConfig.js.map +1 -1
- package/dist/configs/sstDocsConfig.shared.d.ts +8 -0
- package/dist/configs/sstDocsConfig.shared.d.ts.map +1 -0
- package/dist/configs/sstDocsConfig.shared.js +86 -0
- package/dist/configs/sstDocsConfig.shared.js.map +1 -0
- package/dist/configs/{styles/320/241onfig.d.ts → stylesConfig.d.ts} +1 -1
- package/dist/configs/stylesConfig.d.ts.map +1 -0
- package/dist/configs/stylesConfig.js +8 -0
- package/dist/configs/stylesConfig.js.map +1 -0
- package/dist/constants/{aligmentClasses.d.ts → alignmentClasses.d.ts} +1 -1
- package/dist/constants/alignmentClasses.d.ts.map +1 -0
- package/dist/constants/{aligmentClasses.js → alignmentClasses.js} +1 -1
- package/dist/constants/alignmentClasses.js.map +1 -0
- package/dist/constants/index.d.ts +1 -1
- package/dist/constants/index.d.ts.map +1 -1
- package/dist/constants/index.js +1 -1
- package/dist/constants/index.js.map +1 -1
- package/dist/data/buildTree.d.ts +14 -2
- package/dist/data/buildTree.d.ts.map +1 -1
- package/dist/data/buildTree.js +162 -79
- package/dist/data/buildTree.js.map +1 -1
- package/dist/styles/themes.css +1 -0
- package/dist/styles/themes.css.map +1 -0
- package/dist/themes/baseThemeClasses.d.ts +106 -0
- package/dist/themes/baseThemeClasses.d.ts.map +1 -0
- package/dist/themes/baseThemeClasses.js +106 -0
- package/dist/themes/baseThemeClasses.js.map +1 -0
- package/dist/themes/darkTheme.d.ts +1 -1
- package/dist/themes/darkTheme.d.ts.map +1 -1
- package/dist/themes/darkTheme.js +41 -118
- package/dist/themes/darkTheme.js.map +1 -1
- package/dist/themes/index.d.ts +1 -0
- package/dist/themes/index.d.ts.map +1 -1
- package/dist/themes/index.js +1 -0
- package/dist/themes/index.js.map +1 -1
- package/dist/themes/lightTheme.d.ts +1 -1
- package/dist/themes/lightTheme.d.ts.map +1 -1
- package/dist/themes/lightTheme.js +41 -118
- package/dist/themes/lightTheme.js.map +1 -1
- package/dist/themes/themeRegistry.d.ts +11 -0
- package/dist/themes/themeRegistry.d.ts.map +1 -0
- package/dist/themes/themeRegistry.js +18 -0
- package/dist/themes/themeRegistry.js.map +1 -0
- package/dist/types/ClientVisibleSstDocsConfig.d.ts +8 -0
- package/dist/types/ClientVisibleSstDocsConfig.d.ts.map +1 -0
- package/dist/types/ClientVisibleSstDocsConfig.js +2 -0
- package/dist/types/ClientVisibleSstDocsConfig.js.map +1 -0
- package/dist/types/HtmlGeneratorSettings.d.ts +17 -1
- package/dist/types/HtmlGeneratorSettings.d.ts.map +1 -1
- package/dist/types/SstDocsConfig.d.ts +2 -2
- package/dist/types/SstDocsConfig.d.ts.map +1 -1
- package/dist/types/StyleTheme.d.ts +131 -16
- package/dist/types/StyleTheme.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +27 -4
- package/dist/configs/styles/320/241onfig.d.ts.map +0 -1
- package/dist/configs/styles/320/241onfig.js +0 -9
- package/dist/configs/styles/320/241onfig.js.map +0 -1
- package/dist/constants/aligmentClasses.d.ts.map +0 -1
- package/dist/constants/aligmentClasses.js.map +0 -1
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { normalizeSystemPath } from "../utilities/string/normalizeSystemPath.js";
|
|
2
|
+
export const SST_DOCS_CONFIG_FILENAME = "sst-docs.config.json";
|
|
3
|
+
export class SstDocsConfigError extends Error {
|
|
4
|
+
constructor(message) {
|
|
5
|
+
super(message);
|
|
6
|
+
this.name = "SstDocsConfigError";
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
export function derivePublicDataPath(fsDataPath) {
|
|
10
|
+
const normalized = normalizeSystemPath(fsDataPath.trim());
|
|
11
|
+
let candidate = normalized;
|
|
12
|
+
// Strip leading relative markers like "./"
|
|
13
|
+
candidate = candidate.replace(/^\.\/*/, "/");
|
|
14
|
+
// Try to locate the /public segment and drop everything up to it.
|
|
15
|
+
const publicSegmentIndex = candidate.indexOf("/public");
|
|
16
|
+
if (publicSegmentIndex !== -1) {
|
|
17
|
+
candidate = candidate.slice(publicSegmentIndex + "/public".length);
|
|
18
|
+
}
|
|
19
|
+
else if (candidate.startsWith("public/")) {
|
|
20
|
+
candidate = candidate.slice("public".length);
|
|
21
|
+
}
|
|
22
|
+
if (candidate.length === 0 || candidate === "/") {
|
|
23
|
+
return "/";
|
|
24
|
+
}
|
|
25
|
+
if (!candidate.startsWith("/")) {
|
|
26
|
+
candidate = `/${candidate}`;
|
|
27
|
+
}
|
|
28
|
+
if (!candidate.endsWith("/")) {
|
|
29
|
+
candidate = `${candidate}/`;
|
|
30
|
+
}
|
|
31
|
+
return candidate;
|
|
32
|
+
}
|
|
33
|
+
export function resolvePublicDataPath(baseUrl, config) {
|
|
34
|
+
const publicPath = typeof config === "string" ? config : config.PUBLIC_DATA_PATH;
|
|
35
|
+
const normalizedPublicPath = normalizePublicPath(publicPath);
|
|
36
|
+
if (!baseUrl) {
|
|
37
|
+
return normalizedPublicPath;
|
|
38
|
+
}
|
|
39
|
+
if (isAbsoluteUrl(baseUrl)) {
|
|
40
|
+
const url = new URL(baseUrl);
|
|
41
|
+
url.pathname = joinUrlPaths(ensureLeadingAndTrailingSlash(url.pathname || "/"), normalizedPublicPath);
|
|
42
|
+
return url.toString();
|
|
43
|
+
}
|
|
44
|
+
const normalizedBase = ensureLeadingAndTrailingSlash(normalizeSystemPath(baseUrl.trim() || "/"));
|
|
45
|
+
return joinUrlPaths(normalizedBase, normalizedPublicPath);
|
|
46
|
+
}
|
|
47
|
+
function normalizePublicPath(value) {
|
|
48
|
+
const normalized = normalizeSystemPath(value.trim());
|
|
49
|
+
if (normalized.length === 0) {
|
|
50
|
+
return "/";
|
|
51
|
+
}
|
|
52
|
+
const withLeading = normalized.startsWith("/")
|
|
53
|
+
? normalized
|
|
54
|
+
: `/${normalized}`;
|
|
55
|
+
return withLeading.endsWith("/") ? withLeading : `${withLeading}/`;
|
|
56
|
+
}
|
|
57
|
+
function ensureLeadingAndTrailingSlash(value) {
|
|
58
|
+
const normalized = normalizeSystemPath(value.trim());
|
|
59
|
+
if (normalized.length === 0) {
|
|
60
|
+
return "/";
|
|
61
|
+
}
|
|
62
|
+
let result = normalized.startsWith("/")
|
|
63
|
+
? normalized
|
|
64
|
+
: `/${normalized}`;
|
|
65
|
+
if (!result.endsWith("/")) {
|
|
66
|
+
result = `${result}/`;
|
|
67
|
+
}
|
|
68
|
+
return result;
|
|
69
|
+
}
|
|
70
|
+
function joinUrlPaths(base, child) {
|
|
71
|
+
const normalizedBase = base.endsWith("/") ? base : `${base}/`;
|
|
72
|
+
const normalizedChild = child.startsWith("/")
|
|
73
|
+
? child.slice(1)
|
|
74
|
+
: child;
|
|
75
|
+
return `${normalizedBase}${normalizedChild}`;
|
|
76
|
+
}
|
|
77
|
+
function isAbsoluteUrl(value) {
|
|
78
|
+
try {
|
|
79
|
+
new URL(value);
|
|
80
|
+
return true;
|
|
81
|
+
}
|
|
82
|
+
catch {
|
|
83
|
+
return false;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=sstDocsConfig.shared.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sstDocsConfig.shared.js","sourceRoot":"","sources":["../../src/configs/sstDocsConfig.shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stylesConfig.d.ts","sourceRoot":"","sources":["../../src/configs/stylesConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD,eAAO,MAAM,YAAY,EAAE,YAK1B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stylesConfig.js","sourceRoot":"","sources":["../../src/configs/stylesConfig.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAErE,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,MAAM,EAAE;QACN,KAAK,EAAE,uBAAuB,CAAC,KAAK;QACpC,IAAI,EAAE,uBAAuB,CAAC,IAAI;KACnC;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alignmentClasses.d.ts","sourceRoot":"","sources":["../../src/constants/alignmentClasses.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;CAapB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alignmentClasses.js","sourceRoot":"","sources":["../../src/constants/alignmentClasses.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAE;QACJ,IAAI,EAAE,WAAW;QACjB,SAAS,EAAE,SAAS;KACrB;IACD,MAAM,EAAE;QACN,IAAI,EAAE,aAAa;QACnB,SAAS,EAAE,SAAS;KACrB;IACD,KAAK,EAAE;QACL,IAAI,EAAE,YAAY;QAClB,SAAS,EAAE,SAAS;KACrB;CACO,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC"}
|
package/dist/constants/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/constants/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC"}
|
package/dist/data/buildTree.d.ts
CHANGED
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
import type { Category } from "../types/Category.js";
|
|
2
2
|
import type { DocItem } from "../types/DocItem.js";
|
|
3
3
|
import type { RawCategory } from "../types/RawCategory.js";
|
|
4
|
-
|
|
4
|
+
type BuildTreeIssueType = "invalidCategoryId" | "invalidChildrenField" | "invalidChildId" | "missingCategory" | "invalidDocsField" | "invalidDocId" | "missingDoc" | "cycle";
|
|
5
|
+
export interface BuildTreeIssue {
|
|
6
|
+
type: BuildTreeIssueType;
|
|
7
|
+
categoryId?: string;
|
|
8
|
+
childId?: string;
|
|
9
|
+
docId?: string;
|
|
10
|
+
path?: string[];
|
|
11
|
+
message: string;
|
|
12
|
+
}
|
|
13
|
+
export interface BuildTreeResult {
|
|
5
14
|
tree: Category[];
|
|
6
15
|
usedDocIds: Set<string>;
|
|
7
|
-
|
|
16
|
+
errors: BuildTreeIssue[];
|
|
17
|
+
}
|
|
18
|
+
export declare function buildTree(rawMap: Record<string, RawCategory>, allDocs: DocItem[]): BuildTreeResult;
|
|
19
|
+
export {};
|
|
8
20
|
//# sourceMappingURL=buildTree.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildTree.d.ts","sourceRoot":"","sources":["../../src/data/buildTree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"buildTree.d.ts","sourceRoot":"","sources":["../../src/data/buildTree.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,KAAK,kBAAkB,GACnB,mBAAmB,GACnB,sBAAsB,GACtB,gBAAgB,GAChB,iBAAiB,GACjB,kBAAkB,GAClB,cAAc,GACd,YAAY,GACZ,OAAO,CAAC;AAEZ,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,kBAAkB,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACxB,MAAM,EAAE,cAAc,EAAE,CAAC;CAC1B;AAUD,wBAAgB,SAAS,CACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EACnC,OAAO,EAAE,OAAO,EAAE,GACjB,eAAe,CAuMjB"}
|
package/dist/data/buildTree.js
CHANGED
|
@@ -1,91 +1,174 @@
|
|
|
1
|
-
function
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
export function buildTree(rawMap, allDocs) {
|
|
2
|
+
const errors = [];
|
|
3
|
+
const docLookup = new Map(allDocs.map((d) => [d.id, d]));
|
|
4
|
+
const usedDocIds = new Set();
|
|
5
|
+
// First pass: collect valid category ids.
|
|
6
|
+
const categoryIds = new Set();
|
|
7
|
+
for (const raw of Object.values(rawMap)) {
|
|
8
|
+
const id = typeof raw?.id === "string" ? raw.id.trim() : "";
|
|
9
|
+
if (id.length === 0) {
|
|
10
|
+
errors.push({
|
|
11
|
+
type: "invalidCategoryId",
|
|
12
|
+
message: "Encountered category with missing or invalid id.",
|
|
13
|
+
});
|
|
14
|
+
continue;
|
|
15
|
+
}
|
|
16
|
+
if (categoryIds.has(id)) {
|
|
17
|
+
errors.push({
|
|
18
|
+
type: "invalidCategoryId",
|
|
19
|
+
categoryId: id,
|
|
20
|
+
message: `Duplicate category id "${id}" encountered.`,
|
|
21
|
+
});
|
|
22
|
+
continue;
|
|
23
|
+
}
|
|
24
|
+
categoryIds.add(id);
|
|
5
25
|
}
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
26
|
+
// Second pass: prepare categories, docs, and adjacency once.
|
|
27
|
+
const prepared = new Map();
|
|
28
|
+
const referencedAsChild = new Map();
|
|
29
|
+
for (const raw of Object.values(rawMap)) {
|
|
30
|
+
const id = typeof raw?.id === "string" ? raw.id.trim() : "";
|
|
31
|
+
if (!categoryIds.has(id)) {
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
let docs;
|
|
35
|
+
if (raw.docs !== undefined && !Array.isArray(raw.docs)) {
|
|
36
|
+
errors.push({
|
|
37
|
+
type: "invalidDocsField",
|
|
38
|
+
categoryId: id,
|
|
39
|
+
message: `Category "${id}" has an invalid docs field (expected array).`,
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
else if (Array.isArray(raw.docs)) {
|
|
43
|
+
const collected = [];
|
|
44
|
+
for (const rawDocId of raw.docs) {
|
|
45
|
+
if (typeof rawDocId !== "string" || rawDocId.trim().length === 0) {
|
|
46
|
+
errors.push({
|
|
47
|
+
type: "invalidDocId",
|
|
48
|
+
categoryId: id,
|
|
49
|
+
docId: rawDocId,
|
|
50
|
+
message: `Category "${id}" references an invalid doc id.`,
|
|
51
|
+
});
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
const docId = rawDocId.trim();
|
|
55
|
+
const doc = docLookup.get(docId);
|
|
56
|
+
if (!doc) {
|
|
57
|
+
errors.push({
|
|
58
|
+
type: "missingDoc",
|
|
59
|
+
categoryId: id,
|
|
60
|
+
docId,
|
|
61
|
+
message: `Doc id "${docId}" referenced in category "${id}" was not found.`,
|
|
62
|
+
});
|
|
63
|
+
continue;
|
|
64
|
+
}
|
|
65
|
+
collected.push(doc);
|
|
66
|
+
usedDocIds.add(docId);
|
|
15
67
|
}
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
console.warn(`Doc id ${rawId} referenced in category ${raw.id} not found.`);
|
|
19
|
-
return null;
|
|
68
|
+
if (collected.length > 0) {
|
|
69
|
+
docs = collected;
|
|
20
70
|
}
|
|
21
|
-
usedDocIds.add(rawId);
|
|
22
|
-
return doc;
|
|
23
|
-
})
|
|
24
|
-
.filter((doc) => doc !== null);
|
|
25
|
-
if (validDocs.length > 0) {
|
|
26
|
-
docs = validDocs;
|
|
27
71
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
72
|
+
const childIds = [];
|
|
73
|
+
if (raw.children !== undefined && !Array.isArray(raw.children)) {
|
|
74
|
+
errors.push({
|
|
75
|
+
type: "invalidChildrenField",
|
|
76
|
+
categoryId: id,
|
|
77
|
+
message: `Category "${id}" has an invalid children field (expected array).`,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
else if (Array.isArray(raw.children)) {
|
|
81
|
+
for (const rawChildId of raw.children) {
|
|
82
|
+
if (typeof rawChildId !== "string" ||
|
|
83
|
+
rawChildId.trim().length === 0) {
|
|
84
|
+
errors.push({
|
|
85
|
+
type: "invalidChildId",
|
|
86
|
+
categoryId: id,
|
|
87
|
+
childId: rawChildId,
|
|
88
|
+
message: `Category "${id}" references an invalid child category id.`,
|
|
89
|
+
});
|
|
90
|
+
continue;
|
|
91
|
+
}
|
|
92
|
+
const childId = rawChildId.trim();
|
|
93
|
+
if (!categoryIds.has(childId)) {
|
|
94
|
+
errors.push({
|
|
95
|
+
type: "missingCategory",
|
|
96
|
+
categoryId: id,
|
|
97
|
+
childId,
|
|
98
|
+
message: `Child category "${childId}" referenced in "${id}" was not found.`,
|
|
99
|
+
});
|
|
100
|
+
continue;
|
|
101
|
+
}
|
|
102
|
+
childIds.push(childId);
|
|
103
|
+
referencedAsChild.set(childId, (referencedAsChild.get(childId) ?? 0) + 1);
|
|
42
104
|
}
|
|
43
|
-
return convertCategory(childRaw, rawMap, docLookup, usedDocIds, included, visiting);
|
|
44
|
-
})
|
|
45
|
-
.filter((child) => child !== null);
|
|
46
|
-
if (validChildren.length > 0) {
|
|
47
|
-
children = validChildren;
|
|
48
105
|
}
|
|
106
|
+
prepared.set(id, { raw, docs, childIds });
|
|
49
107
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
const usedDocIds = new Set();
|
|
64
|
-
const includedIds = new Set();
|
|
65
|
-
const childCategoryIds = new Set();
|
|
66
|
-
Object.values(rawMap).forEach((category) => {
|
|
67
|
-
if (Array.isArray(category?.children)) {
|
|
68
|
-
category.children.forEach((childId) => {
|
|
69
|
-
if (typeof childId === "string" && childId.length > 0) {
|
|
70
|
-
childCategoryIds.add(childId);
|
|
71
|
-
}
|
|
108
|
+
const allValidIds = Array.from(prepared.keys());
|
|
109
|
+
const rootIds = allValidIds.filter((id) => !referencedAsChild.has(id));
|
|
110
|
+
const rootsToUse = rootIds.length > 0 ? rootIds : allValidIds;
|
|
111
|
+
const state = new Map();
|
|
112
|
+
const built = new Map();
|
|
113
|
+
const buildNode = (id, stack) => {
|
|
114
|
+
const current = state.get(id) ?? "unvisited";
|
|
115
|
+
if (current === "visiting") {
|
|
116
|
+
const cyclePath = [...stack, id];
|
|
117
|
+
errors.push({
|
|
118
|
+
type: "cycle",
|
|
119
|
+
path: cyclePath,
|
|
120
|
+
message: `Detected circular category reference: ${cyclePath.join(" -> ")}`,
|
|
72
121
|
});
|
|
122
|
+
return null;
|
|
73
123
|
}
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
!
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
if (includedIds.has(rootCategory.id))
|
|
124
|
+
if (current === "visited") {
|
|
125
|
+
return built.get(id) ?? null;
|
|
126
|
+
}
|
|
127
|
+
const preparedCategory = prepared.get(id);
|
|
128
|
+
if (!preparedCategory) {
|
|
129
|
+
errors.push({
|
|
130
|
+
type: "missingCategory",
|
|
131
|
+
categoryId: id,
|
|
132
|
+
message: `Category "${id}" was referenced but not defined.`,
|
|
133
|
+
});
|
|
85
134
|
return null;
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
.
|
|
89
|
-
|
|
135
|
+
}
|
|
136
|
+
state.set(id, "visiting");
|
|
137
|
+
stack.push(id);
|
|
138
|
+
const children = [];
|
|
139
|
+
for (const childId of preparedCategory.childIds) {
|
|
140
|
+
const childNode = buildNode(childId, stack);
|
|
141
|
+
if (childNode) {
|
|
142
|
+
children.push(childNode);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
const node = {
|
|
146
|
+
id: preparedCategory.raw.id,
|
|
147
|
+
title: preparedCategory.raw.title,
|
|
148
|
+
description: preparedCategory.raw.description,
|
|
149
|
+
content: preparedCategory.raw.content ?? [],
|
|
150
|
+
};
|
|
151
|
+
if (preparedCategory.docs && preparedCategory.docs.length > 0) {
|
|
152
|
+
node.docs = preparedCategory.docs;
|
|
153
|
+
}
|
|
154
|
+
if (children.length > 0) {
|
|
155
|
+
node.children = children;
|
|
156
|
+
}
|
|
157
|
+
built.set(id, node);
|
|
158
|
+
state.set(id, "visited");
|
|
159
|
+
stack.pop();
|
|
160
|
+
return node;
|
|
161
|
+
};
|
|
162
|
+
const tree = [];
|
|
163
|
+
for (const id of rootsToUse) {
|
|
164
|
+
if ((state.get(id) ?? "unvisited") === "visited") {
|
|
165
|
+
continue;
|
|
166
|
+
}
|
|
167
|
+
const node = buildNode(id, []);
|
|
168
|
+
if (node) {
|
|
169
|
+
tree.push(node);
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
return { tree, usedDocIds, errors };
|
|
90
173
|
}
|
|
91
174
|
//# sourceMappingURL=buildTree.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildTree.js","sourceRoot":"","sources":["../../src/data/buildTree.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"buildTree.js","sourceRoot":"","sources":["../../src/data/buildTree.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.sst-site-background{min-height:100vh;background-color:var(--sst-site-bg);color:inherit;transition:background-color 150ms ease,color 150ms ease,border-color 150ms ease}.sst-site-borders{border-left:1px solid var(--sst-site-border);border-right:1px solid var(--sst-site-border)}.sst-header-background{background-color:var(--sst-header-bg);border-bottom:1px solid var(--sst-header-border);box-shadow:var(--sst-shadow-soft)}.sst-header-mobile-bg{background-color:var(--sst-header-mobile-bg);border-bottom:1px solid var(--sst-header-border);box-shadow:var(--sst-shadow-soft)}.sst-sidebar-bg{background-color:var(--sst-sidebar-bg);border-right:1px solid var(--sst-header-border)}.sst-document-header-bg{background-color:var(--sst-doc-header-bg);border-bottom:1px solid var(--sst-header-border)}.sst-content-bg{background-color:var(--sst-content-bg)}.sst-header-nav-toggle,.sst-header-menu-toggle{color:var(--sst-header-toggle);transition:color 150ms ease}.sst-header-nav-toggle:hover,.sst-header-menu-toggle:hover{color:var(--sst-header-toggle-hover)}.sst-category-empty{color:var(--sst-category-empty);text-align:center}.sst-category-card{background-color:var(--sst-category-card-bg);border:1px solid var(--sst-category-card-border);border-radius:var(--sst-radius-xl);text-align:left;transition:background-color 150ms ease,border-color 150ms ease,color 150ms ease}.sst-category-card:hover{background-color:var(--sst-category-card-bg-hover)}.sst-category-header{color:var(--sst-category-header);font-size:1.125rem;font-weight:600;margin-bottom:.25rem}.sst-category-desc{color:var(--sst-category-desc);font-size:.875rem;line-height:1.25rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.sst-nav-row{color:var(--sst-nav-row);line-height:1.25}.sst-nav-row-active{color:var(--sst-nav-row-active-text);background-color:var(--sst-nav-row-active-bg);border-left:2px solid var(--sst-nav-row-active-border);font-weight:600;transition:background-color 150ms ease,color 150ms ease}.sst-nav-row-focused{outline:2px solid var(--sst-nav-row-focus);outline-offset:2px}.sst-nav-row-hover{transition:color 150ms ease}.sst-nav-row-hover:hover{color:var(--sst-nav-hover)}.sst-nav-hints{color:var(--sst-nav-hints);transition:color 150ms ease,text-decoration-color 150ms ease}.sst-nav-hints:hover,.sst-nav-hints:focus{text-decoration:underline;outline:none}.sst-search-bg{background-color:var(--sst-search-bg)}.sst-search-empty,.sst-search-none{color:var(--sst-search-text-muted);font-size:.875rem;text-align:center}.sst-search-header{background-color:var(--sst-search-header-bg);color:var(--sst-search-text-muted)}.sst-search-footer{background-color:var(--sst-search-footer-bg)}.sst-search-borders{border-color:var(--sst-search-border)}.sst-search-item{border-bottom:1px solid var(--sst-search-item-border);transition:background-color 150ms ease}.sst-search-item:hover{background-color:var(--sst-search-item-hover-bg)}.sst-search-item-selected{background-color:var(--sst-search-item-selected-bg);border-top:1px solid var(--sst-search-item-border);border-bottom:1px solid var(--sst-search-item-border)}.sst-search-item-header{color:var(--sst-search-item-header);font-weight:700}.sst-search-item-found{color:var(--sst-search-item-found);font-size:.75rem;margin-top:.25rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sst-search-item-tags{background-color:var(--sst-search-item-tag-bg);color:var(--sst-search-item-tag-text);font-size:.6875rem;font-style:italic;padding:.125rem .5rem;border-radius:9999px;margin-top:.125rem;display:inline-block;max-width:100%;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sst-input{font-size:.875rem;color:var(--sst-input-text);border:1px solid var(--sst-input-border);border-radius:var(--sst-radius-md);padding:.5rem .75rem;transition:border-color 150ms ease,box-shadow 150ms ease;background-color:#fff}.sst-input:focus{outline:none;border-color:var(--sst-input-focus);box-shadow:0 0 0 2px rgba(59,130,246,.3)}.sst-text-logo{color:var(--sst-text-logo);font-size:1.25rem;font-weight:600}.sst-text-doc-title{color:var(--sst-text-doc-title);font-size:2rem;font-weight:700;line-height:1.2}.sst-text-breadcrumb{color:var(--sst-text-breadcrumb);font-size:.875rem}.sst-text-title-1{color:var(--sst-text-title1);font-size:1.875rem;font-weight:700;margin-top:2rem;margin-bottom:.75rem}.sst-text-title-2{color:var(--sst-text-title2);font-size:1.5rem;font-weight:600;margin-top:2rem;margin-bottom:1rem}.sst-text-title-3{color:var(--sst-text-title3);font-size:1.25rem;font-weight:500;margin-top:1.5rem;margin-bottom:.75rem}.sst-text-anchor{color:var(--sst-text-anchor);transition:color 150ms ease}.sst-text-anchor:hover{color:var(--sst-text-anchor-hover)}.sst-text-general{color:var(--sst-text-general);font-size:1rem;line-height:1.5rem}.sst-text-alternative{color:var(--sst-text-alt);font-size:.875rem;font-style:italic;text-align:center;margin-top:.5rem}.sst-text-list{color:var(--sst-text-list);list-style-position:inside;font-size:1rem;line-height:1.5rem}.sst-text-math{color:var(--sst-text-math);font-size:1.125rem}.sst-hints-text{color:var(--sst-hints-text);font-size:.75rem}.sst-hints-key{color:var(--sst-hints-key);font-size:.75rem;border:1px solid var(--sst-hints-key-border);border-radius:var(--sst-radius-md);padding:.125rem .375rem}.sst-divider-border{border-color:var(--sst-divider-border)}.sst-divider-gradient{background-image:var(--sst-divider-gradient);height:1px;border:none}.sst-divider-text{color:var(--sst-divider-text);font-size:.875rem}.sst-btn,.sst-btn-small,.sst-btn-tab,.sst-btn-tab-active{border-radius:var(--sst-radius-md);transition:background-color 150ms ease,color 150ms ease,border-color 150ms ease}.sst-btn,.sst-btn-small{color:var(--sst-btn-text);background-color:var(--sst-btn-bg);border:1px solid var(--sst-btn-border)}.sst-btn{font-weight:700}.sst-btn-small{font-size:.75rem;font-weight:600}.sst-btn:hover,.sst-btn-small:hover{background-color:var(--sst-btn-hover-bg)}.sst-btn-tab{font-size:.75rem;font-weight:600;color:var(--sst-btn-tab-text);background-color:var(--sst-btn-tab-bg);border:1px solid var(--sst-btn-tab-border)}.sst-btn-tab:hover{background-color:var(--sst-btn-tab-hover-bg)}.sst-btn-tab-active{font-size:.75rem;font-weight:600;color:var(--sst-btn-tab-active-text);background-color:var(--sst-btn-tab-active-bg);border:1px solid var(--sst-btn-tab-active-border)}.sst-dropdown{background-color:var(--sst-dropdown-bg);border:1px solid var(--sst-dropdown-border);border-radius:var(--sst-radius-md);box-shadow:var(--sst-shadow-strong)}.sst-dropdown-item{color:inherit;text-align:left;white-space:nowrap;transition:background-color 150ms ease,color 150ms ease}.sst-dropdown-item:hover{background-color:var(--sst-dropdown-item-hover)}.sst-dropdown-item-active{background-color:var(--sst-dropdown-item-active-bg);border-left:2px solid var(--sst-dropdown-border);font-weight:700;color:var(--sst-dropdown-item-active-text)}.sst-msg-info{background-color:var(--sst-msg-info-bg);color:var(--sst-msg-info-text);border:1px solid var(--sst-msg-info-border)}.sst-msg-warning{background-color:var(--sst-msg-warning-bg);color:var(--sst-msg-warning-text);border:1px solid var(--sst-msg-warning-border)}.sst-msg-error{background-color:var(--sst-msg-error-bg);color:var(--sst-msg-error-text);border:1px solid var(--sst-msg-error-border)}.sst-msg-success{background-color:var(--sst-msg-success-bg);color:var(--sst-msg-success-text);border:1px solid var(--sst-msg-success-border)}.sst-msg-neutral{background-color:var(--sst-msg-neutral-bg);color:var(--sst-msg-neutral-text);border:1px solid var(--sst-msg-neutral-border)}.sst-msg-quote{background-color:var(--sst-msg-quote-bg);color:var(--sst-msg-quote-text);border-left:4px solid var(--sst-msg-quote-border);font-style:italic}.sst-table-corner{background-color:var(--sst-table-corner-bg);color:#e5e7eb;font-weight:700;font-size:1.125rem}.sst-table-headers{background-color:var(--sst-table-header-bg);color:#e5e7eb;font-weight:600;font-size:1.125rem}.sst-table-rows{background-color:var(--sst-table-row-bg);color:var(--sst-table-row-text)}.sst-table-border{border:1px solid var(--sst-table-border)}.sst-table-empty{color:var(--sst-table-empty);text-align:center}.sst-code-header{background-color:var(--sst-code-header-bg);color:var(--sst-code-header-text);border-bottom:1px solid var(--sst-code-border)}.sst-code-language{color:var(--sst-code-language);font-size:.75rem;font-weight:600;margin-top:.25rem;text-align:right}.sst-code-lines{color:var(--sst-code-lines-text);font-size:.875rem;border-right:1px solid #d1d5db}.sst-code-empty{background-color:var(--sst-code-empty-bg);color:var(--sst-code-empty-text);text-align:center;font-size:.875rem;border:1px solid var(--sst-code-border)}.sst-audio{background-color:var(--sst-audio-bg);border-radius:var(--sst-radius-md)}.sst-audio-play{background-color:var(--sst-audio-btn-bg);color:var(--sst-audio-btn-text);transition:background-color 150ms ease,color 150ms ease}.sst-audio-play:hover{background-color:var(--sst-audio-btn-hover)}.sst-audio-time{color:var(--sst-audio-time);font-size:.75rem;font-variant-numeric:tabular-nums;text-align:center}.sst-audio-slider{background:rgba(0,0,0,0)}.sst-audio-slider-thumb{appearance:none;height:4px;width:100%;background:linear-gradient(90deg, var(--sst-audio-btn-bg), var(--sst-audio-btn-hover));border-radius:9999px}.sst-audio-slider-thumb::-webkit-slider-thumb{appearance:none;height:14px;width:14px;border-radius:9999px;background-color:var(--sst-audio-slider-thumb);box-shadow:0 0 0 3px rgba(0,0,0,.15)}.sst-audio-slider-thumb::-moz-range-thumb{appearance:none;height:14px;width:14px;border-radius:9999px;background-color:var(--sst-audio-slider-thumb);border:none;box-shadow:0 0 0 3px rgba(0,0,0,.15)}.sst-theme-light{--sst-radius-md: 0.375rem;--sst-radius-lg: 0.5rem;--sst-radius-xl: 0.75rem;--sst-shadow-soft: 0 2px 4px rgba(0, 0, 0, 0.08);--sst-shadow-strong: 0 10px 20px rgba(0, 0, 0, 0.2);--sst-site-bg: #a8a29e;--sst-site-border: #57534e;--sst-header-bg: #fafaf9;--sst-header-border: #a8a29e;--sst-header-mobile-bg: #fafaf9;--sst-sidebar-bg: #fafaf9;--sst-doc-header-bg: #e7e5e4;--sst-content-bg: #f3f4f6;--sst-header-toggle: #78716c;--sst-header-toggle-hover: #44403c;--sst-category-empty: #6b7280;--sst-category-card-bg: #e7e5e4;--sst-category-card-bg-hover: #d6d3d1;--sst-category-card-border: #a8a29e;--sst-category-header: #44403c;--sst-category-desc: #4b5563;--sst-nav-row: #111827;--sst-nav-row-active-text: #44403c;--sst-nav-row-active-bg: #e7e5e4;--sst-nav-row-active-border: #78716c;--sst-nav-row-focus: #78716c;--sst-nav-hover: #78716c;--sst-nav-hints: #57534e;--sst-search-bg: #f5f5f4;--sst-search-text-muted: #9ca3af;--sst-search-header-bg: #f9fafb;--sst-search-footer-bg: #f9fafb;--sst-search-border: #111827;--sst-search-item-border: #d6d3d1;--sst-search-item-hover-bg: rgba(214, 211, 209, 0.7);--sst-search-item-selected-bg: #d6d3d1;--sst-search-item-header: #57534e;--sst-search-item-found: #374151;--sst-search-item-tag-bg: #a8a29e;--sst-search-item-tag-text: #f9fafb;--sst-input-text: #57534e;--sst-input-border: #d1d5db;--sst-input-focus: #3b82f6;--sst-text-logo: #111827;--sst-text-doc-title: #44403c;--sst-text-breadcrumb: #57534e;--sst-text-title1: #44403c;--sst-text-title2: #1f2937;--sst-text-title3: #374151;--sst-text-anchor: #a8a29e;--sst-text-anchor-hover: #3b82f6;--sst-text-general: #374151;--sst-text-alt: #9ca3af;--sst-text-list: #374151;--sst-text-math: #1f2937;--sst-hints-text: #57534e;--sst-hints-key: #57534e;--sst-hints-key-border: #a8a29e;--sst-divider-border: #a8a29e;--sst-divider-text: #a8a29e;--sst-divider-gradient: linear-gradient(to right, transparent, #a8a29e, transparent);--sst-btn-bg: #e7e5e4;--sst-btn-border: #a8a29e;--sst-btn-text: #44403c;--sst-btn-hover-bg: #d6d3d1;--sst-btn-tab-bg: #44403c;--sst-btn-tab-text: #d6d3d1;--sst-btn-tab-border: #d6d3d1;--sst-btn-tab-hover-bg: #57534e;--sst-btn-tab-active-bg: #84cc16;--sst-btn-tab-active-text: #1c1917;--sst-btn-tab-active-border: #bef264;--sst-dropdown-bg: #f9fafb;--sst-dropdown-border: #d6d3d1;--sst-dropdown-item-hover: rgba(214, 211, 209, 0.5);--sst-dropdown-item-active-bg: #e7e5e4;--sst-dropdown-item-active-text: #44403c;--sst-msg-info-bg: #dbeafe;--sst-msg-info-text: #1e3a8a;--sst-msg-info-border: #93c5fd;--sst-msg-warning-bg: #fef9c3;--sst-msg-warning-text: #854d0e;--sst-msg-warning-border: #facc15;--sst-msg-error-bg: #fee2e2;--sst-msg-error-text: #b91c1c;--sst-msg-error-border: #fca5a5;--sst-msg-success-bg: #dcfce7;--sst-msg-success-text: #166534;--sst-msg-success-border: #86efac;--sst-msg-neutral-bg: #f5f5f4;--sst-msg-neutral-text: #374151;--sst-msg-neutral-border: #d1d5db;--sst-msg-quote-bg: #d6d3d1;--sst-msg-quote-border: #a8a29e;--sst-msg-quote-text: #374151;--sst-table-corner-bg: rgba(28, 25, 23, 0.8);--sst-table-header-bg: rgba(68, 64, 60, 0.8);--sst-table-row-bg: #fafaf9;--sst-table-row-text: #374151;--sst-table-border: #a8a29e;--sst-table-empty: #6b7280;--sst-code-header-bg: rgba(68, 64, 60, 0.8);--sst-code-header-text: #e5e7eb;--sst-code-border: #d6d3d1;--sst-code-language: #d6d3d1;--sst-code-lines-text: #6b7280;--sst-code-empty-bg: #f9fafb;--sst-code-empty-text: #6b7280;--sst-audio-bg: #d1d5db;--sst-audio-btn-bg: #44403c;--sst-audio-btn-hover: #57534e;--sst-audio-btn-text: #ffffff;--sst-audio-time: #374151;--sst-audio-slider-thumb: #57534e}.sst-theme-dark{--sst-radius-md: 0.375rem;--sst-radius-lg: 0.5rem;--sst-radius-xl: 0.75rem;--sst-shadow-soft: 0 2px 4px rgba(0, 0, 0, 0.08);--sst-shadow-strong: 0 10px 20px rgba(0, 0, 0, 0.2);--sst-site-bg: #020617;--sst-site-border: #374151;--sst-header-bg: #18181b;--sst-header-border: #374151;--sst-header-mobile-bg: #18181b;--sst-sidebar-bg: #18181b;--sst-doc-header-bg: rgba(49, 46, 129, 0.6);--sst-content-bg: #1c1c1f;--sst-header-toggle: #6b7280;--sst-header-toggle-hover: #374151;--sst-category-empty: #6b7280;--sst-category-card-bg: rgba(49, 46, 129, 0.5);--sst-category-card-bg-hover: rgba(67, 56, 202, 0.7);--sst-category-card-border: #3730a3;--sst-category-header: #f9fafb;--sst-category-desc: #818cf8;--sst-nav-row: #f9fafb;--sst-nav-row-active-text: #f9fafb;--sst-nav-row-active-bg: rgba(49, 46, 129, 0.6);--sst-nav-row-active-border: #ffffff;--sst-nav-row-focus: #4f46e5;--sst-nav-hover: #6366f1;--sst-nav-hints: #6366f1;--sst-search-bg: #18181b;--sst-search-text-muted: #9ca3af;--sst-search-header-bg: #1c1c1f;--sst-search-footer-bg: #1c1c1f;--sst-search-border: #6b7280;--sst-search-item-border: rgba(129, 140, 248, 0.3);--sst-search-item-hover-bg: rgba(49, 46, 129, 0.8);--sst-search-item-selected-bg: rgba(49, 46, 129, 0.6);--sst-search-item-header: #818cf8;--sst-search-item-found: #d1d5db;--sst-search-item-tag-bg: rgba(129, 140, 248, 0.4);--sst-search-item-tag-text: #f3f4f6;--sst-input-text: #9ca3af;--sst-input-border: #d1d5db;--sst-input-focus: #3b82f6;--sst-text-logo: #f9fafb;--sst-text-doc-title: #d1d5db;--sst-text-breadcrumb: #9ca3af;--sst-text-title1: #818cf8;--sst-text-title2: #f3f4f6;--sst-text-title3: #e5e7eb;--sst-text-anchor: #9ca3af;--sst-text-anchor-hover: #3b82f6;--sst-text-general: #d1d5db;--sst-text-alt: #9ca3af;--sst-text-list: #d1d5db;--sst-text-math: #e5e7eb;--sst-hints-text: #9ca3af;--sst-hints-key: #9ca3af;--sst-hints-key-border: #4b5563;--sst-divider-border: #6b7280;--sst-divider-text: #6b7280;--sst-divider-gradient: linear-gradient(to right, transparent, #6b7280, transparent);--sst-btn-bg: rgba(49, 46, 129, 0.5);--sst-btn-border: #3730a3;--sst-btn-text: #f3f4f6;--sst-btn-hover-bg: rgba(67, 56, 202, 0.7);--sst-btn-tab-bg: #1e1b4b;--sst-btn-tab-text: #a5b4fc;--sst-btn-tab-border: #4f46e5;--sst-btn-tab-hover-bg: rgba(67, 56, 202, 0.7);--sst-btn-tab-active-bg: #84cc16;--sst-btn-tab-active-text: #1f2937;--sst-btn-tab-active-border: #bef264;--sst-dropdown-bg: #1f2937;--sst-dropdown-border: #4f46e5;--sst-dropdown-item-hover: rgba(79, 70, 229, 0.5);--sst-dropdown-item-active-bg: rgba(49, 46, 129, 0.6);--sst-dropdown-item-active-text: #ffffff;--sst-msg-info-bg: rgba(30, 64, 175, 0.4);--sst-msg-info-text: #bfdbfe;--sst-msg-info-border: rgba(147, 197, 253, 0.6);--sst-msg-warning-bg: rgba(133, 77, 14, 0.4);--sst-msg-warning-text: #fef08a;--sst-msg-warning-border: rgba(250, 204, 21, 0.6);--sst-msg-error-bg: rgba(185, 28, 28, 0.4);--sst-msg-error-text: #fecdd3;--sst-msg-error-border: rgba(252, 165, 165, 0.6);--sst-msg-success-bg: rgba(22, 101, 52, 0.4);--sst-msg-success-text: #bbf7d0;--sst-msg-success-border: rgba(74, 222, 128, 0.6);--sst-msg-neutral-bg: rgba(165, 180, 252, 0.2);--sst-msg-neutral-text: #e5e7eb;--sst-msg-neutral-border: #6b7280;--sst-msg-quote-bg: rgba(49, 46, 129, 0.5);--sst-msg-quote-border: #ffffff;--sst-msg-quote-text: #ffffff;--sst-table-corner-bg: rgba(49, 46, 129, 0.5);--sst-table-header-bg: rgba(49, 46, 129, 0.8);--sst-table-row-bg: rgba(30, 27, 75, 0.05);--sst-table-row-text: #e5e7eb;--sst-table-border: #4338ca;--sst-table-empty: #6b7280;--sst-code-header-bg: rgba(49, 46, 129, 0.8);--sst-code-header-text: #ffffff;--sst-code-border: #6366f1;--sst-code-language: #a5b4fc;--sst-code-lines-text: #6b7280;--sst-code-empty-bg: #f9fafb;--sst-code-empty-text: #6b7280;--sst-audio-bg: rgba(49, 46, 129, 0.5);--sst-audio-btn-bg: #4338ca;--sst-audio-btn-hover: #4f46e5;--sst-audio-btn-text: #ffffff;--sst-audio-time: #9ca3af;--sst-audio-slider-thumb: #818cf8}/*# sourceMappingURL=themes.css.map */
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["../../src/styles/themes/_components.scss","../../src/styles/themes/_mixins.scss"],"names":[],"mappings":"AAEA,qBACE,iBACA,oCACA,cACA,gFAIF,kBACE,6CACA,8CAGF,uBACE,sCACA,iDACA,kCAGF,sBACE,6CACA,iDACA,kCAGF,gBACE,uCACA,gDAGF,wBACE,0CACA,iDAGF,gBACE,uCAGF,+CAEE,+BACA,4BAGF,2DAEE,qCAGF,oBACE,gCACA,kBAGF,mBACE,6CACA,iDACA,mCACA,gBACA,gFAIF,yBACE,mDAGF,qBACE,iCACA,mBACA,gBACA,qBAGF,mBACE,+BACA,kBACA,oBACA,oBACA,qBACA,4BACA,gBAGF,aACE,yBACA,iBAGF,oBACE,qCACA,8CACA,uDACA,gBACA,wDAGF,qBACE,2CACA,mBAGF,mBACE,4BAGF,yBACE,2BAGF,eACE,2BACA,6DAGF,0CAEE,0BACA,aAGF,eACE,sCAGF,mCAEE,mCACA,kBACA,kBAGF,mBACE,6CACA,mCAGF,mBACE,6CAGF,oBACE,sCAGF,iBACE,sDACA,uCAGF,uBACE,iDAGF,0BACE,oDACA,mDACA,sDAGF,wBACE,oCACA,gBAGF,uBACE,mCACA,iBACA,kBACA,oBACA,qBACA,4BACA,gBAGF,sBACE,+CACA,sCACA,mBACA,kBACA,sBACA,qBACA,mBACA,qBACA,eACA,mBACA,uBACA,gBAGF,WACE,kBACA,4BACA,yCACA,mCACA,qBACA,yDACA,sBAGF,iBACE,aACA,oCACA,yCAGF,eACE,2BACA,kBACA,gBAGF,oBACE,gCACA,eACA,gBACA,gBAGF,qBACE,iCACA,kBAGF,kBACE,6BACA,mBACA,gBACA,gBACA,qBAGF,kBACE,6BACA,iBACA,gBACA,gBACA,mBAGF,kBACE,6BACA,kBACA,gBACA,kBACA,qBAGF,iBACE,6BACA,4BAGF,uBACE,mCAGF,kBACE,8BACA,eACA,mBAGF,sBACE,0BACA,kBACA,kBACA,kBACA,iBAGF,eACE,2BACA,2BACA,eACA,mBAGF,eACE,2BACA,mBAGF,gBACE,4BACA,iBAGF,eACE,2BACA,iBACA,6CACA,mCACA,wBAGF,oBACE,uCAGF,sBACE,6CACA,WACA,YAGF,kBACE,8BACA,kBAGF,yDAIE,mCACA,gFAIF,wBAEE,0BACA,mCACA,uCAGF,SACE,gBAGF,eACE,iBACA,gBAGF,oCAEE,yCAGF,aACE,iBACA,gBACA,8BACA,uCACA,2CAGF,mBACE,6CAGF,oBACE,iBACA,gBACA,qCACA,8CACA,kDAGF,cACE,wCACA,4CACA,mCACA,oCAGF,mBACE,cACA,gBACA,mBACA,wDAGF,yBACE,gDAGF,0BACE,oDACA,iDACA,gBACA,2CAGF,cACE,wCACA,+BACA,4CAGF,iBACE,2CACA,kCACA,+CAGF,eACE,yCACA,gCACA,6CAGF,iBACE,2CACA,kCACA,+CAGF,iBACE,2CACA,kCACA,+CAGF,eACE,yCACA,gCACA,kDACA,kBAGF,kBACE,4CACA,cACA,gBACA,mBAGF,mBACE,4CACA,cACA,gBACA,mBAGF,gBACE,yCACA,gCAGF,kBACE,yCAGF,iBACE,6BACA,kBAGF,iBACE,2CACA,kCACA,+CAGF,mBACE,+BACA,iBACA,gBACA,kBACA,iBAGF,gBACE,iCACA,kBACA,+BAGF,gBACE,0CACA,iCACA,kBACA,kBACA,wCAGF,WACE,qCACA,mCAGF,gBACE,yCACA,gCACA,wDAGF,sBACE,4CAGF,gBACE,4BACA,iBACA,kCACA,kBAGF,kBACE,yBAGF,wBACE,gBACA,WACA,WACA,uFAKA,qBAGF,8CACE,gBACA,YACA,WACA,qBACA,+CACA,qCAGF,0CACE,gBACA,YACA,WACA,qBACA,+CACA,YACA,qCCphBA,iBAEI,gLAIA,u0GANJ,gBAEI,gLAIA","file":"themes.css"}
|