kysely 0.19.8 → 0.19.11

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 (106) hide show
  1. package/README.md +67 -13
  2. package/dist/cjs/dialect/mysql/mysql-dialect-config.d.ts +10 -0
  3. package/dist/cjs/dialect/mysql/mysql-driver.d.ts +1 -0
  4. package/dist/cjs/dialect/mysql/mysql-driver.js +25 -0
  5. package/dist/cjs/dialect/postgres/postgres-dialect-config.d.ts +29 -0
  6. package/dist/cjs/dialect/postgres/postgres-driver.d.ts +6 -2
  7. package/dist/cjs/dialect/postgres/postgres-driver.js +24 -2
  8. package/dist/cjs/dialect/sqlite/sqlite-driver.js +3 -0
  9. package/dist/cjs/driver/database-connection.d.ts +1 -0
  10. package/dist/cjs/driver/dummy-driver.js +3 -0
  11. package/dist/cjs/index.d.ts +4 -0
  12. package/dist/cjs/index.js +4 -0
  13. package/dist/cjs/operation-node/create-type-node.d.ts +17 -0
  14. package/dist/cjs/operation-node/create-type-node.js +27 -0
  15. package/dist/cjs/operation-node/data-type-node.d.ts +1 -1
  16. package/dist/cjs/operation-node/drop-type-node.d.ts +16 -0
  17. package/dist/cjs/operation-node/drop-type-node.js +25 -0
  18. package/dist/cjs/operation-node/insert-query-node.d.ts +2 -1
  19. package/dist/cjs/operation-node/insert-query-node.js +2 -1
  20. package/dist/cjs/operation-node/operation-node-transformer.d.ts +9 -2
  21. package/dist/cjs/operation-node/operation-node-transformer.js +148 -122
  22. package/dist/cjs/operation-node/operation-node-visitor.d.ts +6 -0
  23. package/dist/cjs/operation-node/operation-node-visitor.js +3 -0
  24. package/dist/cjs/operation-node/operation-node.d.ts +1 -1
  25. package/dist/cjs/operation-node/select-modifier-node.d.ts +16 -0
  26. package/dist/cjs/operation-node/select-modifier-node.js +24 -0
  27. package/dist/cjs/operation-node/select-query-node.d.ts +5 -5
  28. package/dist/cjs/operation-node/select-query-node.js +11 -9
  29. package/dist/cjs/plugin/with-schema/with-schema-transformer.d.ts +4 -0
  30. package/dist/cjs/plugin/with-schema/with-schema-transformer.js +6 -0
  31. package/dist/cjs/query-builder/insert-query-builder.d.ts +1 -1
  32. package/dist/cjs/query-builder/select-query-builder.d.ts +77 -6
  33. package/dist/cjs/query-builder/select-query-builder.js +101 -14
  34. package/dist/cjs/query-compiler/default-query-compiler.d.ts +6 -0
  35. package/dist/cjs/query-compiler/default-query-compiler.js +30 -8
  36. package/dist/cjs/query-compiler/query-compiler.d.ts +3 -1
  37. package/dist/cjs/query-creator.d.ts +27 -0
  38. package/dist/cjs/query-creator.js +33 -0
  39. package/dist/cjs/query-executor/query-executor-base.d.ts +6 -0
  40. package/dist/cjs/query-executor/query-executor-base.js +19 -0
  41. package/dist/cjs/query-executor/query-executor.d.ts +11 -0
  42. package/dist/cjs/schema/create-table-builder.d.ts +6 -6
  43. package/dist/cjs/schema/create-table-builder.js +6 -6
  44. package/dist/cjs/schema/create-type-builder.d.ts +28 -0
  45. package/dist/cjs/schema/create-type-builder.js +38 -0
  46. package/dist/cjs/schema/drop-type-builder.d.ts +19 -0
  47. package/dist/cjs/schema/drop-type-builder.js +31 -0
  48. package/dist/cjs/schema/schema.d.ts +32 -0
  49. package/dist/cjs/schema/schema.js +46 -0
  50. package/dist/cjs/util/deferred.d.ts +7 -0
  51. package/dist/cjs/util/deferred.js +28 -0
  52. package/dist/cjs/util/require-all-props.d.ts +43 -0
  53. package/dist/cjs/util/require-all-props.js +40 -0
  54. package/dist/esm/dialect/mysql/mysql-dialect-config.d.ts +10 -0
  55. package/dist/esm/dialect/mysql/mysql-driver.d.ts +1 -0
  56. package/dist/esm/dialect/mysql/mysql-driver.js +25 -0
  57. package/dist/esm/dialect/postgres/postgres-dialect-config.d.ts +29 -0
  58. package/dist/esm/dialect/postgres/postgres-driver.d.ts +6 -2
  59. package/dist/esm/dialect/postgres/postgres-driver.js +24 -2
  60. package/dist/esm/dialect/sqlite/sqlite-driver.js +3 -0
  61. package/dist/esm/driver/database-connection.d.ts +1 -0
  62. package/dist/esm/driver/dummy-driver.js +3 -0
  63. package/dist/esm/index.d.ts +4 -0
  64. package/dist/esm/index.js +4 -0
  65. package/dist/esm/operation-node/create-type-node.d.ts +17 -0
  66. package/dist/esm/operation-node/create-type-node.js +25 -0
  67. package/dist/esm/operation-node/data-type-node.d.ts +1 -1
  68. package/dist/esm/operation-node/drop-type-node.d.ts +16 -0
  69. package/dist/esm/operation-node/drop-type-node.js +23 -0
  70. package/dist/esm/operation-node/insert-query-node.d.ts +2 -1
  71. package/dist/esm/operation-node/insert-query-node.js +2 -1
  72. package/dist/esm/operation-node/operation-node-transformer.d.ts +9 -2
  73. package/dist/esm/operation-node/operation-node-transformer.js +148 -122
  74. package/dist/esm/operation-node/operation-node-visitor.d.ts +6 -0
  75. package/dist/esm/operation-node/operation-node-visitor.js +3 -0
  76. package/dist/esm/operation-node/operation-node.d.ts +1 -1
  77. package/dist/esm/operation-node/select-modifier-node.d.ts +16 -0
  78. package/dist/esm/operation-node/select-modifier-node.js +22 -0
  79. package/dist/esm/operation-node/select-query-node.d.ts +5 -5
  80. package/dist/esm/operation-node/select-query-node.js +11 -9
  81. package/dist/esm/plugin/with-schema/with-schema-transformer.d.ts +4 -0
  82. package/dist/esm/plugin/with-schema/with-schema-transformer.js +6 -0
  83. package/dist/esm/query-builder/insert-query-builder.d.ts +1 -1
  84. package/dist/esm/query-builder/select-query-builder.d.ts +77 -6
  85. package/dist/esm/query-builder/select-query-builder.js +101 -14
  86. package/dist/esm/query-compiler/default-query-compiler.d.ts +6 -0
  87. package/dist/esm/query-compiler/default-query-compiler.js +30 -8
  88. package/dist/esm/query-compiler/query-compiler.d.ts +3 -1
  89. package/dist/esm/query-creator.d.ts +27 -0
  90. package/dist/esm/query-creator.js +33 -0
  91. package/dist/esm/query-executor/query-executor-base.d.ts +6 -0
  92. package/dist/esm/query-executor/query-executor-base.js +19 -0
  93. package/dist/esm/query-executor/query-executor.d.ts +11 -0
  94. package/dist/esm/schema/create-table-builder.d.ts +6 -6
  95. package/dist/esm/schema/create-table-builder.js +6 -6
  96. package/dist/esm/schema/create-type-builder.d.ts +28 -0
  97. package/dist/esm/schema/create-type-builder.js +35 -0
  98. package/dist/esm/schema/drop-type-builder.d.ts +19 -0
  99. package/dist/esm/schema/drop-type-builder.js +28 -0
  100. package/dist/esm/schema/schema.d.ts +32 -0
  101. package/dist/esm/schema/schema.js +46 -0
  102. package/dist/esm/util/deferred.d.ts +7 -0
  103. package/dist/esm/util/deferred.js +25 -0
  104. package/dist/esm/util/require-all-props.d.ts +43 -0
  105. package/dist/esm/util/require-all-props.js +37 -0
  106. package/package.json +5 -2
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.OperationNodeTransformer = void 0;
4
4
  const object_utils_js_1 = require("../util/object-utils.js");
