@mrnafisia/type-query 2.0.23 → 2.0.25

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.
@@ -15,25 +15,15 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
35
25
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.createQuery = exports.getTableDataOfJoinSelectColumn = exports.createJoinSelectQuery = exports.createJoinSelectEntity = exports.createDeleteQuery = exports.createUpdateQuery = exports.createInsertQuery = exports.createSelectQuery = exports.createEntity = void 0;
26
+ exports.createQuery = exports.getTableDataOfJoinSelectColumn = exports.createJoinSelectQuery = exports.createJoinSelectEntity = exports.createDeleteQuery = exports.createUpdateQuery = exports.createInsertQuery = exports.createSelectQuery = exports.defaultCustomQueryBuilder = exports.createEntity = void 0;
37
27
  const U = __importStar(require("./utils"));
38
28
  const keywords_1 = require("./keywords");
39
29
  const never_catch_1 = require("never-catch");
@@ -69,15 +59,51 @@ const createEntity = (table) => ({
69
59
  }
70
60
  });
71
61
  exports.createEntity = createEntity;
72
- const createSelectQuery = (context, table, returning, where, options, params) => {
73
- const errorPrefix = `select("${table.schemaName}"."${table.tableName}")`;
74
- const { distinct = false, groupBy = [], orders = [], start, step } = options;
62
+ const defaultCustomQueryBuilder = (parts, params) => {
75
63
  const tokens = ['SELECT'];
76
- if (distinct === true) {
77
- tokens.push('DISTINCT');
64
+ if (parts.distinctPart !== '') {
65
+ tokens.push(parts.distinctPart);
78
66
  }
79
- else if (Array.isArray(distinct)) {
80
- tokens.push(`DISTINCT ON(${distinct.map(column => (0, resolve_1.resolveColumn)(table, column, false)).join(', ')})`);
67
+ tokens.push(parts.returningPart, 'FROM', parts.fromPart, 'WHERE', parts.wherePart);
68
+ if (parts.groupByPart !== '') {
69
+ tokens.push('GROUP BY', parts.groupByPart);
70
+ }
71
+ if (parts.ordersPart !== '') {
72
+ tokens.push('ORDER BY', parts.ordersPart);
73
+ }
74
+ if (parts.paginationPart !== '') {
75
+ tokens.push(parts.paginationPart);
76
+ }
77
+ return {
78
+ sql: tokens.join(' '),
79
+ params
80
+ };
81
+ };
82
+ exports.defaultCustomQueryBuilder = defaultCustomQueryBuilder;
83
+ const createSelectQuery = (context, table, returning, where, options, params) => {
84
+ const errorPrefix = `select("${table.schemaName}"."${table.tableName}")`;
85
+ const { distinct = false, groupBy = [], orders = [], start, step, customQueryBuilder = defaultCustomQueryBuilder } = options;
86
+ let distinctPart = '';
87
+ const _distinct = typeof distinct === 'function' ? distinct(context) : distinct;
88
+ if (_distinct === true) {
89
+ distinctPart = 'DISTINCT';
90
+ }
91
+ else if (Array.isArray(_distinct)) {
92
+ const distinctTextArray = [];
93
+ for (const aDistinct of _distinct) {
94
+ if (typeof aDistinct === 'object') {
95
+ const resolvedExpression = (0, resolve_1.resolveExpression)(aDistinct.expression, params.length + 1, false);
96
+ if (!resolvedExpression.ok) {
97
+ return (0, never_catch_1.err)(`${errorPrefix} -> distinct -> ${_distinct.indexOf(aDistinct)} -> ${resolvedExpression.error}`);
98
+ }
99
+ params.push(...resolvedExpression.value.params);
100
+ distinctTextArray.push(resolvedExpression.value.text);
101
+ }
102
+ else {
103
+ distinctTextArray.push((0, resolve_1.resolveColumn)(table, aDistinct, false));
104
+ }
105
+ }
106
+ distinctPart = `DISTINCT ON(${distinctTextArray.join(', ')})`;
81
107
  }
82
108
  const _returning = typeof returning === 'function' ? returning(context) : returning;
83
109
  const resolvedReturning = (0, resolve_1.resolveReturning)(column => [table.columns[column].title, undefined], _returning, params.length + 1);
@@ -85,8 +111,8 @@ const createSelectQuery = (context, table, returning, where, options, params) =>
85
111
  return (0, never_catch_1.err)(`${errorPrefix} -> ${resolvedReturning.error}`);
86
112
  }
87
113
  params.push(...resolvedReturning.value.params);
88
- tokens.push(resolvedReturning.value.text);
89
- tokens.push(`FROM "${table.schemaName}"."${table.tableName}"`);
114
+ const returningPart = resolvedReturning.value.text;
115
+ const fromPart = `"${table.schemaName}"."${table.tableName}"`;
90
116
  const resolvedWhereResult = (0, resolve_1.resolveExpression)(typeof where === 'function' ? where(context) : where, params.length + 1, false);
91
117
  if (!resolvedWhereResult.ok) {
92
118
  return (0, never_catch_1.err)(`${errorPrefix} -> where -> ${resolvedWhereResult.error}`);
@@ -95,7 +121,8 @@ const createSelectQuery = (context, table, returning, where, options, params) =>
95
121
  return (0, never_catch_1.err)(`${errorPrefix} -> where -> neutral`);
96
122
  }
97
123
  params.push(...resolvedWhereResult.value.params);
98
- tokens.push('WHERE', resolvedWhereResult.value.text);
124
+ const wherePart = resolvedWhereResult.value.text;
125
+ let groupByPart = '';
99
126
  const _groupBy = typeof groupBy === 'function' ? groupBy(context) : groupBy;
100
127
  if (_groupBy.length !== 0) {
101
128
  const groupByTextArray = [];
@@ -112,8 +139,9 @@ const createSelectQuery = (context, table, returning, where, options, params) =>
112
139
  groupByTextArray.push((0, resolve_1.resolveColumn)(table, aGroupBy, false));
113
140
  }
114
141
  }
115
- tokens.push('GROUP BY', groupByTextArray.join(', '));
142
+ groupByPart = groupByTextArray.join(', ');
116
143
  }
144
+ let ordersPart = '';
117
145
  const _orders = typeof orders === 'function' ? orders(context) : orders;
118
146
  if (_orders.length !== 0) {
119
147
  const ordersTextArray = [];
@@ -131,21 +159,34 @@ const createSelectQuery = (context, table, returning, where, options, params) =>
131
159
  ordersTextArray.push(`${(0, resolve_1.resolveColumn)(table, by, false)} ${keywords_1.Dictionary.OrderDirection[direction]}`);
132
160
  }
133
161
  }
