@prisma-next/sql-orm-lane 0.3.0-pr.94.2 → 0.3.0-pr.95.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.
Files changed (70) hide show
  1. package/dist/chunk-C4EECZ4E.js +1723 -0
  2. package/dist/chunk-C4EECZ4E.js.map +1 -0
  3. package/dist/exports/orm.d.ts +3 -0
  4. package/dist/exports/orm.d.ts.map +1 -0
  5. package/dist/exports/orm.js +7 -0
  6. package/dist/exports/orm.js.map +1 -0
  7. package/dist/index.d.ts +4 -0
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.js +9 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/mutations/delete-builder.d.ts +9 -0
  12. package/dist/mutations/delete-builder.d.ts.map +1 -0
  13. package/dist/mutations/insert-builder.d.ts +7 -0
  14. package/dist/mutations/insert-builder.d.ts.map +1 -0
  15. package/dist/mutations/update-builder.d.ts +9 -0
  16. package/dist/mutations/update-builder.d.ts.map +1 -0
  17. package/dist/orm/builder.d.ts +38 -0
  18. package/dist/orm/builder.d.ts.map +1 -0
  19. package/dist/orm/capabilities.d.ts +3 -0
  20. package/dist/orm/capabilities.d.ts.map +1 -0
  21. package/dist/orm/context.d.ts +5 -0
  22. package/dist/orm/context.d.ts.map +1 -0
  23. package/dist/orm/state.d.ts +45 -0
  24. package/dist/orm/state.d.ts.map +1 -0
  25. package/dist/orm-include-child.d.ts +35 -0
  26. package/dist/orm-include-child.d.ts.map +1 -0
  27. package/dist/orm-relation-filter.d.ts +19 -0
  28. package/dist/orm-relation-filter.d.ts.map +1 -0
  29. package/dist/orm-types.d.ts +86 -0
  30. package/dist/orm-types.d.ts.map +1 -0
  31. package/dist/orm.d.ts +5 -0
  32. package/dist/orm.d.ts.map +1 -0
  33. package/dist/plan/lowering.d.ts +2 -0
  34. package/dist/plan/lowering.d.ts.map +1 -0
  35. package/dist/plan/plan-assembly.d.ts +24 -0
  36. package/dist/plan/plan-assembly.d.ts.map +1 -0
  37. package/dist/plan/result-typing.d.ts +2 -0
  38. package/dist/plan/result-typing.d.ts.map +1 -0
  39. package/dist/relations/include-plan.d.ts +38 -0
  40. package/dist/relations/include-plan.d.ts.map +1 -0
  41. package/dist/selection/join.d.ts +3 -0
  42. package/dist/selection/join.d.ts.map +1 -0
  43. package/dist/selection/ordering.d.ts +11 -0
  44. package/dist/selection/ordering.d.ts.map +1 -0
  45. package/dist/selection/pagination.d.ts +6 -0
  46. package/dist/selection/pagination.d.ts.map +1 -0
  47. package/dist/selection/predicates.d.ts +10 -0
  48. package/dist/selection/predicates.d.ts.map +1 -0
  49. package/dist/selection/projection.d.ts +28 -0
  50. package/dist/selection/projection.d.ts.map +1 -0
  51. package/dist/selection/select-builder.d.ts +22 -0
  52. package/dist/selection/select-builder.d.ts.map +1 -0
  53. package/dist/types/internal.d.ts +4 -0
  54. package/dist/types/internal.d.ts.map +1 -0
  55. package/dist/utils/ast.d.ts +2 -0
  56. package/dist/utils/ast.d.ts.map +1 -0
  57. package/dist/utils/errors.d.ts +29 -0
  58. package/dist/utils/errors.d.ts.map +1 -0
  59. package/dist/utils/param-descriptor.d.ts +10 -0
  60. package/dist/utils/param-descriptor.d.ts.map +1 -0
  61. package/package.json +21 -23
  62. package/dist/exports/orm.d.mts +0 -2
  63. package/dist/exports/orm.mjs +0 -3
  64. package/dist/index.d.mts +0 -42
  65. package/dist/index.d.mts.map +0 -1
  66. package/dist/index.mjs +0 -3
  67. package/dist/orm-BYJaTDLm.mjs +0 -1286
  68. package/dist/orm-BYJaTDLm.mjs.map +0 -1
  69. package/dist/orm-DxyXF2Wh.d.mts +0 -89
  70. package/dist/orm-DxyXF2Wh.d.mts.map +0 -1
