@sqb/builder 4.14.1 → 4.15.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 (63) hide show
  1. package/esm/classes.ns.js +41 -38
  2. package/esm/enums.js +11 -8
  3. package/esm/extensions.js +5 -1
  4. package/esm/helpers.js +4 -1
  5. package/esm/index.js +25 -20
  6. package/esm/op.initializers.js +78 -46
  7. package/esm/query/delete-query.js +15 -11
  8. package/esm/query/insert-query.js +17 -13
  9. package/esm/query/query.js +15 -10
  10. package/esm/query/returning-query.js +12 -8
  11. package/esm/query/select-query.js +32 -28
  12. package/esm/query/union-query.js +8 -4
  13. package/esm/query/update-query.js +18 -14
  14. package/esm/serializable.js +5 -1
  15. package/esm/serialize-context.js +19 -15
  16. package/esm/sql-objects/base-field.js +6 -2
  17. package/esm/sql-objects/case-statement.js +10 -6
  18. package/esm/sql-objects/coalesce-statement.js +8 -4
  19. package/esm/sql-objects/count-statement.js +8 -4
  20. package/esm/sql-objects/expression.js +6 -2
  21. package/esm/sql-objects/field-expression.js +8 -4
  22. package/esm/sql-objects/group-column.js +8 -4
  23. package/esm/sql-objects/join-statement.js +23 -19
  24. package/esm/sql-objects/lower-statement.js +8 -4
  25. package/esm/sql-objects/max-statement.js +8 -4
  26. package/esm/sql-objects/min-statement.js +8 -4
  27. package/esm/sql-objects/operator.js +6 -2
  28. package/esm/sql-objects/operators/comp-operator.js +17 -13
  29. package/esm/sql-objects/operators/logical-operator.js +21 -16
  30. package/esm/sql-objects/operators/op-and.js +8 -4
  31. package/esm/sql-objects/operators/op-between.js +8 -4
  32. package/esm/sql-objects/operators/op-eq.js +8 -4
  33. package/esm/sql-objects/operators/op-exists.js +10 -6
  34. package/esm/sql-objects/operators/op-gt.js +8 -4
  35. package/esm/sql-objects/operators/op-gte.js +8 -4
  36. package/esm/sql-objects/operators/op-ilike.js +8 -4
  37. package/esm/sql-objects/operators/op-in.js +10 -6
  38. package/esm/sql-objects/operators/op-is-not.js +8 -4
  39. package/esm/sql-objects/operators/op-is.js +8 -4
  40. package/esm/sql-objects/operators/op-like.js +8 -4
  41. package/esm/sql-objects/operators/op-lt.js +8 -4
  42. package/esm/sql-objects/operators/op-lte.js +8 -4
  43. package/esm/sql-objects/operators/op-ne.js +8 -4
  44. package/esm/sql-objects/operators/op-not-between.js +8 -4
  45. package/esm/sql-objects/operators/op-not-exists.js +8 -4
  46. package/esm/sql-objects/operators/op-not-ilike.js +8 -4
  47. package/esm/sql-objects/operators/op-not-in.js +8 -4
  48. package/esm/sql-objects/operators/op-not-like.js +8 -4
  49. package/esm/sql-objects/operators/op-not.js +9 -5
  50. package/esm/sql-objects/operators/op-or.js +8 -4
  51. package/esm/sql-objects/order-column.js +8 -4
  52. package/esm/sql-objects/param-expression.js +8 -4
  53. package/esm/sql-objects/raw-statement.js +8 -4
  54. package/esm/sql-objects/returning-column.js +8 -4
  55. package/esm/sql-objects/sequence-getter-statement.js +8 -4
  56. package/esm/sql-objects/string-agg-statement.js +15 -11
  57. package/esm/sql-objects/table-name.js +8 -4
  58. package/esm/sql-objects/upper-statement.js +8 -4
  59. package/esm/sqlobject.initializers.js +131 -101
  60. package/esm/typeguards.js +80 -59
  61. package/esm/types.js +2 -1
  62. package/package.json +21 -15
  63. package/cjs/package.json +0 -3