134
- tokens.push('ORDER BY', ordersTextArray.join(', '));
162
+ ordersPart = ordersTextArray.join(', ');
135
163
  }
164
+ let paginationPart = '';
165
+ const paginationTextArray = [];
136
166
  if (start !== undefined) {
137
167
  if (start < 0) {
138
168
  return (0, never_catch_1.err)(`${errorPrefix} -> start -> invalid`);
139
169
  }
140
- tokens.push('OFFSET', start.toString());
170
+ paginationTextArray.push(`OFFSET ${start}`);
141
171
  }
142
172
  if (step !== undefined) {
143
173
  if (step <= 0) {
144
174
  return (0, never_catch_1.err)(`${errorPrefix} -> step -> invalid`);
145
175
  }
146
- tokens.push('LIMIT', step.toString());
147
- }
148
- return (0, never_catch_1.ok)({ sql: tokens.join(' '), params });
176
+ paginationTextArray.push(`LIMIT ${step}`);
177
+ }
178
+ if (paginationTextArray.length !== 0) {
179
+ paginationPart = paginationTextArray.join(' ');
180
+ }
181
+ return (0, never_catch_1.ok)(customQueryBuilder({
182
+ distinctPart,
183
+ returningPart,
184
+ fromPart,
185
+ wherePart,
186
+ groupByPart,
187
+ ordersPart,
188
+ paginationPart
189
+ }, params));
149
190
  };
150
191
  exports.createSelectQuery = createSelectQuery;
