@type32/tauri-sqlite-orm 0.2.7 → 0.2.8
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/README.md +2 -0
- package/dist/index.d.mts +12 -3
- package/dist/index.d.ts +12 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -19,6 +19,8 @@ A Drizzle-like TypeScript ORM tailored for Tauri v2's `@tauri-apps/plugin-sql` (
|
|
|
19
19
|
- **Simplified Migrations:** Keep your database schema in sync with your application's models using automatic schema detection and migration tools.
|
|
20
20
|
- **Lightweight & Performant:** Designed to be a thin layer over the Tauri SQL plugin, ensuring minimal overhead.
|
|
21
21
|
|
|
22
|
+
Also, bun is the preferred package manager for developing this library, if you want to contribute.
|
|
23
|
+
|
|
22
24
|
### Installation
|
|
23
25
|
|
|
24
26
|
```bash
|
package/dist/index.d.mts
CHANGED
|
@@ -18,7 +18,11 @@ interface ColumnOptions<TData, TEnum extends readonly string[] = readonly string
|
|
|
18
18
|
$onUpdateFn?: () => TData;
|
|
19
19
|
enum?: TEnum;
|
|
20
20
|
}
|
|
21
|
-
type ExtractColumnType<T extends AnySQLiteColumn> = T
|
|
21
|
+
type ExtractColumnType<T extends AnySQLiteColumn> = T extends SQLiteColumn<infer _, infer TType, infer TMode, infer TNotNull, infer THasDefault, infer TAutoincrement, infer TEnum, infer TCustomType> ? [
|
|
22
|
+
TCustomType
|
|
23
|
+
] extends [never] ? [
|
|
24
|
+
TEnum
|
|
25
|
+
] extends [never] ? TNotNull extends true ? ColumnValueTypes<TType, TMode> : ColumnValueTypes<TType, TMode> | null : TNotNull extends true ? TEnum[number] : TEnum[number] | null : TNotNull extends true ? TCustomType : TCustomType | null : never;
|
|
22
26
|
type AnySQLiteColumn = SQLiteColumn<any, any, any, any, any, any, any, any>;
|
|
23
27
|
type AnyTable = Table<Record<string, AnySQLiteColumn>, string>;
|
|
24
28
|
type InferSelectModel<T extends AnyTable> = {
|
|
@@ -231,10 +235,15 @@ type OptionalColumns<TColumns extends Record<string, AnySQLiteColumn>> = {
|
|
|
231
235
|
type RequiredColumns<TColumns extends Record<string, AnySQLiteColumn>> = {
|
|
232
236
|
[K in keyof TColumns]: IsOptionalOnInsert<TColumns[K]> extends true ? never : K;
|
|
233
237
|
}[keyof TColumns];
|
|
238
|
+
type ExtractInsertColumnType<T extends AnySQLiteColumn> = T extends SQLiteColumn<infer _, infer TType, infer TMode, infer TNotNull, infer THasDefault, infer TAutoincrement, infer TEnum, infer TCustomType> ? [
|
|
239
|
+
TCustomType
|
|
240
|
+
] extends [never] ? [
|
|
241
|
+
TEnum
|
|
242
|
+
] extends [never] ? TNotNull extends true ? ColumnValueTypes<TType, TMode> : ColumnValueTypes<TType, TMode> | null : TNotNull extends true ? TEnum[number] : TEnum[number] | null : TNotNull extends true ? TCustomType : TCustomType | null : never;
|
|
234
243
|
type InferInsertModel<T extends AnyTable> = {
|
|
235
|
-
[K in RequiredColumns<T['_']['columns']>]:
|
|
244
|
+
[K in RequiredColumns<T['_']['columns']>]: ExtractInsertColumnType<T['_']['columns'][K]>;
|
|
236
245
|
} & {
|
|
237
|
-
[K in OptionalColumns<T['_']['columns']>]?:
|
|
246
|
+
[K in OptionalColumns<T['_']['columns']>]?: ExtractInsertColumnType<T['_']['columns'][K]>;
|
|
238
247
|
};
|
|
239
248
|
declare class Table<TColumns extends Record<string, AnySQLiteColumn>, TTableName extends string> {
|
|
240
249
|
_: {
|
package/dist/index.d.ts
CHANGED
|
@@ -18,7 +18,11 @@ interface ColumnOptions<TData, TEnum extends readonly string[] = readonly string
|
|
|
18
18
|
$onUpdateFn?: () => TData;
|
|
19
19
|
enum?: TEnum;
|
|
20
20
|
}
|
|
21
|
-
type ExtractColumnType<T extends AnySQLiteColumn> = T
|
|
21
|
+
type ExtractColumnType<T extends AnySQLiteColumn> = T extends SQLiteColumn<infer _, infer TType, infer TMode, infer TNotNull, infer THasDefault, infer TAutoincrement, infer TEnum, infer TCustomType> ? [
|
|
22
|
+
TCustomType
|
|
23
|
+
] extends [never] ? [
|
|
24
|
+
TEnum
|
|
25
|
+
] extends [never] ? TNotNull extends true ? ColumnValueTypes<TType, TMode> : ColumnValueTypes<TType, TMode> | null : TNotNull extends true ? TEnum[number] : TEnum[number] | null : TNotNull extends true ? TCustomType : TCustomType | null : never;
|
|
22
26
|
type AnySQLiteColumn = SQLiteColumn<any, any, any, any, any, any, any, any>;
|
|
23
27
|
type AnyTable = Table<Record<string, AnySQLiteColumn>, string>;
|
|
24
28
|
type InferSelectModel<T extends AnyTable> = {
|
|
@@ -231,10 +235,15 @@ type OptionalColumns<TColumns extends Record<string, AnySQLiteColumn>> = {
|
|
|
231
235
|
type RequiredColumns<TColumns extends Record<string, AnySQLiteColumn>> = {
|
|
232
236
|
[K in keyof TColumns]: IsOptionalOnInsert<TColumns[K]> extends true ? never : K;
|
|
233
237
|
}[keyof TColumns];
|
|
238
|
+
type ExtractInsertColumnType<T extends AnySQLiteColumn> = T extends SQLiteColumn<infer _, infer TType, infer TMode, infer TNotNull, infer THasDefault, infer TAutoincrement, infer TEnum, infer TCustomType> ? [
|
|
239
|
+
TCustomType
|
|
240
|
+
] extends [never] ? [
|
|
241
|
+
TEnum
|
|
242
|
+
] extends [never] ? TNotNull extends true ? ColumnValueTypes<TType, TMode> : ColumnValueTypes<TType, TMode> | null : TNotNull extends true ? TEnum[number] : TEnum[number] | null : TNotNull extends true ? TCustomType : TCustomType | null : never;
|
|
234
243
|
type InferInsertModel<T extends AnyTable> = {
|
|
235
|
-
[K in RequiredColumns<T['_']['columns']>]:
|
|
244
|
+
[K in RequiredColumns<T['_']['columns']>]: ExtractInsertColumnType<T['_']['columns'][K]>;
|
|
236
245
|
} & {
|
|
237
|
-
[K in OptionalColumns<T['_']['columns']>]?:
|
|
246
|
+
[K in OptionalColumns<T['_']['columns']>]?: ExtractInsertColumnType<T['_']['columns'][K]>;
|
|
238
247
|
};
|
|
239
248
|
declare class Table<TColumns extends Record<string, AnySQLiteColumn>, TTableName extends string> {
|
|
240
249
|
_: {
|