apcore-toolkit 0.6.1 → 0.7.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/CHANGELOG.md +53 -1
- package/README.md +30 -1
- package/dist/binding-loader.d.ts.map +1 -1
- package/dist/binding-loader.js +12 -9
- package/dist/binding-loader.js.map +1 -1
- package/dist/display/resolver.d.ts.map +1 -1
- package/dist/display/resolver.js +3 -14
- package/dist/display/resolver.js.map +1 -1
- package/dist/formatting/index.d.ts +2 -0
- package/dist/formatting/index.d.ts.map +1 -1
- package/dist/formatting/index.js +1 -0
- package/dist/formatting/index.js.map +1 -1
- package/dist/formatting/tabular.d.ts +30 -0
- package/dist/formatting/tabular.d.ts.map +1 -0
- package/dist/formatting/tabular.js +100 -0
- package/dist/formatting/tabular.js.map +1 -0
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/output/http-proxy-writer.d.ts.map +1 -1
- package/dist/output/http-proxy-writer.js +15 -0
- package/dist/output/http-proxy-writer.js.map +1 -1
- package/dist/output/registry-writer.d.ts.map +1 -1
- package/dist/output/registry-writer.js +3 -7
- package/dist/output/registry-writer.js.map +1 -1
- package/dist/output/yaml-writer.d.ts +16 -1
- package/dist/output/yaml-writer.d.ts.map +1 -1
- package/dist/output/yaml-writer.js +16 -1
- package/dist/output/yaml-writer.js.map +1 -1
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,58 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
## [0.7.0] - 2026-05-12
|
|
5
|
+
|
|
6
|
+
### Fixed (post-audit cross-SDK reconciliation)
|
|
7
|
+
|
|
8
|
+
- **`RegistryWriter._toFunctionModule` no longer strips `display`.** The resolved display lives in `metadata["display"]` (per `DisplayResolver`); the previous strip-display branch dropped it on the floor when round-tripping through the registry. Now `metadata` is passed through unchanged. Aligns with Python and Rust SDK behavior. (D11-001)
|
|
9
|
+
- **`RegistryWriter._toFunctionModule` — empty-collection normalization.** Empty `tags` / `metadata` / `examples` are no longer coerced to `null`. Canonical cross-SDK rule: keep empty collections as `[]` / `{}` and reserve `null` for unset. Matches Python (post-fix) and Rust behavior. (D11-007)
|
|
10
|
+
- **`DisplayResolver._loadBindingFiles` no longer skips symlinks.** Python and Rust DisplayResolvers follow symlinks transparently, and TS's own `BindingLoader` already does too. Removed the `lstatSync` symlink-skip block for cross-SDK parity. The corresponding regression test was inverted to assert symlinked binding files are loaded. (D10-W1)
|
|
11
|
+
- **`DisplayResolver._resolveOne` — empty-string fallback alignment.** `??` chains on `documentation` and `guidance` (default and per-surface) now use `||` so that empty-string `guidance` falls through to the resolved default. Matches Python's `or` semantics and Rust's `str_or` filter. (D11-003)
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- **`tests/display-resolve-conformance.test.ts`** — new cross-SDK conformance test wired to the shared fixture `apcore-toolkit/conformance/fixtures/display_resolve.json` (14 cases). Previously orphaned across all three SDKs. (D9-W1)
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
|
|
19
|
+
- Annotated the `createWriteResult` export in `src/index.ts` as a TS-only ergonomic helper. Python and Rust callers construct `WriteResult` directly via dataclass/struct literals; the annotation documents the deliberate parity gap. (D1-W1)
|
|
20
|
+
- Lowered the `apcore-js` runtime dep floor from `>=0.21.1` to `>=0.21.0` to align with the Python and Rust SDKs (which target `apcore 0.21.x` on PyPI / crates.io, where 0.21.1 is not published). (D3-W1, corrected direction)
|
|
21
|
+
|
|
22
|
+
### Added
|
|
23
|
+
|
|
24
|
+
- **`formatCsv(rows, options?)` and `formatJsonl(rows)`** — byte-equivalent tabular data formatters. Lives in `src/formatting/tabular.ts`; re-exported from the package root. Cross-SDK byte-identity contract: Python / TypeScript / Rust SDKs emit identical bytes for the same input. Asserted via shared conformance corpus at `apcore-toolkit/conformance/fixtures/`.
|
|
25
|
+
- **`FormatCsvOptions`** type exposing the `bom` flag for Excel-locale users.
|
|
26
|
+
|
|
27
|
+
### CSV / JSONL canonical contract
|
|
28
|
+
|
|
29
|
+
- **CSV**: header = union of keys across all rows in insertion-order (fixes apcore-cli-typescript heterogeneous-keys data-loss bug at `src/output.ts:347-354`). Non-scalar cells = `JSON.stringify(value)`. RFC 4180 CRLF terminator. `,` / `"` / `\n` / `\r` quote-wrapped, embedded `"` doubled.
|
|
30
|
+
- **JSONL**: canonical compact `JSON.stringify` per row, LF terminator, no trailing blank.
|
|
31
|
+
- **Numbers**: NaN/Infinity collapse to empty CSV cell / JSON `null` (matching JS default). Insertion-order keys preserved via JS object property ordering.
|
|
32
|
+
|
|
33
|
+
### Why
|
|
34
|
+
|
|
35
|
+
Per-SDK reimplementations of csv/jsonl had accumulated divergence. The spec MUST language couldn't enforce conformance on downstream consumers (e.g. aisee-cli) that reimplemented their own emission. See `apcore-cli/docs/tech-design.md` ADR-09 for the tier-split rationale.
|
|
36
|
+
|
|
37
|
+
### Notes
|
|
38
|
+
|
|
39
|
+
- **YAML is intentionally not in this tier yet.** Each idiomatic YAML library (PyYAML, js-yaml, serde_yaml_ng) emits different forms even for identical input. Byte-equivalence requires a custom emitter, which is deferred. YAML remains SDK-native (Tier 2) and may differ across languages.
|
|
40
|
+
- Integers exceeding `Number.MAX_SAFE_INTEGER` (`2^53 - 1`) are not portable across SDKs; callers should serialize them as JSON strings.
|
|
41
|
+
|
|
42
|
+
### Cross-SDK reconciliation (post-audit, no TypeScript code change)
|
|
43
|
+
|
|
44
|
+
The 2026-05-12 cross-SDK audit (`/apcore-skills:audit --scope toolkit`) reconciled spec text and implementations across the three toolkit SDKs. The TypeScript surface is unchanged in 0.7.0 beyond the tabular formatters above — the audit found TypeScript already implemented the canonical behaviour for the relevant contracts. Spec updates that now formally guarantee TypeScript behaviour cross-SDK:
|
|
45
|
+
|
|
46
|
+
- **`getWriter` HTTP-proxy aliases** (D10-003) — `getWriter("http_proxy", { baseUrl })` and `getWriter("httpproxy", { baseUrl })` were already accepted by the TypeScript factory (Issue #5). The 0.7.0 release elevates this to a cross-SDK guarantee: `apcore-toolkit-python` 0.7.0 now also accepts the aliases. Spec: `apcore-toolkit/docs/features/output-writers.md` § Contract: get_writer.
|
|
47
|
+
- **`resolveRef` prototype-pollution guard** (D10-004) — TypeScript's `PROTO_DENY_LIST` (blocks `__proto__` / `constructor` / `prototype` JSON-pointer segments) is now formally documented in `apcore-toolkit/docs/features/openapi.md` as a TypeScript-only language-specific hardening. Behaviour unchanged.
|
|
48
|
+
- **`format_module` / `format_modules` error contract** (D10-005) — spec now declares that the `Err(FormatError)` text in `format_module` / `format_modules` documents the Rust enum behaviour; the Python `Error` and TypeScript `Error` raised on unknown style values continue to apply. No TypeScript change.
|
|
49
|
+
- **`DisplayResolver.resolve` error contract** (D10-006) — spec narrowed the `### Errors` block to "MCP alias validation only", matching the warn-and-continue behaviour TypeScript already implements for invalid `binding_data` shape. No TypeScript change.
|
|
50
|
+
- **`apcore-toolkit-rust` error rename** (D1-001) — Rust renamed `OutputFormatError` to `InvalidFormatError` for symbol parity with TypeScript's existing `InvalidFormatError`. TypeScript surface unchanged; cross-language porting is now grep-aligned.
|
|
51
|
+
|
|
52
|
+
### Test suite
|
|
53
|
+
|
|
54
|
+
- 588 tests pass (unchanged from baseline). No new tests added — TypeScript behaviour is unchanged by this reconciliation pass.
|
|
55
|
+
|
|
4
56
|
## [0.6.1] - 2026-05-09
|
|
5
57
|
|
|
6
58
|
### Changed
|
|
@@ -79,7 +131,7 @@
|
|
|
79
131
|
### Added (browser / edge runtime subpath)
|
|
80
132
|
|
|
81
133
|
- **`apcore-toolkit/browser`** — new subpath export that exposes the runtime-neutral subset of the toolkit. Intended for consumers that bundle apcore-toolkit into a browser, edge runtime, or worker environment (e.g. `tiptap-apcore`). The default entry point continues to re-export the full Node-capable surface unchanged — this subpath is strictly additive; existing consumers (`nestjs-apcore` et al.) see zero API changes.
|
|
82
|
-
- Exposes: `ScannedModule` / `createScannedModule` / `cloneModule`, `BaseScanner`, the HTTP verb mapping helpers, `enrichSchemaDescriptions`, the OpenAPI resolvers (`resolveRef` / `resolveSchema` / `deepResolveRefs` / `extractInputSchema` / `extractOutputSchema`), the serializers (`annotationsToDict` / `moduleToDict` / `modulesToDicts`), `toMarkdown`, `BindingParser` / `parseBindingDocument` / `BindingLoadError`, the write-pipeline types (`WriteResult` / `VerifyResult` / `Verifier` / `createWriteResult` / `WriteError` / `InvalidFormatError`), `RegistryVerifier` / `runVerifierChain`, and `HTTPProxyRegistryWriter` / `
|
|
134
|
+
- Exposes: `ScannedModule` / `createScannedModule` / `cloneModule`, `BaseScanner`, the HTTP verb mapping helpers, `enrichSchemaDescriptions`, the OpenAPI resolvers (`resolveRef` / `resolveSchema` / `deepResolveRefs` / `extractInputSchema` / `extractOutputSchema`), the serializers (`annotationsToDict` / `moduleToDict` / `modulesToDicts`), `toMarkdown`, `BindingParser` / `parseBindingDocument` / `BindingLoadError`, the write-pipeline types (`WriteResult` / `VerifyResult` / `Verifier` / `createWriteResult` / `WriteError` / `InvalidFormatError`), `RegistryVerifier` / `runVerifierChain`, and `HTTPProxyRegistryWriter` / `HTTPProxyRegistryWriterError`.
|
|
83
135
|
- Excludes (Node-only): `YAMLWriter`, `TypeScriptWriter`, `RegistryWriter`, `getWriter`, `BindingLoader` (the fs-reading subclass — use `BindingParser` instead), `DisplayResolver`, `AIEnhancer`, `resolveTarget`, the file-based verifiers (`YAMLVerifier`, `SyntaxVerifier`, `MagicBytesVerifier`, `JSONVerifier`), and `VERSION`. These touch `node:fs` / `node:path` / `node:module` / `process.*` and cannot be safely bundled for browsers.
|
|
84
136
|
- **`BindingParser`** — new class at `src/binding-parser.ts` that owns the runtime-neutral binding document parsing logic. `BindingLoader` is now a subclass that adds `load(filePath)` for filesystem loading. `BindingLoader.loadData(data)` continues to work unchanged (inherited). Mirrors the `load_data` split available on the Python `BindingLoader` class.
|
|
85
137
|
- **`parseBindingDocument(raw, options?, filePath?)`** — standalone function form of `BindingParser.loadData`, with an optional explicit `filePath` for richer `BindingLoadError` messages when the document came from a known file location.
|
package/README.md
CHANGED
|
@@ -105,6 +105,33 @@ const md = toMarkdown(data, {
|
|
|
105
105
|
});
|
|
106
106
|
```
|
|
107
107
|
|
|
108
|
+
### Tabular Formats (v0.7.0)
|
|
109
|
+
|
|
110
|
+
Byte-equivalent CSV / JSONL emitters with a cross-SDK conformance contract — TypeScript, Python, and Rust produce identical bytes for the same input.
|
|
111
|
+
|
|
112
|
+
```typescript
|
|
113
|
+
import { formatCsv, formatJsonl } from 'apcore-toolkit';
|
|
114
|
+
|
|
115
|
+
const rows = [
|
|
116
|
+
{ sn: 1, title: 'First', score: 78 },
|
|
117
|
+
{ sn: 2, title: 'Second', score: 82, description: 'later-only field' },
|
|
118
|
+
];
|
|
119
|
+
|
|
120
|
+
// CSV: header = union of keys across all rows (no silent data loss on
|
|
121
|
+
// heterogeneous rows); nested values serialized via JSON.stringify; RFC 4180
|
|
122
|
+
// CRLF line terminator.
|
|
123
|
+
process.stdout.write(formatCsv(rows));
|
|
124
|
+
// sn,title,score,description\r\n1,First,78,\r\n2,Second,82,later-only field\r\n
|
|
125
|
+
|
|
126
|
+
// JSONL: canonical compact JSON per row, LF terminator, no trailing blank.
|
|
127
|
+
process.stdout.write(formatJsonl(rows));
|
|
128
|
+
|
|
129
|
+
// UTF-8 BOM for Excel locales (default off for pipeline consumers):
|
|
130
|
+
process.stdout.write(formatCsv(rows, { bom: true }));
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
See `apcore-toolkit/docs/features/formatting.md` § Tabular Formats for the full contract and `apcore-toolkit/conformance/fixtures/format_csv.json` / `format_jsonl.json` for the shared cross-SDK test corpus.
|
|
134
|
+
|
|
108
135
|
### Serializers
|
|
109
136
|
|
|
110
137
|
```typescript
|
|
@@ -176,7 +203,7 @@ The **Browser** column marks whether a symbol is also re-exported from
|
|
|
176
203
|
| `TypeScriptWriter` | | Generates TypeScript module wrappers |
|
|
177
204
|
| `RegistryWriter` | | Registers modules into an apcore Registry |
|
|
178
205
|
| `HTTPProxyRegistryWriter` | ✓ | Registers modules as HTTP-proxied entries in an in-memory registry. Each module's `execute()` forwards inputs to a backend URL via global `fetch`. Works in any runtime with `fetch` (Node 20+, browsers, edge, workers). |
|
|
179
|
-
| `
|
|
206
|
+
| `HTTPProxyRegistryWriterError` | ✓ | Error class thrown when HTTP fields cannot be extracted from a `ScannedModule` |
|
|
180
207
|
| `getWriter()` | | Factory for writer instances |
|
|
181
208
|
| `extractInputSchema()` | ✓ | Extract input schema from OpenAPI operation |
|
|
182
209
|
| `extractOutputSchema()` | ✓ | Extract output schema from OpenAPI operation |
|
|
@@ -185,6 +212,8 @@ The **Browser** column marks whether a symbol is also re-exported from
|
|
|
185
212
|
| `deepResolveRefs()` | ✓ | Recursively resolve all nested `$ref` pointers in a schema |
|
|
186
213
|
| `enrichSchemaDescriptions()` | ✓ | Merge parameter descriptions into schema |
|
|
187
214
|
| `toMarkdown()` | ✓ | Convert dict to formatted Markdown |
|
|
215
|
+
| `formatCsv()` _(v0.7.0)_ | ✓ | Byte-equivalent RFC 4180 CSV. Header = union of keys; canonical JSON for nested cells; CRLF terminator |
|
|
216
|
+
| `formatJsonl()` _(v0.7.0)_ | ✓ | Byte-equivalent JSON Lines. Compact JSON per row, LF terminator |
|
|
188
217
|
| `moduleToDict()` | ✓ | Serialize module to snake_case dict |
|
|
189
218
|
| `modulesToDicts()` | ✓ | Batch serialize modules |
|
|
190
219
|
| `annotationsToDict()` | ✓ | Convert annotations to plain dict |
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binding-loader.d.ts","sourceRoot":"","sources":["../src/binding-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,EAEL,aAAa,EAEd,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAOhD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC5F,YAAY,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAgB9D;;;;;;;;;;;;;;GAcG;AACH,qBAAa,aAAc,SAAQ,aAAa;IAC9C;;;;;;;;OAQG;IACH,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,aAAa,EAAE;
|
|
1
|
+
{"version":3,"file":"binding-loader.d.ts","sourceRoot":"","sources":["../src/binding-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,EAEL,aAAa,EAEd,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAOhD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC5F,YAAY,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAgB9D;;;;;;;;;;;;;;GAcG;AACH,qBAAa,aAAc,SAAQ,aAAa;IAC9C;;;;;;;;OAQG;IACH,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,aAAa,EAAE;IA2F9E;;;;;;;;;OASG;IACH,OAAO,CAAC,iBAAiB;CA6C1B"}
|
package/dist/binding-loader.js
CHANGED
|
@@ -81,19 +81,22 @@ export class BindingLoader extends BindingParser {
|
|
|
81
81
|
files = this._collectRecursive(filePath).sort();
|
|
82
82
|
}
|
|
83
83
|
else {
|
|
84
|
-
|
|
84
|
+
files = fs
|
|
85
85
|
.readdirSync(filePath)
|
|
86
|
-
.filter((f) => f.endsWith('.binding.yaml'))
|
|
87
|
-
if (allEntries.length > MAX_BINDING_FILES_PER_DIR) {
|
|
88
|
-
throw new BindingLoadError({
|
|
89
|
-
reason: `too many files in directory: ${allEntries.length} exceeds limit of ${MAX_BINDING_FILES_PER_DIR}`,
|
|
90
|
-
filePath,
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
files = allEntries
|
|
86
|
+
.filter((f) => f.endsWith('.binding.yaml'))
|
|
94
87
|
.sort()
|
|
95
88
|
.map((f) => path.join(filePath, f));
|
|
96
89
|
}
|
|
90
|
+
// Enforce the per-directory file-count cap on the merged list so the
|
|
91
|
+
// recursive branch is bounded too. Rust and Python apply the cap
|
|
92
|
+
// unconditionally; the previous TypeScript implementation only
|
|
93
|
+
// checked the non-recursive branch (A-D-013).
|
|
94
|
+
if (files.length > MAX_BINDING_FILES_PER_DIR) {
|
|
95
|
+
throw new BindingLoadError({
|
|
96
|
+
reason: `too many files in directory: ${files.length} exceeds limit of ${MAX_BINDING_FILES_PER_DIR}`,
|
|
97
|
+
filePath,
|
|
98
|
+
});
|
|
99
|
+
}
|
|
97
100
|
}
|
|
98
101
|
else {
|
|
99
102
|
throw new BindingLoadError({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binding-loader.js","sourceRoot":"","sources":["../src/binding-loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,IAAI,MAAM,SAAS,CAAC;AAChC,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,oBAAoB,GACrB,MAAM,qBAAqB,CAAC;AAI7B,qEAAqE;AACrE,yEAAyE;AACzE,sEAAsE;AACtE,kDAAkD;AAClD,sEAAsE;AACtE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAG5F,8FAA8F;AAC9F,MAAM,qBAAqB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,SAAS;AAEzD,yFAAyF;AACzF,MAAM,yBAAyB,GAAG,MAAM,CAAC;AAEzC,uEAAuE;AACvE,6EAA6E;AAC7E,6EAA6E;AAC7E,wEAAwE;AACxE,mEAAmE;AACnE,0BAA0B;AAC1B,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAE/B;;;;;;;;;;;;;;GAcG;AACH,MAAM,OAAO,aAAc,SAAQ,aAAa;IAC9C;;;;;;;;OAQG;IACH,IAAI,CAAC,QAAgB,EAAE,MAAgB,EAAE,SAAmB;QAC1D,MAAM,GAAG,MAAM,IAAI,KAAK,CAAC;QACzB,SAAS,GAAG,SAAS,IAAI,KAAK,CAAC;QAE/B,IAAI,IAAc,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,IAAI,GAAI,GAA6B,CAAC,IAAI,CAAC;YACjD,MAAM,MAAM,GACV,IAAI,KAAK,QAAQ;gBACf,CAAC,CAAC,qBAAqB;gBACvB,CAAC,CAAC,qBAAqB,IAAI,IAAI,SAAS,GAAG,CAAC;YAChD,MAAM,IAAI,gBAAgB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,KAAe,CAAC;QACpB,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;YAClB,KAAK,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrB,CAAC;aAAM,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YAC9B,IAAI,SAAS,EAAE,CAAC;gBACd,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,
|
|
1
|
+
{"version":3,"file":"binding-loader.js","sourceRoot":"","sources":["../src/binding-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/display/resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAQjD,gDAAgD;AAChD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,sCAAsC;AACtC,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,cAAc,CAAC;IACpB,GAAG,EAAE,cAAc,CAAC;IACpB,GAAG,EAAE,cAAc,CAAC;CACrB;AAED,mDAAmD;AACnD,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAKD;;;;;;;;;;GAUG;AACH,qBAAa,eAAe;IAC1B;;;;;;OAMG;IACH,OAAO,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,aAAa,EAAE;IA0BnF,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,iBAAiB;IA+BzB,OAAO,CAAC,iBAAiB;
|
|
1
|
+
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/display/resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAQjD,gDAAgD;AAChD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,sCAAsC;AACtC,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE,cAAc,CAAC;IACpB,GAAG,EAAE,cAAc,CAAC;IACpB,GAAG,EAAE,cAAc,CAAC;CACrB;AAED,mDAAmD;AACnD,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAKD;;;;;;;;;;GAUG;AACH,qBAAa,eAAe;IAC1B;;;;;;OAMG;IACH,OAAO,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,aAAa,EAAE;IA0BnF,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,iBAAiB;IA+BzB,OAAO,CAAC,iBAAiB;IAuCzB;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,MAAM;IAIrB,OAAO,CAAC,MAAM,CAAC,MAAM;IAMrB,OAAO,CAAC,MAAM,CAAC,WAAW;IAK1B,OAAO,CAAC,WAAW;IAyEnB,OAAO,CAAC,gBAAgB;CAiCzB"}
|
package/dist/display/resolver.js
CHANGED
|
@@ -114,17 +114,6 @@ export class DisplayResolver {
|
|
|
114
114
|
return Object.create(null);
|
|
115
115
|
}
|
|
116
116
|
for (const f of files) {
|
|
117
|
-
try {
|
|
118
|
-
const lstat = fs.lstatSync(f);
|
|
119
|
-
if (lstat.isSymbolicLink()) {
|
|
120
|
-
console.warn(`DisplayResolver: skipping symlink ${f}`);
|
|
121
|
-
continue;
|
|
122
|
-
}
|
|
123
|
-
}
|
|
124
|
-
catch (exc) {
|
|
125
|
-
console.warn(`DisplayResolver: failed to stat ${f}: ${exc}`);
|
|
126
|
-
continue;
|
|
127
|
-
}
|
|
128
117
|
let content;
|
|
129
118
|
try {
|
|
130
119
|
content = fs.readFileSync(f, 'utf-8');
|
|
@@ -176,8 +165,8 @@ export class DisplayResolver {
|
|
|
176
165
|
// -- Resolve cross-surface defaults --
|
|
177
166
|
const defaultAlias = DisplayResolver._asStr(displayCfg['alias']) || suggestedAlias || mod.moduleId;
|
|
178
167
|
const defaultDescription = DisplayResolver._asStr(displayCfg['description']) || bindingDesc || mod.description;
|
|
179
|
-
const defaultDocumentation = DisplayResolver._asStr(displayCfg['documentation'])
|
|
180
|
-
const defaultGuidance = DisplayResolver._asStr(displayCfg['guidance'])
|
|
168
|
+
const defaultDocumentation = DisplayResolver._asStr(displayCfg['documentation']) || bindingDocs || mod.documentation || null;
|
|
169
|
+
const defaultGuidance = DisplayResolver._asStr(displayCfg['guidance']) || null;
|
|
181
170
|
const resolvedTags = displayCfg['tags'] !== undefined
|
|
182
171
|
? DisplayResolver._asStrArray(displayCfg['tags'], mod.tags)
|
|
183
172
|
: DisplayResolver._asStrArray(entry['tags'] !== undefined ? entry['tags'] : mod.tags, mod.tags);
|
|
@@ -189,7 +178,7 @@ export class DisplayResolver {
|
|
|
189
178
|
surface: {
|
|
190
179
|
alias: DisplayResolver._asStr(sc['alias']) || defaultAlias,
|
|
191
180
|
description: DisplayResolver._asStr(sc['description']) || defaultDescription,
|
|
192
|
-
guidance: DisplayResolver._asStr(sc['guidance'])
|
|
181
|
+
guidance: DisplayResolver._asStr(sc['guidance']) || defaultGuidance,
|
|
193
182
|
},
|
|
194
183
|
aliasExplicit,
|
|
195
184
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/display/resolver.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/display/resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { toMarkdown } from './markdown.js';
|
|
2
2
|
export { formatSchema, formatModule, formatModules, } from './surface.js';
|
|
3
3
|
export type { SchemaStyle, ModuleStyle, GroupBy, FormatSchemaOptions, FormatModuleOptions, FormatModulesOptions, } from './surface.js';
|
|
4
|
+
export { formatCsv, formatJsonl } from './tabular.js';
|
|
5
|
+
export type { FormatCsvOptions } from './tabular.js';
|
|
4
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/formatting/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,WAAW,EACX,WAAW,EACX,OAAO,EACP,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/formatting/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,aAAa,GACd,MAAM,cAAc,CAAC;AACtB,YAAY,EACV,WAAW,EACX,WAAW,EACX,OAAO,EACP,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACtD,YAAY,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC"}
|
package/dist/formatting/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/formatting/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,aAAa,GACd,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/formatting/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,aAAa,GACd,MAAM,cAAc,CAAC;AAStB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Byte-equivalent tabular data formatters: CSV and JSONL.
|
|
3
|
+
*
|
|
4
|
+
* Cross-SDK byte-identity contract: every SDK (Python / TypeScript / Rust)
|
|
5
|
+
* emits identical bytes for the same input. Consumers (apcore-cli, apcore-mcp,
|
|
6
|
+
* apcore-a2a, downstream CLIs) MUST delegate to these formatters rather than
|
|
7
|
+
* reimplementing.
|
|
8
|
+
*
|
|
9
|
+
* See apcore-toolkit/docs/features/formatting.md § Tabular Formats.
|
|
10
|
+
*/
|
|
11
|
+
export interface FormatCsvOptions {
|
|
12
|
+
/** Prepend a UTF-8 BOM for Excel-locale users. Default false. */
|
|
13
|
+
bom?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Render rows as RFC 4180 CSV.
|
|
17
|
+
*
|
|
18
|
+
* Header columns are the union of keys across all rows, preserved in insertion
|
|
19
|
+
* order from first occurrence. Rows missing a key emit an empty cell.
|
|
20
|
+
* Non-scalar values are serialized as canonical JSON inside the cell. Cells
|
|
21
|
+
* containing `,`, `"`, `\n`, or `\r` are quote-wrapped with embedded `"`
|
|
22
|
+
* doubled. Line terminator is CRLF.
|
|
23
|
+
*/
|
|
24
|
+
export declare function formatCsv(rows: Iterable<Record<string, unknown>>, options?: FormatCsvOptions): string;
|
|
25
|
+
/**
|
|
26
|
+
* Render rows as JSON Lines. Each row is canonical compact JSON; LF terminator;
|
|
27
|
+
* no trailing blank line.
|
|
28
|
+
*/
|
|
29
|
+
export declare function formatJsonl(rows: Iterable<Record<string, unknown>>): string;
|
|
30
|
+
//# sourceMappingURL=tabular.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabular.d.ts","sourceRoot":"","sources":["../../src/formatting/tabular.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,MAAM,WAAW,gBAAgB;IAC/B,iEAAiE;IACjE,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CACvB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACvC,OAAO,GAAE,gBAAqB,GAC7B,MAAM,CAuBR;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAI3E"}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Byte-equivalent tabular data formatters: CSV and JSONL.
|
|
3
|
+
*
|
|
4
|
+
* Cross-SDK byte-identity contract: every SDK (Python / TypeScript / Rust)
|
|
5
|
+
* emits identical bytes for the same input. Consumers (apcore-cli, apcore-mcp,
|
|
6
|
+
* apcore-a2a, downstream CLIs) MUST delegate to these formatters rather than
|
|
7
|
+
* reimplementing.
|
|
8
|
+
*
|
|
9
|
+
* See apcore-toolkit/docs/features/formatting.md § Tabular Formats.
|
|
10
|
+
*/
|
|
11
|
+
const BOM = "\uFEFF";
|
|
12
|
+
/**
|
|
13
|
+
* Render rows as RFC 4180 CSV.
|
|
14
|
+
*
|
|
15
|
+
* Header columns are the union of keys across all rows, preserved in insertion
|
|
16
|
+
* order from first occurrence. Rows missing a key emit an empty cell.
|
|
17
|
+
* Non-scalar values are serialized as canonical JSON inside the cell. Cells
|
|
18
|
+
* containing `,`, `"`, `\n`, or `\r` are quote-wrapped with embedded `"`
|
|
19
|
+
* doubled. Line terminator is CRLF.
|
|
20
|
+
*/
|
|
21
|
+
export function formatCsv(rows, options = {}) {
|
|
22
|
+
const rowsArr = Array.from(rows);
|
|
23
|
+
if (rowsArr.length === 0)
|
|
24
|
+
return "";
|
|
25
|
+
const keys = [];
|
|
26
|
+
const seen = new Set();
|
|
27
|
+
for (const row of rowsArr) {
|
|
28
|
+
for (const k of Object.keys(row)) {
|
|
29
|
+
if (!seen.has(k)) {
|
|
30
|
+
seen.add(k);
|
|
31
|
+
keys.push(k);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
const lines = [csvJoin(keys)];
|
|
36
|
+
for (const row of rowsArr) {
|
|
37
|
+
const cells = keys.map((k) => csvCell(row[k]));
|
|
38
|
+
lines.push(csvJoin(cells));
|
|
39
|
+
}
|
|
40
|
+
const body = lines.join("\r\n") + "\r\n";
|
|
41
|
+
return options.bom ? BOM + body : body;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Render rows as JSON Lines. Each row is canonical compact JSON; LF terminator;
|
|
45
|
+
* no trailing blank line.
|
|
46
|
+
*/
|
|
47
|
+
export function formatJsonl(rows) {
|
|
48
|
+
const rowsArr = Array.from(rows);
|
|
49
|
+
if (rowsArr.length === 0)
|
|
50
|
+
return "";
|
|
51
|
+
return rowsArr.map(canonicalJson).join("\n") + "\n";
|
|
52
|
+
}
|
|
53
|
+
function csvJoin(cells) {
|
|
54
|
+
return cells.map(csvEscape).join(",");
|
|
55
|
+
}
|
|
56
|
+
function csvEscape(value) {
|
|
57
|
+
if (value.indexOf(",") >= 0 ||
|
|
58
|
+
value.indexOf('"') >= 0 ||
|
|
59
|
+
value.indexOf("\n") >= 0 ||
|
|
60
|
+
value.indexOf("\r") >= 0) {
|
|
61
|
+
return '"' + value.replace(/"/g, '""') + '"';
|
|
62
|
+
}
|
|
63
|
+
return value;
|
|
64
|
+
}
|
|
65
|
+
function csvCell(value) {
|
|
66
|
+
if (value === null || value === undefined)
|
|
67
|
+
return "";
|
|
68
|
+
if (typeof value === "boolean")
|
|
69
|
+
return value ? "true" : "false";
|
|
70
|
+
if (typeof value === "string")
|
|
71
|
+
return value;
|
|
72
|
+
if (typeof value === "number")
|
|
73
|
+
return canonicalNumber(value);
|
|
74
|
+
if (typeof value === "bigint")
|
|
75
|
+
return value.toString();
|
|
76
|
+
if (typeof value === "object")
|
|
77
|
+
return canonicalJson(value);
|
|
78
|
+
return String(value);
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Canonical compact JSON matching Python `json.dumps(value, ensure_ascii=False,
|
|
82
|
+
* separators=(',', ':'), sort_keys=False)`. JavaScript's JSON.stringify with no
|
|
83
|
+
* indent already produces this form: no whitespace between tokens, preserved
|
|
84
|
+
* insertion order for string keys (ES2015+), unicode preserved unescaped.
|
|
85
|
+
*/
|
|
86
|
+
function canonicalJson(value) {
|
|
87
|
+
return JSON.stringify(value);
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Canonical number rendering matching the Python reference impl. JavaScript's
|
|
91
|
+
* default Number→String conversion already drops trailing `.0` from
|
|
92
|
+
* whole-number floats and preserves fractional values; NaN/Inf collapse to
|
|
93
|
+
* empty (CSV has no representation).
|
|
94
|
+
*/
|
|
95
|
+
function canonicalNumber(value) {
|
|
96
|
+
if (!Number.isFinite(value))
|
|
97
|
+
return "";
|
|
98
|
+
return String(value);
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=tabular.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabular.js","sourceRoot":"","sources":["../../src/formatting/tabular.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -6,8 +6,8 @@ export { enrichSchemaDescriptions } from './schema-utils.js';
|
|
|
6
6
|
export { resolveRef, resolveSchema, deepResolveRefs, extractInputSchema, extractOutputSchema, } from './openapi.js';
|
|
7
7
|
export { annotationsToDict, moduleToDict, modulesToDicts, } from './serializers.js';
|
|
8
8
|
export { resolveTarget } from './resolve-target.js';
|
|
9
|
-
export { toMarkdown, formatSchema, formatModule, formatModules, } from './formatting/index.js';
|
|
10
|
-
export type { SchemaStyle, ModuleStyle, GroupBy, FormatSchemaOptions, FormatModuleOptions, FormatModulesOptions, } from './formatting/index.js';
|
|
9
|
+
export { toMarkdown, formatSchema, formatModule, formatModules, formatCsv, formatJsonl, } from './formatting/index.js';
|
|
10
|
+
export type { SchemaStyle, ModuleStyle, GroupBy, FormatSchemaOptions, FormatModuleOptions, FormatModulesOptions, FormatCsvOptions, } from './formatting/index.js';
|
|
11
11
|
export { AIEnhancer } from './ai-enhancer.js';
|
|
12
12
|
export type { AIEnhancerOptions, Enhancer } from './ai-enhancer.js';
|
|
13
13
|
export { DisplayResolver } from './display/resolver.js';
|
|
@@ -21,6 +21,7 @@ export { HTTPProxyRegistryWriter, HTTPProxyRegistryWriterError, } from './output
|
|
|
21
21
|
export type { HTTPProxyRegistryWriterOptions, ProxyRegistry, } from './output/http-proxy-writer.js';
|
|
22
22
|
export { getWriter } from './output/factory.js';
|
|
23
23
|
export type { WriteResult, VerifyResult, Verifier } from './output/types.js';
|
|
24
|
+
export { createWriteResult } from './output/types.js';
|
|
24
25
|
export { WriteError, InvalidFormatError } from './output/errors.js';
|
|
25
26
|
export { YAMLVerifier, SyntaxVerifier, RegistryVerifier, MagicBytesVerifier, JSONVerifier, runVerifierChain, } from './output/verifiers.js';
|
|
26
27
|
export declare const VERSION: string;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAU9D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACL,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,aAAa,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAU9D,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACL,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,SAAS,EACT,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,WAAW,EACX,WAAW,EACX,OAAO,EACP,mBAAmB,EACnB,mBAAmB,EACnB,oBAAoB,EACpB,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,YAAY,EACV,qBAAqB,EACrB,eAAe,EACf,cAAc,GACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACtE,YAAY,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EACL,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AACvC,YAAY,EACV,8BAA8B,EAC9B,aAAa,GACd,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EACL,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAK/B,eAAO,MAAM,OAAO,EAAE,MAAqB,CAAC;AAQ5C,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAG7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAEnD;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,iBAAiB,CAE5E"}
|
package/dist/index.js
CHANGED
|
@@ -12,7 +12,7 @@ export { enrichSchemaDescriptions } from './schema-utils.js';
|
|
|
12
12
|
export { resolveRef, resolveSchema, deepResolveRefs, extractInputSchema, extractOutputSchema, } from './openapi.js';
|
|
13
13
|
export { annotationsToDict, moduleToDict, modulesToDicts, } from './serializers.js';
|
|
14
14
|
export { resolveTarget } from './resolve-target.js';
|
|
15
|
-
export { toMarkdown, formatSchema, formatModule, formatModules, } from './formatting/index.js';
|
|
15
|
+
export { toMarkdown, formatSchema, formatModule, formatModules, formatCsv, formatJsonl, } from './formatting/index.js';
|
|
16
16
|
export { AIEnhancer } from './ai-enhancer.js';
|
|
17
17
|
export { DisplayResolver } from './display/resolver.js';
|
|
18
18
|
export { BindingLoader, BindingLoadError } from './binding-loader.js';
|
|
@@ -21,6 +21,9 @@ export { TypeScriptWriter } from './output/typescript-writer.js';
|
|
|
21
21
|
export { RegistryWriter } from './output/registry-writer.js';
|
|
22
22
|
export { HTTPProxyRegistryWriter, HTTPProxyRegistryWriterError, } from './output/http-proxy-writer.js';
|
|
23
23
|
export { getWriter } from './output/factory.js';
|
|
24
|
+
// TS-only ergonomic factory: Python/Rust callers construct WriteResult directly
|
|
25
|
+
// via dataclass/struct literals. No counterpart in apcore-toolkit-python/-rust.
|
|
26
|
+
export { createWriteResult } from './output/types.js';
|
|
24
27
|
export { WriteError, InvalidFormatError } from './output/errors.js';
|
|
25
28
|
export { YAMLVerifier, SyntaxVerifier, RegistryVerifier, MagicBytesVerifier, JSONVerifier, runVerifierChain, } from './output/verifiers.js';
|
|
26
29
|
import { createRequire } from 'node:module';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9D,2BAA2B;AAC3B,2BAA2B;AAC3B,+EAA+E;AAC/E,0EAA0E;AAC1E,4EAA4E;AAC5E,+CAA+C;AAC/C,yDAAyD;AAEzD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACL,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,aAAa,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9D,2BAA2B;AAC3B,2BAA2B;AAC3B,+EAA+E;AAC/E,0EAA0E;AAC1E,4EAA4E;AAC5E,+CAA+C;AAC/C,yDAAyD;AAEzD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EACL,UAAU,EACV,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,iBAAiB,EACjB,YAAY,EACZ,cAAc,GACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACL,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,SAAS,EACT,WAAW,GACZ,MAAM,uBAAuB,CAAC;AAU/B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMxD,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEtE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EACL,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,+BAA+B,CAAC;AAKvC,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAEhD,gFAAgF;AAChF,gFAAgF;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EACL,YAAY,EACZ,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,GACjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAChD,MAAM,IAAI,GAAG,QAAQ,CAAC,iBAAiB,CAAwB,CAAC;AAChE,MAAM,CAAC,MAAM,OAAO,GAAW,IAAI,CAAC,OAAO,CAAC;AAE5C,iEAAiE;AACjE,2EAA2E;AAC3E,oEAAoE;AACpE,mEAAmE;AACnE,sEAAsE;AACtE,8BAA8B;AAC9B,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE7D,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,cAAc,CAAC;AAG3D;;;;GAIG;AACH,MAAM,UAAU,0BAA0B,CAAC,MAAc;IACvD,OAAO,YAAY,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-proxy-writer.d.ts","sourceRoot":"","sources":["../../src/output/http-proxy-writer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAWH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA4B9C;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjD,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AAED;;;GAGG;AACH,qBAAa,4BAA6B,SAAQ,KAAK;gBACzC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAI9C;AAiDD;;;;;GAKG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAA+B;IAClE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;gBAE7B,OAAO,EAAE,8BAA8B;
|
|
1
|
+
{"version":3,"file":"http-proxy-writer.d.ts","sourceRoot":"","sources":["../../src/output/http-proxy-writer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAWH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA4B9C;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,iEAAiE;IACjE,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjD,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AAED;;;GAGG;AACH,qBAAa,4BAA6B,SAAQ,KAAK;gBACzC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;CAI9C;AAiDD;;;;;GAKG;AACH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAA+B;IAClE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;gBAE7B,OAAO,EAAE,8BAA8B;IAkCnD;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,OAAO,EAAE,aAAa,EAAE,EAAE,QAAQ,EAAE,aAAa,GAAG,WAAW,EAAE;IAevE,OAAO,CAAC,mBAAmB;CA0I5B"}
|
|
@@ -109,6 +109,21 @@ export class HTTPProxyRegistryWriter {
|
|
|
109
109
|
throw new Error('HTTPProxyRegistryWriter: global fetch is unavailable — pass `fetchImpl` explicitly or run on Node 20+.');
|
|
110
110
|
}
|
|
111
111
|
this.fetchImpl = f;
|
|
112
|
+
// Validate `baseUrl` scheme up-front so a misconfigured writer fails at
|
|
113
|
+
// construction rather than per request. Mirrors Rust's `InvalidBaseUrl`
|
|
114
|
+
// check in `apcore-toolkit-rust/src/output/http_proxy_writer.rs`. Only
|
|
115
|
+
// `http` and `https` are accepted — `file://`, `data://`, etc. would be
|
|
116
|
+
// surprising attack surface for a writer that forwards arbitrary inputs.
|
|
117
|
+
let parsed;
|
|
118
|
+
try {
|
|
119
|
+
parsed = new URL(options.baseUrl);
|
|
120
|
+
}
|
|
121
|
+
catch {
|
|
122
|
+
throw new HTTPProxyRegistryWriterError('constructor', `Invalid base_url ${JSON.stringify(options.baseUrl)} — must be a valid absolute URL`);
|
|
123
|
+
}
|
|
124
|
+
if (parsed.protocol !== 'http:' && parsed.protocol !== 'https:') {
|
|
125
|
+
throw new HTTPProxyRegistryWriterError('constructor', `Invalid base_url protocol "${parsed.protocol}" — must be http or https`);
|
|
126
|
+
}
|
|
112
127
|
}
|
|
113
128
|
/**
|
|
114
129
|
* Register each module's HTTP proxy into the registry.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-proxy-writer.js","sourceRoot":"","sources":["../../src/output/http-proxy-writer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"http-proxy-writer.js","sourceRoot":"","sources":["../../src/output/http-proxy-writer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry-writer.d.ts","sourceRoot":"","sources":["../../src/output/registry-writer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAK9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD;;;;;;GAMG;AACH,qBAAa,cAAc;IACzB;;;;;;;;;;;OAWG;IACG,KAAK,CACT,OAAO,EAAE,aAAa,EAAE,EACxB,QAAQ,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;QAAC,SAAS,CAAC,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,EAChG,OAAO,CAAC,EAAE,gBAAgB,GAAG;QAAE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAC1D,OAAO,CAAC,WAAW,EAAE,CAAC;YAwDX,iBAAiB;
|
|
1
|
+
{"version":3,"file":"registry-writer.d.ts","sourceRoot":"","sources":["../../src/output/registry-writer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAK9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD;;;;;;GAMG;AACH,qBAAa,cAAc;IACzB;;;;;;;;;;;OAWG;IACG,KAAK,CACT,OAAO,EAAE,aAAa,EAAE,EACxB,QAAQ,EAAE;QAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAAC;QAAC,SAAS,CAAC,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,EAChG,OAAO,CAAC,EAAE,gBAAgB,GAAG;QAAE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAC1D,OAAO,CAAC,WAAW,EAAE,CAAC;YAwDX,iBAAiB;CA+BhC"}
|
|
@@ -78,18 +78,14 @@ export class RegistryWriter {
|
|
|
78
78
|
outputSchema: jsonSchemaToTypeBox(mod.outputSchema),
|
|
79
79
|
description: mod.description,
|
|
80
80
|
documentation: mod.documentation,
|
|
81
|
-
tags:
|
|
81
|
+
tags: [...mod.tags],
|
|
82
82
|
version: mod.version,
|
|
83
83
|
// FunctionModule.annotations stores its input as-is, so we must pass the
|
|
84
84
|
// camelCase runtime ModuleAnnotations (not the snake_case wire form
|
|
85
85
|
// emitted by annotationsToDict, which is for YAML/serializer output).
|
|
86
86
|
annotations: mod.annotations,
|
|
87
|
-
metadata:
|
|
88
|
-
examples:
|
|
89
|
-
// NOTE: ScannedModule carries a `display` field (populated by DisplayResolver).
|
|
90
|
-
// FunctionModule in apcore-js does not currently expose a display slot, so
|
|
91
|
-
// the display metadata is intentionally omitted here. In Rust, ModuleDescriptor
|
|
92
|
-
// includes a display field — once apcore-js exposes one, wire it here.
|
|
87
|
+
metadata: { ...mod.metadata },
|
|
88
|
+
examples: [...mod.examples],
|
|
93
89
|
});
|
|
94
90
|
}
|
|
95
91
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry-writer.js","sourceRoot":"","sources":["../../src/output/registry-writer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"registry-writer.js","sourceRoot":"","sources":["../../src/output/registry-writer.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,8 +14,23 @@ export declare class YAMLWriter {
|
|
|
14
14
|
*
|
|
15
15
|
* @param modules - Scanned modules to write.
|
|
16
16
|
* @param outputDir - Directory to write binding files into (created if absent).
|
|
17
|
-
* @param options - Optional write options: `dryRun`, `verify`, `verifiers
|
|
17
|
+
* @param options - Optional write options: `dryRun`, `verify`, `verifiers`,
|
|
18
|
+
* `errorMode: "throw" | "collect"` (default `"throw"`). With `"throw"`,
|
|
19
|
+
* the first per-module write failure raises a {@link WriteError} and
|
|
20
|
+
* aborts the batch; with `"collect"`, per-module failures are recorded
|
|
21
|
+
* as `WriteResult` entries with `verified: false` and a non-null
|
|
22
|
+
* `verificationError`, and the batch continues. Mirrors the same flag
|
|
23
|
+
* on {@link RegistryWriter} and the Python / Rust SDKs.
|
|
18
24
|
* @returns Array of WriteResult, one per module.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```ts
|
|
28
|
+
* // "collect" mode — never throws on a single bad module
|
|
29
|
+
* const results = new YAMLWriter().write(modules, './bindings', {
|
|
30
|
+
* errorMode: 'collect',
|
|
31
|
+
* });
|
|
32
|
+
* const failed = results.filter((r) => !r.verified);
|
|
33
|
+
* ```
|
|
19
34
|
*/
|
|
20
35
|
write(modules: ScannedModule[], outputDir: string, options?: FileWriteOptions): WriteResult[];
|
|
21
36
|
private _buildBinding;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yaml-writer.d.ts","sourceRoot":"","sources":["../../src/output/yaml-writer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAK9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD;;;;;;GAMG;AACH,qBAAa,UAAU;IACrB
|
|
1
|
+
{"version":3,"file":"yaml-writer.d.ts","sourceRoot":"","sources":["../../src/output/yaml-writer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAK9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzD;;;;;;GAMG;AACH,qBAAa,UAAU;IACrB;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,KAAK,CACH,OAAO,EAAE,aAAa,EAAE,EACxB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,gBAAgB,GACzB,WAAW,EAAE;IAqHhB,OAAO,CAAC,aAAa;CA2BtB"}
|
|
@@ -19,8 +19,23 @@ export class YAMLWriter {
|
|
|
19
19
|
*
|
|
20
20
|
* @param modules - Scanned modules to write.
|
|
21
21
|
* @param outputDir - Directory to write binding files into (created if absent).
|
|
22
|
-
* @param options - Optional write options: `dryRun`, `verify`, `verifiers
|
|
22
|
+
* @param options - Optional write options: `dryRun`, `verify`, `verifiers`,
|
|
23
|
+
* `errorMode: "throw" | "collect"` (default `"throw"`). With `"throw"`,
|
|
24
|
+
* the first per-module write failure raises a {@link WriteError} and
|
|
25
|
+
* aborts the batch; with `"collect"`, per-module failures are recorded
|
|
26
|
+
* as `WriteResult` entries with `verified: false` and a non-null
|
|
27
|
+
* `verificationError`, and the batch continues. Mirrors the same flag
|
|
28
|
+
* on {@link RegistryWriter} and the Python / Rust SDKs.
|
|
23
29
|
* @returns Array of WriteResult, one per module.
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```ts
|
|
33
|
+
* // "collect" mode — never throws on a single bad module
|
|
34
|
+
* const results = new YAMLWriter().write(modules, './bindings', {
|
|
35
|
+
* errorMode: 'collect',
|
|
36
|
+
* });
|
|
37
|
+
* const failed = results.filter((r) => !r.verified);
|
|
38
|
+
* ```
|
|
24
39
|
*/
|
|
25
40
|
write(modules, outputDir, options) {
|
|
26
41
|
const dryRun = options?.dryRun ?? false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yaml-writer.js","sourceRoot":"","sources":["../../src/output/yaml-writer.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACpG,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAGrD;;;;;;GAMG;AACH,MAAM,OAAO,UAAU;IACrB
|
|
1
|
+
{"version":3,"file":"yaml-writer.js","sourceRoot":"","sources":["../../src/output/yaml-writer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "apcore-toolkit",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "Shared scanner, schema extraction, and output toolkit for apcore framework adapters",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
},
|
|
56
56
|
"dependencies": {
|
|
57
57
|
"ajv": "^8.17.0",
|
|
58
|
-
"apcore-js": ">=0.21.
|
|
58
|
+
"apcore-js": ">=0.21.0",
|
|
59
59
|
"js-yaml": "^4.1.0"
|
|
60
60
|
},
|
|
61
61
|
"peerDependencies": {
|