@clowder-ai/plugin-contract 0.1.0-beta.9 → 0.3.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/codegen/generate-contract.d.ts +6 -0
- package/dist/codegen/generate-contract.d.ts.map +1 -1
- package/dist/codegen/generate-contract.js +338 -44
- package/dist/codegen/generate-contract.js.map +1 -1
- package/dist/conformance/fixtures.d.ts +3 -1
- package/dist/conformance/fixtures.d.ts.map +1 -1
- package/dist/conformance/fixtures.js +2 -1
- package/dist/conformance/fixtures.js.map +1 -1
- package/dist/conformance/index.d.ts +3 -3
- package/dist/conformance/index.d.ts.map +1 -1
- package/dist/conformance/index.js +3 -3
- package/dist/conformance/index.js.map +1 -1
- package/dist/conformance/messaging-behavior-fixture.d.ts +12 -0
- package/dist/conformance/messaging-behavior-fixture.d.ts.map +1 -0
- package/dist/conformance/messaging-behavior-fixture.js +24 -0
- package/dist/conformance/messaging-behavior-fixture.js.map +1 -0
- package/dist/conformance/messaging-loopback-adapter.d.ts +0 -3
- package/dist/conformance/messaging-loopback-adapter.d.ts.map +1 -1
- package/dist/conformance/messaging-loopback-adapter.js +1 -77
- package/dist/conformance/messaging-loopback-adapter.js.map +1 -1
- package/dist/conformance/messaging-loopback-state.d.ts +0 -6
- package/dist/conformance/messaging-loopback-state.d.ts.map +1 -1
- package/dist/conformance/messaging-loopback-state.js +0 -20
- package/dist/conformance/messaging-loopback-state.js.map +1 -1
- package/dist/conformance/runner.d.ts.map +1 -1
- package/dist/conformance/runner.js +3 -1
- package/dist/conformance/runner.js.map +1 -1
- package/dist/docx-materialization.d.ts +8 -0
- package/dist/docx-materialization.d.ts.map +1 -0
- package/dist/docx-materialization.js +19 -0
- package/dist/docx-materialization.js.map +1 -0
- package/dist/generated/contract.generated.d.ts +1637 -87
- package/dist/generated/contract.generated.d.ts.map +1 -1
- package/dist/generated/contract.generated.js +70 -9
- package/dist/generated/contract.generated.js.map +1 -1
- package/dist/index.d.ts +2 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -3
- package/dist/index.js.map +1 -1
- package/dist/types/index.d.ts +0 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +0 -1
- package/dist/types/index.js.map +1 -1
- package/dist/validation/catalog.d.ts +21 -0
- package/dist/validation/catalog.d.ts.map +1 -0
- package/dist/validation/catalog.js +140 -0
- package/dist/validation/catalog.js.map +1 -0
- package/dist/validation/cloud-conversation-host.d.ts +18 -0
- package/dist/validation/cloud-conversation-host.d.ts.map +1 -0
- package/dist/validation/cloud-conversation-host.js +83 -0
- package/dist/validation/cloud-conversation-host.js.map +1 -0
- package/dist/validation/companion-bridge.d.ts +6 -0
- package/dist/validation/companion-bridge.d.ts.map +1 -0
- package/dist/validation/companion-bridge.js +198 -0
- package/dist/validation/companion-bridge.js.map +1 -0
- package/dist/validation/docx-materialization.d.ts +6 -0
- package/dist/validation/docx-materialization.d.ts.map +1 -0
- package/dist/validation/docx-materialization.js +36 -0
- package/dist/validation/docx-materialization.js.map +1 -0
- package/dist/validation/index.d.ts +9 -1
- package/dist/validation/index.d.ts.map +1 -1
- package/dist/validation/index.js +9 -1
- package/dist/validation/index.js.map +1 -1
- package/dist/validation/manifest.d.ts.map +1 -1
- package/dist/validation/manifest.js +317 -0
- package/dist/validation/manifest.js.map +1 -1
- package/dist/validation/members.d.ts +4 -0
- package/dist/validation/members.d.ts.map +1 -0
- package/dist/validation/members.js +11 -0
- package/dist/validation/members.js.map +1 -0
- package/dist/validation/messaging-semantic.d.ts.map +1 -1
- package/dist/validation/messaging-semantic.js +98 -0
- package/dist/validation/messaging-semantic.js.map +1 -1
- package/dist/validation/messaging-wire.d.ts +42 -0
- package/dist/validation/messaging-wire.d.ts.map +1 -0
- package/dist/validation/messaging-wire.js +184 -0
- package/dist/validation/messaging-wire.js.map +1 -0
- package/dist/validation/operation-rows.d.ts +25 -0
- package/dist/validation/operation-rows.d.ts.map +1 -0
- package/dist/validation/operation-rows.js +135 -0
- package/dist/validation/operation-rows.js.map +1 -0
- package/dist/validation/signals.d.ts +1 -10
- package/dist/validation/signals.d.ts.map +1 -1
- package/dist/validation/signals.js +0 -174
- package/dist/validation/signals.js.map +1 -1
- package/dist/variant.d.ts +114 -0
- package/dist/variant.d.ts.map +1 -0
- package/dist/variant.js +305 -0
- package/dist/variant.js.map +1 -0
- package/dist/wire/constants.d.ts +2 -1
- package/dist/wire/constants.d.ts.map +1 -1
- package/dist/wire/constants.js +2 -1
- package/dist/wire/constants.js.map +1 -1
- package/dist/wire/dispatch.d.ts +49 -0
- package/dist/wire/dispatch.d.ts.map +1 -0
- package/dist/wire/dispatch.js +870 -0
- package/dist/wire/dispatch.js.map +1 -0
- package/dist/wire/disposition-fixtures.d.ts +10 -2
- package/dist/wire/disposition-fixtures.d.ts.map +1 -1
- package/dist/wire/disposition-fixtures.js +539 -108
- package/dist/wire/disposition-fixtures.js.map +1 -1
- package/dist/wire/disposition.d.ts +3 -4
- package/dist/wire/disposition.d.ts.map +1 -1
- package/dist/wire/disposition.js +5 -16
- package/dist/wire/disposition.js.map +1 -1
- package/dist/wire/envelope.d.ts +31 -1
- package/dist/wire/envelope.d.ts.map +1 -1
- package/dist/wire/envelope.js +48 -1
- package/dist/wire/envelope.js.map +1 -1
- package/dist/wire/errors.d.ts +31 -1
- package/dist/wire/errors.d.ts.map +1 -1
- package/dist/wire/errors.js +36 -0
- package/dist/wire/errors.js.map +1 -1
- package/dist/wire/handshake-byte-bounds.d.ts.map +1 -1
- package/dist/wire/handshake-byte-bounds.js +1 -4
- package/dist/wire/handshake-byte-bounds.js.map +1 -1
- package/dist/wire/handshake.d.ts +12 -11
- package/dist/wire/handshake.d.ts.map +1 -1
- package/dist/wire/handshake.js +11 -15
- package/dist/wire/handshake.js.map +1 -1
- package/dist/wire/index.d.ts +15 -13
- package/dist/wire/index.d.ts.map +1 -1
- package/dist/wire/index.js +30 -9
- package/dist/wire/index.js.map +1 -1
- package/dist/wire/lifecycle-byte-bounds.d.ts +40 -0
- package/dist/wire/lifecycle-byte-bounds.d.ts.map +1 -0
- package/dist/wire/lifecycle-byte-bounds.js +148 -0
- package/dist/wire/lifecycle-byte-bounds.js.map +1 -0
- package/dist/wire/messaging-byte-bounds.d.ts +62 -0
- package/dist/wire/messaging-byte-bounds.d.ts.map +1 -0
- package/dist/wire/messaging-byte-bounds.js +581 -0
- package/dist/wire/messaging-byte-bounds.js.map +1 -0
- package/dist/wire/registry.d.ts +58 -107
- package/dist/wire/registry.d.ts.map +1 -1
- package/dist/wire/registry.js +45 -107
- package/dist/wire/registry.js.map +1 -1
- package/dist/wire/row-shapes.d.ts +82 -81
- package/dist/wire/row-shapes.d.ts.map +1 -1
- package/dist/wire/row-shapes.js +30 -3
- package/dist/wire/row-shapes.js.map +1 -1
- package/fixtures/behavior/messaging/adversarial-invariants.json +62 -183
- package/fixtures/manifest/invalid/contract-version-leading-zero-prerelease.json +1 -3
- package/fixtures/manifest/invalid/contract-version-range.json +1 -3
- package/fixtures/manifest/invalid/duplicate-signal-type.json +4 -4
- package/fixtures/manifest/invalid/icon-package-escape.json +20 -0
- package/fixtures/manifest/invalid/ipc-empty-entrypoint.json +1 -3
- package/fixtures/manifest/invalid/plugin-version-leading-zero-prerelease.json +1 -3
- package/fixtures/manifest/invalid/plugin-version-not-semver.json +1 -3
- package/fixtures/manifest/invalid/semver-empty-build-metadata.json +1 -3
- package/fixtures/manifest/invalid/stdio-missing-entrypoint.json +1 -3
- package/fixtures/manifest/invalid/user-authored-lifecycle.json +1 -3
- package/fixtures/manifest/valid/localized-product-metadata.json +25 -0
- package/fixtures/manifest/valid/minimal-builtin.json +1 -3
- package/fixtures/manifest/valid/protocol-intrinsic-lifecycle.json +1 -3
- package/fixtures/manifest/valid/semver-build-metadata.json +1 -3
- package/fixtures/manifest/valid/stdio-entrypoint.json +1 -3
- package/fixtures/messaging/valid/subscription-delivery.json +1 -1
- package/package.json +17 -4
- package/src/schemas/behavior-fixture.schema.json +800 -152
- package/src/schemas/catalog.schema.json +91 -0
- package/src/schemas/companion-bridge.schema.json +2256 -0
- package/src/schemas/docx-materialization.schema.json +302 -0
- package/src/schemas/manifest.schema.json +2196 -107
- package/src/schemas/messaging.schema.json +692 -41
- package/src/schemas/plugin-metadata.schema.json +62 -0
- package/src/schemas/signal.schema.json +68 -78
- package/dist/types/capability.d.ts +0 -4
- package/dist/types/capability.d.ts.map +0 -1
- package/dist/types/capability.js +0 -11
- package/dist/types/capability.js.map +0 -1
- package/dist/wire/grants.d.ts +0 -57
- package/dist/wire/grants.d.ts.map +0 -1
- package/dist/wire/grants.js +0 -59
- package/dist/wire/grants.js.map +0 -1
- package/dist/wire/signal-byte-bounds.d.ts +0 -97
- package/dist/wire/signal-byte-bounds.d.ts.map +0 -1
- package/dist/wire/signal-byte-bounds.js +0 -229
- package/dist/wire/signal-byte-bounds.js.map +0 -1
- package/fixtures/manifest/invalid/unknown-capability.json +0 -19
- package/fixtures/signals/invalid/destination-injection.json +0 -15
- package/fixtures/signals/invalid/non-utc-occurred-at.json +0 -12
- package/fixtures/signals/valid/feishu-meeting-artifact.json +0 -18
|
@@ -4,6 +4,7 @@ export interface JsonSchema {
|
|
|
4
4
|
readonly type?: string | readonly string[];
|
|
5
5
|
readonly enum?: string[];
|
|
6
6
|
readonly const?: unknown;
|
|
7
|
+
readonly pattern?: string;
|
|
7
8
|
readonly properties?: Record<string, JsonSchema>;
|
|
8
9
|
readonly required?: readonly string[];
|
|
9
10
|
readonly items?: JsonSchema;
|
|
@@ -12,14 +13,19 @@ export interface JsonSchema {
|
|
|
12
13
|
readonly oneOf?: readonly JsonSchema[];
|
|
13
14
|
readonly anyOf?: readonly JsonSchema[];
|
|
14
15
|
readonly allOf?: readonly JsonSchema[];
|
|
16
|
+
readonly not?: JsonSchema;
|
|
15
17
|
readonly additionalProperties?: boolean | JsonSchema;
|
|
16
18
|
readonly [key: string]: unknown;
|
|
17
19
|
}
|
|
18
20
|
export interface ContractSchemas {
|
|
21
|
+
readonly pluginMetadata: JsonSchema;
|
|
19
22
|
readonly manifest: JsonSchema;
|
|
23
|
+
readonly catalog: JsonSchema;
|
|
20
24
|
readonly signals: JsonSchema;
|
|
21
25
|
readonly messaging: JsonSchema;
|
|
22
26
|
readonly physicalLimb: JsonSchema;
|
|
27
|
+
readonly docxMaterialization: JsonSchema;
|
|
28
|
+
readonly companionBridge: JsonSchema;
|
|
23
29
|
readonly behavior: JsonSchema;
|
|
24
30
|
}
|
|
25
31
|
export declare function loadContractSchemas(): Promise<ContractSchemas>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-contract.d.ts","sourceRoot":"","sources":["../../src/codegen/generate-contract.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC5C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IACrD,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;CAC/B;
|
|
1
|
+
{"version":3,"file":"generate-contract.d.ts","sourceRoot":"","sources":["../../src/codegen/generate-contract.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC5C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;IAC3C,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACjD,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACtC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IACrD,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,cAAc,EAAE,UAAU,CAAC;IACpC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;IAClC,QAAQ,CAAC,mBAAmB,EAAE,UAAU,CAAC;IACzC,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC;CAC/B;AAYD,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,eAAe,CAAC,CAoBpE;AAgrBD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,eAAe,GAAG,MAAM,CAkDvE;AAED,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAI5D;AAED,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC,CAS/D"}
|
|
@@ -3,17 +3,22 @@ import { fileURLToPath } from 'node:url';
|
|
|
3
3
|
import { dirname, resolve } from 'node:path';
|
|
4
4
|
import { isDeepStrictEqual } from 'node:util';
|
|
5
5
|
const GENERATED_URL = new URL('../generated/contract.generated.ts', import.meta.url);
|
|
6
|
-
const
|
|
6
|
+
const PLUGIN_METADATA_SCHEMA_PREFIX = 'https://clowder-ai.dev/schemas/plugin-metadata/v1#/$defs/';
|
|
7
7
|
const SIGNAL_SCHEMA_PREFIX = 'https://clowder-ai.dev/schemas/signals/v0.2#/$defs/';
|
|
8
|
+
const MESSAGING_SCHEMA_PREFIX = 'https://clowder-ai.dev/schemas/messaging/v0.1#/$defs/';
|
|
8
9
|
async function readSchema(url) {
|
|
9
10
|
return JSON.parse(await readFile(url, 'utf8'));
|
|
10
11
|
}
|
|
11
12
|
export async function loadContractSchemas() {
|
|
12
13
|
return {
|
|
14
|
+
pluginMetadata: await readSchema(new URL('../schemas/plugin-metadata.schema.json', import.meta.url)),
|
|
13
15
|
manifest: await readSchema(new URL('../schemas/manifest.schema.json', import.meta.url)),
|
|
16
|
+
catalog: await readSchema(new URL('../schemas/catalog.schema.json', import.meta.url)),
|
|
14
17
|
signals: await readSchema(new URL('../schemas/signal.schema.json', import.meta.url)),
|
|
15
18
|
messaging: await readSchema(new URL('../schemas/messaging.schema.json', import.meta.url)),
|
|
16
19
|
physicalLimb: await readSchema(new URL('../schemas/physical-limb.schema.json', import.meta.url)),
|
|
20
|
+
docxMaterialization: await readSchema(new URL('../schemas/docx-materialization.schema.json', import.meta.url)),
|
|
21
|
+
companionBridge: await readSchema(new URL('../schemas/companion-bridge.schema.json', import.meta.url)),
|
|
17
22
|
behavior: await readSchema(new URL('../schemas/behavior-fixture.schema.json', import.meta.url)),
|
|
18
23
|
};
|
|
19
24
|
}
|
|
@@ -30,11 +35,15 @@ function literal(value) {
|
|
|
30
35
|
throw new Error(`Unsupported schema literal: ${JSON.stringify(value)}`);
|
|
31
36
|
}
|
|
32
37
|
function refName(ref) {
|
|
33
|
-
if (ref
|
|
34
|
-
return
|
|
38
|
+
if (ref.startsWith(PLUGIN_METADATA_SCHEMA_PREFIX)) {
|
|
39
|
+
return decodeURIComponent(ref.slice(PLUGIN_METADATA_SCHEMA_PREFIX.length));
|
|
40
|
+
}
|
|
35
41
|
if (ref.startsWith(SIGNAL_SCHEMA_PREFIX)) {
|
|
36
42
|
return decodeURIComponent(ref.slice(SIGNAL_SCHEMA_PREFIX.length));
|
|
37
43
|
}
|
|
44
|
+
if (ref.startsWith(MESSAGING_SCHEMA_PREFIX)) {
|
|
45
|
+
return decodeURIComponent(ref.slice(MESSAGING_SCHEMA_PREFIX.length));
|
|
46
|
+
}
|
|
38
47
|
const marker = '#/$defs/';
|
|
39
48
|
if (!ref.startsWith(marker)) {
|
|
40
49
|
throw new Error(`Unsupported schema reference: ${ref}`);
|
|
@@ -59,10 +68,37 @@ function indentContinuation(value, spaces) {
|
|
|
59
68
|
const indent = ' '.repeat(spaces);
|
|
60
69
|
return value.replaceAll('\n', `\n${indent}`);
|
|
61
70
|
}
|
|
62
|
-
function
|
|
63
|
-
|
|
71
|
+
function renderPropertyType(schema) {
|
|
72
|
+
if (schema.$ref && schema.pattern) {
|
|
73
|
+
const suffix = /^\\\.([A-Za-z0-9]+)\$$/u.exec(schema.pattern)?.[1];
|
|
74
|
+
if (!suffix) {
|
|
75
|
+
throw new Error(`Unsupported referenced string pattern: ${schema.pattern}`);
|
|
76
|
+
}
|
|
77
|
+
return `${renderType({ $ref: schema.$ref })} & \`\${string}.${suffix}\``;
|
|
78
|
+
}
|
|
79
|
+
return renderType(schema);
|
|
80
|
+
}
|
|
81
|
+
function renderObjectShape(properties, required, forbidden = new Set(), renderedProperties = {}) {
|
|
64
82
|
const entries = Object.entries(properties);
|
|
65
83
|
if (entries.length === 0) {
|
|
84
|
+
return 'Record<string, never>';
|
|
85
|
+
}
|
|
86
|
+
const fields = entries.map(([name, property]) => {
|
|
87
|
+
if (forbidden.has(name)) {
|
|
88
|
+
if (required.has(name)) {
|
|
89
|
+
throw new Error(`Schema property ${name} cannot be both required and forbidden`);
|
|
90
|
+
}
|
|
91
|
+
return ` readonly ${propertyName(name)}?: never;`;
|
|
92
|
+
}
|
|
93
|
+
const optional = required.has(name) ? '' : '?';
|
|
94
|
+
const rendered = indentContinuation(renderedProperties[name] ?? renderPropertyType(property), 2);
|
|
95
|
+
return ` readonly ${propertyName(name)}${optional}: ${rendered};`;
|
|
96
|
+
});
|
|
97
|
+
return `{\n${fields.join('\n')}\n}`;
|
|
98
|
+
}
|
|
99
|
+
function renderObject(schema) {
|
|
100
|
+
const properties = schema.properties ?? {};
|
|
101
|
+
if (Object.keys(properties).length === 0) {
|
|
66
102
|
if (schema.additionalProperties === false)
|
|
67
103
|
return 'Record<string, never>';
|
|
68
104
|
if (typeof schema.additionalProperties === 'object') {
|
|
@@ -70,13 +106,176 @@ function renderObject(schema) {
|
|
|
70
106
|
}
|
|
71
107
|
return 'Readonly<Record<string, unknown>>';
|
|
72
108
|
}
|
|
109
|
+
return renderObjectShape(properties, new Set(schema.required ?? []));
|
|
110
|
+
}
|
|
111
|
+
function renderOpenObject(schema) {
|
|
112
|
+
const structural = renderObject(schema);
|
|
113
|
+
if (structural === 'Readonly<Record<string, unknown>>')
|
|
114
|
+
return structural;
|
|
115
|
+
return structural.replace(/\n\}$/u, '\n readonly [key: string]: unknown;\n}');
|
|
116
|
+
}
|
|
117
|
+
function schemaAllowsLiteral(schema, value) {
|
|
118
|
+
if (schema.const !== undefined)
|
|
119
|
+
return isDeepStrictEqual(schema.const, value);
|
|
120
|
+
if (schema.enum)
|
|
121
|
+
return schema.enum.some((candidate) => isDeepStrictEqual(candidate, value));
|
|
122
|
+
const alternatives = schema.oneOf ?? schema.anyOf;
|
|
123
|
+
if (alternatives)
|
|
124
|
+
return alternatives.some((alternative) => schemaAllowsLiteral(alternative, value));
|
|
125
|
+
if (Array.isArray(schema.type))
|
|
126
|
+
return schema.type.some((type) => schemaAllowsLiteral({ type }, value));
|
|
127
|
+
switch (schema.type) {
|
|
128
|
+
case 'string':
|
|
129
|
+
return typeof value === 'string';
|
|
130
|
+
case 'integer':
|
|
131
|
+
return Number.isInteger(value);
|
|
132
|
+
case 'number':
|
|
133
|
+
return typeof value === 'number' && Number.isFinite(value);
|
|
134
|
+
case 'boolean':
|
|
135
|
+
return typeof value === 'boolean';
|
|
136
|
+
case 'null':
|
|
137
|
+
return value === null;
|
|
138
|
+
case 'object':
|
|
139
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
140
|
+
case 'array':
|
|
141
|
+
return Array.isArray(value);
|
|
142
|
+
case undefined:
|
|
143
|
+
return schema.$ref === undefined;
|
|
144
|
+
default:
|
|
145
|
+
return false;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
function mergeAlternativeProperty(name, base, constraint) {
|
|
149
|
+
const constraintKeys = Object.keys(constraint).filter((key) => !['description', 'const', 'enum'].includes(key));
|
|
150
|
+
if (constraintKeys.length > 0) {
|
|
151
|
+
throw new Error(`Unsupported object alternative constraint for ${name}: ${constraintKeys.join(', ')}`);
|
|
152
|
+
}
|
|
153
|
+
const values = constraint.const !== undefined ? [constraint.const] : constraint.enum;
|
|
154
|
+
if (!values)
|
|
155
|
+
return base;
|
|
156
|
+
if (!values.every((value) => schemaAllowsLiteral(base, value))) {
|
|
157
|
+
throw new Error(`Object alternative widens the base property ${name}`);
|
|
158
|
+
}
|
|
159
|
+
return constraint;
|
|
160
|
+
}
|
|
161
|
+
// JSON Schema applies object siblings and oneOf/anyOf together. Repeat the
|
|
162
|
+
// shared shape in every TypeScript arm, while allowing branches only to narrow
|
|
163
|
+
// shared fields to literals the base schema already admits.
|
|
164
|
+
function renderObjectAlternatives(schema, alternatives) {
|
|
165
|
+
const baseProperties = schema.properties ?? {};
|
|
166
|
+
const baseRequired = schema.required ?? [];
|
|
167
|
+
return alternatives
|
|
168
|
+
.map((alternative) => {
|
|
169
|
+
if (alternative.type !== undefined && alternative.type !== 'object') {
|
|
170
|
+
throw new Error('Object alternative must remain an object');
|
|
171
|
+
}
|
|
172
|
+
const unsupported = Object.keys(alternative).filter((key) => !['description', 'type', 'properties', 'required', 'additionalProperties'].includes(key));
|
|
173
|
+
if (unsupported.length > 0) {
|
|
174
|
+
throw new Error(`Unsupported object alternative keywords: ${unsupported.join(', ')}`);
|
|
175
|
+
}
|
|
176
|
+
const properties = { ...baseProperties };
|
|
177
|
+
for (const [name, constraint] of Object.entries(alternative.properties ?? {})) {
|
|
178
|
+
properties[name] = properties[name]
|
|
179
|
+
? mergeAlternativeProperty(name, properties[name], constraint)
|
|
180
|
+
: constraint;
|
|
181
|
+
}
|
|
182
|
+
return renderObjectShape(properties, new Set([...baseRequired, ...(alternative.required ?? [])]));
|
|
183
|
+
})
|
|
184
|
+
.join(' | ');
|
|
185
|
+
}
|
|
186
|
+
function renderDiscriminatedObject(schema, discriminator) {
|
|
187
|
+
if (schema.type !== 'object') {
|
|
188
|
+
throw new Error(`Discriminated schema must be an object: ${discriminator}`);
|
|
189
|
+
}
|
|
190
|
+
const baseProperties = schema.properties ?? {};
|
|
191
|
+
const values = baseProperties[discriminator]?.enum;
|
|
192
|
+
if (!values?.length) {
|
|
193
|
+
throw new Error(`Discriminated schema must enumerate ${discriminator}`);
|
|
194
|
+
}
|
|
195
|
+
return values
|
|
196
|
+
.map((value) => {
|
|
197
|
+
const properties = {
|
|
198
|
+
...baseProperties,
|
|
199
|
+
[discriminator]: { const: value },
|
|
200
|
+
};
|
|
201
|
+
const required = new Set(schema.required ?? []);
|
|
202
|
+
const forbidden = new Set();
|
|
203
|
+
for (const rule of schema.allOf ?? []) {
|
|
204
|
+
const condition = rule['if'];
|
|
205
|
+
if (!condition) {
|
|
206
|
+
throw new Error(`Unsupported unconditional allOf rule for ${discriminator}`);
|
|
207
|
+
}
|
|
208
|
+
const discriminatorCondition = condition.properties?.[discriminator];
|
|
209
|
+
if (!discriminatorCondition) {
|
|
210
|
+
throw new Error(`Conditional rule must constrain ${discriminator}`);
|
|
211
|
+
}
|
|
212
|
+
const conditionMatches = discriminatorCondition.const === value ||
|
|
213
|
+
discriminatorCondition.enum?.includes(value) === true;
|
|
214
|
+
const branch = rule[conditionMatches ? 'then' : 'else'];
|
|
215
|
+
if (!branch)
|
|
216
|
+
continue;
|
|
217
|
+
for (const name of branch.required ?? [])
|
|
218
|
+
required.add(name);
|
|
219
|
+
for (const name of branch.not?.required ?? [])
|
|
220
|
+
forbidden.add(name);
|
|
221
|
+
for (const [name, override] of Object.entries((branch.properties ?? {}))) {
|
|
222
|
+
if (override === false) {
|
|
223
|
+
forbidden.add(name);
|
|
224
|
+
continue;
|
|
225
|
+
}
|
|
226
|
+
properties[name] = { ...properties[name], ...override };
|
|
227
|
+
}
|
|
228
|
+
}
|
|
229
|
+
return renderObjectShape(properties, required, forbidden);
|
|
230
|
+
})
|
|
231
|
+
.join(' | ');
|
|
232
|
+
}
|
|
233
|
+
function schemaStringValues(schema, label) {
|
|
234
|
+
const values = schema?.enum ?? (typeof schema?.const === 'string' ? [schema.const] : undefined);
|
|
235
|
+
if (!values?.length || !values.every((value) => typeof value === 'string')) {
|
|
236
|
+
throw new Error(`${label} must be a non-empty string const or enum`);
|
|
237
|
+
}
|
|
238
|
+
return values;
|
|
239
|
+
}
|
|
240
|
+
function renderBehaviorExecutionConstraint(schema) {
|
|
241
|
+
const planes = schemaStringValues(schema.properties?.['plane'], 'BehaviorCase execution.plane');
|
|
242
|
+
const methodSchema = schema.properties?.['method'];
|
|
243
|
+
const methods = methodSchema
|
|
244
|
+
? schemaStringValues(methodSchema, 'BehaviorCase execution.method')
|
|
245
|
+
: [];
|
|
246
|
+
return planes
|
|
247
|
+
.flatMap((plane) => {
|
|
248
|
+
const base = `Extract<BehaviorExecution, { readonly plane: ${quote(plane)} }>`;
|
|
249
|
+
if (methods.length === 0)
|
|
250
|
+
return [base];
|
|
251
|
+
return methods.map((method) => `${base} & { readonly method: ${quote(method)} }`);
|
|
252
|
+
})
|
|
253
|
+
.join(' | ');
|
|
254
|
+
}
|
|
255
|
+
function renderBehaviorCase(schema) {
|
|
256
|
+
if (schema.type !== 'object') {
|
|
257
|
+
throw new Error('BehaviorCase must be an object');
|
|
258
|
+
}
|
|
259
|
+
const properties = schema.properties ?? {};
|
|
73
260
|
const required = new Set(schema.required ?? []);
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
const
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
261
|
+
return (schema.allOf ?? [])
|
|
262
|
+
.map((rule) => {
|
|
263
|
+
const condition = rule['if'];
|
|
264
|
+
const consequence = rule['then'];
|
|
265
|
+
const operation = condition?.properties?.['when']?.properties?.['operation'];
|
|
266
|
+
const execution = consequence?.properties?.['execution'];
|
|
267
|
+
const operations = schemaStringValues(operation, 'BehaviorCase when.operation');
|
|
268
|
+
if (!execution) {
|
|
269
|
+
throw new Error('BehaviorCase conditional must constrain execution');
|
|
270
|
+
}
|
|
271
|
+
return renderObjectShape(properties, required, new Set(), {
|
|
272
|
+
when: `Extract<FixtureOperation, { readonly operation: ${operations
|
|
273
|
+
.map(quote)
|
|
274
|
+
.join(' | ')} }>`,
|
|
275
|
+
execution: renderBehaviorExecutionConstraint(execution),
|
|
276
|
+
});
|
|
277
|
+
})
|
|
278
|
+
.join(' | ');
|
|
80
279
|
}
|
|
81
280
|
function renderType(schema) {
|
|
82
281
|
if (schema.$ref)
|
|
@@ -86,8 +285,11 @@ function renderType(schema) {
|
|
|
86
285
|
if (schema.enum)
|
|
87
286
|
return schema.enum.map(quote).join(' | ');
|
|
88
287
|
const alternatives = schema.oneOf ?? schema.anyOf;
|
|
89
|
-
if (alternatives)
|
|
288
|
+
if (alternatives) {
|
|
289
|
+
if (schema.type === 'object')
|
|
290
|
+
return renderObjectAlternatives(schema, alternatives);
|
|
90
291
|
return alternatives.map(renderType).join(' | ');
|
|
292
|
+
}
|
|
91
293
|
if (Array.isArray(schema.type)) {
|
|
92
294
|
return schema.type.map((type) => renderType({ ...schema, type })).join(' | ');
|
|
93
295
|
}
|
|
@@ -123,13 +325,42 @@ function renderDataDeclaration(schema, definition) {
|
|
|
123
325
|
}));
|
|
124
326
|
return variants.join(' | ');
|
|
125
327
|
}
|
|
328
|
+
function renderDefinition(schema, name, definition) {
|
|
329
|
+
if (name === 'DataDeclaration' && schema['x-clowder-data-class-strategies'] !== undefined) {
|
|
330
|
+
return renderDataDeclaration(schema, definition);
|
|
331
|
+
}
|
|
332
|
+
if (name === 'ConfigurationField') {
|
|
333
|
+
return renderDiscriminatedObject(definition, 'kind');
|
|
334
|
+
}
|
|
335
|
+
if (name === 'PackageIcon') {
|
|
336
|
+
return renderDiscriminatedObject(definition, 'type');
|
|
337
|
+
}
|
|
338
|
+
if (name === 'MediaRefElementPayload') {
|
|
339
|
+
// The remaining provider-specific metadata is intentionally open, while
|
|
340
|
+
// JSON Schema owns the conditional pmr/hmr relation.
|
|
341
|
+
return renderOpenObject(definition);
|
|
342
|
+
}
|
|
343
|
+
if (name === 'MediaReadResult'
|
|
344
|
+
|| name === 'MessageDraft'
|
|
345
|
+
|| name === 'MessageSubscriptionContribution'
|
|
346
|
+
|| name === 'OperationActionResult') {
|
|
347
|
+
// JSON Schema owns conditional cross-field relations. The TypeScript
|
|
348
|
+
// projection remains structural because these rules depend on nested
|
|
349
|
+
// values (pmr/hmr, done/nextOffset, and whisper media admission).
|
|
350
|
+
// The generated structural projection keeps every declared property while
|
|
351
|
+
// runtime validation enforces the cross-field constraints.
|
|
352
|
+
return renderObject(definition);
|
|
353
|
+
}
|
|
354
|
+
if (name === 'RichBlockElementPayload') {
|
|
355
|
+
return renderOpenObject(definition);
|
|
356
|
+
}
|
|
357
|
+
if (definition.allOf?.length) {
|
|
358
|
+
throw new Error(`Unhandled conditional schema definition: ${name}`);
|
|
359
|
+
}
|
|
360
|
+
return renderType(definition);
|
|
361
|
+
}
|
|
126
362
|
function renderDefinitions(schema) {
|
|
127
|
-
return Object.entries(schema.$defs ?? {}).map(([name, definition]) => {
|
|
128
|
-
const rendered = name === 'DataDeclaration' && schema['x-clowder-data-class-strategies'] !== undefined
|
|
129
|
-
? renderDataDeclaration(schema, definition)
|
|
130
|
-
: renderType(definition);
|
|
131
|
-
return `export type ${name} = ${rendered};`;
|
|
132
|
-
});
|
|
363
|
+
return Object.entries(schema.$defs ?? {}).map(([name, definition]) => `export type ${name} = ${renderDefinition(schema, name, definition)};`);
|
|
133
364
|
}
|
|
134
365
|
function renderBehaviorDefinitions(behavior, manifest, messaging) {
|
|
135
366
|
const existingDefinitions = new Map([
|
|
@@ -138,8 +369,25 @@ function renderBehaviorDefinitions(behavior, manifest, messaging) {
|
|
|
138
369
|
]);
|
|
139
370
|
return Object.entries(behavior.$defs ?? {}).flatMap(([name, definition]) => {
|
|
140
371
|
const existing = existingDefinitions.get(name);
|
|
141
|
-
if (!existing)
|
|
142
|
-
|
|
372
|
+
if (!existing) {
|
|
373
|
+
let rendered;
|
|
374
|
+
if (name === 'SideEffectAssertion') {
|
|
375
|
+
rendered = renderDiscriminatedObject(definition, 'assertion');
|
|
376
|
+
}
|
|
377
|
+
else if (name === 'ExpectedVerdict') {
|
|
378
|
+
rendered = renderDiscriminatedObject(definition, 'status');
|
|
379
|
+
}
|
|
380
|
+
else if (name === 'BehaviorCase') {
|
|
381
|
+
rendered = renderBehaviorCase(definition);
|
|
382
|
+
}
|
|
383
|
+
else if (definition.allOf?.length) {
|
|
384
|
+
throw new Error(`Unhandled conditional behavior definition: ${name}`);
|
|
385
|
+
}
|
|
386
|
+
else {
|
|
387
|
+
rendered = renderType(definition);
|
|
388
|
+
}
|
|
389
|
+
return [`export type ${name} = ${rendered};`];
|
|
390
|
+
}
|
|
143
391
|
if (!isDeepStrictEqual(definition, existing.schema)) {
|
|
144
392
|
throw new Error(`behavior ${name} must match the ${existing.owner} schema definition`);
|
|
145
393
|
}
|
|
@@ -171,27 +419,6 @@ function numberMap(value, label) {
|
|
|
171
419
|
function renderConstArray(name, values) {
|
|
172
420
|
return `export const ${name} = [${values.map(quote).join(', ')}] as const;`;
|
|
173
421
|
}
|
|
174
|
-
function renderCapabilityTables(schema) {
|
|
175
|
-
const layers = stringArrayMap(schema['x-clowder-capability-layers'], 'x-clowder-capability-layers');
|
|
176
|
-
const capabilityValues = schema.$defs?.['Capability']?.enum ?? [];
|
|
177
|
-
const layeredValues = Object.values(layers).flat();
|
|
178
|
-
if (capabilityValues.length !== layeredValues.length ||
|
|
179
|
-
capabilityValues.some((value) => !layeredValues.includes(value))) {
|
|
180
|
-
throw new Error('Capability enum and capability layer metadata must contain identical values');
|
|
181
|
-
}
|
|
182
|
-
const lines = [];
|
|
183
|
-
for (const [layer, values] of Object.entries(layers)) {
|
|
184
|
-
lines.push(renderConstArray(`${layer}_CAPABILITIES`, values));
|
|
185
|
-
lines.push(`export type ${layer}Capability = (typeof ${layer}_CAPABILITIES)[number];`);
|
|
186
|
-
}
|
|
187
|
-
lines.push('export const CAPABILITY_TABLE = {');
|
|
188
|
-
for (const layer of Object.keys(layers)) {
|
|
189
|
-
lines.push(` ${layer}: ${layer}_CAPABILITIES,`);
|
|
190
|
-
}
|
|
191
|
-
lines.push('} as const;');
|
|
192
|
-
lines.push('export type AuthorizationLayer = keyof typeof CAPABILITY_TABLE;');
|
|
193
|
-
return lines;
|
|
194
|
-
}
|
|
195
422
|
function renderDataStrategyTable(schema) {
|
|
196
423
|
const strategies = stringArrayMap(schema['x-clowder-data-class-strategies'], 'x-clowder-data-class-strategies');
|
|
197
424
|
const lines = ['export const DATA_CLASS_ALLOWED_STRATEGIES = {'];
|
|
@@ -224,6 +451,55 @@ function renderMessagingReplayWindowDefault(schema) {
|
|
|
224
451
|
`export const MESSAGING_REPLAY_WINDOW_DEFAULT = ${quote(replayWindow)} as const;`,
|
|
225
452
|
];
|
|
226
453
|
}
|
|
454
|
+
/**
|
|
455
|
+
* Deterministic def-name → SCREAMING_SNAKE conversion.
|
|
456
|
+
* Inserts `_` only at lowercase → uppercase word boundaries, so
|
|
457
|
+
* `M0CSubscribeInput` → `M0C_SUBSCRIBE_INPUT` (the `M0C` prefix stays
|
|
458
|
+
* attached; digit→uppercase boundaries are not word starts). All messaging
|
|
459
|
+
* def names are PascalCase words with an optional `M0C` digit-caps prefix,
|
|
460
|
+
* which this rule tokenizes exactly.
|
|
461
|
+
*/
|
|
462
|
+
function screamingSnake(name) {
|
|
463
|
+
return name.replace(/([a-z])([A-Z])/g, '$1_$2').toUpperCase();
|
|
464
|
+
}
|
|
465
|
+
/**
|
|
466
|
+
* Runtime key sets and enum value arrays projected from the messaging
|
|
467
|
+
* schema's closed definitions:
|
|
468
|
+
*
|
|
469
|
+
* - every `additionalProperties: false` object def exports
|
|
470
|
+
* `<SCREAMING_SNAKE(defName)>_KEYS` with the def's property keys in
|
|
471
|
+
* schema declaration order (mirrors the same-named generated type);
|
|
472
|
+
* - every string-enum def exports `<SCREAMING_SNAKE(defName)>_VALUES`
|
|
473
|
+
* with the enum members in schema order.
|
|
474
|
+
*
|
|
475
|
+
* The `*_VALUES` suffix (not `*_CODES`) avoids shadowing module-local
|
|
476
|
+
* constants in wire/messaging-byte-bounds.ts.
|
|
477
|
+
*/
|
|
478
|
+
function renderClosedKeySets(schema) {
|
|
479
|
+
const lines = [];
|
|
480
|
+
for (const [name, definition] of Object.entries(schema.$defs ?? {})) {
|
|
481
|
+
if (definition.type === 'object' && definition.additionalProperties === false) {
|
|
482
|
+
lines.push(renderConstArray(`${screamingSnake(name)}_KEYS`, Object.keys(definition.properties ?? {})));
|
|
483
|
+
}
|
|
484
|
+
else if (definition.type === 'string' &&
|
|
485
|
+
definition.enum !== undefined &&
|
|
486
|
+
definition.enum.length > 0 &&
|
|
487
|
+
definition.enum.every((value) => typeof value === 'string')) {
|
|
488
|
+
lines.push(renderConstArray(`${screamingSnake(name)}_VALUES`, definition.enum));
|
|
489
|
+
}
|
|
490
|
+
}
|
|
491
|
+
return lines;
|
|
492
|
+
}
|
|
493
|
+
/** Fail closed if the generated source would export two consts with one name. */
|
|
494
|
+
function assertUniqueConstExports(source) {
|
|
495
|
+
const seen = new Set();
|
|
496
|
+
for (const match of source.matchAll(/export const ([A-Za-z0-9_$]+)/g)) {
|
|
497
|
+
if (seen.has(match[1])) {
|
|
498
|
+
throw new Error(`Duplicate generated const export: ${match[1]}`);
|
|
499
|
+
}
|
|
500
|
+
seen.add(match[1]);
|
|
501
|
+
}
|
|
502
|
+
}
|
|
227
503
|
function schemaProperty(schema, definitionName, property) {
|
|
228
504
|
const result = schema.$defs?.[definitionName]?.properties?.[property];
|
|
229
505
|
if (!result)
|
|
@@ -305,25 +581,41 @@ export function generateContractSource(schemas) {
|
|
|
305
581
|
validateMessagingBounds(schemas.messaging);
|
|
306
582
|
const sections = [
|
|
307
583
|
'/**',
|
|
308
|
-
' * Generated from manifest.schema.json, signal.schema.json, messaging.schema.json, physical-limb.schema.json, and behavior-fixture.schema.json.',
|
|
584
|
+
' * Generated from plugin-metadata.schema.json, manifest.schema.json, catalog.schema.json, signal.schema.json, messaging.schema.json, physical-limb.schema.json, docx-materialization.schema.json, and behavior-fixture.schema.json.',
|
|
309
585
|
' * Do not edit by hand. Run `pnpm generate` after changing a schema.',
|
|
310
586
|
' */',
|
|
311
587
|
'',
|
|
588
|
+
...renderDefinitions(schemas.pluginMetadata),
|
|
589
|
+
'',
|
|
312
590
|
...renderDefinitions(schemas.manifest),
|
|
313
591
|
'',
|
|
314
592
|
`export type PluginManifest = ${renderType(schemas.manifest)};`,
|
|
315
593
|
'',
|
|
594
|
+
...renderDefinitions(schemas.catalog),
|
|
595
|
+
'',
|
|
596
|
+
`export type PluginCatalog = ${renderType(schemas.catalog)};`,
|
|
597
|
+
'',
|
|
316
598
|
...renderDefinitions(schemas.signals),
|
|
317
599
|
'',
|
|
318
600
|
...renderDefinitions(schemas.messaging),
|
|
319
601
|
'',
|
|
602
|
+
...renderClosedKeySets(schemas.messaging),
|
|
603
|
+
'',
|
|
320
604
|
...renderDefinitions(schemas.physicalLimb),
|
|
321
605
|
'',
|
|
606
|
+
...renderDefinitions(schemas.docxMaterialization),
|
|
607
|
+
...renderDefinitions(schemas.companionBridge),
|
|
608
|
+
...['Text', 'Author'].map(kind => {
|
|
609
|
+
const pattern = schemas.docxMaterialization.$defs?.[`DocxMaterialization${kind}`]?.pattern;
|
|
610
|
+
if (typeof pattern !== 'string')
|
|
611
|
+
throw new Error(`Missing DOCX ${kind} pattern`);
|
|
612
|
+
return `export const DOCX_MATERIALIZATION_${kind.toUpperCase()}_PATTERN = ${quote(pattern)};`;
|
|
613
|
+
}),
|
|
614
|
+
'',
|
|
322
615
|
...renderBehaviorDefinitions(schemas.behavior, schemas.manifest, schemas.messaging),
|
|
323
616
|
'',
|
|
324
617
|
`export type BehaviorFixture = ${renderType(schemas.behavior)};`,
|
|
325
618
|
'',
|
|
326
|
-
...renderCapabilityTables(schemas.manifest),
|
|
327
619
|
'',
|
|
328
620
|
...renderDataStrategyTable(schemas.manifest),
|
|
329
621
|
'',
|
|
@@ -332,7 +624,9 @@ export function generateContractSource(schemas) {
|
|
|
332
624
|
...renderMessagingReplayWindowDefault(schemas.messaging),
|
|
333
625
|
'',
|
|
334
626
|
];
|
|
335
|
-
|
|
627
|
+
const source = `${sections.join('\n').trimEnd()}\n`;
|
|
628
|
+
assertUniqueConstExports(source);
|
|
629
|
+
return source;
|
|
336
630
|
}
|
|
337
631
|
export async function writeGeneratedContract() {
|
|
338
632
|
const source = generateContractSource(await loadContractSchemas());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-contract.js","sourceRoot":"","sources":["../../src/codegen/generate-contract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generate-contract.js","sourceRoot":"","sources":["../../src/codegen/generate-contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,8 @@
|
|
|
4
4
|
* These are contract data for conformance runners. They do not implement
|
|
5
5
|
* Host activation or a handshake codec.
|
|
6
6
|
*/
|
|
7
|
-
export { DISPOSITION_FIXTURE_VECTORS, BETA8_HANDSHAKE_VECTOR_IDS,
|
|
7
|
+
export { DISPOSITION_FIXTURE_VECTORS, BETA8_HANDSHAKE_VECTOR_IDS, BETA11_MESSAGING_VECTOR_IDS, CLOSED_ERROR_ARM_NAMES, RESPONSE_CANDIDATE_CASES, NOTIFICATION_PARTITION_CASES, } from '../wire/disposition-fixtures.js';
|
|
8
|
+
export { M0C_BEHAVIOR_CASE_IDS, M0C_BEHAVIOR_FIXTURE_EXPORT, } from './messaging-behavior-fixture.js';
|
|
9
|
+
export type { M0CBehaviorCaseId } from './messaging-behavior-fixture.js';
|
|
8
10
|
export type { ClosedErrorArmName, RequestSnapshot, InFlightRecord, FixturePreState, DispositionFixtureVector, PartitionCase, } from '../wire/disposition-fixtures.js';
|
|
9
11
|
//# sourceMappingURL=fixtures.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/conformance/fixtures.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B
|
|
1
|
+
{"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/conformance/fixtures.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,iCAAiC,CAAC;AAEzC,OAAO,EACL,qBAAqB,EACrB,2BAA2B,GAC5B,MAAM,iCAAiC,CAAC;AAEzC,YAAY,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEzE,YAAY,EACV,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,eAAe,EACf,wBAAwB,EACxB,aAAa,GACd,MAAM,iCAAiC,CAAC"}
|
|
@@ -4,5 +4,6 @@
|
|
|
4
4
|
* These are contract data for conformance runners. They do not implement
|
|
5
5
|
* Host activation or a handshake codec.
|
|
6
6
|
*/
|
|
7
|
-
export { DISPOSITION_FIXTURE_VECTORS, BETA8_HANDSHAKE_VECTOR_IDS,
|
|
7
|
+
export { DISPOSITION_FIXTURE_VECTORS, BETA8_HANDSHAKE_VECTOR_IDS, BETA11_MESSAGING_VECTOR_IDS, CLOSED_ERROR_ARM_NAMES, RESPONSE_CANDIDATE_CASES, NOTIFICATION_PARTITION_CASES, } from '../wire/disposition-fixtures.js';
|
|
8
|
+
export { M0C_BEHAVIOR_CASE_IDS, M0C_BEHAVIOR_FIXTURE_EXPORT, } from './messaging-behavior-fixture.js';
|
|
8
9
|
//# sourceMappingURL=fixtures.js.map
|