jamdesk 1.1.131 → 1.1.133
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/__tests__/unit/migrate-mdx.test.js +37 -0
- package/dist/__tests__/unit/migrate-mdx.test.js.map +1 -1
- package/dist/__tests__/unit/vendored-sync.test.js +77 -25
- package/dist/__tests__/unit/vendored-sync.test.js.map +1 -1
- package/dist/lib/risky-expression-scanner.d.ts.map +1 -1
- package/dist/lib/risky-expression-scanner.js +35 -1
- package/dist/lib/risky-expression-scanner.js.map +1 -1
- package/package.json +2 -2
- package/vendored/components/mdx/MDXComponents.tsx +3 -0
- package/vendored/components/mdx/Widget.tsx +133 -0
- package/vendored/lib/docs-isr.ts +28 -4
- package/vendored/lib/risky-expression-scanner.ts +34 -1
- package/vendored/workspace-package-lock.json +34 -34
|
@@ -328,5 +328,42 @@ describe('migrateMdxFiles snippet-component conversion', () => {
|
|
|
328
328
|
expect(warnings.some((w) => /bare \{…\} expression/.test(w))).toBe(true);
|
|
329
329
|
await rm(tmpDir, { recursive: true, force: true });
|
|
330
330
|
});
|
|
331
|
+
it('leaves <Snippet file="../outside.mdx"/> untouched when the target escapes snippets/ (no import fabricated)', async () => {
|
|
332
|
+
// Regression pin for the isUnderDir clamp (convert-mdx.ts resolveSnippetImportSpec):
|
|
333
|
+
// a `../`-escaping file= must NOT be rewritten to an import pointing OUTSIDE
|
|
334
|
+
// snippets/, even though the escaped file exists on disk. The snippets-root
|
|
335
|
+
// candidate `join(snippets, "../outside.mdx")` resolves to <root>/outside.mdx
|
|
336
|
+
// (a real file) but is rejected because it is not under snippets/. Without the
|
|
337
|
+
// clamp, migrate would fabricate `import … from '/snippets/../outside.mdx'`.
|
|
338
|
+
const tmpDir = await mkdtemp(path.join(tmpdir(), 'jd-migrate-'));
|
|
339
|
+
await mkdir(path.join(tmpDir, 'snippets'), { recursive: true });
|
|
340
|
+
await writeFile(path.join(tmpDir, 'outside.mdx'), 'content outside snippets/');
|
|
341
|
+
const pagePath = path.join(tmpDir, 'page.mdx');
|
|
342
|
+
const original = '---\ntitle: P\n---\n\n<Snippet file="../outside.mdx" />\n';
|
|
343
|
+
await writeFile(pagePath, original);
|
|
344
|
+
const summary = await migrateMdxFiles(tmpDir);
|
|
345
|
+
const written = await readFile(pagePath, 'utf-8');
|
|
346
|
+
expect(written).toBe(original); // untouched — no import to an out-of-snippets file
|
|
347
|
+
expect(written).not.toContain('import ');
|
|
348
|
+
expect(summary.filesModified).toBe(0);
|
|
349
|
+
await rm(tmpDir, { recursive: true, force: true });
|
|
350
|
+
});
|
|
351
|
+
it('leaves <Snippet file="sibling.mdx"/> untouched when the page-relative target is outside snippets/', async () => {
|
|
352
|
+
// The page-relative candidate must be clamped too: a file that exists
|
|
353
|
+
// adjacent to the page but is not under snippets/ is never converted.
|
|
354
|
+
const tmpDir = await mkdtemp(path.join(tmpdir(), 'jd-migrate-'));
|
|
355
|
+
await mkdir(path.join(tmpDir, 'snippets'), { recursive: true });
|
|
356
|
+
await mkdir(path.join(tmpDir, 'folder'), { recursive: true });
|
|
357
|
+
await writeFile(path.join(tmpDir, 'folder/sibling.mdx'), '# sibling, not a snippet');
|
|
358
|
+
const pagePath = path.join(tmpDir, 'folder/page.mdx');
|
|
359
|
+
const original = '<Snippet file="sibling.mdx" />\n';
|
|
360
|
+
await writeFile(pagePath, original);
|
|
361
|
+
const summary = await migrateMdxFiles(tmpDir);
|
|
362
|
+
const written = await readFile(pagePath, 'utf-8');
|
|
363
|
+
expect(written).toBe(original);
|
|
364
|
+
expect(written).not.toContain('import ');
|
|
365
|
+
expect(summary.filesModified).toBe(0);
|
|
366
|
+
await rm(tmpDir, { recursive: true, force: true });
|
|
367
|
+
});
|
|
331
368
|
});
|
|
332
369
|
//# sourceMappingURL=migrate-mdx.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate-mdx.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/migrate-mdx.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"migrate-mdx.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/migrate-mdx.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,39 +16,26 @@ import path from 'path';
|
|
|
16
16
|
import { fileURLToPath } from 'url';
|
|
17
17
|
const __dirname = path.dirname(fileURLToPath(import.meta.url));
|
|
18
18
|
/**
|
|
19
|
-
*
|
|
20
|
-
*
|
|
19
|
+
* NON-lib vendored files that must stay byte-identical between build-service and
|
|
20
|
+
* cli/vendored. Everything under `cli/vendored/lib/` is covered comprehensively by
|
|
21
|
+
* the "vendored/lib comprehensive sync" suite below, so do NOT list lib/ files
|
|
22
|
+
* here — add them to that suite's exception set only if vendor.js transforms them.
|
|
21
23
|
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
*
|
|
24
|
+
* Add a non-lib file here when it's vendored and must match its source. Only list
|
|
25
|
+
* files that should be IDENTICAL: some vendored files (e.g. the stripped-down
|
|
26
|
+
* MDXComponents.tsx, the PlaygroundModal-stripped OpenApiEndpoint.tsx) are
|
|
27
|
+
* intentionally transformed by vendor.js and must NOT be listed.
|
|
25
28
|
*
|
|
26
29
|
* Format: [build-service path, cli/vendored path]
|
|
27
30
|
*/
|
|
28
31
|
const SYNCED_FILES = [
|
|
29
|
-
// Shiki configuration (affects syntax highlighting and language detection)
|
|
30
|
-
// This file MUST be identical - it controls which languages are highlighted
|
|
31
|
-
// and which are passed through to special components like Mermaid
|
|
32
|
-
['build-service/lib/shiki-config.ts', 'cli/vendored/lib/shiki-config.ts'],
|
|
33
|
-
['build-service/lib/shiki-client.ts', 'cli/vendored/lib/shiki-client.ts'],
|
|
34
|
-
['build-service/lib/cache-tags.ts', 'cli/vendored/lib/cache-tags.ts'],
|
|
35
|
-
['build-service/lib/revalidation-helpers.ts', 'cli/vendored/lib/revalidation-helpers.ts'],
|
|
36
|
-
['build-service/lib/revalidation-trigger.ts', 'cli/vendored/lib/revalidation-trigger.ts'],
|
|
37
|
-
['build-service/lib/fs-readfile.ts', 'cli/vendored/lib/fs-readfile.ts'],
|
|
38
|
-
['build-service/lib/r2-manifest.ts', 'cli/vendored/lib/r2-manifest.ts'],
|
|
39
|
-
['build-service/lib/rehype-unwrap-nested-anchors.ts', 'cli/vendored/lib/rehype-unwrap-nested-anchors.ts'],
|
|
40
|
-
// Mintlify migration detection — error-parser reads MIGRATION_DOCS_URL from
|
|
41
|
-
// validate-config, so the two files must move together. Drift here means
|
|
42
|
-
// CLI surfaces would miss the migrate hint while production catches it.
|
|
43
|
-
['build-service/lib/validate-config.ts', 'cli/vendored/lib/validate-config.ts'],
|
|
44
|
-
['build-service/lib/build/error-parser.ts', 'cli/vendored/lib/build/error-parser.ts'],
|
|
45
32
|
// Theme rendering — `themes/index.ts` lowercases in `getTheme()`, `Header.tsx`
|
|
46
|
-
// reads `themeConfig.name` (canonical case), `layout-helpers.tsx`
|
|
47
|
-
//
|
|
48
|
-
// theme
|
|
33
|
+
// reads `themeConfig.name` (canonical case), and `lib/layout-helpers.tsx`
|
|
34
|
+
// (covered by the comprehensive lib suite) lowercases `data-theme` so
|
|
35
|
+
// `body[data-theme="nebula"]` selectors match for any-case theme strings — all
|
|
36
|
+
// three must move together with the canonical.
|
|
49
37
|
['build-service/themes/index.ts', 'cli/vendored/themes/index.ts'],
|
|
50
38
|
['build-service/components/navigation/Header.tsx', 'cli/vendored/components/navigation/Header.tsx'],
|
|
51
|
-
['build-service/lib/layout-helpers.tsx', 'cli/vendored/lib/layout-helpers.tsx'],
|
|
52
39
|
];
|
|
53
40
|
describe('CLI vendored files sync', () => {
|
|
54
41
|
it.each(SYNCED_FILES)('should have matching content: %s', async (buildServicePath, vendoredPath) => {
|
|
@@ -80,6 +67,71 @@ describe('CLI vendored files sync', () => {
|
|
|
80
67
|
}
|
|
81
68
|
});
|
|
82
69
|
});
|
|
70
|
+
/**
|
|
71
|
+
* `cli/vendored/lib/` is a near-verbatim byte-copy of `build-service/lib/`
|
|
72
|
+
* produced by scripts/vendor.js. A hand-maintained allowlist (the old approach)
|
|
73
|
+
* silently MISSED any file it didn't enumerate — e.g. `isr-build-executor.ts`
|
|
74
|
+
* could drift between source and vendored with zero CI failure, shipping a stale
|
|
75
|
+
* copy to `jamdesk dev`. This suite inverts the guarantee: it walks EVERY vendored
|
|
76
|
+
* lib file and requires a byte-match, so new vendored files are covered
|
|
77
|
+
* automatically and the only sanctioned way to differ is to appear on the small,
|
|
78
|
+
* explicit exception set below.
|
|
79
|
+
*
|
|
80
|
+
* EXCEPTIONS = the files vendor.js intentionally rewrites instead of byte-copying.
|
|
81
|
+
* An empirical `cmp` of the whole tree must yield EXACTLY these (169 files / 2
|
|
82
|
+
* exceptions at time of writing). The stale-exception guard below fails if one of
|
|
83
|
+
* these stops differing; the count guard fails if the walk resolves nothing.
|
|
84
|
+
*/
|
|
85
|
+
const VENDORED_LIB_INTENTIONAL_DIFFERENCES = new Set([
|
|
86
|
+
'r2-content.ts', // vendor.js writes an AWS-SDK-free stub (the real one needs the S3 client)
|
|
87
|
+
'openapi/index.ts', // vendor.js strips the playground-codegen re-export (codegen isn't vendored)
|
|
88
|
+
]);
|
|
89
|
+
function walkTsFiles(dir, base = dir) {
|
|
90
|
+
const out = [];
|
|
91
|
+
for (const entry of fs.readdirSync(dir, { withFileTypes: true })) {
|
|
92
|
+
const full = path.join(dir, entry.name);
|
|
93
|
+
if (entry.isDirectory())
|
|
94
|
+
out.push(...walkTsFiles(full, base));
|
|
95
|
+
else if (/\.tsx?$/.test(entry.name))
|
|
96
|
+
out.push(path.relative(base, full).replace(/\\/g, '/'));
|
|
97
|
+
}
|
|
98
|
+
return out;
|
|
99
|
+
}
|
|
100
|
+
const BUILDER_ROOT = path.join(__dirname, '../../../..');
|
|
101
|
+
const VENDORED_LIB_FILES = walkTsFiles(path.join(BUILDER_ROOT, 'cli/vendored/lib')).filter((rel) => !VENDORED_LIB_INTENTIONAL_DIFFERENCES.has(rel));
|
|
102
|
+
describe('CLI vendored/lib comprehensive sync (no silent drift)', () => {
|
|
103
|
+
it('discovers the full vendored lib tree (guards against an empty/0-file walk)', () => {
|
|
104
|
+
// ~169 files at time of writing; >100 proves the walk resolved the real tree
|
|
105
|
+
// and the it.each below is not silently testing nothing (e.g. wrong root path).
|
|
106
|
+
expect(VENDORED_LIB_FILES.length).toBeGreaterThan(100);
|
|
107
|
+
});
|
|
108
|
+
it.each(VENDORED_LIB_FILES)('cli/vendored/lib/%s is byte-identical to its build-service/lib source', (rel) => {
|
|
109
|
+
const vendored = path.join(BUILDER_ROOT, 'cli/vendored/lib', rel);
|
|
110
|
+
const source = path.join(BUILDER_ROOT, 'build-service/lib', rel);
|
|
111
|
+
if (!fs.existsSync(source)) {
|
|
112
|
+
throw new Error(`cli/vendored/lib/${rel} has no build-service/lib counterpart.\n` +
|
|
113
|
+
`If vendor.js synthesizes it, add '${rel}' to VENDORED_LIB_INTENTIONAL_DIFFERENCES.`);
|
|
114
|
+
}
|
|
115
|
+
const vendoredContent = fs.readFileSync(vendored, 'utf-8');
|
|
116
|
+
const sourceContent = fs.readFileSync(source, 'utf-8');
|
|
117
|
+
if (vendoredContent !== sourceContent) {
|
|
118
|
+
throw new Error(`Vendored drift: cli/vendored/lib/${rel} differs from build-service/lib/${rel}.\n\n` +
|
|
119
|
+
`Run "npm run vendor" to resync.\n` +
|
|
120
|
+
`If vendor.js intentionally transforms this file, add '${rel}' to ` +
|
|
121
|
+
`VENDORED_LIB_INTENTIONAL_DIFFERENCES (and document the transform).`);
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
// Keep the exception list honest: if a listed file stops differing (the
|
|
125
|
+
// transform was removed), it must be dropped from the set so real drift on that
|
|
126
|
+
// file is caught again.
|
|
127
|
+
it.each([...VENDORED_LIB_INTENTIONAL_DIFFERENCES])('intentional-difference %s exists in both trees and actually differs', (rel) => {
|
|
128
|
+
const vendored = path.join(BUILDER_ROOT, 'cli/vendored/lib', rel);
|
|
129
|
+
const source = path.join(BUILDER_ROOT, 'build-service/lib', rel);
|
|
130
|
+
expect(fs.existsSync(vendored), `${rel} is an intentional-difference but missing from vendored`).toBe(true);
|
|
131
|
+
expect(fs.existsSync(source), `${rel} is an intentional-difference but missing from build-service`).toBe(true);
|
|
132
|
+
expect(fs.readFileSync(vendored, 'utf-8') === fs.readFileSync(source, 'utf-8'), `${rel} is byte-identical — remove it from VENDORED_LIB_INTENTIONAL_DIFFERENCES`).toBe(false);
|
|
133
|
+
});
|
|
134
|
+
});
|
|
83
135
|
describe('CLI package.json files entries', () => {
|
|
84
136
|
it('should have valid paths for all vendored/public entries', async () => {
|
|
85
137
|
const cliRoot = path.join(__dirname, '../../..');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vendored-sync.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/vendored-sync.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAE/D
|
|
1
|
+
{"version":3,"file":"vendored-sync.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/vendored-sync.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"risky-expression-scanner.d.ts","sourceRoot":"","sources":["../../src/lib/risky-expression-scanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,qDAAqD;AACrD,MAAM,WAAW,oBAAoB;IACnC,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAC;CACjB;
|
|
1
|
+
{"version":3,"file":"risky-expression-scanner.d.ts","sourceRoot":"","sources":["../../src/lib/risky-expression-scanner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,qDAAqD;AACrD,MAAM,WAAW,oBAAoB;IACnC,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,4EAA4E;IAC5E,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,gEAAgE;IAChE,OAAO,EAAE,MAAM,CAAC;CACjB;AAwJD;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,oBAAoB,EAAE,CAuD9F"}
|
|
@@ -31,6 +31,36 @@ const ALWAYS_IN_SCOPE = new Set([
|
|
|
31
31
|
'encodeURIComponent', 'decodeURIComponent', 'encodeURI', 'decodeURI',
|
|
32
32
|
'structuredClone', 'fetch', 'atob', 'btoa',
|
|
33
33
|
]);
|
|
34
|
+
/**
|
|
35
|
+
* Strip a leading YAML frontmatter block so the scanner sees the body the
|
|
36
|
+
* renderer compiles. The real MDX pipeline parses frontmatter as YAML (via
|
|
37
|
+
* `frontmatter-utils.ts#parseFrontmatterLenient`, i.e. gray-matter) and compiles
|
|
38
|
+
* only the body — it NEVER evaluates `{…}` inside frontmatter. Without this, a
|
|
39
|
+
* path-param placeholder in an `api:` field (e.g. `api: GET /tickets/{ticket_id}`)
|
|
40
|
+
* parses as an MDX expression and false-warns.
|
|
41
|
+
*
|
|
42
|
+
* This APPROXIMATES gray-matter's frontmatter detection — it deliberately can't
|
|
43
|
+
* call it: the scanner is byte-copy-vendored to the CLI by `vendor.js` with no
|
|
44
|
+
* relative imports, so one source satisfies three module-resolution regimes
|
|
45
|
+
* (Cloud Run tsc, CLI NodeNext, the vendored Next.js app); a relative import
|
|
46
|
+
* would break the CLI build. So it inlines the boundary scan and covers the
|
|
47
|
+
* common cases a strict `---\n…\n---\n` match misses but the renderer strips: a
|
|
48
|
+
* leading BOM and horizontal whitespace/tabs after the closing fence. (Verified:
|
|
49
|
+
* each of those re-introduced the false warning before being handled here.)
|
|
50
|
+
* Exotic gray-matter forms remain advisory residuals — precision over recall.
|
|
51
|
+
*/
|
|
52
|
+
function stripFrontmatter(content) {
|
|
53
|
+
// Tolerate a leading UTF-8 BOM (some editors emit one); gray-matter ignores it.
|
|
54
|
+
const src = content.charCodeAt(0) === 0xfeff ? content.slice(1) : content;
|
|
55
|
+
if (!src.startsWith('---'))
|
|
56
|
+
return src;
|
|
57
|
+
// Closing fence: `---` + optional trailing horizontal whitespace, then EOL/EOF.
|
|
58
|
+
const endMatch = src.slice(3).match(/\n---[ \t]*(\r?\n|$)/);
|
|
59
|
+
if (!endMatch)
|
|
60
|
+
return src;
|
|
61
|
+
const frontmatterEnd = 3 + endMatch.index + endMatch[0].length;
|
|
62
|
+
return src.slice(frontmatterEnd);
|
|
63
|
+
}
|
|
34
64
|
/** Recursively collect bound names from a destructuring/identifier pattern. */
|
|
35
65
|
function collectPatternNames(pattern, out) {
|
|
36
66
|
if (!pattern || typeof pattern.type !== 'string')
|
|
@@ -142,9 +172,13 @@ function collectReferencedNames(estree) {
|
|
|
142
172
|
* @param pagePath Page path relative to the docs root (used in messages).
|
|
143
173
|
*/
|
|
144
174
|
export function findRiskyExpressions(content, pagePath) {
|
|
175
|
+
// Scan only the MDX body. The renderer strips frontmatter as YAML and never
|
|
176
|
+
// evaluates `{…}` there, so a `{placeholder}` in an `api:`/`title:`/etc. field
|
|
177
|
+
// is not a real expression and must not warn (see stripFrontmatter).
|
|
178
|
+
const mdxBody = stripFrontmatter(content);
|
|
145
179
|
let tree;
|
|
146
180
|
try {
|
|
147
|
-
tree = unified().use(remarkParse).use(remarkMdx).parse(
|
|
181
|
+
tree = unified().use(remarkParse).use(remarkMdx).parse(mdxBody);
|
|
148
182
|
}
|
|
149
183
|
catch {
|
|
150
184
|
// Malformed MDX (a true syntax error) is handled by the separate
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"risky-expression-scanner.js","sourceRoot":"","sources":["../../src/lib/risky-expression-scanner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"risky-expression-scanner.js","sourceRoot":"","sources":["../../src/lib/risky-expression-scanner.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jamdesk",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.133",
|
|
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",
|
|
@@ -106,7 +106,7 @@
|
|
|
106
106
|
"ajv": "^8.17.1",
|
|
107
107
|
"ajv-formats": "^3.0.1",
|
|
108
108
|
"chalk": "^5.3.0",
|
|
109
|
-
"commander": "^
|
|
109
|
+
"commander": "^15.0.0",
|
|
110
110
|
"dictionary-en": "^4.0.0",
|
|
111
111
|
"estree-util-visit": "^2.0.0",
|
|
112
112
|
"fastest-levenshtein": "^1.0.16",
|
|
@@ -42,6 +42,7 @@ import { Columns } from './Columns';
|
|
|
42
42
|
import { View, ViewProvider, ViewSelector, ViewWrapper } from './View';
|
|
43
43
|
import { YouTube } from './YouTube';
|
|
44
44
|
import { Video } from './Video';
|
|
45
|
+
import { Widget } from './Widget';
|
|
45
46
|
import { Visibility } from './Visibility';
|
|
46
47
|
import { MdxErrorBlock } from './MdxErrorBlock';
|
|
47
48
|
|
|
@@ -248,6 +249,8 @@ export const MDXComponents = {
|
|
|
248
249
|
YouTube,
|
|
249
250
|
// Video player for local video files
|
|
250
251
|
Video,
|
|
252
|
+
// Live "What's New" widget demo (renders a trigger that opens the hosted modal)
|
|
253
|
+
Widget,
|
|
251
254
|
// Audience-conditional content. Filtered at MDX-compile time by
|
|
252
255
|
// lib/remark-visibility.ts for the HTML render path and by
|
|
253
256
|
// lib/visibility-filter.ts for text surfaces (.md export, llms-full.txt,
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
|
|
3
|
+
import { useEffect, useId, type ReactElement } from 'react';
|
|
4
|
+
import { useProjectSlug } from '../../lib/project-slug-context';
|
|
5
|
+
import { useLinkPrefix } from '../../lib/link-prefix-context';
|
|
6
|
+
|
|
7
|
+
export interface WidgetProps {
|
|
8
|
+
/** Docs path the modal opens. Default "/changelog". */
|
|
9
|
+
page?: string;
|
|
10
|
+
/** Force the modal color scheme. */
|
|
11
|
+
theme?: 'auto' | 'light' | 'dark';
|
|
12
|
+
/** Trigger button text (also the modal aria-label). Default "What's new". */
|
|
13
|
+
label?: string;
|
|
14
|
+
/** Bind to your own element (CSS selector) instead of rendering a button. */
|
|
15
|
+
trigger?: string;
|
|
16
|
+
/** Modal width / height / corner radius (any CSS length). */
|
|
17
|
+
width?: string;
|
|
18
|
+
height?: string;
|
|
19
|
+
radius?: string;
|
|
20
|
+
/** Set false to hide the unread dot. */
|
|
21
|
+
unread?: boolean;
|
|
22
|
+
/** Unread dot color (hex or CSS color name). */
|
|
23
|
+
unreadColor?: string;
|
|
24
|
+
/** Override the localStorage "seen" key (rarely needed). */
|
|
25
|
+
project?: string;
|
|
26
|
+
/** Extra class names for the rendered button. */
|
|
27
|
+
className?: string;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// `page` flows into a cross-origin iframe `src` (<base><page>?embed=1). In a
|
|
31
|
+
// PUBLIC component an attacker-authored page value must not be coercible into an
|
|
32
|
+
// absolute/protocol-relative URL that frames another origin. Accept only a clean
|
|
33
|
+
// same-site relative path; anything else falls back to the safe default.
|
|
34
|
+
// Trim first so an authoring typo (a trailing space → "/changelog ?embed=1",
|
|
35
|
+
// a malformed URL that silently 404s the modal) can't slip through, and a
|
|
36
|
+
// leading-space path still resolves instead of falling back.
|
|
37
|
+
// Exported for direct unit testing.
|
|
38
|
+
export function safePage(page: string): string {
|
|
39
|
+
const trimmed = page.trim();
|
|
40
|
+
if (!trimmed.startsWith('/') || trimmed.startsWith('//') || trimmed.includes('://') || trimmed.includes('\\')) {
|
|
41
|
+
return '/changelog';
|
|
42
|
+
}
|
|
43
|
+
return trimmed;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
export function Widget({
|
|
47
|
+
page = '/changelog',
|
|
48
|
+
theme,
|
|
49
|
+
label = "What's new",
|
|
50
|
+
trigger,
|
|
51
|
+
width,
|
|
52
|
+
height,
|
|
53
|
+
radius,
|
|
54
|
+
unread,
|
|
55
|
+
unreadColor,
|
|
56
|
+
project,
|
|
57
|
+
className,
|
|
58
|
+
}: WidgetProps): ReactElement | null {
|
|
59
|
+
const slug = useProjectSlug();
|
|
60
|
+
const prefix = useLinkPrefix(); // '/docs' when hostAtDocs, else ''
|
|
61
|
+
|
|
62
|
+
// useId() returns ":r0:"-style ids — invalid in a CSS selector and in
|
|
63
|
+
// querySelector('#...'), which is exactly what the widget runs on
|
|
64
|
+
// data-trigger. Strip the colons.
|
|
65
|
+
const buttonId = `jd-w-${useId().replace(/:/g, '')}`;
|
|
66
|
+
|
|
67
|
+
// Canonical ISR origin that renders ?embed=1. Custom domains can't, so always
|
|
68
|
+
// target <slug>.jamdesk.app (+ /docs when hostAtDocs) — never window.origin,
|
|
69
|
+
// and NO caller override: a `base` prop would let MDX frame an arbitrary
|
|
70
|
+
// origin in the chromeless overlay (clickjacking). Empty slug → no-op.
|
|
71
|
+
const resolvedBase = slug ? `https://${slug}.jamdesk.app${prefix}` : '';
|
|
72
|
+
|
|
73
|
+
useEffect(() => {
|
|
74
|
+
if (!resolvedBase) return;
|
|
75
|
+
const triggerSel = trigger ?? `#${buttonId}`;
|
|
76
|
+
|
|
77
|
+
// Idempotent guard. React Strict Mode double-invokes effects (mount →
|
|
78
|
+
// cleanup → mount) in dev, and soft-nav can re-render — never stack two
|
|
79
|
+
// managed scripts for the same trigger (two scripts → two click listeners →
|
|
80
|
+
// the modal opens twice). Key on the trigger selector.
|
|
81
|
+
const sel = `script[data-jd-widget-managed][data-widget-key="${triggerSel.replace(/"/g, '\\"')}"]`;
|
|
82
|
+
if (document.querySelector(sel)) return;
|
|
83
|
+
|
|
84
|
+
const s = document.createElement('script');
|
|
85
|
+
// resolvedBase is always https://<slug>.jamdesk.app[/docs] — well-formed, no
|
|
86
|
+
// try/catch needed. widget.js lives at the subdomain ROOT, never under /docs.
|
|
87
|
+
s.src = `${new URL(resolvedBase).origin}/_jd/widget.js`;
|
|
88
|
+
s.async = true;
|
|
89
|
+
s.dataset.base = resolvedBase;
|
|
90
|
+
s.dataset.page = safePage(page); // reject absolute/protocol-relative paths
|
|
91
|
+
s.dataset.trigger = triggerSel;
|
|
92
|
+
if (theme) s.dataset.theme = theme;
|
|
93
|
+
if (width) s.dataset.width = width;
|
|
94
|
+
if (height) s.dataset.height = height;
|
|
95
|
+
if (radius) s.dataset.radius = radius;
|
|
96
|
+
if (unread === false) s.dataset.unread = 'off';
|
|
97
|
+
if (unreadColor) s.dataset.unreadColor = unreadColor;
|
|
98
|
+
if (project) s.dataset.project = project;
|
|
99
|
+
s.setAttribute('data-jd-widget-managed', '');
|
|
100
|
+
s.setAttribute('data-widget-key', triggerSel); // idempotency key (above)
|
|
101
|
+
document.body.appendChild(s);
|
|
102
|
+
|
|
103
|
+
return () => {
|
|
104
|
+
// Soft-nav cleanup: remove the script. The widget's click listener lives
|
|
105
|
+
// on the button (unmounted with this component) — we always bind a
|
|
106
|
+
// trigger, so no floating launcher is left orphaned. (If the modal is open
|
|
107
|
+
// at unmount the widget's own ESC/close path still tears the dialog down.)
|
|
108
|
+
s.remove();
|
|
109
|
+
};
|
|
110
|
+
}, [
|
|
111
|
+
resolvedBase, page, trigger, theme, width, height, radius,
|
|
112
|
+
unread, unreadColor, project, buttonId,
|
|
113
|
+
]);
|
|
114
|
+
|
|
115
|
+
if (trigger) return null;
|
|
116
|
+
|
|
117
|
+
return (
|
|
118
|
+
<button
|
|
119
|
+
type="button"
|
|
120
|
+
id={buttonId}
|
|
121
|
+
className={
|
|
122
|
+
'jd-widget-trigger my-4 inline-flex cursor-pointer items-center gap-2 rounded-lg ' +
|
|
123
|
+
'border border-gray-200 bg-white px-4 py-2 text-sm font-medium ' +
|
|
124
|
+
'text-gray-900 shadow-sm transition hover:shadow-md ' +
|
|
125
|
+
'dark:border-gray-700 dark:bg-gray-900 dark:text-gray-100' +
|
|
126
|
+
(className ? ` ${className}` : '')
|
|
127
|
+
}
|
|
128
|
+
>
|
|
129
|
+
<span aria-hidden="true">✦</span>
|
|
130
|
+
{label}
|
|
131
|
+
</button>
|
|
132
|
+
);
|
|
133
|
+
}
|
package/vendored/lib/docs-isr.ts
CHANGED
|
@@ -22,6 +22,13 @@ import {
|
|
|
22
22
|
} from './r2-content';
|
|
23
23
|
import { isIsrMode } from './page-isr-helpers';
|
|
24
24
|
|
|
25
|
+
/**
|
|
26
|
+
* Thrown by getDocsConfig when a project is absent in R2 and has no dev-fallback.
|
|
27
|
+
* Shared so projectExists can distinguish "genuinely missing" from a transient
|
|
28
|
+
* R2 error without coupling to a duplicated literal.
|
|
29
|
+
*/
|
|
30
|
+
const PROJECT_NOT_FOUND_PREFIX = 'Project not found in R2';
|
|
31
|
+
|
|
25
32
|
/**
|
|
26
33
|
* Ensure ISR mode is enabled, throw otherwise.
|
|
27
34
|
*/
|
|
@@ -99,7 +106,7 @@ async function getDocsConfigUncached(projectSlug: string): Promise<DocsConfig> {
|
|
|
99
106
|
// fall through to throw below
|
|
100
107
|
}
|
|
101
108
|
}
|
|
102
|
-
throw new Error(
|
|
109
|
+
throw new Error(`${PROJECT_NOT_FOUND_PREFIX}: ${projectSlug}`);
|
|
103
110
|
}
|
|
104
111
|
|
|
105
112
|
/**
|
|
@@ -192,9 +199,26 @@ export async function getSnippet(
|
|
|
192
199
|
*/
|
|
193
200
|
export async function projectExists(projectSlug: string): Promise<boolean> {
|
|
194
201
|
requireIsrMode();
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
202
|
+
// Route through getDocsConfig (the React cache()-wrapped reader) instead of a
|
|
203
|
+
// raw fetchDocsConfig so this existence check dedupes with the config read the
|
|
204
|
+
// page render performs in the same request — render-doc-page.tsx calls this
|
|
205
|
+
// immediately before loader.getConfig() in BOTH the metadata and render passes,
|
|
206
|
+
// and the raw call was paying its own R2 round-trip each time.
|
|
207
|
+
//
|
|
208
|
+
// getDocsConfig folds in the same dev-fallback this used to do explicitly and
|
|
209
|
+
// throws PROJECT_NOT_FOUND_PREFIX only when the project is absent in R2 *and*
|
|
210
|
+
// dev-fallback. Map that one case back to the original devFallbackDir check
|
|
211
|
+
// (preserving the dir-exists-but-unreadable-docs.json dev edge) and re-throw
|
|
212
|
+
// genuine (transient) R2 errors, so true/false/throw outcomes are unchanged.
|
|
213
|
+
try {
|
|
214
|
+
await getDocsConfig(projectSlug);
|
|
215
|
+
return true;
|
|
216
|
+
} catch (err) {
|
|
217
|
+
if (err instanceof Error && err.message.startsWith(PROJECT_NOT_FOUND_PREFIX)) {
|
|
218
|
+
return devFallbackDir(projectSlug) !== null;
|
|
219
|
+
}
|
|
220
|
+
throw err;
|
|
221
|
+
}
|
|
198
222
|
}
|
|
199
223
|
|
|
200
224
|
/**
|
|
@@ -58,6 +58,35 @@ const ALWAYS_IN_SCOPE = new Set<string>([
|
|
|
58
58
|
'structuredClone', 'fetch', 'atob', 'btoa',
|
|
59
59
|
]);
|
|
60
60
|
|
|
61
|
+
/**
|
|
62
|
+
* Strip a leading YAML frontmatter block so the scanner sees the body the
|
|
63
|
+
* renderer compiles. The real MDX pipeline parses frontmatter as YAML (via
|
|
64
|
+
* `frontmatter-utils.ts#parseFrontmatterLenient`, i.e. gray-matter) and compiles
|
|
65
|
+
* only the body — it NEVER evaluates `{…}` inside frontmatter. Without this, a
|
|
66
|
+
* path-param placeholder in an `api:` field (e.g. `api: GET /tickets/{ticket_id}`)
|
|
67
|
+
* parses as an MDX expression and false-warns.
|
|
68
|
+
*
|
|
69
|
+
* This APPROXIMATES gray-matter's frontmatter detection — it deliberately can't
|
|
70
|
+
* call it: the scanner is byte-copy-vendored to the CLI by `vendor.js` with no
|
|
71
|
+
* relative imports, so one source satisfies three module-resolution regimes
|
|
72
|
+
* (Cloud Run tsc, CLI NodeNext, the vendored Next.js app); a relative import
|
|
73
|
+
* would break the CLI build. So it inlines the boundary scan and covers the
|
|
74
|
+
* common cases a strict `---\n…\n---\n` match misses but the renderer strips: a
|
|
75
|
+
* leading BOM and horizontal whitespace/tabs after the closing fence. (Verified:
|
|
76
|
+
* each of those re-introduced the false warning before being handled here.)
|
|
77
|
+
* Exotic gray-matter forms remain advisory residuals — precision over recall.
|
|
78
|
+
*/
|
|
79
|
+
function stripFrontmatter(content: string): string {
|
|
80
|
+
// Tolerate a leading UTF-8 BOM (some editors emit one); gray-matter ignores it.
|
|
81
|
+
const src = content.charCodeAt(0) === 0xfeff ? content.slice(1) : content;
|
|
82
|
+
if (!src.startsWith('---')) return src;
|
|
83
|
+
// Closing fence: `---` + optional trailing horizontal whitespace, then EOL/EOF.
|
|
84
|
+
const endMatch = src.slice(3).match(/\n---[ \t]*(\r?\n|$)/);
|
|
85
|
+
if (!endMatch) return src;
|
|
86
|
+
const frontmatterEnd = 3 + endMatch.index! + endMatch[0].length;
|
|
87
|
+
return src.slice(frontmatterEnd);
|
|
88
|
+
}
|
|
89
|
+
|
|
61
90
|
/** Recursively collect bound names from a destructuring/identifier pattern. */
|
|
62
91
|
function collectPatternNames(pattern: EsNode | null | undefined, out: Set<string>): void {
|
|
63
92
|
if (!pattern || typeof (pattern as EsNode).type !== 'string') return;
|
|
@@ -172,9 +201,13 @@ function collectReferencedNames(estree: EsNode): string[] {
|
|
|
172
201
|
* @param pagePath Page path relative to the docs root (used in messages).
|
|
173
202
|
*/
|
|
174
203
|
export function findRiskyExpressions(content: string, pagePath: string): RiskyExpressionIssue[] {
|
|
204
|
+
// Scan only the MDX body. The renderer strips frontmatter as YAML and never
|
|
205
|
+
// evaluates `{…}` there, so a `{placeholder}` in an `api:`/`title:`/etc. field
|
|
206
|
+
// is not a real expression and must not warn (see stripFrontmatter).
|
|
207
|
+
const mdxBody = stripFrontmatter(content);
|
|
175
208
|
let tree: ReturnType<ReturnType<typeof unified>['parse']>;
|
|
176
209
|
try {
|
|
177
|
-
tree = unified().use(remarkParse).use(remarkMdx).parse(
|
|
210
|
+
tree = unified().use(remarkParse).use(remarkMdx).parse(mdxBody);
|
|
178
211
|
} catch {
|
|
179
212
|
// Malformed MDX (a true syntax error) is handled by the separate
|
|
180
213
|
// pre-compile guard; the scanner must never crash a build over a parse.
|
|
@@ -184,9 +184,9 @@
|
|
|
184
184
|
"license": "Apache-2.0"
|
|
185
185
|
},
|
|
186
186
|
"node_modules/@emnapi/runtime": {
|
|
187
|
-
"version": "1.
|
|
188
|
-
"resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.
|
|
189
|
-
"integrity": "sha512-
|
|
187
|
+
"version": "1.11.0",
|
|
188
|
+
"resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.11.0.tgz",
|
|
189
|
+
"integrity": "sha512-55coeOFKHv1ywEcUXJtWU5f+Jr/W5tZDvZig8DLKSwUN1JpROQ4rk/SNOQiFWmaR/VKF4zuFyW1B8JduOSv6Pg==",
|
|
190
190
|
"license": "MIT",
|
|
191
191
|
"optional": true,
|
|
192
192
|
"dependencies": {
|
|
@@ -1580,15 +1580,15 @@
|
|
|
1580
1580
|
}
|
|
1581
1581
|
},
|
|
1582
1582
|
"node_modules/@tailwindcss/typography": {
|
|
1583
|
-
"version": "0.5.
|
|
1584
|
-
"resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.
|
|
1585
|
-
"integrity": "sha512-
|
|
1583
|
+
"version": "0.5.20",
|
|
1584
|
+
"resolved": "https://registry.npmjs.org/@tailwindcss/typography/-/typography-0.5.20.tgz",
|
|
1585
|
+
"integrity": "sha512-hwbzQuNUfcPvbegQFatVPl/MY/tcM9KLl963hQ5laJKPh81TEZ1+dNG9PirGvcaDBkp+BCshExAyKVPW91dozw==",
|
|
1586
1586
|
"license": "MIT",
|
|
1587
1587
|
"dependencies": {
|
|
1588
1588
|
"postcss-selector-parser": "6.0.10"
|
|
1589
1589
|
},
|
|
1590
1590
|
"peerDependencies": {
|
|
1591
|
-
"tailwindcss": ">=3.0.0 ||
|
|
1591
|
+
"tailwindcss": ">=3.0.0 || >=4.0.0 || insiders"
|
|
1592
1592
|
}
|
|
1593
1593
|
},
|
|
1594
1594
|
"node_modules/@terrastruct/d2": {
|
|
@@ -1911,9 +1911,9 @@
|
|
|
1911
1911
|
}
|
|
1912
1912
|
},
|
|
1913
1913
|
"node_modules/@types/mdx": {
|
|
1914
|
-
"version": "2.0.
|
|
1915
|
-
"resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.
|
|
1916
|
-
"integrity": "sha512
|
|
1914
|
+
"version": "2.0.14",
|
|
1915
|
+
"resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.14.tgz",
|
|
1916
|
+
"integrity": "sha512-T48PeuJtvLosNTPVhfnIp3i/n3a4g4Bad7YCq5k64D4u7NwDrAotikQ+5+sjtUvBmxCMlbo3dVL+C2dP0rWHzg==",
|
|
1917
1917
|
"license": "MIT"
|
|
1918
1918
|
},
|
|
1919
1919
|
"node_modules/@types/ms": {
|
|
@@ -1932,18 +1932,18 @@
|
|
|
1932
1932
|
}
|
|
1933
1933
|
},
|
|
1934
1934
|
"node_modules/@types/node": {
|
|
1935
|
-
"version": "25.9.
|
|
1936
|
-
"resolved": "https://registry.npmjs.org/@types/node/-/node-25.9.
|
|
1937
|
-
"integrity": "sha512-
|
|
1935
|
+
"version": "25.9.2",
|
|
1936
|
+
"resolved": "https://registry.npmjs.org/@types/node/-/node-25.9.2.tgz",
|
|
1937
|
+
"integrity": "sha512-G05zqtJhcDLb8uslf5EjCxXg9G1KQxiV8OS0R26IC//Eoyitzqe8z37I7cqvnZlrlSfgocQRfSn/AHBZJJFyGw==",
|
|
1938
1938
|
"license": "MIT",
|
|
1939
1939
|
"dependencies": {
|
|
1940
1940
|
"undici-types": ">=7.24.0 <7.24.7"
|
|
1941
1941
|
}
|
|
1942
1942
|
},
|
|
1943
1943
|
"node_modules/@types/react": {
|
|
1944
|
-
"version": "19.2.
|
|
1945
|
-
"resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.
|
|
1946
|
-
"integrity": "sha512-
|
|
1944
|
+
"version": "19.2.17",
|
|
1945
|
+
"resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.17.tgz",
|
|
1946
|
+
"integrity": "sha512-MXfmqaVPEVgkBT/aY0aGCkRWWtByiYQXo3xdQ8r5RzuFrPiRn8Gar2tQdXSUQ2GKV3bkXckek89V8wQBY2Q/Aw==",
|
|
1947
1947
|
"license": "MIT",
|
|
1948
1948
|
"dependencies": {
|
|
1949
1949
|
"csstype": "^3.2.2"
|
|
@@ -2145,9 +2145,9 @@
|
|
|
2145
2145
|
}
|
|
2146
2146
|
},
|
|
2147
2147
|
"node_modules/baseline-browser-mapping": {
|
|
2148
|
-
"version": "2.10.
|
|
2149
|
-
"resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.
|
|
2150
|
-
"integrity": "sha512-
|
|
2148
|
+
"version": "2.10.34",
|
|
2149
|
+
"resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.34.tgz",
|
|
2150
|
+
"integrity": "sha512-IMDedajPifLnHNY0X9n8hKxRTQ6/eTHwr5bDo04WnuqxyKw6LYtQywCuuqPZwhl3aBXMvQpJov42GLCwRRdQzw==",
|
|
2151
2151
|
"license": "Apache-2.0",
|
|
2152
2152
|
"bin": {
|
|
2153
2153
|
"baseline-browser-mapping": "dist/cli.cjs"
|
|
@@ -2208,9 +2208,9 @@
|
|
|
2208
2208
|
"license": "MIT"
|
|
2209
2209
|
},
|
|
2210
2210
|
"node_modules/caniuse-lite": {
|
|
2211
|
-
"version": "1.0.
|
|
2212
|
-
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.
|
|
2213
|
-
"integrity": "sha512-
|
|
2211
|
+
"version": "1.0.30001797",
|
|
2212
|
+
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001797.tgz",
|
|
2213
|
+
"integrity": "sha512-l8xKG+gwAIExZGl9FrF7KUwuOmk6wbEPC9Xoy/RtnWv1XG0Q4LFlagaLpUv3Kiza3W/wm27zy0yWJEieYKAP6w==",
|
|
2214
2214
|
"funding": [
|
|
2215
2215
|
{
|
|
2216
2216
|
"type": "opencollective",
|
|
@@ -2939,15 +2939,15 @@
|
|
|
2939
2939
|
"license": "MIT"
|
|
2940
2940
|
},
|
|
2941
2941
|
"node_modules/electron-to-chromium": {
|
|
2942
|
-
"version": "1.5.
|
|
2943
|
-
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.
|
|
2944
|
-
"integrity": "sha512-
|
|
2942
|
+
"version": "1.5.368",
|
|
2943
|
+
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.368.tgz",
|
|
2944
|
+
"integrity": "sha512-7RckJJK4uESJF9PxvfMWd3TGqIiieUTG4HxnKaKuIpGbcr+r2ZEB3g2gAhCP3Fqm42vJSzLfgab9eva/C4/XVw==",
|
|
2945
2945
|
"license": "ISC"
|
|
2946
2946
|
},
|
|
2947
2947
|
"node_modules/enhanced-resolve": {
|
|
2948
|
-
"version": "5.
|
|
2949
|
-
"resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.
|
|
2950
|
-
"integrity": "sha512-
|
|
2948
|
+
"version": "5.23.0",
|
|
2949
|
+
"resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.23.0.tgz",
|
|
2950
|
+
"integrity": "sha512-yJN/BOOLxcOW2aQgeif9mSnaUB8KtvmMMp56oA1kx1CRfBKbhZm2pJ+NBY+3eOboHxix8lfjWpHE0Ei5U8RbSA==",
|
|
2951
2951
|
"license": "MIT",
|
|
2952
2952
|
"dependencies": {
|
|
2953
2953
|
"graceful-fs": "^4.2.4",
|
|
@@ -3238,9 +3238,9 @@
|
|
|
3238
3238
|
}
|
|
3239
3239
|
},
|
|
3240
3240
|
"node_modules/fuse.js": {
|
|
3241
|
-
"version": "7.4.
|
|
3242
|
-
"resolved": "https://registry.npmjs.org/fuse.js/-/fuse.js-7.4.
|
|
3243
|
-
"integrity": "sha512-
|
|
3241
|
+
"version": "7.4.2",
|
|
3242
|
+
"resolved": "https://registry.npmjs.org/fuse.js/-/fuse.js-7.4.2.tgz",
|
|
3243
|
+
"integrity": "sha512-LVbzjD4WA6UP5B1UnP8wuaXJiLnqMdM/E4fiJXTJ5haJ5b/MBNsK29h2fm6swEoQaVQjvYFWKLE2RanyZIoRVQ==",
|
|
3244
3244
|
"license": "Apache-2.0",
|
|
3245
3245
|
"engines": {
|
|
3246
3246
|
"node": ">=10"
|
|
@@ -6079,9 +6079,9 @@
|
|
|
6079
6079
|
}
|
|
6080
6080
|
},
|
|
6081
6081
|
"node_modules/semver": {
|
|
6082
|
-
"version": "7.8.
|
|
6083
|
-
"resolved": "https://registry.npmjs.org/semver/-/semver-7.8.
|
|
6084
|
-
"integrity": "sha512-
|
|
6082
|
+
"version": "7.8.3",
|
|
6083
|
+
"resolved": "https://registry.npmjs.org/semver/-/semver-7.8.3.tgz",
|
|
6084
|
+
"integrity": "sha512-wnilbGyMxzbY7dNOl7jpKbLSjcfeweJWU5j4+u5qW+6/wuGD9KzIGOyZnQVSBM9E7DtWaaH3CyHkppYrKYoxwg==",
|
|
6085
6085
|
"license": "ISC",
|
|
6086
6086
|
"optional": true,
|
|
6087
6087
|
"bin": {
|