5
+ const require_all_props_js_1 = require("../util/require-all-props.js");
5
6
  /**
6
7
  * Transforms an operation node tree into another one.
7
8
  *
@@ -100,6 +101,9 @@ class OperationNodeTransformer {
100
101
  DefaultValueNode: this.transformDefaultValue.bind(this),
101
102
  OnNode: this.transformOn.bind(this),
102
103
  ValuesNode: this.transformValues.bind(this),
104
+ SelectModifierNode: this.transformSelectModifier.bind(this),
105
+ CreateTypeNode: this.transformCreateType.bind(this),
106
+ DropTypeNode: this.transformDropType.bind(this),
103
107
  });
104
108
  transformNode = (node) => {
105
109
  if (!node) {
@@ -117,120 +121,120 @@ class OperationNodeTransformer {
117
121
  return (0, object_utils_js_1.freeze)(list.map(this.transformNode));
118
122
  }
119
123
  transformSelectQuery(node) {
120
- return {
124
+ return (0, require_all_props_js_1.requireAllProps)({
121
125
  kind: 'SelectQueryNode',
122
126
  from: this.transformNode(node.from),
123
127
  selections: this.transformNodeList(node.selections),
124
128
  distinctOnSelections: this.transformNodeList(node.distinctOnSelections),
125
- distinct: node.distinct,
126
129
  joins: this.transformNodeList(node.joins),
127
130
  groupBy: this.transformNode(node.groupBy),
128
131
  orderBy: this.transformNode(node.orderBy),
129
132
  where: this.transformNode(node.where),
130
- modifiers: node.modifiers,
133
+ frontModifiers: this.transformNodeList(node.frontModifiers),
134
+ endModifiers: this.transformNodeList(node.endModifiers),
131
135
  limit: this.transformNode(node.limit),
132
136
  offset: this.transformNode(node.offset),
133
137
  with: this.transformNode(node.with),
134
138
  having: this.transformNode(node.having),
135
139
  union: this.transformNodeList(node.union),
136
- };
140
+ });
137
141
  }
138
142
  transformSelection(node) {
139
- return {
143
+ return (0, require_all_props_js_1.requireAllProps)({
140
144
  kind: 'SelectionNode',
141
145
  selection: this.transformNode(node.selection),
142
- };
146
+ });
143
147
  }
144
148
  transformColumn(node) {
145
- return {
149
+ return (0, require_all_props_js_1.requireAllProps)({
146
150
  kind: 'ColumnNode',
147
151
  column: this.transformNode(node.column),
148
- };
152
+ });
149
153
  }
150
154
  transformAlias(node) {
151
- return {
155
+ return (0, require_all_props_js_1.requireAllProps)({
152
156
  kind: 'AliasNode',
153
157
  node: this.transformNode(node.node),
154
158
  alias: this.transformNode(node.alias),
155
- };
159
+ });
156
160
  }
157
161
  transformTable(node) {
158
- return {
162
+ return (0, require_all_props_js_1.requireAllProps)({
159
163
  kind: 'TableNode',
160
164
  schema: this.transformNode(node.schema),
161
165
  table: this.transformNode(node.table),
162
- };
166
+ });
163
167
  }
164
168
  transformFrom(node) {
165
- return {
169
+ return (0, require_all_props_js_1.requireAllProps)({
166
170
  kind: 'FromNode',
167
171
  froms: this.transformNodeList(node.froms),
168
- };
172
+ });
169
173
  }
170
174
  transformReference(node) {
171
- return {
175
+ return (0, require_all_props_js_1.requireAllProps)({
172
176
  kind: 'ReferenceNode',
173
177
  table: this.transformNode(node.table),
174
178
  column: this.transformNode(node.column),
175
- };
179
+ });
176
180
  }
177
181
  transformFilter(node) {
178
- return {
182
+ return (0, require_all_props_js_1.requireAllProps)({
179
183
  kind: 'FilterNode',
180
184
  left: this.transformNode(node.left),
181
185
  op: this.transformNode(node.op),
182
186
  right: this.transformNode(node.right),
183
- };
187
+ });
184
188
  }
185
189
  transformAnd(node) {
186
- return {
190
+ return (0, require_all_props_js_1.requireAllProps)({
187
191
  kind: 'AndNode',
188
192
  left: this.transformNode(node.left),
189
193
  right: this.transformNode(node.right),
190
- };
194
+ });
191
195
  }
192
196
  transformOr(node) {
193
- return {
197
+ return (0, require_all_props_js_1.requireAllProps)({
194
198
  kind: 'OrNode',
195
199
  left: this.transformNode(node.left),
196
200
  right: this.transformNode(node.right),
197
- };
201
+ });
198
202
  }
199
203
  transformValueList(node) {
200
- return {
204
+ return (0, require_all_props_js_1.requireAllProps)({
201
205
  kind: 'ValueListNode',
202
206
  values: this.transformNodeList(node.values),
203
- };
207
+ });
204
208
  }
205
209
  transformParens(node) {
206
- return {
210
+ return (0, require_all_props_js_1.requireAllProps)({
207
211
  kind: 'ParensNode',
208
212
  node: this.transformNode(node.node),
209
- };
213
+ });
210
214
  }
211
215
  transformJoin(node) {
212
- return {
216
+ return (0, require_all_props_js_1.requireAllProps)({
213
217
  kind: 'JoinNode',
214
218
  joinType: node.joinType,
215
219
  table: this.transformNode(node.table),
216
220
  on: this.transformNode(node.on),
217
- };
221
+ });
218
222
  }
219
223
  transformRaw(node) {
220
- return {
224
+ return (0, require_all_props_js_1.requireAllProps)({
221
225
  kind: 'RawNode',
222
226
  sqlFragments: (0, object_utils_js_1.freeze)([...node.sqlFragments]),
223
227
  parameters: this.transformNodeList(node.parameters),
224
- };
228
+ });
225
229
  }
226
230
  transformWhere(node) {
227
- return {
231
+ return (0, require_all_props_js_1.requireAllProps)({
228
232
  kind: 'WhereNode',
229
233
  where: this.transformNode(node.where),
230
- };
234
+ });
231
235
  }
232
236
  transformInsertQuery(node) {
233
- return {
237
+ return (0, require_all_props_js_1.requireAllProps)({
234
238
  kind: 'InsertQueryNode',
235
239
  into: this.transformNode(node.into),
236
240
  columns: this.transformNodeList(node.columns),
@@ -240,16 +244,17 @@ class OperationNodeTransformer {
240
244
  onDuplicateKey: this.transformNode(node.onDuplicateKey),
241
245
  with: this.transformNode(node.with),
242
246
  ignore: node.ignore,
243
- };
247
+ replace: node.replace,
248
+ });
244
249
  }
245
250
  transformValues(node) {
246
- return {
251
+ return (0, require_all_props_js_1.requireAllProps)({
247
252
  kind: 'ValuesNode',
248
253
  values: this.transformNodeList(node.values),
249
- };
254
+ });
250
255
  }
251
256
  transformDeleteQuery(node) {
252
- return {
257
+ return (0, require_all_props_js_1.requireAllProps)({
253
258
  kind: 'DeleteQueryNode',
254
259
  from: this.transformNode(node.from),
255
260
  joins: this.transformNodeList(node.joins),
@@ -258,16 +263,16 @@ class OperationNodeTransformer {
258
263
  with: this.transformNode(node.with),
259
264
  orderBy: this.transformNode(node.orderBy),
260
265
  limit: this.transformNode(node.limit),
261
- };
266
+ });
262
267
  }
263
268
  transformReturning(node) {
264
- return {
269
+ return (0, require_all_props_js_1.requireAllProps)({
265
270
  kind: 'ReturningNode',
266
271
  selections: this.transformNodeList(node.selections),
267
- };
272
+ });
268
273
  }
269
274
  transformCreateTable(node) {
270
- return {
275
+ return (0, require_all_props_js_1.requireAllProps)({
271
276
  kind: 'CreateTableNode',
272
277
  table: this.transformNode(node.table),
273
278
  columns: this.transformNodeList(node.columns),
@@ -275,10 +280,10 @@ class OperationNodeTransformer {
275
280
  temporary: node.temporary,
276
281
  ifNotExists: node.ifNotExists,
277
282
  onCommit: node.onCommit,
278
- };
283
+ });
279
284
  }
280
285
  transformColumnDefinition(node) {
281
- return {
286
+ return (0, require_all_props_js_1.requireAllProps)({
282
287
  kind: 'ColumnDefinitionNode',
283
288
  column: this.transformNode(node.column),
284
289
  dataType: this.transformNode(node.dataType),
@@ -291,48 +296,48 @@ class OperationNodeTransformer {
291
296
  defaultTo: this.transformNode(node.defaultTo),
292
297
  check: this.transformNode(node.check),
293
298
  generated: this.transformNode(node.generated),
294
- };
299
+ });
295
300
  }
296
301
  transformAddColumn(node) {
297
- return {
302
+ return (0, require_all_props_js_1.requireAllProps)({
298
303
  kind: 'AddColumnNode',
299
304
  column: this.transformNode(node.column),
300
- };
305
+ });
301
306
  }
302
307
  transformDropTable(node) {
303
- return {
308
+ return (0, require_all_props_js_1.requireAllProps)({
304
309
  kind: 'DropTableNode',
305
310
  table: this.transformNode(node.table),
306
311
  ifExists: node.ifExists,
307
- };
312
+ });
308
313
  }
309
314
  transformOrderBy(node) {
310
- return {
315
+ return (0, require_all_props_js_1.requireAllProps)({
311
316
  kind: 'OrderByNode',
312
317
  items: this.transformNodeList(node.items),
313
- };
318
+ });
314
319
  }
315
320
  transformOrderByItem(node) {
316
- return {
321
+ return (0, require_all_props_js_1.requireAllProps)({
317
322
  kind: 'OrderByItemNode',
318
323
  orderBy: this.transformNode(node.orderBy),
319
324
  direction: this.transformNode(node.direction),
320
- };
325
+ });
321
326
  }
322
327
  transformGroupBy(node) {
323
- return {
328
+ return (0, require_all_props_js_1.requireAllProps)({
324
329
  kind: 'GroupByNode',
325
330
  items: this.transformNodeList(node.items),
326
- };
331
+ });
327
332
  }
328
333
  transformGroupByItem(node) {
329
- return {
334
+ return (0, require_all_props_js_1.requireAllProps)({
330
335
  kind: 'GroupByItemNode',
331
336
  groupBy: this.transformNode(node.groupBy),
332
- };
337
+ });
333
338
  }
334
339
  transformUpdateQuery(node) {
335
- return {
340
+ return (0, require_all_props_js_1.requireAllProps)({
336
341
  kind: 'UpdateQueryNode',
337
342
  table: this.transformNode(node.table),
338
343
  from: this.transformNode(node.from),
@@ -341,29 +346,29 @@ class OperationNodeTransformer {
341
346
  updates: this.transformNodeList(node.updates),
342
347
  returning: this.transformNode(node.returning),
343
348
  with: this.transformNode(node.with),
344
- };
349
+ });
345
350
  }
346
351
  transformColumnUpdate(node) {
347
- return {
352
+ return (0, require_all_props_js_1.requireAllProps)({
348
353
  kind: 'ColumnUpdateNode',
349
354
  column: this.transformNode(node.column),
350
355
  value: this.transformNode(node.value),
351
- };
356
+ });
352
357
  }
353
358
  transformLimit(node) {
354
- return {
359
+ return (0, require_all_props_js_1.requireAllProps)({
355
360
  kind: 'LimitNode',
356
361
  limit: this.transformNode(node.limit),
357
- };
362
+ });
358
363
  }
359
364
  transformOffset(node) {
360
- return {
365
+ return (0, require_all_props_js_1.requireAllProps)({
361
366
  kind: 'OffsetNode',
362
367
  offset: this.transformNode(node.offset),
363
- };
368
+ });
364
369
  }
365
370
  transformOnConflict(node) {
366
- return {
371
+ return (0, require_all_props_js_1.requireAllProps)({
367
372
  kind: 'OnConflictNode',
368
373
  columns: this.transformNodeList(node.columns),
369
374
  constraint: this.transformNode(node.constraint),
@@ -372,128 +377,128 @@ class OperationNodeTransformer {
372
377
  updates: this.transformNodeList(node.updates),
373
378
  updateWhere: this.transformNode(node.updateWhere),
374
379
  doNothing: node.doNothing,
375
- };
380
+ });
376
381
  }
377
382
  transformOnDuplicateKey(node) {
378
- return {
383
+ return (0, require_all_props_js_1.requireAllProps)({
379
384
  kind: 'OnDuplicateKeyNode',
380
385
  updates: this.transformNodeList(node.updates),
381
- };
386
+ });
382
387
  }
383
388
  transformCreateIndex(node) {
384
- return {
389
+ return (0, require_all_props_js_1.requireAllProps)({
385
390
  kind: 'CreateIndexNode',
386
391
  name: this.transformNode(node.name),
387
392
  table: this.transformNode(node.table),
388
393
  expression: this.transformNode(node.expression),
389
394
  unique: node.unique,
390
395
  using: this.transformNode(node.using),
391
- };
396
+ });
392
397
  }
393
398
  transformList(node) {
394
- return {
399
+ return (0, require_all_props_js_1.requireAllProps)({
395
400
  kind: 'ListNode',
396
401
  items: this.transformNodeList(node.items),
397
- };
402
+ });
398
403
  }
399
404
  transformDropIndex(node) {
400
- return {
405
+ return (0, require_all_props_js_1.requireAllProps)({
401
406
  kind: 'DropIndexNode',
402
407
  name: this.transformNode(node.name),
403
408
  table: this.transformNode(node.table),
404
409
  ifExists: node.ifExists,
405
- };
410
+ });
406
411
  }
407
412
  transformPrimaryKeyConstraint(node) {
408
- return {
413
+ return (0, require_all_props_js_1.requireAllProps)({
409
414
  kind: 'PrimaryKeyConstraintNode',
410
415
  columns: this.transformNodeList(node.columns),
411
416
  name: this.transformNode(node.name),
412
- };
417
+ });
413
418
  }
414
419
  transformUniqueConstraint(node) {
415
- return {
420
+ return (0, require_all_props_js_1.requireAllProps)({
416
421
  kind: 'UniqueConstraintNode',
417
422
  columns: this.transformNodeList(node.columns),
418
423
  name: this.transformNode(node.name),
419
- };
424
+ });
420
425
  }
421
426
  transformForeignKeyConstraint(node) {
422
- return {
427
+ return (0, require_all_props_js_1.requireAllProps)({
423
428
  kind: 'ForeignKeyConstraintNode',
424
429
  columns: this.transformNodeList(node.columns),
425
430
  references: this.transformNode(node.references),
426
431
  name: this.transformNode(node.name),
427
432
  onDelete: node.onDelete,
428
433
  onUpdate: node.onUpdate,
429
- };
434
+ });
430
435
  }
431
436
  transformUnion(node) {
432
- return {
437
+ return (0, require_all_props_js_1.requireAllProps)({
433
438
  kind: 'UnionNode',
434
439
  union: this.transformNode(node.union),
435
440
  all: node.all,
436
- };
441
+ });
437
442
  }
438
443
  transformReferences(node) {
439
- return {
444
+ return (0, require_all_props_js_1.requireAllProps)({
440
445
  kind: 'ReferencesNode',
441
446
  table: this.transformNode(node.table),
442
447
  columns: this.transformNodeList(node.columns),
443
448
  onDelete: node.onDelete,
444
449
  onUpdate: node.onUpdate,
445
- };
450
+ });
446
451
  }
447
452
  transformCheckConstraint(node) {
448
- return {
453
+ return (0, require_all_props_js_1.requireAllProps)({
449
454
  kind: 'CheckConstraintNode',
450
455
  expression: this.transformNode(node.expression),
451
456
  name: this.transformNode(node.name),
452
- };
457
+ });
453
458
  }
454
459
  transformWith(node) {
455
- return {
460
+ return (0, require_all_props_js_1.requireAllProps)({
456
461
  kind: 'WithNode',
457
462
  expressions: this.transformNodeList(node.expressions),
458
463
  recursive: node.recursive,
459
- };
464
+ });
460
465
  }
461
466
  transformCommonTableExpression(node) {
462
- return {
467
+ return (0, require_all_props_js_1.requireAllProps)({
463
468
  kind: 'CommonTableExpressionNode',
464
469
  name: this.transformNode(node.name),
465
470
  expression: this.transformNode(node.expression),
466
- };
471
+ });
467
472
  }
468
473
  transformCommonTableExpressionName(node) {
469
- return {
474
+ return (0, require_all_props_js_1.requireAllProps)({
470
475
  kind: 'CommonTableExpressionNameNode',
471
476
  table: this.transformNode(node.table),
472
477
  columns: this.transformNodeList(node.columns),
473
- };
478
+ });
474
479
  }
475
480
  transformHaving(node) {
476
- return {
481
+ return (0, require_all_props_js_1.requireAllProps)({
477
482
  kind: 'HavingNode',
478
483
  having: this.transformNode(node.having),
479
- };
484
+ });
480
485
  }
481
486
  transformCreateSchema(node) {
482
- return {
487
+ return (0, require_all_props_js_1.requireAllProps)({
483
488
  kind: 'CreateSchemaNode',
484
489
  schema: this.transformNode(node.schema),
485
490
  ifNotExists: node.ifNotExists,
486
- };
491
+ });
487
492
  }
488
493
  transformDropSchema(node) {
489
- return {
494
+ return (0, require_all_props_js_1.requireAllProps)({
490
495
  kind: 'DropSchemaNode',
491
496
  schema: this.transformNode(node.schema),
492
497
  ifExists: node.ifExists,
493
- };
498
+ });
494
499
  }
495
500
  transformAlterTable(node) {
496
- return {
501
+ return (0, require_all_props_js_1.requireAllProps)({
497
502
  kind: 'AlterTableNode',
498
503
  table: this.transformNode(node.table),
499
504
  renameTo: this.transformNode(node.renameTo),
@@ -505,23 +510,23 @@ class OperationNodeTransformer {
505
510
  modifyColumn: this.transformNode(node.modifyColumn),
506
511
  addConstraint: this.transformNode(node.addConstraint),
507
512
  dropConstraint: this.transformNode(node.dropConstraint),
508
- };
513
+ });
509
514
  }
510
515
  transformDropColumn(node) {
511
- return {
516
+ return (0, require_all_props_js_1.requireAllProps)({
512
517
  kind: 'DropColumnNode',
513
518
  column: this.transformNode(node.column),
514
- };
519
+ });
515
520
  }
516
521
  transformRenameColumn(node) {
517
- return {
522
+ return (0, require_all_props_js_1.requireAllProps)({
518
523
  kind: 'RenameColumnNode',
519
524
  column: this.transformNode(node.column),
520
525
  renameTo: this.transformNode(node.renameTo),
521
- };
526
+ });
522
527
  }
523
528
  transformAlterColumn(node) {
524
- return {
529
+ return (0, require_all_props_js_1.requireAllProps)({
525
530
  kind: 'AlterColumnNode',
526
531
  column: this.transformNode(node.column),
527
532
  dataType: this.transformNode(node.dataType),
@@ -530,30 +535,30 @@ class OperationNodeTransformer {
530
535
  dropDefault: node.dropDefault,
531
536
  setNotNull: node.setNotNull,
532
537
  dropNotNull: node.dropNotNull,
533
- };
538
+ });
534
539
  }
535
540
  transformModifyColumn(node) {
536
- return {
541
+ return (0, require_all_props_js_1.requireAllProps)({
537
542
  kind: 'ModifyColumnNode',
538
543
  column: this.transformNode(node.column),
539
- };
544
+ });
540
545
  }
541
546
  transformAddConstraint(node) {
542
- return {
547
+ return (0, require_all_props_js_1.requireAllProps)({
543
548
  kind: 'AddConstraintNode',
544
549
  constraint: this.transformNode(node.constraint),
545
- };
550
+ });
546
551
  }
547
552
  transformDropConstraint(node) {
548
- return {
553
+ return (0, require_all_props_js_1.requireAllProps)({
549
554
  kind: 'DropConstraintNode',
550
555
  constraintName: this.transformNode(node.constraintName),
551
556
  ifExists: node.ifExists,
552
557
  modifier: node.modifier,
553
- };
558
+ });
554
559
  }
555
560
  transformCreateView(node) {
556
- return {
561
+ return (0, require_all_props_js_1.requireAllProps)({
557
562
  kind: 'CreateViewNode',
558
563
  name: this.transformNode(node.name),
559
564
  temporary: node.temporary,
@@ -562,37 +567,58 @@ class OperationNodeTransformer {
562
567
  materialized: node.materialized,
563
568
  columns: this.transformNodeList(node.columns),
564
569
  as: this.transformNode(node.as),
565
- };
570
+ });
566
571
  }
567
572
  transformDropView(node) {
568
- return {
573
+ return (0, require_all_props_js_1.requireAllProps)({
569
574
  kind: 'DropViewNode',
570
575
  name: this.transformNode(node.name),
571
576
  ifExists: node.ifExists,
572
577
  materialized: node.materialized,
573
- };
578
+ });
574
579
  }
575
580
  transformGenerated(node) {
576
- return {
581
+ return (0, require_all_props_js_1.requireAllProps)({
577
582
  kind: 'GeneratedNode',
578
583
  byDefault: node.byDefault,
579
584
  always: node.always,
580
585
  identity: node.identity,
581
586
  stored: node.stored,
582
587
  expression: this.transformNode(node.expression),
583
- };
588
+ });
584
589
  }
585
590
  transformDefaultValue(node) {
586
- return {
591
+ return (0, require_all_props_js_1.requireAllProps)({
587
592
  kind: 'DefaultValueNode',
588
593
  defaultValue: this.transformNode(node.defaultValue),
589
- };
594
+ });
590
595
  }
591
596
  transformOn(node) {
592
- return {
597
+ return (0, require_all_props_js_1.requireAllProps)({
593
598
  kind: 'OnNode',
594
599
  on: this.transformNode(node.on),
595
- };
600
+ });
601
+ }
602
+ transformSelectModifier(node) {
603
+ return (0, require_all_props_js_1.requireAllProps)({
604
+ kind: 'SelectModifierNode',
605
+ modifier: node.modifier,
606
+ rawModifier: this.transformNode(node.rawModifier),
607
+ });
608
+ }
609
+ transformCreateType(node) {
610
+ return (0, require_all_props_js_1.requireAllProps)({
611
+ kind: 'CreateTypeNode',
612
+ name: this.transformNode(node.name),
613
+ enum: this.transformNode(node.enum),
614
+ });
615
+ }
616
+ transformDropType(node) {
617
+ return (0, require_all_props_js_1.requireAllProps)({
618
+ kind: 'DropTypeNode',
619
+ name: this.transformNode(node.name),
620
+ ifExists: node.ifExists,
621
+ });
596
622
  }
597
623
  transformDataType(node) {
598
624
  // An Object.freezed leaf node. No need to clone.
@@ -65,6 +65,9 @@ import { GeneratedNode } from './generated-node.js';
65
65
  import { DefaultValueNode } from './default-value-node.js';
66
66
  import { OnNode } from './on-node.js';
67
67
  import { ValuesNode } from './values-node.js';
68
+ import { SelectModifierNode } from './select-modifier-node.js';
69
+ import { CreateTypeNode } from './create-type-node.js';
70
+ import { DropTypeNode } from './drop-type-node.js';
68
71
  export declare abstract class OperationNodeVisitor {
69
72
  #private;
70
73
  protected readonly nodeStack: OperationNode[];
@@ -136,4 +139,7 @@ export declare abstract class OperationNodeVisitor {
136
139
  protected abstract visitDefaultValue(node: DefaultValueNode): void;
137
140
  protected abstract visitOn(node: OnNode): void;
138
141
  protected abstract visitValues(node: ValuesNode): void;
142
+ protected abstract visitSelectModifier(node: SelectModifierNode): void;
143
+ protected abstract visitCreateType(node: CreateTypeNode): void;
144
+ protected abstract visitDropType(node: DropTypeNode): void;
139
145
  }
@@ -74,6 +74,9 @@ class OperationNodeVisitor {
74
74
  DefaultValueNode: this.visitDefaultValue.bind(this),
75
75
  OnNode: this.visitOn.bind(this),
76
76
  ValuesNode: this.visitValues.bind(this),
77
+ SelectModifierNode: this.visitSelectModifier.bind(this),
78
+ CreateTypeNode: this.visitCreateType.bind(this),
79
+ DropTypeNode: this.visitDropType.bind(this),
77
80
  });
78
81
  visitNode = (node) => {
79
82
  this.nodeStack.push(node);
@@ -1,4 +1,4 @@
1
- export declare type OperationNodeKind = 'IdentifierNode' | 'RawNode' | 'SelectQueryNode' | 'SelectionNode' | 'ReferenceNode' | 'ColumnNode' | 'TableNode' | 'AliasNode' | 'FromNode' | 'SelectAllNode' | 'FilterNode' | 'AndNode' | 'OrNode' | 'ParensNode' | 'ValueNode' | 'ValueListNode' | 'PrimitiveValueListNode' | 'JoinNode' | 'OperatorNode' | 'WhereNode' | 'InsertQueryNode' | 'DeleteQueryNode' | 'ReturningNode' | 'CreateTableNode' | 'ColumnDefinitionNode' | 'AddColumnNode' | 'DropTableNode' | 'DataTypeNode' | 'OrderByNode' | 'OrderByItemNode' | 'GroupByNode' | 'GroupByItemNode' | 'UpdateQueryNode' | 'ColumnUpdateNode' | 'LimitNode' | 'OffsetNode' | 'OnConflictNode' | 'OnDuplicateKeyNode' | 'CreateIndexNode' | 'DropIndexNode' | 'ListNode' | 'ReferencesNode' | 'PrimaryKeyConstraintNode' | 'UniqueConstraintNode' | 'CheckConstraintNode' | 'ForeignKeyConstraintNode' | 'WithNode' | 'CommonTableExpressionNode' | 'HavingNode' | 'CreateSchemaNode' | 'DropSchemaNode' | 'AlterTableNode' | 'ModifyColumnNode' | 'DropColumnNode' | 'RenameColumnNode' | 'AlterColumnNode' | 'AddConstraintNode' | 'DropConstraintNode' | 'UnionNode' | 'CreateViewNode' | 'DropViewNode' | 'GeneratedNode' | 'DefaultValueNode' | 'OnNode' | 'ValuesNode' | 'CommonTableExpressionNameNode';
1
+ export declare type OperationNodeKind = 'IdentifierNode' | 'RawNode' | 'SelectQueryNode' | 'SelectionNode' | 'ReferenceNode' | 'ColumnNode' | 'TableNode' | 'AliasNode' | 'FromNode' | 'SelectAllNode' | 'FilterNode' | 'AndNode' | 'OrNode' | 'ParensNode' | 'ValueNode' | 'ValueListNode' | 'PrimitiveValueListNode' | 'JoinNode' | 'OperatorNode' | 'WhereNode' | 'InsertQueryNode' | 'DeleteQueryNode' | 'ReturningNode' | 'CreateTableNode' | 'ColumnDefinitionNode' | 'AddColumnNode' | 'DropTableNode' | 'DataTypeNode' | 'OrderByNode' | 'OrderByItemNode' | 'GroupByNode' | 'GroupByItemNode' | 'UpdateQueryNode' | 'ColumnUpdateNode' | 'LimitNode' | 'OffsetNode' | 'OnConflictNode' | 'OnDuplicateKeyNode' | 'CreateIndexNode' | 'DropIndexNode' | 'ListNode' | 'ReferencesNode' | 'PrimaryKeyConstraintNode' | 'UniqueConstraintNode' | 'CheckConstraintNode' | 'ForeignKeyConstraintNode' | 'WithNode' | 'CommonTableExpressionNode' | 'HavingNode' | 'CreateSchemaNode' | 'DropSchemaNode' | 'AlterTableNode' | 'ModifyColumnNode' | 'DropColumnNode' | 'RenameColumnNode' | 'AlterColumnNode' | 'AddConstraintNode' | 'DropConstraintNode' | 'UnionNode' | 'CreateViewNode' | 'DropViewNode' | 'GeneratedNode' | 'DefaultValueNode' | 'OnNode' | 'ValuesNode' | 'CommonTableExpressionNameNode' | 'SelectModifierNode' | 'CreateTypeNode' | 'DropTypeNode';
2
2
  export interface OperationNode {
3
3
  readonly kind: OperationNodeKind;
4
4
  }