jamdesk 1.1.89 → 1.1.91

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 (85) hide show
  1. package/dist/__tests__/integration/validate.integration.test.js +2 -1
  2. package/dist/__tests__/integration/validate.integration.test.js.map +1 -1
  3. package/dist/__tests__/unit/dev-workspace-symlinks.test.d.ts +2 -0
  4. package/dist/__tests__/unit/dev-workspace-symlinks.test.d.ts.map +1 -0
  5. package/dist/__tests__/unit/dev-workspace-symlinks.test.js +112 -0
  6. package/dist/__tests__/unit/dev-workspace-symlinks.test.js.map +1 -0
  7. package/dist/__tests__/unit/docs-config-discovery.test.d.ts +2 -0
  8. package/dist/__tests__/unit/docs-config-discovery.test.d.ts.map +1 -0
  9. package/dist/__tests__/unit/docs-config-discovery.test.js +190 -0
  10. package/dist/__tests__/unit/docs-config-discovery.test.js.map +1 -0
  11. package/dist/__tests__/unit/docs-config.test.js +2 -1
  12. package/dist/__tests__/unit/docs-config.test.js.map +1 -1
  13. package/dist/__tests__/unit/language-filter.test.d.ts +2 -0
  14. package/dist/__tests__/unit/language-filter.test.d.ts.map +1 -0
  15. package/dist/__tests__/unit/language-filter.test.js +166 -0
  16. package/dist/__tests__/unit/language-filter.test.js.map +1 -0
  17. package/dist/__tests__/unit/output.test.d.ts +2 -0
  18. package/dist/__tests__/unit/output.test.d.ts.map +1 -0
  19. package/dist/__tests__/unit/output.test.js +61 -0
  20. package/dist/__tests__/unit/output.test.js.map +1 -0
  21. package/dist/commands/dev.d.ts.map +1 -1
  22. package/dist/commands/dev.js +4 -1
  23. package/dist/commands/dev.js.map +1 -1
  24. package/dist/commands/doctor.d.ts.map +1 -1
  25. package/dist/commands/doctor.js +14 -12
  26. package/dist/commands/doctor.js.map +1 -1
  27. package/dist/commands/validate.d.ts.map +1 -1
  28. package/dist/commands/validate.js +14 -2
  29. package/dist/commands/validate.js.map +1 -1
  30. package/dist/lib/docs-config.d.ts +54 -3
  31. package/dist/lib/docs-config.d.ts.map +1 -1
  32. package/dist/lib/docs-config.js +126 -8
  33. package/dist/lib/docs-config.js.map +1 -1
  34. package/dist/lib/language-filter.d.ts +31 -0
  35. package/dist/lib/language-filter.d.ts.map +1 -0
  36. package/dist/lib/language-filter.js +14 -0
  37. package/dist/lib/language-filter.js.map +1 -0
  38. package/package.json +1 -1
  39. package/vendored/app/api/r2/[project]/[...path]/route.ts +14 -9
  40. package/vendored/app/layout.tsx +2 -2
  41. package/vendored/components/HtmlLangSync.tsx +3 -2
  42. package/vendored/components/mdx/Accordion.tsx +1 -1
  43. package/vendored/components/mdx/Card.tsx +1 -1
  44. package/vendored/components/mdx/CodeGroup.tsx +18 -23
  45. package/vendored/components/mdx/Color.tsx +0 -1
  46. package/vendored/components/mdx/Icon.tsx +1 -1
  47. package/vendored/components/mdx/MDXComponents.tsx +92 -66
  48. package/vendored/components/mdx/OpenApiEndpoint.tsx +0 -1
  49. package/vendored/components/mdx/ParamField.tsx +0 -1
  50. package/vendored/components/mdx/RequestExample.tsx +0 -1
  51. package/vendored/components/mdx/ResponseExample.tsx +0 -1
  52. package/vendored/components/mdx/Steps.tsx +12 -3
  53. package/vendored/components/mdx/Table.tsx +8 -2
  54. package/vendored/components/mdx/Tabs.tsx +1 -1
  55. package/vendored/components/mdx/Tree.tsx +6 -4
  56. package/vendored/components/navigation/Header.tsx +7 -5
  57. package/vendored/components/navigation/LanguageSelector.tsx +32 -7
  58. package/vendored/components/navigation/TableOfContents.tsx +1 -1
  59. package/vendored/components/navigation/TabsNav.tsx +17 -5
  60. package/vendored/components/search/SearchModal.tsx +41 -36
  61. package/vendored/components/ui/CodePanel.tsx +2 -2
  62. package/vendored/hooks/useChat.ts +1 -1
  63. package/vendored/hooks/useShikiHighlight.ts +7 -1
  64. package/vendored/lib/build/error-parser.ts +38 -12
  65. package/vendored/lib/code-utils.ts +6 -2
  66. package/vendored/lib/health-checks.ts +2 -2
  67. package/vendored/lib/language-utils.ts +53 -2
  68. package/vendored/lib/layout-helpers.tsx +2 -1
  69. package/vendored/lib/mdx-inline-components.ts +1 -1
  70. package/vendored/lib/navigation-resolver.ts +0 -69
  71. package/vendored/lib/normalize-config.ts +1 -1
  72. package/vendored/lib/openapi/generator.ts +3 -3
  73. package/vendored/lib/openapi/parser.ts +14 -6
  74. package/vendored/lib/openapi/validator.ts +2 -2
  75. package/vendored/lib/openapi-isr.ts +4 -1
  76. package/vendored/lib/public-paths-resolver.ts +7 -6
  77. package/vendored/lib/redis.ts +2 -2
  78. package/vendored/lib/rehype-code-meta.ts +2 -2
  79. package/vendored/lib/render-doc-page.tsx +2 -2
  80. package/vendored/lib/seo.ts +21 -6
  81. package/vendored/lib/shiki-highlighter.ts +1 -1
  82. package/vendored/lib/snippet-loader-isr.ts +1 -1
  83. package/vendored/lib/validate-config.ts +136 -8
  84. package/vendored/shared/status-reporter.ts +12 -0
  85. package/vendored/workspace-package-lock.json +16 -16
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/commands/validate.ts"],"names":[],"mappings":"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"}
@@ -38,6 +38,8 @@ export interface ValidationResult {
38
38
  valid: boolean;
39
39
  config?: DocsConfig;
40
40
  error?: string;
41
+ discovery?: DocsJsonDiscovery;
42
+ discoveryHint?: string;
41
43
  }
