dero-mcp-server 0.1.1 → 0.2.2
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/README.md +79 -6
- package/data/docs-index.json +5702 -0
- package/dist/citations.d.ts +70 -0
- package/dist/citations.d.ts.map +1 -0
- package/dist/citations.js +162 -0
- package/dist/citations.js.map +1 -0
- package/dist/composites/_shared.d.ts +119 -0
- package/dist/composites/_shared.d.ts.map +1 -0
- package/dist/composites/_shared.js +152 -0
- package/dist/composites/_shared.js.map +1 -0
- package/dist/composites/diagnose-chain-health.d.ts +64 -0
- package/dist/composites/diagnose-chain-health.d.ts.map +1 -0
- package/dist/composites/diagnose-chain-health.js +144 -0
- package/dist/composites/diagnose-chain-health.js.map +1 -0
- package/dist/composites/estimate-deploy-cost.d.ts +83 -0
- package/dist/composites/estimate-deploy-cost.d.ts.map +1 -0
- package/dist/composites/estimate-deploy-cost.js +116 -0
- package/dist/composites/estimate-deploy-cost.js.map +1 -0
- package/dist/composites/explain-smart-contract.d.ts +64 -0
- package/dist/composites/explain-smart-contract.d.ts.map +1 -0
- package/dist/composites/explain-smart-contract.js +149 -0
- package/dist/composites/explain-smart-contract.js.map +1 -0
- package/dist/composites/recommend-docs-path.d.ts +97 -0
- package/dist/composites/recommend-docs-path.d.ts.map +1 -0
- package/dist/composites/recommend-docs-path.js +149 -0
- package/dist/composites/recommend-docs-path.js.map +1 -0
- package/dist/composites/trace-transaction-with-context.d.ts +107 -0
- package/dist/composites/trace-transaction-with-context.d.ts.map +1 -0
- package/dist/composites/trace-transaction-with-context.js +217 -0
- package/dist/composites/trace-transaction-with-context.js.map +1 -0
- package/dist/docs-parse.d.ts +30 -0
- package/dist/docs-parse.d.ts.map +1 -0
- package/dist/docs-parse.js +147 -0
- package/dist/docs-parse.js.map +1 -0
- package/dist/docs.d.ts +101 -0
- package/dist/docs.d.ts.map +1 -0
- package/dist/docs.js +172 -0
- package/dist/docs.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +417 -100
- package/dist/server.js.map +1 -1
- package/dist/tool-descriptions.d.ts +50 -0
- package/dist/tool-descriptions.d.ts.map +1 -0
- package/dist/tool-descriptions.js +246 -0
- package/dist/tool-descriptions.js.map +1 -0
- package/package.json +15 -3
- package/.github/workflows/ci.yml +0 -62
- package/docs/example-agent-flows.md +0 -236
- package/docs/mcp-agent-ready-evidence.md +0 -108
- package/glama.json +0 -6
- package/scripts/doctor.sh +0 -85
- package/scripts/flow-test.ts +0 -257
- package/scripts/mcp-smoke-probes.ts +0 -168
- package/server.json +0 -23
- package/src/index.ts +0 -30
- package/src/rpc.ts +0 -60
- package/src/server.ts +0 -636
- package/tsconfig.json +0 -16
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
import { promises as fs } from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
export const DERO_DOC_PRODUCTS = ['derod', 'tela', 'hologram', 'deropay'];
|
|
4
|
+
export const DOC_SITE_DIRS = {
|
|
5
|
+
derod: 'derod-main',
|
|
6
|
+
tela: 'tela-main',
|
|
7
|
+
hologram: 'hologram-main',
|
|
8
|
+
deropay: 'deropay-main',
|
|
9
|
+
};
|
|
10
|
+
export const DOC_BASE_URLS = {
|
|
11
|
+
derod: 'https://derod.org',
|
|
12
|
+
tela: 'https://tela.derod.org',
|
|
13
|
+
hologram: 'https://hologram.derod.org',
|
|
14
|
+
deropay: 'https://pay.derod.org',
|
|
15
|
+
};
|
|
16
|
+
export function normalizeSlug(input) {
|
|
17
|
+
return input.trim().replace(/^\/+/, '').replace(/\/+$/, '');
|
|
18
|
+
}
|
|
19
|
+
function safeTitleFromSlug(slug) {
|
|
20
|
+
if (!slug)
|
|
21
|
+
return 'Home';
|
|
22
|
+
return slug
|
|
23
|
+
.split('/')
|
|
24
|
+
.at(-1)
|
|
25
|
+
.split('-')
|
|
26
|
+
.map((part) => part.charAt(0).toUpperCase() + part.slice(1))
|
|
27
|
+
.join(' ');
|
|
28
|
+
}
|
|
29
|
+
export async function pathExists(targetPath) {
|
|
30
|
+
try {
|
|
31
|
+
await fs.access(targetPath);
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export function parseFrontmatter(raw) {
|
|
39
|
+
const match = raw.match(/^---\n([\s\S]*?)\n---\n?/);
|
|
40
|
+
if (!match)
|
|
41
|
+
return {};
|
|
42
|
+
const frontmatter = {};
|
|
43
|
+
for (const line of match[1].split('\n')) {
|
|
44
|
+
const keyValue = line.match(/^([A-Za-z0-9_]+):\s*(.+)$/);
|
|
45
|
+
if (!keyValue)
|
|
46
|
+
continue;
|
|
47
|
+
frontmatter[keyValue[1]] = keyValue[2].trim().replace(/^['"]|['"]$/g, '');
|
|
48
|
+
}
|
|
49
|
+
return frontmatter;
|
|
50
|
+
}
|
|
51
|
+
export function stripFrontmatter(raw) {
|
|
52
|
+
return raw.replace(/^---\n[\s\S]*?\n---\n?/, '');
|
|
53
|
+
}
|
|
54
|
+
export function extractHeadings(markdown) {
|
|
55
|
+
const headings = [];
|
|
56
|
+
const headingRegex = /^#{1,3}\s+(.+)$/gm;
|
|
57
|
+
let match = null;
|
|
58
|
+
while ((match = headingRegex.exec(markdown)) !== null) {
|
|
59
|
+
headings.push(match[1].trim());
|
|
60
|
+
}
|
|
61
|
+
return headings;
|
|
62
|
+
}
|
|
63
|
+
export function mdxToPlainText(raw) {
|
|
64
|
+
return raw
|
|
65
|
+
.replace(/```[\s\S]*?```/g, ' ')
|
|
66
|
+
.replace(/^import\s+.*$/gm, ' ')
|
|
67
|
+
.replace(/<[^>\n]+>/g, ' ')
|
|
68
|
+
.replace(/!\[([^\]]*)\]\([^)]+\)/g, '$1')
|
|
69
|
+
.replace(/\[([^\]]+)\]\([^)]+\)/g, '$1')
|
|
70
|
+
.replace(/^#{1,6}\s+/gm, '')
|
|
71
|
+
.replace(/`([^`]+)`/g, '$1')
|
|
72
|
+
.replace(/\s+/g, ' ')
|
|
73
|
+
.trim();
|
|
74
|
+
}
|
|
75
|
+
async function walkMdxFiles(dir) {
|
|
76
|
+
const entries = await fs.readdir(dir, { withFileTypes: true });
|
|
77
|
+
const files = [];
|
|
78
|
+
for (const entry of entries) {
|
|
79
|
+
const fullPath = path.join(dir, entry.name);
|
|
80
|
+
if (entry.isDirectory()) {
|
|
81
|
+
files.push(...(await walkMdxFiles(fullPath)));
|
|
82
|
+
continue;
|
|
83
|
+
}
|
|
84
|
+
if (entry.isFile() && entry.name.endsWith('.mdx')) {
|
|
85
|
+
files.push(fullPath);
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return files;
|
|
89
|
+
}
|
|
90
|
+
function buildCanonicalUrl(product, slug) {
|
|
91
|
+
if (!slug)
|
|
92
|
+
return `${DOC_BASE_URLS[product]}/`;
|
|
93
|
+
return `${DOC_BASE_URLS[product]}/${slug}`;
|
|
94
|
+
}
|
|
95
|
+
export async function indexDocsFromRoot(root) {
|
|
96
|
+
const pages = [];
|
|
97
|
+
for (const product of DERO_DOC_PRODUCTS) {
|
|
98
|
+
const siteDir = DOC_SITE_DIRS[product];
|
|
99
|
+
const pagesDir = path.join(root, siteDir, 'pages');
|
|
100
|
+
if (!(await pathExists(pagesDir)))
|
|
101
|
+
continue;
|
|
102
|
+
const files = await walkMdxFiles(pagesDir);
|
|
103
|
+
for (const filePath of files) {
|
|
104
|
+
const raw = await fs.readFile(filePath, 'utf8');
|
|
105
|
+
const frontmatter = parseFrontmatter(raw);
|
|
106
|
+
const content = stripFrontmatter(raw);
|
|
107
|
+
const rel = path.relative(pagesDir, filePath).replace(/\\/g, '/');
|
|
108
|
+
const slug = normalizeSlug(rel.replace(/\.mdx$/, '').replace(/\/index$/, '').replace(/^index$/, ''));
|
|
109
|
+
const headings = extractHeadings(content);
|
|
110
|
+
pages.push({
|
|
111
|
+
product,
|
|
112
|
+
slug,
|
|
113
|
+
title: frontmatter.title || safeTitleFromSlug(slug),
|
|
114
|
+
description: frontmatter.description || null,
|
|
115
|
+
canonicalUrl: frontmatter.canonicalUrl || buildCanonicalUrl(product, slug),
|
|
116
|
+
sourcePath: path.relative(root, filePath).replace(/\\/g, '/'),
|
|
117
|
+
headings,
|
|
118
|
+
plainText: mdxToPlainText(content),
|
|
119
|
+
lastUpdated: frontmatter.lastUpdated || frontmatter.date || null,
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
pages.sort((a, b) => {
|
|
124
|
+
if (a.product !== b.product)
|
|
125
|
+
return a.product.localeCompare(b.product);
|
|
126
|
+
return a.slug.localeCompare(b.slug);
|
|
127
|
+
});
|
|
128
|
+
return pages;
|
|
129
|
+
}
|
|
130
|
+
export async function resolveDeroDocsRoot(customRoot) {
|
|
131
|
+
const explicit = customRoot ?? process.env.DERO_DOCS_ROOT;
|
|
132
|
+
if (explicit) {
|
|
133
|
+
const derodPages = path.join(explicit, DOC_SITE_DIRS.derod, 'pages');
|
|
134
|
+
return (await pathExists(derodPages)) ? explicit : null;
|
|
135
|
+
}
|
|
136
|
+
const autoCandidates = [
|
|
137
|
+
path.resolve(process.cwd(), '../dero-docs'),
|
|
138
|
+
path.resolve(process.cwd(), '../../dero-docs'),
|
|
139
|
+
];
|
|
140
|
+
for (const candidate of autoCandidates) {
|
|
141
|
+
const derodPages = path.join(candidate, DOC_SITE_DIRS.derod, 'pages');
|
|
142
|
+
if (await pathExists(derodPages))
|
|
143
|
+
return candidate;
|
|
144
|
+
}
|
|
145
|
+
return null;
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=docs-parse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs-parse.js","sourceRoot":"","sources":["../src/docs-parse.ts"],"names":[],"mappings":"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"}
|
package/dist/docs.d.ts
ADDED
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { type DeroDocProduct } from './docs-parse.js';
|
|
2
|
+
export { DERO_DOC_PRODUCTS, type DeroDocProduct, resolveDeroDocsRoot } from './docs-parse.js';
|
|
3
|
+
type SearchArgs = {
|
|
4
|
+
query: string;
|
|
5
|
+
product?: DeroDocProduct;
|
|
6
|
+
section?: string;
|
|
7
|
+
limit?: number;
|
|
8
|
+
};
|
|
9
|
+
export declare function listDeroDocs(product?: DeroDocProduct): Promise<{
|
|
10
|
+
total: number;
|
|
11
|
+
products: readonly ["derod", "tela", "hologram", "deropay"];
|
|
12
|
+
pages: {
|
|
13
|
+
product: "derod" | "tela" | "hologram" | "deropay";
|
|
14
|
+
slug: string;
|
|
15
|
+
title: string;
|
|
16
|
+
canonical_url: string;
|
|
17
|
+
last_updated: string | null;
|
|
18
|
+
}[];
|
|
19
|
+
docs_source: "bundled";
|
|
20
|
+
bundled_index: string;
|
|
21
|
+
docs_root?: undefined;
|
|
22
|
+
} | {
|
|
23
|
+
total: number;
|
|
24
|
+
products: readonly ["derod", "tela", "hologram", "deropay"];
|
|
25
|
+
pages: {
|
|
26
|
+
product: "derod" | "tela" | "hologram" | "deropay";
|
|
27
|
+
slug: string;
|
|
28
|
+
title: string;
|
|
29
|
+
canonical_url: string;
|
|
30
|
+
last_updated: string | null;
|
|
31
|
+
}[];
|
|
32
|
+
docs_source: "filesystem";
|
|
33
|
+
docs_root: string;
|
|
34
|
+
bundled_index?: undefined;
|
|
35
|
+
}>;
|
|
36
|
+
export declare function searchDeroDocs(args: SearchArgs): Promise<{
|
|
37
|
+
query: string;
|
|
38
|
+
total_matches: number;
|
|
39
|
+
returned: number;
|
|
40
|
+
results: {
|
|
41
|
+
product: "derod" | "tela" | "hologram" | "deropay";
|
|
42
|
+
slug: string;
|
|
43
|
+
title: string;
|
|
44
|
+
description: string | null;
|
|
45
|
+
canonical_url: string;
|
|
46
|
+
headings: string[];
|
|
47
|
+
excerpt: string;
|
|
48
|
+
score: number;
|
|
49
|
+
}[];
|
|
50
|
+
docs_source: "bundled";
|
|
51
|
+
bundled_index: string;
|
|
52
|
+
docs_root?: undefined;
|
|
53
|
+
} | {
|
|
54
|
+
query: string;
|
|
55
|
+
total_matches: number;
|
|
56
|
+
returned: number;
|
|
57
|
+
results: {
|
|
58
|
+
product: "derod" | "tela" | "hologram" | "deropay";
|
|
59
|
+
slug: string;
|
|
60
|
+
title: string;
|
|
61
|
+
description: string | null;
|
|
62
|
+
canonical_url: string;
|
|
63
|
+
headings: string[];
|
|
64
|
+
excerpt: string;
|
|
65
|
+
score: number;
|
|
66
|
+
}[];
|
|
67
|
+
docs_source: "filesystem";
|
|
68
|
+
docs_root: string;
|
|
69
|
+
bundled_index?: undefined;
|
|
70
|
+
}>;
|
|
71
|
+
export declare function getDeroDocPage(params: {
|
|
72
|
+
product?: DeroDocProduct;
|
|
73
|
+
slug: string;
|
|
74
|
+
}): Promise<{
|
|
75
|
+
product: "derod" | "tela" | "hologram" | "deropay";
|
|
76
|
+
slug: string;
|
|
77
|
+
title: string;
|
|
78
|
+
description: string | null;
|
|
79
|
+
canonical_url: string;
|
|
80
|
+
last_updated: string | null;
|
|
81
|
+
headings: string[];
|
|
82
|
+
content: string;
|
|
83
|
+
source_path: string;
|
|
84
|
+
docs_source: "bundled";
|
|
85
|
+
bundled_index: string;
|
|
86
|
+
docs_root?: undefined;
|
|
87
|
+
} | {
|
|
88
|
+
product: "derod" | "tela" | "hologram" | "deropay";
|
|
89
|
+
slug: string;
|
|
90
|
+
title: string;
|
|
91
|
+
description: string | null;
|
|
92
|
+
canonical_url: string;
|
|
93
|
+
last_updated: string | null;
|
|
94
|
+
headings: string[];
|
|
95
|
+
content: string;
|
|
96
|
+
source_path: string;
|
|
97
|
+
docs_source: "filesystem";
|
|
98
|
+
docs_root: string;
|
|
99
|
+
bundled_index?: undefined;
|
|
100
|
+
}>;
|
|
101
|
+
//# sourceMappingURL=docs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../src/docs.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,cAAc,EAOpB,MAAM,iBAAiB,CAAA;AAExB,OAAO,EAAE,iBAAiB,EAAE,KAAK,cAAc,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAkF7F,KAAK,UAAU,GAAG;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAmBD,wBAAsB,YAAY,CAAC,OAAO,CAAC,EAAE,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;GAgB1D;AAED,wBAAsB,cAAc,CAAC,IAAI,EAAE,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CpD;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE;IAAE,OAAO,CAAC,EAAE,cAAc,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BtF"}
|
package/dist/docs.js
ADDED
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
import { promises as fs } from 'node:fs';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
4
|
+
import { DERO_DOC_PRODUCTS, indexDocsFromRoot, normalizeSlug, pathExists, } from './docs-parse.js';
|
|
5
|
+
export { DERO_DOC_PRODUCTS, resolveDeroDocsRoot } from './docs-parse.js';
|
|
6
|
+
const CACHE_TTL_MS = 15000;
|
|
7
|
+
let pageCache = null;
|
|
8
|
+
function bundledIndexPath() {
|
|
9
|
+
const here = path.dirname(fileURLToPath(import.meta.url));
|
|
10
|
+
// dist/docs.js -> ../data/docs-index.json
|
|
11
|
+
return path.resolve(here, '../data/docs-index.json');
|
|
12
|
+
}
|
|
13
|
+
async function loadBundledPages(indexPath) {
|
|
14
|
+
if (!(await pathExists(indexPath)))
|
|
15
|
+
return null;
|
|
16
|
+
const raw = await fs.readFile(indexPath, 'utf8');
|
|
17
|
+
const parsed = JSON.parse(raw);
|
|
18
|
+
if (!parsed?.pages?.length)
|
|
19
|
+
return null;
|
|
20
|
+
return parsed.pages;
|
|
21
|
+
}
|
|
22
|
+
async function resolveDocsSource() {
|
|
23
|
+
const overrideRoot = process.env.DERO_DOCS_ROOT?.trim();
|
|
24
|
+
if (overrideRoot) {
|
|
25
|
+
const derodPages = path.join(overrideRoot, 'derod-main', 'pages');
|
|
26
|
+
if (await pathExists(derodPages)) {
|
|
27
|
+
return { kind: 'filesystem', root: overrideRoot };
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
const bundledPath = bundledIndexPath();
|
|
31
|
+
if (await pathExists(bundledPath)) {
|
|
32
|
+
return { kind: 'bundled', indexPath: bundledPath };
|
|
33
|
+
}
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
async function loadPages() {
|
|
37
|
+
const source = await resolveDocsSource();
|
|
38
|
+
if (!source) {
|
|
39
|
+
throw new Error('DERO docs unavailable. Bundled docs index missing and DERO_DOCS_ROOT is unset or invalid.');
|
|
40
|
+
}
|
|
41
|
+
const cacheKey = source.kind === 'bundled' ? `bundled:${source.indexPath}` : `fs:${source.root}`;
|
|
42
|
+
if (pageCache && pageCache.key === cacheKey && Date.now() - pageCache.loadedAt < CACHE_TTL_MS) {
|
|
43
|
+
return pageCache.data;
|
|
44
|
+
}
|
|
45
|
+
let pages;
|
|
46
|
+
if (source.kind === 'bundled') {
|
|
47
|
+
const bundled = await loadBundledPages(source.indexPath);
|
|
48
|
+
if (!bundled) {
|
|
49
|
+
throw new Error('DERO bundled docs index is missing or empty.');
|
|
50
|
+
}
|
|
51
|
+
pages = bundled;
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
pages = await indexDocsFromRoot(source.root);
|
|
55
|
+
}
|
|
56
|
+
const data = { source, pages };
|
|
57
|
+
pageCache = { key: cacheKey, loadedAt: Date.now(), data };
|
|
58
|
+
return data;
|
|
59
|
+
}
|
|
60
|
+
function sourceMeta(source) {
|
|
61
|
+
if (source.kind === 'bundled') {
|
|
62
|
+
return { docs_source: 'bundled', bundled_index: path.basename(source.indexPath) };
|
|
63
|
+
}
|
|
64
|
+
return { docs_source: 'filesystem', docs_root: source.root };
|
|
65
|
+
}
|
|
66
|
+
function scorePage(page, terms) {
|
|
67
|
+
const title = page.title.toLowerCase();
|
|
68
|
+
const slug = page.slug.toLowerCase();
|
|
69
|
+
const headingBlob = page.headings.join(' ').toLowerCase();
|
|
70
|
+
const body = page.plainText.toLowerCase();
|
|
71
|
+
let score = 0;
|
|
72
|
+
for (const term of terms) {
|
|
73
|
+
if (title.includes(term))
|
|
74
|
+
score += 6;
|
|
75
|
+
if (slug.includes(term))
|
|
76
|
+
score += 4;
|
|
77
|
+
if (headingBlob.includes(term))
|
|
78
|
+
score += 2;
|
|
79
|
+
if (body.includes(term))
|
|
80
|
+
score += 1;
|
|
81
|
+
}
|
|
82
|
+
return score;
|
|
83
|
+
}
|
|
84
|
+
export async function listDeroDocs(product) {
|
|
85
|
+
const { source, pages } = await loadPages();
|
|
86
|
+
const filtered = product ? pages.filter((page) => page.product === product) : pages;
|
|
87
|
+
return {
|
|
88
|
+
...sourceMeta(source),
|
|
89
|
+
total: filtered.length,
|
|
90
|
+
products: DERO_DOC_PRODUCTS,
|
|
91
|
+
pages: filtered.map((page) => ({
|
|
92
|
+
product: page.product,
|
|
93
|
+
slug: page.slug,
|
|
94
|
+
title: page.title,
|
|
95
|
+
canonical_url: page.canonicalUrl,
|
|
96
|
+
last_updated: page.lastUpdated,
|
|
97
|
+
})),
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
export async function searchDeroDocs(args) {
|
|
101
|
+
const query = args.query.trim();
|
|
102
|
+
if (!query)
|
|
103
|
+
throw new Error('DERO docs search requires a non-empty query');
|
|
104
|
+
const { source, pages } = await loadPages();
|
|
105
|
+
let filtered = pages;
|
|
106
|
+
if (args.product) {
|
|
107
|
+
filtered = filtered.filter((page) => page.product === args.product);
|
|
108
|
+
}
|
|
109
|
+
if (args.section) {
|
|
110
|
+
const normalizedSection = normalizeSlug(args.section).toLowerCase();
|
|
111
|
+
filtered = filtered.filter((page) => {
|
|
112
|
+
const slug = page.slug.toLowerCase();
|
|
113
|
+
return slug === normalizedSection || slug.startsWith(`${normalizedSection}/`);
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
const terms = query
|
|
117
|
+
.toLowerCase()
|
|
118
|
+
.split(/\s+/)
|
|
119
|
+
.map((term) => term.trim())
|
|
120
|
+
.filter(Boolean);
|
|
121
|
+
const scored = filtered
|
|
122
|
+
.map((page) => ({ page, score: scorePage(page, terms) }))
|
|
123
|
+
.filter((entry) => entry.score > 0)
|
|
124
|
+
.sort((a, b) => b.score - a.score);
|
|
125
|
+
const limit = Math.max(1, Math.min(args.limit ?? 8, 25));
|
|
126
|
+
const results = scored.slice(0, limit).map(({ page, score }) => ({
|
|
127
|
+
product: page.product,
|
|
128
|
+
slug: page.slug,
|
|
129
|
+
title: page.title,
|
|
130
|
+
description: page.description,
|
|
131
|
+
canonical_url: page.canonicalUrl,
|
|
132
|
+
headings: page.headings.slice(0, 5),
|
|
133
|
+
excerpt: page.plainText.slice(0, 420),
|
|
134
|
+
score,
|
|
135
|
+
}));
|
|
136
|
+
return {
|
|
137
|
+
...sourceMeta(source),
|
|
138
|
+
query,
|
|
139
|
+
total_matches: scored.length,
|
|
140
|
+
returned: results.length,
|
|
141
|
+
results,
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
export async function getDeroDocPage(params) {
|
|
145
|
+
const slug = normalizeSlug(params.slug);
|
|
146
|
+
if (!slug)
|
|
147
|
+
throw new Error('DERO docs get page requires a non-empty slug');
|
|
148
|
+
const { source, pages } = await loadPages();
|
|
149
|
+
const target = pages.find((page) => {
|
|
150
|
+
if (params.product && page.product !== params.product)
|
|
151
|
+
return false;
|
|
152
|
+
return normalizeSlug(page.slug).toLowerCase() === slug.toLowerCase();
|
|
153
|
+
});
|
|
154
|
+
if (!target) {
|
|
155
|
+
throw new Error(params.product
|
|
156
|
+
? `Doc page not found for product=${params.product} slug=${slug}`
|
|
157
|
+
: `Doc page not found for slug=${slug}`);
|
|
158
|
+
}
|
|
159
|
+
return {
|
|
160
|
+
...sourceMeta(source),
|
|
161
|
+
product: target.product,
|
|
162
|
+
slug: target.slug,
|
|
163
|
+
title: target.title,
|
|
164
|
+
description: target.description,
|
|
165
|
+
canonical_url: target.canonicalUrl,
|
|
166
|
+
last_updated: target.lastUpdated,
|
|
167
|
+
headings: target.headings,
|
|
168
|
+
content: target.plainText.slice(0, 20000),
|
|
169
|
+
source_path: target.sourcePath,
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
//# sourceMappingURL=docs.js.map
|
package/dist/docs.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"docs.js","sourceRoot":"","sources":["../src/docs.ts"],"names":[],"mappings":"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"}
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AA8QnE,wBAAgB,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,SAAS,CA0wBpE"}
|