@shadow-shard-tools/docs-core 1.0.18 → 1.0.20

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.
Files changed (144) hide show
  1. package/README.md +60 -1
  2. package/dist/cjs/configs/clientConfig.js +30 -112
  3. package/dist/cjs/configs/index.browser.js +16 -0
  4. package/dist/cjs/configs/sstDocsConfigShared.js +169 -101
  5. package/dist/cjs/data/buildTree.js +48 -10
  6. package/dist/cjs/data/fsDataProvider.browser.js +10 -0
  7. package/dist/cjs/data/index.browser.js +19 -0
  8. package/dist/cjs/data/index.js +6 -1
  9. package/dist/cjs/data/loadAllCategories.js +15 -5
  10. package/dist/cjs/data/loadAllItems.js +19 -7
  11. package/dist/cjs/data/loadProducts.js +6 -0
  12. package/dist/cjs/data/loadVersionData.fs.js +31 -0
  13. package/dist/cjs/data/loadVersionData.js +130 -7
  14. package/dist/cjs/index.browser.js +22 -0
  15. package/dist/cjs/themes/index.js +5 -1
  16. package/dist/cjs/themes/styleThemeSchema.js +36 -0
  17. package/dist/cjs/types/DataDiagnostic.js +2 -0
  18. package/dist/cjs/types/Product.js +2 -0
  19. package/dist/cjs/utilities/index.browser.js +53 -0
  20. package/dist/cjs/utilities/path/pathExists.browser.js +6 -0
  21. package/dist/cjs/utilities/path/pathExists.js +1 -1
  22. package/dist/cjs/utilities/path/resolveAgainstProjectRoot.browser.js +6 -0
  23. package/dist/cjs/utilities/path/resolveDataPath.browser.js +6 -0
  24. package/dist/cjs/utilities/path/resolveDataPath.js +1 -1
  25. package/dist/cjs/utilities/string/withBasePath.js +37 -9
  26. package/dist/cjs/utilities/system/logger.browser.js +39 -0
  27. package/dist/cjs/utilities/system/logger.js +26 -6
  28. package/dist/configs/clientConfig.d.ts.map +1 -1
  29. package/dist/configs/clientConfig.js +30 -112
  30. package/dist/configs/clientConfig.js.map +1 -1
  31. package/dist/configs/index.browser.d.ts +4 -0
  32. package/dist/configs/index.browser.d.ts.map +1 -0
  33. package/dist/configs/index.browser.js +4 -0
  34. package/dist/configs/index.browser.js.map +1 -0
  35. package/dist/configs/sstDocsConfig.browser.d.ts.map +1 -1
  36. package/dist/configs/sstDocsConfig.browser.js.map +1 -1
  37. package/dist/configs/sstDocsConfig.d.ts.map +1 -1
  38. package/dist/configs/sstDocsConfig.js.map +1 -1
  39. package/dist/configs/sstDocsConfigShared.d.ts +8 -0
  40. package/dist/configs/sstDocsConfigShared.d.ts.map +1 -1
  41. package/dist/configs/sstDocsConfigShared.js +168 -97
  42. package/dist/configs/sstDocsConfigShared.js.map +1 -1
  43. package/dist/data/buildTree.d.ts +10 -2
  44. package/dist/data/buildTree.d.ts.map +1 -1
  45. package/dist/data/buildTree.js +48 -10
  46. package/dist/data/buildTree.js.map +1 -1
  47. package/dist/data/fsDataProvider.browser.d.ts +6 -0
  48. package/dist/data/fsDataProvider.browser.d.ts.map +1 -0
  49. package/dist/data/fsDataProvider.browser.js +7 -0
  50. package/dist/data/fsDataProvider.browser.js.map +1 -0
  51. package/dist/data/fsDataProvider.d.ts.map +1 -1
  52. package/dist/data/fsDataProvider.js.map +1 -1
  53. package/dist/data/index.browser.d.ts +8 -0
  54. package/dist/data/index.browser.d.ts.map +1 -0
  55. package/dist/data/index.browser.js +8 -0
  56. package/dist/data/index.browser.js.map +1 -0
  57. package/dist/data/index.d.ts +3 -1
  58. package/dist/data/index.d.ts.map +1 -1
  59. package/dist/data/index.js +3 -1
  60. package/dist/data/index.js.map +1 -1
  61. package/dist/data/loadAllCategories.d.ts +10 -1
  62. package/dist/data/loadAllCategories.d.ts.map +1 -1
  63. package/dist/data/loadAllCategories.js +15 -5
  64. package/dist/data/loadAllCategories.js.map +1 -1
  65. package/dist/data/loadAllItems.d.ts +10 -1
  66. package/dist/data/loadAllItems.d.ts.map +1 -1
  67. package/dist/data/loadAllItems.js +19 -7
  68. package/dist/data/loadAllItems.js.map +1 -1
  69. package/dist/data/loadProducts.d.ts +4 -0
  70. package/dist/data/loadProducts.d.ts.map +1 -0
  71. package/dist/data/loadProducts.js +4 -0
  72. package/dist/data/loadProducts.js.map +1 -0
  73. package/dist/data/loadVersionData.d.ts +37 -1
  74. package/dist/data/loadVersionData.d.ts.map +1 -1
  75. package/dist/data/loadVersionData.fs.d.ts +3 -0
  76. package/dist/data/loadVersionData.fs.d.ts.map +1 -0
  77. package/dist/data/loadVersionData.fs.js +26 -0
  78. package/dist/data/loadVersionData.fs.js.map +1 -0
  79. package/dist/data/loadVersionData.js +127 -7
  80. package/dist/data/loadVersionData.js.map +1 -1
  81. package/dist/index.browser.d.ts +7 -0
  82. package/dist/index.browser.d.ts.map +1 -0
  83. package/dist/index.browser.js +7 -0
  84. package/dist/index.browser.js.map +1 -0
  85. package/dist/themes/index.d.ts +1 -0
  86. package/dist/themes/index.d.ts.map +1 -1
  87. package/dist/themes/index.js +1 -0
  88. package/dist/themes/index.js.map +1 -1
  89. package/dist/themes/styleThemeSchema.d.ts +6 -0
  90. package/dist/themes/styleThemeSchema.d.ts.map +1 -0
  91. package/dist/themes/styleThemeSchema.js +32 -0
  92. package/dist/themes/styleThemeSchema.js.map +1 -0
  93. package/dist/themes/themeRegistry.d.ts.map +1 -1
  94. package/dist/themes/themeRegistry.js.map +1 -1
  95. package/dist/types/ClientVisibleSstDocsConfig.d.ts +1 -0
  96. package/dist/types/ClientVisibleSstDocsConfig.d.ts.map +1 -1
  97. package/dist/types/DataDiagnostic.d.ts +8 -0
  98. package/dist/types/DataDiagnostic.d.ts.map +1 -0
  99. package/dist/types/DataDiagnostic.js +2 -0
  100. package/dist/types/DataDiagnostic.js.map +1 -0
  101. package/dist/types/HtmlGeneratorSettings.d.ts +1 -1
  102. package/dist/types/HtmlGeneratorSettings.d.ts.map +1 -1
  103. package/dist/types/Product.d.ts +5 -0
  104. package/dist/types/Product.d.ts.map +1 -0
  105. package/dist/types/Product.js +2 -0
  106. package/dist/types/Product.js.map +1 -0
  107. package/dist/types/SstDocsConfig.d.ts +2 -0
  108. package/dist/types/SstDocsConfig.d.ts.map +1 -1
  109. package/dist/types/index.d.ts +2 -0
  110. package/dist/types/index.d.ts.map +1 -1
  111. package/dist/utilities/index.browser.d.ts +23 -0
  112. package/dist/utilities/index.browser.d.ts.map +1 -0
  113. package/dist/utilities/index.browser.js +29 -0
  114. package/dist/utilities/index.browser.js.map +1 -0
  115. package/dist/utilities/path/pathExists.browser.d.ts +2 -0
  116. package/dist/utilities/path/pathExists.browser.d.ts.map +1 -0
  117. package/dist/utilities/path/pathExists.browser.js +4 -0
  118. package/dist/utilities/path/pathExists.browser.js.map +1 -0
  119. package/dist/utilities/path/pathExists.js +1 -1
  120. package/dist/utilities/path/pathExists.js.map +1 -1
  121. package/dist/utilities/path/resolveAgainstProjectRoot.browser.d.ts +2 -0
  122. package/dist/utilities/path/resolveAgainstProjectRoot.browser.d.ts.map +1 -0
  123. package/dist/utilities/path/resolveAgainstProjectRoot.browser.js +4 -0
  124. package/dist/utilities/path/resolveAgainstProjectRoot.browser.js.map +1 -0
  125. package/dist/utilities/path/resolveAgainstProjectRoot.d.ts.map +1 -1
  126. package/dist/utilities/path/resolveAgainstProjectRoot.js.map +1 -1
  127. package/dist/utilities/path/resolveDataPath.browser.d.ts +2 -0
  128. package/dist/utilities/path/resolveDataPath.browser.d.ts.map +1 -0
  129. package/dist/utilities/path/resolveDataPath.browser.js +4 -0
  130. package/dist/utilities/path/resolveDataPath.browser.js.map +1 -0
  131. package/dist/utilities/path/resolveDataPath.d.ts.map +1 -1
  132. package/dist/utilities/path/resolveDataPath.js +1 -1
  133. package/dist/utilities/path/resolveDataPath.js.map +1 -1
  134. package/dist/utilities/string/withBasePath.d.ts.map +1 -1
  135. package/dist/utilities/string/withBasePath.js +37 -6
  136. package/dist/utilities/string/withBasePath.js.map +1 -1
  137. package/dist/utilities/system/logger.browser.d.ts +3 -0
  138. package/dist/utilities/system/logger.browser.d.ts.map +1 -0
  139. package/dist/utilities/system/logger.browser.js +36 -0
  140. package/dist/utilities/system/logger.browser.js.map +1 -0
  141. package/dist/utilities/system/logger.d.ts.map +1 -1
  142. package/dist/utilities/system/logger.js +26 -6
  143. package/dist/utilities/system/logger.js.map +1 -1
  144. package/package.json +181 -9
