@slonik/sql-tag 48.12.3 → 48.13.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 (150) hide show
  1. package/README.md +0 -1
  2. package/dist/Logger.js +2 -2
  3. package/dist/factories/createPrimitiveValueExpressions.d.ts +1 -1
  4. package/dist/factories/createPrimitiveValueExpressions.js +10 -10
  5. package/dist/factories/createSqlTag.d.ts +2 -2
  6. package/dist/factories/createSqlTag.d.ts.map +1 -1
  7. package/dist/factories/createSqlTag.js +16 -16
  8. package/dist/factories/createSqlTag.js.map +1 -1
  9. package/dist/factories/createSqlTag.test/array.test.js +44 -44
  10. package/dist/factories/createSqlTag.test/array.test.js.map +1 -1
  11. package/dist/factories/createSqlTag.test/date.test.js +9 -9
  12. package/dist/factories/createSqlTag.test/date.test.js.map +1 -1
  13. package/dist/factories/createSqlTag.test/identifier.test.js +11 -14
  14. package/dist/factories/createSqlTag.test/identifier.test.js.map +1 -1
  15. package/dist/factories/createSqlTag.test/interval.test.js +10 -10
  16. package/dist/factories/createSqlTag.test/join.test.js +24 -24
  17. package/dist/factories/createSqlTag.test/join.test.js.map +1 -1
  18. package/dist/factories/createSqlTag.test/json.test.js +27 -27
  19. package/dist/factories/createSqlTag.test/json.test.js.map +1 -1
  20. package/dist/factories/createSqlTag.test/jsonb.test.js +27 -27
  21. package/dist/factories/createSqlTag.test/jsonb.test.js.map +1 -1
  22. package/dist/factories/createSqlTag.test/literalValue.test.js +5 -5
  23. package/dist/factories/createSqlTag.test/literalValue.test.js.map +1 -1
  24. package/dist/factories/createSqlTag.test/sql.test.js +37 -37
  25. package/dist/factories/createSqlTag.test/sql.test.js.map +1 -1
  26. package/dist/factories/createSqlTag.test/timestamp.test.js +9 -9
  27. package/dist/factories/createSqlTag.test/timestamp.test.js.map +1 -1
  28. package/dist/factories/createSqlTag.test/type.test.js +4 -4
  29. package/dist/factories/createSqlTag.test/typeAlias.test.js +8 -8
  30. package/dist/factories/createSqlTag.test/unnest.test.js +25 -25
  31. package/dist/factories/createSqlTag.test/unnest.test.js.map +1 -1
  32. package/dist/factories/createSqlTag.test/uuid.test.js +10 -10
  33. package/dist/factories/createSqlTag.test/uuid.test.js.map +1 -1
  34. package/dist/factories/createSqlTokenSqlFragment.d.ts +1 -1
  35. package/dist/factories/createSqlTokenSqlFragment.d.ts.map +1 -1
  36. package/dist/factories/createSqlTokenSqlFragment.js +28 -67
  37. package/dist/factories/createSqlTokenSqlFragment.js.map +1 -1
  38. package/dist/index.d.ts +5 -5
  39. package/dist/index.js +4 -4
  40. package/dist/sqlFragmentFactories/createArraySqlFragment.d.ts +1 -1
  41. package/dist/sqlFragmentFactories/createArraySqlFragment.d.ts.map +1 -1
  42. package/dist/sqlFragmentFactories/createArraySqlFragment.js +15 -15
  43. package/dist/sqlFragmentFactories/createArraySqlFragment.js.map +1 -1
  44. package/dist/sqlFragmentFactories/createBinarySqlFragment.d.ts +1 -1
  45. package/dist/sqlFragmentFactories/createBinarySqlFragment.js +4 -4
  46. package/dist/sqlFragmentFactories/createDateSqlFragment.d.ts +1 -1
  47. package/dist/sqlFragmentFactories/createDateSqlFragment.d.ts.map +1 -1
  48. package/dist/sqlFragmentFactories/createDateSqlFragment.js +5 -5
  49. package/dist/sqlFragmentFactories/createDateSqlFragment.js.map +1 -1
  50. package/dist/sqlFragmentFactories/createFragmentSqlFragment.d.ts +1 -1
  51. package/dist/sqlFragmentFactories/createFragmentSqlFragment.d.ts.map +1 -1
  52. package/dist/sqlFragmentFactories/createFragmentSqlFragment.js +7 -7
  53. package/dist/sqlFragmentFactories/createFragmentSqlFragment.js.map +1 -1
  54. package/dist/sqlFragmentFactories/createIdentifierSqlFragment.d.ts +1 -1
  55. package/dist/sqlFragmentFactories/createIdentifierSqlFragment.d.ts.map +1 -1
  56. package/dist/sqlFragmentFactories/createIdentifierSqlFragment.js +6 -6
  57. package/dist/sqlFragmentFactories/createIdentifierSqlFragment.js.map +1 -1
  58. package/dist/sqlFragmentFactories/createIntervalSqlFragment.d.ts +1 -1
  59. package/dist/sqlFragmentFactories/createIntervalSqlFragment.d.ts.map +1 -1
  60. package/dist/sqlFragmentFactories/createIntervalSqlFragment.js +10 -20
  61. package/dist/sqlFragmentFactories/createIntervalSqlFragment.js.map +1 -1
  62. package/dist/sqlFragmentFactories/createJsonSqlFragment.d.ts +1 -1
  63. package/dist/sqlFragmentFactories/createJsonSqlFragment.d.ts.map +1 -1
  64. package/dist/sqlFragmentFactories/createJsonSqlFragment.js +16 -18
  65. package/dist/sqlFragmentFactories/createJsonSqlFragment.js.map +1 -1
  66. package/dist/sqlFragmentFactories/createListSqlFragment.d.ts +1 -1
  67. package/dist/sqlFragmentFactories/createListSqlFragment.d.ts.map +1 -1
  68. package/dist/sqlFragmentFactories/createListSqlFragment.js +9 -9
  69. package/dist/sqlFragmentFactories/createListSqlFragment.js.map +1 -1
  70. package/dist/sqlFragmentFactories/createQuerySqlFragment.d.ts +1 -1
  71. package/dist/sqlFragmentFactories/createQuerySqlFragment.d.ts.map +1 -1
  72. package/dist/sqlFragmentFactories/createQuerySqlFragment.js +7 -7
  73. package/dist/sqlFragmentFactories/createQuerySqlFragment.js.map +1 -1
  74. package/dist/sqlFragmentFactories/createTimestampSqlFragment.d.ts +1 -1
  75. package/dist/sqlFragmentFactories/createTimestampSqlFragment.d.ts.map +1 -1
  76. package/dist/sqlFragmentFactories/createTimestampSqlFragment.js +5 -7
  77. package/dist/sqlFragmentFactories/createTimestampSqlFragment.js.map +1 -1
  78. package/dist/sqlFragmentFactories/createUnnestSqlFragment.d.ts +1 -1
  79. package/dist/sqlFragmentFactories/createUnnestSqlFragment.d.ts.map +1 -1
  80. package/dist/sqlFragmentFactories/createUnnestSqlFragment.js +19 -20
  81. package/dist/sqlFragmentFactories/createUnnestSqlFragment.js.map +1 -1
  82. package/dist/sqlFragmentFactories/createUuidSqlFragment.d.ts +1 -1
  83. package/dist/sqlFragmentFactories/createUuidSqlFragment.js +5 -5
  84. package/dist/tokens.d.ts.map +1 -1
  85. package/dist/tokens.js +14 -14
  86. package/dist/tokens.js.map +1 -1
  87. package/dist/types.d.ts +5 -5
  88. package/dist/types.d.ts.map +1 -1
  89. package/dist/utilities/countArrayDimensions.js +1 -1
  90. package/dist/utilities/countArrayDimensions.test.js +6 -6
  91. package/dist/utilities/escapeIdentifier.test.js +5 -5
  92. package/dist/utilities/escapeLiteralValue.js +2 -2
  93. package/dist/utilities/escapeLiteralValue.test.js +7 -7
  94. package/dist/utilities/formatSlonikPlaceholder.js +1 -1
  95. package/dist/utilities/isPlainObject.js +1 -1
  96. package/dist/utilities/isPrimitiveValueExpression.js +4 -4
  97. package/dist/utilities/isSqlToken.d.ts +1 -1
  98. package/dist/utilities/isSqlToken.d.ts.map +1 -1
  99. package/dist/utilities/isSqlToken.js +9 -9
  100. package/dist/utilities/isSqlToken.js.map +1 -1
  101. package/dist/utilities/safeStringify.js +3 -3
  102. package/dist/utilities/stripArrayNotation.js +1 -1
  103. package/dist/utilities/stripArrayNotation.test.js +6 -6
  104. package/package.json +35 -39
  105. package/src/Logger.ts +2 -2
  106. package/src/declarations.d.ts +2 -2
  107. package/src/factories/createPrimitiveValueExpressions.ts +11 -11
  108. package/src/factories/createSqlTag.test/array.test.ts +54 -66
  109. package/src/factories/createSqlTag.test/date.test.ts +9 -11
  110. package/src/factories/createSqlTag.test/identifier.test.ts +11 -14
  111. package/src/factories/createSqlTag.test/interval.test.ts +10 -10
  112. package/src/factories/createSqlTag.test/join.test.ts +25 -31
  113. package/src/factories/createSqlTag.test/json.test.ts +27 -30
  114. package/src/factories/createSqlTag.test/jsonb.test.ts +27 -30
  115. package/src/factories/createSqlTag.test/literalValue.test.ts +5 -7
  116. package/src/factories/createSqlTag.test/sql.test.ts +38 -41
  117. package/src/factories/createSqlTag.test/timestamp.test.ts +9 -14
  118. package/src/factories/createSqlTag.test/type.test.ts +4 -4
  119. package/src/factories/createSqlTag.test/typeAlias.test.ts +9 -9
  120. package/src/factories/createSqlTag.test/unnest.test.ts +25 -34
  121. package/src/factories/createSqlTag.test/uuid.test.ts +10 -12
  122. package/src/factories/createSqlTag.ts +26 -47
  123. package/src/factories/createSqlTokenSqlFragment.ts +30 -74
  124. package/src/index.ts +5 -5
  125. package/src/sqlFragmentFactories/createArraySqlFragment.ts +17 -22
  126. package/src/sqlFragmentFactories/createBinarySqlFragment.ts +5 -5
  127. package/src/sqlFragmentFactories/createDateSqlFragment.ts +6 -8
  128. package/src/sqlFragmentFactories/createFragmentSqlFragment.ts +9 -11
  129. package/src/sqlFragmentFactories/createIdentifierSqlFragment.ts +8 -12
  130. package/src/sqlFragmentFactories/createIntervalSqlFragment.ts +11 -23
  131. package/src/sqlFragmentFactories/createJsonSqlFragment.ts +17 -25
  132. package/src/sqlFragmentFactories/createListSqlFragment.ts +10 -14
  133. package/src/sqlFragmentFactories/createQuerySqlFragment.ts +9 -11
  134. package/src/sqlFragmentFactories/createTimestampSqlFragment.ts +6 -11
  135. package/src/sqlFragmentFactories/createUnnestSqlFragment.ts +20 -29
  136. package/src/sqlFragmentFactories/createUuidSqlFragment.ts +6 -6
  137. package/src/tokens.ts +14 -16
  138. package/src/types.ts +65 -87
  139. package/src/utilities/countArrayDimensions.test.ts +6 -6
  140. package/src/utilities/countArrayDimensions.ts +1 -1
  141. package/src/utilities/escapeIdentifier.test.ts +5 -5
  142. package/src/utilities/escapeLiteralValue.test.ts +7 -7
  143. package/src/utilities/escapeLiteralValue.ts +2 -2
  144. package/src/utilities/formatSlonikPlaceholder.ts +1 -1
  145. package/src/utilities/isPlainObject.ts +1 -1
  146. package/src/utilities/isPrimitiveValueExpression.ts +4 -4
  147. package/src/utilities/isSqlToken.ts +10 -12
  148. package/src/utilities/safeStringify.ts +3 -3
  149. package/src/utilities/stripArrayNotation.test.ts +6 -6
  150. package/src/utilities/stripArrayNotation.ts +1 -1
