@slonik/sql-tag 48.5.0 → 48.7.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 (47) hide show
  1. package/dist/factories/createSqlTag.d.ts.map +1 -1
  2. package/dist/factories/createSqlTag.js +1 -7
  3. package/dist/factories/createSqlTag.js.map +1 -1
  4. package/dist/factories/createSqlTag.test/array.test.js +73 -0
  5. package/dist/factories/createSqlTag.test/array.test.js.map +1 -1
  6. package/dist/factories/createSqlTag.test/sql.test.js +8 -0
  7. package/dist/factories/createSqlTag.test/sql.test.js.map +1 -1
  8. package/dist/factories/createSqlTokenSqlFragment.d.ts.map +1 -1
  9. package/dist/factories/createSqlTokenSqlFragment.js +1 -5
  10. package/dist/factories/createSqlTokenSqlFragment.js.map +1 -1
  11. package/dist/index.d.ts +2 -2
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +1 -1
  14. package/dist/index.js.map +1 -1
  15. package/dist/tokens.d.ts +0 -1
  16. package/dist/tokens.d.ts.map +1 -1
  17. package/dist/tokens.js +0 -1
  18. package/dist/tokens.js.map +1 -1
  19. package/dist/types.d.ts +9 -14
  20. package/dist/types.d.ts.map +1 -1
  21. package/dist/utilities/isSqlToken.d.ts.map +1 -1
  22. package/dist/utilities/isSqlToken.js +1 -2
  23. package/dist/utilities/isSqlToken.js.map +1 -1
  24. package/dist/utilities/safeStringify.d.ts +1 -1
  25. package/dist/utilities/safeStringify.d.ts.map +1 -1
  26. package/dist/utilities/safeStringify.js +8 -2
  27. package/dist/utilities/safeStringify.js.map +1 -1
  28. package/package.json +4 -4
  29. package/src/factories/createSqlTag.test/array.test.ts +100 -0
  30. package/src/factories/createSqlTag.test/sql.test.ts +10 -0
  31. package/src/factories/createSqlTag.ts +8 -9
  32. package/src/factories/createSqlTokenSqlFragment.ts +0 -4
  33. package/src/index.ts +0 -2
  34. package/src/tokens.ts +0 -1
  35. package/src/types.ts +24 -31
  36. package/src/utilities/isSqlToken.ts +0 -2
  37. package/src/utilities/safeStringify.ts +8 -10
  38. package/dist/factories/createSqlTag.test/boolean.test.d.ts +0 -2
  39. package/dist/factories/createSqlTag.test/boolean.test.d.ts.map +0 -1
  40. package/dist/factories/createSqlTag.test/boolean.test.js +0 -101
  41. package/dist/factories/createSqlTag.test/boolean.test.js.map +0 -1
  42. package/dist/sqlFragmentFactories/createBooleanSqlFragment.d.ts +0 -3
  43. package/dist/sqlFragmentFactories/createBooleanSqlFragment.d.ts.map +0 -1
  44. package/dist/sqlFragmentFactories/createBooleanSqlFragment.js +0 -14
  45. package/dist/sqlFragmentFactories/createBooleanSqlFragment.js.map +0 -1
  46. package/src/factories/createSqlTag.test/boolean.test.ts +0 -127
  47. package/src/sqlFragmentFactories/createBooleanSqlFragment.ts +0 -19
@@ -1 +1 @@
1
- {"version":3,"file":"createSqlTag.d.ts","sourceRoot":"","sources":["../../src/factories/createSqlTag.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAEV,MAAM,EAEP,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,CAkIV,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;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,CA+HV,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Logger } from '../Logger.js';
2
- import { ArrayToken, BinaryToken, BooleanToken, DateToken, FragmentToken, IdentifierToken, IntervalToken, JsonBinaryToken, JsonToken, ListToken, QueryToken, TimestampToken, UnnestToken, UuidToken, } from '../tokens.js';
2
+ import { ArrayToken, BinaryToken, DateToken, FragmentToken, IdentifierToken, IntervalToken, JsonBinaryToken, JsonToken, ListToken, QueryToken, TimestampToken, UnnestToken, UuidToken, } from '../tokens.js';
3
3
  import { escapeLiteralValue } from '../utilities/escapeLiteralValue.js';
4
4
  import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
5
5
  import { isPrimitiveValueExpression } from '../utilities/isPrimitiveValueExpression.js';
@@ -73,12 +73,6 @@ export const createSqlTag = (configuration = {}) => {
73
73
  type: BinaryToken,
74
74
  });
75
75
  },
76
- boolean: (value) => {
77
- return Object.freeze({
78
- type: BooleanToken,
79
- value: value,
80
- });
81
- },
82
76
  date: (date) => {
83
77
  return Object.freeze({
84
78
  date,
@@ -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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"}
@@ -69,4 +69,77 @@ test('throws if memberType is not a string or SqlToken of different type than "S
69
69
  });
70
70
  t.is(error?.message, 'Unsupported `memberType`. `memberType` must be a string or SqlToken of "SLONIK_TOKEN_FRAGMENT" type.');
71
71
  });
72
+ // Type assertion helper to verify types at compile time
73
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars, func-style, canonical/id-match
74
+ function assertType(_value) {
75
+ // This function exists only for type checking
76
+ }
77
+ test('produces ArraySqlToken<"int4"> for integer arrays', (t) => {
78
+ const arrayToken = sql.array([1, 2, 3], 'int4');
79
+ assertType(arrayToken);
80
+ t.is(arrayToken.memberType, 'int4');
81
+ t.deepEqual(arrayToken.values, [1, 2, 3]);
82
+ const query = sql.fragment `SELECT ${arrayToken}`;
83
+ t.deepEqual(query, {
84
+ sql: 'SELECT $slonik_1::"int4"[]',
85
+ type: FragmentToken,
86
+ values: [[1, 2, 3]],
87
+ });
88
+ });
89
+ test('produces ArraySqlToken<"text"> for text arrays', (t) => {
90
+ const arrayToken = sql.array(['a', 'b', 'c'], 'text');
91
+ assertType(arrayToken);
92
+ t.is(arrayToken.memberType, 'text');
93
+ t.deepEqual(arrayToken.values, ['a', 'b', 'c']);
94
+ const query = sql.fragment `SELECT ${arrayToken}`;
95
+ t.deepEqual(query, {
96
+ sql: 'SELECT $slonik_1::"text"[]',
97
+ type: FragmentToken,
98
+ values: [['a', 'b', 'c']],
99
+ });
100
+ });
101
+ test('type inference with different PostgreSQL types', (t) => {
102
+ const int8Array = sql.array([BigInt(1), BigInt(2)], 'int8');
103
+ assertType(int8Array);
104
+ t.is(int8Array.memberType, 'int8');
105
+ const float8Array = sql.array([1.1, 2.2, 3.3], 'float8');
106
+ assertType(float8Array);
107
+ t.is(float8Array.memberType, 'float8');
108
+ const boolArray = sql.array([true, false, true], 'bool');
109
+ assertType(boolArray);
110
+ t.is(boolArray.memberType, 'bool');
111
+ const uuidArray = sql.array(['550e8400-e29b-41d4-a716-446655440000'], 'uuid');
112
+ assertType(uuidArray);
113
+ t.is(uuidArray.memberType, 'uuid');
114
+ const timestampArray = sql.array([new Date().toISOString()], 'timestamp');
115
+ assertType(timestampArray);
116
+ t.is(timestampArray.memberType, 'timestamp');
117
+ const jsonbArray = sql.array([JSON.stringify({ key: 'value' })], 'jsonb');
118
+ assertType(jsonbArray);
119
+ t.is(jsonbArray.memberType, 'jsonb');
120
+ const query = sql.fragment `
121
+ SELECT
122
+ ${int8Array} as int8_arr,
123
+ ${float8Array} as float8_arr,
124
+ ${boolArray} as bool_arr
125
+ `;
126
+ t.truthy(query.sql.includes('::"int8"[]'));
127
+ t.truthy(query.sql.includes('::"float8"[]'));
128
+ t.truthy(query.sql.includes('::"bool"[]'));
129
+ });
130
+ test('backward compatibility - existing code without explicit types still works', (t) => {
131
+ const arrayToken = sql.array([1, 2, 3], 'int4');
132
+ const token = arrayToken;
133
+ t.is(token.memberType, 'int4');
134
+ const fragmentArray = sql.array([1, 2, 3], sql.fragment `int[]`);
135
+ t.is(typeof fragmentArray.memberType, 'object');
136
+ t.is(fragmentArray.memberType.type, FragmentToken);
137
+ t.deepEqual(fragmentArray.values, [1, 2, 3]);
138
+ const query = sql.fragment `SELECT ${fragmentArray}`;
139
+ t.deepEqual(query, {
140
+ sql: 'SELECT $slonik_1::int[]',
141
+ type: FragmentToken,
142
+ values: [[1, 2, 3]],
143
+ });
144
+ });
72
145
  //# sourceMappingURL=array.test.js.map
