@prisma-next/sql-orm-lane 0.3.0-dev.4 → 0.3.0-dev.5

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.
Files changed (82) hide show
  1. package/dist/exports/orm.d.ts +3 -5
  2. package/dist/exports/orm.d.ts.map +1 -0
  3. package/dist/index.d.ts +4 -42
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/mutations/delete-builder.d.ts +9 -0
  6. package/dist/mutations/delete-builder.d.ts.map +1 -0
  7. package/dist/mutations/insert-builder.d.ts +7 -0
  8. package/dist/mutations/insert-builder.d.ts.map +1 -0
  9. package/dist/mutations/update-builder.d.ts +9 -0
  10. package/dist/mutations/update-builder.d.ts.map +1 -0
  11. package/dist/orm/builder.d.ts +38 -0
  12. package/dist/orm/builder.d.ts.map +1 -0
  13. package/dist/orm/capabilities.d.ts +3 -0
  14. package/dist/orm/capabilities.d.ts.map +1 -0
  15. package/dist/orm/context.d.ts +5 -0
  16. package/dist/orm/context.d.ts.map +1 -0
  17. package/dist/orm/state.d.ts +45 -0
  18. package/dist/orm/state.d.ts.map +1 -0
  19. package/dist/orm-include-child.d.ts +35 -0
  20. package/dist/orm-include-child.d.ts.map +1 -0
  21. package/dist/orm-relation-filter.d.ts +19 -0
  22. package/dist/orm-relation-filter.d.ts.map +1 -0
  23. package/dist/{orm-DAnGd7z2.d.ts → orm-types.d.ts} +16 -27
  24. package/dist/orm-types.d.ts.map +1 -0
  25. package/dist/orm.d.ts +5 -0
  26. package/dist/orm.d.ts.map +1 -0
  27. package/dist/plan/lowering.d.ts +2 -0
  28. package/dist/plan/lowering.d.ts.map +1 -0
  29. package/dist/plan/plan-assembly.d.ts +24 -0
  30. package/dist/plan/plan-assembly.d.ts.map +1 -0
  31. package/dist/plan/result-typing.d.ts +2 -0
  32. package/dist/plan/result-typing.d.ts.map +1 -0
  33. package/dist/relations/include-plan.d.ts +38 -0
  34. package/dist/relations/include-plan.d.ts.map +1 -0
  35. package/dist/selection/join.d.ts +3 -0
  36. package/dist/selection/join.d.ts.map +1 -0
  37. package/dist/selection/ordering.d.ts +11 -0
  38. package/dist/selection/ordering.d.ts.map +1 -0
  39. package/dist/selection/pagination.d.ts +6 -0
  40. package/dist/selection/pagination.d.ts.map +1 -0
  41. package/dist/selection/predicates.d.ts +10 -0
  42. package/dist/selection/predicates.d.ts.map +1 -0
  43. package/dist/selection/projection.d.ts +28 -0
  44. package/dist/selection/projection.d.ts.map +1 -0
  45. package/dist/selection/select-builder.d.ts +22 -0
  46. package/dist/selection/select-builder.d.ts.map +1 -0
  47. package/dist/types/internal.d.ts +4 -0
  48. package/dist/types/internal.d.ts.map +1 -0
  49. package/dist/utils/ast.d.ts +2 -0
  50. package/dist/utils/ast.d.ts.map +1 -0
  51. package/dist/utils/errors.d.ts +29 -0
  52. package/dist/utils/errors.d.ts.map +1 -0
  53. package/dist/utils/param-descriptor.d.ts +10 -0
  54. package/dist/utils/param-descriptor.d.ts.map +1 -0
  55. package/package.json +12 -11
  56. package/src/exports/orm.ts +12 -0
  57. package/src/index.ts +11 -0
  58. package/src/mutations/delete-builder.ts +87 -0
  59. package/src/mutations/insert-builder.ts +148 -0
  60. package/src/mutations/update-builder.ts +141 -0
  61. package/src/orm/builder.ts +744 -0
  62. package/src/orm/capabilities.ts +14 -0
  63. package/src/orm/context.ts +10 -0
  64. package/src/orm/state.ts +52 -0
  65. package/src/orm-include-child.ts +169 -0
  66. package/src/orm-relation-filter.ts +93 -0
  67. package/src/orm-types.ts +271 -0
  68. package/src/orm.ts +51 -0
  69. package/src/plan/lowering.ts +1 -0
  70. package/src/plan/plan-assembly.ts +297 -0
  71. package/src/plan/result-typing.ts +1 -0
  72. package/src/relations/include-plan.ts +324 -0
  73. package/src/selection/join.ts +13 -0
  74. package/src/selection/ordering.ts +52 -0
  75. package/src/selection/pagination.ts +11 -0
  76. package/src/selection/predicates.ts +120 -0
  77. package/src/selection/projection.ts +136 -0
  78. package/src/selection/select-builder.ts +82 -0
  79. package/src/types/internal.ts +3 -0
  80. package/src/utils/ast.ts +12 -0
  81. package/src/utils/errors.ts +130 -0
  82. package/src/utils/param-descriptor.ts +19 -0
