neoorm 0.1.4 → 0.2.0
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 +423 -27
- package/dist/bin/neoorm.js +117 -30
- package/dist/bin/neoorm.js.map +1 -1
- package/dist/codegen/diff-manifest.d.ts +7 -1
- package/dist/codegen/diff-manifest.d.ts.map +1 -1
- package/dist/codegen/diff-manifest.js +100 -4
- package/dist/codegen/diff-manifest.js.map +1 -1
- package/dist/codegen/emit-includes.d.ts.map +1 -1
- package/dist/codegen/emit-includes.js +7 -1
- package/dist/codegen/emit-includes.js.map +1 -1
- package/dist/codegen/emit-models.d.ts.map +1 -1
- package/dist/codegen/emit-models.js +28 -6
- package/dist/codegen/emit-models.js.map +1 -1
- package/dist/codegen/generate-summary.d.ts +21 -0
- package/dist/codegen/generate-summary.d.ts.map +1 -0
- package/dist/codegen/generate-summary.js +101 -0
- package/dist/codegen/generate-summary.js.map +1 -0
- package/dist/codegen/generate.d.ts +12 -3
- package/dist/codegen/generate.d.ts.map +1 -1
- package/dist/codegen/generate.js +36 -13
- package/dist/codegen/generate.js.map +1 -1
- package/dist/codegen/manifest-relations.d.ts.map +1 -1
- package/dist/codegen/manifest-relations.js +9 -2
- package/dist/codegen/manifest-relations.js.map +1 -1
- package/dist/codegen/schema-to-manifest.d.ts +4 -1
- package/dist/codegen/schema-to-manifest.d.ts.map +1 -1
- package/dist/codegen/schema-to-manifest.js +69 -12
- package/dist/codegen/schema-to-manifest.js.map +1 -1
- package/dist/config.d.ts +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js.map +1 -1
- package/dist/dialect/postgres.d.ts +3 -0
- package/dist/dialect/postgres.d.ts.map +1 -1
- package/dist/dialect/postgres.js +51 -1
- package/dist/dialect/postgres.js.map +1 -1
- package/dist/dialect/types.d.ts +13 -1
- package/dist/dialect/types.d.ts.map +1 -1
- package/dist/index.d.ts +11 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -3
- package/dist/index.js.map +1 -1
- package/dist/init/scaffold.d.ts +19 -0
- package/dist/init/scaffold.d.ts.map +1 -0
- package/dist/init/scaffold.js +92 -0
- package/dist/init/scaffold.js.map +1 -0
- package/dist/init/templates.d.ts +4 -0
- package/dist/init/templates.d.ts.map +1 -0
- package/dist/init/templates.js +44 -0
- package/dist/init/templates.js.map +1 -0
- package/dist/introspect/queries.d.ts +5 -0
- package/dist/introspect/queries.d.ts.map +1 -1
- package/dist/introspect/queries.js +17 -0
- package/dist/introspect/queries.js.map +1 -1
- package/dist/introspect/to-manifest.d.ts.map +1 -1
- package/dist/introspect/to-manifest.js +58 -14
- package/dist/introspect/to-manifest.js.map +1 -1
- package/dist/migrate/runner.d.ts +26 -0
- package/dist/migrate/runner.d.ts.map +1 -1
- package/dist/migrate/runner.js +166 -7
- package/dist/migrate/runner.js.map +1 -1
- package/dist/plugins/builtin.d.ts +35 -2
- package/dist/plugins/builtin.d.ts.map +1 -1
- package/dist/plugins/builtin.js +318 -1
- package/dist/plugins/builtin.js.map +1 -1
- package/dist/plugins/json/operators.d.ts +3 -0
- package/dist/plugins/json/operators.d.ts.map +1 -0
- package/dist/plugins/json/operators.js +65 -0
- package/dist/plugins/json/operators.js.map +1 -0
- package/dist/plugins/registry.d.ts.map +1 -1
- package/dist/plugins/registry.js +3 -1
- package/dist/plugins/registry.js.map +1 -1
- package/dist/plugins/types.d.ts +1 -0
- package/dist/plugins/types.d.ts.map +1 -1
- package/dist/runtime/client.d.ts +33 -3
- package/dist/runtime/client.d.ts.map +1 -1
- package/dist/runtime/client.js +54 -36
- package/dist/runtime/client.js.map +1 -1
- package/dist/runtime/errors.d.ts +20 -0
- package/dist/runtime/errors.d.ts.map +1 -0
- package/dist/runtime/errors.js +68 -0
- package/dist/runtime/errors.js.map +1 -0
- package/dist/runtime/executor.d.ts +1 -0
- package/dist/runtime/executor.d.ts.map +1 -1
- package/dist/runtime/executor.js +27 -4
- package/dist/runtime/executor.js.map +1 -1
- package/dist/runtime/pg-error.d.ts +19 -0
- package/dist/runtime/pg-error.d.ts.map +1 -0
- package/dist/runtime/pg-error.js +110 -0
- package/dist/runtime/pg-error.js.map +1 -0
- package/dist/runtime/query/aggregate.d.ts +11 -0
- package/dist/runtime/query/aggregate.d.ts.map +1 -0
- package/dist/runtime/query/aggregate.js +44 -0
- package/dist/runtime/query/aggregate.js.map +1 -0
- package/dist/runtime/query/compile.d.ts +21 -6
- package/dist/runtime/query/compile.d.ts.map +1 -1
- package/dist/runtime/query/compile.js +110 -19
- package/dist/runtime/query/compile.js.map +1 -1
- package/dist/runtime/query/count.d.ts +3 -3
- package/dist/runtime/query/count.d.ts.map +1 -1
- package/dist/runtime/query/count.js +7 -4
- package/dist/runtime/query/count.js.map +1 -1
- package/dist/runtime/query/create.d.ts +12 -2
- package/dist/runtime/query/create.d.ts.map +1 -1
- package/dist/runtime/query/create.js +74 -111
- package/dist/runtime/query/create.js.map +1 -1
- package/dist/runtime/query/cursor-codec.d.ts +3 -0
- package/dist/runtime/query/cursor-codec.d.ts.map +1 -0
- package/dist/runtime/query/cursor-codec.js +27 -0
- package/dist/runtime/query/cursor-codec.js.map +1 -0
- package/dist/runtime/query/cursor.d.ts +22 -0
- package/dist/runtime/query/cursor.d.ts.map +1 -0
- package/dist/runtime/query/cursor.js +84 -0
- package/dist/runtime/query/cursor.js.map +1 -0
- package/dist/runtime/query/delete.d.ts +4 -4
- package/dist/runtime/query/delete.d.ts.map +1 -1
- package/dist/runtime/query/delete.js +18 -8
- package/dist/runtime/query/delete.js.map +1 -1
- package/dist/runtime/query/execute.d.ts +16 -0
- package/dist/runtime/query/execute.d.ts.map +1 -0
- package/dist/runtime/query/execute.js +74 -0
- package/dist/runtime/query/execute.js.map +1 -0
- package/dist/runtime/query/find.d.ts +7 -5
- package/dist/runtime/query/find.d.ts.map +1 -1
- package/dist/runtime/query/find.js +148 -29
- package/dist/runtime/query/find.js.map +1 -1
- package/dist/runtime/query/paginate.d.ts +17 -0
- package/dist/runtime/query/paginate.d.ts.map +1 -0
- package/dist/runtime/query/paginate.js +35 -0
- package/dist/runtime/query/paginate.js.map +1 -0
- package/dist/runtime/query/primary-key.d.ts +11 -1
- package/dist/runtime/query/primary-key.d.ts.map +1 -1
- package/dist/runtime/query/primary-key.js +55 -0
- package/dist/runtime/query/primary-key.js.map +1 -1
- package/dist/runtime/query/relation-writes.d.ts +25 -0
- package/dist/runtime/query/relation-writes.d.ts.map +1 -0
- package/dist/runtime/query/relation-writes.js +404 -0
- package/dist/runtime/query/relation-writes.js.map +1 -0
- package/dist/runtime/query/unique.d.ts.map +1 -1
- package/dist/runtime/query/unique.js +1 -5
- package/dist/runtime/query/unique.js.map +1 -1
- package/dist/runtime/query/update.d.ts +4 -4
- package/dist/runtime/query/update.d.ts.map +1 -1
- package/dist/runtime/query/update.js +97 -38
- package/dist/runtime/query/update.js.map +1 -1
- package/dist/runtime/query/updated-at.d.ts +6 -0
- package/dist/runtime/query/updated-at.d.ts.map +1 -0
- package/dist/runtime/query/updated-at.js +21 -0
- package/dist/runtime/query/updated-at.js.map +1 -0
- package/dist/runtime/query/upsert.d.ts +2 -2
- package/dist/runtime/query/upsert.d.ts.map +1 -1
- package/dist/runtime/query/upsert.js +12 -8
- package/dist/runtime/query/upsert.js.map +1 -1
- package/dist/runtime/types.d.ts +21 -11
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/schema/column-where.d.ts +30 -14
- package/dist/schema/column-where.d.ts.map +1 -1
- package/dist/schema/column.d.ts +6 -2
- package/dist/schema/column.d.ts.map +1 -1
- package/dist/schema/column.js +7 -1
- package/dist/schema/column.js.map +1 -1
- package/dist/schema/index.d.ts +4 -4
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +1 -1
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/nested-relation-types.d.ts +61 -0
- package/dist/schema/nested-relation-types.d.ts.map +1 -0
- package/dist/schema/nested-relation-types.js +2 -0
- package/dist/schema/nested-relation-types.js.map +1 -0
- package/dist/schema/relation-types.d.ts +164 -22
- package/dist/schema/relation-types.d.ts.map +1 -1
- package/dist/schema/types.d.ts +83 -37
- package/dist/schema/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { FkBuilder, FkMeta } from "./relation.js";
|
|
2
|
+
import type { ColumnBuilder } from "./column.js";
|
|
3
|
+
import type { ColumnDef, TableDef } from "./table.js";
|
|
4
|
+
import type { ConnectInput, InferInsertRow, SqlNameToAccessor } from "./relation-types.js";
|
|
5
|
+
type Expand<T> = T extends infer O ? {
|
|
6
|
+
[K in keyof O]: O[K];
|
|
7
|
+
} : never;
|
|
8
|
+
type FkMetaOf<C> = C extends FkBuilder<infer TTarget, infer TAs, infer TInverse> ? FkMeta<TTarget, TAs, TInverse> : never;
|
|
9
|
+
type FkColumnNames<TColumns extends Record<string, ColumnDef>> = {
|
|
10
|
+
[K in keyof TColumns]: TColumns[K] extends FkBuilder ? K : never;
|
|
11
|
+
}[keyof TColumns & string];
|
|
12
|
+
type HasExactlyTwoFks<TColumns extends Record<string, ColumnDef>> = FkColumnNames<TColumns> extends infer First extends keyof TColumns & string ? Exclude<FkColumnNames<TColumns>, First> extends infer Second extends keyof TColumns & string ? Exclude<FkColumnNames<TColumns>, First | Second> extends never ? true : false : false : false;
|
|
13
|
+
type HasPrimaryIdColumn<TColumns extends Record<string, ColumnDef>> = {
|
|
14
|
+
[K in keyof TColumns]: TColumns[K] extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
15
|
+
primary: true;
|
|
16
|
+
} ? K : M extends {
|
|
17
|
+
kind: "id";
|
|
18
|
+
} ? K : never : never;
|
|
19
|
+
}[keyof TColumns & string];
|
|
20
|
+
type IsThroughTable<TColumns extends Record<string, ColumnDef>> = [
|
|
21
|
+
HasPrimaryIdColumn<TColumns>
|
|
22
|
+
] extends [never] ? HasExactlyTwoFks<TColumns> : false;
|
|
23
|
+
type FkTargetMatchesAccessor<TSchema extends Record<string, TableDef>, TTarget extends string, TAccessor extends keyof TSchema & string> = [TTarget] extends [`${TSchema[TAccessor]["_tableName"]}.${string}`] ? true : false;
|
|
24
|
+
type DisconnectWriteForFk<C extends ColumnDef> = C extends FkBuilder ? C["_meta"] extends {
|
|
25
|
+
nullable: true;
|
|
26
|
+
} ? {
|
|
27
|
+
disconnect?: true;
|
|
28
|
+
} : Record<never, never> : Record<never, never>;
|
|
29
|
+
type ShallowToOneRelationWriteForAccessor<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TFkColumn extends ColumnDef> = TAccessor extends keyof TSchema & string ? {
|
|
30
|
+
connect?: ConnectInput<TSchema[TAccessor]["_columns"]>;
|
|
31
|
+
create?: InferInsertRow<TSchema[TAccessor]["_columns"]>;
|
|
32
|
+
} & DisconnectWriteForFk<TFkColumn> : never;
|
|
33
|
+
type ShallowOutgoingFkRelationWriteMap<TSchema extends Record<string, TableDef>, TColumns extends Record<string, ColumnDef>> = {
|
|
34
|
+
[K in keyof TColumns & string as TColumns[K] extends FkBuilder ? TColumns[K]["_meta"] extends FkMeta ? TColumns[K]["_meta"] extends {
|
|
35
|
+
as: infer As extends string;
|
|
36
|
+
target: `${infer Sql}.${string}`;
|
|
37
|
+
} ? SqlNameToAccessor<TSchema, Sql> extends keyof TSchema & string ? As : never : never : never : never]?: TColumns[K] extends FkBuilder ? TColumns[K]["_meta"] extends FkMeta ? TColumns[K]["_meta"]["target"] extends `${infer Sql}.${string}` ? SqlNameToAccessor<TSchema, Sql> extends infer Acc extends keyof TSchema & string ? Acc extends keyof TSchema & string ? ShallowToOneRelationWriteForAccessor<TSchema, Acc, TColumns[K]> : never : never : never : never : never;
|
|
38
|
+
};
|
|
39
|
+
type ParentFkColumnOnChild<TSchema extends Record<string, TableDef>, TParentAccessor extends keyof TSchema & string, TChildAccessor extends keyof TSchema & string> = {
|
|
40
|
+
[K in FkColumnNames<TSchema[TChildAccessor]["_columns"]>]: FkMetaOf<TSchema[TChildAccessor]["_columns"][K]> extends {
|
|
41
|
+
target: infer TTarget extends string;
|
|
42
|
+
} ? FkTargetMatchesAccessor<TSchema, TTarget, TParentAccessor> extends true ? K : never : never;
|
|
43
|
+
}[FkColumnNames<TSchema[TChildAccessor]["_columns"]>];
|
|
44
|
+
export type NestedCreateInput<TSchema extends Record<string, TableDef>, TParentAccessor extends keyof TSchema & string, TChildAccessor extends keyof TSchema & string> = Omit<Expand<InferInsertRow<TSchema[TChildAccessor]["_columns"]> & ShallowOutgoingFkRelationWriteMap<TSchema, TSchema[TChildAccessor]["_columns"]>>, ParentFkColumnOnChild<TSchema, TParentAccessor, TChildAccessor>>;
|
|
45
|
+
type ToManyRelationWrite<TSchema extends Record<string, TableDef>, TParentAccessor extends keyof TSchema & string, TChildAccessor extends keyof TSchema & string> = {
|
|
46
|
+
create?: NestedCreateInput<TSchema, TParentAccessor, TChildAccessor> | NestedCreateInput<TSchema, TParentAccessor, TChildAccessor>[];
|
|
47
|
+
connect?: ConnectInput<TSchema[TChildAccessor]["_columns"]> | ConnectInput<TSchema[TChildAccessor]["_columns"]>[];
|
|
48
|
+
disconnect?: true | ConnectInput<TSchema[TChildAccessor]["_columns"]> | ConnectInput<TSchema[TChildAccessor]["_columns"]>[];
|
|
49
|
+
delete?: true | ConnectInput<TSchema[TChildAccessor]["_columns"]> | ConnectInput<TSchema[TChildAccessor]["_columns"]>[];
|
|
50
|
+
set?: ConnectInput<TSchema[TChildAccessor]["_columns"]>[];
|
|
51
|
+
};
|
|
52
|
+
type InverseRelationWriteEntriesForTable<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string> = IsThroughTable<TSchema[TSourceAccessor]["_columns"]> extends true ? never : {
|
|
53
|
+
[K in FkColumnNames<TSchema[TSourceAccessor]["_columns"]> as TSchema[TSourceAccessor]["_columns"][K] extends FkBuilder<infer TTarget extends string, infer _As, infer Inv extends string> ? FkTargetMatchesAccessor<TSchema, TTarget, TAccessor> extends true ? Inv : never : never]?: ToManyRelationWrite<TSchema, TAccessor, TSourceAccessor>;
|
|
54
|
+
};
|
|
55
|
+
/** Collapse a union of objects into an intersection (merges keys from each variant). */
|
|
56
|
+
type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
|
|
57
|
+
export type InverseRelationWriteMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = UnionToIntersection<{
|
|
58
|
+
[Source in keyof TSchema & string]: InverseRelationWriteEntriesForTable<TSchema, TAccessor, Source>;
|
|
59
|
+
}[keyof TSchema & string]>;
|
|
60
|
+
export {};
|
|
61
|
+
//# sourceMappingURL=nested-relation-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nested-relation-types.d.ts","sourceRoot":"","sources":["../../src/schema/nested-relation-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nested-relation-types.js","sourceRoot":"","sources":["../../src/schema/nested-relation-types.ts"],"names":[],"mappings":""}
|
|
@@ -1,11 +1,55 @@
|
|
|
1
1
|
import type { FkBuilder, FkMeta } from "./relation.js";
|
|
2
2
|
import type { ColumnBuilder } from "./column.js";
|
|
3
3
|
import type { ColumnDef, TableDef } from "./table.js";
|
|
4
|
-
import type { ColumnWhereInput } from "./column-where.js";
|
|
4
|
+
import type { ColumnWhereInput, InferColumnValue } from "./column-where.js";
|
|
5
|
+
type IsPrimary<T> = T extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
6
|
+
primary: true;
|
|
7
|
+
} ? true : false : false;
|
|
8
|
+
type IsGenerated<T> = T extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
9
|
+
kind: "serial";
|
|
10
|
+
} ? true : false : false;
|
|
11
|
+
type IsRequired<T> = T extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
12
|
+
nullable: false;
|
|
13
|
+
primary: true;
|
|
14
|
+
} ? false : M extends {
|
|
15
|
+
defaultNow: true;
|
|
16
|
+
} ? false : M extends {
|
|
17
|
+
defaultValue: unknown;
|
|
18
|
+
} ? false : M extends {
|
|
19
|
+
nullable: false;
|
|
20
|
+
} ? true : false : T extends FkBuilder ? T["_meta"] extends {
|
|
21
|
+
nullable: false;
|
|
22
|
+
} ? true : false : false;
|
|
23
|
+
export type InferSelectRow<TColumns extends Record<string, ColumnDef>> = {
|
|
24
|
+
[K in keyof TColumns]: InferColumnValue<TColumns[K]>;
|
|
25
|
+
};
|
|
26
|
+
export type InferInsertRow<TColumns extends Record<string, ColumnDef>> = {
|
|
27
|
+
[K in keyof TColumns as IsPrimary<TColumns[K]> extends true ? never : IsGenerated<TColumns[K]> extends true ? never : K]?: InferColumnValue<TColumns[K]>;
|
|
28
|
+
} & {
|
|
29
|
+
[K in keyof TColumns as IsRequired<TColumns[K]> extends true ? K : never]: InferColumnValue<TColumns[K]>;
|
|
30
|
+
};
|
|
31
|
+
type PrimaryIdValue<TColumns extends Record<string, ColumnDef>> = {
|
|
32
|
+
[K in keyof TColumns]: TColumns[K] extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
33
|
+
primary: true;
|
|
34
|
+
} ? InferColumnValue<TColumns[K]> : never : never;
|
|
35
|
+
}[keyof TColumns & string];
|
|
36
|
+
export type ConnectInput<TColumns extends Record<string, ColumnDef>> = {
|
|
37
|
+
id: [PrimaryIdValue<TColumns>] extends [never] ? string : PrimaryIdValue<TColumns>;
|
|
38
|
+
};
|
|
39
|
+
export type ConnectOrCreateItem<TColumns extends Record<string, ColumnDef>> = {
|
|
40
|
+
where: Partial<InferSelectRow<TColumns>>;
|
|
41
|
+
create: InferInsertRow<TColumns>;
|
|
42
|
+
};
|
|
5
43
|
export type OrderDirection = "asc" | "desc";
|
|
6
44
|
export type OrderByInput<TColumns extends Record<string, ColumnDef>> = {
|
|
7
45
|
[K in keyof TColumns]?: OrderDirection;
|
|
8
46
|
};
|
|
47
|
+
export type ScalarPkName<TColumns extends Record<string, ColumnDef>> = {
|
|
48
|
+
[K in keyof TColumns]: TColumns[K] extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
49
|
+
primary: true;
|
|
50
|
+
} ? K : never : never;
|
|
51
|
+
}[keyof TColumns & string];
|
|
52
|
+
export type CursorInput<TColumns extends Record<string, ColumnDef>, TOrderBy extends OrderByInput<TColumns>> = Pick<InferSelectRow<TColumns>, (keyof TOrderBy & keyof TColumns) | ScalarPkName<TColumns>>;
|
|
9
53
|
/** Expands mapped types so IDEs surface keys for autocomplete */
|
|
10
54
|
type Expand<T> = T extends infer O ? {
|
|
11
55
|
[K in keyof O]: O[K];
|
|
@@ -16,7 +60,13 @@ type MergeRelationUnion<U> = {
|
|
|
16
60
|
[P in K]?: infer V;
|
|
17
61
|
} ? V : never;
|
|
18
62
|
};
|
|
19
|
-
|
|
63
|
+
/** Merge inverse relation entries without widening literal child accessors. */
|
|
64
|
+
type MergeInverseRelationUnion<U> = {
|
|
65
|
+
[K in U extends unknown ? keyof U : never]?: Extract<U, {
|
|
66
|
+
[P in K]: unknown;
|
|
67
|
+
}>[K];
|
|
68
|
+
};
|
|
69
|
+
type FkMetaOf<C> = C extends FkBuilder<infer TTarget, infer TAs, infer TInverse> ? FkMeta<TTarget, TAs, TInverse> : never;
|
|
20
70
|
type FkColumnNames<TColumns extends Record<string, ColumnDef>> = {
|
|
21
71
|
[K in keyof TColumns]: TColumns[K] extends FkBuilder ? K : never;
|
|
22
72
|
}[keyof TColumns & string];
|
|
@@ -24,6 +74,8 @@ type HasExactlyTwoFks<TColumns extends Record<string, ColumnDef>> = FkColumnName
|
|
|
24
74
|
type HasPrimaryIdColumn<TColumns extends Record<string, ColumnDef>> = {
|
|
25
75
|
[K in keyof TColumns]: TColumns[K] extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
26
76
|
primary: true;
|
|
77
|
+
} ? K : M extends {
|
|
78
|
+
kind: "id";
|
|
27
79
|
} ? K : never : never;
|
|
28
80
|
}[keyof TColumns & string];
|
|
29
81
|
/** Junction / through tables: two FKs and no primary id column (e.g. post_tags). */
|
|
@@ -35,31 +87,44 @@ export type SqlNameToAccessor<TSchema extends Record<string, TableDef>, TSqlName
|
|
|
35
87
|
[K in keyof TSchema & string]: TSchema[K]["_tableName"] extends TSqlName ? K : never;
|
|
36
88
|
}[keyof TSchema & string];
|
|
37
89
|
/** FK relations defined on this table's columns (as name -> target accessor) */
|
|
38
|
-
type OutgoingFkRelationEntry<TSchema extends Record<string, TableDef>, C extends ColumnDef> = FkMetaOf<C> extends
|
|
90
|
+
type OutgoingFkRelationEntry<TSchema extends Record<string, TableDef>, C extends ColumnDef> = FkMetaOf<C> extends {
|
|
91
|
+
target: infer TTarget extends string;
|
|
92
|
+
as: infer As extends string;
|
|
93
|
+
} ? TTarget extends `${infer Sql}.${string}` ? SqlNameToAccessor<TSchema, Sql> extends infer Acc extends keyof TSchema & string ? IsThroughTable<TSchema[Acc]["_columns"]> extends true ? never : {
|
|
39
94
|
[P in As]: Acc;
|
|
40
|
-
} : never : never : never
|
|
95
|
+
} : never : never : never;
|
|
41
96
|
export type OutgoingFkRelations<TSchema extends Record<string, TableDef>, TColumns extends Record<string, ColumnDef>> = MergeRelationUnion<{
|
|
42
97
|
[K in keyof TColumns]: OutgoingFkRelationEntry<TSchema, TColumns[K]>;
|
|
43
98
|
}[keyof TColumns]>;
|
|
44
99
|
/** Inverse relations from other tables pointing at this table (inverse name -> source accessor) */
|
|
45
|
-
type InverseRelationEntryForSource<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef> = IsThroughTable<TSchema[TSourceAccessor]["_columns"]> extends true ? never : FkMetaOf<C> extends
|
|
100
|
+
export type InverseRelationEntryForSource<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef> = IsThroughTable<TSchema[TSourceAccessor]["_columns"]> extends true ? never : FkMetaOf<C> extends {
|
|
101
|
+
target: infer TTarget extends string;
|
|
102
|
+
inverse: infer Inv extends string;
|
|
103
|
+
} ? [TTarget] extends [`${TSchema[TTargetAccessor]["_tableName"]}.${string}`] ? {
|
|
46
104
|
[P in Inv]: TSourceAccessor;
|
|
47
|
-
} : never : never
|
|
48
|
-
export type
|
|
49
|
-
[K in
|
|
50
|
-
|
|
51
|
-
|
|
105
|
+
} : never : never;
|
|
106
|
+
export type InverseRelationEntriesForTable<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string> = {
|
|
107
|
+
[K in FkColumnNames<TSchema[TSourceAccessor]["_columns"]>]: InverseRelationEntryForSource<TSchema, TAccessor, TSourceAccessor, TSchema[TSourceAccessor]["_columns"][K]>;
|
|
108
|
+
}[FkColumnNames<TSchema[TSourceAccessor]["_columns"]>];
|
|
109
|
+
export type InverseRelations<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeInverseRelationUnion<{
|
|
110
|
+
[K in keyof TSchema & string]: MergeInverseRelationUnion<InverseRelationEntriesForTable<TSchema, TAccessor, K>>;
|
|
52
111
|
}[keyof TSchema & string]>;
|
|
53
|
-
type
|
|
112
|
+
type FkTargetMatchesAccessor<TSchema extends Record<string, TableDef>, TTarget extends string, TAccessor extends keyof TSchema & string> = [TTarget] extends [`${TSchema[TAccessor]["_tableName"]}.${string}`] ? true : false;
|
|
113
|
+
type OtherFkTarget<TSchema extends Record<string, TableDef>, TThroughAccessor extends keyof TSchema & string, TCurrentAccessor extends keyof TSchema & string, TFkCol extends FkColumnNames<TSchema[TThroughAccessor]["_columns"]>> = FkMetaOf<TSchema[TThroughAccessor]["_columns"][TFkCol]> extends {
|
|
114
|
+
target: infer TTarget extends string;
|
|
115
|
+
} ? FkTargetMatchesAccessor<TSchema, TTarget, TCurrentAccessor> extends true ? never : TTarget extends `${infer Sql}.${string}` ? SqlNameToAccessor<TSchema, Sql> : never : never;
|
|
54
116
|
/** M2M via junction tables: relation name = target table accessor */
|
|
55
117
|
type JunctionM2MEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TThroughAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
56
118
|
[C in FkColumnNames<TSchema[TThroughAccessor]["_columns"]>]: OtherFkTarget<TSchema, TThroughAccessor, TAccessor, C> extends infer Target extends keyof TSchema & string ? {
|
|
57
119
|
[P in Target]: Target;
|
|
58
120
|
} : never;
|
|
59
121
|
}[FkColumnNames<TSchema[TThroughAccessor]["_columns"]>]>;
|
|
60
|
-
type
|
|
61
|
-
[
|
|
62
|
-
|
|
122
|
+
type HasFkToEntries<TSchema extends Record<string, TableDef>, TThroughAccessor extends keyof TSchema & string, TAccessor extends keyof TSchema & string> = {
|
|
123
|
+
[K in FkColumnNames<TSchema[TThroughAccessor]["_columns"]>]: FkMetaOf<TSchema[TThroughAccessor]["_columns"][K]> extends {
|
|
124
|
+
target: infer TTarget extends string;
|
|
125
|
+
} ? FkTargetMatchesAccessor<TSchema, TTarget, TAccessor> extends true ? true : never : never;
|
|
126
|
+
}[FkColumnNames<TSchema[TThroughAccessor]["_columns"]>];
|
|
127
|
+
type HasFkTo<TSchema extends Record<string, TableDef>, TThroughAccessor extends keyof TSchema & string, TAccessor extends keyof TSchema & string> = HasFkToEntries<TSchema, TThroughAccessor, TAccessor> extends infer R ? [R] extends [never] ? false : true : false;
|
|
63
128
|
export type JunctionM2MRelations<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
64
129
|
[K in keyof TSchema & string]: K extends TAccessor ? never : IsThroughTable<TSchema[K]["_columns"]> extends true ? HasFkTo<TSchema, K, TAccessor> extends true ? JunctionM2MEntry<TSchema, TAccessor, K> : never : never;
|
|
65
130
|
}[keyof TSchema & string]>;
|
|
@@ -87,29 +152,71 @@ export type WithInclude<TSchema extends Record<string, TableDef>, TRelation exte
|
|
|
87
152
|
*/
|
|
88
153
|
export type WithInputMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = Expand<{
|
|
89
154
|
[R in keyof RelationAccessors<TSchema, TAccessor> & string]: WithInclude<TSchema, R, TAccessor> | undefined;
|
|
155
|
+
} & {
|
|
156
|
+
_count?: RelationCountInput<TSchema, TAccessor>;
|
|
157
|
+
}>;
|
|
158
|
+
export type RelationCountSpec<TSchema extends Record<string, TableDef>, TRelation extends keyof RelationAccessors<TSchema, TAccessor> & string, TAccessor extends keyof TSchema & string> = true | {
|
|
159
|
+
where?: WhereInput<TargetColumns<TSchema, RelationTarget<TSchema, TAccessor, TRelation> & keyof TSchema & string>, TSchema, RelationTarget<TSchema, TAccessor, TRelation> & keyof TSchema & string>;
|
|
160
|
+
};
|
|
161
|
+
export type RelationCountInput<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = Expand<{
|
|
162
|
+
[R in keyof RelationAccessors<TSchema, TAccessor> & string]?: RelationCountSpec<TSchema, R, TAccessor>;
|
|
90
163
|
}>;
|
|
164
|
+
type SelectKeys<S> = S extends readonly (infer K extends PropertyKey)[] ? K : S extends Record<string, unknown> ? {
|
|
165
|
+
[K in keyof S]: S[K] extends true ? K : never;
|
|
166
|
+
}[keyof S] : never;
|
|
167
|
+
export type ApplySelect<Row extends Record<string, unknown>, S> = Pick<Row, SelectKeys<S> & keyof Row>;
|
|
168
|
+
type RelationTargetModel<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string> = InferSelectRow<TSchema[TTargetAccessor]["_columns"]>;
|
|
169
|
+
type InferNestedWithResult<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string, TInclude, TModel extends Record<string, unknown>> = TInclude extends {
|
|
170
|
+
select?: infer S;
|
|
171
|
+
with?: infer NW;
|
|
172
|
+
} ? ApplySelect<TModel, S> & (NW extends Record<string, unknown> ? InferWithRelations<TSchema, TTargetAccessor, NW> : Record<string, never>) : TModel;
|
|
173
|
+
export type InferRelationIncludeResult<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TRelation extends keyof RelationAccessors<TSchema, TAccessor> & string, TInclude, TModel extends Record<string, unknown> = RelationTargetModel<TSchema, RelationTarget<TSchema, TAccessor, TRelation> & keyof TSchema & string>> = TRelation extends keyof RelationAccessors<TSchema, TAccessor> & string ? RelationAccessors<TSchema, TAccessor>[TRelation] extends infer TTarget extends keyof TSchema & string ? TInclude extends {
|
|
174
|
+
select?: unknown;
|
|
175
|
+
with?: unknown;
|
|
176
|
+
orderBy?: unknown;
|
|
177
|
+
limit?: unknown;
|
|
178
|
+
} ? InferNestedWithResult<TSchema, TTarget, TInclude, RelationTargetModel<TSchema, TTarget>> : TInclude extends true ? RelationTargetModel<TSchema, TTarget> : TInclude extends false | undefined ? never : RelationTargetModel<TSchema, TTarget> : never : never;
|
|
179
|
+
type IsManyRelation<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TRelation extends keyof RelationAccessors<TSchema, TAccessor> & string> = TRelation extends keyof InverseRelations<TSchema, TAccessor> ? true : TRelation extends keyof JunctionM2MRelations<TSchema, TAccessor> ? true : false;
|
|
180
|
+
type InferWithRelations<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, W> = {
|
|
181
|
+
[R in keyof W & keyof RelationAccessors<TSchema, TAccessor> & string]: W[R] extends boolean | WithRelationOptions<TSchema, RelationTarget<TSchema, TAccessor, R> & keyof TSchema & string> ? RelationAccessors<TSchema, TAccessor>[R] extends infer TTarget extends keyof TSchema & string ? InferRelationIncludeResult<TSchema, TAccessor, R, W[R], RelationTargetModel<TSchema, TTarget>> extends infer Row ? IsManyRelation<TSchema, TAccessor, R> extends true ? Row[] : Row | null : never : never : never;
|
|
182
|
+
};
|
|
183
|
+
type InferCountResult<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, W> = W extends {
|
|
184
|
+
_count: infer C;
|
|
185
|
+
} ? C extends Record<string, unknown> ? {
|
|
186
|
+
_count: {
|
|
187
|
+
[K in keyof C & string]: number;
|
|
188
|
+
};
|
|
189
|
+
} : Record<string, never> : Record<string, never>;
|
|
190
|
+
export type InferWithResult<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, W, TBase extends Record<string, unknown> = InferSelectRow<TSchema[TAccessor]["_columns"]>> = W extends undefined ? TBase : Expand<TBase & InferWithRelations<TSchema, TAccessor, W> & InferCountResult<TSchema, TAccessor, W>>;
|
|
91
191
|
export type ManyRelationFilter<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string> = {
|
|
92
192
|
some?: WhereInput<TSchema[TTargetAccessor]["_columns"], TSchema, TTargetAccessor>;
|
|
93
193
|
every?: WhereInput<TSchema[TTargetAccessor]["_columns"], TSchema, TTargetAccessor>;
|
|
94
194
|
none?: WhereInput<TSchema[TTargetAccessor]["_columns"], TSchema, TTargetAccessor>;
|
|
95
195
|
};
|
|
96
|
-
type OutgoingFkRelationWhereEntry<TSchema extends Record<string, TableDef>, C extends ColumnDef> = FkMetaOf<C> extends
|
|
196
|
+
type OutgoingFkRelationWhereEntry<TSchema extends Record<string, TableDef>, C extends ColumnDef> = FkMetaOf<C> extends {
|
|
197
|
+
target: infer TTarget extends string;
|
|
198
|
+
as: infer As extends string;
|
|
199
|
+
} ? TTarget extends `${infer Sql}.${string}` ? SqlNameToAccessor<TSchema, Sql> extends infer Acc extends keyof TSchema & string ? IsThroughTable<TSchema[Acc]["_columns"]> extends true ? never : {
|
|
97
200
|
[P in As]?: WhereInput<TSchema[Acc]["_columns"], TSchema, Acc>;
|
|
98
|
-
} : never : never : never : never;
|
|
99
|
-
type InverseRelationWhereEntry<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef> = IsThroughTable<TSchema[TSourceAccessor]["_columns"]> extends true ? never : FkMetaOf<C> extends infer M extends FkMeta ? M["target"] extends `${TSchema[TTargetAccessor]["_tableName"]}.${string}` ? M["inverse"] extends infer Inv extends string ? {
|
|
100
|
-
[P in Inv]?: ManyRelationFilter<TSchema, TSourceAccessor>;
|
|
101
201
|
} : never : never : never;
|
|
202
|
+
type InverseRelationWhereEntry<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef> = IsThroughTable<TSchema[TSourceAccessor]["_columns"]> extends true ? never : FkMetaOf<C> extends {
|
|
203
|
+
target: infer TTarget extends string;
|
|
204
|
+
inverse: infer Inv extends string;
|
|
205
|
+
} ? [TTarget] extends [`${TSchema[TTargetAccessor]["_tableName"]}.${string}`] ? {
|
|
206
|
+
[P in Inv]?: ManyRelationFilter<TSchema, TSourceAccessor>;
|
|
207
|
+
} : never : never;
|
|
102
208
|
type JunctionM2MWhereEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TThroughAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
103
209
|
[C in FkColumnNames<TSchema[TThroughAccessor]["_columns"]>]: OtherFkTarget<TSchema, TThroughAccessor, TAccessor, C> extends infer Target extends keyof TSchema & string ? {
|
|
104
210
|
[P in Target]?: ManyRelationFilter<TSchema, Target>;
|
|
105
211
|
} : never;
|
|
106
212
|
}[FkColumnNames<TSchema[TThroughAccessor]["_columns"]>]>;
|
|
213
|
+
type InverseRelationWhereEntriesForTable<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string> = {
|
|
214
|
+
[K in FkColumnNames<TSchema[TSourceAccessor]["_columns"]>]: InverseRelationWhereEntry<TSchema, TAccessor, TSourceAccessor, TSchema[TSourceAccessor]["_columns"][K]>;
|
|
215
|
+
}[FkColumnNames<TSchema[TSourceAccessor]["_columns"]>];
|
|
107
216
|
export type RelationWhereMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
108
217
|
[K in keyof TSchema[TAccessor]["_columns"]]: OutgoingFkRelationWhereEntry<TSchema, TSchema[TAccessor]["_columns"][K]>;
|
|
109
218
|
}[keyof TSchema[TAccessor]["_columns"]]> & MergeRelationUnion<{
|
|
110
|
-
[K in keyof TSchema & string]: MergeRelationUnion<
|
|
111
|
-
[C in keyof TSchema[K]["_columns"]]: InverseRelationWhereEntry<TSchema, TAccessor, K, TSchema[K]["_columns"][C]>;
|
|
112
|
-
}[keyof TSchema[K]["_columns"]]>;
|
|
219
|
+
[K in keyof TSchema & string]: MergeRelationUnion<InverseRelationWhereEntriesForTable<TSchema, TAccessor, K>>;
|
|
113
220
|
}[keyof TSchema & string]> & MergeRelationUnion<{
|
|
114
221
|
[K in keyof TSchema & string]: K extends TAccessor ? never : IsThroughTable<TSchema[K]["_columns"]> extends true ? HasFkTo<TSchema, K, TAccessor> extends true ? JunctionM2MWhereEntry<TSchema, TAccessor, K> : never : never;
|
|
115
222
|
}[keyof TSchema & string]>;
|
|
@@ -119,5 +226,40 @@ export type LogicalWhereInput<TColumns extends Record<string, ColumnDef>, TSchem
|
|
|
119
226
|
NOT?: WhereInput<TColumns, TSchema, TAccessor>;
|
|
120
227
|
};
|
|
121
228
|
export type WhereInput<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef> = Record<string, TableDef>, TAccessor extends keyof TSchema & string = keyof TSchema & string> = LogicalWhereInput<TColumns, TSchema, TAccessor> & ColumnWhereInput<TColumns> & RelationWhereMap<TSchema, TAccessor>;
|
|
122
|
-
|
|
229
|
+
type DisconnectWriteForFk<C extends ColumnDef> = C extends FkBuilder ? C["_meta"] extends {
|
|
230
|
+
nullable: true;
|
|
231
|
+
} ? {
|
|
232
|
+
disconnect?: true;
|
|
233
|
+
} : Record<never, never> : Record<never, never>;
|
|
234
|
+
type ToOneRelationWriteForAccessor<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TFkColumn extends ColumnDef> = TAccessor extends keyof TSchema & string ? {
|
|
235
|
+
connect?: ConnectInput<TSchema[TAccessor]["_columns"]>;
|
|
236
|
+
create?: InferInsertRow<TSchema[TAccessor]["_columns"]>;
|
|
237
|
+
} & DisconnectWriteForFk<TFkColumn> : never;
|
|
238
|
+
type OutgoingFkRelationWriteMap<TSchema extends Record<string, TableDef>, TColumns extends Record<string, ColumnDef>> = {
|
|
239
|
+
[K in keyof TColumns & string as TColumns[K] extends FkBuilder ? TColumns[K]["_meta"] extends FkMeta ? TColumns[K]["_meta"] extends {
|
|
240
|
+
as: infer As extends string;
|
|
241
|
+
target: `${infer Sql}.${string}`;
|
|
242
|
+
} ? SqlNameToAccessor<TSchema, Sql> extends keyof TSchema & string ? As : never : never : never : never]?: TColumns[K] extends FkBuilder ? TColumns[K]["_meta"] extends FkMeta ? TColumns[K]["_meta"]["target"] extends `${infer Sql}.${string}` ? SqlNameToAccessor<TSchema, Sql> extends infer Acc extends keyof TSchema & string ? Acc extends keyof TSchema & string ? ToOneRelationWriteForAccessor<TSchema, Acc, TColumns[K]> : never : never : never : never : never;
|
|
243
|
+
};
|
|
244
|
+
type M2MRelationWriteForAccessor<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string> = TTargetAccessor extends keyof TSchema & string ? {
|
|
245
|
+
connect?: ConnectInput<TSchema[TTargetAccessor]["_columns"]>[];
|
|
246
|
+
disconnect?: true | ConnectInput<TSchema[TTargetAccessor]["_columns"]>[];
|
|
247
|
+
delete?: true | ConnectInput<TSchema[TTargetAccessor]["_columns"]>[];
|
|
248
|
+
set?: ConnectInput<TSchema[TTargetAccessor]["_columns"]>[];
|
|
249
|
+
connectOrCreate?: ConnectOrCreateItem<TSchema[TTargetAccessor]["_columns"]>[];
|
|
250
|
+
} : never;
|
|
251
|
+
type JunctionM2MWriteEntryForFk<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TThroughAccessor extends keyof TSchema & string, TFkCol extends FkColumnNames<TSchema[TThroughAccessor]["_columns"]>> = OtherFkTarget<TSchema, TThroughAccessor, TAccessor, TFkCol> extends infer Target extends keyof TSchema & string ? {
|
|
252
|
+
[P in Target]?: M2MRelationWriteForAccessor<TSchema, Target>;
|
|
253
|
+
} : never;
|
|
254
|
+
type JunctionM2MWriteEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TThroughAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
255
|
+
[C in FkColumnNames<TSchema[TThroughAccessor]["_columns"]>]: JunctionM2MWriteEntryForFk<TSchema, TAccessor, TThroughAccessor, C>;
|
|
256
|
+
}[FkColumnNames<TSchema[TThroughAccessor]["_columns"]>]>;
|
|
257
|
+
type JunctionM2MRelationWriteMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
258
|
+
[K in keyof TSchema & string]: K extends TAccessor ? never : [IsThroughTable<TSchema[K]["_columns"]>] extends [true] ? [HasFkTo<TSchema, K, TAccessor>] extends [true] ? JunctionM2MWriteEntry<TSchema, TAccessor, K> : never : never;
|
|
259
|
+
}[keyof TSchema & string]>;
|
|
260
|
+
/** Typed relation writes for create. */
|
|
261
|
+
export type RelationCreateMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = Expand<OutgoingFkRelationWriteMap<TSchema, TSchema[TAccessor]["_columns"]> & import("./nested-relation-types.js").InverseRelationWriteMap<TSchema, TAccessor> & JunctionM2MRelationWriteMap<TSchema, TAccessor>>;
|
|
262
|
+
/** Typed relation writes for update. */
|
|
263
|
+
export type RelationUpdateMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = Expand<OutgoingFkRelationWriteMap<TSchema, TSchema[TAccessor]["_columns"]> & import("./nested-relation-types.js").InverseRelationWriteMap<TSchema, TAccessor> & JunctionM2MRelationWriteMap<TSchema, TAccessor>>;
|
|
264
|
+
export type { NestedCreateInput } from "./nested-relation-types.js";
|
|
123
265
|
//# sourceMappingURL=relation-types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"relation-types.d.ts","sourceRoot":"","sources":["../../src/schema/relation-types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"relation-types.d.ts","sourceRoot":"","sources":["../../src/schema/relation-types.ts"],"names":[],"mappings":"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"}
|
package/dist/schema/types.d.ts
CHANGED
|
@@ -1,45 +1,40 @@
|
|
|
1
1
|
import type { ColumnBuilder } from "./column.js";
|
|
2
|
-
import type { FkBuilder } from "./relation.js";
|
|
3
2
|
import type { ColumnDef, TableDef } from "./table.js";
|
|
4
3
|
import type { InferColumnValue } from "./column-where.js";
|
|
5
|
-
import type { WithInputMap, WhereInput, OrderByInput, OrderDirection } from "./relation-types.js";
|
|
4
|
+
import type { ConnectOrCreateItem, InferInsertRow, InferSelectRow, RelationCreateMap, RelationUpdateMap, WithInputMap, WhereInput, OrderByInput, OrderDirection, CursorInput, SelectInput } from "./relation-types.js";
|
|
6
5
|
type IsPrimary<T> = T extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
7
6
|
primary: true;
|
|
8
7
|
} ? true : false : false;
|
|
9
|
-
type
|
|
10
|
-
|
|
11
|
-
primary: true;
|
|
12
|
-
} ? false : M extends {
|
|
13
|
-
nullable: false;
|
|
14
|
-
} ? true : false : T extends FkBuilder ? T["_meta"] extends {
|
|
15
|
-
nullable: false;
|
|
8
|
+
type IsUpdatedAt<T> = T extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
9
|
+
updatedAt: true;
|
|
16
10
|
} ? true : false : false;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
[K in keyof TColumns as IsPrimary<TColumns[K]> extends true ? never : K]?: InferColumnValue<TColumns[K]>;
|
|
22
|
-
} & {
|
|
23
|
-
[K in keyof TColumns as IsRequired<TColumns[K]> extends true ? K : never]: InferColumnValue<TColumns[K]>;
|
|
24
|
-
};
|
|
11
|
+
/** Expands mapped types so IDEs surface keys for autocomplete */
|
|
12
|
+
type Expand<T> = T extends infer O ? {
|
|
13
|
+
[K in keyof O]: O[K];
|
|
14
|
+
} : never;
|
|
25
15
|
export type { InferColumnValue, WhereOperators, ColumnWhereInput } from "./column-where.js";
|
|
26
|
-
export type { WhereInput, LogicalWhereInput, RelationWhereMap, ManyRelationFilter, OrderDirection, OrderByInput, WithInputMap, WithInclude, RelationAccessors, SelectInput, WithRelationOptions, } from "./relation-types.js";
|
|
27
|
-
export type ConnectInput<TColumns extends Record<string, ColumnDef>> = {
|
|
28
|
-
id: InferColumnValue<TColumns[keyof TColumns & string]>;
|
|
29
|
-
};
|
|
30
|
-
export type ConnectOrCreateItem<TColumns extends Record<string, ColumnDef>> = {
|
|
31
|
-
where: Partial<InferSelectRow<TColumns>>;
|
|
32
|
-
create: InferInsertRow<TColumns>;
|
|
33
|
-
};
|
|
16
|
+
export type { ConnectInput, ConnectOrCreateItem, InferInsertRow, InferSelectRow, WhereInput, LogicalWhereInput, RelationWhereMap, ManyRelationFilter, OrderDirection, OrderByInput, CursorInput, ScalarPkName, WithInputMap, WithInclude, RelationAccessors, SelectInput, WithRelationOptions, RelationCreateMap, RelationUpdateMap, RelationCountInput, InferWithResult, ApplySelect, } from "./relation-types.js";
|
|
34
17
|
export type RelationWriteInput = {
|
|
35
18
|
connect?: {
|
|
36
19
|
id: string;
|
|
37
20
|
};
|
|
38
21
|
connectOrCreate?: ConnectOrCreateItem<Record<string, ColumnDef>>[];
|
|
22
|
+
disconnect?: true | {
|
|
23
|
+
id: string;
|
|
24
|
+
} | {
|
|
25
|
+
id: string;
|
|
26
|
+
}[];
|
|
27
|
+
delete?: true | {
|
|
28
|
+
id: string;
|
|
29
|
+
} | {
|
|
30
|
+
id: string;
|
|
31
|
+
}[];
|
|
32
|
+
set?: {
|
|
33
|
+
id: string;
|
|
34
|
+
}[];
|
|
35
|
+
create?: Record<string, unknown> | Record<string, unknown>[];
|
|
39
36
|
};
|
|
40
|
-
export type CreateInput<TColumns extends Record<string, ColumnDef
|
|
41
|
-
[key: string]: unknown;
|
|
42
|
-
};
|
|
37
|
+
export type CreateInput<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef> = Record<string, TableDef>, TAccessor extends keyof TSchema & string = keyof TSchema & string> = Expand<InferInsertRow<TColumns> & RelationCreateMap<TSchema, TAccessor>>;
|
|
43
38
|
/** @deprecated Use WithInputMap for typed relation includes */
|
|
44
39
|
export type WithInput = boolean | {
|
|
45
40
|
select?: readonly string[];
|
|
@@ -55,6 +50,7 @@ export type FindManyArgs<TSchema extends Record<string, TableDef>, TAccessor ext
|
|
|
55
50
|
orderBy?: OrderByInput<TSchema[TAccessor]["_columns"]>;
|
|
56
51
|
limit?: number;
|
|
57
52
|
offset?: number;
|
|
53
|
+
distinct?: SelectInput<TSchema[TAccessor]["_columns"]>;
|
|
58
54
|
with?: WithInputMap<TSchema, TAccessor>;
|
|
59
55
|
};
|
|
60
56
|
export type FindFirstArgs<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = FindManyArgs<TSchema, TAccessor>;
|
|
@@ -62,22 +58,25 @@ export type FindByIdArgs<TSchema extends Record<string, TableDef>, TAccessor ext
|
|
|
62
58
|
with?: WithInputMap<TSchema, TAccessor>;
|
|
63
59
|
};
|
|
64
60
|
export type CreateArgs<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = {
|
|
65
|
-
data: CreateInput<TSchema[TAccessor]["_columns"]>;
|
|
61
|
+
data: CreateInput<TSchema[TAccessor]["_columns"], TSchema, TAccessor>;
|
|
66
62
|
with?: WithInputMap<TSchema, TAccessor>;
|
|
67
63
|
};
|
|
68
|
-
export type
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
[key: string]: unknown;
|
|
64
|
+
export type CreateManyInput<TColumns extends Record<string, ColumnDef>> = Expand<InferInsertRow<TColumns>>;
|
|
65
|
+
export type CreateManyArgs<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = {
|
|
66
|
+
data: CreateManyInput<TSchema[TAccessor]["_columns"]>[];
|
|
72
67
|
};
|
|
68
|
+
export type CreateManyAndReturnArgs<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = CreateManyArgs<TSchema, TAccessor>;
|
|
69
|
+
export type UpdateInput<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef> = Record<string, TableDef>, TAccessor extends keyof TSchema & string = keyof TSchema & string> = Expand<{
|
|
70
|
+
[K in keyof TColumns as IsPrimary<TColumns[K]> extends true ? never : IsUpdatedAt<TColumns[K]> extends true ? never : K]?: InferColumnValue<TColumns[K]>;
|
|
71
|
+
} & RelationUpdateMap<TSchema, TAccessor>>;
|
|
73
72
|
export type UpdateArgs<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = {
|
|
74
73
|
where: WhereInput<TSchema[TAccessor]["_columns"], TSchema, TAccessor>;
|
|
75
|
-
data: UpdateInput<TSchema[TAccessor]["_columns"]>;
|
|
74
|
+
data: UpdateInput<TSchema[TAccessor]["_columns"], TSchema, TAccessor>;
|
|
76
75
|
with?: WithInputMap<TSchema, TAccessor>;
|
|
77
76
|
};
|
|
78
77
|
export type UpdateManyArgs<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = {
|
|
79
78
|
where?: WhereInput<TSchema[TAccessor]["_columns"], TSchema, TAccessor>;
|
|
80
|
-
data: UpdateInput<TSchema[TAccessor]["_columns"]>;
|
|
79
|
+
data: UpdateInput<TSchema[TAccessor]["_columns"], TSchema, TAccessor>;
|
|
81
80
|
};
|
|
82
81
|
export type DeleteArgs<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = {
|
|
83
82
|
where: WhereInput<TSchema[TAccessor]["_columns"], TSchema, TAccessor>;
|
|
@@ -93,10 +92,57 @@ export type FindUniqueArgs<TSchema extends Record<string, TableDef>, TAccessor e
|
|
|
93
92
|
export type CountArgs<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = {
|
|
94
93
|
where?: WhereInput<TSchema[TAccessor]["_columns"], TSchema, TAccessor>;
|
|
95
94
|
};
|
|
95
|
+
type AggregateFieldSelect<TColumns extends Record<string, ColumnDef>> = Expand<{
|
|
96
|
+
[K in keyof TColumns & string]?: true;
|
|
97
|
+
}>;
|
|
98
|
+
type InferAggregateBucket<TSelect> = TSelect extends Record<string, true> ? {
|
|
99
|
+
[K in keyof TSelect & string]: number | null;
|
|
100
|
+
} : Record<string, never>;
|
|
101
|
+
export type AggregateArgs<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = {
|
|
102
|
+
where?: WhereInput<TSchema[TAccessor]["_columns"], TSchema, TAccessor>;
|
|
103
|
+
_count?: true;
|
|
104
|
+
_avg?: AggregateFieldSelect<TSchema[TAccessor]["_columns"]>;
|
|
105
|
+
_sum?: AggregateFieldSelect<TSchema[TAccessor]["_columns"]>;
|
|
106
|
+
_min?: AggregateFieldSelect<TSchema[TAccessor]["_columns"]>;
|
|
107
|
+
_max?: AggregateFieldSelect<TSchema[TAccessor]["_columns"]>;
|
|
108
|
+
};
|
|
109
|
+
export type InferAggregateResult<TArgs> = Expand<(TArgs extends {
|
|
110
|
+
_count: true;
|
|
111
|
+
} ? {
|
|
112
|
+
_count: number;
|
|
113
|
+
} : Record<string, never>) & (TArgs extends {
|
|
114
|
+
_avg: infer S extends Record<string, true>;
|
|
115
|
+
} ? {
|
|
116
|
+
_avg: InferAggregateBucket<S>;
|
|
117
|
+
} : Record<string, never>) & (TArgs extends {
|
|
118
|
+
_sum: infer S extends Record<string, true>;
|
|
119
|
+
} ? {
|
|
120
|
+
_sum: InferAggregateBucket<S>;
|
|
121
|
+
} : Record<string, never>) & (TArgs extends {
|
|
122
|
+
_min: infer S extends Record<string, true>;
|
|
123
|
+
} ? {
|
|
124
|
+
_min: InferAggregateBucket<S>;
|
|
125
|
+
} : Record<string, never>) & (TArgs extends {
|
|
126
|
+
_max: infer S extends Record<string, true>;
|
|
127
|
+
} ? {
|
|
128
|
+
_max: InferAggregateBucket<S>;
|
|
129
|
+
} : Record<string, never>)>;
|
|
130
|
+
export type PaginateArgs<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TOrderBy extends OrderByInput<TSchema[TAccessor]["_columns"]> = OrderByInput<TSchema[TAccessor]["_columns"]>> = {
|
|
131
|
+
where?: WhereInput<TSchema[TAccessor]["_columns"], TSchema, TAccessor>;
|
|
132
|
+
orderBy: TOrderBy;
|
|
133
|
+
take: number;
|
|
134
|
+
after?: CursorInput<TSchema[TAccessor]["_columns"], TOrderBy>;
|
|
135
|
+
with?: WithInputMap<TSchema, TAccessor>;
|
|
136
|
+
};
|
|
137
|
+
export type PaginateResult<TRow, TCursor> = {
|
|
138
|
+
items: TRow[];
|
|
139
|
+
nextCursor: TCursor | null;
|
|
140
|
+
hasMore: boolean;
|
|
141
|
+
};
|
|
96
142
|
export type UpsertArgs<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = {
|
|
97
143
|
where: WhereInput<TSchema[TAccessor]["_columns"], TSchema, TAccessor>;
|
|
98
|
-
create: CreateInput<TSchema[TAccessor]["_columns"]>;
|
|
99
|
-
update: UpdateInput<TSchema[TAccessor]["_columns"]>;
|
|
144
|
+
create: CreateInput<TSchema[TAccessor]["_columns"], TSchema, TAccessor>;
|
|
145
|
+
update: UpdateInput<TSchema[TAccessor]["_columns"], TSchema, TAccessor>;
|
|
100
146
|
with?: WithInputMap<TSchema, TAccessor>;
|
|
101
147
|
};
|
|
102
148
|
//# sourceMappingURL=types.d.ts.map
|