@ignisia/sql 0.4.0 → 0.4.1

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 (93) hide show
  1. package/dist/cjs/database/alter.d.cts +2 -2
  2. package/dist/cjs/database/column.d.cts +2 -2
  3. package/dist/cjs/database/contract.d.cts +2 -2
  4. package/dist/cjs/database/index.d.cts +2 -2
  5. package/dist/cjs/database/table.d.cts +2 -2
  6. package/dist/cjs/database/types.d.cts +1 -1
  7. package/dist/cjs/database/wrapper.d.cts +1 -1
  8. package/dist/cjs/{index-CZhrzE5r.d.cts → index-BjgeY76W.d.cts} +1 -1
  9. package/dist/cjs/{index-CHxuUiO4.d.cts → index-K07efKgt.d.cts} +102 -74
  10. package/dist/cjs/index.d.cts +2 -2
  11. package/dist/cjs/migration/index.d.cts +2 -2
  12. package/dist/cjs/migration/type.d.cts +2 -2
  13. package/dist/cjs/query/ast.d.cts +8 -0
  14. package/dist/cjs/query/ast.js +2 -0
  15. package/dist/cjs/query/builder.d.cts +3 -3
  16. package/dist/cjs/query/builder.js +7 -9
  17. package/dist/cjs/query/compiler.d.cts +13 -0
  18. package/dist/cjs/query/compiler.js +114 -0
  19. package/dist/cjs/query/condition/common.d.cts +16 -11
  20. package/dist/cjs/query/condition/common.js +0 -12
  21. package/dist/cjs/query/condition/core.d.cts +1 -1
  22. package/dist/cjs/query/condition/core.js +67 -33
  23. package/dist/cjs/query/condition/index.d.cts +2 -2
  24. package/dist/cjs/query/condition/index.js +0 -7
  25. package/dist/cjs/query/condition/not.d.cts +15 -3
  26. package/dist/cjs/query/constants.d.cts +8 -9
  27. package/dist/cjs/query/constants.js +9 -10
  28. package/dist/cjs/query/contract.d.cts +1 -1
  29. package/dist/cjs/query/explain.d.cts +1 -1
  30. package/dist/cjs/query/explain.js +1 -1
  31. package/dist/cjs/query/helper.d.cts +1 -1
  32. package/dist/cjs/query/helper.js +0 -4
  33. package/dist/cjs/query/index.d.cts +3 -3
  34. package/dist/cjs/query/index.js +1 -11
  35. package/dist/cjs/query/join.d.cts +5 -5
  36. package/dist/cjs/query/join.js +19 -11
  37. package/dist/cjs/query/sql.d.cts +2 -2
  38. package/dist/cjs/query/sql.js +24 -16
  39. package/dist/cjs/query/types.d.cts +1 -1
  40. package/dist/cjs/query/utilities.d.cts +4 -6
  41. package/dist/cjs/query/utilities.js +0 -116
  42. package/dist/cjs/table/index.d.cts +1 -1
  43. package/dist/cjs/table/types.d.cts +1 -1
  44. package/dist/cjs/table/utilities.d.cts +1 -1
  45. package/dist/esm/database/alter.d.ts +2 -2
  46. package/dist/esm/database/column.d.ts +2 -2
  47. package/dist/esm/database/contract.d.ts +2 -2
  48. package/dist/esm/database/index.d.ts +2 -2
  49. package/dist/esm/database/table.d.ts +2 -2
  50. package/dist/esm/database/types.d.ts +1 -1
  51. package/dist/esm/database/wrapper.d.ts +1 -1
  52. package/dist/esm/{index-DgOs61lH.d.ts → index-B4y4GiNB.d.ts} +1 -1
  53. package/dist/esm/{index-CjurLJdK.d.ts → index-CARBkj9h.d.ts} +102 -74
  54. package/dist/esm/index.d.ts +2 -2
  55. package/dist/esm/migration/index.d.ts +2 -2
  56. package/dist/esm/migration/type.d.ts +2 -2
  57. package/dist/esm/query/ast.d.ts +8 -0
  58. package/dist/esm/query/ast.js +1 -0
  59. package/dist/esm/query/builder.d.ts +3 -3
  60. package/dist/esm/query/builder.js +7 -9
  61. package/dist/esm/query/compiler.d.ts +13 -0
  62. package/dist/esm/query/compiler.js +112 -0
  63. package/dist/esm/query/condition/common.d.ts +16 -11
  64. package/dist/esm/query/condition/common.js +1 -12
  65. package/dist/esm/query/condition/core.d.ts +1 -1
  66. package/dist/esm/query/condition/core.js +68 -34
  67. package/dist/esm/query/condition/index.d.ts +2 -2
  68. package/dist/esm/query/condition/index.js +0 -1
  69. package/dist/esm/query/condition/not.d.ts +15 -3
  70. package/dist/esm/query/constants.d.ts +8 -9
  71. package/dist/esm/query/constants.js +9 -11
  72. package/dist/esm/query/contract.d.ts +1 -1
  73. package/dist/esm/query/explain.d.ts +1 -1
  74. package/dist/esm/query/explain.js +1 -1
  75. package/dist/esm/query/helper.d.ts +1 -1
  76. package/dist/esm/query/helper.js +1 -4
  77. package/dist/esm/query/index.d.ts +3 -3
  78. package/dist/esm/query/index.js +2 -12
  79. package/dist/esm/query/join.d.ts +5 -5
  80. package/dist/esm/query/join.js +19 -11
  81. package/dist/esm/query/sql.d.ts +2 -2
  82. package/dist/esm/query/sql.js +25 -17
  83. package/dist/esm/query/types.d.ts +1 -1
  84. package/dist/esm/query/utilities.d.ts +4 -6
  85. package/dist/esm/query/utilities.js +2 -116
  86. package/dist/esm/table/index.d.ts +1 -1
  87. package/dist/esm/table/types.d.ts +1 -1
  88. package/dist/esm/table/utilities.d.ts +1 -1
  89. package/package.json +4 -4
  90. package/dist/cjs/query/condition/raw.d.cts +0 -8
  91. package/dist/cjs/query/condition/raw.js +0 -54
  92. package/dist/esm/query/condition/raw.d.ts +0 -8
  93. package/dist/esm/query/condition/raw.js +0 -50
