@prisma-next/sql-relational-core 0.3.0-pr.93.5 → 0.3.0-pr.94.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/errors-BwxypN2Q.mjs +3 -0
- package/dist/errors-CLx1Ylq0.d.mts +2 -0
- package/dist/exports/ast.d.mts +123 -0
- package/dist/exports/ast.d.mts.map +1 -0
- package/dist/exports/ast.mjs +304 -0
- package/dist/exports/ast.mjs.map +1 -0
- package/dist/exports/errors.d.mts +2 -0
- package/dist/exports/errors.mjs +3 -0
- package/dist/exports/guards.d.mts +88 -0
- package/dist/exports/guards.d.mts.map +1 -0
- package/dist/exports/guards.mjs +3 -0
- package/dist/exports/operations-registry.d.mts +5 -0
- package/dist/exports/operations-registry.mjs +3 -0
- package/dist/exports/param.d.mts +5 -0
- package/dist/exports/param.mjs +3 -0
- package/dist/exports/plan.d.mts +2 -0
- package/dist/exports/plan.mjs +17 -0
- package/dist/exports/plan.mjs.map +1 -0
- package/dist/exports/query-lane-context.d.mts +2 -0
- package/dist/exports/query-lane-context.mjs +1 -0
- package/dist/exports/schema.d.mts +5 -0
- package/dist/exports/schema.mjs +4 -0
- package/dist/exports/types.d.mts +4 -0
- package/dist/exports/types.mjs +3 -0
- package/dist/guards-4T0IByJo.mjs +132 -0
- package/dist/guards-4T0IByJo.mjs.map +1 -0
- package/dist/index.d.mts +12 -0
- package/dist/index.mjs +12 -0
- package/dist/operations-registry-7R5KE2-5.mjs +152 -0
- package/dist/operations-registry-7R5KE2-5.mjs.map +1 -0
- package/dist/operations-registry-CIcn4f2P.d.mts +9 -0
- package/dist/operations-registry-CIcn4f2P.d.mts.map +1 -0
- package/dist/param-B4LzVPv2.d.mts +8 -0
- package/dist/param-B4LzVPv2.d.mts.map +1 -0
- package/dist/param-BFvNAaHR.mjs +14 -0
- package/dist/param-BFvNAaHR.mjs.map +1 -0
- package/dist/plan-9PvH-Tu3.d.mts +157 -0
- package/dist/plan-9PvH-Tu3.d.mts.map +1 -0
- package/dist/query-lane-context-wr_XXnB5.d.mts +143 -0
- package/dist/query-lane-context-wr_XXnB5.d.mts.map +1 -0
- package/dist/schema-BsY2EXAf.mjs +148 -0
- package/dist/schema-BsY2EXAf.mjs.map +1 -0
- package/dist/schema-Dse48uyP.d.mts +63 -0
- package/dist/schema-Dse48uyP.d.mts.map +1 -0
- package/dist/types-Bg2kUmUA.d.mts +359 -0
- package/dist/types-Bg2kUmUA.d.mts.map +1 -0
- package/dist/types-D_FRJvm0.mjs +18 -0
- package/dist/types-D_FRJvm0.mjs.map +1 -0
- package/package.json +27 -49
- package/src/ast/predicate.ts +3 -11
- package/src/ast/types.ts +23 -9
- package/src/exports/guards.ts +5 -0
- package/src/operations-registry.ts +112 -73
- package/src/schema.ts +40 -29
- package/src/types.ts +102 -52
- package/src/utils/guards.ts +88 -18
- package/dist/ast/adapter-types.d.ts +0 -28
- package/dist/ast/adapter-types.d.ts.map +0 -1
- package/dist/ast/codec-types.d.ts +0 -141
- package/dist/ast/codec-types.d.ts.map +0 -1
- package/dist/ast/common.d.ts +0 -7
- package/dist/ast/common.d.ts.map +0 -1
- package/dist/ast/delete.d.ts +0 -8
- package/dist/ast/delete.d.ts.map +0 -1
- package/dist/ast/driver-types.d.ts +0 -20
- package/dist/ast/driver-types.d.ts.map +0 -1
- package/dist/ast/insert.d.ts +0 -8
- package/dist/ast/insert.d.ts.map +0 -1
- package/dist/ast/join.d.ts +0 -6
- package/dist/ast/join.d.ts.map +0 -1
- package/dist/ast/order.d.ts +0 -6
- package/dist/ast/order.d.ts.map +0 -1
- package/dist/ast/predicate.d.ts +0 -4
- package/dist/ast/predicate.d.ts.map +0 -1
- package/dist/ast/select.d.ts +0 -18
- package/dist/ast/select.d.ts.map +0 -1
- package/dist/ast/types.d.ts +0 -118
- package/dist/ast/types.d.ts.map +0 -1
- package/dist/ast/update.d.ts +0 -9
- package/dist/ast/update.d.ts.map +0 -1
- package/dist/ast/util.d.ts +0 -2
- package/dist/ast/util.d.ts.map +0 -1
- package/dist/chunk-2F7DSEOU.js +0 -8
- package/dist/chunk-2F7DSEOU.js.map +0 -1
- package/dist/chunk-36WJWNHT.js +0 -1
- package/dist/chunk-36WJWNHT.js.map +0 -1
- package/dist/chunk-5N34PNVZ.js +0 -62
- package/dist/chunk-5N34PNVZ.js.map +0 -1
- package/dist/chunk-7I3EMQID.js +0 -16
- package/dist/chunk-7I3EMQID.js.map +0 -1
- package/dist/chunk-D4JLPIWO.js +0 -13
- package/dist/chunk-D4JLPIWO.js.map +0 -1
- package/dist/chunk-G52ENULI.js +0 -1
- package/dist/chunk-G52ENULI.js.map +0 -1
- package/dist/chunk-J6O2HVBM.js +0 -320
- package/dist/chunk-J6O2HVBM.js.map +0 -1
- package/dist/chunk-KYSP7L5C.js +0 -16
- package/dist/chunk-KYSP7L5C.js.map +0 -1
- package/dist/chunk-M23L3JHG.js +0 -159
- package/dist/chunk-M23L3JHG.js.map +0 -1
- package/dist/chunk-U7AXAUJA.js +0 -1
- package/dist/chunk-U7AXAUJA.js.map +0 -1
- package/dist/chunk-U7IAFPVU.js +0 -152
- package/dist/chunk-U7IAFPVU.js.map +0 -1
- package/dist/errors.d.ts +0 -2
- package/dist/errors.d.ts.map +0 -1
- package/dist/exports/ast.d.ts +0 -14
- package/dist/exports/ast.d.ts.map +0 -1
- package/dist/exports/ast.js +0 -46
- package/dist/exports/ast.js.map +0 -1
- package/dist/exports/errors.d.ts +0 -2
- package/dist/exports/errors.d.ts.map +0 -1
- package/dist/exports/errors.js +0 -9
- package/dist/exports/errors.js.map +0 -1
- package/dist/exports/guards.d.ts +0 -2
- package/dist/exports/guards.d.ts.map +0 -1
- package/dist/exports/guards.js +0 -21
- package/dist/exports/guards.js.map +0 -1
- package/dist/exports/operations-registry.d.ts +0 -2
- package/dist/exports/operations-registry.d.ts.map +0 -1
- package/dist/exports/operations-registry.js +0 -9
- package/dist/exports/operations-registry.js.map +0 -1
- package/dist/exports/param.d.ts +0 -3
- package/dist/exports/param.d.ts.map +0 -1
- package/dist/exports/param.js +0 -7
- package/dist/exports/param.js.map +0 -1
- package/dist/exports/plan.d.ts +0 -2
- package/dist/exports/plan.d.ts.map +0 -1
- package/dist/exports/plan.js +0 -7
- package/dist/exports/plan.js.map +0 -1
- package/dist/exports/query-lane-context.d.ts +0 -2
- package/dist/exports/query-lane-context.d.ts.map +0 -1
- package/dist/exports/query-lane-context.js +0 -2
- package/dist/exports/query-lane-context.js.map +0 -1
- package/dist/exports/schema.d.ts +0 -3
- package/dist/exports/schema.d.ts.map +0 -1
- package/dist/exports/schema.js +0 -14
- package/dist/exports/schema.js.map +0 -1
- package/dist/exports/types.d.ts +0 -2
- package/dist/exports/types.d.ts.map +0 -1
- package/dist/exports/types.js +0 -10
- package/dist/exports/types.js.map +0 -1
- package/dist/index.d.ts +0 -9
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -81
- package/dist/index.js.map +0 -1
- package/dist/operations-registry.d.ts +0 -5
- package/dist/operations-registry.d.ts.map +0 -1
- package/dist/param.d.ts +0 -4
- package/dist/param.d.ts.map +0 -1
- package/dist/plan.d.ts +0 -23
- package/dist/plan.d.ts.map +0 -1
- package/dist/query-lane-context.d.ts +0 -16
- package/dist/query-lane-context.d.ts.map +0 -1
- package/dist/schema.d.ts +0 -63
- package/dist/schema.d.ts.map +0 -1
- package/dist/types.d.ts +0 -332
- package/dist/types.d.ts.map +0 -1
- package/dist/utils/guards.d.ts +0 -55
- package/dist/utils/guards.d.ts.map +0 -1
package/dist/chunk-U7IAFPVU.js
DELETED
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
attachOperationsToColumnBuilder
|
|
3
|
-
} from "./chunk-M23L3JHG.js";
|
|
4
|
-
import {
|
|
5
|
-
isColumnBuilder
|
|
6
|
-
} from "./chunk-D4JLPIWO.js";
|
|
7
|
-
|
|
8
|
-
// src/schema.ts
|
|
9
|
-
import { planInvalid } from "@prisma-next/plan";
|
|
10
|
-
var ColumnBuilderImpl = class {
|
|
11
|
-
constructor(table, column, storageColumn) {
|
|
12
|
-
this.table = table;
|
|
13
|
-
this.column = column;
|
|
14
|
-
this.storageColumn = storageColumn;
|
|
15
|
-
}
|
|
16
|
-
kind = "column";
|
|
17
|
-
get columnMeta() {
|
|
18
|
-
return this.storageColumn;
|
|
19
|
-
}
|
|
20
|
-
// Type-level helper property (not used at runtime)
|
|
21
|
-
get __jsType() {
|
|
22
|
-
return void 0;
|
|
23
|
-
}
|
|
24
|
-
createBinaryBuilder(op, value) {
|
|
25
|
-
if (value == null) {
|
|
26
|
-
throw planInvalid("Parameter placeholder or column builder required for column comparison");
|
|
27
|
-
}
|
|
28
|
-
if (value.kind === "param-placeholder" || isColumnBuilder(value)) {
|
|
29
|
-
return Object.freeze({
|
|
30
|
-
kind: "binary",
|
|
31
|
-
op,
|
|
32
|
-
left: this,
|
|
33
|
-
right: value
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
throw planInvalid("Parameter placeholder or column builder required for column comparison");
|
|
37
|
-
}
|
|
38
|
-
eq(value) {
|
|
39
|
-
return this.createBinaryBuilder("eq", value);
|
|
40
|
-
}
|
|
41
|
-
neq(value) {
|
|
42
|
-
return this.createBinaryBuilder("neq", value);
|
|
43
|
-
}
|
|
44
|
-
gt(value) {
|
|
45
|
-
return this.createBinaryBuilder("gt", value);
|
|
46
|
-
}
|
|
47
|
-
lt(value) {
|
|
48
|
-
return this.createBinaryBuilder("lt", value);
|
|
49
|
-
}
|
|
50
|
-
gte(value) {
|
|
51
|
-
return this.createBinaryBuilder("gte", value);
|
|
52
|
-
}
|
|
53
|
-
lte(value) {
|
|
54
|
-
return this.createBinaryBuilder("lte", value);
|
|
55
|
-
}
|
|
56
|
-
asc() {
|
|
57
|
-
return Object.freeze({
|
|
58
|
-
kind: "order",
|
|
59
|
-
expr: this,
|
|
60
|
-
dir: "asc"
|
|
61
|
-
});
|
|
62
|
-
}
|
|
63
|
-
desc() {
|
|
64
|
-
return Object.freeze({
|
|
65
|
-
kind: "order",
|
|
66
|
-
expr: this,
|
|
67
|
-
dir: "desc"
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
};
|
|
71
|
-
var TableBuilderImpl = class {
|
|
72
|
-
kind = "table";
|
|
73
|
-
columns;
|
|
74
|
-
_name;
|
|
75
|
-
constructor(name, columns) {
|
|
76
|
-
this._name = name;
|
|
77
|
-
this.columns = columns;
|
|
78
|
-
}
|
|
79
|
-
get name() {
|
|
80
|
-
return this._name;
|
|
81
|
-
}
|
|
82
|
-
};
|
|
83
|
-
function buildColumns(tableName, storage, _contract, operationRegistry, contractCapabilities) {
|
|
84
|
-
const table = storage.tables[tableName];
|
|
85
|
-
if (!table) {
|
|
86
|
-
throw planInvalid(`Unknown table ${tableName}`);
|
|
87
|
-
}
|
|
88
|
-
const tableColumns = table.columns;
|
|
89
|
-
const result = {};
|
|
90
|
-
const assignColumn = (columnName, columnDef) => {
|
|
91
|
-
const columnBuilder = new ColumnBuilderImpl(
|
|
92
|
-
tableName,
|
|
93
|
-
columnName,
|
|
94
|
-
columnDef
|
|
95
|
-
);
|
|
96
|
-
const builderWithOps = attachOperationsToColumnBuilder(
|
|
97
|
-
columnBuilder,
|
|
98
|
-
columnDef,
|
|
99
|
-
operationRegistry,
|
|
100
|
-
contractCapabilities
|
|
101
|
-
);
|
|
102
|
-
result[columnName] = builderWithOps;
|
|
103
|
-
};
|
|
104
|
-
for (const columnName of Object.keys(tableColumns)) {
|
|
105
|
-
const columnDef = tableColumns[columnName];
|
|
106
|
-
if (!columnDef) continue;
|
|
107
|
-
assignColumn(columnName, columnDef);
|
|
108
|
-
}
|
|
109
|
-
return result;
|
|
110
|
-
}
|
|
111
|
-
function createTableProxy(table) {
|
|
112
|
-
return new Proxy(table, {
|
|
113
|
-
get(target, prop) {
|
|
114
|
-
if (prop === "name" || prop === "kind" || prop === "columns") {
|
|
115
|
-
return Reflect.get(target, prop);
|
|
116
|
-
}
|
|
117
|
-
if (typeof prop === "string" && prop in target.columns) {
|
|
118
|
-
return target.columns[prop];
|
|
119
|
-
}
|
|
120
|
-
return void 0;
|
|
121
|
-
}
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
function schema(context) {
|
|
125
|
-
const contract = context.contract;
|
|
126
|
-
const storage = contract.storage;
|
|
127
|
-
const tables = {};
|
|
128
|
-
const contractCapabilities = contract.capabilities;
|
|
129
|
-
const operationRegistry = context.operations;
|
|
130
|
-
for (const tableName of Object.keys(storage.tables)) {
|
|
131
|
-
const columns = buildColumns(
|
|
132
|
-
tableName,
|
|
133
|
-
storage,
|
|
134
|
-
contract,
|
|
135
|
-
operationRegistry,
|
|
136
|
-
contractCapabilities
|
|
137
|
-
);
|
|
138
|
-
const table = new TableBuilderImpl(tableName, columns);
|
|
139
|
-
const proxiedTable = createTableProxy(table);
|
|
140
|
-
tables[tableName] = Object.freeze(
|
|
141
|
-
proxiedTable
|
|
142
|
-
);
|
|
143
|
-
}
|
|
144
|
-
return Object.freeze({ tables });
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
export {
|
|
148
|
-
ColumnBuilderImpl,
|
|
149
|
-
TableBuilderImpl,
|
|
150
|
-
schema
|
|
151
|
-
};
|
|
152
|
-
//# sourceMappingURL=chunk-U7IAFPVU.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/schema.ts"],"sourcesContent":["import type { OperationRegistry } from '@prisma-next/operations';\nimport { planInvalid } from '@prisma-next/plan';\nimport type {\n ExtractCodecTypes,\n ExtractOperationTypes,\n SqlContract,\n SqlStorage,\n StorageColumn,\n} from '@prisma-next/sql-contract/types';\nimport type { BinaryOp, TableRef } from './ast/types';\nimport { attachOperationsToColumnBuilder } from './operations-registry';\nimport type { QueryLaneContext } from './query-lane-context';\nimport type {\n AnyColumnBuilderBase,\n BinaryBuilder,\n CodecTypes as CodecTypesType,\n ColumnBuilder,\n ComputeColumnJsType,\n OperationTypeSignature,\n OperationTypes,\n OrderBuilder,\n ParamPlaceholder,\n} from './types';\nimport { isColumnBuilder } from './types';\n\ntype TableColumns<Table extends { columns: Record<string, StorageColumn> }> = Table['columns'];\n\ntype ColumnBuilders<\n Contract extends SqlContract<SqlStorage>,\n TableName extends string,\n Columns extends Record<string, StorageColumn>,\n CodecTypes extends CodecTypesType,\n Operations extends OperationTypes,\n> = {\n readonly [K in keyof Columns]: ColumnBuilder<\n K & string,\n Columns[K],\n ComputeColumnJsType<Contract, TableName, K & string, Columns[K], CodecTypes>,\n Operations\n >;\n};\n\nexport class ColumnBuilderImpl<\n ColumnName extends string,\n ColumnMeta extends StorageColumn,\n JsType = unknown,\n> {\n readonly kind = 'column' as const;\n\n constructor(\n readonly table: string,\n readonly column: ColumnName,\n private readonly storageColumn: ColumnMeta,\n ) {}\n\n get columnMeta(): ColumnMeta {\n return this.storageColumn;\n }\n\n // Type-level helper property (not used at runtime)\n get __jsType(): JsType {\n return undefined as unknown as JsType;\n }\n\n private createBinaryBuilder(\n op: BinaryOp,\n value: ParamPlaceholder | AnyColumnBuilderBase,\n ): BinaryBuilder<ColumnName, ColumnMeta, JsType> {\n if (value == null) {\n throw planInvalid('Parameter placeholder or column builder required for column comparison');\n }\n if (value.kind === 'param-placeholder' || isColumnBuilder(value)) {\n return Object.freeze({\n kind: 'binary' as const,\n op,\n left: this as unknown as ColumnBuilder<ColumnName, ColumnMeta, JsType>,\n right: value,\n }) as BinaryBuilder<ColumnName, ColumnMeta, JsType>;\n }\n throw planInvalid('Parameter placeholder or column builder required for column comparison');\n }\n\n eq(\n value: ParamPlaceholder | AnyColumnBuilderBase,\n ): BinaryBuilder<ColumnName, ColumnMeta, JsType> {\n return this.createBinaryBuilder('eq', value);\n }\n\n neq(\n value: ParamPlaceholder | AnyColumnBuilderBase,\n ): BinaryBuilder<ColumnName, ColumnMeta, JsType> {\n return this.createBinaryBuilder('neq', value);\n }\n\n gt(\n value: ParamPlaceholder | AnyColumnBuilderBase,\n ): BinaryBuilder<ColumnName, ColumnMeta, JsType> {\n return this.createBinaryBuilder('gt', value);\n }\n\n lt(\n value: ParamPlaceholder | AnyColumnBuilderBase,\n ): BinaryBuilder<ColumnName, ColumnMeta, JsType> {\n return this.createBinaryBuilder('lt', value);\n }\n\n gte(\n value: ParamPlaceholder | AnyColumnBuilderBase,\n ): BinaryBuilder<ColumnName, ColumnMeta, JsType> {\n return this.createBinaryBuilder('gte', value);\n }\n\n lte(\n value: ParamPlaceholder | AnyColumnBuilderBase,\n ): BinaryBuilder<ColumnName, ColumnMeta, JsType> {\n return this.createBinaryBuilder('lte', value);\n }\n\n asc(): OrderBuilder<ColumnName, ColumnMeta, JsType> {\n return Object.freeze({\n kind: 'order' as const,\n expr: this as unknown as ColumnBuilder<ColumnName, ColumnMeta, JsType>,\n dir: 'asc' as const,\n }) as OrderBuilder<ColumnName, ColumnMeta, JsType>;\n }\n\n desc(): OrderBuilder<ColumnName, ColumnMeta, JsType> {\n return Object.freeze({\n kind: 'order' as const,\n expr: this as unknown as ColumnBuilder<ColumnName, ColumnMeta, JsType>,\n dir: 'desc' as const,\n }) as OrderBuilder<ColumnName, ColumnMeta, JsType>;\n }\n}\n\nexport class TableBuilderImpl<\n Contract extends SqlContract<SqlStorage>,\n TableName extends string,\n Columns extends Record<string, StorageColumn>,\n CodecTypes extends CodecTypesType,\n Operations extends OperationTypes,\n> implements TableRef\n{\n readonly kind = 'table' as const;\n readonly columns: ColumnBuilders<Contract, TableName, Columns, CodecTypes, Operations>;\n private readonly _name: TableName;\n\n constructor(\n name: TableName,\n columns: ColumnBuilders<Contract, TableName, Columns, CodecTypes, Operations>,\n ) {\n this._name = name;\n this.columns = columns;\n }\n\n get name(): string {\n return this._name;\n }\n}\n\nfunction buildColumns<\n Contract extends SqlContract<SqlStorage>,\n TableName extends keyof Contract['storage']['tables'] & string,\n CodecTypes extends CodecTypesType,\n Operations extends OperationTypes,\n>(\n tableName: TableName,\n storage: SqlStorage,\n _contract: Contract,\n operationRegistry?: OperationRegistry,\n contractCapabilities?: Record<string, Record<string, boolean>>,\n): ColumnBuilders<\n Contract,\n TableName,\n Contract['storage']['tables'][TableName]['columns'],\n CodecTypes,\n Operations\n> {\n const table = storage.tables[tableName];\n\n if (!table) {\n throw planInvalid(`Unknown table ${tableName}`);\n }\n\n type Columns = Contract['storage']['tables'][TableName]['columns'];\n const tableColumns = table.columns as Columns;\n\n const result = {} as {\n [K in keyof Columns]: ColumnBuilder<\n K & string,\n Columns[K],\n ComputeColumnJsType<Contract, TableName, K & string, Columns[K], CodecTypes>,\n Operations\n >;\n };\n\n const assignColumn = <ColumnKey extends keyof Columns & string>(\n columnName: ColumnKey,\n columnDef: Columns[ColumnKey],\n ) => {\n type JsType = ComputeColumnJsType<\n Contract,\n TableName,\n ColumnKey,\n Columns[ColumnKey],\n CodecTypes\n >;\n\n const columnBuilder = new ColumnBuilderImpl<ColumnKey, Columns[ColumnKey], JsType>(\n tableName,\n columnName,\n columnDef,\n );\n\n const builderWithOps = attachOperationsToColumnBuilder<\n ColumnKey,\n Columns[ColumnKey],\n JsType,\n Operations\n >(\n columnBuilder as unknown as ColumnBuilder<\n ColumnKey,\n Columns[ColumnKey],\n JsType,\n Record<string, never>\n >,\n columnDef,\n operationRegistry,\n contractCapabilities,\n );\n\n (result as Record<string, unknown>)[columnName] = builderWithOps;\n };\n\n for (const columnName of Object.keys(tableColumns) as Array<keyof Columns & string>) {\n const columnDef = tableColumns[columnName];\n if (!columnDef) continue;\n assignColumn(columnName, columnDef);\n }\n\n return result as ColumnBuilders<Contract, TableName, Columns, CodecTypes, Operations>;\n}\n\n/**\n * Creates a Proxy that enables accessing table columns directly on the table object,\n * in addition to the standard `table.columns.columnName` syntax.\n *\n * This allows both access patterns:\n * - `tables.user.columns.id` (standard access)\n * - `tables.user.id` (convenience access via proxy)\n *\n * The proxy intercepts property access and routes column name lookups to\n * `table.columns[prop]`, while preserving direct access to table properties\n * like `name`, `kind`, and `columns`.\n */\nfunction createTableProxy<\n Contract extends SqlContract<SqlStorage>,\n TableName extends string,\n Columns extends Record<string, StorageColumn>,\n CodecTypes extends CodecTypesType,\n Operations extends OperationTypes,\n>(\n table: TableBuilderImpl<Contract, TableName, Columns, CodecTypes, Operations>,\n): TableBuilderImpl<Contract, TableName, Columns, CodecTypes, Operations> {\n return new Proxy(table, {\n get(target, prop) {\n if (prop === 'name' || prop === 'kind' || prop === 'columns') {\n return Reflect.get(target, prop);\n }\n if (typeof prop === 'string' && prop in target.columns) {\n return target.columns[prop as keyof typeof target.columns];\n }\n return undefined;\n },\n });\n}\n\ntype ExtractSchemaTables<\n Contract extends SqlContract<SqlStorage>,\n CodecTypes extends CodecTypesType,\n Operations extends OperationTypes,\n> = {\n readonly [TableName in keyof Contract['storage']['tables']]: TableBuilderImpl<\n Contract,\n TableName & string,\n TableColumns<Contract['storage']['tables'][TableName]>,\n CodecTypes,\n Operations\n > &\n TableRef;\n};\n\nexport type SchemaHandle<\n Contract extends SqlContract<SqlStorage> = SqlContract<SqlStorage>,\n CodecTypes extends CodecTypesType = CodecTypesType,\n Operations extends OperationTypes = Record<string, never>,\n> = {\n readonly tables: ExtractSchemaTables<Contract, CodecTypes, Operations>;\n};\n\ntype SchemaReturnType<Contract extends SqlContract<SqlStorage>> = SchemaHandle<\n Contract,\n ExtractCodecTypes<Contract>,\n ToOperationTypes<ExtractOperationTypes<Contract>>\n>;\n\ntype NormalizeOperationTypes<T> = {\n [TypeId in keyof T]: {\n [Method in keyof T[TypeId]]: T[TypeId][Method] extends OperationTypeSignature\n ? T[TypeId][Method]\n : OperationTypeSignature;\n };\n};\n\ntype ToOperationTypes<T> = T extends OperationTypes ? T : NormalizeOperationTypes<T>;\n\n/**\n * Creates a schema handle for building SQL queries.\n *\n * @param context - Query lane context containing contract, codec and operation registries\n * @returns A schema handle with typed table builders\n *\n * @example\n * ```typescript\n * const schemaHandle = schema<Contract>(context);\n * const userTable = schemaHandle.tables.user;\n * ```\n */\nexport function schema<Contract extends SqlContract<SqlStorage>>(\n context: QueryLaneContext<Contract>,\n): SchemaReturnType<Contract> {\n const contract = context.contract;\n const storage = contract.storage;\n type CodecTypes = ExtractCodecTypes<Contract>;\n type Operations = ToOperationTypes<ExtractOperationTypes<Contract>>;\n const tables = {} as ExtractSchemaTables<Contract, CodecTypes, Operations>;\n const contractCapabilities = contract.capabilities;\n\n const operationRegistry = context.operations;\n\n for (const tableName of Object.keys(storage.tables) as Array<\n keyof Contract['storage']['tables'] & string\n >) {\n const columns = buildColumns<Contract, typeof tableName, CodecTypes, Operations>(\n tableName,\n storage,\n contract,\n operationRegistry,\n contractCapabilities,\n );\n const table = new TableBuilderImpl<\n Contract,\n typeof tableName & string,\n Contract['storage']['tables'][typeof tableName]['columns'],\n CodecTypes,\n Operations\n >(tableName, columns);\n const proxiedTable = createTableProxy<\n Contract,\n typeof tableName & string,\n Contract['storage']['tables'][typeof tableName]['columns'],\n CodecTypes,\n Operations\n >(table);\n (tables as Record<string, unknown>)[tableName] = Object.freeze(\n proxiedTable,\n ) as ExtractSchemaTables<Contract, CodecTypes, Operations>[typeof tableName];\n }\n\n return Object.freeze({ tables }) as SchemaReturnType<Contract>;\n}\n\nexport type { ColumnBuilderImpl as Column, TableBuilderImpl as Table };\n"],"mappings":";;;;;;;;AACA,SAAS,mBAAmB;AAyCrB,IAAM,oBAAN,MAIL;AAAA,EAGA,YACW,OACA,QACQ,eACjB;AAHS;AACA;AACQ;AAAA,EAChB;AAAA,EANM,OAAO;AAAA,EAQhB,IAAI,aAAyB;AAC3B,WAAO,KAAK;AAAA,EACd;AAAA;AAAA,EAGA,IAAI,WAAmB;AACrB,WAAO;AAAA,EACT;AAAA,EAEQ,oBACN,IACA,OAC+C;AAC/C,QAAI,SAAS,MAAM;AACjB,YAAM,YAAY,wEAAwE;AAAA,IAC5F;AACA,QAAI,MAAM,SAAS,uBAAuB,gBAAgB,KAAK,GAAG;AAChE,aAAO,OAAO,OAAO;AAAA,QACnB,MAAM;AAAA,QACN;AAAA,QACA,MAAM;AAAA,QACN,OAAO;AAAA,MACT,CAAC;AAAA,IACH;AACA,UAAM,YAAY,wEAAwE;AAAA,EAC5F;AAAA,EAEA,GACE,OAC+C;AAC/C,WAAO,KAAK,oBAAoB,MAAM,KAAK;AAAA,EAC7C;AAAA,EAEA,IACE,OAC+C;AAC/C,WAAO,KAAK,oBAAoB,OAAO,KAAK;AAAA,EAC9C;AAAA,EAEA,GACE,OAC+C;AAC/C,WAAO,KAAK,oBAAoB,MAAM,KAAK;AAAA,EAC7C;AAAA,EAEA,GACE,OAC+C;AAC/C,WAAO,KAAK,oBAAoB,MAAM,KAAK;AAAA,EAC7C;AAAA,EAEA,IACE,OAC+C;AAC/C,WAAO,KAAK,oBAAoB,OAAO,KAAK;AAAA,EAC9C;AAAA,EAEA,IACE,OAC+C;AAC/C,WAAO,KAAK,oBAAoB,OAAO,KAAK;AAAA,EAC9C;AAAA,EAEA,MAAoD;AAClD,WAAO,OAAO,OAAO;AAAA,MACnB,MAAM;AAAA,MACN,MAAM;AAAA,MACN,KAAK;AAAA,IACP,CAAC;AAAA,EACH;AAAA,EAEA,OAAqD;AACnD,WAAO,OAAO,OAAO;AAAA,MACnB,MAAM;AAAA,MACN,MAAM;AAAA,MACN,KAAK;AAAA,IACP,CAAC;AAAA,EACH;AACF;AAEO,IAAM,mBAAN,MAOP;AAAA,EACW,OAAO;AAAA,EACP;AAAA,EACQ;AAAA,EAEjB,YACE,MACA,SACA;AACA,SAAK,QAAQ;AACb,SAAK,UAAU;AAAA,EACjB;AAAA,EAEA,IAAI,OAAe;AACjB,WAAO,KAAK;AAAA,EACd;AACF;AAEA,SAAS,aAMP,WACA,SACA,WACA,mBACA,sBAOA;AACA,QAAM,QAAQ,QAAQ,OAAO,SAAS;AAEtC,MAAI,CAAC,OAAO;AACV,UAAM,YAAY,iBAAiB,SAAS,EAAE;AAAA,EAChD;AAGA,QAAM,eAAe,MAAM;AAE3B,QAAM,SAAS,CAAC;AAShB,QAAM,eAAe,CACnB,YACA,cACG;AASH,UAAM,gBAAgB,IAAI;AAAA,MACxB;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAEA,UAAM,iBAAiB;AAAA,MAMrB;AAAA,MAMA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAEA,IAAC,OAAmC,UAAU,IAAI;AAAA,EACpD;AAEA,aAAW,cAAc,OAAO,KAAK,YAAY,GAAoC;AACnF,UAAM,YAAY,aAAa,UAAU;AACzC,QAAI,CAAC,UAAW;AAChB,iBAAa,YAAY,SAAS;AAAA,EACpC;AAEA,SAAO;AACT;AAcA,SAAS,iBAOP,OACwE;AACxE,SAAO,IAAI,MAAM,OAAO;AAAA,IACtB,IAAI,QAAQ,MAAM;AAChB,UAAI,SAAS,UAAU,SAAS,UAAU,SAAS,WAAW;AAC5D,eAAO,QAAQ,IAAI,QAAQ,IAAI;AAAA,MACjC;AACA,UAAI,OAAO,SAAS,YAAY,QAAQ,OAAO,SAAS;AACtD,eAAO,OAAO,QAAQ,IAAmC;AAAA,MAC3D;AACA,aAAO;AAAA,IACT;AAAA,EACF,CAAC;AACH;AAqDO,SAAS,OACd,SAC4B;AAC5B,QAAM,WAAW,QAAQ;AACzB,QAAM,UAAU,SAAS;AAGzB,QAAM,SAAS,CAAC;AAChB,QAAM,uBAAuB,SAAS;AAEtC,QAAM,oBAAoB,QAAQ;AAElC,aAAW,aAAa,OAAO,KAAK,QAAQ,MAAM,GAE/C;AACD,UAAM,UAAU;AAAA,MACd;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AACA,UAAM,QAAQ,IAAI,iBAMhB,WAAW,OAAO;AACpB,UAAM,eAAe,iBAMnB,KAAK;AACP,IAAC,OAAmC,SAAS,IAAI,OAAO;AAAA,MACtD;AAAA,IACF;AAAA,EACF;AAEA,SAAO,OAAO,OAAO,EAAE,OAAO,CAAC;AACjC;","names":[]}
|
package/dist/errors.d.ts
DELETED
package/dist/errors.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
|
package/dist/exports/ast.d.ts
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export * from '../ast/adapter-types';
|
|
2
|
-
export * from '../ast/codec-types';
|
|
3
|
-
export * from '../ast/common';
|
|
4
|
-
export * from '../ast/delete';
|
|
5
|
-
export * from '../ast/driver-types';
|
|
6
|
-
export * from '../ast/insert';
|
|
7
|
-
export * from '../ast/join';
|
|
8
|
-
export * from '../ast/order';
|
|
9
|
-
export * from '../ast/predicate';
|
|
10
|
-
export * from '../ast/select';
|
|
11
|
-
export * from '../ast/types';
|
|
12
|
-
export * from '../ast/update';
|
|
13
|
-
export * from '../ast/util';
|
|
14
|
-
//# sourceMappingURL=ast.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../src/exports/ast.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC"}
|
package/dist/exports/ast.js
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
codec,
|
|
3
|
-
compact,
|
|
4
|
-
createBinaryExpr,
|
|
5
|
-
createCodecRegistry,
|
|
6
|
-
createColumnRef,
|
|
7
|
-
createDeleteAst,
|
|
8
|
-
createExistsExpr,
|
|
9
|
-
createInsertAst,
|
|
10
|
-
createJoin,
|
|
11
|
-
createJoinOnBuilder,
|
|
12
|
-
createJoinOnExpr,
|
|
13
|
-
createLiteralExpr,
|
|
14
|
-
createOperationExpr,
|
|
15
|
-
createOrderByItem,
|
|
16
|
-
createParamRef,
|
|
17
|
-
createSelectAst,
|
|
18
|
-
createTableRef,
|
|
19
|
-
createUpdateAst,
|
|
20
|
-
defineCodecs,
|
|
21
|
-
isOperationExpr
|
|
22
|
-
} from "../chunk-J6O2HVBM.js";
|
|
23
|
-
import "../chunk-D4JLPIWO.js";
|
|
24
|
-
export {
|
|
25
|
-
codec,
|
|
26
|
-
compact,
|
|
27
|
-
createBinaryExpr,
|
|
28
|
-
createCodecRegistry,
|
|
29
|
-
createColumnRef,
|
|
30
|
-
createDeleteAst,
|
|
31
|
-
createExistsExpr,
|
|
32
|
-
createInsertAst,
|
|
33
|
-
createJoin,
|
|
34
|
-
createJoinOnBuilder,
|
|
35
|
-
createJoinOnExpr,
|
|
36
|
-
createLiteralExpr,
|
|
37
|
-
createOperationExpr,
|
|
38
|
-
createOrderByItem,
|
|
39
|
-
createParamRef,
|
|
40
|
-
createSelectAst,
|
|
41
|
-
createTableRef,
|
|
42
|
-
createUpdateAst,
|
|
43
|
-
defineCodecs,
|
|
44
|
-
isOperationExpr
|
|
45
|
-
};
|
|
46
|
-
//# sourceMappingURL=ast.js.map
|
package/dist/exports/ast.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/exports/errors.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/exports/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC"}
|
package/dist/exports/errors.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/exports/guards.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"guards.d.ts","sourceRoot":"","sources":["../../src/exports/guards.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,kBAAkB,GACnB,MAAM,iBAAiB,CAAC"}
|
package/dist/exports/guards.js
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
collectColumnRefs,
|
|
3
|
-
extractBaseColumnRef,
|
|
4
|
-
getColumnInfo,
|
|
5
|
-
getColumnMeta,
|
|
6
|
-
getOperationExpr,
|
|
7
|
-
isColumnBuilder,
|
|
8
|
-
isOperationExpr,
|
|
9
|
-
isParamPlaceholder
|
|
10
|
-
} from "../chunk-5N34PNVZ.js";
|
|
11
|
-
export {
|
|
12
|
-
collectColumnRefs,
|
|
13
|
-
extractBaseColumnRef,
|
|
14
|
-
getColumnInfo,
|
|
15
|
-
getColumnMeta,
|
|
16
|
-
getOperationExpr,
|
|
17
|
-
isColumnBuilder,
|
|
18
|
-
isOperationExpr,
|
|
19
|
-
isParamPlaceholder
|
|
20
|
-
};
|
|
21
|
-
//# sourceMappingURL=guards.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"operations-registry.d.ts","sourceRoot":"","sources":["../../src/exports/operations-registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/exports/param.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"param.d.ts","sourceRoot":"","sources":["../../src/exports/param.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC"}
|
package/dist/exports/param.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/exports/plan.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../src/exports/plan.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
|
package/dist/exports/plan.js
DELETED
package/dist/exports/plan.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query-lane-context.d.ts","sourceRoot":"","sources":["../../src/exports/query-lane-context.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/exports/schema.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/exports/schema.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,iBAAiB,IAAI,MAAM,EAC3B,YAAY,EACZ,gBAAgB,IAAI,KAAK,GAC1B,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC"}
|
package/dist/exports/schema.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
ColumnBuilderImpl,
|
|
3
|
-
TableBuilderImpl,
|
|
4
|
-
schema
|
|
5
|
-
} from "../chunk-U7IAFPVU.js";
|
|
6
|
-
import "../chunk-M23L3JHG.js";
|
|
7
|
-
import "../chunk-5N34PNVZ.js";
|
|
8
|
-
import "../chunk-D4JLPIWO.js";
|
|
9
|
-
export {
|
|
10
|
-
ColumnBuilderImpl,
|
|
11
|
-
TableBuilderImpl,
|
|
12
|
-
schema
|
|
13
|
-
};
|
|
14
|
-
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/exports/types.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/exports/types.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
|
package/dist/exports/types.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
package/dist/index.d.ts
DELETED
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export * from './exports/ast';
|
|
2
|
-
export * from './exports/errors';
|
|
3
|
-
export * from './exports/operations-registry';
|
|
4
|
-
export * from './exports/param';
|
|
5
|
-
export * from './exports/plan';
|
|
6
|
-
export * from './exports/query-lane-context';
|
|
7
|
-
export * from './exports/schema';
|
|
8
|
-
export * from './exports/types';
|
|
9
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
|
package/dist/index.js
DELETED
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import "./chunk-U7AXAUJA.js";
|
|
2
|
-
import {
|
|
3
|
-
ColumnBuilderImpl,
|
|
4
|
-
TableBuilderImpl,
|
|
5
|
-
schema
|
|
6
|
-
} from "./chunk-U7IAFPVU.js";
|
|
7
|
-
import {
|
|
8
|
-
param
|
|
9
|
-
} from "./chunk-7I3EMQID.js";
|
|
10
|
-
import "./chunk-36WJWNHT.js";
|
|
11
|
-
import "./chunk-G52ENULI.js";
|
|
12
|
-
import {
|
|
13
|
-
attachOperationsToColumnBuilder
|
|
14
|
-
} from "./chunk-M23L3JHG.js";
|
|
15
|
-
import "./chunk-5N34PNVZ.js";
|
|
16
|
-
import {
|
|
17
|
-
planInvalid,
|
|
18
|
-
planUnsupported
|
|
19
|
-
} from "./chunk-2F7DSEOU.js";
|
|
20
|
-
import {
|
|
21
|
-
codec,
|
|
22
|
-
compact,
|
|
23
|
-
createBinaryExpr,
|
|
24
|
-
createCodecRegistry,
|
|
25
|
-
createColumnRef,
|
|
26
|
-
createDeleteAst,
|
|
27
|
-
createExistsExpr,
|
|
28
|
-
createInsertAst,
|
|
29
|
-
createJoin,
|
|
30
|
-
createJoinOnBuilder,
|
|
31
|
-
createJoinOnExpr,
|
|
32
|
-
createLiteralExpr,
|
|
33
|
-
createOperationExpr,
|
|
34
|
-
createOrderByItem,
|
|
35
|
-
createParamRef,
|
|
36
|
-
createSelectAst,
|
|
37
|
-
createTableRef,
|
|
38
|
-
createUpdateAst,
|
|
39
|
-
defineCodecs,
|
|
40
|
-
isOperationExpr
|
|
41
|
-
} from "./chunk-J6O2HVBM.js";
|
|
42
|
-
import {
|
|
43
|
-
createOrderBuilder,
|
|
44
|
-
isColumnBuilder
|
|
45
|
-
} from "./chunk-D4JLPIWO.js";
|
|
46
|
-
import {
|
|
47
|
-
augmentDescriptorWithColumnMeta
|
|
48
|
-
} from "./chunk-KYSP7L5C.js";
|
|
49
|
-
export {
|
|
50
|
-
ColumnBuilderImpl,
|
|
51
|
-
TableBuilderImpl,
|
|
52
|
-
attachOperationsToColumnBuilder,
|
|
53
|
-
augmentDescriptorWithColumnMeta,
|
|
54
|
-
codec,
|
|
55
|
-
compact,
|
|
56
|
-
createBinaryExpr,
|
|
57
|
-
createCodecRegistry,
|
|
58
|
-
createColumnRef,
|
|
59
|
-
createDeleteAst,
|
|
60
|
-
createExistsExpr,
|
|
61
|
-
createInsertAst,
|
|
62
|
-
createJoin,
|
|
63
|
-
createJoinOnBuilder,
|
|
64
|
-
createJoinOnExpr,
|
|
65
|
-
createLiteralExpr,
|
|
66
|
-
createOperationExpr,
|
|
67
|
-
createOrderBuilder,
|
|
68
|
-
createOrderByItem,
|
|
69
|
-
createParamRef,
|
|
70
|
-
createSelectAst,
|
|
71
|
-
createTableRef,
|
|
72
|
-
createUpdateAst,
|
|
73
|
-
defineCodecs,
|
|
74
|
-
isColumnBuilder,
|
|
75
|
-
isOperationExpr,
|
|
76
|
-
param,
|
|
77
|
-
planInvalid,
|
|
78
|
-
planUnsupported,
|
|
79
|
-
schema
|
|
80
|
-
};
|
|
81
|
-
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { OperationRegistry } from '@prisma-next/operations';
|
|
2
|
-
import type { StorageColumn } from '@prisma-next/sql-contract/types';
|
|
3
|
-
import type { ColumnBuilder, OperationTypes } from './types';
|
|
4
|
-
export declare function attachOperationsToColumnBuilder<ColumnName extends string, ColumnMeta extends StorageColumn, JsType = unknown, Operations extends OperationTypes = Record<string, never>>(columnBuilder: ColumnBuilder<ColumnName, ColumnMeta, JsType, Record<string, never>>, columnMeta: ColumnMeta, registry: OperationRegistry | undefined, contractCapabilities?: Record<string, Record<string, boolean>>): ColumnBuilder<ColumnName, ColumnMeta, JsType, Operations>;
|
|
5
|
-
//# sourceMappingURL=operations-registry.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"operations-registry.d.ts","sourceRoot":"","sources":["../src/operations-registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAGrE,OAAO,KAAK,EAAoB,aAAa,EAAE,cAAc,EAAoB,MAAM,SAAS,CAAC;AA0KjG,wBAAgB,+BAA+B,CAC7C,UAAU,SAAS,MAAM,EACzB,UAAU,SAAS,aAAa,EAChC,MAAM,GAAG,OAAO,EAChB,UAAU,SAAS,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAEzD,aAAa,EAAE,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EACnF,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,iBAAiB,GAAG,SAAS,EACvC,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAC7D,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,CAkD3D"}
|
package/dist/param.d.ts
DELETED
package/dist/param.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"param.d.ts","sourceRoot":"","sources":["../src/param.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD,MAAM,MAAM,SAAS,GAAG,gBAAgB,CAAC;AAEzC,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAS7C"}
|
package/dist/plan.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import type { ExecutionPlan, ParamDescriptor } from '@prisma-next/contract/types';
|
|
2
|
-
import type { StorageColumn } from '@prisma-next/sql-contract/types';
|
|
3
|
-
import type { QueryAst } from './ast/types';
|
|
4
|
-
/**
|
|
5
|
-
* SQL query plan produced by lanes before lowering.
|
|
6
|
-
*
|
|
7
|
-
* Lanes build ASTs and metadata but do not perform SQL lowering.
|
|
8
|
-
* The `sql` field is absent - lowering happens in the runtime executor.
|
|
9
|
-
*
|
|
10
|
-
* Structurally aligns with ExecutionPlan<Row, QueryAst> (without sql field) to maintain
|
|
11
|
-
* compatibility with ExecutionPlan/Plan-based utilities.
|
|
12
|
-
* The generic parameter `_Row` is preserved for type extraction via ResultType.
|
|
13
|
-
*/
|
|
14
|
-
export interface SqlQueryPlan<_Row = unknown> extends Pick<ExecutionPlan<_Row, QueryAst>, 'params' | 'meta'> {
|
|
15
|
-
readonly ast: QueryAst;
|
|
16
|
-
readonly _Row?: _Row;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Augments the last ParamDescriptor in the array with codecId and nativeType from columnMeta.
|
|
20
|
-
* This is used when building WHERE expressions to ensure param descriptors have type information.
|
|
21
|
-
*/
|
|
22
|
-
export declare function augmentDescriptorWithColumnMeta(descriptors: ParamDescriptor[], columnMeta: StorageColumn | undefined): void;
|
|
23
|
-
//# sourceMappingURL=plan.d.ts.map
|
package/dist/plan.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../src/plan.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;;;;;GASG;AACH,MAAM,WAAW,YAAY,CAAC,IAAI,GAAG,OAAO,CAC1C,SAAQ,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC9D,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC;IAGvB,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,WAAW,EAAE,eAAe,EAAE,EAC9B,UAAU,EAAE,aAAa,GAAG,SAAS,GACpC,IAAI,CASN"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import type { OperationRegistry } from '@prisma-next/operations';
|
|
2
|
-
import type { SqlContract, SqlStorage } from '@prisma-next/sql-contract/types';
|
|
3
|
-
import type { CodecRegistry } from './ast/codec-types';
|
|
4
|
-
/**
|
|
5
|
-
* Minimal context interface for SQL query lanes.
|
|
6
|
-
*
|
|
7
|
-
* Lanes only need contract, operations, and codecs to build typed ASTs and attach
|
|
8
|
-
* operation builders. This interface explicitly excludes runtime concerns like
|
|
9
|
-
* adapters, connection management, and transaction state.
|
|
10
|
-
*/
|
|
11
|
-
export interface QueryLaneContext<TContract extends SqlContract<SqlStorage> = SqlContract<SqlStorage>> {
|
|
12
|
-
readonly contract: TContract;
|
|
13
|
-
readonly operations: OperationRegistry;
|
|
14
|
-
readonly codecs: CodecRegistry;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=query-lane-context.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"query-lane-context.d.ts","sourceRoot":"","sources":["../src/query-lane-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB,CAC/B,SAAS,SAAS,WAAW,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC,UAAU,CAAC;IAEnE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;CAChC"}
|