42
44
  type Schema = Record<string, unknown>;
43
45
  export declare const MIGRATION_DOCS_URL = "https://jamdesk.com/docs/setup/migration";
@@ -53,12 +55,61 @@ export declare function parseConfig(content: string): DocsConfig;
53
55
  * Format validation errors into user-friendly messages
54
56
  */
55
57
  export declare function formatValidationErrors(errors: ErrorObject[] | null | undefined): string;
58
+ export interface DocsJsonDiscovery {
59
+ /** Repo-relative paths (POSIX separators), sorted, to docs.json files. */
60
+ foundAt: string[];
61
+ /** First-level entries at the repo root, sorted. */
62
+ rootEntries: string[];
63
+ /** True if the walk hit DISCOVER_MAX_ENTRIES before finishing. */
64
+ truncated: boolean;
65
+ }
56
66
  /**
57
- * Validate docs.json configuration
67
+ * Walk `repoRoot` looking for any `docs.json`. Used only on the failure path —
68
+ * gives ops a snapshot of what was cloned and lets us suggest the right docsPath.
69
+ *
70
+ * Documented behavior (covered by tests):
71
+ * - Case-sensitive filename match (`docs.json` only, not `Docs.json`).
72
+ * - Skips directories whose name starts with `.` (so `.config/docs.json` is invisible).
73
+ * - Skips symlinks unconditionally (cycle defense).
74
+ * - Output paths use POSIX separators on all platforms.
75
+ * - `rootEntries` is the raw, sorted listing of the repo's top-level entries — it is
76
+ * captured once at depth 0 and is NOT bounded by DISCOVER_MAX_ENTRIES. Persistence
77
+ * layers (Firestore writes, structured logs) slice it to a fixed cap on their side.
78
+ *
79
+ * Limits: DISCOVER_MAX_DEPTH=3, DISCOVER_MAX_ENTRIES=500.
58
80
  */
59
- export declare function validateConfig(configPath: string): Promise<ValidationResult>;
81
+ export declare function discoverDocsJson(repoRoot: string): Promise<DocsJsonDiscovery>;
60
82
  /**
61
- * Load docs.json config from a path
83
+ * Build the prose remediation hint from a discovery snapshot. Pure function —
84
+ * separated from validateConfig so it can be unit-tested directly and so the
85
+ * hint phrasings live in one named place.
86
+ *
87
+ * Wording diverges intentionally from the build-service copy
88
+ * (`build-service/lib/validate-config.ts`): the CLI runs locally, so a
89
+ * customer has no "docs path setting" to adjust and isn't necessarily on
90
+ * a pushed commit. The fix is to `cd` into the right directory.
91
+ */
92
+ export declare function synthesizeDiscoveryHint(foundAt: string[], expectedRel: string, _docsPath?: string, truncated?: boolean): string;
93
+ /**
94
+ * Validate docs.json configuration.
95
+ * @param configPath - Full path to docs.json
96
+ * @param docsPath - Optional monorepo path for better error messages (e.g., "jamdesk")
97
+ * @param repoRoot - Optional repo root; when supplied, missing-file errors include
98
+ * a discovery snapshot and a remediation hint.
99
+ */
100
+ export declare function validateConfig(configPath: string, docsPath?: string, repoRoot?: string): Promise<ValidationResult>;
101
+ /**
102
+ * Loads and validates docs.json from `configPath`. Returns the parsed config
103
+ * on success, or `null` on any validation failure (the error is swallowed).
104
+ *
105
+ * Note: this does NOT pass `repoRoot` to validateConfig, even though the plan
106
+ * (2026-05-13-docs-json-missing-diagnostics.md, Step 5.2b) prescribed it. Because
107
+ * loadDocsConfig discards the entire result on failure, passing repoRoot would
108
+ * pay for a filesystem walk and throw the hint away. Downstream callers
109
+ * (deploy.ts, spellcheck.ts, broken-links.ts, deploy/cloudflare.ts) therefore
110
+ * do not surface the discovery hint on missing-file failures. If a future caller
111
+ * needs the diagnostic, call validateConfig() directly with process.cwd() as
112
+ * repoRoot and surface `result.discoveryHint`.
62
113
  */
63
114
  export declare function loadDocsConfig(configPath: string): Promise<DocsConfig | null>;
64
115
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"docs-config.d.ts","sourceRoot":"","sources":["../../src/lib/docs-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,KAAK,CAAC;AAkBvC,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACpC,UAAU,EAAE,gBAAgB,CAAC;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC7B,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC;IACjB,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,EAAE,CAAC;IACtB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,CAAC,MAAM,GAAG,eAAe,CAAC,EAAE,CAAC;IACrC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAQtC,eAAO,MAAM,kBAAkB,6CAA6C,CAAC;AA8B7E;;GAEG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgCxD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAQvD;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,CAwCvF;AA8ED;;GAEG;AACH,wBAAsB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA8GlF;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAGnF;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,EAAE,CA0B5D"}
1
+ {"version":3,"file":"docs-config.d.ts","sourceRoot":"","sources":["../../src/lib/docs-config.ts"],"names":[],"mappings":"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"}
@@ -197,10 +197,107 @@ function deduplicateErrors(errors) {
197
197
  return true;
198
198
  });
