@prisma-next/family-sql 0.3.0-pr.73.2 → 0.3.0-pr.75.1

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.
Files changed (55) hide show
  1. package/dist/core/assembly.d.ts +25 -0
  2. package/dist/core/assembly.d.ts.map +1 -0
  3. package/dist/core/control-adapter.d.ts +42 -0
  4. package/dist/core/control-adapter.d.ts.map +1 -0
  5. package/dist/core/descriptor.d.ts +31 -0
  6. package/dist/core/descriptor.d.ts.map +1 -0
  7. package/dist/{exports/instance-DiZi2k_2.d.ts → core/instance.d.ts} +30 -15
  8. package/dist/core/instance.d.ts.map +1 -0
  9. package/dist/core/migrations/plan-helpers.d.ts +20 -0
  10. package/dist/core/migrations/plan-helpers.d.ts.map +1 -0
  11. package/dist/core/migrations/policies.d.ts +6 -0
  12. package/dist/core/migrations/policies.d.ts.map +1 -0
  13. package/dist/{exports/types-Bh7ftf0Q.d.ts → core/migrations/types.d.ts} +41 -36
  14. package/dist/core/migrations/types.d.ts.map +1 -0
  15. package/dist/core/runtime-descriptor.d.ts +19 -0
  16. package/dist/core/runtime-descriptor.d.ts.map +1 -0
  17. package/dist/core/runtime-instance.d.ts +54 -0
  18. package/dist/core/runtime-instance.d.ts.map +1 -0
  19. package/dist/core/schema-verify/verify-helpers.d.ts +50 -0
  20. package/dist/core/schema-verify/verify-helpers.d.ts.map +1 -0
  21. package/dist/core/schema-verify/verify-sql-schema.d.ts +45 -0
  22. package/dist/core/schema-verify/verify-sql-schema.d.ts.map +1 -0
  23. package/dist/core/verify.d.ts +39 -0
  24. package/dist/core/verify.d.ts.map +1 -0
  25. package/dist/exports/control-adapter.d.ts +2 -44
  26. package/dist/exports/control-adapter.d.ts.map +1 -0
  27. package/dist/exports/control.d.ts +8 -160
  28. package/dist/exports/control.d.ts.map +1 -0
  29. package/dist/exports/runtime.d.ts +3 -61
  30. package/dist/exports/runtime.d.ts.map +1 -0
  31. package/dist/exports/schema-verify.d.ts +8 -72
  32. package/dist/exports/schema-verify.d.ts.map +1 -0
  33. package/dist/exports/test-utils.d.ts +5 -31
  34. package/dist/exports/test-utils.d.ts.map +1 -0
  35. package/dist/exports/verify.d.ts +2 -28
  36. package/dist/exports/verify.d.ts.map +1 -0
  37. package/package.json +23 -23
  38. package/src/core/assembly.ts +117 -0
  39. package/src/core/control-adapter.ts +52 -0
  40. package/src/core/descriptor.ts +37 -0
  41. package/src/core/instance.ts +887 -0
  42. package/src/core/migrations/plan-helpers.ts +164 -0
  43. package/src/core/migrations/policies.ts +8 -0
  44. package/src/core/migrations/types.ts +380 -0
  45. package/src/core/runtime-descriptor.ts +45 -0
  46. package/src/core/runtime-instance.ts +144 -0
  47. package/src/core/schema-verify/verify-helpers.ts +514 -0
  48. package/src/core/schema-verify/verify-sql-schema.ts +584 -0
  49. package/src/core/verify.ts +177 -0
  50. package/src/exports/control-adapter.ts +1 -0
  51. package/src/exports/control.ts +56 -0
  52. package/src/exports/runtime.ts +7 -0
  53. package/src/exports/schema-verify.ts +11 -0
  54. package/src/exports/test-utils.ts +11 -0
  55. package/src/exports/verify.ts +1 -0
