@prisma-next/sql-contract-ts 0.5.0-dev.81 → 0.5.0-dev.82
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/contract-builder.d.mts +87 -55
- package/dist/contract-builder.d.mts.map +1 -1
- package/dist/contract-builder.mjs +24 -13
- package/dist/contract-builder.mjs.map +1 -1
- package/package.json +9 -9
- package/src/build-contract.ts +37 -5
- package/src/composed-authoring-helpers.ts +35 -1
- package/src/contract-definition.ts +2 -2
- package/src/contract-dsl.ts +72 -32
- package/src/contract-lowering.ts +4 -3
- package/src/contract-types.ts +33 -0
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ColumnDefault, ColumnDefaultLiteralInputValue, Contract, ContractRelation, ExecutionMutationDefaultPhases, ExecutionMutationDefaultPhases as ExecutionMutationDefaultPhases$1, ExecutionMutationDefaultValue, StorageHashBase } from "@prisma-next/contract/types";
|
|
2
|
+
import { IndexTypeRegistration } from "@prisma-next/sql-contract/index-types";
|
|
2
3
|
import { ContractWithTypeMaps, Index as Index$1, ReferentialAction, SqlStorage, StorageTypeInstance, TypeMaps } from "@prisma-next/sql-contract/types";
|
|
3
4
|
import { AuthoringArgumentDescriptor, AuthoringFieldNamespace, AuthoringFieldPresetDescriptor, AuthoringTypeConstructorDescriptor, AuthoringTypeNamespace } from "@prisma-next/framework-components/authoring";
|
|
4
5
|
import { ForeignKeyDefaultsState } from "@prisma-next/contract-authoring";
|
|
@@ -153,10 +154,16 @@ type ModelTokenRefs<ModelName extends string, Fields extends Record<string, Scal
|
|
|
153
154
|
type ConstraintOptions<Name extends string | undefined = string | undefined> = {
|
|
154
155
|
readonly name?: Name;
|
|
155
156
|
};
|
|
156
|
-
type
|
|
157
|
-
readonly
|
|
158
|
-
|
|
159
|
-
|
|
157
|
+
type IndexTypeMap = Record<string, {
|
|
158
|
+
readonly options: unknown;
|
|
159
|
+
}>;
|
|
160
|
+
type IndexInput<Name extends string | undefined, IndexTypes extends IndexTypeMap> = keyof IndexTypes extends never ? ConstraintOptions<Name> : (ConstraintOptions<Name> & {
|
|
161
|
+
readonly type?: never;
|
|
162
|
+
readonly options?: never;
|
|
163
|
+
}) | { readonly [K in keyof IndexTypes & string]: ConstraintOptions<Name> & {
|
|
164
|
+
readonly type: K;
|
|
165
|
+
readonly options: IndexTypes[K]['options'];
|
|
166
|
+
} }[keyof IndexTypes & string];
|
|
160
167
|
type ForeignKeyOptions<Name extends string | undefined = string | undefined> = ConstraintOptions<Name> & {
|
|
161
168
|
readonly onDelete?: 'noAction' | 'restrict' | 'cascade' | 'setNull' | 'setDefault';
|
|
162
169
|
readonly onUpdate?: 'noAction' | 'restrict' | 'cascade' | 'setNull' | 'setDefault';
|
|
@@ -180,8 +187,8 @@ type IndexConstraint<FieldNames extends readonly string[] = readonly string[], N
|
|
|
180
187
|
readonly kind: 'index';
|
|
181
188
|
readonly fields: FieldNames;
|
|
182
189
|
readonly name?: Name;
|
|
183
|
-
readonly
|
|
184
|
-
readonly
|
|
190
|
+
readonly type?: string;
|
|
191
|
+
readonly options?: Record<string, unknown>;
|
|
185
192
|
};
|
|
186
193
|
type ForeignKeyConstraint<SourceFieldNames extends readonly string[] = readonly string[], TargetModelName extends string = string, TargetFieldNames extends readonly string[] = readonly string[], Name extends string | undefined = string | undefined> = {
|
|
187
194
|
readonly kind: 'fk';
|
|
@@ -195,7 +202,7 @@ type ForeignKeyConstraint<SourceFieldNames extends readonly string[] = readonly
|
|
|
195
202
|
readonly constraint?: boolean;
|
|
196
203
|
readonly index?: boolean;
|
|
197
204
|
};
|
|
198
|
-
declare function createConstraintsDsl(): {
|
|
205
|
+
declare function createConstraintsDsl<IndexTypes extends IndexTypeMap = Record<never, never>>(): {
|
|
199
206
|
ref: <ModelName extends string, FieldName extends string>(modelName: ModelName, fieldName: FieldName) => TargetFieldRef<ModelName, FieldName>;
|
|
200
207
|
id: {
|
|
201
208
|
<FieldName extends string, Name extends string | undefined = undefined>(field: ColumnRef<FieldName>, options?: NamedConstraintSpec<Name>): IdConstraint<readonly [FieldName], Name>;
|
|
@@ -205,10 +212,7 @@ declare function createConstraintsDsl(): {
|
|
|
205
212
|
<FieldName extends string>(field: ColumnRef<FieldName>, options?: ConstraintOptions): UniqueConstraint<readonly [FieldName]>;
|
|
206
213
|
<FieldNames extends readonly string[]>(fields: { readonly [K in keyof FieldNames]: ColumnRef<FieldNames[K] & string> }, options?: ConstraintOptions): UniqueConstraint<FieldNames>;
|
|
207
214
|
};
|
|
208
|
-
index: {
|
|
209
|
-
<FieldName extends string, Name extends string | undefined = undefined>(field: ColumnRef<FieldName>, options?: IndexOptions<Name>): IndexConstraint<readonly [FieldName], Name>;
|
|
210
|
-
<FieldNames extends readonly string[], Name extends string | undefined = undefined>(fields: { readonly [K in keyof FieldNames]: ColumnRef<FieldNames[K] & string> }, options?: IndexOptions<Name>): IndexConstraint<FieldNames, Name>;
|
|
211
|
-
};
|
|
215
|
+
index: <FieldNames extends readonly string[], Name extends string | undefined = undefined>(fields: { readonly [K in keyof FieldNames]: ColumnRef<FieldNames[K] & string> }, options?: IndexInput<Name, IndexTypes>) => IndexConstraint<FieldNames, Name>;
|
|
212
216
|
foreignKey: {
|
|
213
217
|
<SourceFieldName extends string, TargetModelName extends string, TargetFieldName extends string, Name extends string | undefined = undefined>(field: ColumnRef<SourceFieldName>, target: TargetFieldRef<TargetModelName, TargetFieldName>, options?: ForeignKeyOptions<Name>): ForeignKeyConstraint<readonly [SourceFieldName], TargetModelName, readonly [TargetFieldName], Name>;
|
|
214
218
|
<SourceFieldNames extends readonly string[], TargetModelName extends string, TargetFieldNames extends readonly string[], Name extends string | undefined = undefined>(fields: { readonly [K in keyof SourceFieldNames]: ColumnRef<SourceFieldNames[K] & string> }, target: { readonly [K in keyof TargetFieldNames]: TargetFieldRef<TargetModelName, TargetFieldNames[K] & string> }, options?: ForeignKeyOptions<Name>): ForeignKeyConstraint<SourceFieldNames, TargetModelName, TargetFieldNames, Name>;
|
|
@@ -229,9 +233,15 @@ type AttributeContext<Fields extends Record<string, ScalarFieldBuilder>> = {
|
|
|
229
233
|
readonly fields: FieldRefs<Fields>;
|
|
230
234
|
readonly constraints: Pick<ConstraintsDsl, 'id' | 'unique'>;
|
|
231
235
|
};
|
|
232
|
-
type
|
|
236
|
+
type PackAwareIndex<IndexTypes extends IndexTypeMap> = <FieldNames extends readonly string[], Name extends string | undefined = undefined>(fields: { readonly [K in keyof FieldNames]: ColumnRef<FieldNames[K] & string> }, options?: IndexInput<Name, IndexTypes>) => IndexConstraint<FieldNames, Name>;
|
|
237
|
+
type PackAwareSqlConstraints<IndexTypes extends IndexTypeMap> = {
|
|
238
|
+
readonly foreignKey: ConstraintsDsl['foreignKey'];
|
|
239
|
+
readonly ref: ConstraintsDsl['ref'];
|
|
240
|
+
readonly index: PackAwareIndex<IndexTypes>;
|
|
241
|
+
};
|
|
242
|
+
type SqlContext<Fields extends Record<string, ScalarFieldBuilder>, IndexTypes extends IndexTypeMap = Record<never, never>> = {
|
|
233
243
|
readonly cols: FieldRefs<Fields>;
|
|
234
|
-
readonly constraints:
|
|
244
|
+
readonly constraints: PackAwareSqlConstraints<IndexTypes>;
|
|
235
245
|
};
|
|
236
246
|
type StageInput<Context, Spec> = Spec | ((context: Context) => Spec);
|
|
237
247
|
type StaticLiteralName<Name> = Name extends string ? (string extends Name ? never : Name) : never;
|
|
@@ -259,29 +269,30 @@ type SqlForeignKeys<SqlSpec extends SqlStageSpec> = SqlSpec extends {
|
|
|
259
269
|
type SqlNamedObjects<SqlSpec extends SqlStageSpec> = [...SqlIndexes<SqlSpec>, ...SqlForeignKeys<SqlSpec>];
|
|
260
270
|
type ValidateSqlStageSpec<Fields extends Record<string, ScalarFieldBuilder>, AttributesSpec extends ModelAttributesSpec | undefined, SqlSpec extends SqlStageSpec> = [DuplicateLiteralNames<SqlNamedObjects<SqlSpec>>] extends [never] ? [Extract<ModelIdLiteralName<Fields, AttributesSpec>, NamedConstraintLiteralName<SqlNamedObjects<SqlSpec>[number]>>] extends [never] ? SqlSpec : never : never;
|
|
261
271
|
type ValidateAttributesStageSpec<Fields extends Record<string, ScalarFieldBuilder>, SqlSpec extends SqlStageSpec | undefined, AttributesSpec extends ModelAttributesSpec> = SqlSpec extends SqlStageSpec ? [Extract<ModelIdLiteralName<Fields, AttributesSpec>, NamedConstraintLiteralName<SqlNamedObjects<SqlSpec>[number]>>] extends [never] ? AttributesSpec : never : AttributesSpec;
|
|
262
|
-
declare class ContractModelBuilder<ModelName extends string | undefined, Fields extends Record<string, ScalarFieldBuilder>, Relations extends Record<string, AnyRelationBuilder> = Record<never, never>, AttributesSpec extends ModelAttributesSpec | undefined = undefined, SqlSpec extends SqlStageSpec | undefined = undefined
|
|
272
|
+
declare class ContractModelBuilder<ModelName extends string | undefined, Fields extends Record<string, ScalarFieldBuilder>, Relations extends Record<string, AnyRelationBuilder> = Record<never, never>, AttributesSpec extends ModelAttributesSpec | undefined = undefined, SqlSpec extends SqlStageSpec | undefined = undefined, IndexTypes extends IndexTypeMap = Record<never, never>> {
|
|
263
273
|
readonly stageOne: {
|
|
264
274
|
readonly modelName?: ModelName;
|
|
265
275
|
readonly fields: Fields;
|
|
266
276
|
readonly relations: Relations;
|
|
267
277
|
};
|
|
268
278
|
readonly attributesFactory?: StageInput<AttributeContext<Fields>, AttributesSpec> | undefined;
|
|
269
|
-
readonly sqlFactory?: StageInput<SqlContext<Fields>, SqlSpec> | undefined;
|
|
279
|
+
readonly sqlFactory?: StageInput<SqlContext<Fields, IndexTypes>, SqlSpec> | undefined;
|
|
270
280
|
readonly __name: ModelName;
|
|
271
281
|
readonly __fields: Fields;
|
|
272
282
|
readonly __relations: Relations;
|
|
273
283
|
readonly __attributes: AttributesSpec;
|
|
274
284
|
readonly __sql: SqlSpec;
|
|
285
|
+
readonly __indexTypes: IndexTypes;
|
|
275
286
|
readonly refs: ModelName extends string ? ModelTokenRefs<ModelName, Fields> : never;
|
|
276
287
|
constructor(stageOne: {
|
|
277
288
|
readonly modelName?: ModelName;
|
|
278
289
|
readonly fields: Fields;
|
|
279
290
|
readonly relations: Relations;
|
|
280
|
-
}, attributesFactory?: StageInput<AttributeContext<Fields>, AttributesSpec> | undefined, sqlFactory?: StageInput<SqlContext<Fields>, SqlSpec> | undefined);
|
|
281
|
-
ref<FieldName extends keyof Fields & string>(this: ModelName extends string ? ContractModelBuilder<ModelName, Fields, Relations, AttributesSpec, SqlSpec> : never, fieldName: FieldName): TargetFieldRef<ModelName & string, FieldName>;
|
|
282
|
-
relations<const NextRelations extends Record<string, AnyRelationBuilder>>(relations: NextRelations): ContractModelBuilder<ModelName, Fields, Relations & NextRelations, AttributesSpec, SqlSpec>;
|
|
283
|
-
attributes<const NextAttributesSpec extends ModelAttributesSpec>(specOrFactory: StageInput<AttributeContext<Fields>, ValidateAttributesStageSpec<Fields, SqlSpec, NextAttributesSpec>>): ContractModelBuilder<ModelName, Fields, Relations, NextAttributesSpec, SqlSpec>;
|
|
284
|
-
sql<const NextSqlSpec extends SqlStageSpec>(specOrFactory: StageInput<SqlContext<Fields>, NextSqlSpec>): [ValidateSqlStageSpec<Fields, AttributesSpec, NextSqlSpec>] extends [never] ? ContractModelBuilder<ModelName, Fields, Relations, AttributesSpec, never> : ContractModelBuilder<ModelName, Fields, Relations, AttributesSpec, NextSqlSpec>;
|
|
291
|
+
}, attributesFactory?: StageInput<AttributeContext<Fields>, AttributesSpec> | undefined, sqlFactory?: StageInput<SqlContext<Fields, IndexTypes>, SqlSpec> | undefined);
|
|
292
|
+
ref<FieldName extends keyof Fields & string>(this: ModelName extends string ? ContractModelBuilder<ModelName, Fields, Relations, AttributesSpec, SqlSpec, IndexTypes> : never, fieldName: FieldName): TargetFieldRef<ModelName & string, FieldName>;
|
|
293
|
+
relations<const NextRelations extends Record<string, AnyRelationBuilder>>(relations: NextRelations): ContractModelBuilder<ModelName, Fields, Relations & NextRelations, AttributesSpec, SqlSpec, IndexTypes>;
|
|
294
|
+
attributes<const NextAttributesSpec extends ModelAttributesSpec>(specOrFactory: StageInput<AttributeContext<Fields>, ValidateAttributesStageSpec<Fields, SqlSpec, NextAttributesSpec>>): ContractModelBuilder<ModelName, Fields, Relations, NextAttributesSpec, SqlSpec, IndexTypes>;
|
|
295
|
+
sql<const NextSqlSpec extends SqlStageSpec>(specOrFactory: StageInput<SqlContext<Fields, IndexTypes>, NextSqlSpec>): [ValidateSqlStageSpec<Fields, AttributesSpec, NextSqlSpec>] extends [never] ? ContractModelBuilder<ModelName, Fields, Relations, AttributesSpec, never, IndexTypes> : ContractModelBuilder<ModelName, Fields, Relations, AttributesSpec, NextSqlSpec, IndexTypes>;
|
|
285
296
|
buildAttributesSpec(): AttributesSpec;
|
|
286
297
|
buildSqlSpec(): SqlSpec;
|
|
287
298
|
}
|
|
@@ -410,39 +421,6 @@ type FieldHelperFunctionWithNamedConstraint<Descriptor extends AuthoringFieldPre
|
|
|
410
421
|
type FieldHelperFunction<Descriptor extends AuthoringFieldPresetDescriptor> = SupportsNamedConstraintOptions<Descriptor> extends true ? FieldHelperFunctionWithNamedConstraint<Descriptor> : FieldHelperFunctionWithoutNamedConstraint<Descriptor>;
|
|
411
422
|
type FieldHelpersFromNamespace<Namespace> = { readonly [K in keyof Namespace]: Namespace[K] extends AuthoringFieldPresetDescriptor ? FieldHelperFunction<Namespace[K]> : Namespace[K] extends Record<string, unknown> ? FieldHelpersFromNamespace<Namespace[K]> : never };
|
|
412
423
|
//#endregion
|
|
413
|
-
//#region src/composed-authoring-helpers.d.ts
|
|
414
|
-
type ExtractTypeNamespaceFromPack<Pack> = Pack extends {
|
|
415
|
-
readonly authoring?: {
|
|
416
|
-
readonly type?: infer Namespace extends AuthoringTypeNamespace;
|
|
417
|
-
};
|
|
418
|
-
} ? Namespace : Record<never, never>;
|
|
419
|
-
type ExtractFieldNamespaceFromPack<Pack> = Pack extends {
|
|
420
|
-
readonly authoring?: {
|
|
421
|
-
readonly field?: infer Namespace extends AuthoringFieldNamespace;
|
|
422
|
-
};
|
|
423
|
-
} ? Namespace : Record<never, never>;
|
|
424
|
-
type MergeExtensionTypeNamespaces<ExtensionPacks> = ExtensionPacks extends Record<string, unknown> ? keyof ExtensionPacks extends never ? Record<never, never> : UnionToIntersection<{ [K in keyof ExtensionPacks]: ExtractTypeNamespaceFromPack<ExtensionPacks[K]> }[keyof ExtensionPacks]> : Record<never, never>;
|
|
425
|
-
type MergeExtensionFieldNamespaces<ExtensionPacks> = ExtensionPacks extends Record<string, unknown> ? keyof ExtensionPacks extends never ? Record<never, never> : UnionToIntersection<{ [K in keyof ExtensionPacks]: ExtractFieldNamespaceFromPack<ExtensionPacks[K]> }[keyof ExtensionPacks]> : Record<never, never>;
|
|
426
|
-
type StorageTypeFromDescriptor<Descriptor extends AuthoringTypeConstructorDescriptor, Args extends readonly unknown[]> = {
|
|
427
|
-
readonly codecId: ResolveTemplateValue<Descriptor['output']['codecId'], Args>;
|
|
428
|
-
readonly nativeType: ResolveTemplateValue<Descriptor['output']['nativeType'], Args>;
|
|
429
|
-
} & (Descriptor['output'] extends {
|
|
430
|
-
readonly typeParams: infer TypeParams extends Record<string, unknown>;
|
|
431
|
-
} ? {
|
|
432
|
-
readonly typeParams: ResolveTemplateValue<TypeParams, Args>;
|
|
433
|
-
} : Record<never, never>);
|
|
434
|
-
type TypeHelperFunction<Descriptor extends AuthoringTypeConstructorDescriptor> = Descriptor extends {
|
|
435
|
-
readonly args: infer Args extends readonly AuthoringArgumentDescriptor[];
|
|
436
|
-
} ? <const Params extends TupleFromArgumentDescriptors<Args>>(...args: Params) => StorageTypeFromDescriptor<Descriptor, Params> : () => StorageTypeFromDescriptor<Descriptor, readonly []>;
|
|
437
|
-
type TypeHelpersFromNamespace<Namespace> = { readonly [K in keyof Namespace]: Namespace[K] extends AuthoringTypeConstructorDescriptor ? TypeHelperFunction<Namespace[K]> : Namespace[K] extends Record<string, unknown> ? TypeHelpersFromNamespace<Namespace[K]> : never };
|
|
438
|
-
type CoreFieldHelpers = Pick<typeof field, 'column' | 'generated' | 'namedType'>;
|
|
439
|
-
type ComposedAuthoringHelpers<Family extends FamilyPackRef<string>, Target extends TargetPackRef<'sql', string>, ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined> = {
|
|
440
|
-
readonly field: CoreFieldHelpers & FieldHelpersFromNamespace<ExtractFieldNamespaceFromPack<Family> & ExtractFieldNamespaceFromPack<Target> & MergeExtensionFieldNamespaces<ExtensionPacks>>;
|
|
441
|
-
readonly model: typeof model;
|
|
442
|
-
readonly rel: typeof rel;
|
|
443
|
-
readonly type: TypeHelpersFromNamespace<ExtractTypeNamespaceFromPack<Family> & ExtractTypeNamespaceFromPack<Target> & MergeExtensionTypeNamespaces<ExtensionPacks>>;
|
|
444
|
-
};
|
|
445
|
-
//#endregion
|
|
446
424
|
//#region src/contract-types.d.ts
|
|
447
425
|
type ExtractCodecTypesFromPack<P> = P extends {
|
|
448
426
|
__codecTypes?: infer C;
|
|
@@ -451,6 +429,13 @@ type ExtractCodecTypesFromPack<P> = P extends {
|
|
|
451
429
|
}> ? C : Record<string, never> : Record<string, never>;
|
|
452
430
|
type MergeExtensionCodecTypes<Packs extends Record<string, unknown>> = UnionToIntersection<{ [K in keyof Packs]: ExtractCodecTypesFromPack<Packs[K]> }[keyof Packs]>;
|
|
453
431
|
type MergeExtensionCodecTypesSafe<Packs> = Packs extends Record<string, unknown> ? keyof Packs extends never ? Record<string, never> : MergeExtensionCodecTypes<Packs> : Record<string, never>;
|
|
432
|
+
type ExtractIndexTypesFromPack<P> = P extends {
|
|
433
|
+
readonly indexTypes: IndexTypeRegistration<infer M>;
|
|
434
|
+
} ? M : Record<never, never>;
|
|
435
|
+
type AllIndexTypeLiterals<Packs> = Packs extends Record<string, unknown> ? { [K in keyof Packs]: keyof ExtractIndexTypesFromPack<Packs[K]> }[keyof Packs] & string : never;
|
|
436
|
+
type MergeExtensionIndexTypes<Packs extends Record<string, unknown>> = { readonly [Lit in AllIndexTypeLiterals<Packs>]: Extract<{ [K in keyof Packs]: Lit extends keyof ExtractIndexTypesFromPack<Packs[K]> ? ExtractIndexTypesFromPack<Packs[K]>[Lit] : never }[keyof Packs], {
|
|
437
|
+
readonly options: unknown;
|
|
438
|
+
}> };
|
|
454
439
|
type DefinitionExtensionPacks<Definition> = Definition extends {
|
|
455
440
|
readonly extensionPacks?: infer Packs extends Record<string, ExtensionPackRef<'sql', string>>;
|
|
456
441
|
} ? Packs : Record<never, never>;
|
|
@@ -635,6 +620,53 @@ type SqlContractResult<Definition> = ContractWithTypeMaps<Contract<BuiltStorage<
|
|
|
635
620
|
readonly capabilities: DefinitionCapabilities<Definition> extends Record<string, Record<string, boolean>> ? DefinitionCapabilities<Definition> : Record<string, Record<string, boolean>>;
|
|
636
621
|
}, TypeMaps<CodecTypesFromDefinition<Definition>, Record<string, never>, Record<string, never>, FieldOutputTypes<Definition>>>;
|
|
637
622
|
//#endregion
|
|
623
|
+
//#region src/composed-authoring-helpers.d.ts
|
|
624
|
+
type ExtractTypeNamespaceFromPack<Pack> = Pack extends {
|
|
625
|
+
readonly authoring?: {
|
|
626
|
+
readonly type?: infer Namespace extends AuthoringTypeNamespace;
|
|
627
|
+
};
|
|
628
|
+
} ? Namespace : Record<never, never>;
|
|
629
|
+
type ExtractFieldNamespaceFromPack<Pack> = Pack extends {
|
|
630
|
+
readonly authoring?: {
|
|
631
|
+
readonly field?: infer Namespace extends AuthoringFieldNamespace;
|
|
632
|
+
};
|
|
633
|
+
} ? Namespace : Record<never, never>;
|
|
634
|
+
type MergeExtensionTypeNamespaces<ExtensionPacks> = ExtensionPacks extends Record<string, unknown> ? keyof ExtensionPacks extends never ? Record<never, never> : UnionToIntersection<{ [K in keyof ExtensionPacks]: ExtractTypeNamespaceFromPack<ExtensionPacks[K]> }[keyof ExtensionPacks]> : Record<never, never>;
|
|
635
|
+
type MergeExtensionFieldNamespaces<ExtensionPacks> = ExtensionPacks extends Record<string, unknown> ? keyof ExtensionPacks extends never ? Record<never, never> : UnionToIntersection<{ [K in keyof ExtensionPacks]: ExtractFieldNamespaceFromPack<ExtensionPacks[K]> }[keyof ExtensionPacks]> : Record<never, never>;
|
|
636
|
+
type StorageTypeFromDescriptor<Descriptor extends AuthoringTypeConstructorDescriptor, Args extends readonly unknown[]> = {
|
|
637
|
+
readonly codecId: ResolveTemplateValue<Descriptor['output']['codecId'], Args>;
|
|
638
|
+
readonly nativeType: ResolveTemplateValue<Descriptor['output']['nativeType'], Args>;
|
|
639
|
+
} & (Descriptor['output'] extends {
|
|
640
|
+
readonly typeParams: infer TypeParams extends Record<string, unknown>;
|
|
641
|
+
} ? {
|
|
642
|
+
readonly typeParams: ResolveTemplateValue<TypeParams, Args>;
|
|
643
|
+
} : Record<never, never>);
|
|
644
|
+
type TypeHelperFunction<Descriptor extends AuthoringTypeConstructorDescriptor> = Descriptor extends {
|
|
645
|
+
readonly args: infer Args extends readonly AuthoringArgumentDescriptor[];
|
|
646
|
+
} ? <const Params extends TupleFromArgumentDescriptors<Args>>(...args: Params) => StorageTypeFromDescriptor<Descriptor, Params> : () => StorageTypeFromDescriptor<Descriptor, readonly []>;
|
|
647
|
+
type TypeHelpersFromNamespace<Namespace> = { readonly [K in keyof Namespace]: Namespace[K] extends AuthoringTypeConstructorDescriptor ? TypeHelperFunction<Namespace[K]> : Namespace[K] extends Record<string, unknown> ? TypeHelpersFromNamespace<Namespace[K]> : never };
|
|
648
|
+
type CoreFieldHelpers = Pick<typeof field, 'column' | 'generated' | 'namedType'>;
|
|
649
|
+
type MergeAllPackIndexTypes<Family, Target, ExtensionPacks> = MergeExtensionIndexTypes<{
|
|
650
|
+
readonly __family: Family;
|
|
651
|
+
readonly __target: Target;
|
|
652
|
+
} & (ExtensionPacks extends Record<string, unknown> ? ExtensionPacks : Record<never, never>)>;
|
|
653
|
+
type PackAwareModel<IndexTypes extends IndexTypeMap> = {
|
|
654
|
+
<const ModelName extends string, Fields extends Record<string, ScalarFieldBuilder>, Relations extends Record<string, AnyRelationBuilder> = Record<never, never>>(modelName: ModelName, input: {
|
|
655
|
+
readonly fields: Fields;
|
|
656
|
+
readonly relations?: Relations;
|
|
657
|
+
}): ContractModelBuilder<ModelName, Fields, Relations, undefined, undefined, IndexTypes>;
|
|
658
|
+
<Fields extends Record<string, ScalarFieldBuilder>, Relations extends Record<string, AnyRelationBuilder> = Record<never, never>>(input: {
|
|
659
|
+
readonly fields: Fields;
|
|
660
|
+
readonly relations?: Relations;
|
|
661
|
+
}): ContractModelBuilder<undefined, Fields, Relations, undefined, undefined, IndexTypes>;
|
|
662
|
+
};
|
|
663
|
+
type ComposedAuthoringHelpers<Family extends FamilyPackRef<string>, Target extends TargetPackRef<'sql', string>, ExtensionPacks extends Record<string, ExtensionPackRef<'sql', string>> | undefined> = {
|
|
664
|
+
readonly field: CoreFieldHelpers & FieldHelpersFromNamespace<ExtractFieldNamespaceFromPack<Family> & ExtractFieldNamespaceFromPack<Target> & MergeExtensionFieldNamespaces<ExtensionPacks>>;
|
|
665
|
+
readonly model: PackAwareModel<MergeAllPackIndexTypes<Family, Target, ExtensionPacks>>;
|
|
666
|
+
readonly rel: typeof rel;
|
|
667
|
+
readonly type: TypeHelpersFromNamespace<ExtractTypeNamespaceFromPack<Family> & ExtractTypeNamespaceFromPack<Target> & MergeExtensionTypeNamespaces<ExtensionPacks>>;
|
|
668
|
+
};
|
|
669
|
+
//#endregion
|
|
638
670
|
//#region src/contract-definition.d.ts
|
|
639
671
|
interface FieldNode {
|
|
640
672
|
readonly fieldName: string;
|
|
@@ -656,8 +688,8 @@ interface UniqueConstraintNode {
|
|
|
656
688
|
interface IndexNode {
|
|
657
689
|
readonly columns: readonly string[];
|
|
658
690
|
readonly name?: string;
|
|
659
|
-
readonly
|
|
660
|
-
readonly
|
|
691
|
+
readonly type?: string;
|
|
692
|
+
readonly options?: Record<string, unknown>;
|
|
661
693
|
}
|
|
662
694
|
interface ForeignKeyNode {
|
|
663
695
|
readonly columns: readonly string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract-builder.d.mts","names":[],"sources":["../src/contract-dsl.ts","../src/authoring-type-utils.ts","../src/composed-authoring-helpers.ts","../src/contract-types.ts","../src/contract-definition.ts","../src/build-contract.ts","../src/contract-builder.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contract-builder.d.mts","names":[],"sources":["../src/contract-dsl.ts","../src/authoring-type-utils.ts","../src/contract-types.ts","../src/composed-authoring-helpers.ts","../src/contract-definition.ts","../src/build-contract.ts","../src/contract-builder.ts"],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { computeExecutionHash, computeProfileHash, computeStorageHash } from "@prisma-next/contract/hashing";
|
|
2
2
|
import { coreHash, isColumnDefault } from "@prisma-next/contract/types";
|
|
3
|
+
import { validateIndexTypes } from "@prisma-next/sql-contract/index-type-validation";
|
|
4
|
+
import { createIndexTypeRegistry } from "@prisma-next/sql-contract/index-types";
|
|
3
5
|
import { applyFkDefaults } from "@prisma-next/sql-contract/types";
|
|
4
6
|
import { validateStorageSemantics } from "@prisma-next/sql-contract/validators";
|
|
5
7
|
import { ifDefined } from "@prisma-next/utils/defined";
|
|
@@ -20,9 +22,18 @@ function encodeColumnDefault(defaultInput, codecId, codecLookup) {
|
|
|
20
22
|
value: encodeDefaultLiteralValue(defaultInput.value, codecId, codecLookup)
|
|
21
23
|
};
|
|
22
24
|
}
|
|
23
|
-
function assertStorageSemantics(
|
|
24
|
-
const semanticErrors = validateStorageSemantics(storage);
|
|
25
|
+
function assertStorageSemantics(definition, contract) {
|
|
26
|
+
const semanticErrors = validateStorageSemantics(contract.storage);
|
|
25
27
|
if (semanticErrors.length > 0) throw new Error(`Contract semantic validation failed: ${semanticErrors.join("; ")}`);
|
|
28
|
+
const indexTypeRegistry = createIndexTypeRegistry();
|
|
29
|
+
const packsToRegister = [definition.target, ...Object.values(definition.extensionPacks ?? {})];
|
|
30
|
+
for (const pack of packsToRegister) {
|
|
31
|
+
const registration = pack.indexTypes;
|
|
32
|
+
if (registration === void 0) continue;
|
|
33
|
+
if (typeof registration !== "object" || registration === null || !Array.isArray(registration.entries)) throw new Error(`Pack "${pack.id ?? "<unknown>"}" declares "indexTypes" but its value is not an IndexTypeRegistration (expected an object with an "entries" array; got ${typeof registration}).`);
|
|
34
|
+
for (const entry of registration.entries) indexTypeRegistry.register(entry);
|
|
35
|
+
}
|
|
36
|
+
validateIndexTypes(contract, indexTypeRegistry);
|
|
26
37
|
}
|
|
27
38
|
function assertKnownTargetModel(modelsByName, sourceModelName, targetModelName, context) {
|
|
28
39
|
const targetModel = modelsByName.get(targetModelName);
|
|
@@ -152,8 +163,8 @@ function buildSqlContractFromDefinition(definition, codecLookup) {
|
|
|
152
163
|
indexes: (semanticModel.indexes ?? []).map((i) => ({
|
|
153
164
|
columns: i.columns,
|
|
154
165
|
...ifDefined("name", i.name),
|
|
155
|
-
...ifDefined("
|
|
156
|
-
...ifDefined("
|
|
166
|
+
...ifDefined("type", i.type),
|
|
167
|
+
...ifDefined("options", i.options)
|
|
157
168
|
})),
|
|
158
169
|
foreignKeys,
|
|
159
170
|
...semanticModel.id ? { primaryKey: {
|
|
@@ -258,7 +269,7 @@ function buildSqlContractFromDefinition(definition, codecLookup) {
|
|
|
258
269
|
profileHash,
|
|
259
270
|
meta: {}
|
|
260
271
|
};
|
|
261
|
-
assertStorageSemantics(contract
|
|
272
|
+
assertStorageSemantics(definition, contract);
|
|
262
273
|
return contract;
|
|
263
274
|
}
|
|
264
275
|
//#endregion
|
|
@@ -489,13 +500,13 @@ function createConstraintsDsl() {
|
|
|
489
500
|
...options?.name ? { name: options.name } : {}
|
|
490
501
|
};
|
|
491
502
|
}
|
|
492
|
-
function index(
|
|
503
|
+
function index(fields, options) {
|
|
493
504
|
return {
|
|
494
505
|
kind: "index",
|
|
495
|
-
fields: normalizeFieldRefInput(
|
|
496
|
-
...options?.name ? { name: options.name } : {},
|
|
497
|
-
...options?.
|
|
498
|
-
...options?.
|
|
506
|
+
fields: normalizeFieldRefInput(fields),
|
|
507
|
+
...options?.name !== void 0 ? { name: options.name } : {},
|
|
508
|
+
...options?.type !== void 0 ? { type: options.type } : {},
|
|
509
|
+
...options?.options !== void 0 ? { options: options.options } : {}
|
|
499
510
|
};
|
|
500
511
|
}
|
|
501
512
|
function foreignKey(fieldOrFields, target, options) {
|
|
@@ -1137,9 +1148,9 @@ function resolveModelNode(spec, allSpecs, storageTypes, storageTypeReverseLookup
|
|
|
1137
1148
|
}));
|
|
1138
1149
|
const indexes = (spec.sqlSpec?.indexes ?? []).map((index) => ({
|
|
1139
1150
|
columns: mapFieldNamesToColumnNames(spec.modelName, index.fields, spec.fieldToColumn),
|
|
1140
|
-
...
|
|
1141
|
-
...
|
|
1142
|
-
...
|
|
1151
|
+
...ifDefined("name", index.name),
|
|
1152
|
+
...ifDefined("type", index.type),
|
|
1153
|
+
...ifDefined("options", index.options)
|
|
1143
1154
|
}));
|
|
1144
1155
|
const foreignKeys = resolveForeignKeyNodes(spec, allSpecs);
|
|
1145
1156
|
const relations = Object.entries(spec.relations).map(([relationName, relationBuilder]) => resolveRelationNode(relationName, relationBuilder.build(), spec, allSpecs));
|