@@ -1,7 +1,10 @@
1
- import { SerializationType } from '../enums.js';
2
- import { BaseField } from './base-field.js';
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OrderColumn = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ const base_field_js_1 = require("./base-field.js");
3
6
  const ORDER_COLUMN_PATTERN = /^([-+])?((?:[a-zA-Z_][\w$]*\.){0,2})([a-zA-Z_][\w$]*|\*) *(asc|dsc|desc|ascending|descending)?$/i;
4
- export class OrderColumn extends BaseField {
7
+ class OrderColumn extends base_field_js_1.BaseField {
5
8
  constructor(value) {
6
9
  super();
7
10
  const m = value.match(ORDER_COLUMN_PATTERN);
@@ -18,7 +21,7 @@ export class OrderColumn extends BaseField {
18
21
  (!m[1] && m[4] && ['dsc', 'desc', 'descending'].includes(m[4].toLowerCase())));
19
22
  }
20
23
  get _type() {
21
- return SerializationType.ORDER_COLUMN;
24
+ return enums_js_1.SerializationType.ORDER_COLUMN;
22
25
  }
23
26
  _serialize(ctx) {
24
27
  const o = {
@@ -34,3 +37,4 @@ export class OrderColumn extends BaseField {
34
37
  (o.descending ? ' desc' : ''));
35
38
  }
36
39
  }
40
+ exports.OrderColumn = OrderColumn;
@@ -1,6 +1,9 @@
1
- import { SerializationType } from '../enums.js';
2
- import { Serializable } from '../serializable.js';
3
- export class ParamExpression extends Serializable {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ParamExpression = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ const serializable_js_1 = require("../serializable.js");
6
+ class ParamExpression extends serializable_js_1.Serializable {
4
7
  constructor(arg) {
5
8
  super();
6
9
  if (typeof arg === 'object') {
@@ -12,7 +15,7 @@ export class ParamExpression extends Serializable {
12
15
  this._name = arg;
13
16
  }
14
17
  get _type() {
15
- return SerializationType.EXTERNAL_PARAMETER;
18
+ return enums_js_1.SerializationType.EXTERNAL_PARAMETER;
16
19
  }
17
20
  /**
18
21
  * Performs serialization
@@ -46,3 +49,4 @@ export class ParamExpression extends Serializable {
46
49
  return ':' + o.name;
47
50
  }
48
51
  }
52
+ exports.ParamExpression = ParamExpression;
@@ -1,14 +1,18 @@
1
- import { SerializationType } from '../enums.js';
2
- import { Serializable } from '../serializable.js';
3
- export class RawStatement extends Serializable {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RawStatement = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ const serializable_js_1 = require("../serializable.js");
6
+ class RawStatement extends serializable_js_1.Serializable {
4
7
  constructor(str) {
5
8
  super();
6
9
  this._text = str;
7
10
  }
8
11
  get _type() {
9
- return SerializationType.RAW;
12
+ return enums_js_1.SerializationType.RAW;
10
13
  }
11
14
  _serialize(ctx) {
12
15
  return ctx.serialize(this._type, this._text, () => this._text);
13
16
  }
14
17
  }
18
+ exports.RawStatement = RawStatement;
@@ -1,7 +1,10 @@
1
- import { SerializationType } from '../enums.js';
2
- import { BaseField } from './base-field.js';
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ReturningColumn = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ const base_field_js_1 = require("./base-field.js");
3
6
  const RETURNING_COLUMN_PATTERN = /^([a-zA-Z_]\w*) *(?:as)? *(\w+)?$/;
4
- export class ReturningColumn extends BaseField {
7
+ class ReturningColumn extends base_field_js_1.BaseField {
5
8
  constructor(field) {
6
9
  super();
7
10
  const m = field.match(RETURNING_COLUMN_PATTERN);
@@ -11,7 +14,7 @@ export class ReturningColumn extends BaseField {
11
14
  this._alias = m[2];
12
15
  }
13
16
  get _type() {
14
- return SerializationType.RETURNING_COLUMN;
17
+ return enums_js_1.SerializationType.RETURNING_COLUMN;
15
18
  }
16
19
  _serialize(ctx) {
17
20
  const o = {
@@ -23,3 +26,4 @@ export class ReturningColumn extends BaseField {
23
26
  return ctx.serialize(this._type, o, () => ctx.escapeReserved(o.field) + (o.alias ? ' as ' + ctx.escapeReserved(o.alias) : ''));
24
27
  }
25
28
  }
29
+ exports.ReturningColumn = ReturningColumn;
@@ -1,13 +1,16 @@
1
- import { SerializationType } from '../enums.js';
2
- import { Serializable } from '../serializable.js';
3
- export class SequenceGetterStatement extends Serializable {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SequenceGetterStatement = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ const serializable_js_1 = require("../serializable.js");
6
+ class SequenceGetterStatement extends serializable_js_1.Serializable {
4
7
  constructor(expression, next) {
5
8
  super();
6
9
  this._expression = expression;
7
10
  this._next = !!next;
8
11
  }
9
12
  get _type() {
10
- return SerializationType.SEQUENCE_GETTER_STATEMENT;
13
+ return enums_js_1.SerializationType.SEQUENCE_GETTER_STATEMENT;
11
14
  }
12
15
  next(value) {
13
16
  this._next = value;
@@ -41,3 +44,4 @@ export class SequenceGetterStatement extends Serializable {
41
44
  return (o.next ? 'nextval' : 'currval') + "('" + o.genName + "')" + (o.alias ? ' ' + o.alias : '');
42
45
  }
43
46
  }
47
+ exports.SequenceGetterStatement = SequenceGetterStatement;
@@ -1,16 +1,19 @@
1
- import { SerializationType } from '../enums.js';
2
- import { printArray } from '../helpers.js';
3
- import { Serializable } from '../serializable.js';
4
- import { FieldExpression } from './field-expression.js';
5
- import { OrderColumn } from './order-column.js';
6
- export class StringAGGStatement extends Serializable {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StringAGGStatement = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ const helpers_js_1 = require("../helpers.js");
6
+ const serializable_js_1 = require("../serializable.js");
7
+ const field_expression_js_1 = require("./field-expression.js");
8
+ const order_column_js_1 = require("./order-column.js");
9
+ class StringAGGStatement extends serializable_js_1.Serializable {
7
10
  constructor(field, delimiter) {
8
11
  super();
9
- this._field = typeof field === 'string' ? new FieldExpression(field) : field;
12
+ this._field = typeof field === 'string' ? new field_expression_js_1.FieldExpression(field) : field;
10
13
  this._delimiter = delimiter || ',';
11
14
  }
12
15
  get _type() {
13
- return SerializationType.STRINGAGG_STATEMENT;
16
+ return enums_js_1.SerializationType.STRINGAGG_STATEMENT;
14
17
  }
15
18
  delimiter(value) {
16
19
  this._delimiter = value;
@@ -24,7 +27,7 @@ export class StringAGGStatement extends Serializable {
24
27
  for (const arg of field) {
25
28
  if (!arg)
26
29
  continue;
27
- this._orderBy.push(typeof arg === 'string' ? new OrderColumn(arg) : arg);
30
+ this._orderBy.push(typeof arg === 'string' ? new order_column_js_1.OrderColumn(arg) : arg);
28
31
  }
29
32
  return this;
30
33
  }
@@ -61,8 +64,8 @@ export class StringAGGStatement extends Serializable {
61
64
  arr.push(s);
62
65
  }
63
66
  }
64
- return ctx.serialize(SerializationType.SELECT_QUERY_ORDERBY, arr, () => {
65
- const s = printArray(arr);
67
+ return ctx.serialize(enums_js_1.SerializationType.SELECT_QUERY_ORDERBY, arr, () => {
68
+ const s = (0, helpers_js_1.printArray)(arr);
66
69
  return s ? 'order by ' + s : '';
67
70
  });
68
71
  }
@@ -77,3 +80,4 @@ export class StringAGGStatement extends Serializable {
77
80
  (o.alias ? ' ' + o.alias : ''));
78
81
  }
79
82
  }
83
+ exports.StringAGGStatement = StringAGGStatement;
@@ -1,6 +1,9 @@
1
- import { SerializationType } from '../enums.js';
2
- import { Serializable } from '../serializable.js';
3
- export class TableName extends Serializable {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TableName = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ const serializable_js_1 = require("../serializable.js");
6
+ class TableName extends serializable_js_1.Serializable {
4
7
  constructor(tableName) {
5
8
  super();
6
9
  const m = tableName.match(/^(?:([a-zA-Z][\w$]*)\.)? *([a-zA-Z][\w$]*) *(?:as)? *(\w+)?$/);
@@ -14,7 +17,7 @@ export class TableName extends Serializable {
14
17
  this.alias = m[3];
15
18
  }
16
19
  get _type() {
17
- return SerializationType.TABLE_NAME;
20
+ return enums_js_1.SerializationType.TABLE_NAME;
18
21
  }
19
22
  _serialize(ctx) {
20
23
  return ctx.serialize(this._type, {
@@ -24,3 +27,4 @@ export class TableName extends Serializable {
24
27
  }, () => (this.schema ? this.schema + '.' : '') + this.table + (this.alias ? ' ' + this.alias : ''));
25
28
  }
26
29
  }
30
+ exports.TableName = TableName;
@@ -1,12 +1,15 @@
1
- import { SerializationType } from '../enums.js';
2
- import { Serializable } from '../serializable.js';
3
- export class UpperStatement extends Serializable {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UpperStatement = void 0;
4
+ const enums_js_1 = require("../enums.js");
5
+ const serializable_js_1 = require("../serializable.js");
6
+ class UpperStatement extends serializable_js_1.Serializable {
4
7
  constructor(expression) {
5
8
  super();
6
9
  this._expression = expression;
7
10
  }
8
11
  get _type() {
9
- return SerializationType.UPPER_STATEMENT;
12
+ return enums_js_1.SerializationType.UPPER_STATEMENT;
10
13
  }
11
14
  /**
12
15
  * Sets alias to case expression.
@@ -32,3 +35,4 @@ export class UpperStatement extends Serializable {
32
35
  return 'upper(' + o + ')' + (this._alias ? ' ' + this._alias : '');
33
36
  }
34
37
  }
38
+ exports.UpperStatement = UpperStatement;
@@ -1,111 +1,141 @@
1
- import { JoinType } from './enums.js';
2
- import { DeleteQuery } from './query/delete-query.js';
3
- import { InsertQuery } from './query/insert-query.js';
4
- import { SelectQuery } from './query/select-query.js';
5
- import { UnionQuery } from './query/union-query.js';
6
- import { UpdateQuery } from './query/update-query.js';
7
- import { CaseStatement } from './sql-objects/case-statement.js';
8
- import { CoalesceStatement } from './sql-objects/coalesce-statement.js';
9
- import { CountStatement } from './sql-objects/count-statement.js';
10
- import { FieldExpression } from './sql-objects/field-expression.js';
11
- import { JoinStatement } from './sql-objects/join-statement.js';
12
- import { LowerStatement } from './sql-objects/lower-statement.js';
13
- import { MaxStatement } from './sql-objects/max-statement.js';
14
- import { MinStatement } from './sql-objects/min-statement.js';
15
- import { ParamExpression } from './sql-objects/param-expression.js';
16
- import { RawStatement } from './sql-objects/raw-statement.js';
17
- import { SequenceGetterStatement } from './sql-objects/sequence-getter-statement.js';
18
- import { StringAGGStatement } from './sql-objects/string-agg-statement.js';
19
- import { UpperStatement } from './sql-objects/upper-statement.js';
20
- export function Raw(text) {
21
- return new RawStatement(text);
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Raw = Raw;
4
+ exports.Select = Select;
5
+ exports.Insert = Insert;
6
+ exports.Update = Update;
7
+ exports.Delete = Delete;
8
+ exports.Union = Union;
9
+ exports.UnionAll = UnionAll;
10
+ exports.Join = Join;
11
+ exports.InnerJoin = InnerJoin;
12
+ exports.LeftJoin = LeftJoin;
13
+ exports.LeftOuterJoin = LeftOuterJoin;
14
+ exports.RightJoin = RightJoin;
15
+ exports.RightOuterJoin = RightOuterJoin;
16
+ exports.OuterJoin = OuterJoin;
17
+ exports.FullOuterJoin = FullOuterJoin;
18
+ exports.CrossJoin = CrossJoin;
19
+ exports.Case = Case;
20
+ exports.Coalesce = Coalesce;
21
+ exports.Lower = Lower;
22
+ exports.Upper = Upper;
23
+ exports.Min = Min;
24
+ exports.Max = Max;
25
+ exports.StringAGG = StringAGG;
26
+ exports.Count = Count;
27
+ exports.SequenceNext = SequenceNext;
28
+ exports.SequenceCurr = SequenceCurr;
29
+ exports.Param = Param;
30
+ exports.Field = Field;
31
+ const enums_js_1 = require("./enums.js");
32
+ const delete_query_js_1 = require("./query/delete-query.js");
33
+ const insert_query_js_1 = require("./query/insert-query.js");
34
+ const select_query_js_1 = require("./query/select-query.js");
35
+ const union_query_js_1 = require("./query/union-query.js");
36
+ const update_query_js_1 = require("./query/update-query.js");
37
+ const case_statement_js_1 = require("./sql-objects/case-statement.js");
38
+ const coalesce_statement_js_1 = require("./sql-objects/coalesce-statement.js");
39
+ const count_statement_js_1 = require("./sql-objects/count-statement.js");
40
+ const field_expression_js_1 = require("./sql-objects/field-expression.js");
41
+ const join_statement_js_1 = require("./sql-objects/join-statement.js");
42
+ const lower_statement_js_1 = require("./sql-objects/lower-statement.js");
43
+ const max_statement_js_1 = require("./sql-objects/max-statement.js");
44
+ const min_statement_js_1 = require("./sql-objects/min-statement.js");
45
+ const param_expression_js_1 = require("./sql-objects/param-expression.js");
46
+ const raw_statement_js_1 = require("./sql-objects/raw-statement.js");
47
+ const sequence_getter_statement_js_1 = require("./sql-objects/sequence-getter-statement.js");
48
+ const string_agg_statement_js_1 = require("./sql-objects/string-agg-statement.js");
49
+ const upper_statement_js_1 = require("./sql-objects/upper-statement.js");
50
+ function Raw(text) {
51
+ return new raw_statement_js_1.RawStatement(text);
52
+ }
53
+ function Select(...column) {
54
+ return new select_query_js_1.SelectQuery(...column);
55
+ }
56
+ function Insert(tableName, input) {
57
+ return new insert_query_js_1.InsertQuery(tableName, input);
58
+ }
59
+ function Update(tableName, input) {
60
+ return new update_query_js_1.UpdateQuery(tableName, input);
61
+ }
62
+ function Delete(tableName) {
63
+ return new delete_query_js_1.DeleteQuery(tableName);
64
+ }
65
+ function Union(...queries) {
66
+ return new union_query_js_1.UnionQuery(queries);
67
+ }
68
+ function UnionAll(...queries) {
69
+ return new union_query_js_1.UnionQuery(queries, 'all');
70
+ }
71
+ function Join(table) {
72
+ return new join_statement_js_1.JoinStatement(enums_js_1.JoinType.INNER, table);
73
+ }
74
+ function InnerJoin(table) {
75
+ return new join_statement_js_1.JoinStatement(enums_js_1.JoinType.INNER, table);
76
+ }
77
+ function LeftJoin(table) {
78
+ return new join_statement_js_1.JoinStatement(enums_js_1.JoinType.LEFT, table);
79
+ }
80
+ function LeftOuterJoin(table) {
81
+ return new join_statement_js_1.JoinStatement(enums_js_1.JoinType.LEFT_OUTER, table);
82
+ }
83
+ function RightJoin(table) {
84
+ return new join_statement_js_1.JoinStatement(enums_js_1.JoinType.RIGHT, table);
85
+ }
86
+ function RightOuterJoin(table) {
87
+ return new join_statement_js_1.JoinStatement(enums_js_1.JoinType.RIGHT_OUTER, table);
88
+ }
89
+ function OuterJoin(table) {
90
+ return new join_statement_js_1.JoinStatement(enums_js_1.JoinType.OUTER, table);
91
+ }
92
+ function FullOuterJoin(table) {
93
+ return new join_statement_js_1.JoinStatement(enums_js_1.JoinType.FULL_OUTER, table);
94
+ }
95
+ function CrossJoin(table) {
96
+ return new join_statement_js_1.JoinStatement(enums_js_1.JoinType.CROSS, table);
97
+ }
98
+ function Case() {
99
+ return new case_statement_js_1.CaseStatement();
100
+ }
101
+ function Coalesce(...expressions) {
102
+ return new coalesce_statement_js_1.CoalesceStatement(...expressions);
103
+ }
104
+ function Lower(expression) {
105
+ return new lower_statement_js_1.LowerStatement(expression);
106
+ }
107
+ function Upper(expression) {
108
+ return new upper_statement_js_1.UpperStatement(expression);
109
+ }
110
+ function Min(expression) {
111
+ return new min_statement_js_1.MinStatement(expression);
112
+ }
113
+ function Max(expression) {
114
+ return new max_statement_js_1.MaxStatement(expression);
115
+ }
116
+ function StringAGG(field) {
117
+ return new string_agg_statement_js_1.StringAGGStatement(field);
118
+ }
119
+ function Count() {
120
+ return new count_statement_js_1.CountStatement();
121
+ }
122
+ function SequenceNext(expression) {
123
+ return new sequence_getter_statement_js_1.SequenceGetterStatement(expression, true);
22
124
  }
23
- export function Select(...column) {
24
- return new SelectQuery(...column);
125
+ function SequenceCurr(expression) {
126
+ return new sequence_getter_statement_js_1.SequenceGetterStatement(expression, false);
25
127
  }
26
- export function Insert(tableName, input) {
27
- return new InsertQuery(tableName, input);
28
- }
29
- export function Update(tableName, input) {
30
- return new UpdateQuery(tableName, input);
31
- }
32
- export function Delete(tableName) {
33
- return new DeleteQuery(tableName);
34
- }
35
- export function Union(...queries) {
36
- return new UnionQuery(queries);
37
- }
38
- export function UnionAll(...queries) {
39
- return new UnionQuery(queries, 'all');
40
- }
41
- export function Join(table) {
42
- return new JoinStatement(JoinType.INNER, table);
43
- }
44
- export function InnerJoin(table) {
45
- return new JoinStatement(JoinType.INNER, table);
46
- }
47
- export function LeftJoin(table) {
48
- return new JoinStatement(JoinType.LEFT, table);
49
- }
50
- export function LeftOuterJoin(table) {
51
- return new JoinStatement(JoinType.LEFT_OUTER, table);
52
- }
53
- export function RightJoin(table) {
54
- return new JoinStatement(JoinType.RIGHT, table);
55
- }
56
- export function RightOuterJoin(table) {
57
- return new JoinStatement(JoinType.RIGHT_OUTER, table);
58
- }
59
- export function OuterJoin(table) {
60
- return new JoinStatement(JoinType.OUTER, table);
61
- }
62
- export function FullOuterJoin(table) {
63
- return new JoinStatement(JoinType.FULL_OUTER, table);
64
- }
65
- export function CrossJoin(table) {
66
- return new JoinStatement(JoinType.CROSS, table);
67
- }
68
- export function Case() {
69
- return new CaseStatement();
70
- }
71
- export function Coalesce(...expressions) {
72
- return new CoalesceStatement(...expressions);
73
- }
74
- export function Lower(expression) {
75
- return new LowerStatement(expression);
76
- }
77
- export function Upper(expression) {
78
- return new UpperStatement(expression);
79
- }
80
- export function Min(expression) {
81
- return new MinStatement(expression);
82
- }
83
- export function Max(expression) {
84
- return new MaxStatement(expression);
85
- }
86
- export function StringAGG(field) {
87
- return new StringAGGStatement(field);
88
- }
89
- export function Count() {
90
- return new CountStatement();
91
- }
92
- export function SequenceNext(expression) {
93
- return new SequenceGetterStatement(expression, true);
94
- }
95
- export function SequenceCurr(expression) {
96
- return new SequenceGetterStatement(expression, false);
97
- }
98
- export function Param(arg0, arg1, arg2) {
128
+ function Param(arg0, arg1, arg2) {
99
129
  if (typeof arg0 === 'object')
100
- return new ParamExpression(arg0);
101
- return new ParamExpression({
130
+ return new param_expression_js_1.ParamExpression(arg0);
131
+ return new param_expression_js_1.ParamExpression({
102
132
  name: arg0,
103
133
  dataType: arg1,
104
134
  isArray: arg2,
105
135
  });
106
136
  }
107
- export function Field(arg0, arg1, arg2) {
137
+ function Field(arg0, arg1, arg2) {
108
138
  if (typeof arg0 === 'object')
109
- return new FieldExpression(arg0);
110
- return new FieldExpression(arg0, arg1, arg2);
139
+ return new field_expression_js_1.FieldExpression(arg0);
140
+ return new field_expression_js_1.FieldExpression(arg0, arg1, arg2);
111
141
  }
package/esm/typeguards.js CHANGED
@@ -1,60 +1,81 @@
1
- import { SerializationType } from './enums.js';
2
- import { Query } from './query/query.js';
3
- import { Serializable } from './serializable.js';
4
- export function isSerializable(value) {
5
- return value instanceof Serializable;
6
- }
7
- export function isQuery(value) {
8
- return value instanceof Query;
9
- }
10
- export function isRawStatement(value) {
11
- return isSerializable(value) && value._type === SerializationType.RAW;
12
- }
13
- export function isSelectQuery(value) {
14
- return isSerializable(value) && value._type === SerializationType.SELECT_QUERY;
15
- }
16
- export function isInsertQuery(value) {
17
- return isSerializable(value) && value._type === SerializationType.INSERT_QUERY;
18
- }
19
- export function isIUpdateQuery(value) {
20
- return isSerializable(value) && value._type === SerializationType.UPDATE_QUERY;
21
- }
22
- export function isDeleteQuery(value) {
23
- return isSerializable(value) && value._type === SerializationType.DELETE_QUERY;
24
- }
25
- export function isJoinStatement(value) {
26
- return isSerializable(value) && value._type === SerializationType.JOIN;
27
- }
28
- export function isCaseStatement(value) {
29
- return isSerializable(value) && value._type === SerializationType.CASE_STATEMENT;
30
- }
31
- export function isCountStatement(value) {
32
- return isSerializable(value) && value._type === SerializationType.COUNT_STATEMENT;
33
- }
34
- export function isParamExpression(value) {
35
- return isSerializable(value) && value._type === SerializationType.EXTERNAL_PARAMETER;
36
- }
37
- export function isLogicalOperator(value) {
38
- return isSerializable(value) && value._type === SerializationType.LOGICAL_EXPRESSION;
39
- }
40
- export function isCompOperator(value) {
41
- return isSerializable(value) && value._type === SerializationType.COMPARISON_EXPRESSION;
42
- }
43
- export function isNotOperator(value) {
44
- return isSerializable(value) && value._type === SerializationType.NEGATIVE_EXPRESSION;
45
- }
46
- export function isSelectColumn(value) {
47
- return isSerializable(value) && value._type === SerializationType.FIELD_NAME;
48
- }
49
- export function isOrderColumn(value) {
50
- return isSerializable(value) && value._type === SerializationType.ORDER_COLUMN;
51
- }
52
- export function isGroupColumn(value) {
53
- return isSerializable(value) && value._type === SerializationType.GROUP_COLUMN;
54
- }
55
- export function isReturningColumn(value) {
56
- return isSerializable(value) && value._type === SerializationType.RETURNING_COLUMN;
57
- }
58
- export function isTableName(value) {
59
- return isSerializable(value) && value._type === SerializationType.TABLE_NAME;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isSerializable = isSerializable;
4
+ exports.isQuery = isQuery;
5
+ exports.isRawStatement = isRawStatement;
6
+ exports.isSelectQuery = isSelectQuery;
7
+ exports.isInsertQuery = isInsertQuery;
8
+ exports.isIUpdateQuery = isIUpdateQuery;
9
+ exports.isDeleteQuery = isDeleteQuery;
10
+ exports.isJoinStatement = isJoinStatement;
11
+ exports.isCaseStatement = isCaseStatement;
12
+ exports.isCountStatement = isCountStatement;
13
+ exports.isParamExpression = isParamExpression;
14
+ exports.isLogicalOperator = isLogicalOperator;
15
+ exports.isCompOperator = isCompOperator;
16
+ exports.isNotOperator = isNotOperator;
17
+ exports.isSelectColumn = isSelectColumn;
18
+ exports.isOrderColumn = isOrderColumn;
19
+ exports.isGroupColumn = isGroupColumn;
20
+ exports.isReturningColumn = isReturningColumn;
21
+ exports.isTableName = isTableName;
22
+ const enums_js_1 = require("./enums.js");
23
+ const query_js_1 = require("./query/query.js");
24
+ const serializable_js_1 = require("./serializable.js");
25
+ function isSerializable(value) {
26
+ return value instanceof serializable_js_1.Serializable;
27
+ }
28
+ function isQuery(value) {
29
+ return value instanceof query_js_1.Query;
30
+ }
31
+ function isRawStatement(value) {
32
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.RAW;
33
+ }
34
+ function isSelectQuery(value) {
35
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.SELECT_QUERY;
36
+ }
37
+ function isInsertQuery(value) {
38
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.INSERT_QUERY;
39
+ }
40
+ function isIUpdateQuery(value) {
41
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.UPDATE_QUERY;
42
+ }
43
+ function isDeleteQuery(value) {
44
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.DELETE_QUERY;
45
+ }
46
+ function isJoinStatement(value) {
47
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.JOIN;
48
+ }
49
+ function isCaseStatement(value) {
50
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.CASE_STATEMENT;
51
+ }
52
+ function isCountStatement(value) {
53
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.COUNT_STATEMENT;
54
+ }
55
+ function isParamExpression(value) {
56
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.EXTERNAL_PARAMETER;
57
+ }
58
+ function isLogicalOperator(value) {
59
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.LOGICAL_EXPRESSION;
60
+ }
61
+ function isCompOperator(value) {
62
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.COMPARISON_EXPRESSION;
63
+ }
64
+ function isNotOperator(value) {
65
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.NEGATIVE_EXPRESSION;
66
+ }
67
+ function isSelectColumn(value) {
68
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.FIELD_NAME;
69
+ }
70
+ function isOrderColumn(value) {
71
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.ORDER_COLUMN;
72
+ }
73
+ function isGroupColumn(value) {
74
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.GROUP_COLUMN;
75
+ }
76
+ function isReturningColumn(value) {
77
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.RETURNING_COLUMN;
78
+ }
79
+ function isTableName(value) {
80
+ return isSerializable(value) && value._type === enums_js_1.SerializationType.TABLE_NAME;
60
81
  }
package/esm/types.js CHANGED
@@ -1 +1,2 @@
1
- export {};
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });