@remix-run/data-table 0.2.0 → 0.3.0

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.
Files changed (66) hide show
  1. package/README.md +77 -75
  2. package/dist/index.d.ts +1 -1
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/lib/adapter.d.ts +10 -271
  5. package/dist/lib/adapter.d.ts.map +1 -1
  6. package/dist/lib/column.d.ts.map +1 -1
  7. package/dist/lib/column.js +10 -1
  8. package/dist/lib/migrations/directive.d.ts +12 -0
  9. package/dist/lib/migrations/directive.d.ts.map +1 -0
  10. package/dist/lib/migrations/directive.js +28 -0
  11. package/dist/lib/migrations/directory-name.d.ts +12 -0
  12. package/dist/lib/migrations/directory-name.d.ts.map +1 -0
  13. package/dist/lib/migrations/directory-name.js +18 -0
  14. package/dist/lib/migrations/journal-store.d.ts +1 -1
  15. package/dist/lib/migrations/journal-store.d.ts.map +1 -1
  16. package/dist/lib/migrations/journal-store.js +18 -18
  17. package/dist/lib/migrations/registry.d.ts +1 -1
  18. package/dist/lib/migrations/registry.js +1 -1
  19. package/dist/lib/migrations/runner.d.ts +2 -2
  20. package/dist/lib/migrations/runner.d.ts.map +1 -1
  21. package/dist/lib/migrations/runner.js +44 -71
  22. package/dist/lib/migrations-node.d.ts +7 -4
  23. package/dist/lib/migrations-node.d.ts.map +1 -1
  24. package/dist/lib/migrations-node.js +52 -41
  25. package/dist/lib/migrations.d.ts +19 -200
  26. package/dist/lib/migrations.d.ts.map +1 -1
  27. package/dist/lib/migrations.js +1 -38
  28. package/dist/lib/query.d.ts +33 -0
  29. package/dist/lib/query.d.ts.map +1 -1
  30. package/dist/lib/query.js +28 -0
  31. package/dist/lib/sql-helpers.d.ts +1 -7
  32. package/dist/lib/sql-helpers.d.ts.map +1 -1
  33. package/dist/lib/sql-helpers.js +0 -16
  34. package/dist/migrations.d.ts +2 -5
  35. package/dist/migrations.d.ts.map +1 -1
  36. package/dist/migrations.js +1 -3
  37. package/dist/sql-helpers.d.ts +1 -1
  38. package/dist/sql-helpers.d.ts.map +1 -1
  39. package/dist/sql-helpers.js +1 -1
  40. package/package.json +7 -8
  41. package/src/index.ts +1 -34
  42. package/src/lib/adapter.ts +10 -330
  43. package/src/lib/column.ts +14 -2
  44. package/src/lib/migrations/directive.ts +38 -0
  45. package/src/lib/migrations/directory-name.ts +23 -0
  46. package/src/lib/migrations/journal-store.ts +22 -18
  47. package/src/lib/migrations/registry.ts +1 -1
  48. package/src/lib/migrations/runner.ts +51 -85
  49. package/src/lib/migrations-node.ts +58 -38
  50. package/src/lib/migrations.ts +19 -224
  51. package/src/lib/query.ts +33 -0
  52. package/src/lib/sql-helpers.ts +1 -22
  53. package/src/migrations.ts +3 -13
  54. package/src/sql-helpers.ts +0 -1
  55. package/dist/lib/migrations/filename.d.ts +0 -12
  56. package/dist/lib/migrations/filename.d.ts.map +0 -1
  57. package/dist/lib/migrations/filename.js +0 -20
  58. package/dist/lib/migrations/helpers.d.ts +0 -11
  59. package/dist/lib/migrations/helpers.d.ts.map +0 -1
  60. package/dist/lib/migrations/helpers.js +0 -77
  61. package/dist/lib/migrations/schema-api.d.ts +0 -7
  62. package/dist/lib/migrations/schema-api.d.ts.map +0 -1
  63. package/dist/lib/migrations/schema-api.js +0 -326
  64. package/src/lib/migrations/filename.ts +0 -25
  65. package/src/lib/migrations/helpers.ts +0 -108
  66. package/src/lib/migrations/schema-api.ts +0 -417