@@ -1,5 +1,3 @@
1
- export { M as ModelColumnAccessor, a as OrmBuilderOptions, O as OrmModelBuilder, d as OrmRegistry, e as OrmRelationAccessor, f as OrmRelationFilterBuilder, b as OrmWhereProperty, o as orm } from '../orm-DAnGd7z2.js';
2
- import '@prisma-next/sql-contract/types';
3
- import '@prisma-next/sql-relational-core/plan';
4
- import '@prisma-next/sql-relational-core/query-lane-context';
5
- import '@prisma-next/sql-relational-core/types';
1
+ export { orm } from '../orm';
2
+ export type { IncludeAccumulator, ModelColumnAccessor, OrmBuilderOptions, OrmIncludeAccessor, OrmModelBuilder, OrmRegistry, OrmRelationAccessor, OrmRelationFilterBuilder, OrmWhereProperty, } from '../orm-types';
3
+ //# sourceMappingURL=orm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orm.d.ts","sourceRoot":"","sources":["../../src/exports/orm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,YAAY,EACV,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,WAAW,EACX,mBAAmB,EACnB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,cAAc,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,42 +1,4 @@
1
- import { O as OrmModelBuilder, a as OrmBuilderOptions, b as OrmWhereProperty, c as OrmIncludeAccessor, M as ModelColumnAccessor } from './orm-DAnGd7z2.js';
2
- export { d as OrmRegistry, e as OrmRelationAccessor, f as OrmRelationFilterBuilder, o as orm } from './orm-DAnGd7z2.js';
3
- import { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
4
- import { SqlQueryPlan } from '@prisma-next/sql-relational-core/plan';
5
- import { OrderBuilder, AnyColumnBuilder, NestedProjection, InferNestedProjectionRow, BuildOptions, AnyBinaryBuilder } from '@prisma-next/sql-relational-core/types';
6
- import '@prisma-next/sql-relational-core/query-lane-context';
7
-
8
- declare class OrmModelBuilderImpl<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
9
- output: unknown;
10
- }> = Record<string, never>, ModelName extends string = string, Includes extends Record<string, unknown> = Record<string, never>, Row = unknown> implements OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row> {
11
- private readonly context;
12
- private readonly contract;
13
- private readonly modelName;
14
- private table;
15
- private wherePredicate;
16
- private relationFilters;
17
- private includes;
18
- private orderByExpr;
19
- private limitValue;
20
- private offsetValue;
21
- private projection;
22
- constructor(options: OrmBuilderOptions<TContract>, modelName: ModelName);
23
- get where(): OrmWhereProperty<TContract, CodecTypes, ModelName, Includes, Row>;
24
- get include(): OrmIncludeAccessor<TContract, CodecTypes, ModelName, Includes, Row>;
25
- private _createIncludeProxy;
26
- private _applyInclude;
27
- private _createRelatedProxy;
28
- private _applyRelationFilter;
29
- orderBy(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => OrderBuilder): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
30
- take(n: number): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
31
- skip(n: number): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
32
- select<Projection extends Record<string, AnyColumnBuilder | boolean | NestedProjection>>(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => Projection): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, InferNestedProjectionRow<Projection, CodecTypes, Includes>>;
33
- findMany(options?: BuildOptions): SqlQueryPlan<Row>;
34
- findFirst(options?: BuildOptions): SqlQueryPlan<Row>;
35
- findUnique(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, options?: BuildOptions): SqlQueryPlan<Row>;
36
- create(data: Record<string, unknown>, options?: BuildOptions): SqlQueryPlan<number>;
37
- update(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, data: Record<string, unknown>, options?: BuildOptions): SqlQueryPlan<number>;
38
- delete(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, options?: BuildOptions): SqlQueryPlan<number>;
39
- private _getModelAccessor;
40
- }
41
-
42
- export { ModelColumnAccessor, OrmBuilderOptions, OrmModelBuilder, OrmModelBuilderImpl, OrmWhereProperty };
1
+ export { orm } from './orm';
2
+ export { OrmModelBuilderImpl } from './orm/builder';
3
+ export type { ModelColumnAccessor, OrmBuilderOptions, OrmModelBuilder, OrmRegistry, OrmRelationAccessor, OrmRelationFilterBuilder, OrmWhereProperty, } from './orm-types';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACpD,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,mBAAmB,EACnB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,aAAa,CAAC"}
@@ -0,0 +1,9 @@
1
+ import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
2
+ import type { SqlQueryPlan } from '@prisma-next/sql-relational-core/plan';
3
+ import type { AnyBinaryBuilder, BuildOptions } from '@prisma-next/sql-relational-core/types';
4
+ import type { OrmContext } from '../orm/context';
5
+ import type { ModelColumnAccessor } from '../orm-types';
6
+ export declare function buildDeletePlan<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
7
+ output: unknown;
8
+ }>, ModelName extends string>(context: OrmContext<TContract>, modelName: ModelName, where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, getModelAccessor: () => ModelColumnAccessor<TContract, CodecTypes, ModelName>, options?: BuildOptions): SqlQueryPlan<number>;
9
+ //# sourceMappingURL=delete-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-builder.d.ts","sourceRoot":"","sources":["../../src/mutations/delete-builder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAC7F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAKxD,wBAAgB,eAAe,CAC7B,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACzC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,EACtD,SAAS,SAAS,MAAM,EAExB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,EAC9B,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,KAAK,gBAAgB,EACzF,gBAAgB,EAAE,MAAM,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,EAC7E,OAAO,CAAC,EAAE,YAAY,GACrB,YAAY,CAAC,MAAM,CAAC,CAkEtB"}
@@ -0,0 +1,7 @@
1
+ import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
2
+ import type { SqlQueryPlan } from '@prisma-next/sql-relational-core/plan';
3
+ import type { BuildOptions, ParamPlaceholder } from '@prisma-next/sql-relational-core/types';
4
+ import type { OrmContext } from '../orm/context';
5
+ export declare function convertModelFieldsToColumns<TContract extends SqlContract<SqlStorage>>(contract: TContract, modelName: string, fields: Record<string, unknown>): Record<string, ParamPlaceholder>;
6
+ export declare function buildInsertPlan<TContract extends SqlContract<SqlStorage>>(context: OrmContext<TContract>, modelName: string, data: Record<string, unknown>, options?: BuildOptions): SqlQueryPlan<number>;
7
+ //# sourceMappingURL=insert-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insert-builder.d.ts","sourceRoot":"","sources":["../../src/mutations/insert-builder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAG/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC7F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAWjD,wBAAgB,2BAA2B,CAAC,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACnF,QAAQ,EAAE,SAAS,EACnB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CA8BlC;AAED,wBAAgB,eAAe,CAAC,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACvE,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,EAC9B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,CAAC,EAAE,YAAY,GACrB,YAAY,CAAC,MAAM,CAAC,CAyFtB"}
@@ -0,0 +1,9 @@
1
+ import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
2
+ import type { SqlQueryPlan } from '@prisma-next/sql-relational-core/plan';
3
+ import type { AnyBinaryBuilder, BuildOptions } from '@prisma-next/sql-relational-core/types';
4
+ import type { OrmContext } from '../orm/context';
5
+ import type { ModelColumnAccessor } from '../orm-types';
6
+ export declare function buildUpdatePlan<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
7
+ output: unknown;
8
+ }>, ModelName extends string>(context: OrmContext<TContract>, modelName: ModelName, where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, getModelAccessor: () => ModelColumnAccessor<TContract, CodecTypes, ModelName>, data: Record<string, unknown>, options?: BuildOptions): SqlQueryPlan<number>;
9
+ //# sourceMappingURL=update-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-builder.d.ts","sourceRoot":"","sources":["../../src/mutations/update-builder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAC7F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAcxD,wBAAgB,eAAe,CAC7B,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACzC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,EACtD,SAAS,SAAS,MAAM,EAExB,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,EAC9B,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,KAAK,gBAAgB,EACzF,gBAAgB,EAAE,MAAM,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,EAC7E,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,CAAC,EAAE,YAAY,GACrB,YAAY,CAAC,MAAM,CAAC,CA6GtB"}
@@ -0,0 +1,38 @@
1
+ import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
2
+ import type { SqlQueryPlan } from '@prisma-next/sql-relational-core/plan';
3
+ import type { AnyBinaryBuilder, AnyColumnBuilder, BuildOptions, InferNestedProjectionRow, NestedProjection, OrderBuilder } from '@prisma-next/sql-relational-core/types';
4
+ import type { ModelColumnAccessor, OrmBuilderOptions, OrmIncludeAccessor, OrmModelBuilder, OrmWhereProperty } from '../orm-types';
5
+ export declare class OrmModelBuilderImpl<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
6
+ output: unknown;
7
+ }> = Record<string, never>, ModelName extends string = string, Includes extends Record<string, unknown> = Record<string, never>, Row = unknown> implements OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row> {
8
+ private readonly context;
9
+ private readonly contract;
10
+ private readonly modelName;
11
+ private table;
12
+ private wherePredicate;
13
+ private relationFilters;
14
+ private includes;
15
+ private orderByExpr;
16
+ private limitValue;
17
+ private offsetValue;
18
+ private projection;
19
+ constructor(options: OrmBuilderOptions<TContract>, modelName: ModelName);
20
+ get where(): OrmWhereProperty<TContract, CodecTypes, ModelName, Includes, Row>;
21
+ get include(): OrmIncludeAccessor<TContract, CodecTypes, ModelName, Includes, Row>;
22
+ private _createIncludeProxy;
23
+ private _applyInclude;
24
+ private _createRelatedProxy;
25
+ private _applyRelationFilter;
26
+ orderBy(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => OrderBuilder): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
27
+ take(n: number): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
28
+ skip(n: number): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
29
+ select<Projection extends Record<string, AnyColumnBuilder | boolean | NestedProjection>>(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => Projection): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, InferNestedProjectionRow<Projection, CodecTypes, Includes>>;
30
+ findMany(options?: BuildOptions): SqlQueryPlan<Row>;
31
+ findFirst(options?: BuildOptions): SqlQueryPlan<Row>;
32
+ findUnique(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, options?: BuildOptions): SqlQueryPlan<Row>;
33
+ create(data: Record<string, unknown>, options?: BuildOptions): SqlQueryPlan<number>;
34
+ update(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, data: Record<string, unknown>, options?: BuildOptions): SqlQueryPlan<number>;
35
+ delete(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, options?: BuildOptions): SqlQueryPlan<number>;
36
+ private _getModelAccessor;
37
+ }
38
+ //# sourceMappingURL=builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../../src/orm/builder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
2
+ export declare function checkIncludeCapabilities(contract: SqlContract<SqlStorage>): void;
3
+ //# sourceMappingURL=capabilities.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../../src/orm/capabilities.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAG/E,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,GAAG,IAAI,CAUhF"}
@@ -0,0 +1,5 @@
1
+ import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
2
+ import type { QueryLaneContext } from '@prisma-next/sql-relational-core/query-lane-context';
3
+ export type OrmContext<TContract extends SqlContract<SqlStorage>> = QueryLaneContext<TContract>;
4
+ export declare function createOrmContext<TContract extends SqlContract<SqlStorage>>(context: QueryLaneContext<TContract>): OrmContext<TContract>;
5
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/orm/context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qDAAqD,CAAC;AAE5F,MAAM,MAAM,UAAU,CAAC,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,IAAI,gBAAgB,CAAC,SAAS,CAAC,CAAC;AAEhG,wBAAgB,gBAAgB,CAAC,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACxE,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,GACnC,UAAU,CAAC,SAAS,CAAC,CAEvB"}
@@ -0,0 +1,45 @@
1
+ import type { TableRef } from '@prisma-next/sql-relational-core/ast';
2
+ import type { AnyBinaryBuilder, AnyColumnBuilder, AnyOrderBuilder, NestedProjection } from '@prisma-next/sql-relational-core/types';
3
+ export interface RelationFilter {
4
+ relationName: string;
5
+ childModelName: string;
6
+ filterType: 'some' | 'none' | 'every';
7
+ childWhere: AnyBinaryBuilder | undefined;
8
+ relation: {
9
+ to: string;
10
+ cardinality: string;
11
+ on: {
12
+ parentCols: readonly string[];
13
+ childCols: readonly string[];
14
+ };
15
+ };
16
+ }
17
+ export interface OrmIncludeState {
18
+ relationName: string;
19
+ childModelName: string;
20
+ childTable: TableRef;
21
+ childWhere: AnyBinaryBuilder | undefined;
22
+ childOrderBy: AnyOrderBuilder | undefined;
23
+ childLimit: number | undefined;
24
+ childProjection: Record<string, AnyColumnBuilder | boolean | NestedProjection> | undefined;
25
+ alias: string;
26
+ relation: {
27
+ to: string;
28
+ cardinality: string;
29
+ on: {
30
+ parentCols: readonly string[];
31
+ childCols: readonly string[];
32
+ };
33
+ };
34
+ }
35
+ export interface OrmBuilderState {
36
+ table: TableRef;
37
+ wherePredicate: AnyBinaryBuilder | undefined;
38
+ relationFilters: RelationFilter[];
39
+ includes: OrmIncludeState[];
40
+ orderByExpr: AnyOrderBuilder | undefined;
41
+ limitValue: number | undefined;
42
+ offsetValue: number | undefined;
43
+ projection: Record<string, AnyColumnBuilder | boolean | NestedProjection> | undefined;
44
+ }
45
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/orm/state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AACrE,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,gBAAgB,EACjB,MAAM,wCAAwC,CAAC;AAEhD,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACtC,UAAU,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACzC,QAAQ,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX,WAAW,EAAE,MAAM,CAAC;QACpB,EAAE,EAAE;YACF,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;YAC9B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;SAC9B,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,QAAQ,CAAC;IACrB,UAAU,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACzC,YAAY,EAAE,eAAe,GAAG,SAAS,CAAC;IAC1C,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,GAAG,gBAAgB,CAAC,GAAG,SAAS,CAAC;IAC3F,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX,WAAW,EAAE,MAAM,CAAC;QACpB,EAAE,EAAE;YACF,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;YAC9B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAC;SAC9B,CAAC;KACH,CAAC;CACH;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,QAAQ,CAAC;IAChB,cAAc,EAAE,gBAAgB,GAAG,SAAS,CAAC;IAC7C,eAAe,EAAE,cAAc,EAAE,CAAC;IAClC,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,WAAW,EAAE,eAAe,GAAG,SAAS,CAAC;IACzC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,GAAG,gBAAgB,CAAC,GAAG,SAAS,CAAC;CACvF"}
@@ -0,0 +1,35 @@
1
+ import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
2
+ import type { AnyBinaryBuilder, AnyColumnBuilder, AnyOrderBuilder, InferNestedProjectionRow, NestedProjection } from '@prisma-next/sql-relational-core/types';
3
+ import type { ModelColumnAccessor, OrmBuilderOptions } from './orm-types';
4
+ export interface OrmIncludeChildBuilder<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
5
+ output: unknown;
6
+ }>, ChildModelName extends string, ChildRow = unknown> {
7
+ where(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ChildModelName>) => AnyBinaryBuilder): OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, ChildRow>;
8
+ orderBy(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ChildModelName>) => AnyOrderBuilder): OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, ChildRow>;
9
+ take(n: number): OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, ChildRow>;
10
+ select<Projection extends Record<string, AnyColumnBuilder | boolean | NestedProjection>>(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ChildModelName>) => Projection): OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, InferNestedProjectionRow<Projection, CodecTypes>>;
11
+ }
12
+ export declare class OrmIncludeChildBuilderImpl<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
13
+ output: unknown;
14
+ }>, ChildModelName extends string, ChildRow = unknown> implements OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, ChildRow> {
15
+ private readonly context;
16
+ private readonly contract;
17
+ private readonly childModelName;
18
+ private childWhere;
19
+ private childOrderBy;
20
+ private childLimit;
21
+ private childProjection;
22
+ constructor(options: OrmBuilderOptions<TContract>, childModelName: ChildModelName);
23
+ where(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ChildModelName>) => AnyBinaryBuilder): OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, ChildRow>;
24
+ orderBy(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ChildModelName>) => AnyOrderBuilder): OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, ChildRow>;
25
+ take(n: number): OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, ChildRow>;
26
+ select<Projection extends Record<string, AnyColumnBuilder | boolean | NestedProjection>>(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ChildModelName>) => Projection): OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, InferNestedProjectionRow<Projection, CodecTypes>>;
27
+ getState(): {
28
+ childWhere?: AnyBinaryBuilder;
29
+ childOrderBy?: AnyOrderBuilder;
30
+ childLimit?: number;
31
+ childProjection?: Record<string, AnyColumnBuilder | boolean | NestedProjection>;
32
+ };
33
+ private _getModelAccessor;
34
+ }
35
+ //# sourceMappingURL=orm-include-child.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orm-include-child.d.ts","sourceRoot":"","sources":["../src/orm-include-child.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
2
+ import type { AnyBinaryBuilder } from '@prisma-next/sql-relational-core/types';
3
+ import type { ModelColumnAccessor, OrmBuilderOptions, OrmRelationFilterBuilder } from './orm-types';
4
+ export declare class OrmRelationFilterBuilderImpl<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
5
+ output: unknown;
6
+ }>, ChildModelName extends string> implements OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName> {
7
+ private readonly context;
8
+ private readonly contract;
9
+ private readonly childModelName;
10
+ private wherePredicate;
11
+ private modelAccessor;
12
+ constructor(options: OrmBuilderOptions<TContract>, childModelName: ChildModelName);
13
+ where(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ChildModelName>) => AnyBinaryBuilder): OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>;
14
+ getWherePredicate(): AnyBinaryBuilder | undefined;
15
+ getChildModelName(): ChildModelName;
16
+ getModelAccessor(): ModelColumnAccessor<TContract, CodecTypes, ChildModelName>;
17
+ private _getModelAccessor;
18
+ }
19
+ //# sourceMappingURL=orm-relation-filter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orm-relation-filter.d.ts","sourceRoot":"","sources":["../src/orm-relation-filter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAG/E,OAAO,KAAK,EAAE,gBAAgB,EAAoB,MAAM,wCAAwC,CAAC;AACjG,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEpG,qBAAa,4BAA4B,CACvC,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACzC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,EACtD,cAAc,SAAS,MAAM,CAC7B,YAAW,wBAAwB,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC;IAE1E,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8B;IACtD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAY;IACrC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAiB;IAChD,OAAO,CAAC,cAAc,CAA2C;IACjE,OAAO,CAAC,aAAa,CACT;gBAEA,OAAO,EAAE,iBAAiB,CAAC,SAAS,CAAC,EAAE,cAAc,EAAE,cAAc;IAOjF,KAAK,CACH,EAAE,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC,KAAK,gBAAgB,GAC1F,wBAAwB,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC;IAYlE,iBAAiB,IAAI,gBAAgB,GAAG,SAAS;IAIjD,iBAAiB,IAAI,cAAc;IAInC,gBAAgB,IAAI,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC;IAU9E,OAAO,CAAC,iBAAiB;CAiC1B"}
@@ -1,18 +1,9 @@
1
- import { SqlContract, SqlStorage, ExtractCodecTypes } from '@prisma-next/sql-contract/types';
2
- import { SqlQueryPlan } from '@prisma-next/sql-relational-core/plan';
3
- import { QueryLaneContext } from '@prisma-next/sql-relational-core/query-lane-context';
4
- import { AnyBinaryBuilder, AnyOrderBuilder, AnyColumnBuilder, NestedProjection, InferNestedProjectionRow, ColumnBuilder, ComputeColumnJsType, BuildOptions } from '@prisma-next/sql-relational-core/types';
5
-
6
- interface OrmIncludeChildBuilder<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
7
- output: unknown;
8
- }>, ChildModelName extends string, ChildRow = unknown> {
9
- where(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ChildModelName>) => AnyBinaryBuilder): OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, ChildRow>;
10
- orderBy(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ChildModelName>) => AnyOrderBuilder): OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, ChildRow>;
11
- take(n: number): OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, ChildRow>;
12
- select<Projection extends Record<string, AnyColumnBuilder | boolean | NestedProjection>>(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ChildModelName>) => Projection): OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, InferNestedProjectionRow<Projection, CodecTypes>>;
13
- }
14
-
15
- interface OrmBuilderOptions<TContract extends SqlContract<SqlStorage>> {
1
+ import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
2
+ import type { SqlQueryPlan } from '@prisma-next/sql-relational-core/plan';
3
+ import type { QueryLaneContext } from '@prisma-next/sql-relational-core/query-lane-context';
4
+ import type { AnyBinaryBuilder, AnyColumnBuilder, AnyOrderBuilder, BuildOptions, ColumnBuilder, ComputeColumnJsType, InferNestedProjectionRow, NestedProjection } from '@prisma-next/sql-relational-core/types';
5
+ import type { OrmIncludeChildBuilder } from './orm-include-child';
6
+ export interface OrmBuilderOptions<TContract extends SqlContract<SqlStorage>> {
16
7
  readonly context: QueryLaneContext<TContract>;
17
8
  }
18
9
  type ModelName<TContract extends SqlContract<SqlStorage>> = keyof TContract['models'] & string;
@@ -26,29 +17,29 @@ type FieldToColumnMapSafe<TContract extends SqlContract<SqlStorage>, ModelName e
26
17
  type FieldColumnName<TContract extends SqlContract<SqlStorage>, ModelName extends string, FieldName extends string> = (FieldToColumnMapSafe<TContract, ModelName> extends never ? FieldName : FieldName extends keyof FieldToColumnMapSafe<TContract, ModelName> ? FieldToColumnMapSafe<TContract, ModelName>[FieldName] : FieldName) & string;
27
18
  type ModelColumnMeta<TContract extends SqlContract<SqlStorage>, ModelName extends string, ColumnName extends string> = ModelToTableName<TContract, ModelName> extends infer TableName extends string ? TableName extends keyof TContract['storage']['tables'] ? ColumnName extends keyof TContract['storage']['tables'][TableName]['columns'] ? TContract['storage']['tables'][TableName]['columns'][ColumnName] : never : never : never;
28
19
  type _IndexKeys = string | number | symbol;
29
- type IncludeAccumulator<Includes extends Record<string, unknown>, Key extends string, Value> = {
20
+ export type IncludeAccumulator<Includes extends Record<string, unknown>, Key extends string, Value> = {
30
21
  readonly [K in Exclude<keyof Includes, _IndexKeys> | Key]: K extends Key ? Value : Includes[K];
31
22
  };
32
- type OrmRegistry<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
23
+ export type OrmRegistry<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
33
24
  output: unknown;
34
25
  }> = Record<string, never>> = {
35
26
  readonly [K in ModelName<TContract>]: () => OrmModelBuilder<TContract, CodecTypes, K>;
36
27
  } & {
37
28
  readonly [K in ModelName<TContract> as LowercaseModelName<K>]: () => OrmModelBuilder<TContract, CodecTypes, K>;
38
29
  };
39
- interface OrmRelationFilterBuilder<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
30
+ export interface OrmRelationFilterBuilder<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
40
31
  output: unknown;
41
32
  }>, ChildModelName extends string> {
42
33
  where(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ChildModelName>) => AnyBinaryBuilder): OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>;