@@ -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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"}
@@ -138,4 +138,12 @@ test('copes with dollar-number in function definitions', (t) => {
138
138
  values: [],
139
139
  });
140
140
  });
141
+ test('interpolates literal boolean values', (t) => {
142
+ const query = sql.fragment `SELECT ${true}, ${false}`;
143
+ t.deepEqual(query, {
144
+ sql: 'SELECT $slonik_1, $slonik_2',
145
+ type: FragmentToken,
146
+ values: [true, false],
147
+ });
148
+ });
141
149
  //# sourceMappingURL=sql.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sql.test.js","sourceRoot":"","sources":["../../../src/factories/createSqlTag.test/sql.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sql.test.js","sourceRoot":"","sources":["../../../src/factories/createSqlTag.test/sql.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"createSqlTokenSqlFragment.d.ts","sourceRoot":"","sources":["../../src/factories/createSqlTokenSqlFragment.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AAG9E,eAAO,MAAM,yBAAyB,GACpC,OAAO,YAAY,EACnB,2BAA2B,MAAM,KAChC,gBAgCF,CAAC"}
1
+ {"version":3,"file":"createSqlTokenSqlFragment.d.ts","sourceRoot":"","sources":["../../src/factories/createSqlTokenSqlFragment.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,gBAAgB,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AAG9E,eAAO,MAAM,yBAAyB,GACpC,OAAO,YAAY,EACnB,2BAA2B,MAAM,KAChC,gBA8BF,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import { createArraySqlFragment } from '../sqlFragmentFactories/createArraySqlFragment.js';
2
2
  import { createBinarySqlFragment } from '../sqlFragmentFactories/createBinarySqlFragment.js';
3
- import { createBooleanSqlFragment } from '../sqlFragmentFactories/createBooleanSqlFragment.js';
4
3
  import { createDateSqlFragment } from '../sqlFragmentFactories/createDateSqlFragment.js';
5
4
  import { createFragmentSqlFragment } from '../sqlFragmentFactories/createFragmentSqlFragment.js';
6
5
  import { createIdentifierSqlFragment } from '../sqlFragmentFactories/createIdentifierSqlFragment.js';
@@ -11,7 +10,7 @@ import { createQuerySqlFragment } from '../sqlFragmentFactories/createQuerySqlFr
11
10
  import { createTimestampSqlFragment } from '../sqlFragmentFactories/createTimestampSqlFragment.js';
12
11
  import { createUnnestSqlFragment } from '../sqlFragmentFactories/createUnnestSqlFragment.js';
13
12
  import { createUuidSqlFragment } from '../sqlFragmentFactories/createUuidSqlFragment.js';
14
- import { ArrayToken, BinaryToken, BooleanToken, DateToken, FragmentToken, IdentifierToken, IntervalToken, JsonBinaryToken, JsonToken, ListToken, QueryToken, TimestampToken, UnnestToken, UuidToken, } from '../tokens.js';
13
+ import { ArrayToken, BinaryToken, DateToken, FragmentToken, IdentifierToken, IntervalToken, JsonBinaryToken, JsonToken, ListToken, QueryToken, TimestampToken, UnnestToken, UuidToken, } from '../tokens.js';
15
14
  import { UnexpectedStateError } from '@slonik/errors';
16
15
  export const createSqlTokenSqlFragment = (token, greatestParameterPosition) => {
17
16
  if (token.type === ArrayToken) {
@@ -20,9 +19,6 @@ export const createSqlTokenSqlFragment = (token, greatestParameterPosition) => {
20
19
  else if (token.type === BinaryToken) {
21
20
  return createBinarySqlFragment(token, greatestParameterPosition);
22
21
  }
23
- else if (token.type === BooleanToken) {
24
- return createBooleanSqlFragment(token, greatestParameterPosition);
25
- }
26
22
  else if (token.type === DateToken) {
27
23
  return createDateSqlFragment(token, greatestParameterPosition);
28
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"createSqlTokenSqlFragment.js","sourceRoot":"","sources":["../../src/factories/createSqlTokenSqlFragment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createSqlTokenSqlFragment.js","sourceRoot":"","sources":["../../src/factories/createSqlTokenSqlFragment.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { createSqlTag } from './factories/createSqlTag.js';
2
2
  export { createSqlTokenSqlFragment } from './factories/createSqlTokenSqlFragment.js';
3
- export { ArrayToken, BinaryToken, BooleanToken, ComparisonPredicateToken, DateToken, FragmentToken, IdentifierToken, IntervalToken, JsonBinaryToken, JsonToken, ListToken, QueryToken, TimestampToken, UnnestToken, UuidToken, } from './tokens.js';
4
- export { type ArraySqlToken, type BinarySqlToken, type BooleanSqlToken, type DateSqlToken, type FragmentSqlToken, type IdentifierSqlToken, type IntervalInput, type IntervalSqlToken, type JsonBinarySqlToken, type JsonSqlToken, type ListSqlToken, type PrimitiveValueExpression, type QuerySqlToken, type SerializableValue, type SqlFragmentToken, type SqlTag, type SqlToken, type TimestampSqlToken, type UnnestSqlToken, type UuidSqlToken, type ValueExpression, } from './types.js';
3
+ export { ArrayToken, BinaryToken, ComparisonPredicateToken, DateToken, FragmentToken, IdentifierToken, IntervalToken, JsonBinaryToken, JsonToken, ListToken, QueryToken, TimestampToken, UnnestToken, UuidToken, } from './tokens.js';
4
+ export { type ArraySqlToken, type BinarySqlToken, type DateSqlToken, type FragmentSqlToken, type IdentifierSqlToken, type IntervalInput, type IntervalSqlToken, type JsonBinarySqlToken, type JsonSqlToken, type ListSqlToken, type PrimitiveValueExpression, type QuerySqlToken, type SerializableValue, type SqlFragmentToken, type SqlTag, type SqlToken, type TimestampSqlToken, type UnnestSqlToken, type UuidSqlToken, type ValueExpression, } from './types.js';
5
5
  export { isSqlToken } from './utilities/isSqlToken.js';
6
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EACL,UAAU,EACV,WAAW,EACX,YAAY,EACZ,wBAAwB,EACxB,SAAS,EACT,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,EACf,SAAS,EACT,SAAS,EACT,UAAU,EACV,cAAc,EACd,WAAW,EACX,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,eAAe,EACpB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,wBAAwB,EAC7B,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,MAAM,EACX,KAAK,QAAQ,EACb,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EACL,UAAU,EACV,WAAW,EACX,wBAAwB,EACxB,SAAS,EACT,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,EACf,SAAS,EACT,SAAS,EACT,UAAU,EACV,cAAc,EACd,WAAW,EACX,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,YAAY,EACjB,KAAK,wBAAwB,EAC7B,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,MAAM,EACX,KAAK,QAAQ,EACb,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,YAAY,EACjB,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export { createSqlTag } from './factories/createSqlTag.js';
2
2
  export { createSqlTokenSqlFragment } from './factories/createSqlTokenSqlFragment.js';
3
- export { ArrayToken, BinaryToken, BooleanToken, ComparisonPredicateToken, DateToken, FragmentToken, IdentifierToken, IntervalToken, JsonBinaryToken, JsonToken, ListToken, QueryToken, TimestampToken, UnnestToken, UuidToken, } from './tokens.js';
3
+ export { ArrayToken, BinaryToken, ComparisonPredicateToken, DateToken, FragmentToken, IdentifierToken, IntervalToken, JsonBinaryToken, JsonToken, ListToken, QueryToken, TimestampToken, UnnestToken, UuidToken, } from './tokens.js';
4
4
  export { isSqlToken } from './utilities/isSqlToken.js';
5
5
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EACL,UAAU,EACV,WAAW,EACX,YAAY,EACZ,wBAAwB,EACxB,SAAS,EACT,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,EACf,SAAS,EACT,SAAS,EACT,UAAU,EACV,cAAc,EACd,WAAW,EACX,SAAS,GACV,MAAM,aAAa,CAAC;AAwBrB,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EACL,UAAU,EACV,WAAW,EACX,wBAAwB,EACxB,SAAS,EACT,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,EACf,SAAS,EACT,SAAS,EACT,UAAU,EACV,cAAc,EACd,WAAW,EACX,SAAS,GACV,MAAM,aAAa,CAAC;AAuBrB,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC"}
package/dist/tokens.d.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  export declare const ArrayToken: unique symbol;
2
2
  export declare const BinaryToken: unique symbol;
3
- export declare const BooleanToken: unique symbol;
4
3
  export declare const ComparisonPredicateToken: unique symbol;
5
4
  export declare const DateToken: unique symbol;
6
5
  export declare const FragmentToken: unique symbol;
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,eAAmC,CAAC;AAC3D,eAAO,MAAM,WAAW,eAAoC,CAAC;AAC7D,eAAO,MAAM,YAAY,eAAqC,CAAC;AAC/D,eAAO,MAAM,wBAAwB,eAEpC,CAAC;AACF,eAAO,MAAM,SAAS,eAAkC,CAAC;AACzD,eAAO,MAAM,aAAa,eAAsC,CAAC;AACjE,eAAO,MAAM,eAAe,eAAwC,CAAC;AACrE,eAAO,MAAM,aAAa,eAAsC,CAAC;AACjE,eAAO,MAAM,eAAe,eAAyC,CAAC;AACtE,eAAO,MAAM,SAAS,eAAkC,CAAC;AACzD,eAAO,MAAM,SAAS,eAAkC,CAAC;AACzD,eAAO,MAAM,UAAU,eAAmC,CAAC;AAC3D,eAAO,MAAM,cAAc,eAAuC,CAAC;AACnE,eAAO,MAAM,WAAW,eAAoC,CAAC;AAC7D,eAAO,MAAM,SAAS,eAAkC,CAAC"}
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,eAAmC,CAAC;AAC3D,eAAO,MAAM,WAAW,eAAoC,CAAC;AAC7D,eAAO,MAAM,wBAAwB,eAEpC,CAAC;AACF,eAAO,MAAM,SAAS,eAAkC,CAAC;AACzD,eAAO,MAAM,aAAa,eAAsC,CAAC;AACjE,eAAO,MAAM,eAAe,eAAwC,CAAC;AACrE,eAAO,MAAM,aAAa,eAAsC,CAAC;AACjE,eAAO,MAAM,eAAe,eAAyC,CAAC;AACtE,eAAO,MAAM,SAAS,eAAkC,CAAC;AACzD,eAAO,MAAM,SAAS,eAAkC,CAAC;AACzD,eAAO,MAAM,UAAU,eAAmC,CAAC;AAC3D,eAAO,MAAM,cAAc,eAAuC,CAAC;AACnE,eAAO,MAAM,WAAW,eAAoC,CAAC;AAC7D,eAAO,MAAM,SAAS,eAAkC,CAAC"}
package/dist/tokens.js CHANGED
@@ -1,6 +1,5 @@
1
1
  export const ArrayToken = Symbol.for('SLONIK_TOKEN_ARRAY');
2
2
  export const BinaryToken = Symbol.for('SLONIK_TOKEN_BINARY');
3
- export const BooleanToken = Symbol.for('SLONIK_TOKEN_BOOLEAN');
4
3
  export const ComparisonPredicateToken = Symbol.for('SLONIK_TOKEN_COMPARISON_PREDICATE');
5
4
  export const DateToken = Symbol.for('SLONIK_TOKEN_DATE');
6
5
  export const FragmentToken = Symbol.for('SLONIK_TOKEN_FRAGMENT');
@@ -1 +1 @@
1
- {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AAC3D,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AAC7D,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;AAC/D,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC,GAAG,CAChD,mCAAmC,CACpC,CAAC;AACF,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;AACzD,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;AACrE,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;AACtE,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;AACzD,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;AACzD,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AAC3D,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;AACnE,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AAC7D,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC"}
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AAC3D,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AAC7D,MAAM,CAAC,MAAM,wBAAwB,GAAG,MAAM,CAAC,GAAG,CAChD,mCAAmC,CACpC,CAAC;AACF,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;AACzD,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;AACrE,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;AACtE,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;AACzD,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;AACzD,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;AAC3D,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;AACnE,MAAM,CAAC,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AAC7D,MAAM,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC"}
package/dist/types.d.ts CHANGED
@@ -2,8 +2,8 @@ import type * as tokens from './tokens.js';
2
2
  import type { PrimitiveValueExpression } from '@slonik/types';
3
3
  import type { StandardSchemaV1 } from '@standard-schema/spec';
4
4
  export { type PrimitiveValueExpression } from '@slonik/types';
5
- export type ArraySqlToken = {
6
- readonly memberType: SqlFragmentToken | TypeNameIdentifier;
5
+ export type ArraySqlToken<T extends TypeNameIdentifier = TypeNameIdentifier> = {
6
+ readonly memberType: SqlFragmentToken | T;
7
7
  readonly type: typeof tokens.ArrayToken;
8
8
  readonly values: readonly PrimitiveValueExpression[];
9
9
  };
@@ -11,10 +11,6 @@ export type BinarySqlToken = {
11
11
  readonly data: Buffer;
12
12
  readonly type: typeof tokens.BinaryToken;
13
13
  };
14
- export type BooleanSqlToken = {
15
- readonly type: typeof tokens.BooleanToken;
16
- readonly value: boolean;
17
- };
18
14
  export type DateSqlToken = {
19
15
  readonly date: Date;
20
16
  readonly type: typeof tokens.DateToken;
@@ -69,9 +65,8 @@ export type SqlFragmentToken = {
69
65
  readonly values: readonly PrimitiveValueExpression[];
70
66
  };
71
67
  export type SqlTag<Z extends Record<string, StandardSchemaV1> = Record<string, StandardSchemaV1>> = {
72
- array: (values: readonly PrimitiveValueExpression[], memberType: SqlFragmentToken | TypeNameIdentifier) => ArraySqlToken;
68
+ array: <T extends TypeNameIdentifier>(values: readonly PrimitiveValueExpression[], memberType: SqlFragmentToken | T) => ArraySqlToken<T>;
73
69
  binary: (data: Buffer) => BinarySqlToken;
74
- boolean: (value: boolean) => BooleanSqlToken;
75
70
  date: (date: Date) => DateSqlToken;
76
71
  fragment: (template: TemplateStringsArray, ...values: ValueExpression[]) => SqlFragmentToken;
77
72
  identifier: (names: readonly string[]) => IdentifierSqlToken;
@@ -87,11 +82,16 @@ export type SqlTag<Z extends Record<string, StandardSchemaV1> = Record<string, S
87
82
  unsafe: (template: TemplateStringsArray, ...values: ValueExpression[]) => QuerySqlToken;
88
83
  uuid: (uuid: string) => UuidSqlToken;
89
84
  };
90
- export type SqlToken = ArraySqlToken | BinarySqlToken | BooleanSqlToken | DateSqlToken | FragmentSqlToken | IdentifierSqlToken | IntervalSqlToken | JsonBinarySqlToken | JsonSqlToken | ListSqlToken | QuerySqlToken | TimestampSqlToken | UnnestSqlToken | UuidSqlToken;
85
+ export type SqlToken = ArraySqlToken<TypeNameIdentifier> | BinarySqlToken | DateSqlToken | FragmentSqlToken | IdentifierSqlToken | IntervalSqlToken | JsonBinarySqlToken | JsonSqlToken | ListSqlToken | QuerySqlToken | TimestampSqlToken | UnnestSqlToken | UuidSqlToken;
91
86
  export type TimestampSqlToken = {
92
87
  readonly date: Date;
93
88
  readonly type: typeof tokens.TimestampToken;
94
89
  };
90
+ /**
91
+ * "string" type covers all type name identifiers – the literal values are added only to assist developer
92
+ * experience with auto suggestions for commonly used type name identifiers.
93
+ */
94
+ export type TypeNameIdentifier = 'bool' | 'bytea' | 'float4' | 'float8' | 'int2' | 'int4' | 'int8' | 'json' | 'text' | 'timestamptz' | 'uuid' | string;
95
95
  export type UnnestSqlToken = {
96
96
  readonly columnTypes: Array<[...string[], TypeNameIdentifier]> | Array<SqlFragmentToken | TypeNameIdentifier>;
97
97
  readonly tuples: ReadonlyArray<readonly ValueExpression[]>;
@@ -102,9 +102,4 @@ export type UuidSqlToken = {
102
102
  readonly uuid: `${string}-${string}-${string}-${string}-${string}`;
103
103
  };
104
104
  export type ValueExpression = PrimitiveValueExpression | SqlFragmentToken | SqlToken;
105
- /**
106
- * "string" type covers all type name identifiers – the literal values are added only to assist developer
107
- * experience with auto suggestions for commonly used type name identifiers.
108
- */
109
- type TypeNameIdentifier = 'bool' | 'bytea' | 'float4' | 'float8' | 'int2' | 'int4' | 'int8' | 'json' | 'text' | 'timestamptz' | 'uuid' | string;
110
105
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"isSqlToken.d.ts","sourceRoot":"","sources":["../../src/utilities/isSqlToken.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AAkC5D,eAAO,MAAM,UAAU,GAAI,SAAS,OAAO,KAAG,OAAO,IAAI,YAmCxD,CAAC"}
1
+ {"version":3,"file":"isSqlToken.d.ts","sourceRoot":"","sources":["../../src/utilities/isSqlToken.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,QAAQ,IAAI,YAAY,EAAE,MAAM,aAAa,CAAC;AAiC5D,eAAO,MAAM,UAAU,GAAI,SAAS,OAAO,KAAG,OAAO,IAAI,YAmCxD,CAAC"}
@@ -1,10 +1,9 @@
1
- import { ArrayToken, BinaryToken, BooleanToken, ComparisonPredicateToken, DateToken, FragmentToken, IdentifierToken, IntervalToken, JsonBinaryToken, JsonToken, ListToken, QueryToken, TimestampToken, UnnestToken, UuidToken, } from '../tokens.js';
1
+ import { ArrayToken, BinaryToken, ComparisonPredicateToken, DateToken, FragmentToken, IdentifierToken, IntervalToken, JsonBinaryToken, JsonToken, ListToken, QueryToken, TimestampToken, UnnestToken, UuidToken, } from '../tokens.js';
2
2
  import { hasOwnProperty } from './hasOwnProperty.js';
3
3
  import { UnexpectedStateError } from '@slonik/errors';
4
4
  const Tokens = [
5
5
  ArrayToken,
6
6
  BinaryToken,
7
- BooleanToken,
8
7
  ComparisonPredicateToken,
9
8
  DateToken,
10
9
  FragmentToken,
@@ -1 +1 @@
1
- {"version":3,"file":"isSqlToken.js","sourceRoot":"","sources":["../../src/utilities/isSqlToken.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,WAAW,EACX,YAAY,EACZ,wBAAwB,EACxB,SAAS,EACT,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,EACf,SAAS,EACT,SAAS,EACT,UAAU,EACV,cAAc,EACd,WAAW,EACX,SAAS,GACV,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD,MAAM,MAAM,GAAG;IACb,UAAU;IACV,WAAW;IACX,YAAY;IACZ,wBAAwB;IACxB,SAAS;IACT,aAAa;IACb,eAAe;IACf,aAAa;IACb,eAAe;IACf,SAAS;IACT,SAAS;IACT,UAAU;IACV,cAAc;IACd,WAAW;IACX,SAAS;CACD,CAAC;AAEX,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;IACvC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE3C,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QACtC,MAAM,IAAI,oBAAoB,CAC5B,qDAAqD,CACtD,CAAC;IACJ,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,OAAgB,EAA2B,EAAE;IACtE,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACpD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAE/B,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAE/C,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8DAA8D;IAC9D,4BAA4B;IAC5B,+BAA+B;IAC/B,8BAA8B;IAC9B,EAAE;IACF,gDAAgD;IAChD,8CAA8C;IAC9C,sDAAsD;IACtD,EAAE;IACF,yDAAyD;IACzD,oDAAoD;IACpD,6CAA6C;IAC7C,kCAAkC;IAClC,OAAO,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AAC7C,CAAC,CAAC"}
1
+ {"version":3,"file":"isSqlToken.js","sourceRoot":"","sources":["../../src/utilities/isSqlToken.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,WAAW,EACX,wBAAwB,EACxB,SAAS,EACT,aAAa,EACb,eAAe,EACf,aAAa,EACb,eAAe,EACf,SAAS,EACT,SAAS,EACT,UAAU,EACV,cAAc,EACd,WAAW,EACX,SAAS,GACV,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAEtD,MAAM,MAAM,GAAG;IACb,UAAU;IACV,WAAW;IACX,wBAAwB;IACxB,SAAS;IACT,aAAa;IACb,eAAe;IACf,aAAa;IACb,eAAe;IACf,SAAS;IACT,SAAS;IACT,UAAU;IACV,cAAc;IACd,WAAW;IACX,SAAS;CACD,CAAC;AAEX,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;IACvC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE3C,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QACtC,MAAM,IAAI,oBAAoB,CAC5B,qDAAqD,CACtD,CAAC;IACJ,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,OAAgB,EAA2B,EAAE;IACtE,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACpD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAE/B,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAE/C,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QACtC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,8DAA8D;IAC9D,4BAA4B;IAC5B,+BAA+B;IAC/B,8BAA8B;IAC9B,EAAE;IACF,gDAAgD;IAChD,8CAA8C;IAC9C,sDAAsD;IACtD,EAAE;IACF,yDAAyD;IACzD,oDAAoD;IACpD,6CAA6C;IAC7C,kCAAkC;IAClC,OAAO,WAAW,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;AAC7C,CAAC,CAAC"}
@@ -1,2 +1,2 @@
1
- export declare const safeStringify: (subject: unknown, replacer?: ((key: string, value: unknown) => unknown) | Array<number | string> | null | undefined, space?: number | string) => string;
1
+ export declare const safeStringify: (subject: unknown) => string;
2
2
  //# sourceMappingURL=safeStringify.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"safeStringify.d.ts","sourceRoot":"","sources":["../../src/utilities/safeStringify.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,aAAa,GACxB,SAAS,OAAO,EAChB,WACI,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,GAC1C,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,GACtB,IAAI,GACJ,SAAS,EACb,QAAQ,MAAM,GAAG,MAAM,KACtB,MAQF,CAAC"}
1
+ {"version":3,"file":"safeStringify.d.ts","sourceRoot":"","sources":["../../src/utilities/safeStringify.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,aAAa,GAAI,SAAS,OAAO,KAAG,MAchD,CAAC"}
@@ -4,8 +4,14 @@ const stringify = configure({
4
4
  circularValue: '[Circular]',
5
5
  strict: true,
6
6
  });
7
- export const safeStringify = (subject, replacer, space) => {
8
- const result = stringify(subject, replacer, space);
7
+ export const safeStringify = (subject) => {
8
+ try {
9
+ return JSON.stringify(subject);
10
+ }
11
+ catch {
12
+ // Ignore
13
+ }
14
+ const result = stringify(subject);
9
15
  if (result === undefined) {
10
16
  throw new Error('Expected result to be string');
11
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"safeStringify.js","sourceRoot":"","sources":["../../src/utilities/safeStringify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,MAAM,SAAS,GAAG,SAAS,CAAC;IAC1B,MAAM,EAAE,IAAI;IACZ,aAAa,EAAE,YAAY;IAC3B,MAAM,EAAE,IAAI;CACb,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAC3B,OAAgB,EAChB,QAIa,EACb,KAAuB,EACf,EAAE;IACV,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IAEnD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"safeStringify.js","sourceRoot":"","sources":["../../src/utilities/safeStringify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAElD,MAAM,SAAS,GAAG,SAAS,CAAC;IAC1B,MAAM,EAAE,IAAI;IACZ,aAAa,EAAE,YAAY;IAC3B,MAAM,EAAE,IAAI;CACb,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAgB,EAAU,EAAE;IACxD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAAC,MAAM,CAAC;QACP,SAAS;IACX,CAAC;IAED,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAElC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
package/package.json CHANGED
@@ -16,8 +16,8 @@
16
16
  ]
17
17
  },
18
18
  "dependencies": {
19
- "@slonik/errors": "^48.5.0",
20
- "@slonik/types": "^48.5.0",
19
+ "@slonik/errors": "^48.7.0",
20
+ "@slonik/types": "^48.7.0",
21
21
  "roarr": "^7.21.1",
22
22
  "safe-stable-stringify": "^2.5.0",
23
23
  "serialize-error": "^12.0.0",
@@ -33,7 +33,7 @@
33
33
  "tsimp": "^2.0.12",
34
34
  "typescript": "^5.8.3",
35
35
  "typescript-eslint": "^8.33.0",
36
- "@slonik/eslint-config": "^48.5.0"
36
+ "@slonik/eslint-config": "^48.7.0"
37
37
  },
38
38
  "engines": {
39
39
  "node": ">=24"
@@ -56,7 +56,7 @@
56
56
  },
57
57
  "type": "module",
58
58
  "types": "./dist/index.d.ts",
59
- "version": "48.5.0",
59
+ "version": "48.7.0",
60
60
  "scripts": {
61
61
  "build": "rm -fr ./dist && tsc --project ./tsconfig.json",
62
62
  "lint": "npm run lint:cspell && npm run lint:eslint && npm run lint:tsc",
@@ -1,4 +1,5 @@
1
1
  import { FragmentToken } from '../../tokens.js';
2
+ import type { ArraySqlToken, SqlFragmentToken } from '../../types.js';
2
3
  import { createSqlTag } from '../createSqlTag.js';
3
4
  import test from 'ava';
4
5
 
@@ -106,3 +107,102 @@ test('throws if memberType is not a string or SqlToken of different type than "S
106
107
  'Unsupported `memberType`. `memberType` must be a string or SqlToken of "SLONIK_TOKEN_FRAGMENT" type.',
107
108
  );
108
109
  });
110
+
111
+ // Type assertion helper to verify types at compile time
112
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars, func-style, canonical/id-match
113
+ function assertType<T>(_value: T): void {
114
+ // This function exists only for type checking
115
+ }
116
+
117
+ test('produces ArraySqlToken<"int4"> for integer arrays', (t) => {
118
+ const arrayToken = sql.array([1, 2, 3], 'int4');
119
+
120
+ assertType<ArraySqlToken<'int4'>>(arrayToken);
121
+
122
+ t.is(arrayToken.memberType, 'int4');
123
+ t.deepEqual(arrayToken.values, [1, 2, 3]);
124
+
125
+ const query = sql.fragment`SELECT ${arrayToken}`;
126
+ t.deepEqual(query, {
127
+ sql: 'SELECT $slonik_1::"int4"[]',
128
+ type: FragmentToken,
129
+ values: [[1, 2, 3]],
130
+ });
131
+ });
132
+
133
+ test('produces ArraySqlToken<"text"> for text arrays', (t) => {
134
+ const arrayToken = sql.array(['a', 'b', 'c'], 'text');
135
+
136
+ assertType<ArraySqlToken<'text'>>(arrayToken);
137
+
138
+ t.is(arrayToken.memberType, 'text');
139
+ t.deepEqual(arrayToken.values, ['a', 'b', 'c']);
140
+
141
+ const query = sql.fragment`SELECT ${arrayToken}`;
142
+
143
+ t.deepEqual(query, {
144
+ sql: 'SELECT $slonik_1::"text"[]',
145
+ type: FragmentToken,
146
+ values: [['a', 'b', 'c']],
147
+ });
148
+ });
149
+
150
+ test('type inference with different PostgreSQL types', (t) => {
151
+ const int8Array = sql.array([BigInt(1), BigInt(2)], 'int8');
152
+ assertType<ArraySqlToken<'int8'>>(int8Array);
153
+ t.is(int8Array.memberType, 'int8');
154
+
155
+ const float8Array = sql.array([1.1, 2.2, 3.3], 'float8');
156
+ assertType<ArraySqlToken<'float8'>>(float8Array);
157
+ t.is(float8Array.memberType, 'float8');
158
+
159
+ const boolArray = sql.array([true, false, true], 'bool');
160
+ assertType<ArraySqlToken<'bool'>>(boolArray);
161
+ t.is(boolArray.memberType, 'bool');
162
+
163
+ const uuidArray = sql.array(['550e8400-e29b-41d4-a716-446655440000'], 'uuid');
164
+ assertType<ArraySqlToken<'uuid'>>(uuidArray);
165
+ t.is(uuidArray.memberType, 'uuid');
166
+
167
+ const timestampArray = sql.array([new Date().toISOString()], 'timestamp');
168
+ assertType<ArraySqlToken<'timestamp'>>(timestampArray);
169
+ t.is(timestampArray.memberType, 'timestamp');
170
+
171
+ const jsonbArray = sql.array([JSON.stringify({ key: 'value' })], 'jsonb');
172
+ assertType<ArraySqlToken<'jsonb'>>(jsonbArray);
173
+ t.is(jsonbArray.memberType, 'jsonb');
174
+
175
+ const query = sql.fragment`
176
+ SELECT
177
+ ${int8Array} as int8_arr,
178
+ ${float8Array} as float8_arr,
179
+ ${boolArray} as bool_arr
180
+ `;
181
+
182
+ t.truthy(query.sql.includes('::"int8"[]'));
183
+ t.truthy(query.sql.includes('::"float8"[]'));
184
+ t.truthy(query.sql.includes('::"bool"[]'));
185
+ });
186
+
187
+ test('backward compatibility - existing code without explicit types still works', (t) => {
188
+ const arrayToken = sql.array([1, 2, 3], 'int4');
189
+
190
+ const token: ArraySqlToken = arrayToken;
191
+
192
+ t.is(token.memberType, 'int4');
193
+
194
+ const fragmentArray = sql.array([1, 2, 3], sql.fragment`int[]`);
195
+
196
+ t.is(typeof fragmentArray.memberType, 'object');
197
+ t.is((fragmentArray.memberType as SqlFragmentToken).type, FragmentToken);
198
+
199
+ t.deepEqual(fragmentArray.values, [1, 2, 3]);
200
+
201
+ const query = sql.fragment`SELECT ${fragmentArray}`;
202
+
203
+ t.deepEqual(query, {
204
+ sql: 'SELECT $slonik_1::int[]',
205
+ type: FragmentToken,
206
+ values: [[1, 2, 3]],
207
+ });
208
+ });
@@ -174,3 +174,13 @@ test('copes with dollar-number in function definitions', (t) => {
174
174
  values: [],
175
175
  });
176
176
  });
177
+
178
+ test('interpolates literal boolean values', (t) => {
179
+ const query = sql.fragment`SELECT ${true}, ${false}`;
180
+
181
+ t.deepEqual(query, {
182
+ sql: 'SELECT $slonik_1, $slonik_2',
183
+ type: FragmentToken,
184
+ values: [true, false],
185
+ });
186
+ });
@@ -3,7 +3,6 @@ import type { UUID } from '../sqlFragmentFactories/createUuidSqlFragment.js';
3
3
  import {
4
4
  ArrayToken,
5
5
  BinaryToken,
6
- BooleanToken,
7
6
  DateToken,
8
7
  FragmentToken,
9
8
  IdentifierToken,
@@ -17,8 +16,11 @@ import {
17
16
  UuidToken,
18
17
  } from '../tokens.js';
19
18
  import type {
19
+ ArraySqlToken,
20
20
  PrimitiveValueExpression,
21
+ SqlFragmentToken,
21
22
  SqlTag,
23
+ TypeNameIdentifier,
22
24
  ValueExpression,
23
25
  } from '../types.js';
24
26
  import { escapeLiteralValue } from '../utilities/escapeLiteralValue.js';
@@ -120,12 +122,15 @@ export const createSqlTag = <
120
122
  const typeAliases = configuration.typeAliases;
121
123
 
122
124
  return {
123
- array: (values, memberType) => {
125
+ array: <T extends TypeNameIdentifier>(
126
+ values: readonly PrimitiveValueExpression[],
127
+ memberType: SqlFragmentToken | T,
128
+ ) => {
124
129
  return Object.freeze({
125
130
  memberType,
126
131
  type: ArrayToken,
127
132
  values,
128
- });
133
+ }) as ArraySqlToken<T>;
129
134
  },
130
135
  binary: (data) => {
131
136
  return Object.freeze({
@@ -133,12 +138,6 @@ export const createSqlTag = <
133
138
  type: BinaryToken,
134
139
  });
135
140
  },
136
- boolean: (value) => {
137
- return Object.freeze({
138
- type: BooleanToken,
139
- value: value as boolean,
140
- });
141
- },
142
141
  date: (date) => {
143
142
  return Object.freeze({
144
143
  date,
@@ -1,6 +1,5 @@
1
1
  import { createArraySqlFragment } from '../sqlFragmentFactories/createArraySqlFragment.js';
2
2
  import { createBinarySqlFragment } from '../sqlFragmentFactories/createBinarySqlFragment.js';
3
- import { createBooleanSqlFragment } from '../sqlFragmentFactories/createBooleanSqlFragment.js';
4
3
  import { createDateSqlFragment } from '../sqlFragmentFactories/createDateSqlFragment.js';
5
4
  import { createFragmentSqlFragment } from '../sqlFragmentFactories/createFragmentSqlFragment.js';
6
5
  import { createIdentifierSqlFragment } from '../sqlFragmentFactories/createIdentifierSqlFragment.js';
@@ -14,7 +13,6 @@ import { createUuidSqlFragment } from '../sqlFragmentFactories/createUuidSqlFrag
14
13
  import {
15
14
  ArrayToken,
16
15
  BinaryToken,
17
- BooleanToken,
18
16
  DateToken,
19
17
  FragmentToken,
20
18
  IdentifierToken,
@@ -38,8 +36,6 @@ export const createSqlTokenSqlFragment = (
38
36
  return createArraySqlFragment(token, greatestParameterPosition);
39
37
  } else if (token.type === BinaryToken) {
40
38
  return createBinarySqlFragment(token, greatestParameterPosition);
41
- } else if (token.type === BooleanToken) {
42
- return createBooleanSqlFragment(token, greatestParameterPosition);
43
39
  } else if (token.type === DateToken) {
44
40
  return createDateSqlFragment(token, greatestParameterPosition);
45
41
  } else if (token.type === FragmentToken) {
package/src/index.ts CHANGED
@@ -3,7 +3,6 @@ export { createSqlTokenSqlFragment } from './factories/createSqlTokenSqlFragment
3
3
  export {
4
4
  ArrayToken,
5
5
  BinaryToken,
6
- BooleanToken,
7
6
  ComparisonPredicateToken,
8
7
  DateToken,
9
8
  FragmentToken,
@@ -20,7 +19,6 @@ export {
20
19
  export {
21
20
  type ArraySqlToken,
22
21
  type BinarySqlToken,
23
- type BooleanSqlToken,
24
22
  type DateSqlToken,
25
23
  type FragmentSqlToken,
26
24
  type IdentifierSqlToken,
package/src/tokens.ts CHANGED
@@ -1,6 +1,5 @@
1
1
  export const ArrayToken = Symbol.for('SLONIK_TOKEN_ARRAY');
2
2
  export const BinaryToken = Symbol.for('SLONIK_TOKEN_BINARY');
3
- export const BooleanToken = Symbol.for('SLONIK_TOKEN_BOOLEAN');
4
3
  export const ComparisonPredicateToken = Symbol.for(
5
4
  'SLONIK_TOKEN_COMPARISON_PREDICATE',
6
5
  );
package/src/types.ts CHANGED
@@ -4,8 +4,8 @@ import type { StandardSchemaV1 } from '@standard-schema/spec';
4
4
 
5
5
  export { type PrimitiveValueExpression } from '@slonik/types';
6
6
 
7
- export type ArraySqlToken = {
8
- readonly memberType: SqlFragmentToken | TypeNameIdentifier;
7
+ export type ArraySqlToken<T extends TypeNameIdentifier = TypeNameIdentifier> = {
8
+ readonly memberType: SqlFragmentToken | T;
9
9
  readonly type: typeof tokens.ArrayToken;
10
10
  readonly values: readonly PrimitiveValueExpression[];
11
11
  };
@@ -15,11 +15,6 @@ export type BinarySqlToken = {
15
15
  readonly type: typeof tokens.BinaryToken;
16
16
  };
17
17
 
18
- export type BooleanSqlToken = {
19
- readonly type: typeof tokens.BooleanToken;
20
- readonly value: boolean;
21
- };
22
-
23
18
  export type DateSqlToken = {
24
19
  readonly date: Date;
25
20
  readonly type: typeof tokens.DateToken;
@@ -98,12 +93,11 @@ export type SqlFragmentToken = {
98
93
  export type SqlTag<
99
94
  Z extends Record<string, StandardSchemaV1> = Record<string, StandardSchemaV1>,
100
95
  > = {
101
- array: (
96
+ array: <T extends TypeNameIdentifier>(
102
97
  values: readonly PrimitiveValueExpression[],
103
- memberType: SqlFragmentToken | TypeNameIdentifier,
104
- ) => ArraySqlToken;
98
+ memberType: SqlFragmentToken | T,
99
+ ) => ArraySqlToken<T>;
105
100
  binary: (data: Buffer) => BinarySqlToken;
106
- boolean: (value: boolean) => BooleanSqlToken;
107
101
  date: (date: Date) => DateSqlToken;
108
102
  fragment: (
109
103
  template: TemplateStringsArray,
@@ -149,9 +143,8 @@ export type SqlTag<
149
143
  };
150
144
 
151
145
  export type SqlToken =
152
- | ArraySqlToken
146
+ | ArraySqlToken<TypeNameIdentifier>
153
147
  | BinarySqlToken
154
- | BooleanSqlToken
155
148
  | DateSqlToken
156
149
  | FragmentSqlToken
157
150
  | IdentifierSqlToken
@@ -169,6 +162,24 @@ export type TimestampSqlToken = {
169
162
  readonly type: typeof tokens.TimestampToken;
170
163
  };
171
164
 
165
+ /**
166
+ * "string" type covers all type name identifiers – the literal values are added only to assist developer
167
+ * experience with auto suggestions for commonly used type name identifiers.
168
+ */
169
+ export type TypeNameIdentifier =
170
+ | 'bool'
171
+ | 'bytea'
172
+ | 'float4'
173
+ | 'float8'
174
+ | 'int2'
175
+ | 'int4'
176
+ | 'int8'
177
+ | 'json'
178
+ | 'text'
179
+ | 'timestamptz'
180
+ | 'uuid'
181
+ | string;
182
+
172
183
  export type UnnestSqlToken = {
173
184
  readonly columnTypes:
174
185
  | Array<[...string[], TypeNameIdentifier]>
@@ -186,21 +197,3 @@ export type ValueExpression =
186
197
  | PrimitiveValueExpression
187
198
  | SqlFragmentToken
188
199
  | SqlToken;
189
-
190
- /**
191
- * "string" type covers all type name identifiers – the literal values are added only to assist developer
192
- * experience with auto suggestions for commonly used type name identifiers.
193
- */
194
- type TypeNameIdentifier =
195
- | 'bool'
196
- | 'bytea'
197
- | 'float4'
198
- | 'float8'
199
- | 'int2'
200
- | 'int4'
201
- | 'int8'
202
- | 'json'
203
- | 'text'
204
- | 'timestamptz'
205
- | 'uuid'
206
- | string;
@@ -1,7 +1,6 @@
1
1
  import {
2
2
  ArrayToken,
3
3
  BinaryToken,
4
- BooleanToken,
5
4
  ComparisonPredicateToken,
6
5
  DateToken,
7
6
  FragmentToken,
@@ -22,7 +21,6 @@ import { UnexpectedStateError } from '@slonik/errors';
22
21
  const Tokens = [
23
22
  ArrayToken,
24
23
  BinaryToken,
25
- BooleanToken,
26
24
  ComparisonPredicateToken,
27
25
  DateToken,
28
26
  FragmentToken,
@@ -6,16 +6,14 @@ const stringify = configure({
6
6
  strict: true,
7
7
  });
8
8
 
9
- export const safeStringify = (
10
- subject: unknown,
11
- replacer?:
12
- | ((key: string, value: unknown) => unknown)
13
- | Array<number | string>
14
- | null
15
- | undefined,
16
- space?: number | string,
17
- ): string => {
18
- const result = stringify(subject, replacer, space);
9
+ export const safeStringify = (subject: unknown): string => {
10
+ try {
11
+ return JSON.stringify(subject);
12
+ } catch {
13
+ // Ignore
14
+ }
15
+
16
+ const result = stringify(subject);
19
17
 
20
18
  if (result === undefined) {
21
19
  throw new Error('Expected result to be string');
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=boolean.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"boolean.test.d.ts","sourceRoot":"","sources":["../../../src/factories/createSqlTag.test/boolean.test.ts"],"names":[],"mappings":""}
@@ -1,101 +0,0 @@
1
- import { FragmentToken } from '../../tokens.js';
2
- import { createSqlTag } from '../createSqlTag.js';
3
- import test from 'ava';
4
- const sql = createSqlTag();
5
- test('binds true boolean value', (t) => {
6
- const query = sql.fragment `SELECT ${sql.boolean(true)}`;
7
- t.deepEqual(query, {
8
- sql: 'SELECT $slonik_1::boolean',
9
- type: FragmentToken,
10
- values: [true],
11
- });
12
- });
13
- test('binds false boolean value', (t) => {
14
- const query = sql.fragment `SELECT ${sql.boolean(false)}`;
15
- t.deepEqual(query, {
16
- sql: 'SELECT $slonik_1::boolean',
17
- type: FragmentToken,
18
- values: [false],
19
- });
20
- });
21
- test('throws if value is a string', (t) => {
22
- const error = t.throws(() => {
23
- // @ts-expect-error - intentional
24
- sql.fragment `SELECT ${sql.boolean('true')}`;
25
- });
26
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
27
- });
28
- test('throws if value is a number', (t) => {
29
- const error = t.throws(() => {
30
- // @ts-expect-error - intentional
31
- sql.fragment `SELECT ${sql.boolean(1)}`;
32
- });
33
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
34
- });
35
- test('throws if value is zero', (t) => {
36
- const error = t.throws(() => {
37
- // @ts-expect-error - intentional
38
- sql.fragment `SELECT ${sql.boolean(0)}`;
39
- });
40
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
41
- });
42
- test('throws if value is null', (t) => {
43
- const error = t.throws(() => {
44
- // @ts-expect-error - intentional
45
- sql.fragment `SELECT ${sql.boolean(null)}`;
46
- });
47
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
48
- });
49
- test('throws if value is undefined', (t) => {
50
- const error = t.throws(() => {
51
- // @ts-expect-error - intentional
52
- sql.fragment `SELECT ${sql.boolean(undefined)}`;
53
- });
54
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
55
- });
56
- test('throws if value is an object', (t) => {
57
- const error = t.throws(() => {
58
- // @ts-expect-error - intentional
59
- sql.fragment `SELECT ${sql.boolean({})}`;
60
- });
61
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
62
- });
63
- test('throws if value is an array', (t) => {
64
- const error = t.throws(() => {
65
- // @ts-expect-error - intentional
66
- sql.fragment `SELECT ${sql.boolean([true])}`;
67
- });
68
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
69
- });
70
- test('throws if value is a function', (t) => {
71
- const error = t.throws(() => {
72
- // @ts-expect-error - intentional
73
- sql.fragment `SELECT ${sql.boolean(() => true)}`;
74
- });
75
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
76
- });
77
- test('works with multiple boolean values in a query', (t) => {
78
- const query = sql.fragment `SELECT ${sql.boolean(true)}, ${sql.boolean(false)}, ${sql.boolean(true)}`;
79
- t.deepEqual(query, {
80
- sql: 'SELECT $slonik_1::boolean, $slonik_2::boolean, $slonik_3::boolean',
81
- type: FragmentToken,
82
- values: [true, false, true],
83
- });
84
- });
85
- test('works in WHERE clause', (t) => {
86
- const query = sql.fragment `SELECT * FROM users WHERE active = ${sql.boolean(true)}`;
87
- t.deepEqual(query, {
88
- sql: 'SELECT * FROM users WHERE active = $slonik_1::boolean',
89
- type: FragmentToken,
90
- values: [true],
91
- });
92
- });
93
- test('works with NOT operator', (t) => {
94
- const query = sql.fragment `SELECT * FROM users WHERE NOT ${sql.boolean(false)}`;
95
- t.deepEqual(query, {
96
- sql: 'SELECT * FROM users WHERE NOT $slonik_1::boolean',
97
- type: FragmentToken,
98
- values: [false],
99
- });
100
- });
101
- //# sourceMappingURL=boolean.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"boolean.test.js","sourceRoot":"","sources":["../../../src/factories/createSqlTag.test/boolean.test.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import type { BooleanSqlToken, SqlFragmentToken } from '../types.js';
2
- export declare const createBooleanSqlFragment: (token: BooleanSqlToken, greatestParameterPosition: number) => SqlFragmentToken;
3
- //# sourceMappingURL=createBooleanSqlFragment.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createBooleanSqlFragment.d.ts","sourceRoot":"","sources":["../../src/sqlFragmentFactories/createBooleanSqlFragment.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAIrE,eAAO,MAAM,wBAAwB,GACnC,OAAO,eAAe,EACtB,2BAA2B,MAAM,KAChC,gBAUF,CAAC"}
@@ -1,14 +0,0 @@
1
- import { FragmentToken } from '../tokens.js';
2
- import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
3
- import { InvalidInputError } from '@slonik/errors';
4
- export const createBooleanSqlFragment = (token, greatestParameterPosition) => {
5
- if (typeof token.value !== 'boolean') {
6
- throw new InvalidInputError('Boolean parameter value must be a boolean.');
7
- }
8
- return {
9
- sql: formatSlonikPlaceholder(greatestParameterPosition + 1) + '::boolean',
10
- type: FragmentToken,
11
- values: [token.value],
12
- };
13
- };
14
- //# sourceMappingURL=createBooleanSqlFragment.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"createBooleanSqlFragment.js","sourceRoot":"","sources":["../../src/sqlFragmentFactories/createBooleanSqlFragment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,KAAsB,EACtB,yBAAiC,EACf,EAAE;IACpB,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,IAAI,iBAAiB,CAAC,4CAA4C,CAAC,CAAC;IAC5E,CAAC;IAED,OAAO;QACL,GAAG,EAAE,uBAAuB,CAAC,yBAAyB,GAAG,CAAC,CAAC,GAAG,WAAW;QACzE,IAAI,EAAE,aAAa;QACnB,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;KACtB,CAAC;AACJ,CAAC,CAAC"}
@@ -1,127 +0,0 @@
1
- import { FragmentToken } from '../../tokens.js';
2
- import { createSqlTag } from '../createSqlTag.js';
3
- import test from 'ava';
4
-
5
- const sql = createSqlTag();
6
-
7
- test('binds true boolean value', (t) => {
8
- const query = sql.fragment`SELECT ${sql.boolean(true)}`;
9
-
10
- t.deepEqual(query, {
11
- sql: 'SELECT $slonik_1::boolean',
12
- type: FragmentToken,
13
- values: [true],
14
- });
15
- });
16
-
17
- test('binds false boolean value', (t) => {
18
- const query = sql.fragment`SELECT ${sql.boolean(false)}`;
19
-
20
- t.deepEqual(query, {
21
- sql: 'SELECT $slonik_1::boolean',
22
- type: FragmentToken,
23
- values: [false],
24
- });
25
- });
26
-
27
- test('throws if value is a string', (t) => {
28
- const error = t.throws(() => {
29
- // @ts-expect-error - intentional
30
- sql.fragment`SELECT ${sql.boolean('true')}`;
31
- });
32
-
33
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
34
- });
35
-
36
- test('throws if value is a number', (t) => {
37
- const error = t.throws(() => {
38
- // @ts-expect-error - intentional
39
- sql.fragment`SELECT ${sql.boolean(1)}`;
40
- });
41
-
42
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
43
- });
44
-
45
- test('throws if value is zero', (t) => {
46
- const error = t.throws(() => {
47
- // @ts-expect-error - intentional
48
- sql.fragment`SELECT ${sql.boolean(0)}`;
49
- });
50
-
51
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
52
- });
53
-
54
- test('throws if value is null', (t) => {
55
- const error = t.throws(() => {
56
- // @ts-expect-error - intentional
57
- sql.fragment`SELECT ${sql.boolean(null)}`;
58
- });
59
-
60
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
61
- });
62
-
63
- test('throws if value is undefined', (t) => {
64
- const error = t.throws(() => {
65
- // @ts-expect-error - intentional
66
- sql.fragment`SELECT ${sql.boolean(undefined)}`;
67
- });
68
-
69
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
70
- });
71
-
72
- test('throws if value is an object', (t) => {
73
- const error = t.throws(() => {
74
- // @ts-expect-error - intentional
75
- sql.fragment`SELECT ${sql.boolean({})}`;
76
- });
77
-
78
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
79
- });
80
-
81
- test('throws if value is an array', (t) => {
82
- const error = t.throws(() => {
83
- // @ts-expect-error - intentional
84
- sql.fragment`SELECT ${sql.boolean([true])}`;
85
- });
86
-
87
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
88
- });
89
-
90
- test('throws if value is a function', (t) => {
91
- const error = t.throws(() => {
92
- // @ts-expect-error - intentional
93
- sql.fragment`SELECT ${sql.boolean(() => true)}`;
94
- });
95
-
96
- t.is(error?.message, 'Boolean parameter value must be a boolean.');
97
- });
98
-
99
- test('works with multiple boolean values in a query', (t) => {
100
- const query = sql.fragment`SELECT ${sql.boolean(true)}, ${sql.boolean(false)}, ${sql.boolean(true)}`;
101
-
102
- t.deepEqual(query, {
103
- sql: 'SELECT $slonik_1::boolean, $slonik_2::boolean, $slonik_3::boolean',
104
- type: FragmentToken,
105
- values: [true, false, true],
106
- });
107
- });
108
-
109
- test('works in WHERE clause', (t) => {
110
- const query = sql.fragment`SELECT * FROM users WHERE active = ${sql.boolean(true)}`;
111
-
112
- t.deepEqual(query, {
113
- sql: 'SELECT * FROM users WHERE active = $slonik_1::boolean',
114
- type: FragmentToken,
115
- values: [true],
116
- });
117
- });
118
-
119
- test('works with NOT operator', (t) => {
120
- const query = sql.fragment`SELECT * FROM users WHERE NOT ${sql.boolean(false)}`;
121
-
122
- t.deepEqual(query, {
123
- sql: 'SELECT * FROM users WHERE NOT $slonik_1::boolean',
124
- type: FragmentToken,
125
- values: [false],
126
- });
127
- });
@@ -1,19 +0,0 @@
1
- import { FragmentToken } from '../tokens.js';
2
- import type { BooleanSqlToken, SqlFragmentToken } from '../types.js';
3
- import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
4
- import { InvalidInputError } from '@slonik/errors';
5
-
6
- export const createBooleanSqlFragment = (
7
- token: BooleanSqlToken,
8
- greatestParameterPosition: number,
9
- ): SqlFragmentToken => {
10
- if (typeof token.value !== 'boolean') {
11
- throw new InvalidInputError('Boolean parameter value must be a boolean.');
12
- }
13
-
14
- return {
15
- sql: formatSlonikPlaceholder(greatestParameterPosition + 1) + '::boolean',
16
- type: FragmentToken,
17
- values: [token.value],
18
- };
19
- };