@slonik/sql-tag 47.3.2 → 48.1.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.
- package/dist/Logger.js +2 -5
- package/dist/Logger.js.map +1 -1
- package/dist/factories/createPrimitiveValueExpressions.d.ts +1 -1
- package/dist/factories/createPrimitiveValueExpressions.d.ts.map +1 -1
- package/dist/factories/createPrimitiveValueExpressions.js +8 -12
- package/dist/factories/createPrimitiveValueExpressions.js.map +1 -1
- package/dist/factories/createSqlTag.d.ts +3 -3
- package/dist/factories/createSqlTag.d.ts.map +1 -1
- package/dist/factories/createSqlTag.js +39 -43
- package/dist/factories/createSqlTag.js.map +1 -1
- package/dist/factories/createSqlTag.test/array.test.js +18 -23
- package/dist/factories/createSqlTag.test/array.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/date.test.js +7 -12
- package/dist/factories/createSqlTag.test/date.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/identifier.test.js +9 -14
- package/dist/factories/createSqlTag.test/identifier.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/interval.test.js +9 -14
- package/dist/factories/createSqlTag.test/interval.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/join.test.js +21 -26
- package/dist/factories/createSqlTag.test/join.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/json.test.js +21 -26
- package/dist/factories/createSqlTag.test/json.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/jsonb.test.js +21 -26
- package/dist/factories/createSqlTag.test/jsonb.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/literalValue.test.js +6 -11
- package/dist/factories/createSqlTag.test/literalValue.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/sql.test.js +17 -22
- package/dist/factories/createSqlTag.test/sql.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/timestamp.test.js +7 -12
- package/dist/factories/createSqlTag.test/timestamp.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/type.test.js +7 -12
- package/dist/factories/createSqlTag.test/type.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/typeAlias.test.js +12 -17
- package/dist/factories/createSqlTag.test/typeAlias.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/unnest.test.js +19 -24
- package/dist/factories/createSqlTag.test/unnest.test.js.map +1 -1
- package/dist/factories/createSqlTag.test/uuid.test.js +7 -12
- package/dist/factories/createSqlTag.test/uuid.test.js.map +1 -1
- package/dist/factories/createSqlTokenSqlFragment.d.ts +1 -1
- package/dist/factories/createSqlTokenSqlFragment.d.ts.map +1 -1
- package/dist/factories/createSqlTokenSqlFragment.js +55 -59
- package/dist/factories/createSqlTokenSqlFragment.js.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -24
- package/dist/index.js.map +1 -1
- package/dist/regexRules/slonikPlaceholderRegexRule.js +1 -4
- package/dist/regexRules/slonikPlaceholderRegexRule.js.map +1 -1
- package/dist/sqlFragmentFactories/createArraySqlFragment.d.ts +1 -1
- package/dist/sqlFragmentFactories/createArraySqlFragment.d.ts.map +1 -1
- package/dist/sqlFragmentFactories/createArraySqlFragment.js +18 -22
- package/dist/sqlFragmentFactories/createArraySqlFragment.js.map +1 -1
- package/dist/sqlFragmentFactories/createBinarySqlFragment.d.ts +1 -1
- package/dist/sqlFragmentFactories/createBinarySqlFragment.d.ts.map +1 -1
- package/dist/sqlFragmentFactories/createBinarySqlFragment.js +7 -11
- package/dist/sqlFragmentFactories/createBinarySqlFragment.js.map +1 -1
- package/dist/sqlFragmentFactories/createDateSqlFragment.d.ts +1 -1
- package/dist/sqlFragmentFactories/createDateSqlFragment.d.ts.map +1 -1
- package/dist/sqlFragmentFactories/createDateSqlFragment.js +7 -11
- package/dist/sqlFragmentFactories/createDateSqlFragment.js.map +1 -1
- package/dist/sqlFragmentFactories/createFragmentSqlFragment.d.ts +1 -1
- package/dist/sqlFragmentFactories/createFragmentSqlFragment.d.ts.map +1 -1
- package/dist/sqlFragmentFactories/createFragmentSqlFragment.js +10 -14
- package/dist/sqlFragmentFactories/createFragmentSqlFragment.js.map +1 -1
- package/dist/sqlFragmentFactories/createIdentifierSqlFragment.d.ts +1 -1
- package/dist/sqlFragmentFactories/createIdentifierSqlFragment.d.ts.map +1 -1
- package/dist/sqlFragmentFactories/createIdentifierSqlFragment.js +7 -11
- package/dist/sqlFragmentFactories/createIdentifierSqlFragment.js.map +1 -1
- package/dist/sqlFragmentFactories/createIntervalSqlFragment.d.ts +1 -1
- package/dist/sqlFragmentFactories/createIntervalSqlFragment.d.ts.map +1 -1
- package/dist/sqlFragmentFactories/createIntervalSqlFragment.js +16 -20
- package/dist/sqlFragmentFactories/createIntervalSqlFragment.js.map +1 -1
- package/dist/sqlFragmentFactories/createJsonSqlFragment.d.ts +1 -1
- package/dist/sqlFragmentFactories/createJsonSqlFragment.d.ts.map +1 -1
- package/dist/sqlFragmentFactories/createJsonSqlFragment.js +18 -22
- package/dist/sqlFragmentFactories/createJsonSqlFragment.js.map +1 -1
- package/dist/sqlFragmentFactories/createListSqlFragment.d.ts +1 -1
- package/dist/sqlFragmentFactories/createListSqlFragment.d.ts.map +1 -1
- package/dist/sqlFragmentFactories/createListSqlFragment.js +16 -20
- package/dist/sqlFragmentFactories/createListSqlFragment.js.map +1 -1
- package/dist/sqlFragmentFactories/createQuerySqlFragment.d.ts +1 -1
- package/dist/sqlFragmentFactories/createQuerySqlFragment.d.ts.map +1 -1
- package/dist/sqlFragmentFactories/createQuerySqlFragment.js +10 -14
- package/dist/sqlFragmentFactories/createQuerySqlFragment.js.map +1 -1
- package/dist/sqlFragmentFactories/createTimestampSqlFragment.d.ts +1 -1
- package/dist/sqlFragmentFactories/createTimestampSqlFragment.d.ts.map +1 -1
- package/dist/sqlFragmentFactories/createTimestampSqlFragment.js +8 -12
- package/dist/sqlFragmentFactories/createTimestampSqlFragment.js.map +1 -1
- package/dist/sqlFragmentFactories/createUnnestSqlFragment.d.ts +1 -1
- package/dist/sqlFragmentFactories/createUnnestSqlFragment.d.ts.map +1 -1
- package/dist/sqlFragmentFactories/createUnnestSqlFragment.js +17 -21
- package/dist/sqlFragmentFactories/createUnnestSqlFragment.js.map +1 -1
- package/dist/sqlFragmentFactories/createUuidSqlFragment.d.ts +1 -1
- package/dist/sqlFragmentFactories/createUuidSqlFragment.d.ts.map +1 -1
- package/dist/sqlFragmentFactories/createUuidSqlFragment.js +7 -11
- package/dist/sqlFragmentFactories/createUuidSqlFragment.js.map +1 -1
- package/dist/tokens.js +14 -17
- package/dist/tokens.js.map +1 -1
- package/dist/types.d.ts +6 -6
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -2
- package/dist/utilities/countArrayDimensions.js +1 -5
- package/dist/utilities/countArrayDimensions.js.map +1 -1
- package/dist/utilities/countArrayDimensions.test.js +6 -11
- package/dist/utilities/countArrayDimensions.test.js.map +1 -1
- package/dist/utilities/escapeIdentifier.js +1 -5
- package/dist/utilities/escapeIdentifier.js.map +1 -1
- package/dist/utilities/escapeIdentifier.test.js +6 -11
- package/dist/utilities/escapeIdentifier.test.js.map +1 -1
- package/dist/utilities/escapeLiteralValue.js +1 -5
- package/dist/utilities/escapeLiteralValue.js.map +1 -1
- package/dist/utilities/escapeLiteralValue.test.js +7 -12
- package/dist/utilities/escapeLiteralValue.test.js.map +1 -1
- package/dist/utilities/formatSlonikPlaceholder.js +1 -5
- package/dist/utilities/formatSlonikPlaceholder.js.map +1 -1
- package/dist/utilities/hasOwnProperty.js +1 -5
- package/dist/utilities/hasOwnProperty.js.map +1 -1
- package/dist/utilities/isPlainObject.js +1 -5
- package/dist/utilities/isPlainObject.js.map +1 -1
- package/dist/utilities/isPrimitiveValueExpression.js +1 -5
- package/dist/utilities/isPrimitiveValueExpression.js.map +1 -1
- package/dist/utilities/isSqlToken.d.ts +1 -1
- package/dist/utilities/isSqlToken.d.ts.map +1 -1
- package/dist/utilities/isSqlToken.js +20 -24
- package/dist/utilities/isSqlToken.js.map +1 -1
- package/dist/utilities/safeStringify.js +3 -7
- package/dist/utilities/safeStringify.js.map +1 -1
- package/dist/utilities/stripArrayNotation.js +1 -5
- package/dist/utilities/stripArrayNotation.js.map +1 -1
- package/dist/utilities/stripArrayNotation.test.js +6 -11
- package/dist/utilities/stripArrayNotation.test.js.map +1 -1
- package/package.json +17 -36
- package/src/factories/createPrimitiveValueExpressions.ts +3 -3
- package/src/factories/createSqlTag.test/array.test.ts +2 -2
- package/src/factories/createSqlTag.test/date.test.ts +2 -2
- package/src/factories/createSqlTag.test/identifier.test.ts +2 -2
- package/src/factories/createSqlTag.test/interval.test.ts +2 -2
- package/src/factories/createSqlTag.test/join.test.ts +2 -2
- package/src/factories/createSqlTag.test/json.test.ts +2 -2
- package/src/factories/createSqlTag.test/jsonb.test.ts +2 -2
- package/src/factories/createSqlTag.test/literalValue.test.ts +2 -2
- package/src/factories/createSqlTag.test/sql.test.ts +4 -3
- package/src/factories/createSqlTag.test/timestamp.test.ts +2 -2
- package/src/factories/createSqlTag.test/type.test.ts +1 -1
- package/src/factories/createSqlTag.test/typeAlias.test.ts +3 -2
- package/src/factories/createSqlTag.test/unnest.test.ts +2 -2
- package/src/factories/createSqlTag.test/uuid.test.ts +2 -2
- package/src/factories/createSqlTag.ts +17 -16
- package/src/factories/createSqlTokenSqlFragment.ts +14 -14
- package/src/index.ts +5 -5
- package/src/sqlFragmentFactories/createArraySqlFragment.ts +7 -7
- package/src/sqlFragmentFactories/createBinarySqlFragment.ts +3 -3
- package/src/sqlFragmentFactories/createDateSqlFragment.ts +3 -3
- package/src/sqlFragmentFactories/createFragmentSqlFragment.ts +4 -4
- package/src/sqlFragmentFactories/createIdentifierSqlFragment.ts +3 -3
- package/src/sqlFragmentFactories/createIntervalSqlFragment.ts +3 -3
- package/src/sqlFragmentFactories/createJsonSqlFragment.ts +10 -10
- package/src/sqlFragmentFactories/createListSqlFragment.ts +11 -11
- package/src/sqlFragmentFactories/createQuerySqlFragment.ts +4 -4
- package/src/sqlFragmentFactories/createTimestampSqlFragment.ts +3 -3
- package/src/sqlFragmentFactories/createUnnestSqlFragment.ts +11 -11
- package/src/sqlFragmentFactories/createUuidSqlFragment.ts +3 -3
- package/src/types.ts +9 -6
- package/src/utilities/countArrayDimensions.test.ts +1 -1
- package/src/utilities/escapeIdentifier.test.ts +1 -1
- package/src/utilities/escapeLiteralValue.test.ts +1 -1
- package/src/utilities/isSqlToken.ts +3 -3
- package/src/utilities/stripArrayNotation.test.ts +1 -1
|
@@ -1,18 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.safeStringify = void 0;
|
|
4
|
-
const safe_stable_stringify_1 = require("safe-stable-stringify");
|
|
5
|
-
const stringify = (0, safe_stable_stringify_1.configure)({
|
|
1
|
+
import { configure } from 'safe-stable-stringify';
|
|
2
|
+
const stringify = configure({
|
|
6
3
|
bigint: true,
|
|
7
4
|
circularValue: '[Circular]',
|
|
8
5
|
strict: true,
|
|
9
6
|
});
|
|
10
|
-
const safeStringify = (subject, replacer, space) => {
|
|
7
|
+
export const safeStringify = (subject, replacer, space) => {
|
|
11
8
|
const result = stringify(subject, replacer, space);
|
|
12
9
|
if (result === undefined) {
|
|
13
10
|
throw new Error('Expected result to be string');
|
|
14
11
|
}
|
|
15
12
|
return result;
|
|
16
13
|
};
|
|
17
|
-
exports.safeStringify = safeStringify;
|
|
18
14
|
//# sourceMappingURL=safeStringify.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safeStringify.js","sourceRoot":"","sources":["../../src/utilities/safeStringify.ts"],"names":[],"mappings":"
|
|
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,12 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.stripArrayNotation = void 0;
|
|
4
|
-
const stripArrayNotation = (identifierName) => {
|
|
1
|
+
export const stripArrayNotation = (identifierName) => {
|
|
5
2
|
let tail = identifierName.trim();
|
|
6
3
|
while (tail.endsWith('[]')) {
|
|
7
4
|
tail = tail.trim().slice(0, -2);
|
|
8
5
|
}
|
|
9
6
|
return tail;
|
|
10
7
|
};
|
|
11
|
-
exports.stripArrayNotation = stripArrayNotation;
|
|
12
8
|
//# sourceMappingURL=stripArrayNotation.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stripArrayNotation.js","sourceRoot":"","sources":["../../src/utilities/stripArrayNotation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"stripArrayNotation.js","sourceRoot":"","sources":["../../src/utilities/stripArrayNotation.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,cAAsB,EAAU,EAAE;IACnE,IAAI,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC;IAEjC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3B,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
|
|
@@ -1,13 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
const ava_1 = __importDefault(require("ava"));
|
|
8
|
-
(0, ava_1.default)('strips array notation', (t) => {
|
|
9
|
-
t.is((0, stripArrayNotation_1.stripArrayNotation)('foo'), 'foo');
|
|
10
|
-
t.is((0, stripArrayNotation_1.stripArrayNotation)('foo[]'), 'foo');
|
|
11
|
-
t.is((0, stripArrayNotation_1.stripArrayNotation)('foo[][]'), 'foo');
|
|
1
|
+
import { stripArrayNotation } from './stripArrayNotation.js';
|
|
2
|
+
import test from 'ava';
|
|
3
|
+
test('strips array notation', (t) => {
|
|
4
|
+
t.is(stripArrayNotation('foo'), 'foo');
|
|
5
|
+
t.is(stripArrayNotation('foo[]'), 'foo');
|
|
6
|
+
t.is(stripArrayNotation('foo[][]'), 'foo');
|
|
12
7
|
});
|
|
13
8
|
//# sourceMappingURL=stripArrayNotation.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stripArrayNotation.test.js","sourceRoot":"","sources":["../../src/utilities/stripArrayNotation.test.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"stripArrayNotation.test.js","sourceRoot":"","sources":["../../src/utilities/stripArrayNotation.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,IAAI,MAAM,KAAK,CAAC;AAEvB,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC,EAAE,EAAE;IAClC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAC;IACzC,CAAC,CAAC,EAAE,CAAC,kBAAkB,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -11,31 +11,32 @@
|
|
|
11
11
|
"files": [
|
|
12
12
|
"src/**/*.test.ts"
|
|
13
13
|
],
|
|
14
|
-
"
|
|
15
|
-
"
|
|
14
|
+
"nodeArguments": [
|
|
15
|
+
"--import=tsimp"
|
|
16
16
|
]
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
|
-
"@slonik/errors": "^
|
|
20
|
-
"@slonik/types": "^
|
|
19
|
+
"@slonik/errors": "^48.1.0",
|
|
20
|
+
"@slonik/types": "^48.1.0",
|
|
21
21
|
"roarr": "^7.21.1",
|
|
22
22
|
"safe-stable-stringify": "^2.5.0",
|
|
23
|
-
"serialize-error": "^
|
|
23
|
+
"serialize-error": "^12.0.0",
|
|
24
|
+
"zod": "^3.25.7"
|
|
24
25
|
},
|
|
25
26
|
"description": "A Node.js PostgreSQL client with strict types, detailed logging and assertions.",
|
|
26
27
|
"devDependencies": {
|
|
27
|
-
"@
|
|
28
|
+
"@standard-schema/spec": "^1.0.0",
|
|
29
|
+
"@types/node": "^22.15.19",
|
|
28
30
|
"ava": "^6.3.0",
|
|
29
|
-
"cspell": "^
|
|
30
|
-
"eslint": "9.
|
|
31
|
-
"
|
|
32
|
-
"ts-node": "^10.9.1",
|
|
31
|
+
"cspell": "^9.0.1",
|
|
32
|
+
"eslint": "9.27.0",
|
|
33
|
+
"tsimp": "^2.0.12",
|
|
33
34
|
"typescript": "^5.8.3",
|
|
34
|
-
"
|
|
35
|
-
"@slonik/eslint-config": "^
|
|
35
|
+
"typescript-eslint": "^8.32.1",
|
|
36
|
+
"@slonik/eslint-config": "^48.1.0"
|
|
36
37
|
},
|
|
37
38
|
"engines": {
|
|
38
|
-
"node": ">=
|
|
39
|
+
"node": ">=24"
|
|
39
40
|
},
|
|
40
41
|
"files": [
|
|
41
42
|
"./src",
|
|
@@ -49,39 +50,19 @@
|
|
|
49
50
|
"license": "BSD-3-Clause",
|
|
50
51
|
"main": "./dist/index.js",
|
|
51
52
|
"name": "@slonik/sql-tag",
|
|
52
|
-
"nyc": {
|
|
53
|
-
"all": true,
|
|
54
|
-
"exclude": [
|
|
55
|
-
"**/*.d.ts"
|
|
56
|
-
],
|
|
57
|
-
"include": [
|
|
58
|
-
"src/**/*.ts"
|
|
59
|
-
],
|
|
60
|
-
"reporter": [
|
|
61
|
-
"html",
|
|
62
|
-
"text-summary"
|
|
63
|
-
],
|
|
64
|
-
"require": [
|
|
65
|
-
"ts-node/register/transpile-only"
|
|
66
|
-
],
|
|
67
|
-
"silent": true,
|
|
68
|
-
"sourceMap": false
|
|
69
|
-
},
|
|
70
|
-
"peerDependencies": {
|
|
71
|
-
"zod": "^3"
|
|
72
|
-
},
|
|
73
53
|
"repository": {
|
|
74
54
|
"type": "git",
|
|
75
55
|
"url": "https://github.com/gajus/slonik"
|
|
76
56
|
},
|
|
57
|
+
"type": "module",
|
|
77
58
|
"types": "./dist/index.d.ts",
|
|
78
|
-
"version": "
|
|
59
|
+
"version": "48.1.0",
|
|
79
60
|
"scripts": {
|
|
80
61
|
"build": "rm -fr ./dist && tsc --project ./tsconfig.json",
|
|
81
62
|
"lint": "npm run lint:cspell && npm run lint:eslint && npm run lint:tsc",
|
|
82
63
|
"lint:cspell": "cspell . --no-progress --gitignore",
|
|
83
64
|
"lint:eslint": "eslint --cache ./src",
|
|
84
65
|
"lint:tsc": "tsc --noEmit",
|
|
85
|
-
"test": "
|
|
66
|
+
"test": "ava --verbose --serial"
|
|
86
67
|
}
|
|
87
68
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Logger } from '../Logger';
|
|
2
|
-
import {
|
|
3
|
-
import { safeStringify } from '../utilities/safeStringify';
|
|
1
|
+
import { Logger } from '../Logger.js';
|
|
2
|
+
import type { PrimitiveValueExpression } from '../types.js';
|
|
3
|
+
import { safeStringify } from '../utilities/safeStringify.js';
|
|
4
4
|
import { UnexpectedStateError } from '@slonik/errors';
|
|
5
5
|
|
|
6
6
|
const log = Logger.child({
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { FragmentToken } from '../../tokens';
|
|
2
|
-
import { createSqlTag } from '../createSqlTag';
|
|
1
|
+
import { FragmentToken } from '../../tokens.js';
|
|
2
|
+
import { createSqlTag } from '../createSqlTag.js';
|
|
3
3
|
import { InvalidInputError } from '@slonik/errors';
|
|
4
|
-
import anyTest
|
|
4
|
+
import anyTest from 'ava';
|
|
5
|
+
import type { TestFn } from 'ava';
|
|
5
6
|
import { ROARR } from 'roarr';
|
|
6
7
|
|
|
7
8
|
const test = anyTest as TestFn<{
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import { createSqlTag } from '../createSqlTag';
|
|
2
|
-
import anyTest
|
|
1
|
+
import { createSqlTag } from '../createSqlTag.js';
|
|
2
|
+
import anyTest from 'ava';
|
|
3
|
+
import type { TestFn } from 'ava';
|
|
3
4
|
import { ROARR } from 'roarr';
|
|
4
5
|
import { z } from 'zod';
|
|
5
6
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Logger } from '../Logger';
|
|
2
|
-
import {
|
|
1
|
+
import { Logger } from '../Logger.js';
|
|
2
|
+
import type { UUID } from '../sqlFragmentFactories/createUuidSqlFragment.js';
|
|
3
3
|
import {
|
|
4
4
|
ArrayToken,
|
|
5
5
|
BinaryToken,
|
|
@@ -14,20 +14,21 @@ import {
|
|
|
14
14
|
TimestampToken,
|
|
15
15
|
UnnestToken,
|
|
16
16
|
UuidToken,
|
|
17
|
-
} from '../tokens';
|
|
18
|
-
import {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
} from '../types';
|
|
23
|
-
import { escapeLiteralValue } from '../utilities/escapeLiteralValue';
|
|
24
|
-
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder';
|
|
25
|
-
import { isPrimitiveValueExpression } from '../utilities/isPrimitiveValueExpression';
|
|
26
|
-
import { isSqlToken } from '../utilities/isSqlToken';
|
|
27
|
-
import { safeStringify } from '../utilities/safeStringify';
|
|
28
|
-
import { createSqlTokenSqlFragment } from './createSqlTokenSqlFragment';
|
|
17
|
+
} from '../tokens.js';
|
|
18
|
+
import type {
|
|
19
|
+
PrimitiveValueExpression,
|
|
20
|
+
SqlTag,
|
|
21
|
+
ValueExpression,
|
|
22
|
+
} from '../types.js';
|
|
23
|
+
import { escapeLiteralValue } from '../utilities/escapeLiteralValue.js';
|
|
24
|
+
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
|
|
25
|
+
import { isPrimitiveValueExpression } from '../utilities/isPrimitiveValueExpression.js';
|
|
26
|
+
import { isSqlToken } from '../utilities/isSqlToken.js';
|
|
27
|
+
import { safeStringify } from '../utilities/safeStringify.js';
|
|
28
|
+
import { createSqlTokenSqlFragment } from './createSqlTokenSqlFragment.js';
|
|
29
29
|
import { InvalidInputError } from '@slonik/errors';
|
|
30
|
-
import {
|
|
30
|
+
import type { StandardSchemaV1 } from '@standard-schema/spec';
|
|
31
|
+
import { z } from 'zod';
|
|
31
32
|
|
|
32
33
|
const log = Logger.child({
|
|
33
34
|
namespace: 'sql',
|
|
@@ -108,7 +109,7 @@ const createFragment = (
|
|
|
108
109
|
|
|
109
110
|
export const createSqlTag = <
|
|
110
111
|
K extends PropertyKey,
|
|
111
|
-
P extends
|
|
112
|
+
P extends StandardSchemaV1,
|
|
112
113
|
Z extends Record<K, P>,
|
|
113
114
|
>(
|
|
114
115
|
configuration: {
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { createArraySqlFragment } from '../sqlFragmentFactories/createArraySqlFragment';
|
|
2
|
-
import { createBinarySqlFragment } from '../sqlFragmentFactories/createBinarySqlFragment';
|
|
3
|
-
import { createDateSqlFragment } from '../sqlFragmentFactories/createDateSqlFragment';
|
|
4
|
-
import { createFragmentSqlFragment } from '../sqlFragmentFactories/createFragmentSqlFragment';
|
|
5
|
-
import { createIdentifierSqlFragment } from '../sqlFragmentFactories/createIdentifierSqlFragment';
|
|
6
|
-
import { createIntervalSqlFragment } from '../sqlFragmentFactories/createIntervalSqlFragment';
|
|
7
|
-
import { createJsonSqlFragment } from '../sqlFragmentFactories/createJsonSqlFragment';
|
|
8
|
-
import { createListSqlFragment } from '../sqlFragmentFactories/createListSqlFragment';
|
|
9
|
-
import { createQuerySqlFragment } from '../sqlFragmentFactories/createQuerySqlFragment';
|
|
10
|
-
import { createTimestampSqlFragment } from '../sqlFragmentFactories/createTimestampSqlFragment';
|
|
11
|
-
import { createUnnestSqlFragment } from '../sqlFragmentFactories/createUnnestSqlFragment';
|
|
12
|
-
import { createUuidSqlFragment } from '../sqlFragmentFactories/createUuidSqlFragment';
|
|
1
|
+
import { createArraySqlFragment } from '../sqlFragmentFactories/createArraySqlFragment.js';
|
|
2
|
+
import { createBinarySqlFragment } from '../sqlFragmentFactories/createBinarySqlFragment.js';
|
|
3
|
+
import { createDateSqlFragment } from '../sqlFragmentFactories/createDateSqlFragment.js';
|
|
4
|
+
import { createFragmentSqlFragment } from '../sqlFragmentFactories/createFragmentSqlFragment.js';
|
|
5
|
+
import { createIdentifierSqlFragment } from '../sqlFragmentFactories/createIdentifierSqlFragment.js';
|
|
6
|
+
import { createIntervalSqlFragment } from '../sqlFragmentFactories/createIntervalSqlFragment.js';
|
|
7
|
+
import { createJsonSqlFragment } from '../sqlFragmentFactories/createJsonSqlFragment.js';
|
|
8
|
+
import { createListSqlFragment } from '../sqlFragmentFactories/createListSqlFragment.js';
|
|
9
|
+
import { createQuerySqlFragment } from '../sqlFragmentFactories/createQuerySqlFragment.js';
|
|
10
|
+
import { createTimestampSqlFragment } from '../sqlFragmentFactories/createTimestampSqlFragment.js';
|
|
11
|
+
import { createUnnestSqlFragment } from '../sqlFragmentFactories/createUnnestSqlFragment.js';
|
|
12
|
+
import { createUuidSqlFragment } from '../sqlFragmentFactories/createUuidSqlFragment.js';
|
|
13
13
|
import {
|
|
14
14
|
ArrayToken,
|
|
15
15
|
BinaryToken,
|
|
@@ -24,8 +24,8 @@ import {
|
|
|
24
24
|
TimestampToken,
|
|
25
25
|
UnnestToken,
|
|
26
26
|
UuidToken,
|
|
27
|
-
} from '../tokens';
|
|
28
|
-
import {
|
|
27
|
+
} from '../tokens.js';
|
|
28
|
+
import type { SqlFragmentToken, SqlToken as SqlTokenType } from '../types.js';
|
|
29
29
|
import { UnexpectedStateError } from '@slonik/errors';
|
|
30
30
|
|
|
31
31
|
export const createSqlTokenSqlFragment = (
|
package/src/index.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { createSqlTag } from './factories/createSqlTag';
|
|
2
|
-
export { createSqlTokenSqlFragment } from './factories/createSqlTokenSqlFragment';
|
|
1
|
+
export { createSqlTag } from './factories/createSqlTag.js';
|
|
2
|
+
export { createSqlTokenSqlFragment } from './factories/createSqlTokenSqlFragment.js';
|
|
3
3
|
export {
|
|
4
4
|
ArrayToken,
|
|
5
5
|
BinaryToken,
|
|
@@ -15,7 +15,7 @@ export {
|
|
|
15
15
|
TimestampToken,
|
|
16
16
|
UnnestToken,
|
|
17
17
|
UuidToken,
|
|
18
|
-
} from './tokens';
|
|
18
|
+
} from './tokens.js';
|
|
19
19
|
export {
|
|
20
20
|
type ArraySqlToken,
|
|
21
21
|
type BinarySqlToken,
|
|
@@ -37,5 +37,5 @@ export {
|
|
|
37
37
|
type UnnestSqlToken,
|
|
38
38
|
type UuidSqlToken,
|
|
39
39
|
type ValueExpression,
|
|
40
|
-
} from './types';
|
|
41
|
-
export { isSqlToken } from './utilities/isSqlToken';
|
|
40
|
+
} from './types.js';
|
|
41
|
+
export { isSqlToken } from './utilities/isSqlToken.js';
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { createSqlTokenSqlFragment } from '../factories/createSqlTokenSqlFragment';
|
|
2
|
-
import { FragmentToken } from '../tokens';
|
|
3
|
-
import {
|
|
4
|
-
import { escapeIdentifier } from '../utilities/escapeIdentifier';
|
|
5
|
-
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder';
|
|
6
|
-
import { isPrimitiveValueExpression } from '../utilities/isPrimitiveValueExpression';
|
|
7
|
-
import { isSqlToken } from '../utilities/isSqlToken';
|
|
1
|
+
import { createSqlTokenSqlFragment } from '../factories/createSqlTokenSqlFragment.js';
|
|
2
|
+
import { FragmentToken } from '../tokens.js';
|
|
3
|
+
import type { ArraySqlToken, SqlFragmentToken } from '../types.js';
|
|
4
|
+
import { escapeIdentifier } from '../utilities/escapeIdentifier.js';
|
|
5
|
+
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
|
|
6
|
+
import { isPrimitiveValueExpression } from '../utilities/isPrimitiveValueExpression.js';
|
|
7
|
+
import { isSqlToken } from '../utilities/isSqlToken.js';
|
|
8
8
|
import { InvalidInputError, UnexpectedStateError } from '@slonik/errors';
|
|
9
9
|
|
|
10
10
|
export const createArraySqlFragment = (
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { FragmentToken } from '../tokens';
|
|
2
|
-
import {
|
|
3
|
-
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder';
|
|
1
|
+
import { FragmentToken } from '../tokens.js';
|
|
2
|
+
import type { BinarySqlToken, SqlFragmentToken } from '../types.js';
|
|
3
|
+
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
|
|
4
4
|
import { InvalidInputError } from '@slonik/errors';
|
|
5
5
|
|
|
6
6
|
export const createBinarySqlFragment = (
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { FragmentToken } from '../tokens';
|
|
2
|
-
import {
|
|
3
|
-
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder';
|
|
1
|
+
import { FragmentToken } from '../tokens.js';
|
|
2
|
+
import type { DateSqlToken, SqlFragmentToken } from '../types.js';
|
|
3
|
+
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
|
|
4
4
|
import { InvalidInputError } from '@slonik/errors';
|
|
5
5
|
|
|
6
6
|
export const createDateSqlFragment = (
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { slonikPlaceholderRegexRule } from '../regexRules/slonikPlaceholderRegexRule';
|
|
2
|
-
import { FragmentToken } from '../tokens';
|
|
3
|
-
import {
|
|
4
|
-
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder';
|
|
1
|
+
import { slonikPlaceholderRegexRule } from '../regexRules/slonikPlaceholderRegexRule.js';
|
|
2
|
+
import { FragmentToken } from '../tokens.js';
|
|
3
|
+
import type { FragmentSqlToken, SqlFragmentToken } from '../types.js';
|
|
4
|
+
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
|
|
5
5
|
import { UnexpectedStateError } from '@slonik/errors';
|
|
6
6
|
|
|
7
7
|
export const createFragmentSqlFragment = (
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { FragmentToken } from '../tokens';
|
|
2
|
-
import {
|
|
3
|
-
import { escapeIdentifier } from '../utilities/escapeIdentifier';
|
|
1
|
+
import { FragmentToken } from '../tokens.js';
|
|
2
|
+
import type { IdentifierSqlToken, SqlFragmentToken } from '../types.js';
|
|
3
|
+
import { escapeIdentifier } from '../utilities/escapeIdentifier.js';
|
|
4
4
|
import { InvalidInputError } from '@slonik/errors';
|
|
5
5
|
|
|
6
6
|
export const createIdentifierSqlFragment = (
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { FragmentToken } from '../tokens';
|
|
2
|
-
import {
|
|
3
|
-
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder';
|
|
1
|
+
import { FragmentToken } from '../tokens.js';
|
|
2
|
+
import type { IntervalSqlToken, SqlFragmentToken } from '../types.js';
|
|
3
|
+
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
|
|
4
4
|
import { InvalidInputError } from '@slonik/errors';
|
|
5
5
|
import { z } from 'zod';
|
|
6
6
|
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { Logger } from '../Logger';
|
|
2
|
-
import { FragmentToken } from '../tokens';
|
|
3
|
-
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
} from '../types';
|
|
8
|
-
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder';
|
|
9
|
-
import { isPlainObject } from '../utilities/isPlainObject';
|
|
10
|
-
import { safeStringify } from '../utilities/safeStringify';
|
|
1
|
+
import { Logger } from '../Logger.js';
|
|
2
|
+
import { FragmentToken } from '../tokens.js';
|
|
3
|
+
import type {
|
|
4
|
+
JsonBinarySqlToken,
|
|
5
|
+
JsonSqlToken,
|
|
6
|
+
SqlFragmentToken,
|
|
7
|
+
} from '../types.js';
|
|
8
|
+
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
|
|
9
|
+
import { isPlainObject } from '../utilities/isPlainObject.js';
|
|
10
|
+
import { safeStringify } from '../utilities/safeStringify.js';
|
|
11
11
|
import { InvalidInputError } from '@slonik/errors';
|
|
12
12
|
import { serializeError } from 'serialize-error';
|
|
13
13
|
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { createPrimitiveValueExpressions } from '../factories/createPrimitiveValueExpressions';
|
|
2
|
-
import { createSqlTokenSqlFragment } from '../factories/createSqlTokenSqlFragment';
|
|
3
|
-
import { FragmentToken } from '../tokens';
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
} from '../types';
|
|
9
|
-
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder';
|
|
10
|
-
import { isPrimitiveValueExpression } from '../utilities/isPrimitiveValueExpression';
|
|
11
|
-
import { isSqlToken } from '../utilities/isSqlToken';
|
|
1
|
+
import { createPrimitiveValueExpressions } from '../factories/createPrimitiveValueExpressions.js';
|
|
2
|
+
import { createSqlTokenSqlFragment } from '../factories/createSqlTokenSqlFragment.js';
|
|
3
|
+
import { FragmentToken } from '../tokens.js';
|
|
4
|
+
import type {
|
|
5
|
+
ListSqlToken,
|
|
6
|
+
PrimitiveValueExpression,
|
|
7
|
+
SqlFragmentToken,
|
|
8
|
+
} from '../types.js';
|
|
9
|
+
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
|
|
10
|
+
import { isPrimitiveValueExpression } from '../utilities/isPrimitiveValueExpression.js';
|
|
11
|
+
import { isSqlToken } from '../utilities/isSqlToken.js';
|
|
12
12
|
import { InvalidInputError } from '@slonik/errors';
|
|
13
13
|
|
|
14
14
|
export const createListSqlFragment = (
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { slonikPlaceholderRegexRule } from '../regexRules/slonikPlaceholderRegexRule';
|
|
2
|
-
import { FragmentToken } from '../tokens';
|
|
3
|
-
import {
|
|
4
|
-
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder';
|
|
1
|
+
import { slonikPlaceholderRegexRule } from '../regexRules/slonikPlaceholderRegexRule.js';
|
|
2
|
+
import { FragmentToken } from '../tokens.js';
|
|
3
|
+
import type { QuerySqlToken, SqlFragmentToken } from '../types.js';
|
|
4
|
+
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
|
|
5
5
|
import { UnexpectedStateError } from '@slonik/errors';
|
|
6
6
|
|
|
7
7
|
export const createQuerySqlFragment = (
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { FragmentToken } from '../tokens';
|
|
2
|
-
import {
|
|
3
|
-
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder';
|
|
1
|
+
import { FragmentToken } from '../tokens.js';
|
|
2
|
+
import type { SqlFragmentToken, TimestampSqlToken } from '../types.js';
|
|
3
|
+
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
|
|
4
4
|
import { InvalidInputError } from '@slonik/errors';
|
|
5
5
|
|
|
6
6
|
export const createTimestampSqlFragment = (
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { FragmentToken } from '../tokens';
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
} from '../types';
|
|
7
|
-
import { countArrayDimensions } from '../utilities/countArrayDimensions';
|
|
8
|
-
import { escapeIdentifier } from '../utilities/escapeIdentifier';
|
|
9
|
-
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder';
|
|
10
|
-
import { isPrimitiveValueExpression } from '../utilities/isPrimitiveValueExpression';
|
|
11
|
-
import { stripArrayNotation } from '../utilities/stripArrayNotation';
|
|
1
|
+
import { FragmentToken } from '../tokens.js';
|
|
2
|
+
import type {
|
|
3
|
+
PrimitiveValueExpression,
|
|
4
|
+
SqlFragmentToken,
|
|
5
|
+
UnnestSqlToken,
|
|
6
|
+
} from '../types.js';
|
|
7
|
+
import { countArrayDimensions } from '../utilities/countArrayDimensions.js';
|
|
8
|
+
import { escapeIdentifier } from '../utilities/escapeIdentifier.js';
|
|
9
|
+
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
|
|
10
|
+
import { isPrimitiveValueExpression } from '../utilities/isPrimitiveValueExpression.js';
|
|
11
|
+
import { stripArrayNotation } from '../utilities/stripArrayNotation.js';
|
|
12
12
|
import { InvalidInputError } from '@slonik/errors';
|
|
13
13
|
|
|
14
14
|
export const createUnnestSqlFragment = (
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { FragmentToken } from '../tokens';
|
|
2
|
-
import {
|
|
3
|
-
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder';
|
|
1
|
+
import { FragmentToken } from '../tokens.js';
|
|
2
|
+
import type { SqlFragmentToken, UuidSqlToken } from '../types.js';
|
|
3
|
+
import { formatSlonikPlaceholder } from '../utilities/formatSlonikPlaceholder.js';
|
|
4
4
|
import { InvalidInputError } from '@slonik/errors';
|
|
5
5
|
|
|
6
6
|
export type UUID = `${string}-${string}-${string}-${string}-${string}`;
|