jamdesk 1.1.104 → 1.1.105
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-detect.test.js +73 -1
- package/dist/__tests__/unit/migrate-detect.test.js.map +1 -1
- package/dist/__tests__/unit/migrate-resolve-theme.test.js +6 -0
- package/dist/__tests__/unit/migrate-resolve-theme.test.js.map +1 -1
- package/dist/commands/migrate/detect.d.ts +11 -1
- package/dist/commands/migrate/detect.d.ts.map +1 -1
- package/dist/commands/migrate/detect.js +17 -4
- package/dist/commands/migrate/detect.js.map +1 -1
- package/dist/commands/migrate/index.d.ts.map +1 -1
- package/dist/commands/migrate/index.js +7 -3
- package/dist/commands/migrate/index.js.map +1 -1
- package/dist/lib/docs-config.d.ts +2 -0
- package/dist/lib/docs-config.d.ts.map +1 -1
- package/dist/lib/docs-config.js +2 -2
- package/dist/lib/docs-config.js.map +1 -1
- package/package.json +1 -1
- package/vendored/components/search/SearchModal.tsx +175 -67
- package/vendored/lib/analytics-client.ts +2 -0
- package/vendored/lib/search-client.ts +223 -2
- package/vendored/lib/search.ts +8 -0
- package/vendored/lib/static-artifacts.ts +11 -0
- package/vendored/scripts/build-search-index.cjs +1 -0
- package/vendored/workspace-package-lock.json +15 -15
|
@@ -2,7 +2,8 @@ import { describe, it, expect, beforeEach, afterEach } from 'vitest';
|
|
|
2
2
|
import { mkdtemp, mkdir, writeFile, rm } from 'node:fs/promises';
|
|
3
3
|
import { tmpdir } from 'node:os';
|
|
4
4
|
import path from 'node:path';
|
|
5
|
-
import { detectMintlify, findConfigFile, detectOpenApiSpec, } from '../../commands/migrate/detect.js';
|
|
5
|
+
import { detectMintlify, detectLegacyJamdesk, findConfigFile, detectOpenApiSpec, } from '../../commands/migrate/detect.js';
|
|
6
|
+
import { MINTLIFY_THEMES } from '../../lib/docs-config.js';
|
|
6
7
|
describe('migrate/detect', () => {
|
|
7
8
|
describe('findConfigFile', () => {
|
|
8
9
|
it('returns null when no config file exists', () => {
|
|
@@ -33,6 +34,77 @@ describe('migrate/detect', () => {
|
|
|
33
34
|
const config = { $schema: 123, name: 'Test Docs' };
|
|
34
35
|
expect(detectMintlify(config)).toBe(false);
|
|
35
36
|
});
|
|
37
|
+
it('detects mintlify via theme name when $schema is absent', () => {
|
|
38
|
+
// Mintlify treats $schema as optional; a project initialized without
|
|
39
|
+
// one but using theme: "mint" must still be classified as Mintlify or
|
|
40
|
+
// migrate misclassifies it as a generic config.
|
|
41
|
+
const config = { theme: 'mint', name: 'Test Docs' };
|
|
42
|
+
expect(detectMintlify(config)).toBe(true);
|
|
43
|
+
});
|
|
44
|
+
it('detects mintlify via any Mintlify theme name', () => {
|
|
45
|
+
for (const theme of MINTLIFY_THEMES) {
|
|
46
|
+
expect(detectMintlify({ theme })).toBe(true);
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
it('matches Mintlify theme names case-insensitively', () => {
|
|
50
|
+
expect(detectMintlify({ theme: 'Mint' })).toBe(true);
|
|
51
|
+
});
|
|
52
|
+
it('returns false for a Jamdesk theme even without $schema', () => {
|
|
53
|
+
expect(detectMintlify({ theme: 'jam' })).toBe(false);
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
describe('detectLegacyJamdesk', () => {
|
|
57
|
+
it('returns true for a Jamdesk-schema config with navigation.anchors', () => {
|
|
58
|
+
const config = {
|
|
59
|
+
$schema: 'https://www.jamdesk.com/docs.json',
|
|
60
|
+
theme: 'jam',
|
|
61
|
+
navigation: { anchors: [{ anchor: 'Docs', pages: ['index'] }] },
|
|
62
|
+
};
|
|
63
|
+
expect(detectLegacyJamdesk(config)).toBe(true);
|
|
64
|
+
});
|
|
65
|
+
it('returns false for a config without navigation.anchors', () => {
|
|
66
|
+
const config = {
|
|
67
|
+
$schema: 'https://www.jamdesk.com/docs.json',
|
|
68
|
+
theme: 'jam',
|
|
69
|
+
navigation: { tabs: [] },
|
|
70
|
+
};
|
|
71
|
+
expect(detectLegacyJamdesk(config)).toBe(false);
|
|
72
|
+
});
|
|
73
|
+
it('returns false for a Mintlify-schema config even when navigation.anchors is present', () => {
|
|
74
|
+
// Mintlify uses navigation.anchors as its top-level nav primitive;
|
|
75
|
+
// treating this as "legacy Jamdesk" would short-circuit theme selection
|
|
76
|
+
// in migrate and preserve `theme: "mint"` into the new docs.json.
|
|
77
|
+
const config = {
|
|
78
|
+
$schema: 'https://mintlify.com/docs.json',
|
|
79
|
+
theme: 'mint',
|
|
80
|
+
navigation: { anchors: [{ anchor: 'Docs', pages: ['index'] }] },
|
|
81
|
+
};
|
|
82
|
+
expect(detectLegacyJamdesk(config)).toBe(false);
|
|
83
|
+
});
|
|
84
|
+
it('returns false when navigation.anchors is an empty array', () => {
|
|
85
|
+
const config = {
|
|
86
|
+
$schema: 'https://www.jamdesk.com/docs.json',
|
|
87
|
+
navigation: { anchors: [] },
|
|
88
|
+
};
|
|
89
|
+
expect(detectLegacyJamdesk(config)).toBe(false);
|
|
90
|
+
});
|
|
91
|
+
it('returns false for a schemaless Mintlify-themed config with anchors', () => {
|
|
92
|
+
// detectMintlify now also matches by theme name, so this case is
|
|
93
|
+
// routed to the Mintlify migration path rather than misclassified
|
|
94
|
+
// as legacy Jamdesk.
|
|
95
|
+
const config = {
|
|
96
|
+
theme: 'mint',
|
|
97
|
+
navigation: { anchors: [{ anchor: 'Docs', pages: ['index'] }] },
|
|
98
|
+
};
|
|
99
|
+
expect(detectLegacyJamdesk(config)).toBe(false);
|
|
100
|
+
});
|
|
101
|
+
it('returns true when $schema is malformed but navigation.anchors is present', () => {
|
|
102
|
+
const config = {
|
|
103
|
+
$schema: 42,
|
|
104
|
+
navigation: { anchors: [{ anchor: 'Docs', pages: ['index'] }] },
|
|
105
|
+
};
|
|
106
|
+
expect(detectLegacyJamdesk(config)).toBe(true);
|
|
107
|
+
});
|
|
36
108
|
});
|
|
37
109
|
describe('detectOpenApiSpec', () => {
|
|
38
110
|
let dir;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate-detect.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/migrate-detect.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EACL,cAAc,EACd,cAAc,EACd,iBAAiB,GAClB,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"migrate-detect.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/migrate-detect.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,5 +25,11 @@ describe('migrate/resolveTheme', () => {
|
|
|
25
25
|
it('ignores a non-string legacy theme (malformed config) and falls through', () => {
|
|
26
26
|
expect(resolveTheme({ verbose: false }, true, 42)).toBeNull();
|
|
27
27
|
});
|
|
28
|
+
it('ignores a non-Jamdesk legacy theme value and falls through', () => {
|
|
29
|
+
// A legacy config carrying a stray Mintlify or junk theme must not leak
|
|
30
|
+
// through to the new docs.json; fall back to the --yes default or prompt.
|
|
31
|
+
expect(resolveTheme({ verbose: false, yes: true }, true, 'mint')).toBe('jam');
|
|
32
|
+
expect(resolveTheme({ verbose: false }, true, 'mint')).toBeNull();
|
|
33
|
+
});
|
|
28
34
|
});
|
|
29
35
|
//# sourceMappingURL=migrate-resolve-theme.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate-resolve-theme.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/migrate-resolve-theme.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACzE,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0EAA0E,EAAE,GAAG,EAAE;QAClF,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QAChF,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAChE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"migrate-resolve-theme.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/migrate-resolve-theme.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAE/D,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;QAC7C,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wDAAwD,EAAE,GAAG,EAAE;QAChE,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;QACzE,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC1D,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0EAA0E,EAAE,GAAG,EAAE;QAClF,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;QAChF,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,wEAAwE;QACxE,0EAA0E;QAC1E,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC9E,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;IACpE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -21,12 +21,22 @@ export declare function findConfigFile(dir: string): ConfigFileResult | null;
|
|
|
21
21
|
*/
|
|
22
22
|
export declare function detectOpenApiSpec(dir: string): Promise<string | null>;
|
|
23
23
|
/**
|
|
24
|
-
* Check if a config object is from Mintlify
|
|
24
|
+
* Check if a config object is from Mintlify.
|
|
25
|
+
*
|
|
26
|
+
* `$schema` is optional in Mintlify configs, so a schema-only check misses
|
|
27
|
+
* schemaless projects. Fall back to the Mintlify theme name list so a config
|
|
28
|
+
* with `theme: "mint"` (or any other Mintlify theme) is still classified
|
|
29
|
+
* correctly even without a `$schema` field.
|
|
25
30
|
*/
|
|
26
31
|
export declare function detectMintlify(config: Record<string, unknown>): boolean;
|
|
27
32
|
/**
|
|
28
33
|
* Check if a config object is a legacy Jamdesk config that uses navigation.anchors.
|
|
29
34
|
* These need to be migrated to use navigation.tabs instead.
|
|
35
|
+
*
|
|
36
|
+
* Mintlify also uses `navigation.anchors` as a top-level navigation primitive,
|
|
37
|
+
* so a Mintlify-schema config matching the anchors shape is NOT legacy Jamdesk —
|
|
38
|
+
* misclassifying it would short-circuit theme selection during migrate and
|
|
39
|
+
* preserve `theme: "mint"` straight through to the new docs.json.
|
|
30
40
|
*/
|
|
31
41
|
export declare function detectLegacyJamdesk(config: Record<string, unknown>): boolean;
|
|
32
42
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../../src/commands/migrate/detect.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../../../src/commands/migrate/detect.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAAG,IAAI,CAenE;AAeD;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAY3E;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAIvE;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAM5E;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAItE"}
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
import fs from 'fs-extra';
|
|
8
8
|
import path from 'path';
|
|
9
9
|
import JSON5 from 'json5';
|
|
10
|
+
import { isMintlifyByThemeName } from '../../lib/docs-config.js';
|
|
10
11
|
const CONFIG_FILENAMES = ['mint.json', 'docs.json'];
|
|
11
12
|
/**
|
|
12
13
|
* Find a docs config file in the given directory.
|
|
@@ -62,19 +63,31 @@ export async function detectOpenApiSpec(dir) {
|
|
|
62
63
|
return null;
|
|
63
64
|
}
|
|
64
65
|
/**
|
|
65
|
-
* Check if a config object is from Mintlify
|
|
66
|
+
* Check if a config object is from Mintlify.
|
|
67
|
+
*
|
|
68
|
+
* `$schema` is optional in Mintlify configs, so a schema-only check misses
|
|
69
|
+
* schemaless projects. Fall back to the Mintlify theme name list so a config
|
|
70
|
+
* with `theme: "mint"` (or any other Mintlify theme) is still classified
|
|
71
|
+
* correctly even without a `$schema` field.
|
|
66
72
|
*/
|
|
67
73
|
export function detectMintlify(config) {
|
|
68
74
|
const schema = config.$schema;
|
|
69
|
-
if (typeof schema
|
|
70
|
-
return
|
|
71
|
-
return
|
|
75
|
+
if (typeof schema === 'string' && schema.includes('mintlify.com'))
|
|
76
|
+
return true;
|
|
77
|
+
return isMintlifyByThemeName(config.theme);
|
|
72
78
|
}
|
|
73
79
|
/**
|
|
74
80
|
* Check if a config object is a legacy Jamdesk config that uses navigation.anchors.
|
|
75
81
|
* These need to be migrated to use navigation.tabs instead.
|
|
82
|
+
*
|
|
83
|
+
* Mintlify also uses `navigation.anchors` as a top-level navigation primitive,
|
|
84
|
+
* so a Mintlify-schema config matching the anchors shape is NOT legacy Jamdesk —
|
|
85
|
+
* misclassifying it would short-circuit theme selection during migrate and
|
|
86
|
+
* preserve `theme: "mint"` straight through to the new docs.json.
|
|
76
87
|
*/
|
|
77
88
|
export function detectLegacyJamdesk(config) {
|
|
89
|
+
if (detectMintlify(config))
|
|
90
|
+
return false;
|
|
78
91
|
const navigation = config.navigation;
|
|
79
92
|
if (!navigation || typeof navigation !== 'object')
|
|
80
93
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detect.js","sourceRoot":"","sources":["../../../src/commands/migrate/detect.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"detect.js","sourceRoot":"","sources":["../../../src/commands/migrate/detect.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/migrate/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAmBH,OAAO,EAAU,KAAK,gBAAgB,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE3E;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,gBAAgB,EACzB,eAAe,EAAE,OAAO,EACxB,aAAa,EAAE,OAAO,GACrB,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/migrate/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAmBH,OAAO,EAAU,KAAK,gBAAgB,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAE3E;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,gBAAgB,EACzB,eAAe,EAAE,OAAO,EACxB,aAAa,EAAE,OAAO,GACrB,SAAS,GAAG,IAAI,CAmBlB;AAgFD,wBAAsB,OAAO,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8ZtE"}
|
|
@@ -33,9 +33,13 @@ export function resolveTheme(options, isLegacyJamdesk, existingTheme) {
|
|
|
33
33
|
if (options.theme && THEMES.some((t) => t.name === options.theme)) {
|
|
34
34
|
return options.theme;
|
|
35
35
|
}
|
|
36
|
-
// existingTheme is untrusted JSON (config is Record<string, unknown>)
|
|
37
|
-
//
|
|
38
|
-
|
|
36
|
+
// existingTheme is untrusted JSON (config is Record<string, unknown>). Only
|
|
37
|
+
// preserve it if it's actually a Jamdesk theme — a string like "mint" left
|
|
38
|
+
// over from a partially-edited config would otherwise leak straight through
|
|
39
|
+
// and break the next `jamdesk dev`.
|
|
40
|
+
if (isLegacyJamdesk &&
|
|
41
|
+
typeof existingTheme === 'string' &&
|
|
42
|
+
THEMES.some((t) => t.name === existingTheme)) {
|
|
39
43
|
return existingTheme;
|
|
40
44
|
}
|
|
41
45
|
if (options.yes) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/migrate/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/migrate/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,6 +51,8 @@ export interface ValidationResult {
|
|
|
51
51
|
}
|
|
52
52
|
type Schema = Record<string, unknown>;
|
|
53
53
|
export declare const MIGRATION_DOCS_URL = "https://jamdesk.com/docs/setup/migration";
|
|
54
|
+
export declare const MINTLIFY_THEMES: string[];
|
|
55
|
+
export declare function isMintlifyByThemeName(theme: unknown): boolean;
|
|
54
56
|
/**
|
|
55
57
|
* Render the "this is an un-migrated Mintlify project" notice as a scannable
|
|
56
58
|
* multi-line block. Pure (no chalk/no console) so it is unit-testable and
|
|
@@ -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;IACf,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAQtC,eAAO,MAAM,kBAAkB,6CAA6C,CAAC;
|
|
1
|
+
{"version":3,"file":"docs-config.d.ts","sourceRoot":"","sources":["../../src/lib/docs-config.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/docs-config.js
CHANGED
|
@@ -24,7 +24,7 @@ const __dirname = path.dirname(__filename);
|
|
|
24
24
|
// navigation-validator.ts. The vendored copy lives under different module-resolution
|
|
25
25
|
// rules and is excluded from `cli/src/`'s tsc compile.
|
|
26
26
|
export const MIGRATION_DOCS_URL = 'https://jamdesk.com/docs/setup/migration';
|
|
27
|
-
const MINTLIFY_THEMES = [
|
|
27
|
+
export const MINTLIFY_THEMES = [
|
|
28
28
|
'mint', 'maple', 'palm', 'willow', 'quill', 'aspen', 'linden', 'prism',
|
|
29
29
|
'almond', 'sequoia', 'luma',
|
|
30
30
|
];
|
|
@@ -34,7 +34,7 @@ function isMintlifyBySchema(config) {
|
|
|
34
34
|
const schema = config.$schema;
|
|
35
35
|
return typeof schema === 'string' && schema.includes('mintlify.com');
|
|
36
36
|
}
|
|
37
|
-
function isMintlifyByThemeName(theme) {
|
|
37
|
+
export function isMintlifyByThemeName(theme) {
|
|
38
38
|
return typeof theme === 'string' && MINTLIFY_THEMES.includes(theme.toLowerCase());
|
|
39
39
|
}
|
|
40
40
|
function mintlifyMigrationError(reason) {
|
|
@@ -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":"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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.105",
|
|
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",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
-
import { useEffect, useState, useRef, useCallback, type ReactElement } from 'react';
|
|
3
|
+
import { useEffect, useState, useRef, useCallback, useMemo, type ReactElement } from 'react';
|
|
4
4
|
import { usePathname, useRouter } from 'next/navigation';
|
|
5
5
|
import { getRecentSearches, addRecentSearch, clearRecentSearches } from '@/lib/recent-searches';
|
|
6
6
|
import { useFocusTrap } from '@/hooks/useFocusTrap';
|
|
@@ -9,7 +9,7 @@ import { getSuggestions } from '@/lib/search-suggestions';
|
|
|
9
9
|
import { trackSearch } from '@/lib/analytics-client';
|
|
10
10
|
import { useLinkPrefix } from '@/lib/link-prefix-context';
|
|
11
11
|
import { useProjectSlug } from '@/lib/project-slug-context';
|
|
12
|
-
import type { SearchResult } from '@/lib/search-client';
|
|
12
|
+
import type { SearchResult, SearchGroup } from '@/lib/search-client';
|
|
13
13
|
|
|
14
14
|
interface PopularPage {
|
|
15
15
|
title: string;
|
|
@@ -90,12 +90,57 @@ function NoResultsState({ query, onSuggestionClick }: { query: string; onSuggest
|
|
|
90
90
|
);
|
|
91
91
|
}
|
|
92
92
|
|
|
93
|
+
type SearchRow =
|
|
94
|
+
| { kind: 'page'; group: SearchGroup; result: SearchResult }
|
|
95
|
+
| { kind: 'section'; group: SearchGroup; result: SearchResult; sectionIndex: number }
|
|
96
|
+
| { kind: 'expander'; group: SearchGroup; hiddenCount: number };
|
|
97
|
+
|
|
98
|
+
const VISIBLE_SECTIONS_PER_GROUP = 3;
|
|
99
|
+
|
|
100
|
+
function flattenGroups(groups: SearchGroup[], expanded: Set<string>): SearchRow[] {
|
|
101
|
+
const rows: SearchRow[] = [];
|
|
102
|
+
for (const g of groups) {
|
|
103
|
+
rows.push({ kind: 'page', group: g, result: g.page });
|
|
104
|
+
const isExpanded = expanded.has(g.slug);
|
|
105
|
+
const visible = isExpanded ? g.sections : g.sections.slice(0, VISIBLE_SECTIONS_PER_GROUP);
|
|
106
|
+
visible.forEach((s, idx) =>
|
|
107
|
+
rows.push({ kind: 'section', group: g, result: s, sectionIndex: idx }),
|
|
108
|
+
);
|
|
109
|
+
const hiddenCount = g.sections.length - visible.length;
|
|
110
|
+
if (hiddenCount > 0) rows.push({ kind: 'expander', group: g, hiddenCount });
|
|
111
|
+
}
|
|
112
|
+
return rows;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Prefer `description` (frontmatter summary) when it contains a query token;
|
|
117
|
+
* otherwise fall back to the page's intro `content` — that's what Orama
|
|
118
|
+
* actually scored against, so highlights are guaranteed to render there.
|
|
119
|
+
*/
|
|
120
|
+
function pickHighlightSnippet(
|
|
121
|
+
description: string | undefined,
|
|
122
|
+
content: string,
|
|
123
|
+
query: string,
|
|
124
|
+
): string {
|
|
125
|
+
if (!description) return content;
|
|
126
|
+
const tokens = query.toLowerCase().split(/\s+/).filter(Boolean);
|
|
127
|
+
if (tokens.length === 0) return description;
|
|
128
|
+
const descLower = description.toLowerCase();
|
|
129
|
+
return tokens.some(t => descLower.includes(t)) ? description : content;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
function countVisibleResults(rows: SearchRow[]): number {
|
|
133
|
+
return rows.reduce((n, r) => (r.kind === 'expander' ? n : n + 1), 0);
|
|
134
|
+
}
|
|
135
|
+
|
|
93
136
|
export function SearchModal({ isOpen, onClose, popularPages, onNavigate }: SearchModalProps) {
|
|
94
137
|
const linkPrefix = useLinkPrefix();
|
|
95
138
|
const projectSlug = useProjectSlug();
|
|
96
139
|
const pathname = usePathname() ?? '';
|
|
97
140
|
const [query, setQuery] = useState('');
|
|
98
|
-
const [
|
|
141
|
+
const [groups, setGroups] = useState<SearchGroup[]>([]);
|
|
142
|
+
const [expandedSlugs, setExpandedSlugs] = useState<Set<string>>(new Set());
|
|
143
|
+
const rows = useMemo(() => flattenGroups(groups, expandedSlugs), [groups, expandedSlugs]);
|
|
99
144
|
const [selectedIndex, setSelectedIndex] = useState(0);
|
|
100
145
|
const [popularIndex, setPopularIndex] = useState(0);
|
|
101
146
|
const [isSearching, setIsSearching] = useState(false);
|
|
@@ -108,7 +153,7 @@ export function SearchModal({ isOpen, onClose, popularPages, onNavigate }: Searc
|
|
|
108
153
|
// Track if user clicked a result (to avoid double-tracking on modal close)
|
|
109
154
|
const hasTrackedRef = useRef(false);
|
|
110
155
|
// Store last search state for tracking on modal close
|
|
111
|
-
const lastSearchRef = useRef<{ query: string; resultsCount: number } | null>(null);
|
|
156
|
+
const lastSearchRef = useRef<{ query: string; resultsCount: number; groupCount: number } | null>(null);
|
|
112
157
|
|
|
113
158
|
// Effective popular pages (use provided or defaults)
|
|
114
159
|
const effectivePopularPages = popularPages?.length ? popularPages : DEFAULT_POPULAR_PAGES;
|
|
@@ -137,6 +182,7 @@ export function SearchModal({ isOpen, onClose, popularPages, onNavigate }: Searc
|
|
|
137
182
|
type: 'search_query',
|
|
138
183
|
query: lastSearchRef.current.query,
|
|
139
184
|
resultsCount: lastSearchRef.current.resultsCount,
|
|
185
|
+
groupCount: lastSearchRef.current.groupCount,
|
|
140
186
|
});
|
|
141
187
|
}
|
|
142
188
|
// Reset tracking state when modal opens
|
|
@@ -192,7 +238,7 @@ export function SearchModal({ isOpen, onClose, popularPages, onNavigate }: Searc
|
|
|
192
238
|
// Debounced search effect
|
|
193
239
|
useEffect(() => {
|
|
194
240
|
if (!query.trim()) {
|
|
195
|
-
|
|
241
|
+
setGroups([]);
|
|
196
242
|
setIsSearching(false);
|
|
197
243
|
return;
|
|
198
244
|
}
|
|
@@ -202,21 +248,25 @@ export function SearchModal({ isOpen, onClose, popularPages, onNavigate }: Searc
|
|
|
202
248
|
|
|
203
249
|
const timer = setTimeout(async () => {
|
|
204
250
|
try {
|
|
205
|
-
const {
|
|
251
|
+
const { searchGrouped, resolveActiveLocale } = await import('@/lib/search-client');
|
|
206
252
|
const activeLocale = resolveActiveLocale(pathname);
|
|
207
|
-
const searchResults = await
|
|
253
|
+
const searchResults = await searchGrouped(query, 15, activeLocale);
|
|
208
254
|
if (!cancelled) {
|
|
209
|
-
|
|
255
|
+
setGroups(searchResults);
|
|
256
|
+
setExpandedSlugs(new Set());
|
|
210
257
|
setSelectedIndex(0);
|
|
211
258
|
// Store search state for tracking on commit (Enter, click, modal close)
|
|
212
259
|
// This avoids tracking intermediate keystrokes like "C", "Co", "Col" when typing "Column"
|
|
213
|
-
|
|
260
|
+
const visibleRowCount = countVisibleResults(flattenGroups(searchResults, new Set()));
|
|
261
|
+
lastSearchRef.current = {
|
|
262
|
+
query: query.trim(),
|
|
263
|
+
resultsCount: visibleRowCount,
|
|
264
|
+
groupCount: searchResults.length,
|
|
265
|
+
};
|
|
214
266
|
}
|
|
215
267
|
} catch (error) {
|
|
216
268
|
console.error('Search error:', error);
|
|
217
|
-
if (!cancelled)
|
|
218
|
-
setResults([]);
|
|
219
|
-
}
|
|
269
|
+
if (!cancelled) setGroups([]);
|
|
220
270
|
} finally {
|
|
221
271
|
if (!cancelled) {
|
|
222
272
|
setIsSearching(false);
|
|
@@ -230,30 +280,46 @@ export function SearchModal({ isOpen, onClose, popularPages, onNavigate }: Searc
|
|
|
230
280
|
};
|
|
231
281
|
}, [query, pathname]);
|
|
232
282
|
|
|
233
|
-
// Scroll selected result into view
|
|
283
|
+
// Scroll selected result into view. Operates only on the results container —
|
|
284
|
+
// `scrollIntoView` inside a fixed-position modal scrolls every scrollable
|
|
285
|
+
// ancestor (including the page behind the modal), which is a documented
|
|
286
|
+
// anti-pattern in CLAUDE.md.
|
|
234
287
|
useEffect(() => {
|
|
235
|
-
if (
|
|
236
|
-
const
|
|
237
|
-
|
|
238
|
-
|
|
288
|
+
if (rows.length === 0) return;
|
|
289
|
+
const container = resultsContainerRef.current;
|
|
290
|
+
if (!container) return;
|
|
291
|
+
const el = container.querySelector<HTMLElement>(`#search-result-${selectedIndex}`);
|
|
292
|
+
if (!el) return;
|
|
293
|
+
const cRect = container.getBoundingClientRect();
|
|
294
|
+
const eRect = el.getBoundingClientRect();
|
|
295
|
+
if (eRect.top < cRect.top) {
|
|
296
|
+
container.scrollTop += eRect.top - cRect.top;
|
|
297
|
+
} else if (eRect.bottom > cRect.bottom) {
|
|
298
|
+
container.scrollTop += eRect.bottom - cRect.bottom;
|
|
299
|
+
}
|
|
300
|
+
}, [selectedIndex, rows.length]);
|
|
239
301
|
|
|
240
302
|
// Click handler for a result row. Defined before the keyboard-navigation
|
|
241
303
|
// effect so it can be a stable dep without TDZ issues.
|
|
242
304
|
const handleResultClick = useCallback(
|
|
243
|
-
(
|
|
305
|
+
(row: Exclude<SearchRow, { kind: 'expander' }>, index: number) => {
|
|
306
|
+
const result = row.result;
|
|
307
|
+
const visibleCount = countVisibleResults(rows);
|
|
244
308
|
if (query.trim()) {
|
|
245
309
|
// Track search_query event (the search itself)
|
|
246
310
|
trackSearch(projectSlug, {
|
|
247
311
|
type: 'search_query',
|
|
248
312
|
query: query.trim(),
|
|
249
|
-
resultsCount:
|
|
313
|
+
resultsCount: visibleCount,
|
|
314
|
+
groupCount: groups.length,
|
|
250
315
|
});
|
|
251
316
|
|
|
252
317
|
// Track search_click event (the result they clicked)
|
|
253
318
|
trackSearch(projectSlug, {
|
|
254
319
|
type: 'search_click',
|
|
255
320
|
query: query.trim(),
|
|
256
|
-
resultsCount:
|
|
321
|
+
resultsCount: visibleCount,
|
|
322
|
+
groupCount: groups.length,
|
|
257
323
|
clickedResult: {
|
|
258
324
|
slug: result.slug,
|
|
259
325
|
position: index + 1, // 1-indexed for analytics
|
|
@@ -266,36 +332,53 @@ export function SearchModal({ isOpen, onClose, popularPages, onNavigate }: Searc
|
|
|
266
332
|
addRecentSearch(projectSlug, query.trim());
|
|
267
333
|
}
|
|
268
334
|
|
|
269
|
-
const
|
|
335
|
+
const hash =
|
|
336
|
+
row.kind === 'section' && result.section
|
|
337
|
+
? `#${result.section.toLowerCase().replace(/\s+/g, '-')}`
|
|
338
|
+
: '';
|
|
339
|
+
const url = `${linkPrefix}/${result.slug}${hash}`;
|
|
270
340
|
onNavigate?.(url);
|
|
271
341
|
router.push(url);
|
|
272
342
|
onClose();
|
|
273
343
|
setQuery('');
|
|
274
|
-
|
|
344
|
+
setGroups([]);
|
|
275
345
|
},
|
|
276
|
-
[query, projectSlug,
|
|
346
|
+
[query, projectSlug, rows, groups, linkPrefix, onNavigate, router, onClose],
|
|
277
347
|
);
|
|
278
348
|
|
|
349
|
+
const handleExpanderClick = useCallback((slug: string) => {
|
|
350
|
+
setExpandedSlugs(prev => {
|
|
351
|
+
const next = new Set(prev);
|
|
352
|
+
next.add(slug);
|
|
353
|
+
return next;
|
|
354
|
+
});
|
|
355
|
+
}, []);
|
|
356
|
+
|
|
279
357
|
// Keyboard navigation
|
|
280
358
|
useEffect(() => {
|
|
281
359
|
if (!isOpen) return;
|
|
282
360
|
|
|
283
361
|
const handleKeyDown = (e: KeyboardEvent) => {
|
|
284
362
|
// When we have search results, navigate through them
|
|
285
|
-
if (
|
|
363
|
+
if (rows.length > 0) {
|
|
286
364
|
if (e.key === 'ArrowDown') {
|
|
287
365
|
e.preventDefault();
|
|
288
|
-
setSelectedIndex((prev) => Math.min(prev + 1,
|
|
366
|
+
setSelectedIndex((prev) => Math.min(prev + 1, rows.length - 1));
|
|
289
367
|
} else if (e.key === 'ArrowUp') {
|
|
290
368
|
e.preventDefault();
|
|
291
369
|
setSelectedIndex((prev) => Math.max(prev - 1, 0));
|
|
292
|
-
} else if (e.key === 'Enter' &&
|
|
370
|
+
} else if (e.key === 'Enter' && rows[selectedIndex]) {
|
|
293
371
|
e.preventDefault();
|
|
294
|
-
|
|
372
|
+
const row = rows[selectedIndex];
|
|
373
|
+
if (row.kind === 'expander') {
|
|
374
|
+
handleExpanderClick(row.group.slug);
|
|
375
|
+
} else {
|
|
376
|
+
handleResultClick(row, selectedIndex);
|
|
377
|
+
}
|
|
295
378
|
}
|
|
296
379
|
}
|
|
297
380
|
// When query exists but no results, Enter tracks the zero-result search
|
|
298
|
-
else if (query.trim() &&
|
|
381
|
+
else if (query.trim() && rows.length === 0 && !isSearching && e.key === 'Enter') {
|
|
299
382
|
e.preventDefault();
|
|
300
383
|
// Track this as a committed search with zero results
|
|
301
384
|
trackSearch(projectSlug, {
|
|
@@ -336,7 +419,7 @@ export function SearchModal({ isOpen, onClose, popularPages, onNavigate }: Searc
|
|
|
336
419
|
|
|
337
420
|
document.addEventListener('keydown', handleKeyDown);
|
|
338
421
|
return () => document.removeEventListener('keydown', handleKeyDown);
|
|
339
|
-
}, [isOpen, query, recentSearches,
|
|
422
|
+
}, [isOpen, query, recentSearches, rows, selectedIndex, effectivePopularPages, popularIndex, router, onClose, onNavigate, projectSlug, handleResultClick, handleExpanderClick, isSearching, linkPrefix]);
|
|
340
423
|
|
|
341
424
|
const handleClearRecentSearches = () => {
|
|
342
425
|
clearRecentSearches(projectSlug);
|
|
@@ -368,7 +451,7 @@ export function SearchModal({ isOpen, onClose, popularPages, onNavigate }: Searc
|
|
|
368
451
|
|
|
369
452
|
// Screen reader announcement text
|
|
370
453
|
const getAnnouncementText = () => {
|
|
371
|
-
if (
|
|
454
|
+
if (rows.length > 0) return `${countVisibleResults(rows)} results found`;
|
|
372
455
|
if (query.trim() && !isSearching) return 'No results found';
|
|
373
456
|
return '';
|
|
374
457
|
};
|
|
@@ -411,7 +494,7 @@ export function SearchModal({ isOpen, onClose, popularPages, onNavigate }: Searc
|
|
|
411
494
|
autoFocus
|
|
412
495
|
aria-label="Search documentation"
|
|
413
496
|
aria-controls="search-results"
|
|
414
|
-
aria-activedescendant={
|
|
497
|
+
aria-activedescendant={rows[selectedIndex] ? `search-result-${selectedIndex}` : undefined}
|
|
415
498
|
/>
|
|
416
499
|
<button
|
|
417
500
|
onClick={onClose}
|
|
@@ -444,45 +527,70 @@ export function SearchModal({ isOpen, onClose, popularPages, onNavigate }: Searc
|
|
|
444
527
|
<LoadingSpinner message="Loading search…" />
|
|
445
528
|
) : isSearching ? (
|
|
446
529
|
<LoadingSpinner message="Searching…" />
|
|
447
|
-
) :
|
|
530
|
+
) : rows.length > 0 ? (
|
|
448
531
|
<div className="py-2">
|
|
449
|
-
{
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
</span>
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
532
|
+
{rows.map((row, index) => {
|
|
533
|
+
const isSelected = index === selectedIndex;
|
|
534
|
+
|
|
535
|
+
if (row.kind === 'expander') {
|
|
536
|
+
const label = `+${row.hiddenCount} more section${row.hiddenCount === 1 ? '' : 's'}`;
|
|
537
|
+
return (
|
|
538
|
+
<button
|
|
539
|
+
id={`search-result-${index}`}
|
|
540
|
+
key={`expander:${row.group.slug}`}
|
|
541
|
+
onClick={() => handleExpanderClick(row.group.slug)}
|
|
542
|
+
role="option"
|
|
543
|
+
aria-selected={isSelected}
|
|
544
|
+
aria-label={label}
|
|
545
|
+
className={`w-full pl-10 pr-4 py-1.5 flex items-center gap-2 cursor-pointer transition-colors text-xs text-[var(--color-text-muted)] hover:text-[var(--color-text-primary)] ${
|
|
546
|
+
isSelected ? 'bg-[var(--color-bg-secondary)]' : 'hover:bg-[var(--color-bg-secondary)]'
|
|
547
|
+
}`}
|
|
548
|
+
>
|
|
549
|
+
<i className="fa-solid fa-chevron-down h-2.5 w-2.5" aria-hidden="true" />
|
|
550
|
+
<span>{label}</span>
|
|
551
|
+
</button>
|
|
552
|
+
);
|
|
553
|
+
}
|
|
554
|
+
const snippet = row.kind === 'page'
|
|
555
|
+
? pickHighlightSnippet(row.result.description, row.result.content, query)
|
|
556
|
+
: null;
|
|
557
|
+
return (
|
|
558
|
+
<button
|
|
559
|
+
id={`search-result-${index}`}
|
|
560
|
+
key={`${row.group.slug}:${row.kind}:${row.result.id}`}
|
|
561
|
+
onClick={() => handleResultClick(row, index)}
|
|
562
|
+
role="option"
|
|
563
|
+
aria-selected={isSelected}
|
|
564
|
+
className={`w-full px-4 py-2.5 flex items-start gap-3 cursor-pointer transition-colors outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-accent)] focus-visible:ring-inset ${
|
|
565
|
+
isSelected ? 'bg-[var(--color-bg-secondary)]' : 'hover:bg-[var(--color-bg-secondary)]'
|
|
566
|
+
} ${row.kind === 'section' ? 'pl-10' : ''}`}
|
|
567
|
+
>
|
|
568
|
+
{row.kind === 'page' ? (
|
|
569
|
+
<i className="fa-solid fa-file-lines h-4 w-4 text-[var(--color-accent)] flex-shrink-0 mt-0.5" aria-hidden="true" />
|
|
570
|
+
) : (
|
|
571
|
+
<i className="fa-solid fa-hashtag h-3 w-3 text-[var(--color-text-muted)] flex-shrink-0 mt-1" aria-hidden="true" />
|
|
572
|
+
)}
|
|
573
|
+
<div className="flex-1 text-left min-w-0">
|
|
574
|
+
<div className="flex items-center gap-2 mb-0.5">
|
|
575
|
+
<span className={`text-sm truncate ${row.kind === 'page' ? 'text-[var(--color-text-primary)] font-medium' : 'text-[var(--color-text-secondary)]'}`}>
|
|
576
|
+
{row.kind === 'page'
|
|
577
|
+
? highlightMatch(row.result.title, query)
|
|
578
|
+
: highlightMatch(row.result.section ?? row.result.title, query)}
|
|
579
|
+
</span>
|
|
580
|
+
{row.kind === 'page' && <TypeBadge type={row.result.type} />}
|
|
581
|
+
</div>
|
|
582
|
+
{snippet && (
|
|
583
|
+
<p className="text-xs text-[var(--color-text-tertiary)] line-clamp-2">{highlightMatch(snippet, query)}</p>
|
|
584
|
+
)}
|
|
585
|
+
{row.kind === 'section' && row.result.content && (
|
|
586
|
+
<p className="text-xs text-[var(--color-text-tertiary)] line-clamp-1">
|
|
587
|
+
{highlightMatch(row.result.content, query)}
|
|
588
|
+
</p>
|
|
476
589
|
)}
|
|
477
590
|
</div>
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
</p>
|
|
482
|
-
)}
|
|
483
|
-
</div>
|
|
484
|
-
</button>
|
|
485
|
-
))}
|
|
591
|
+
</button>
|
|
592
|
+
);
|
|
593
|
+
})}
|
|
486
594
|
</div>
|
|
487
595
|
) : query.trim() ? (
|
|
488
596
|
<NoResultsState query={query} onSuggestionClick={setQuery} />
|
|
@@ -28,12 +28,14 @@ interface SearchQueryEvent {
|
|
|
28
28
|
type: 'search_query';
|
|
29
29
|
query: string;
|
|
30
30
|
resultsCount: number;
|
|
31
|
+
groupCount?: number;
|
|
31
32
|
}
|
|
32
33
|
|
|
33
34
|
interface SearchClickEvent {
|
|
34
35
|
type: 'search_click';
|
|
35
36
|
query: string;
|
|
36
37
|
resultsCount: number;
|
|
38
|
+
groupCount?: number;
|
|
37
39
|
clickedResult: {
|
|
38
40
|
slug: string;
|
|
39
41
|
position: number;
|
|
@@ -16,8 +16,19 @@ export interface SearchResult {
|
|
|
16
16
|
slug: string;
|
|
17
17
|
section?: string;
|
|
18
18
|
type?: 'api' | 'component' | 'guide' | 'help' | 'quickstart';
|
|
19
|
-
/**
|
|
20
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Language of the document. Empty string for default-language pages.
|
|
21
|
+
* OPTIONAL because legacy R2 search-data.json files predate this field;
|
|
22
|
+
* the client treats `undefined` and `''` identically.
|
|
23
|
+
*/
|
|
24
|
+
locale?: string;
|
|
25
|
+
/**
|
|
26
|
+
* True for the canonical page-level document (idx=0). NOT a queryable
|
|
27
|
+
* Orama field — used only by `pageDocsBySlugLocale` to identify the
|
|
28
|
+
* page-level doc per (slug, locale). Legacy indexes that lack this field
|
|
29
|
+
* fall back via the 3-pass inference in `rebuildPageDocsMap`.
|
|
30
|
+
*/
|
|
31
|
+
isPageLevel?: boolean;
|
|
21
32
|
}
|
|
22
33
|
|
|
23
34
|
type OramaDb = Orama<{
|
|
@@ -56,6 +67,62 @@ let lastParsedData: SearchResult[] | null = null;
|
|
|
56
67
|
let projectLocalesLowered: ReadonlySet<string> = new Set();
|
|
57
68
|
let indexHasLocaleField = false;
|
|
58
69
|
|
|
70
|
+
/**
|
|
71
|
+
* Canonical page-level document per (slug, locale). Rebuilt on every
|
|
72
|
+
* `initializeSearch` call (BEFORE the fingerprint short-circuit) so the
|
|
73
|
+
* map can never drift from the committed data. Used by `searchGrouped`
|
|
74
|
+
* to surface a guaranteed group header regardless of BM25 score.
|
|
75
|
+
*/
|
|
76
|
+
let pageDocsBySlugLocale: Map<string, SearchResult> = new Map();
|
|
77
|
+
|
|
78
|
+
function mapKey(slug: string, locale: string): string {
|
|
79
|
+
return `${slug}|${locale}`;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Three-pass page-level inference:
|
|
84
|
+
* 1. Explicit `isPageLevel === true` (new emitter)
|
|
85
|
+
* 2. Empty `section` field (legacy emitter, page has intro text)
|
|
86
|
+
* 3. `id` ends in `-0` (legacy emitter, page starts with a heading)
|
|
87
|
+
*
|
|
88
|
+
* First-match wins per (slug, locale).
|
|
89
|
+
*/
|
|
90
|
+
function rebuildPageDocsMap(data: SearchResult[]): void {
|
|
91
|
+
// Build into a local map and assign at the end so an in-flight reader
|
|
92
|
+
// can never observe a partial state.
|
|
93
|
+
const m = new Map<string, SearchResult>();
|
|
94
|
+
const localeOf = (item: SearchResult) => item.locale ?? '';
|
|
95
|
+
|
|
96
|
+
// Pass 1: explicit flag
|
|
97
|
+
for (const item of data) {
|
|
98
|
+
if (item.isPageLevel !== true) continue;
|
|
99
|
+
const key = mapKey(item.slug, localeOf(item));
|
|
100
|
+
if (!m.has(key)) m.set(key, item);
|
|
101
|
+
}
|
|
102
|
+
// Pass 2: section-less docs
|
|
103
|
+
for (const item of data) {
|
|
104
|
+
if (item.section) continue;
|
|
105
|
+
const key = mapKey(item.slug, localeOf(item));
|
|
106
|
+
if (!m.has(key)) m.set(key, item);
|
|
107
|
+
}
|
|
108
|
+
// Pass 3: id ends in `-0` (lowest-idx doc)
|
|
109
|
+
for (const item of data) {
|
|
110
|
+
if (!item.id.endsWith('-0')) continue;
|
|
111
|
+
const key = mapKey(item.slug, localeOf(item));
|
|
112
|
+
if (!m.has(key)) m.set(key, item);
|
|
113
|
+
}
|
|
114
|
+
pageDocsBySlugLocale = m;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/**
|
|
118
|
+
* Returns the canonical page-level document for the given (slug, locale)
|
|
119
|
+
* pair, or undefined if the index has no doc for that pair. Used by
|
|
120
|
+
* `searchGrouped` to construct group headers.
|
|
121
|
+
*/
|
|
122
|
+
export function getPageDocForSlug(slug: string, locale: string): SearchResult | undefined {
|
|
123
|
+
return pageDocsBySlugLocale.get(mapKey(slug, locale));
|
|
124
|
+
}
|
|
125
|
+
|
|
59
126
|
/**
|
|
60
127
|
* Cheap fingerprint: count + first/last IDs + a sample of content lengths.
|
|
61
128
|
* Detects new/removed pages AND content edits (which change content length).
|
|
@@ -135,6 +202,12 @@ async function buildIndex(data: SearchResult[], etag: string): Promise<void> {
|
|
|
135
202
|
}
|
|
136
203
|
|
|
137
204
|
export async function initializeSearch(data: SearchResult[], etag = ''): Promise<void> {
|
|
205
|
+
// ALWAYS rebuild the page-docs map before any short-circuit. Rebuilding
|
|
206
|
+
// it here (rather than inside buildIndex) guarantees the map stays
|
|
207
|
+
// consistent with the input even when Orama build is skipped on a
|
|
208
|
+
// fingerprint match (ETag re-fetch, modal re-open with same data).
|
|
209
|
+
rebuildPageDocsMap(data);
|
|
210
|
+
|
|
138
211
|
const fp = fingerprint(data);
|
|
139
212
|
|
|
140
213
|
// Skip rebuild if the committed index already matches
|
|
@@ -217,6 +290,154 @@ export async function search(
|
|
|
217
290
|
return docs.slice(0, limit);
|
|
218
291
|
}
|
|
219
292
|
|
|
293
|
+
/**
|
|
294
|
+
* A group of search hits collapsed under a single page.
|
|
295
|
+
*
|
|
296
|
+
* `page` is always present and represents the group header. Source order:
|
|
297
|
+
* 1. The canonical page-level doc from `pageDocsBySlugLocale`
|
|
298
|
+
* 2. (fallback) A page-level hit observed in this query's results
|
|
299
|
+
* 3. (fallback) A synthesized header derived from the highest-ranked
|
|
300
|
+
* matching section
|
|
301
|
+
*
|
|
302
|
+
* `sections` excludes the page-level doc and is the FULL score-sorted list
|
|
303
|
+
* of matched sub-sections. The UI applies the visible cap.
|
|
304
|
+
*/
|
|
305
|
+
export interface SearchGroup {
|
|
306
|
+
slug: string;
|
|
307
|
+
page: SearchResult;
|
|
308
|
+
sections: SearchResult[];
|
|
309
|
+
totalSections: number;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
/**
|
|
313
|
+
* Same query as `search()` but collapses hits by slug.
|
|
314
|
+
*
|
|
315
|
+
* `groupLimit` is the maximum number of groups (pages). Internally
|
|
316
|
+
* over-fetches up to `groupLimit * 5`, capped at 75, so a page with many
|
|
317
|
+
* matching sections doesn't starve other pages out of the result set.
|
|
318
|
+
*
|
|
319
|
+
* Tail risk: pages with VERY many matching sections (50+) can still
|
|
320
|
+
* dominate the over-fetch window and crowd out lower-ranked pages.
|
|
321
|
+
* Acceptable for docs; switch to Orama v3.1's `groupBy` if it becomes an
|
|
322
|
+
* issue.
|
|
323
|
+
*/
|
|
324
|
+
export async function searchGrouped(
|
|
325
|
+
query: string,
|
|
326
|
+
groupLimit = 10,
|
|
327
|
+
language?: string,
|
|
328
|
+
): Promise<SearchGroup[]> {
|
|
329
|
+
if (!db) {
|
|
330
|
+
console.warn('Search database not initialized');
|
|
331
|
+
return [];
|
|
332
|
+
}
|
|
333
|
+
if (!query.trim()) return [];
|
|
334
|
+
|
|
335
|
+
const targetLocale = language ?? '';
|
|
336
|
+
const docFetchLimit = Math.min(groupLimit * 5, 75);
|
|
337
|
+
|
|
338
|
+
const results = await oramaSearch(db, {
|
|
339
|
+
term: query,
|
|
340
|
+
limit: docFetchLimit,
|
|
341
|
+
tolerance: 1,
|
|
342
|
+
boost: { title: 2, section: 1.5, description: 1, content: 0.5 },
|
|
343
|
+
...(indexHasLocaleField ? { where: { locale: { eq: targetLocale } } } : {}),
|
|
344
|
+
});
|
|
345
|
+
|
|
346
|
+
let hits = results.hits.map(h => ({
|
|
347
|
+
doc: h.document as unknown as SearchResult,
|
|
348
|
+
score: h.score,
|
|
349
|
+
}));
|
|
350
|
+
|
|
351
|
+
// Locale post-filter for legacy indexes that lack the locale field.
|
|
352
|
+
if (!indexHasLocaleField) {
|
|
353
|
+
if (targetLocale) {
|
|
354
|
+
const prefix = `${targetLocale}/`;
|
|
355
|
+
hits = hits.filter(h => h.doc.slug.startsWith(prefix));
|
|
356
|
+
} else if (projectLocalesLowered.size > 0) {
|
|
357
|
+
hits = hits.filter(h => {
|
|
358
|
+
const firstSeg = h.doc.slug.split('/', 1)[0]?.toLowerCase();
|
|
359
|
+
return !firstSeg || !projectLocalesLowered.has(firstSeg);
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
type Bucket = {
|
|
365
|
+
slug: string;
|
|
366
|
+
bestScore: number;
|
|
367
|
+
pageHit?: SearchResult;
|
|
368
|
+
sections: { doc: SearchResult; score: number }[];
|
|
369
|
+
};
|
|
370
|
+
const bucketsBySlug = new Map<string, Bucket>();
|
|
371
|
+
const slugOrder: string[] = [];
|
|
372
|
+
|
|
373
|
+
for (const { doc, score } of hits) {
|
|
374
|
+
let bucket = bucketsBySlug.get(doc.slug);
|
|
375
|
+
if (!bucket) {
|
|
376
|
+
bucket = { slug: doc.slug, bestScore: score, sections: [] };
|
|
377
|
+
bucketsBySlug.set(doc.slug, bucket);
|
|
378
|
+
slugOrder.push(doc.slug);
|
|
379
|
+
}
|
|
380
|
+
if (score > bucket.bestScore) bucket.bestScore = score;
|
|
381
|
+
|
|
382
|
+
// Identify page-level doc by ID match against the canonical map
|
|
383
|
+
// rather than `doc.isPageLevel` — robust against Orama field stripping.
|
|
384
|
+
//
|
|
385
|
+
// CRITICAL: this lookup MUST use the doc's own locale (defaulting to ''),
|
|
386
|
+
// NOT `targetLocale`. The map is keyed by `${slug}|${item.locale ?? ''}`
|
|
387
|
+
// — so legacy docs (no locale field) live at `slug|''` regardless of the
|
|
388
|
+
// active search locale. Looking up with `targetLocale` would silently
|
|
389
|
+
// miss the canonical doc on non-default-locale searches, breaking
|
|
390
|
+
// page-first identification for the exact legacy case the 3-pass
|
|
391
|
+
// fallback protects.
|
|
392
|
+
const canonicalId = getPageDocForSlug(doc.slug, doc.locale ?? '')?.id;
|
|
393
|
+
if (canonicalId && canonicalId === doc.id) {
|
|
394
|
+
bucket.pageHit = doc;
|
|
395
|
+
} else {
|
|
396
|
+
bucket.sections.push({ doc, score });
|
|
397
|
+
}
|
|
398
|
+
}
|
|
399
|
+
|
|
400
|
+
const topBuckets = slugOrder
|
|
401
|
+
.map(s => bucketsBySlug.get(s)!)
|
|
402
|
+
.sort((a, b) => b.bestScore - a.bestScore)
|
|
403
|
+
.slice(0, groupLimit);
|
|
404
|
+
|
|
405
|
+
return topBuckets.map(bucket => {
|
|
406
|
+
// Use the locale of an actual hit in the bucket to look up the
|
|
407
|
+
// canonical doc — mirrors the map's keying rule (`item.locale ?? ''`).
|
|
408
|
+
// Avoids the legacy-index miss where targetLocale='fr' but the map
|
|
409
|
+
// keyed the slug at `slug|''` because the doc had no locale field.
|
|
410
|
+
const sampleHit = bucket.pageHit ?? bucket.sections[0]?.doc;
|
|
411
|
+
const lookupLocale = sampleHit?.locale ?? '';
|
|
412
|
+
const canonical = getPageDocForSlug(bucket.slug, lookupLocale);
|
|
413
|
+
|
|
414
|
+
const synthesized: SearchResult | undefined =
|
|
415
|
+
!canonical && !bucket.pageHit && bucket.sections[0]
|
|
416
|
+
? {
|
|
417
|
+
...bucket.sections[0].doc,
|
|
418
|
+
id: `synth:${bucket.slug}:${encodeURIComponent(query)}`,
|
|
419
|
+
section: undefined,
|
|
420
|
+
content: bucket.sections[0].doc.description || bucket.sections[0].doc.content,
|
|
421
|
+
isPageLevel: true,
|
|
422
|
+
}
|
|
423
|
+
: undefined;
|
|
424
|
+
const page = canonical ?? bucket.pageHit ?? synthesized!;
|
|
425
|
+
|
|
426
|
+
// Copy before sorting — bucket.sections is still referenced from
|
|
427
|
+
// bucketsBySlug; don't mutate it in place.
|
|
428
|
+
const sortedSections = [...bucket.sections]
|
|
429
|
+
.sort((a, b) => b.score - a.score)
|
|
430
|
+
.map(s => s.doc);
|
|
431
|
+
|
|
432
|
+
return {
|
|
433
|
+
slug: bucket.slug,
|
|
434
|
+
page,
|
|
435
|
+
sections: sortedSections,
|
|
436
|
+
totalSections: sortedSections.length,
|
|
437
|
+
};
|
|
438
|
+
});
|
|
439
|
+
}
|
|
440
|
+
|
|
220
441
|
/** @internal Used by tests only */
|
|
221
442
|
export function isInitialized(): boolean {
|
|
222
443
|
return db !== null;
|
package/vendored/lib/search.ts
CHANGED
|
@@ -10,6 +10,13 @@ export interface SearchResult {
|
|
|
10
10
|
content: string;
|
|
11
11
|
slug: string;
|
|
12
12
|
section?: string;
|
|
13
|
+
/**
|
|
14
|
+
* True only on the first document emitted for each page (idx === 0).
|
|
15
|
+
* Closes the gap where client-side grouping infers the page-level entry from
|
|
16
|
+
* an empty `section` — which fails when pages open with a heading rather
|
|
17
|
+
* than introductory prose.
|
|
18
|
+
*/
|
|
19
|
+
isPageLevel?: boolean;
|
|
13
20
|
}
|
|
14
21
|
|
|
15
22
|
let searchDocuments: SearchResult[] = [];
|
|
@@ -94,6 +101,7 @@ export function buildSearchIndex(): SearchResult[] {
|
|
|
94
101
|
content: cleanContent.substring(0, 300), // Limit content length
|
|
95
102
|
slug: slug,
|
|
96
103
|
section: section.heading || undefined,
|
|
104
|
+
...(idx === 0 ? { isPageLevel: true as const } : {}),
|
|
97
105
|
};
|
|
98
106
|
|
|
99
107
|
documents.push(doc);
|
|
@@ -624,6 +624,16 @@ export interface SearchDocument {
|
|
|
624
624
|
type: string;
|
|
625
625
|
/** Language of the document. Empty string for default-language pages. */
|
|
626
626
|
locale: string;
|
|
627
|
+
/**
|
|
628
|
+
* Explicitly marks the canonical page-level document so the client's
|
|
629
|
+
* grouper has a reliable anchor. Without this flag, client-side
|
|
630
|
+
* inference falls back to "empty `section`" — which fails for pages
|
|
631
|
+
* that begin with a heading (idx=0 has a non-empty section, identical
|
|
632
|
+
* to any other subsection). Emitting the flag here closes that gap;
|
|
633
|
+
* the client's pass-2/3 fallbacks become last-resort handling for
|
|
634
|
+
* legacy R2 indexes that predate this field.
|
|
635
|
+
*/
|
|
636
|
+
isPageLevel?: boolean;
|
|
627
637
|
}
|
|
628
638
|
|
|
629
639
|
/**
|
|
@@ -750,6 +760,7 @@ export function generateSearchData(
|
|
|
750
760
|
section: section.heading || undefined,
|
|
751
761
|
type: pageType,
|
|
752
762
|
locale,
|
|
763
|
+
...(idx === 0 ? { isPageLevel: true as const } : {}),
|
|
753
764
|
});
|
|
754
765
|
}
|
|
755
766
|
});
|
|
@@ -1921,18 +1921,18 @@
|
|
|
1921
1921
|
}
|
|
1922
1922
|
},
|
|
1923
1923
|
"node_modules/@types/node": {
|
|
1924
|
-
"version": "25.9.
|
|
1925
|
-
"resolved": "https://registry.npmjs.org/@types/node/-/node-25.9.
|
|
1926
|
-
"integrity": "sha512-
|
|
1924
|
+
"version": "25.9.1",
|
|
1925
|
+
"resolved": "https://registry.npmjs.org/@types/node/-/node-25.9.1.tgz",
|
|
1926
|
+
"integrity": "sha512-xfrlY7UD5rMJk3ZVJP8BNzS28J36YJg+xp+LPXV1TdWxr8uMH5A860QNxYDGQe/ylDSgjxE52Q9VnO7p75tJxg==",
|
|
1927
1927
|
"license": "MIT",
|
|
1928
1928
|
"dependencies": {
|
|
1929
1929
|
"undici-types": ">=7.24.0 <7.24.7"
|
|
1930
1930
|
}
|
|
1931
1931
|
},
|
|
1932
1932
|
"node_modules/@types/react": {
|
|
1933
|
-
"version": "19.2.
|
|
1934
|
-
"resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.
|
|
1935
|
-
"integrity": "sha512-
|
|
1933
|
+
"version": "19.2.15",
|
|
1934
|
+
"resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.15.tgz",
|
|
1935
|
+
"integrity": "sha512-eRwcGNHve+E8qtEQSSRl6urh+rFop4v8gm6O8rGv25CodbvFdLjA1vVQ1KkiFE0w0UPOnb8tDiFKL5lp0rtY5Q==",
|
|
1936
1936
|
"license": "MIT",
|
|
1937
1937
|
"dependencies": {
|
|
1938
1938
|
"csstype": "^3.2.2"
|
|
@@ -2928,15 +2928,15 @@
|
|
|
2928
2928
|
"license": "MIT"
|
|
2929
2929
|
},
|
|
2930
2930
|
"node_modules/electron-to-chromium": {
|
|
2931
|
-
"version": "1.5.
|
|
2932
|
-
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.
|
|
2933
|
-
"integrity": "sha512-
|
|
2931
|
+
"version": "1.5.360",
|
|
2932
|
+
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.360.tgz",
|
|
2933
|
+
"integrity": "sha512-GkcBt6YYAw9SxFWn+xVar4cLVGlXVuswwtRLBozi2zp0GjXs4ZnOrqV4zbXzg35n7w81hCkyJNYicgXlVHAmBA==",
|
|
2934
2934
|
"license": "ISC"
|
|
2935
2935
|
},
|
|
2936
2936
|
"node_modules/enhanced-resolve": {
|
|
2937
|
-
"version": "5.21.
|
|
2938
|
-
"resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.21.
|
|
2939
|
-
"integrity": "sha512-
|
|
2937
|
+
"version": "5.21.6",
|
|
2938
|
+
"resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.21.6.tgz",
|
|
2939
|
+
"integrity": "sha512-aNnGCvbJ/RIyWo1IuhNdVjnNF+EjH9wpzpNHt+ci/m9He9LJvUN8wrCcXjp9cWsGNAuvSpVFTx/vraAFQ8qGjQ==",
|
|
2940
2940
|
"license": "MIT",
|
|
2941
2941
|
"dependencies": {
|
|
2942
2942
|
"graceful-fs": "^4.2.4",
|
|
@@ -4067,9 +4067,9 @@
|
|
|
4067
4067
|
}
|
|
4068
4068
|
},
|
|
4069
4069
|
"node_modules/lru-cache": {
|
|
4070
|
-
"version": "11.
|
|
4071
|
-
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.
|
|
4072
|
-
"integrity": "sha512-
|
|
4070
|
+
"version": "11.5.0",
|
|
4071
|
+
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.5.0.tgz",
|
|
4072
|
+
"integrity": "sha512-5YgH9UJd7wVb9hIouI2adWpgqrrICkt070Dnj8EUY1+B4B2P9eRLPAkAAo6NICA7CEhOIeBHl46u9zSNpNu7zA==",
|
|
4073
4073
|
"license": "BlueOak-1.0.0",
|
|
4074
4074
|
"engines": {
|
|
4075
4075
|
"node": "20 || >=22"
|