@fabricorg/platform 1.2.0 → 1.4.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 +37 -0
- package/dist/actions/index.cjs +6 -6
- package/dist/actions/index.d.cts +14 -0
- package/dist/actions/index.d.ts +14 -0
- package/dist/actions/index.js +1 -1
- package/dist/adapters/index.cjs +9 -9
- package/dist/adapters/index.d.cts +17 -1
- package/dist/adapters/index.d.ts +17 -1
- package/dist/adapters/index.js +1 -1
- package/dist/{chunk-LDPBQ72C.cjs → chunk-2AE6TMAX.cjs} +6 -2
- package/dist/{chunk-LDPBQ72C.cjs.map → chunk-2AE6TMAX.cjs.map} +1 -1
- package/dist/{chunk-4QOA3VU5.js → chunk-2W6FORTE.js} +2 -2
- package/dist/{chunk-4QOA3VU5.js.map → chunk-2W6FORTE.js.map} +1 -1
- package/dist/{chunk-NHGBTPPE.js → chunk-B5DOGDPG.js} +6 -2
- package/dist/{chunk-NHGBTPPE.js.map → chunk-B5DOGDPG.js.map} +1 -1
- package/dist/{chunk-AWP6JDD5.js → chunk-DCC3UIUJ.js} +3 -3
- package/dist/{chunk-AWP6JDD5.js.map → chunk-DCC3UIUJ.js.map} +1 -1
- package/dist/{chunk-DTY3CHQZ.js → chunk-FAG2RTPM.js} +2 -2
- package/dist/chunk-FAG2RTPM.js.map +1 -0
- package/dist/{chunk-63MYMAEX.js → chunk-GRBZYDEV.js} +6 -4
- package/dist/chunk-GRBZYDEV.js.map +1 -0
- package/dist/{chunk-3UBX7KQM.cjs → chunk-KIVQBZOA.cjs} +7 -5
- package/dist/chunk-KIVQBZOA.cjs.map +1 -0
- package/dist/{chunk-LZNXUTJQ.js → chunk-MC3GSVJ6.js} +3 -3
- package/dist/{chunk-LZNXUTJQ.js.map → chunk-MC3GSVJ6.js.map} +1 -1
- package/dist/{chunk-BFQNKQJE.cjs → chunk-MSABJAED.cjs} +2 -2
- package/dist/{chunk-BFQNKQJE.cjs.map → chunk-MSABJAED.cjs.map} +1 -1
- package/dist/{chunk-3BGFHSSK.cjs → chunk-USDLP4E7.cjs} +4 -4
- package/dist/{chunk-3BGFHSSK.cjs.map → chunk-USDLP4E7.cjs.map} +1 -1
- package/dist/{chunk-N2BBUKCX.cjs → chunk-XZQZQ5SW.cjs} +2 -2
- package/dist/chunk-XZQZQ5SW.cjs.map +1 -0
- package/dist/{chunk-UITRHBZH.cjs → chunk-ZBXFRJON.cjs} +6 -6
- package/dist/{chunk-UITRHBZH.cjs.map → chunk-ZBXFRJON.cjs.map} +1 -1
- package/dist/events/index.cjs +2 -2
- package/dist/events/index.js +1 -1
- package/dist/index.cjs +37 -37
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +6 -6
- package/dist/manifest/index.cjs +9 -9
- package/dist/manifest/index.js +3 -3
- package/dist/modules/index.cjs +10 -10
- package/dist/modules/index.js +2 -2
- package/dist/testing/index.cjs +5 -5
- package/dist/testing/index.js +2 -2
- package/package.json +1 -1
- package/dist/chunk-3UBX7KQM.cjs.map +0 -1
- package/dist/chunk-63MYMAEX.js.map +0 -1
- package/dist/chunk-DTY3CHQZ.js.map +0 -1
- package/dist/chunk-N2BBUKCX.cjs.map +0 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkKIVQBZOA_cjs = require('./chunk-KIVQBZOA.cjs');
|
|
4
4
|
|
|
5
5
|
// manifest/index.ts
|
|
6
6
|
var MODULE_MANIFEST_VERSION = 2;
|
|
@@ -32,7 +32,7 @@ function isRecord(value) {
|
|
|
32
32
|
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
33
33
|
}
|
|
34
34
|
function exportDependency(dependency) {
|
|
35
|
-
const namespace =
|
|
35
|
+
const namespace = chunkKIVQBZOA_cjs.getModuleDependencyNamespace(dependency);
|
|
36
36
|
if (typeof dependency === "string") {
|
|
37
37
|
return { namespace };
|
|
38
38
|
}
|
|
@@ -45,7 +45,7 @@ function exportObjectType(objectType) {
|
|
|
45
45
|
if (typeof objectType === "string") {
|
|
46
46
|
return { type: objectType };
|
|
47
47
|
}
|
|
48
|
-
const normalized = { type:
|
|
48
|
+
const normalized = { type: chunkKIVQBZOA_cjs.getObjectTypeName(objectType) };
|
|
49
49
|
if (objectType.displayName !== void 0) normalized.displayName = objectType.displayName;
|
|
50
50
|
if (objectType.idPrefix !== void 0) normalized.idPrefix = objectType.idPrefix;
|
|
51
51
|
if (objectType.schema !== void 0) normalized.schema = cloneJson(objectType.schema);
|
|
@@ -72,7 +72,7 @@ function exportEventType(eventType) {
|
|
|
72
72
|
return { eventType, schemaVersion: 1 };
|
|
73
73
|
}
|
|
74
74
|
const normalized = {
|
|
75
|
-
eventType:
|
|
75
|
+
eventType: chunkKIVQBZOA_cjs.getEventTypeName(eventType),
|
|
76
76
|
schemaVersion: eventType.schemaVersion
|
|
77
77
|
};
|
|
78
78
|
if (eventType.description !== void 0) normalized.description = eventType.description;
|
|
@@ -232,5 +232,5 @@ exports.exportModuleManifestBundle = exportModuleManifestBundle;
|
|
|
232
232
|
exports.isJsonSchemaExportableValidator = isJsonSchemaExportableValidator;
|
|
233
233
|
exports.normalizeModuleManifest = normalizeModuleManifest;
|
|
234
234
|
exports.normalizeModuleManifestBundle = normalizeModuleManifestBundle;
|
|
235
|
-
//# sourceMappingURL=chunk-
|
|
236
|
-
//# sourceMappingURL=chunk-
|
|
235
|
+
//# sourceMappingURL=chunk-ZBXFRJON.cjs.map
|
|
236
|
+
//# sourceMappingURL=chunk-ZBXFRJON.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../manifest/index.ts"],"names":["getModuleDependencyNamespace","getObjectTypeName","getEventTypeName"],"mappings":"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","file":"chunk-UITRHBZH.cjs","sourcesContent":["import type {\n\tActionExecutionContract,\n\tActionDefinition,\n\tAdapterStepRetryPolicy,\n\tSchemaValidator,\n} from \"../actions\";\nimport {\n\tgetEventTypeName,\n\tgetModuleDependencyNamespace,\n\tgetObjectTypeName,\n\ttype FabricModule,\n\ttype CapabilityMetadata,\n\ttype DeclarativeInvariant,\n\ttype ModuleDependency,\n\ttype ModuleDependencyInput,\n\ttype ObjectRelationDefinition,\n} from \"../modules\";\nimport type { JsonValue, PortableJsonSchema } from \"../objects\";\nimport type {\n\tDataPolicyDefinition,\n\tPolicyFallbackDefinition,\n\tPolicyKind,\n} from \"../policies\";\nimport type { StateDefinition, StateMachineDefinition } from \"../state-machines\";\nimport type { ViewContract } from \"../projections\";\n\n/**\n * Version of the module manifest contract. Bump when the serialized shape\n * changes in a way consumers must detect.\n */\nexport const MODULE_MANIFEST_VERSION = 2 as const;\n\nexport interface ModuleManifestObjectType {\n\ttype: string;\n\tdisplayName?: string;\n\tidPrefix?: string;\n\tschema?: PortableJsonSchema;\n\tsemantics?: Record<string, JsonValue>;\n\trelations?: ObjectRelationDefinition[];\n\tinvariants?: DeclarativeInvariant[];\n}\n\nexport interface ModuleManifestIdPrefix {\n\tprefix: string;\n\tname: string;\n}\n\nexport interface ModuleManifestEventType {\n\teventType: string;\n\tschemaVersion: number;\n\tdescription?: string;\n\tschema?: PortableJsonSchema;\n}\n\nexport interface ModuleManifestActionStateMachine {\n\tentityType: string;\n\t/** Present only when the binding declares a static target state. */\n\ttargetState?: string;\n}\n\nexport interface ModuleManifestAdapterStep {\n\tadapterType: string;\n\toperation: string;\n\tretryPolicy?: AdapterStepRetryPolicy;\n}\n\nexport interface ModuleManifestAction {\n\tactionId: string;\n\tversion: number;\n\tkind: \"atomic\" | \"saga\";\n\tidempotent: boolean;\n\tmutatesDomain: boolean;\n\temitsEvents: string[];\n\tpolicies?: string[];\n\trequiredRoles?: string[];\n\trequiredPermissions?: string[];\n\teventPhase?: \"before_adapters\" | \"after_adapters\";\n\texecution?: ActionExecutionContract;\n\t/**\n\t * JSON Schema for the action parameters, present only when the action's\n\t * `schema` validator implements {@link JsonSchemaExportableValidator}.\n\t */\n\tparameterSchema?: unknown;\n\tparameterSchemaFormat?: \"json-schema\";\n\tresultSchema?: unknown;\n\tresultSchemaFormat?: \"json-schema\";\n\tstateMachine?: ModuleManifestActionStateMachine;\n\tadapterSteps?: ModuleManifestAdapterStep[];\n}\n\nexport interface ModuleManifestCodePolicy {\n\ttype: \"code\";\n\tpolicyId: string;\n\tversion: number;\n\tpreviewSafe?: boolean;\n}\n\nexport interface ModuleManifestDataPolicy {\n\ttype: \"data\";\n\tpolicyId: string;\n\tpolicyVersion: number;\n\tkind: PolicyKind;\n\tdataDefinition?: DataPolicyDefinition;\n\tcodeEvaluatorPolicyId?: string;\n\tfallback?: PolicyFallbackDefinition;\n}\n\nexport type ModuleManifestPolicy = ModuleManifestCodePolicy | ModuleManifestDataPolicy;\n\nexport interface ModuleManifestStateMachineTransition {\n\tfrom: string;\n\tto: string;\n\tcausedByAction: string;\n\t/** `true` when the transition declares a guard function. The guard itself is never serialized. */\n\thasGuard: boolean;\n}\n\nexport interface ModuleManifestStateMachine {\n\tentityType: string;\n\t/** States in declaration order (`Object.values` order of the definition record). */\n\tstates: StateDefinition[];\n\ttransitions: ModuleManifestStateMachineTransition[];\n}\n\nexport interface ModuleManifestView {\n\tname: string;\n\tversion: string;\n\tshape: PortableJsonSchema;\n\tparameterSchema?: PortableJsonSchema;\n\tconsumes: Array<{ eventType: string; schemaVersions: number[] }>;\n\tscope: \"tenant-space\";\n\tsnapshotVersion: number;\n\tcompatibleSnapshotVersions?: number[];\n\tusage?: ViewContract[\"usage\"];\n}\n\n/**\n * Stable, JSON-serializable description of a {@link FabricModule}'s ontology:\n * object types, subject types, id prefixes, event types, actions, policies,\n * and state machines. Intended for downstream tooling (semantics exporters,\n * docs generators, tool generators) that cannot consume live module code.\n *\n * The manifest contains definitions only — never raw parameter values,\n * secrets, or runtime data. Function fields (`handler`, `evaluate`, `guard`,\n * dynamic `targetState`, adapter `getInput`) are never serialized.\n */\nexport interface ModuleManifest {\n\tmanifestVersion: typeof MODULE_MANIFEST_VERSION;\n\tnamespace: string;\n\tversion?: string;\n\tdisplayName?: string;\n\tdescription?: string;\n\tcapability?: CapabilityMetadata;\n\tdependencies: ModuleDependency[];\n\tobjectTypes: ModuleManifestObjectType[];\n\tsubjectTypes: string[];\n\tidPrefixes: ModuleManifestIdPrefix[];\n\teventTypes: ModuleManifestEventType[];\n\tactions: ModuleManifestAction[];\n\tpolicies: ModuleManifestPolicy[];\n\tstateMachines: ModuleManifestStateMachine[];\n\tviews: ModuleManifestView[];\n}\n\nexport interface ModuleManifestBundle {\n\tmanifestVersion: typeof MODULE_MANIFEST_VERSION;\n\t/** Manifests in the input module order. */\n\tmodules: ModuleManifest[];\n}\n\n/** Manifest v1 remains accepted by v2 readers; missing v2 fields normalize to absence. */\nexport type ModuleManifestObjectTypeV1 = Omit<\n\tModuleManifestObjectType,\n\t\"schema\" | \"semantics\" | \"relations\" | \"invariants\"\n>;\nexport type ModuleManifestActionV1 = Omit<\n\tModuleManifestAction,\n\t\"resultSchema\" | \"resultSchemaFormat\"\n>;\nexport type ModuleManifestV1 = Omit<\n\tModuleManifest,\n\t\"manifestVersion\" | \"objectTypes\" | \"actions\" | \"views\"\n> & {\n\tmanifestVersion: 1;\n\tobjectTypes: ModuleManifestObjectTypeV1[];\n\tactions: ModuleManifestActionV1[];\n};\nexport type ModuleManifestBundleV1 = Omit<ModuleManifestBundle, \"manifestVersion\" | \"modules\"> & {\n\tmanifestVersion: 1;\n\tmodules: ModuleManifestV1[];\n};\n\nexport function normalizeModuleManifest(\n\tmanifest: ModuleManifest | ModuleManifestV1,\n): ModuleManifest {\n\tconst version: number = manifest.manifestVersion;\n\tif (version !== 1 && version !== MODULE_MANIFEST_VERSION) {\n\t\tthrow new Error(`Unsupported module manifest version: ${String(version)}`);\n\t}\n\treturn {\n\t\t...manifest,\n\t\tmanifestVersion: MODULE_MANIFEST_VERSION,\n\t\tviews: \"views\" in manifest && Array.isArray(manifest.views) ? manifest.views : [],\n\t};\n}\n\nexport function normalizeModuleManifestBundle(\n\tbundle: ModuleManifestBundle | ModuleManifestBundleV1,\n): ModuleManifestBundle {\n\tconst version: number = bundle.manifestVersion;\n\tif (version !== 1 && version !== MODULE_MANIFEST_VERSION) {\n\t\tthrow new Error(`Unsupported module manifest bundle version: ${String(version)}`);\n\t}\n\treturn {\n\t\tmanifestVersion: MODULE_MANIFEST_VERSION,\n\t\tmodules: bundle.modules.map((manifest) => normalizeModuleManifest(manifest)),\n\t};\n}\n\n/**\n * A {@link SchemaValidator} that can also export its parameter schema as JSON\n * Schema (for example a Zod 4 schema via `z.toJSONSchema`). Keeps the platform\n * zero-dependency while letting schema-bearing actions flow into manifests.\n */\nexport interface JsonSchemaExportableValidator extends SchemaValidator {\n\ttoJSONSchema(): Record<string, unknown>;\n}\n\nexport function isJsonSchemaExportableValidator(\n\tschema: SchemaValidator,\n): schema is JsonSchemaExportableValidator {\n\treturn (\n\t\ttypeof (schema as Partial<JsonSchemaExportableValidator>).toJSONSchema === \"function\"\n\t);\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n\treturn value !== null && typeof value === \"object\" && !Array.isArray(value);\n}\n\nfunction exportDependency(dependency: ModuleDependencyInput): ModuleDependency {\n\tconst namespace = getModuleDependencyNamespace(dependency);\n\tif (typeof dependency === \"string\") {\n\t\treturn { namespace };\n\t}\n\tconst normalized: ModuleDependency = { namespace };\n\tif (dependency.version !== undefined) normalized.version = dependency.version;\n\tif (dependency.optional !== undefined) normalized.optional = dependency.optional;\n\treturn normalized;\n}\n\nfunction exportObjectType(\n\tobjectType: NonNullable<FabricModule[\"objectTypes\"]>[number],\n): ModuleManifestObjectType {\n\tif (typeof objectType === \"string\") {\n\t\treturn { type: objectType };\n\t}\n\tconst normalized: ModuleManifestObjectType = { type: getObjectTypeName(objectType) };\n\tif (objectType.displayName !== undefined) normalized.displayName = objectType.displayName;\n\tif (objectType.idPrefix !== undefined) normalized.idPrefix = objectType.idPrefix;\n\tif (objectType.schema !== undefined) normalized.schema = cloneJson(objectType.schema);\n\tif (objectType.semantics !== undefined) normalized.semantics = cloneJson(objectType.semantics);\n\tif (objectType.relations !== undefined) {\n\t\tnormalized.relations = objectType.relations.map((relation) => ({ ...relation }));\n\t}\n\tif (objectType.invariants !== undefined) {\n\t\tnormalized.invariants = objectType.invariants.map((invariant) => ({ ...invariant }));\n\t}\n\treturn normalized;\n}\n\nfunction cloneJson<T>(value: T): T {\n\tif (Array.isArray(value)) return value.map((item) => cloneJson(item)) as T;\n\tif (value !== null && typeof value === \"object\") {\n\t\treturn Object.fromEntries(\n\t\t\tObject.entries(value as Record<string, unknown>).map(([key, child]) => [key, cloneJson(child)]),\n\t\t) as T;\n\t}\n\treturn value;\n}\n\nfunction exportEventType(\n\teventType: NonNullable<FabricModule[\"eventTypes\"]>[number],\n): ModuleManifestEventType {\n\tif (typeof eventType === \"string\") {\n\t\t// String registrations carry no explicit schema version; the events\n\t\t// registry treats the bare name as the initial version of the type.\n\t\treturn { eventType, schemaVersion: 1 };\n\t}\n\tconst normalized: ModuleManifestEventType = {\n\t\teventType: getEventTypeName(eventType),\n\t\tschemaVersion: eventType.schemaVersion,\n\t};\n\tif (eventType.description !== undefined) normalized.description = eventType.description;\n\tif (eventType.schema !== undefined) normalized.schema = cloneJson(eventType.schema);\n\treturn normalized;\n}\n\nfunction exportAction(action: ActionDefinition): ModuleManifestAction {\n\tconst manifest: ModuleManifestAction = {\n\t\tactionId: action.actionId,\n\t\tversion: action.version,\n\t\tkind: action.kind ?? \"atomic\",\n\t\tidempotent: action.idempotent,\n\t\tmutatesDomain: action.mutatesDomain,\n\t\temitsEvents: [...action.emitsEvents],\n\t};\n\n\tif (action.policies !== undefined) manifest.policies = [...action.policies];\n\tif (action.requiredRoles !== undefined) manifest.requiredRoles = [...action.requiredRoles];\n\tif (action.requiredPermissions !== undefined) {\n\t\tmanifest.requiredPermissions = [...action.requiredPermissions];\n\t}\n\tif (action.eventPhase !== undefined) manifest.eventPhase = action.eventPhase;\n\tif (action.execution !== undefined) manifest.execution = cloneJson(action.execution);\n\n\tif (isJsonSchemaExportableValidator(action.schema)) {\n\t\ttry {\n\t\t\tmanifest.parameterSchema = action.schema.toJSONSchema();\n\t\t\tmanifest.parameterSchemaFormat = \"json-schema\";\n\t\t} catch {\n\t\t\t// Runtime-valid schemas that cannot be represented portably remain executable;\n\t\t\t// build-time consumers see the schema as unavailable rather than crashing export.\n\t\t}\n\t}\n\tif (action.resultSchema && isJsonSchemaExportableValidator(action.resultSchema)) {\n\t\ttry {\n\t\t\tmanifest.resultSchema = action.resultSchema.toJSONSchema();\n\t\t\tmanifest.resultSchemaFormat = \"json-schema\";\n\t\t} catch {\n\t\t\t// See parameter-schema behavior above.\n\t\t}\n\t}\n\n\tif (action.stateMachine !== undefined) {\n\t\tconst binding: ModuleManifestActionStateMachine = {\n\t\t\tentityType: action.stateMachine.entityType,\n\t\t};\n\t\tif (typeof action.stateMachine.targetState === \"string\") {\n\t\t\tbinding.targetState = action.stateMachine.targetState;\n\t\t}\n\t\tmanifest.stateMachine = binding;\n\t}\n\n\tif (action.adapterSteps !== undefined) {\n\t\tmanifest.adapterSteps = action.adapterSteps.map((step) => {\n\t\t\tconst exported: ModuleManifestAdapterStep = {\n\t\t\t\tadapterType: step.adapterType,\n\t\t\t\toperation: step.operation,\n\t\t\t};\n\t\t\tif (step.retryPolicy !== undefined) exported.retryPolicy = { ...step.retryPolicy };\n\t\t\treturn exported;\n\t\t});\n\t}\n\n\treturn manifest;\n}\n\nfunction exportPolicy(policy: unknown): ModuleManifestPolicy | undefined {\n\tif (!isRecord(policy) || typeof policy.policyId !== \"string\") {\n\t\treturn undefined;\n\t}\n\n\t// Code evaluator: identified by its `evaluate` function (never serialized).\n\tif (typeof policy.evaluate === \"function\") {\n\t\tconst exported: ModuleManifestCodePolicy = {\n\t\t\ttype: \"code\",\n\t\t\tpolicyId: policy.policyId,\n\t\t\tversion: typeof policy.version === \"number\" ? policy.version : 1,\n\t\t};\n\t\tif (typeof policy.previewSafe === \"boolean\") exported.previewSafe = policy.previewSafe;\n\t\treturn exported;\n\t}\n\n\t// Declarative runtime policy definition: pure data, serialized as-is.\n\tif (typeof policy.kind === \"string\" && typeof policy.policyVersion === \"number\") {\n\t\tconst exported: ModuleManifestDataPolicy = {\n\t\t\ttype: \"data\",\n\t\t\tpolicyId: policy.policyId,\n\t\t\tpolicyVersion: policy.policyVersion,\n\t\t\tkind: policy.kind as PolicyKind,\n\t\t};\n\t\tif (isRecord(policy.dataDefinition)) {\n\t\t\texported.dataDefinition = policy.dataDefinition as unknown as DataPolicyDefinition;\n\t\t}\n\t\tif (typeof policy.codeEvaluatorPolicyId === \"string\") {\n\t\t\texported.codeEvaluatorPolicyId = policy.codeEvaluatorPolicyId;\n\t\t}\n\t\tif (isRecord(policy.fallback)) {\n\t\t\texported.fallback = policy.fallback as unknown as PolicyFallbackDefinition;\n\t\t}\n\t\treturn exported;\n\t}\n\n\t// Unknown policy shape: omit rather than guess.\n\treturn undefined;\n}\n\nfunction exportStateMachine(machine: unknown): ModuleManifestStateMachine | undefined {\n\tif (\n\t\t!isRecord(machine) ||\n\t\ttypeof machine.entityType !== \"string\" ||\n\t\t!isRecord(machine.states) ||\n\t\t!Array.isArray(machine.transitions)\n\t) {\n\t\treturn undefined;\n\t}\n\n\tconst definition = machine as unknown as StateMachineDefinition;\n\treturn {\n\t\tentityType: definition.entityType,\n\t\tstates: Object.values(definition.states),\n\t\ttransitions: definition.transitions.map((transition) => ({\n\t\t\tfrom: transition.from,\n\t\t\tto: transition.to,\n\t\t\tcausedByAction: transition.causedByAction,\n\t\t\thasGuard: typeof transition.guard === \"function\",\n\t\t})),\n\t};\n}\n\nfunction exportView(view: ViewContract): ModuleManifestView {\n\tconst output: ModuleManifestView = {\n\t\tname: view.name,\n\t\tversion: view.version,\n\t\tshape: cloneJson(view.shape),\n\t\tconsumes: view.consumes.map((consumption) => ({\n\t\t\teventType: consumption.eventType,\n\t\t\tschemaVersions: [...consumption.schemaVersions],\n\t\t})),\n\t\tscope: view.scope,\n\t\tsnapshotVersion: view.snapshotVersion,\n\t};\n\tif (view.parameterSchema !== undefined) output.parameterSchema = cloneJson(view.parameterSchema);\n\tif (view.compatibleSnapshotVersions) output.compatibleSnapshotVersions = [...view.compatibleSnapshotVersions];\n\tif (view.usage) output.usage = cloneJson(view.usage);\n\treturn output;\n}\n\n/**\n * Export a stable, JSON-serializable manifest of a module's ontology.\n *\n * This is a pure function of the module object: it does not read or mutate the\n * global module/action/policy/state-machine registries, and the module does\n * not need to be registered first. Declaration order is preserved everywhere\n * (nothing is sorted), so the same module object always produces a\n * byte-identical `JSON.stringify` result.\n *\n * The manifest contains definitions only — never raw parameter values,\n * secrets, or runtime data. Function fields are elided (`handler`,\n * policy `evaluate`, transition `guard` → `hasGuard`, dynamic `targetState`,\n * adapter `getInput`).\n */\nexport function exportModuleManifest(module: FabricModule<unknown>): ModuleManifest {\n\tconst manifest: ModuleManifest = {\n\t\tmanifestVersion: MODULE_MANIFEST_VERSION,\n\t\tnamespace: module.namespace,\n\t\tdependencies: (module.dependencies ?? []).map(exportDependency),\n\t\tobjectTypes: (module.objectTypes ?? []).map(exportObjectType),\n\t\tsubjectTypes: [...(module.subjectTypes ?? [])],\n\t\tidPrefixes: (module.idPrefixes ?? []).map((registration) => ({\n\t\t\tprefix: registration.prefix,\n\t\t\tname: registration.name,\n\t\t})),\n\t\teventTypes: (module.eventTypes ?? []).map(exportEventType),\n\t\tactions: (module.actions ?? []).map(exportAction),\n\t\tpolicies: (module.policies ?? [])\n\t\t\t.map(exportPolicy)\n\t\t\t.filter((policy): policy is ModuleManifestPolicy => policy !== undefined),\n\t\tstateMachines: (module.stateMachines ?? [])\n\t\t\t.map(exportStateMachine)\n\t\t\t.filter((machine): machine is ModuleManifestStateMachine => machine !== undefined),\n\t\tviews: (module.views ?? []).map(exportView),\n\t};\n\n\tif (module.version !== undefined) manifest.version = module.version;\n\tif (module.displayName !== undefined) manifest.displayName = module.displayName;\n\tif (module.description !== undefined) manifest.description = module.description;\n\tif (module.capability !== undefined) manifest.capability = cloneJson(module.capability);\n\n\treturn manifest;\n}\n\n/**\n * Export manifests for a set of modules, preserving the input order.\n * Like {@link exportModuleManifest}, this is pure and registry-free.\n */\nexport function exportModuleManifestBundle(\n\tmodules: FabricModule<unknown>[],\n): ModuleManifestBundle {\n\treturn {\n\t\tmanifestVersion: MODULE_MANIFEST_VERSION,\n\t\tmodules: modules.map(exportModuleManifest),\n\t};\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["../manifest/index.ts"],"names":["getModuleDependencyNamespace","getObjectTypeName","getEventTypeName"],"mappings":"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","file":"chunk-ZBXFRJON.cjs","sourcesContent":["import type {\n\tActionExecutionContract,\n\tActionDefinition,\n\tAdapterStepRetryPolicy,\n\tSchemaValidator,\n} from \"../actions\";\nimport {\n\tgetEventTypeName,\n\tgetModuleDependencyNamespace,\n\tgetObjectTypeName,\n\ttype FabricModule,\n\ttype CapabilityMetadata,\n\ttype DeclarativeInvariant,\n\ttype ModuleDependency,\n\ttype ModuleDependencyInput,\n\ttype ObjectRelationDefinition,\n} from \"../modules\";\nimport type { JsonValue, PortableJsonSchema } from \"../objects\";\nimport type {\n\tDataPolicyDefinition,\n\tPolicyFallbackDefinition,\n\tPolicyKind,\n} from \"../policies\";\nimport type { StateDefinition, StateMachineDefinition } from \"../state-machines\";\nimport type { ViewContract } from \"../projections\";\n\n/**\n * Version of the module manifest contract. Bump when the serialized shape\n * changes in a way consumers must detect.\n */\nexport const MODULE_MANIFEST_VERSION = 2 as const;\n\nexport interface ModuleManifestObjectType {\n\ttype: string;\n\tdisplayName?: string;\n\tidPrefix?: string;\n\tschema?: PortableJsonSchema;\n\tsemantics?: Record<string, JsonValue>;\n\trelations?: ObjectRelationDefinition[];\n\tinvariants?: DeclarativeInvariant[];\n}\n\nexport interface ModuleManifestIdPrefix {\n\tprefix: string;\n\tname: string;\n}\n\nexport interface ModuleManifestEventType {\n\teventType: string;\n\tschemaVersion: number;\n\tdescription?: string;\n\tschema?: PortableJsonSchema;\n}\n\nexport interface ModuleManifestActionStateMachine {\n\tentityType: string;\n\t/** Present only when the binding declares a static target state. */\n\ttargetState?: string;\n}\n\nexport interface ModuleManifestAdapterStep {\n\tadapterType: string;\n\toperation: string;\n\tretryPolicy?: AdapterStepRetryPolicy;\n}\n\nexport interface ModuleManifestAction {\n\tactionId: string;\n\tversion: number;\n\tkind: \"atomic\" | \"saga\";\n\tidempotent: boolean;\n\tmutatesDomain: boolean;\n\temitsEvents: string[];\n\tpolicies?: string[];\n\trequiredRoles?: string[];\n\trequiredPermissions?: string[];\n\teventPhase?: \"before_adapters\" | \"after_adapters\";\n\texecution?: ActionExecutionContract;\n\t/**\n\t * JSON Schema for the action parameters, present only when the action's\n\t * `schema` validator implements {@link JsonSchemaExportableValidator}.\n\t */\n\tparameterSchema?: unknown;\n\tparameterSchemaFormat?: \"json-schema\";\n\tresultSchema?: unknown;\n\tresultSchemaFormat?: \"json-schema\";\n\tstateMachine?: ModuleManifestActionStateMachine;\n\tadapterSteps?: ModuleManifestAdapterStep[];\n}\n\nexport interface ModuleManifestCodePolicy {\n\ttype: \"code\";\n\tpolicyId: string;\n\tversion: number;\n\tpreviewSafe?: boolean;\n}\n\nexport interface ModuleManifestDataPolicy {\n\ttype: \"data\";\n\tpolicyId: string;\n\tpolicyVersion: number;\n\tkind: PolicyKind;\n\tdataDefinition?: DataPolicyDefinition;\n\tcodeEvaluatorPolicyId?: string;\n\tfallback?: PolicyFallbackDefinition;\n}\n\nexport type ModuleManifestPolicy = ModuleManifestCodePolicy | ModuleManifestDataPolicy;\n\nexport interface ModuleManifestStateMachineTransition {\n\tfrom: string;\n\tto: string;\n\tcausedByAction: string;\n\t/** `true` when the transition declares a guard function. The guard itself is never serialized. */\n\thasGuard: boolean;\n}\n\nexport interface ModuleManifestStateMachine {\n\tentityType: string;\n\t/** States in declaration order (`Object.values` order of the definition record). */\n\tstates: StateDefinition[];\n\ttransitions: ModuleManifestStateMachineTransition[];\n}\n\nexport interface ModuleManifestView {\n\tname: string;\n\tversion: string;\n\tshape: PortableJsonSchema;\n\tparameterSchema?: PortableJsonSchema;\n\tconsumes: Array<{ eventType: string; schemaVersions: number[] }>;\n\tscope: \"tenant-space\";\n\tsnapshotVersion: number;\n\tcompatibleSnapshotVersions?: number[];\n\tusage?: ViewContract[\"usage\"];\n}\n\n/**\n * Stable, JSON-serializable description of a {@link FabricModule}'s ontology:\n * object types, subject types, id prefixes, event types, actions, policies,\n * and state machines. Intended for downstream tooling (semantics exporters,\n * docs generators, tool generators) that cannot consume live module code.\n *\n * The manifest contains definitions only — never raw parameter values,\n * secrets, or runtime data. Function fields (`handler`, `evaluate`, `guard`,\n * dynamic `targetState`, adapter `getInput`) are never serialized.\n */\nexport interface ModuleManifest {\n\tmanifestVersion: typeof MODULE_MANIFEST_VERSION;\n\tnamespace: string;\n\tversion?: string;\n\tdisplayName?: string;\n\tdescription?: string;\n\tcapability?: CapabilityMetadata;\n\tdependencies: ModuleDependency[];\n\tobjectTypes: ModuleManifestObjectType[];\n\tsubjectTypes: string[];\n\tidPrefixes: ModuleManifestIdPrefix[];\n\teventTypes: ModuleManifestEventType[];\n\tactions: ModuleManifestAction[];\n\tpolicies: ModuleManifestPolicy[];\n\tstateMachines: ModuleManifestStateMachine[];\n\tviews: ModuleManifestView[];\n}\n\nexport interface ModuleManifestBundle {\n\tmanifestVersion: typeof MODULE_MANIFEST_VERSION;\n\t/** Manifests in the input module order. */\n\tmodules: ModuleManifest[];\n}\n\n/** Manifest v1 remains accepted by v2 readers; missing v2 fields normalize to absence. */\nexport type ModuleManifestObjectTypeV1 = Omit<\n\tModuleManifestObjectType,\n\t\"schema\" | \"semantics\" | \"relations\" | \"invariants\"\n>;\nexport type ModuleManifestActionV1 = Omit<\n\tModuleManifestAction,\n\t\"resultSchema\" | \"resultSchemaFormat\"\n>;\nexport type ModuleManifestV1 = Omit<\n\tModuleManifest,\n\t\"manifestVersion\" | \"objectTypes\" | \"actions\" | \"views\"\n> & {\n\tmanifestVersion: 1;\n\tobjectTypes: ModuleManifestObjectTypeV1[];\n\tactions: ModuleManifestActionV1[];\n};\nexport type ModuleManifestBundleV1 = Omit<ModuleManifestBundle, \"manifestVersion\" | \"modules\"> & {\n\tmanifestVersion: 1;\n\tmodules: ModuleManifestV1[];\n};\n\nexport function normalizeModuleManifest(\n\tmanifest: ModuleManifest | ModuleManifestV1,\n): ModuleManifest {\n\tconst version: number = manifest.manifestVersion;\n\tif (version !== 1 && version !== MODULE_MANIFEST_VERSION) {\n\t\tthrow new Error(`Unsupported module manifest version: ${String(version)}`);\n\t}\n\treturn {\n\t\t...manifest,\n\t\tmanifestVersion: MODULE_MANIFEST_VERSION,\n\t\tviews: \"views\" in manifest && Array.isArray(manifest.views) ? manifest.views : [],\n\t};\n}\n\nexport function normalizeModuleManifestBundle(\n\tbundle: ModuleManifestBundle | ModuleManifestBundleV1,\n): ModuleManifestBundle {\n\tconst version: number = bundle.manifestVersion;\n\tif (version !== 1 && version !== MODULE_MANIFEST_VERSION) {\n\t\tthrow new Error(`Unsupported module manifest bundle version: ${String(version)}`);\n\t}\n\treturn {\n\t\tmanifestVersion: MODULE_MANIFEST_VERSION,\n\t\tmodules: bundle.modules.map((manifest) => normalizeModuleManifest(manifest)),\n\t};\n}\n\n/**\n * A {@link SchemaValidator} that can also export its parameter schema as JSON\n * Schema (for example a Zod 4 schema via `z.toJSONSchema`). Keeps the platform\n * zero-dependency while letting schema-bearing actions flow into manifests.\n */\nexport interface JsonSchemaExportableValidator extends SchemaValidator {\n\ttoJSONSchema(): Record<string, unknown>;\n}\n\nexport function isJsonSchemaExportableValidator(\n\tschema: SchemaValidator,\n): schema is JsonSchemaExportableValidator {\n\treturn (\n\t\ttypeof (schema as Partial<JsonSchemaExportableValidator>).toJSONSchema === \"function\"\n\t);\n}\n\nfunction isRecord(value: unknown): value is Record<string, unknown> {\n\treturn value !== null && typeof value === \"object\" && !Array.isArray(value);\n}\n\nfunction exportDependency(dependency: ModuleDependencyInput): ModuleDependency {\n\tconst namespace = getModuleDependencyNamespace(dependency);\n\tif (typeof dependency === \"string\") {\n\t\treturn { namespace };\n\t}\n\tconst normalized: ModuleDependency = { namespace };\n\tif (dependency.version !== undefined) normalized.version = dependency.version;\n\tif (dependency.optional !== undefined) normalized.optional = dependency.optional;\n\treturn normalized;\n}\n\nfunction exportObjectType(\n\tobjectType: NonNullable<FabricModule[\"objectTypes\"]>[number],\n): ModuleManifestObjectType {\n\tif (typeof objectType === \"string\") {\n\t\treturn { type: objectType };\n\t}\n\tconst normalized: ModuleManifestObjectType = { type: getObjectTypeName(objectType) };\n\tif (objectType.displayName !== undefined) normalized.displayName = objectType.displayName;\n\tif (objectType.idPrefix !== undefined) normalized.idPrefix = objectType.idPrefix;\n\tif (objectType.schema !== undefined) normalized.schema = cloneJson(objectType.schema);\n\tif (objectType.semantics !== undefined) normalized.semantics = cloneJson(objectType.semantics);\n\tif (objectType.relations !== undefined) {\n\t\tnormalized.relations = objectType.relations.map((relation) => ({ ...relation }));\n\t}\n\tif (objectType.invariants !== undefined) {\n\t\tnormalized.invariants = objectType.invariants.map((invariant) => ({ ...invariant }));\n\t}\n\treturn normalized;\n}\n\nfunction cloneJson<T>(value: T): T {\n\tif (Array.isArray(value)) return value.map((item) => cloneJson(item)) as T;\n\tif (value !== null && typeof value === \"object\") {\n\t\treturn Object.fromEntries(\n\t\t\tObject.entries(value as Record<string, unknown>).map(([key, child]) => [key, cloneJson(child)]),\n\t\t) as T;\n\t}\n\treturn value;\n}\n\nfunction exportEventType(\n\teventType: NonNullable<FabricModule[\"eventTypes\"]>[number],\n): ModuleManifestEventType {\n\tif (typeof eventType === \"string\") {\n\t\t// String registrations carry no explicit schema version; the events\n\t\t// registry treats the bare name as the initial version of the type.\n\t\treturn { eventType, schemaVersion: 1 };\n\t}\n\tconst normalized: ModuleManifestEventType = {\n\t\teventType: getEventTypeName(eventType),\n\t\tschemaVersion: eventType.schemaVersion,\n\t};\n\tif (eventType.description !== undefined) normalized.description = eventType.description;\n\tif (eventType.schema !== undefined) normalized.schema = cloneJson(eventType.schema);\n\treturn normalized;\n}\n\nfunction exportAction(action: ActionDefinition): ModuleManifestAction {\n\tconst manifest: ModuleManifestAction = {\n\t\tactionId: action.actionId,\n\t\tversion: action.version,\n\t\tkind: action.kind ?? \"atomic\",\n\t\tidempotent: action.idempotent,\n\t\tmutatesDomain: action.mutatesDomain,\n\t\temitsEvents: [...action.emitsEvents],\n\t};\n\n\tif (action.policies !== undefined) manifest.policies = [...action.policies];\n\tif (action.requiredRoles !== undefined) manifest.requiredRoles = [...action.requiredRoles];\n\tif (action.requiredPermissions !== undefined) {\n\t\tmanifest.requiredPermissions = [...action.requiredPermissions];\n\t}\n\tif (action.eventPhase !== undefined) manifest.eventPhase = action.eventPhase;\n\tif (action.execution !== undefined) manifest.execution = cloneJson(action.execution);\n\n\tif (isJsonSchemaExportableValidator(action.schema)) {\n\t\ttry {\n\t\t\tmanifest.parameterSchema = action.schema.toJSONSchema();\n\t\t\tmanifest.parameterSchemaFormat = \"json-schema\";\n\t\t} catch {\n\t\t\t// Runtime-valid schemas that cannot be represented portably remain executable;\n\t\t\t// build-time consumers see the schema as unavailable rather than crashing export.\n\t\t}\n\t}\n\tif (action.resultSchema && isJsonSchemaExportableValidator(action.resultSchema)) {\n\t\ttry {\n\t\t\tmanifest.resultSchema = action.resultSchema.toJSONSchema();\n\t\t\tmanifest.resultSchemaFormat = \"json-schema\";\n\t\t} catch {\n\t\t\t// See parameter-schema behavior above.\n\t\t}\n\t}\n\n\tif (action.stateMachine !== undefined) {\n\t\tconst binding: ModuleManifestActionStateMachine = {\n\t\t\tentityType: action.stateMachine.entityType,\n\t\t};\n\t\tif (typeof action.stateMachine.targetState === \"string\") {\n\t\t\tbinding.targetState = action.stateMachine.targetState;\n\t\t}\n\t\tmanifest.stateMachine = binding;\n\t}\n\n\tif (action.adapterSteps !== undefined) {\n\t\tmanifest.adapterSteps = action.adapterSteps.map((step) => {\n\t\t\tconst exported: ModuleManifestAdapterStep = {\n\t\t\t\tadapterType: step.adapterType,\n\t\t\t\toperation: step.operation,\n\t\t\t};\n\t\t\tif (step.retryPolicy !== undefined) exported.retryPolicy = { ...step.retryPolicy };\n\t\t\treturn exported;\n\t\t});\n\t}\n\n\treturn manifest;\n}\n\nfunction exportPolicy(policy: unknown): ModuleManifestPolicy | undefined {\n\tif (!isRecord(policy) || typeof policy.policyId !== \"string\") {\n\t\treturn undefined;\n\t}\n\n\t// Code evaluator: identified by its `evaluate` function (never serialized).\n\tif (typeof policy.evaluate === \"function\") {\n\t\tconst exported: ModuleManifestCodePolicy = {\n\t\t\ttype: \"code\",\n\t\t\tpolicyId: policy.policyId,\n\t\t\tversion: typeof policy.version === \"number\" ? policy.version : 1,\n\t\t};\n\t\tif (typeof policy.previewSafe === \"boolean\") exported.previewSafe = policy.previewSafe;\n\t\treturn exported;\n\t}\n\n\t// Declarative runtime policy definition: pure data, serialized as-is.\n\tif (typeof policy.kind === \"string\" && typeof policy.policyVersion === \"number\") {\n\t\tconst exported: ModuleManifestDataPolicy = {\n\t\t\ttype: \"data\",\n\t\t\tpolicyId: policy.policyId,\n\t\t\tpolicyVersion: policy.policyVersion,\n\t\t\tkind: policy.kind as PolicyKind,\n\t\t};\n\t\tif (isRecord(policy.dataDefinition)) {\n\t\t\texported.dataDefinition = policy.dataDefinition as unknown as DataPolicyDefinition;\n\t\t}\n\t\tif (typeof policy.codeEvaluatorPolicyId === \"string\") {\n\t\t\texported.codeEvaluatorPolicyId = policy.codeEvaluatorPolicyId;\n\t\t}\n\t\tif (isRecord(policy.fallback)) {\n\t\t\texported.fallback = policy.fallback as unknown as PolicyFallbackDefinition;\n\t\t}\n\t\treturn exported;\n\t}\n\n\t// Unknown policy shape: omit rather than guess.\n\treturn undefined;\n}\n\nfunction exportStateMachine(machine: unknown): ModuleManifestStateMachine | undefined {\n\tif (\n\t\t!isRecord(machine) ||\n\t\ttypeof machine.entityType !== \"string\" ||\n\t\t!isRecord(machine.states) ||\n\t\t!Array.isArray(machine.transitions)\n\t) {\n\t\treturn undefined;\n\t}\n\n\tconst definition = machine as unknown as StateMachineDefinition;\n\treturn {\n\t\tentityType: definition.entityType,\n\t\tstates: Object.values(definition.states),\n\t\ttransitions: definition.transitions.map((transition) => ({\n\t\t\tfrom: transition.from,\n\t\t\tto: transition.to,\n\t\t\tcausedByAction: transition.causedByAction,\n\t\t\thasGuard: typeof transition.guard === \"function\",\n\t\t})),\n\t};\n}\n\nfunction exportView(view: ViewContract): ModuleManifestView {\n\tconst output: ModuleManifestView = {\n\t\tname: view.name,\n\t\tversion: view.version,\n\t\tshape: cloneJson(view.shape),\n\t\tconsumes: view.consumes.map((consumption) => ({\n\t\t\teventType: consumption.eventType,\n\t\t\tschemaVersions: [...consumption.schemaVersions],\n\t\t})),\n\t\tscope: view.scope,\n\t\tsnapshotVersion: view.snapshotVersion,\n\t};\n\tif (view.parameterSchema !== undefined) output.parameterSchema = cloneJson(view.parameterSchema);\n\tif (view.compatibleSnapshotVersions) output.compatibleSnapshotVersions = [...view.compatibleSnapshotVersions];\n\tif (view.usage) output.usage = cloneJson(view.usage);\n\treturn output;\n}\n\n/**\n * Export a stable, JSON-serializable manifest of a module's ontology.\n *\n * This is a pure function of the module object: it does not read or mutate the\n * global module/action/policy/state-machine registries, and the module does\n * not need to be registered first. Declaration order is preserved everywhere\n * (nothing is sorted), so the same module object always produces a\n * byte-identical `JSON.stringify` result.\n *\n * The manifest contains definitions only — never raw parameter values,\n * secrets, or runtime data. Function fields are elided (`handler`,\n * policy `evaluate`, transition `guard` → `hasGuard`, dynamic `targetState`,\n * adapter `getInput`).\n */\nexport function exportModuleManifest(module: FabricModule<unknown>): ModuleManifest {\n\tconst manifest: ModuleManifest = {\n\t\tmanifestVersion: MODULE_MANIFEST_VERSION,\n\t\tnamespace: module.namespace,\n\t\tdependencies: (module.dependencies ?? []).map(exportDependency),\n\t\tobjectTypes: (module.objectTypes ?? []).map(exportObjectType),\n\t\tsubjectTypes: [...(module.subjectTypes ?? [])],\n\t\tidPrefixes: (module.idPrefixes ?? []).map((registration) => ({\n\t\t\tprefix: registration.prefix,\n\t\t\tname: registration.name,\n\t\t})),\n\t\teventTypes: (module.eventTypes ?? []).map(exportEventType),\n\t\tactions: (module.actions ?? []).map(exportAction),\n\t\tpolicies: (module.policies ?? [])\n\t\t\t.map(exportPolicy)\n\t\t\t.filter((policy): policy is ModuleManifestPolicy => policy !== undefined),\n\t\tstateMachines: (module.stateMachines ?? [])\n\t\t\t.map(exportStateMachine)\n\t\t\t.filter((machine): machine is ModuleManifestStateMachine => machine !== undefined),\n\t\tviews: (module.views ?? []).map(exportView),\n\t};\n\n\tif (module.version !== undefined) manifest.version = module.version;\n\tif (module.displayName !== undefined) manifest.displayName = module.displayName;\n\tif (module.description !== undefined) manifest.description = module.description;\n\tif (module.capability !== undefined) manifest.capability = cloneJson(module.capability);\n\n\treturn manifest;\n}\n\n/**\n * Export manifests for a set of modules, preserving the input order.\n * Like {@link exportModuleManifest}, this is pure and registry-free.\n */\nexport function exportModuleManifestBundle(\n\tmodules: FabricModule<unknown>[],\n): ModuleManifestBundle {\n\treturn {\n\t\tmanifestVersion: MODULE_MANIFEST_VERSION,\n\t\tmodules: modules.map(exportModuleManifest),\n\t};\n}\n"]}
|
package/dist/events/index.cjs
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunk2AE6TMAX_cjs = require('../chunk-2AE6TMAX.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
Object.defineProperty(exports, "createEventContractRegistry", {
|
|
8
8
|
enumerable: true,
|
|
9
|
-
get: function () { return
|
|
9
|
+
get: function () { return chunk2AE6TMAX_cjs.createEventContractRegistry; }
|
|
10
10
|
});
|
|
11
11
|
//# sourceMappingURL=index.cjs.map
|
|
12
12
|
//# sourceMappingURL=index.cjs.map
|
package/dist/events/index.js
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var chunkZBXFRJON_cjs = require('./chunk-ZBXFRJON.cjs');
|
|
4
|
+
var chunkKIVQBZOA_cjs = require('./chunk-KIVQBZOA.cjs');
|
|
5
5
|
var chunkIFW43ELT_cjs = require('./chunk-IFW43ELT.cjs');
|
|
6
6
|
var chunkVZ6C4LXC_cjs = require('./chunk-VZ6C4LXC.cjs');
|
|
7
7
|
var chunkX3GHYMAJ_cjs = require('./chunk-X3GHYMAJ.cjs');
|
|
8
8
|
var chunkCXR6KEKQ_cjs = require('./chunk-CXR6KEKQ.cjs');
|
|
9
9
|
var chunkWI7CWNYI_cjs = require('./chunk-WI7CWNYI.cjs');
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var
|
|
10
|
+
var chunkUSDLP4E7_cjs = require('./chunk-USDLP4E7.cjs');
|
|
11
|
+
var chunkMSABJAED_cjs = require('./chunk-MSABJAED.cjs');
|
|
12
|
+
var chunkXZQZQ5SW_cjs = require('./chunk-XZQZQ5SW.cjs');
|
|
13
13
|
var chunkF3E5SXPN_cjs = require('./chunk-F3E5SXPN.cjs');
|
|
14
|
-
var
|
|
14
|
+
var chunk2AE6TMAX_cjs = require('./chunk-2AE6TMAX.cjs');
|
|
15
15
|
require('./chunk-PG5LYTUX.cjs');
|
|
16
16
|
var chunkTBS2S5AX_cjs = require('./chunk-TBS2S5AX.cjs');
|
|
17
17
|
var chunkLZSE6QGQ_cjs = require('./chunk-LZSE6QGQ.cjs');
|
|
@@ -20,59 +20,59 @@ var chunkLZSE6QGQ_cjs = require('./chunk-LZSE6QGQ.cjs');
|
|
|
20
20
|
|
|
21
21
|
Object.defineProperty(exports, "MODULE_MANIFEST_VERSION", {
|
|
22
22
|
enumerable: true,
|
|
23
|
-
get: function () { return
|
|
23
|
+
get: function () { return chunkZBXFRJON_cjs.MODULE_MANIFEST_VERSION; }
|
|
24
24
|
});
|
|
25
25
|
Object.defineProperty(exports, "exportModuleManifest", {
|
|
26
26
|
enumerable: true,
|
|
27
|
-
get: function () { return
|
|
27
|
+
get: function () { return chunkZBXFRJON_cjs.exportModuleManifest; }
|
|
28
28
|
});
|
|
29
29
|
Object.defineProperty(exports, "exportModuleManifestBundle", {
|
|
30
30
|
enumerable: true,
|
|
31
|
-
get: function () { return
|
|
31
|
+
get: function () { return chunkZBXFRJON_cjs.exportModuleManifestBundle; }
|
|
32
32
|
});
|
|
33
33
|
Object.defineProperty(exports, "isJsonSchemaExportableValidator", {
|
|
34
34
|
enumerable: true,
|
|
35
|
-
get: function () { return
|
|
35
|
+
get: function () { return chunkZBXFRJON_cjs.isJsonSchemaExportableValidator; }
|
|
36
36
|
});
|
|
37
37
|
Object.defineProperty(exports, "normalizeModuleManifest", {
|
|
38
38
|
enumerable: true,
|
|
39
|
-
get: function () { return
|
|
39
|
+
get: function () { return chunkZBXFRJON_cjs.normalizeModuleManifest; }
|
|
40
40
|
});
|
|
41
41
|
Object.defineProperty(exports, "normalizeModuleManifestBundle", {
|
|
42
42
|
enumerable: true,
|
|
43
|
-
get: function () { return
|
|
43
|
+
get: function () { return chunkZBXFRJON_cjs.normalizeModuleManifestBundle; }
|
|
44
44
|
});
|
|
45
45
|
Object.defineProperty(exports, "createModuleRegistry", {
|
|
46
46
|
enumerable: true,
|
|
47
|
-
get: function () { return
|
|
47
|
+
get: function () { return chunkKIVQBZOA_cjs.createModuleRegistry; }
|
|
48
48
|
});
|
|
49
49
|
Object.defineProperty(exports, "getEventTypeName", {
|
|
50
50
|
enumerable: true,
|
|
51
|
-
get: function () { return
|
|
51
|
+
get: function () { return chunkKIVQBZOA_cjs.getEventTypeName; }
|
|
52
52
|
});
|
|
53
53
|
Object.defineProperty(exports, "getModuleDependencyNamespace", {
|
|
54
54
|
enumerable: true,
|
|
55
|
-
get: function () { return
|
|
55
|
+
get: function () { return chunkKIVQBZOA_cjs.getModuleDependencyNamespace; }
|
|
56
56
|
});
|
|
57
57
|
Object.defineProperty(exports, "getObjectTypeName", {
|
|
58
58
|
enumerable: true,
|
|
59
|
-
get: function () { return
|
|
59
|
+
get: function () { return chunkKIVQBZOA_cjs.getObjectTypeName; }
|
|
60
60
|
});
|
|
61
61
|
Object.defineProperty(exports, "registerFabricModule", {
|
|
62
62
|
enumerable: true,
|
|
63
|
-
get: function () { return
|
|
63
|
+
get: function () { return chunkKIVQBZOA_cjs.registerFabricModule; }
|
|
64
64
|
});
|
|
65
65
|
Object.defineProperty(exports, "registerFabricModules", {
|
|
66
66
|
enumerable: true,
|
|
67
|
-
get: function () { return
|
|
67
|
+
get: function () { return chunkKIVQBZOA_cjs.registerFabricModules; }
|
|
68
68
|
});
|
|
69
69
|
Object.defineProperty(exports, "validateAndOrderFabricModules", {
|
|
70
70
|
enumerable: true,
|
|
71
|
-
get: function () { return
|
|
71
|
+
get: function () { return chunkKIVQBZOA_cjs.validateAndOrderFabricModules; }
|
|
72
72
|
});
|
|
73
73
|
Object.defineProperty(exports, "validateModuleNamespace", {
|
|
74
74
|
enumerable: true,
|
|
75
|
-
get: function () { return
|
|
75
|
+
get: function () { return chunkKIVQBZOA_cjs.validateModuleNamespace; }
|
|
76
76
|
});
|
|
77
77
|
Object.defineProperty(exports, "assertObjectType", {
|
|
78
78
|
enumerable: true,
|
|
@@ -188,67 +188,67 @@ Object.defineProperty(exports, "validateStateMachineTransition", {
|
|
|
188
188
|
});
|
|
189
189
|
Object.defineProperty(exports, "createDeterministicIdFactory", {
|
|
190
190
|
enumerable: true,
|
|
191
|
-
get: function () { return
|
|
191
|
+
get: function () { return chunkUSDLP4E7_cjs.createDeterministicIdFactory; }
|
|
192
192
|
});
|
|
193
193
|
Object.defineProperty(exports, "createFakeActionContext", {
|
|
194
194
|
enumerable: true,
|
|
195
|
-
get: function () { return
|
|
195
|
+
get: function () { return chunkUSDLP4E7_cjs.createFakeActionContext; }
|
|
196
196
|
});
|
|
197
197
|
Object.defineProperty(exports, "createInMemoryAdapterRegistry", {
|
|
198
198
|
enumerable: true,
|
|
199
|
-
get: function () { return
|
|
199
|
+
get: function () { return chunkUSDLP4E7_cjs.createInMemoryAdapterRegistry; }
|
|
200
200
|
});
|
|
201
201
|
Object.defineProperty(exports, "ACTOR_TYPES", {
|
|
202
202
|
enumerable: true,
|
|
203
|
-
get: function () { return
|
|
203
|
+
get: function () { return chunkMSABJAED_cjs.ACTOR_TYPES; }
|
|
204
204
|
});
|
|
205
205
|
Object.defineProperty(exports, "assertActionId", {
|
|
206
206
|
enumerable: true,
|
|
207
|
-
get: function () { return
|
|
207
|
+
get: function () { return chunkMSABJAED_cjs.assertActionId; }
|
|
208
208
|
});
|
|
209
209
|
Object.defineProperty(exports, "assertActorType", {
|
|
210
210
|
enumerable: true,
|
|
211
|
-
get: function () { return
|
|
211
|
+
get: function () { return chunkMSABJAED_cjs.assertActorType; }
|
|
212
212
|
});
|
|
213
213
|
Object.defineProperty(exports, "createActionRegistry", {
|
|
214
214
|
enumerable: true,
|
|
215
|
-
get: function () { return
|
|
215
|
+
get: function () { return chunkMSABJAED_cjs.createActionRegistry; }
|
|
216
216
|
});
|
|
217
217
|
Object.defineProperty(exports, "isActorType", {
|
|
218
218
|
enumerable: true,
|
|
219
|
-
get: function () { return
|
|
219
|
+
get: function () { return chunkMSABJAED_cjs.isActorType; }
|
|
220
220
|
});
|
|
221
221
|
Object.defineProperty(exports, "AdapterRegistry", {
|
|
222
222
|
enumerable: true,
|
|
223
|
-
get: function () { return
|
|
223
|
+
get: function () { return chunkXZQZQ5SW_cjs.AdapterRegistry; }
|
|
224
224
|
});
|
|
225
225
|
Object.defineProperty(exports, "MissingAdapterRegistrationError", {
|
|
226
226
|
enumerable: true,
|
|
227
|
-
get: function () { return
|
|
227
|
+
get: function () { return chunkXZQZQ5SW_cjs.MissingAdapterRegistrationError; }
|
|
228
228
|
});
|
|
229
229
|
Object.defineProperty(exports, "assertAdapterOutcomeConsistency", {
|
|
230
230
|
enumerable: true,
|
|
231
|
-
get: function () { return
|
|
231
|
+
get: function () { return chunkXZQZQ5SW_cjs.assertAdapterOutcomeConsistency; }
|
|
232
232
|
});
|
|
233
233
|
Object.defineProperty(exports, "classifyAdapterOutcome", {
|
|
234
234
|
enumerable: true,
|
|
235
|
-
get: function () { return
|
|
235
|
+
get: function () { return chunkXZQZQ5SW_cjs.classifyAdapterOutcome; }
|
|
236
236
|
});
|
|
237
237
|
Object.defineProperty(exports, "executeWithAdapterRetry", {
|
|
238
238
|
enumerable: true,
|
|
239
|
-
get: function () { return
|
|
239
|
+
get: function () { return chunkXZQZQ5SW_cjs.executeWithAdapterRetry; }
|
|
240
240
|
});
|
|
241
241
|
Object.defineProperty(exports, "getRetryDelayMs", {
|
|
242
242
|
enumerable: true,
|
|
243
|
-
get: function () { return
|
|
243
|
+
get: function () { return chunkXZQZQ5SW_cjs.getRetryDelayMs; }
|
|
244
244
|
});
|
|
245
245
|
Object.defineProperty(exports, "resolveAdapterRetryPolicy", {
|
|
246
246
|
enumerable: true,
|
|
247
|
-
get: function () { return
|
|
247
|
+
get: function () { return chunkXZQZQ5SW_cjs.resolveAdapterRetryPolicy; }
|
|
248
248
|
});
|
|
249
249
|
Object.defineProperty(exports, "shouldRetryAdapterOutcome", {
|
|
250
250
|
enumerable: true,
|
|
251
|
-
get: function () { return
|
|
251
|
+
get: function () { return chunkXZQZQ5SW_cjs.shouldRetryAdapterOutcome; }
|
|
252
252
|
});
|
|
253
253
|
Object.defineProperty(exports, "AgentActionPolicyRegistry", {
|
|
254
254
|
enumerable: true,
|
|
@@ -256,7 +256,7 @@ Object.defineProperty(exports, "AgentActionPolicyRegistry", {
|
|
|
256
256
|
});
|
|
257
257
|
Object.defineProperty(exports, "createEventContractRegistry", {
|
|
258
258
|
enumerable: true,
|
|
259
|
-
get: function () { return
|
|
259
|
+
get: function () { return chunk2AE6TMAX_cjs.createEventContractRegistry; }
|
|
260
260
|
});
|
|
261
261
|
Object.defineProperty(exports, "FABRIC_GOVERNANCE_CONTRACT_VERSION", {
|
|
262
262
|
enumerable: true,
|
package/dist/index.d.cts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { ACTOR_TYPES, ActionCompletionMode, ActionConnectivity, ActionConsistency, ActionContext, ActionDataSensitivity, ActionDefinition, ActionExecutionContract, ActionHandler, ActionId, ActionIdempotencyStance, ActionRegistry, ActionResult, ActionStateMachineBinding, ActionStatus, ActorType, AdapterStep, AdapterStepRetryPolicy, AuthorityMoment, FabricRuntimeServices, SagaChildActionInput, SagaCompletion, SagaCompletionEvent, SagaContext, SagaImplementation, SagaRunChild, SchemaParseIssue, SchemaParseResult, SchemaValidator, assertActionId, assertActorType, createActionRegistry, isActorType } from './actions/index.cjs';
|
|
2
|
-
export { AdapterAttempt, AdapterCircuitBreakerConfig, AdapterExecutionContext, AdapterExecutionResult, AdapterExecutor, AdapterImplementation, AdapterOutcomeEvidence, AdapterOutcomeKind, AdapterRegistry, AdapterRetryPolicy, ExecuteWithRetryOptions, MissingAdapterRegistrationError, ResolvedAdapterRetryPolicy, assertAdapterOutcomeConsistency, classifyAdapterOutcome, executeWithAdapterRetry, getRetryDelayMs, resolveAdapterRetryPolicy, shouldRetryAdapterOutcome } from './adapters/index.cjs';
|
|
2
|
+
export { AcceptedExternalOperation, AdapterAttempt, AdapterCircuitBreakerConfig, AdapterExecutionContext, AdapterExecutionResult, AdapterExecutor, AdapterImplementation, AdapterOutcomeEvidence, AdapterOutcomeKind, AdapterRegistry, AdapterRetryPolicy, ExecuteWithRetryOptions, MissingAdapterRegistrationError, ResolvedAdapterRetryPolicy, assertAdapterOutcomeConsistency, classifyAdapterOutcome, executeWithAdapterRetry, getRetryDelayMs, resolveAdapterRetryPolicy, shouldRetryAdapterOutcome } from './adapters/index.cjs';
|
|
3
3
|
export { AssetEventActorType, AssetEventEnvelope, AssetEventSubjectType, AssetEventType, EventContractRegistry, EventProvenance, createEventContractRegistry } from './events/index.cjs';
|
|
4
4
|
export { FABRIC_ID_PREFIXES, FabricIdPrefix, createFabricId, isFabricId, parseFabricId } from './ids/index.cjs';
|
|
5
5
|
export { JsonSchemaExportableValidator, MODULE_MANIFEST_VERSION, ModuleManifest, ModuleManifestAction, ModuleManifestActionStateMachine, ModuleManifestActionV1, ModuleManifestAdapterStep, ModuleManifestBundle, ModuleManifestBundleV1, ModuleManifestCodePolicy, ModuleManifestDataPolicy, ModuleManifestEventType, ModuleManifestIdPrefix, ModuleManifestObjectType, ModuleManifestObjectTypeV1, ModuleManifestPolicy, ModuleManifestStateMachine, ModuleManifestStateMachineTransition, ModuleManifestV1, ModuleManifestView, exportModuleManifest, exportModuleManifestBundle, isJsonSchemaExportableValidator, normalizeModuleManifest, normalizeModuleManifestBundle } from './manifest/index.cjs';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { ACTOR_TYPES, ActionCompletionMode, ActionConnectivity, ActionConsistency, ActionContext, ActionDataSensitivity, ActionDefinition, ActionExecutionContract, ActionHandler, ActionId, ActionIdempotencyStance, ActionRegistry, ActionResult, ActionStateMachineBinding, ActionStatus, ActorType, AdapterStep, AdapterStepRetryPolicy, AuthorityMoment, FabricRuntimeServices, SagaChildActionInput, SagaCompletion, SagaCompletionEvent, SagaContext, SagaImplementation, SagaRunChild, SchemaParseIssue, SchemaParseResult, SchemaValidator, assertActionId, assertActorType, createActionRegistry, isActorType } from './actions/index.js';
|
|
2
|
-
export { AdapterAttempt, AdapterCircuitBreakerConfig, AdapterExecutionContext, AdapterExecutionResult, AdapterExecutor, AdapterImplementation, AdapterOutcomeEvidence, AdapterOutcomeKind, AdapterRegistry, AdapterRetryPolicy, ExecuteWithRetryOptions, MissingAdapterRegistrationError, ResolvedAdapterRetryPolicy, assertAdapterOutcomeConsistency, classifyAdapterOutcome, executeWithAdapterRetry, getRetryDelayMs, resolveAdapterRetryPolicy, shouldRetryAdapterOutcome } from './adapters/index.js';
|
|
2
|
+
export { AcceptedExternalOperation, AdapterAttempt, AdapterCircuitBreakerConfig, AdapterExecutionContext, AdapterExecutionResult, AdapterExecutor, AdapterImplementation, AdapterOutcomeEvidence, AdapterOutcomeKind, AdapterRegistry, AdapterRetryPolicy, ExecuteWithRetryOptions, MissingAdapterRegistrationError, ResolvedAdapterRetryPolicy, assertAdapterOutcomeConsistency, classifyAdapterOutcome, executeWithAdapterRetry, getRetryDelayMs, resolveAdapterRetryPolicy, shouldRetryAdapterOutcome } from './adapters/index.js';
|
|
3
3
|
export { AssetEventActorType, AssetEventEnvelope, AssetEventSubjectType, AssetEventType, EventContractRegistry, EventProvenance, createEventContractRegistry } from './events/index.js';
|
|
4
4
|
export { FABRIC_ID_PREFIXES, FabricIdPrefix, createFabricId, isFabricId, parseFabricId } from './ids/index.js';
|
|
5
5
|
export { JsonSchemaExportableValidator, MODULE_MANIFEST_VERSION, ModuleManifest, ModuleManifestAction, ModuleManifestActionStateMachine, ModuleManifestActionV1, ModuleManifestAdapterStep, ModuleManifestBundle, ModuleManifestBundleV1, ModuleManifestCodePolicy, ModuleManifestDataPolicy, ModuleManifestEventType, ModuleManifestIdPrefix, ModuleManifestObjectType, ModuleManifestObjectTypeV1, ModuleManifestPolicy, ModuleManifestStateMachine, ModuleManifestStateMachineTransition, ModuleManifestV1, ModuleManifestView, exportModuleManifest, exportModuleManifestBundle, isJsonSchemaExportableValidator, normalizeModuleManifest, normalizeModuleManifestBundle } from './manifest/index.js';
|
package/dist/index.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
export { MODULE_MANIFEST_VERSION, exportModuleManifest, exportModuleManifestBundle, isJsonSchemaExportableValidator, normalizeModuleManifest, normalizeModuleManifestBundle } from './chunk-
|
|
2
|
-
export { createModuleRegistry, getEventTypeName, getModuleDependencyNamespace, getObjectTypeName, registerFabricModule, registerFabricModules, validateAndOrderFabricModules, validateModuleNamespace } from './chunk-
|
|
1
|
+
export { MODULE_MANIFEST_VERSION, exportModuleManifest, exportModuleManifestBundle, isJsonSchemaExportableValidator, normalizeModuleManifest, normalizeModuleManifestBundle } from './chunk-MC3GSVJ6.js';
|
|
2
|
+
export { createModuleRegistry, getEventTypeName, getModuleDependencyNamespace, getObjectTypeName, registerFabricModule, registerFabricModules, validateAndOrderFabricModules, validateModuleNamespace } from './chunk-GRBZYDEV.js';
|
|
3
3
|
export { assertObjectType, assertPortableJsonSchema, createObjectTypeRegistry, validatePortableJson } from './chunk-ZAEVQSB5.js';
|
|
4
4
|
export { aggregatePolicyOutcomes, assertPolicyId, createPolicyRegistry, evaluatePolicyDefinition, evaluatePolicyDefinitions, evaluateRegisteredPolicies, validateDataPolicyDefinition, validatePolicyGuidance } from './chunk-JFVEPAED.js';
|
|
5
5
|
export { ANONYMIZATION_POLICY_VERSION, AnonymizationEngine, FieldRedactor, PLATFORM_PRIVACY_POLICY_VERSION, anonymizeAssetEventPayload, anonymizeEvidencePacket, anonymizeJsonValue, buildAnonymizationLifecycleEvidence, stableChecksum } from './chunk-ATWWZTRC.js';
|
|
6
6
|
export { createViewRegistry, replayEvents, replayView, viewContractKey } from './chunk-JG35DT2G.js';
|
|
7
7
|
export { createStateMachineRegistry, evaluateStateMachineTransition, validateStateMachineTransition } from './chunk-7GAWSUOG.js';
|
|
8
|
-
export { createDeterministicIdFactory, createFakeActionContext, createInMemoryAdapterRegistry } from './chunk-
|
|
9
|
-
export { ACTOR_TYPES, assertActionId, assertActorType, createActionRegistry, isActorType } from './chunk-
|
|
10
|
-
export { AdapterRegistry, MissingAdapterRegistrationError, assertAdapterOutcomeConsistency, classifyAdapterOutcome, executeWithAdapterRetry, getRetryDelayMs, resolveAdapterRetryPolicy, shouldRetryAdapterOutcome } from './chunk-
|
|
8
|
+
export { createDeterministicIdFactory, createFakeActionContext, createInMemoryAdapterRegistry } from './chunk-DCC3UIUJ.js';
|
|
9
|
+
export { ACTOR_TYPES, assertActionId, assertActorType, createActionRegistry, isActorType } from './chunk-2W6FORTE.js';
|
|
10
|
+
export { AdapterRegistry, MissingAdapterRegistrationError, assertAdapterOutcomeConsistency, classifyAdapterOutcome, executeWithAdapterRetry, getRetryDelayMs, resolveAdapterRetryPolicy, shouldRetryAdapterOutcome } from './chunk-FAG2RTPM.js';
|
|
11
11
|
export { AgentActionPolicyRegistry } from './chunk-OFCCZ27Z.js';
|
|
12
|
-
export { createEventContractRegistry } from './chunk-
|
|
12
|
+
export { createEventContractRegistry } from './chunk-B5DOGDPG.js';
|
|
13
13
|
import './chunk-OZLZHISS.js';
|
|
14
14
|
export { FABRIC_GOVERNANCE_CONTRACT_VERSION, assertGovernanceRuntimeEvidence, assertMutationGovernanceContext } from './chunk-Y2PJLRIY.js';
|
|
15
15
|
export { FABRIC_ID_PREFIXES, createFabricId, isFabricId, parseFabricId } from './chunk-RALMUSOX.js';
|
package/dist/manifest/index.cjs
CHANGED
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('../chunk-
|
|
3
|
+
var chunkZBXFRJON_cjs = require('../chunk-ZBXFRJON.cjs');
|
|
4
|
+
require('../chunk-KIVQBZOA.cjs');
|
|
5
5
|
require('../chunk-IFW43ELT.cjs');
|
|
6
6
|
require('../chunk-CXR6KEKQ.cjs');
|
|
7
|
-
require('../chunk-
|
|
7
|
+
require('../chunk-2AE6TMAX.cjs');
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
Object.defineProperty(exports, "MODULE_MANIFEST_VERSION", {
|
|
12
12
|
enumerable: true,
|
|
13
|
-
get: function () { return
|
|
13
|
+
get: function () { return chunkZBXFRJON_cjs.MODULE_MANIFEST_VERSION; }
|
|
14
14
|
});
|
|
15
15
|
Object.defineProperty(exports, "exportModuleManifest", {
|
|
16
16
|
enumerable: true,
|
|
17
|
-
get: function () { return
|
|
17
|
+
get: function () { return chunkZBXFRJON_cjs.exportModuleManifest; }
|
|
18
18
|
});
|
|
19
19
|
Object.defineProperty(exports, "exportModuleManifestBundle", {
|
|
20
20
|
enumerable: true,
|
|
21
|
-
get: function () { return
|
|
21
|
+
get: function () { return chunkZBXFRJON_cjs.exportModuleManifestBundle; }
|
|
22
22
|
});
|
|
23
23
|
Object.defineProperty(exports, "isJsonSchemaExportableValidator", {
|
|
24
24
|
enumerable: true,
|
|
25
|
-
get: function () { return
|
|
25
|
+
get: function () { return chunkZBXFRJON_cjs.isJsonSchemaExportableValidator; }
|
|
26
26
|
});
|
|
27
27
|
Object.defineProperty(exports, "normalizeModuleManifest", {
|
|
28
28
|
enumerable: true,
|
|
29
|
-
get: function () { return
|
|
29
|
+
get: function () { return chunkZBXFRJON_cjs.normalizeModuleManifest; }
|
|
30
30
|
});
|
|
31
31
|
Object.defineProperty(exports, "normalizeModuleManifestBundle", {
|
|
32
32
|
enumerable: true,
|
|
33
|
-
get: function () { return
|
|
33
|
+
get: function () { return chunkZBXFRJON_cjs.normalizeModuleManifestBundle; }
|
|
34
34
|
});
|
|
35
35
|
//# sourceMappingURL=index.cjs.map
|
|
36
36
|
//# sourceMappingURL=index.cjs.map
|
package/dist/manifest/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { MODULE_MANIFEST_VERSION, exportModuleManifest, exportModuleManifestBundle, isJsonSchemaExportableValidator, normalizeModuleManifest, normalizeModuleManifestBundle } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { MODULE_MANIFEST_VERSION, exportModuleManifest, exportModuleManifestBundle, isJsonSchemaExportableValidator, normalizeModuleManifest, normalizeModuleManifestBundle } from '../chunk-MC3GSVJ6.js';
|
|
2
|
+
import '../chunk-GRBZYDEV.js';
|
|
3
3
|
import '../chunk-ZAEVQSB5.js';
|
|
4
4
|
import '../chunk-JG35DT2G.js';
|
|
5
|
-
import '../chunk-
|
|
5
|
+
import '../chunk-B5DOGDPG.js';
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
package/dist/modules/index.cjs
CHANGED
|
@@ -1,43 +1,43 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkKIVQBZOA_cjs = require('../chunk-KIVQBZOA.cjs');
|
|
4
4
|
require('../chunk-IFW43ELT.cjs');
|
|
5
5
|
require('../chunk-CXR6KEKQ.cjs');
|
|
6
|
-
require('../chunk-
|
|
6
|
+
require('../chunk-2AE6TMAX.cjs');
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
Object.defineProperty(exports, "createModuleRegistry", {
|
|
11
11
|
enumerable: true,
|
|
12
|
-
get: function () { return
|
|
12
|
+
get: function () { return chunkKIVQBZOA_cjs.createModuleRegistry; }
|
|
13
13
|
});
|
|
14
14
|
Object.defineProperty(exports, "getEventTypeName", {
|
|
15
15
|
enumerable: true,
|
|
16
|
-
get: function () { return
|
|
16
|
+
get: function () { return chunkKIVQBZOA_cjs.getEventTypeName; }
|
|
17
17
|
});
|
|
18
18
|
Object.defineProperty(exports, "getModuleDependencyNamespace", {
|
|
19
19
|
enumerable: true,
|
|
20
|
-
get: function () { return
|
|
20
|
+
get: function () { return chunkKIVQBZOA_cjs.getModuleDependencyNamespace; }
|
|
21
21
|
});
|
|
22
22
|
Object.defineProperty(exports, "getObjectTypeName", {
|
|
23
23
|
enumerable: true,
|
|
24
|
-
get: function () { return
|
|
24
|
+
get: function () { return chunkKIVQBZOA_cjs.getObjectTypeName; }
|
|
25
25
|
});
|
|
26
26
|
Object.defineProperty(exports, "registerFabricModule", {
|
|
27
27
|
enumerable: true,
|
|
28
|
-
get: function () { return
|
|
28
|
+
get: function () { return chunkKIVQBZOA_cjs.registerFabricModule; }
|
|
29
29
|
});
|
|
30
30
|
Object.defineProperty(exports, "registerFabricModules", {
|
|
31
31
|
enumerable: true,
|
|
32
|
-
get: function () { return
|
|
32
|
+
get: function () { return chunkKIVQBZOA_cjs.registerFabricModules; }
|
|
33
33
|
});
|
|
34
34
|
Object.defineProperty(exports, "validateAndOrderFabricModules", {
|
|
35
35
|
enumerable: true,
|
|
36
|
-
get: function () { return
|
|
36
|
+
get: function () { return chunkKIVQBZOA_cjs.validateAndOrderFabricModules; }
|
|
37
37
|
});
|
|
38
38
|
Object.defineProperty(exports, "validateModuleNamespace", {
|
|
39
39
|
enumerable: true,
|
|
40
|
-
get: function () { return
|
|
40
|
+
get: function () { return chunkKIVQBZOA_cjs.validateModuleNamespace; }
|
|
41
41
|
});
|
|
42
42
|
//# sourceMappingURL=index.cjs.map
|
|
43
43
|
//# sourceMappingURL=index.cjs.map
|
package/dist/modules/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { createModuleRegistry, getEventTypeName, getModuleDependencyNamespace, getObjectTypeName, registerFabricModule, registerFabricModules, validateAndOrderFabricModules, validateModuleNamespace } from '../chunk-
|
|
1
|
+
export { createModuleRegistry, getEventTypeName, getModuleDependencyNamespace, getObjectTypeName, registerFabricModule, registerFabricModules, validateAndOrderFabricModules, validateModuleNamespace } from '../chunk-GRBZYDEV.js';
|
|
2
2
|
import '../chunk-ZAEVQSB5.js';
|
|
3
3
|
import '../chunk-JG35DT2G.js';
|
|
4
|
-
import '../chunk-
|
|
4
|
+
import '../chunk-B5DOGDPG.js';
|
|
5
5
|
//# sourceMappingURL=index.js.map
|
|
6
6
|
//# sourceMappingURL=index.js.map
|
package/dist/testing/index.cjs
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('../chunk-
|
|
3
|
+
var chunkUSDLP4E7_cjs = require('../chunk-USDLP4E7.cjs');
|
|
4
|
+
require('../chunk-XZQZQ5SW.cjs');
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
|
|
8
8
|
Object.defineProperty(exports, "createDeterministicIdFactory", {
|
|
9
9
|
enumerable: true,
|
|
10
|
-
get: function () { return
|
|
10
|
+
get: function () { return chunkUSDLP4E7_cjs.createDeterministicIdFactory; }
|
|
11
11
|
});
|
|
12
12
|
Object.defineProperty(exports, "createFakeActionContext", {
|
|
13
13
|
enumerable: true,
|
|
14
|
-
get: function () { return
|
|
14
|
+
get: function () { return chunkUSDLP4E7_cjs.createFakeActionContext; }
|
|
15
15
|
});
|
|
16
16
|
Object.defineProperty(exports, "createInMemoryAdapterRegistry", {
|
|
17
17
|
enumerable: true,
|
|
18
|
-
get: function () { return
|
|
18
|
+
get: function () { return chunkUSDLP4E7_cjs.createInMemoryAdapterRegistry; }
|
|
19
19
|
});
|
|
20
20
|
//# sourceMappingURL=index.cjs.map
|
|
21
21
|
//# sourceMappingURL=index.cjs.map
|
package/dist/testing/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { createDeterministicIdFactory, createFakeActionContext, createInMemoryAdapterRegistry } from '../chunk-
|
|
2
|
-
import '../chunk-
|
|
1
|
+
export { createDeterministicIdFactory, createFakeActionContext, createInMemoryAdapterRegistry } from '../chunk-DCC3UIUJ.js';
|
|
2
|
+
import '../chunk-FAG2RTPM.js';
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fabricorg/platform",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.4.0",
|
|
4
4
|
"description": "Generic, vertical-agnostic runtime for ontology-based business applications. Provides actions, modules, events, policies, state machines, adapters, displays, projections, privacy, and evidence contracts. Zero runtime dependencies; portable across any database client and any vertical (lending, insurance, healthcare, legal, etc.).",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"fabric",
|