43
34
  }
44
- type OrmRelationAccessor<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
35
+ export type OrmRelationAccessor<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
45
36
  output: unknown;
46
37
  }>, ModelName extends string, ChildModelName extends string, Includes extends Record<string, unknown>, Row> = {
47
38
  some(fn: (child: OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>) => OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
48
39
  none(fn: (child: OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>) => OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
49
40
  every(fn: (child: OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>) => OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
50
41
  };
51
- type OrmWhereProperty<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
42
+ export type OrmWhereProperty<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
52
43
  output: unknown;
53
44
  }>, ModelName extends string, Includes extends Record<string, unknown>, Row> = ((fn: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder) => OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>) & {
54
45
  related: ModelRelations<TContract, ModelName> extends Record<string, {
@@ -59,7 +50,7 @@ type OrmWhereProperty<TContract extends SqlContract<SqlStorage>, CodecTypes exte
59
50
  } ? ChildModelName extends string ? OrmRelationAccessor<TContract, CodecTypes, ModelName, ChildModelName, Includes, Row> : never : never;
60
51
  } : Record<string, never> : Record<string, never>;
61
52
  };
62
- type OrmIncludeAccessor<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
53
+ export type OrmIncludeAccessor<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
63
54
  output: unknown;
64
55
  }>, ModelName extends string, Includes extends Record<string, unknown>, Row> = ModelRelations<TContract, ModelName> extends Record<string, {
65
56
  to: infer To;
@@ -68,7 +59,7 @@ type OrmIncludeAccessor<TContract extends SqlContract<SqlStorage>, CodecTypes ex
68
59
  to: infer ChildModelName;
69
60
  } ? ChildModelName extends string ? <ChildRow>(child: (child: OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName>) => OrmIncludeChildBuilder<TContract, CodecTypes, ChildModelName, ChildRow>) => OrmModelBuilder<TContract, CodecTypes, ModelName, IncludeAccumulator<Includes, K & string, ChildRow>, Row> : never : never;