package/README.md CHANGED
@@ -1,2 +1 @@
1
1
  # Slonik `sql` tag
2
-
package/dist/Logger.js CHANGED
@@ -1,5 +1,5 @@
1
- import { Roarr } from 'roarr';
1
+ import { Roarr } from "roarr";
2
2
  export const Logger = Roarr.child({
3
- package: '@slonik/sql-tag',
3
+ package: "@slonik/sql-tag",
4
4
  });
5
5
  //# sourceMappingURL=Logger.js.map
@@ -1,3 +1,3 @@
1
- import type { PrimitiveValueExpression } from '../types.js';
1
+ import type { PrimitiveValueExpression } from "../types.js";
2
2
  export declare const createPrimitiveValueExpressions: (values: readonly unknown[]) => readonly PrimitiveValueExpression[];
3
3
  //# sourceMappingURL=createPrimitiveValueExpressions.d.ts.map
@@ -1,18 +1,18 @@
1
- import { Logger } from '../Logger.js';
2
- import { safeStringify } from '../utilities/safeStringify.js';
3
- import { UnexpectedStateError } from '@slonik/errors';
1
+ import { Logger } from "../Logger.js";
2
+ import { safeStringify } from "../utilities/safeStringify.js";
3
+ import { UnexpectedStateError } from "@slonik/errors";
4
4
  const log = Logger.child({
5
- namespace: 'createPrimitiveValueExpressions',
5
+ namespace: "createPrimitiveValueExpressions",
6
6
  });
