@tenphi/docs 0.9.6 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +2 -8
- package/dist/config/index.js.map +1 -1
- package/dist/config/schema.json +4 -15
- package/dist/content/index.d.ts +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +134 -2
- package/dist/index.js.map +1 -1
- package/dist/markdown/index.d.ts +1 -1
- package/dist/{types-C_ADY_Cl.d.ts → types-De-cvxAJ.d.ts} +35 -15
- package/dist/{types-C_ADY_Cl.d.ts.map → types-De-cvxAJ.d.ts.map} +1 -1
- package/package.json +1 -1
package/dist/config/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { B as
|
|
1
|
+
import { B as ThemeTokenValue, D as MarkdownConfig, E as HeadConfig, H as TypographyPreset, I as SearchConfig, L as SiteConfig, M as NormalizedDocsConfig, O as NavigationConfig, R as ThemeConfig, T as DocsSource, U as TypographyPresets, V as ThemeTokens, _ as DocsConfig, a as ComponentStyleConfig, c as ComponentsConfig, j as NavigationTab, k as NavigationItem, l as ContentConfig, n as BuildConfig, o as ComponentStyles, s as ComponentStylesConfig, t as BrandConfig, u as CookbookComponentName, v as DocsDiagnostic, z as ThemePaletteConfig } from "../types-De-cvxAJ.js";
|
|
2
2
|
//#region src/config/index.d.ts
|
|
3
3
|
declare class DocsConfigError extends Error {
|
|
4
4
|
readonly diagnostics: DocsDiagnostic[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/config/index.ts"],"mappings":";;cAwDa,wBAAwB;WAC1B,aAAa;EAEtB,YAAY,aAAa;;iBAOX,eAAe,QAAQ,aAAa;
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/config/index.ts"],"mappings":";;cAwDa,wBAAwB;WAC1B,aAAa;EAEtB,YAAY,aAAa;;iBAOX,eAAe,QAAQ,aAAa;iBA4IpC,oBACd,SAAQ,aACP;iBAyCa,uBAAuB,UAAU,YAAY,QAAQ,IAAI"}
|
package/dist/config/index.js
CHANGED
|
@@ -111,14 +111,8 @@ function validateConfig(config) {
|
|
|
111
111
|
hint: "Remove the override, use 45 or higher, or explicitly set unsafeContrast: true."
|
|
112
112
|
});
|
|
113
113
|
}
|
|
114
|
-
for (const [name, entry] of Object.entries(config.theme?.styles ?? {})) {
|
|
115
|
-
|
|
116
|
-
invalid(diagnostics, `theme.styles.${name} must be a Tasty style object.`);
|
|
117
|
-
continue;
|
|
118
|
-
}
|
|
119
|
-
if ("mode" in entry && entry.mode !== "extend" && entry.mode !== "replace") invalid(diagnostics, `theme.styles.${name}.mode must be "extend" or "replace".`);
|
|
120
|
-
if ("mode" in entry && !isRecord(entry.styles)) invalid(diagnostics, `theme.styles.${name}.styles must be a Tasty style object.`);
|
|
121
|
-
}
|
|
114
|
+
for (const [name, entry] of Object.entries(config.theme?.styles ?? {})) if (!isRecord(entry)) invalid(diagnostics, `theme.styles.${name} must be a Tasty style object.`);
|
|
115
|
+
else if ("mode" in entry) invalid(diagnostics, `theme.styles.${name} must contain only the Tasty style properties to override, without a mode wrapper.`);
|
|
122
116
|
const componentOverrides = config.components?.overrides;
|
|
123
117
|
if (componentOverrides !== void 0 && !isRecord(componentOverrides)) invalid(diagnostics, "components.overrides must be an object.");
|
|
124
118
|
else for (const [name, override] of Object.entries(componentOverrides ?? {})) {
|
package/dist/config/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../../src/config/index.ts"],"sourcesContent":["import type {\n DocsConfig,\n DocsDiagnostic,\n NormalizedDocsConfig,\n} from \"../types.js\";\n\nconst DEFAULT_BRAND = \"#315efb\";\nconst HEAD_KEYS = new Set([\"tag\", \"attrs\", \"content\"]);\nconst ROOT_KEYS = new Set([\n \"site\",\n \"head\",\n \"content\",\n \"navigation\",\n \"theme\",\n \"markdown\",\n \"search\",\n \"components\",\n \"build\",\n]);\n\nconst OBJECT_KEYS: Record<string, Set<string>> = {\n site: new Set([\"title\", \"version\", \"description\", \"url\", \"repository\"]),\n content: new Set([\"sources\", \"allowOutsideRoot\", \"localizeRepositoryLinks\"]),\n markdown: new Set([\n \"stripLeadingBadges\",\n \"rawHtml\",\n \"strictLanguages\",\n \"executablePreviews\",\n \"remarkPlugins\",\n \"rehypePlugins\",\n ]),\n search: new Set([\"enabled\"]),\n components: new Set([\"overrides\"]),\n theme: new Set([\n \"variant\",\n \"brand\",\n \"palette\",\n \"states\",\n \"tokens\",\n \"presets\",\n \"styles\",\n \"contrastLevel\",\n ]),\n build: new Set([\n \"strict\",\n \"ci\",\n \"base\",\n \"cacheDir\",\n \"maxArtifactBytes\",\n \"maxUnpackedBytes\",\n \"maxFiles\",\n \"maxPathDepth\",\n \"maxAssetBytes\",\n ]),\n};\n\nexport class DocsConfigError extends Error {\n readonly diagnostics: DocsDiagnostic[];\n\n constructor(diagnostics: DocsDiagnostic[]) {\n super(diagnostics.map((diagnostic) => diagnostic.message).join(\"\\n\"));\n this.name = \"DocsConfigError\";\n this.diagnostics = diagnostics;\n }\n}\n\nexport function validateConfig(config: DocsConfig): DocsDiagnostic[] {\n const diagnostics: DocsDiagnostic[] = [];\n for (const key of Object.keys(config)) {\n if (!ROOT_KEYS.has(key)) unknown(diagnostics, key);\n }\n for (const [section, keys] of Object.entries(OBJECT_KEYS)) {\n const value = config[section as keyof DocsConfig];\n if (\n value === undefined ||\n Array.isArray(value) ||\n typeof value !== \"object\"\n ) {\n continue;\n }\n for (const key of Object.keys(value)) {\n if (!keys.has(key)) unknown(diagnostics, `${section}.${key}`);\n }\n }\n\n const head = config.head;\n if (head !== undefined && !Array.isArray(head)) {\n invalid(diagnostics, \"head must be an array.\");\n } else {\n for (const [index, entry] of (head ?? []).entries()) {\n if (!isRecord(entry)) {\n invalid(diagnostics, `head[${index}] must be an object.`);\n continue;\n }\n for (const key of Object.keys(entry)) {\n if (!HEAD_KEYS.has(key)) {\n unknown(diagnostics, `head[${index}].${key}`);\n }\n }\n if (typeof entry.tag !== \"string\") {\n invalid(diagnostics, `head[${index}].tag must be a string.`);\n }\n if (entry.attrs !== undefined && !isRecord(entry.attrs)) {\n invalid(diagnostics, `head[${index}].attrs must be an object.`);\n } else {\n for (const [name, value] of Object.entries(entry.attrs ?? {})) {\n if (\n value !== undefined &&\n typeof value !== \"string\" &&\n typeof value !== \"boolean\"\n ) {\n invalid(\n diagnostics,\n `head[${index}].attrs.${name} must be a string or boolean.`,\n );\n }\n }\n }\n if (entry.content !== undefined && typeof entry.content !== \"string\") {\n invalid(diagnostics, `head[${index}].content must be a string.`);\n }\n }\n }\n\n const sources = config.content?.sources ?? [];\n for (const [index, source] of sources.entries()) {\n const variants = [\"file\", \"glob\", \"package\"].filter((key) => key in source);\n if (variants.length !== 1) {\n diagnostics.push({\n code: \"DOCS_CONFIG_INVALID\",\n severity: \"error\",\n message: `content.sources[${index}] must select exactly one of file, glob, or package.`,\n });\n }\n }\n\n const brand = config.theme?.brand;\n if (\n typeof brand === \"object\" &&\n brand !== null &&\n \"contrast\" in brand &&\n !brand.unsafeContrast\n ) {\n const target = brand.contrast?.apca;\n const normal = Array.isArray(target) ? target[0] : target;\n if (typeof normal === \"number\" && normal < 45) {\n diagnostics.push({\n code: \"DOCS_CONFIG_INVALID\",\n severity: \"error\",\n message:\n \"theme.brand.contrast.apca cannot be below 45 without unsafeContrast.\",\n hint: \"Remove the override, use 45 or higher, or explicitly set unsafeContrast: true.\",\n });\n }\n }\n\n for (const [name, entry] of Object.entries(config.theme?.styles ?? {})) {\n if (!isRecord(entry)) {\n invalid(\n diagnostics,\n `theme.styles.${name} must be a Tasty style object.`,\n );\n continue;\n }\n if (\n \"mode\" in entry &&\n entry.mode !== \"extend\" &&\n entry.mode !== \"replace\"\n ) {\n invalid(\n diagnostics,\n `theme.styles.${name}.mode must be \"extend\" or \"replace\".`,\n );\n }\n if (\"mode\" in entry && !isRecord(entry.styles)) {\n invalid(\n diagnostics,\n `theme.styles.${name}.styles must be a Tasty style object.`,\n );\n }\n }\n\n const componentOverrides = config.components?.overrides;\n if (componentOverrides !== undefined && !isRecord(componentOverrides)) {\n invalid(diagnostics, \"components.overrides must be an object.\");\n } else {\n for (const [name, override] of Object.entries(componentOverrides ?? {})) {\n if (typeof override === \"string\") continue;\n if (name === \"Footer\" && override === false) continue;\n invalid(\n diagnostics,\n `components.overrides.${name} must be an Astro component path${name === \"Footer\" ? \" or false\" : \"\"}.`,\n );\n }\n }\n return diagnostics;\n}\n\nfunction unknown(diagnostics: DocsDiagnostic[], path: string): void {\n diagnostics.push({\n code: \"DOCS_CONFIG_UNKNOWN_KEY\",\n severity: \"error\",\n message: `Unknown configuration key \"${path}\".`,\n });\n}\n\nfunction invalid(diagnostics: DocsDiagnostic[], message: string): void {\n diagnostics.push({\n code: \"DOCS_CONFIG_INVALID\",\n severity: \"error\",\n message,\n });\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\nexport function normalizeDocsConfig(\n config: DocsConfig = {},\n): NormalizedDocsConfig {\n const diagnostics = validateConfig(config);\n if (diagnostics.length > 0) throw new DocsConfigError(diagnostics);\n const navigation = Array.isArray(config.navigation)\n ? { items: config.navigation }\n : (config.navigation ?? {});\n\n return {\n site: { ...config.site },\n head: [...(config.head ?? [])],\n content: {\n allowOutsideRoot: false,\n localizeRepositoryLinks: false,\n ...config.content,\n },\n navigation,\n theme: { ...config.theme, brand: config.theme?.brand ?? DEFAULT_BRAND },\n markdown: {\n stripLeadingBadges: true,\n rawHtml: \"sanitize\",\n strictLanguages: false,\n executablePreviews: true,\n ...config.markdown,\n },\n search: { enabled: true, ...config.search },\n components: { ...config.components },\n build: {\n strict: true,\n ci: process.env.CI === \"true\",\n base: \"/\",\n cacheDir: \"\",\n maxArtifactBytes: 25 * 1024 * 1024,\n maxUnpackedBytes: 100 * 1024 * 1024,\n maxFiles: 10_000,\n maxPathDepth: 24,\n maxAssetBytes: 20 * 1024 * 1024,\n ...config.build,\n },\n };\n}\n\nexport function defineDocsConfig<const T extends DocsConfig>(config: T): T {\n const diagnostics = validateConfig(config);\n if (diagnostics.length > 0) throw new DocsConfigError(diagnostics);\n return config;\n}\n\nexport type {\n BrandConfig,\n BuildConfig,\n ComponentStyleConfig,\n ComponentStyles,\n ComponentStylesConfig,\n CookbookComponentName,\n ComponentsConfig,\n ContentConfig,\n DocsConfig,\n DocsSource,\n HeadConfig,\n MarkdownConfig,\n NavigationConfig,\n NavigationItem,\n NavigationTab,\n NormalizedDocsConfig,\n SearchConfig,\n SiteConfig,\n ThemeConfig,\n ThemePaletteConfig,\n ThemeTokens,\n ThemeTokenValue,\n TypographyPreset,\n TypographyPresets,\n} from \"../types.js\";\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../src/config/index.ts"],"sourcesContent":["import type {\n DocsConfig,\n DocsDiagnostic,\n NormalizedDocsConfig,\n} from \"../types.js\";\n\nconst DEFAULT_BRAND = \"#315efb\";\nconst HEAD_KEYS = new Set([\"tag\", \"attrs\", \"content\"]);\nconst ROOT_KEYS = new Set([\n \"site\",\n \"head\",\n \"content\",\n \"navigation\",\n \"theme\",\n \"markdown\",\n \"search\",\n \"components\",\n \"build\",\n]);\n\nconst OBJECT_KEYS: Record<string, Set<string>> = {\n site: new Set([\"title\", \"version\", \"description\", \"url\", \"repository\"]),\n content: new Set([\"sources\", \"allowOutsideRoot\", \"localizeRepositoryLinks\"]),\n markdown: new Set([\n \"stripLeadingBadges\",\n \"rawHtml\",\n \"strictLanguages\",\n \"executablePreviews\",\n \"remarkPlugins\",\n \"rehypePlugins\",\n ]),\n search: new Set([\"enabled\"]),\n components: new Set([\"overrides\"]),\n theme: new Set([\n \"variant\",\n \"brand\",\n \"palette\",\n \"states\",\n \"tokens\",\n \"presets\",\n \"styles\",\n \"contrastLevel\",\n ]),\n build: new Set([\n \"strict\",\n \"ci\",\n \"base\",\n \"cacheDir\",\n \"maxArtifactBytes\",\n \"maxUnpackedBytes\",\n \"maxFiles\",\n \"maxPathDepth\",\n \"maxAssetBytes\",\n ]),\n};\n\nexport class DocsConfigError extends Error {\n readonly diagnostics: DocsDiagnostic[];\n\n constructor(diagnostics: DocsDiagnostic[]) {\n super(diagnostics.map((diagnostic) => diagnostic.message).join(\"\\n\"));\n this.name = \"DocsConfigError\";\n this.diagnostics = diagnostics;\n }\n}\n\nexport function validateConfig(config: DocsConfig): DocsDiagnostic[] {\n const diagnostics: DocsDiagnostic[] = [];\n for (const key of Object.keys(config)) {\n if (!ROOT_KEYS.has(key)) unknown(diagnostics, key);\n }\n for (const [section, keys] of Object.entries(OBJECT_KEYS)) {\n const value = config[section as keyof DocsConfig];\n if (\n value === undefined ||\n Array.isArray(value) ||\n typeof value !== \"object\"\n ) {\n continue;\n }\n for (const key of Object.keys(value)) {\n if (!keys.has(key)) unknown(diagnostics, `${section}.${key}`);\n }\n }\n\n const head = config.head;\n if (head !== undefined && !Array.isArray(head)) {\n invalid(diagnostics, \"head must be an array.\");\n } else {\n for (const [index, entry] of (head ?? []).entries()) {\n if (!isRecord(entry)) {\n invalid(diagnostics, `head[${index}] must be an object.`);\n continue;\n }\n for (const key of Object.keys(entry)) {\n if (!HEAD_KEYS.has(key)) {\n unknown(diagnostics, `head[${index}].${key}`);\n }\n }\n if (typeof entry.tag !== \"string\") {\n invalid(diagnostics, `head[${index}].tag must be a string.`);\n }\n if (entry.attrs !== undefined && !isRecord(entry.attrs)) {\n invalid(diagnostics, `head[${index}].attrs must be an object.`);\n } else {\n for (const [name, value] of Object.entries(entry.attrs ?? {})) {\n if (\n value !== undefined &&\n typeof value !== \"string\" &&\n typeof value !== \"boolean\"\n ) {\n invalid(\n diagnostics,\n `head[${index}].attrs.${name} must be a string or boolean.`,\n );\n }\n }\n }\n if (entry.content !== undefined && typeof entry.content !== \"string\") {\n invalid(diagnostics, `head[${index}].content must be a string.`);\n }\n }\n }\n\n const sources = config.content?.sources ?? [];\n for (const [index, source] of sources.entries()) {\n const variants = [\"file\", \"glob\", \"package\"].filter((key) => key in source);\n if (variants.length !== 1) {\n diagnostics.push({\n code: \"DOCS_CONFIG_INVALID\",\n severity: \"error\",\n message: `content.sources[${index}] must select exactly one of file, glob, or package.`,\n });\n }\n }\n\n const brand = config.theme?.brand;\n if (\n typeof brand === \"object\" &&\n brand !== null &&\n \"contrast\" in brand &&\n !brand.unsafeContrast\n ) {\n const target = brand.contrast?.apca;\n const normal = Array.isArray(target) ? target[0] : target;\n if (typeof normal === \"number\" && normal < 45) {\n diagnostics.push({\n code: \"DOCS_CONFIG_INVALID\",\n severity: \"error\",\n message:\n \"theme.brand.contrast.apca cannot be below 45 without unsafeContrast.\",\n hint: \"Remove the override, use 45 or higher, or explicitly set unsafeContrast: true.\",\n });\n }\n }\n\n for (const [name, entry] of Object.entries(config.theme?.styles ?? {})) {\n if (!isRecord(entry)) {\n invalid(\n diagnostics,\n `theme.styles.${name} must be a Tasty style object.`,\n );\n } else if (\"mode\" in entry) {\n invalid(\n diagnostics,\n `theme.styles.${name} must contain only the Tasty style properties to override, without a mode wrapper.`,\n );\n }\n }\n\n const componentOverrides = config.components?.overrides;\n if (componentOverrides !== undefined && !isRecord(componentOverrides)) {\n invalid(diagnostics, \"components.overrides must be an object.\");\n } else {\n for (const [name, override] of Object.entries(componentOverrides ?? {})) {\n if (typeof override === \"string\") continue;\n if (name === \"Footer\" && override === false) continue;\n invalid(\n diagnostics,\n `components.overrides.${name} must be an Astro component path${name === \"Footer\" ? \" or false\" : \"\"}.`,\n );\n }\n }\n return diagnostics;\n}\n\nfunction unknown(diagnostics: DocsDiagnostic[], path: string): void {\n diagnostics.push({\n code: \"DOCS_CONFIG_UNKNOWN_KEY\",\n severity: \"error\",\n message: `Unknown configuration key \"${path}\".`,\n });\n}\n\nfunction invalid(diagnostics: DocsDiagnostic[], message: string): void {\n diagnostics.push({\n code: \"DOCS_CONFIG_INVALID\",\n severity: \"error\",\n message,\n });\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n return typeof value === \"object\" && value !== null && !Array.isArray(value);\n}\n\nexport function normalizeDocsConfig(\n config: DocsConfig = {},\n): NormalizedDocsConfig {\n const diagnostics = validateConfig(config);\n if (diagnostics.length > 0) throw new DocsConfigError(diagnostics);\n const navigation = Array.isArray(config.navigation)\n ? { items: config.navigation }\n : (config.navigation ?? {});\n\n return {\n site: { ...config.site },\n head: [...(config.head ?? [])],\n content: {\n allowOutsideRoot: false,\n localizeRepositoryLinks: false,\n ...config.content,\n },\n navigation,\n theme: { ...config.theme, brand: config.theme?.brand ?? DEFAULT_BRAND },\n markdown: {\n stripLeadingBadges: true,\n rawHtml: \"sanitize\",\n strictLanguages: false,\n executablePreviews: true,\n ...config.markdown,\n },\n search: { enabled: true, ...config.search },\n components: { ...config.components },\n build: {\n strict: true,\n ci: process.env.CI === \"true\",\n base: \"/\",\n cacheDir: \"\",\n maxArtifactBytes: 25 * 1024 * 1024,\n maxUnpackedBytes: 100 * 1024 * 1024,\n maxFiles: 10_000,\n maxPathDepth: 24,\n maxAssetBytes: 20 * 1024 * 1024,\n ...config.build,\n },\n };\n}\n\nexport function defineDocsConfig<const T extends DocsConfig>(config: T): T {\n const diagnostics = validateConfig(config);\n if (diagnostics.length > 0) throw new DocsConfigError(diagnostics);\n return config;\n}\n\nexport type {\n BrandConfig,\n BuildConfig,\n ComponentStyleConfig,\n ComponentStyles,\n ComponentStylesConfig,\n CookbookComponentName,\n ComponentsConfig,\n ContentConfig,\n DocsConfig,\n DocsSource,\n HeadConfig,\n MarkdownConfig,\n NavigationConfig,\n NavigationItem,\n NavigationTab,\n NormalizedDocsConfig,\n SearchConfig,\n SiteConfig,\n ThemeConfig,\n ThemePaletteConfig,\n ThemeTokens,\n ThemeTokenValue,\n TypographyPreset,\n TypographyPresets,\n} from \"../types.js\";\n"],"mappings":"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"}
|
package/dist/config/schema.json
CHANGED
|
@@ -92,7 +92,10 @@
|
|
|
92
92
|
},
|
|
93
93
|
"styles": {
|
|
94
94
|
"type": "object",
|
|
95
|
-
"additionalProperties": {
|
|
95
|
+
"additionalProperties": {
|
|
96
|
+
"type": "object",
|
|
97
|
+
"propertyNames": { "not": { "const": "mode" } }
|
|
98
|
+
}
|
|
96
99
|
},
|
|
97
100
|
"contrastLevel": {
|
|
98
101
|
"oneOf": [
|
|
@@ -190,20 +193,6 @@
|
|
|
190
193
|
"fontStyle": { "type": ["string", "number"] }
|
|
191
194
|
}
|
|
192
195
|
},
|
|
193
|
-
"componentStyleConfig": {
|
|
194
|
-
"anyOf": [
|
|
195
|
-
{ "type": "object" },
|
|
196
|
-
{
|
|
197
|
-
"type": "object",
|
|
198
|
-
"additionalProperties": false,
|
|
199
|
-
"required": ["mode", "styles"],
|
|
200
|
-
"properties": {
|
|
201
|
-
"mode": { "enum": ["extend", "replace"] },
|
|
202
|
-
"styles": { "type": "object" }
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
]
|
|
206
|
-
},
|
|
207
196
|
"source": {
|
|
208
197
|
"type": "object",
|
|
209
198
|
"oneOf": [
|
package/dist/content/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { _ as DocsConfig, g as DocsAsset, m as CreateDocsGraphOptions, w as DocsRoute, x as DocsGraph, y as DocsEntry } from "../types-De-cvxAJ.js";
|
|
2
2
|
//#region src/content/index.d.ts
|
|
3
3
|
interface DocsLoaderContext {
|
|
4
4
|
store: {
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { A as
|
|
1
|
+
import { A as NavigationPlacement, B as ThemeTokenValue, C as DocsReference, D as MarkdownConfig, E as HeadConfig, F as PackageManifest, H as TypographyPreset, I as SearchConfig, L as SiteConfig, M as NormalizedDocsConfig, N as PackageDiscovery, O as NavigationConfig, P as PackageLockSource, R as ThemeConfig, S as DocsHeading, T as DocsSource, U as TypographyPresets, V as ThemeTokens, _ as DocsConfig, a as ComponentStyleConfig, b as DocsFrontmatter, c as ComponentsConfig, d as CookbookComponentStyles, f as CookbookComponentSubElementName, g as DocsAsset, h as DiagnosticSeverity, i as COOKBOOK_COMPONENT_SUB_ELEMENTS, j as NavigationTab, k as NavigationItem, l as ContentConfig, m as CreateDocsGraphOptions, n as BuildConfig, o as ComponentStyles, p as CookbookLock, r as COOKBOOK_COMPONENT_NAMES, s as ComponentStylesConfig, t as BrandConfig, u as CookbookComponentName, v as DocsDiagnostic, w as DocsRoute, x as DocsGraph, y as DocsEntry, z as ThemePaletteConfig } from "./types-De-cvxAJ.js";
|
|
2
2
|
import { DocsConfigError, defineDocsConfig, normalizeDocsConfig, validateConfig } from "./config/index.js";
|
|
3
3
|
import { createDocsLoader } from "./content/index.js";
|
|
4
4
|
//#region src/graph/index.d.ts
|
|
@@ -30,5 +30,5 @@ declare function validateDocs(graph: DocsGraph): DocsDiagnostic[];
|
|
|
30
30
|
declare function assertValidDocs(graph: DocsGraph): void;
|
|
31
31
|
declare function formatDiagnostics(diagnostics: DocsDiagnostic[], json?: boolean): string;
|
|
32
32
|
//#endregion
|
|
33
|
-
export { type BrandConfig, type BuildConfig, COOKBOOK_COMPONENT_NAMES, type ComponentStyleConfig, type ComponentStyles, type ComponentStylesConfig, type ComponentsConfig, type ContentConfig, type CookbookComponentName, type CookbookLock, type CreateDocsGraphOptions, type DiagnosticSeverity, type DocsAsset, type DocsConfig, DocsConfigError, type DocsDiagnostic, type DocsEntry, type DocsFrontmatter, type DocsGraph, type DocsHeading, type DocsReference, type DocsRoute, type DocsSource, DocsValidationError, type HeadConfig, type MarkdownConfig, type NavigationConfig, type NavigationItem, type NavigationPlacement, type NavigationTab, type NormalizedDocsConfig, type PackageDiscovery, type PackageLockSource, type PackageManifest, type SearchConfig, type SiteConfig, type ThemeConfig, type ThemePaletteConfig, type ThemeTokenValue, type ThemeTokens, type TypographyPreset, type TypographyPresets, assertValidDocs, createDocsGraph, createDocsLoader, defaultLock, defineDocsConfig, discoverPackage, formatDiagnostics, lockForSource, materializePackage, normalizeDocsConfig, normalizeRoute, packageNameFromSpecifier, readDocsLock, resolvePackageLock, routeForPath, validateConfig, validateDocs, validateLock, writeDocsLock };
|
|
33
|
+
export { type BrandConfig, type BuildConfig, COOKBOOK_COMPONENT_NAMES, COOKBOOK_COMPONENT_SUB_ELEMENTS, type ComponentStyleConfig, type ComponentStyles, type ComponentStylesConfig, type ComponentsConfig, type ContentConfig, type CookbookComponentName, type CookbookComponentStyles, type CookbookComponentSubElementName, type CookbookLock, type CreateDocsGraphOptions, type DiagnosticSeverity, type DocsAsset, type DocsConfig, DocsConfigError, type DocsDiagnostic, type DocsEntry, type DocsFrontmatter, type DocsGraph, type DocsHeading, type DocsReference, type DocsRoute, type DocsSource, DocsValidationError, type HeadConfig, type MarkdownConfig, type NavigationConfig, type NavigationItem, type NavigationPlacement, type NavigationTab, type NormalizedDocsConfig, type PackageDiscovery, type PackageLockSource, type PackageManifest, type SearchConfig, type SiteConfig, type ThemeConfig, type ThemePaletteConfig, type ThemeTokenValue, type ThemeTokens, type TypographyPreset, type TypographyPresets, assertValidDocs, createDocsGraph, createDocsLoader, defaultLock, defineDocsConfig, discoverPackage, formatDiagnostics, lockForSource, materializePackage, normalizeDocsConfig, normalizeRoute, packageNameFromSpecifier, readDocsLock, resolvePackageLock, routeForPath, validateConfig, validateDocs, validateLock, writeDocsLock };
|
|
34
34
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { DocsConfigError, defineDocsConfig, normalizeDocsConfig, validateConfig } from "./config/index.js";
|
|
2
2
|
import { _ as writeDocsLock, a as validateDocs, c as routeForPath, d as lockForSource, f as materializePackage, g as validateLock, h as resolvePackageLock, i as formatDiagnostics, l as defaultLock, m as readDocsLock, n as DocsValidationError, o as createDocsGraph, p as packageNameFromSpecifier, r as assertValidDocs, s as normalizeRoute, t as createDocsLoader, u as discoverPackage } from "./content-Bhdv88Pe.js";
|
|
3
3
|
//#region src/types.ts
|
|
4
|
-
/** Cookbook
|
|
4
|
+
/** Cookbook UI surfaces whose default Tasty styles can be customized. */
|
|
5
5
|
const COOKBOOK_COMPONENT_NAMES = [
|
|
6
6
|
"Card",
|
|
7
7
|
"ContrastSelect",
|
|
@@ -11,15 +11,147 @@ const COOKBOOK_COMPONENT_NAMES = [
|
|
|
11
11
|
"Mermaid",
|
|
12
12
|
"MobileMenuFooter",
|
|
13
13
|
"MobileNavigationTabs",
|
|
14
|
+
"MobileTableOfContents",
|
|
14
15
|
"PackageVersion",
|
|
15
16
|
"Preview",
|
|
17
|
+
"Sidebar",
|
|
16
18
|
"Steps",
|
|
17
19
|
"Tabs",
|
|
20
|
+
"TableOfContents",
|
|
18
21
|
"ThemeSelect",
|
|
19
22
|
"TopNavigation",
|
|
20
23
|
"StarlightHeader"
|
|
21
24
|
];
|
|
25
|
+
/** Named Tasty sub-elements available on each configurable Cookbook surface. */
|
|
26
|
+
const COOKBOOK_COMPONENT_SUB_ELEMENTS = {
|
|
27
|
+
Card: [
|
|
28
|
+
"Heading2",
|
|
29
|
+
"Heading3",
|
|
30
|
+
"Paragraph"
|
|
31
|
+
],
|
|
32
|
+
ContrastSelect: [
|
|
33
|
+
"Label",
|
|
34
|
+
"Icon",
|
|
35
|
+
"IconSvg",
|
|
36
|
+
"Select",
|
|
37
|
+
"PickerIcon",
|
|
38
|
+
"Picker",
|
|
39
|
+
"OpenPicker",
|
|
40
|
+
"Option",
|
|
41
|
+
"HoverOption",
|
|
42
|
+
"CheckedOption",
|
|
43
|
+
"Checkmark"
|
|
44
|
+
],
|
|
45
|
+
Footer: [
|
|
46
|
+
"Meta",
|
|
47
|
+
"LoneMetaItem",
|
|
48
|
+
"MetaLink",
|
|
49
|
+
"HoverMetaLink",
|
|
50
|
+
"Credit",
|
|
51
|
+
"CreditLink",
|
|
52
|
+
"HoverCreditLink"
|
|
53
|
+
],
|
|
54
|
+
Logo: ["Svg", "Mark"],
|
|
55
|
+
MarkdownTable: [
|
|
56
|
+
"Table",
|
|
57
|
+
"Cell",
|
|
58
|
+
"LastBodyRowCell",
|
|
59
|
+
"HeaderCell"
|
|
60
|
+
],
|
|
61
|
+
Mermaid: [
|
|
62
|
+
"Diagram",
|
|
63
|
+
"Text",
|
|
64
|
+
"MonoText"
|
|
65
|
+
],
|
|
66
|
+
MobileMenuFooter: ["Social"],
|
|
67
|
+
MobileNavigationTabs: [
|
|
68
|
+
"Label",
|
|
69
|
+
"List",
|
|
70
|
+
"Item",
|
|
71
|
+
"Link",
|
|
72
|
+
"HoverLink",
|
|
73
|
+
"CurrentLink"
|
|
74
|
+
],
|
|
75
|
+
MobileTableOfContents: [
|
|
76
|
+
"Item",
|
|
77
|
+
"Link",
|
|
78
|
+
"LinkLabel",
|
|
79
|
+
"HoverLink",
|
|
80
|
+
"CurrentLink",
|
|
81
|
+
"CurrentIndicator"
|
|
82
|
+
],
|
|
83
|
+
PackageVersion: [],
|
|
84
|
+
Preview: [
|
|
85
|
+
"Caption",
|
|
86
|
+
"Stage",
|
|
87
|
+
"Frame",
|
|
88
|
+
"Code",
|
|
89
|
+
"Summary",
|
|
90
|
+
"Pre"
|
|
91
|
+
],
|
|
92
|
+
Sidebar: [
|
|
93
|
+
"CurrentLink",
|
|
94
|
+
"Content",
|
|
95
|
+
"List",
|
|
96
|
+
"Item",
|
|
97
|
+
"TopLevelSpacing",
|
|
98
|
+
"NestedItem",
|
|
99
|
+
"Control",
|
|
100
|
+
"Summary",
|
|
101
|
+
"GroupLabel",
|
|
102
|
+
"GroupLabelText",
|
|
103
|
+
"Link",
|
|
104
|
+
"LinkLabel",
|
|
105
|
+
"InteractiveControl",
|
|
106
|
+
"SummaryMarker",
|
|
107
|
+
"TopLevelLink"
|
|
108
|
+
],
|
|
109
|
+
Steps: ["Item", "Marker"],
|
|
110
|
+
Tabs: [],
|
|
111
|
+
TableOfContents: [
|
|
112
|
+
"Heading",
|
|
113
|
+
"List",
|
|
114
|
+
"Item",
|
|
115
|
+
"Link",
|
|
116
|
+
"LinkLabel",
|
|
117
|
+
"HoverLink",
|
|
118
|
+
"CurrentLink"
|
|
119
|
+
],
|
|
120
|
+
ThemeSelect: [
|
|
121
|
+
"Label",
|
|
122
|
+
"Icon",
|
|
123
|
+
"IconSvg",
|
|
124
|
+
"Select",
|
|
125
|
+
"PickerIcon",
|
|
126
|
+
"Picker",
|
|
127
|
+
"OpenPicker",
|
|
128
|
+
"Option",
|
|
129
|
+
"HoverOption",
|
|
130
|
+
"CheckedOption",
|
|
131
|
+
"Checkmark"
|
|
132
|
+
],
|
|
133
|
+
TopNavigation: [
|
|
134
|
+
"Scrollbar",
|
|
135
|
+
"Link",
|
|
136
|
+
"HoverLink",
|
|
137
|
+
"CurrentLink",
|
|
138
|
+
"ActiveIndicator"
|
|
139
|
+
],
|
|
140
|
+
StarlightHeader: [
|
|
141
|
+
"Primary",
|
|
142
|
+
"TitleAndSearch",
|
|
143
|
+
"Title",
|
|
144
|
+
"Logo",
|
|
145
|
+
"SiteTitle",
|
|
146
|
+
"Search",
|
|
147
|
+
"SearchElement",
|
|
148
|
+
"Tools",
|
|
149
|
+
"ToolItem",
|
|
150
|
+
"Social",
|
|
151
|
+
"MobileTheme"
|
|
152
|
+
]
|
|
153
|
+
};
|
|
22
154
|
//#endregion
|
|
23
|
-
export { COOKBOOK_COMPONENT_NAMES, DocsConfigError, DocsValidationError, assertValidDocs, createDocsGraph, createDocsLoader, defaultLock, defineDocsConfig, discoverPackage, formatDiagnostics, lockForSource, materializePackage, normalizeDocsConfig, normalizeRoute, packageNameFromSpecifier, readDocsLock, resolvePackageLock, routeForPath, validateConfig, validateDocs, validateLock, writeDocsLock };
|
|
155
|
+
export { COOKBOOK_COMPONENT_NAMES, COOKBOOK_COMPONENT_SUB_ELEMENTS, DocsConfigError, DocsValidationError, assertValidDocs, createDocsGraph, createDocsLoader, defaultLock, defineDocsConfig, discoverPackage, formatDiagnostics, lockForSource, materializePackage, normalizeDocsConfig, normalizeRoute, packageNameFromSpecifier, readDocsLock, resolvePackageLock, routeForPath, validateConfig, validateDocs, validateLock, writeDocsLock };
|
|
24
156
|
|
|
25
157
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":[],"sources":["../src/types.ts"],"sourcesContent":["import type { GlazeColorValue } from \"@tenphi/glaze\";\nimport type { Root } from \"mdast\";\n\nexport type DiagnosticSeverity = \"warning\" | \"error\";\n\nexport interface DocsDiagnostic {\n code: string;\n severity: DiagnosticSeverity;\n message: string;\n file?: string;\n line?: number;\n column?: number;\n hint?: string;\n related?: Array<{ file: string; line?: number; message: string }>;\n}\n\nexport interface SiteConfig {\n title?: string;\n /** Version of the documented package, rendered beside the site title. */\n version?: string;\n description?: string;\n url?: string;\n repository?: string;\n}\n\n/** A custom HTML element rendered in the document head. */\nexport interface HeadConfig {\n tag: string;\n attrs?: Record<string, string | boolean | undefined>;\n content?: string;\n}\n\nexport interface NavigationPlacement {\n label?: string;\n order?: number;\n group?: string;\n}\n\nexport type DocsSource =\n | {\n file: string;\n route?: string;\n title?: string;\n description?: string;\n navigation?: false | NavigationPlacement;\n }\n | {\n glob: string | string[];\n base?: string;\n routeBase?: string;\n exclude?: string[];\n navigation?: \"auto\" | false;\n }\n | {\n package: string;\n include?: string[];\n exclude?: string[];\n index?: string;\n routeBase?: string;\n trust?: \"markdown\" | \"mdx\";\n };\n\nexport interface ContentConfig {\n sources?: DocsSource[];\n allowOutsideRoot?: boolean;\n localizeRepositoryLinks?: boolean;\n}\n\nexport type NavigationItem =\n | string\n | { label: string; items: NavigationItem[] }\n | { label: string; autogenerate: { directory: string } }\n | { label: string; link: string };\n\nexport interface NavigationTab {\n label: string;\n link: string;\n /** Sidebar tree shown while this tab is active. */\n items?: NavigationItem[];\n}\n\nexport interface NavigationConfig {\n items?: NavigationItem[];\n /** Optional primary navigation rendered as a compact row below the header. */\n tabs?: NavigationTab[];\n}\n\nexport type BrandConfig =\n | GlazeColorValue\n | {\n from: GlazeColorValue;\n contrast?: { apca: number | [number, number] };\n unsafeContrast?: boolean;\n };\n\nexport type ThemeTokenValue = string | number;\n\n/**\n * Tasty design tokens. `$name` is emitted as `--name`; existing `--name`\n * custom-property keys remain supported for compatibility.\n */\nexport interface ThemeTokens {\n $gap?: ThemeTokenValue;\n $radius?: ThemeTokenValue;\n \"$card-radius\"?: ThemeTokenValue;\n \"$border-width\"?: ThemeTokenValue;\n \"$outline-width\"?: ThemeTokenValue;\n \"$outline-offset\"?: ThemeTokenValue;\n \"$layout-width\"?: ThemeTokenValue;\n \"$content-width\"?: ThemeTokenValue;\n \"$sidebar-width\"?: ThemeTokenValue;\n \"$control-height\"?: ThemeTokenValue;\n [name: `$${string}`]: ThemeTokenValue | undefined;\n [customProperty: `--${string}`]: ThemeTokenValue | undefined;\n}\n\nexport interface TypographyPreset {\n fontFamily?: string;\n fontSize?: ThemeTokenValue;\n lineHeight?: ThemeTokenValue;\n letterSpacing?: ThemeTokenValue;\n fontWeight?: ThemeTokenValue;\n boldFontWeight?: ThemeTokenValue;\n iconSize?: ThemeTokenValue;\n textTransform?: ThemeTokenValue;\n fontStyle?: ThemeTokenValue;\n}\n\n/** Built-in presets can be overridden and additional Tasty presets may be added. */\nexport interface TypographyPresets {\n body?: TypographyPreset;\n heading?: TypographyPreset;\n h1?: TypographyPreset;\n h2?: TypographyPreset;\n h3?: TypographyPreset;\n h4?: TypographyPreset;\n h5?: TypographyPreset;\n h6?: TypographyPreset;\n navigation?: TypographyPreset;\n small?: TypographyPreset;\n code?: TypographyPreset;\n [name: string]: TypographyPreset | undefined;\n}\n\n/** Semantic palette inputs. Glaze resolves every value for all appearance modes. */\nexport interface ThemePaletteConfig {\n /** Light-scheme page surface; dark and high-contrast values adapt. */\n surface?: GlazeColorValue;\n /** Primary reading text seed, resolved against `surface`. */\n text?: GlazeColorValue;\n /** Secondary text seed, resolved against `surface`. */\n textSoft?: GlazeColorValue;\n}\n\n/** Cookbook components whose default Tasty styles can be customized. */\nexport const COOKBOOK_COMPONENT_NAMES = [\n \"Card\",\n \"ContrastSelect\",\n \"Footer\",\n \"Logo\",\n \"MarkdownTable\",\n \"Mermaid\",\n \"MobileMenuFooter\",\n \"MobileNavigationTabs\",\n \"PackageVersion\",\n \"Preview\",\n \"Steps\",\n \"Tabs\",\n \"ThemeSelect\",\n \"TopNavigation\",\n \"StarlightHeader\",\n] as const;\n\nexport type CookbookComponentName = (typeof COOKBOOK_COMPONENT_NAMES)[number];\n\n/** A serializable Tasty style object. */\nexport type ComponentStyles = Record<string, unknown>;\n\n/**\n * Plain style objects extend Cookbook defaults. Use `mode: \"replace\"` to\n * discard a component's defaults and supply the complete style object.\n */\nexport type ComponentStyleConfig =\n | ComponentStyles\n | {\n mode: \"extend\" | \"replace\";\n styles: ComponentStyles;\n };\n\nexport type ComponentStylesConfig = Partial<\n Record<CookbookComponentName, ComponentStyleConfig>\n> &\n Record<string, ComponentStyleConfig | undefined>;\n\nexport interface ThemeConfig {\n variant?: string;\n brand?: BrandConfig;\n palette?: ThemePaletteConfig;\n states?: Record<string, string>;\n tokens?: ThemeTokens;\n presets?: TypographyPresets;\n /** Direct Tasty component styles, keyed by Cookbook component name. */\n styles?: ComponentStylesConfig;\n contrastLevel?: number | \"auto\";\n}\n\nexport interface MarkdownConfig {\n stripLeadingBadges?: boolean;\n rawHtml?: \"sanitize\" | \"allow\" | \"reject\";\n strictLanguages?: boolean;\n executablePreviews?: boolean;\n remarkPlugins?: unknown[];\n rehypePlugins?: unknown[];\n}\n\nexport interface SearchConfig {\n enabled?: boolean;\n}\n\nexport interface ComponentsConfig {\n /** Astro component paths keyed by Starlight component name. `Footer` also accepts `false`. */\n overrides?: Record<string, string | false>;\n}\n\nexport interface BuildConfig {\n strict?: boolean;\n ci?: boolean;\n base?: string;\n cacheDir?: string;\n maxArtifactBytes?: number;\n maxUnpackedBytes?: number;\n maxFiles?: number;\n maxPathDepth?: number;\n maxAssetBytes?: number;\n}\n\nexport interface DocsConfig {\n site?: SiteConfig;\n head?: HeadConfig[];\n content?: ContentConfig;\n navigation?: NavigationConfig | NavigationItem[];\n theme?: ThemeConfig;\n markdown?: MarkdownConfig;\n search?: SearchConfig;\n components?: ComponentsConfig;\n build?: BuildConfig;\n}\n\nexport interface NormalizedDocsConfig {\n site: SiteConfig;\n head: HeadConfig[];\n content: Required<\n Pick<ContentConfig, \"allowOutsideRoot\" | \"localizeRepositoryLinks\">\n > &\n ContentConfig;\n navigation: NavigationConfig;\n theme: ThemeConfig & { brand: BrandConfig };\n markdown: Required<\n Pick<\n MarkdownConfig,\n | \"stripLeadingBadges\"\n | \"rawHtml\"\n | \"strictLanguages\"\n | \"executablePreviews\"\n >\n > &\n MarkdownConfig;\n search: Required<SearchConfig>;\n components: ComponentsConfig;\n build: Required<BuildConfig>;\n}\n\nexport interface DocsFrontmatter {\n title?: string;\n description?: string;\n slug?: string;\n draft?: boolean;\n sidebar?: false | { label?: string; order?: number; group?: string };\n toc?: false | { minHeadingLevel?: number; maxHeadingLevel?: number };\n editUrl?: false | string;\n prev?: false | string;\n next?: false | string;\n search?: boolean;\n head?: Array<Record<string, unknown>>;\n}\n\nexport interface DocsHeading {\n depth: number;\n text: string;\n slug: string;\n line?: number;\n}\n\nexport interface DocsReference {\n original: string;\n resolved?: string;\n targetSource?: string;\n fragment?: string;\n line?: number;\n}\n\nexport interface DocsAsset extends DocsReference {\n sourcePath?: string;\n publicPath?: string;\n hash?: string;\n bytes?: number;\n}\n\nexport interface DocsEntry {\n id: string;\n sourcePath: string;\n absolutePath: string;\n sourceRoot: string;\n route: string;\n title: string;\n description?: string;\n frontmatter: DocsFrontmatter;\n headings: DocsHeading[];\n body: string;\n transformedBody: string;\n ast: Root;\n links: DocsReference[];\n assets: DocsAsset[];\n trust: \"markdown\" | \"mdx\";\n package?: { requested: string; resolved: string };\n}\n\nexport interface DocsRoute {\n route: string;\n entryId: string;\n sourcePath: string;\n title: string;\n}\n\nexport interface DocsGraph {\n root: string;\n config: NormalizedDocsConfig;\n entries: DocsEntry[];\n routes: DocsRoute[];\n assets: DocsAsset[];\n diagnostics: DocsDiagnostic[];\n entryByRoute(route: string): DocsEntry | undefined;\n entryBySource(sourcePath: string): DocsEntry | undefined;\n}\n\nexport interface PackageLockSource {\n requested: string;\n resolved: string;\n registry: string;\n integrity: string;\n vendored?: string;\n}\n\nexport interface CookbookLock {\n schemaVersion: 1;\n sources: PackageLockSource[];\n}\n\nexport interface PackageManifest {\n name: string;\n version: string;\n description?: string;\n homepage?: string;\n repository?: string | { type?: string; url?: string; directory?: string };\n cookbook?: {\n index?: string;\n include?: string[];\n exclude?: string[];\n theme?: { brand?: BrandConfig };\n };\n _integrity?: string;\n _resolved?: string;\n}\n\nexport interface PackageDiscovery {\n root: string;\n manifest: PackageManifest;\n home?: string;\n pages: string[];\n assets: string[];\n}\n\nexport interface CreateDocsGraphOptions {\n root?: string;\n config?: DocsConfig;\n lock?: CookbookLock;\n}\n"],"mappings":";;;;AA2JA,MAAa,2BAA2B;CACtC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF"}
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../src/types.ts"],"sourcesContent":["import type { GlazeColorValue } from \"@tenphi/glaze\";\nimport type { Root } from \"mdast\";\n\nexport type DiagnosticSeverity = \"warning\" | \"error\";\n\nexport interface DocsDiagnostic {\n code: string;\n severity: DiagnosticSeverity;\n message: string;\n file?: string;\n line?: number;\n column?: number;\n hint?: string;\n related?: Array<{ file: string; line?: number; message: string }>;\n}\n\nexport interface SiteConfig {\n title?: string;\n /** Version of the documented package, rendered beside the site title. */\n version?: string;\n description?: string;\n url?: string;\n repository?: string;\n}\n\n/** A custom HTML element rendered in the document head. */\nexport interface HeadConfig {\n tag: string;\n attrs?: Record<string, string | boolean | undefined>;\n content?: string;\n}\n\nexport interface NavigationPlacement {\n label?: string;\n order?: number;\n group?: string;\n}\n\nexport type DocsSource =\n | {\n file: string;\n route?: string;\n title?: string;\n description?: string;\n navigation?: false | NavigationPlacement;\n }\n | {\n glob: string | string[];\n base?: string;\n routeBase?: string;\n exclude?: string[];\n navigation?: \"auto\" | false;\n }\n | {\n package: string;\n include?: string[];\n exclude?: string[];\n index?: string;\n routeBase?: string;\n trust?: \"markdown\" | \"mdx\";\n };\n\nexport interface ContentConfig {\n sources?: DocsSource[];\n allowOutsideRoot?: boolean;\n localizeRepositoryLinks?: boolean;\n}\n\nexport type NavigationItem =\n | string\n | { label: string; items: NavigationItem[] }\n | { label: string; autogenerate: { directory: string } }\n | { label: string; link: string };\n\nexport interface NavigationTab {\n label: string;\n link: string;\n /** Sidebar tree shown while this tab is active. */\n items?: NavigationItem[];\n}\n\nexport interface NavigationConfig {\n items?: NavigationItem[];\n /** Optional primary navigation rendered as a compact row below the header. */\n tabs?: NavigationTab[];\n}\n\nexport type BrandConfig =\n | GlazeColorValue\n | {\n from: GlazeColorValue;\n contrast?: { apca: number | [number, number] };\n unsafeContrast?: boolean;\n };\n\nexport type ThemeTokenValue = string | number;\n\n/**\n * Tasty design tokens. `$name` is emitted as `--name`; existing `--name`\n * custom-property keys remain supported for compatibility.\n */\nexport interface ThemeTokens {\n $gap?: ThemeTokenValue;\n $radius?: ThemeTokenValue;\n \"$card-radius\"?: ThemeTokenValue;\n \"$border-width\"?: ThemeTokenValue;\n \"$outline-width\"?: ThemeTokenValue;\n \"$outline-offset\"?: ThemeTokenValue;\n \"$layout-width\"?: ThemeTokenValue;\n \"$content-width\"?: ThemeTokenValue;\n \"$sidebar-width\"?: ThemeTokenValue;\n \"$control-height\"?: ThemeTokenValue;\n [name: `$${string}`]: ThemeTokenValue | undefined;\n [customProperty: `--${string}`]: ThemeTokenValue | undefined;\n}\n\nexport interface TypographyPreset {\n fontFamily?: string;\n fontSize?: ThemeTokenValue;\n lineHeight?: ThemeTokenValue;\n letterSpacing?: ThemeTokenValue;\n fontWeight?: ThemeTokenValue;\n boldFontWeight?: ThemeTokenValue;\n iconSize?: ThemeTokenValue;\n textTransform?: ThemeTokenValue;\n fontStyle?: ThemeTokenValue;\n}\n\n/** Built-in presets can be overridden and additional Tasty presets may be added. */\nexport interface TypographyPresets {\n body?: TypographyPreset;\n heading?: TypographyPreset;\n h1?: TypographyPreset;\n h2?: TypographyPreset;\n h3?: TypographyPreset;\n h4?: TypographyPreset;\n h5?: TypographyPreset;\n h6?: TypographyPreset;\n navigation?: TypographyPreset;\n small?: TypographyPreset;\n code?: TypographyPreset;\n [name: string]: TypographyPreset | undefined;\n}\n\n/** Semantic palette inputs. Glaze resolves every value for all appearance modes. */\nexport interface ThemePaletteConfig {\n /** Light-scheme page surface; dark and high-contrast values adapt. */\n surface?: GlazeColorValue;\n /** Primary reading text seed, resolved against `surface`. */\n text?: GlazeColorValue;\n /** Secondary text seed, resolved against `surface`. */\n textSoft?: GlazeColorValue;\n}\n\n/** Cookbook UI surfaces whose default Tasty styles can be customized. */\nexport const COOKBOOK_COMPONENT_NAMES = [\n \"Card\",\n \"ContrastSelect\",\n \"Footer\",\n \"Logo\",\n \"MarkdownTable\",\n \"Mermaid\",\n \"MobileMenuFooter\",\n \"MobileNavigationTabs\",\n \"MobileTableOfContents\",\n \"PackageVersion\",\n \"Preview\",\n \"Sidebar\",\n \"Steps\",\n \"Tabs\",\n \"TableOfContents\",\n \"ThemeSelect\",\n \"TopNavigation\",\n \"StarlightHeader\",\n] as const;\n\nexport type CookbookComponentName = (typeof COOKBOOK_COMPONENT_NAMES)[number];\n\n/** Named Tasty sub-elements available on each configurable Cookbook surface. */\nexport const COOKBOOK_COMPONENT_SUB_ELEMENTS = {\n Card: [\"Heading2\", \"Heading3\", \"Paragraph\"],\n ContrastSelect: [\n \"Label\",\n \"Icon\",\n \"IconSvg\",\n \"Select\",\n \"PickerIcon\",\n \"Picker\",\n \"OpenPicker\",\n \"Option\",\n \"HoverOption\",\n \"CheckedOption\",\n \"Checkmark\",\n ],\n Footer: [\n \"Meta\",\n \"LoneMetaItem\",\n \"MetaLink\",\n \"HoverMetaLink\",\n \"Credit\",\n \"CreditLink\",\n \"HoverCreditLink\",\n ],\n Logo: [\"Svg\", \"Mark\"],\n MarkdownTable: [\"Table\", \"Cell\", \"LastBodyRowCell\", \"HeaderCell\"],\n Mermaid: [\"Diagram\", \"Text\", \"MonoText\"],\n MobileMenuFooter: [\"Social\"],\n MobileNavigationTabs: [\n \"Label\",\n \"List\",\n \"Item\",\n \"Link\",\n \"HoverLink\",\n \"CurrentLink\",\n ],\n MobileTableOfContents: [\n \"Item\",\n \"Link\",\n \"LinkLabel\",\n \"HoverLink\",\n \"CurrentLink\",\n \"CurrentIndicator\",\n ],\n PackageVersion: [],\n Preview: [\"Caption\", \"Stage\", \"Frame\", \"Code\", \"Summary\", \"Pre\"],\n Sidebar: [\n \"CurrentLink\",\n \"Content\",\n \"List\",\n \"Item\",\n \"TopLevelSpacing\",\n \"NestedItem\",\n \"Control\",\n \"Summary\",\n \"GroupLabel\",\n \"GroupLabelText\",\n \"Link\",\n \"LinkLabel\",\n \"InteractiveControl\",\n \"SummaryMarker\",\n \"TopLevelLink\",\n ],\n Steps: [\"Item\", \"Marker\"],\n Tabs: [],\n TableOfContents: [\n \"Heading\",\n \"List\",\n \"Item\",\n \"Link\",\n \"LinkLabel\",\n \"HoverLink\",\n \"CurrentLink\",\n ],\n ThemeSelect: [\n \"Label\",\n \"Icon\",\n \"IconSvg\",\n \"Select\",\n \"PickerIcon\",\n \"Picker\",\n \"OpenPicker\",\n \"Option\",\n \"HoverOption\",\n \"CheckedOption\",\n \"Checkmark\",\n ],\n TopNavigation: [\n \"Scrollbar\",\n \"Link\",\n \"HoverLink\",\n \"CurrentLink\",\n \"ActiveIndicator\",\n ],\n StarlightHeader: [\n \"Primary\",\n \"TitleAndSearch\",\n \"Title\",\n \"Logo\",\n \"SiteTitle\",\n \"Search\",\n \"SearchElement\",\n \"Tools\",\n \"ToolItem\",\n \"Social\",\n \"MobileTheme\",\n ],\n} as const satisfies Record<CookbookComponentName, readonly string[]>;\n\nexport type CookbookComponentSubElementName<\n Name extends CookbookComponentName,\n> = (typeof COOKBOOK_COMPONENT_SUB_ELEMENTS)[Name][number];\n\n/** A serializable partial Tasty style object, merged into the base internally. */\nexport type ComponentStyles = Record<string, unknown> & { mode?: never };\n\n/** Style properties supplied by the user to override Cookbook defaults. */\nexport type ComponentStyleConfig = ComponentStyles;\n\n/** A component override with typed suggestions for its named sub-elements. */\nexport type CookbookComponentStyles<Name extends CookbookComponentName> =\n ComponentStyles &\n Partial<Record<CookbookComponentSubElementName<Name>, ComponentStyles>>;\n\nexport type ComponentStylesConfig = {\n [Name in CookbookComponentName]?: CookbookComponentStyles<Name>;\n} & Record<string, ComponentStyleConfig | undefined>;\n\nexport interface ThemeConfig {\n variant?: string;\n brand?: BrandConfig;\n palette?: ThemePaletteConfig;\n states?: Record<string, string>;\n tokens?: ThemeTokens;\n presets?: TypographyPresets;\n /** Tasty UI styles, keyed by Cookbook component or bridge name. */\n styles?: ComponentStylesConfig;\n contrastLevel?: number | \"auto\";\n}\n\nexport interface MarkdownConfig {\n stripLeadingBadges?: boolean;\n rawHtml?: \"sanitize\" | \"allow\" | \"reject\";\n strictLanguages?: boolean;\n executablePreviews?: boolean;\n remarkPlugins?: unknown[];\n rehypePlugins?: unknown[];\n}\n\nexport interface SearchConfig {\n enabled?: boolean;\n}\n\nexport interface ComponentsConfig {\n /** Astro component paths keyed by Starlight component name. `Footer` also accepts `false`. */\n overrides?: Record<string, string | false>;\n}\n\nexport interface BuildConfig {\n strict?: boolean;\n ci?: boolean;\n base?: string;\n cacheDir?: string;\n maxArtifactBytes?: number;\n maxUnpackedBytes?: number;\n maxFiles?: number;\n maxPathDepth?: number;\n maxAssetBytes?: number;\n}\n\nexport interface DocsConfig {\n site?: SiteConfig;\n head?: HeadConfig[];\n content?: ContentConfig;\n navigation?: NavigationConfig | NavigationItem[];\n theme?: ThemeConfig;\n markdown?: MarkdownConfig;\n search?: SearchConfig;\n components?: ComponentsConfig;\n build?: BuildConfig;\n}\n\nexport interface NormalizedDocsConfig {\n site: SiteConfig;\n head: HeadConfig[];\n content: Required<\n Pick<ContentConfig, \"allowOutsideRoot\" | \"localizeRepositoryLinks\">\n > &\n ContentConfig;\n navigation: NavigationConfig;\n theme: ThemeConfig & { brand: BrandConfig };\n markdown: Required<\n Pick<\n MarkdownConfig,\n | \"stripLeadingBadges\"\n | \"rawHtml\"\n | \"strictLanguages\"\n | \"executablePreviews\"\n >\n > &\n MarkdownConfig;\n search: Required<SearchConfig>;\n components: ComponentsConfig;\n build: Required<BuildConfig>;\n}\n\nexport interface DocsFrontmatter {\n title?: string;\n description?: string;\n slug?: string;\n draft?: boolean;\n sidebar?: false | { label?: string; order?: number; group?: string };\n toc?: false | { minHeadingLevel?: number; maxHeadingLevel?: number };\n editUrl?: false | string;\n prev?: false | string;\n next?: false | string;\n search?: boolean;\n head?: Array<Record<string, unknown>>;\n}\n\nexport interface DocsHeading {\n depth: number;\n text: string;\n slug: string;\n line?: number;\n}\n\nexport interface DocsReference {\n original: string;\n resolved?: string;\n targetSource?: string;\n fragment?: string;\n line?: number;\n}\n\nexport interface DocsAsset extends DocsReference {\n sourcePath?: string;\n publicPath?: string;\n hash?: string;\n bytes?: number;\n}\n\nexport interface DocsEntry {\n id: string;\n sourcePath: string;\n absolutePath: string;\n sourceRoot: string;\n route: string;\n title: string;\n description?: string;\n frontmatter: DocsFrontmatter;\n headings: DocsHeading[];\n body: string;\n transformedBody: string;\n ast: Root;\n links: DocsReference[];\n assets: DocsAsset[];\n trust: \"markdown\" | \"mdx\";\n package?: { requested: string; resolved: string };\n}\n\nexport interface DocsRoute {\n route: string;\n entryId: string;\n sourcePath: string;\n title: string;\n}\n\nexport interface DocsGraph {\n root: string;\n config: NormalizedDocsConfig;\n entries: DocsEntry[];\n routes: DocsRoute[];\n assets: DocsAsset[];\n diagnostics: DocsDiagnostic[];\n entryByRoute(route: string): DocsEntry | undefined;\n entryBySource(sourcePath: string): DocsEntry | undefined;\n}\n\nexport interface PackageLockSource {\n requested: string;\n resolved: string;\n registry: string;\n integrity: string;\n vendored?: string;\n}\n\nexport interface CookbookLock {\n schemaVersion: 1;\n sources: PackageLockSource[];\n}\n\nexport interface PackageManifest {\n name: string;\n version: string;\n description?: string;\n homepage?: string;\n repository?: string | { type?: string; url?: string; directory?: string };\n cookbook?: {\n index?: string;\n include?: string[];\n exclude?: string[];\n theme?: { brand?: BrandConfig };\n };\n _integrity?: string;\n _resolved?: string;\n}\n\nexport interface PackageDiscovery {\n root: string;\n manifest: PackageManifest;\n home?: string;\n pages: string[];\n assets: string[];\n}\n\nexport interface CreateDocsGraphOptions {\n root?: string;\n config?: DocsConfig;\n lock?: CookbookLock;\n}\n"],"mappings":";;;;AA2JA,MAAa,2BAA2B;CACtC;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;;AAKA,MAAa,kCAAkC;CAC7C,MAAM;EAAC;EAAY;EAAY;CAAW;CAC1C,gBAAgB;EACd;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,QAAQ;EACN;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,MAAM,CAAC,OAAO,MAAM;CACpB,eAAe;EAAC;EAAS;EAAQ;EAAmB;CAAY;CAChE,SAAS;EAAC;EAAW;EAAQ;CAAU;CACvC,kBAAkB,CAAC,QAAQ;CAC3B,sBAAsB;EACpB;EACA;EACA;EACA;EACA;EACA;CACF;CACA,uBAAuB;EACrB;EACA;EACA;EACA;EACA;EACA;CACF;CACA,gBAAgB,CAAC;CACjB,SAAS;EAAC;EAAW;EAAS;EAAS;EAAQ;EAAW;CAAK;CAC/D,SAAS;EACP;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,OAAO,CAAC,QAAQ,QAAQ;CACxB,MAAM,CAAC;CACP,iBAAiB;EACf;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,aAAa;EACX;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;CACA,eAAe;EACb;EACA;EACA;EACA;EACA;CACF;CACA,iBAAiB;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;CACF;AACF"}
|
package/dist/markdown/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { G as
|
|
1
|
+
import { G as Heading, J as PhrasingContent, K as Link, S as DocsHeading, W as Content, Y as Root, q as Paragraph } from "../types-De-cvxAJ.js";
|
|
2
2
|
//#region src/markdown/index.d.ts
|
|
3
3
|
interface ParsedMarkdown {
|
|
4
4
|
ast: Root;
|
|
@@ -1182,20 +1182,40 @@ interface ThemePaletteConfig {
|
|
|
1182
1182
|
/** Secondary text seed, resolved against `surface`. */
|
|
1183
1183
|
textSoft?: GlazeColorValue;
|
|
1184
1184
|
}
|
|
1185
|
-
/** Cookbook
|
|
1186
|
-
declare const COOKBOOK_COMPONENT_NAMES: readonly ["Card", "ContrastSelect", "Footer", "Logo", "MarkdownTable", "Mermaid", "MobileMenuFooter", "MobileNavigationTabs", "PackageVersion", "Preview", "Steps", "Tabs", "ThemeSelect", "TopNavigation", "StarlightHeader"];
|
|
1185
|
+
/** Cookbook UI surfaces whose default Tasty styles can be customized. */
|
|
1186
|
+
declare const COOKBOOK_COMPONENT_NAMES: readonly ["Card", "ContrastSelect", "Footer", "Logo", "MarkdownTable", "Mermaid", "MobileMenuFooter", "MobileNavigationTabs", "MobileTableOfContents", "PackageVersion", "Preview", "Sidebar", "Steps", "Tabs", "TableOfContents", "ThemeSelect", "TopNavigation", "StarlightHeader"];
|
|
1187
1187
|
type CookbookComponentName = (typeof COOKBOOK_COMPONENT_NAMES)[number];
|
|
1188
|
-
/**
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1188
|
+
/** Named Tasty sub-elements available on each configurable Cookbook surface. */
|
|
1189
|
+
declare const COOKBOOK_COMPONENT_SUB_ELEMENTS: {
|
|
1190
|
+
readonly Card: readonly ["Heading2", "Heading3", "Paragraph"];
|
|
1191
|
+
readonly ContrastSelect: readonly ["Label", "Icon", "IconSvg", "Select", "PickerIcon", "Picker", "OpenPicker", "Option", "HoverOption", "CheckedOption", "Checkmark"];
|
|
1192
|
+
readonly Footer: readonly ["Meta", "LoneMetaItem", "MetaLink", "HoverMetaLink", "Credit", "CreditLink", "HoverCreditLink"];
|
|
1193
|
+
readonly Logo: readonly ["Svg", "Mark"];
|
|
1194
|
+
readonly MarkdownTable: readonly ["Table", "Cell", "LastBodyRowCell", "HeaderCell"];
|
|
1195
|
+
readonly Mermaid: readonly ["Diagram", "Text", "MonoText"];
|
|
1196
|
+
readonly MobileMenuFooter: readonly ["Social"];
|
|
1197
|
+
readonly MobileNavigationTabs: readonly ["Label", "List", "Item", "Link", "HoverLink", "CurrentLink"];
|
|
1198
|
+
readonly MobileTableOfContents: readonly ["Item", "Link", "LinkLabel", "HoverLink", "CurrentLink", "CurrentIndicator"];
|
|
1199
|
+
readonly PackageVersion: readonly [];
|
|
1200
|
+
readonly Preview: readonly ["Caption", "Stage", "Frame", "Code", "Summary", "Pre"];
|
|
1201
|
+
readonly Sidebar: readonly ["CurrentLink", "Content", "List", "Item", "TopLevelSpacing", "NestedItem", "Control", "Summary", "GroupLabel", "GroupLabelText", "Link", "LinkLabel", "InteractiveControl", "SummaryMarker", "TopLevelLink"];
|
|
1202
|
+
readonly Steps: readonly ["Item", "Marker"];
|
|
1203
|
+
readonly Tabs: readonly [];
|
|
1204
|
+
readonly TableOfContents: readonly ["Heading", "List", "Item", "Link", "LinkLabel", "HoverLink", "CurrentLink"];
|
|
1205
|
+
readonly ThemeSelect: readonly ["Label", "Icon", "IconSvg", "Select", "PickerIcon", "Picker", "OpenPicker", "Option", "HoverOption", "CheckedOption", "Checkmark"];
|
|
1206
|
+
readonly TopNavigation: readonly ["Scrollbar", "Link", "HoverLink", "CurrentLink", "ActiveIndicator"];
|
|
1207
|
+
readonly StarlightHeader: readonly ["Primary", "TitleAndSearch", "Title", "Logo", "SiteTitle", "Search", "SearchElement", "Tools", "ToolItem", "Social", "MobileTheme"];
|
|
1208
|
+
};
|
|
1209
|
+
type CookbookComponentSubElementName<Name extends CookbookComponentName> = (typeof COOKBOOK_COMPONENT_SUB_ELEMENTS)[Name][number];
|
|
1210
|
+
/** A serializable partial Tasty style object, merged into the base internally. */
|
|
1211
|
+
type ComponentStyles = Record<string, unknown> & {
|
|
1212
|
+
mode?: never;
|
|
1197
1213
|
};
|
|
1198
|
-
|
|
1214
|
+
/** Style properties supplied by the user to override Cookbook defaults. */
|
|
1215
|
+
type ComponentStyleConfig = ComponentStyles;
|
|
1216
|
+
/** A component override with typed suggestions for its named sub-elements. */
|
|
1217
|
+
type CookbookComponentStyles<Name extends CookbookComponentName> = ComponentStyles & Partial<Record<CookbookComponentSubElementName<Name>, ComponentStyles>>;
|
|
1218
|
+
type ComponentStylesConfig = { [Name in CookbookComponentName]?: CookbookComponentStyles<Name>; } & Record<string, ComponentStyleConfig | undefined>;
|
|
1199
1219
|
interface ThemeConfig {
|
|
1200
1220
|
variant?: string;
|
|
1201
1221
|
brand?: BrandConfig;
|
|
@@ -1203,7 +1223,7 @@ interface ThemeConfig {
|
|
|
1203
1223
|
states?: Record<string, string>;
|
|
1204
1224
|
tokens?: ThemeTokens;
|
|
1205
1225
|
presets?: TypographyPresets;
|
|
1206
|
-
/**
|
|
1226
|
+
/** Tasty UI styles, keyed by Cookbook component or bridge name. */
|
|
1207
1227
|
styles?: ComponentStylesConfig;
|
|
1208
1228
|
contrastLevel?: number | "auto";
|
|
1209
1229
|
}
|
|
@@ -1378,5 +1398,5 @@ interface CreateDocsGraphOptions {
|
|
|
1378
1398
|
lock?: CookbookLock;
|
|
1379
1399
|
}
|
|
1380
1400
|
//#endregion
|
|
1381
|
-
export {
|
|
1382
|
-
//# sourceMappingURL=types-
|
|
1401
|
+
export { NavigationPlacement as A, ThemeTokenValue as B, DocsReference as C, MarkdownConfig as D, HeadConfig as E, PackageManifest as F, Heading as G, TypographyPreset as H, SearchConfig as I, PhrasingContent as J, Link as K, SiteConfig as L, NormalizedDocsConfig as M, PackageDiscovery as N, NavigationConfig as O, PackageLockSource as P, ThemeConfig as R, DocsHeading as S, DocsSource as T, TypographyPresets as U, ThemeTokens as V, Content as W, Root as Y, DocsConfig as _, ComponentStyleConfig as a, DocsFrontmatter as b, ComponentsConfig as c, CookbookComponentStyles as d, CookbookComponentSubElementName as f, DocsAsset as g, DiagnosticSeverity as h, COOKBOOK_COMPONENT_SUB_ELEMENTS as i, NavigationTab as j, NavigationItem as k, ContentConfig as l, CreateDocsGraphOptions as m, BuildConfig as n, ComponentStyles as o, CookbookLock as p, Paragraph as q, COOKBOOK_COMPONENT_NAMES as r, ComponentStylesConfig as s, BrandConfig as t, CookbookComponentName as u, DocsDiagnostic as v, DocsRoute as w, DocsGraph as x, DocsEntry as y, ThemePaletteConfig as z };
|
|
1402
|
+
//# sourceMappingURL=types-De-cvxAJ.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types-
|
|
1
|
+
{"version":3,"file":"types-De-cvxAJ.d.ts","names":[],"sources":["../../../node_modules/.pnpm/@types+unist@3.0.3/node_modules/@types/unist/index.d.ts","../../../node_modules/.pnpm/@types+mdast@4.0.4/node_modules/@types/mdast/index.d.ts","../src/types.ts"],"x_google_ignoreList":[0,1],"mappings":";;;;;;;;;;;;;;;;;;;;;;UAqBiB;;;;UAKA;;;;EAIb;;;;EAKA;;;;EAIA;;;;;;;UAQa;;;;EAIb,OAAO;;;;EAKP,KAAK;;;;;;;;;;;;UA6BQ;;;;EAIb;;;;EAKA,OAAO;;;;;;;EAQP,WAAW;;;;;;;;;;;;;;;;;;;;;;KCjFH;;;;;;;;;;KAWA;;;;;UAOK;;;;;EAKb;;;;;;;;;;;UAYa;;;;;;;;;;;;;;EAcb;;;;;;;;;;EAWA;;;;;UAMa,kBAAkB;;;;EAI/B,eAAe;;;;;UAMF;;;;EAIb;;;;;EAKA;;;;;;;;;;;;;;;;;;;;;UAuBa,aAAa;;;;;;;;;KAWlB,eAAe,sBAAsB;;;;;;;;;;;;;;;;;;UAmBhC;EACb,YAAY;EACZ,MAAM;EACN,SAAS;EACT,MAAM;EACN,MAAM;EACN,WAAW;EACX,OAAO;EACP,eAAe;;;;;;;;;KAUP,oBAAoB,2BAA2B;;;;;;;;;;;;;;;;;UAkB1C;EACb,YAAY;EACZ,oBAAoB;;;;;;;;;KAwCZ,cAAc,qBAAqB;;;;;;;;;;;;;;;;;UAkB9B;EACb,UAAU;;;;;;;;;KAUF,kBAAkB,yBAAyB;;;;;;;;;;;;;;;;;;UAmBtC;EACb,OAAO;EACP,QAAQ;EACR,UAAU;EACV,mBAAmB;EACnB,MAAM;EACN,OAAO;EACP,gBAAgB;EAChB,YAAY;EACZ,MAAM;EACN,eAAe;EACf,QAAQ;EACR,MAAM;;;;;;;;KASE,cAAc,qBAAqB;;;;;;;;;;;;;;;;;;;;UAqB9B;EACb,YAAY;EACZ,OAAO;EACP,MAAM;EACN,YAAY;EACZ,QAAQ;EACR,UAAU;EACV,oBAAoB;EACpB,mBAAmB;EACnB,SAAS;EACT,MAAM;EACN,OAAO;EACP,gBAAgB;EAChB,YAAY;EACZ,MAAM;EACN,eAAe;EACf,MAAM;EACN,UAAU;EACV,WAAW;EACX,QAAQ;EACR,OAAO;EACP,WAAW;EACX,UAAU;EACV,MAAM;EACN,eAAe;EACf,MAAM;;;;;;;;;KAUE,aAAa,oBAAoB;;;;;;;;;;;;;;;;;UAkB5B;EACb,WAAW;;;;;;;;;KAUH,eAAe,sBAAsB;;;;;;;;;;;;;;;;;UAkBhC;EACb,UAAU;;;;;;;;KAUF,UAAU;;;;;;;;;UA+CL,gBAAgB;;;;EAI7B;;;;;;;;;;;;;;;UAgBa,aAAa;;;;EAI1B,OAAO;;;;;;;;;UAUM,eAAe;;;;EAI5B,UAAU;;;;;;UAQG,mBAAmB;;;;EAIhC;;;;EAIA,UAAU,MAAM,eAAe;;;;EAI/B,OAAO;;;;;UAMM,uBAAuB;;;;UAKvB,cAAc;;;;EAI3B;;;;EAIA,OAAO;;;;;UAMM,kBAAkB;;;;UAKlB,aAAa;;;;EAI1B;;;;EAIA;;;;;;EAMA;;;;EAIA,OAAO;;;;;UAMM,iBAAiB;;;;UAKjB,mBAAmB,MAAM,aAAa;;;;EAInD;;;;EAIA,OAAO;;;;;UAMM,uBAAuB;;;;UAKvB,eAAe;;;;EAI5B;;;;EAIA,UAAU;;;;EAIV,OAAO;;;;;UAMM,mBAAmB;;;;UAKnB,iBAAiB;;;;EAI9B;;;;EAIA,UAAU;;;;EAIV,OAAO;;;;;UAMM,qBAAqB;;;;UAKrB,2BAA2B,QAAQ;;;;EAIhD;;;;EAIA,UAAU,MAAM,eAAe;;;;EAI/B,OAAO;;;;;UAMM,+BAA+B;;;;UAK/B,0BAA0B,aAAa;;;;EAIpD;;;;EAIA,OAAO;;;;;UAMM,8BAA8B;;;;UAK9B,gBAAgB;;;;EAI7B;;;;;;EAMA;;;;EAIA,UAAU;;;;EAIV,OAAO;;;;;UAMM,oBAAoB;;;;UAKpB,aAAa;;;;EAI1B;;;;EAIA,OAAO;;;;;UAMM,iBAAiB;;;;UAajB,cAAc,aAAa,MAAM;;;;EAI9C;;;;EAIA,OAAO;;;;;UAMM,kBAAkB;;;;UAKlB,uBAAuB,aAAa,MAAM;;;;EAIvD;;;;EAIA,OAAO;;;;;UAMM,2BAA2B;;;;UAK3B,mBAAmB;;;;EAIhC;;;;EAIA,OAAO;;;;;UAMM,uBAAuB;;;;UAKvB,aAAa,QAAQ;;;;EAIlC;;;;EAIA,UAAU;;;;EAIV,OAAO;;;;;UAMM,iBAAiB;;;;UAKjB,sBAAsB,QAAQ;;;;EAI3C;;;;EAIA,UAAU;;;;EAIV,OAAO;;;;;UAMM,0BAA0B;;;;UAK1B,aAAa;;;;EAI1B;;;;;EAKA;;;;EAIA;;;;;EAKA;;;;EAIA,UAAU;;;;EAIV,OAAO;;;;;UAMM,iBAAiB;;;;UAKjB,iBAAiB;;;;EAI9B;;;;;;;EAOA;;;;;EAKA;;;;EAIA,UAAU,MAAM,eAAe;;;;EAI/B,OAAO;;;;;UAMM,qBAAqB;;;;UAKrB,kBAAkB;;;;EAI/B;;;;EAIA,UAAU;;;;EAIV,OAAO;;;;;UAMM,sBAAsB;;;;;;UAOtB,aAAa;;;;EAI1B;;;;EAIA,OAAO;;;;;UAMM,iBAAiB;;;;UAKjB,eAAe;;;;EAI5B;;;;EAIA,UAAU;;;;EAIV,OAAO;;;;;UAMM,mBAAmB;;;;UAKnB,cAAc;;;;EAI3B;;;;EAIA,QAAQ;;;;EAIR,UAAU;;;;EAIV,OAAO;;;;;UAMM,kBAAkB;;;;UAKlB,iBAAiB;;;;EAI9B;;;;EAIA,UAAU;;;;EAIV,OAAO;;;;;UAMM,qBAAqB;;;;UAKrB,kBAAkB;;;;EAI/B;;;;EAIA,UAAU;;;;EAIV,OAAO;;;;;UAMM,sBAAsB;;;;UAKtB,aAAa;;;;EAI1B;;;;EAIA,OAAO;;;;;UAMM,iBAAiB;;;;UAKjB,sBAAsB;;;;EAInC;;;;EAIA,OAAO;;;;;UAMM,0BAA0B;;;;UAK1B,aAAa;;;;EAI1B;;;;EAIA,OAAO;;;;;UAMM,iBAAiB;;;KCvlCtB;UAEK;EACf;EACA,UAAU;EACV;EACA;EACA;EACA;EACA;EACA,UAAU;IAAQ;IAAc;IAAe;;;UAGhC;EACf;;EAEA;EACA;EACA;EACA;;;UAIe;EACf;EACA,QAAQ;EACR;;UAGe;EACf;EACA;EACA;;KAGU;EAEN;EACA;EACA;EACA;EACA,qBAAqB;;EAGrB;EACA;EACA;EACA;EACA;;EAGA;EACA;EACA;EACA;EACA;EACA;;UAGW;EACf,UAAU;EACV;EACA;;KAGU;EAEN;EAAe,OAAO;;EACtB;EAAe;IAAgB;;;EAC/B;EAAe;;UAEJ;EACf;EACA;;EAEA,QAAQ;;UAGO;EACf,QAAQ;;EAER,OAAO;;KAGG,cACR;EAEE,MAAM;EACN;IAAa;;EACb;;KAGM;;;;;UAMK;EACf,OAAO;EACP,UAAU;EACV,iBAAiB;EACjB,kBAAkB;EAClB,mBAAmB;EACnB,oBAAoB;EACpB,kBAAkB;EAClB,mBAAmB;EACnB,mBAAmB;EACnB,oBAAoB;GACnB,qBAAqB;GACrB,gCAAgC;;UAGlB;EACf;EACA,WAAW;EACX,aAAa;EACb,gBAAgB;EAChB,aAAa;EACb,iBAAiB;EACjB,WAAW;EACX,gBAAgB;EAChB,YAAY;;;UAIG;EACf,OAAO;EACP,UAAU;EACV,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,KAAK;EACL,aAAa;EACb,QAAQ;EACR,OAAO;GACN,eAAe;;;UAID;;EAEf,UAAU;;EAEV,OAAO;;EAEP,WAAW;;;cAIA;KAqBD,gCAAgC;;cAG/B;;;;;;;;;;;;;;;;;;;;KA6GD,gCACV,aAAa,iCACH,iCAAiC;;KAGjC,kBAAkB;EAA4B;;;KAG9C,uBAAuB;;KAGvB,wBAAwB,aAAa,yBAC/C,kBACE,QAAQ,OAAO,gCAAgC,OAAO;KAE9C,2BACT,QAAQ,yBAAyB,wBAAwB,WACxD,eAAe;UAEF;EACf;EACA,QAAQ;EACR,UAAU;EACV,SAAS;EACT,SAAS;EACT,UAAU;;EAEV,SAAS;EACT;;UAGe;EACf;EACA;EACA;EACA;EACA;EACA;;UAGe;EACf;;UAGe;;EAEf,YAAY;;UAGG;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;UAGe;EACf,OAAO;EACP,OAAO;EACP,UAAU;EACV,aAAa,mBAAmB;EAChC,QAAQ;EACR,WAAW;EACX,SAAS;EACT,aAAa;EACb,QAAQ;;UAGO;EACf,MAAM;EACN,MAAM;EACN,SAAS,SACP,KAAK,kEAEL;EACF,YAAY;EACZ,OAAO;IAAgB,OAAO;;EAC9B,UAAU,SACR,KACE,gGAOF;EACF,QAAQ,SAAS;EACjB,YAAY;EACZ,OAAO,SAAS;;UAGD;EACf;EACA;EACA;EACA;EACA;IAAoB;IAAgB;IAAgB;;EACpD;IAAgB;IAA0B;;EAC1C;EACA;EACA;EACA;EACA,OAAO,MAAM;;UAGE;EACf;EACA;EACA;EACA;;UAGe;EACf;EACA;EACA;EACA;EACA;;UAGe,kBAAkB;EACjC;EACA;EACA;EACA;;UAGe;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA,aAAa;EACb,UAAU;EACV;EACA;EACA,KAAK;EACL,OAAO;EACP,QAAQ;EACR;EACA;IAAY;IAAmB;;;UAGhB;EACf;EACA;EACA;EACA;;UAGe;EACf;EACA,QAAQ;EACR,SAAS;EACT,QAAQ;EACR,QAAQ;EACR,aAAa;EACb,aAAa,gBAAgB;EAC7B,cAAc,qBAAqB;;UAGpB;EACf;EACA;EACA;EACA;EACA;;UAGe;EACf;EACA,SAAS;;UAGM;EACf;EACA;EACA;EACA;EACA;IAAwB;IAAe;IAAc;;EACrD;IACE;IACA;IACA;IACA;MAAU,QAAQ;;;EAEpB;EACA;;UAGe;EACf;EACA,UAAU;EACV;EACA;EACA;;UAGe;EACf;EACA,SAAS;EACT,OAAO"}
|