@@ -0,0 +1,50 @@
1
+ /**
2
+ * Pure verification helper functions for SQL schema verification.
3
+ * These functions verify schema IR against contract requirements.
4
+ */
5
+ import type { SchemaIssue, SchemaVerificationNode } from '@prisma-next/core-control-plane/types';
6
+ import type { ForeignKey, Index, PrimaryKey, UniqueConstraint } from '@prisma-next/sql-contract/types';
7
+ import type { SqlForeignKeyIR, SqlIndexIR, SqlSchemaIR, SqlUniqueIR } from '@prisma-next/sql-schema-ir/types';
8
+ import type { ComponentDatabaseDependency } from '../migrations/types';
9
+ /**
10
+ * Compares two arrays of strings for equality (order-sensitive).
11
+ */
12
+ export declare function arraysEqual(a: readonly string[], b: readonly string[]): boolean;
13
+ /**
14
+ * Verifies primary key matches between contract and schema.
15
+ * Returns 'pass' or 'fail'.
16
+ */
17
+ export declare function verifyPrimaryKey(contractPK: PrimaryKey, schemaPK: PrimaryKey | undefined, tableName: string, issues: SchemaIssue[]): 'pass' | 'fail';
18
+ /**
19
+ * Verifies foreign keys match between contract and schema.
20
+ * Returns verification nodes for the tree.
21
+ */
22
+ export declare function verifyForeignKeys(contractFKs: readonly ForeignKey[], schemaFKs: readonly SqlForeignKeyIR[], tableName: string, tablePath: string, issues: SchemaIssue[], strict: boolean): SchemaVerificationNode[];
23
+ /**
24
+ * Verifies unique constraints match between contract and schema.
25
+ * Returns verification nodes for the tree.
26
+ */
27
+ export declare function verifyUniqueConstraints(contractUniques: readonly UniqueConstraint[], schemaUniques: readonly SqlUniqueIR[], tableName: string, tablePath: string, issues: SchemaIssue[], strict: boolean): SchemaVerificationNode[];
28
+ /**
29
+ * Verifies indexes match between contract and schema.
30
+ * Returns verification nodes for the tree.
31
+ */
32
+ export declare function verifyIndexes(contractIndexes: readonly Index[], schemaIndexes: readonly SqlIndexIR[], tableName: string, tablePath: string, issues: SchemaIssue[], strict: boolean): SchemaVerificationNode[];
33
+ /**
34
+ * Verifies database dependencies are installed using component-owned verification hooks.
35
+ * Each dependency provides a pure verifyDatabaseDependencyInstalled function that checks
36
+ * whether the dependency is satisfied based on the in-memory schema IR (no DB I/O).
37
+ *
38
+ * Returns verification nodes for the tree.
39
+ */
40
+ export declare function verifyDatabaseDependencies(dependencies: ReadonlyArray<ComponentDatabaseDependency<unknown>>, schema: SqlSchemaIR, issues: SchemaIssue[]): SchemaVerificationNode[];
41
+ /**
42
+ * Computes counts of pass/warn/fail nodes by traversing the tree.
43
+ */
44
+ export declare function computeCounts(node: SchemaVerificationNode): {
45
+ pass: number;
46
+ warn: number;
47
+ fail: number;
48
+ totalNodes: number;
49
+ };
50
+ //# sourceMappingURL=verify-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-helpers.d.ts","sourceRoot":"","sources":["../../../src/core/schema-verify/verify-helpers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AACjG,OAAO,KAAK,EACV,UAAU,EACV,KAAK,EACL,UAAU,EACV,gBAAgB,EACjB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EACV,eAAe,EACf,UAAU,EACV,WAAW,EACX,WAAW,EACZ,MAAM,kCAAkC,CAAC;AAC1C,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAEvE;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,EAAE,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAU/E;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,UAAU,GAAG,SAAS,EAChC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,WAAW,EAAE,GACpB,MAAM,GAAG,MAAM,CAoCjB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,SAAS,UAAU,EAAE,EAClC,SAAS,EAAE,SAAS,eAAe,EAAE,EACrC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,WAAW,EAAE,EACrB,MAAM,EAAE,OAAO,GACd,sBAAsB,EAAE,CAuG1B;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,eAAe,EAAE,SAAS,gBAAgB,EAAE,EAC5C,aAAa,EAAE,SAAS,WAAW,EAAE,EACrC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,WAAW,EAAE,EACrB,MAAM,EAAE,OAAO,GACd,sBAAsB,EAAE,CAmG1B;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,eAAe,EAAE,SAAS,KAAK,EAAE,EACjC,aAAa,EAAE,SAAS,UAAU,EAAE,EACpC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,WAAW,EAAE,EACrB,MAAM,EAAE,OAAO,GACd,sBAAsB,EAAE,CAoG1B;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,aAAa,CAAC,2BAA2B,CAAC,OAAO,CAAC,CAAC,EACjE,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,WAAW,EAAE,GACpB,sBAAsB,EAAE,CAwC1B;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,sBAAsB,GAAG;IAC3D,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB,CA6BA"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Pure SQL schema verification function.
3
+ *
4
+ * This module provides a pure function that verifies a SqlSchemaIR against
5
+ * a SqlContract without requiring a database connection. It can be reused
6
+ * by migration planners and other tools that need to compare schema states.
7
+ */
8
+ import type { TargetBoundComponentDescriptor } from '@prisma-next/contract/framework-components';
9
+ import type { OperationContext, VerifyDatabaseSchemaResult } from '@prisma-next/core-control-plane/types';
10
+ import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
11
+ import type { SqlSchemaIR } from '@prisma-next/sql-schema-ir/types';
12
+ /**
13
+ * Options for the pure schema verification function.
14
+ */
15
+ export interface VerifySqlSchemaOptions {
16
+ /** The validated SQL contract to verify against */
17
+ readonly contract: SqlContract<SqlStorage>;
18
+ /** The schema IR from introspection (or another source) */
19
+ readonly schema: SqlSchemaIR;
20
+ /** Whether to run in strict mode (detects extra tables/columns) */
21
+ readonly strict: boolean;
22
+ /** Optional operation context for metadata */
23
+ readonly context?: OperationContext;
24
+ /** Type metadata registry for codec consistency warnings */
25
+ readonly typeMetadataRegistry: ReadonlyMap<string, {
26
+ nativeType?: string;
27
+ }>;
28
+ /**
29
+ * Active framework components participating in this composition.
30
+ * All components must have matching familyId ('sql') and targetId.
31
+ */
32
+ readonly frameworkComponents: ReadonlyArray<TargetBoundComponentDescriptor<'sql', string>>;
33
+ }
34
+ /**
35
+ * Verifies that a SqlSchemaIR matches a SqlContract.
36
+ *
37
+ * This is a pure function that does NOT perform any database I/O.
38
+ * It takes an already-introspected schema IR and compares it against
39
+ * the contract requirements.
40
+ *
41
+ * @param options - Verification options
42
+ * @returns VerifyDatabaseSchemaResult with verification tree and issues
43
+ */
44
+ export declare function verifySqlSchema(options: VerifySqlSchemaOptions): VerifyDatabaseSchemaResult;
45
+ //# sourceMappingURL=verify-sql-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-sql-schema.d.ts","sourceRoot":"","sources":["../../../src/core/schema-verify/verify-sql-schema.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,4CAA4C,CAAC;AACjG,OAAO,KAAK,EACV,gBAAgB,EAGhB,0BAA0B,EAC3B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAYpE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,mDAAmD;IACnD,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC3C,2DAA2D;IAC3D,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,mEAAmE;IACnE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,8CAA8C;IAC9C,QAAQ,CAAC,OAAO,CAAC,EAAE,gBAAgB,CAAC;IACpC,4DAA4D;IAC5D,QAAQ,CAAC,oBAAoB,EAAE,WAAW,CAAC,MAAM,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5E;;;OAGG;IACH,QAAQ,CAAC,mBAAmB,EAAE,aAAa,CAAC,8BAA8B,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;CAC5F;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,sBAAsB,GAAG,0BAA0B,CAqe3F"}
@@ -0,0 +1,39 @@
1
+ import type { ContractMarkerRecord } from '@prisma-next/contract/types';
2
+ import type { ControlAdapterDescriptor, ControlDriverInstance, ControlExtensionDescriptor, ControlTargetDescriptor } from '@prisma-next/core-control-plane/types';
3
+ /**
4
+ * Parses a contract marker row from database query result.
5
+ * This is SQL-specific parsing logic (handles SQL row structure with snake_case columns).
6
+ */
7
+ export declare function parseContractMarkerRow(row: unknown): ContractMarkerRecord;
8
+ /**
9
+ * Returns the SQL statement to read the contract marker.
10
+ * This is a migration-plane helper (no runtime imports).
11
+ * @internal - Used internally by readMarker(). Prefer readMarker() for Control Plane usage.
12
+ */
13
+ export declare function readMarkerSql(): {
14
+ readonly sql: string;
15
+ readonly params: readonly unknown[];
16
+ };
17
+ /**
18
+ * Reads the contract marker from the database using the provided driver.
19
+ * Returns the parsed marker record or null if no marker is found.
20
+ * This abstracts SQL-specific details from the Control Plane.
21
+ *
22
+ * @param driver - ControlDriverInstance instance for executing queries
23
+ * @returns Promise resolving to ContractMarkerRecord or null if marker not found
24
+ */
25
+ export declare function readMarker(driver: ControlDriverInstance<'sql', string>): Promise<ContractMarkerRecord | null>;
26
+ /**
27
+ * Collects supported codec type IDs from adapter and extension manifests.
28
+ * Returns a sorted, unique array of type IDs that are declared in the manifests.
29
+ * This enables coverage checks by comparing contract column types against supported types.
30
+ *
31
+ * Note: This extracts type IDs from manifest type imports, not from runtime codec registries.
32
+ * The manifests declare which codec types are available, but the actual type IDs
33
+ * are defined in the codec-types TypeScript modules that are imported.
34
+ *
35
+ * For MVP, we return an empty array since extracting type IDs from TypeScript modules
36
+ * would require runtime evaluation or static analysis. This can be enhanced later.
37
+ */
38
+ export declare function collectSupportedCodecTypeIds<TFamilyId extends string, TTargetId extends string>(descriptors: ReadonlyArray<ControlTargetDescriptor<TFamilyId, TTargetId> | ControlAdapterDescriptor<TFamilyId, TTargetId> | ControlExtensionDescriptor<TFamilyId, TTargetId>>): readonly string[];
39
+ //# sourceMappingURL=verify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/core/verify.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EACV,wBAAwB,EACxB,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,EACxB,MAAM,uCAAuC,CAAC;AAuC/C;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,oBAAoB,CAgCzE;AAED;;;;GAIG;AACH,wBAAgB,aAAa,IAAI;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,CAc7F;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAC9B,MAAM,EAAE,qBAAqB,CAAC,KAAK,EAAE,MAAM,CAAC,GAC3C,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAoCtC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,4BAA4B,CAAC,SAAS,SAAS,MAAM,EAAE,SAAS,SAAS,MAAM,EAC7F,WAAW,EAAE,aAAa,CACtB,uBAAuB,CAAC,SAAS,EAAE,SAAS,CAAC,GAC7C,wBAAwB,CAAC,SAAS,EAAE,SAAS,CAAC,GAC9C,0BAA0B,CAAC,SAAS,EAAE,SAAS,CAAC,CACnD,GACA,SAAS,MAAM,EAAE,CAMnB"}
@@ -1,44 +1,2 @@
1
- import { ControlAdapterInstance, ControlDriverInstance } from '@prisma-next/core-control-plane/types';
2
- import { SqlSchemaIR } from '@prisma-next/sql-schema-ir/types';
3
-
4
- /**
5
- * SQL control adapter interface for control-plane operations.
6
- * Implemented by target-specific adapters (e.g., Postgres, MySQL).
7
- *
8
- * @template TTarget - The target ID (e.g., 'postgres', 'mysql')
9
- */
10
- interface SqlControlAdapter<TTarget extends string = string> extends ControlAdapterInstance<'sql', TTarget> {
11
- /**
12
- * The target ID this adapter implements.
13
- * Used for type tracking and runtime validation.
14
- * @deprecated Use targetId from ControlAdapterInstance instead
15
- */
16
- readonly target: TTarget;
17
- /**
18
- * Introspects a database schema and returns a raw SqlSchemaIR.
19
- *
20
- * This is a pure schema discovery operation that queries the database catalog
21
- * and returns the schema structure without type mapping or contract enrichment.
22
- * Type mapping and enrichment are handled separately by enrichment helpers.
23
- *
24
- * @param driver - ControlDriverInstance instance for executing queries (target-specific)
25
- * @param contractIR - Optional contract IR for contract-guided introspection (filtering, optimization)
26
- * @param schema - Schema name to introspect (defaults to 'public')
27
- * @returns Promise resolving to SqlSchemaIR representing the live database schema
28
- */
29
- introspect(driver: ControlDriverInstance<'sql', TTarget>, contractIR?: unknown, schema?: string): Promise<SqlSchemaIR>;
30
- }
31
- /**
32
- * SQL control adapter descriptor interface.
33
- * Provides a factory method to create control adapter instances.
34
- *
35
- * @template TTarget - The target ID (e.g., 'postgres', 'mysql')
36
- */
37
- interface SqlControlAdapterDescriptor<TTarget extends string = string> {
38
- /**
39
- * Creates a SQL control adapter instance for control-plane operations.
40
- */
41
- create(): SqlControlAdapter<TTarget>;
42
- }
43
-
44
- export type { SqlControlAdapter, SqlControlAdapterDescriptor };
1
+ export type { SqlControlAdapter, SqlControlAdapterDescriptor } from '../core/control-adapter';
2
+ //# sourceMappingURL=control-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control-adapter.d.ts","sourceRoot":"","sources":["../../src/exports/control-adapter.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC"}
@@ -1,165 +1,13 @@
1
- import { OperationRegistry } from '@prisma-next/operations';
2
- import { ControlFamilyDescriptor, ControlAdapterDescriptor, ControlDriverDescriptor, ControlExtensionDescriptor, MigrationOperationPolicy } from '@prisma-next/core-control-plane/types';
3
- export { MigrationOperationClass, MigrationOperationPolicy, MigrationPlan, MigrationPlanOperation, MigrationPlanner, MigrationPlannerConflict, MigrationPlannerResult, TargetMigrationsCapability } from '@prisma-next/core-control-plane/types';
4
- import { SqlControlAdapter } from './control-adapter.js';
5
- import { S as SqlControlFamilyInstance } from './instance-DiZi2k_2.js';
6
- export { a as SchemaVerifyOptions } from './instance-DiZi2k_2.js';
7
- import { S as SqlControlTargetDescriptor, C as CreateSqlMigrationPlanOptions, a as SqlMigrationPlan, b as SqlPlannerConflict, c as SqlPlannerFailureResult, d as SqlPlannerSuccessResult, e as SqlMigrationRunnerErrorCode, A as AnyRecord, f as SqlMigrationRunnerFailure, g as SqlMigrationRunnerSuccessValue } from './types-Bh7ftf0Q.js';
8
- export { h as ComponentDatabaseDependencies, i as ComponentDatabaseDependency, j as SqlControlExtensionDescriptor, k as SqlMigrationPlanContractInfo, n as SqlMigrationPlanOperation, o as SqlMigrationPlanOperationStep, p as SqlMigrationPlanOperationTarget, l as SqlMigrationPlanner, m as SqlMigrationPlannerPlanOptions, q as SqlMigrationRunner, r as SqlMigrationRunnerExecuteCallbacks, s as SqlMigrationRunnerExecuteOptions, t as SqlMigrationRunnerResult, u as SqlPlannerConflictKind, v as SqlPlannerConflictLocation, w as SqlPlannerResult } from './types-Bh7ftf0Q.js';
9
- import { NotOk, Ok } from '@prisma-next/utils/result';
10
- import '@prisma-next/sql-schema-ir/types';
11
- import '@prisma-next/contract/framework-components';
12
- import '@prisma-next/contract/ir';
13
- import '@prisma-next/contract/pack-manifest-types';
14
- import '@prisma-next/contract/types';
15
- import '@prisma-next/core-control-plane/schema-view';
16
- import '@prisma-next/sql-operations';
17
- import '@prisma-next/sql-contract/types';
18
-
19
- type StorageColumn = {
20
- readonly nativeType: string;
21
- readonly codecId: string;
22
- readonly nullable: boolean;
23
- };
24
- type PrimaryKey = {
25
- readonly columns: readonly string[];
26
- readonly name?: string;
27
- };
28
- type UniqueConstraint = {
29
- readonly columns: readonly string[];
30
- readonly name?: string;
31
- };
32
- type Index = {
33
- readonly columns: readonly string[];
34
- readonly name?: string;
35
- };
36
- type ForeignKeyReferences = {
37
- readonly table: string;
38
- readonly columns: readonly string[];
39
- };
40
- type ForeignKey = {
41
- readonly columns: readonly string[];
42
- readonly references: ForeignKeyReferences;
43
- readonly name?: string;
44
- };
45
- type StorageTable = {
46
- readonly columns: Record<string, StorageColumn>;
47
- readonly primaryKey?: PrimaryKey;
48
- readonly uniques: ReadonlyArray<UniqueConstraint>;
49
- readonly indexes: ReadonlyArray<Index>;
50
- readonly foreignKeys: ReadonlyArray<ForeignKey>;
51
- };
52
- type SqlStorage = {
53
- readonly tables: Record<string, StorageTable>;
54
- };
55
- type ModelField = {
56
- readonly column: string;
57
- };
58
- type ModelStorage = {
59
- readonly table: string;
60
- };
61
- type ModelDefinition = {
62
- readonly storage: ModelStorage;
63
- readonly fields: Record<string, ModelField>;
64
- readonly relations: Record<string, unknown>;
65
- };
66
-
67
- /**
68
- * ContractIR types and factories for building contract intermediate representation.
69
- * ContractIR is family-agnostic and used by authoring, emitter, and no-emit runtime.
70
- */
71
- /**
72
- * ContractIR represents the intermediate representation of a contract.
73
- * It is family-agnostic and contains generic storage, models, and relations.
74
- * Note: coreHash and profileHash are computed by the emitter, not part of the IR.
75
- */
76
- interface ContractIR<TStorage extends Record<string, unknown> = Record<string, unknown>, TModels extends Record<string, unknown> = Record<string, unknown>, TRelations extends Record<string, unknown> = Record<string, unknown>> {
77
- readonly schemaVersion: string;
78
- readonly targetFamily: string;
79
- readonly target: string;
80
- readonly models: TModels;
81
- readonly relations: TRelations;
82
- readonly storage: TStorage;
83
- readonly extensionPacks: Record<string, unknown>;
84
- readonly capabilities: Record<string, Record<string, boolean>>;
85
- readonly meta: Record<string, unknown>;
86
- readonly sources: Record<string, unknown>;
87
- }
88
-
89
- /**
90
- * Specifies how to import TypeScript types from a package.
91
- * Used in extension pack manifests to declare codec and operation type imports.
92
- */
93
- interface TypesImportSpec {
94
- readonly package: string;
95
- readonly named: string;
96
- readonly alias: string;
97
- }
98
- /**
99
- * Validation context passed to TargetFamilyHook.validateTypes().
100
- * Contains pre-assembled operation registry, type imports, and extension IDs.
101
- */
102
- interface ValidationContext {
103
- readonly operationRegistry?: OperationRegistry;
104
- readonly codecTypeImports?: ReadonlyArray<TypesImportSpec>;
105
- readonly operationTypeImports?: ReadonlyArray<TypesImportSpec>;
106
- readonly extensionIds?: ReadonlyArray<string>;
107
- }
108
-
109
- /**
110
- * SQL family descriptor implementation.
111
- * Provides the SQL family hook and factory method.
112
- */
113
- declare class SqlFamilyDescriptor implements ControlFamilyDescriptor<'sql', SqlControlFamilyInstance> {
114
- readonly kind: "family";
115
- readonly id = "sql";
116
- readonly familyId: "sql";
117
- readonly version = "0.0.1";
118
- readonly hook: {
119
- readonly id: "sql";
120
- readonly validateTypes: (ir: ContractIR, _ctx: ValidationContext) => void;
121
- readonly validateStructure: (ir: ContractIR) => void;
122
- readonly generateContractTypes: (ir: ContractIR, codecTypeImports: ReadonlyArray<TypesImportSpec>, operationTypeImports: ReadonlyArray<TypesImportSpec>) => string;
123
- readonly generateStorageType: (storage: SqlStorage) => string;
124
- readonly generateModelsType: (models: Record<string, ModelDefinition> | undefined, storage: SqlStorage) => string;
125
- readonly generateRelationsType: (relations: Record<string, unknown> | undefined) => string;
126
- readonly generateMappingsType: (models: Record<string, ModelDefinition> | undefined, storage: SqlStorage, codecTypes: string, operationTypes: string) => string;
127
- };
128
- create<TTargetId extends string, TTargetDetails>(options: {
129
- readonly target: SqlControlTargetDescriptor<TTargetId, TTargetDetails>;
130
- readonly adapter: ControlAdapterDescriptor<'sql', TTargetId, SqlControlAdapter<TTargetId>>;
131
- readonly driver: ControlDriverDescriptor<'sql', TTargetId>;
132
- readonly extensionPacks: readonly ControlExtensionDescriptor<'sql', TTargetId>[];
133
- }): SqlControlFamilyInstance;
134
- }
135
-
136
- declare function createMigrationPlan<TTargetDetails>(options: CreateSqlMigrationPlanOptions<TTargetDetails>): SqlMigrationPlan<TTargetDetails>;
137
- declare function plannerSuccess<TTargetDetails>(plan: SqlMigrationPlan<TTargetDetails>): SqlPlannerSuccessResult<TTargetDetails>;
138
- declare function plannerFailure(conflicts: readonly SqlPlannerConflict[]): SqlPlannerFailureResult;
139
- /**
140
- * Creates a successful migration runner result.
141
- */
142
- declare function runnerSuccess(value: {
143
- operationsPlanned: number;
144
- operationsExecuted: number;
145
- }): Ok<SqlMigrationRunnerSuccessValue>;
146
- /**
147
- * Creates a failed migration runner result.
148
- */
149
- declare function runnerFailure(code: SqlMigrationRunnerErrorCode, summary: string, options?: {
150
- why?: string;
151
- meta?: AnyRecord;
152
- }): NotOk<SqlMigrationRunnerFailure>;
153
-
154
- /**
155
- * Policy used by `db init`: additive-only operations, no widening/destructive steps.
156
- */
157
- declare const INIT_ADDITIVE_POLICY: MigrationOperationPolicy;
158
-
1
+ import { SqlFamilyDescriptor } from '../core/descriptor';
2
+ export type { MigrationOperationClass, MigrationOperationPolicy, MigrationPlan, MigrationPlanner, MigrationPlannerConflict, MigrationPlannerResult, MigrationPlanOperation, TargetMigrationsCapability, } from '@prisma-next/core-control-plane/types';
3
+ export type { SchemaVerifyOptions, SqlControlFamilyInstance } from '../core/instance';
4
+ export { createMigrationPlan, plannerFailure, plannerSuccess, runnerFailure, runnerSuccess, } from '../core/migrations/plan-helpers';
5
+ export { INIT_ADDITIVE_POLICY } from '../core/migrations/policies';
6
+ export type { ComponentDatabaseDependencies, ComponentDatabaseDependency, CreateSqlMigrationPlanOptions, SqlControlExtensionDescriptor, SqlControlTargetDescriptor, SqlMigrationPlan, SqlMigrationPlanContractInfo, SqlMigrationPlanner, SqlMigrationPlannerPlanOptions, SqlMigrationPlanOperation, SqlMigrationPlanOperationStep, SqlMigrationPlanOperationTarget, SqlMigrationRunner, SqlMigrationRunnerErrorCode, SqlMigrationRunnerExecuteCallbacks, SqlMigrationRunnerExecuteOptions, SqlMigrationRunnerFailure, SqlMigrationRunnerResult, SqlMigrationRunnerSuccessValue, SqlPlannerConflict, SqlPlannerConflictKind, SqlPlannerConflictLocation, SqlPlannerFailureResult, SqlPlannerResult, SqlPlannerSuccessResult, } from '../core/migrations/types';
159
7
  /**
160
8
  * SQL family descriptor for control plane (CLI/config).
161
9
  * Provides the SQL family hook and conversion helpers.
162
10
  */