7
7
  export const createPrimitiveValueExpressions = (values) => {
8
8
  const primitiveValueExpressions = [];
9
9
  for (const value of values) {
10
10
  if (Array.isArray(value) ||
11
11
  Buffer.isBuffer(value) ||
12
- typeof value === 'string' ||
13
- typeof value === 'number' ||
14
- typeof value === 'boolean' ||
15
- typeof value === 'bigint' ||
12
+ typeof value === "string" ||
13
+ typeof value === "number" ||
14
+ typeof value === "boolean" ||
15
+ typeof value === "bigint" ||
16
16
  value === null) {
17
17
  primitiveValueExpressions.push(value);
18
18
  }
@@ -20,8 +20,8 @@ export const createPrimitiveValueExpressions = (values) => {
20
20
  log.warn({
21
21
  value: JSON.parse(safeStringify(value)),
22
22
  values: JSON.parse(safeStringify(values)),
23
- }, 'unexpected value expression');
24
- throw new UnexpectedStateError('Unexpected value expression.');
23
+ }, "unexpected value expression");
24
+ throw new UnexpectedStateError("Unexpected value expression.");
25
25
  }
26
26
  }
27
27
  return primitiveValueExpressions;
@@ -1,5 +1,5 @@
1
- import type { SqlTag } from '../types.js';
2
- import type { StandardSchemaV1 } from '@standard-schema/spec';
1
+ import type { SqlTag } from "../types.js";
2
+ import type { StandardSchemaV1 } from "@standard-schema/spec";
3
3
  export declare const createSqlTag: <K extends PropertyKey, P extends StandardSchemaV1, Z extends Record<K, P>>(configuration?: {
4
4
  typeAliases?: Z;
5
5
  }) => SqlTag<Z>;
@@ -1 +1 @@
1
- {"version":3,"file":"createSqlTag.d.ts","sourceRoot":"","sources":["../../src/factories/createSqlTag.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAIV,MAAM,EAGP,MAAM,aAAa,CAAC;AAQrB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAgF9D,eAAO,MAAM,YAAY,GACvB,CAAC,SAAS,WAAW,EACrB,CAAC,SAAS,gBAAgB,EAC1B,CAAC,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAEtB,gBAAe;IACb,WAAW,CAAC,EAAE,CAAC,CAAC;CACZ,KACL,MAAM,CAAC,CAAC,CA4IV,CAAC"}
1
+ {"version":3,"file":"createSqlTag.d.ts","sourceRoot":"","sources":["../../src/factories/createSqlTag.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAIV,MAAM,EAGP,MAAM,aAAa,CAAC;AAQrB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAsE9D,eAAO,MAAM,YAAY,GACvB,CAAC,SAAS,WAAW,EACrB,CAAC,SAAS,gBAAgB,EAC1B,CAAC,SAAS,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAEtB,gBAAe;IACb,WAAW,CAAC,EAAE,CAAC,CAAC;CACZ,KACL,MAAM,CAAC,CAAC,CAiIV,CAAC"}
@@ -1,21 +1,21 @@
1
- import { Logger } from '../Logger.js';
2
- import { ArrayToken, BinaryToken, DateToken, FragmentToken, IdentifierToken, IntervalToken, JsonBinaryToken, JsonToken, ListToken, QueryToken, TimestampToken, UnnestToken, UuidToken, } from '../tokens.js';
3
- import { escapeLiteralValue } from '../utilities/escapeLiteralValue.js';
4
- import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
5
- import { isPrimitiveValueExpression } from '../utilities/isPrimitiveValueExpression.js';
6
- import { isSqlToken } from '../utilities/isSqlToken.js';
7
- import { safeStringify } from '../utilities/safeStringify.js';
8
- import { createSqlTokenSqlFragment } from './createSqlTokenSqlFragment.js';
9
- import { InvalidInputError } from '@slonik/errors';
10
- import { z } from 'zod';
1
+ import { Logger } from "../Logger.js";
2
+ import { ArrayToken, BinaryToken, DateToken, FragmentToken, IdentifierToken, IntervalToken, JsonBinaryToken, JsonToken, ListToken, QueryToken, TimestampToken, UnnestToken, UuidToken, } from "../tokens.js";
3
+ import { escapeLiteralValue } from "../utilities/escapeLiteralValue.js";
4
+ import { formatSlonikPlaceholder } from "../utilities/formatSlonikPlaceholder.js";
5
+ import { isPrimitiveValueExpression } from "../utilities/isPrimitiveValueExpression.js";
6
+ import { isSqlToken } from "../utilities/isSqlToken.js";
7
+ import { safeStringify } from "../utilities/safeStringify.js";
8
+ import { createSqlTokenSqlFragment } from "./createSqlTokenSqlFragment.js";
9
+ import { InvalidInputError } from "@slonik/errors";
10
+ import { z } from "zod";
11
11
  const log = Logger.child({
12
- namespace: 'sql',
12
+ namespace: "sql",
13
13
  });
14
14
  const createFragment = (parts, values) => {
15
15
  if (!Array.isArray(parts.raw) || !Object.isFrozen(parts.raw)) {
16
- throw new InvalidInputError('Function must be called as a template literal.');
16
+ throw new InvalidInputError("Function must be called as a template literal.");
17
17
  }
18
- let rawSql = '';
18
+ let rawSql = "";
19
19
  const parameterValues = [];
20
20
  let index = 0;
21
21
  for (const part of parts) {
@@ -29,7 +29,7 @@ const createFragment = (parts, values) => {
29
29
  index,
30
30
  parts: JSON.parse(safeStringify(parts)),
31
31
  values: JSON.parse(safeStringify(values)),
32
- }, 'bound values');
32
+ }, "bound values");
33
33
  throw new InvalidInputError(`SQL tag cannot be bound to undefined value at index ${index}.`);
34
34
  }