199
199
  }
200
+ /** Limits keep worst-case repos (huge monorepos, generated dirs) cheap on failure. */
201
+ const DISCOVER_MAX_DEPTH = 3;
202
+ const DISCOVER_MAX_ENTRIES = 500;
203
+ const DISCOVER_SKIP_DIRS = new Set([
204
+ 'node_modules', '.git', '.next', '.turbo', '.cache',
205
+ 'dist', 'build', 'out', '.vercel', 'coverage',
206
+ ]);
200
207
  /**
201
- * Validate docs.json configuration
208
+ * Walk `repoRoot` looking for any `docs.json`. Used only on the failure path —
209
+ * gives ops a snapshot of what was cloned and lets us suggest the right docsPath.
210
+ *
211
+ * Documented behavior (covered by tests):
212
+ * - Case-sensitive filename match (`docs.json` only, not `Docs.json`).
213
+ * - Skips directories whose name starts with `.` (so `.config/docs.json` is invisible).
214
+ * - Skips symlinks unconditionally (cycle defense).
215
+ * - Output paths use POSIX separators on all platforms.
216
+ * - `rootEntries` is the raw, sorted listing of the repo's top-level entries — it is
217
+ * captured once at depth 0 and is NOT bounded by DISCOVER_MAX_ENTRIES. Persistence
218
+ * layers (Firestore writes, structured logs) slice it to a fixed cap on their side.
219
+ *
220
+ * Limits: DISCOVER_MAX_DEPTH=3, DISCOVER_MAX_ENTRIES=500.
202
221
  */
