d1-kyt 0.4.4 → 0.4.6
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 +9 -4
- package/dist/cli.js +0 -0
- package/dist/migrate.d.ts +16 -4
- package/dist/migrate.d.ts.map +1 -1
- package/dist/migrate.js +12 -5
- package/dist/migrate.js.map +1 -1
- package/package.json +9 -10
package/README.md
CHANGED
|
@@ -17,7 +17,7 @@ const User = defineTable('User', (col) => ({
|
|
|
17
17
|
externalId: col.text().notNull(),
|
|
18
18
|
email: col.text().notNull(),
|
|
19
19
|
name: col.text(),
|
|
20
|
-
preferences: col.json<{ theme: string; notifications: boolean }>(
|
|
20
|
+
preferences: col.json<{ theme: string; notifications: boolean }>('{ theme: string; notifications: boolean }'),
|
|
21
21
|
}));
|
|
22
22
|
|
|
23
23
|
export const migration = () => [
|
|
@@ -27,20 +27,23 @@ export const migration = () => [
|
|
|
27
27
|
];
|
|
28
28
|
```
|
|
29
29
|
|
|
30
|
-
Column types: `col.text()`, `col.integer()`, `col.real()`, `col.blob()`, `col.json<T>()`.
|
|
31
|
-
`col.json<T>()` stores JSON as SQLite TEXT. The generic type parameter annotates the column's shape at compile time — use `TableType<typeof Table>` to derive a fully-typed row type from the DSL.
|
|
30
|
+
Column types: `col.text()`, `col.integer()`, `col.real()`, `col.blob()`, `col.json<T>(overrideType?)`.
|
|
31
|
+
`col.json<T>()` stores JSON as SQLite TEXT. The generic type parameter annotates the column's shape at compile time — use `TableType<typeof Table>` to derive a fully-typed row type from the DSL. Pass a TypeScript type string as the optional second argument to write that type into the kysely-codegen override registry; without it, `"unknown"` is written.
|
|
32
32
|
|
|
33
33
|
```typescript
|
|
34
34
|
import { defineTable, type TableType } from 'd1-kyt/migrate';
|
|
35
35
|
|
|
36
36
|
const User = defineTable('User', (col) => ({
|
|
37
|
-
preferences: col.json<{ theme: string; notifications: boolean }>(),
|
|
37
|
+
preferences: col.json<{ theme: string; notifications: boolean }>('{ theme: string; notifications: boolean }'),
|
|
38
38
|
}));
|
|
39
39
|
|
|
40
40
|
type UserRow = TableType<typeof User>;
|
|
41
41
|
// { preferences: { theme: string; notifications: boolean }; id: unknown; createdAt: unknown; updatedAt: unknown }
|
|
42
|
+
// → generated.ts emits: preferences: { theme: string; notifications: boolean }
|
|
42
43
|
```
|
|
43
44
|
|
|
45
|
+
The type string passed to `col.json()` is written into `d1-kyt/kysely-codegen.json` so kysely-codegen emits the real shape in `generated.ts` instead of `unknown`. `generated.ts` remains the single source of truth — auto columns (`id`, `createdAt`, `updatedAt`) are typed there, not in `TableType`.
|
|
46
|
+
|
|
44
47
|
## Query Builder
|
|
45
48
|
|
|
46
49
|
```typescript
|
|
@@ -121,6 +124,8 @@ const User = useTable('User');
|
|
|
121
124
|
export const migration = () => [
|
|
122
125
|
addColumn(User, 'age', (col) => col.integer()),
|
|
123
126
|
createIndex(User, ['age']),
|
|
127
|
+
// partial index — where accepts a typed column accessor or a raw SQL string
|
|
128
|
+
createIndex(User, ['age'], { where: col => `${col('age')} IS NOT NULL` }),
|
|
124
129
|
];
|
|
125
130
|
```
|
|
126
131
|
|
package/dist/cli.js
CHANGED
|
File without changes
|
package/dist/migrate.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ interface ColumnDefInternal {
|
|
|
8
8
|
isNotNull: boolean;
|
|
9
9
|
defaultValue: string | number | null;
|
|
10
10
|
isJson: boolean;
|
|
11
|
+
jsonOverrideType?: string;
|
|
11
12
|
}
|
|
12
13
|
/**
|
|
13
14
|
* Returns a record of "Table.column" → "unknown" for all json() columns
|
|
@@ -34,8 +35,8 @@ export interface ColumnBuilder {
|
|
|
34
35
|
integer(): ColumnDef<number>;
|
|
35
36
|
real(): ColumnDef<number>;
|
|
36
37
|
blob(): ColumnDef<string>;
|
|
37
|
-
/** JSON stored as TEXT. Emits TEXT in SQL; adds
|
|
38
|
-
json<T = unknown>(): ColumnDef<T>;
|
|
38
|
+
/** JSON stored as TEXT. Emits TEXT in SQL; adds override to kysely-codegen config (defaults to "unknown"). */
|
|
39
|
+
json<T = unknown>(overrideType?: string): ColumnDef<T>;
|
|
39
40
|
}
|
|
40
41
|
/**
|
|
41
42
|
* Options for auto-generated columns in defineTable.
|
|
@@ -117,16 +118,27 @@ export declare function useTable<T>(name: string): Table<T>;
|
|
|
117
118
|
* ```
|
|
118
119
|
*/
|
|
119
120
|
export declare function createUseTable<DB>(): <K extends keyof DB & string>(name: K) => Table<DB[K]>;
|
|
120
|
-
interface IndexOptions {
|
|
121
|
+
interface IndexOptions<T = any> {
|
|
121
122
|
unique?: boolean;
|
|
122
123
|
name?: string;
|
|
124
|
+
/**
|
|
125
|
+
* WHERE clause for a partial index.
|
|
126
|
+
* Pass a raw SQL string, or a function that receives a typed column quoter
|
|
127
|
+
* so column names are checked against the table type.
|
|
128
|
+
*
|
|
129
|
+
* @example
|
|
130
|
+
* { where: col => `${col('deletedAt')} IS NULL` }
|
|
131
|
+
* { where: '"age" > 0' }
|
|
132
|
+
*/
|
|
133
|
+
where?: string | ((col: (name: keyof T & string) => string) => string);
|
|
123
134
|
}
|
|
124
135
|
/**
|
|
125
136
|
* Create an index on a table.
|
|
126
137
|
* Use { unique: true } for unique constraint.
|
|
127
138
|
* Use { name: 'custom_name' } to override auto-generated name.
|
|
139
|
+
* Use { where } for a partial index (typed column accessor or raw SQL string).
|
|
128
140
|
*/
|
|
129
|
-
export declare function createIndex<T>(table: Table<T>, columns: (keyof T & string)[], options?: IndexOptions): string;
|
|
141
|
+
export declare function createIndex<T>(table: Table<T>, columns: (keyof T & string)[], options?: IndexOptions<T>): string;
|
|
130
142
|
/**
|
|
131
143
|
* Drop an index by name.
|
|
132
144
|
*/
|
package/dist/migrate.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../src/migrate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,KAAK,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvD,UAAU,iBAAiB;IACzB,IAAI,EAAE,UAAU,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACrC,MAAM,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"migrate.d.ts","sourceRoot":"","sources":["../src/migrate.ts"],"names":[],"mappings":"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"}
|
package/dist/migrate.js
CHANGED
|
@@ -13,12 +13,13 @@ const jsonColumnRegistry = new Map();
|
|
|
13
13
|
export function getJsonColumnOverrides() {
|
|
14
14
|
return Object.fromEntries(jsonColumnRegistry);
|
|
15
15
|
}
|
|
16
|
-
function createColumnDef(type, isJson = false) {
|
|
16
|
+
function createColumnDef(type, isJson = false, overrideType) {
|
|
17
17
|
const def = {
|
|
18
18
|
type,
|
|
19
19
|
isNotNull: false,
|
|
20
20
|
defaultValue: null,
|
|
21
21
|
isJson,
|
|
22
|
+
jsonOverrideType: overrideType,
|
|
22
23
|
};
|
|
23
24
|
const columnDef = {
|
|
24
25
|
_def: def,
|
|
@@ -38,7 +39,7 @@ const columnBuilder = {
|
|
|
38
39
|
integer: () => createColumnDef('INTEGER'),
|
|
39
40
|
real: () => createColumnDef('REAL'),
|
|
40
41
|
blob: () => createColumnDef('BLOB'),
|
|
41
|
-
json: () => createColumnDef('TEXT', true),
|
|
42
|
+
json: (overrideType) => createColumnDef('TEXT', true, overrideType),
|
|
42
43
|
};
|
|
43
44
|
/** Default options for defineTable */
|
|
44
45
|
const defaultTableOptions = {
|
|
@@ -75,7 +76,7 @@ export function defineTable(name, fn, options) {
|
|
|
75
76
|
}
|
|
76
77
|
columnDefs.push(sql);
|
|
77
78
|
if (colDef._def.isJson) {
|
|
78
|
-
jsonColumnRegistry.set(`${name}.${colName}`, 'unknown');
|
|
79
|
+
jsonColumnRegistry.set(`${name}.${colName}`, colDef._def.jsonOverrideType ?? 'unknown');
|
|
79
80
|
}
|
|
80
81
|
}
|
|
81
82
|
// Auto timestamp columns
|
|
@@ -147,6 +148,7 @@ export function createUseTable() {
|
|
|
147
148
|
* Create an index on a table.
|
|
148
149
|
* Use { unique: true } for unique constraint.
|
|
149
150
|
* Use { name: 'custom_name' } to override auto-generated name.
|
|
151
|
+
* Use { where } for a partial index (typed column accessor or raw SQL string).
|
|
150
152
|
*/
|
|
151
153
|
export function createIndex(table, columns, options) {
|
|
152
154
|
const tableName = table._name;
|
|
@@ -155,7 +157,12 @@ export function createIndex(table, columns, options) {
|
|
|
155
157
|
const indexName = options?.name ?? `${tableName}_${columns.join('_')}_${suffix}`;
|
|
156
158
|
const columnList = columns.map((c) => `"${c}"`).join(', ');
|
|
157
159
|
const uniqueKeyword = unique ? 'UNIQUE ' : '';
|
|
158
|
-
|
|
160
|
+
let whereClause = '';
|
|
161
|
+
if (options?.where) {
|
|
162
|
+
const col = (name) => `"${name}"`;
|
|
163
|
+
whereClause = ` WHERE ${typeof options.where === 'function' ? options.where(col) : options.where}`;
|
|
164
|
+
}
|
|
165
|
+
return `CREATE ${uniqueKeyword}INDEX "${indexName}" ON "${tableName}"(${columnList})${whereClause};`;
|
|
159
166
|
}
|
|
160
167
|
/**
|
|
161
168
|
* Drop an index by name.
|
|
@@ -181,7 +188,7 @@ export function addColumn(table, column, fn) {
|
|
|
181
188
|
sql += ` DEFAULT ${typeof v === 'string' ? `'${v}'` : v}`;
|
|
182
189
|
}
|
|
183
190
|
if (colDef._def.isJson) {
|
|
184
|
-
jsonColumnRegistry.set(`${table._name}.${column}`, 'unknown');
|
|
191
|
+
jsonColumnRegistry.set(`${table._name}.${column}`, colDef._def.jsonOverrideType ?? 'unknown');
|
|
185
192
|
}
|
|
186
193
|
return sql + ';';
|
|
187
194
|
}
|
package/dist/migrate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../src/migrate.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"migrate.js","sourceRoot":"","sources":["../src/migrate.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "d1-kyt",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.6",
|
|
4
4
|
"description": "Opinionated Cloudflare D1 + Kysely toolkit",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -25,14 +25,6 @@
|
|
|
25
25
|
"files": [
|
|
26
26
|
"dist"
|
|
27
27
|
],
|
|
28
|
-
"scripts": {
|
|
29
|
-
"build": "tsc",
|
|
30
|
-
"dev": "tsc --watch",
|
|
31
|
-
"test": "vitest",
|
|
32
|
-
"lint": "echo noop",
|
|
33
|
-
"typecheck": "tsc --noEmit",
|
|
34
|
-
"prepublishOnly": "pnpm build"
|
|
35
|
-
},
|
|
36
28
|
"keywords": [
|
|
37
29
|
"cloudflare",
|
|
38
30
|
"d1",
|
|
@@ -54,5 +46,12 @@
|
|
|
54
46
|
},
|
|
55
47
|
"dependencies": {
|
|
56
48
|
"better-sqlite3": "12.6.2"
|
|
49
|
+
},
|
|
50
|
+
"scripts": {
|
|
51
|
+
"build": "tsc",
|
|
52
|
+
"dev": "tsc --watch",
|
|
53
|
+
"test": "vitest",
|
|
54
|
+
"lint": "echo noop",
|
|
55
|
+
"typecheck": "tsc --noEmit"
|
|
57
56
|
}
|
|
58
|
-
}
|
|
57
|
+
}
|