@@ -1,10 +1,16 @@
1
1
  'use strict';
2
2
 
3
3
  var _ = require('.');
4
+ var constants = require('./constants');
4
5
 
5
6
  function addNoOnJoin(query, joinType, joinTable, alias) {
6
7
  if (!query.definition.joins) query.definition.joins = [];
7
- query.definition.joins.push(`${joinType} JOIN ${joinTable.name} AS ${alias}`);
8
+ query.definition.joins.push({
9
+ type: constants.AstType.JOIN,
10
+ alias,
11
+ join: joinType,
12
+ table: joinTable
13
+ });
8
14
  if (!query.definition.joinedTables) {
9
15
  query.definition.joinedTables = {};
10
16
  }
@@ -16,21 +22,23 @@ function prepareJoin(query, joinType, joinTable, alias) {
16
22
  on(callback) {
17
23
  const sub = callback(new _.QueryBuilder(query.table));
18
24
  const subDef = sub.definition;
19
- if (!subDef.where?.length) {
25
+ if (!subDef.where) {
20
26
  return query;
21
27
  }
22
- const grouped = `(${subDef.where.join(" ")})`;
23
- if (!query.definition.joins) query.definition.joins = [];
24
- query.definition.joins.push(
25
- `${joinType} JOIN ${joinTable.name} AS ${alias} ON ${grouped}`
26
- );
28
+ if (!query.definition.joins) {
29
+ query.definition.joins = [];
30
+ }
31
+ const on = subDef.where;
32
+ query.definition.joins.push({
33
+ type: constants.AstType.JOIN,
34
+ alias,
35
+ join: joinType,
36
+ table: joinTable,
37
+ on
38
+ });
27
39
  if (subDef.joins?.length) {
28
40
  query.definition.joins.push(...subDef.joins);
29
41
  }
30
- if (subDef.params?.length) {
31
- if (!query.definition.params) query.definition.params = [];
32
- query.definition.params.push(...subDef.params);
33
- }
34
42
  if (!query.definition.joinedTables) {
35
43
  query.definition.joinedTables = {};
36
44
  }
@@ -1,5 +1,5 @@
1
1
  import { TransactionSQL } from 'bun';
2
- import { T as Table, Q as QueryDefinition, C as ColumnSelector, k as StrictColumnSelector, l as QueryBuilder, E as ExplainOptions } from '../index-CHxuUiO4.cjs';
2
+ import { T as Table, Q as QueryDefinition, C as ColumnSelector, S as StrictColumnSelector, c as QueryBuilder, E as ExplainOptions } from '../index-K07efKgt.cjs';
3
3
  import { Column } from '../column/index.cjs';
4
4
  import { Dialect } from '../table/constants.cjs';
5
5
  import '../types.cjs';
@@ -10,7 +10,7 @@ import '../column/types.cjs';
10
10
  declare function buildQuery(query: string): string;
11
11
  declare function toQuery<Alias extends string, TableRef extends Table<string, Record<string, Column>>, JoinedTables extends Record<string, Table<string, Record<string, Column>>>, Definition extends Partial<QueryDefinition<Alias, TableRef, JoinedTables>>, AllowedColumn extends ColumnSelector<Alias, TableRef, JoinedTables>, StrictAllowedColumn extends StrictColumnSelector<Alias, TableRef, JoinedTables>, Query extends QueryBuilder<Alias, TableRef, JoinedTables, Definition, AllowedColumn, StrictAllowedColumn>>(this: Query, dialect?: Dialect | null): {
12
12
  query: string;
13
- params: unknown[] | null | undefined;
13
+ params: unknown[];
14
14
  };
15
15
  declare function toString<Alias extends string, TableRef extends Table<string, Record<string, Column>>, JoinedTables extends Record<string, Table<string, Record<string, Column>>>, Definition extends Partial<QueryDefinition<Alias, TableRef, JoinedTables>>, AllowedColumn extends ColumnSelector<Alias, TableRef, JoinedTables>, StrictAllowedColumn extends StrictColumnSelector<Alias, TableRef, JoinedTables>, Query extends QueryBuilder<Alias, TableRef, JoinedTables, Definition, AllowedColumn, StrictAllowedColumn>>(this: Query): string;
16
16
  declare function toDebugString<Alias extends string, TableRef extends Table<string, Record<string, Column>>, JoinedTables extends Record<string, Table<string, Record<string, Column>>>, Definition extends Partial<QueryDefinition<Alias, TableRef, JoinedTables>>, AllowedColumn extends ColumnSelector<Alias, TableRef, JoinedTables>, StrictAllowedColumn extends StrictColumnSelector<Alias, TableRef, JoinedTables>, Query extends QueryBuilder<Alias, TableRef, JoinedTables, Definition, AllowedColumn, StrictAllowedColumn>>(this: Query): string;
@@ -2,6 +2,7 @@
2
2
 
3
3
  var constants$1 = require('../table/constants');
4
4
  var builder = require('./builder');
5
+ var compiler = require('./compiler');
5
6
  var constants = require('./constants');
6
7
  var explain$1 = require('./explain');
7
8
  var utilities = require('./utilities');
@@ -13,17 +14,18 @@ function buildQuery(query) {
13
14
  return `$${index}`;
14
15
  });
15
16
  }
16
- function toQuery(dialect) {
17
+ function toQuery(dialect = this.table.dialect) {
18
+ const params = [];
17
19
  const parts = [];
18
20
  switch (this.definition.queryType) {
19
21
  case constants.QueryType.SELECT:
20
22
  parts.push(builder.buildSelectQuery(this));
21
23
  break;
22
24
  case constants.QueryType.INSERT:
23
- parts.push(builder.buildInsertQuery(this));
25
+ parts.push(builder.buildInsertQuery(this, params));
24
26
  break;
25
27
  case constants.QueryType.UPDATE:
26
- parts.push(builder.buildUpdateQuery(this));
28
+ parts.push(builder.buildUpdateQuery(this, params));
27
29
  break;
28
30
  case constants.QueryType.DELETE:
29
31
  parts.push(builder.buildDeleteQuery(this));
@@ -32,33 +34,39 @@ function toQuery(dialect) {
32
34
  throw new Error("No query type defined");
33
35
  }
34
36
  if (this.definition?.joins?.length) {
35
- parts.push(this.definition.joins.join(" "));
37
+ const joinParts = this.definition.joins.map(
38
+ (join) => compiler.compileJoin(dialect, join, params)
39
+ );
40
+ parts.push(...joinParts);
36
41
  }
37
- const whereConditions = utilities.getWhereConditions(this);
38
- if (whereConditions.length) {
39
- parts.push(`WHERE ${whereConditions.join(" ")}`);
42
+ if (this.definition.where) {
43
+ const whereConditions = compiler.compileAst(dialect, this.definition.where, params);
44
+ parts.push(`WHERE ${whereConditions}`);
40
45
  }
41
46
  const groupByConditions = utilities.getGroupByConditions(this);
42
47
  if (groupByConditions.length) {
43
48
  parts.push(`GROUP BY ${groupByConditions.join(", ")}`);
44
49
  }
45
- if (this.definition?.having?.length) {
46
- parts.push(`HAVING ${this.definition.having.join(" ")}`);
50
+ if (this.definition?.having) {
51
+ const havingConditions = compiler.compileAst(
52
+ dialect,
53
+ this.definition.having,
54
+ params
55
+ );
56
+ parts.push(`HAVING ${havingConditions}`);
47
57
  }
48
58
  if (this.definition?.orderBy?.length) {
49
59
  parts.push(
50
60
  `ORDER BY ${this.definition.orderBy.map((order) => `${order.column} ${order.direction}`).join(", ")}`
51
61
  );
52
62
  }
53
- if (this.definition?.limit !== null) {
63
+ if (this.definition?.limit != null) {
54
64
  parts.push("LIMIT ?");
55
- if (!this.definition.params) this.definition.params = [];
56
- this.definition.params.push(this.definition.limit);
65
+ params.push(this.definition.limit);
57
66
  }
58
- if (this.definition?.offset !== null) {
67
+ if (this.definition?.offset != null) {
59
68
  parts.push("OFFSET ?");
60
- if (!this.definition.params) this.definition.params = [];
61
- this.definition.params.push(this.definition.offset);
69
+ params.push(this.definition.offset);
62
70
  }
63
71
  if (this.definition.queryType === constants.QueryType.UPDATE || this.definition.queryType === constants.QueryType.DELETE) {
64
72
  if (dialect !== constants$1.Dialect.MYSQL) {
@@ -66,7 +74,7 @@ function toQuery(dialect) {
66
74
  }
67
75
  }
68
76
  const sql = buildQuery(parts.join(" "));
69
- return { query: `${sql};`, params: this.definition.params };
77
+ return { query: `${sql};`, params };
70
78
  }
71
79
  function toString() {
72
80
  return this.toQuery().query;
@@ -1,7 +1,7 @@
1
1
  import 'bun';
2
2
  import '../column/index.cjs';
3
3
  import '../column/constants.cjs';
4
- export { u as AcceptedInsertValues, t as AcceptedOrderBy, v as AcceptedUpdateValues, w as AggregateColumn, A as AliasedColumn, C as ColumnSelector, E as ExplainOptions, Q as QueryDefinition, p as QueryHooks, y as QueryOutput, s as QueryRunHooks, z as QueryRunHooksOptions, R as RawColumn, x as SelectQueryOutput, m as SelectableColumn, k as StrictColumnSelector, W as WhereValue } from '../index-CHxuUiO4.cjs';
4
+ export { r as AcceptedInsertValues, q as AcceptedOrderBy, s as AcceptedUpdateValues, t as AggregateColumn, A as AliasedColumn, C as ColumnSelector, E as ExplainOptions, Q as QueryDefinition, n as QueryHooks, v as QueryOutput, p as QueryRunHooks, w as QueryRunHooksOptions, R as RawColumn, u as SelectQueryOutput, d as SelectableColumn, S as StrictColumnSelector, W as WhereValue } from '../index-K07efKgt.cjs';
5
5
  import '../types.cjs';
6
6
  import './constants.cjs';
7
7
  import '../table/constants.cjs';
@@ -1,17 +1,16 @@
1
- import { T as Table, W as WhereValue, Q as QueryDefinition, C as ColumnSelector, k as StrictColumnSelector, l as QueryBuilder, A as AliasedColumn, m as SelectableColumn } from '../index-CHxuUiO4.cjs';
1
+ import { T as Table, Q as QueryDefinition, C as ColumnSelector, S as StrictColumnSelector, c as QueryBuilder, A as AliasedColumn, d as SelectableColumn } from '../index-K07efKgt.cjs';
2
2
  import { Column } from '../column/index.cjs';
3
- import { Dialect } from '../table/constants.cjs';
4
- import { AcceptedOperator } from './constants.cjs';
5
3
  import 'bun';
6
4
  import '../types.cjs';
5
+ import './constants.cjs';
7
6
  import '../column/constants.cjs';
7
+ import '../table/constants.cjs';
8
8
  import '../column/types.cjs';
9
9
 
10
10
  declare function getTableColumnNames<ColName extends string, BaseAlias extends string, BaseTable extends Table<string, Record<string, Column>>, JoinedTables extends Record<string, Table<string, Record<string, Column>>>>(column: ColName, baseAlias: BaseAlias, baseTable: BaseTable, joinedTables: JoinedTables): {
11
11
  from: string;
12
12
  columns: string[];
13
13
  };
14
- declare function getCondition<DbDialect extends Dialect, ColName extends string, Operator extends AcceptedOperator, Value extends WhereValue<Column>[Operator]>(dialect: DbDialect, column: ColName, operator: Operator, value: Value): string;
15
14
  declare function getTimestamp<TableRef extends Table<string, Record<string, Column>>>(table: TableRef): {
16
15
  isWithTimestamp: boolean;
17
16
  timestamp: Date;
@@ -25,7 +24,6 @@ declare function getParanoid<TableRef extends Table<string, Record<string, Colum
25
24
  timestamp: Date;
26
25
  deletedAt: string;
27
26
  };
28
- declare function getWhereConditions<Alias extends string, TableRef extends Table<string, Record<string, Column>>, JoinedTables extends Record<string, Table<string, Record<string, Column>>>, Definition extends Partial<QueryDefinition<Alias, TableRef, JoinedTables>>, AllowedColumn extends ColumnSelector<Alias, TableRef, JoinedTables>, StrictAllowedColumn extends StrictColumnSelector<Alias, TableRef, JoinedTables>, Query extends QueryBuilder<Alias, TableRef, JoinedTables, Definition, AllowedColumn, StrictAllowedColumn>>(q: Query): string[];
29
27
  declare function getGroupByConditions<Alias extends string, TableRef extends Table<string, Record<string, Column>>, JoinedTables extends Record<string, Table<string, Record<string, Column>>>, Definition extends Partial<QueryDefinition<Alias, TableRef, JoinedTables>>, AllowedColumn extends ColumnSelector<Alias, TableRef, JoinedTables>, StrictAllowedColumn extends StrictColumnSelector<Alias, TableRef, JoinedTables>, Query extends QueryBuilder<Alias, TableRef, JoinedTables, Definition, AllowedColumn, StrictAllowedColumn>>(q: Query): (string | AliasedColumn<ColumnSelector<Alias, TableRef, JoinedTables>, string>)[];
30
28
  declare function getTableSelectName<Alias extends string, TableRef extends Table<string, Record<string, Column>>, JoinedTables extends Record<string, Table<string, Record<string, Column>>>, Definition extends Partial<QueryDefinition<Alias, TableRef, JoinedTables>>, AllowedColumn extends ColumnSelector<Alias, TableRef, JoinedTables>, StrictAllowedColumn extends StrictColumnSelector<Alias, TableRef, JoinedTables>, Query extends QueryBuilder<Alias, TableRef, JoinedTables, Definition, AllowedColumn, StrictAllowedColumn>>(q: Query): string;
31
29
  declare function parseAliasedRow({ row, selects, root, }: {
@@ -35,4 +33,4 @@ declare function parseAliasedRow({ row, selects, root, }: {
35
33
  }): Record<string, any>;
36
34
  declare function sanitizeParams(params: unknown[]): (string | number | bigint | boolean | null)[];
37
35
 
38
- export { getCondition, getGroupByConditions, getParanoid, getTableColumnNames, getTableSelectName, getTimestamp, getWhereConditions, parseAliasedRow, sanitizeParams };
36
+ export { getGroupByConditions, getParanoid, getTableColumnNames, getTableSelectName, getTimestamp, parseAliasedRow, sanitizeParams };
@@ -1,7 +1,6 @@
1
1
  'use strict';
2
2
 
3
3
  require('.');
4
- var constants$1 = require('../table/constants');
5
4
  var utilities = require('../utilities');
6
5
  var constants = require('./constants');
7
6
 
@@ -15,102 +14,6 @@ function getTableColumnNames(column, baseAlias, baseTable, joinedTables) {
15
14
  columns
16
15
  };
17
16
  }
18
- function getCondition(dialect, column, operator, value) {
19
- switch (operator) {
20
- case constants.AcceptedOperator.EQ:
21
- return `${column} = ?`;
22
- case constants.AcceptedOperator.NE:
23
- return `${column} != ?`;
24
- case constants.AcceptedOperator.GT:
25
- return `${column} > ?`;
26
- case constants.AcceptedOperator.LT:
27
- return `${column} < ?`;
28
- case constants.AcceptedOperator.GTE:
29
- return `${column} >= ?`;
30
- case constants.AcceptedOperator.LTE:
31
- return `${column} <= ?`;
32
- case constants.AcceptedOperator.IN:
33
- return `${column} IN (${value.map(() => "?").join(", ")})`;
34
- case constants.AcceptedOperator.NOT_IN:
35
- return `${column} NOT IN (${value.map(() => "?").join(", ")})`;
36
- case constants.AcceptedOperator.LIKE:
37
- return `${column} LIKE ?`;
38
- case constants.AcceptedOperator.NOT_LIKE:
39
- return `${column} NOT LIKE ?`;
40
- case constants.AcceptedOperator.ILIKE:
41
- if (dialect === constants$1.Dialect.POSTGRES) {
42
- return `${column} ILIKE ?`;
43
- }
44
- return `LOWER(${column}) LIKE LOWER(?)`;
45
- case constants.AcceptedOperator.NOT_ILIKE:
46
- if (dialect === constants$1.Dialect.POSTGRES) {
47
- return `${column} NOT ILIKE ?`;
48
- }
49
- return `LOWER(${column}) NOT LIKE LOWER(?)`;
50
- case constants.AcceptedOperator.IS_NULL:
51
- return `${column} IS NULL`;
52
- case constants.AcceptedOperator.IS_NOT_NULL:
53
- return `${column} IS NOT NULL`;
54
- case constants.AcceptedOperator.BETWEEN:
55
- return `${column} BETWEEN ? AND ?`;
56
- case constants.AcceptedOperator.NOT_BETWEEN:
57
- return `${column} NOT BETWEEN ? AND ?`;
58
- case constants.AcceptedOperator.STARTS_WITH:
59
- return `${column} LIKE ?`;
60
- case constants.AcceptedOperator.ENDS_WITH:
61
- return `${column} LIKE ?`;
62
- case constants.AcceptedOperator.REG_EXP: {
63
- switch (dialect) {
64
- case constants$1.Dialect.POSTGRES:
65
- return `${column} ~ ?`;
66
- case constants$1.Dialect.MYSQL:
67
- return `${column} REGEXP ?`;
68
- case constants$1.Dialect.SQLITE:
69
- return `${column} GLOB ?`;
70
- default:
71
- throw new Error("Operator not supported");
72
- }
73
- }
74
- case constants.AcceptedOperator.NOT_REG_EXP: {
75
- switch (dialect) {
76
- case constants$1.Dialect.POSTGRES:
77
- return `${column} !~ ?`;
78
- case constants$1.Dialect.MYSQL:
79
- return `${column} NOT REGEXP ?`;
80
- case constants$1.Dialect.SQLITE:
81
- return `${column} NOT GLOB ?`;
82
- default:
83
- throw new Error("Operator not supported");
84
- }
85
- }
86
- case constants.AcceptedOperator.RLIKE: {
87
- switch (dialect) {
88
- case constants$1.Dialect.POSTGRES:
89
- return `${column} ~* ?`;
90
- case constants$1.Dialect.MYSQL:
91
- return `${column} RLIKE ?`;
92
- case constants$1.Dialect.SQLITE:
93
- return `${column} GLOB ?`;
94
- default:
95
- throw new Error("Operator not supported");
96
- }
97
- }
98
- case constants.AcceptedOperator.NOT_RLIKE: {
99
- switch (dialect) {
100
- case constants$1.Dialect.POSTGRES:
101
- return `${column} !~* ?`;
102
- case constants$1.Dialect.MYSQL:
103
- return `${column} NOT RLIKE ?`;
104
- case constants$1.Dialect.SQLITE:
105
- return `${column} NOT GLOB ?`;
106
- default:
107
- throw new Error("Operator not supported");
108
- }
109
- }
110
- default:
111
- throw new Error("Invalid operator");
112
- }
113
- }
114
17
  function getTimestamp(table) {
115
18
  const isWithTimestamp = !!table.timestamp;
116
19
  const timestamp = /* @__PURE__ */ new Date();
@@ -157,23 +60,6 @@ function getParanoid(table) {
157
60
  deletedAt
158
61
  };
159
62
  }
160
- function getWhereConditions(q) {
161
- if (q.definition.queryType === constants.QueryType.INSERT) return [];
162
- const conditions = [];
163
- const base = q.definition.baseAlias ?? q.table.name;
164
- const { isWithParanoid, deletedAt } = getParanoid(q.table);
165
- const withDeleted = !!q.definition.withDeleted;
166
- const isHasConditions = !!q.definition.where?.length;
167
- if (!withDeleted && isWithParanoid) {
168
- const suffix = isHasConditions ? " AND" : "";
169
- const column = `${base}.${utilities.quoteIdentifier(deletedAt)}`;
170
- conditions.unshift(`${column} IS NULL${suffix}`);
171
- }
172
- if (q.definition.where?.length) {
173
- conditions.push(...q.definition.where);
174
- }
175
- return conditions;
176
- }
177
63
  function getGroupByConditions(q) {
178
64
  if (q.definition.queryType !== constants.QueryType.SELECT) return [];
179
65
  if (q.definition.groupBy?.length) return q.definition.groupBy;
@@ -254,12 +140,10 @@ function sanitizeParams(params) {
254
140
  });
255
141
  }
256
142
 
257
- exports.getCondition = getCondition;
258
143
  exports.getGroupByConditions = getGroupByConditions;
259
144
  exports.getParanoid = getParanoid;
260
145
  exports.getTableColumnNames = getTableColumnNames;
261
146
  exports.getTableSelectName = getTableSelectName;
262
147
  exports.getTimestamp = getTimestamp;
263
- exports.getWhereConditions = getWhereConditions;
264
148
  exports.parseAliasedRow = parseAliasedRow;
265
149
  exports.sanitizeParams = sanitizeParams;
@@ -1,4 +1,4 @@
1
- export { T as Table } from '../index-CHxuUiO4.cjs';
1
+ export { T as Table } from '../index-K07efKgt.cjs';
2
2
  import '../column/index.cjs';
3
3
  import './constants.cjs';
4
4
  import 'bun';
@@ -1,5 +1,5 @@
1
1
  import 'bun';
2
- export { X as ExecOptions, M as MergeTimestampParanoid, U as TableOptions, V as TableOutput, f as TimestampOptions } from '../index-CHxuUiO4.cjs';
2
+ export { K as ExecOptions, M as MergeTimestampParanoid, H as TableOptions, I as TableOutput, h as TimestampOptions } from '../index-K07efKgt.cjs';
3
3
  import '../column/index.cjs';
4
4
  import './constants.cjs';
5
5
  import '../types.cjs';
@@ -1,7 +1,7 @@
1
1
  import '../column/constants.cjs';
2
2
  import '../column/index.cjs';
3
3
  import './constants.cjs';
4
- export { K as createdAt, O as defineColumns, N as deletedAt, L as updatedAt } from '../index-CHxuUiO4.cjs';
4
+ export { y as createdAt, F as defineColumns, B as deletedAt, z as updatedAt } from '../index-K07efKgt.cjs';
5
5
  import '../column/types.cjs';
6
6
  import 'bun';
7
7
  import '../types.cjs';
@@ -1,7 +1,7 @@
1
- import { D as Database } from '../index-DgOs61lH.js';
1
+ import { D as Database } from '../index-B4y4GiNB.js';
2
2
  import { Column } from '../column/index.js';
3
3
  import { AcceptedColumnTypes } from '../column/constants.js';
4
- import { T as Table, D as DatabaseDefinition } from '../index-CjurLJdK.js';
4
+ import { T as Table, D as DatabaseDefinition } from '../index-CARBkj9h.js';
5
5
  import { Dialect } from '../table/constants.js';
6
6
  import 'bun';
7
7
  import '../query/constants.js';
@@ -1,6 +1,6 @@
1
- import { D as Database } from '../index-DgOs61lH.js';
1
+ import { D as Database } from '../index-B4y4GiNB.js';
2
2
  import { Column } from '../column/index.js';
3
- import { T as Table, D as DatabaseDefinition } from '../index-CjurLJdK.js';
3
+ import { T as Table, D as DatabaseDefinition } from '../index-CARBkj9h.js';
4
4
  import { Dialect } from '../table/constants.js';
5
5
  import 'bun';
6
6
  import '../query/constants.js';
@@ -1,7 +1,7 @@
1
- export { C as ColumnAlterationContract, T as TableAlterationContract } from '../index-DgOs61lH.js';
1
+ export { C as ColumnAlterationContract, T as TableAlterationContract } from '../index-B4y4GiNB.js';
2
2
  import '../column/index.js';
3
3
  import '../column/constants.js';
4
- import '../index-CjurLJdK.js';
4
+ import '../index-CARBkj9h.js';
5
5
  import '../table/constants.js';
6
6
  import 'bun';
7
7
  import '../query/constants.js';
@@ -1,9 +1,9 @@
1
1
  import 'bun';
2
2
  import '../column/index.js';
3
- import '../index-CjurLJdK.js';
3
+ import '../index-CARBkj9h.js';
4
4
  import '../query/constants.js';
5
5
  import '../table/constants.js';
6
- export { D as Database } from '../index-DgOs61lH.js';
6
+ export { D as Database } from '../index-B4y4GiNB.js';
7
7
  import '../column/constants.js';
8
8
  import '../column/types.js';
9
9
  import '../types.js';
@@ -1,6 +1,6 @@
1
- import { D as Database } from '../index-DgOs61lH.js';
1
+ import { D as Database } from '../index-B4y4GiNB.js';
2
2
  import { Column } from '../column/index.js';
3
- import { T as Table, D as DatabaseDefinition, f as TimestampOptions, M as MergeTimestampParanoid } from '../index-CjurLJdK.js';
3
+ import { T as Table, D as DatabaseDefinition, c as TimestampOptions, M as MergeTimestampParanoid } from '../index-CARBkj9h.js';
4
4
  import { Dialect } from '../table/constants.js';
5
5
  import 'bun';
6
6
  import '../query/constants.js';
@@ -1,6 +1,6 @@
1
1
  import 'bun';
2
2
  import '../column/index.js';
3
- export { D as DatabaseDefinition, g as DatabaseDialect, h as DatabaseExecOptions, q as DatabaseOptions, i as MysqlConfig, P as PostgresConfig, J as SqlConfig, S as SqlConfigMapping, j as SqliteConfig } from '../index-CjurLJdK.js';
3
+ export { D as DatabaseDefinition, d as DatabaseDialect, e as DatabaseExecOptions, o as DatabaseOptions, f as MysqlConfig, P as PostgresConfig, x as SqlConfig, S as SqlConfigMapping, g as SqliteConfig } from '../index-CARBkj9h.js';
4
4
  import '../table/constants.js';
5
5
  import '../column/constants.js';
6
6
  import '../column/types.js';
@@ -1,6 +1,6 @@
1
1
  import { SQL, TransactionSQL } from 'bun';
2
2
  import { Dialect } from '../table/constants.js';
3
- import { S as SqlConfigMapping, g as DatabaseDialect, h as DatabaseExecOptions, P as PostgresConfig, i as MysqlConfig, j as SqliteConfig } from '../index-CjurLJdK.js';
3
+ import { S as SqlConfigMapping, d as DatabaseDialect, e as DatabaseExecOptions, P as PostgresConfig, f as MysqlConfig, g as SqliteConfig } from '../index-CARBkj9h.js';
4
4
  import '../column/index.js';
5
5
  import '../column/constants.js';
6
6
  import '../column/types.js';
@@ -1,6 +1,6 @@
1
1
  import { TransactionSQL } from 'bun';
2
2
  import { Column } from './column/index.js';
3
- import { T as Table, D as DatabaseDefinition, f as TimestampOptions, M as MergeTimestampParanoid, p as QueryHooks, g as DatabaseDialect, q as DatabaseOptions, l as QueryBuilder, s as QueryRunHooks } from './index-CjurLJdK.js';
3
+ import { T as Table, D as DatabaseDefinition, c as TimestampOptions, M as MergeTimestampParanoid, n as QueryHooks, d as DatabaseDialect, o as DatabaseOptions, i as QueryBuilder, p as QueryRunHooks } from './index-CARBkj9h.js';
4
4
  import { QueryHooksType } from './query/constants.js';
5
5
  import { Dialect } from './table/constants.js';
6
6
  import { AcceptedColumnTypes } from './column/constants.js';