@@ -1,82 +1,30 @@
1
- import type { Database } from './database.ts';
2
- import type { ColumnDefinition, ForeignKeyAction, IndexDefinition } from './adapter.ts';
3
- import type { ColumnBuilder } from './column.ts';
4
- import type { SqlStatement } from './sql.ts';
5
- import type { AnyTable } from './table.ts';
6
1
  /**
7
2
  * Controls how each migration is wrapped in transactions.
8
- */
9
- export type MigrationTransactionMode = 'auto' | 'required' | 'none';
10
- /**
11
- * Runtime context passed to migration `up`/`down` handlers.
12
- */
13
- export type MigrationContext = {
14
- /**
15
- * Immediate data runtime (`query/create/update/exec/transaction`).
16
- */
17
- db: Database;
18
- /**
19
- * Migration schema runtime (`createTable/alterTable/createIndex/...`).
20
- */
21
- schema: MigrationSchema;
22
- };
23
- /**
24
- * Authoring shape for `createMigration(...)`.
25
- */
26
- export type CreateMigrationInput = {
27
- up: (context: MigrationContext) => Promise<void> | void;
28
- down: (context: MigrationContext) => Promise<void> | void;
29
- transaction?: MigrationTransactionMode;
30
- };
31
- /**
32
- * Normalized migration object consumed by the registry/runner.
33
- */
34
- export type Migration = {
35
- up: CreateMigrationInput['up'];
36
- down: CreateMigrationInput['down'];
37
- transaction: MigrationTransactionMode;
38
- };
39
- /**
40
- * Creates a migration descriptor with normalized defaults.
41
- * @param input Migration handlers and transaction mode.
42
- * @returns A normalized migration object.
43
- * @example
44
- * ```ts
45
- * import { createMigration, column as c } from 'remix/data-table/migrations'
46
- * import { table } from 'remix/data-table'
47
- *
48
- * let users = table({
49
- * name: 'users',
50
- * columns: {
51
- * id: c.integer().primaryKey().autoIncrement(),
52
- * email: c.varchar(255).notNull().unique(),
53
- * },
54
- * })
55
- *
56
- * export default createMigration({
57
- * async up({ db, schema }) {
58
- * await schema.createTable(users)
59
3
  *
60
- * if (db.adapter.dialect === 'sqlite') {
61
- * await db.exec('pragma foreign_keys = on')
62
- * }
63
- * },
64
- * async down({ schema }) {
65
- * await schema.dropTable('users', { ifExists: true })
66
- * },
67
- * })
68
- * ```
4
+ * - `auto` (default): wrap when the adapter supports transactional DDL.
5
+ * - `required`: wrap; throws when the adapter does not support transactional DDL.
6
+ * - `none`: never wrap.
69
7
  */
70
- export declare function createMigration(input: CreateMigrationInput): Migration;
8
+ export type MigrationTransactionMode = 'auto' | 'required' | 'none';
71
9
  /**
72
- * Migration metadata stored in registries and returned by loaders.
10
+ * Migration metadata + SQL consumed by the registry/runner.
73
11
  */
74
12
  export type MigrationDescriptor = {
13
+ /** Migration id (typically a `YYYYMMDDHHmmss` timestamp). */
75
14
  id: string;
15
+ /** Human-readable migration slug. */
76
16
  name: string;
17
+ /** SQL executed for `runner.up(...)`. May contain multiple statements. */
18
+ up: string;
19
+ /**
20
+ * SQL executed for `runner.down(...)`. May contain multiple statements.
21
+ * Omit (or pass `undefined`) for irreversible migrations.
22
+ */
23
+ down?: string;
24
+ /** Transaction wrapping mode. Defaults to `auto`. */
25
+ transaction?: MigrationTransactionMode;
26
+ /** Optional source path used in error messages. */
77
27
  path?: string;
78
- checksum?: string;
79
- migration: Migration;
80
28
  };
