@effect/sql-mssql 4.0.0-beta.8 → 4.0.0-beta.81
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/MssqlClient.d.ts +53 -16
- package/dist/MssqlClient.d.ts.map +1 -1
- package/dist/MssqlClient.js +146 -38
- package/dist/MssqlClient.js.map +1 -1
- package/dist/MssqlMigrator.d.ts +17 -5
- package/dist/MssqlMigrator.d.ts.map +1 -1
- package/dist/MssqlMigrator.js +8 -4
- package/dist/MssqlMigrator.js.map +1 -1
- package/dist/Parameter.d.ts +16 -8
- package/dist/Parameter.d.ts.map +1 -1
- package/dist/Parameter.js +19 -5
- package/dist/Parameter.js.map +1 -1
- package/dist/Procedure.d.ts +47 -22
- package/dist/Procedure.d.ts.map +1 -1
- package/dist/Procedure.js +33 -13
- package/dist/Procedure.js.map +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.js +6 -6
- package/package.json +4 -4
- package/src/MssqlClient.ts +213 -37
- package/src/MssqlMigrator.ts +17 -5
- package/src/Parameter.ts +27 -9
- package/src/Procedure.ts +57 -24
- package/src/index.ts +6 -6
package/dist/MssqlClient.d.ts
CHANGED
|
@@ -1,13 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Microsoft SQL Server client implementation for Effect SQL, backed by the
|
|
3
|
+
* `tedious` driver.
|
|
4
|
+
*
|
|
5
|
+
* This module provides the `MssqlClient` service, constructors, layers, and SQL
|
|
6
|
+
* Server statement compiler. `make` creates a pooled Tedious client, checks the
|
|
7
|
+
* connection with `SELECT 1`, maps SQL Server failures to `SqlError`, and
|
|
8
|
+
* supports transactions with savepoints. The SQL Server-specific service adds
|
|
9
|
+
* typed Tedious parameters with `param`, stored procedure calls with `call`,
|
|
10
|
+
* direct or config-backed layers, and default parameter type mappings.
|
|
11
|
+
* Streaming queries are not implemented by this driver.
|
|
12
|
+
*
|
|
13
|
+
* @since 4.0.0
|
|
3
14
|
*/
|
|
4
15
|
import * as Config from "effect/Config";
|
|
16
|
+
import * as Context from "effect/Context";
|
|
5
17
|
import * as Duration from "effect/Duration";
|
|
6
18
|
import * as Effect from "effect/Effect";
|
|
7
19
|
import * as Layer from "effect/Layer";
|
|
8
20
|
import * as Redacted from "effect/Redacted";
|
|
9
21
|
import * as Scope from "effect/Scope";
|
|
10
|
-
import * as ServiceMap from "effect/ServiceMap";
|
|
11
22
|
import * as Reactivity from "effect/unstable/reactivity/Reactivity";
|
|
12
23
|
import * as Client from "effect/unstable/sql/SqlClient";
|
|
13
24
|
import { SqlError } from "effect/unstable/sql/SqlError";
|
|
@@ -17,18 +28,24 @@ import type { ParameterOptions } from "tedious/lib/request.ts";
|
|
|
17
28
|
import type { Parameter } from "./Parameter.ts";
|
|
18
29
|
import type * as Procedure from "./Procedure.ts";
|
|
19
30
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
31
|
+
* Runtime type identifier used to mark `MssqlClient` values.
|
|
32
|
+
*
|
|
33
|
+
* @category type IDs
|
|
34
|
+
* @since 4.0.0
|
|
22
35
|
*/
|
|
23
36
|
export declare const TypeId: unique symbol;
|
|
24
37
|
/**
|
|
25
|
-
*
|
|
26
|
-
*
|
|
38
|
+
* Type-level identifier used to mark `MssqlClient` values.
|
|
39
|
+
*
|
|
40
|
+
* @category type IDs
|
|
41
|
+
* @since 4.0.0
|
|
27
42
|
*/
|
|
28
43
|
export type TypeId = typeof TypeId;
|
|
29
44
|
/**
|
|
45
|
+
* Microsoft SQL Server client service, extending `SqlClient` with typed parameter fragments and stored procedure calls.
|
|
46
|
+
*
|
|
30
47
|
* @category models
|
|
31
|
-
* @since
|
|
48
|
+
* @since 4.0.0
|
|
32
49
|
*/
|
|
33
50
|
export interface MssqlClient extends Client.SqlClient {
|
|
34
51
|
readonly [TypeId]: TypeId;
|
|
@@ -37,13 +54,22 @@ export interface MssqlClient extends Client.SqlClient {
|
|
|
37
54
|
readonly call: <I extends Record<string, Parameter<any>>, O extends Record<string, Parameter<any>>, A extends object>(procedure: Procedure.ProcedureWithValues<I, O, A>) => Effect.Effect<Procedure.Procedure.Result<O, A>, SqlError>;
|
|
38
55
|
}
|
|
39
56
|
/**
|
|
40
|
-
*
|
|
41
|
-
*
|
|
57
|
+
* Service tag for the Microsoft SQL Server client service.
|
|
58
|
+
*
|
|
59
|
+
* **When to use**
|
|
60
|
+
*
|
|
61
|
+
* Use to access or provide a Microsoft SQL Server client through the Effect
|
|
62
|
+
* context.
|
|
63
|
+
*
|
|
64
|
+
* @category services
|
|
65
|
+
* @since 4.0.0
|
|
42
66
|
*/
|
|
43
|
-
export declare const MssqlClient:
|
|
67
|
+
export declare const MssqlClient: Context.Service<MssqlClient, MssqlClient>;
|
|
44
68
|
/**
|
|
69
|
+
* Configuration for a Microsoft SQL Server client, including connection, authentication, pool, parameter type, span attribute, and query/result name transform options.
|
|
70
|
+
*
|
|
45
71
|
* @category models
|
|
46
|
-
* @since
|
|
72
|
+
* @since 4.0.0
|
|
47
73
|
*/
|
|
48
74
|
export interface MssqlClientConfig {
|
|
49
75
|
readonly domain?: string | undefined;
|
|
@@ -66,27 +92,38 @@ export interface MssqlClientConfig {
|
|
|
66
92
|
readonly transformQueryNames?: ((str: string) => string) | undefined;
|
|
67
93
|
}
|
|
68
94
|
/**
|
|
95
|
+
* Creates a scoped Microsoft SQL Server client backed by a connection pool, with transaction and stored procedure support. Streaming queries are not implemented.
|
|
96
|
+
*
|
|
69
97
|
* @category constructors
|
|
70
|
-
* @since
|
|
98
|
+
* @since 4.0.0
|
|
71
99
|
*/
|
|
72
100
|
export declare const make: (options: MssqlClientConfig) => Effect.Effect<MssqlClient, SqlError, Scope.Scope | Reactivity.Reactivity>;
|
|
73
101
|
/**
|
|
102
|
+
* Creates a layer from a `Config`-wrapped SQL Server client configuration, providing both `MssqlClient` and `SqlClient`.
|
|
103
|
+
*
|
|
74
104
|
* @category layers
|
|
75
|
-
* @since
|
|
105
|
+
* @since 4.0.0
|
|
76
106
|
*/
|
|
77
107
|
export declare const layerConfig: (config: Config.Wrap<MssqlClientConfig>) => Layer.Layer<Client.SqlClient | MssqlClient, Config.ConfigError | SqlError>;
|
|
78
108
|
/**
|
|
109
|
+
* Creates a layer from a concrete SQL Server client configuration, providing both `MssqlClient` and `SqlClient`.
|
|
110
|
+
*
|
|
79
111
|
* @category layers
|
|
80
|
-
* @since
|
|
112
|
+
* @since 4.0.0
|
|
81
113
|
*/
|
|
82
114
|
export declare const layer: (config: MssqlClientConfig) => Layer.Layer<Client.SqlClient | MssqlClient, never | SqlError>;
|
|
83
115
|
/**
|
|
116
|
+
* Creates the SQL Server statement compiler, using `@1`-style placeholders, bracket-escaped identifiers, and SQL Server `OUTPUT INSERTED` returning clauses.
|
|
117
|
+
*
|
|
84
118
|
* @category compiler
|
|
85
|
-
* @since
|
|
119
|
+
* @since 4.0.0
|
|
86
120
|
*/
|
|
87
121
|
export declare const makeCompiler: (transform?: (_: string) => string) => Statement.Compiler;
|
|
88
122
|
/**
|
|
89
|
-
*
|
|
123
|
+
* Default mapping from Effect SQL primitive value kinds to Tedious SQL Server parameter data types.
|
|
124
|
+
*
|
|
125
|
+
* @category configuration
|
|
126
|
+
* @since 4.0.0
|
|
90
127
|
*/
|
|
91
128
|
export declare const defaultParameterTypes: Record<Statement.PrimitiveKind, DataType>;
|
|
92
129
|
//# sourceMappingURL=MssqlClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MssqlClient.d.ts","sourceRoot":"","sources":["../src/MssqlClient.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"MssqlClient.d.ts","sourceRoot":"","sources":["../src/MssqlClient.ts"],"names":[],"mappings":"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"}
|
package/dist/MssqlClient.js
CHANGED
|
@@ -1,7 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Microsoft SQL Server client implementation for Effect SQL, backed by the
|
|
3
|
+
* `tedious` driver.
|
|
4
|
+
*
|
|
5
|
+
* This module provides the `MssqlClient` service, constructors, layers, and SQL
|
|
6
|
+
* Server statement compiler. `make` creates a pooled Tedious client, checks the
|
|
7
|
+
* connection with `SELECT 1`, maps SQL Server failures to `SqlError`, and
|
|
8
|
+
* supports transactions with savepoints. The SQL Server-specific service adds
|
|
9
|
+
* typed Tedious parameters with `param`, stored procedure calls with `call`,
|
|
10
|
+
* direct or config-backed layers, and default parameter type mappings.
|
|
11
|
+
* Streaming queries are not implemented by this driver.
|
|
12
|
+
*
|
|
13
|
+
* @since 4.0.0
|
|
3
14
|
*/
|
|
4
15
|
import * as Config from "effect/Config";
|
|
16
|
+
import * as Context from "effect/Context";
|
|
5
17
|
import * as Duration from "effect/Duration";
|
|
6
18
|
import * as Effect from "effect/Effect";
|
|
7
19
|
import { identity } from "effect/Function";
|
|
@@ -9,31 +21,123 @@ import * as Layer from "effect/Layer";
|
|
|
9
21
|
import * as Pool from "effect/Pool";
|
|
10
22
|
import * as Redacted from "effect/Redacted";
|
|
11
23
|
import * as Scope from "effect/Scope";
|
|
12
|
-
import * as ServiceMap from "effect/ServiceMap";
|
|
13
24
|
import * as Stream from "effect/Stream";
|
|
14
25
|
import * as Reactivity from "effect/unstable/reactivity/Reactivity";
|
|
15
26
|
import * as Client from "effect/unstable/sql/SqlClient";
|
|
16
|
-
import { SqlError } from "effect/unstable/sql/SqlError";
|
|
27
|
+
import { AuthenticationError, AuthorizationError, ConnectionError, ConstraintError, DeadlockError, LockTimeoutError, SerializationError, SqlError, SqlSyntaxError, UniqueViolation, UnknownError } from "effect/unstable/sql/SqlError";
|
|
17
28
|
import * as Statement from "effect/unstable/sql/Statement";
|
|
18
29
|
import * as Tedious from "tedious";
|
|
19
30
|
const ATTR_DB_SYSTEM_NAME = "db.system.name";
|
|
20
31
|
const ATTR_DB_NAMESPACE = "db.namespace";
|
|
21
32
|
const ATTR_SERVER_ADDRESS = "server.address";
|
|
22
33
|
const ATTR_SERVER_PORT = "server.port";
|
|
34
|
+
const mssqlNumberFromCause = cause => {
|
|
35
|
+
if (typeof cause !== "object" || cause === null || !("number" in cause)) {
|
|
36
|
+
return undefined;
|
|
37
|
+
}
|
|
38
|
+
const number = cause.number;
|
|
39
|
+
return typeof number === "number" ? number : undefined;
|
|
40
|
+
};
|
|
41
|
+
const mssqlConnectionErrorCodes = /*#__PURE__*/new Set([233, 10054]);
|
|
42
|
+
const mssqlAuthenticationErrorCodes = /*#__PURE__*/new Set([4060, 18452, 18456]);
|
|
43
|
+
const mssqlAuthorizationErrorCodes = /*#__PURE__*/new Set([229, 230, 262, 297, 300]);
|
|
44
|
+
const mssqlSyntaxErrorCodes = /*#__PURE__*/new Set([102, 207, 208, 2714]);
|
|
45
|
+
const mssqlConstraintErrorCodes = /*#__PURE__*/new Set([515, 547]);
|
|
46
|
+
const UNKNOWN_CONSTRAINT = "unknown";
|
|
47
|
+
const normalizeConstraintIdentifier = identifier => {
|
|
48
|
+
if (typeof identifier !== "string") {
|
|
49
|
+
return UNKNOWN_CONSTRAINT;
|
|
50
|
+
}
|
|
51
|
+
const trimmed = identifier.trim();
|
|
52
|
+
return trimmed.length === 0 ? UNKNOWN_CONSTRAINT : trimmed;
|
|
53
|
+
};
|
|
54
|
+
const mssqlCauseProperty = (cause, property) => {
|
|
55
|
+
if (typeof cause !== "object" || cause === null || !(property in cause)) {
|
|
56
|
+
return undefined;
|
|
57
|
+
}
|
|
58
|
+
return cause[property];
|
|
59
|
+
};
|
|
60
|
+
const mssqlUniqueViolationConstraintFromMessage = (number, message) => {
|
|
61
|
+
if (typeof message !== "string") {
|
|
62
|
+
return UNKNOWN_CONSTRAINT;
|
|
63
|
+
}
|
|
64
|
+
const match = number === 2627 ? /\bconstraint\s+'([^']*)'/i.exec(message) : /\bunique index\s+'([^']*)'/i.exec(message);
|
|
65
|
+
return match === null ? UNKNOWN_CONSTRAINT : normalizeConstraintIdentifier(match[1]);
|
|
66
|
+
};
|
|
67
|
+
const mssqlUniqueViolationConstraintFromCause = (number, cause) => {
|
|
68
|
+
const constraint = normalizeConstraintIdentifier(mssqlCauseProperty(cause, "constraint"));
|
|
69
|
+
if (constraint !== UNKNOWN_CONSTRAINT) {
|
|
70
|
+
return constraint;
|
|
71
|
+
}
|
|
72
|
+
return mssqlUniqueViolationConstraintFromMessage(number, mssqlCauseProperty(cause, "message"));
|
|
73
|
+
};
|
|
74
|
+
const classifyError = (cause, message, operation, fallback = "unknown") => {
|
|
75
|
+
const props = {
|
|
76
|
+
cause,
|
|
77
|
+
message,
|
|
78
|
+
operation
|
|
79
|
+
};
|
|
80
|
+
const number = mssqlNumberFromCause(cause);
|
|
81
|
+
if (number !== undefined) {
|
|
82
|
+
if (mssqlConnectionErrorCodes.has(number)) {
|
|
83
|
+
return new ConnectionError(props);
|
|
84
|
+
}
|
|
85
|
+
if (mssqlAuthenticationErrorCodes.has(number)) {
|
|
86
|
+
return new AuthenticationError(props);
|
|
87
|
+
}
|
|
88
|
+
if (mssqlAuthorizationErrorCodes.has(number)) {
|
|
89
|
+
return new AuthorizationError(props);
|
|
90
|
+
}
|
|
91
|
+
if (mssqlSyntaxErrorCodes.has(number)) {
|
|
92
|
+
return new SqlSyntaxError(props);
|
|
93
|
+
}
|
|
94
|
+
if (number === 2601 || number === 2627) {
|
|
95
|
+
return new UniqueViolation({
|
|
96
|
+
...props,
|
|
97
|
+
constraint: mssqlUniqueViolationConstraintFromCause(number, cause)
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
if (mssqlConstraintErrorCodes.has(number)) {
|
|
101
|
+
return new ConstraintError(props);
|
|
102
|
+
}
|
|
103
|
+
if (number === 1205) {
|
|
104
|
+
return new DeadlockError(props);
|
|
105
|
+
}
|
|
106
|
+
if (number === 3960) {
|
|
107
|
+
return new SerializationError(props);
|
|
108
|
+
}
|
|
109
|
+
if (number === 1222) {
|
|
110
|
+
return new LockTimeoutError(props);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
return fallback === "connection" ? new ConnectionError(props) : new UnknownError(props);
|
|
114
|
+
};
|
|
23
115
|
/**
|
|
24
|
-
*
|
|
25
|
-
*
|
|
116
|
+
* Runtime type identifier used to mark `MssqlClient` values.
|
|
117
|
+
*
|
|
118
|
+
* @category type IDs
|
|
119
|
+
* @since 4.0.0
|
|
26
120
|
*/
|
|
27
121
|
export const TypeId = /*#__PURE__*/Symbol.for("@effect/sql-mssql/MssqlClient");
|
|
28
122
|
/**
|
|
29
|
-
*
|
|
30
|
-
*
|
|
123
|
+
* Service tag for the Microsoft SQL Server client service.
|
|
124
|
+
*
|
|
125
|
+
* **When to use**
|
|
126
|
+
*
|
|
127
|
+
* Use to access or provide a Microsoft SQL Server client through the Effect
|
|
128
|
+
* context.
|
|
129
|
+
*
|
|
130
|
+
* @category services
|
|
131
|
+
* @since 4.0.0
|
|
31
132
|
*/
|
|
32
|
-
export const MssqlClient = /*#__PURE__*/
|
|
133
|
+
export const MssqlClient = /*#__PURE__*/Context.Service("@effect/sql-mssql/MssqlClient");
|
|
33
134
|
const TransactionConnection = Client.TransactionConnection;
|
|
135
|
+
let clientIdCounter = 0;
|
|
34
136
|
/**
|
|
137
|
+
* Creates a scoped Microsoft SQL Server client backed by a connection pool, with transaction and stored procedure support. Streaming queries are not implemented.
|
|
138
|
+
*
|
|
35
139
|
* @category constructors
|
|
36
|
-
* @since
|
|
140
|
+
* @since 4.0.0
|
|
37
141
|
*/
|
|
38
142
|
export const make = options => Effect.gen(function* () {
|
|
39
143
|
const parameterTypes = options.parameterTypes ?? defaultParameterTypes;
|
|
@@ -68,8 +172,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
68
172
|
conn.connect(cause => {
|
|
69
173
|
if (cause) {
|
|
70
174
|
resume(Effect.fail(new SqlError({
|
|
71
|
-
cause,
|
|
72
|
-
message: "Failed to connect"
|
|
175
|
+
reason: classifyError(cause, "Failed to connect", "connect", "connection")
|
|
73
176
|
})));
|
|
74
177
|
} else {
|
|
75
178
|
resume(Effect.void);
|
|
@@ -80,8 +183,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
80
183
|
const req = new Tedious.Request(sql, (cause, _rowCount, result) => {
|
|
81
184
|
if (cause) {
|
|
82
185
|
resume(Effect.fail(new SqlError({
|
|
83
|
-
cause,
|
|
84
|
-
message: "Failed to execute statement"
|
|
186
|
+
reason: classifyError(cause, "Failed to execute statement", "execute")
|
|
85
187
|
})));
|
|
86
188
|
return;
|
|
87
189
|
}
|
|
@@ -113,8 +215,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
113
215
|
const req = new Tedious.Request(escape(procedure.name), (cause, _, rows) => {
|
|
114
216
|
if (cause) {
|
|
115
217
|
resume(Effect.fail(new SqlError({
|
|
116
|
-
cause,
|
|
117
|
-
message: "Failed to execute statement"
|
|
218
|
+
reason: classifyError(cause, "Failed to execute statement", "execute")
|
|
118
219
|
})));
|
|
119
220
|
} else {
|
|
120
221
|
rows = rowsToObjects(rows);
|
|
@@ -165,8 +266,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
165
266
|
conn.beginTransaction(cause => {
|
|
166
267
|
if (cause) {
|
|
167
268
|
resume(Effect.fail(new SqlError({
|
|
168
|
-
cause,
|
|
169
|
-
message: "Failed to begin transaction"
|
|
269
|
+
reason: classifyError(cause, "Failed to begin transaction", "beginTransaction")
|
|
170
270
|
})));
|
|
171
271
|
} else {
|
|
172
272
|
resume(Effect.void);
|
|
@@ -177,8 +277,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
177
277
|
conn.commitTransaction(cause => {
|
|
178
278
|
if (cause) {
|
|
179
279
|
resume(Effect.fail(new SqlError({
|
|
180
|
-
cause,
|
|
181
|
-
message: "Failed to commit transaction"
|
|
280
|
+
reason: classifyError(cause, "Failed to commit transaction", "commitTransaction")
|
|
182
281
|
})));
|
|
183
282
|
} else {
|
|
184
283
|
resume(Effect.void);
|
|
@@ -189,8 +288,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
189
288
|
conn.saveTransaction(cause => {
|
|
190
289
|
if (cause) {
|
|
191
290
|
resume(Effect.fail(new SqlError({
|
|
192
|
-
cause,
|
|
193
|
-
message: "Failed to create savepoint"
|
|
291
|
+
reason: classifyError(cause, "Failed to create savepoint", "createSavepoint")
|
|
194
292
|
})));
|
|
195
293
|
} else {
|
|
196
294
|
resume(Effect.void);
|
|
@@ -201,8 +299,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
201
299
|
conn.rollbackTransaction(cause => {
|
|
202
300
|
if (cause) {
|
|
203
301
|
resume(Effect.fail(new SqlError({
|
|
204
|
-
cause,
|
|
205
|
-
message: "Failed to rollback transaction"
|
|
302
|
+
reason: classifyError(cause, "Failed to rollback transaction", "rollbackTransaction")
|
|
206
303
|
})));
|
|
207
304
|
} else {
|
|
208
305
|
resume(Effect.void);
|
|
@@ -222,20 +319,21 @@ export const make = options => Effect.gen(function* () {
|
|
|
222
319
|
timeToLive: options.connectionTTL ?? Duration.minutes(45),
|
|
223
320
|
timeToLiveStrategy: "creation"
|
|
224
321
|
});
|
|
225
|
-
yield* Pool.get(pool).pipe(Effect.tap(connection => connection.executeUnprepared("SELECT 1", [], undefined)), Effect.mapError(({
|
|
226
|
-
cause
|
|
227
|
-
}) => new SqlError({
|
|
228
|
-
cause,
|
|
229
|
-
message: "MssqlClient: Failed to connect"
|
|
322
|
+
yield* Pool.get(pool).pipe(Effect.tap(connection => connection.executeUnprepared("SELECT 1", [], undefined)), Effect.mapError(cause => new SqlError({
|
|
323
|
+
reason: classifyError(cause, "MssqlClient: Failed to connect", "connect", "connection")
|
|
230
324
|
})), Effect.scoped, Effect.timeoutOrElse({
|
|
231
325
|
duration: options.connectTimeout ?? Duration.seconds(5),
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
326
|
+
orElse: () => Effect.fail(new SqlError({
|
|
327
|
+
reason: new ConnectionError({
|
|
328
|
+
message: "MssqlClient: Connection timeout",
|
|
329
|
+
cause: new Error("connection timeout"),
|
|
330
|
+
operation: "connect"
|
|
331
|
+
})
|
|
235
332
|
}))
|
|
236
333
|
}));
|
|
334
|
+
const transactionService = TransactionConnection(clientIdCounter++);
|
|
237
335
|
const withTransaction = Client.makeWithTransaction({
|
|
238
|
-
transactionService
|
|
336
|
+
transactionService,
|
|
239
337
|
spanAttributes,
|
|
240
338
|
acquireConnection: Effect.gen(function* () {
|
|
241
339
|
const scope = Scope.makeUnsafe();
|
|
@@ -251,6 +349,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
251
349
|
return identity(Object.assign(yield* Client.make({
|
|
252
350
|
acquirer: Pool.get(pool),
|
|
253
351
|
compiler,
|
|
352
|
+
transactionService: transactionService,
|
|
254
353
|
spanAttributes,
|
|
255
354
|
transformRows
|
|
256
355
|
}), {
|
|
@@ -271,18 +370,24 @@ export const make = options => Effect.gen(function* () {
|
|
|
271
370
|
}));
|
|
272
371
|
});
|
|
273
372
|
/**
|
|
373
|
+
* Creates a layer from a `Config`-wrapped SQL Server client configuration, providing both `MssqlClient` and `SqlClient`.
|
|
374
|
+
*
|
|
274
375
|
* @category layers
|
|
275
|
-
* @since
|
|
376
|
+
* @since 4.0.0
|
|
276
377
|
*/
|
|
277
|
-
export const layerConfig = config => Layer.
|
|
378
|
+
export const layerConfig = config => Layer.effectContext(Config.unwrap(config).pipe(Effect.flatMap(make), Effect.map(client => Context.make(MssqlClient, client).pipe(Context.add(Client.SqlClient, client))))).pipe(Layer.provide(Reactivity.layer));
|
|
278
379
|
/**
|
|
380
|
+
* Creates a layer from a concrete SQL Server client configuration, providing both `MssqlClient` and `SqlClient`.
|
|
381
|
+
*
|
|
279
382
|
* @category layers
|
|
280
|
-
* @since
|
|
383
|
+
* @since 4.0.0
|
|
281
384
|
*/
|
|
282
|
-
export const layer = config => Layer.
|
|
385
|
+
export const layer = config => Layer.effectContext(Effect.map(make(config), client => Context.make(MssqlClient, client).pipe(Context.add(Client.SqlClient, client)))).pipe(Layer.provide(Reactivity.layer));
|
|
283
386
|
/**
|
|
387
|
+
* Creates the SQL Server statement compiler, using `@1`-style placeholders, bracket-escaped identifiers, and SQL Server `OUTPUT INSERTED` returning clauses.
|
|
388
|
+
*
|
|
284
389
|
* @category compiler
|
|
285
|
-
* @since
|
|
390
|
+
* @since 4.0.0
|
|
286
391
|
*/
|
|
287
392
|
export const makeCompiler = transform => Statement.makeCompiler({
|
|
288
393
|
dialect: "mssql",
|
|
@@ -315,7 +420,10 @@ function numberToParamName(n) {
|
|
|
315
420
|
return `${Math.ceil(n + 1)}`;
|
|
316
421
|
}
|
|
317
422
|
/**
|
|
318
|
-
*
|
|
423
|
+
* Default mapping from Effect SQL primitive value kinds to Tedious SQL Server parameter data types.
|
|
424
|
+
*
|
|
425
|
+
* @category configuration
|
|
426
|
+
* @since 4.0.0
|
|
319
427
|
*/
|
|
320
428
|
export const defaultParameterTypes = {
|
|
321
429
|
string: Tedious.TYPES.VarChar,
|
package/dist/MssqlClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MssqlClient.js","names":["Config","Duration","Effect","identity","Layer","Pool","Redacted","Scope","ServiceMap","Stream","Reactivity","Client","SqlError","Statement","Tedious","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","TypeId","Symbol","for","MssqlClient","Service","TransactionConnection","make","options","gen","parameterTypes","defaultParameterTypes","compiler","makeCompiler","transformQueryNames","transformRows","transformResultNames","defaultTransforms","array","undefined","spanAttributes","Object","entries","database","server","port","pool","makeConnection","conn","Connection","trustServerCertificate","trustServer","connectTimeout","toMillis","fromInputUnsafe","rowCollectionOnRequestCompletion","useColumnNames","instanceName","encrypt","authentication","type","authType","userName","username","password","value","addFinalizer","sync","close","callback","resume","connect","cause","fail","message","void","run","sql","values","rowsAsArray","req","Request","_rowCount","result","map","row","_","rowsToObjects","succeed","i","len","length","name","numberToParamName","isMssqlParam","addParameter","paramA","paramB","paramC","kind","primitiveKind","cancel","execSql","runProcedure","procedure","escape","rows","params","param","outputParams","addOutputParameter","on","callProcedure","connection","execute","executeRaw","executeValues","executeUnprepared","executeStream","die","call","begin","beginTransaction","commit","commitTransaction","savepoint","saveTransaction","rollback","rollbackTransaction","pipe","catch","invalidate","interruptible","forkScoped","makeWithTTL","acquire","min","minConnections","max","maxConnections","timeToLive","connectionTTL","minutes","timeToLiveStrategy","get","tap","mapError","scoped","timeoutOrElse","duration","seconds","onTimeout","Error","withTransaction","makeWithTransaction","transactionService","acquireConnection","scope","makeUnsafe","provide","id","rollbackSavepoint","assign","acquirer","config","fragment","mssqlParam","flatMap","withoutTransforms","statement","withoutTransform","client","safe","layerConfig","effectServices","unwrap","asEffect","add","SqlClient","layer","transform","dialect","placeholder","onIdentifier","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","returningSql","concat","flat","onCustom","onInsert","columns","join","str","replace","n","Math","ceil","string","TYPES","VarChar","number","Int","bigint","BigInt","boolean","Bit","Date","DateTime","Uint8Array","VarBinary","Int8Array","null","custom","isCustom","newRows","Array","newRow","j","columnLen","column","metadata","colName"],"sources":["../src/MssqlClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"MssqlClient.js","names":["Config","Context","Duration","Effect","identity","Layer","Pool","Redacted","Scope","Stream","Reactivity","Client","AuthenticationError","AuthorizationError","ConnectionError","ConstraintError","DeadlockError","LockTimeoutError","SerializationError","SqlError","SqlSyntaxError","UniqueViolation","UnknownError","Statement","Tedious","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","mssqlNumberFromCause","cause","undefined","number","mssqlConnectionErrorCodes","Set","mssqlAuthenticationErrorCodes","mssqlAuthorizationErrorCodes","mssqlSyntaxErrorCodes","mssqlConstraintErrorCodes","UNKNOWN_CONSTRAINT","normalizeConstraintIdentifier","identifier","trimmed","trim","length","mssqlCauseProperty","property","mssqlUniqueViolationConstraintFromMessage","message","match","exec","mssqlUniqueViolationConstraintFromCause","constraint","classifyError","operation","fallback","props","has","TypeId","Symbol","for","MssqlClient","Service","TransactionConnection","clientIdCounter","make","options","gen","parameterTypes","defaultParameterTypes","compiler","makeCompiler","transformQueryNames","transformRows","transformResultNames","defaultTransforms","array","spanAttributes","Object","entries","database","server","port","pool","makeConnection","conn","Connection","trustServerCertificate","trustServer","connectTimeout","toMillis","fromInputUnsafe","rowCollectionOnRequestCompletion","useColumnNames","instanceName","encrypt","authentication","type","authType","userName","username","password","value","addFinalizer","sync","close","callback","resume","connect","fail","reason","void","run","sql","values","rowsAsArray","req","Request","_rowCount","result","map","row","_","rowsToObjects","succeed","i","len","name","numberToParamName","isMssqlParam","addParameter","paramA","paramB","paramC","kind","primitiveKind","cancel","execSql","runProcedure","procedure","escape","rows","params","param","outputParams","addOutputParameter","on","callProcedure","connection","execute","executeRaw","executeValues","executeUnprepared","executeStream","die","call","begin","beginTransaction","commit","commitTransaction","savepoint","saveTransaction","rollback","rollbackTransaction","pipe","catch","invalidate","interruptible","forkScoped","makeWithTTL","acquire","min","minConnections","max","maxConnections","timeToLive","connectionTTL","minutes","timeToLiveStrategy","get","tap","mapError","scoped","timeoutOrElse","duration","seconds","orElse","Error","transactionService","withTransaction","makeWithTransaction","acquireConnection","scope","makeUnsafe","provide","id","rollbackSavepoint","assign","acquirer","config","fragment","mssqlParam","flatMap","withoutTransforms","statement","withoutTransform","client","safe","layerConfig","effectContext","unwrap","add","SqlClient","layer","transform","dialect","placeholder","onIdentifier","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","returningSql","concat","flat","onCustom","onInsert","columns","join","str","replace","n","Math","ceil","string","TYPES","VarChar","Int","bigint","BigInt","boolean","Bit","Date","DateTime","Uint8Array","VarBinary","Int8Array","null","custom","isCustom","newRows","Array","newRow","j","columnLen","column","metadata","colName"],"sources":["../src/MssqlClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/MssqlMigrator.d.ts
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Utilities for applying Effect SQL migrations to Microsoft SQL Server.
|
|
3
|
+
*
|
|
4
|
+
* This module re-exports the shared `Migrator` loaders and error types, then
|
|
5
|
+
* provides `run` and `layer` helpers for applying ordered migrations through
|
|
6
|
+
* the current SQL Server `SqlClient`. `run` returns the applied migration IDs
|
|
7
|
+
* and names, while `layer` runs migrations during layer construction and
|
|
8
|
+
* provides no services.
|
|
9
|
+
*
|
|
10
|
+
* @since 4.0.0
|
|
3
11
|
*/
|
|
4
12
|
import type * as Effect from "effect/Effect";
|
|
5
13
|
import * as Layer from "effect/Layer";
|
|
@@ -7,17 +15,21 @@ import * as Migrator from "effect/unstable/sql/Migrator";
|
|
|
7
15
|
import type * as Client from "effect/unstable/sql/SqlClient";
|
|
8
16
|
import type { SqlError } from "effect/unstable/sql/SqlError";
|
|
9
17
|
/**
|
|
10
|
-
* @since
|
|
18
|
+
* @since 4.0.0
|
|
11
19
|
*/
|
|
12
20
|
export * from "effect/unstable/sql/Migrator";
|
|
13
21
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
22
|
+
* Runs SQL migrations using the configured `SqlClient`, returning the migrations that were applied.
|
|
23
|
+
*
|
|
24
|
+
* @category constructors
|
|
25
|
+
* @since 4.0.0
|
|
16
26
|
*/
|
|
17
27
|
export declare const run: <R>(options: Migrator.MigratorOptions<R>) => Effect.Effect<ReadonlyArray<readonly [id: number, name: string]>, SqlError | Migrator.MigrationError, Client.SqlClient | R>;
|
|
18
28
|
/**
|
|
29
|
+
* Creates a layer that runs the configured SQL migrations during layer construction.
|
|
30
|
+
*
|
|
19
31
|
* @category layers
|
|
20
|
-
* @since
|
|
32
|
+
* @since 4.0.0
|
|
21
33
|
*/
|
|
22
34
|
export declare const layer: <R>(options: Migrator.MigratorOptions<R>) => Layer.Layer<never, SqlError | Migrator.MigrationError, Client.SqlClient | R>;
|
|
23
35
|
//# sourceMappingURL=MssqlMigrator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MssqlMigrator.d.ts","sourceRoot":"","sources":["../src/MssqlMigrator.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"MssqlMigrator.d.ts","sourceRoot":"","sources":["../src/MssqlMigrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAA;AACxD,OAAO,KAAK,KAAK,MAAM,MAAM,+BAA+B,CAAA;AAC5D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAA;AAE5D;;GAEG;AACH,cAAc,8BAA8B,CAAA;AAE5C;;;;;GAKG;AACH,eAAO,MAAM,GAAG,EAAE,CAAC,CAAC,EAClB,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,KACjC,MAAM,CAAC,MAAM,CAChB,aAAa,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAClD,QAAQ,GAAG,QAAQ,CAAC,cAAc,EAClC,MAAM,CAAC,SAAS,GAAG,CAAC,CACD,CAAA;AAErB;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EACrB,SAAS,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,KACnC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,SAAS,GAAG,CAAC,CAAsC,CAAA"}
|
package/dist/MssqlMigrator.js
CHANGED
|
@@ -1,17 +1,21 @@
|
|
|
1
1
|
import * as Layer from "effect/Layer";
|
|
2
2
|
import * as Migrator from "effect/unstable/sql/Migrator";
|
|
3
3
|
/**
|
|
4
|
-
* @since
|
|
4
|
+
* @since 4.0.0
|
|
5
5
|
*/
|
|
6
6
|
export * from "effect/unstable/sql/Migrator";
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
*
|
|
8
|
+
* Runs SQL migrations using the configured `SqlClient`, returning the migrations that were applied.
|
|
9
|
+
*
|
|
10
|
+
* @category constructors
|
|
11
|
+
* @since 4.0.0
|
|
10
12
|
*/
|
|
11
13
|
export const run = /*#__PURE__*/Migrator.make({});
|
|
12
14
|
/**
|
|
15
|
+
* Creates a layer that runs the configured SQL migrations during layer construction.
|
|
16
|
+
*
|
|
13
17
|
* @category layers
|
|
14
|
-
* @since
|
|
18
|
+
* @since 4.0.0
|
|
15
19
|
*/
|
|
16
20
|
export const layer = options => Layer.effectDiscard(run(options));
|
|
17
21
|
//# sourceMappingURL=MssqlMigrator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MssqlMigrator.js","names":["Layer","Migrator","run","make","layer","options","effectDiscard"],"sources":["../src/MssqlMigrator.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"file":"MssqlMigrator.js","names":["Layer","Migrator","run","make","layer","options","effectDiscard"],"sources":["../src/MssqlMigrator.ts"],"sourcesContent":[null],"mappings":"AAYA,OAAO,KAAKA,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,QAAQ,MAAM,8BAA8B;AAIxD;;;AAGA,cAAc,8BAA8B;AAE5C;;;;;;AAMA,OAAO,MAAMC,GAAG,gBAMZD,QAAQ,CAACE,IAAI,CAAC,EAAE,CAAC;AAErB;;;;;;AAMA,OAAO,MAAMC,KAAK,GAChBC,OAAoC,IAC6CL,KAAK,CAACM,aAAa,CAACJ,GAAG,CAACG,OAAO,CAAC,CAAC","ignoreList":[]}
|