35
35
  else if (isPrimitiveValueExpression(token)) {
@@ -48,8 +48,8 @@ const createFragment = (parts, values) => {
48
48
  constructedSql: rawSql,
49
49
  index,
50
50
  offendingToken: JSON.parse(safeStringify(token)),
51
- }, 'unexpected value expression');
52
- throw new TypeError('Unexpected value expression.');
51
+ }, "unexpected value expression");
52
+ throw new TypeError("Unexpected value expression.");
53
53
  }
54
54
  }
55
55
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"createSqlTag.js","sourceRoot":"","sources":["../../src/factories/createSqlTag.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createSqlTag.js","sourceRoot":"","sources":["../../src/factories/createSqlTag.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,19 @@
1
- import { FragmentToken } from '../../tokens.js';
2
- import { createSqlTag } from '../createSqlTag.js';
3
- import test from 'ava';
1
+ import { FragmentToken } from "../../tokens.js";
2
+ import { createSqlTag } from "../createSqlTag.js";
3
+ import test from "ava";
4
4
  const sql = createSqlTag();
5
- test('binds an empty array', (t) => {
6
- const query = sql.fragment `SELECT ${sql.array([], 'int4')}`;
5
+ test("binds an empty array", (t) => {
6
+ const query = sql.fragment `SELECT ${sql.array([], "int4")}`;
7
7
  t.deepEqual(query, {
8
8
  sql: 'SELECT $slonik_1::"int4"[]',
9
9
  type: FragmentToken,
10
10
  values: [[]],
11
11
  });
12
12
  });
13
- test('binds bigint', (t) => {
13
+ test("binds bigint", (t) => {
14
14
  const query = sql.fragment `SELECT ${sql.array(
15
15
  // eslint-disable-next-line unicorn/numeric-separators-style
16
- [9007199254740999n], 'int8')}`;
16
+ [9007199254740999n], "int8")}`;
17
17
  t.deepEqual(query, {
18
18
  sql: 'SELECT $slonik_1::"int8"[]',
19
19
  type: FragmentToken,
@@ -21,51 +21,51 @@ test('binds bigint', (t) => {
21
21
  values: [[BigInt(9007199254740999n)]],
22
22
  });
23
23
  });
24
- test('binds an array with multiple values', (t) => {
25
- const query = sql.fragment `SELECT ${sql.array([1, 2, 3], 'int4')}`;
24
+ test("binds an array with multiple values", (t) => {
25
+ const query = sql.fragment `SELECT ${sql.array([1, 2, 3], "int4")}`;
26
26
  t.deepEqual(query, {
27
27
  sql: 'SELECT $slonik_1::"int4"[]',
28
28
  type: FragmentToken,
29
29
  values: [[1, 2, 3]],
30
30
  });
31
31
  });
32
- test('binds an array with bytea values', (t) => {
33
- const query = sql.fragment `SELECT ${sql.array([Buffer.from('foo')], 'bytea')}`;
32
+ test("binds an array with bytea values", (t) => {
33
+ const query = sql.fragment `SELECT ${sql.array([Buffer.from("foo")], "bytea")}`;
34
34
  t.deepEqual(query, {
35
35
  sql: 'SELECT $slonik_1::"bytea"[]',
36
36
  type: FragmentToken,
37
- values: [[Buffer.from('foo')]],
37
+ values: [[Buffer.from("foo")]],
38
38
  });
39
39
  });
40
- test('offsets positional parameter indexes', (t) => {
41
- const query = sql.fragment `SELECT ${1}, ${sql.array([1, 2, 3], 'int4')}, ${3}`;
40
+ test("offsets positional parameter indexes", (t) => {
41
+ const query = sql.fragment `SELECT ${1}, ${sql.array([1, 2, 3], "int4")}, ${3}`;
42
42
  t.deepEqual(query, {
43
43
  sql: 'SELECT $slonik_1, $slonik_2::"int4"[], $slonik_3',
44
44
  type: FragmentToken,
45
45
  values: [1, [1, 2, 3], 3],
46
46
  });
47
47
  });
48
- test('binds a SQL token', (t) => {
48
+ test("binds a SQL token", (t) => {
49
49
  const query = sql.fragment `SELECT ${sql.array([1, 2, 3], sql.fragment `int[]`)}`;
50
50
  t.deepEqual(query, {
51
- sql: 'SELECT $slonik_1::int[]',
51
+ sql: "SELECT $slonik_1::int[]",
52
52
  type: FragmentToken,
53
53
  values: [[1, 2, 3]],
54
54
  });
55
55
  });
56
- test('throws if array member is not a primitive value expression', (t) => {
56
+ test("throws if array member is not a primitive value expression", (t) => {
57
57
  const error = t.throws(() => {
58
58
  sql.fragment `SELECT ${sql.array([
59
59
  // @ts-expect-error - intentional
60
60
  () => { },
61
- ], 'int')}`;
61
+ ], "int")}`;
62
62
  });
63
- t.is(error?.message, 'Invalid array member type. Must be a primitive value expression.');
63
+ t.is(error?.message, "Invalid array member type. Must be a primitive value expression.");
64
64
  });
65
65
  test('throws if memberType is not a string or SqlToken of different type than "SLONIK_TOKEN_FRAGMENT"', (t) => {
66
66
  const error = t.throws(() => {
67
67
  // @ts-expect-error - intentional
68
- sql.fragment `SELECT ${sql.array([1, 2, 3], sql.identifier(['int']))}`;
68
+ sql.fragment `SELECT ${sql.array([1, 2, 3], sql.identifier(["int"]))}`;
69
69
  });
70
70
  t.is(error?.message, 'Unsupported `memberType`. `memberType` must be a string or SqlToken of "SLONIK_TOKEN_FRAGMENT" type.');
71
71
  });
@@ -75,9 +75,9 @@ function assertType(_value) {
75
75
  // This function exists only for type checking
76
76
  }
77
77
  test('produces ArraySqlToken<"int4"> for integer arrays', (t) => {
78
- const arrayToken = sql.array([1, 2, 3], 'int4');
78
+ const arrayToken = sql.array([1, 2, 3], "int4");
79
79
  assertType(arrayToken);
80
- t.is(arrayToken.memberType, 'int4');
80
+ t.is(arrayToken.memberType, "int4");
81
81
  t.deepEqual(arrayToken.values, [1, 2, 3]);
82
82
  const query = sql.fragment `SELECT ${arrayToken}`;
83
83
  t.deepEqual(query, {
@@ -87,36 +87,36 @@ test('produces ArraySqlToken<"int4"> for integer arrays', (t) => {
87
87
  });
88
88
  });
89
89
  test('produces ArraySqlToken<"text"> for text arrays', (t) => {
90
- const arrayToken = sql.array(['a', 'b', 'c'], 'text');
90
+ const arrayToken = sql.array(["a", "b", "c"], "text");
91
91
  assertType(arrayToken);
92
- t.is(arrayToken.memberType, 'text');
93
- t.deepEqual(arrayToken.values, ['a', 'b', 'c']);
92
+ t.is(arrayToken.memberType, "text");
93
+ t.deepEqual(arrayToken.values, ["a", "b", "c"]);
94
94
  const query = sql.fragment `SELECT ${arrayToken}`;
95
95
  t.deepEqual(query, {
96
96
  sql: 'SELECT $slonik_1::"text"[]',
97
97
  type: FragmentToken,
98
- values: [['a', 'b', 'c']],
98
+ values: [["a", "b", "c"]],
99
99
  });
100
100
  });
101
- test('type inference with different PostgreSQL types', (t) => {
102
- const int8Array = sql.array([1n, 2n], 'int8');
101
+ test("type inference with different PostgreSQL types", (t) => {
102
+ const int8Array = sql.array([1n, 2n], "int8");
103
103
  assertType(int8Array);
104
- t.is(int8Array.memberType, 'int8');
105
- const float8Array = sql.array([1.1, 2.2, 3.3], 'float8');
104
+ t.is(int8Array.memberType, "int8");
105
+ const float8Array = sql.array([1.1, 2.2, 3.3], "float8");
106
106
  assertType(float8Array);
107
- t.is(float8Array.memberType, 'float8');
108
- const boolArray = sql.array([true, false, true], 'bool');
107
+ t.is(float8Array.memberType, "float8");
108
+ const boolArray = sql.array([true, false, true], "bool");
109
109
  assertType(boolArray);
110
- t.is(boolArray.memberType, 'bool');
111
- const uuidArray = sql.array(['550e8400-e29b-41d4-a716-446655440000'], 'uuid');
110
+ t.is(boolArray.memberType, "bool");
111
+ const uuidArray = sql.array(["550e8400-e29b-41d4-a716-446655440000"], "uuid");
112
112
  assertType(uuidArray);
113
- t.is(uuidArray.memberType, 'uuid');
114
- const timestampArray = sql.array([new Date().toISOString()], 'timestamp');
113
+ t.is(uuidArray.memberType, "uuid");
114
+ const timestampArray = sql.array([new Date().toISOString()], "timestamp");
115
115
  assertType(timestampArray);
116
- t.is(timestampArray.memberType, 'timestamp');
117
- const jsonbArray = sql.array([JSON.stringify({ key: 'value' })], 'jsonb');
116
+ t.is(timestampArray.memberType, "timestamp");
117
+ const jsonbArray = sql.array([JSON.stringify({ key: "value" })], "jsonb");
118
118
  assertType(jsonbArray);
119
- t.is(jsonbArray.memberType, 'jsonb');
119
+ t.is(jsonbArray.memberType, "jsonb");
120
120
  const query = sql.fragment `
121
121
  SELECT
122
122
  ${int8Array} as int8_arr,
@@ -127,17 +127,17 @@ test('type inference with different PostgreSQL types', (t) => {
127
127
  t.truthy(query.sql.includes('::"float8"[]'));
128
128
  t.truthy(query.sql.includes('::"bool"[]'));
129
129
  });
130
- test('backward compatibility - existing code without explicit types still works', (t) => {
131
- const arrayToken = sql.array([1, 2, 3], 'int4');
130
+ test("backward compatibility - existing code without explicit types still works", (t) => {
131
+ const arrayToken = sql.array([1, 2, 3], "int4");
132
132
  const token = arrayToken;
133
- t.is(token.memberType, 'int4');
133
+ t.is(token.memberType, "int4");
134
134
  const fragmentArray = sql.array([1, 2, 3], sql.fragment `int[]`);
135
- t.is(typeof fragmentArray.memberType, 'object');
135
+ t.is(typeof fragmentArray.memberType, "object");
136
136
  t.is(fragmentArray.memberType.type, FragmentToken);
137
137
  t.deepEqual(fragmentArray.values, [1, 2, 3]);
138
138
  const query = sql.fragment `SELECT ${fragmentArray}`;
139
139
  t.deepEqual(query, {
140
- sql: 'SELECT $slonik_1::int[]',
140
+ sql: "SELECT $slonik_1::int[]",
141
141
  type: FragmentToken,
142
142
  values: [[1, 2, 3]],
143
143
  });
@@ -1 +1 @@
1
- {"version":3,"file":"array.test.js","sourceRoot":"","sources":["../../../src/factories/createSqlTag.test/array.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"array.test.js","sourceRoot":"","sources":["../../../src/factories/createSqlTag.test/array.test.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,20 @@
1
- import { FragmentToken } from '../../tokens.js';
2
- import { createSqlTag } from '../createSqlTag.js';
3
- import test from 'ava';
1
+ import { FragmentToken } from "../../tokens.js";
2
+ import { createSqlTag } from "../createSqlTag.js";
3
+ import test from "ava";
4
4
  const sql = createSqlTag();
5
- test('binds a date', (t) => {
6
- const query = sql.fragment `SELECT ${sql.date(new Date('2022-08-19T03:27:24.951Z'))}`;
5
+ test("binds a date", (t) => {
6
+ const query = sql.fragment `SELECT ${sql.date(new Date("2022-08-19T03:27:24.951Z"))}`;
7
7
  t.deepEqual(query, {
8
- sql: 'SELECT $slonik_1::date',
8
+ sql: "SELECT $slonik_1::date",
9
9
  type: FragmentToken,
10
- values: ['2022-08-19'],
10
+ values: ["2022-08-19"],
11
11
  });
12
12
  });
13
- test('throws if not instance of Date', (t) => {
13
+ test("throws if not instance of Date", (t) => {
14
14
  const error = t.throws(() => {
15
15
  // @ts-expect-error - intentional
16
16
  sql.fragment `SELECT ${sql.date(1)}`;
17
17
  });
18
- t.is(error?.message, 'Date parameter value must be an instance of Date.');
18
+ t.is(error?.message, "Date parameter value must be an instance of Date.");
19
19
  });
20
20
  //# sourceMappingURL=date.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date.test.js","sourceRoot":"","sources":["../../../src/factories/createSqlTag.test/date.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,IAAI,MAAM,KAAK,CAAC;AAEvB,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC;AAE3B,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE;IACzB,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAA,UAAU,GAAG,CAAC,IAAI,CAC1C,IAAI,IAAI,CAAC,0BAA0B,CAAC,CACrC,EAAE,CAAC;IAEJ,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE;QACjB,GAAG,EAAE,wBAAwB;QAC7B,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,CAAC,YAAY,CAAC;KACvB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gCAAgC,EAAE,CAAC,CAAC,EAAE,EAAE;IAC3C,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;QAC1B,iCAAiC;QACjC,GAAG,CAAC,QAAQ,CAAA,UAAU,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,mDAAmD,CAAC,CAAC;AAC5E,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"date.test.js","sourceRoot":"","sources":["../../../src/factories/createSqlTag.test/date.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,IAAI,MAAM,KAAK,CAAC;AAEvB,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC;AAE3B,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE;IACzB,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAA,UAAU,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,CAAC;IAErF,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE;QACjB,GAAG,EAAE,wBAAwB;QAC7B,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,CAAC,YAAY,CAAC;KACvB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gCAAgC,EAAE,CAAC,CAAC,EAAE,EAAE;IAC3C,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;QAC1B,iCAAiC;QACjC,GAAG,CAAC,QAAQ,CAAA,UAAU,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,mDAAmD,CAAC,CAAC;AAC5E,CAAC,CAAC,CAAC"}
@@ -1,33 +1,30 @@
1
- import { FragmentToken } from '../../tokens.js';
2
- import { createSqlTag } from '../createSqlTag.js';
3
- import test from 'ava';
1
+ import { FragmentToken } from "../../tokens.js";
2
+ import { createSqlTag } from "../createSqlTag.js";
3
+ import test from "ava";
4
4
  const sql = createSqlTag();
5
- test('creates an object describing a query with inlined identifiers', (t) => {
6
- const query = sql.fragment `SELECT ${'foo'} FROM ${sql.identifier(['bar'])}`;
5
+ test("creates an object describing a query with inlined identifiers", (t) => {
6
+ const query = sql.fragment `SELECT ${"foo"} FROM ${sql.identifier(["bar"])}`;
7
7
  t.deepEqual(query, {
8
8
  sql: 'SELECT $slonik_1 FROM "bar"',
9
9
  type: FragmentToken,
10
- values: ['foo'],
10
+ values: ["foo"],
11
11
  });
12
12
  });
13
- test('creates an object describing a query with inlined identifiers (specifier)', (t) => {
14
- const query = sql.fragment `SELECT ${'foo'} FROM ${sql.identifier([
15
- 'bar',
16
- 'baz',
17
- ])}`;
13
+ test("creates an object describing a query with inlined identifiers (specifier)", (t) => {
14
+ const query = sql.fragment `SELECT ${"foo"} FROM ${sql.identifier(["bar", "baz"])}`;
18
15
  t.deepEqual(query, {
19
16
  sql: 'SELECT $slonik_1 FROM "bar"."baz"',
20
17
  type: FragmentToken,
21
- values: ['foo'],
18
+ values: ["foo"],
22
19
  });
23
20
  });
24
- test('throws if an identifier name array member type is not a string', (t) => {
21
+ test("throws if an identifier name array member type is not a string", (t) => {
25
22
  const error = t.throws(() => {
26
23
  sql.fragment `${sql.identifier([
27
24
  // @ts-expect-error - intentional
28
25
  () => { },
29
26
  ])}`;
30
27
  });
31
- t.is(error?.message, 'Identifier name array member type must be a string.');
28
+ t.is(error?.message, "Identifier name array member type must be a string.");
32
29
  });
33
30
  //# sourceMappingURL=identifier.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"identifier.test.js","sourceRoot":"","sources":["../../../src/factories/createSqlTag.test/identifier.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,IAAI,MAAM,KAAK,CAAC;AAEvB,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC;AAE3B,IAAI,CAAC,+DAA+D,EAAE,CAAC,CAAC,EAAE,EAAE;IAC1E,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAA,UAAU,KAAK,SAAS,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;IAE5E,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE;QACjB,GAAG,EAAE,6BAA6B;QAClC,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,CAAC,KAAK,CAAC;KAChB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2EAA2E,EAAE,CAAC,CAAC,EAAE,EAAE;IACtF,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAA,UAAU,KAAK,SAAS,GAAG,CAAC,UAAU,CAAC;QAC/D,KAAK;QACL,KAAK;KACN,CAAC,EAAE,CAAC;IAEL,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE;QACjB,GAAG,EAAE,mCAAmC;QACxC,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,CAAC,KAAK,CAAC;KAChB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gEAAgE,EAAE,CAAC,CAAC,EAAE,EAAE;IAC3E,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;QAC1B,GAAG,CAAC,QAAQ,CAAA,GAAG,GAAG,CAAC,UAAU,CAAC;YAC5B,iCAAiC;YACjC,GAAG,EAAE,GAAE,CAAC;SACT,CAAC,EAAE,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,qDAAqD,CAAC,CAAC;AAC9E,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"identifier.test.js","sourceRoot":"","sources":["../../../src/factories/createSqlTag.test/identifier.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,IAAI,MAAM,KAAK,CAAC;AAEvB,MAAM,GAAG,GAAG,YAAY,EAAE,CAAC;AAE3B,IAAI,CAAC,+DAA+D,EAAE,CAAC,CAAC,EAAE,EAAE;IAC1E,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAA,UAAU,KAAK,SAAS,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;IAE5E,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE;QACjB,GAAG,EAAE,6BAA6B;QAClC,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,CAAC,KAAK,CAAC;KAChB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,2EAA2E,EAAE,CAAC,CAAC,EAAE,EAAE;IACtF,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAA,UAAU,KAAK,SAAS,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;IAEnF,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE;QACjB,GAAG,EAAE,mCAAmC;QACxC,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,CAAC,KAAK,CAAC;KAChB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gEAAgE,EAAE,CAAC,CAAC,EAAE,EAAE;IAC3E,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;QAC1B,GAAG,CAAC,QAAQ,CAAA,GAAG,GAAG,CAAC,UAAU,CAAC;YAC5B,iCAAiC;YACjC,GAAG,EAAE,GAAE,CAAC;SACT,CAAC,EAAE,CAAC;IACP,CAAC,CAAC,CAAC;IAEH,CAAC,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,qDAAqD,CAAC,CAAC;AAC9E,CAAC,CAAC,CAAC"}
@@ -1,16 +1,16 @@
1
- import { FragmentToken } from '../../tokens.js';
2
- import { createSqlTag } from '../createSqlTag.js';
3
- import test from 'ava';
1
+ import { FragmentToken } from "../../tokens.js";
2
+ import { createSqlTag } from "../createSqlTag.js";
3
+ import test from "ava";
4
4
  const sql = createSqlTag();
5
- test('creates an empty make_interval invocation', (t) => {
5
+ test("creates an empty make_interval invocation", (t) => {
6
6
  const query = sql.fragment `SELECT ${sql.interval({})}`;
7
7
  t.deepEqual(query, {
8
- sql: 'SELECT make_interval()',
8
+ sql: "SELECT make_interval()",
9
9
  type: FragmentToken,
10
10
  values: [],
11
11
  });
12
12
  });
13
- test('creates an interval', (t) => {
13
+ test("creates an interval", (t) => {
14
14
  const query = sql.fragment `SELECT ${sql.interval({
15
15
  days: 4,
16
16
  hours: 5,
@@ -21,18 +21,18 @@ test('creates an interval', (t) => {
21
21
  years: 1,
22
22
  })}`;
23
23
  t.deepEqual(query, {
24
- sql: 'SELECT make_interval(years => $slonik_1, months => $slonik_2, weeks => $slonik_3, days => $slonik_4, hours => $slonik_5, mins => $slonik_6, secs => $slonik_7)',
24
+ sql: "SELECT make_interval(years => $slonik_1, months => $slonik_2, weeks => $slonik_3, days => $slonik_4, hours => $slonik_5, mins => $slonik_6, secs => $slonik_7)",
25
25
  type: FragmentToken,
26
26
  values: [1, 2, 3, 4, 5, 6, 7],
27
27
  });
28
28
  });
29
- test('throws if contains unknown properties', (t) => {
29
+ test("throws if contains unknown properties", (t) => {
30
30
  const error = t.throws(() => {
31
31
  sql.fragment `SELECT ${sql.interval({
32
32
  // @ts-expect-error - intentional
33
- foo: 'bar',
33
+ foo: "bar",
34
34
  })}`;
35
35
  });
36
- t.is(error?.message, 'Interval input must not contain unknown properties.');
36
+ t.is(error?.message, "Interval input must not contain unknown properties.");
37
37
  });
38
38
  //# sourceMappingURL=interval.test.js.map
@@ -1,82 +1,82 @@
1
- import { FragmentToken } from '../../tokens.js';
2
- import { createSqlTag } from '../createSqlTag.js';
3
- import test from 'ava';
1
+ import { FragmentToken } from "../../tokens.js";
2
+ import { createSqlTag } from "../createSqlTag.js";
3
+ import test from "ava";
4
4
  const sql = createSqlTag();
5
- test('creates a list of values', (t) => {
5
+ test("creates a list of values", (t) => {
6
6
  const query = sql.fragment `SELECT (${sql.join([1, 2, 3], sql.fragment `, `)})`;
7
7
  t.deepEqual(query, {
8
- sql: 'SELECT ($slonik_1, $slonik_2, $slonik_3)',
8
+ sql: "SELECT ($slonik_1, $slonik_2, $slonik_3)",
9
9
  type: FragmentToken,
10
10
  values: [1, 2, 3],
11
11
  });
12
12
  });
13
- test('creates a list of values using glue', (t) => {
13
+ test("creates a list of values using glue", (t) => {
14
14
  const query = sql.fragment `SELECT ${sql.join([sql.fragment `TRUE`, sql.fragment `TRUE`], sql.fragment ` AND `)}`;
15
15
  t.deepEqual(query, {
16
- sql: 'SELECT TRUE AND TRUE',
16
+ sql: "SELECT TRUE AND TRUE",
17
17
  type: FragmentToken,
18
18
  values: [],
19
19
  });
20
20
  });
21
- test('interpolates SQL tokens', (t) => {
21
+ test("interpolates SQL tokens", (t) => {
22
22
  const query = sql.fragment `SELECT (${sql.join([1, sql.fragment `foo`, 3], sql.fragment `, `)})`;
23
23
  t.deepEqual(query, {
24
- sql: 'SELECT ($slonik_1, foo, $slonik_2)',
24
+ sql: "SELECT ($slonik_1, foo, $slonik_2)",
25
25
  type: FragmentToken,
26
26
  values: [1, 3],
27
27
  });
28
28
  });
29
- test('interpolates SQL tokens with bound values', (t) => {
29
+ test("interpolates SQL tokens with bound values", (t) => {
30
30
  const query = sql.fragment `SELECT ${sql.join([1, sql.fragment `to_timestamp(${2}), ${3}`, 4], sql.fragment `, `)}`;
31
31
  t.deepEqual(query, {
32
- sql: 'SELECT $slonik_1, to_timestamp($slonik_2), $slonik_3, $slonik_4',
32
+ sql: "SELECT $slonik_1, to_timestamp($slonik_2), $slonik_3, $slonik_4",
33
33
  type: FragmentToken,
34
34
  values: [1, 2, 3, 4],
35
35
  });
36
36
  });
37
- test('offsets positional parameter indexes', (t) => {
37
+ test("offsets positional parameter indexes", (t) => {
38
38
  const query = sql.fragment `SELECT ${1}, ${sql.join([1, sql.fragment `to_timestamp(${2}), ${3}`, 4], sql.fragment `, `)}, ${3}`;
39
39
  t.deepEqual(query, {
40
- sql: 'SELECT $slonik_1, $slonik_2, to_timestamp($slonik_3), $slonik_4, $slonik_5, $slonik_6',
40
+ sql: "SELECT $slonik_1, $slonik_2, to_timestamp($slonik_3), $slonik_4, $slonik_5, $slonik_6",
41
41
  type: FragmentToken,
42
42
  values: [1, 1, 2, 3, 4, 3],
43
43
  });
44
44
  });
45
- test('supports bigint', (t) => {
45
+ test("supports bigint", (t) => {
46
46
  const query = sql.fragment `SELECT ${1n}, ${sql.join([sql.fragment `to_timestamp(${2n})`, 3n], sql.fragment `, `)}, ${4n}`;
47
47
  t.deepEqual(query, {
48
- sql: 'SELECT $slonik_1, to_timestamp($slonik_2), $slonik_3, $slonik_4',
48
+ sql: "SELECT $slonik_1, to_timestamp($slonik_2), $slonik_3, $slonik_4",
49
49
  type: FragmentToken,
50
50
  values: [1n, 2n, 3n, 4n],
51
51
  });
52
52
  });
53
- test('nests expressions', (t) => {
53
+ test("nests expressions", (t) => {
54
54
  const query = sql.fragment `SELECT ${sql.join([
55
55
  sql.fragment `(${sql.join([1, 2], sql.fragment `, `)})`,
56
56
  sql.fragment `(${sql.join([3, 4], sql.fragment `, `)})`,
57
57
  ], sql.fragment `, `)}`;
58
58
  t.deepEqual(query, {
59
- sql: 'SELECT ($slonik_1, $slonik_2), ($slonik_3, $slonik_4)',
59
+ sql: "SELECT ($slonik_1, $slonik_2), ($slonik_3, $slonik_4)",
60
60
  type: FragmentToken,
61
61
  values: [1, 2, 3, 4],
62
62
  });
63
63
  });
64
- test('binary join expressions', (t) => {
65
- const data = Buffer.from('1f', 'hex');
66
- const query = sql.fragment `SELECT (${sql.join(['a', sql.binary(data)], sql.fragment `, `)})`;
64
+ test("binary join expressions", (t) => {
65
+ const data = Buffer.from("1f", "hex");
66
+ const query = sql.fragment `SELECT (${sql.join(["a", sql.binary(data)], sql.fragment `, `)})`;
67
67
  t.deepEqual(query, {
68
- sql: 'SELECT ($slonik_1, $slonik_2)',
68
+ sql: "SELECT ($slonik_1, $slonik_2)",
69
69
  type: FragmentToken,
70
- values: ['a', data],
70
+ values: ["a", data],
71
71
  });
72
72
  });
73
- test('throws is member is not a SQL token or a primitive value expression', (t) => {
73
+ test("throws is member is not a SQL token or a primitive value expression", (t) => {
74
74
  const error = t.throws(() => {
75
75
  sql.fragment `${sql.join([
76
76
  // @ts-expect-error - intentional
77
77
  () => { },
78
78
  ], sql.fragment `, `)}`;
79
79
  });
80
- t.is(error?.message, 'Invalid list member type. Must be a SQL token or a primitive value expression.');
80
+ t.is(error?.message, "Invalid list member type. Must be a SQL token or a primitive value expression.");
81
81
  });
82
82
  //# sourceMappingURL=join.test.js.map