81
29
  /**
82
30
  * Direction used by migration runner operations.
@@ -131,139 +79,10 @@ export type MigrateResult = {
131
79
  applied: MigrationStatusEntry[];
132
80
  reverted: MigrationStatusEntry[];
133
81
  /**
134
- * Compiled SQL statements for operations processed during this run.
135
- * Includes planned SQL when running with `dryRun: true`.
82
+ * SQL scripts that were (or, for `dryRun`, would have been) executed.
136
83
  */
137
- sql: SqlStatement[];
138
- };
139
- /**
140
- * Options for `schema.createTable(...)` migration operations.
141
- */
142
- export type CreateTableOptions = {
143
- ifNotExists?: boolean;
144
- };
145
- /**
146
- * Options for `schema.alterTable(...)` migration operations.
147
- */
148
- export type AlterTableOptions = {
149
- ifExists?: boolean;
150
- };
151
- /**
152
- * Options for `schema.dropTable(...)` migration operations.
153
- */
154
- export type DropTableOptions = {
155
- ifExists?: boolean;
156
- cascade?: boolean;
84
+ sql: string[];
157
85
  };
158
- /**
159
- * Accepts either one index column or multiple (compound index).
160
- */
161
- export type IndexColumns = string | string[];
162
- /**
163
- * Accepts either one key column or multiple (compound key).
164
- */
165
- export type KeyColumns = string | string[];
166
- /**
167
- * Accepts either a SQL table name or a `table(...)` object.
168
- */
169
- export type TableInput = string | AnyTable;
170
- /**
171
- * Optional name override for constraints and indexes.
172
- */
173
- export type NamedConstraintOptions = {
174
- name?: string;
175
- };
176
- /**
177
- * Foreign key options for migration APIs.
178
- */
179
- export type ForeignKeyOptions = NamedConstraintOptions & {
180
- onDelete?: ForeignKeyAction;
181
- onUpdate?: ForeignKeyAction;
182
- };
183
- /**
184
- * Index options for migration APIs.
185
- */
186
- export type CreateIndexOptions = NamedConstraintOptions & Omit<IndexDefinition, 'table' | 'name' | 'columns'> & {
187
- ifNotExists?: boolean;
188
- };
189
- /**
190
- * Builder API available inside `schema.alterTable(name, table => ...)`.
191
- */
192
- export interface AlterTableBuilder {
193
- /** Adds a column during an `alterTable` migration. */
194
- addColumn(name: string, definition: ColumnDefinition | ColumnBuilder): void;
195
- /** Changes an existing column during an `alterTable` migration. */
196
- changeColumn(name: string, definition: ColumnDefinition | ColumnBuilder): void;
197
- /** Renames a column during an `alterTable` migration. */
198
- renameColumn(from: string, to: string): void;
199
- /** Drops a column during an `alterTable` migration. */
200
- dropColumn(name: string, options?: {
201
- ifExists?: boolean;
202
- }): void;
203
- /** Adds a primary key during an `alterTable` migration. */
204
- addPrimaryKey(columns: KeyColumns, options?: NamedConstraintOptions): void;
205
- /** Drops a primary key during an `alterTable` migration. */
206
- dropPrimaryKey(name: string): void;
207
- /** Adds a unique constraint during an `alterTable` migration. */
208
- addUnique(columns: KeyColumns, options?: NamedConstraintOptions): void;
209
- /** Drops a unique constraint during an `alterTable` migration. */
210
- dropUnique(name: string): void;
211
- /** Adds a foreign key during an `alterTable` migration. */
212
- addForeignKey(columns: KeyColumns, refTable: TableInput, refColumns?: KeyColumns, options?: ForeignKeyOptions): void;
213
- /** Drops a foreign key during an `alterTable` migration. */
214
- dropForeignKey(name: string): void;
215
- /** Adds a check constraint during an `alterTable` migration. */
216
- addCheck(expression: string, options?: NamedConstraintOptions): void;
217
- /** Drops a check constraint during an `alterTable` migration. */
218
- dropCheck(name: string): void;
219
- /** Adds an index during an `alterTable` migration. */
220
- addIndex(columns: IndexColumns, options?: CreateIndexOptions): void;
221
- /** Drops an index during an `alterTable` migration. */
222
- dropIndex(name: string): void;
223
- /** Sets the table comment during an `alterTable` migration. */
224
- comment(text: string): void;
225
- }
226
- /**
227
- * DDL-focused operations mixed into the migration `db` object.
228
- */
229
- export interface MigrationSchema {
230
- /** Creates a table in the migration schema. */
231
- createTable<table extends AnyTable>(table: table, options?: CreateTableOptions): Promise<void>;
232
- /** Alters an existing table in the migration schema. */
233
- alterTable(table: TableInput, migrate: (table: AlterTableBuilder) => void, options?: AlterTableOptions): Promise<void>;
234
- /** Renames a table in the migration schema. */
235
- renameTable(from: TableInput, to: string): Promise<void>;
236
- /** Drops a table from the migration schema. */
237
- dropTable(table: TableInput, options?: DropTableOptions): Promise<void>;
238
- /** Creates an index in the migration schema. */
239
- createIndex(table: TableInput, columns: IndexColumns, options?: CreateIndexOptions): Promise<void>;
240
- /** Drops an index from the migration schema. */
241
- dropIndex(table: TableInput, name: string, options?: {
242
- ifExists?: boolean;
243
- }): Promise<void>;
244
- /** Renames an index in the migration schema. */
245
- renameIndex(table: TableInput, from: string, to: string): Promise<void>;
246
- /** Adds a foreign key in the migration schema. */
247
- addForeignKey(table: TableInput, columns: KeyColumns, refTable: TableInput, refColumns?: KeyColumns, options?: ForeignKeyOptions): Promise<void>;
248
- /** Drops a foreign key in the migration schema. */
249
- dropForeignKey(table: TableInput, name: string): Promise<void>;
250
- /** Adds a check constraint in the migration schema. */
251
- addCheck(table: TableInput, expression: string, options?: NamedConstraintOptions): Promise<void>;
252
- /** Drops a check constraint in the migration schema. */
253
- dropCheck(table: TableInput, name: string): Promise<void>;
254
- /**
255
- * Adds raw SQL to the migration plan as a migration operation.
256
- */
257
- plan(sql: string | SqlStatement): Promise<void>;
258
- /**
259
- * Returns `true` when the table exists in the current database.
260
- */
261
- hasTable(table: TableInput): Promise<boolean>;
262
- /**
263
- * Returns `true` when the column exists on the given table.
264
- */
265
- hasColumn(table: TableInput, column: string): Promise<boolean>;
266
- }
267
86
  /**
268
87
  * Runtime-agnostic migration registry abstraction.
269
88
  */
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/lib/migrations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../../src/lib/migrations.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,MAAM,wBAAwB,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,CAAA;AAEnE;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,6DAA6D;IAC7D,EAAE,EAAE,MAAM,CAAA;IACV,qCAAqC;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,0EAA0E;IAC1E,EAAE,EAAE,MAAM,CAAA;IACV;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,qDAAqD;IACrD,WAAW,CAAC,EAAE,wBAAwB,CAAA;IACtC,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,IAAI,GAAG,MAAM,CAAA;AAE9C;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,IAAI,CAAA;CAChB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;AAE/D;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,CAAC,EAAE,IAAI,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,cAAc,GACtB;IACE,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,CAAC,EAAE,KAAK,CAAA;IACZ,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,GACD;IACE,EAAE,CAAC,EAAE,KAAK,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,GACD;IACE,EAAE,CAAC,EAAE,SAAS,CAAA;IACd,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAEL;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,oBAAoB,EAAE,CAAA;IAC/B,QAAQ,EAAE,oBAAoB,EAAE,CAAA;IAChC;;OAEG;IACH,GAAG,EAAE,MAAM,EAAE,CAAA;CACd,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,SAAS,EAAE,mBAAmB,GAAG,IAAI,CAAA;IAC9C,IAAI,IAAI,mBAAmB,EAAE,CAAA;CAC9B,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAAA;IACpD,IAAI,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,aAAa,CAAC,CAAA;IACtD,MAAM,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAAA;CAC1C,CAAA"}
@@ -1,38 +1 @@
1
- /**
2
- * Creates a migration descriptor with normalized defaults.
3
- * @param input Migration handlers and transaction mode.
4
- * @returns A normalized migration object.
5
- * @example
6
- * ```ts
7
- * import { createMigration, column as c } from 'remix/data-table/migrations'
8
- * import { table } from 'remix/data-table'
9
- *
10
- * let users = table({
11
- * name: 'users',
12
- * columns: {
13
- * id: c.integer().primaryKey().autoIncrement(),
14
- * email: c.varchar(255).notNull().unique(),
15
- * },
16
- * })
17
- *
18
- * export default createMigration({
19
- * async up({ db, schema }) {
20
- * await schema.createTable(users)
21
- *
22
- * if (db.adapter.dialect === 'sqlite') {
23
- * await db.exec('pragma foreign_keys = on')
24
- * }
25
- * },
26
- * async down({ schema }) {
27
- * await schema.dropTable('users', { ifExists: true })
28
- * },
29
- * })
30
- * ```
31
- */
32
- export function createMigration(input) {
33
- return {
34
- up: input.up,
35
- down: input.down,
36
- transaction: input.transaction ?? 'auto',
37
- };
38
- }
1
+ export {};
@@ -95,6 +95,11 @@ type QueryResultMap<row extends Record<string, unknown>, loaded extends Record<s
95
95
  delete: WriteResult | WriteRowsResult<row>;