70
61
  } : Record<string, never> : Record<string, never>;
71
- interface OrmModelBuilder<TContract extends SqlContract<SqlStorage> = SqlContract<SqlStorage>, CodecTypes extends Record<string, {
62
+ export interface OrmModelBuilder<TContract extends SqlContract<SqlStorage> = SqlContract<SqlStorage>, CodecTypes extends Record<string, {
72
63
  output: unknown;
73
64
  }> = Record<string, never>, ModelName extends string = string, Includes extends Record<string, unknown> = Record<string, never>, Row = unknown> {
74
65
  where: OrmWhereProperty<TContract, CodecTypes, ModelName, Includes, Row>;
@@ -84,14 +75,12 @@ interface OrmModelBuilder<TContract extends SqlContract<SqlStorage> = SqlContrac
84
75
  update(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, data: Record<string, unknown>, options?: BuildOptions): SqlQueryPlan<number>;
85
76
  delete(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, options?: BuildOptions): SqlQueryPlan<number>;
86
77
  }
87
- type ModelColumnAccessor<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
78
+ export type ModelColumnAccessor<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
88
79
  output: unknown;
89
80
  }>, ModelName extends string> = TContract['models'][ModelName] extends {
90
81
  fields: infer Fields;
91
82
  } ? Fields extends Record<string, unknown> ? {
92
83
  readonly [K in keyof Fields & string]: ColumnBuilder<K, ModelColumnMeta<TContract, ModelName, FieldColumnName<TContract, ModelName, K>>, ComputeColumnJsType<TContract, ModelToTableName<TContract, ModelName>, FieldColumnName<TContract, ModelName, K>, ModelColumnMeta<TContract, ModelName, FieldColumnName<TContract, ModelName, K>>, CodecTypes>>;
93
84
  } : never : never;
