@prisma-next/mongo-contract 0.13.0-dev.32 → 0.13.0-dev.34

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,6 +1,6 @@
1
- import { Contract, ContractField, ContractModel, ContractModelDefinitions, ContractValueObject, ContractValueObjectDefinitions, ControlPolicy, StorageBase, StorageHashBase } from "@prisma-next/contract/types";
1
+ import { Contract, ContractField, ContractModel, ContractValueObject, ContractValueObjectDefinitions, ControlPolicy, StorageBase, StorageHashBase } from "@prisma-next/contract/types";
2
2
  import { Type } from "arktype";
3
- import { IRNodeBase, Namespace, NamespaceBase, Storage } from "@prisma-next/framework-components/ir";
3
+ import { IRNodeBase, Namespace, NamespaceBase, Storage, UNBOUND_NAMESPACE_ID } from "@prisma-next/framework-components/ir";
4
4
  import { CollationOptions } from "@prisma-next/mongo-value/mongodb-types";
5
5
 
6
6
  //#region src/contract-schema.d.ts
@@ -477,12 +477,18 @@ type MongoStorageShape<THash extends string = string> = StorageBase<THash> & {
477
477
  readonly entries: MongoNamespaceEntries$1;
478
478
  }>;
479
479
  };
480
- type MongoContract<S extends MongoStorageShape = MongoStorageShape, M extends Record<string, MongoModelDefinition> = Record<string, MongoModelDefinition>> = Contract<S, M>;
481
- /** Model map inferred from a {@link MongoContract} (domain.namespaces union). */
482
- type MongoModelsMap<TContract extends MongoContract> = ContractModelDefinitions<TContract>;
480
+ type MongoContract<S extends MongoStorageShape = MongoStorageShape> = Contract<S>;
481
+ /**
482
+ * Model map for the contract's sole (unbound) domain namespace. Mongo is
483
+ * structurally single-namespace, so its models live under
484
+ * {@link UNBOUND_NAMESPACE_ID} rather than in a flat cross-namespace union.
485
+ * Every Mongo type that needs the model map reads it through here, so none
486
+ * indexes the contract's namespaces directly.
487
+ */
488
+ type MongoModelsMap<TContract extends MongoContract> = TContract['domain']['namespaces'][typeof UNBOUND_NAMESPACE_ID]['models'];
483
489
  type RootModelName<TContract extends MongoContract, RootName extends keyof TContract['roots'] & string> = TContract['roots'][RootName] extends {
484
490
  readonly model: infer M extends string;
485
- } ? M & keyof import('@prisma-next/contract/types').ContractModelDefinitions<TContract> : never;
491
+ } ? M & keyof MongoModelsMap<TContract> : never;
486
492
  type MongoTypeMaps<TCodecTypes extends Record<string, {
487
493
  output: unknown;
488
494
  }> = Record<string, {
@@ -506,6 +512,18 @@ type ExtractMongoFieldOutputTypes<T> = ExtractMongoTypeMaps<T> extends {
506
512
  type ExtractMongoFieldInputTypes<T> = ExtractMongoTypeMaps<T> extends {
507
513
  fieldInputTypes: infer F;
508
514
  } ? F extends Record<string, Record<string, unknown>> ? F : Record<string, never> : Record<string, never>;
515
+ /**
516
+ * The per-model field-output map at the contract's unbound namespace. The
517
+ * framework emitter nests `FieldOutputTypes` by namespace id
518
+ * (`{ [ns]: { [model]: { [field]: <refined> } } }`); Mongo is structurally
519
+ * single-namespace, so its refined rows resolve the per-model map under
520
+ * {@link UNBOUND_NAMESPACE_ID}. A map without that coordinate (e.g. a contract
521
+ * carrying no type maps) resolves to `never`, which the row resolvers read as
522
+ * "no refined map" and fall back to codec-based inference.
523
+ */
524
+ type MongoUnboundFieldOutputTypes<T> = ExtractMongoFieldOutputTypes<T> extends Record<typeof UNBOUND_NAMESPACE_ID, infer Inner> ? Inner : never;
525
+ /** Input-side counterpart of {@link MongoUnboundFieldOutputTypes}. */
526
+ type MongoUnboundFieldInputTypes<T> = ExtractMongoFieldInputTypes<T> extends Record<typeof UNBOUND_NAMESPACE_ID, infer Inner> ? Inner : never;
509
527
  type ExtractValueObjects<TContract extends Contract> = ContractValueObjectDefinitions<TContract>;
510
528
  type NormalizeContractFields<TFields> = { [K in keyof TFields]: TFields[K] extends ContractField ? TFields[K] : never };
511
529
  type ExtractValueObjectFields<TValueObjects extends Record<string, ContractValueObject>, VOName extends keyof TValueObjects> = NormalizeContractFields<TValueObjects[VOName]['fields']>;
@@ -526,7 +544,7 @@ type InferFieldType<TField, TValueObjects extends Record<string, ContractValueOb
526
544
  }>> = TField extends ContractField ? TField extends {
527
545
  many: true;
528
546
  } ? TField['nullable'] extends true ? InferFieldBaseType<TField['type'], TValueObjects, TCodecTypes>[] | null : InferFieldBaseType<TField['type'], TValueObjects, TCodecTypes>[] : TField['nullable'] extends true ? InferFieldBaseType<TField['type'], TValueObjects, TCodecTypes> | null : InferFieldBaseType<TField['type'], TValueObjects, TCodecTypes> : never;
529
- type InferModelRow<TContract extends MongoContractWithTypeMaps<MongoContract, MongoTypeMaps>, ModelName extends string & keyof ContractModelDefinitions<TContract>, TFields extends Record<string, ContractField> = ContractModelDefinitions<TContract>[ModelName]['fields'], TCodecTypes extends Record<string, {
547
+ type InferModelRow<TContract extends MongoContractWithTypeMaps<MongoContract, MongoTypeMaps>, ModelName extends string & keyof MongoModelsMap<TContract>, TFields extends Record<string, ContractField> = MongoModelsMap<TContract>[ModelName]['fields'], TCodecTypes extends Record<string, {
530
548
  output: unknown;
531
549
  }> = ExtractMongoCodecTypes<TContract>, TValueObjects extends Record<string, ContractValueObject> = ExtractValueObjects<TContract>> = { -readonly [FieldName in keyof TFields]: InferFieldType<TFields[FieldName], TValueObjects, TCodecTypes> };
532
550
  //#endregion
@@ -587,5 +605,5 @@ declare function applyPolymorphicScopeToMongoIndex(index: MongoIndex, scope: Pol
587
605
  //#region src/validate-storage.d.ts
588
606
  declare function validateMongoStorage(contract: MongoContract): void;
589
607
  //#endregion
590
- export { type ApplyScopeResult, type ExtractMongoCodecTypes, type ExtractMongoFieldInputTypes, type ExtractMongoFieldOutputTypes, type ExtractMongoTypeMaps, type InferModelRow, MongoChangeStreamPreAndPostImagesOptions, type MongoChangeStreamPreAndPostImagesOptionsInput, type MongoClusteredCollectionKey, MongoClusteredCollectionOptions, type MongoClusteredCollectionOptionsInput, type MongoCollationAlternate, type MongoCollationCaseFirst, type MongoCollationMaxVariable, MongoCollationOptions, type MongoCollationOptionsInput, type MongoCollationStrength, MongoCollection, type MongoCollectionInput, MongoCollectionOptions, type MongoCollectionOptionsAuthoringInput, type MongoCollectionOptionsInput, type MongoContract, MongoContractSchema, type MongoContractWithTypeMaps, MongoIndex, type MongoIndexAuthoringInput, type MongoIndexFieldValue, type MongoIndexFields, type MongoIndexInput, type MongoIndexKey, type MongoIndexKeyDirection, MongoIndexOptionDefaults, type MongoIndexOptionDefaultsInput, MongoIndexOptions, type MongoIndexOptionsInput, type MongoJsonObject, type MongoJsonPrimitive, type MongoJsonValue, type MongoModelDefinition, type MongoModelStorage, type MongoModelsMap, type MongoNamespace, type MongoNamespaceEntries, MongoStorage, type MongoStorageCappedShape, type MongoStorageClusteredIndexShape, type MongoStorageInput, type MongoStorageShape, MongoTimeSeriesCollectionOptions, type MongoTimeSeriesCollectionOptionsInput, type MongoTimeSeriesGranularity, type MongoTypeMaps, type MongoTypeMapsPhantomKey, MongoUnboundNamespace, MongoValidator, type MongoValidatorInput, type MongoValidatorValidationAction, type MongoValidatorValidationLevel, type MongoWildcardProjection, type PolymorphicIndexScope, type RootModelName, applyPolymorphicScopeToMongoIndex, buildMongoNamespace, createMongoContractSchema, createMongoNamespaceEnvelopeSchema, defaultMongoDomainNamespaceId, defaultMongoStorageNamespaceId, validateMongoStorage };
608
+ export { type ApplyScopeResult, type ExtractMongoCodecTypes, type ExtractMongoFieldInputTypes, type ExtractMongoFieldOutputTypes, type ExtractMongoTypeMaps, type InferModelRow, MongoChangeStreamPreAndPostImagesOptions, type MongoChangeStreamPreAndPostImagesOptionsInput, type MongoClusteredCollectionKey, MongoClusteredCollectionOptions, type MongoClusteredCollectionOptionsInput, type MongoCollationAlternate, type MongoCollationCaseFirst, type MongoCollationMaxVariable, MongoCollationOptions, type MongoCollationOptionsInput, type MongoCollationStrength, MongoCollection, type MongoCollectionInput, MongoCollectionOptions, type MongoCollectionOptionsAuthoringInput, type MongoCollectionOptionsInput, type MongoContract, MongoContractSchema, type MongoContractWithTypeMaps, MongoIndex, type MongoIndexAuthoringInput, type MongoIndexFieldValue, type MongoIndexFields, type MongoIndexInput, type MongoIndexKey, type MongoIndexKeyDirection, MongoIndexOptionDefaults, type MongoIndexOptionDefaultsInput, MongoIndexOptions, type MongoIndexOptionsInput, type MongoJsonObject, type MongoJsonPrimitive, type MongoJsonValue, type MongoModelDefinition, type MongoModelStorage, type MongoModelsMap, type MongoNamespace, type MongoNamespaceEntries, MongoStorage, type MongoStorageCappedShape, type MongoStorageClusteredIndexShape, type MongoStorageInput, type MongoStorageShape, MongoTimeSeriesCollectionOptions, type MongoTimeSeriesCollectionOptionsInput, type MongoTimeSeriesGranularity, type MongoTypeMaps, type MongoTypeMapsPhantomKey, type MongoUnboundFieldInputTypes, type MongoUnboundFieldOutputTypes, MongoUnboundNamespace, MongoValidator, type MongoValidatorInput, type MongoValidatorValidationAction, type MongoValidatorValidationLevel, type MongoWildcardProjection, type PolymorphicIndexScope, type RootModelName, applyPolymorphicScopeToMongoIndex, buildMongoNamespace, createMongoContractSchema, createMongoNamespaceEnvelopeSchema, defaultMongoDomainNamespaceId, defaultMongoStorageNamespaceId, validateMongoStorage };
591
609
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/contract-schema.ts","../src/ir/mongo-collation-options.ts","../src/ir/mongo-index-options.ts","../src/ir/mongo-change-stream-pre-and-post-images-options.ts","../src/ir/mongo-clustered-collection-options.ts","../src/ir/mongo-index-option-defaults.ts","../src/ir/mongo-time-series-collection-options.ts","../src/ir/mongo-collection-options.ts","../src/ir/mongo-index.ts","../src/ir/mongo-validator.ts","../src/ir/mongo-collection.ts","../src/contract-types.ts","../src/default-namespace.ts","../src/ir/mongo-storage.ts","../src/ir/build-mongo-namespace.ts","../src/ir/mongo-unbound-namespace.ts","../src/polymorphic-index-scope.ts","../src/validate-storage.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/contract-schema.ts","../src/ir/mongo-collation-options.ts","../src/ir/mongo-index-options.ts","../src/ir/mongo-change-stream-pre-and-post-images-options.ts","../src/ir/mongo-clustered-collection-options.ts","../src/ir/mongo-index-option-defaults.ts","../src/ir/mongo-time-series-collection-options.ts","../src/ir/mongo-collection-options.ts","../src/ir/mongo-index.ts","../src/ir/mongo-validator.ts","../src/ir/mongo-collection.ts","../src/contract-types.ts","../src/default-namespace.ts","../src/ir/mongo-storage.ts","../src/ir/build-mongo-namespace.ts","../src/ir/mongo-unbound-namespace.ts","../src/polymorphic-index-scope.ts","../src/validate-storage.ts"],"mappings":"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"}
package/package.json CHANGED
@@ -1,22 +1,22 @@
1
1
  {
2
2
  "name": "@prisma-next/mongo-contract",
3
- "version": "0.13.0-dev.32",
3
+ "version": "0.13.0-dev.34",
4
4
  "license": "Apache-2.0",
5
5
  "type": "module",
6
6
  "sideEffects": false,
7
7
  "description": "Contract types and validation for Prisma Next MongoDB support",
8
8
  "dependencies": {
9
- "@prisma-next/contract": "0.13.0-dev.32",
10
- "@prisma-next/framework-components": "0.13.0-dev.32",
11
- "@prisma-next/mongo-value": "0.13.0-dev.32",
12
- "@prisma-next/utils": "0.13.0-dev.32",
9
+ "@prisma-next/contract": "0.13.0-dev.34",
10
+ "@prisma-next/framework-components": "0.13.0-dev.34",
11
+ "@prisma-next/mongo-value": "0.13.0-dev.34",
12
+ "@prisma-next/utils": "0.13.0-dev.34",
13
13
  "arktype": "^2.2.0",
14
14
  "mongodb": "^7.2.0"
15
15
  },
16
16
  "devDependencies": {
17
- "@prisma-next/test-utils": "0.13.0-dev.32",
18
- "@prisma-next/tsconfig": "0.13.0-dev.32",
19
- "@prisma-next/tsdown": "0.13.0-dev.32",
17
+ "@prisma-next/test-utils": "0.13.0-dev.34",
18
+ "@prisma-next/tsconfig": "0.13.0-dev.34",
19
+ "@prisma-next/tsdown": "0.13.0-dev.34",
20
20
  "tsdown": "0.22.1",
21
21
  "typescript": "5.9.3",
22
22
  "vitest": "4.1.8"
@@ -2,12 +2,11 @@ import type {
2
2
  Contract,
3
3
  ContractField,
4
4
  ContractModel,
5
- ContractModelDefinitions,
6
5
  ContractValueObject,
7
6
  ContractValueObjectDefinitions,
8
7
  StorageBase,
9
8
  } from '@prisma-next/contract/types';
10
- import type { Namespace } from '@prisma-next/framework-components/ir';
9
+ import type { Namespace, UNBOUND_NAMESPACE_ID } from '@prisma-next/framework-components/ir';
11
10
  import type { MongoIndexOptionsInput } from './ir/mongo-index-options';
12
11
 
13
12
  export type MongoIndexFieldValue = 1 | -1 | 'text' | '2dsphere' | '2d' | 'hashed';
@@ -73,19 +72,23 @@ export type MongoStorageShape<THash extends string = string> = StorageBase<THash
73
72
  >;
74
73
  };
75
74
 
76
- export type MongoContract<
77
- S extends MongoStorageShape = MongoStorageShape,
78
- M extends Record<string, MongoModelDefinition> = Record<string, MongoModelDefinition>,
79
- > = Contract<S, M>;
75
+ export type MongoContract<S extends MongoStorageShape = MongoStorageShape> = Contract<S>;
80
76
 
81
- /** Model map inferred from a {@link MongoContract} (domain.namespaces union). */
82
- export type MongoModelsMap<TContract extends MongoContract> = ContractModelDefinitions<TContract>;
77
+ /**
78
+ * Model map for the contract's sole (unbound) domain namespace. Mongo is
79
+ * structurally single-namespace, so its models live under
80
+ * {@link UNBOUND_NAMESPACE_ID} rather than in a flat cross-namespace union.
81
+ * Every Mongo type that needs the model map reads it through here, so none
82
+ * indexes the contract's namespaces directly.
83
+ */
84
+ export type MongoModelsMap<TContract extends MongoContract> =
85
+ TContract['domain']['namespaces'][typeof UNBOUND_NAMESPACE_ID]['models'];
83
86
 
84
87
  export type RootModelName<
85
88
  TContract extends MongoContract,
86
89
  RootName extends keyof TContract['roots'] & string,
87
90
  > = TContract['roots'][RootName] extends { readonly model: infer M extends string }
88
- ? M & keyof import('@prisma-next/contract/types').ContractModelDefinitions<TContract>
91
+ ? M & keyof MongoModelsMap<TContract>
89
92
  : never;
90
93
 
91
94
  export type MongoTypeMaps<
@@ -135,6 +138,26 @@ export type ExtractMongoFieldInputTypes<T> =
135
138
  : Record<string, never>
136
139
  : Record<string, never>;
137
140
 
141
+ /**
142
+ * The per-model field-output map at the contract's unbound namespace. The
143
+ * framework emitter nests `FieldOutputTypes` by namespace id
144
+ * (`{ [ns]: { [model]: { [field]: <refined> } } }`); Mongo is structurally
145
+ * single-namespace, so its refined rows resolve the per-model map under
146
+ * {@link UNBOUND_NAMESPACE_ID}. A map without that coordinate (e.g. a contract
147
+ * carrying no type maps) resolves to `never`, which the row resolvers read as
148
+ * "no refined map" and fall back to codec-based inference.
149
+ */
150
+ export type MongoUnboundFieldOutputTypes<T> =
151
+ ExtractMongoFieldOutputTypes<T> extends Record<typeof UNBOUND_NAMESPACE_ID, infer Inner>
152
+ ? Inner
153
+ : never;
154
+
155
+ /** Input-side counterpart of {@link MongoUnboundFieldOutputTypes}. */
156
+ export type MongoUnboundFieldInputTypes<T> =
157
+ ExtractMongoFieldInputTypes<T> extends Record<typeof UNBOUND_NAMESPACE_ID, infer Inner>
158
+ ? Inner
159
+ : never;
160
+
138
161
  type ExtractValueObjects<TContract extends Contract> = ContractValueObjectDefinitions<TContract>;
139
162
 
140
163
  type NormalizeContractFields<TFields> = {
@@ -187,11 +210,8 @@ type InferFieldType<
187
210
 
188
211
  export type InferModelRow<
189
212
  TContract extends MongoContractWithTypeMaps<MongoContract, MongoTypeMaps>,
190
- ModelName extends string & keyof ContractModelDefinitions<TContract>,
191
- TFields extends Record<
192
- string,
193
- ContractField
194
- > = ContractModelDefinitions<TContract>[ModelName]['fields'],
213
+ ModelName extends string & keyof MongoModelsMap<TContract>,
214
+ TFields extends Record<string, ContractField> = MongoModelsMap<TContract>[ModelName]['fields'],
195
215
  TCodecTypes extends Record<string, { output: unknown }> = ExtractMongoCodecTypes<TContract>,
196
216
  TValueObjects extends Record<string, ContractValueObject> = ExtractValueObjects<TContract>,
197
217
  > = {
@@ -25,6 +25,8 @@ export type {
25
25
  MongoStorageShape,
26
26
  MongoTypeMaps,
27
27
  MongoTypeMapsPhantomKey,
28
+ MongoUnboundFieldInputTypes,
29
+ MongoUnboundFieldOutputTypes,
28
30
  MongoWildcardProjection,
29
31
  RootModelName,
30
32
  } from '../contract-types';