@redocly/realm-plugin-asciidoc 0.1.0
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/lib/.tsbuildinfo +1 -0
- package/lib/asciidoc-parser.d.ts +15 -0
- package/lib/asciidoc-parser.js +747 -0
- package/lib/asciidoc-parser.js.map +1 -0
- package/lib/get-ai-search-documents.d.ts +24 -0
- package/lib/get-ai-search-documents.js +133 -0
- package/lib/get-ai-search-documents.js.map +1 -0
- package/lib/plugin.d.ts +2 -0
- package/lib/plugin.js +314 -0
- package/lib/plugin.js.map +1 -0
- package/lib/search-facets.d.ts +3 -0
- package/lib/search-facets.js +34 -0
- package/lib/search-facets.js.map +1 -0
- package/lib/search-resolver.d.ts +4 -0
- package/lib/search-resolver.js +72 -0
- package/lib/search-resolver.js.map +1 -0
- package/lib/template.d.ts +18 -0
- package/lib/template.js +346 -0
- package/lib/template.js.map +1 -0
- package/lib/types.d.ts +130 -0
- package/lib/types.js +2 -0
- package/lib/types.js.map +1 -0
- package/package.json +45 -0
- package/src/asciidoc-parser.ts +927 -0
- package/src/get-ai-search-documents.ts +193 -0
- package/src/plugin.ts +483 -0
- package/src/search-facets.ts +46 -0
- package/src/search-resolver.ts +98 -0
- package/src/template.tsx +628 -0
- package/src/types.ts +171 -0
- package/tsconfig.build.json +13 -0
- package/tsconfig.json +10 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asciidoc-parser.js","sourceRoot":"","sources":["../src/asciidoc-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { SearchFacet } from '@redocly/theme';
|
|
2
|
+
import type { PageRouteDetails } from '@redocly/realm/dist/server/types';
|
|
3
|
+
import type { AsciidocSection, AsciidocFrontmatter } from './types.js';
|
|
4
|
+
type AiDocumentsStore = {
|
|
5
|
+
getLLMsTxts: () => Promise<{
|
|
6
|
+
content: string;
|
|
7
|
+
title: string;
|
|
8
|
+
description?: string;
|
|
9
|
+
slug: string;
|
|
10
|
+
fsPath: string;
|
|
11
|
+
includeInLLMsTxt: boolean;
|
|
12
|
+
}[]>;
|
|
13
|
+
getSearchDocuments: () => Promise<{
|
|
14
|
+
url: string;
|
|
15
|
+
fsPath: string;
|
|
16
|
+
content: string;
|
|
17
|
+
title: string;
|
|
18
|
+
locale: string;
|
|
19
|
+
product?: string;
|
|
20
|
+
facets?: Record<string, string>;
|
|
21
|
+
}[]>;
|
|
22
|
+
};
|
|
23
|
+
export declare function getAiDocumentsStore(frontmatter: AsciidocFrontmatter, sections: AsciidocSection[], getSearchFacets: () => Map<string, SearchFacet>): (route: PageRouteDetails, staticData: unknown, context: unknown, actions: unknown) => Promise<AiDocumentsStore | undefined>;
|
|
24
|
+
export {};
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { extractDocumentSearchFacets } from './search-facets.js';
|
|
11
|
+
const AI_SEARCH_CHUNK_SIZE = 50;
|
|
12
|
+
const AI_SEARCH_DOCUMENT_CHUNK_SIZE = 250;
|
|
13
|
+
export function getAiDocumentsStore(frontmatter, sections, getSearchFacets) {
|
|
14
|
+
return (route, _staticData, _context, _actions) => __awaiter(this, void 0, void 0, function* () {
|
|
15
|
+
var _a, _b;
|
|
16
|
+
if (frontmatter.excludeFromSearch)
|
|
17
|
+
return;
|
|
18
|
+
const pageTitle = ((_a = frontmatter.seo) === null || _a === void 0 ? void 0 : _a.title) || frontmatter.title || route.slug;
|
|
19
|
+
const description = ((_b = frontmatter.seo) === null || _b === void 0 ? void 0 : _b.description) || frontmatter.description;
|
|
20
|
+
return {
|
|
21
|
+
getLLMsTxts() {
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
const body = sectionsToMarkdown(sections);
|
|
24
|
+
const content = `# ${pageTitle}\n\n${body}`;
|
|
25
|
+
return [
|
|
26
|
+
{
|
|
27
|
+
title: pageTitle,
|
|
28
|
+
description,
|
|
29
|
+
slug: route.slug,
|
|
30
|
+
fsPath: route.fsPath,
|
|
31
|
+
content,
|
|
32
|
+
includeInLLMsTxt: true,
|
|
33
|
+
},
|
|
34
|
+
];
|
|
35
|
+
});
|
|
36
|
+
},
|
|
37
|
+
getSearchDocuments() {
|
|
38
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
+
const metadata = route.metadata || {};
|
|
40
|
+
const facets = extractDocumentSearchFacets(metadata, getSearchFacets);
|
|
41
|
+
const chunks = createContentChunks(sections, pageTitle, route.slug);
|
|
42
|
+
const mergedChunks = mergeChunks(chunks);
|
|
43
|
+
return mergedChunks
|
|
44
|
+
.filter((chunk) => chunk.content)
|
|
45
|
+
.map((chunk) => {
|
|
46
|
+
var _a;
|
|
47
|
+
return ({
|
|
48
|
+
title: chunk.title,
|
|
49
|
+
url: chunk.url,
|
|
50
|
+
content: chunk.toc
|
|
51
|
+
? `${chunk.toc}\n${chunk.content}`
|
|
52
|
+
: `# ${pageTitle}\n${chunk.content}`,
|
|
53
|
+
fsPath: route.fsPath,
|
|
54
|
+
locale: detectLocaleFromFsPath(route.fsPath),
|
|
55
|
+
product: (_a = route.product) === null || _a === void 0 ? void 0 : _a.name,
|
|
56
|
+
facets,
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
});
|
|
60
|
+
},
|
|
61
|
+
};
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
function sectionsToMarkdown(sections, headingLevel = 1) {
|
|
65
|
+
const parts = [];
|
|
66
|
+
for (const section of sections) {
|
|
67
|
+
const prefix = '#'.repeat(headingLevel + 1);
|
|
68
|
+
parts.push(`${prefix} ${section.title}`);
|
|
69
|
+
if (section.textContent) {
|
|
70
|
+
parts.push(section.textContent);
|
|
71
|
+
}
|
|
72
|
+
if (section.children.length > 0) {
|
|
73
|
+
parts.push(sectionsToMarkdown(section.children, headingLevel + 1));
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
return parts.join('\n\n');
|
|
77
|
+
}
|
|
78
|
+
function createContentChunks(sections, pageTitle, pageUrl) {
|
|
79
|
+
const chunks = [];
|
|
80
|
+
const headingStack = [];
|
|
81
|
+
function processSection(section) {
|
|
82
|
+
// Update heading stack
|
|
83
|
+
headingStack.splice(section.level - 1);
|
|
84
|
+
headingStack.push({ title: section.title, level: section.level });
|
|
85
|
+
const sectionUrl = `${pageUrl}#${section.id}`;
|
|
86
|
+
const toc = headingStack.map((h) => `${'#'.repeat(h.level + 1)} ${h.title}`).join('\n');
|
|
87
|
+
const chunkTitle = section.level > 1 ? `${pageTitle} → ${section.title}` : section.title || pageTitle;
|
|
88
|
+
chunks.push({
|
|
89
|
+
title: chunkTitle,
|
|
90
|
+
content: section.textContent,
|
|
91
|
+
url: sectionUrl,
|
|
92
|
+
level: section.level,
|
|
93
|
+
toc,
|
|
94
|
+
});
|
|
95
|
+
for (const child of section.children) {
|
|
96
|
+
processSection(child);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
for (const section of sections) {
|
|
100
|
+
processSection(section);
|
|
101
|
+
}
|
|
102
|
+
return chunks;
|
|
103
|
+
}
|
|
104
|
+
function estimateChunkSize(content) {
|
|
105
|
+
return content.length / 4;
|
|
106
|
+
}
|
|
107
|
+
function mergeChunks(chunks) {
|
|
108
|
+
if (chunks.length === 0)
|
|
109
|
+
return [];
|
|
110
|
+
const mergedChunks = [];
|
|
111
|
+
let currentChunk = chunks[0];
|
|
112
|
+
for (const chunk of chunks.slice(1)) {
|
|
113
|
+
const currentChunkSize = estimateChunkSize(currentChunk.content);
|
|
114
|
+
const chunkSize = estimateChunkSize(chunk.content);
|
|
115
|
+
const isLastChunk = chunks.indexOf(chunk) === chunks.length - 1;
|
|
116
|
+
if (chunkSize < AI_SEARCH_CHUNK_SIZE &&
|
|
117
|
+
(currentChunkSize < AI_SEARCH_DOCUMENT_CHUNK_SIZE || isLastChunk) &&
|
|
118
|
+
chunk.level > currentChunk.level) {
|
|
119
|
+
currentChunk.content += '\n' + chunk.content;
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
mergedChunks.push(currentChunk);
|
|
123
|
+
currentChunk = chunk;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
mergedChunks.push(currentChunk);
|
|
127
|
+
return mergedChunks;
|
|
128
|
+
}
|
|
129
|
+
function detectLocaleFromFsPath(relativePath) {
|
|
130
|
+
const localeCandidate = relativePath.split('/')[0];
|
|
131
|
+
return /^[a-z]{2}-[A-Z]{2}$/.test(localeCandidate) ? localeCandidate : '';
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=get-ai-search-documents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"get-ai-search-documents.js","sourceRoot":"","sources":["../src/get-ai-search-documents.ts"],"names":[],"mappings":"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"}
|
package/lib/plugin.d.ts
ADDED
package/lib/plugin.js
ADDED
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import path from 'node:path';
|
|
11
|
+
import { createHash } from 'node:crypto';
|
|
12
|
+
import { existsSync, mkdirSync, copyFileSync, readFileSync } from 'node:fs';
|
|
13
|
+
import { fileURLToPath } from 'url';
|
|
14
|
+
import { getPathPrefix, withPathPrefix } from '@redocly/theme/core/utils';
|
|
15
|
+
import { searchResolver } from './search-resolver.js';
|
|
16
|
+
import { getAiDocumentsStore } from './get-ai-search-documents.js';
|
|
17
|
+
import { parseAsciidoc } from './asciidoc-parser.js';
|
|
18
|
+
const ASCIIDOC_TEMPLATE_ID = 'asciidoc-docs';
|
|
19
|
+
export default function asciidocPlugin() {
|
|
20
|
+
return {
|
|
21
|
+
id: 'asciidoc',
|
|
22
|
+
loaders: {
|
|
23
|
+
asciidoc: (relativePath, context) => __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
const content = yield context.fs.read(relativePath);
|
|
25
|
+
return parseAsciidoc(content, relativePath, context.fs.cwd);
|
|
26
|
+
}),
|
|
27
|
+
},
|
|
28
|
+
processContent: (actions, context) => __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
const asciidocTemplateId = actions.createTemplate(ASCIIDOC_TEMPLATE_ID, fromCurrentDir(import.meta.url, './template.js'));
|
|
30
|
+
for (const record of context.fs.scan(/\.adoc$/)) {
|
|
31
|
+
if (yield context.isPathIgnored(record.relativePath)) {
|
|
32
|
+
continue;
|
|
33
|
+
}
|
|
34
|
+
const { relativePath } = record;
|
|
35
|
+
try {
|
|
36
|
+
const { data: parsed } = yield context.cache.load(relativePath, 'asciidoc');
|
|
37
|
+
if (!parsed)
|
|
38
|
+
continue;
|
|
39
|
+
const { title, attributes, sections, contentNodes, links } = parsed;
|
|
40
|
+
// Resolve image src attributes in content nodes to hashed asset URLs
|
|
41
|
+
const resolvedContentNodes = resolveContentNodeImages(contentNodes, actions.contentDir, actions.outdir);
|
|
42
|
+
const normalizedAttributes = normalizeAsciidocAttributes(attributes);
|
|
43
|
+
const fallbackTitle = path.basename(relativePath, '.adoc');
|
|
44
|
+
const pageTitle = title || fallbackTitle;
|
|
45
|
+
const metadata = Object.assign({ type: 'asciidoc', title: pageTitle }, normalizedAttributes.metadata);
|
|
46
|
+
const frontmatter = {
|
|
47
|
+
title: pageTitle,
|
|
48
|
+
description: normalizedAttributes.description,
|
|
49
|
+
keywords: normalizedAttributes.keywords,
|
|
50
|
+
excludeFromSearch: normalizedAttributes.excludeFromSearch,
|
|
51
|
+
seo: {
|
|
52
|
+
title: normalizedAttributes.doctitle || pageTitle,
|
|
53
|
+
description: normalizedAttributes.description || '',
|
|
54
|
+
},
|
|
55
|
+
};
|
|
56
|
+
actions.addRoute({
|
|
57
|
+
excludeFromSearch: normalizedAttributes.excludeFromSearch,
|
|
58
|
+
fsPath: relativePath,
|
|
59
|
+
templateId: asciidocTemplateId,
|
|
60
|
+
metadata,
|
|
61
|
+
getNavText: () => __awaiter(this, void 0, void 0, function* () { return pageTitle; }),
|
|
62
|
+
getStaticData: (_route, dataContext) => __awaiter(this, void 0, void 0, function* () {
|
|
63
|
+
// Resolve cross-page links using Realm's route registry
|
|
64
|
+
const linkedContentNodes = resolveContentNodeLinks(resolvedContentNodes, relativePath, dataContext);
|
|
65
|
+
return {
|
|
66
|
+
props: {
|
|
67
|
+
title: pageTitle,
|
|
68
|
+
contentNodes: linkedContentNodes,
|
|
69
|
+
sections,
|
|
70
|
+
links,
|
|
71
|
+
frontmatter,
|
|
72
|
+
},
|
|
73
|
+
};
|
|
74
|
+
}),
|
|
75
|
+
getSearchDocuments: searchResolver(frontmatter, relativePath, sections, actions.getSearchFacets, actions.setSearchFacets),
|
|
76
|
+
getAiDocumentsStore: getAiDocumentsStore(frontmatter, sections, actions.getSearchFacets),
|
|
77
|
+
});
|
|
78
|
+
}
|
|
79
|
+
catch (e) {
|
|
80
|
+
console.error(`Failed to process AsciiDoc file: ${relativePath}`, e);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}),
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
function normalizeAsciidocAttributes(attributes) {
|
|
87
|
+
const doctitle = toStringValue(attributes.doctitle);
|
|
88
|
+
const description = toStringValue(attributes.description);
|
|
89
|
+
const rawKeywords = toStringValue(attributes.keywords);
|
|
90
|
+
const keywords = rawKeywords
|
|
91
|
+
? rawKeywords
|
|
92
|
+
.split(',')
|
|
93
|
+
.map((keyword) => keyword.trim())
|
|
94
|
+
.filter(Boolean)
|
|
95
|
+
: undefined;
|
|
96
|
+
const metadata = Object.entries(attributes).reduce((acc, [key, value]) => {
|
|
97
|
+
if (!key.startsWith('metadata-'))
|
|
98
|
+
return acc;
|
|
99
|
+
const metadataKey = key.slice('metadata-'.length);
|
|
100
|
+
if (!metadataKey)
|
|
101
|
+
return acc;
|
|
102
|
+
acc[metadataKey] = String(value);
|
|
103
|
+
return acc;
|
|
104
|
+
}, {});
|
|
105
|
+
const excludeFromSearch = toBooleanValue(attributes['exclude-from-search'], false);
|
|
106
|
+
return {
|
|
107
|
+
doctitle,
|
|
108
|
+
description,
|
|
109
|
+
keywords,
|
|
110
|
+
excludeFromSearch,
|
|
111
|
+
metadata,
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
function toStringValue(value) {
|
|
115
|
+
if (typeof value === 'string')
|
|
116
|
+
return value;
|
|
117
|
+
if (typeof value === 'number' || typeof value === 'boolean')
|
|
118
|
+
return String(value);
|
|
119
|
+
return undefined;
|
|
120
|
+
}
|
|
121
|
+
function toBooleanValue(value, defaultValue) {
|
|
122
|
+
if (typeof value === 'boolean')
|
|
123
|
+
return value;
|
|
124
|
+
if (typeof value === 'number')
|
|
125
|
+
return value !== 0;
|
|
126
|
+
if (typeof value === 'string')
|
|
127
|
+
return ['1', 'true', 'yes', 'on'].includes(value.toLowerCase());
|
|
128
|
+
return defaultValue;
|
|
129
|
+
}
|
|
130
|
+
function __dirname(url) {
|
|
131
|
+
const __filename = fileURLToPath(url);
|
|
132
|
+
return path.dirname(__filename);
|
|
133
|
+
}
|
|
134
|
+
function fromCurrentDir(moduleUrl, filePath) {
|
|
135
|
+
return path.resolve(__dirname(moduleUrl), filePath);
|
|
136
|
+
}
|
|
137
|
+
// ─── Image asset resolution ─────────────────────────────────────────────────
|
|
138
|
+
const ASSETS_URL_PREFIX = '/assets';
|
|
139
|
+
const ASSETS_DIRNAME = 'assets';
|
|
140
|
+
/**
|
|
141
|
+
* Recursively walks the content node tree and resolves image `src` values
|
|
142
|
+
* to hashed asset URLs, copying each file to the output assets directory.
|
|
143
|
+
*/
|
|
144
|
+
function resolveContentNodeImages(nodes, contentDir, outdir) {
|
|
145
|
+
return nodes.map((node) => resolveNodeImages(node, contentDir, outdir));
|
|
146
|
+
}
|
|
147
|
+
function resolveNodeImages(node, contentDir, outdir) {
|
|
148
|
+
switch (node.type) {
|
|
149
|
+
case 'image': {
|
|
150
|
+
const src = node.src;
|
|
151
|
+
if (src.startsWith('/') && !src.startsWith('//') && !src.startsWith('/assets/')) {
|
|
152
|
+
try {
|
|
153
|
+
const assetUrl = copyImageToAssets(src.slice(1), contentDir, outdir);
|
|
154
|
+
return Object.assign(Object.assign({}, node), { src: assetUrl });
|
|
155
|
+
}
|
|
156
|
+
catch (_a) {
|
|
157
|
+
return node;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return node;
|
|
161
|
+
}
|
|
162
|
+
case 'section':
|
|
163
|
+
case 'admonition':
|
|
164
|
+
case 'quote':
|
|
165
|
+
case 'sidebar':
|
|
166
|
+
case 'example':
|
|
167
|
+
case 'collapsible':
|
|
168
|
+
return Object.assign(Object.assign({}, node), { children: resolveContentNodeImages(node.children, contentDir, outdir) });
|
|
169
|
+
case 'list':
|
|
170
|
+
return Object.assign(Object.assign({}, node), { items: node.items.map((item) => (Object.assign(Object.assign({}, item), { children: resolveContentNodeImages(item.children, contentDir, outdir) }))) });
|
|
171
|
+
case 'descriptionList':
|
|
172
|
+
return Object.assign(Object.assign({}, node), { items: node.items.map((item) => (Object.assign(Object.assign({}, item), { children: resolveContentNodeImages(item.children, contentDir, outdir) }))) });
|
|
173
|
+
default:
|
|
174
|
+
return node;
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
function copyImageToAssets(fileRelativePath, contentDir, outdir) {
|
|
178
|
+
const absolutePath = path.resolve(contentDir, fileRelativePath);
|
|
179
|
+
if (!existsSync(absolutePath)) {
|
|
180
|
+
throw new Error(`Image not found: ${absolutePath}`);
|
|
181
|
+
}
|
|
182
|
+
const assetsDir = path.join(outdir, ASSETS_DIRNAME);
|
|
183
|
+
if (!existsSync(assetsDir)) {
|
|
184
|
+
mkdirSync(assetsDir, { recursive: true });
|
|
185
|
+
}
|
|
186
|
+
const ext = path.extname(absolutePath);
|
|
187
|
+
const baseName = path.basename(absolutePath, ext);
|
|
188
|
+
const fileContent = readFileSync(absolutePath);
|
|
189
|
+
const hash = createHash('sha256').update(fileContent).digest('hex').slice(0, 16);
|
|
190
|
+
const hashedName = `${slugifyFileName(baseName)}.${hash}${ext}`;
|
|
191
|
+
const destPath = path.join(assetsDir, hashedName);
|
|
192
|
+
copyFileSync(absolutePath, destPath);
|
|
193
|
+
return `${ASSETS_URL_PREFIX}/${hashedName}`;
|
|
194
|
+
}
|
|
195
|
+
function slugifyFileName(name) {
|
|
196
|
+
return name
|
|
197
|
+
.toLowerCase()
|
|
198
|
+
.replace(/[^a-z0-9.-]/g, '-')
|
|
199
|
+
.replace(/-+/g, '-')
|
|
200
|
+
.replace(/^-|-$/g, '');
|
|
201
|
+
}
|
|
202
|
+
// Link resolution logic adapted from packages/portal/src/server/plugins/markdown/attribute-resolvers/resolve-link.ts
|
|
203
|
+
const DOC_EXTENSIONS = new Set(['.adoc', '.asciidoc', '.html', '.md']);
|
|
204
|
+
function isLocalLink(href) {
|
|
205
|
+
return (href != null &&
|
|
206
|
+
!href.match(/^[a-z]+:\/\//) &&
|
|
207
|
+
!href.startsWith('//') &&
|
|
208
|
+
!href.startsWith('mailto:'));
|
|
209
|
+
}
|
|
210
|
+
function stripKnownExtensions(filePath) {
|
|
211
|
+
for (const ext of DOC_EXTENSIONS) {
|
|
212
|
+
if (filePath.endsWith(ext))
|
|
213
|
+
return filePath.slice(0, -ext.length);
|
|
214
|
+
}
|
|
215
|
+
return filePath;
|
|
216
|
+
}
|
|
217
|
+
function resolveAsciidocLink(href, fromPage, dataContext) {
|
|
218
|
+
if (!href || href.startsWith('#') || !isLocalLink(href)) {
|
|
219
|
+
return href;
|
|
220
|
+
}
|
|
221
|
+
const hashIdx = href.indexOf('#');
|
|
222
|
+
const pathAndQuery = hashIdx >= 0 ? href.slice(0, hashIdx) : href;
|
|
223
|
+
const hashPart = hashIdx >= 0 ? href.slice(hashIdx) : '';
|
|
224
|
+
const qIdx = pathAndQuery.indexOf('?');
|
|
225
|
+
const rawPath = qIdx >= 0 ? pathAndQuery.slice(0, qIdx) : pathAndQuery;
|
|
226
|
+
const queryPart = qIdx >= 0 ? pathAndQuery.slice(qIdx) : '';
|
|
227
|
+
if (!rawPath)
|
|
228
|
+
return href;
|
|
229
|
+
const ext = path.posix.extname(rawPath);
|
|
230
|
+
if (DOC_EXTENSIONS.has(ext)) {
|
|
231
|
+
const fsRelativePath = rawPath.startsWith('/')
|
|
232
|
+
? rawPath.slice(1)
|
|
233
|
+
: path.posix.normalize(path.posix.join(path.posix.dirname(fromPage), rawPath));
|
|
234
|
+
const route = dataContext.getRouteByFsPath(fsRelativePath);
|
|
235
|
+
if (route) {
|
|
236
|
+
return maybeAddPathPrefix(route.slug + queryPart + hashPart);
|
|
237
|
+
}
|
|
238
|
+
const slug = '/' + stripKnownExtensions(fsRelativePath).replace(/\/index$/, '');
|
|
239
|
+
const routeBySlug = dataContext.getRouteBySlug(slug, { followRedirect: true });
|
|
240
|
+
if (routeBySlug) {
|
|
241
|
+
return maybeAddPathPrefix(routeBySlug.slug + queryPart + hashPart);
|
|
242
|
+
}
|
|
243
|
+
return maybeAddPathPrefix(slug + queryPart + hashPart);
|
|
244
|
+
}
|
|
245
|
+
if (ext === '') {
|
|
246
|
+
if (rawPath.startsWith('/')) {
|
|
247
|
+
const route = dataContext.getRouteBySlug(rawPath, { followRedirect: true });
|
|
248
|
+
if (route) {
|
|
249
|
+
return maybeAddPathPrefix(route.slug + queryPart + hashPart);
|
|
250
|
+
}
|
|
251
|
+
return maybeAddPathPrefix(rawPath + queryPart + hashPart);
|
|
252
|
+
}
|
|
253
|
+
const currentRoute = dataContext.getRouteByFsPath(fromPage);
|
|
254
|
+
if (currentRoute) {
|
|
255
|
+
const isIndexFile = fromPage.endsWith('/index.adoc') ||
|
|
256
|
+
fromPage.endsWith('/index.md') ||
|
|
257
|
+
fromPage.endsWith('/index.html');
|
|
258
|
+
const base = isIndexFile ? currentRoute.slug : path.posix.dirname(currentRoute.slug);
|
|
259
|
+
const resolved = path.posix.normalize(path.posix.join(base, rawPath));
|
|
260
|
+
const normalizedSlug = '/' + resolved.replace(/^\/+/, '');
|
|
261
|
+
const route = dataContext.getRouteBySlug(normalizedSlug, { followRedirect: true });
|
|
262
|
+
if (route) {
|
|
263
|
+
return maybeAddPathPrefix(route.slug + queryPart + hashPart);
|
|
264
|
+
}
|
|
265
|
+
return maybeAddPathPrefix(normalizedSlug + queryPart + hashPart);
|
|
266
|
+
}
|
|
267
|
+
const baseDir = path.posix.dirname(fromPage);
|
|
268
|
+
const joined = path.posix.normalize(path.posix.join(baseDir, rawPath));
|
|
269
|
+
const slug = '/' + joined.replace(/^\/+/, '');
|
|
270
|
+
return maybeAddPathPrefix(slug + queryPart + hashPart);
|
|
271
|
+
}
|
|
272
|
+
return href;
|
|
273
|
+
}
|
|
274
|
+
function maybeAddPathPrefix(url) {
|
|
275
|
+
const prefix = getPathPrefix();
|
|
276
|
+
if (!prefix || url.startsWith(prefix))
|
|
277
|
+
return url;
|
|
278
|
+
return withPathPrefix(url);
|
|
279
|
+
}
|
|
280
|
+
function resolveHtmlLinks(html, fromPage, dataContext) {
|
|
281
|
+
return html.replace(/(<a\s[^>]*?href=")([^"]*?)("[^>]*?>)/gi, (_match, before, href, after) => {
|
|
282
|
+
return before + resolveAsciidocLink(href, fromPage, dataContext) + after;
|
|
283
|
+
});
|
|
284
|
+
}
|
|
285
|
+
function resolveContentNodeLinks(nodes, fromPage, dataContext) {
|
|
286
|
+
return nodes.map((node) => resolveNodeLinks(node, fromPage, dataContext));
|
|
287
|
+
}
|
|
288
|
+
function resolveNodeLinks(node, fromPage, ctx) {
|
|
289
|
+
switch (node.type) {
|
|
290
|
+
case 'paragraph':
|
|
291
|
+
return Object.assign(Object.assign({}, node), { contentHtml: resolveHtmlLinks(node.contentHtml, fromPage, ctx) });
|
|
292
|
+
case 'heading':
|
|
293
|
+
return Object.assign(Object.assign({}, node), { contentHtml: resolveHtmlLinks(node.contentHtml, fromPage, ctx) });
|
|
294
|
+
case 'section':
|
|
295
|
+
return Object.assign(Object.assign({}, node), { titleHtml: resolveHtmlLinks(node.titleHtml, fromPage, ctx), children: resolveContentNodeLinks(node.children, fromPage, ctx) });
|
|
296
|
+
case 'admonition':
|
|
297
|
+
case 'quote':
|
|
298
|
+
case 'sidebar':
|
|
299
|
+
case 'example':
|
|
300
|
+
case 'collapsible':
|
|
301
|
+
return Object.assign(Object.assign({}, node), { children: resolveContentNodeLinks(node.children, fromPage, ctx) });
|
|
302
|
+
case 'list':
|
|
303
|
+
return Object.assign(Object.assign({}, node), { items: node.items.map((item) => (Object.assign(Object.assign({}, item), { contentHtml: resolveHtmlLinks(item.contentHtml, fromPage, ctx), children: resolveContentNodeLinks(item.children, fromPage, ctx) }))) });
|
|
304
|
+
case 'descriptionList':
|
|
305
|
+
return Object.assign(Object.assign({}, node), { items: node.items.map((item) => (Object.assign(Object.assign({}, item), { termsHtml: item.termsHtml.map((h) => resolveHtmlLinks(h, fromPage, ctx)), descriptionHtml: resolveHtmlLinks(item.descriptionHtml, fromPage, ctx), children: resolveContentNodeLinks(item.children, fromPage, ctx) }))) });
|
|
306
|
+
case 'table':
|
|
307
|
+
return Object.assign(Object.assign({}, node), { head: node.head.map((row) => row.map((cell) => (Object.assign(Object.assign({}, cell), { contentHtml: resolveHtmlLinks(cell.contentHtml, fromPage, ctx) })))), body: node.body.map((row) => row.map((cell) => (Object.assign(Object.assign({}, cell), { contentHtml: resolveHtmlLinks(cell.contentHtml, fromPage, ctx) })))), foot: node.foot.map((row) => row.map((cell) => (Object.assign(Object.assign({}, cell), { contentHtml: resolveHtmlLinks(cell.contentHtml, fromPage, ctx) })))) });
|
|
308
|
+
case 'htmlPassthrough':
|
|
309
|
+
return Object.assign(Object.assign({}, node), { html: resolveHtmlLinks(node.html, fromPage, ctx) });
|
|
310
|
+
default:
|
|
311
|
+
return node;
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
//# sourceMappingURL=plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import type { SearchFacet } from '@redocly/theme';
|
|
2
|
+
export declare function setDocumentSearchFacets(documentSearchFacets: Record<string, string | Set<string>>, getSearchFacets: () => Map<string, SearchFacet>, setSearchFacets: (searchFacets: Map<string, SearchFacet>) => void): void;
|
|
3
|
+
export declare function extractDocumentSearchFacets(metadata?: Record<string, unknown>, getSearchFacets?: () => Map<string, SearchFacet>): Record<string, string>;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
const SEARCH_GROUP_FIELD = 'redocly_category';
|
|
2
|
+
const SEARCH_GROUP_NAME_DOCS = 'Documentation';
|
|
3
|
+
export function setDocumentSearchFacets(documentSearchFacets, getSearchFacets, setSearchFacets) {
|
|
4
|
+
var _a;
|
|
5
|
+
const searchFacets = getSearchFacets();
|
|
6
|
+
for (const [key, value] of Object.entries(documentSearchFacets)) {
|
|
7
|
+
const facet = searchFacets.get(key);
|
|
8
|
+
if (facet) {
|
|
9
|
+
const facetValues = new Set((_a = facet.values) !== null && _a !== void 0 ? _a : []);
|
|
10
|
+
if (value instanceof Set) {
|
|
11
|
+
[...value].forEach((v) => (facet.values = Array.from(facetValues.add(v))));
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
facet.values = Array.from(facetValues.add(value));
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
setSearchFacets(searchFacets);
|
|
19
|
+
}
|
|
20
|
+
export function extractDocumentSearchFacets(metadata, getSearchFacets) {
|
|
21
|
+
const searchFacets = {
|
|
22
|
+
[SEARCH_GROUP_FIELD]: SEARCH_GROUP_NAME_DOCS,
|
|
23
|
+
};
|
|
24
|
+
if (!metadata || !getSearchFacets)
|
|
25
|
+
return searchFacets;
|
|
26
|
+
const targetSearchFacets = getSearchFacets();
|
|
27
|
+
for (const [key, value] of Object.entries(metadata)) {
|
|
28
|
+
if (!targetSearchFacets.has(key))
|
|
29
|
+
continue;
|
|
30
|
+
searchFacets[key] = String(value);
|
|
31
|
+
}
|
|
32
|
+
return searchFacets;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=search-facets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-facets.js","sourceRoot":"","sources":["../src/search-facets.ts"],"names":[],"mappings":"AAEA,MAAM,kBAAkB,GAAG,kBAAkB,CAAC;AAC9C,MAAM,sBAAsB,GAAG,eAAe,CAAC;AAE/C,MAAM,UAAU,uBAAuB,CACrC,oBAA0D,EAC1D,eAA+C,EAC/C,eAAiE;;IAEjE,MAAM,YAAY,GAAG,eAAe,EAAE,CAAC;IAEvC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAChE,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAC,KAAK,CAAC,MAAmB,mCAAI,EAAE,CAAC,CAAC;YAC9D,IAAI,KAAK,YAAY,GAAG,EAAE,CAAC;gBACzB,CAAC,GAAG,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7E,CAAC;iBAAM,CAAC;gBACN,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YACpD,CAAC;QACH,CAAC;IACH,CAAC;IAED,eAAe,CAAC,YAAY,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,QAAkC,EAClC,eAAgD;IAEhD,MAAM,YAAY,GAA2B;QAC3C,CAAC,kBAAkB,CAAC,EAAE,sBAAsB;KAC7C,CAAC;IAEF,IAAI,CAAC,QAAQ,IAAI,CAAC,eAAe;QAAE,OAAO,YAAY,CAAC;IAEvD,MAAM,kBAAkB,GAAG,eAAe,EAAE,CAAC;IAE7C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC3C,YAAY,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { PageRouteDetails, SearchDocument } from '@redocly/realm/dist/server/types';
|
|
2
|
+
import type { SearchFacet } from '@redocly/theme';
|
|
3
|
+
import type { AsciidocSection, AsciidocFrontmatter } from './types.js';
|
|
4
|
+
export declare function searchResolver(frontmatter: AsciidocFrontmatter, relativePath: string, sections: AsciidocSection[], getSearchFacets: () => Map<string, SearchFacet>, setSearchFacets: (searchFacets: Map<string, SearchFacet>) => void): (route: PageRouteDetails, staticData: Record<string, unknown>) => Promise<SearchDocument[]>;
|