94
-
95
- declare function orm<TContract extends SqlContract<SqlStorage>>(options: OrmBuilderOptions<TContract>): OrmRegistry<TContract, ExtractCodecTypes<TContract>>;
96
-
97
- export { type ModelColumnAccessor as M, type OrmModelBuilder as O, type OrmBuilderOptions as a, type OrmWhereProperty as b, type OrmIncludeAccessor as c, type OrmRegistry as d, type OrmRelationAccessor as e, type OrmRelationFilterBuilder as f, orm as o };
85
+ export {};
86
+ //# sourceMappingURL=orm-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orm-types.d.ts","sourceRoot":"","sources":["../src/orm-types.ts"],"names":[],"mappings":"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"}
package/dist/orm.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ import type { ExtractCodecTypes, SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
2
+ import type { OrmBuilderOptions, OrmRegistry } from './orm-types';
3
+ export declare function orm<TContract extends SqlContract<SqlStorage>>(options: OrmBuilderOptions<TContract>): OrmRegistry<TContract, ExtractCodecTypes<TContract>>;
4
+ export type { ModelColumnAccessor, OrmBuilderOptions, OrmModelBuilder, OrmRegistry, OrmRelationAccessor, OrmRelationFilterBuilder, OrmWhereProperty, } from './orm-types';
5
+ //# sourceMappingURL=orm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"orm.d.ts","sourceRoot":"","sources":["../src/orm.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElG,OAAO,KAAK,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAIlE,wBAAgB,GAAG,CAAC,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EAC3D,OAAO,EAAE,iBAAiB,CAAC,SAAS,CAAC,GACpC,WAAW,CAAC,SAAS,EAAE,iBAAiB,CAAC,SAAS,CAAC,CAAC,CA8BtD;AAGD,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,mBAAmB,EACnB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,aAAa,CAAC"}
@@ -0,0 +1,2 @@
1
+ export type {};
2
+ //# sourceMappingURL=lowering.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lowering.d.ts","sourceRoot":"","sources":["../../src/plan/lowering.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,CAAC"}
@@ -0,0 +1,24 @@
1
+ import type { ExecutionPlan, ParamDescriptor, PlanMeta } from '@prisma-next/contract/types';
2
+ import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
3
+ import type { BinaryExpr, ExistsExpr, LoweredStatement, SelectAst, TableRef } from '@prisma-next/sql-relational-core/ast';
4
+ import type { AnyOrderBuilder, BinaryBuilder } from '@prisma-next/sql-relational-core/types';
5
+ import type { IncludeState } from '../relations/include-plan';
6
+ import type { ProjectionState } from '../selection/projection';
7
+ export interface MetaBuildArgs {
8
+ readonly contract: SqlContract<SqlStorage>;
9
+ readonly table: TableRef;
10
+ readonly projection: ProjectionState;
11
+ readonly includes?: ReadonlyArray<IncludeState>;
12
+ readonly where?: BinaryBuilder;
13
+ readonly orderBy?: AnyOrderBuilder;
14
+ readonly paramDescriptors: ParamDescriptor[];
15
+ readonly paramCodecs?: Record<string, string>;
16
+ }
17
+ export declare function buildMeta(args: MetaBuildArgs): PlanMeta;
18
+ export declare function createPlan<Row>(ast: SelectAst, lowered: {
19
+ body: LoweredStatement;
20
+ }, paramValues: unknown[], planMeta: PlanMeta): ExecutionPlan<Row>;
21
+ export declare function createPlanWithExists<Row>(ast: SelectAst, combinedWhere: BinaryExpr | ExistsExpr | undefined, lowered: {
22
+ body: LoweredStatement;
23
+ }, paramValues: unknown[], planMeta: PlanMeta): ExecutionPlan<Row>;
24
+ //# sourceMappingURL=plan-assembly.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-assembly.d.ts","sourceRoot":"","sources":["../../src/plan/plan-assembly.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE5F,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EACV,UAAU,EACV,UAAU,EACV,gBAAgB,EAEhB,SAAS,EACT,QAAQ,EACT,MAAM,sCAAsC,CAAC;AAE9C,OAAO,KAAK,EAEV,eAAe,EACf,aAAa,EACd,MAAM,wCAAwC,CAAC;AAOhD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE/D,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC3C,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IAChD,QAAQ,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe,CAAC;IACnC,QAAQ,CAAC,gBAAgB,EAAE,eAAe,EAAE,CAAC;IAC7C,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/C;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,GAAG,QAAQ,CA4NvD;AAED,wBAAgB,UAAU,CAAC,GAAG,EAC5B,GAAG,EAAE,SAAS,EACd,OAAO,EAAE;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,EACnC,WAAW,EAAE,OAAO,EAAE,EACtB,QAAQ,EAAE,QAAQ,GACjB,aAAa,CAAC,GAAG,CAAC,CAUpB;AAED,wBAAgB,oBAAoB,CAAC,GAAG,EACtC,GAAG,EAAE,SAAS,EACd,aAAa,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,EAClD,OAAO,EAAE;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,EACnC,WAAW,EAAE,OAAO,EAAE,EACtB,QAAQ,EAAE,QAAQ,GACjB,aAAa,CAAC,GAAG,CAAC,CAcpB"}
@@ -0,0 +1,2 @@
1
+ export type {};
2
+ //# sourceMappingURL=result-typing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-typing.d.ts","sourceRoot":"","sources":["../../src/plan/result-typing.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,CAAC"}
@@ -0,0 +1,38 @@
1
+ import type { ParamDescriptor } from '@prisma-next/contract/types';
2
+ import type { SqlContract, SqlStorage, StorageColumn } from '@prisma-next/sql-contract/types';
3
+ import type { BinaryExpr, ExistsExpr, IncludeAst, TableRef } from '@prisma-next/sql-relational-core/ast';
4
+ import type { QueryLaneContext } from '@prisma-next/sql-relational-core/query-lane-context';
5
+ import type { AnyBinaryBuilder, AnyOrderBuilder, BuildOptions } from '@prisma-next/sql-relational-core/types';
6
+ import type { OrmIncludeState, RelationFilter } from '../orm/state';
7
+ import { type ProjectionState } from '../selection/projection';
8
+ export interface IncludeState {
9
+ readonly alias: string;
10
+ readonly table: TableRef;
11
+ readonly on: {
12
+ kind: 'join-on';
13
+ left: StorageColumn;
14
+ right: StorageColumn;
15
+ };
16
+ readonly childProjection: ProjectionState;
17
+ readonly childWhere?: AnyBinaryBuilder;
18
+ readonly childOrderBy?: AnyOrderBuilder;
19
+ readonly childLimit?: number;
20
+ }
21
+ interface BuildIncludeAstsInput {
22
+ readonly includes: OrmIncludeState[];
23
+ readonly contract: SqlContract<SqlStorage>;
24
+ readonly context: QueryLaneContext<SqlContract<SqlStorage>>;
25
+ readonly modelName: string;
26
+ readonly paramsMap: Record<string, unknown>;
27
+ readonly paramDescriptors: ParamDescriptor[];
28
+ readonly paramValues: unknown[];
29
+ readonly paramCodecs: Record<string, string>;
30
+ }
31
+ export declare function buildIncludeAsts(input: BuildIncludeAstsInput): {
32
+ includesAst: IncludeAst[];
33
+ includesForMeta: IncludeState[];
34
+ };
35
+ export declare function buildExistsSubqueries(relationFilters: RelationFilter[], contract: SqlContract<SqlStorage>, modelName: string, options?: BuildOptions): ExistsExpr[];
36
+ export declare function combineWhereClauses(mainWhere: BinaryExpr | ExistsExpr | undefined, existsExprs: ExistsExpr[]): BinaryExpr | ExistsExpr | undefined;
37
+ export {};
38
+ //# sourceMappingURL=include-plan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"include-plan.d.ts","sourceRoot":"","sources":["../../src/relations/include-plan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAC9F,OAAO,KAAK,EACV,UAAU,EAEV,UAAU,EACV,UAAU,EAGV,QAAQ,EACT,MAAM,sCAAsC,CAAC;AAE9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qDAAqD,CAAC;AAE5F,OAAO,KAAK,EACV,gBAAgB,EAEhB,eAAe,EACf,YAAY,EAEb,MAAM,wCAAwC,CAAC;AAEhD,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAIpE,OAAO,EAGL,KAAK,eAAe,EACrB,MAAM,yBAAyB,CAAC;AAcjC,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,EAAE,EAAE;QACX,IAAI,EAAE,SAAS,CAAC;QAChB,IAAI,EAAE,aAAa,CAAC;QACpB,KAAK,EAAE,aAAa,CAAC;KACtB,CAAC;IACF,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IACvC,QAAQ,CAAC,YAAY,CAAC,EAAE,eAAe,CAAC;IACxC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,QAAQ,EAAE,eAAe,EAAE,CAAC;IACrC,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC;IAC3C,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC;IAC5D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,QAAQ,CAAC,gBAAgB,EAAE,eAAe,EAAE,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,OAAO,EAAE,CAAC;IAChC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC9C;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG;IAC9D,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,eAAe,EAAE,YAAY,EAAE,CAAC;CACjC,CAiJA;AAED,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,cAAc,EAAE,EACjC,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,EACjC,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,YAAY,GACrB,UAAU,EAAE,CAmFd;AAED,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,EAC9C,WAAW,EAAE,UAAU,EAAE,GACxB,UAAU,GAAG,UAAU,GAAG,SAAS,CAWrC"}
@@ -0,0 +1,3 @@
1
+ import type { JoinOnExpr } from '@prisma-next/sql-relational-core/ast';
2
+ export declare function buildJoinOnExpr(parentTableName: string, parentColName: string, childTableName: string, childColName: string): JoinOnExpr;
3
+ //# sourceMappingURL=join.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"join.d.ts","sourceRoot":"","sources":["../../src/selection/join.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAGvE,wBAAgB,eAAe,CAC7B,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,GACnB,UAAU,CAIZ"}
@@ -0,0 +1,11 @@
1
+ import type { ColumnRef, Direction, OperationExpr } from '@prisma-next/sql-relational-core/ast';
2
+ import type { AnyOrderBuilder } from '@prisma-next/sql-relational-core/types';
3
+ export declare function buildOrderByClause(orderBy: AnyOrderBuilder | undefined): ReadonlyArray<{
4
+ expr: ColumnRef | OperationExpr;
5
+ dir: Direction;
6
+ }> | undefined;
7
+ export declare function buildChildOrderByClause(orderBy: AnyOrderBuilder | undefined): ReadonlyArray<{
8
+ expr: ColumnRef | OperationExpr;
9
+ dir: Direction;
10
+ }> | undefined;
11
+ //# sourceMappingURL=ordering.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ordering.d.ts","sourceRoot":"","sources":["../../src/selection/ordering.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;AAChG,OAAO,KAAK,EAAE,eAAe,EAAgB,MAAM,wCAAwC,CAAC;AAO5F,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,eAAe,GAAG,SAAS,GACnE,aAAa,CAAC;IACZ,IAAI,EAAE,SAAS,GAAG,aAAa,CAAC;IAChC,GAAG,EAAE,SAAS,CAAC;CAChB,CAAC,GACF,SAAS,CAcZ;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,eAAe,GAAG,SAAS,GACxE,aAAa,CAAC;IACZ,IAAI,EAAE,SAAS,GAAG,aAAa,CAAC;IAChC,GAAG,EAAE,SAAS,CAAC;CAChB,CAAC,GACF,SAAS,CAgBZ"}
@@ -0,0 +1,6 @@
1
+ export interface PaginationState {
2
+ limit?: number;
3
+ offset?: number;
4
+ }
5
+ export declare function createPaginationState(limit?: number, offset?: number): PaginationState;
6
+ //# sourceMappingURL=pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../src/selection/pagination.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,qBAAqB,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,eAAe,CAKtF"}
@@ -0,0 +1,10 @@
1
+ import type { ParamDescriptor } from '@prisma-next/contract/types';
2
+ import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
3
+ import type { BinaryExpr } from '@prisma-next/sql-relational-core/ast';
4
+ import type { BinaryBuilder } from '@prisma-next/sql-relational-core/types';
5
+ export declare function buildWhereExpr(where: BinaryBuilder, contract: SqlContract<SqlStorage>, paramsMap: Record<string, unknown>, descriptors: ParamDescriptor[], values: unknown[]): {
6
+ expr: BinaryExpr;
7
+ codecId?: string;
8
+ paramName: string;
9
+ };
10
+ //# sourceMappingURL=predicates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"predicates.d.ts","sourceRoot":"","sources":["../../src/selection/predicates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAiB,MAAM,iCAAiC,CAAC;AAC9F,OAAO,KAAK,EACV,UAAU,EAIX,MAAM,sCAAsC,CAAC;AAE9C,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,wCAAwC,CAAC;AAe9F,wBAAgB,cAAc,CAC5B,KAAK,EAAE,aAAa,EACpB,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,EACjC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,WAAW,EAAE,eAAe,EAAE,EAC9B,MAAM,EAAE,OAAO,EAAE,GAChB;IACD,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,CAqFA"}