@@ -1,13 +1,129 @@
1
+ import { z } from "zod";
1
2
  import { AVAILABLE_THEME_PRESET_NAMES, DEFAULT_THEME_PRESET, getThemePreset, isThemePresetName, } from "../themes/themeRegistry.js";
2
- import path from "node:path";
3
3
  import { normalizeSystemPath } from "../utilities/string/normalizeSystemPath.js";
4
4
  export const SST_DOCS_CONFIG_FILENAME = "sst-docs.config.json";
5
+ const DEFAULT_FS_DATA_PATH = "./public/SST-Docs/data";
6
+ const DEFAULT_PRODUCT_VERSIONING = false;
7
+ const DEFAULT_OUTPUT_DIRECTORY = "./dist/html";
5
8
  export class SstDocsConfigError extends Error {
6
9
  constructor(message) {
7
10
  super(message);
8
11
  this.name = "SstDocsConfigError";
9
12
  }
10
13
  }
14
+ export const SST_DOCS_CONFIG_REFERENCE = [
15
+ {
16
+ key: "FS_DATA_PATH",
17
+ type: "string",
18
+ required: true,
19
+ default: DEFAULT_FS_DATA_PATH,
20
+ description: "Absolute or project-relative path to the docs data root (contains versions.json).",
21
+ },
22
+ {
23
+ key: "PRODUCT_VERSIONING",
24
+ type: "boolean",
25
+ required: false,
26
+ default: `${DEFAULT_PRODUCT_VERSIONING}`,
27
+ description: "Toggle product-level versioning for docs data.",
28
+ },
29
+ {
30
+ key: "HEADER_BRANDING.logoSrc",
31
+ type: "string",
32
+ required: false,
33
+ description: "Optional logo image path/URL shown in the header.",
34
+ },
35
+ {
36
+ key: "HEADER_BRANDING.logoAlt",
37
+ type: "string",
38
+ required: false,
39
+ description: "Optional alt text for the logo image.",
40
+ },
41
+ {
42
+ key: "HEADER_BRANDING.logoText",
43
+ type: "string",
44
+ required: false,
45
+ description: "Optional text fallback when no logo image is provided.",
46
+ },
47
+ {
48
+ key: "HTML_GENERATOR_SETTINGS.OUTPUT_DIRECTORY",
49
+ type: "string",
50
+ required: true,
51
+ default: DEFAULT_OUTPUT_DIRECTORY,
52
+ description: "Where the HTML generator writes the output bundle.",
53
+ },
54
+ {
55
+ key: "HTML_GENERATOR_SETTINGS.THEME",
56
+ type: "string",
57
+ required: true,
58
+ default: DEFAULT_THEME_PRESET,
59
+ description: `Theme preset name. Options: ${AVAILABLE_THEME_PRESET_NAMES.join(", ")}.`,
60
+ },
61
+ {
62
+ key: "HTML_GENERATOR_SETTINGS.SEPARATE_BUILD_FOR_HTML_GENERATOR",
63
+ type: "boolean",
64
+ required: false,
65
+ default: "false",
66
+ description: "Whether to run a separate build for the HTML generator.",
67
+ },
68
+ ];
69
+ const optionalTrimmedString = z
70
+ .string()
71
+ .trim()
72
+ .transform((value) => (value.length > 0 ? value : undefined))
73
+ .optional();
74
+ const HeaderBrandingSchema = z
75
+ .object({
76
+ logoSrc: optionalTrimmedString,
77
+ logoAlt: optionalTrimmedString,
78
+ logoText: optionalTrimmedString,
79
+ })
80
+ .strict()
81
+ .transform((value) => value);
82
+ const HtmlGeneratorSettingsSchema = z
83
+ .object({
84
+ OUTPUT_DIRECTORY: z
85
+ .string()
86
+ .trim()
87
+ .min(1, {
88
+ message: `Set HTML_GENERATOR_SETTINGS.OUTPUT_DIRECTORY (default: "${DEFAULT_OUTPUT_DIRECTORY}")`,
89
+ })
90
+ .transform((val) => normalizeSystemPath(val)),
91
+ THEME: z
92
+ .string()
93
+ .trim()
94
+ .min(1, {
95
+ message: `Set HTML_GENERATOR_SETTINGS.THEME (default: "${DEFAULT_THEME_PRESET}")`,
96
+ })
97
+ .transform((value, ctx) => {
98
+ const normalized = value.toLowerCase();
99
+ if (!isThemePresetName(normalized)) {
100
+ const options = AVAILABLE_THEME_PRESET_NAMES.join(", ");
101
+ ctx.addIssue({
102
+ code: z.ZodIssueCode.custom,
103
+ message: `HTML_GENERATOR_SETTINGS.THEME must be one of: ${options} (default: "${DEFAULT_THEME_PRESET}")`,
104
+ });
105
+ return z.NEVER;
106
+ }
107
+ return cloneTheme(getThemePreset(normalized));
108
+ }),
109
+ SEPARATE_BUILD_FOR_HTML_GENERATOR: z.boolean().default(false),
110
+ })
111
+ .strict()
112
+ .transform((value) => value);
113
+ const ConfigSchema = z
114
+ .object({
115
+ FS_DATA_PATH: z
116
+ .string()
117
+ .trim()
118
+ .min(1, {
119
+ message: `Provide FS_DATA_PATH (default: "${DEFAULT_FS_DATA_PATH}")`,
120
+ })
121
+ .transform((val) => normalizeSystemPath(val)),
122
+ PRODUCT_VERSIONING: z.boolean().default(DEFAULT_PRODUCT_VERSIONING),
123
+ HEADER_BRANDING: HeaderBrandingSchema.optional().transform((value) => value ?? {}),
124
+ HTML_GENERATOR_SETTINGS: HtmlGeneratorSettingsSchema.optional(),
125
+ })
126
+ .strict();
11
127
  export function parseConfigContents(contents, sourcePath) {
12
128
  let parsed;
13
129
  try {
@@ -16,11 +132,22 @@ export function parseConfigContents(contents, sourcePath) {
16
132
  catch (error) {
17
133
  throw new SstDocsConfigError(`Failed to parse ${SST_DOCS_CONFIG_FILENAME}: ${error.message}`);
18
134
  }
19
- return normalizeConfig(parsed, sourcePath);
135
+ const result = ConfigSchema.safeParse(parsed);
136
+ if (!result.success) {
137
+ throw new SstDocsConfigError(formatConfigValidationError(sourcePath, result.error));
138
+ }
139
+ const resolved = result.data;
140
+ return {
141
+ FS_DATA_PATH: resolved.FS_DATA_PATH,
142
+ PUBLIC_DATA_PATH: derivePublicDataPath(resolved.FS_DATA_PATH),
143
+ PRODUCT_VERSIONING: resolved.PRODUCT_VERSIONING,
144
+ HEADER_BRANDING: resolved.HEADER_BRANDING,
145
+ HTML_GENERATOR_SETTINGS: resolved.HTML_GENERATOR_SETTINGS,
146
+ };
20
147
  }
21
148
  export function derivePublicDataPath(fsDataPath) {
22
149
  const normalizedFsPath = normalizeSystemPath(fsDataPath.trim());
23
- const posixPath = path.posix.normalize(normalizedFsPath || "/");
150
+ const posixPath = normalizePosixPath(normalizedFsPath || "/");
24
151
  const segments = posixPath.split("/").filter(Boolean);
25
152
  const publicIndex = segments.indexOf("public");
26
153
  const publicSegments = publicIndex >= 0 ? segments.slice(publicIndex + 1) : segments;
@@ -47,14 +174,14 @@ export function resolvePublicDataPath(baseUrl, config) {
47
174
  }
48
175
  function normalizePublicPath(value) {
49
176
  const normalized = normalizeSystemPath(value.trim());
50
- const posixPath = path.posix.normalize(normalized || "/");
177
+ const posixPath = normalizePosixPath(normalized || "/");
51
178
  const withLeading = posixPath.startsWith("/") ? posixPath : `/${posixPath}`;
52
179
  return withLeading.endsWith("/") ? withLeading : `${withLeading}/`;
53
180
  }
54
181
  function joinUrlPaths(base, child) {
55
182
  const normalizedBase = normalizePublicPath(base);
56
183
  const normalizedChild = normalizePublicPath(child).replace(/^\/+/, "");
57
- const joined = path.posix.join(normalizedBase, normalizedChild);
184
+ const joined = normalizePosixPath(`${normalizedBase}${normalizedChild ? `/${normalizedChild}` : ""}`);
58
185
  return joined.endsWith("/") ? joined : `${joined}/`;
59
186
  }
60
187
  function isAbsoluteUrl(value) {
@@ -66,100 +193,44 @@ function isAbsoluteUrl(value) {
66
193
  return false;
67
194
  }
68
195
  }
69
- function normalizeConfig(value, sourcePath) {
70
- if (!value || typeof value !== "object") {
71
- throw new SstDocsConfigError(`Invalid configuration in ${sourcePath}: expected an object`);
72
- }
73
- const raw = value;
74
- if (typeof raw.FS_DATA_PATH !== "string") {
75
- throw new SstDocsConfigError(`Missing or invalid FS_DATA_PATH in ${sourcePath}`);
76
- }
77
- const fsDataPath = normalizeSystemPath(raw.FS_DATA_PATH.trim());
78
- if (fsDataPath.length === 0) {
79
- throw new SstDocsConfigError(`FS_DATA_PATH cannot be empty in ${sourcePath}`);
80
- }
81
- return {
82
- FS_DATA_PATH: fsDataPath,
83
- PUBLIC_DATA_PATH: derivePublicDataPath(fsDataPath),
84
- HEADER_BRANDING: normalizeHeaderBranding(raw.HEADER_BRANDING, sourcePath),
85
- HTML_GENERATOR_SETTINGS: normalizeHtmlGeneratorSettings(raw.HTML_GENERATOR_SETTINGS, sourcePath),
86
- };
87
- }
88
- function normalizeHeaderBranding(value, sourcePath) {
89
- if (value === undefined) {
90
- return {};
91
- }
92
- if (!value || typeof value !== "object") {
93
- throw new SstDocsConfigError(`HEADER_BRANDING must be an object in ${sourcePath}`);
94
- }
95
- const { logoSrc, logoAlt, logoText } = value;
96
- return {
97
- logoSrc: normalizeOptionalString(logoSrc, "logoSrc", sourcePath),
98
- logoAlt: normalizeOptionalString(logoAlt, "logoAlt", sourcePath),
99
- logoText: normalizeOptionalString(logoText, "logoText", sourcePath),
100
- };
101
- }
102
- function normalizeOptionalString(value, key, sourcePath) {
103
- if (value === undefined || value === null)
104
- return undefined;
105
- if (typeof value !== "string") {
106
- throw new SstDocsConfigError(`HEADER_BRANDING.${key} must be a string in ${sourcePath}`);
107
- }
108
- const trimmed = value.trim();
109
- return trimmed.length > 0 ? trimmed : undefined;
110
- }
111
- function normalizeHtmlGeneratorSettings(value, sourcePath) {
112
- if (value === undefined) {
113
- return undefined;
114
- }
115
- if (!value || typeof value !== "object" || Array.isArray(value)) {
116
- throw new SstDocsConfigError(`HTML_GENERATOR_SETTINGS must be an object in ${sourcePath}`);
117
- }
118
- const { OUTPUT_DIRECTORY, THEME, SEPARATE_BUILD_FOR_HTML_GENERATOR, } = value;
119
- if (typeof OUTPUT_DIRECTORY !== "string") {
120
- throw new SstDocsConfigError(`HTML_GENERATOR_SETTINGS.OUTPUT_DIRECTORY must be a string in ${sourcePath}`);
121
- }
122
- const outputDirectory = normalizeSystemPath(OUTPUT_DIRECTORY.trim());
123
- if (outputDirectory.length === 0) {
124
- throw new SstDocsConfigError(`HTML_GENERATOR_SETTINGS.OUTPUT_DIRECTORY cannot be empty in ${sourcePath}`);
125
- }
126
- if (THEME === undefined) {
127
- throw new SstDocsConfigError(`HTML_GENERATOR_SETTINGS.THEME must be provided in ${sourcePath}`);
128
- }
129
- if (SEPARATE_BUILD_FOR_HTML_GENERATOR !== undefined &&
130
- typeof SEPARATE_BUILD_FOR_HTML_GENERATOR !== "boolean") {
131
- throw new SstDocsConfigError(`HTML_GENERATOR_SETTINGS.SEPARATE_BUILD_FOR_HTML_GENERATOR must be a boolean in ${sourcePath}`);
132
- }
133
- const resolvedTheme = resolveThemeConfiguration(THEME, sourcePath);
134
- return {
135
- OUTPUT_DIRECTORY: outputDirectory,
136
- THEME: resolvedTheme,
137
- SEPARATE_BUILD_FOR_HTML_GENERATOR: SEPARATE_BUILD_FOR_HTML_GENERATOR ?? false,
138
- };
196
+ function cloneTheme(theme) {
197
+ return JSON.parse(JSON.stringify(theme));
139
198
  }
140
- function resolveThemeConfiguration(value, sourcePath) {
141
- if (typeof value !== "string") {
142
- throw new SstDocsConfigError(`HTML_GENERATOR_SETTINGS.THEME must be a string preset in ${sourcePath}`);
143
- }
144
- const themeName = ensureThemePresetName(value, sourcePath, "HTML_GENERATOR_SETTINGS.THEME");
145
- return cloneTheme(getThemePreset(themeName));
199
+ function formatConfigValidationError(sourcePath, error) {
200
+ const lines = error.issues.map((issue) => {
201
+ const path = issue.path.join(".") || "config";
202
+ const defaultValue = defaultValueFor(path);
203
+ const hint = defaultValue ? ` (default: ${defaultValue})` : "";
204
+ return `${path}: ${issue.message}${hint}`;
205
+ });
206
+ return `Invalid configuration in ${sourcePath}:\n- ${lines.join("\n- ")}`;
146
207
  }
147
- function ensureThemePresetName(raw, sourcePath, propertyPath) {
148
- if (raw === undefined || raw === null) {
149
- return DEFAULT_THEME_PRESET;
150
- }
151
- if (typeof raw !== "string") {
152
- const options = AVAILABLE_THEME_PRESET_NAMES.join(", ");
153
- throw new SstDocsConfigError(`${propertyPath} must be one of: ${options} in ${sourcePath}`);
154
- }
155
- const normalized = raw.trim().toLowerCase();
156
- if (!isThemePresetName(normalized)) {
157
- const options = AVAILABLE_THEME_PRESET_NAMES.join(", ");
158
- throw new SstDocsConfigError(`Unknown ${propertyPath} "${raw}" in ${sourcePath}. Supported presets: ${options}`);
159
- }
160
- return normalized;
208
+ function defaultValueFor(path) {
209
+ return SST_DOCS_CONFIG_REFERENCE.find((entry) => entry.key === path)?.default;
161
210
  }
162
- function cloneTheme(theme) {
163
- return JSON.parse(JSON.stringify(theme));
211
+ function normalizePosixPath(value) {
212
+ const sanitized = value.replace(/\\/g, "/");
213
+ const hasLeadingSlash = sanitized.startsWith("/");
214
+ const parts = sanitized.split("/");
215
+ const stack = [];
216
+ for (const part of parts) {
217
+ if (!part || part === ".")
218
+ continue;
219
+ if (part === "..") {
220
+ if (stack.length > 0 && stack[stack.length - 1] !== "..") {
221
+ stack.pop();
222
+ }
223
+ else if (!hasLeadingSlash) {
224
+ stack.push("..");
225
+ }
226
+ continue;
227
+ }
228
+ stack.push(part);
229
+ }
230
+ const normalized = stack.join("/");
231
+ if (hasLeadingSlash) {
232
+ return `/${normalized}`;
233
+ }
234
+ return normalized || ".";
164
235
  }
165
236
  //# sourceMappingURL=sstDocsConfigShared.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sstDocsConfigShared.js","sourceRoot":"","sources":["../../src/configs/sstDocsConfigShared.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,4BAA4B,EAC5B,oBAAoB,EACpB,cAAc,EACd,iBAAiB,GAClB,MAAM,4BAA4B,CAAC;AACpC,OAAO,IAAI,MAAM,WAAW,CAAC;AAQ7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAEjF,MAAM,CAAC,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AAE/D,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAC3C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;IACnC,CAAC;CACF;AAED,MAAM,UAAU,mBAAmB,CACjC,QAAgB,EAChB,UAAkB;IAElB,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,kBAAkB,CAC1B,mBAAmB,wBAAwB,KAAM,KAAe,CAAC,OAAO,EAAE,CAC3E,CAAC;IACJ,CAAC;IAED,OAAO,eAAe,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,UAAkB;IACrD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IAChE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,gBAAgB,IAAI,GAAG,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACtD,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,cAAc,GAClB,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAEhE,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,OAAO,GAAG,CAAC;IACb,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IAC9C,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,OAAe,EACf,MAAgE;IAEhE,MAAM,UAAU,GACd,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC;IAChE,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAE7D,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5C,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7B,GAAG,CAAC,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,IAAI,GAAG,EAAE,oBAAoB,CAAC,CAAC;QACvE,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,YAAY,CAAC,UAAU,CAAC,QAAQ,IAAI,GAAG,EAAE,oBAAoB,CAAC,CAAC;IAClF,OAAO,GAAG,UAAU,GAAG,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC,IAAI,EAAE,CAAC;AAC/D,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACxC,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,SAAS,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,EAAE,CAAC;IAC5E,OAAO,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,GAAG,CAAC;AACrE,CAAC;AAED,SAAS,YAAY,CAAC,IAAY,EAAE,KAAa;IAC/C,MAAM,cAAc,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,eAAe,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;IAChE,OAAO,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,CAAC;AACtD,CAAC;AAED,SAAS,aAAa,CAAC,KAAa;IAClC,IAAI,CAAC;QACH,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CACtB,KAAc,EACd,UAAkB;IAElB,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,MAAM,IAAI,kBAAkB,CAC1B,4BAA4B,UAAU,sBAAsB,CAC7D,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAG,KAAmC,CAAC;IAChD,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QACzC,MAAM,IAAI,kBAAkB,CAC1B,sCAAsC,UAAU,EAAE,CACnD,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,mBAAmB,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;IAChE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,kBAAkB,CAC1B,mCAAmC,UAAU,EAAE,CAChD,CAAC;IACJ,CAAC;IAED,OAAO;QACL,YAAY,EAAE,UAAU;QACxB,gBAAgB,EAAE,oBAAoB,CAAC,UAAU,CAAC;QAClD,eAAe,EAAE,uBAAuB,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC;QACzE,uBAAuB,EAAE,8BAA8B,CACrD,GAAG,CAAC,uBAAuB,EAC3B,UAAU,CACX;KACF,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAAc,EACd,UAAkB;IAElB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QACxC,MAAM,IAAI,kBAAkB,CAC1B,wCAAwC,UAAU,EAAE,CACrD,CAAC;IACJ,CAAC;IAED,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAgC,CAAC;IAExE,OAAO;QACL,OAAO,EAAE,uBAAuB,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC;QAChE,OAAO,EAAE,uBAAuB,CAAC,OAAO,EAAE,SAAS,EAAE,UAAU,CAAC;QAChE,QAAQ,EAAE,uBAAuB,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC;KACpE,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAC9B,KAAc,EACd,GAAW,EACX,UAAkB;IAElB,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5D,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,kBAAkB,CAC1B,mBAAmB,GAAG,wBAAwB,UAAU,EAAE,CAC3D,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED,SAAS,8BAA8B,CACrC,KAAc,EACd,UAAkB;IAElB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,kBAAkB,CAC1B,gDAAgD,UAAU,EAAE,CAC7D,CAAC;IACJ,CAAC;IAED,MAAM,EACJ,gBAAgB,EAChB,KAAK,EACL,iCAAiC,GAClC,GAAG,KAAgC,CAAC;IAErC,IAAI,OAAO,gBAAgB,KAAK,QAAQ,EAAE,CAAC;QACzC,MAAM,IAAI,kBAAkB,CAC1B,gEAAgE,UAAU,EAAE,CAC7E,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,CAAC;IACrE,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,kBAAkB,CAC1B,+DAA+D,UAAU,EAAE,CAC5E,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAI,kBAAkB,CAC1B,qDAAqD,UAAU,EAAE,CAClE,CAAC;IACJ,CAAC;IAED,IACE,iCAAiC,KAAK,SAAS;QAC/C,OAAO,iCAAiC,KAAK,SAAS,EACtD,CAAC;QACD,MAAM,IAAI,kBAAkB,CAC1B,kFAAkF,UAAU,EAAE,CAC/F,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,yBAAyB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAEnE,OAAO;QACL,gBAAgB,EAAE,eAAe;QACjC,KAAK,EAAE,aAAa;QACpB,iCAAiC,EAC9B,iCAAyD,IAAI,KAAK;KACtE,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAChC,KAAc,EACd,UAAkB;IAElB,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,MAAM,IAAI,kBAAkB,CAC1B,4DAA4D,UAAU,EAAE,CACzE,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,qBAAqB,CACrC,KAAK,EACL,UAAU,EACV,+BAA+B,CAChC,CAAC;IAEF,OAAO,UAAU,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,qBAAqB,CAC5B,GAAY,EACZ,UAAkB,EAClB,YAAoB;IAEpB,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACtC,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,IAAI,kBAAkB,CAC1B,GAAG,YAAY,oBAAoB,OAAO,OAAO,UAAU,EAAE,CAC9D,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,IAAI,kBAAkB,CAC1B,WAAW,YAAY,KAAK,GAAG,QAAQ,UAAU,wBAAwB,OAAO,EAAE,CACnF,CAAC;IACJ,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,UAAU,CAAC,KAAiB;IACnC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAe,CAAC;AACzD,CAAC"}
1
+ {"version":3,"file":"sstDocsConfigShared.js","sourceRoot":"","sources":["../../src/configs/sstDocsConfigShared.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,16 @@
1
1
  import type { Category } from "../types/Category.js";
2
+ import type { DataDiagnostic } from "../types/DataDiagnostic.js";
2
3
  import type { DocItem } from "../types/DocItem.js";
3
4
  import type { RawCategory } from "../types/RawCategory.js";
4
- export declare function buildTree(rawMap: Record<string, RawCategory>, allDocs: DocItem[]): {
5
+ import type { Logger } from "../types/Logger.js";
6
+ interface BuildTreeOptions {
7
+ logger?: Logger;
8
+ }
9
+ export interface BuildTreeResult {
5
10
  tree: Category[];
6
11
  usedDocIds: Set<string>;
7
- };
12
+ diagnostics: DataDiagnostic[];
13
+ }
14
+ export declare function buildTree(rawMap: Record<string, RawCategory>, allDocs: DocItem[], options?: BuildTreeOptions): BuildTreeResult;
15
+ export {};
8
16
  //# 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;AA2F3D,wBAAgB,SAAS,CACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EACnC,OAAO,EAAE,OAAO,EAAE,GACjB;IAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAAE,CA8C/C"}
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,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGjD,UAAU,gBAAgB;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACxB,WAAW,EAAE,cAAc,EAAE,CAAC;CAC/B;AA8HD,wBAAgB,SAAS,CACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EACnC,OAAO,EAAE,OAAO,EAAE,EAClB,OAAO,CAAC,EAAE,gBAAgB,GACzB,eAAe,CAkDjB"}
@@ -1,6 +1,14 @@
1
- function convertCategory(raw, rawMap, docLookup, usedDocIds, included, visiting) {
1
+ import { createLogger } from "../utilities/system/logger.js";
2
+ function convertCategory(raw, rawMap, docLookup, usedDocIds, included, visiting, diagnostics, logger) {
2
3
  if (visiting.has(raw.id)) {
3
- console.warn(`Detected circular category reference at ${raw.id}.`);
4
+ const message = `Detected circular category reference at ${raw.id}.`;
5
+ diagnostics.push({
6
+ code: "circular-category",
7
+ level: "warn",
8
+ message,
9
+ context: { categoryId: raw.id },
10
+ });
11
+ logger.warn(message);
4
12
  return null;
5
13
  }
6
14
  visiting.add(raw.id);
@@ -10,12 +18,26 @@ function convertCategory(raw, rawMap, docLookup, usedDocIds, included, visiting)
10
18
  const validDocs = docIds
11
19
  .map((rawId) => {
12
20
  if (typeof rawId !== "string" || rawId.length === 0) {
13
- console.warn(`Invalid doc id in category ${raw.id}:`, rawId);
21
+ const message = `Invalid doc id in category ${raw.id}.`;
22
+ diagnostics.push({
23
+ code: "invalid-doc-ref",
24
+ level: "warn",
25
+ message,
26
+ context: { categoryId: raw.id, docId: rawId },
27
+ });
28
+ logger.warn(message);
14
29
  return null;
15
30
  }
16
31
  const doc = docLookup.get(rawId);
17
32
  if (!doc) {
18
- console.warn(`Doc id ${rawId} referenced in category ${raw.id} not found.`);
33
+ const message = `Doc id ${rawId} referenced in category ${raw.id} not found.`;
34
+ diagnostics.push({
35
+ code: "missing-doc-ref",
36
+ level: "warn",
37
+ message,
38
+ context: { categoryId: raw.id, docId: rawId },
39
+ });
40
+ logger.warn(message);
19
41
  return null;
20
42
  }
21
43
  usedDocIds.add(rawId);
@@ -32,15 +54,29 @@ function convertCategory(raw, rawMap, docLookup, usedDocIds, included, visiting)
32
54
  const validChildren = childIds
33
55
  .map((rawChildId) => {
34
56
  if (typeof rawChildId !== "string" || rawChildId.length === 0) {
35
- console.warn(`Invalid child category id in ${raw.id}:`, rawChildId);
57
+ const message = `Invalid child category id in ${raw.id}.`;
58
+ diagnostics.push({
59
+ code: "invalid-child-ref",
60
+ level: "warn",
61
+ message,
62
+ context: { categoryId: raw.id, childId: rawChildId },
63
+ });
64
+ logger.warn(message);
36
65
  return null;
37
66
  }
38
67
  const childRaw = rawMap[rawChildId];
39
68
  if (!childRaw) {
40
- console.warn(`Child category ${rawChildId} referenced in ${raw.id} not found.`);
69
+ const message = `Child category ${rawChildId} referenced in ${raw.id} not found.`;
70
+ diagnostics.push({
71
+ code: "missing-child-ref",
72
+ level: "warn",
73
+ message,
74
+ context: { categoryId: raw.id, childId: rawChildId },
75
+ });
76
+ logger.warn(message);
41
77
  return null;
42
78
  }
43
- return convertCategory(childRaw, rawMap, docLookup, usedDocIds, included, visiting);
79
+ return convertCategory(childRaw, rawMap, docLookup, usedDocIds, included, visiting, diagnostics, logger);
44
80
  })
45
81
  .filter((child) => child !== null);
46
82
  if (validChildren.length > 0) {
@@ -58,10 +94,12 @@ function convertCategory(raw, rawMap, docLookup, usedDocIds, included, visiting)
58
94
  children,
59
95
  };
60
96
  }
61
- export function buildTree(rawMap, allDocs) {
97
+ export function buildTree(rawMap, allDocs, options) {
62
98
  const docLookup = new Map(allDocs.map((d) => [d.id, d]));
63
99
  const usedDocIds = new Set();
64
100
  const includedIds = new Set();
101
+ const diagnostics = [];
102
+ const logger = options?.logger ?? createLogger("data:buildTree");
65
103
  const childCategoryIds = new Set();
66
104
  Object.values(rawMap).forEach((category) => {
67
105
  if (Array.isArray(category?.children)) {
@@ -83,9 +121,9 @@ export function buildTree(rawMap, allDocs) {
83
121
  .map((rootCategory) => {
84
122
  if (includedIds.has(rootCategory.id))
85
123
  return null;
86
- return convertCategory(rootCategory, rawMap, docLookup, usedDocIds, includedIds, new Set());
124
+ return convertCategory(rootCategory, rawMap, docLookup, usedDocIds, includedIds, new Set(), diagnostics, logger);
87
125
  })
88
126
  .filter((category) => category !== null);
89
- return { tree, usedDocIds };
127
+ return { tree, usedDocIds, diagnostics };
90
128
  }
91
129
  //# sourceMappingURL=buildTree.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buildTree.js","sourceRoot":"","sources":["../../src/data/buildTree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildTree.js","sourceRoot":"","sources":["../../src/data/buildTree.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { DataProvider } from "../types/DataProvider.js";
2
+ export declare class FsDataProvider implements DataProvider {
3
+ readJson<T>(_absPath: string): Promise<T>;
4
+ }
5
+ export declare const fsDataProvider: typeof FsDataProvider;
6
+ //# sourceMappingURL=fsDataProvider.browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fsDataProvider.browser.d.ts","sourceRoot":"","sources":["../../src/data/fsDataProvider.browser.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,qBAAa,cAAe,YAAW,YAAY;IAC3C,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAKhD;AAED,eAAO,MAAM,cAAc,uBAAiB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export class FsDataProvider {
2
+ async readJson(_absPath) {
3
+ throw new Error("FsDataProvider is only available in Node.js environments where the file system can be read.");
4
+ }
5
+ }
6
+ export const fsDataProvider = FsDataProvider;
7
+ //# sourceMappingURL=fsDataProvider.browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fsDataProvider.browser.js","sourceRoot":"","sources":["../../src/data/fsDataProvider.browser.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,cAAc;IACzB,KAAK,CAAC,QAAQ,CAAI,QAAgB;QAChC,MAAM,IAAI,KAAK,CACb,6FAA6F,CAC9F,CAAC;IACJ,CAAC;CACF;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fsDataProvider.d.ts","sourceRoot":"","sources":["../../src/data/fsDataProvider.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,qBAAa,cAAe,YAAW,YAAY;IAC3C,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAkB/C;AAED,eAAO,MAAM,cAAc,uBAAiB,CAAC"}
1
+ {"version":3,"file":"fsDataProvider.d.ts","sourceRoot":"","sources":["../../src/data/fsDataProvider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,qBAAa,cAAe,YAAW,YAAY;IAC3C,QAAQ,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAkB/C;AAED,eAAO,MAAM,cAAc,uBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"fsDataProvider.js","sourceRoot":"","sources":["../../src/data/fsDataProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAG5C,MAAM,OAAO,cAAc;IACzB,KAAK,CAAC,QAAQ,CAAI,OAAe;QAC/B,IAAI,QAAgB,CAAC;QACrB,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,4BAA4B,OAAO,KAAM,KAAe,CAAC,OAAO,EAAE,CACnE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAM,CAAC;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,6BAA6B,OAAO,KAAM,KAAe,CAAC,OAAO,EAAE,CACpE,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,cAAc,CAAC"}
1
+ {"version":3,"file":"fsDataProvider.js","sourceRoot":"","sources":["../../src/data/fsDataProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAI5C,MAAM,OAAO,cAAc;IACzB,KAAK,CAAC,QAAQ,CAAI,OAAe;QAC/B,IAAI,QAAgB,CAAC;QACrB,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC7C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,4BAA4B,OAAO,KAAM,KAAe,CAAC,OAAO,EAAE,CACnE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAM,CAAC;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,6BAA6B,OAAO,KAAM,KAAe,CAAC,OAAO,EAAE,CACpE,CAAC;QACJ,CAAC;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,cAAc,GAAG,cAAc,CAAC"}
@@ -0,0 +1,8 @@
1
+ export { buildTree } from "./buildTree.js";
2
+ export { loadAllCategories } from "./loadAllCategories.js";
3
+ export { loadAllItems } from "./loadAllItems.js";
4
+ export { loadVersionData, loadVersionDataFromHttp, } from "./loadVersionData.js";
5
+ export { loadVersions } from "./loadVersions.js";
6
+ export { loadProducts } from "./loadProducts.js";
7
+ export { HttpDataProvider, httpDataProvider } from "./httpDataProvider.js";
8
+ //# sourceMappingURL=index.browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../../src/data/index.browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EACL,eAAe,EACf,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,8 @@
1
+ export { buildTree } from "./buildTree.js";
2
+ export { loadAllCategories } from "./loadAllCategories.js";
3
+ export { loadAllItems } from "./loadAllItems.js";
4
+ export { loadVersionData, loadVersionDataFromHttp, } from "./loadVersionData.js";
5
+ export { loadVersions } from "./loadVersions.js";
6
+ export { loadProducts } from "./loadProducts.js";
7
+ export { HttpDataProvider, httpDataProvider } from "./httpDataProvider.js";
8
+ //# sourceMappingURL=index.browser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.browser.js","sourceRoot":"","sources":["../../src/data/index.browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EACL,eAAe,EACf,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,8 +1,10 @@
1
1
  export { buildTree } from "./buildTree.js";
2
2
  export { loadAllCategories } from "./loadAllCategories.js";
3
3
  export { loadAllItems } from "./loadAllItems.js";
4
- export { loadVersionData } from "./loadVersionData.js";
4
+ export { loadVersionData, loadVersionDataFromHttp, } from "./loadVersionData.js";
5
+ export { loadVersionDataFromFs } from "./loadVersionData.fs.js";
5
6
  export { loadVersions } from "./loadVersions.js";
7
+ export { loadProducts } from "./loadProducts.js";
6
8
  export { FsDataProvider, fsDataProvider } from "./fsDataProvider.js";
7
9
  export { HttpDataProvider, httpDataProvider } from "./httpDataProvider.js";
8
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/data/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/data/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EACL,eAAe,EACf,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC"}
@@ -1,8 +1,10 @@
1
1
  export { buildTree } from "./buildTree.js";
2
2
  export { loadAllCategories } from "./loadAllCategories.js";
3
3
  export { loadAllItems } from "./loadAllItems.js";
4
- export { loadVersionData } from "./loadVersionData.js";
4
+ export { loadVersionData, loadVersionDataFromHttp, } from "./loadVersionData.js";
5
+ export { loadVersionDataFromFs } from "./loadVersionData.fs.js";
5
6
  export { loadVersions } from "./loadVersions.js";
7
+ export { loadProducts } from "./loadProducts.js";
6
8
  export { FsDataProvider, fsDataProvider } from "./fsDataProvider.js";
7
9
  export { HttpDataProvider, httpDataProvider } from "./httpDataProvider.js";
8
10
  //# sourceMappingURL=index.js.map