96
96
  upsert: WriteResult | WriteRowResult<row>;
97
97
  };
98
+ /**
99
+ * Convenience alias for any {@link Query} regardless of its source, columns,
100
+ * row shape, loaded relations, or execution phase. Use this in helper APIs
101
+ * that accept a query but don't care about the specific generic parameters.
102
+ */
98
103
  export type AnyQuery = Query<any, any, any, any, any>;
99
104
  type QuerySource<input extends AnyQuery> = input extends Query<infer source, any, any, any, any> ? source : never;
100
105
  type QueryColumnTypes<input extends AnyQuery> = input extends Query<any, infer columnTypes, any, any, any> ? columnTypes : never;
@@ -120,6 +125,17 @@ type QuerySnapshot<source extends AnyQuerySource = AnyQuerySource, row extends R
120
125
  export declare const bindQueryRuntime: unique symbol;
121
126
  export declare const querySnapshot: unique symbol;
122
127
  declare const queryTypeBrand: unique symbol;
128
+ /**
129
+ * Type-safe query builder for `@remix-run/data-table` sources. Construct via
130
+ * {@link query} and chain calls (`select`, `where`, `orderBy`, etc.) to build
131
+ * up a plan; run it by `await`-ing on a runtime-bound query, or by passing an
132
+ * unbound one to a runtime.
133
+ *
134
+ * The five generic parameters track, in order: the source/table, the column
135
+ * type map, the projected row shape, any loaded relations, and the
136
+ * binding/execution-mode phase. Most consumers do not need to spell them out
137
+ * — `query(table)` infers everything.
138
+ */
123
139
  export declare class Query<source extends AnyQuerySource, columnTypes extends Record<string, unknown> = QuerySourceColumnTypes<source>, row extends Record<string, unknown> = QuerySourceRow<source>, loaded extends Record<string, unknown> = {}, phase extends QueryPhase = UnboundQueryPhase<'all'>> {
124
140
  #private;
125
141
  readonly [queryTypeBrand]: {
@@ -153,6 +169,23 @@ export declare class Query<source extends AnyQuerySource, columnTypes extends Re
153
169
  [querySnapshot](): QuerySnapshot<source, row, QueryPhaseMode<phase>>;
154
170
  [bindQueryRuntime](runtime: QueryRuntime): Query<source, columnTypes, row, loaded, BoundQueryPhase<QueryPhaseMode<phase>>>;
155
171
  }
172
+ /**
173
+ * Begin a {@link Query} against a `@remix-run/data-table` source. The returned
174
+ * builder is in `'all'` execution mode and unbound; chain `select`, `where`,
175
+ * `orderBy`, etc. to refine the plan, and `await` it after binding it to a
176
+ * runtime to materialize results.
177
+ *
178
+ * @param table The table or source to query.
179
+ * @returns An unbound {@link Query} builder rooted at `table`.
180
+ *
181
+ * @example
182
+ * ```ts
183
+ * let activeUsers = await query(users)
184
+ * .where({ status: 'active' })
185
+ * .orderBy('createdAt', 'desc')
186
+ * .select(['id', 'email'])
187
+ * ```
188
+ */
156
189
  export declare function query<tableName extends string, row extends Record<string, unknown>, primaryKey extends readonly (keyof row & string)[]>(table: QueryTableInput<tableName, row, primaryKey>): Query<QueryTableInput<tableName, row, primaryKey>, QueryColumnTypeMapFromRow<tableName, row>, row, {}, UnboundQueryPhase<'all'>>;
157
190
  export declare function cloneQueryState(state: QueryState): QueryState;
158
191
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/lib/query.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/lib/query.ts"],"names":[],"mappings":"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"}
package/dist/lib/query.js CHANGED
@@ -4,6 +4,17 @@ import { normalizeColumnInput } from "./references.js";
4
4
  import { getTableColumns, getTableName } from "./table.js";
5
5
  export const bindQueryRuntime = Symbol('bindQueryRuntime');
6
6
  export const querySnapshot = Symbol('querySnapshot');
7
+ /**
8
+ * Type-safe query builder for `@remix-run/data-table` sources. Construct via
9
+ * {@link query} and chain calls (`select`, `where`, `orderBy`, etc.) to build
10
+ * up a plan; run it by `await`-ing on a runtime-bound query, or by passing an
11
+ * unbound one to a runtime.
12
+ *
13
+ * The five generic parameters track, in order: the source/table, the column
14
+ * type map, the projected row shape, any loaded relations, and the
15
+ * binding/execution-mode phase. Most consumers do not need to spell them out
16
+ * — `query(table)` infers everything.
17
+ */
7
18
  export class Query {
8
19
  #table;
9
20
  #state;
@@ -197,6 +208,23 @@ export class Query {
197
208
  return this.#runtime;
198
209
  }
199
210
  }
211
+ /**
212
+ * Begin a {@link Query} against a `@remix-run/data-table` source. The returned
213
+ * builder is in `'all'` execution mode and unbound; chain `select`, `where`,
214
+ * `orderBy`, etc. to refine the plan, and `await` it after binding it to a
215
+ * runtime to materialize results.
216
+ *
217
+ * @param table The table or source to query.
218
+ * @returns An unbound {@link Query} builder rooted at `table`.
219
+ *
220
+ * @example
221
+ * ```ts
222
+ * let activeUsers = await query(users)
223
+ * .where({ status: 'active' })
224
+ * .orderBy('createdAt', 'desc')
225
+ * .select(['id', 'email'])
226
+ * ```
227
+ */
200
228
  export function query(table) {
201
229
  return new Query(table);
202
230
  }
@@ -1,14 +1,8 @@
1
- import type { DataManipulationOperation, DataMigrationOperation, TableRef } from './adapter.ts';
1
+ import type { TableRef } from './adapter.ts';
2
2
  /**
3
3
  * Function used to quote SQL identifiers for a dialect.
4
4
  */
5
5
  export type QuoteIdentifier = (value: string) => string;
6
- /**
7
- * Type guard that narrows an operation to the data-manipulation union.
8
- * @param operation Operation to inspect.
9
- * @returns `true` when the operation is a data-manipulation operation.
10
- */
11
- export declare function isDataManipulationOperation(operation: DataManipulationOperation | DataMigrationOperation): operation is DataManipulationOperation;
12
6
  /**
13
7
  * Normalizes an arbitrary join type string into `inner`, `left`, or `right`.
14
8
  * @param type Input join type.
@@ -1 +1 @@
1
- {"version":3,"file":"sql-helpers.d.ts","sourceRoot":"","sources":["../../src/lib/sql-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAE/F;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;AAEvD;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,yBAAyB,GAAG,sBAAsB,GAC5D,SAAS,IAAI,yBAAyB,CAYxC;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAUtD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,MAAM,EAAE,CAoBxE;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,GAAG,MAAM,CAehF;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,eAAe,GAAG,MAAM,CAMvF;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE;IACR,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,GACA,MAAM,CAsBR"}
1
+ {"version":3,"file":"sql-helpers.d.ts","sourceRoot":"","sources":["../../src/lib/sql-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAE5C;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAA;AAEvD;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAUtD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,MAAM,EAAE,CAoBxE;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,GAAG,MAAM,CAehF;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,eAAe,GAAG,MAAM,CAMvF;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE;IACR,kBAAkB,CAAC,EAAE,OAAO,CAAA;CAC7B,GACA,MAAM,CAsBR"}
@@ -1,19 +1,3 @@
1
- /**
2
- * Type guard that narrows an operation to the data-manipulation union.
3
- * @param operation Operation to inspect.
4
- * @returns `true` when the operation is a data-manipulation operation.
5
- */
6
- export function isDataManipulationOperation(operation) {
7
- return (operation.kind === 'select' ||
8
- operation.kind === 'count' ||
9
- operation.kind === 'exists' ||
10
- operation.kind === 'insert' ||
11
- operation.kind === 'insertMany' ||
12
- operation.kind === 'update' ||
13
- operation.kind === 'delete' ||
14
- operation.kind === 'upsert' ||
15
- operation.kind === 'raw');
16
- }
17
1
  /**
18
2
  * Normalizes an arbitrary join type string into `inner`, `left`, or `right`.
19
3
  * @param type Input join type.
@@ -1,8 +1,5 @@
1
- export type { AlterTableBuilder, CreateMigrationInput, Migration, MigrationContext, MigrationDescriptor, MigrationDirection, MigrationJournalRow, MigrationSchema, MigrationRegistry, MigrationRunner, MigrationRunnerOptions, MigrationStatus, MigrationStatusEntry, MigrationTransactionMode, MigrateOptions, MigrateResult, KeyColumns, TableInput, } from './lib/migrations.ts';
2
- export { createMigration } from './lib/migrations.ts';
3
- export type { ColumnNamespace } from './lib/column.ts';
4
- export { ColumnBuilder, column } from './lib/column.ts';
1
+ export type { MigrateOptions, MigrateResult, MigrationDescriptor, MigrationDirection, MigrationJournalRow, MigrationRegistry, MigrationRunner, MigrationRunnerOptions, MigrationStatus, MigrationStatusEntry, MigrationTransactionMode, } from './lib/migrations.ts';
5
2
  export { createMigrationRegistry } from './lib/migrations/registry.ts';
6
3
  export { createMigrationRunner } from './lib/migrations/runner.ts';
7
- export { parseMigrationFilename } from './lib/migrations/filename.ts';
4
+ export { parseMigrationDirectoryName } from './lib/migrations/directory-name.ts';
8
5
  //# sourceMappingURL=migrations.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,iBAAiB,EACjB,oBAAoB,EACpB,SAAS,EACT,gBAAgB,EAChB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,sBAAsB,EACtB,eAAe,EACf,oBAAoB,EACpB,wBAAwB,EACxB,cAAc,EACd,aAAa,EACb,UAAU,EACV,UAAU,GACX,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAA;AACrD,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAA;AACvD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA"}
1
+ {"version":3,"file":"migrations.d.ts","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,sBAAsB,EACtB,eAAe,EACf,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAA;AACtE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAA"}
@@ -1,5 +1,3 @@
1
- export { createMigration } from "./lib/migrations.js";
2
- export { ColumnBuilder, column } from "./lib/column.js";
3
1
  export { createMigrationRegistry } from "./lib/migrations/registry.js";
4
2
  export { createMigrationRunner } from "./lib/migrations/runner.js";
5
- export { parseMigrationFilename } from "./lib/migrations/filename.js";
3
+ export { parseMigrationDirectoryName } from "./lib/migrations/directory-name.js";
@@ -1,3 +1,3 @@
1
1
  export type { QuoteIdentifier } from './lib/sql-helpers.ts';
2
- export { collectColumns, isDataManipulationOperation, normalizeJoinType, quoteLiteral, quotePath, quoteTableRef, } from './lib/sql-helpers.ts';
2
+ export { collectColumns, normalizeJoinType, quoteLiteral, quotePath, quoteTableRef, } from './lib/sql-helpers.ts';
3
3
  //# sourceMappingURL=sql-helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sql-helpers.d.ts","sourceRoot":"","sources":["../src/sql-helpers.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,EACL,cAAc,EACd,2BAA2B,EAC3B,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,aAAa,GACd,MAAM,sBAAsB,CAAA"}
1
+ {"version":3,"file":"sql-helpers.d.ts","sourceRoot":"","sources":["../src/sql-helpers.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAC3D,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,YAAY,EACZ,SAAS,EACT,aAAa,GACd,MAAM,sBAAsB,CAAA"}
@@ -1 +1 @@
1
- export { collectColumns, isDataManipulationOperation, normalizeJoinType, quoteLiteral, quotePath, quoteTableRef, } from "./lib/sql-helpers.js";
1
+ export { collectColumns, normalizeJoinType, quoteLiteral, quotePath, quoteTableRef, } from "./lib/sql-helpers.js";
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@remix-run/data-table",
3
- "version": "0.2.0",
4
- "description": "A typed, relational query toolkit for Remix",
3
+ "version": "0.3.0",
4
+ "description": "A typed, relational query toolkit for JavaScript",
5
5
  "author": "Michael Jackson <mjijackson@gmail.com>",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -43,10 +43,10 @@
43
43
  "./package.json": "./package.json"
44
44
  },
45
45
  "devDependencies": {
46
- "@types/better-sqlite3": "^7.6.13",
47
46
  "@types/node": "^24.6.0",
48
47
  "@typescript/native-preview": "7.0.0-dev.20251125.1",
49
- "better-sqlite3": "^12.4.1"
48
+ "@remix-run/assert": "0.2.0",
49
+ "@remix-run/test": "0.4.0"
50
50
  },
51
51
  "dependencies": {},
52
52
  "keywords": [
@@ -60,10 +60,9 @@
60
60
  "scripts": {
61
61
  "build": "tsgo -p tsconfig.build.json",
62
62
  "clean": "git clean -fdX",
63
- "test": "node --test",
64
- "test:coverage": "pnpm run test:coverage:core && pnpm run test:coverage:migrations",
65
- "test:coverage:core": "node --experimental-test-coverage --test-coverage-include='src/lib/operators.ts' --test-coverage-include='src/lib/references.ts' --test-coverage-include='src/lib/inflection.ts' --test-coverage-include='src/lib/sql.ts' --test-coverage-include='src/lib/errors.ts' --test-coverage-lines=90 --test-coverage-branches=90 --test-coverage-functions=90 --test ./src/lib/operators.test.ts ./src/lib/references.test.ts ./src/lib/inflection.test.ts ./src/lib/sql.test.ts ./src/lib/errors.test.ts",
66
- "test:coverage:migrations": "node --experimental-test-coverage --test-coverage-include='src/lib/migrations.ts' --test-coverage-lines=90 --test-coverage-branches=90 --test-coverage-functions=90 --test ./src/lib/migrations.test.ts",
63
+ "test": "remix-test",
64
+ "test:bun": "bun x --bun remix-test",
65
+ "test:coverage": "remix-test --coverage",
67
66
  "typecheck": "tsgo --noEmit"
68
67
  }
69
68
  }