151
192
  const createInsertQuery = (context, table, rows, returning, options, params) => {
@@ -276,7 +317,9 @@ const createUpdateQuery = (context, table, sets, where, returning, params) => {
276
317
  };
277
318
  exports.createUpdateQuery = createUpdateQuery;
278
319
  const createDeleteQuery = (context, table, returning, where, params) => {
279
- const tokens = [`DELETE FROM "${table.schemaName}"."${table.tableName}"`];
320
+ const tokens = [
321
+ `DELETE FROM "${table.schemaName}"."${table.tableName}"`
322
+ ];
280
323
  const resolvedWhereResult = (0, resolve_1.resolveExpression)(typeof where === 'function' ? where(context) : where, params.length + 1, false);
281
324
  if (!resolvedWhereResult.ok) {
282
325
  return (0, never_catch_1.err)(`delete("${table.schemaName}"."${table.tableName}") -> where -> ${resolvedWhereResult.error}`);
@@ -320,18 +363,29 @@ exports.createJoinSelectEntity = createJoinSelectEntity;
320
363
  const createJoinSelectQuery = (contexts, main, joinTables, returning, where, options, params) => {
321
364
  const errorPrefix = `join-select("${main.table.schemaName}"."${main.table.tableName}")`;
322
365
  const allTables = [main, ...joinTables];
323
- const { distinct = false, groupBy = [], orders = [], start, step } = options;
324
- const tokens = ['SELECT'];
325
- if (distinct === true) {
326
- tokens.push('DISTINCT');
327
- }
328
- else if (Array.isArray(distinct)) {
329
- tokens.push(`DISTINCT ON(${distinct
330
- .map(column => {
331
- const { table, alias } = getTableDataOfJoinSelectColumn(allTables, column);
332
- return (0, resolve_1.resolveColumn)(table, column.substring((alias + '_').length), true, alias);
333
- })
334
- .join(', ')})`);
366
+ const { distinct = false, groupBy = [], orders = [], start, step, customQueryBuilder = defaultCustomQueryBuilder } = options;
367
+ let distinctPart = '';
368
+ const _distinct = typeof distinct === 'function' ? distinct(contexts) : distinct;
369
+ if (_distinct === true) {
370
+ distinctPart = 'DISTINCT';
371
+ }
372
+ else if (Array.isArray(_distinct)) {
373
+ const distinctTextArray = [];
374
+ for (const aDistinct of _distinct) {
375
+ if (typeof aDistinct === 'object') {
376
+ const resolvedExpression = (0, resolve_1.resolveExpression)(aDistinct.expression, params.length + 1, false);
377
+ if (!resolvedExpression.ok) {
378
+ return (0, never_catch_1.err)(`${errorPrefix} -> distinct -> ${_distinct.indexOf(aDistinct)} -> ${resolvedExpression.error}`);
379
+ }
380
+ params.push(...resolvedExpression.value.params);
381
+ distinctTextArray.push(resolvedExpression.value.text);
382
+ }
383
+ else {
384
+ const { table, alias } = getTableDataOfJoinSelectColumn(allTables, aDistinct);
385
+ distinctTextArray.push((0, resolve_1.resolveColumn)(table, aDistinct.substring((alias + '_').length), true, alias));
386
+ }
387
+ }
388
+ distinctPart = `DISTINCT ON(${distinctTextArray.join(', ')})`;
335
389
  }
336
390
  const _returning = typeof returning === 'function' ? returning(contexts) : returning;
337
391
  const resolvedReturning = (0, resolve_1.resolveReturning)(column => {
@@ -343,7 +397,8 @@ const createJoinSelectQuery = (contexts, main, joinTables, returning, where, opt
343
397
  return (0, never_catch_1.err)(`${errorPrefix} -> ${resolvedReturning.error}`);
344
398
  }
345
399
  params.push(...resolvedReturning.value.params);
346
- tokens.push(resolvedReturning.value.text, `FROM "${main.table.schemaName}"."${main.table.tableName}" "${main.alias}"`);
400
+ const returningPart = resolvedReturning.value.text;
401
+ let fromPart = `"${main.table.schemaName}"."${main.table.tableName}" "${main.alias}"`;
347
402
  for (const joinTable of joinTables) {
348
403
  const onExpressionResult = (0, resolve_1.resolveExpression)(typeof joinTable.on === 'function'
349
404
  ? joinTable.on(contexts)
@@ -355,7 +410,7 @@ const createJoinSelectQuery = (contexts, main, joinTables, returning, where, opt
355
410
  return (0, never_catch_1.err)(`${errorPrefix} -> join -> ${joinTables.indexOf(joinTable)} -> neutral`);
356
411
  }
357
412
  params.push(...onExpressionResult.value.params);
358
- tokens.push(`${keywords_1.Dictionary.JoinType[joinTable.joinType]} "${joinTable.table.schemaName}"."${joinTable.table.tableName}" "${joinTable.alias}" ON ${onExpressionResult.value.text}`);
413
+ fromPart += ` ${keywords_1.Dictionary.JoinType[joinTable.joinType]} "${joinTable.table.schemaName}"."${joinTable.table.tableName}" "${joinTable.alias}" ON ${onExpressionResult.value.text}`;
359
414
  }
360
415
  const resolvedWhereResult = (0, resolve_1.resolveExpression)(typeof where === 'function' ? where(contexts) : where, params.length + 1, false);
361
416
  if (!resolvedWhereResult.ok) {
@@ -365,7 +420,8 @@ const createJoinSelectQuery = (contexts, main, joinTables, returning, where, opt
365
420
  return (0, never_catch_1.err)(`${errorPrefix} -> where -> neutral`);
366
421
  }
367
422
  params.push(...resolvedWhereResult.value.params);
368
- tokens.push('WHERE', resolvedWhereResult.value.text);
423
+ const wherePart = resolvedWhereResult.value.text;
424
+ let groupByPart = '';
369
425
  const _groupBy = typeof groupBy === 'function' ? groupBy(contexts) : groupBy;
370
426
  if (_groupBy.length !== 0) {
371
427
  const groupByTextArray = [];
@@ -383,8 +439,9 @@ const createJoinSelectQuery = (contexts, main, joinTables, returning, where, opt
383
439
  groupByTextArray.push((0, resolve_1.resolveColumn)(table, aGroupBy.substring((alias + '_').length), true, alias));
384
440
  }
385
441
  }
386
- tokens.push('GROUP BY', groupByTextArray.join(', '));
442
+ groupByPart = groupByTextArray.join(', ');
387
443
  }
444
+ let ordersPart = '';
388
445
  const _orders = typeof orders === 'function' ? orders(contexts) : orders;
389
446
  if (_orders.length !== 0) {
390
447
  const ordersTextArray = [];
@@ -403,21 +460,34 @@ const createJoinSelectQuery = (contexts, main, joinTables, returning, where, opt
403
460
  ordersTextArray.push(`${(0, resolve_1.resolveColumn)(table, by.substring((alias + '_').length), true, alias)} ${keywords_1.Dictionary.OrderDirection[direction]}`);
404
461
  }
405
462
  }
406
- tokens.push('ORDER BY', ordersTextArray.join(', '));
463
+ ordersPart = ordersTextArray.join(', ');
407
464
  }
465
+ let paginationPart = '';
466
+ const paginationTextArray = [];
408
467
  if (start !== undefined) {
409
468
  if (start < 0) {
410
469
  return (0, never_catch_1.err)(`${errorPrefix} -> start -> invalid`);
411
470
  }
412
- tokens.push('OFFSET', start.toString());
471
+ paginationTextArray.push(`OFFSET ${start}`);
413
472
  }
414
473
  if (step !== undefined) {
415
474
  if (step <= 0) {
416
475
  return (0, never_catch_1.err)(`${errorPrefix} -> step -> invalid`);
417
476
  }
418
- tokens.push('LIMIT', step.toString());
419
- }
420
- return (0, never_catch_1.ok)({ sql: tokens.join(' '), params });
477
+ paginationTextArray.push(`LIMIT ${step}`);
478
+ }
479
+ if (paginationTextArray.length !== 0) {
480
+ paginationPart = paginationTextArray.join(' ');
481
+ }
482
+ return (0, never_catch_1.ok)(customQueryBuilder({
483
+ distinctPart,
484
+ returningPart,
485
+ fromPart,
486
+ wherePart,
487
+ groupByPart,
488
+ ordersPart,
489
+ paginationPart
490
+ }, params));
421
491
  };
422
492
  exports.createJoinSelectQuery = createJoinSelectQuery;
423
493
  const getTableDataOfJoinSelectColumn = (tablesData, column) => {
@@ -1 +1 @@
1
- {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/entity.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  export { type Context, createContext } from './context';
2
2
  export { type Model, type ModelWithPrefix, Int2Range, Int4Range, Int8Range, createModelParser } from './createModelParser';
3
3
  export { generateCreateSequencesSQL, generateDropSequencesSQL, generateCreateTableSQL, generateDropTableSQL, getSequenceName } from './ddl';
4
- export { type InsertingRow, type UpdateSets, type JoinType, type OrderDirection, type Mode, type CustomColumn, createEntity } from './entity';
4
+ export { type InsertingRow, type UpdateSets, type JoinType, type OrderDirection, type Mode, type CustomColumn, createEntity, defaultCustomQueryBuilder } from './entity';
5
5
  export { partialQuery, resolveExpression, resolveColumn, resolveReturning, resolveResult } from './resolve';
6
6
  export type { Json, JsonObject, JsonArray, BaseJsonValue, NullableType, Schema, ColumnType, ColumnDefault, Table } from './Table';
7
7
  export { type TestTableData, testTransaction, createTestTableData, isRowEqual, isEqual } from './testTransaction';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,EACH,KAAK,KAAK,EACV,KAAK,eAAe,EACpB,SAAS,EACT,SAAS,EACT,SAAS,EACT,iBAAiB,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACH,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EAClB,MAAM,OAAO,CAAC;AACf,OAAO,EACH,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,KAAK,IAAI,EACT,KAAK,YAAY,EACjB,YAAY,EACf,MAAM,UAAU,CAAC;AAClB,OAAO,EACH,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,aAAa,EAChB,MAAM,WAAW,CAAC;AACnB,YAAY,EACR,IAAI,EACJ,UAAU,EACV,SAAS,EACT,aAAa,EACb,YAAY,EACZ,MAAM,EACN,UAAU,EACV,aAAa,EACb,KAAK,EACR,MAAM,SAAS,CAAC;AACjB,OAAO,EACH,KAAK,aAAa,EAClB,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,OAAO,EACV,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,EACH,KAAK,KAAK,EACV,KAAK,eAAe,EACpB,SAAS,EACT,SAAS,EACT,SAAS,EACT,iBAAiB,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACH,0BAA0B,EAC1B,wBAAwB,EACxB,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EAClB,MAAM,OAAO,CAAC;AACf,OAAO,EACH,KAAK,YAAY,EACjB,KAAK,UAAU,EACf,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,KAAK,IAAI,EACT,KAAK,YAAY,EACjB,YAAY,EACZ,yBAAyB,EAC5B,MAAM,UAAU,CAAC;AAClB,OAAO,EACH,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,aAAa,EAChB,MAAM,WAAW,CAAC;AACnB,YAAY,EACR,IAAI,EACJ,UAAU,EACV,SAAS,EACT,aAAa,EACb,YAAY,EACZ,MAAM,EACN,UAAU,EACV,aAAa,EACb,KAAK,EACR,MAAM,SAAS,CAAC;AACjB,OAAO,EACH,KAAK,aAAa,EAClB,eAAe,EACf,mBAAmB,EACnB,UAAU,EACV,OAAO,EACV,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,KAAK,CAAC,MAAM,SAAS,CAAC"}
package/dist/src/index.js CHANGED
@@ -15,25 +15,15 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
35
25
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.U = exports.transaction = exports.isEqual = exports.isRowEqual = exports.createTestTableData = exports.testTransaction = exports.resolveResult = exports.resolveReturning = exports.resolveColumn = exports.resolveExpression = exports.partialQuery = exports.createEntity = exports.getSequenceName = exports.generateDropTableSQL = exports.generateCreateTableSQL = exports.generateDropSequencesSQL = exports.generateCreateSequencesSQL = exports.createModelParser = exports.Int8Range = exports.Int4Range = exports.Int2Range = exports.createContext = void 0;
26
+ exports.U = exports.transaction = exports.isEqual = exports.isRowEqual = exports.createTestTableData = exports.testTransaction = exports.resolveResult = exports.resolveReturning = exports.resolveColumn = exports.resolveExpression = exports.partialQuery = exports.defaultCustomQueryBuilder = exports.createEntity = exports.getSequenceName = exports.generateDropTableSQL = exports.generateCreateTableSQL = exports.generateDropSequencesSQL = exports.generateCreateSequencesSQL = exports.createModelParser = exports.Int8Range = exports.Int4Range = exports.Int2Range = exports.createContext = void 0;
37
27
  var context_1 = require("./context");
38
28
  Object.defineProperty(exports, "createContext", { enumerable: true, get: function () { return context_1.createContext; } });
39
29
  var createModelParser_1 = require("./createModelParser");
@@ -49,6 +39,7 @@ Object.defineProperty(exports, "generateDropTableSQL", { enumerable: true, get:
49
39
  Object.defineProperty(exports, "getSequenceName", { enumerable: true, get: function () { return ddl_1.getSequenceName; } });
50
40
  var entity_1 = require("./entity");
51
41
  Object.defineProperty(exports, "createEntity", { enumerable: true, get: function () { return entity_1.createEntity; } });
42
+ Object.defineProperty(exports, "defaultCustomQueryBuilder", { enumerable: true, get: function () { return entity_1.defaultCustomQueryBuilder; } });
52
43
  var resolve_1 = require("./resolve");
53
44
  Object.defineProperty(exports, "partialQuery", { enumerable: true, get: function () { return resolve_1.partialQuery; } });
54
45
  Object.defineProperty(exports, "resolveExpression", { enumerable: true, get: function () { return resolve_1.resolveExpression; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAwD;AAAjC,wGAAA,aAAa,OAAA;AACpC,yDAO6B;AAJzB,8GAAA,SAAS,OAAA;AACT,8GAAA,SAAS,OAAA;AACT,8GAAA,SAAS,OAAA;AACT,sHAAA,iBAAiB,OAAA;AAErB,6BAMe;AALX,iHAAA,0BAA0B,OAAA;AAC1B,+GAAA,wBAAwB,OAAA;AACxB,6GAAA,sBAAsB,OAAA;AACtB,2GAAA,oBAAoB,OAAA;AACpB,sGAAA,eAAe,OAAA;AAEnB,mCAQkB;AADd,sGAAA,YAAY,OAAA;AAEhB,qCAMmB;AALf,uGAAA,YAAY,OAAA;AACZ,4GAAA,iBAAiB,OAAA;AACjB,wGAAA,aAAa,OAAA;AACb,2GAAA,gBAAgB,OAAA;AAChB,wGAAA,aAAa,OAAA;AAajB,qDAM2B;AAJvB,kHAAA,eAAe,OAAA;AACf,sHAAA,mBAAmB,OAAA;AACnB,6GAAA,UAAU,OAAA;AACV,0GAAA,OAAO,OAAA;AAEX,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,6CAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAwD;AAAjC,wGAAA,aAAa,OAAA;AACpC,yDAO6B;AAJzB,8GAAA,SAAS,OAAA;AACT,8GAAA,SAAS,OAAA;AACT,8GAAA,SAAS,OAAA;AACT,sHAAA,iBAAiB,OAAA;AAErB,6BAMe;AALX,iHAAA,0BAA0B,OAAA;AAC1B,+GAAA,wBAAwB,OAAA;AACxB,6GAAA,sBAAsB,OAAA;AACtB,2GAAA,oBAAoB,OAAA;AACpB,sGAAA,eAAe,OAAA;AAEnB,mCASkB;AAFd,sGAAA,YAAY,OAAA;AACZ,mHAAA,yBAAyB,OAAA;AAE7B,qCAMmB;AALf,uGAAA,YAAY,OAAA;AACZ,4GAAA,iBAAiB,OAAA;AACjB,wGAAA,aAAa,OAAA;AACb,2GAAA,gBAAgB,OAAA;AAChB,wGAAA,aAAa,OAAA;AAajB,qDAM2B;AAJvB,kHAAA,eAAe,OAAA;AACf,sHAAA,mBAAmB,OAAA;AACnB,6GAAA,UAAU,OAAA;AACV,0GAAA,OAAO,OAAA;AAEX,6CAA4C;AAAnC,0GAAA,WAAW,OAAA;AACpB,6CAA6B"}
@@ -9,7 +9,7 @@ declare const partialQuery: (text?: string, params?: string[]) => PartialQuery;
9
9
  declare const resolveExpression: (expression: unknown, paramsStart: number, ignore?: boolean) => Result<PartialQuery, string>;
10
10
  declare const resolveColumn: (table: Table, column: string, full?: boolean, alias?: string) => string;
11
11
  declare const resolveReturning: (getColumnTitleAndAlias: (column: string) => [title: string | undefined, alias: string | undefined], columns: readonly (string | CustomColumn<unknown, string>)[], paramsStart: number) => Result<PartialQuery, string>;
12
- declare const resolveResult: <S extends Schema, R extends readonly (keyof S | CustomColumn<unknown, string>)[], M extends Mode>(rows: unknown[], mode: M) => Result<QueryResult<S, R, M>, false>;
12
+ declare const resolveResult: <S extends Schema, R extends readonly (CustomColumn<unknown, string> | keyof S)[], M extends Mode>(rows: unknown[], mode: M) => Result<QueryResult<S, R, M>, false>;
13
13
  export type { PartialQuery };
14
14
  export { partialQuery, resolveExpression, resolveColumn, resolveReturning, resolveResult };
15
15
  //# sourceMappingURL=resolve.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/resolve.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAW,MAAM,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE3D,KAAK,YAAY,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AACvD,QAAA,MAAM,YAAY,UACR,MAAM,WACJ,MAAM,EAAE,KACjB,YAAkC,CAAC;AAatC,QAAA,MAAM,iBAAiB,eACP,OAAO,eACN,MAAM,WACX,OAAO,KAChB,MAAM,CAAC,YAAY,EAAE,MAAM,CAwyB7B,CAAC;AAEF,QAAA,MAAM,aAAa,UACR,KAAK,UACJ,MAAM,SACR,OAAO,UACL,MAAM,WAajB,CAAC;AAEF,QAAA,MAAM,gBAAgB,2BACM,CACpB,MAAM,EAAE,MAAM,KACb,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,WAClD,SAAS,CAAC,MAAM,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,eAC/C,MAAM,KACpB,MAAM,CAAC,YAAY,EAAE,MAAM,CAiD7B,CAAC;AAEF,QAAA,MAAM,aAAa,GACf,CAAC,SAAS,MAAM,EAChB,CAAC,SAAS,SAAS,CAAC,MAAM,CAAC,GAAG,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,EAC9D,CAAC,SAAS,IAAI,QAER,OAAO,EAAE,QACT,CAAC,KACR,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAkBpC,CAAC;AAEF,YAAY,EAAE,YAAY,EAAE,CAAC;AAC7B,OAAO,EACH,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,aAAa,EAChB,CAAC"}
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/resolve.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACxC,OAAO,EAAW,MAAM,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE3D,KAAK,YAAY,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AACvD,QAAA,MAAM,YAAY,UACR,MAAM,WACJ,MAAM,EAAE,KACjB,YAAkC,CAAC;AAatC,QAAA,MAAM,iBAAiB,eACP,OAAO,eACN,MAAM,WACX,OAAO,KAChB,OAAO,YAAY,EAAE,MAAM,CAwyB7B,CAAC;AAEF,QAAA,MAAM,aAAa,UACR,KAAK,UACJ,MAAM,SACR,OAAO,UACL,MAAM,WAajB,CAAC;AAEF,QAAA,MAAM,gBAAgB,oCAEN,MAAM,KACb,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,WAClD,SAAS,CAAC,MAAM,GAAG,aAAa,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,eAC/C,MAAM,KACpB,OAAO,YAAY,EAAE,MAAM,CAiD7B,CAAC;AAEF,QAAA,MAAM,aAAa,2GAKT,OAAO,EAAE,QACT,CAAC,KACR,OAAO,YAAY,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAkBpC,CAAC;AAEF,YAAY,EAAE,YAAY,EAAE,CAAC;AAC7B,OAAO,EACH,YAAY,EACZ,iBAAiB,EACjB,aAAa,EACb,gBAAgB,EAChB,aAAa,EAChB,CAAC"}
@@ -15,23 +15,13 @@ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (
15
15
  }) : function(o, v) {
16
16
  o["default"] = v;
17
17
  });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
35
25
  var __importDefault = (this && this.__importDefault) || function (mod) {
36
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
37
27
  };