@@ -0,0 +1,86 @@
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>> {
7
+ readonly context: QueryLaneContext<TContract>;
8
+ }
9
+ type ModelName<TContract extends SqlContract<SqlStorage>> = keyof TContract['models'] & string;
10
+ type LowercaseModelName<M extends string> = M extends `${infer First}${infer Rest}` ? `${Lowercase<First>}${Rest}` : M;
11
+ type ModelToTableName<TContract extends SqlContract<SqlStorage>, ModelName extends string> = TContract['mappings']['modelToTable'] extends Record<string, string> ? TContract['mappings']['modelToTable'][ModelName] extends string ? TContract['mappings']['modelToTable'][ModelName] : never : never;
12
+ type ModelRelations<TContract extends SqlContract<SqlStorage>, ModelName extends string> = ModelToTableName<TContract, ModelName> extends string ? TContract['relations'][ModelToTableName<TContract, ModelName>] extends Record<string, {
13
+ to: string;
14
+ }> ? TContract['relations'][ModelToTableName<TContract, ModelName>] : Record<string, never> : Record<string, never>;
15
+ type ModelFieldToColumnMap<TContract extends SqlContract<SqlStorage>, ModelName extends string> = TContract['mappings']['fieldToColumn'] extends Record<string, Record<string, string>> ? ModelName extends keyof TContract['mappings']['fieldToColumn'] ? TContract['mappings']['fieldToColumn'][ModelName] : never : never;
16
+ type FieldToColumnMapSafe<TContract extends SqlContract<SqlStorage>, ModelName extends string> = ModelFieldToColumnMap<TContract, ModelName> extends Record<string, string> ? ModelFieldToColumnMap<TContract, ModelName> : never;
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;
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;
19
+ type _IndexKeys = string | number | symbol;
20
+ export type IncludeAccumulator<Includes extends Record<string, unknown>, Key extends string, Value> = {
21
+ readonly [K in Exclude<keyof Includes, _IndexKeys> | Key]: K extends Key ? Value : Includes[K];
22
+ };
23
+ export type OrmRegistry<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
24
+ output: unknown;
25
+ }> = Record<string, never>> = {
26
+ readonly [K in ModelName<TContract>]: () => OrmModelBuilder<TContract, CodecTypes, K>;
27
+ } & {
28
+ readonly [K in ModelName<TContract> as LowercaseModelName<K>]: () => OrmModelBuilder<TContract, CodecTypes, K>;
29
+ };
30
+ export interface OrmRelationFilterBuilder<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
31
+ output: unknown;
32
+ }>, ChildModelName extends string> {
33
+ where(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ChildModelName>) => AnyBinaryBuilder): OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>;
34
+ }
35
+ export type OrmRelationAccessor<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
36
+ output: unknown;
37
+ }>, ModelName extends string, ChildModelName extends string, Includes extends Record<string, unknown>, Row> = {
38
+ some(fn: (child: OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>) => OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
39
+ none(fn: (child: OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>) => OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
40
+ every(fn: (child: OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>) => OrmRelationFilterBuilder<TContract, CodecTypes, ChildModelName>): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
41
+ };
42
+ export type OrmWhereProperty<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
43
+ output: unknown;
44
+ }>, ModelName extends string, Includes extends Record<string, unknown>, Row> = ((fn: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder) => OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>) & {
45
+ related: ModelRelations<TContract, ModelName> extends Record<string, {
46
+ to: infer To;
47
+ }> ? To extends string ? {
48
+ readonly [K in keyof ModelRelations<TContract, ModelName>]: ModelRelations<TContract, ModelName>[K] extends {
49
+ to: infer ChildModelName;
50
+ } ? ChildModelName extends string ? OrmRelationAccessor<TContract, CodecTypes, ModelName, ChildModelName, Includes, Row> : never : never;
51
+ } : Record<string, never> : Record<string, never>;
52
+ };
53
+ export type OrmIncludeAccessor<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
54
+ output: unknown;
55
+ }>, ModelName extends string, Includes extends Record<string, unknown>, Row> = ModelRelations<TContract, ModelName> extends Record<string, {
56
+ to: infer To;
57
+ }> ? To extends string ? {
58
+ readonly [K in keyof ModelRelations<TContract, ModelName>]: ModelRelations<TContract, ModelName>[K] extends {
59
+ to: infer ChildModelName;
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;
61
+ } : Record<string, never> : Record<string, never>;
62
+ export interface OrmModelBuilder<TContract extends SqlContract<SqlStorage> = SqlContract<SqlStorage>, CodecTypes extends Record<string, {
63
+ output: unknown;
64
+ }> = Record<string, never>, ModelName extends string = string, Includes extends Record<string, unknown> = Record<string, never>, Row = unknown> {
65
+ where: OrmWhereProperty<TContract, CodecTypes, ModelName, Includes, Row>;
66
+ include: OrmIncludeAccessor<TContract, CodecTypes, ModelName, Includes, Row>;
67
+ orderBy(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyOrderBuilder): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
68
+ take(n: number): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
69
+ skip(n: number): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
70
+ select<Projection extends Record<string, AnyColumnBuilder | boolean | NestedProjection>>(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => Projection): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, InferNestedProjectionRow<Projection, CodecTypes, Includes>>;
71
+ findMany(options?: BuildOptions): SqlQueryPlan<Row>;
72
+ findFirst(options?: BuildOptions): SqlQueryPlan<Row>;
73
+ findUnique(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, options?: BuildOptions): SqlQueryPlan<Row>;
74
+ create(data: Record<string, unknown>, options?: BuildOptions): SqlQueryPlan<number>;
75
+ update(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, data: Record<string, unknown>, options?: BuildOptions): SqlQueryPlan<number>;
76
+ delete(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, options?: BuildOptions): SqlQueryPlan<number>;
77
+ }
78
+ export type ModelColumnAccessor<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
79
+ output: unknown;
80
+ }>, ModelName extends string> = TContract['models'][ModelName] extends {
81
+ fields: infer Fields;
82
+ } ? Fields extends Record<string, unknown> ? {
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>>;
84
+ } : never : never;
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":"AAAA,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,MAAM,qDAAqD,CAAC;AAC5F,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,wCAAwC,CAAC;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAElE,MAAM,WAAW,iBAAiB,CAAC,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC;IAC1E,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC;CAC/C;AAED,KAAK,SAAS,CAAC,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,IAAI,MAAM,SAAS,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;AAE/F,KAAK,kBAAkB,CAAC,CAAC,SAAS,MAAM,IAAI,CAAC,SAAS,GAAG,MAAM,KAAK,GAAG,MAAM,IAAI,EAAE,GAC/E,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,GAC5B,CAAC,CAAC;AAGN,KAAK,gBAAgB,CACnB,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACzC,SAAS,SAAS,MAAM,IACtB,SAAS,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACpE,SAAS,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,SAAS,MAAM,GAC7D,SAAS,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,GAChD,KAAK,GACP,KAAK,CAAC;AAGV,KAAK,cAAc,CACjB,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACzC,SAAS,SAAS,MAAM,IACtB,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,MAAM,GACrD,SAAS,CAAC,WAAW,CAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,SAAS,MAAM,CAC3E,MAAM,EACN;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CACf,GACC,SAAS,CAAC,WAAW,CAAC,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,GAC9D,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACvB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAE1B,KAAK,qBAAqB,CACxB,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACzC,SAAS,SAAS,MAAM,IACtB,SAAS,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,GACrF,SAAS,SAAS,MAAM,SAAS,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,GAC5D,SAAS,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,GACjD,KAAK,GACP,KAAK,CAAC;AAEV,KAAK,oBAAoB,CACvB,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACzC,SAAS,SAAS,MAAM,IACtB,qBAAqB,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC1E,qBAAqB,CAAC,SAAS,EAAE,SAAS,CAAC,GAC3C,KAAK,CAAC;AAEV,KAAK,eAAe,CAClB,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACzC,SAAS,SAAS,MAAM,EACxB,SAAS,SAAS,MAAM,IACtB,CAAC,oBAAoB,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,KAAK,GACzD,SAAS,GACT,SAAS,SAAS,MAAM,oBAAoB,CAAC,SAAS,EAAE,SAAS,CAAC,GAChE,oBAAoB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,SAAS,CAAC,GACrD,SAAS,CAAC,GACd,MAAM,CAAC;AAET,KAAK,eAAe,CAClB,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACzC,SAAS,SAAS,MAAM,EACxB,UAAU,SAAS,MAAM,IACvB,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,MAAM,SAAS,SAAS,MAAM,GAC7E,SAAS,SAAS,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,GACpD,UAAU,SAAS,MAAM,SAAS,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAC3E,SAAS,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,GAChE,KAAK,GACP,KAAK,GACP,KAAK,CAAC;AAEV,KAAK,UAAU,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;AAE3C,MAAM,MAAM,kBAAkB,CAC5B,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,GAAG,SAAS,MAAM,EAClB,KAAK,IACH;IACF,QAAQ,EAAE,CAAC,IAAI,OAAO,CAAC,MAAM,QAAQ,EAAE,UAAU,CAAC,GAAG,GAAG,GAAG,CAAC,SAAS,GAAG,GAAG,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC;CAC/F,CAAC;AAEF,MAAM,MAAM,WAAW,CACrB,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACzC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAC5E;IACF,QAAQ,EAAE,CAAC,IAAI,SAAS,CAAC,SAAS,CAAC,GAAG,MAAM,eAAe,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC;CACtF,GAAG;IACF,QAAQ,EAAE,CAAC,IAAI,SAAS,CAAC,SAAS,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,GAAG,MAAM,eAAe,CAClF,SAAS,EACT,UAAU,EACV,CAAC,CACF;CACF,CAAC;AAGF,MAAM,WAAW,wBAAwB,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;IAE7B,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,CAAC;CACpE;AAGD,MAAM,MAAM,mBAAmB,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,EACxB,cAAc,SAAS,MAAM,EAC7B,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,GAAG,IACD;IACF,IAAI,CACF,EAAE,EAAE,CACF,KAAK,EAAE,wBAAwB,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC,KACnE,wBAAwB,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC,GACnE,eAAe,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IACpE,IAAI,CACF,EAAE,EAAE,CACF,KAAK,EAAE,wBAAwB,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC,KACnE,wBAAwB,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC,GACnE,eAAe,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IACpE,KAAK,CACH,EAAE,EAAE,CACF,KAAK,EAAE,wBAAwB,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC,KACnE,wBAAwB,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC,GACnE,eAAe,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;CACrE,CAAC;AAGF,MAAM,MAAM,gBAAgB,CAC1B,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACzC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,EACtD,SAAS,SAAS,MAAM,EACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,GAAG,IACD,CAAC,CACH,EAAE,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,KAAK,gBAAgB,KACnF,eAAe,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,GAAG;IACvE,OAAO,EAAE,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,GAClF,EAAE,SAAS,MAAM,GACf;QACE,QAAQ,EAAE,CAAC,IAAI,MAAM,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,cAAc,CACxE,SAAS,EACT,SAAS,CACV,CAAC,CAAC,CAAC,SAAS;YACX,EAAE,EAAE,MAAM,cAAc,CAAC;SAC1B,GACG,cAAc,SAAS,MAAM,GAC3B,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,CAAC,GACpF,KAAK,GACP,KAAK;KACV,GACD,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACvB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;CAC3B,CAAC;AAGF,MAAM,MAAM,kBAAkB,CAC5B,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,EACzC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,EACtD,SAAS,SAAS,MAAM,EACxB,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACxC,GAAG,IACD,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE;IAAE,EAAE,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC,GAC7E,EAAE,SAAS,MAAM,GACf;IACE,QAAQ,EAAE,CAAC,IAAI,MAAM,cAAc,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,cAAc,CACxE,SAAS,EACT,SAAS,CACV,CAAC,CAAC,CAAC,SAAS;QACX,EAAE,EAAE,MAAM,cAAc,CAAC;KAC1B,GACG,cAAc,SAAS,MAAM,GAC3B,CAAC,QAAQ,EACP,KAAK,EAAE,CACL,KAAK,EAAE,sBAAsB,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,CAAC,KACjE,sBAAsB,CAAC,SAAS,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,CAAC,KACzE,eAAe,CAClB,SAAS,EACT,UAAU,EACV,SAAS,EACT,kBAAkB,CAAC,QAAQ,EAAE,CAAC,GAAG,MAAM,EAAE,QAAQ,CAAC,EAClD,GAAG,CACJ,GACD,KAAK,GACP,KAAK;CACV,GACD,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,GACvB,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AAE1B,MAAM,WAAW,eAAe,CAC9B,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC,UAAU,CAAC,EACnE,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAC9E,SAAS,SAAS,MAAM,GAAG,MAAM,EACjC,QAAQ,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAChE,GAAG,GAAG,OAAO;IAEb,KAAK,EAAE,gBAAgB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IACzE,OAAO,EAAE,kBAAkB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAC7E,OAAO,CACL,EAAE,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,KAAK,eAAe,GACpF,eAAe,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IACpE,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,eAAe,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAClF,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,eAAe,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;IAClF,MAAM,CAAC,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,GAAG,gBAAgB,CAAC,EACrF,EAAE,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,KAAK,UAAU,GAC/E,eAAe,CAChB,SAAS,EACT,UAAU,EACV,SAAS,EACT,QAAQ,EACR,wBAAwB,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,CAAC,CAC3D,CAAC;IACF,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACpD,SAAS,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACrD,UAAU,CACR,KAAK,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,KAAK,gBAAgB,EACzF,OAAO,CAAC,EAAE,YAAY,GACrB,YAAY,CAAC,GAAG,CAAC,CAAC;IACrB,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,EAAE,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACpF,MAAM,CACJ,KAAK,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,KAAK,gBAAgB,EACzF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,OAAO,CAAC,EAAE,YAAY,GACrB,YAAY,CAAC,MAAM,CAAC,CAAC;IACxB,MAAM,CACJ,KAAK,EAAE,CAAC,KAAK,EAAE,mBAAmB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,KAAK,gBAAgB,EACzF,OAAO,CAAC,EAAE,YAAY,GACrB,YAAY,CAAC,MAAM,CAAC,CAAC;CACzB;AAED,MAAM,MAAM,mBAAmB,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,IACtB,SAAS,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,SAAS;IAAE,MAAM,EAAE,MAAM,MAAM,CAAA;CAAE,GAC/D,MAAM,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACpC;IACE,QAAQ,EAAE,CAAC,IAAI,MAAM,MAAM,GAAG,MAAM,GAAG,aAAa,CAClD,CAAC,EACD,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAC/E,mBAAmB,CACjB,SAAS,EACT,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,EACtC,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,EACxC,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,eAAe,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAC/E,UAAU,CACX,CACF;CACF,GACD,KAAK,GACP,KAAK,CAAC"}
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,EAEV,gBAAgB,EAChB,SAAS,EACT,QAAQ,EACT,MAAM,sCAAsC,CAAC;AAE9C,OAAO,KAAK,EAEV,eAAe,EACf,aAAa,EACd,MAAM,wCAAwC,CAAC;AAQhD,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;AAwDD,wBAAgB,SAAS,CAAC,IAAI,EAAE,aAAa,GAAG,QAAQ,CAoLvD;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;AAGhD,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,CAgJA;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,EAAE,UAAU,EAAwB,MAAM,sCAAsC,CAAC;AAE7F,OAAO,KAAK,EAAE,aAAa,EAAoB,MAAM,wCAAwC,CAAC;AAa9F,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,CA4EA"}
@@ -0,0 +1,28 @@
1
+ import type { TableRef } from '@prisma-next/sql-relational-core/ast';
2
+ import type { AnyBinaryBuilder, AnyExpressionSource, AnyOrderBuilder, JoinOnPredicate, NestedProjection } from '@prisma-next/sql-relational-core/types';
3
+ export interface ProjectionState {
4
+ readonly aliases: string[];
5
+ readonly columns: AnyExpressionSource[];
6
+ }
7
+ export type ProjectionInput = Record<string, AnyExpressionSource | boolean | NestedProjection>;
8
+ export declare class AliasTracker {
9
+ private readonly aliases;
10
+ private readonly aliasToPath;
11
+ register(path: string[]): string;
12
+ getPath(alias: string): string[] | undefined;
13
+ has(alias: string): boolean;
14
+ }
15
+ export declare function flattenProjection(projection: NestedProjection, tracker: AliasTracker, currentPath?: string[]): {
16
+ aliases: string[];
17
+ columns: AnyExpressionSource[];
18
+ };
19
+ export declare function buildProjectionState(_table: TableRef, projection: ProjectionInput, includes?: ReadonlyArray<{
20
+ readonly alias: string;
21
+ readonly table: TableRef;
22
+ readonly on: JoinOnPredicate;
23
+ readonly childProjection: ProjectionState;
24
+ readonly childWhere?: AnyBinaryBuilder;
25
+ readonly childOrderBy?: AnyOrderBuilder;
26
+ readonly childLimit?: number;
27
+ }>): ProjectionState;
28
+ //# sourceMappingURL=projection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projection.d.ts","sourceRoot":"","sources":["../../src/selection/projection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sCAAsC,CAAC;AACrE,OAAO,KAAK,EACV,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,eAAe,EACf,gBAAgB,EACjB,MAAM,wCAAwC,CAAC;AAchD,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,mBAAmB,EAAE,CAAC;CACzC;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,mBAAmB,GAAG,OAAO,GAAG,gBAAgB,CAAC,CAAC;AAS/F,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAC7C,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA+B;IAE3D,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM;IAWhC,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;IAI5C,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;CAG5B;AAED,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,gBAAgB,EAC5B,OAAO,EAAE,YAAY,EACrB,WAAW,GAAE,MAAM,EAAO,GACzB;IAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAAC,OAAO,EAAE,mBAAmB,EAAE,CAAA;CAAE,CAqBvD;AAED,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,QAAQ,EAChB,UAAU,EAAE,eAAe,EAC3B,QAAQ,CAAC,EAAE,aAAa,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,EAAE,EAAE,eAAe,CAAC;IAC7B,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,CAAC,GACD,eAAe,CA2CjB"}
@@ -0,0 +1,22 @@
1
+ import type { BinaryExpr, Direction, ExistsExpr, Expression, IncludeAst, IncludeRef, SelectAst, TableRef } from '@prisma-next/sql-relational-core/ast';
2
+ import type { IncludeState } from '../relations/include-plan';
3
+ import type { ProjectionState } from './projection';
4
+ export declare function buildProjectionItems(projectionState: ProjectionState, includesForMeta: ReadonlyArray<IncludeState>): Array<{
5
+ alias: string;
6
+ expr: Expression | IncludeRef;
7
+ }>;
8
+ export declare function buildSelectAst(params: {
9
+ table: TableRef;
10
+ projectEntries: Array<{
11
+ alias: string;
12
+ expr: Expression | IncludeRef;
13
+ }>;
14
+ includesAst?: ReadonlyArray<IncludeAst>;
15
+ whereExpr?: BinaryExpr | ExistsExpr;
16
+ orderByClause?: ReadonlyArray<{
17
+ expr: Expression;
18
+ dir: Direction;
19
+ }>;
20
+ limit?: number;
21
+ }): SelectAst;
22
+ //# sourceMappingURL=select-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-builder.d.ts","sourceRoot":"","sources":["../../src/selection/select-builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,SAAS,EACT,QAAQ,EACT,MAAM,sCAAsC,CAAC;AAE9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,wBAAgB,oBAAoB,CAClC,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,aAAa,CAAC,YAAY,CAAC,GAC3C,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAAA;CAAE,CAAC,CAsCzD;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE;IACrC,KAAK,EAAE,QAAQ,CAAC;IAChB,cAAc,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAAA;KAAE,CAAC,CAAC;IACxE,WAAW,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IACxC,SAAS,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;QAC5B,IAAI,EAAE,UAAU,CAAC;QACjB,GAAG,EAAE,SAAS,CAAC;KAChB,CAAC,CAAC;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,SAAS,CAUZ"}
@@ -0,0 +1,4 @@
1
+ export type { OrmBuilderState, OrmIncludeState, RelationFilter } from '../orm/state';
2
+ export type { MetaBuildArgs } from '../plan/plan-assembly';
3
+ export type { IncludeState } from '../relations/include-plan';
4
+ //# sourceMappingURL=internal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../src/types/internal.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACrF,YAAY,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,YAAY,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { createBinaryExpr, createColumnRef, createDeleteAst, createInsertAst, createJoinOnExpr, createOrderByItem, createParamRef, createSelectAst, createTableRef, createUpdateAst, } from '@prisma-next/sql-relational-core/ast';
2
+ //# sourceMappingURL=ast.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../src/utils/ast.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,eAAe,EACf,cAAc,EACd,eAAe,GAChB,MAAM,sCAAsC,CAAC"}
@@ -0,0 +1,29 @@
1
+ import type { StorageColumn } from '@prisma-next/sql-contract/types';
2
+ export declare function errorModelNotFound(modelName: string): never;
3
+ export declare function errorTableNotFound(tableName: string): never;
4
+ export declare function errorUnknownTable(tableName: string): never;
5
+ export declare function errorUnknownColumn(columnName: string, tableName: string): never;
6
+ export declare function errorMissingParameter(paramName: string): never;
7
+ export declare function errorAliasPathEmpty(): never;
8
+ export declare function errorAliasCollision(path: string[], alias: string, existingPath?: string[]): never;
9
+ export declare function errorInvalidProjectionValue(path: string[]): never;
10
+ export declare function errorIncludeAliasNotFound(alias: string): never;
11
+ export declare function errorInvalidProjectionKey(key: string): never;
12
+ export declare function errorProjectionEmpty(): never;
13
+ export declare function errorCreateRequiresFields(): never;
14
+ export declare function errorUpdateRequiresFields(): never;
15
+ export declare function errorIncludeRequiresCapabilities(): never;
16
+ export declare function errorIncludeCapabilitiesNotTrue(): never;
17
+ export declare function errorMultiColumnJoinsNotSupported(): never;
18
+ export declare function errorJoinColumnsMustBeDefined(): never;
19
+ export declare function errorColumnNotFound(columnName: string, tableName: string): never;
20
+ export declare function errorChildProjectionMustBeSpecified(): never;
21
+ export declare function errorChildProjectionEmpty(): never;
22
+ export declare function errorMissingAlias(index: number): never;
23
+ export declare function errorMissingColumn(alias: string, index: number): never;
24
+ export declare function errorInvalidColumn(alias: string, index: number): never;
25
+ export declare function errorRelationNotFound(relationName: string, modelName: string): never;
26
+ export declare function errorFailedToBuildWhereClause(): never;
27
+ export declare function assertColumnExists(columnMeta: StorageColumn | undefined, columnName: string, tableName: string): asserts columnMeta is StorageColumn;
28
+ export declare function assertParameterExists(paramsMap: Record<string, unknown>, paramName: string): unknown;
29
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/utils/errors.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAErE,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,CAE3D;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,CAE3D;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,CAE1D;AAED,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK,CAE/E;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,KAAK,CAE9D;AAED,wBAAgB,mBAAmB,IAAI,KAAK,CAE3C;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,KAAK,CAIjG;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CAIjE;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAI9D;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAI5D;AAED,wBAAgB,oBAAoB,IAAI,KAAK,CAE5C;AAED,wBAAgB,yBAAyB,IAAI,KAAK,CAEjD;AAED,wBAAgB,yBAAyB,IAAI,KAAK,CAEjD;AAED,wBAAgB,gCAAgC,IAAI,KAAK,CAExD;AAED,wBAAgB,+BAA+B,IAAI,KAAK,CAEvD;AAED,wBAAgB,iCAAiC,IAAI,KAAK,CAEzD;AAED,wBAAgB,6BAA6B,IAAI,KAAK,CAErD;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK,CAEhF;AAED,wBAAgB,mCAAmC,IAAI,KAAK,CAE3D;AAED,wBAAgB,yBAAyB,IAAI,KAAK,CAEjD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAEtD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,CAEtE;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,CAEtE;AAED,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK,CAEpF;AAED,wBAAgB,6BAA6B,IAAI,KAAK,CAErD;AAED,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,aAAa,GAAG,SAAS,EACrC,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,UAAU,IAAI,aAAa,CAIrC;AAED,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,SAAS,EAAE,MAAM,GAChB,OAAO,CAKT"}
@@ -0,0 +1,10 @@
1
+ import type { ParamDescriptor } from '@prisma-next/contract/types';
2
+ export declare function createParamDescriptor(args: {
3
+ name: string;
4
+ table: string;
5
+ column: string;
6
+ codecId?: string;
7
+ nativeType?: string;
8
+ nullable: boolean;
9
+ }): ParamDescriptor;
10
+ //# sourceMappingURL=param-descriptor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"param-descriptor.d.ts","sourceRoot":"","sources":["../../src/utils/param-descriptor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAEnE,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;CACnB,GAAG,eAAe,CASlB"}
package/package.json CHANGED
@@ -1,47 +1,45 @@
1
1
  {
2
2
  "name": "@prisma-next/sql-orm-lane",
3
- "version": "0.3.0-pr.94.2",
3
+ "version": "0.3.0-pr.95.2",
4
4
  "type": "module",
5
5
  "sideEffects": false,
6
- "engines": {
7
- "node": ">=20"
8
- },
9
6
  "description": "ORM builder, include lowering, and relation filters for Prisma Next",
10
7
  "dependencies": {
11
- "@prisma-next/contract": "0.3.0-pr.94.2",
12
- "@prisma-next/sql-contract": "0.3.0-pr.94.2",
13
- "@prisma-next/plan": "0.3.0-pr.94.2",
14
- "@prisma-next/sql-lane": "0.3.0-pr.94.2",
15
- "@prisma-next/sql-relational-core": "0.3.0-pr.94.2"
8
+ "@prisma-next/contract": "0.3.0-pr.95.2",
9
+ "@prisma-next/plan": "0.3.0-pr.95.2",
10
+ "@prisma-next/sql-contract": "0.3.0-pr.95.2",
11
+ "@prisma-next/sql-lane": "0.3.0-pr.95.2",
12
+ "@prisma-next/sql-relational-core": "0.3.0-pr.95.2"
16
13
  },
17
14
  "devDependencies": {
18
- "tsdown": "0.18.4",
15
+ "tsup": "8.5.1",
19
16
  "typescript": "5.9.3",
20
17
  "vitest": "4.0.16",
21
- "@prisma-next/operations": "0.3.0-pr.94.2",
22
- "@prisma-next/sql-contract-ts": "0.3.0-pr.94.2",
23
- "@prisma-next/sql-runtime": "0.3.0-pr.94.2",
18
+ "@prisma-next/operations": "0.3.0-pr.95.2",
19
+ "@prisma-next/sql-contract-ts": "0.3.0-pr.95.2",
20
+ "@prisma-next/sql-runtime": "0.3.0-pr.95.2",
24
21
  "@prisma-next/test-utils": "0.0.1",
25
- "@prisma-next/tsconfig": "0.0.0",
26
- "@prisma-next/tsdown": "0.0.0"
22
+ "@prisma-next/tsconfig": "0.0.0"
27
23
  },
28
24
  "files": [
29
25
  "dist",
30
26
  "src"
31
27
  ],
32
28
  "exports": {
33
- ".": "./dist/index.mjs",
34
- "./orm": "./dist/exports/orm.mjs",
35
- "./package.json": "./package.json"
29
+ ".": {
30
+ "types": "./dist/exports/orm.d.ts",
31
+ "import": "./dist/exports/orm.js"
32
+ },
33
+ "./orm": {
34
+ "types": "./dist/exports/orm.d.ts",
35
+ "import": "./dist/exports/orm.js"
36
+ }
36
37
  },
37
- "main": "./dist/index.mjs",
38
- "module": "./dist/index.mjs",
39
- "types": "./dist/index.d.mts",
40
38
  "scripts": {
41
- "build": "tsdown",
39
+ "build": "tsup --config tsup.config.ts && tsc --project tsconfig.build.json",
42
40
  "test": "vitest run",
43
41
  "test:coverage": "vitest run --coverage",
44
- "typecheck": "tsc --noEmit",
42
+ "typecheck": "tsc --project tsconfig.json --noEmit",
45
43
  "lint": "biome check . --error-on-warnings",
46
44
  "lint:fix": "biome check --write .",
47
45
  "lint:fix:unsafe": "biome check --write --unsafe .",
@@ -1,2 +0,0 @@
1
- import { a as OrmIncludeAccessor, c as OrmRelationAccessor, i as OrmBuilderOptions, l as OrmRelationFilterBuilder, n as IncludeAccumulator, o as OrmModelBuilder, r as ModelColumnAccessor, s as OrmRegistry, t as orm, u as OrmWhereProperty } from "../orm-DxyXF2Wh.mjs";
2
- export { type IncludeAccumulator, type ModelColumnAccessor, type OrmBuilderOptions, type OrmIncludeAccessor, type OrmModelBuilder, type OrmRegistry, type OrmRelationAccessor, type OrmRelationFilterBuilder, type OrmWhereProperty, orm };
@@ -1,3 +0,0 @@
1
- import { t as orm } from "../orm-BYJaTDLm.mjs";
2
-
3
- export { orm };
package/dist/index.d.mts DELETED
@@ -1,42 +0,0 @@
1
- import { a as OrmIncludeAccessor, c as OrmRelationAccessor, i as OrmBuilderOptions, l as OrmRelationFilterBuilder, o as OrmModelBuilder, r as ModelColumnAccessor, s as OrmRegistry, t as orm, u as OrmWhereProperty } from "./orm-DxyXF2Wh.mjs";
2
- import { SqlQueryPlan } from "@prisma-next/sql-relational-core/plan";
3
- import { SqlContract, SqlStorage } from "@prisma-next/sql-contract/types";
4
- import { AnyBinaryBuilder, AnyColumnBuilder, BuildOptions, InferNestedProjectionRow, NestedProjection, OrderBuilder } from "@prisma-next/sql-relational-core/types";
5
-
6
- //#region src/orm/builder.d.ts
7
- declare class OrmModelBuilderImpl<TContract extends SqlContract<SqlStorage>, CodecTypes extends Record<string, {
8
- output: unknown;
9
- }> = Record<string, never>, ModelName extends string = string, Includes extends Record<string, unknown> = Record<string, never>, Row = unknown> implements OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row> {
10
- private readonly context;
11
- private readonly contract;
12
- private readonly modelName;
13
- private table;
14
- private wherePredicate;
15
- private relationFilters;
16
- private includes;
17
- private orderByExpr;
18
- private limitValue;
19
- private offsetValue;
20
- private projection;
21
- constructor(options: OrmBuilderOptions<TContract>, modelName: ModelName);
22
- get where(): OrmWhereProperty<TContract, CodecTypes, ModelName, Includes, Row>;
23
- get include(): OrmIncludeAccessor<TContract, CodecTypes, ModelName, Includes, Row>;
24
- private _createIncludeProxy;
25
- private _applyInclude;
26
- private _createRelatedProxy;
27
- private _applyRelationFilter;
28
- orderBy(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => OrderBuilder): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
29
- take(n: number): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
30
- skip(n: number): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, Row>;
31
- select<Projection extends Record<string, AnyColumnBuilder | boolean | NestedProjection>>(fn: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => Projection): OrmModelBuilder<TContract, CodecTypes, ModelName, Includes, InferNestedProjectionRow<Projection, CodecTypes, Includes>>;
32
- findMany(options?: BuildOptions): SqlQueryPlan<Row>;
33
- findFirst(options?: BuildOptions): SqlQueryPlan<Row>;
34
- findUnique(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, options?: BuildOptions): SqlQueryPlan<Row>;
35
- create(data: Record<string, unknown>, options?: BuildOptions): SqlQueryPlan<number>;
36
- update(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, data: Record<string, unknown>, options?: BuildOptions): SqlQueryPlan<number>;
37
- delete(where: (model: ModelColumnAccessor<TContract, CodecTypes, ModelName>) => AnyBinaryBuilder, options?: BuildOptions): SqlQueryPlan<number>;
38
- private _getModelAccessor;
39
- }
40
- //#endregion
41
- export { type ModelColumnAccessor, type OrmBuilderOptions, type OrmModelBuilder, OrmModelBuilderImpl, type OrmRegistry, type OrmRelationAccessor, type OrmRelationFilterBuilder, type OrmWhereProperty, orm };
42
- //# sourceMappingURL=index.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/orm/builder.ts"],"sourcesContent":[],"mappings":"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"}
package/dist/index.mjs DELETED
@@ -1,3 +0,0 @@
1
- import { n as OrmModelBuilderImpl, t as orm } from "./orm-BYJaTDLm.mjs";
2
-
3
- export { OrmModelBuilderImpl, orm };