neoorm 0.5.0 → 0.5.2
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 +5 -5
- package/dist/bin/neoorm.js +35 -5
- package/dist/bin/neoorm.js.map +1 -1
- package/dist/codegen/emit-models.d.ts.map +1 -1
- package/dist/codegen/emit-models.js +12 -4
- package/dist/codegen/emit-models.js.map +1 -1
- package/dist/codegen/generate.d.ts.map +1 -1
- package/dist/codegen/generate.js +14 -1
- package/dist/codegen/generate.js.map +1 -1
- package/dist/codegen/schema-to-manifest.d.ts.map +1 -1
- package/dist/codegen/schema-to-manifest.js +209 -30
- package/dist/codegen/schema-to-manifest.js.map +1 -1
- package/dist/dialect/fk.d.ts +2 -0
- package/dist/dialect/fk.d.ts.map +1 -1
- package/dist/dialect/fk.js +27 -0
- package/dist/dialect/fk.js.map +1 -1
- package/dist/dialect/postgres.d.ts +1 -2
- package/dist/dialect/postgres.d.ts.map +1 -1
- package/dist/dialect/postgres.js +6 -14
- package/dist/dialect/postgres.js.map +1 -1
- package/dist/dialect/sqlite.d.ts.map +1 -1
- package/dist/dialect/sqlite.js +5 -12
- package/dist/dialect/sqlite.js.map +1 -1
- package/dist/dialect/types.d.ts +1 -0
- package/dist/dialect/types.d.ts.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/init/templates.d.ts.map +1 -1
- package/dist/init/templates.js +16 -6
- package/dist/init/templates.js.map +1 -1
- package/dist/introspect/pull.d.ts.map +1 -1
- package/dist/introspect/pull.js +9 -2
- package/dist/introspect/pull.js.map +1 -1
- package/dist/migrate/runner.d.ts +5 -3
- package/dist/migrate/runner.d.ts.map +1 -1
- package/dist/migrate/runner.js +46 -19
- package/dist/migrate/runner.js.map +1 -1
- package/dist/plugins/builtin.js +1 -1
- package/dist/plugins/builtin.js.map +1 -1
- package/dist/runtime/driver.d.ts.map +1 -1
- package/dist/runtime/driver.js +53 -29
- package/dist/runtime/driver.js.map +1 -1
- package/dist/runtime/errors.d.ts +21 -0
- package/dist/runtime/errors.d.ts.map +1 -1
- package/dist/runtime/errors.js +64 -0
- package/dist/runtime/errors.js.map +1 -1
- package/dist/runtime/schema-error.d.ts +18 -0
- package/dist/runtime/schema-error.d.ts.map +1 -0
- package/dist/runtime/schema-error.js +72 -0
- package/dist/runtime/schema-error.js.map +1 -0
- package/dist/schema/column-where.d.ts +19 -7
- package/dist/schema/column-where.d.ts.map +1 -1
- package/dist/schema/column.d.ts +4 -0
- package/dist/schema/column.d.ts.map +1 -1
- package/dist/schema/column.js +3 -0
- package/dist/schema/column.js.map +1 -1
- package/dist/schema/index.d.ts +4 -3
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js +1 -0
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/many-to-many.d.ts +30 -0
- package/dist/schema/many-to-many.d.ts.map +1 -1
- package/dist/schema/many-to-many.js +19 -1
- package/dist/schema/many-to-many.js.map +1 -1
- package/dist/schema/nested-relation-types.d.ts +13 -13
- package/dist/schema/nested-relation-types.d.ts.map +1 -1
- package/dist/schema/relation-types.d.ts +104 -49
- package/dist/schema/relation-types.d.ts.map +1 -1
- package/dist/schema/relation.d.ts +31 -11
- package/dist/schema/relation.d.ts.map +1 -1
- package/dist/schema/relation.js +60 -6
- package/dist/schema/relation.js.map +1 -1
- package/dist/schema/table-registry.d.ts +8 -0
- package/dist/schema/table-registry.d.ts.map +1 -0
- package/dist/schema/table-registry.js +26 -0
- package/dist/schema/table-registry.js.map +1 -0
- package/dist/schema/table.d.ts +36 -4
- package/dist/schema/table.d.ts.map +1 -1
- package/dist/schema/table.js +27 -1
- package/dist/schema/table.js.map +1 -1
- package/dist/schema/types.d.ts +16 -16
- package/dist/schema/types.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"many-to-many.d.ts","sourceRoot":"","sources":["../../src/schema/many-to-many.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC;AAaF,wBAAgB,UAAU,CACzB,KAAK,SAAS,QAAQ,EACtB,MAAM,SAAS,QAAQ,EACvB,QAAQ,SAAS,QAAQ,EAEzB,IAAI,EAAE,KAAK,EACX,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;IACR,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CAChB,GACC,IAAI,
|
|
1
|
+
{"version":3,"file":"many-to-many.d.ts","sourceRoot":"","sources":["../../src/schema/many-to-many.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,MAAM,eAAe,CAC1B,OAAO,SAAS,MAAM,GAAG,MAAM,EAC/B,GAAG,SAAS,MAAM,GAAG,MAAM,EAC3B,QAAQ,SAAS,MAAM,GAAG,MAAM,IAC7B;IACH,IAAI,EAAE,YAAY,CAAC;IACnB,gDAAgD;IAChD,MAAM,EAAE,OAAO,CAAC;IAChB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4EAA4E;IAC5E,EAAE,EAAE,GAAG,CAAC;IACR,0EAA0E;IAC1E,OAAO,EAAE,QAAQ,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,cAAc,CAAC,CAAC,SAAS,uBAAuB,IAAI,CAAC,SAAS;IAClE,EAAE,EAAE,MAAM,EAAE,SAAS,MAAM,CAAC;CAC5B,GACE,EAAE,GACF,EAAE,CAAC;AAEN,KAAK,mBAAmB,CAAC,CAAC,SAAS,uBAAuB,IAAI,CAAC,SAAS;IACvE,OAAO,EAAE,MAAM,GAAG,SAAS,MAAM,CAAC;CAClC,GACE,GAAG,GACH,EAAE,CAAC;AAEN,MAAM,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC;AAaF,wBAAgB,UAAU,CACzB,KAAK,CAAC,OAAO,SAAS,MAAM,EAC5B,KAAK,CAAC,QAAQ,SAAS,uBAAuB,GAAG,EAAE,EAEnD,MAAM,EAAE,OAAO,EACf,OAAO,CAAC,EAAE,QAAQ,GAChB,eAAe,CACjB,OAAO,EACP,cAAc,CAAC,QAAQ,CAAC,EACxB,mBAAmB,CAAC,QAAQ,CAAC,CAC7B,CAAC;AACF,wBAAgB,UAAU,CACzB,KAAK,SAAS,QAAQ,EACtB,MAAM,SAAS,QAAQ,EACvB,QAAQ,SAAS,QAAQ,EAEzB,IAAI,EAAE,KAAK,EACX,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;IACR,OAAO,EAAE,QAAQ,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;CAChB,GACC,IAAI,CAAC;AAwCR,wBAAgB,qBAAqB,IAAI,SAAS,aAAa,EAAE,CAEhE;AAED,wBAAgB,uBAAuB,IAAI,IAAI,CAE9C"}
|
|
@@ -7,7 +7,25 @@ function registry() {
|
|
|
7
7
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
8
8
|
return (globalThis[REGISTRY_KEY] ??= []);
|
|
9
9
|
}
|
|
10
|
-
export function manyToMany(
|
|
10
|
+
export function manyToMany(
|
|
11
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
12
|
+
...args) {
|
|
13
|
+
const [first, second, third] = args;
|
|
14
|
+
if (typeof first === "string") {
|
|
15
|
+
const options = second;
|
|
16
|
+
return {
|
|
17
|
+
kind: "manyToMany",
|
|
18
|
+
target: first,
|
|
19
|
+
...(options?.through ? { through: options.through } : {}),
|
|
20
|
+
...(options?.leftKey ? { leftKey: options.leftKey } : {}),
|
|
21
|
+
...(options?.rightKey ? { rightKey: options.rightKey } : {}),
|
|
22
|
+
as: options?.as ?? "",
|
|
23
|
+
inverse: options?.inverse ?? "",
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
const left = first;
|
|
27
|
+
const right = second;
|
|
28
|
+
const options = third;
|
|
11
29
|
registry().push({
|
|
12
30
|
kind: "manyToMany",
|
|
13
31
|
leftKey: left._tableName,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"many-to-many.js","sourceRoot":"","sources":["../../src/schema/many-to-many.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"many-to-many.js","sourceRoot":"","sources":["../../src/schema/many-to-many.ts"],"names":[],"mappings":"AAqDA,0EAA0E;AAC1E,8EAA8E;AAC9E,+EAA+E;AAC/E,+EAA+E;AAC/E,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;AAE7D,SAAS,QAAQ;IAChB,8DAA8D;IAC9D,OAAO,CAAE,UAAkB,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;AACnD,CAAC;AA4BD,MAAM,UAAU,UAAU;AACzB,8DAA8D;AAC9D,GAAG,IAAW;IAEd,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC;IACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,MAA6C,CAAC;QAC9D,OAAO;YACN,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE,KAAK;YACb,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzD,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE;YACrB,OAAO,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE;SAC/B,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,KAAK,CAAC;IACnB,MAAM,KAAK,GAAG,MAAM,CAAC;IACrB,MAAM,OAAO,GAAG,KAMf,CAAC;IACF,QAAQ,EAAE,CAAC,IAAI,CAAC;QACf,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,IAAI,CAAC,UAAU;QACxB,QAAQ,EAAE,KAAK,CAAC,UAAU;QAC1B,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU;QACtC,YAAY,EAAE,OAAO,CAAC,IAAI;QAC1B,aAAa,EAAE,OAAO,CAAC,KAAK;QAC5B,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,OAAO,EAAE,OAAO,CAAC,OAAO;KACxB,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB;IACpC,OAAO,QAAQ,EAAE,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,uBAAuB;IACtC,QAAQ,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;AACvB,CAAC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import type { ColumnBuilder } from "./column.js";
|
|
2
2
|
import type { FkBuilder, FkMeta } from "./relation.js";
|
|
3
|
-
import type { ConnectInput, InferInsertRow, SqlNameToAccessor } from "./relation-types.js";
|
|
3
|
+
import type { ConnectInput, FkInverseName, FkRelationName, InferInsertRow, SqlNameToAccessor } from "./relation-types.js";
|
|
4
4
|
import type { ColumnDef, TableDef } from "./table.js";
|
|
5
5
|
type Expand<T> = T extends infer O ? {
|
|
6
6
|
[K in keyof O]: O[K];
|
|
7
7
|
} : never;
|
|
8
|
-
type FkMetaOf<C> = C extends FkBuilder<infer TTarget, infer TAs, infer TInverse> ? FkMeta<TTarget, TAs, TInverse> : never;
|
|
8
|
+
type FkMetaOf<C> = C extends FkBuilder<infer TTarget, infer TAs, infer TInverse, infer TUnique, infer TNullable> ? FkMeta<TTarget, TAs, TInverse, TUnique, TNullable> : never;
|
|
9
9
|
type FkColumnNames<TColumns extends Record<string, ColumnDef>> = {
|
|
10
10
|
[K in keyof TColumns]: TColumns[K] extends FkBuilder ? K : never;
|
|
11
11
|
}[keyof TColumns & string];
|
|
@@ -27,36 +27,36 @@ type DisconnectWriteForFk<C extends ColumnDef> = C extends FkBuilder ? C["_meta"
|
|
|
27
27
|
disconnect?: true;
|
|
28
28
|
} : Record<never, never> : Record<never, never>;
|
|
29
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"]>;
|
|
30
|
+
connect?: ConnectInput<TSchema[TAccessor]["_columns"], TSchema>;
|
|
31
|
+
create?: InferInsertRow<TSchema[TAccessor]["_columns"], TSchema>;
|
|
32
32
|
} & DisconnectWriteForFk<TFkColumn> : never;
|
|
33
33
|
type ShallowOutgoingFkRelationWriteMap<TSchema extends Record<string, TableDef>, TColumns extends Record<string, ColumnDef>> = {
|
|
34
34
|
[K in keyof TColumns & string as TColumns[K] extends FkBuilder ? TColumns[K]["_meta"] extends FkMeta ? TColumns[K]["_meta"] extends {
|
|
35
35
|
as: infer As extends string;
|
|
36
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;
|
|
37
|
+
} ? SqlNameToAccessor<TSchema, Sql> extends keyof TSchema & string ? FkRelationName<As, K> : 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
38
|
};
|
|
39
39
|
type ParentFkColumnOnChild<TSchema extends Record<string, TableDef>, TParentAccessor extends keyof TSchema & string, TChildAccessor extends keyof TSchema & string> = {
|
|
40
40
|
[K in FkColumnNames<TSchema[TChildAccessor]["_columns"]>]: FkMetaOf<TSchema[TChildAccessor]["_columns"][K]> extends {
|
|
41
41
|
target: infer TTarget extends string;
|
|
42
42
|
} ? FkTargetMatchesAccessor<TSchema, TTarget, TParentAccessor> extends true ? K : never : never;
|
|
43
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>>;
|
|
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"], TSchema> & ShallowOutgoingFkRelationWriteMap<TSchema, TSchema[TChildAccessor]["_columns"]>>, ParentFkColumnOnChild<TSchema, TParentAccessor, TChildAccessor>>;
|
|
45
45
|
type ToOneRelationWrite<TSchema extends Record<string, TableDef>, TParentAccessor extends keyof TSchema & string, TChildAccessor extends keyof TSchema & string> = {
|
|
46
46
|
create?: NestedCreateInput<TSchema, TParentAccessor, TChildAccessor>;
|
|
47
|
-
connect?: ConnectInput<TSchema[TChildAccessor]["_columns"]>;
|
|
47
|
+
connect?: ConnectInput<TSchema[TChildAccessor]["_columns"], TSchema>;
|
|
48
48
|
disconnect?: true;
|
|
49
|
-
delete?: ConnectInput<TSchema[TChildAccessor]["_columns"]>;
|
|
49
|
+
delete?: ConnectInput<TSchema[TChildAccessor]["_columns"], TSchema>;
|
|
50
50
|
};
|
|
51
51
|
type ToManyRelationWrite<TSchema extends Record<string, TableDef>, TParentAccessor extends keyof TSchema & string, TChildAccessor extends keyof TSchema & string> = {
|
|
52
52
|
create?: NestedCreateInput<TSchema, TParentAccessor, TChildAccessor> | NestedCreateInput<TSchema, TParentAccessor, TChildAccessor>[];
|
|
53
|
-
connect?: ConnectInput<TSchema[TChildAccessor]["_columns"]> | ConnectInput<TSchema[TChildAccessor]["_columns"]>[];
|
|
54
|
-
disconnect?: true | ConnectInput<TSchema[TChildAccessor]["_columns"]> | ConnectInput<TSchema[TChildAccessor]["_columns"]>[];
|
|
55
|
-
delete?: true | ConnectInput<TSchema[TChildAccessor]["_columns"]> | ConnectInput<TSchema[TChildAccessor]["_columns"]>[];
|
|
56
|
-
set?: ConnectInput<TSchema[TChildAccessor]["_columns"]>[];
|
|
53
|
+
connect?: ConnectInput<TSchema[TChildAccessor]["_columns"], TSchema> | ConnectInput<TSchema[TChildAccessor]["_columns"], TSchema>[];
|
|
54
|
+
disconnect?: true | ConnectInput<TSchema[TChildAccessor]["_columns"], TSchema> | ConnectInput<TSchema[TChildAccessor]["_columns"], TSchema>[];
|
|
55
|
+
delete?: true | ConnectInput<TSchema[TChildAccessor]["_columns"], TSchema> | ConnectInput<TSchema[TChildAccessor]["_columns"], TSchema>[];
|
|
56
|
+
set?: ConnectInput<TSchema[TChildAccessor]["_columns"], TSchema>[];
|
|
57
57
|
};
|
|
58
58
|
type InverseRelationWriteEntriesForTable<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string> = IsThroughTable<TSchema[TSourceAccessor]["_columns"]> extends true ? never : {
|
|
59
|
-
[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]?: TSchema[TSourceAccessor]["_columns"][K] extends FkBuilder ? TSchema[TSourceAccessor]["_columns"][K]["_meta"] extends {
|
|
59
|
+
[K in FkColumnNames<TSchema[TSourceAccessor]["_columns"]> as TSchema[TSourceAccessor]["_columns"][K] extends FkBuilder<infer TTarget extends string, infer _As, infer Inv extends string, infer _Unique extends boolean, infer _Nullable extends boolean> ? FkTargetMatchesAccessor<TSchema, TTarget, TAccessor> extends true ? FkInverseName<Inv, K> : never : never]?: TSchema[TSourceAccessor]["_columns"][K] extends FkBuilder ? TSchema[TSourceAccessor]["_columns"][K]["_meta"] extends {
|
|
60
60
|
unique: true;
|
|
61
61
|
} ? ToOneRelationWrite<TSchema, TAccessor, TSourceAccessor> : ToManyRelationWrite<TSchema, TAccessor, TSourceAccessor> : never;
|
|
62
62
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nested-relation-types.d.ts","sourceRoot":"","sources":["../../src/schema/nested-relation-types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,KAAK,EACX,YAAY,EACZ,cAAc,EACd,iBAAiB,EACjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtD,KAAK,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CAAE,GAAG,KAAK,CAAC;AAStE,KAAK,QAAQ,CAAC,CAAC,IACd,CAAC,SAAS,SAAS,
|
|
1
|
+
{"version":3,"file":"nested-relation-types.d.ts","sourceRoot":"","sources":["../../src/schema/nested-relation-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { ColumnBuilder } from "./column.js";
|
|
2
2
|
import type { ColumnWhereInput, InferColumnValue } from "./column-where.js";
|
|
3
|
+
import type { ManyToManyExtra } from "./many-to-many.js";
|
|
3
4
|
import type { FkBuilder, FkMeta } from "./relation.js";
|
|
4
|
-
import type { ColumnDef, TableDef } from "./table.js";
|
|
5
|
+
import type { ColumnDef, ScalarColumnKeys, TableDef } from "./table.js";
|
|
5
6
|
type IsPrimary<T> = T extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
6
7
|
primary: true;
|
|
7
8
|
} ? true : false : false;
|
|
@@ -17,32 +18,30 @@ type IsRequired<T> = T extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
|
17
18
|
defaultValue: unknown;
|
|
18
19
|
} ? false : M extends {
|
|
19
20
|
nullable: false;
|
|
20
|
-
} ? true : false : T extends FkBuilder ?
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
export type InferSelectRow<TColumns extends Record<string, ColumnDef>> = {
|
|
24
|
-
[K in keyof TColumns]: InferColumnValue<TColumns[K]>;
|
|
21
|
+
} ? true : false : T extends FkBuilder ? false : false;
|
|
22
|
+
export type InferSelectRow<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef> = Record<string, TableDef>> = {
|
|
23
|
+
[K in ScalarColumnKeys<TColumns>]: InferColumnValue<TColumns[K], TSchema>;
|
|
25
24
|
};
|
|
26
|
-
export type InferInsertRow<TColumns extends Record<string, ColumnDef>> = {
|
|
27
|
-
[K in
|
|
25
|
+
export type InferInsertRow<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef> = Record<string, TableDef>> = {
|
|
26
|
+
[K in ScalarColumnKeys<TColumns> as IsPrimary<TColumns[K]> extends true ? never : IsGenerated<TColumns[K]> extends true ? never : K]?: InferColumnValue<TColumns[K], TSchema>;
|
|
28
27
|
} & {
|
|
29
|
-
[K in
|
|
28
|
+
[K in ScalarColumnKeys<TColumns> as IsRequired<TColumns[K]> extends true ? K : never]: InferColumnValue<TColumns[K], TSchema>;
|
|
30
29
|
};
|
|
31
|
-
type PrimaryIdValue<TColumns extends Record<string, ColumnDef>> = {
|
|
30
|
+
type PrimaryIdValue<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef> = Record<string, TableDef>> = {
|
|
32
31
|
[K in keyof TColumns]: TColumns[K] extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
33
32
|
primary: true;
|
|
34
|
-
} ? InferColumnValue<TColumns[K]> : never : never;
|
|
33
|
+
} ? InferColumnValue<TColumns[K], TSchema> : never : never;
|
|
35
34
|
}[keyof TColumns & string];
|
|
36
|
-
export type ConnectInput<TColumns extends Record<string, ColumnDef>> = {
|
|
37
|
-
id: [PrimaryIdValue<TColumns>] extends [never] ? string : PrimaryIdValue<TColumns>;
|
|
35
|
+
export type ConnectInput<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef> = Record<string, TableDef>> = {
|
|
36
|
+
id: [PrimaryIdValue<TColumns, TSchema>] extends [never] ? string : PrimaryIdValue<TColumns, TSchema>;
|
|
38
37
|
};
|
|
39
|
-
export type ConnectOrCreateItem<TColumns extends Record<string, ColumnDef>> = {
|
|
40
|
-
where: Partial<InferSelectRow<TColumns>>;
|
|
41
|
-
create: InferInsertRow<TColumns>;
|
|
38
|
+
export type ConnectOrCreateItem<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef> = Record<string, TableDef>> = {
|
|
39
|
+
where: Partial<InferSelectRow<TColumns, TSchema>>;
|
|
40
|
+
create: InferInsertRow<TColumns, TSchema>;
|
|
42
41
|
};
|
|
43
42
|
export type OrderDirection = "asc" | "desc";
|
|
44
43
|
export type OrderByInput<TColumns extends Record<string, ColumnDef>> = {
|
|
45
|
-
[K in
|
|
44
|
+
[K in ScalarColumnKeys<TColumns>]?: OrderDirection;
|
|
46
45
|
};
|
|
47
46
|
export type ScalarPkName<TColumns extends Record<string, ColumnDef>> = {
|
|
48
47
|
[K in keyof TColumns]: TColumns[K] extends ColumnBuilder<unknown, infer M> ? M extends {
|
|
@@ -50,7 +49,7 @@ export type ScalarPkName<TColumns extends Record<string, ColumnDef>> = {
|
|
|
50
49
|
} ? K : never : never;
|
|
51
50
|
}[keyof TColumns & string];
|
|
52
51
|
export type PrimaryKeyColumns<TColumns extends Record<string, ColumnDef>> = ScalarPkName<TColumns>;
|
|
53
|
-
export type CursorInput<TColumns extends Record<string, ColumnDef>, TOrderBy extends OrderByInput<TColumns>> = Pick<InferSelectRow<TColumns>, (keyof TOrderBy & keyof TColumns) | ScalarPkName<TColumns>>;
|
|
52
|
+
export type CursorInput<TColumns extends Record<string, ColumnDef>, TOrderBy extends OrderByInput<TColumns>, TSchema extends Record<string, TableDef> = Record<string, TableDef>> = Pick<InferSelectRow<TColumns, TSchema>, (keyof TOrderBy & keyof TColumns & ScalarColumnKeys<TColumns>) | ScalarPkName<TColumns>>;
|
|
54
53
|
/** Expands mapped types so IDEs surface keys for autocomplete */
|
|
55
54
|
type Expand<T> = T extends infer O ? {
|
|
56
55
|
[K in keyof O]: O[K];
|
|
@@ -69,7 +68,14 @@ type MergeInverseRelationUnion<U> = {
|
|
|
69
68
|
[P in K]: unknown;
|
|
70
69
|
}>[K];
|
|
71
70
|
};
|
|
72
|
-
type FkMetaOf<C> = C extends FkBuilder<infer TTarget, infer TAs, infer TInverse> ? FkMeta<TTarget, TAs, TInverse> : never;
|
|
71
|
+
type FkMetaOf<C> = C extends FkBuilder<infer TTarget, infer TAs, infer TInverse, infer TUnique, infer TNullable> ? FkMeta<TTarget, TAs, TInverse, TUnique, TNullable> : never;
|
|
72
|
+
/** Mirrors runtime `inferFkAs`: strips a trailing `Id`/`_id` suffix. */
|
|
73
|
+
type InferFkAs<C extends string> = C extends `${infer B}Id` ? B : C extends `${infer B}_id` ? B : C;
|
|
74
|
+
/** Basic pluralizer matching the runtime default for omitted inverses. */
|
|
75
|
+
type Pluralize<S extends string> = S extends `${infer B}${"ch" | "sh"}` ? `${S}es` : S extends `${infer B}${"s" | "x" | "z"}` ? `${S}es` : S extends `${infer B}y` ? B extends `${string}${"a" | "e" | "i" | "o" | "u"}` ? `${S}s` : `${B}ies` : `${S}s`;
|
|
76
|
+
type InferFkInverse<C extends string> = Pluralize<InferFkAs<C>>;
|
|
77
|
+
export type FkRelationName<As extends string, K extends string> = string extends As ? InferFkAs<K> : As extends "" ? InferFkAs<K> : As;
|
|
78
|
+
export type FkInverseName<Inv extends string, K extends string> = string extends Inv ? InferFkInverse<K> : Inv extends "" ? InferFkInverse<K> : Inv;
|
|
73
79
|
type FkColumnNames<TColumns extends Record<string, ColumnDef>> = {
|
|
74
80
|
[K in keyof TColumns]: TColumns[K] extends FkBuilder ? K : never;
|
|
75
81
|
}[keyof TColumns & string];
|
|
@@ -90,26 +96,26 @@ export type SqlNameToAccessor<TSchema extends Record<string, TableDef>, TSqlName
|
|
|
90
96
|
[K in keyof TSchema & string]: TSchema[K]["_tableName"] extends TSqlName ? K : never;
|
|
91
97
|
}[keyof TSchema & string];
|
|
92
98
|
/** FK relations defined on this table's columns (as name -> target accessor) */
|
|
93
|
-
type OutgoingFkRelationEntry<TSchema extends Record<string, TableDef>, C extends ColumnDef> = FkMetaOf<C> extends {
|
|
99
|
+
type OutgoingFkRelationEntry<TSchema extends Record<string, TableDef>, C extends ColumnDef, K extends string> = FkMetaOf<C> extends {
|
|
94
100
|
target: infer TTarget extends string;
|
|
95
101
|
as: infer As extends string;
|
|
96
102
|
} ? TTarget extends `${infer Sql}.${string}` ? SqlNameToAccessor<TSchema, Sql> extends infer Acc extends keyof TSchema & string ? IsThroughTable<TSchema[Acc]["_columns"]> extends true ? never : {
|
|
97
|
-
[P in As]: Acc;
|
|
103
|
+
[P in FkRelationName<As, K>]: Acc;
|
|
98
104
|
} : never : never : never;
|
|
99
105
|
export type OutgoingFkRelations<TSchema extends Record<string, TableDef>, TColumns extends Record<string, ColumnDef>> = MergeRelationUnion<{
|
|
100
|
-
[K in keyof TColumns]: OutgoingFkRelationEntry<TSchema, TColumns[K]>;
|
|
106
|
+
[K in keyof TColumns]: OutgoingFkRelationEntry<TSchema, TColumns[K], K & string>;
|
|
101
107
|
}[keyof TColumns]>;
|
|
102
108
|
/** Inverse relations from other tables pointing at this table (inverse name -> source accessor) */
|
|
103
|
-
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 {
|
|
109
|
+
export type InverseRelationEntryForSource<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, K extends string> = IsThroughTable<TSchema[TSourceAccessor]["_columns"]> extends true ? never : FkMetaOf<C> extends {
|
|
104
110
|
target: infer TTarget extends string;
|
|
105
111
|
inverse: infer Inv extends string;
|
|
106
112
|
} ? [TTarget] extends [
|
|
107
113
|
`${TSchema[TTargetAccessor]["_tableName"]}.${string}`
|
|
108
114
|
] ? {
|
|
109
|
-
[P in Inv]: TSourceAccessor;
|
|
115
|
+
[P in FkInverseName<Inv, K>]: TSourceAccessor;
|
|
110
116
|
} : never : never;
|
|
111
117
|
export type InverseRelationEntriesForTable<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string> = {
|
|
112
|
-
[K in FkColumnNames<TSchema[TSourceAccessor]["_columns"]>]: InverseRelationEntryForSource<TSchema, TAccessor, TSourceAccessor, TSchema[TSourceAccessor]["_columns"][K]>;
|
|
118
|
+
[K in FkColumnNames<TSchema[TSourceAccessor]["_columns"]>]: InverseRelationEntryForSource<TSchema, TAccessor, TSourceAccessor, TSchema[TSourceAccessor]["_columns"][K], K>;
|
|
113
119
|
}[FkColumnNames<TSchema[TSourceAccessor]["_columns"]>];
|
|
114
120
|
export type InverseRelations<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeInverseRelationUnion<{
|
|
115
121
|
[K in keyof TSchema & string]: MergeInverseRelationUnion<InverseRelationEntriesForTable<TSchema, TAccessor, K>>;
|
|
@@ -133,9 +139,30 @@ type HasFkTo<TSchema extends Record<string, TableDef>, TThroughAccessor extends
|
|
|
133
139
|
export type JunctionM2MRelations<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
134
140
|
[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;
|
|
135
141
|
}[keyof TSchema & string]>;
|
|
142
|
+
type M2MTargetOf<C> = C extends ManyToManyExtra<infer TTarget, infer _AAs, infer _AInv> ? TTarget : never;
|
|
143
|
+
/** Relation name for an inline m2m on the source table (defaults to the column key). */
|
|
144
|
+
type M2MNameOf<K extends string, C> = C extends ManyToManyExtra<infer _TTarget, infer AAs, infer _AInv> ? AAs extends "" ? K : AAs : K;
|
|
145
|
+
/** Relation name for an inline m2m on the target table (defaults to the source accessor). */
|
|
146
|
+
type M2MInverseOf<TSource extends string, C> = C extends ManyToManyExtra<infer _TTarget, infer _AAs, infer AInv> ? AInv extends "" ? TSource : AInv : TSource;
|
|
147
|
+
type InlineM2MRelationEntry<TSchema extends Record<string, TableDef>, C extends ColumnDef, K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends infer TTarget extends keyof TSchema & string ? {
|
|
148
|
+
[P in M2MNameOf<K, C>]: TTarget;
|
|
149
|
+
} : never : never;
|
|
150
|
+
/** Forward inline m2m relations (virtual manyToMany columns) on the source table. */
|
|
151
|
+
export type InlineM2MRelations<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeInverseRelationUnion<{
|
|
152
|
+
[K in keyof TSchema[TAccessor]["_columns"]]: InlineM2MRelationEntry<TSchema, TSchema[TAccessor]["_columns"][K], K & string>;
|
|
153
|
+
}[keyof TSchema[TAccessor]["_columns"]]>;
|
|
154
|
+
type InlineM2MInverseRelationEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends TAccessor ? {
|
|
155
|
+
[P in M2MInverseOf<TSourceAccessor, C>]: TSourceAccessor;
|
|
156
|
+
} : never : never;
|
|
157
|
+
/** Inverse inline m2m relations on the target table (name defaults to the source accessor). */
|
|
158
|
+
export type InlineM2MInverseRelations<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeInverseRelationUnion<{
|
|
159
|
+
[S in keyof TSchema & string]: {
|
|
160
|
+
[K in keyof TSchema[S]["_columns"]]: InlineM2MInverseRelationEntry<TSchema, TAccessor, S, TSchema[S]["_columns"][K], K & string>;
|
|
161
|
+
}[keyof TSchema[S]["_columns"]];
|
|
162
|
+
}[keyof TSchema & string]>;
|
|
136
163
|
/** All relation names on a table -> target schema accessor */
|
|
137
|
-
export type RelationAccessors<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = OutgoingFkRelations<TSchema, TSchema[TAccessor]["_columns"]> & InverseRelations<TSchema, TAccessor> & JunctionM2MRelations<TSchema, TAccessor>;
|
|
138
|
-
export type ColumnNames<TColumns extends Record<string, ColumnDef>> =
|
|
164
|
+
export type RelationAccessors<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = OutgoingFkRelations<TSchema, TSchema[TAccessor]["_columns"]> & InverseRelations<TSchema, TAccessor> & JunctionM2MRelations<TSchema, TAccessor> & InlineM2MRelations<TSchema, TAccessor> & InlineM2MInverseRelations<TSchema, TAccessor>;
|
|
165
|
+
export type ColumnNames<TColumns extends Record<string, ColumnDef>> = ScalarColumnKeys<TColumns>;
|
|
139
166
|
/** Target schema accessor for a relation name on a table */
|
|
140
167
|
export type RelationTarget<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TRelation extends keyof RelationAccessors<TSchema, TAccessor> & string> = RelationAccessors<TSchema, TAccessor>[TRelation];
|
|
141
168
|
type TargetColumns<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string> = TSchema[TTargetAccessor]["_columns"];
|
|
@@ -175,7 +202,7 @@ type SelectKeys<S> = S extends readonly (infer K extends PropertyKey)[] ? K : S
|
|
|
175
202
|
}[keyof S] : never;
|
|
176
203
|
export type ApplySelect<Row extends Record<string, unknown>, S> = Pick<Row, SelectKeys<S> & keyof Row>;
|
|
177
204
|
export type ApplyOmit<Row extends Record<string, unknown>, O> = Omit<Row, SelectKeys<O> & keyof Row>;
|
|
178
|
-
type RelationTargetModel<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string> = InferSelectRow<TSchema[TTargetAccessor]["_columns"]>;
|
|
205
|
+
type RelationTargetModel<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string> = InferSelectRow<TSchema[TTargetAccessor]["_columns"], TSchema>;
|
|
179
206
|
type InferNestedWithResult<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string, TInclude, TModel extends Record<string, unknown>> = TInclude extends {
|
|
180
207
|
select?: infer S;
|
|
181
208
|
with?: infer NW;
|
|
@@ -190,7 +217,7 @@ export type InferRelationIncludeResult<TSchema extends Record<string, TableDef>,
|
|
|
190
217
|
take?: unknown;
|
|
191
218
|
skip?: unknown;
|
|
192
219
|
} ? InferNestedWithResult<TSchema, TTarget, TInclude, RelationTargetModel<TSchema, TTarget>> : TInclude extends true ? RelationTargetModel<TSchema, TTarget> : TInclude extends false | undefined ? never : RelationTargetModel<TSchema, TTarget> : never : never;
|
|
193
|
-
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;
|
|
220
|
+
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 : TRelation extends keyof InlineM2MRelations<TSchema, TAccessor> ? true : TRelation extends keyof InlineM2MInverseRelations<TSchema, TAccessor> ? true : false;
|
|
194
221
|
type InferWithRelations<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, W> = {
|
|
195
222
|
[R in keyof W & keyof RelationAccessors<TSchema, TAccessor> & string]: [
|
|
196
223
|
NonNullable<RelationAccessors<TSchema, TAccessor>[R]>
|
|
@@ -203,27 +230,27 @@ type InferCountResult<TSchema extends Record<string, TableDef>, TAccessor extend
|
|
|
203
230
|
[K in keyof C & string]: number;
|
|
204
231
|
};
|
|
205
232
|
} : EmptyObject : EmptyObject;
|
|
206
|
-
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>>;
|
|
233
|
+
export type InferWithResult<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, W, TBase extends Record<string, unknown> = InferSelectRow<TSchema[TAccessor]["_columns"], TSchema>> = W extends undefined ? TBase : Expand<TBase & InferWithRelations<TSchema, TAccessor, W> & InferCountResult<TSchema, TAccessor, W>>;
|
|
207
234
|
/** Parent `select`/`omit` plus `with` relations. `never` if both select and omit are set. */
|
|
208
|
-
export type InferFindResult<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, W, S = undefined, O = undefined, TBase extends Record<string, unknown> = InferSelectRow<TSchema[TAccessor]["_columns"]>> = [S] extends [undefined] ? [O] extends [undefined] ? InferWithResult<TSchema, TAccessor, W, TBase> : InferWithResult<TSchema, TAccessor, W, ApplyOmit<TBase, O>> : [O] extends [undefined] ? InferWithResult<TSchema, TAccessor, W, ApplySelect<TBase, S>> : never;
|
|
235
|
+
export type InferFindResult<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, W, S = undefined, O = undefined, TBase extends Record<string, unknown> = InferSelectRow<TSchema[TAccessor]["_columns"], TSchema>> = [S] extends [undefined] ? [O] extends [undefined] ? InferWithResult<TSchema, TAccessor, W, TBase> : InferWithResult<TSchema, TAccessor, W, ApplyOmit<TBase, O>> : [O] extends [undefined] ? InferWithResult<TSchema, TAccessor, W, ApplySelect<TBase, S>> : never;
|
|
209
236
|
export type ManyRelationFilter<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string> = {
|
|
210
237
|
some?: WhereInput<TSchema[TTargetAccessor]["_columns"], TSchema, TTargetAccessor>;
|
|
211
238
|
every?: WhereInput<TSchema[TTargetAccessor]["_columns"], TSchema, TTargetAccessor>;
|
|
212
239
|
none?: WhereInput<TSchema[TTargetAccessor]["_columns"], TSchema, TTargetAccessor>;
|
|
213
240
|
};
|
|
214
|
-
type OutgoingFkRelationWhereEntry<TSchema extends Record<string, TableDef>, C extends ColumnDef> = FkMetaOf<C> extends {
|
|
241
|
+
type OutgoingFkRelationWhereEntry<TSchema extends Record<string, TableDef>, C extends ColumnDef, K extends string> = FkMetaOf<C> extends {
|
|
215
242
|
target: infer TTarget extends string;
|
|
216
243
|
as: infer As extends string;
|
|
217
244
|
} ? TTarget extends `${infer Sql}.${string}` ? SqlNameToAccessor<TSchema, Sql> extends infer Acc extends keyof TSchema & string ? IsThroughTable<TSchema[Acc]["_columns"]> extends true ? never : {
|
|
218
|
-
[P in As]?: WhereInput<TSchema[Acc]["_columns"], TSchema, Acc>;
|
|
245
|
+
[P in FkRelationName<As, K>]?: WhereInput<TSchema[Acc]["_columns"], TSchema, Acc>;
|
|
219
246
|
} : never : never : never;
|
|
220
|
-
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 {
|
|
247
|
+
type InverseRelationWhereEntry<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, K extends string> = IsThroughTable<TSchema[TSourceAccessor]["_columns"]> extends true ? never : FkMetaOf<C> extends {
|
|
221
248
|
target: infer TTarget extends string;
|
|
222
249
|
inverse: infer Inv extends string;
|
|
223
250
|
} ? [TTarget] extends [
|
|
224
251
|
`${TSchema[TTargetAccessor]["_tableName"]}.${string}`
|
|
225
252
|
] ? {
|
|
226
|
-
[P in Inv]?: ManyRelationFilter<TSchema, TSourceAccessor>;
|
|
253
|
+
[P in FkInverseName<Inv, K>]?: ManyRelationFilter<TSchema, TSourceAccessor>;
|
|
227
254
|
} : never : never;
|
|
228
255
|
type JunctionM2MWhereEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TThroughAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
229
256
|
[C in FkColumnNames<TSchema[TThroughAccessor]["_columns"]>]: OtherFkTarget<TSchema, TThroughAccessor, TAccessor, C> extends infer Target extends keyof TSchema & string ? {
|
|
@@ -231,43 +258,71 @@ type JunctionM2MWhereEntry<TSchema extends Record<string, TableDef>, TAccessor e
|
|
|
231
258
|
} : never;
|
|
232
259
|
}[FkColumnNames<TSchema[TThroughAccessor]["_columns"]>]>;
|
|
233
260
|
type InverseRelationWhereEntriesForTable<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string> = {
|
|
234
|
-
[K in FkColumnNames<TSchema[TSourceAccessor]["_columns"]>]: InverseRelationWhereEntry<TSchema, TAccessor, TSourceAccessor, TSchema[TSourceAccessor]["_columns"][K]>;
|
|
261
|
+
[K in FkColumnNames<TSchema[TSourceAccessor]["_columns"]>]: InverseRelationWhereEntry<TSchema, TAccessor, TSourceAccessor, TSchema[TSourceAccessor]["_columns"][K], K>;
|
|
235
262
|
}[FkColumnNames<TSchema[TSourceAccessor]["_columns"]>];
|
|
263
|
+
type InlineM2MWhereRelationEntry<TSchema extends Record<string, TableDef>, C extends ColumnDef, K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends infer TTarget extends keyof TSchema & string ? {
|
|
264
|
+
[P in M2MNameOf<K, C>]?: ManyRelationFilter<TSchema, TTarget>;
|
|
265
|
+
} : never : never;
|
|
266
|
+
export type InlineM2MWhereMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
267
|
+
[K in keyof TSchema[TAccessor]["_columns"]]: InlineM2MWhereRelationEntry<TSchema, TSchema[TAccessor]["_columns"][K], K & string>;
|
|
268
|
+
}[keyof TSchema[TAccessor]["_columns"]]>;
|
|
269
|
+
type InlineM2MInverseWhereRelationEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends TAccessor ? {
|
|
270
|
+
[P in M2MInverseOf<TSourceAccessor, C>]?: ManyRelationFilter<TSchema, TSourceAccessor>;
|
|
271
|
+
} : never : never;
|
|
272
|
+
export type InlineM2MInverseWhereMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
273
|
+
[S in keyof TSchema & string]: MergeRelationUnion<{
|
|
274
|
+
[K in keyof TSchema[S]["_columns"]]: InlineM2MInverseWhereRelationEntry<TSchema, TAccessor, S, TSchema[S]["_columns"][K], K & string>;
|
|
275
|
+
}[keyof TSchema[S]["_columns"]]>;
|
|
276
|
+
}[keyof TSchema & string]>;
|
|
236
277
|
export type RelationWhereMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
237
|
-
[K in keyof TSchema[TAccessor]["_columns"]]: OutgoingFkRelationWhereEntry<TSchema, TSchema[TAccessor]["_columns"][K]>;
|
|
278
|
+
[K in keyof TSchema[TAccessor]["_columns"]]: OutgoingFkRelationWhereEntry<TSchema, TSchema[TAccessor]["_columns"][K], K & string>;
|
|
238
279
|
}[keyof TSchema[TAccessor]["_columns"]]> & MergeRelationUnion<{
|
|
239
280
|
[K in keyof TSchema & string]: MergeRelationUnion<InverseRelationWhereEntriesForTable<TSchema, TAccessor, K>>;
|
|
240
281
|
}[keyof TSchema & string]> & MergeRelationUnion<{
|
|
241
282
|
[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;
|
|
242
|
-
}[keyof TSchema & string]>;
|
|
283
|
+
}[keyof TSchema & string]> & InlineM2MWhereMap<TSchema, TAccessor> & InlineM2MInverseWhereMap<TSchema, TAccessor>;
|
|
243
284
|
export type LogicalWhereInput<TColumns extends Record<string, ColumnDef>, TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = {
|
|
244
285
|
AND?: WhereInput<TColumns, TSchema, TAccessor>[];
|
|
245
286
|
OR?: WhereInput<TColumns, TSchema, TAccessor>[];
|
|
246
287
|
NOT?: WhereInput<TColumns, TSchema, TAccessor>;
|
|
247
288
|
};
|
|
248
|
-
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>;
|
|
289
|
+
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, TSchema> & RelationWhereMap<TSchema, TAccessor>;
|
|
249
290
|
type DisconnectWriteForFk<C extends ColumnDef> = C extends FkBuilder ? C["_meta"] extends {
|
|
250
291
|
nullable: true;
|
|
251
292
|
} ? {
|
|
252
293
|
disconnect?: true;
|
|
253
294
|
} : Record<never, never> : Record<never, never>;
|
|
254
295
|
type ToOneRelationWriteForAccessor<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TFkColumn extends ColumnDef> = TAccessor extends keyof TSchema & string ? {
|
|
255
|
-
connect?: ConnectInput<TSchema[TAccessor]["_columns"]>;
|
|
256
|
-
create?: InferInsertRow<TSchema[TAccessor]["_columns"]>;
|
|
296
|
+
connect?: ConnectInput<TSchema[TAccessor]["_columns"], TSchema>;
|
|
297
|
+
create?: InferInsertRow<TSchema[TAccessor]["_columns"], TSchema>;
|
|
257
298
|
} & DisconnectWriteForFk<TFkColumn> : never;
|
|
258
299
|
type OutgoingFkRelationWriteMap<TSchema extends Record<string, TableDef>, TColumns extends Record<string, ColumnDef>> = {
|
|
259
300
|
[K in keyof TColumns & string as TColumns[K] extends FkBuilder ? TColumns[K]["_meta"] extends FkMeta ? TColumns[K]["_meta"] extends {
|
|
260
301
|
as: infer As extends string;
|
|
261
302
|
target: `${infer Sql}.${string}`;
|
|
262
|
-
} ? 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;
|
|
303
|
+
} ? SqlNameToAccessor<TSchema, Sql> extends keyof TSchema & string ? FkRelationName<As, K> : 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;
|
|
263
304
|
};
|
|
264
305
|
type M2MRelationWriteForAccessor<TSchema extends Record<string, TableDef>, TTargetAccessor extends keyof TSchema & string> = TTargetAccessor extends keyof TSchema & string ? {
|
|
265
|
-
connect?: ConnectInput<TSchema[TTargetAccessor]["_columns"]>[];
|
|
266
|
-
disconnect?: true | ConnectInput<TSchema[TTargetAccessor]["_columns"]>[];
|
|
267
|
-
delete?: true | ConnectInput<TSchema[TTargetAccessor]["_columns"]>[];
|
|
268
|
-
set?: ConnectInput<TSchema[TTargetAccessor]["_columns"]>[];
|
|
269
|
-
connectOrCreate?: ConnectOrCreateItem<TSchema[TTargetAccessor]["_columns"]>[];
|
|
306
|
+
connect?: ConnectInput<TSchema[TTargetAccessor]["_columns"], TSchema>[];
|
|
307
|
+
disconnect?: true | ConnectInput<TSchema[TTargetAccessor]["_columns"], TSchema>[];
|
|
308
|
+
delete?: true | ConnectInput<TSchema[TTargetAccessor]["_columns"], TSchema>[];
|
|
309
|
+
set?: ConnectInput<TSchema[TTargetAccessor]["_columns"], TSchema>[];
|
|
310
|
+
connectOrCreate?: ConnectOrCreateItem<TSchema[TTargetAccessor]["_columns"], TSchema>[];
|
|
270
311
|
} : never;
|
|
312
|
+
type InlineM2MWriteRelationEntry<TSchema extends Record<string, TableDef>, C extends ColumnDef, K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends infer TTarget extends keyof TSchema & string ? {
|
|
313
|
+
[P in M2MNameOf<K, C>]?: M2MRelationWriteForAccessor<TSchema, TTarget>;
|
|
314
|
+
} : never : never;
|
|
315
|
+
export type InlineM2MWriteMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
316
|
+
[K in keyof TSchema[TAccessor]["_columns"]]: InlineM2MWriteRelationEntry<TSchema, TSchema[TAccessor]["_columns"][K], K & string>;
|
|
317
|
+
}[keyof TSchema[TAccessor]["_columns"]]>;
|
|
318
|
+
type InlineM2MInverseWriteRelationEntry<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string, TSourceAccessor extends keyof TSchema & string, C extends ColumnDef, K extends string> = [C] extends [ManyToManyExtra] ? M2MTargetOf<C> extends TAccessor ? {
|
|
319
|
+
[P in M2MInverseOf<TSourceAccessor, C>]?: M2MRelationWriteForAccessor<TSchema, TSourceAccessor>;
|
|
320
|
+
} : never : never;
|
|
321
|
+
export type InlineM2MInverseWriteMap<TSchema extends Record<string, TableDef>, TAccessor extends keyof TSchema & string> = MergeRelationUnion<{
|
|
322
|
+
[S in keyof TSchema & string]: MergeRelationUnion<{
|
|
323
|
+
[K in keyof TSchema[S]["_columns"]]: InlineM2MInverseWriteRelationEntry<TSchema, TAccessor, S, TSchema[S]["_columns"][K], K & string>;
|
|
324
|
+
}[keyof TSchema[S]["_columns"]]>;
|
|
325
|
+
}[keyof TSchema & string]>;
|
|
271
326
|
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 ? {
|
|
272
327
|
[P in Target]?: M2MRelationWriteForAccessor<TSchema, Target>;
|
|
273
328
|
} : never;
|
|
@@ -278,8 +333,8 @@ type JunctionM2MRelationWriteMap<TSchema extends Record<string, TableDef>, TAcce
|
|
|
278
333
|
[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;
|
|
279
334
|
}[keyof TSchema & string]>;
|
|
280
335
|
/** Typed relation writes for create. */
|
|
281
|
-
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>>;
|
|
336
|
+
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> & InlineM2MWriteMap<TSchema, TAccessor> & InlineM2MInverseWriteMap<TSchema, TAccessor>>;
|
|
282
337
|
/** Typed relation writes for update. */
|
|
283
|
-
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>>;
|
|
338
|
+
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> & InlineM2MWriteMap<TSchema, TAccessor> & InlineM2MInverseWriteMap<TSchema, TAccessor>>;
|
|
284
339
|
export type { NestedCreateInput } from "./nested-relation-types.js";
|
|
285
340
|
//# 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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"}
|