neoorm 0.9.1 → 0.9.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/schema/index.d.ts +1 -1
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/table.d.ts +41 -10
- package/dist/schema/table.d.ts.map +1 -1
- package/dist/schema/table.js +11 -4
- package/dist/schema/table.js.map +1 -1
- package/docs/schema.md +5 -5
- package/package.json +1 -1
package/dist/schema/index.d.ts
CHANGED
|
@@ -17,7 +17,7 @@ export { many, manyToMany } from "./many-to-many.js";
|
|
|
17
17
|
export type { FkBuilder, FkDeferrable, FkMeta, OnDeleteAction, OnUpdateAction, } from "./relation.js";
|
|
18
18
|
export { fk } from "./relation.js";
|
|
19
19
|
export type { InlineM2MInverseRelations, InlineM2MInverseWhereMap, InlineM2MInverseWriteMap, InlineM2MRelations, InlineM2MWhereMap, InlineM2MWriteMap, InverseRelations, JunctionM2MRelations, NestedCreateInput, OutgoingFkRelations, RelationCreateMap, RelationUpdateMap, SqlNameToAccessor, } from "./relation-types.js";
|
|
20
|
-
export type { BloomIndexOptions, ColumnDef, ColumnNaming, ColumnRefs, ForeignKeyBuilder, ForeignKeyDef, IndexBuilder, IndexDef, IndexExpr, IndexKeyInput, IndexMethod, IndexScopeHelpers, IndexWhereInput, IndexWherePredicate, IndexWhereValue, PrimaryKeyDef, ScalarColumnKeys, TableDef, TableExtra, TableOptions, TableScope, } from "./table.js";
|
|
20
|
+
export type { BloomIndexOptions, ColumnDef, ColumnKey, ColumnNaming, ColumnRef, ColumnRefs, ForeignKeyBuilder, ForeignKeyDef, IndexBuilder, IndexDef, IndexExpr, IndexKeyInput, IndexMethod, IndexScopeHelpers, IndexWhereInput, IndexWherePredicate, IndexWhereValue, PrimaryKeyDef, ScalarColumnKeys, TableDef, TableExtra, TableOptions, TableScope, } from "./table.js";
|
|
21
21
|
export { expr, foreignKey, index, primaryKey, table, unique } from "./table.js";
|
|
22
22
|
export { clearTableRegistry } from "./table-registry.js";
|
|
23
23
|
export type { AggregateArgs, ApplyOmit, ApplySelect, ColumnWhereInput, ComparableFilter, ConnectInput, ConnectOrCreateItem, CountArgs, CountSelect, CreateArgs, CreateInput, CreateManyAndReturnArgs, CreateManyArgs, CreateManyInput, CursorInput, DeleteArgs, DeleteManyAndReturnArgs, DeleteManyArgs, ExistsArgs, FindByIdArgs, FindFirstArgs, FindManyArgs, FindOrCreateArgs, FindOrCreateResult, FindUniqueArgs, GroupByArgs, GroupByHaving, GroupByOrderBy, HiddenKeys, InferAggregateResult, InferCountResult, InferFindResult, InferGroupByResult, InferInsertRow, InferMutationResult, InferPkFields, InferSelectRow, InferWithResult, JsonFilter, LogicalWhereInput, ManyRelationFilter, NumericHaving, NumericUpdateOps, OmitInput, OrderByInput, OrderDirection, PaginateArgs, PaginateResult, PluginColumnWhereOperators, QueryMode, RelationAccessors, RelationCountInput, RelationWhereMap, RelationWriteInput, ScalarPkName, ScalarSetOp, SchemaTables, SearchTsParser, SearchTsQuery, SelectInput, StringFilter, StripCapable, StripOmitKeys, StripResult, UniqueWhere, UpdateArgs, UpdateInput, UpdateManyAndReturnArgs, UpdateManyArgs, UpsertArgs, WhereInput, WhereOperators, WithInclude, WithInput, WithInputMap, WithRelationOptions, } from "./types.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"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"}
|
package/dist/schema/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,OAAO,EACN,MAAM,EACN,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,SAAS,EACT,OAAO,EACP,MAAM,EACN,SAAS,EACT,QAAQ,EACR,KAAK,EACL,EAAE,EACF,IAAI,EACJ,GAAG,EACH,SAAS,EACT,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,SAAS,EACT,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,SAAS,EACT,GAAG,GACH,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMlD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAQrD,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,OAAO,EACN,MAAM,EACN,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,SAAS,EACT,OAAO,EACP,MAAM,EACN,SAAS,EACT,QAAQ,EACR,KAAK,EACL,EAAE,EACF,IAAI,EACJ,GAAG,EACH,SAAS,EACT,SAAS,EACT,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,KAAK,EACL,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,SAAS,EACT,IAAI,EACJ,SAAS,EACT,UAAU,EACV,OAAO,EACP,SAAS,EACT,QAAQ,EACR,IAAI,EACJ,SAAS,EACT,GAAG,GACH,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAMlD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAQrD,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAyCnC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAChF,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC"}
|
package/dist/schema/table.d.ts
CHANGED
|
@@ -109,7 +109,27 @@ export type TableDef<TName extends string = string, TColumns extends Record<stri
|
|
|
109
109
|
readonly _columnNaming?: ColumnNaming;
|
|
110
110
|
};
|
|
111
111
|
export type ColumnRefs<TColumns extends Record<string, ColumnDef>> = {
|
|
112
|
-
readonly [K in keyof TColumns]: K & string
|
|
112
|
+
readonly [K in keyof TColumns]: K & string & {
|
|
113
|
+
readonly __colName?: K & string;
|
|
114
|
+
readonly __tableCols?: TColumns;
|
|
115
|
+
};
|
|
116
|
+
};
|
|
117
|
+
/**
|
|
118
|
+
* Branded column-name ref. Runtime is still a plain string; the phantom
|
|
119
|
+
* `__tableCols` lets top-level `index()` / `unique()` infer the table's
|
|
120
|
+
* columns from `t.col` args so `.where()` gets key completion.
|
|
121
|
+
*/
|
|
122
|
+
export type ColumnRef<TColumns extends Record<string, ColumnDef> = Record<string, ColumnDef>> = string & {
|
|
123
|
+
readonly __tableCols?: TColumns;
|
|
124
|
+
};
|
|
125
|
+
/**
|
|
126
|
+
* Column-name key for index/PK/FK declarations. Without table context
|
|
127
|
+
* (default columns) any string is accepted; once `TColumns` is inferred
|
|
128
|
+
* from `t.col` refs, only real column names validate so typos error.
|
|
129
|
+
* Expression keys stay separate (`IndexExpr` in each signature).
|
|
130
|
+
*/
|
|
131
|
+
export type ColumnKey<TColumns extends Record<string, ColumnDef> = Record<string, ColumnDef>> = Extract<keyof TColumns & string, string> & {
|
|
132
|
+
readonly __tableCols?: TColumns;
|
|
113
133
|
};
|
|
114
134
|
/**
|
|
115
135
|
* Per-column value for a partial-index predicate.
|
|
@@ -133,7 +153,8 @@ type IndexScopeKeys<TColumns extends Record<string, ColumnDef>> = readonly (Extr
|
|
|
133
153
|
* `index()` / `unique()` bound to the enclosing `table()` so `.where()`
|
|
134
154
|
* is typed. Exposed as `t.index` / `t.unique` on the extras scope.
|
|
135
155
|
* Omitted when the table has a column with the same name (use the
|
|
136
|
-
* top-level `index()` / `unique()` instead,
|
|
156
|
+
* top-level `index()` / `unique()` instead, which infers the same typed
|
|
157
|
+
* predicate from `t.col` keys).
|
|
137
158
|
*/
|
|
138
159
|
export type IndexScopeHelpers<TColumns extends Record<string, ColumnDef>> = ("index" extends Extract<keyof TColumns, string> ? Record<never, never> : {
|
|
139
160
|
index(...keys: IndexScopeKeys<TColumns>): IndexBuilder<TColumns>;
|
|
@@ -173,25 +194,35 @@ export declare function isIndexExpr(value: unknown): value is IndexExpr;
|
|
|
173
194
|
export declare function expr(sql: string): IndexExpr;
|
|
174
195
|
/**
|
|
175
196
|
* Create a non-unique index on one or more columns (use in table extras).
|
|
176
|
-
*
|
|
197
|
+
* When keys come from the extras scope (`t.col`), the table's columns are
|
|
198
|
+
* inferred: `.where()` gets key completion and unknown key names error.
|
|
199
|
+
* Raw strings stay untyped.
|
|
177
200
|
*/
|
|
178
|
-
export declare function index(...keys: readonly
|
|
201
|
+
export declare function index<TColumns extends Record<string, ColumnDef> = Record<string, ColumnDef>>(...keys: readonly (ColumnKey<TColumns> | IndexExpr)[]): IndexBuilder<TColumns>;
|
|
179
202
|
/**
|
|
180
203
|
* Create a unique index on one or more columns (use in table extras).
|
|
181
|
-
* Supports `.where()` for partial uniques;
|
|
182
|
-
* `t.
|
|
204
|
+
* Supports `.where()` for partial uniques; when keys come from the extras
|
|
205
|
+
* scope (`t.col`), the predicate is typed and unknown key names error.
|
|
206
|
+
* Raw strings stay untyped.
|
|
183
207
|
*/
|
|
184
|
-
export declare function unique(...keys: readonly
|
|
208
|
+
export declare function unique<TColumns extends Record<string, ColumnDef> = Record<string, ColumnDef>>(...keys: readonly (ColumnKey<TColumns> | IndexExpr)[]): IndexBuilder<TColumns>;
|
|
209
|
+
/** Strip column-ref brands back to plain string literals. */
|
|
210
|
+
type UnbrandColumnNames<T extends readonly string[]> = {
|
|
211
|
+
[I in keyof T]: T[I] extends {
|
|
212
|
+
readonly __colName?: infer N extends string;
|
|
213
|
+
} ? N : T[I];
|
|
214
|
+
};
|
|
185
215
|
/** Declare a composite primary key (use in table extras). */
|
|
186
|
-
export declare function primaryKey<
|
|
216
|
+
export declare function primaryKey<TColumns extends Record<string, ColumnDef> = Record<string, ColumnDef>, const T extends readonly string[] = readonly []>(...columns: T & readonly ColumnKey<TColumns>[]): {
|
|
187
217
|
kind: "primaryKey";
|
|
188
|
-
columns:
|
|
218
|
+
columns: UnbrandColumnNames<T>;
|
|
189
219
|
};
|
|
190
220
|
/**
|
|
191
221
|
* Declare a composite foreign-key constraint as a first-class relation
|
|
192
222
|
* (use in table extras). Local columns must not also be `fk()`.
|
|
223
|
+
* Keys from the extras scope (`t.col`) are validated against the table.
|
|
193
224
|
*/
|
|
194
|
-
export declare function foreignKey(...columns: readonly
|
|
225
|
+
export declare function foreignKey<TColumns extends Record<string, ColumnDef> = Record<string, ColumnDef>>(...columns: readonly ColumnKey<TColumns>[]): ForeignKeyBuilder<"", "", "">;
|
|
195
226
|
/**
|
|
196
227
|
* Define a table and its columns.
|
|
197
228
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/schema/table.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"table.d.ts","sourceRoot":"","sources":["../../src/schema/table.ts"],"names":[],"mappings":"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"}
|
package/dist/schema/table.js
CHANGED
|
@@ -54,22 +54,28 @@ function createIndexBuilder(state) {
|
|
|
54
54
|
}
|
|
55
55
|
/**
|
|
56
56
|
* Create a non-unique index on one or more columns (use in table extras).
|
|
57
|
-
*
|
|
57
|
+
* When keys come from the extras scope (`t.col`), the table's columns are
|
|
58
|
+
* inferred: `.where()` gets key completion and unknown key names error.
|
|
59
|
+
* Raw strings stay untyped.
|
|
58
60
|
*/
|
|
59
61
|
export function index(...keys) {
|
|
60
62
|
return createIndexBuilder({ keys, unique: false });
|
|
61
63
|
}
|
|
62
64
|
/**
|
|
63
65
|
* Create a unique index on one or more columns (use in table extras).
|
|
64
|
-
* Supports `.where()` for partial uniques;
|
|
65
|
-
* `t.
|
|
66
|
+
* Supports `.where()` for partial uniques; when keys come from the extras
|
|
67
|
+
* scope (`t.col`), the predicate is typed and unknown key names error.
|
|
68
|
+
* Raw strings stay untyped.
|
|
66
69
|
*/
|
|
67
70
|
export function unique(...keys) {
|
|
68
71
|
return createIndexBuilder({ keys, unique: true });
|
|
69
72
|
}
|
|
70
73
|
/** Declare a composite primary key (use in table extras). */
|
|
71
74
|
export function primaryKey(...columns) {
|
|
72
|
-
return {
|
|
75
|
+
return {
|
|
76
|
+
kind: "primaryKey",
|
|
77
|
+
columns: columns,
|
|
78
|
+
};
|
|
73
79
|
}
|
|
74
80
|
function createForeignKeyBuilder(state) {
|
|
75
81
|
return {
|
|
@@ -115,6 +121,7 @@ function createForeignKeyBuilder(state) {
|
|
|
115
121
|
/**
|
|
116
122
|
* Declare a composite foreign-key constraint as a first-class relation
|
|
117
123
|
* (use in table extras). Local columns must not also be `fk()`.
|
|
124
|
+
* Keys from the extras scope (`t.col`) are validated against the table.
|
|
118
125
|
*/
|
|
119
126
|
export function foreignKey(...columns) {
|
|
120
127
|
return createForeignKeyBuilder({
|
package/dist/schema/table.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/schema/table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAU5D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,4EAA4E;AAC5E,MAAM,UAAU,aAAa,CAAC,GAAc;IAC3C,IAAI,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IACxC,OAAO,GAAG,CAAC,KAAK,CAAC;AAClB,CAAC;
|
|
1
|
+
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/schema/table.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAU5D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAIpD,4EAA4E;AAC5E,MAAM,UAAU,aAAa,CAAC,GAAc;IAC3C,IAAI,CAAC,CAAC,OAAO,IAAI,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IACxC,OAAO,GAAG,CAAC,KAAK,CAAC;AAClB,CAAC;AAySD,SAAS,iBAAiB,CAAC,IAA8B;IACxD,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAiB,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,KAAc;IACzC,OAAO,CACN,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACb,KAA2B,CAAC,IAAI,KAAK,WAAW;QACjD,OAAQ,KAA2B,CAAC,GAAG,KAAK,QAAQ,CACpD,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,IAAI,CAAC,GAAW;IAC/B,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC;AACnC,CAAC;AAED,SAAS,kBAAkB,CAEzB,KAMD;IACA,MAAM,GAAG,GAAa;QACrB,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC;QACtC,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9C,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3C,CAAC;IACF,OAAO;QACN,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5C,KAAK,CAAC,MAAmB;YACxB,OAAO,kBAAkB,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACxD,CAAC;QACD,GAAG,CAAC,OAAe;YAClB,OAAO,kBAAkB,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,OAA0B;YAC9B,OAAO,kBAAkB,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACxD,CAAC;QACD,KAAK,CAAC,SAAoC;YACzC,OAAO,EAAE,GAAG,GAAG,EAAE,KAAK,EAAE,SAAgC,EAAE,CAAC;QAC5D,CAAC;KACD,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,KAAK,CAGpB,GAAG,IAAkD;IAErD,OAAO,kBAAkB,CAAW,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CAGrB,GAAG,IAAkD;IAErD,OAAO,kBAAkB,CAAW,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;AAC7D,CAAC;AASD,6DAA6D;AAC7D,MAAM,UAAU,UAAU,CAIzB,GAAG,OAA2C;IAE9C,OAAO;QACN,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,OAA2C;KACpD,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAK/B,KAA4C;IAE5C,OAAO;QACN,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,GAAG,EAAE,KAAK,CAAC,GAAG;QACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,KAAK,CAAC,cAAc;YACvB,CAAC,CAAC,EAAE,cAAc,EAAE,KAAK,CAAC,cAAc,EAAE;YAC1C,CAAC,CAAC,EAAE,CAAC;QACN,UAAU,CACT,KAAY,EACZ,GAAG,aAAgC;YAEnC,OAAO,uBAAuB,CAAC;gBAC9B,GAAG,KAAK;gBACR,WAAW,EAAE,KAAK;gBAClB,aAAa;aACb,CAAC,CAAC;QACJ,CAAC;QACD,EAAE,CAAuB,IAAW;YACnC,OAAO,uBAAuB,CAAC,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,CAAuB,IAAW;YACxC,OAAO,uBAAuB,CAAC,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,QAAQ,CAAC,MAAsB;YAC9B,OAAO,uBAAuB,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,QAAQ,CAAC,MAAsB;YAC9B,OAAO,uBAAuB,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QACjE,CAAC;QACD,UAAU,CAAC,MAAM,GAAiB,WAAW;YAC5C,OAAO,uBAAuB,CAAC,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC;QACnE,CAAC;QACD,GAAG,CAAC,IAAY;YACf,OAAO,uBAAuB,CAAC,EAAE,GAAG,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,CAAC;KACD,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAExB,GAAG,OAAuC;IAC3C,OAAO,uBAAuB,CAAC;QAC9B,IAAI,EAAE,YAAY;QAClB,OAAO;QACP,WAAW,EAAE,EAAE;QACf,aAAa,EAAE,EAAE;QACjB,GAAG,EAAE,EAAE;QACP,QAAQ,EAAE,EAAE;KACZ,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,KAAc;IAClC,OAAO,CACN,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,KAAK,IAAI;QACd,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QACrB,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,CAClB,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CACrB,IAA0B,EAC1B,MAEyB;IAEzB,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,OAAO,EAAE,CAAC;IACX,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,UAAU,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACjD,CAAC;AAED,SAAS,kBAAkB,CAC1B,MAIY;IAEZ,IACC,OAAO,MAAM,KAAK,QAAQ;QAC1B,MAAM,KAAK,IAAI;QACf,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EACpB,CAAC;QACF,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,CAAC,cAAc,IAAI,MAAM,CAAC;QAAE,OAAO,SAAS,CAAC;IAClD,MAAM,MAAM,GAAG,MAAM,CAAC,YAAY,CAAC;IACnC,IAAI,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,WAAW;QAAE,OAAO,MAAM,CAAC;IACpE,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,SAAS,aAAa,CAKrB,OAAc,EACd,OAAiB,EACjB,MAAe,EACf,YAA2B;IAG3B,MAAM,YAAY,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAEnD,MAAM,GAAG,GAAG;QACX,UAAU,EAAE,OAAO;QACnB,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,MAAM;QACf,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG;QACvE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAO3B,CAAC;IAE/B,aAAa,CAAC,GAAG,EAAE,OAA6C,CAAC,CAAC;IAElE,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAMH,CAAC;AAChC,CAAC;AAuCD,MAAM,UAAU,KAAK,CACpB,KAAyC,EACzC,MAG0C,EAC1C,KAE0C;IAE1C,0EAA0E;IAC1E,uEAAuE;IACvE,uDAAuD;IACvD,MAAM,OAAO,GAAG,CACf,SAAoC,EACI,EAAE;QAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,CAC/B,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CACA,CAAC;QAC3C,IAAI,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,EAAE,CAAC;YACxB,KAAiC,CAAC,KAAK,GAAG,KAAK,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,EAAE,CAAC;YACzB,KAAiC,CAAC,MAAM,GAAG,MAAM,CAAC;QACpD,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC,CAAC;IACF,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;QACtD,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;QACrD,OAAO,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,WAAW,CAChB,eAAe,CAAC,cAAc,EAC9B,4FAA4F,CAC5F,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;IACrD,OAAO,aAAa,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,oBAAoB,CACnC,OAAkC;IAElC,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACrD,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE,OAAO,KAAK,IAAI;YAAE,OAAO,MAAM,CAAC;IACzD,CAAC;IACD,KAAK,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QACrD,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE,IAAI,KAAK,IAAI;YAAE,OAAO,MAAM,CAAC;IACtD,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC"}
|
package/docs/schema.md
CHANGED
|
@@ -279,7 +279,7 @@ posts: table(
|
|
|
279
279
|
),
|
|
280
280
|
```
|
|
281
281
|
|
|
282
|
-
Helpers: `unique(...cols)`, `index(...cols)`, `primaryKey(...cols)`, `expr("sql")`. `unique()` and `index()` support `.using()`, `.ops()`, `.with()` (bloom only), and `.where()` for partial indexes.
|
|
282
|
+
Helpers: `unique(...cols)`, `index(...cols)`, `primaryKey(...cols)`, `expr("sql")`. `unique()` and `index()` support `.using()`, `.ops()`, `.with()` (bloom only), and `.where()` for partial indexes. Key names from the extras scope (`t.col`) are validated against the table's columns; raw strings are unchecked.
|
|
283
283
|
|
|
284
284
|
### Index methods and expressions
|
|
285
285
|
|
|
@@ -310,10 +310,10 @@ Bloom indexes (Postgres only) are tuned with `.with({ length, cols })`: `cols` m
|
|
|
310
310
|
],
|
|
311
311
|
```
|
|
312
312
|
|
|
313
|
-
Use `t.index` / `t.unique`
|
|
314
|
-
|
|
315
|
-
the table's columns.
|
|
316
|
-
with an untyped predicate.
|
|
313
|
+
Use `t.index` / `t.unique` or the top-level `index()` / `unique()` with
|
|
314
|
+
`t.col` keys — in both cases the `where` predicate is typed: keys and scalar
|
|
315
|
+
values autocomplete from the table's columns. Raw-string keys
|
|
316
|
+
(`unique("email")`) still accept `.where()` with an untyped predicate.
|
|
317
317
|
|
|
318
318
|
Equality map of column refs → values; compiled to `WHERE "published" = true` (or `= 1` on SQLite). Partial uniques emit as `CREATE UNIQUE INDEX ... WHERE ...`, not table-level `UNIQUE (...)`. They are valid `findUnique` / `upsert` / `findOrCreate` targets: `where` uses the indexed columns, and the index predicate is applied automatically (`AND` on lookups, `ON CONFLICT (…) WHERE …` on Postgres and SQLite).
|
|
319
319
|
|