@se-studio/search 1.0.29 → 1.0.31
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/CHANGELOG.md +21 -0
- package/dist/indexing/index.d.ts +1 -0
- package/dist/indexing/index.d.ts.map +1 -1
- package/dist/indexing/index.js +1 -0
- package/dist/indexing/index.js.map +1 -1
- package/dist/indexing/rebuild-wordpress.d.ts +19 -0
- package/dist/indexing/rebuild-wordpress.d.ts.map +1 -0
- package/dist/indexing/rebuild-wordpress.js +134 -0
- package/dist/indexing/rebuild-wordpress.js.map +1 -0
- package/package.json +6 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,26 @@
|
|
|
1
1
|
# @se-studio/search
|
|
2
2
|
|
|
3
|
+
## 1.0.31
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Bulk version bump: patch for all packages
|
|
8
|
+
- Updated dependencies
|
|
9
|
+
- @se-studio/contentful-rest-api@1.0.120
|
|
10
|
+
- @se-studio/core-data-types@1.0.120
|
|
11
|
+
- @se-studio/markdown-renderer@1.0.84
|
|
12
|
+
- @se-studio/wordpress-rest-api@1.0.1
|
|
13
|
+
|
|
14
|
+
## 1.0.30
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- Bulk version bump: patch for all packages
|
|
19
|
+
- Updated dependencies
|
|
20
|
+
- @se-studio/contentful-rest-api@1.0.119
|
|
21
|
+
- @se-studio/core-data-types@1.0.119
|
|
22
|
+
- @se-studio/markdown-renderer@1.0.83
|
|
23
|
+
|
|
3
24
|
## 1.0.29
|
|
4
25
|
|
|
5
26
|
### Patch Changes
|
package/dist/indexing/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { calculateMaxBodyLength, extractSearchableChunks, extractShallowText, } from './content-extractor';
|
|
2
2
|
export { allChunkIds, baseEntryId, buildSearchDocuments, chunkDocumentId, shouldIndex, } from './document-builder';
|
|
3
3
|
export { rebuildSearchIndex } from './rebuild';
|
|
4
|
+
export { rebuildSearchIndexWordPress } from './rebuild-wordpress';
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/indexing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,WAAW,EACX,WAAW,EACX,oBAAoB,EACpB,eAAe,EACf,WAAW,GACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/indexing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,WAAW,EACX,WAAW,EACX,oBAAoB,EACpB,eAAe,EACf,WAAW,GACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC"}
|
package/dist/indexing/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { calculateMaxBodyLength, extractSearchableChunks, extractShallowText, } from './content-extractor';
|
|
2
2
|
export { allChunkIds, baseEntryId, buildSearchDocuments, chunkDocumentId, shouldIndex, } from './document-builder';
|
|
3
3
|
export { rebuildSearchIndex } from './rebuild';
|
|
4
|
+
export { rebuildSearchIndexWordPress } from './rebuild-wordpress';
|
|
4
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/indexing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,WAAW,EACX,WAAW,EACX,oBAAoB,EACpB,eAAe,EACf,WAAW,GACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/indexing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,kBAAkB,GACnB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,WAAW,EACX,WAAW,EACX,oBAAoB,EACpB,eAAe,EACf,WAAW,GACZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { MarkdownConverterContext } from '@se-studio/markdown-renderer';
|
|
2
|
+
import type { CmsFetchOptionsLike, WordPressConfig, WordPressConverterContext } from '@se-studio/wordpress-rest-api';
|
|
3
|
+
import type { SearchClient } from '../client/search-client';
|
|
4
|
+
import type { RebuildResult, SearchIndexingConfig } from '../types';
|
|
5
|
+
/**
|
|
6
|
+
* Full search index rebuild using WordPress REST APIs and {@link WordPressMarkdownExporter}.
|
|
7
|
+
* Apps must supply a {@link MarkdownConverterContext} whose `config` can be a placeholder
|
|
8
|
+
* when conversion only touches WordPress-shaped models (HTML components).
|
|
9
|
+
*/
|
|
10
|
+
export declare function rebuildSearchIndexWordPress(config: {
|
|
11
|
+
client: SearchClient;
|
|
12
|
+
indexName: string;
|
|
13
|
+
indexingConfig: SearchIndexingConfig;
|
|
14
|
+
converterContext: WordPressConverterContext;
|
|
15
|
+
wordpressConfig: WordPressConfig;
|
|
16
|
+
fetchOptions: CmsFetchOptionsLike;
|
|
17
|
+
markdownConverterContext: MarkdownConverterContext;
|
|
18
|
+
}): Promise<RebuildResult>;
|
|
19
|
+
//# sourceMappingURL=rebuild-wordpress.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rebuild-wordpress.d.ts","sourceRoot":"","sources":["../../src/indexing/rebuild-wordpress.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAE7E,OAAO,KAAK,EACV,mBAAmB,EACnB,eAAe,EACf,yBAAyB,EAC1B,MAAM,+BAA+B,CAAC;AAQvC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,KAAK,EAEV,aAAa,EAEb,oBAAoB,EACrB,MAAM,UAAU,CAAC;AAmJlB;;;;GAIG;AACH,wBAAsB,2BAA2B,CAAC,MAAM,EAAE;IACxD,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,oBAAoB,CAAC;IACrC,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,eAAe,EAAE,eAAe,CAAC;IACjC,YAAY,EAAE,mBAAmB,CAAC;IAClC,wBAAwB,EAAE,wBAAwB,CAAC;CACpD,GAAG,OAAO,CAAC,aAAa,CAAC,CAoDzB"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { WordPressMarkdownExporter } from '@se-studio/markdown-renderer';
|
|
2
|
+
import { wordpressAllCategoryLinks, wordpressAllPageLinks, wordpressAllPersonLinks, wordpressAllPostLinks, } from '@se-studio/wordpress-rest-api';
|
|
3
|
+
import { debugLog } from '../debug';
|
|
4
|
+
import { buildSearchDocuments, shouldIndex } from './document-builder';
|
|
5
|
+
function getEnabledConfig(indexingConfig, type) {
|
|
6
|
+
return indexingConfig.contentTypes.find((ct) => ct.type === type && ct.enabled);
|
|
7
|
+
}
|
|
8
|
+
function resolveIncludeComponents(ctConfig, indexingConfig) {
|
|
9
|
+
return ctConfig.includeComponents ?? indexingConfig.indexComponents ?? true;
|
|
10
|
+
}
|
|
11
|
+
async function fetchLinks(type, ctx) {
|
|
12
|
+
const { converterContext, fetchOptions } = ctx;
|
|
13
|
+
switch (type) {
|
|
14
|
+
case 'page': {
|
|
15
|
+
const res = await wordpressAllPageLinks(converterContext.config, converterContext, fetchOptions);
|
|
16
|
+
return res.data;
|
|
17
|
+
}
|
|
18
|
+
case 'article': {
|
|
19
|
+
const res = await wordpressAllPostLinks(converterContext.config, converterContext, fetchOptions);
|
|
20
|
+
return res.data;
|
|
21
|
+
}
|
|
22
|
+
case 'articleType': {
|
|
23
|
+
const res = await wordpressAllCategoryLinks(converterContext.config, converterContext, fetchOptions);
|
|
24
|
+
return res.data;
|
|
25
|
+
}
|
|
26
|
+
case 'person': {
|
|
27
|
+
const res = await wordpressAllPersonLinks(converterContext.config, converterContext, fetchOptions);
|
|
28
|
+
return res.data;
|
|
29
|
+
}
|
|
30
|
+
default:
|
|
31
|
+
return [];
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
async function indexContentType(type, ctx, result) {
|
|
35
|
+
const ctConfig = getEnabledConfig(ctx.indexingConfig, type);
|
|
36
|
+
if (!ctConfig)
|
|
37
|
+
return [];
|
|
38
|
+
const respectIndexed = ctx.indexingConfig.respectIndexedFlag ?? true;
|
|
39
|
+
const respectHidden = ctx.indexingConfig.respectHiddenFlag ?? true;
|
|
40
|
+
const includeComponents = resolveIncludeComponents(ctConfig, ctx.indexingConfig);
|
|
41
|
+
const links = await fetchLinks(type, ctx);
|
|
42
|
+
debugLog('rebuild', `wordpress ${type}: fetched ${links.length} links`);
|
|
43
|
+
const exporter = new WordPressMarkdownExporter(ctx.wordpressConfig, ctx.converterContext, ctx.fetchOptions);
|
|
44
|
+
const documents = [];
|
|
45
|
+
for (const link of links) {
|
|
46
|
+
if (!shouldIndex(link, respectIndexed, respectHidden)) {
|
|
47
|
+
debugLog('rebuild', `${type}/${link.slug}: skipped (indexed/hidden)`);
|
|
48
|
+
result.skipped++;
|
|
49
|
+
continue;
|
|
50
|
+
}
|
|
51
|
+
try {
|
|
52
|
+
const articleType = type === 'article' && 'articleType' in link
|
|
53
|
+
? (link.articleType?.slug ?? 'blog')
|
|
54
|
+
: undefined;
|
|
55
|
+
debugLog('rebuild', `${type}/${link.slug}: fetching content...`);
|
|
56
|
+
const contentData = await exporter.fetchContent(type, link.slug, {
|
|
57
|
+
articleType,
|
|
58
|
+
});
|
|
59
|
+
if (!contentData) {
|
|
60
|
+
debugLog('rebuild', `${type}/${link.slug}: no content data returned, skipping`);
|
|
61
|
+
result.skipped++;
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
64
|
+
const docs = buildSearchDocuments(contentData, ctConfig.type, ctx.converterCtx, includeComponents);
|
|
65
|
+
const { documentTransformer } = ctx.indexingConfig;
|
|
66
|
+
const transformedDocs = documentTransformer
|
|
67
|
+
? docs
|
|
68
|
+
.map((doc) => documentTransformer(doc, contentData))
|
|
69
|
+
.filter((doc) => doc !== null)
|
|
70
|
+
: docs;
|
|
71
|
+
debugLog('rebuild', `${type}/${link.slug}: built ${transformedDocs.length} chunk(s)`);
|
|
72
|
+
documents.push(...transformedDocs);
|
|
73
|
+
}
|
|
74
|
+
catch (err) {
|
|
75
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
76
|
+
debugLog('rebuild', `${type}/${link.slug}: ERROR - ${message}`);
|
|
77
|
+
result.errors.push(`${type}/${link.slug}: ${message}`);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
debugLog('rebuild', `${type}: ${documents.length} documents built`);
|
|
81
|
+
return documents;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Full search index rebuild using WordPress REST APIs and {@link WordPressMarkdownExporter}.
|
|
85
|
+
* Apps must supply a {@link MarkdownConverterContext} whose `config` can be a placeholder
|
|
86
|
+
* when conversion only touches WordPress-shaped models (HTML components).
|
|
87
|
+
*/
|
|
88
|
+
export async function rebuildSearchIndexWordPress(config) {
|
|
89
|
+
debugLog('rebuild', 'Starting WordPress full rebuild', {
|
|
90
|
+
indexName: config.indexName,
|
|
91
|
+
enabledTypes: config.indexingConfig.contentTypes
|
|
92
|
+
.filter((ct) => ct.enabled)
|
|
93
|
+
.map((ct) => ct.type),
|
|
94
|
+
});
|
|
95
|
+
const result = { indexed: 0, skipped: 0, errors: [] };
|
|
96
|
+
const indexingContentContext = {
|
|
97
|
+
pageContext: {},
|
|
98
|
+
current: { type: 'Component', id: '' },
|
|
99
|
+
};
|
|
100
|
+
const converterCtx = {
|
|
101
|
+
...config.markdownConverterContext,
|
|
102
|
+
contentContext: indexingContentContext,
|
|
103
|
+
};
|
|
104
|
+
const ctx = {
|
|
105
|
+
client: config.client,
|
|
106
|
+
indexName: config.indexName,
|
|
107
|
+
converterContext: config.converterContext,
|
|
108
|
+
wordpressConfig: config.wordpressConfig,
|
|
109
|
+
fetchOptions: config.fetchOptions,
|
|
110
|
+
converterCtx,
|
|
111
|
+
indexingConfig: config.indexingConfig,
|
|
112
|
+
};
|
|
113
|
+
const contentTypes = ['page', 'article', 'articleType', 'person'];
|
|
114
|
+
const allDocuments = [];
|
|
115
|
+
for (const type of contentTypes) {
|
|
116
|
+
debugLog('rebuild', `Processing WordPress content type: ${type}`);
|
|
117
|
+
const docs = await indexContentType(type, ctx, result);
|
|
118
|
+
allDocuments.push(...docs);
|
|
119
|
+
}
|
|
120
|
+
debugLog('rebuild', `Total WordPress documents to upsert: ${allDocuments.length}`);
|
|
121
|
+
try {
|
|
122
|
+
await config.client.upsert(config.indexName, allDocuments);
|
|
123
|
+
result.indexed = allDocuments.length;
|
|
124
|
+
debugLog('rebuild', `Upserted ${allDocuments.length} docs to "${config.indexName}"`);
|
|
125
|
+
}
|
|
126
|
+
catch (err) {
|
|
127
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
128
|
+
debugLog('rebuild', `Upsert FAILED: ${message}`);
|
|
129
|
+
result.errors.push(`Upsert: ${message}`);
|
|
130
|
+
}
|
|
131
|
+
debugLog('rebuild', 'WordPress rebuild complete', result);
|
|
132
|
+
return result;
|
|
133
|
+
}
|
|
134
|
+
//# sourceMappingURL=rebuild-wordpress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rebuild-wordpress.js","sourceRoot":"","sources":["../../src/indexing/rebuild-wordpress.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@se-studio/search",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.31",
|
|
4
4
|
"description": "AI-powered site search with Upstash Search for Next.js marketing sites",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -43,16 +43,17 @@
|
|
|
43
43
|
],
|
|
44
44
|
"dependencies": {
|
|
45
45
|
"@upstash/search": "^0.1.7",
|
|
46
|
-
"@se-studio/contentful-rest-api": "1.0.
|
|
47
|
-
"@se-studio/core-data-types": "1.0.
|
|
48
|
-
"@se-studio/markdown-renderer": "1.0.
|
|
46
|
+
"@se-studio/contentful-rest-api": "1.0.120",
|
|
47
|
+
"@se-studio/core-data-types": "1.0.120",
|
|
48
|
+
"@se-studio/markdown-renderer": "1.0.84",
|
|
49
|
+
"@se-studio/wordpress-rest-api": "1.0.1"
|
|
49
50
|
},
|
|
50
51
|
"peerDependencies": {
|
|
51
52
|
"next": ">=15.5.0",
|
|
52
53
|
"react": "^19.0.0"
|
|
53
54
|
},
|
|
54
55
|
"devDependencies": {
|
|
55
|
-
"@biomejs/biome": "^2.4.
|
|
56
|
+
"@biomejs/biome": "^2.4.10",
|
|
56
57
|
"@types/node": "^22.19.15",
|
|
57
58
|
"@types/react": "^19.2.14",
|
|
58
59
|
"next": "^15.5.14",
|