@type32/tauri-sqlite-orm 0.1.18-19 → 0.1.18-20
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/index.d.mts +39 -26
- package/dist/index.d.ts +39 -26
- package/dist/index.js +14 -3
- package/dist/index.mjs +12 -3
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import Database from '@tauri-apps/plugin-sql';
|
|
2
2
|
|
|
3
|
-
type ColumnDataType =
|
|
4
|
-
type Mode =
|
|
5
|
-
type ColumnValueTypes<TType extends ColumnDataType, TMode extends Mode> = TType extends
|
|
6
|
-
interface ColumnOptions<TData> {
|
|
3
|
+
type ColumnDataType = 'TEXT' | 'INTEGER' | 'REAL' | 'BLOB' | 'BOOLEAN' | 'NUMERIC';
|
|
4
|
+
type Mode = 'default' | 'timestamp' | 'timestamp_ms' | 'json' | 'boolean' | 'bigint';
|
|
5
|
+
type ColumnValueTypes<TType extends ColumnDataType, TMode extends Mode> = TType extends 'TEXT' ? TMode extends 'json' ? any : string : TType extends 'INTEGER' ? TMode extends 'timestamp' | 'timestamp_ms' ? Date : TMode extends 'boolean' ? boolean : number : TType extends 'REAL' ? number : TType extends 'BOOLEAN' ? boolean : TType extends 'BLOB' ? TMode extends 'json' ? any : TMode extends 'bigint' ? bigint : Uint8Array : TType extends 'NUMERIC' ? TMode extends 'bigint' ? bigint : number : never;
|
|
6
|
+
interface ColumnOptions<TData, TEnum extends readonly string[] = readonly string[]> {
|
|
7
7
|
notNull?: boolean;
|
|
8
8
|
default?: TData;
|
|
9
9
|
$defaultFn?: () => TData;
|
|
@@ -16,14 +16,15 @@ interface ColumnOptions<TData> {
|
|
|
16
16
|
};
|
|
17
17
|
mode?: Mode;
|
|
18
18
|
$onUpdateFn?: () => TData;
|
|
19
|
+
enum?: TEnum;
|
|
19
20
|
}
|
|
20
|
-
type ExtractColumnType<T extends AnySQLiteColumn> = T extends SQLiteColumn<infer _, infer TType, infer TMode, infer TNotNull, infer THasDefault> ? THasDefault extends true ? TNotNull extends true ? ColumnValueTypes<TType, TMode> : ColumnValueTypes<TType, TMode> | null | undefined : TNotNull extends true ? ColumnValueTypes<TType, TMode> : ColumnValueTypes<TType, TMode> | null | undefined : never;
|
|
21
|
-
type AnySQLiteColumn = SQLiteColumn<any, any, any, any, any, any>;
|
|
21
|
+
type ExtractColumnType<T extends AnySQLiteColumn> = T['_']['customType'] extends never ? T['_']['enum'] extends readonly string[] ? T['_']['enum'][number] : T extends SQLiteColumn<infer _, infer TType, infer TMode, infer TNotNull, infer THasDefault> ? THasDefault extends true ? TNotNull extends true ? ColumnValueTypes<TType, TMode> : ColumnValueTypes<TType, TMode> | null | undefined : TNotNull extends true ? ColumnValueTypes<TType, TMode> : ColumnValueTypes<TType, TMode> | null | undefined : never : T['_']['customType'];
|
|
22
|
+
type AnySQLiteColumn = SQLiteColumn<any, any, any, any, any, any, any, any>;
|
|
22
23
|
type AnyTable = Table<Record<string, AnySQLiteColumn>, string>;
|
|
23
24
|
type InferSelectModel<T extends AnyTable> = {
|
|
24
|
-
[K in keyof T[
|
|
25
|
+
[K in keyof T['_']['columns']]: ExtractColumnType<T['_']['columns'][K]>;
|
|
25
26
|
};
|
|
26
|
-
type RelationType =
|
|
27
|
+
type RelationType = 'one' | 'many';
|
|
27
28
|
interface RelationConfig {
|
|
28
29
|
type: RelationType;
|
|
29
30
|
foreignTable: AnyTable;
|
|
@@ -138,9 +139,9 @@ type RelationsBuilder = {
|
|
|
138
139
|
many: <U extends AnyTable>(table: U) => ManyRelation<U>;
|
|
139
140
|
};
|
|
140
141
|
|
|
141
|
-
declare class SQLiteColumn<TName extends string = string, TType extends ColumnDataType = ColumnDataType, TMode extends Mode = 'default', TNotNull extends boolean = false, THasDefault extends boolean = false, TAutoincrement extends boolean = false> {
|
|
142
|
+
declare class SQLiteColumn<TName extends string = string, TType extends ColumnDataType = ColumnDataType, TMode extends Mode = 'default', TNotNull extends boolean = false, THasDefault extends boolean = false, TAutoincrement extends boolean = false, TEnum extends readonly string[] = never, TCustomType = never> {
|
|
142
143
|
type: TType;
|
|
143
|
-
options: ColumnOptions<ColumnValueTypes<TType, TMode
|
|
144
|
+
options: ColumnOptions<ColumnValueTypes<TType, TMode>, TEnum>;
|
|
144
145
|
_: {
|
|
145
146
|
name: TName;
|
|
146
147
|
dataType: TType;
|
|
@@ -148,17 +149,20 @@ declare class SQLiteColumn<TName extends string = string, TType extends ColumnDa
|
|
|
148
149
|
notNull: TNotNull;
|
|
149
150
|
hasDefault: THasDefault;
|
|
150
151
|
autoincrement: TAutoincrement;
|
|
152
|
+
enum: TEnum;
|
|
153
|
+
customType: TCustomType;
|
|
151
154
|
};
|
|
152
|
-
constructor(name: TName, type: TType, options?: ColumnOptions<ColumnValueTypes<TType, TMode
|
|
153
|
-
notNull(): SQLiteColumn<TName, TType, TMode, true, THasDefault, TAutoincrement>;
|
|
154
|
-
default(value: ColumnValueTypes<TType, TMode>): SQLiteColumn<TName, TType, TMode, TNotNull, true, TAutoincrement>;
|
|
155
|
-
$defaultFn(fn: () => ColumnValueTypes<TType, TMode>): SQLiteColumn<TName, TType, TMode, TNotNull, true, TAutoincrement>;
|
|
156
|
-
primaryKey(): SQLiteColumn<TName, TType, TMode, true, THasDefault, TAutoincrement>;
|
|
157
|
-
autoincrement(): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, true>;
|
|
158
|
-
unique(): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement>;
|
|
159
|
-
references<T extends AnyTable, K extends keyof T['_']['columns'] & string>(ref: T, column: K): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement>;
|
|
160
|
-
$onUpdateFn(fn: () => ColumnValueTypes<TType, TMode>): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement>;
|
|
161
|
-
|
|
155
|
+
constructor(name: TName, type: TType, options?: ColumnOptions<ColumnValueTypes<TType, TMode>, TEnum>, mode?: TMode);
|
|
156
|
+
notNull(): SQLiteColumn<TName, TType, TMode, true, THasDefault, TAutoincrement, TEnum, TCustomType>;
|
|
157
|
+
default(value: ColumnValueTypes<TType, TMode>): SQLiteColumn<TName, TType, TMode, TNotNull, true, TAutoincrement, TEnum, TCustomType>;
|
|
158
|
+
$defaultFn(fn: () => ColumnValueTypes<TType, TMode>): SQLiteColumn<TName, TType, TMode, TNotNull, true, TAutoincrement, TEnum, TCustomType>;
|
|
159
|
+
primaryKey(): SQLiteColumn<TName, TType, TMode, true, THasDefault, TAutoincrement, TEnum, TCustomType>;
|
|
160
|
+
autoincrement(): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, true, TEnum, TCustomType>;
|
|
161
|
+
unique(): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement, TEnum, TCustomType>;
|
|
162
|
+
references<T extends AnyTable, K extends keyof T['_']['columns'] & string>(ref: T, column: K): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement, TEnum, TCustomType>;
|
|
163
|
+
$onUpdateFn(fn: () => ColumnValueTypes<TType, TMode>): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement, TEnum, TCustomType>;
|
|
164
|
+
$type<T>(): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement, TEnum, T>;
|
|
165
|
+
as(alias: string): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement, TEnum, TCustomType>;
|
|
162
166
|
}
|
|
163
167
|
type IsOptionalOnInsert<C extends AnySQLiteColumn> = C['_']['notNull'] extends false ? true : C['_']['hasDefault'] extends true ? true : C['_']['autoincrement'] extends true ? true : false;
|
|
164
168
|
type OptionalColumns<TColumns extends Record<string, AnySQLiteColumn>> = {
|
|
@@ -269,12 +273,21 @@ declare const avg: (column: AnySQLiteColumn) => SQLCondition;
|
|
|
269
273
|
declare const max: (column: AnySQLiteColumn) => SQLCondition;
|
|
270
274
|
declare const min: (column: AnySQLiteColumn) => SQLCondition;
|
|
271
275
|
|
|
272
|
-
declare const text: <TName extends string>(name: TName
|
|
276
|
+
declare const text: <TName extends string, TEnum extends readonly string[]>(name: TName, config?: {
|
|
277
|
+
mode?: "json";
|
|
278
|
+
enum?: TEnum;
|
|
279
|
+
}) => SQLiteColumn<TName, "TEXT", "json", false, false, false, TEnum, never>;
|
|
273
280
|
declare const integer: <TName extends string, TMode extends Mode = "default">(name: TName, config?: {
|
|
274
281
|
mode?: TMode;
|
|
275
|
-
}) => SQLiteColumn<TName, "INTEGER", "default" | TMode, false, false, false>;
|
|
276
|
-
declare const real: <TName extends string>(name: TName) => SQLiteColumn<TName, "REAL", "default", false, false, false>;
|
|
277
|
-
declare const blob: <TName extends string>(name: TName
|
|
278
|
-
|
|
282
|
+
}) => SQLiteColumn<TName, "INTEGER", "default" | TMode, false, false, false, never, never>;
|
|
283
|
+
declare const real: <TName extends string>(name: TName) => SQLiteColumn<TName, "REAL", "default", false, false, false, never, never>;
|
|
284
|
+
declare const blob: <TName extends string>(name: TName, config?: {
|
|
285
|
+
mode: "json" | "bigint";
|
|
286
|
+
}) => SQLiteColumn<TName, "BLOB", "bigint" | "json", false, false, false, never, never>;
|
|
287
|
+
declare const boolean: <TName extends string>(name: TName) => SQLiteColumn<TName, "BOOLEAN", "default", false, false, false, never, never>;
|
|
288
|
+
declare const numeric: <TName extends string>(name: TName, config?: {
|
|
289
|
+
mode?: "bigint";
|
|
290
|
+
}) => SQLiteColumn<TName, "NUMERIC", "bigint", false, false, false, never, never>;
|
|
291
|
+
declare const enumType: <TName extends string, TValues extends readonly [string, ...string[]]>(name: TName, values: TValues) => SQLiteColumn<TName, "TEXT", "json", false, false, false, TValues, never>;
|
|
279
292
|
|
|
280
|
-
export { type AnySQLiteColumn, type AnyTable, BaseQueryBuilder, type ColumnDataType, type ColumnOptions, type ColumnValueTypes, DeleteQueryBuilder, type ExtractColumnType, type InferInsertModel, type InferSelectModel, InsertQueryBuilder, ManyRelation, type Mode, OneRelation, Relation, type RelationConfig, type RelationType, type RelationsBuilder, type SQLCondition, SQLiteColumn, SelectQueryBuilder, Table, TauriORM, UpdateQueryBuilder, WithQueryBuilder, alias, and, asc, avg, blob, boolean, count, countDistinct, desc, eq, getTableColumns, gt, gte, inArray, integer, isNotNull, isNull, like, lt, lte, max, min, not, or, real, relations, sql, sqliteTable, sum, text };
|
|
293
|
+
export { type AnySQLiteColumn, type AnyTable, BaseQueryBuilder, type ColumnDataType, type ColumnOptions, type ColumnValueTypes, DeleteQueryBuilder, type ExtractColumnType, type InferInsertModel, type InferSelectModel, InsertQueryBuilder, ManyRelation, type Mode, OneRelation, Relation, type RelationConfig, type RelationType, type RelationsBuilder, type SQLCondition, SQLiteColumn, SelectQueryBuilder, Table, TauriORM, UpdateQueryBuilder, WithQueryBuilder, alias, and, asc, avg, blob, boolean, count, countDistinct, desc, enumType, eq, getTableColumns, gt, gte, inArray, integer, isNotNull, isNull, like, lt, lte, max, min, not, numeric, or, real, relations, sql, sqliteTable, sum, text };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import Database from '@tauri-apps/plugin-sql';
|
|
2
2
|
|
|
3
|
-
type ColumnDataType =
|
|
4
|
-
type Mode =
|
|
5
|
-
type ColumnValueTypes<TType extends ColumnDataType, TMode extends Mode> = TType extends
|
|
6
|
-
interface ColumnOptions<TData> {
|
|
3
|
+
type ColumnDataType = 'TEXT' | 'INTEGER' | 'REAL' | 'BLOB' | 'BOOLEAN' | 'NUMERIC';
|
|
4
|
+
type Mode = 'default' | 'timestamp' | 'timestamp_ms' | 'json' | 'boolean' | 'bigint';
|
|
5
|
+
type ColumnValueTypes<TType extends ColumnDataType, TMode extends Mode> = TType extends 'TEXT' ? TMode extends 'json' ? any : string : TType extends 'INTEGER' ? TMode extends 'timestamp' | 'timestamp_ms' ? Date : TMode extends 'boolean' ? boolean : number : TType extends 'REAL' ? number : TType extends 'BOOLEAN' ? boolean : TType extends 'BLOB' ? TMode extends 'json' ? any : TMode extends 'bigint' ? bigint : Uint8Array : TType extends 'NUMERIC' ? TMode extends 'bigint' ? bigint : number : never;
|
|
6
|
+
interface ColumnOptions<TData, TEnum extends readonly string[] = readonly string[]> {
|
|
7
7
|
notNull?: boolean;
|
|
8
8
|
default?: TData;
|
|
9
9
|
$defaultFn?: () => TData;
|
|
@@ -16,14 +16,15 @@ interface ColumnOptions<TData> {
|
|
|
16
16
|
};
|
|
17
17
|
mode?: Mode;
|
|
18
18
|
$onUpdateFn?: () => TData;
|
|
19
|
+
enum?: TEnum;
|
|
19
20
|
}
|
|
20
|
-
type ExtractColumnType<T extends AnySQLiteColumn> = T extends SQLiteColumn<infer _, infer TType, infer TMode, infer TNotNull, infer THasDefault> ? THasDefault extends true ? TNotNull extends true ? ColumnValueTypes<TType, TMode> : ColumnValueTypes<TType, TMode> | null | undefined : TNotNull extends true ? ColumnValueTypes<TType, TMode> : ColumnValueTypes<TType, TMode> | null | undefined : never;
|
|
21
|
-
type AnySQLiteColumn = SQLiteColumn<any, any, any, any, any, any>;
|
|
21
|
+
type ExtractColumnType<T extends AnySQLiteColumn> = T['_']['customType'] extends never ? T['_']['enum'] extends readonly string[] ? T['_']['enum'][number] : T extends SQLiteColumn<infer _, infer TType, infer TMode, infer TNotNull, infer THasDefault> ? THasDefault extends true ? TNotNull extends true ? ColumnValueTypes<TType, TMode> : ColumnValueTypes<TType, TMode> | null | undefined : TNotNull extends true ? ColumnValueTypes<TType, TMode> : ColumnValueTypes<TType, TMode> | null | undefined : never : T['_']['customType'];
|
|
22
|
+
type AnySQLiteColumn = SQLiteColumn<any, any, any, any, any, any, any, any>;
|
|
22
23
|
type AnyTable = Table<Record<string, AnySQLiteColumn>, string>;
|
|
23
24
|
type InferSelectModel<T extends AnyTable> = {
|
|
24
|
-
[K in keyof T[
|
|
25
|
+
[K in keyof T['_']['columns']]: ExtractColumnType<T['_']['columns'][K]>;
|
|
25
26
|
};
|
|
26
|
-
type RelationType =
|
|
27
|
+
type RelationType = 'one' | 'many';
|
|
27
28
|
interface RelationConfig {
|
|
28
29
|
type: RelationType;
|
|
29
30
|
foreignTable: AnyTable;
|
|
@@ -138,9 +139,9 @@ type RelationsBuilder = {
|
|
|
138
139
|
many: <U extends AnyTable>(table: U) => ManyRelation<U>;
|
|
139
140
|
};
|
|
140
141
|
|
|
141
|
-
declare class SQLiteColumn<TName extends string = string, TType extends ColumnDataType = ColumnDataType, TMode extends Mode = 'default', TNotNull extends boolean = false, THasDefault extends boolean = false, TAutoincrement extends boolean = false> {
|
|
142
|
+
declare class SQLiteColumn<TName extends string = string, TType extends ColumnDataType = ColumnDataType, TMode extends Mode = 'default', TNotNull extends boolean = false, THasDefault extends boolean = false, TAutoincrement extends boolean = false, TEnum extends readonly string[] = never, TCustomType = never> {
|
|
142
143
|
type: TType;
|
|
143
|
-
options: ColumnOptions<ColumnValueTypes<TType, TMode
|
|
144
|
+
options: ColumnOptions<ColumnValueTypes<TType, TMode>, TEnum>;
|
|
144
145
|
_: {
|
|
145
146
|
name: TName;
|
|
146
147
|
dataType: TType;
|
|
@@ -148,17 +149,20 @@ declare class SQLiteColumn<TName extends string = string, TType extends ColumnDa
|
|
|
148
149
|
notNull: TNotNull;
|
|
149
150
|
hasDefault: THasDefault;
|
|
150
151
|
autoincrement: TAutoincrement;
|
|
152
|
+
enum: TEnum;
|
|
153
|
+
customType: TCustomType;
|
|
151
154
|
};
|
|
152
|
-
constructor(name: TName, type: TType, options?: ColumnOptions<ColumnValueTypes<TType, TMode
|
|
153
|
-
notNull(): SQLiteColumn<TName, TType, TMode, true, THasDefault, TAutoincrement>;
|
|
154
|
-
default(value: ColumnValueTypes<TType, TMode>): SQLiteColumn<TName, TType, TMode, TNotNull, true, TAutoincrement>;
|
|
155
|
-
$defaultFn(fn: () => ColumnValueTypes<TType, TMode>): SQLiteColumn<TName, TType, TMode, TNotNull, true, TAutoincrement>;
|
|
156
|
-
primaryKey(): SQLiteColumn<TName, TType, TMode, true, THasDefault, TAutoincrement>;
|
|
157
|
-
autoincrement(): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, true>;
|
|
158
|
-
unique(): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement>;
|
|
159
|
-
references<T extends AnyTable, K extends keyof T['_']['columns'] & string>(ref: T, column: K): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement>;
|
|
160
|
-
$onUpdateFn(fn: () => ColumnValueTypes<TType, TMode>): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement>;
|
|
161
|
-
|
|
155
|
+
constructor(name: TName, type: TType, options?: ColumnOptions<ColumnValueTypes<TType, TMode>, TEnum>, mode?: TMode);
|
|
156
|
+
notNull(): SQLiteColumn<TName, TType, TMode, true, THasDefault, TAutoincrement, TEnum, TCustomType>;
|
|
157
|
+
default(value: ColumnValueTypes<TType, TMode>): SQLiteColumn<TName, TType, TMode, TNotNull, true, TAutoincrement, TEnum, TCustomType>;
|
|
158
|
+
$defaultFn(fn: () => ColumnValueTypes<TType, TMode>): SQLiteColumn<TName, TType, TMode, TNotNull, true, TAutoincrement, TEnum, TCustomType>;
|
|
159
|
+
primaryKey(): SQLiteColumn<TName, TType, TMode, true, THasDefault, TAutoincrement, TEnum, TCustomType>;
|
|
160
|
+
autoincrement(): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, true, TEnum, TCustomType>;
|
|
161
|
+
unique(): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement, TEnum, TCustomType>;
|
|
162
|
+
references<T extends AnyTable, K extends keyof T['_']['columns'] & string>(ref: T, column: K): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement, TEnum, TCustomType>;
|
|
163
|
+
$onUpdateFn(fn: () => ColumnValueTypes<TType, TMode>): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement, TEnum, TCustomType>;
|
|
164
|
+
$type<T>(): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement, TEnum, T>;
|
|
165
|
+
as(alias: string): SQLiteColumn<TName, TType, TMode, TNotNull, THasDefault, TAutoincrement, TEnum, TCustomType>;
|
|
162
166
|
}
|
|
163
167
|
type IsOptionalOnInsert<C extends AnySQLiteColumn> = C['_']['notNull'] extends false ? true : C['_']['hasDefault'] extends true ? true : C['_']['autoincrement'] extends true ? true : false;
|
|
164
168
|
type OptionalColumns<TColumns extends Record<string, AnySQLiteColumn>> = {
|
|
@@ -269,12 +273,21 @@ declare const avg: (column: AnySQLiteColumn) => SQLCondition;
|
|
|
269
273
|
declare const max: (column: AnySQLiteColumn) => SQLCondition;
|
|
270
274
|
declare const min: (column: AnySQLiteColumn) => SQLCondition;
|
|
271
275
|
|
|
272
|
-
declare const text: <TName extends string>(name: TName
|
|
276
|
+
declare const text: <TName extends string, TEnum extends readonly string[]>(name: TName, config?: {
|
|
277
|
+
mode?: "json";
|
|
278
|
+
enum?: TEnum;
|
|
279
|
+
}) => SQLiteColumn<TName, "TEXT", "json", false, false, false, TEnum, never>;
|
|
273
280
|
declare const integer: <TName extends string, TMode extends Mode = "default">(name: TName, config?: {
|
|
274
281
|
mode?: TMode;
|
|
275
|
-
}) => SQLiteColumn<TName, "INTEGER", "default" | TMode, false, false, false>;
|
|
276
|
-
declare const real: <TName extends string>(name: TName) => SQLiteColumn<TName, "REAL", "default", false, false, false>;
|
|
277
|
-
declare const blob: <TName extends string>(name: TName
|
|
278
|
-
|
|
282
|
+
}) => SQLiteColumn<TName, "INTEGER", "default" | TMode, false, false, false, never, never>;
|
|
283
|
+
declare const real: <TName extends string>(name: TName) => SQLiteColumn<TName, "REAL", "default", false, false, false, never, never>;
|
|
284
|
+
declare const blob: <TName extends string>(name: TName, config?: {
|
|
285
|
+
mode: "json" | "bigint";
|
|
286
|
+
}) => SQLiteColumn<TName, "BLOB", "bigint" | "json", false, false, false, never, never>;
|
|
287
|
+
declare const boolean: <TName extends string>(name: TName) => SQLiteColumn<TName, "BOOLEAN", "default", false, false, false, never, never>;
|
|
288
|
+
declare const numeric: <TName extends string>(name: TName, config?: {
|
|
289
|
+
mode?: "bigint";
|
|
290
|
+
}) => SQLiteColumn<TName, "NUMERIC", "bigint", false, false, false, never, never>;
|
|
291
|
+
declare const enumType: <TName extends string, TValues extends readonly [string, ...string[]]>(name: TName, values: TValues) => SQLiteColumn<TName, "TEXT", "json", false, false, false, TValues, never>;
|
|
279
292
|
|
|
280
|
-
export { type AnySQLiteColumn, type AnyTable, BaseQueryBuilder, type ColumnDataType, type ColumnOptions, type ColumnValueTypes, DeleteQueryBuilder, type ExtractColumnType, type InferInsertModel, type InferSelectModel, InsertQueryBuilder, ManyRelation, type Mode, OneRelation, Relation, type RelationConfig, type RelationType, type RelationsBuilder, type SQLCondition, SQLiteColumn, SelectQueryBuilder, Table, TauriORM, UpdateQueryBuilder, WithQueryBuilder, alias, and, asc, avg, blob, boolean, count, countDistinct, desc, eq, getTableColumns, gt, gte, inArray, integer, isNotNull, isNull, like, lt, lte, max, min, not, or, real, relations, sql, sqliteTable, sum, text };
|
|
293
|
+
export { type AnySQLiteColumn, type AnyTable, BaseQueryBuilder, type ColumnDataType, type ColumnOptions, type ColumnValueTypes, DeleteQueryBuilder, type ExtractColumnType, type InferInsertModel, type InferSelectModel, InsertQueryBuilder, ManyRelation, type Mode, OneRelation, Relation, type RelationConfig, type RelationType, type RelationsBuilder, type SQLCondition, SQLiteColumn, SelectQueryBuilder, Table, TauriORM, UpdateQueryBuilder, WithQueryBuilder, alias, and, asc, avg, blob, boolean, count, countDistinct, desc, enumType, eq, getTableColumns, gt, gte, inArray, integer, isNotNull, isNull, like, lt, lte, max, min, not, numeric, or, real, relations, sql, sqliteTable, sum, text };
|
package/dist/index.js
CHANGED
|
@@ -41,6 +41,7 @@ __export(index_exports, {
|
|
|
41
41
|
count: () => count,
|
|
42
42
|
countDistinct: () => countDistinct,
|
|
43
43
|
desc: () => desc,
|
|
44
|
+
enumType: () => enumType,
|
|
44
45
|
eq: () => eq,
|
|
45
46
|
getTableColumns: () => getTableColumns,
|
|
46
47
|
gt: () => gt,
|
|
@@ -55,6 +56,7 @@ __export(index_exports, {
|
|
|
55
56
|
max: () => max,
|
|
56
57
|
min: () => min,
|
|
57
58
|
not: () => not,
|
|
59
|
+
numeric: () => numeric,
|
|
58
60
|
or: () => or,
|
|
59
61
|
real: () => real,
|
|
60
62
|
relations: () => relations,
|
|
@@ -667,7 +669,9 @@ var SQLiteColumn = class _SQLiteColumn {
|
|
|
667
669
|
mode: mode || "default",
|
|
668
670
|
notNull: options.notNull ?? false,
|
|
669
671
|
hasDefault: options.default !== void 0 || options.$defaultFn !== void 0,
|
|
670
|
-
autoincrement: options.autoincrement ?? false
|
|
672
|
+
autoincrement: options.autoincrement ?? false,
|
|
673
|
+
enum: options.enum,
|
|
674
|
+
customType: void 0
|
|
671
675
|
};
|
|
672
676
|
}
|
|
673
677
|
_;
|
|
@@ -711,6 +715,9 @@ var SQLiteColumn = class _SQLiteColumn {
|
|
|
711
715
|
$onUpdateFn(fn) {
|
|
712
716
|
return new _SQLiteColumn(this._.name, this.type, { ...this.options, $onUpdateFn: fn }, this._.mode);
|
|
713
717
|
}
|
|
718
|
+
$type() {
|
|
719
|
+
return this;
|
|
720
|
+
}
|
|
714
721
|
as(alias2) {
|
|
715
722
|
return this;
|
|
716
723
|
}
|
|
@@ -977,11 +984,13 @@ var alias = (table, alias2) => {
|
|
|
977
984
|
};
|
|
978
985
|
|
|
979
986
|
// src/column-helpers.ts
|
|
980
|
-
var text = (name) => new SQLiteColumn(name, "TEXT");
|
|
987
|
+
var text = (name, config) => new SQLiteColumn(name, "TEXT", config, config?.mode);
|
|
981
988
|
var integer = (name, config) => new SQLiteColumn(name, "INTEGER", {}, config?.mode || "default");
|
|
982
989
|
var real = (name) => new SQLiteColumn(name, "REAL");
|
|
983
|
-
var blob = (name) => new SQLiteColumn(name, "BLOB");
|
|
990
|
+
var blob = (name, config) => new SQLiteColumn(name, "BLOB", {}, config?.mode);
|
|
984
991
|
var boolean = (name) => new SQLiteColumn(name, "BOOLEAN");
|
|
992
|
+
var numeric = (name, config) => new SQLiteColumn(name, "NUMERIC", {}, config?.mode);
|
|
993
|
+
var enumType = (name, values) => text(name, { enum: values });
|
|
985
994
|
// Annotate the CommonJS export names for ESM import in node:
|
|
986
995
|
0 && (module.exports = {
|
|
987
996
|
BaseQueryBuilder,
|
|
@@ -1005,6 +1014,7 @@ var boolean = (name) => new SQLiteColumn(name, "BOOLEAN");
|
|
|
1005
1014
|
count,
|
|
1006
1015
|
countDistinct,
|
|
1007
1016
|
desc,
|
|
1017
|
+
enumType,
|
|
1008
1018
|
eq,
|
|
1009
1019
|
getTableColumns,
|
|
1010
1020
|
gt,
|
|
@@ -1019,6 +1029,7 @@ var boolean = (name) => new SQLiteColumn(name, "BOOLEAN");
|
|
|
1019
1029
|
max,
|
|
1020
1030
|
min,
|
|
1021
1031
|
not,
|
|
1032
|
+
numeric,
|
|
1022
1033
|
or,
|
|
1023
1034
|
real,
|
|
1024
1035
|
relations,
|
package/dist/index.mjs
CHANGED
|
@@ -600,7 +600,9 @@ var SQLiteColumn = class _SQLiteColumn {
|
|
|
600
600
|
mode: mode || "default",
|
|
601
601
|
notNull: options.notNull ?? false,
|
|
602
602
|
hasDefault: options.default !== void 0 || options.$defaultFn !== void 0,
|
|
603
|
-
autoincrement: options.autoincrement ?? false
|
|
603
|
+
autoincrement: options.autoincrement ?? false,
|
|
604
|
+
enum: options.enum,
|
|
605
|
+
customType: void 0
|
|
604
606
|
};
|
|
605
607
|
}
|
|
606
608
|
_;
|
|
@@ -644,6 +646,9 @@ var SQLiteColumn = class _SQLiteColumn {
|
|
|
644
646
|
$onUpdateFn(fn) {
|
|
645
647
|
return new _SQLiteColumn(this._.name, this.type, { ...this.options, $onUpdateFn: fn }, this._.mode);
|
|
646
648
|
}
|
|
649
|
+
$type() {
|
|
650
|
+
return this;
|
|
651
|
+
}
|
|
647
652
|
as(alias2) {
|
|
648
653
|
return this;
|
|
649
654
|
}
|
|
@@ -910,11 +915,13 @@ var alias = (table, alias2) => {
|
|
|
910
915
|
};
|
|
911
916
|
|
|
912
917
|
// src/column-helpers.ts
|
|
913
|
-
var text = (name) => new SQLiteColumn(name, "TEXT");
|
|
918
|
+
var text = (name, config) => new SQLiteColumn(name, "TEXT", config, config?.mode);
|
|
914
919
|
var integer = (name, config) => new SQLiteColumn(name, "INTEGER", {}, config?.mode || "default");
|
|
915
920
|
var real = (name) => new SQLiteColumn(name, "REAL");
|
|
916
|
-
var blob = (name) => new SQLiteColumn(name, "BLOB");
|
|
921
|
+
var blob = (name, config) => new SQLiteColumn(name, "BLOB", {}, config?.mode);
|
|
917
922
|
var boolean = (name) => new SQLiteColumn(name, "BOOLEAN");
|
|
923
|
+
var numeric = (name, config) => new SQLiteColumn(name, "NUMERIC", {}, config?.mode);
|
|
924
|
+
var enumType = (name, values) => text(name, { enum: values });
|
|
918
925
|
export {
|
|
919
926
|
BaseQueryBuilder,
|
|
920
927
|
DeleteQueryBuilder,
|
|
@@ -937,6 +944,7 @@ export {
|
|
|
937
944
|
count,
|
|
938
945
|
countDistinct,
|
|
939
946
|
desc,
|
|
947
|
+
enumType,
|
|
940
948
|
eq,
|
|
941
949
|
getTableColumns,
|
|
942
950
|
gt,
|
|
@@ -951,6 +959,7 @@ export {
|
|
|
951
959
|
max,
|
|
952
960
|
min,
|
|
953
961
|
not,
|
|
962
|
+
numeric,
|
|
954
963
|
or,
|
|
955
964
|
real,
|
|
956
965
|
relations,
|