@skillit/core 1.5.0 → 2.0.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/dist/audit-formatter.d.ts +2 -0
- package/dist/audit-formatter.d.ts.map +1 -1
- package/dist/audit-formatter.js +2 -0
- package/dist/audit-formatter.js.map +1 -1
- package/dist/audit-score.js +82 -4
- package/dist/audit-score.js.map +1 -1
- package/dist/audit-types.d.ts +1 -29
- package/dist/audit-types.d.ts.map +1 -1
- package/dist/audit.d.ts +6 -2
- package/dist/audit.d.ts.map +1 -1
- package/dist/audit.js +39 -32
- package/dist/audit.js.map +1 -1
- package/dist/config-extract.d.ts +48 -0
- package/dist/config-extract.d.ts.map +1 -0
- package/dist/config-extract.js +230 -0
- package/dist/config-extract.js.map +1 -0
- package/dist/docs-scanner.d.ts +3 -0
- package/dist/docs-scanner.d.ts.map +1 -1
- package/dist/docs-scanner.js +3 -0
- package/dist/docs-scanner.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/refine/ast-edit.d.ts +41 -0
- package/dist/refine/ast-edit.d.ts.map +1 -1
- package/dist/refine/ast-edit.js +187 -19
- package/dist/refine/ast-edit.js.map +1 -1
- package/dist/refine/config-source.d.ts +81 -0
- package/dist/refine/config-source.d.ts.map +1 -0
- package/dist/refine/config-source.js +283 -0
- package/dist/refine/config-source.js.map +1 -0
- package/dist/refine/index.d.ts +5 -1
- package/dist/refine/index.d.ts.map +1 -1
- package/dist/refine/index.js +3 -1
- package/dist/refine/index.js.map +1 -1
- package/dist/refine/jsdoc-edit.d.ts +8 -1
- package/dist/refine/jsdoc-edit.d.ts.map +1 -1
- package/dist/refine/jsdoc-edit.js +8 -1
- package/dist/refine/jsdoc-edit.js.map +1 -1
- package/dist/refine/loop.d.ts.map +1 -1
- package/dist/refine/loop.js +26 -5
- package/dist/refine/loop.js.map +1 -1
- package/dist/refine/package-metadata.d.ts +28 -0
- package/dist/refine/package-metadata.d.ts.map +1 -0
- package/dist/refine/package-metadata.js +64 -0
- package/dist/refine/package-metadata.js.map +1 -0
- package/dist/refine/select-targets.d.ts.map +1 -1
- package/dist/refine/select-targets.js +31 -6
- package/dist/refine/select-targets.js.map +1 -1
- package/dist/refine/types.d.ts +29 -2
- package/dist/refine/types.d.ts.map +1 -1
- package/dist/renderer.js +13 -8
- package/dist/renderer.js.map +1 -1
- package/dist/tokens.d.ts +2 -0
- package/dist/tokens.d.ts.map +1 -1
- package/dist/tokens.js +2 -0
- package/dist/tokens.js.map +1 -1
- package/dist/types.d.ts +21 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { SgNode } from '@ast-grep/napi';
|
|
2
|
+
import type { ExtractedConfigSurface } from './config-types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Extract a configuration surface from a TypeScript config type.
|
|
5
|
+
*
|
|
6
|
+
* Walks the properties of the interface or object-type alias named `typeName`
|
|
7
|
+
* (via ast-grep — core has no `typescript` dependency, mirroring `ast-edit.ts`)
|
|
8
|
+
* and produces an {@link ExtractedConfigSurface} with `sourceType: 'config'`.
|
|
9
|
+
* Each property becomes an {@link ExtractedConfigOption} keyed by its
|
|
10
|
+
* dot-notation `configKey`; nested object-literal types recurse (e.g.
|
|
11
|
+
* `components.prefix`). Per-property JSDoc supplies the description, the
|
|
12
|
+
* `@default` value, and the `@useWhen` / `@avoidWhen` / `@pitfalls` / `@remarks`
|
|
13
|
+
* routing tags.
|
|
14
|
+
*
|
|
15
|
+
* @param source - TypeScript source text containing the config type declaration.
|
|
16
|
+
* @param typeName - Name of the interface or object-type alias to extract.
|
|
17
|
+
* @returns The extracted config surface, or `undefined` when no matching type
|
|
18
|
+
* declaration is found in `source`.
|
|
19
|
+
*/
|
|
20
|
+
export declare function extractConfigSurface(source: string, typeName: string): ExtractedConfigSurface | undefined;
|
|
21
|
+
/**
|
|
22
|
+
* Locate the object-type body for the type named `typeName`. Handles an
|
|
23
|
+
* `interface X { … }` (returns its `interface_body`) and a
|
|
24
|
+
* `type X = { … }` alias (returns the `object_type` value). Returns `undefined`
|
|
25
|
+
* for non-object type aliases (unions, primitives, etc.) or a missing name.
|
|
26
|
+
*/
|
|
27
|
+
export declare function findTypeBody(root: SgNode, typeName: string): SgNode | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* Navigate a dot path (e.g. `outDir` or `components.prefix`) from a type body
|
|
30
|
+
* to the `property_signature` node it names, descending into inline
|
|
31
|
+
* object-literal types for each intermediate segment. Returns `undefined` if
|
|
32
|
+
* any segment is missing. Used by the config refine source to locate the
|
|
33
|
+
* declaration whose leading JSDoc carries a property's routing tags.
|
|
34
|
+
*/
|
|
35
|
+
export declare function findPropertyByPath(body: SgNode, path: string): SgNode | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* Escape the comment-close sequence `*` + `/` in text destined for a JSDoc
|
|
38
|
+
* block, so model-drafted content containing it — e.g. a `**` + `/*.ts` glob in
|
|
39
|
+
* an `include`/`exclude` pitfall — cannot terminate the block early and corrupt
|
|
40
|
+
* the file. A backslash is inserted between the star and the slash, which the
|
|
41
|
+
* comment scanner does not treat as a close (the star is followed by the
|
|
42
|
+
* backslash, not the slash). Idempotent: an already-escaped sequence has no bare
|
|
43
|
+
* star-slash left to match.
|
|
44
|
+
*/
|
|
45
|
+
export declare function escapeJsDocClose(text: string): string;
|
|
46
|
+
/** Inverse of {@link escapeJsDocClose}, applied when reading tag content back. */
|
|
47
|
+
export declare function unescapeJsDocClose(text: string): string;
|
|
48
|
+
//# sourceMappingURL=config-extract.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-extract.d.ts","sourceRoot":"","sources":["../src/config-extract.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,KAAK,EAAyB,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAEvF;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,sBAAsB,GAAG,SAAS,CAWpC;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAY/E;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAkBjF;AAiDD;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,kFAAkF;AAClF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD"}
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
// packages/core/src/config-extract.ts
|
|
2
|
+
import { parse, Lang } from '@ast-grep/napi';
|
|
3
|
+
/**
|
|
4
|
+
* Extract a configuration surface from a TypeScript config type.
|
|
5
|
+
*
|
|
6
|
+
* Walks the properties of the interface or object-type alias named `typeName`
|
|
7
|
+
* (via ast-grep — core has no `typescript` dependency, mirroring `ast-edit.ts`)
|
|
8
|
+
* and produces an {@link ExtractedConfigSurface} with `sourceType: 'config'`.
|
|
9
|
+
* Each property becomes an {@link ExtractedConfigOption} keyed by its
|
|
10
|
+
* dot-notation `configKey`; nested object-literal types recurse (e.g.
|
|
11
|
+
* `components.prefix`). Per-property JSDoc supplies the description, the
|
|
12
|
+
* `@default` value, and the `@useWhen` / `@avoidWhen` / `@pitfalls` / `@remarks`
|
|
13
|
+
* routing tags.
|
|
14
|
+
*
|
|
15
|
+
* @param source - TypeScript source text containing the config type declaration.
|
|
16
|
+
* @param typeName - Name of the interface or object-type alias to extract.
|
|
17
|
+
* @returns The extracted config surface, or `undefined` when no matching type
|
|
18
|
+
* declaration is found in `source`.
|
|
19
|
+
*/
|
|
20
|
+
export function extractConfigSurface(source, typeName) {
|
|
21
|
+
const root = parse(Lang.TypeScript, source).root();
|
|
22
|
+
const body = findTypeBody(root, typeName);
|
|
23
|
+
if (!body)
|
|
24
|
+
return undefined;
|
|
25
|
+
return {
|
|
26
|
+
name: typeName,
|
|
27
|
+
description: '',
|
|
28
|
+
sourceType: 'config',
|
|
29
|
+
options: walkProperties(body, '')
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Locate the object-type body for the type named `typeName`. Handles an
|
|
34
|
+
* `interface X { … }` (returns its `interface_body`) and a
|
|
35
|
+
* `type X = { … }` alias (returns the `object_type` value). Returns `undefined`
|
|
36
|
+
* for non-object type aliases (unions, primitives, etc.) or a missing name.
|
|
37
|
+
*/
|
|
38
|
+
export function findTypeBody(root, typeName) {
|
|
39
|
+
for (const node of descendants(root)) {
|
|
40
|
+
const kind = node.kind();
|
|
41
|
+
if (kind === 'interface_declaration' && node.field('name')?.text() === typeName) {
|
|
42
|
+
return node.field('body') ?? undefined;
|
|
43
|
+
}
|
|
44
|
+
if (kind === 'type_alias_declaration' && node.field('name')?.text() === typeName) {
|
|
45
|
+
const value = node.field('value');
|
|
46
|
+
return value?.kind() === 'object_type' ? value : undefined;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return undefined;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Navigate a dot path (e.g. `outDir` or `components.prefix`) from a type body
|
|
53
|
+
* to the `property_signature` node it names, descending into inline
|
|
54
|
+
* object-literal types for each intermediate segment. Returns `undefined` if
|
|
55
|
+
* any segment is missing. Used by the config refine source to locate the
|
|
56
|
+
* declaration whose leading JSDoc carries a property's routing tags.
|
|
57
|
+
*/
|
|
58
|
+
export function findPropertyByPath(body, path) {
|
|
59
|
+
const parts = path.split('.');
|
|
60
|
+
let currentBody = body;
|
|
61
|
+
for (let i = 0; i < parts.length; i++) {
|
|
62
|
+
if (!currentBody)
|
|
63
|
+
return undefined;
|
|
64
|
+
const prop = currentBody
|
|
65
|
+
.children()
|
|
66
|
+
.find((c) => c.kind() === 'property_signature' && c.field('name')?.text() === parts[i]);
|
|
67
|
+
if (!prop)
|
|
68
|
+
return undefined;
|
|
69
|
+
if (i === parts.length - 1)
|
|
70
|
+
return prop;
|
|
71
|
+
currentBody = prop
|
|
72
|
+
.field('type')
|
|
73
|
+
?.children()
|
|
74
|
+
.find((n) => n.kind() === 'object_type');
|
|
75
|
+
}
|
|
76
|
+
return undefined;
|
|
77
|
+
}
|
|
78
|
+
/** Walk every `property_signature` directly under `bodyNode`. */
|
|
79
|
+
function walkProperties(bodyNode, prefix) {
|
|
80
|
+
const options = [];
|
|
81
|
+
for (const child of bodyNode.children()) {
|
|
82
|
+
if (child.kind() !== 'property_signature')
|
|
83
|
+
continue;
|
|
84
|
+
const nameNode = child.field('name');
|
|
85
|
+
if (!nameNode)
|
|
86
|
+
continue;
|
|
87
|
+
const name = nameNode.text();
|
|
88
|
+
const configKey = prefix ? `${prefix}.${name}` : name;
|
|
89
|
+
// type_annotation text is `: <type>`; strip the leading colon/space and
|
|
90
|
+
// collapse internal whitespace so a multi-line type (e.g. a mapped type
|
|
91
|
+
// spanning several lines) renders as one line — a literal newline in the
|
|
92
|
+
// captured text would otherwise corrupt the markdown options table.
|
|
93
|
+
const typeNode = child.field('type');
|
|
94
|
+
const typeText = (typeNode?.text() ?? '')
|
|
95
|
+
.replace(/^\s*:\s*/, '')
|
|
96
|
+
.replace(/\s+/g, ' ')
|
|
97
|
+
.trim();
|
|
98
|
+
// Optional when a `?` precedes the `:` (type-level `?` comes after the colon).
|
|
99
|
+
const required = !/^[^:]*\?/.test(child.text());
|
|
100
|
+
const doc = parsePropertyJsDoc(child.prev() ?? undefined);
|
|
101
|
+
const option = {
|
|
102
|
+
name,
|
|
103
|
+
configKey,
|
|
104
|
+
type: typeText || 'unknown',
|
|
105
|
+
description: doc.description ?? '',
|
|
106
|
+
required
|
|
107
|
+
};
|
|
108
|
+
if (doc.defaultValue !== undefined)
|
|
109
|
+
option.defaultValue = doc.defaultValue;
|
|
110
|
+
if (doc.useWhen)
|
|
111
|
+
option.useWhen = splitTagContent(doc.useWhen);
|
|
112
|
+
if (doc.avoidWhen)
|
|
113
|
+
option.avoidWhen = splitTagContent(doc.avoidWhen);
|
|
114
|
+
if (doc.pitfalls)
|
|
115
|
+
option.pitfalls = splitTagContent(doc.pitfalls);
|
|
116
|
+
if (doc.remarks !== undefined)
|
|
117
|
+
option.remarks = doc.remarks;
|
|
118
|
+
options.push(option);
|
|
119
|
+
// Recurse into an inline object-literal type → dot-notation child keys.
|
|
120
|
+
const objectType = typeNode?.children().find((n) => n.kind() === 'object_type');
|
|
121
|
+
if (objectType) {
|
|
122
|
+
options.push(...walkProperties(objectType, configKey));
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
return options;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Escape the comment-close sequence `*` + `/` in text destined for a JSDoc
|
|
129
|
+
* block, so model-drafted content containing it — e.g. a `**` + `/*.ts` glob in
|
|
130
|
+
* an `include`/`exclude` pitfall — cannot terminate the block early and corrupt
|
|
131
|
+
* the file. A backslash is inserted between the star and the slash, which the
|
|
132
|
+
* comment scanner does not treat as a close (the star is followed by the
|
|
133
|
+
* backslash, not the slash). Idempotent: an already-escaped sequence has no bare
|
|
134
|
+
* star-slash left to match.
|
|
135
|
+
*/
|
|
136
|
+
export function escapeJsDocClose(text) {
|
|
137
|
+
return text.replace(/\*\//g, '*\\/');
|
|
138
|
+
}
|
|
139
|
+
/** Inverse of {@link escapeJsDocClose}, applied when reading tag content back. */
|
|
140
|
+
export function unescapeJsDocClose(text) {
|
|
141
|
+
return text.replace(/\*\\\//g, '*/');
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Split a JSDoc tag's content into discrete entries. A markdown bullet list
|
|
145
|
+
* (lines starting with `-` or `*`) becomes one entry per bullet (marker
|
|
146
|
+
* stripped, continuation lines folded in); plain prose stays a single entry.
|
|
147
|
+
* This keeps `useWhen`/`avoidWhen`/`pitfalls` — which are `string[]` — as clean
|
|
148
|
+
* per-item arrays so the renderer emits one bullet each, instead of wrapping a
|
|
149
|
+
* whole pre-bulleted blob in another `- ` (the `- - …` double-bullet defect).
|
|
150
|
+
*/
|
|
151
|
+
function splitTagContent(raw) {
|
|
152
|
+
const lines = raw.split('\n');
|
|
153
|
+
const bulleted = lines.some((line) => /^\s*[-*]\s+/.test(line));
|
|
154
|
+
if (!bulleted) {
|
|
155
|
+
const trimmed = raw.trim();
|
|
156
|
+
return trimmed ? [trimmed] : [];
|
|
157
|
+
}
|
|
158
|
+
const items = [];
|
|
159
|
+
for (const line of lines) {
|
|
160
|
+
const match = line.match(/^\s*[-*]\s+(.*)$/);
|
|
161
|
+
if (match) {
|
|
162
|
+
items.push((match[1] ?? '').trim());
|
|
163
|
+
}
|
|
164
|
+
else if (items.length > 0 && line.trim()) {
|
|
165
|
+
items[items.length - 1] += `\n${line.trim()}`;
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
return items.filter((item) => item.length > 0);
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Parse a property's leading `/** … *\/` JSDoc into a description plus the
|
|
172
|
+
* `@default` / routing tags. Returns an empty object when `node` is not a
|
|
173
|
+
* JSDoc comment.
|
|
174
|
+
*/
|
|
175
|
+
function parsePropertyJsDoc(node) {
|
|
176
|
+
if (!node || node.kind() !== 'comment' || !node.text().startsWith('/**')) {
|
|
177
|
+
return {};
|
|
178
|
+
}
|
|
179
|
+
const lines = node
|
|
180
|
+
.text()
|
|
181
|
+
.replace(/^\/\*\*/, '')
|
|
182
|
+
.replace(/\s*\*\/\s*$/, '')
|
|
183
|
+
.split('\n')
|
|
184
|
+
.map((line) => line.replace(/^\s*\*? ?/, '').trimEnd());
|
|
185
|
+
const descriptionLines = [];
|
|
186
|
+
const tags = {};
|
|
187
|
+
let current;
|
|
188
|
+
for (const line of lines) {
|
|
189
|
+
const tagMatch = line.match(/^@(\w+)\s?(.*)$/);
|
|
190
|
+
if (tagMatch?.[1]) {
|
|
191
|
+
current = tagMatch[1];
|
|
192
|
+
(tags[current] ??= []).push(tagMatch[2] ?? '');
|
|
193
|
+
}
|
|
194
|
+
else if (current) {
|
|
195
|
+
(tags[current] ??= []).push(line);
|
|
196
|
+
}
|
|
197
|
+
else {
|
|
198
|
+
descriptionLines.push(line);
|
|
199
|
+
}
|
|
200
|
+
}
|
|
201
|
+
const join = (key) => tags[key] ? unescapeJsDocClose(tags[key].join('\n').trim()) : undefined;
|
|
202
|
+
const description = descriptionLines.join('\n').trim();
|
|
203
|
+
const doc = {};
|
|
204
|
+
if (description)
|
|
205
|
+
doc.description = description;
|
|
206
|
+
const defaultValue = join('default');
|
|
207
|
+
if (defaultValue !== undefined)
|
|
208
|
+
doc.defaultValue = defaultValue;
|
|
209
|
+
const useWhen = join('useWhen');
|
|
210
|
+
if (useWhen !== undefined)
|
|
211
|
+
doc.useWhen = useWhen;
|
|
212
|
+
const avoidWhen = join('avoidWhen');
|
|
213
|
+
if (avoidWhen !== undefined)
|
|
214
|
+
doc.avoidWhen = avoidWhen;
|
|
215
|
+
const pitfalls = join('pitfalls');
|
|
216
|
+
if (pitfalls !== undefined)
|
|
217
|
+
doc.pitfalls = pitfalls;
|
|
218
|
+
const remarks = join('remarks');
|
|
219
|
+
if (remarks !== undefined)
|
|
220
|
+
doc.remarks = remarks;
|
|
221
|
+
return doc;
|
|
222
|
+
}
|
|
223
|
+
/** Depth-first iterator over all descendant nodes (including `root`). */
|
|
224
|
+
function* descendants(root) {
|
|
225
|
+
yield root;
|
|
226
|
+
for (const child of root.children()) {
|
|
227
|
+
yield* descendants(child);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
//# sourceMappingURL=config-extract.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-extract.js","sourceRoot":"","sources":["../src/config-extract.ts"],"names":[],"mappings":"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"}
|
package/dist/docs-scanner.d.ts
CHANGED
|
@@ -20,6 +20,9 @@ export declare function scanDocs(options: DocsExtractionOptions): ParsedMarkdown
|
|
|
20
20
|
/**
|
|
21
21
|
* Convert parsed markdown documents to the generic `ExtractedDocument` shape.
|
|
22
22
|
*
|
|
23
|
+
* @param docs - Parsed markdown documents (from `scanDocs()`) to convert; each
|
|
24
|
+
* contributes its `title` and `rawContent`.
|
|
25
|
+
* @returns One `ExtractedDocument` per input doc, in the same order.
|
|
23
26
|
* @category Parsing
|
|
24
27
|
* @useWhen
|
|
25
28
|
* - You have ParsedMarkdownDoc objects from scanDocs() and need to attach them to an ExtractedSkill
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs-scanner.d.ts","sourceRoot":"","sources":["../src/docs-scanner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AA8FpD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG,iBAAiB,EAAE,CAuB5E;AAED
|
|
1
|
+
{"version":3,"file":"docs-scanner.d.ts","sourceRoot":"","sources":["../src/docs-scanner.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACpF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AA8FpD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG,iBAAiB,EAAE,CAuB5E;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,iBAAiB,EAAE,GAAG,iBAAiB,EAAE,CAEvF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAyCrE"}
|
package/dist/docs-scanner.js
CHANGED
|
@@ -113,6 +113,9 @@ export function scanDocs(options) {
|
|
|
113
113
|
/**
|
|
114
114
|
* Convert parsed markdown documents to the generic `ExtractedDocument` shape.
|
|
115
115
|
*
|
|
116
|
+
* @param docs - Parsed markdown documents (from `scanDocs()`) to convert; each
|
|
117
|
+
* contributes its `title` and `rawContent`.
|
|
118
|
+
* @returns One `ExtractedDocument` per input doc, in the same order.
|
|
116
119
|
* @category Parsing
|
|
117
120
|
* @useWhen
|
|
118
121
|
* - You have ParsedMarkdownDoc objects from scanDocs() and need to attach them to an ExtractedSkill
|
package/dist/docs-scanner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs-scanner.js","sourceRoot":"","sources":["../src/docs-scanner.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"docs-scanner.js","sourceRoot":"","sources":["../src/docs-scanner.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -23,7 +23,7 @@ export { renderResourcesReference, renderPromptsReference } from './references-m
|
|
|
23
23
|
export type { McpReferenceOptions } from './references-mcp.js';
|
|
24
24
|
export { renderLlmsTxt } from './llms-txt.js';
|
|
25
25
|
export type { LlmsTxtOptions, LlmsTxtResult } from './llms-txt.js';
|
|
26
|
-
export type { AuditSeverity, AuditIssue, AuditPass,
|
|
26
|
+
export type { AuditSeverity, AuditIssue, AuditPass, ParsedReadme, AuditResult } from './audit-types.js';
|
|
27
27
|
export { parseReadme } from './readme-parser.js';
|
|
28
28
|
export { auditSkill } from './audit.js';
|
|
29
29
|
export { formatAuditText, formatAuditJson, formatScoreEstimate } from './audit-formatter.js';
|
|
@@ -31,6 +31,7 @@ export { estimateSkillJudgeScore } from './audit-score.js';
|
|
|
31
31
|
export type { SkillJudgeEstimate, ActionableImprovement } from './audit-score.js';
|
|
32
32
|
export type { ConfigSourceType, ExtractedConfigSurface, ExtractedConfigOption, ExtractedConfigArgument } from './config-types.js';
|
|
33
33
|
export { renderConfigSurfaceSection, renderConfigReference } from './config-renderer.js';
|
|
34
|
+
export { extractConfigSurface } from './config-extract.js';
|
|
34
35
|
export type { ParsedSection, ParsedMarkdownDoc, DocsExtractionOptions } from './markdown-types.js';
|
|
35
36
|
export { parseMarkdownDoc } from './markdown-parser.js';
|
|
36
37
|
export { scanDocs, docsToExtractedDocuments, scanRootDocs } from './docs-scanner.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,4BAA4B,EAC5B,cAAc,EACd,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,uBAAuB,EACvB,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,wBAAwB,EACxB,yBAAyB,EACzB,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EAChB,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACvF,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnE,YAAY,EACV,aAAa,EACb,UAAU,EACV,SAAS,EACT,YAAY,EACZ,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,YAAY,EACV,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,4BAA4B,EAC5B,cAAc,EACd,aAAa,EACb,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,uBAAuB,EACvB,UAAU,EACV,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,EAC1B,wBAAwB,EACxB,yBAAyB,EACzB,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EAChB,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACvF,YAAY,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,YAAY,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEnE,YAAY,EACV,aAAa,EACb,UAAU,EACV,SAAS,EACT,YAAY,EACZ,WAAW,EACZ,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE7F,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,YAAY,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAElF,YAAY,EACV,gBAAgB,EAChB,sBAAsB,EACtB,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAE3D,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAEnG,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAE,QAAQ,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAErF,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC1E,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,cAAc,mBAAmB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -24,6 +24,7 @@ export { auditSkill } from './audit.js';
|
|
|
24
24
|
export { formatAuditText, formatAuditJson, formatScoreEstimate } from './audit-formatter.js';
|
|
25
25
|
export { estimateSkillJudgeScore } from './audit-score.js';
|
|
26
26
|
export { renderConfigSurfaceSection, renderConfigReference } from './config-renderer.js';
|
|
27
|
+
export { extractConfigSurface } from './config-extract.js';
|
|
27
28
|
export { parseMarkdownDoc } from './markdown-parser.js';
|
|
28
29
|
export { scanDocs, docsToExtractedDocuments, scanRootDocs } from './docs-scanner.js';
|
|
29
30
|
export { scanExamples, linkExamplesToSkill } from './examples-scanner.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAsCH,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAEvF,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAsCH,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAEvF,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAW9C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAExC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE7F,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAU3D,OAAO,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAI3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAE,QAAQ,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAErF,OAAO,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG1E,cAAc,mBAAmB,CAAC"}
|
|
@@ -8,8 +8,49 @@ import type { RefineTag } from './types.js';
|
|
|
8
8
|
* - If a JSDoc block exists without the tag, the tag is appended before the
|
|
9
9
|
* closing `*\/`.
|
|
10
10
|
* - If the declaration is not found, the source is returned unchanged.
|
|
11
|
+
*
|
|
12
|
+
* @remarks
|
|
13
|
+
* Parses `source` with ast-grep (core carries no `typescript` dependency) and
|
|
14
|
+
* edits the text in place, so formatting outside the touched JSDoc block is
|
|
15
|
+
* preserved. Tag matching is by name, so re-running with the same tag is a
|
|
16
|
+
* no-op rather than a duplicate.
|
|
11
17
|
*/
|
|
12
18
|
export declare function upsertJsDocTag(source: string, declName: string, tag: RefineTag, content: string): string;
|
|
19
|
+
/**
|
|
20
|
+
* Insert or update a JSDoc tag on a property of a config type.
|
|
21
|
+
*
|
|
22
|
+
* `propertyPath` is a dot path into the interface or object-type alias named
|
|
23
|
+
* `typeName` (e.g. `outDir` or `components.prefix`). Otherwise behaves like
|
|
24
|
+
* {@link upsertJsDocTag}. Returns the source unchanged when the type or
|
|
25
|
+
* property is not found. Used by the config refine source to write routing
|
|
26
|
+
* tags back onto a config type's property declarations.
|
|
27
|
+
*
|
|
28
|
+
* @remarks
|
|
29
|
+
* Resolves `propertyPath` against the body of `typeName` via ast-grep, recursing
|
|
30
|
+
* into nested object-type members for dotted paths. Like {@link upsertJsDocTag},
|
|
31
|
+
* the edit is text-level and idempotent per tag name.
|
|
32
|
+
*/
|
|
33
|
+
export declare function upsertPropertyJsDocTag(source: string, typeName: string, propertyPath: string, tag: RefineTag, content: string): string;
|
|
34
|
+
/**
|
|
35
|
+
* Remove the refine-managed tag spans (`@useWhen`, `@avoidWhen`, `@pitfalls`,
|
|
36
|
+
* `@remarks`, `@example` — see {@link REFINE_TAGS}) from every JSDoc block in
|
|
37
|
+
* `source`, leaving each block's prose description and any non-refine tags
|
|
38
|
+
* intact.
|
|
39
|
+
*
|
|
40
|
+
* Used to feed an annotated config module back to the model as grounding
|
|
41
|
+
* without echoing the routing tags this package itself wrote across earlier
|
|
42
|
+
* refine iterations — those are documentation, not the implementation the model
|
|
43
|
+
* should ground runtime claims in. Unlike a blanket JSDoc strip, this preserves
|
|
44
|
+
* genuine hand-authored docs (e.g. validation notes on a `defineConfig` helper),
|
|
45
|
+
* which are exactly the runtime-behavior grounding we want to keep.
|
|
46
|
+
*
|
|
47
|
+
* Handles single-line (`/** @tag x */`) as well as multi-line blocks: each block
|
|
48
|
+
* is reduced to its inner content (opener/closer and ` * ` gutter dropped) before
|
|
49
|
+
* tags are matched, so an inline opener can't hide a tag. The block-matching
|
|
50
|
+
* regex is non-greedy, and writeback escapes a literal close sequence in content
|
|
51
|
+
* to `*\/`, so an escaped sequence inside a kept line never terminates early.
|
|
52
|
+
*/
|
|
53
|
+
export declare function stripRefineTags(source: string): string;
|
|
13
54
|
/**
|
|
14
55
|
* Parse the leading JSDoc block of a named export declaration and return a
|
|
15
56
|
* map of the RefineTag values found in it.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ast-edit.d.ts","sourceRoot":"","sources":["../../src/refine/ast-edit.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ast-edit.d.ts","sourceRoot":"","sources":["../../src/refine/ast-edit.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAwF5C;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,MAAM,GACd,MAAM,CAKR;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,SAAS,EACd,OAAO,EAAE,MAAM,GACd,MAAM,CAOR;AAgFD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAOtD;AA0CD;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAyCpC"}
|