203
- export async function validateConfig(configPath) {
222
+ export async function discoverDocsJson(repoRoot) {
223
+ const foundAt = [];
224
+ let rootEntries = [];
225
+ let seen = 0;
226
+ let truncated = false;
227
+ async function walk(absDir, relDir, depth) {
228
+ if (truncated || depth > DISCOVER_MAX_DEPTH)
229
+ return;
230
+ let entries;
231
+ try {
232
+ entries = await fs.promises.readdir(absDir, { withFileTypes: true });
233
+ }
234
+ catch {
235
+ return;
236
+ }
237
+ if (depth === 0) {
238
+ rootEntries = entries.map(e => e.name).sort();
239
+ }
240
+ for (const entry of entries) {
241
+ if (entry.isSymbolicLink())
242
+ continue;
243
+ if (entry.isDirectory() && (DISCOVER_SKIP_DIRS.has(entry.name) || entry.name.startsWith('.')))
244
+ continue;
245
+ if (++seen > DISCOVER_MAX_ENTRIES) {
246
+ truncated = true;
247
+ return;
248
+ }
249
+ const rel = relDir ? `${relDir}/${entry.name}` : entry.name;
250
+ if (entry.isDirectory()) {
251
+ await walk(path.join(absDir, entry.name), rel, depth + 1);
252
+ }
253
+ else if (entry.isFile() && entry.name === 'docs.json') {
254
+ foundAt.push(rel);
255
+ }
256
+ }
257
+ }
258
+ await walk(repoRoot, '', 0);
259
+ foundAt.sort();
260
+ return { foundAt, rootEntries, truncated };
261
+ }
262
+ /**
263
+ * Build the prose remediation hint from a discovery snapshot. Pure function —
264
+ * separated from validateConfig so it can be unit-tested directly and so the
265
+ * hint phrasings live in one named place.
266
+ *
267
+ * Wording diverges intentionally from the build-service copy
268
+ * (`build-service/lib/validate-config.ts`): the CLI runs locally, so a
269
+ * customer has no "docs path setting" to adjust and isn't necessarily on
270
+ * a pushed commit. The fix is to `cd` into the right directory.
271
+ */
272
+ export function synthesizeDiscoveryHint(foundAt, expectedRel, _docsPath, truncated = false) {
273
+ const elsewhere = foundAt.filter(p => p !== expectedRel);
274
+ if (elsewhere.length === 1) {
275
+ // path.posix.dirname returns '.' for files at the root (e.g. 'docs.json' → '.').
276
+ const dir = path.posix.dirname(elsewhere[0]);
277
+ if (dir === '.') {
278
+ return 'We found docs.json at the current directory root.';
279
+ }
280
+ return `We found docs.json at '${elsewhere[0]}'. cd into '${dir}' and try again.`;
281
+ }
282
+ if (elsewhere.length > 1) {
283
+ const list = elsewhere.slice(0, 3).map(p => `'${p}'`).join(', ');
284
+ const more = elsewhere.length > 3 ? ` and ${elsewhere.length - 3} more` : '';
285
+ return `We found docs.json at: ${list}${more}. cd into one of these directories.`;
286
+ }
287
+ const base = "We could not find a docs.json file anywhere here. "
288
+ + "Make sure you're in your project directory, or run `jamdesk init` to create a new one.";
289
+ return truncated
290
+ ? `${base} (Search stopped at ${DISCOVER_MAX_ENTRIES} entries — docs.json may live deeper than we looked.)`
291
+ : base;
292
+ }
293
+ /**
294
+ * Validate docs.json configuration.
295
+ * @param configPath - Full path to docs.json
296
+ * @param docsPath - Optional monorepo path for better error messages (e.g., "jamdesk")
297
+ * @param repoRoot - Optional repo root; when supplied, missing-file errors include
298
+ * a discovery snapshot and a remediation hint.
299
+ */
300
+ export async function validateConfig(configPath, docsPath, repoRoot) {
204
301
  // Check file exists
205
302
  if (!fs.existsSync(configPath)) {
206
303
  // mint.json sitting where docs.json should be is the un-migrated case.
@@ -208,10 +305,21 @@ export async function validateConfig(configPath) {
208
305
  if (fs.existsSync(mintPath)) {
209
306
  return mintlifyMigrationError('Found `mint.json` but no `docs.json`.');
210
307
  }
211
- return {
212
- valid: false,
213
- error: 'docs.json not found. Run `jamdesk init` to create a new project.',
214
- };
308
+ const baseError = docsPath
309
+ ? `Missing docs.json at '${docsPath}/docs.json'. Check that your monorepo path is correct.`
310
+ : 'Missing docs.json. Run `jamdesk init` to create a new project, or cd into a project directory.';
311
+ if (!repoRoot) {
312
+ return { valid: false, error: baseError };
313
+ }
314
+ const discovery = await discoverDocsJson(repoRoot);
315
+ const normalizedDocsPath = docsPath
316
+ ? path.posix.normalize(docsPath.replace(/\\/g, '/').replace(/^\.\//, '')).replace(/\/$/, '')
317
+ : '';
318
+ const expectedRel = normalizedDocsPath
319
+ ? path.posix.join(normalizedDocsPath, 'docs.json')
320
+ : 'docs.json';
321
+ const discoveryHint = synthesizeDiscoveryHint(discovery.foundAt, expectedRel, docsPath, discovery.truncated);
322
+ return { valid: false, error: baseError, discovery, discoveryHint };
215
323
  }
216
324
  // Read and parse file
217
325
  let config;
@@ -304,10 +412,20 @@ export async function validateConfig(configPath) {
304
412
  };
305
413
  }
306
414
  /**
307
- * Load docs.json config from a path
415
+ * Loads and validates docs.json from `configPath`. Returns the parsed config
416
+ * on success, or `null` on any validation failure (the error is swallowed).
417
+ *
418
+ * Note: this does NOT pass `repoRoot` to validateConfig, even though the plan
419
+ * (2026-05-13-docs-json-missing-diagnostics.md, Step 5.2b) prescribed it. Because
420
+ * loadDocsConfig discards the entire result on failure, passing repoRoot would
421
+ * pay for a filesystem walk and throw the hint away. Downstream callers
422
+ * (deploy.ts, spellcheck.ts, broken-links.ts, deploy/cloudflare.ts) therefore
423
+ * do not surface the discovery hint on missing-file failures. If a future caller
424
+ * needs the diagnostic, call validateConfig() directly with process.cwd() as
425
+ * repoRoot and surface `result.discoveryHint`.
308
426
  */
309
427
  export async function loadDocsConfig(configPath) {
310
- const result = await validateConfig(configPath);
428
+ const result = await validateConfig(configPath, undefined);
311
429
  return result.valid ? (result.config ?? null) : null;
312
430
  }
313
431
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"docs-config.js","sourceRoot":"","sources":["../../src/lib/docs-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docs-config.js","sourceRoot":"","sources":["../../src/lib/docs-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,gBAAgB,MAAM,aAAa,CAAC;AAC3C,gFAAgF;AAChF,MAAM,UAAU,GAAI,gBAAwB,CAAC,OAAO,IAAI,gBAAgB,CAAC;AACzE,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEvC,4EAA4E;AAC5E,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;AAErD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AA8C3C,sFAAsF;AACtF,0FAA0F;AAC1F,8EAA8E;AAC9E,kFAAkF;AAClF,qFAAqF;AACrF,uDAAuD;AACvD,MAAM,CAAC,MAAM,kBAAkB,GAAG,0CAA0C,CAAC;AAE7E,MAAM,eAAe,GAAG;IACtB,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO;IACtE,QAAQ,EAAE,SAAS,EAAE,MAAM;CAC5B,CAAC;AAEF,SAAS,kBAAkB,CAAC,MAAe;IACzC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACxD,MAAM,MAAM,GAAI,MAAkC,CAAC,OAAO,CAAC;IAC3D,OAAO,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc;IAC3C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;AACpF,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAc;IAC5C,OAAO;QACL,KAAK,EAAE,KAAK;QACZ,KAAK,EACH,GAAG,MAAM,oDAAoD;YAC7D,6EAA6E;YAC7E,yDAAyD,kBAAkB,eAAe;KAC7F,CAAC;AACJ,CAAC;AAED,mBAAmB;AACnB,IAAI,YAAY,GAAkB,IAAI,CAAC;AAEvC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS;IAC7B,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,oDAAoD;IACpD,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,wCAAwC,CAAC,CAAC;IACzF,IAAI,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACrC,MAAM,aAAa,GAAG,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QAClE,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAW,CAAC;QACnD,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,qCAAqC;IACrC,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC;QAE3D,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,mCAAmC,EAAE;YAChE,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC,CAAC;QACH,YAAY,CAAC,OAAO,CAAC,CAAC;QAEtB,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;YAChB,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAY,CAAC;YAC/C,OAAO,YAAY,CAAC;QACtB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,gDAAgD;IAClD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,IAAI,CAAC;QACH,uDAAuD;QACvD,OAAO,KAAK,CAAC,KAAK,CAAC,OAAO,CAAe,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,4BAA4B;QAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAe,CAAC;IAC3C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAwC;IAC7E,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,OAAO,0BAA0B,CAAC;IACpC,CAAC;IAED,+DAA+D;IAC/D,iGAAiG;IACjG,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAEhD,MAAM,SAAS,GAAG,EAAE,CAAC;IACrB,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;QAC5D,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC;QAErC,QAAQ,GAAG,CAAC,OAAO,EAAE,CAAC;YACpB,KAAK,UAAU;gBACb,OAAO,+BAAgC,GAAG,CAAC,MAAuC,CAAC,eAAe,QAAQ,IAAI,EAAE,CAAC;YACnH,KAAK,MAAM;gBACT,OAAO,uBAAuB,IAAI,cAAe,GAAG,CAAC,MAA4B,CAAC,IAAI,EAAE,CAAC;YAC3F,KAAK,MAAM;gBACT,OAAO,wBAAwB,IAAI,oBAAqB,GAAG,CAAC,MAAuC,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAClI,KAAK,OAAO;gBACV,OAAO,wBAAwB,IAAI,cAAe,GAAG,CAAC,MAAoC,CAAC,YAAY,GAAG,CAAC;YAC7G,KAAK,sBAAsB;gBACzB,OAAO,yBAA0B,GAAG,CAAC,MAA0C,CAAC,kBAAkB,QAAQ,IAAI,EAAE,CAAC;YACnH,KAAK,WAAW;gBACd,OAAO,gBAAgB,IAAI,oBAAoB,CAAC;YAClD,KAAK,SAAS;gBACZ,OAAO,yBAAyB,IAAI,EAAE,CAAC;YACzC,KAAK,OAAO;gBACV,OAAO,wBAAwB,IAAI,qCAAqC,CAAC;YAC3E;gBACE,OAAO,OAAO,GAAG,CAAC,OAAO,OAAO,IAAI,EAAE,CAAC;QAC3C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,cAAc,CAAC,MAAM,GAAG,SAAS,EAAE,CAAC;QACtC,QAAQ,CAAC,IAAI,CAAC,YAAY,cAAc,CAAC,MAAM,GAAG,SAAS,gBAAgB,CAAC,CAAC;IAC/E,CAAC;IAED,OAAO,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED;;;;;GAKG;AACH,SAAS,gBAAgB,CAAC,MAAqB;IAC7C,sEAAsE;IACtE,yCAAyC;IACzC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAyB,CAAC;IACtD,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACtD,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACxB,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC9B,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC/B,CAAC;YACD,YAAY,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;IAED,uEAAuE;IACvE,IAAI,cAAc,GAAkB,IAAI,CAAC;IACzC,KAAK,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,YAAY,EAAE,CAAC;QAC1C,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACvC,CAAC,CAAC,OAAO,KAAK,OAAO,IAAI,CAAC,CAAC,YAAY,KAAK,QAAQ,CACrD,CAAC;QACF,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACxB,cAAc,GAAG,MAAM,CAAC;YACxB,MAAM;QACR,CAAC;IACH,CAAC;IAED,sDAAsD;IACtD,kEAAkE;IAClE,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;QACnC,wEAAwE;QACxE,IAAI,GAAG,CAAC,OAAO,KAAK,OAAO,IAAI,GAAG,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC7D,OAAO,KAAK,CAAC;QACf,CAAC;QAED,+EAA+E;QAC/E,IAAI,GAAG,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,wEAAwE;QACxE,wCAAwC;QACxC,IAAI,cAAc,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACtD,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,cAAc,EAAE,CAAC;gBACzC,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,OAAO,iBAAiB,CAAC,QAAQ,CAAC,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,MAAqB;IAC9C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;QACzB,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/E,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACd,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACL,CAAC;AAED,sFAAsF;AACtF,MAAM,kBAAkB,GAAG,CAAC,CAAC;AAC7B,MAAM,oBAAoB,GAAG,GAAG,CAAC;AACjC,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ;IACnD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU;CAC9C,CAAC,CAAC;AAWH;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,QAAgB;IACrD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,WAAW,GAAa,EAAE,CAAC;IAC/B,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,KAAK,UAAU,IAAI,CAAC,MAAc,EAAE,MAAc,EAAE,KAAa;QAC/D,IAAI,SAAS,IAAI,KAAK,GAAG,kBAAkB;YAAE,OAAO;QACpD,IAAI,OAAoB,CAAC;QACzB,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACvE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QACD,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAChB,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QAChD,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,KAAK,CAAC,cAAc,EAAE;gBAAE,SAAS;YACrC,IAAI,KAAK,CAAC,WAAW,EAAE,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;gBAAE,SAAS;YACxG,IAAI,EAAE,IAAI,GAAG,oBAAoB,EAAE,CAAC;gBAClC,SAAS,GAAG,IAAI,CAAC;gBACjB,OAAO;YACT,CAAC;YACD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;YAC5D,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;gBACxB,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YAC5D,CAAC;iBAAM,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACxD,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAC5B,OAAO,CAAC,IAAI,EAAE,CAAC;IACf,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC;AAC7C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAiB,EACjB,WAAmB,EACnB,SAAkB,EAClB,YAAqB,KAAK;IAE1B,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC;IACzD,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3B,iFAAiF;QACjF,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;YAChB,OAAO,mDAAmD,CAAC;QAC7D,CAAC;QACD,OAAO,0BAA0B,SAAS,CAAC,CAAC,CAAC,eAAe,GAAG,kBAAkB,CAAC;IACpF,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,SAAS,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,OAAO,0BAA0B,IAAI,GAAG,IAAI,qCAAqC,CAAC;IACpF,CAAC;IACD,MAAM,IAAI,GAAG,oDAAoD;UAC7D,wFAAwF,CAAC;IAC7F,OAAO,SAAS;QACd,CAAC,CAAC,GAAG,IAAI,uBAAuB,oBAAoB,uDAAuD;QAC3G,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,UAAkB,EAClB,QAAiB,EACjB,QAAiB;IAEjB,oBAAoB;IACpB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,uEAAuE;QACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;QAChF,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,sBAAsB,CAAC,uCAAuC,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,SAAS,GAAG,QAAQ;YACxB,CAAC,CAAC,yBAAyB,QAAQ,wDAAwD;YAC3F,CAAC,CAAC,gGAAgG,CAAC;QAErG,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;QAC5C,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QAEnD,MAAM,kBAAkB,GAAG,QAAQ;YACjC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;YAC5F,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,WAAW,GAAG,kBAAkB;YACpC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC;YAClD,CAAC,CAAC,WAAW,CAAC;QAEhB,MAAM,aAAa,GAAG,uBAAuB,CAAC,SAAS,CAAC,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;QAE7G,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;IACtE,CAAC;IAED,sBAAsB;IACtB,IAAI,MAAkB,CAAC;IACvB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACrD,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,QAAQ,EAAE,CAAC;QAClB,MAAM,KAAK,GAAG,QAAiB,CAAC;QAChC,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,8BAA8B,KAAK,CAAC,OAAO,EAAE;SACrD,CAAC;IACJ,CAAC;IAED,uEAAuE;IACvE,8EAA8E;IAC9E,iDAAiD;IACjD,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,OAAO,sBAAsB,CAAC,8BAA8B,CAAC,CAAC;IAChE,CAAC;IAED,mBAAmB;IACnB,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,4CAA4C;SACpD,CAAC;IACJ,CAAC;IAED,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACvB,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,kDAAkD;SAC1D,CAAC;IACJ,CAAC;IAED,6BAA6B;IAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QACrC,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,oKAAoK;SAC5K,CAAC;IACJ,CAAC;IAED,kCAAkC;IAClC,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC;IAC9B,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,KAAK;QACnD,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,CAAC;IACjF,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,qEAAqE;SAC7E,CAAC;IACJ,CAAC;IAED,gEAAgE;IAChE,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAChD,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC9C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACtC,IAAI,qBAAqB,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxC,OAAO,sBAAsB,CAAC,UAAU,MAAM,CAAC,KAAK,gCAAgC,CAAC,CAAC;YACxF,CAAC;YACD,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,KAAK,EAAE,UAAU,MAAM,CAAC,KAAK,8BAA8B,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;aACpF,CAAC;QACJ,CAAC;QACD,yEAAyE;QACzE,MAAM,CAAC,KAAK,GAAG,UAAyC,CAAC;IAC3D,CAAC;IAED,iCAAiC;IACjC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;QACjC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAAC;YAC/F,UAAU,CAAC,GAAG,CAAC,CAAC;YAChB,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACrC,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;YAE/B,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,YAAY,GAAG,sBAAsB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAC7D,OAAO;oBACL,KAAK,EAAE,KAAK;oBACZ,KAAK,EAAE,YAAY;iBACpB,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,mCAAmC;IACrC,CAAC;IAED,OAAO;QACL,KAAK,EAAE,IAAI;QACX,MAAM;KACP,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,UAAkB;IACrD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC3D,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACvD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,MAAkB;IAChD,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,SAAS,aAAa,CAAC,CAAU;QAC/B,IAAI,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ;YAAE,OAAO;QACxC,MAAM,GAAG,GAAG,CAA4B,CAAC;QACzC,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;YAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvD,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACrB,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpB,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACvB,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzB,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACzB,IAAI,GAAG,CAAC,MAAM;YAAE,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,SAAS,SAAS,CAAC,KAAc;QAC/B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO;QAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBAC1C,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,aAAa,CAAC,IAAI,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACjC,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Picks which `<lang>/` directories under projectDir to keep as workspace
3
+ * symlinks and which to skip. Skipping non-active language directories
4
+ * shrinks Turbopack's filesystem scan and dropped cold compile from ~67s
5
+ * to ~12s on jamdesk-docs (commit 90d781b4).
6
+ *
7
+ * The dev server still reads content from the user's source tree via
8
+ * JAMDESK_PROJECTS_DIR, so the language picker keeps showing every
9
+ * language and clicks always 200 OK — the workspace symlinks are a
10
+ * Turbopack-only performance layer.
11
+ *
12
+ * Default rules:
13
+ * 1. Language with `default: true`
14
+ * 2. First language in `navigation.languages[]`
15
+ */
16
+ export interface LanguageFilter {
17
+ active: string | null;
18
+ skip: Set<string>;
19
+ }
20
+ interface NavigationLanguageEntry {
21
+ language?: string;
22
+ default?: boolean;
23
+ }
24
+ interface MinimalConfig {
25
+ navigation?: {
26
+ languages?: NavigationLanguageEntry[];
27
+ };
28
+ }
29
+ export declare function getActiveLanguageFilter(config: MinimalConfig): LanguageFilter;
30
+ export {};
31
+ //# sourceMappingURL=language-filter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"language-filter.d.ts","sourceRoot":"","sources":["../../src/lib/language-filter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CACnB;AAED,UAAU,uBAAuB;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,aAAa;IACrB,UAAU,CAAC,EAAE;QACX,SAAS,CAAC,EAAE,uBAAuB,EAAE,CAAC;KACvC,CAAC;CACH;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,aAAa,GAAG,cAAc,CAc7E"}
@@ -0,0 +1,14 @@
1
+ export function getActiveLanguageFilter(config) {
2
+ const validEntries = (config.navigation?.languages ?? []).filter((l) => typeof l.language === 'string');
3
+ if (validEntries.length === 0) {
4
+ return { active: null, skip: new Set() };
5
+ }
6
+ const codes = validEntries.map((l) => l.language);
7
+ const active = validEntries.find((l) => l.default)?.language ?? validEntries[0].language;
8
+ if (codes.length === 1) {
9
+ return { active, skip: new Set() };
10
+ }
11
+ const skip = new Set(codes.filter((c) => c !== active));
12
+ return { active, skip };
13
+ }
14
+ //# sourceMappingURL=language-filter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"language-filter.js","sourceRoot":"","sources":["../../src/lib/language-filter.ts"],"names":[],"mappings":"AA+BA,MAAM,UAAU,uBAAuB,CAAC,MAAqB;IAC3D,MAAM,YAAY,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC,MAAM,CAC9D,CAAC,CAAC,EAAgD,EAAE,CAAC,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,CACpF,CAAC;IACF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG,EAAU,EAAE,CAAC;IACnD,CAAC;IACD,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,QAAQ,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACzF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAG,EAAU,EAAE,CAAC;IAC7C,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;IACxD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAC1B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jamdesk",
3
- "version": "1.1.89",
3
+ "version": "1.1.91",
4
4
  "description": "CLI for Jamdesk — build, preview, and deploy documentation sites from MDX. Dev server with hot reload, 50+ components, OpenAPI support, AI search, and Mintlify migration",
5
5
  "keywords": [
6
6
  "jamdesk",
@@ -78,20 +78,25 @@ export async function GET(
78
78
 
79
79
  if (!stream) {
80
80
  const notFoundPage = await getFileFromR2(project, '/404.html');
81
- return new NextResponse((notFoundPage as any) ?? get404Html(project), {
82
- status: 404,
83
- headers: {
84
- 'Content-Type': 'text/html; charset=utf-8',
85
- 'Cache-Control': 'no-cache',
86
- },
87
- });
81
+ // R2 SDK ReadableStream may not exactly match the DOM ReadableStream<Uint8Array>
82
+ // expected by BodyInit, but it satisfies the underlying contract at runtime.
83
+ return new NextResponse(
84
+ (notFoundPage as ReadableStream<Uint8Array> | null) ?? get404Html(project),
85
+ {
86
+ status: 404,
87
+ headers: {
88
+ 'Content-Type': 'text/html; charset=utf-8',
89
+ 'Cache-Control': 'no-cache',
90
+ },
91
+ }
92
+ );
88
93
  }
89
94
 
90
95
  // Raw MDX source: prevent indexing and embedding
91
96
  const isMdx = filePath.endsWith('.mdx');
92
97
  const vercelCdnCache = getVercelCdnCacheControl(filePath);
93
98
 
94
- return new NextResponse(stream as any, {
99
+ return new NextResponse(stream as ReadableStream<Uint8Array>, {
95
100
  status: 200,
96
101
  headers: {
97
102
  'Content-Type': getContentType(filePath),
@@ -122,7 +127,7 @@ export async function GET(
122
127
  const JAMDESK_FAVICON = "data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none'><rect x='3' y='7' width='14' height='19' rx='2.5' fill='%23C4B5FD' fill-opacity='0.9'/><rect x='8' y='4' width='14' height='19' rx='2.5' fill='%23A78BFA' fill-opacity='0.85'/><rect x='13' y='9' width='14' height='19' rx='2.5' fill='%238B5CF6' fill-opacity='0.9'/></svg>";
123
128
 
124
129
  // Simple fallback 404 page if project's 404.html doesn't exist
125
- function get404Html(project: string): string {
130
+ function get404Html(_project: string): string {
126
131
  return `<!DOCTYPE html>
127
132
  <html>
128
133
  <head>
@@ -17,7 +17,7 @@ import {
17
17
  getHostAtDocs,
18
18
  getLanguageFromRequest,
19
19
  } from '@/lib/page-isr-helpers';
20
- import { isRTLLanguage, resolveLanguageWithFallback } from '@/lib/language-utils';
20
+ import { isRTLLanguage, resolveLanguageWithFallback, toHreflang } from '@/lib/language-utils';
21
21
  import type { DocsConfig } from '@/lib/docs-types';
22
22
  import { buildSiteTitle, getFaviconPath, FALLBACK_METADATA } from '@/lib/seo';
23
23
  import { withR2OpsContext, emitR2OpsSummary } from '@/lib/r2-content';
@@ -114,7 +114,7 @@ async function rootLayoutImpl({
114
114
  );
115
115
  const unlockDir = isRTLLanguage(unlockLang) ? 'rtl' : undefined;
116
116
  return (
117
- <html lang={unlockLang} dir={unlockDir} suppressHydrationWarning>
117
+ <html lang={toHreflang(unlockLang)} dir={unlockDir} suppressHydrationWarning>
118
118
  <head>
119
119
  <meta name="viewport" content="width=device-width, initial-scale=1" />
120
120
  <meta name="robots" content="noindex, nofollow" />
@@ -2,7 +2,7 @@
2
2
 
3
3
  import { useEffect } from 'react';
4
4
  import { usePathname } from 'next/navigation';
5
- import { extractLanguageFromPath, isRTLLanguage } from '@/lib/language-utils';
5
+ import { extractLanguageFromPath, isRTLLanguage, toHreflang } from '@/lib/language-utils';
6
6
  import type { LanguageCode } from '@/lib/docs-types';
7
7
 
8
8
  interface HtmlLangSyncProps {
@@ -24,8 +24,9 @@ export function HtmlLangSync({ defaultLanguage }: HtmlLangSyncProps) {
24
24
 
25
25
  useEffect(() => {
26
26
  const lang = extractLanguageFromPath(pathname || '/') ?? defaultLanguage;
27
+ const htmlLang = toHreflang(lang);
27
28
  const html = document.documentElement;
28
- if (html.lang !== lang) html.lang = lang;
29
+ if (html.lang !== htmlLang) html.lang = htmlLang;
29
30
 
30
31
  if (isRTLLanguage(lang)) {
31
32
  if (html.dir !== 'rtl') html.dir = 'rtl';
@@ -28,7 +28,7 @@ export const Accordion = memo(function Accordion({
28
28
  description,
29
29
  defaultOpen = false,
30
30
  icon,
31
- iconType,
31
+ iconType: _iconType,
32
32
  children
33
33
  }: AccordionProps) {
34
34
  const [isOpen, setIsOpen] = useState(defaultOpen);
@@ -206,7 +206,7 @@ export const Card = memo(function Card({ title, icon, img, href, children, horiz
206
206
  role={href ? 'link' : undefined}
207
207
  aria-label={href ? (ariaLabel || (title ? `Learn about ${title}` : undefined)) : undefined}
208
208
  tabIndex={href ? 0 : undefined}
209
- onKeyDown={href ? (e) => { if (e.key === 'Enter' || e.key === ' ') handleClick(e as any); } : undefined}
209
+ onKeyDown={href ? (e) => { if (e.key === 'Enter' || e.key === ' ') handleClick(e as unknown as React.MouseEvent<HTMLDivElement>); } : undefined}
210
210
  >
211
211
  {cardContent}
212
212
  </div>
@@ -3,12 +3,23 @@
3
3
  import { ReactNode, Children, isValidElement, memo } from 'react';
4
4
  import { CodePanel, CodePanelTab } from '../ui/CodePanel';
5
5
  import { formatLanguage } from '@/lib/code-utils';
6
- import { getLanguageIcon } from '@/lib/language-icons';
7
6
 
8
7
  interface CodeGroupProps {
9
8
  children: ReactNode;
10
9
  }
11
10
 
11
+ // Loose shape of `pre`/`code` props from MDX/Shiki — only the fields we read.
12
+ type PreProps = {
13
+ 'data-language'?: string;
14
+ children?: ReactNode;
15
+ };
16
+ type CodeProps = {
17
+ className?: string;
18
+ 'data-title'?: string;
19
+ 'data-meta'?: string;
20
+ meta?: string;
21
+ };
22
+
12
23
  /**
13
24
  * Extract raw language identifier from a pre element
14
25
  * Priority: data-language > className language-*
@@ -16,7 +27,7 @@ interface CodeGroupProps {
16
27
  function getRawLanguage(child: ReactNode): string | undefined {
17
28
  if (!isValidElement(child)) return undefined;
18
29
 
19
- const childProps = child.props as any;
30
+ const childProps = child.props as PreProps;
20
31
 
21
32
  // Check for data-language on the pre element (added by Shiki transformer)
22
33
  const preLanguage = childProps['data-language'];
@@ -25,7 +36,7 @@ function getRawLanguage(child: ReactNode): string | undefined {
25
36
  const codeElement = childProps?.children;
26
37
  if (!isValidElement(codeElement)) return undefined;
27
38
 
28
- const codeProps = codeElement.props as any;
39
+ const codeProps = codeElement.props as CodeProps;
29
40
 
30
41
  // Fall back to language from className (pre-Shiki format)
31
42
  const className = codeProps?.className || '';
@@ -35,22 +46,6 @@ function getRawLanguage(child: ReactNode): string | undefined {
35
46
  return undefined;
36
47
  }
37
48
 
38
- /**
39
- * Extract custom icon from a pre element's code child
40
- * Returns data-icon attribute if present
41
- */
42
- function getCustomIcon(child: ReactNode): string | undefined {
43
- if (!isValidElement(child)) return undefined;
44
-
45
- const childProps = child.props as any;
46
- const codeElement = childProps?.children;
47
-
48
- if (!isValidElement(codeElement)) return undefined;
49
-
50
- const codeProps = codeElement.props as any;
51
- return codeProps['data-icon'];
52
- }
53
-
54
49
  /**
55
50
  * Extract title from a pre element's code child
56
51
  * Returns data-title attribute if present (e.g., title="utils.js")
@@ -58,12 +53,12 @@ function getCustomIcon(child: ReactNode): string | undefined {
58
53
  function getTitle(child: ReactNode): string | undefined {
59
54
  if (!isValidElement(child)) return undefined;
60
55
 
61
- const childProps = child.props as any;
56
+ const childProps = child.props as PreProps;
62
57
  const codeElement = childProps?.children;
63
58
 
64
59
  if (!isValidElement(codeElement)) return undefined;
65
60
 
66
- const codeProps = codeElement.props as any;
61
+ const codeProps = codeElement.props as CodeProps;
67
62
  return codeProps['data-title'];
68
63
  }
69
64
 
@@ -74,7 +69,7 @@ function getTitle(child: ReactNode): string | undefined {
74
69
  function getTabLabel(child: ReactNode): string {
75
70
  if (!isValidElement(child)) return 'Code';
76
71
 
77
- const childProps = child.props as any;
72
+ const childProps = child.props as PreProps;
78
73
 
79
74
  // Check for data-language on the pre element (added by Shiki transformer)
80
75
  const preLanguage = childProps['data-language'];
@@ -85,7 +80,7 @@ function getTabLabel(child: ReactNode): string {
85
80
  const codeElement = childProps?.children;
86
81
  if (!isValidElement(codeElement)) return 'Code';
87
82
 
88
- const codeProps = codeElement.props as any;
83
+ const codeProps = codeElement.props as CodeProps;
89
84
 
90
85
  // Check for title in data-meta or meta props (e.g., "Success Response")
91
86
  const metaString = codeProps['data-meta'] || codeProps.meta || '';
@@ -113,7 +113,6 @@ export function ColorItem({ name, value }: ColorItemProps) {
113
113
 
114
114
  const swatchColor = isThemeAware ? 'var(--color-swatch-light)' : value;
115
115
  const lightTextOnLight = isThemeAware ? shouldUseLightText(value.light) : shouldUseLightText(value as string);
116
- const lightTextOnDark = isThemeAware ? shouldUseLightText(value.dark) : lightTextOnLight;
117
116
 
118
117
  if (variant === 'table') {
119
118
  return (
@@ -77,7 +77,7 @@ function getColorStyle(color?: string): { style?: React.CSSProperties; className
77
77
  * <Icon icon={<svg viewBox="0 0 24 24"><path d="..."/></svg>} />
78
78
  *
79
79
  */
80
- export function Icon({ icon, iconType = 'solid', color, size = 16, className }: IconProps) {
80
+ export function Icon({ icon, iconType: _iconType = 'solid', color, size = 16, className }: IconProps) {
81
81
  const { style: colorStyle, className: colorClass } = getColorStyle(color);
82
82
  const combinedClassName = `inline-block ${colorClass || ''} ${className || ''}`.trim();
83
83
  const sizeStyle = { width: size, height: size };