@prisma-next/target-mongo 0.5.0-dev.4 → 0.5.0-dev.41
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/README.md +2 -0
- package/dist/control.d.mts +40 -19
- package/dist/control.d.mts.map +1 -1
- package/dist/control.mjs +100 -103
- package/dist/control.mjs.map +1 -1
- package/dist/descriptor-meta-D9_5quQi.mjs +14 -0
- package/dist/descriptor-meta-D9_5quQi.mjs.map +1 -0
- package/dist/{migration-factories-gwi81C8u.mjs → migration-factories-CoNYWrd1.mjs} +3 -1
- package/dist/migration-factories-CoNYWrd1.mjs.map +1 -0
- package/dist/migration.d.mts +7 -1
- package/dist/migration.d.mts.map +1 -1
- package/dist/migration.mjs +1 -1
- package/dist/{op-factory-call-BjNAcPSF.d.mts → op-factory-call--nK5dk8n.d.mts} +1 -1
- package/dist/{op-factory-call-BjNAcPSF.d.mts.map → op-factory-call--nK5dk8n.d.mts.map} +1 -1
- package/dist/pack.mjs +1 -11
- package/dist/pack.mjs.map +1 -1
- package/dist/runtime.d.mts +20 -0
- package/dist/runtime.d.mts.map +1 -0
- package/dist/runtime.mjs +28 -0
- package/dist/runtime.mjs.map +1 -0
- package/dist/schema-verify.d.mts +22 -0
- package/dist/schema-verify.d.mts.map +1 -0
- package/dist/schema-verify.mjs +3 -0
- package/dist/verify-mongo-schema-Daa7BMJY.mjs +582 -0
- package/dist/verify-mongo-schema-Daa7BMJY.mjs.map +1 -0
- package/package.json +20 -14
- package/src/core/marker-ledger.ts +90 -20
- package/src/core/migration-factories.ts +8 -0
- package/src/core/mongo-ops-serializer.ts +0 -8
- package/src/core/mongo-planner.ts +8 -2
- package/src/core/mongo-runner.ts +105 -70
- package/src/core/planner-produced-migration.ts +0 -1
- package/src/core/render-typescript.ts +3 -7
- package/src/core/schema-diff.ts +402 -0
- package/src/core/schema-verify/canonicalize-introspection.ts +389 -0
- package/src/core/schema-verify/verify-mongo-schema.ts +60 -0
- package/src/exports/runtime.ts +38 -0
- package/src/exports/schema-verify.ts +2 -0
- package/dist/migration-factories-gwi81C8u.mjs.map +0 -1
package/dist/migration.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as CollModMeta } from "./op-factory-call
|
|
1
|
+
import { n as CollModMeta } from "./op-factory-call--nK5dk8n.mjs";
|
|
2
2
|
import { MongoQueryPlan } from "@prisma-next/mongo-query-ast/execution";
|
|
3
3
|
import { CollModOptions, CreateCollectionOptions, CreateIndexOptions, MongoDataTransformOperation, MongoFilterExpr, MongoIndexKey, MongoMigrationPlanOperation } from "@prisma-next/mongo-query-ast/control";
|
|
4
4
|
import { placeholder } from "@prisma-next/errors/migration";
|
|
@@ -8,6 +8,12 @@ interface Buildable {
|
|
|
8
8
|
build(): MongoQueryPlan;
|
|
9
9
|
}
|
|
10
10
|
declare function dataTransform(name: string, options: {
|
|
11
|
+
/**
|
|
12
|
+
* Optional opt-in routing identity. Presence opts the transform into
|
|
13
|
+
* invariant-aware routing; absence means it is path-dependent and
|
|
14
|
+
* not referenceable from refs.
|
|
15
|
+
*/
|
|
16
|
+
invariantId?: string;
|
|
11
17
|
check?: {
|
|
12
18
|
source: () => MongoQueryPlan | Buildable;
|
|
13
19
|
filter?: MongoFilterExpr;
|
package/dist/migration.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration.d.mts","names":[],"sources":["../src/core/migration-factories.ts"],"sourcesContent":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"migration.d.mts","names":[],"sources":["../src/core/migration-factories.ts"],"sourcesContent":[],"mappings":";;;;;;UA6BU,SAAA;WACC;AAH0C;AAuBrC,iBAAA,aAAA,CAAa,IAAA,EAAA,MAAA,EAAA,OAAA,EAAA;EAUT;;;;;EAOjB,WAAA,CAAA,EAAA,MAAA;EAA2B,KAAA,CAAA,EAAA;IA4Cd,MAAA,EAAA,GAAW,GAnDP,cAmDO,GAnDU,SAmDV;IAEL,MAAA,CAAA,EApDP,eAoDO;IAAd,MAAA,CAAA,EAAA,QAAA,GAAA,WAAA;IACI,WAAA,CAAA,EAAA,MAAA;EACT,CAAA;EAA2B,GAAA,EAAA,GAAA,GAlDf,cAkDe,GAlDE,SAkDF;AAwC9B,CAAA,CAAA,EAxFG,2BAwFsB;AAEH,iBA9CN,WAAA,CA8CM,UAAA,EAAA,MAAA,EAAA,IAAA,EA5Cd,aA4Cc,CA5CA,aA4CA,CAAA,EAAA,OAAA,CAAA,EA3CV,kBA2CU,CAAA,EA1CnB,2BA0CmB;AAAd,iBAFQ,SAAA,CAER,UAAA,EAAA,MAAA,EAAA,IAAA,EAAA,aAAA,CAAc,aAAd,CAAA,CAAA,EACL,2BADK;AACL,iBAiCa,gBAAA,CAjCb,UAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EAmCS,uBAnCT,CAAA,EAoCA,2BApCA;AAA2B,iBA2Dd,cAAA,CA3Dc,UAAA,EAAA,MAAA,CAAA,EA2DsB,2BA3DtB;AAiCd,iBA0CA,aAAA,CAxCJ,UAAA,EAAA,MAAA,EAAA,MACT,EAyCO,MAzCP,CAAA,MAAA,EAAA,OAA2B,CAAA,EAAA,OA+D9B,CA/D8B,EAAA;EAuBd,eAAA,CAAA,EAAc,QAAA,GAAsB,UAAA;EAgBpC,gBAAa,CAAA,EAAA,OAAA,GAEnB,MAAA;AAsBV,CAAA,CAAA,EApBG,2BAoBoB;AAEZ,iBAFK,OAAA,CAEL,UAAA,EAAA,MAAA,EAAA,OAAA,EAAA,cAAA,EAAA,IAAA,CAAA,EACF,WADE,CAAA,EAER,2BAFQ;AACF,iBA8CO,mBAAA,CA9CP,IAAA,EAAA,MAAA,EAAA,MAAA,EAgDC,MAhDD,CAAA,MAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAiDE,aAjDF,CAAA;EACN,IAAA,EAgD8B,aAhD9B,EAAA;EAA2B,MAAA,CAAA,EAAA,OAAA;AA6C9B,CAAA,CAAA,CAAA,EAIG,2BAJgC,EAAA"}
|
package/dist/migration.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as dropCollection, c as validatedCollection, i as dataTransform, n as createCollection, o as dropIndex, r as createIndex, s as setValidation, t as collMod } from "./migration-factories-
|
|
1
|
+
import { a as dropCollection, c as validatedCollection, i as dataTransform, n as createCollection, o as dropIndex, r as createIndex, s as setValidation, t as collMod } from "./migration-factories-CoNYWrd1.mjs";
|
|
2
2
|
import { placeholder } from "@prisma-next/errors/migration";
|
|
3
3
|
|
|
4
4
|
export { collMod, createCollection, createIndex, dataTransform, dropCollection, dropIndex, placeholder, setValidation, validatedCollection };
|
|
@@ -74,4 +74,4 @@ declare function schemaIndexToCreateIndexOptions(index: MongoSchemaIndex): Creat
|
|
|
74
74
|
declare function schemaCollectionToCreateCollectionOptions(coll: MongoSchemaCollection): CreateCollectionOptions | undefined;
|
|
75
75
|
//#endregion
|
|
76
76
|
export { DropCollectionCall as a, schemaCollectionToCreateCollectionOptions as c, CreateIndexCall as i, schemaIndexToCreateIndexOptions as l, CollModMeta as n, DropIndexCall as o, CreateCollectionCall as r, OpFactoryCall$1 as s, CollModCall as t };
|
|
77
|
-
//# sourceMappingURL=op-factory-call
|
|
77
|
+
//# sourceMappingURL=op-factory-call--nK5dk8n.d.mts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"op-factory-call
|
|
1
|
+
{"version":3,"file":"op-factory-call--nK5dk8n.d.mts","names":[],"sources":["../src/core/op-factory-call.ts"],"sourcesContent":[],"mappings":";;;;;;;AAwEqC,UA3BpB,WAAA,CA2BoB;EAAiB,SAAA,EAAA,CAAA,EAAA,MAAA;EAgCzC,SAAA,KAAA,CAAA,EAAc,MAAA;EAII,SAAA,cAAA,CAAA,EA5DH,uBA4DG;;uBAvDhB,iBAAA,SAA0B,YAAA,YAAwB,aA0DX,CAAA;EAAd,kBAAA,WAAA,EAAA,MAAA;EAQ9B,kBAAA,cAAA,EAhE0B,uBAgE1B;EAfyB,kBAAA,KAAA,EAAA,MAAA;EAAiB,SAAA,IAAA,CAAA,CAAA,EA/CjC,2BA+CiC;EAwBvC,kBAAA,CAAA,CAAA,EAAA,SArEoB,iBAqEC,EAAA;EAId,UAAA,MAAA,CAAA,CAAA,EAAA,IAAA;;AAWV,cAvEG,eAAA,SAAwB,iBAAA,CAuE3B;EAfgC,SAAA,WAAA,EAAA,aAAA;EAAiB,SAAA,cAAA,EAAA,UAAA;EA0B9C,SAAA,UAAA,EAAmB,MAAA;EAsBnB,SAAA,IAAA,EApGI,aAoGQ,CApGM,aAoGN,CAAA;EAGL,SAAA,OAAA,EAtGA,kBAsGA,GAAA,SAAA;EACH,SAAA,KAAA,EAAA,MAAA;EACU,WAAA,CAAA,UAAA,EAAA,MAAA,EAAA,IAAA,EAnGjB,aAmGiB,CAnGH,aAmGG,CAAA,EAAA,OAAA,CAAA,EAlGb,kBAkGa;EAGgB,IAAA,CAAA,CAAA,EA3FjC,2BA2FiC;EAAuB,gBAAA,CAAA,CAAA,EAAA,MAAA;;AARjC,cAxEpB,aAAA,SAAsB,iBAAA,CAwEF;EAAiB,SAAA,WAAA,EAAA,WAAA;EA6BtC,SAAA,cAAa,EAAA,aAAA;EACrB,SAAA,UAAA,EAAA,MAAA;EACA,SAAA,IAAA,EAnGa,aAmGb,CAnG2B,aAmG3B,CAAA;EACA,SAAA,KAAA,EAAA,MAAA;EACA,WAAA,CAAA,UAAA,EAAA,MAAA,EAAA,IAAA,EAlGoC,aAkGpC,CAlGkD,aAkGlD,CAAA;EACA,IAAA,CAAA,CAAA,EA3FM,2BA2FN;EAAW,gBAAA,CAAA,CAAA,EAAA,MAAA;AAEf;AAcgB,cAlGH,oBAAA,SAA6B,iBAAA,CAmGlC;;;;oBA/FY;;4CAGwB;UAQlC;;;cAWG,kBAAA,SAA2B,iBAAA;;;;;;UAa9B;;;cASG,WAAA,SAAoB,iBAAA;;;oBAGb;iBACH;2BACU;;2CAGgB,uBAAuB;UAUxD;;;KAWE,eAAA,GACR,kBACA,gBACA,uBACA,qBACA;iBAEY,+BAAA,QAAuC,mBAAmB;iBAc1D,yCAAA,OACR,wBACL"}
|
package/dist/pack.mjs
CHANGED
|
@@ -1,15 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
const mongoTargetDescriptorMetaBase = {
|
|
3
|
-
kind: "target",
|
|
4
|
-
familyId: "mongo",
|
|
5
|
-
targetId: "mongo",
|
|
6
|
-
id: "mongo",
|
|
7
|
-
version: "0.0.1",
|
|
8
|
-
capabilities: {}
|
|
9
|
-
};
|
|
10
|
-
const mongoTargetDescriptorMeta = mongoTargetDescriptorMetaBase;
|
|
1
|
+
import { t as mongoTargetDescriptorMeta } from "./descriptor-meta-D9_5quQi.mjs";
|
|
11
2
|
|
|
12
|
-
//#endregion
|
|
13
3
|
//#region src/exports/pack.ts
|
|
14
4
|
const mongoTargetPack = mongoTargetDescriptorMeta;
|
|
15
5
|
var pack_default = mongoTargetPack;
|
package/dist/pack.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pack.mjs","names":["
|
|
1
|
+
{"version":3,"file":"pack.mjs","names":["mongoTargetPack: {\n readonly kind: 'target';\n readonly familyId: 'mongo';\n readonly targetId: 'mongo';\n readonly id: 'mongo';\n readonly version: '0.0.1';\n readonly capabilities: Record<string, never>;\n readonly __codecTypes?: CodecTypes;\n}"],"sources":["../src/exports/pack.ts"],"sourcesContent":["import { mongoTargetDescriptorMeta } from '../core/descriptor-meta';\nimport type { CodecTypes } from './codec-types';\n\nconst mongoTargetPack: {\n readonly kind: 'target';\n readonly familyId: 'mongo';\n readonly targetId: 'mongo';\n readonly id: 'mongo';\n readonly version: '0.0.1';\n readonly capabilities: Record<string, never>;\n readonly __codecTypes?: CodecTypes;\n} = mongoTargetDescriptorMeta;\n\nexport default mongoTargetPack;\n"],"mappings":";;;AAGA,MAAMA,kBAQF;AAEJ,mBAAe"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { MongoCodecRegistry } from "@prisma-next/mongo-codec";
|
|
2
|
+
import { RuntimeTargetDescriptor, RuntimeTargetInstance } from "@prisma-next/framework-components/execution";
|
|
3
|
+
|
|
4
|
+
//#region src/exports/runtime.d.ts
|
|
5
|
+
interface MongoRuntimeTargetInstance extends RuntimeTargetInstance<'mongo', 'mongo'> {}
|
|
6
|
+
/**
|
|
7
|
+
* Target-mongo deliberately does NOT import `MongoRuntimeTargetDescriptor`
|
|
8
|
+
* from `@prisma-next/mongo-runtime`. The target package is a control-plane
|
|
9
|
+
* residence and must not pull the Mongo execution-plane package into its
|
|
10
|
+
* dependency closure. The runtime descriptor here is shaped to satisfy the
|
|
11
|
+
* framework's `RuntimeTargetDescriptor` plus the structural
|
|
12
|
+
* `MongoStaticContributions` (`codecs`) that `@prisma-next/mongo-runtime`
|
|
13
|
+
* consumers narrow to at composition time.
|
|
14
|
+
*/
|
|
15
|
+
declare const mongoRuntimeTargetDescriptor: RuntimeTargetDescriptor<'mongo', 'mongo', MongoRuntimeTargetInstance> & {
|
|
16
|
+
readonly codecs: () => MongoCodecRegistry;
|
|
17
|
+
};
|
|
18
|
+
//#endregion
|
|
19
|
+
export { MongoRuntimeTargetInstance, mongoRuntimeTargetDescriptor as default };
|
|
20
|
+
//# sourceMappingURL=runtime.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.mts","names":[],"sources":["../src/exports/runtime.ts"],"sourcesContent":[],"mappings":";;;;UAOiB,0BAAA,SAAmC;AAApD;AAA8F;;;;;;;;cAWxF,8BAA8B,0CAGlC;yBAEuB"}
|
package/dist/runtime.mjs
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { t as mongoTargetDescriptorMeta } from "./descriptor-meta-D9_5quQi.mjs";
|
|
2
|
+
import { createMongoCodecRegistry } from "@prisma-next/mongo-codec";
|
|
3
|
+
|
|
4
|
+
//#region src/exports/runtime.ts
|
|
5
|
+
/**
|
|
6
|
+
* Target-mongo deliberately does NOT import `MongoRuntimeTargetDescriptor`
|
|
7
|
+
* from `@prisma-next/mongo-runtime`. The target package is a control-plane
|
|
8
|
+
* residence and must not pull the Mongo execution-plane package into its
|
|
9
|
+
* dependency closure. The runtime descriptor here is shaped to satisfy the
|
|
10
|
+
* framework's `RuntimeTargetDescriptor` plus the structural
|
|
11
|
+
* `MongoStaticContributions` (`codecs`) that `@prisma-next/mongo-runtime`
|
|
12
|
+
* consumers narrow to at composition time.
|
|
13
|
+
*/
|
|
14
|
+
const mongoRuntimeTargetDescriptor = {
|
|
15
|
+
...mongoTargetDescriptorMeta,
|
|
16
|
+
codecs: () => createMongoCodecRegistry(),
|
|
17
|
+
create() {
|
|
18
|
+
return {
|
|
19
|
+
familyId: "mongo",
|
|
20
|
+
targetId: "mongo"
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
var runtime_default = mongoRuntimeTargetDescriptor;
|
|
25
|
+
|
|
26
|
+
//#endregion
|
|
27
|
+
export { runtime_default as default };
|
|
28
|
+
//# sourceMappingURL=runtime.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.mjs","names":["mongoRuntimeTargetDescriptor: RuntimeTargetDescriptor<\n 'mongo',\n 'mongo',\n MongoRuntimeTargetInstance\n> & {\n readonly codecs: () => MongoCodecRegistry;\n}"],"sources":["../src/exports/runtime.ts"],"sourcesContent":["import type {\n RuntimeTargetDescriptor,\n RuntimeTargetInstance,\n} from '@prisma-next/framework-components/execution';\nimport { createMongoCodecRegistry, type MongoCodecRegistry } from '@prisma-next/mongo-codec';\nimport { mongoTargetDescriptorMeta } from '../core/descriptor-meta';\n\nexport interface MongoRuntimeTargetInstance extends RuntimeTargetInstance<'mongo', 'mongo'> {}\n\n/**\n * Target-mongo deliberately does NOT import `MongoRuntimeTargetDescriptor`\n * from `@prisma-next/mongo-runtime`. The target package is a control-plane\n * residence and must not pull the Mongo execution-plane package into its\n * dependency closure. The runtime descriptor here is shaped to satisfy the\n * framework's `RuntimeTargetDescriptor` plus the structural\n * `MongoStaticContributions` (`codecs`) that `@prisma-next/mongo-runtime`\n * consumers narrow to at composition time.\n */\nconst mongoRuntimeTargetDescriptor: RuntimeTargetDescriptor<\n 'mongo',\n 'mongo',\n MongoRuntimeTargetInstance\n> & {\n readonly codecs: () => MongoCodecRegistry;\n} = {\n ...mongoTargetDescriptorMeta,\n // The target descriptor itself contributes no codecs — the standard set\n // lives on the adapter descriptor (see `@prisma-next/adapter-mongo/runtime`).\n codecs: () => createMongoCodecRegistry(),\n create(): MongoRuntimeTargetInstance {\n return {\n familyId: 'mongo',\n targetId: 'mongo',\n };\n },\n};\n\nexport default mongoRuntimeTargetDescriptor;\n"],"mappings":";;;;;;;;;;;;;AAkBA,MAAMA,+BAMF;CACF,GAAG;CAGH,cAAc,0BAA0B;CACxC,SAAqC;AACnC,SAAO;GACL,UAAU;GACV,UAAU;GACX;;CAEJ;AAED,sBAAe"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { MongoSchemaIR } from "@prisma-next/mongo-schema-ir";
|
|
2
|
+
import { OperationContext, VerifyDatabaseSchemaResult } from "@prisma-next/framework-components/control";
|
|
3
|
+
import { MongoContract } from "@prisma-next/mongo-contract";
|
|
4
|
+
import { TargetBoundComponentDescriptor } from "@prisma-next/framework-components/components";
|
|
5
|
+
|
|
6
|
+
//#region src/core/schema-verify/verify-mongo-schema.d.ts
|
|
7
|
+
interface VerifyMongoSchemaOptions {
|
|
8
|
+
readonly contract: MongoContract;
|
|
9
|
+
readonly schema: MongoSchemaIR;
|
|
10
|
+
readonly strict: boolean;
|
|
11
|
+
readonly context?: OperationContext;
|
|
12
|
+
/**
|
|
13
|
+
* Active framework components participating in this composition. Mongo
|
|
14
|
+
* verification does not currently consult them, but the parameter exists
|
|
15
|
+
* for parity with `verifySqlSchema` so callers can pass the same envelope.
|
|
16
|
+
*/
|
|
17
|
+
readonly frameworkComponents: ReadonlyArray<TargetBoundComponentDescriptor<'mongo', string>>;
|
|
18
|
+
}
|
|
19
|
+
declare function verifyMongoSchema(options: VerifyMongoSchemaOptions): VerifyDatabaseSchemaResult;
|
|
20
|
+
//#endregion
|
|
21
|
+
export { type VerifyMongoSchemaOptions, verifyMongoSchema };
|
|
22
|
+
//# sourceMappingURL=schema-verify.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"schema-verify.d.mts","names":[],"sources":["../src/core/schema-verify/verify-mongo-schema.ts"],"sourcesContent":[],"mappings":";;;;;;UAaiB,wBAAA;qBACI;EADJ,SAAA,MAAA,EAEE,aAFsB;EACpB,SAAA,MAAA,EAAA,OAAA;EACF,SAAA,OAAA,CAAA,EAEE,gBAFF;EAEE;;;;AASrB;gCAHgC,cAAc;;iBAG9B,iBAAA,UAA2B,2BAA2B"}
|