163
11
  declare const _default: SqlFamilyDescriptor;
164
-
165
- export { CreateSqlMigrationPlanOptions, INIT_ADDITIVE_POLICY, SqlControlFamilyInstance, SqlControlTargetDescriptor, SqlMigrationPlan, SqlMigrationRunnerErrorCode, SqlMigrationRunnerFailure, SqlMigrationRunnerSuccessValue, SqlPlannerConflict, SqlPlannerFailureResult, SqlPlannerSuccessResult, createMigrationPlan, _default as default, plannerFailure, plannerSuccess, runnerFailure, runnerSuccess };
12
+ export default _default;
13
+ //# sourceMappingURL=control.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control.d.ts","sourceRoot":"","sources":["../../src/exports/control.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,YAAY,EACV,uBAAuB,EACvB,wBAAwB,EACxB,aAAa,EACb,gBAAgB,EAChB,wBAAwB,EACxB,sBAAsB,EACtB,sBAAsB,EACtB,0BAA0B,GAC3B,MAAM,uCAAuC,CAAC;AAC/C,YAAY,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AACtF,OAAO,EACL,mBAAmB,EACnB,cAAc,EACd,cAAc,EACd,aAAa,EACb,aAAa,GACd,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,YAAY,EACV,6BAA6B,EAC7B,2BAA2B,EAC3B,6BAA6B,EAC7B,6BAA6B,EAC7B,0BAA0B,EAC1B,gBAAgB,EAChB,4BAA4B,EAC5B,mBAAmB,EACnB,8BAA8B,EAC9B,yBAAyB,EACzB,6BAA6B,EAC7B,+BAA+B,EAC/B,kBAAkB,EAClB,2BAA2B,EAC3B,kCAAkC,EAClC,gCAAgC,EAChC,yBAAyB,EACzB,wBAAwB,EACxB,8BAA8B,EAC9B,kBAAkB,EAClB,sBAAsB,EACtB,0BAA0B,EAC1B,uBAAuB,EACvB,gBAAgB,EAChB,uBAAuB,GACxB,MAAM,0BAA0B,CAAC;AAElC;;;GAGG;;AACH,wBAAyC"}
@@ -1,66 +1,8 @@
1
- import { RuntimeFamilyInstance, RuntimeDriverInstance, RuntimeFamilyDescriptor, RuntimeTargetDescriptor, RuntimeAdapterDescriptor, RuntimeDriverDescriptor, RuntimeExtensionDescriptor } from '@prisma-next/core-execution-plane/types';
2
- import { RuntimeVerifyOptions, Plugin, Log } from '@prisma-next/runtime-executor';
3
- import { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
4
- import { Adapter, SelectAst, LoweredStatement, SqlDriver } from '@prisma-next/sql-relational-core/ast';
5
- import { Runtime, SqlRuntimeAdapterInstance } from '@prisma-next/sql-runtime';
6
-
7
- /**
8
- * SQL runtime driver instance type.
9
- * Combines identity properties with SQL-specific behavior methods.
10
- */
11
- type SqlRuntimeDriverInstance<TTargetId extends string = string> = RuntimeDriverInstance<'sql', TTargetId> & SqlDriver;
12
-
13
- /**
14
- * SQL runtime family instance interface.
15
- * Extends base RuntimeFamilyInstance with SQL-specific runtime creation method.
16
- */
17
- interface SqlRuntimeFamilyInstance extends RuntimeFamilyInstance<'sql'> {
18
- /**
19
- * Creates a SQL runtime from contract, driver options, and verification settings.
20
- *
21
- * Extension packs are routed through composition (at instance creation time),
22
- * not through this method. This aligns with control-plane composition patterns.
23
- *
24
- * @param options - Runtime creation options
25
- * @param options.contract - SQL contract
26
- * @param options.driverOptions - Driver options (e.g., PostgresDriverOptions)
27
- * @param options.verify - Runtime verification options
28
- * @param options.plugins - Optional plugins
29
- * @param options.mode - Optional runtime mode
30
- * @param options.log - Optional log instance
31
- * @returns Runtime instance
32
- */
33
- createRuntime<TContract extends SqlContract<SqlStorage>>(options: {
34
- readonly contract: TContract;
35
- readonly driverOptions: unknown;
36
- readonly verify: RuntimeVerifyOptions;
37
- readonly plugins?: readonly Plugin<TContract, Adapter<SelectAst, SqlContract<SqlStorage>, LoweredStatement>, SqlDriver>[];
38
- readonly mode?: 'strict' | 'permissive';
39
- readonly log?: Log;
40
- }): Runtime;
41
- }
42
-
43
- /**
44
- * SQL runtime family descriptor implementation.
45
- * Provides factory method to create SQL runtime family instance.
46
- */
47
- declare class SqlRuntimeFamilyDescriptor implements RuntimeFamilyDescriptor<'sql', SqlRuntimeFamilyInstance> {
48
- readonly kind: "family";
49
- readonly id = "sql";
50
- readonly familyId: "sql";
51
- readonly version = "0.0.1";
52
- create<TTargetId extends string>(options: {
53
- readonly target: RuntimeTargetDescriptor<'sql', TTargetId>;
54
- readonly adapter: RuntimeAdapterDescriptor<'sql', TTargetId, SqlRuntimeAdapterInstance<TTargetId>>;
55
- readonly driver: RuntimeDriverDescriptor<'sql', TTargetId, SqlRuntimeDriverInstance<TTargetId>>;
56
- readonly extensionPacks: readonly RuntimeExtensionDescriptor<'sql', TTargetId>[];
57
- }): SqlRuntimeFamilyInstance;
58
- }
59
-
1
+ import { SqlRuntimeFamilyDescriptor } from '../core/runtime-descriptor';
60
2
  /**
61
3
  * SQL runtime family descriptor for execution/runtime plane.
62
4
  * Provides factory method to create SQL runtime family instance.
63
5
  */
64
6
  declare const _default: SqlRuntimeFamilyDescriptor;
65
-
66
- export { _default as default };
7
+ export default _default;
8
+ //# sourceMappingURL=runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/exports/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AAExE;;;GAGG;;AACH,wBAAgD"}
@@ -1,75 +1,11 @@
1
- import { SchemaIssue, SchemaVerificationNode, OperationContext, VerifyDatabaseSchemaResult } from '@prisma-next/core-control-plane/types';
2
- import { SqlSchemaIR } from '@prisma-next/sql-schema-ir/types';
3
- import { i as ComponentDatabaseDependency } from './types-Bh7ftf0Q.js';
4
- import { TargetBoundComponentDescriptor } from '@prisma-next/contract/framework-components';
5
- import { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
6
- import '@prisma-next/utils/result';
7
- import './instance-DiZi2k_2.js';
8
- import '@prisma-next/contract/ir';
9
- import '@prisma-next/contract/pack-manifest-types';
10
- import '@prisma-next/contract/types';
11
- import '@prisma-next/core-control-plane/schema-view';
12
- import '@prisma-next/operations';
13
- import '@prisma-next/sql-operations';
14
-
15
1
  /**
16
- * Pure verification helper functions for SQL schema verification.
17
- * These functions verify schema IR against contract requirements.
18
- */
19
-
20
- /**
21
- * Compares two arrays of strings for equality (order-sensitive).
22
- */
23
- declare function arraysEqual(a: readonly string[], b: readonly string[]): boolean;
24
- /**
25
- * Verifies database dependencies are installed using component-owned verification hooks.
26
- * Each dependency provides a pure verifyDatabaseDependencyInstalled function that checks
27
- * whether the dependency is satisfied based on the in-memory schema IR (no DB I/O).
28
- *
29
- * Returns verification nodes for the tree.
30
- */
31
- declare function verifyDatabaseDependencies(dependencies: ReadonlyArray<ComponentDatabaseDependency<unknown>>, schema: SqlSchemaIR, issues: SchemaIssue[]): SchemaVerificationNode[];
32
-
33
- /**
34
- * Pure SQL schema verification function.
35
- *
36
- * This module provides a pure function that verifies a SqlSchemaIR against
37
- * a SqlContract without requiring a database connection. It can be reused
38
- * by migration planners and other tools that need to compare schema states.
39
- */
40
-
41
- /**
42
- * Options for the pure schema verification function.
43
- */
44
- interface VerifySqlSchemaOptions {
45
- /** The validated SQL contract to verify against */
46
- readonly contract: SqlContract<SqlStorage>;
47
- /** The schema IR from introspection (or another source) */
48
- readonly schema: SqlSchemaIR;
49
- /** Whether to run in strict mode (detects extra tables/columns) */
50
- readonly strict: boolean;
51
- /** Optional operation context for metadata */
52
- readonly context?: OperationContext;
53
- /** Type metadata registry for codec consistency warnings */
54
- readonly typeMetadataRegistry: ReadonlyMap<string, {
55
- nativeType?: string;
56
- }>;
57
- /**
58
- * Active framework components participating in this composition.
59
- * All components must have matching familyId ('sql') and targetId.
60
- */
61
- readonly frameworkComponents: ReadonlyArray<TargetBoundComponentDescriptor<'sql', string>>;
62
- }
63
- /**
64
- * Verifies that a SqlSchemaIR matches a SqlContract.
65
- *
66
- * This is a pure function that does NOT perform any database I/O.
67
- * It takes an already-introspected schema IR and compares it against
68
- * the contract requirements.
2
+ * Pure schema verification exports.
69
3
  *
70
- * @param options - Verification options
71
- * @returns VerifyDatabaseSchemaResult with verification tree and issues
4
+ * This module exports the pure schema verification function that can be used
5
+ * without a database connection. It's suitable for migration planning and
6
+ * other tools that need to compare schema states.
72
7
  */
73
- declare function verifySqlSchema(options: VerifySqlSchemaOptions): VerifyDatabaseSchemaResult;
74
-
75
- export { type VerifySqlSchemaOptions, arraysEqual, verifyDatabaseDependencies, verifySqlSchema };
8
+ export { arraysEqual, verifyDatabaseDependencies } from '../core/schema-verify/verify-helpers';
9
+ export type { VerifySqlSchemaOptions } from '../core/schema-verify/verify-sql-schema';
10
+ export { verifySqlSchema } from '../core/schema-verify/verify-sql-schema';
11
+ //# sourceMappingURL=schema-verify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-verify.d.ts","sourceRoot":"","sources":["../../src/exports/schema-verify.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE,MAAM,sCAAsC,CAAC;AAC/F,YAAY,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC"}
@@ -1,33 +1,7 @@
1
- import { OperationManifest } from '@prisma-next/contract/pack-manifest-types';
2
- import { TypesImportSpec } from '@prisma-next/contract/types';
3
- import { ControlTargetDescriptor, ControlAdapterDescriptor, ControlExtensionDescriptor } from '@prisma-next/core-control-plane/types';
4
- import { OperationSignature, OperationRegistry } from '@prisma-next/operations';
5
- export { c as convertOperationManifest } from './instance-DiZi2k_2.js';
6
- import '@prisma-next/contract/framework-components';
7
- import '@prisma-next/contract/ir';
8
- import '@prisma-next/core-control-plane/schema-view';
9
- import '@prisma-next/sql-operations';
10
- import '@prisma-next/sql-schema-ir/types';
11
-
12
1
  /**
13
- * Assembles an operation registry from descriptors (adapter, target, extensions).
14
- * Loops over descriptors, extracts operations, converts them using the provided
15
- * conversion function, and registers them in a new registry.
2
+ * Test utilities for working with component descriptors.
3
+ * These functions operate on descriptors directly, used in tests and integration tests.
16
4
  */
17
- declare function assembleOperationRegistry(descriptors: ReadonlyArray<ControlTargetDescriptor<'sql', string> | ControlAdapterDescriptor<'sql', string> | ControlExtensionDescriptor<'sql', string>>, convertOperationManifest: (manifest: OperationManifest) => OperationSignature): OperationRegistry;
18
- /**
19
- * Extracts codec type imports from descriptors for contract.d.ts generation.
20
- */
21
- declare function extractCodecTypeImports(descriptors: ReadonlyArray<ControlTargetDescriptor<'sql', string> | ControlAdapterDescriptor<'sql', string> | ControlExtensionDescriptor<'sql', string>>): ReadonlyArray<TypesImportSpec>;
22
- /**
23
- * Extracts operation type imports from descriptors for contract.d.ts generation.
24
- */
25
- declare function extractOperationTypeImports(descriptors: ReadonlyArray<ControlTargetDescriptor<'sql', string> | ControlAdapterDescriptor<'sql', string> | ControlExtensionDescriptor<'sql', string>>): ReadonlyArray<TypesImportSpec>;
26
- /**
27
- * Extracts extension IDs from descriptors in deterministic order:
28
- * [adapter.id, target.id, ...extensions.map(e => e.id)]
29
- * Deduplicates while preserving stable order.
30
- */
31
- declare function extractExtensionIds(adapter: ControlAdapterDescriptor<'sql', string>, target: ControlTargetDescriptor<'sql', string>, extensions: ReadonlyArray<ControlExtensionDescriptor<'sql', string>>): ReadonlyArray<string>;
32
-
33
- export { assembleOperationRegistry, extractCodecTypeImports, extractExtensionIds, extractOperationTypeImports };
5
+ export { assembleOperationRegistry, extractCodecTypeImports, extractExtensionIds, extractOperationTypeImports, } from '../core/assembly';
6
+ export { convertOperationManifest } from '../core/instance';
7
+ //# sourceMappingURL=test-utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-utils.d.ts","sourceRoot":"","sources":["../../src/exports/test-utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,mBAAmB,EACnB,2BAA2B,GAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC"}
@@ -1,28 +1,2 @@
1
- import { ContractMarkerRecord } from '@prisma-next/contract/types';
2
- import { ControlDriverInstance } from '@prisma-next/core-control-plane/types';
3
-
4
- /**
5
- * Parses a contract marker row from database query result.
6
- * This is SQL-specific parsing logic (handles SQL row structure with snake_case columns).
7
- */
8
- declare function parseContractMarkerRow(row: unknown): ContractMarkerRecord;
9
- /**
10
- * Returns the SQL statement to read the contract marker.
11
- * This is a migration-plane helper (no runtime imports).
12
- * @internal - Used internally by readMarker(). Prefer readMarker() for Control Plane usage.
13
- */
14
- declare function readMarkerSql(): {
15
- readonly sql: string;
16
- readonly params: readonly unknown[];
17
- };
18
- /**
19
- * Reads the contract marker from the database using the provided driver.
20
- * Returns the parsed marker record or null if no marker is found.
21
- * This abstracts SQL-specific details from the Control Plane.
22
- *
23
- * @param driver - ControlDriverInstance instance for executing queries
24
- * @returns Promise resolving to ContractMarkerRecord or null if marker not found
25
- */
26
- declare function readMarker(driver: ControlDriverInstance<'sql', string>): Promise<ContractMarkerRecord | null>;
27
-
28
- export { parseContractMarkerRow, readMarker, readMarkerSql };
1
+ export { parseContractMarkerRow, readMarker, readMarkerSql } from '../core/verify';
2
+ //# sourceMappingURL=verify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../src/exports/verify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC"}