@prisma/orm-family-mongo 0.16.0-dev.36
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/LICENSE +201 -0
- package/README.md +27 -0
- package/dist/authoring-entity-types-BGtkMyoN-D32kzx28.mjs +176 -0
- package/dist/authoring-entity-types-BGtkMyoN-D32kzx28.mjs.map +1 -0
- package/dist/canonicalization-hooks-DF3Z6sjO.mjs +22 -0
- package/dist/canonicalization-hooks-DF3Z6sjO.mjs.map +1 -0
- package/dist/codec.d.mts +2 -0
- package/dist/codec.mjs +2 -0
- package/dist/config-types-CFDf9ivE.mjs +37 -0
- package/dist/config-types-CFDf9ivE.mjs.map +1 -0
- package/dist/config-types-CQOf5N7R.d.mts +12 -0
- package/dist/config-types-CQOf5N7R.d.mts.map +1 -0
- package/dist/contract-builder-BFq0gOMV.mjs +634 -0
- package/dist/contract-builder-BFq0gOMV.mjs.map +1 -0
- package/dist/contract-builder-DB8nguDE.d.mts +445 -0
- package/dist/contract-builder-DB8nguDE.d.mts.map +1 -0
- package/dist/contract-errors-BCN6RVI5-kMurtAbI.mjs +9 -0
- package/dist/contract-errors-BCN6RVI5-kMurtAbI.mjs.map +1 -0
- package/dist/contract-psl.d.mts +45 -0
- package/dist/contract-psl.d.mts.map +1 -0
- package/dist/contract-psl.mjs +2 -0
- package/dist/contract-psl__provider.d.mts +15 -0
- package/dist/contract-psl__provider.d.mts.map +1 -0
- package/dist/contract-psl__provider.mjs +82 -0
- package/dist/contract-psl__provider.mjs.map +1 -0
- package/dist/contract-ts.d.mts +3 -0
- package/dist/contract-ts.mjs +3 -0
- package/dist/contract-ts__config-types.d.mts +2 -0
- package/dist/contract-ts__config-types.mjs +2 -0
- package/dist/contract-ts__contract-builder.d.mts +2 -0
- package/dist/contract-ts__contract-builder.mjs +2 -0
- package/dist/contract.d.mts +3 -0
- package/dist/contract.mjs +3 -0
- package/dist/contract__canonicalization-hooks.d.mts +9 -0
- package/dist/contract__canonicalization-hooks.d.mts.map +1 -0
- package/dist/contract__canonicalization-hooks.mjs +2 -0
- package/dist/contract__entity-kinds.d.mts +17 -0
- package/dist/contract__entity-kinds.d.mts.map +1 -0
- package/dist/contract__entity-kinds.mjs +2 -0
- package/dist/control-C7-kthr1.d.mts +193 -0
- package/dist/control-C7-kthr1.d.mts.map +1 -0
- package/dist/control-CClR5JMr.mjs +127 -0
- package/dist/control-CClR5JMr.mjs.map +1 -0
- package/dist/control-CFr3tYsg.mjs +398 -0
- package/dist/control-CFr3tYsg.mjs.map +1 -0
- package/dist/control-Cj81sPbj.d.mts +101 -0
- package/dist/control-Cj81sPbj.d.mts.map +1 -0
- package/dist/control-adapter-Db5pT77b.d.mts +83 -0
- package/dist/control-adapter-Db5pT77b.d.mts.map +1 -0
- package/dist/dist-C7Ykq48Q.mjs +19 -0
- package/dist/dist-C7Ykq48Q.mjs.map +1 -0
- package/dist/dist-Czwqx_i3.mjs +58 -0
- package/dist/dist-Czwqx_i3.mjs.map +1 -0
- package/dist/dist-DHrEJnhK.mjs +236 -0
- package/dist/dist-DHrEJnhK.mjs.map +1 -0
- package/dist/dist-Dyp05u64.mjs +1546 -0
- package/dist/dist-Dyp05u64.mjs.map +1 -0
- package/dist/emitter.d.mts +22 -0
- package/dist/emitter.d.mts.map +1 -0
- package/dist/emitter.mjs +2 -0
- package/dist/entity-kinds-B4KNTF8z-DPIuUuuB.mjs +603 -0
- package/dist/entity-kinds-B4KNTF8z-DPIuUuuB.mjs.map +1 -0
- package/dist/execution-CKnUiOfm.d.mts +48 -0
- package/dist/execution-CKnUiOfm.d.mts.map +1 -0
- package/dist/execution-D5XyZ5XS.mjs +1269 -0
- package/dist/execution-D5XyZ5XS.mjs.map +1 -0
- package/dist/exports-Bx-hlnZ3.mjs +209 -0
- package/dist/exports-Bx-hlnZ3.mjs.map +1 -0
- package/dist/exports-CJMh0VTU.mjs +156 -0
- package/dist/exports-CJMh0VTU.mjs.map +1 -0
- package/dist/family.d.mts +10 -0
- package/dist/family.mjs +9 -0
- package/dist/family__control-adapter.d.mts +2 -0
- package/dist/family__control-adapter.mjs +1 -0
- package/dist/family__control.d.mts +2 -0
- package/dist/family__control.mjs +3 -0
- package/dist/family__ir.d.mts +3 -0
- package/dist/family__ir.mjs +4 -0
- package/dist/family__migration.d.mts +2 -0
- package/dist/family__migration.mjs +2 -0
- package/dist/family__pack.d.mts +2 -0
- package/dist/family__pack.mjs +16 -0
- package/dist/family__pack.mjs.map +1 -0
- package/dist/family__runtime.d.mts +3 -0
- package/dist/family__runtime.mjs +2 -0
- package/dist/family__schema-verify.d.mts +2 -0
- package/dist/family__schema-verify.mjs +2 -0
- package/dist/field-accessor-0oUt6RZC-B_Z30uAA.mjs +234 -0
- package/dist/field-accessor-0oUt6RZC-B_Z30uAA.mjs.map +1 -0
- package/dist/field-accessor-DHsAPiW3-BdYCspQC.d.mts +588 -0
- package/dist/field-accessor-DHsAPiW3-BdYCspQC.d.mts.map +1 -0
- package/dist/filter-expressions-Uo8ZdzwB-53qnqceS.mjs +181 -0
- package/dist/filter-expressions-Uo8ZdzwB-53qnqceS.mjs.map +1 -0
- package/dist/index-BR0ue13b.d.mts +136 -0
- package/dist/index-BR0ue13b.d.mts.map +1 -0
- package/dist/index-Cd2zLiU6.d.mts +128 -0
- package/dist/index-Cd2zLiU6.d.mts.map +1 -0
- package/dist/index-DAOkcTCK.d.mts +151 -0
- package/dist/index-DAOkcTCK.d.mts.map +1 -0
- package/dist/index-Dv2PNMiG.d.mts +53 -0
- package/dist/index-Dv2PNMiG.d.mts.map +1 -0
- package/dist/index-DxoO-ywI.d.mts +178 -0
- package/dist/index-DxoO-ywI.d.mts.map +1 -0
- package/dist/index-wKMm41HC.d.mts +30 -0
- package/dist/index-wKMm41HC.d.mts.map +1 -0
- package/dist/interpreter-BxbUTQ3k-ClR98Ned.mjs +1091 -0
- package/dist/interpreter-BxbUTQ3k-ClR98Ned.mjs.map +1 -0
- package/dist/ir-CQrenTYt.d.mts +147 -0
- package/dist/ir-CQrenTYt.d.mts.map +1 -0
- package/dist/ir-Ch2aPr7a.mjs +62 -0
- package/dist/ir-Ch2aPr7a.mjs.map +1 -0
- package/dist/lowering.d.mts +2 -0
- package/dist/lowering.mjs +1 -0
- package/dist/migration-CNDQv5yB.d.mts +50 -0
- package/dist/migration-CNDQv5yB.d.mts.map +1 -0
- package/dist/migration-dcM7u4HG.mjs +52 -0
- package/dist/migration-dcM7u4HG.mjs.map +1 -0
- package/dist/mongo-contract-serializer-Cx7Fae8e-C8ZYPXpc.mjs +119 -0
- package/dist/mongo-contract-serializer-Cx7Fae8e-C8ZYPXpc.mjs.map +1 -0
- package/dist/mongo-contract-view-AnejqfrQ-BaCFT0xm.d.mts +27 -0
- package/dist/mongo-contract-view-AnejqfrQ-BaCFT0xm.d.mts.map +1 -0
- package/dist/mongo-contract-view-rcWzby6f-wRBCUnBt.mjs +17 -0
- package/dist/mongo-contract-view-rcWzby6f-wRBCUnBt.mjs.map +1 -0
- package/dist/mongo-value-set-tNn9-pun-dJYx_rVD.d.mts +536 -0
- package/dist/mongo-value-set-tNn9-pun-dJYx_rVD.d.mts.map +1 -0
- package/dist/mongodb-types-B4HmhF1S.d.mts +2 -0
- package/dist/orm.d.mts +311 -0
- package/dist/orm.d.mts.map +1 -0
- package/dist/orm.mjs +664 -0
- package/dist/orm.mjs.map +1 -0
- package/dist/pack-D9aLY50F.d.mts +44 -0
- package/dist/pack-D9aLY50F.d.mts.map +1 -0
- package/dist/query-ast.d.mts +5 -0
- package/dist/query-ast.mjs +4 -0
- package/dist/query-ast__control.d.mts +4 -0
- package/dist/query-ast__control.mjs +3 -0
- package/dist/query-ast__execution.d.mts +3 -0
- package/dist/query-ast__execution.mjs +3 -0
- package/dist/query-builder.d.mts +836 -0
- package/dist/query-builder.d.mts.map +1 -0
- package/dist/query-builder.mjs +3 -0
- package/dist/query-builder__contract-free.d.mts +83 -0
- package/dist/query-builder__contract-free.d.mts.map +1 -0
- package/dist/query-builder__contract-free.mjs +107 -0
- package/dist/query-builder__contract-free.mjs.map +1 -0
- package/dist/query-plan-C0-Yu8hf-DdilEdW6.d.mts +822 -0
- package/dist/query-plan-C0-Yu8hf-DdilEdW6.d.mts.map +1 -0
- package/dist/runtime-DPkRW4iu.d.mts +1 -0
- package/dist/runtime.d.mts +286 -0
- package/dist/runtime.d.mts.map +1 -0
- package/dist/runtime.mjs +532 -0
- package/dist/runtime.mjs.map +1 -0
- package/dist/schema-ir.d.mts +2 -0
- package/dist/schema-ir.mjs +2 -0
- package/dist/schema-verify-DJGr28XW.d.mts +23 -0
- package/dist/schema-verify-DJGr28XW.d.mts.map +1 -0
- package/dist/value.d.mts +2 -0
- package/dist/value.mjs +2 -0
- package/dist/value__mongodb-types.d.mts +2 -0
- package/dist/value__mongodb-types.mjs +1 -0
- package/dist/verify-mongo-schema-De0FG2Rm-CCzwnNPY.mjs +447 -0
- package/dist/verify-mongo-schema-De0FG2Rm-CCzwnNPY.mjs.map +1 -0
- package/dist/wire.d.mts +3 -0
- package/dist/wire.mjs +190 -0
- package/dist/wire.mjs.map +1 -0
- package/package.json +89 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { JsonValue } from "@prisma/orm-framework/contract/types";
|
|
2
|
+
import { Codec, CodecCallContext, CodecTrait } from "@prisma/orm-framework/components/codec";
|
|
3
|
+
//#region ../../../2-mongo-family/1-foundation/mongo-codec/dist/index.d.mts
|
|
4
|
+
//#region src/codecs.d.ts
|
|
5
|
+
type MongoCodecTrait = CodecTrait;
|
|
6
|
+
/**
|
|
7
|
+
* A codec for the Mongo target. Translates between an application value and the BSON-shaped wire form the Mongo driver exchanges, and between an application value and the JSON form stored in contract artifacts.
|
|
8
|
+
*
|
|
9
|
+
* Same shape as the framework codec base — see `Codec` in `@internal/framework-components/codec` for the contract. Codec-id-keyed static metadata (`traits`, `targetTypes`, `renderOutputType`) lives on the unified {@link import('@prisma/orm-framework/components/codec').CodecDescriptor}; Mongo's full migration to descriptor-side registration is tracked under TML-2324.
|
|
10
|
+
*/
|
|
11
|
+
interface MongoCodec<Id extends string = string, TTraits extends readonly MongoCodecTrait[] = readonly MongoCodecTrait[], TWire = unknown, TInput = unknown> extends Codec<Id, TTraits, TWire, TInput> {}
|
|
12
|
+
/**
|
|
13
|
+
* Conditional bundle for `encodeJson`/`decodeJson`: when `TInput` is structurally assignable to `JsonValue` the identity defaults are sound and both fields are optional; otherwise both fields are required so an author cannot silently produce a non-JSON-safe contract artifact.
|
|
14
|
+
*/
|
|
15
|
+
type JsonRoundTripConfig<TInput> = [TInput] extends [JsonValue] ? {
|
|
16
|
+
encodeJson?: (value: TInput) => JsonValue;
|
|
17
|
+
decodeJson?: (json: JsonValue) => TInput;
|
|
18
|
+
} : {
|
|
19
|
+
encodeJson: (value: TInput) => JsonValue;
|
|
20
|
+
decodeJson: (json: JsonValue) => TInput;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Construct a Mongo codec from author functions.
|
|
24
|
+
*
|
|
25
|
+
* Author `encode` and `decode` as sync or async functions; the factory produces a {@link MongoCodec} whose query-time methods follow the boundary contract documented on the framework {@link BaseCodec}. Authors receive a second `ctx` options argument carrying the per-call context; ignore it if you don't need it.
|
|
26
|
+
*
|
|
27
|
+
* Both `encode` and `decode` are required so `TInput` and `TWire` are always covered by an explicit author function — the factory installs no identity fallback. `encodeJson` and `decodeJson` default to identity **only when `TInput` is assignable to `JsonValue`**; otherwise both are required so the contract artifact stays JSON-safe.
|
|
28
|
+
*
|
|
29
|
+
* Codec-id-keyed static metadata (`traits`, `targetTypes`, `renderOutputType`) lives on the unified `CodecDescriptor` rather than on the codec instance itself (TML-2357).
|
|
30
|
+
*/
|
|
31
|
+
declare function mongoCodec<Id extends string, const TTraits extends readonly MongoCodecTrait[] = readonly [], TWire = unknown, TInput = unknown>(config: {
|
|
32
|
+
typeId: Id;
|
|
33
|
+
encode: (value: TInput, ctx: CodecCallContext) => TWire | Promise<TWire>;
|
|
34
|
+
decode: (wire: TWire, ctx: CodecCallContext) => TInput | Promise<TInput>;
|
|
35
|
+
} & JsonRoundTripConfig<TInput>): MongoCodec<Id, TTraits, TWire, TInput>;
|
|
36
|
+
/** Extract the JS application type carried by a Mongo codec — used both as `encode` input and as `decode` output. */
|
|
37
|
+
type MongoCodecInput<T> = T extends MongoCodec<string, readonly MongoCodecTrait[], unknown, infer TInput> ? TInput : never;
|
|
38
|
+
//#endregion
|
|
39
|
+
//#region src/codec-registry.d.ts
|
|
40
|
+
interface MongoCodecRegistry {
|
|
41
|
+
get(id: string): MongoCodec<string> | undefined;
|
|
42
|
+
has(id: string): boolean;
|
|
43
|
+
register(codec: MongoCodec<string>): void;
|
|
44
|
+
[Symbol.iterator](): Iterator<MongoCodec<string>>;
|
|
45
|
+
values(): IterableIterator<MongoCodec<string>>;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Create a new Mongo codec registry. Inline object literal — no class implementation; the registry is just a private `Map` with the documented surface methods.
|
|
49
|
+
*/
|
|
50
|
+
declare function newMongoCodecRegistry(): MongoCodecRegistry;
|
|
51
|
+
//#endregion
|
|
52
|
+
export { mongoCodec as a, MongoCodecTrait as i, MongoCodecInput as n, newMongoCodecRegistry as o, MongoCodecRegistry as r, MongoCodec as t };
|
|
53
|
+
//# sourceMappingURL=index-Dv2PNMiG.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-Dv2PNMiG.d.mts","names":[],"sources":["../../../../2-mongo-family/1-foundation/mongo-codec/dist/index.d.mts"],"mappings":";;;;KAGK,kBAAkB;;;;;;UAMb,WAAW,4BAA4B,yBAAyB,6BAA6B,mBAAmB,iBAAiB,0BAA0B,MAAM,IAAI,SAAS,OAAO;;;;KAI1L,oBAAoB,WAAW,iBAAiB;EACnD,cAAc,OAAO,WAAW;EAChC,cAAc,MAAM,cAAc;;EAElC,aAAa,OAAO,WAAW;EAC/B,aAAa,MAAM,cAAc;;;;;;;;;;;iBAWlB,WAAW,yBAAyB,yBAAyB,iCAAiC,iBAAiB,kBAAkB;EAChJ,QAAQ;EACR,SAAS,OAAO,QAAQ,KAAK,qBAAqB,QAAQ,QAAQ;EAClE,SAAS,MAAM,OAAO,KAAK,qBAAqB,SAAS,QAAQ;IAC/D,oBAAoB,UAAU,WAAW,IAAI,SAAS,OAAO;;KAE5D,gBAAgB,KAAK,UAAU,4BAA4B,kCAAkC,UAAU;;;UAGlG;EACR,IAAI,aAAa;EACjB,IAAI;EACJ,SAAS,OAAO;GACf,OAAO,aAAa,SAAS;EAC9B,UAAU,iBAAiB;;;;;iBAKZ,yBAAyB"}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import { t as CollationOptions } from "./mongodb-types-B4HmhF1S.mjs";
|
|
2
|
+
import { A as MongoIndexKey } from "./mongo-value-set-tNn9-pun-dJYx_rVD.mjs";
|
|
3
|
+
import "./index-Cd2zLiU6.mjs";
|
|
4
|
+
import { IRNodeBase } from "@prisma/orm-framework/components/ir";
|
|
5
|
+
import { DiffableNode } from "@prisma/orm-framework/components/control";
|
|
6
|
+
//#region ../../../2-mongo-family/3-tooling/mongo-schema-ir/dist/exports/index.d.mts
|
|
7
|
+
//#region src/canonicalize.d.ts
|
|
8
|
+
declare function canonicalize(obj: unknown): string;
|
|
9
|
+
//#endregion
|
|
10
|
+
//#region src/schema-collection-options.d.ts
|
|
11
|
+
interface MongoSchemaCollectionOptionsInput {
|
|
12
|
+
readonly capped?: {
|
|
13
|
+
size: number;
|
|
14
|
+
max?: number;
|
|
15
|
+
};
|
|
16
|
+
readonly timeseries?: {
|
|
17
|
+
timeField: string;
|
|
18
|
+
metaField?: string;
|
|
19
|
+
granularity?: 'seconds' | 'minutes' | 'hours';
|
|
20
|
+
};
|
|
21
|
+
readonly collation?: CollationOptions;
|
|
22
|
+
readonly changeStreamPreAndPostImages?: {
|
|
23
|
+
enabled: boolean;
|
|
24
|
+
};
|
|
25
|
+
readonly clusteredIndex?: {
|
|
26
|
+
name?: string;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
declare class MongoSchemaCollectionOptions extends MongoSchemaIRNode {
|
|
30
|
+
readonly nodeKind: "collectionOptions";
|
|
31
|
+
/** Fixed sentinel: at most one options node exists per collection. */
|
|
32
|
+
readonly id = "options";
|
|
33
|
+
readonly capped?: {
|
|
34
|
+
size: number;
|
|
35
|
+
max?: number;
|
|
36
|
+
} | undefined;
|
|
37
|
+
readonly timeseries?: {
|
|
38
|
+
timeField: string;
|
|
39
|
+
metaField?: string;
|
|
40
|
+
granularity?: 'seconds' | 'minutes' | 'hours';
|
|
41
|
+
} | undefined;
|
|
42
|
+
readonly collation?: CollationOptions | undefined;
|
|
43
|
+
readonly changeStreamPreAndPostImages?: {
|
|
44
|
+
enabled: boolean;
|
|
45
|
+
} | undefined;
|
|
46
|
+
readonly clusteredIndex?: {
|
|
47
|
+
name?: string;
|
|
48
|
+
} | undefined;
|
|
49
|
+
constructor(options: MongoSchemaCollectionOptionsInput);
|
|
50
|
+
accept<R>(visitor: MongoSchemaVisitor<R>): R;
|
|
51
|
+
}
|
|
52
|
+
//#endregion
|
|
53
|
+
//#region src/schema-validator.d.ts
|
|
54
|
+
interface MongoSchemaValidatorOptions {
|
|
55
|
+
readonly jsonSchema: Record<string, unknown>;
|
|
56
|
+
readonly validationLevel: 'strict' | 'moderate';
|
|
57
|
+
readonly validationAction: 'error' | 'warn';
|
|
58
|
+
}
|
|
59
|
+
declare class MongoSchemaValidator extends MongoSchemaIRNode {
|
|
60
|
+
readonly nodeKind: "validator";
|
|
61
|
+
/** Fixed sentinel: at most one validator exists per collection. */
|
|
62
|
+
readonly id = "validator";
|
|
63
|
+
readonly jsonSchema: Record<string, unknown>;
|
|
64
|
+
readonly validationLevel: 'strict' | 'moderate';
|
|
65
|
+
readonly validationAction: 'error' | 'warn';
|
|
66
|
+
constructor(options: MongoSchemaValidatorOptions);
|
|
67
|
+
accept<R>(visitor: MongoSchemaVisitor<R>): R;
|
|
68
|
+
}
|
|
69
|
+
//#endregion
|
|
70
|
+
//#region src/schema-collection.d.ts
|
|
71
|
+
interface MongoSchemaCollectionCtorOptions {
|
|
72
|
+
readonly name: string;
|
|
73
|
+
readonly indexes?: ReadonlyArray<MongoSchemaIndex>;
|
|
74
|
+
readonly validator?: MongoSchemaValidator;
|
|
75
|
+
readonly options?: MongoSchemaCollectionOptions;
|
|
76
|
+
}
|
|
77
|
+
declare class MongoSchemaCollection extends MongoSchemaIRNode {
|
|
78
|
+
readonly nodeKind: "collection";
|
|
79
|
+
readonly id: string;
|
|
80
|
+
readonly name: string;
|
|
81
|
+
readonly indexes: ReadonlyArray<MongoSchemaIndex>;
|
|
82
|
+
readonly validator?: MongoSchemaValidator | undefined;
|
|
83
|
+
readonly options?: MongoSchemaCollectionOptions | undefined;
|
|
84
|
+
constructor(options: MongoSchemaCollectionCtorOptions);
|
|
85
|
+
accept<R>(visitor: MongoSchemaVisitor<R>): R;
|
|
86
|
+
}
|
|
87
|
+
//#endregion
|
|
88
|
+
//#region src/schema-ir.d.ts
|
|
89
|
+
declare class MongoSchemaIR extends MongoSchemaIRNode {
|
|
90
|
+
readonly nodeKind: "schema";
|
|
91
|
+
/** Fixed sentinel: the schema is always the diff tree's single root. */
|
|
92
|
+
readonly id = "schema";
|
|
93
|
+
readonly collections: ReadonlyArray<MongoSchemaCollection>;
|
|
94
|
+
readonly collectionNames: ReadonlyArray<string>;
|
|
95
|
+
private readonly _byName;
|
|
96
|
+
constructor(collections: ReadonlyArray<MongoSchemaCollection>);
|
|
97
|
+
accept<R>(visitor: MongoSchemaVisitor<R>): R;
|
|
98
|
+
collection(name: string): MongoSchemaCollection | undefined;
|
|
99
|
+
}
|
|
100
|
+
//#endregion
|
|
101
|
+
//#region src/visitor.d.ts
|
|
102
|
+
interface MongoSchemaVisitor<R> {
|
|
103
|
+
schema(node: MongoSchemaIR): R;
|
|
104
|
+
collection(node: MongoSchemaCollection): R;
|
|
105
|
+
index(node: MongoSchemaIndex): R;
|
|
106
|
+
validator(node: MongoSchemaValidator): R;
|
|
107
|
+
collectionOptions(node: MongoSchemaCollectionOptions): R;
|
|
108
|
+
}
|
|
109
|
+
//#endregion
|
|
110
|
+
//#region src/schema-node.d.ts
|
|
111
|
+
/**
|
|
112
|
+
* Every concrete Mongo schema-IR node also implements the framework's
|
|
113
|
+
* `DiffableNode` interface, so a node can be carried as the `expected`/
|
|
114
|
+
* `actual` payload of a `SchemaDiffIssue`. Mongo's own diff (`diffMongoSchemas`)
|
|
115
|
+
* still hand-rolls its comparisons and never calls `isEqualTo`/`children` —
|
|
116
|
+
* this conformance exists so an issue can carry the real collection/index/
|
|
117
|
+
* validator/options node it concerns, not a coordinate string.
|
|
118
|
+
*
|
|
119
|
+
* Follow-up: `isEqualTo`/`children` are dead weight on every Mongo node
|
|
120
|
+
* (nothing calls them). The honest fix is splitting `DiffableNode` into a
|
|
121
|
+
* narrower "issue payload" bound (just `id`) that this class implements,
|
|
122
|
+
* separate from the full walkable `DiffableNode` (`id` + `isEqualTo` +
|
|
123
|
+
* `children`) the generic differ actually pairs and recurses over.
|
|
124
|
+
*/
|
|
125
|
+
declare abstract class MongoSchemaIRNode extends IRNodeBase implements DiffableNode {
|
|
126
|
+
readonly kind: string;
|
|
127
|
+
abstract readonly id: string;
|
|
128
|
+
/** Per-node discriminant `DiffableNode` requires: collection / index / validator / collectionOptions / schema. */
|
|
129
|
+
abstract readonly nodeKind: string;
|
|
130
|
+
abstract accept<R>(visitor: MongoSchemaVisitor<R>): R;
|
|
131
|
+
constructor();
|
|
132
|
+
isEqualTo(other: DiffableNode): boolean;
|
|
133
|
+
children(): readonly DiffableNode[];
|
|
134
|
+
}
|
|
135
|
+
//#endregion
|
|
136
|
+
//#region src/schema-index.d.ts
|
|
137
|
+
interface MongoSchemaIndexOptions {
|
|
138
|
+
readonly keys: ReadonlyArray<MongoIndexKey>;
|
|
139
|
+
readonly unique?: boolean | undefined;
|
|
140
|
+
readonly sparse?: boolean | undefined;
|
|
141
|
+
readonly expireAfterSeconds?: number | undefined;
|
|
142
|
+
readonly partialFilterExpression?: Record<string, unknown> | undefined;
|
|
143
|
+
readonly wildcardProjection?: Record<string, 0 | 1> | undefined;
|
|
144
|
+
readonly collation?: CollationOptions | undefined;
|
|
145
|
+
readonly weights?: Record<string, number> | undefined;
|
|
146
|
+
readonly default_language?: string | undefined;
|
|
147
|
+
readonly language_override?: string | undefined;
|
|
148
|
+
}
|
|
149
|
+
declare class MongoSchemaIndex extends MongoSchemaIRNode {
|
|
150
|
+
readonly nodeKind: "index";
|
|
151
|
+
readonly id: string;
|
|
152
|
+
readonly keys: ReadonlyArray<MongoIndexKey>;
|
|
153
|
+
readonly unique: boolean;
|
|
154
|
+
readonly sparse?: boolean | undefined;
|
|
155
|
+
readonly expireAfterSeconds?: number | undefined;
|
|
156
|
+
readonly partialFilterExpression?: Record<string, unknown> | undefined;
|
|
157
|
+
readonly wildcardProjection?: Record<string, 0 | 1> | undefined;
|
|
158
|
+
readonly collation?: CollationOptions | undefined;
|
|
159
|
+
readonly weights?: Record<string, number> | undefined;
|
|
160
|
+
readonly default_language?: string | undefined;
|
|
161
|
+
readonly language_override?: string | undefined;
|
|
162
|
+
constructor(options: MongoSchemaIndexOptions);
|
|
163
|
+
accept<R>(visitor: MongoSchemaVisitor<R>): R;
|
|
164
|
+
}
|
|
165
|
+
//#endregion
|
|
166
|
+
//#region src/index-equivalence.d.ts
|
|
167
|
+
/**
|
|
168
|
+
* Key-order-sensitive structural comparison. For key-order-independent
|
|
169
|
+
* comparison (e.g. lookup key construction), use {@link canonicalize}.
|
|
170
|
+
*/
|
|
171
|
+
declare function deepEqual(a: unknown, b: unknown): boolean;
|
|
172
|
+
declare function indexesEquivalent(a: MongoSchemaIndex, b: MongoSchemaIndex): boolean;
|
|
173
|
+
//#endregion
|
|
174
|
+
//#region src/types.d.ts
|
|
175
|
+
type AnyMongoSchemaNode = MongoSchemaIR | MongoSchemaCollection | MongoSchemaCollectionOptions | MongoSchemaIndex | MongoSchemaValidator;
|
|
176
|
+
//#endregion
|
|
177
|
+
export { MongoSchemaCollectionOptionsInput as a, MongoSchemaIndex as c, MongoSchemaValidatorOptions as d, MongoSchemaVisitor as f, indexesEquivalent as h, MongoSchemaCollectionOptions as i, MongoSchemaIndexOptions as l, deepEqual as m, MongoSchemaCollection as n, MongoSchemaIR as o, canonicalize as p, MongoSchemaCollectionCtorOptions as r, MongoSchemaIRNode as s, AnyMongoSchemaNode as t, MongoSchemaValidator as u };
|
|
178
|
+
//# sourceMappingURL=index-DxoO-ywI.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-DxoO-ywI.d.mts","names":[],"sources":["../../../../2-mongo-family/3-tooling/mongo-schema-ir/dist/exports/index.d.mts"],"mappings":";;;;;;;iBAKiB,aAAa;;;UAGpB;WACC;IACP;IACA;;WAEO;IACP;IACA;IACA;;WAEO,YAAY;WACZ;IACP;;WAEO;IACP;;;cAGU,qCAAqC;WACxC;;WAEA;WACA;IACP;IACA;;WAEO;IACP;IACA;IACA;;WAEO,YAAY;WACZ;IACP;;WAEO;IACP;;EAEF,YAAY,SAAS;EACrB,OAAO,GAAG,SAAS,mBAAmB,KAAK;;;;UAInC;WACC,YAAY;WACZ;WACA;;cAEG,6BAA6B;WAChC;;WAEA;WACA,YAAY;WACZ;WACA;EACT,YAAY,SAAS;EACrB,OAAO,GAAG,SAAS,mBAAmB,KAAK;;;;UAInC;WACC;WACA,UAAU,cAAc;WACxB,YAAY;WACZ,UAAU;;cAEP,8BAA8B;WACjC;WACA;WACA;WACA,SAAS,cAAc;WACvB,YAAY;WACZ,UAAU;EACnB,YAAY,SAAS;EACrB,OAAO,GAAG,SAAS,mBAAmB,KAAK;;;;cAI/B,sBAAsB;WACzB;;WAEA;WACA,aAAa,cAAc;WAC3B,iBAAiB;mBACT;EACjB,YAAY,aAAa,cAAc;EACvC,OAAO,GAAG,SAAS,mBAAmB,KAAK;EAC3C,WAAW,eAAe;;;;UAIlB,mBAAmB;EAC3B,OAAO,MAAM,gBAAgB;EAC7B,WAAW,MAAM,wBAAwB;EACzC,MAAM,MAAM,mBAAmB;EAC/B,UAAU,MAAM,uBAAuB;EACvC,kBAAkB,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;uBAkBlC,0BAA0B,sBAAsB;WAC5D;oBACS;;oBAEA;WACT,OAAO,GAAG,SAAS,mBAAmB,KAAK;EACpD;EACA,UAAU,OAAO;EACjB,qBAAqB;;;;UAIb;WACC,MAAM,cAAc;WACpB;WACA;WACA;WACA,0BAA0B;WAC1B,qBAAqB;WACrB,YAAY;WACZ,UAAU;WACV;WACA;;cAEG,yBAAyB;WAC5B;WACA;WACA,MAAM,cAAc;WACpB;WACA;WACA;WACA,0BAA0B;WAC1B,qBAAqB;WACrB,YAAY;WACZ,UAAU;WACV;WACA;EACT,YAAY,SAAS;EACrB,OAAO,GAAG,SAAS,mBAAmB,KAAK;;;;;;;;iBAQ5B,UAAU,YAAY;iBACtB,kBAAkB,GAAG,kBAAkB,GAAG;;;KAGtD,qBAAqB,gBAAgB,wBAAwB,+BAA+B,mBAAmB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
//#region ../../../2-mongo-family/1-foundation/mongo-value/dist/index.d.mts
|
|
2
|
+
//#region src/param-ref.d.ts
|
|
3
|
+
declare class MongoParamRef {
|
|
4
|
+
readonly value: unknown;
|
|
5
|
+
readonly name: string | undefined;
|
|
6
|
+
readonly codecId: string | undefined;
|
|
7
|
+
constructor(value: unknown, options?: {
|
|
8
|
+
name?: string;
|
|
9
|
+
codecId?: string;
|
|
10
|
+
});
|
|
11
|
+
static of(value: unknown, options?: {
|
|
12
|
+
name?: string;
|
|
13
|
+
codecId?: string;
|
|
14
|
+
}): MongoParamRef;
|
|
15
|
+
}
|
|
16
|
+
//#endregion
|
|
17
|
+
//#region src/values.d.ts
|
|
18
|
+
type LiteralValue = string | number | boolean | null | Date;
|
|
19
|
+
type MongoValue = MongoParamRef | LiteralValue | MongoDocument | MongoArray;
|
|
20
|
+
interface MongoDocument {
|
|
21
|
+
readonly [key: string]: MongoValue;
|
|
22
|
+
}
|
|
23
|
+
interface MongoArray extends ReadonlyArray<MongoValue> {}
|
|
24
|
+
type MongoExpr = MongoDocument;
|
|
25
|
+
type MongoUpdateDocument = Record<string, MongoValue>;
|
|
26
|
+
type RawPipeline = ReadonlyArray<Record<string, unknown>>;
|
|
27
|
+
type Document = Record<string, unknown>;
|
|
28
|
+
//#endregion
|
|
29
|
+
export { MongoExpr as a, MongoValue as c, MongoDocument as i, RawPipeline as l, LiteralValue as n, MongoParamRef as o, MongoArray as r, MongoUpdateDocument as s, Document as t };
|
|
30
|
+
//# sourceMappingURL=index-wKMm41HC.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index-wKMm41HC.d.mts","names":[],"sources":["../../../../2-mongo-family/1-foundation/mongo-value/dist/index.d.mts"],"mappings":";;cACc;WACH;WACA;WACA;EACT,YAAY,gBAAgB;IAC1B;IACA;;SAEK,GAAG,gBAAgB;IACxB;IACA;MACE;;;;KAID,kDAAkD;KAClD,aAAa,gBAAgB,eAAe,gBAAgB;UACvD;YACE,cAAc;;UAEhB,mBAAmB,cAAc;KACtC,YAAY;KACZ,sBAAsB,eAAe;KACrC,cAAc,cAAc;KAC5B,WAAW"}
|