@effect/sql-libsql 4.0.0-beta.1 → 4.0.0-beta.100
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/README.md +1 -1
- package/dist/LibsqlClient.d.ts +71 -24
- package/dist/LibsqlClient.d.ts.map +1 -1
- package/dist/LibsqlClient.js +51 -26
- package/dist/LibsqlClient.js.map +1 -1
- package/dist/LibsqlMigrator.d.ts +19 -6
- package/dist/LibsqlMigrator.d.ts.map +1 -1
- package/dist/LibsqlMigrator.js +9 -5
- package/dist/LibsqlMigrator.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.js +3 -3
- package/package.json +7 -8
- package/src/LibsqlClient.ts +96 -39
- package/src/LibsqlMigrator.ts +19 -6
- package/src/index.ts +3 -3
package/README.md
CHANGED
package/dist/LibsqlClient.d.ts
CHANGED
|
@@ -1,51 +1,76 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* libSQL adapter for Effect SQL, backed by `@libsql/client`.
|
|
3
|
+
*
|
|
4
|
+
* This module provides a {@link LibsqlClient} and the generic SQL client
|
|
5
|
+
* service for `@libsql/client`. It uses Effect SQL's SQLite compiler, supports
|
|
6
|
+
* managed SDK clients or caller-owned live clients, classifies libSQL and
|
|
7
|
+
* SQLite failures as `SqlError`s, and provides transaction support with
|
|
8
|
+
* savepoints. Streaming queries are not implemented by this driver.
|
|
9
|
+
*
|
|
10
|
+
* @since 4.0.0
|
|
3
11
|
*/
|
|
4
12
|
import * as Libsql from "@libsql/client";
|
|
5
13
|
import * as Config from "effect/Config";
|
|
14
|
+
import * as Context from "effect/Context";
|
|
6
15
|
import * as Effect from "effect/Effect";
|
|
7
16
|
import * as Layer from "effect/Layer";
|
|
8
17
|
import * as Redacted from "effect/Redacted";
|
|
9
18
|
import * as Scope from "effect/Scope";
|
|
10
|
-
import * as ServiceMap from "effect/ServiceMap";
|
|
11
19
|
import * as Reactivity from "effect/unstable/reactivity/Reactivity";
|
|
12
20
|
import * as Client from "effect/unstable/sql/SqlClient";
|
|
13
21
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
22
|
+
* Runtime type identifier used to mark `LibsqlClient` values.
|
|
23
|
+
*
|
|
24
|
+
* @category type IDs
|
|
25
|
+
* @since 4.0.0
|
|
16
26
|
*/
|
|
17
27
|
export declare const TypeId: TypeId;
|
|
18
28
|
/**
|
|
19
|
-
*
|
|
20
|
-
*
|
|
29
|
+
* Type-level identifier used to mark `LibsqlClient` values.
|
|
30
|
+
*
|
|
31
|
+
* @category type IDs
|
|
32
|
+
* @since 4.0.0
|
|
21
33
|
*/
|
|
22
34
|
export type TypeId = "~@effect/sql-libsql/LibsqlClient";
|
|
23
35
|
/**
|
|
36
|
+
* libSQL-backed SQL client service, extending `SqlClient` with its runtime type marker and client configuration.
|
|
37
|
+
*
|
|
24
38
|
* @category models
|
|
25
|
-
* @since
|
|
39
|
+
* @since 4.0.0
|
|
26
40
|
*/
|
|
27
41
|
export interface LibsqlClient extends Client.SqlClient {
|
|
28
42
|
readonly [TypeId]: TypeId;
|
|
29
43
|
readonly config: LibsqlClientConfig;
|
|
30
44
|
}
|
|
31
45
|
/**
|
|
32
|
-
*
|
|
33
|
-
*
|
|
46
|
+
* Service tag for the libSQL client service.
|
|
47
|
+
*
|
|
48
|
+
* **When to use**
|
|
49
|
+
*
|
|
50
|
+
* Use to access or provide a libSQL client through the Effect context.
|
|
51
|
+
*
|
|
52
|
+
* @category services
|
|
53
|
+
* @since 4.0.0
|
|
34
54
|
*/
|
|
35
|
-
export declare const LibsqlClient:
|
|
55
|
+
export declare const LibsqlClient: Context.Service<LibsqlClient, LibsqlClient>;
|
|
36
56
|
/**
|
|
57
|
+
* Configuration for a libSQL client, either by supplying connection options or an existing live libSQL client.
|
|
58
|
+
*
|
|
37
59
|
* @category models
|
|
38
|
-
* @since
|
|
60
|
+
* @since 4.0.0
|
|
39
61
|
*/
|
|
40
62
|
export type LibsqlClientConfig = LibsqlClientConfig.Full | LibsqlClientConfig.Live;
|
|
41
63
|
/**
|
|
42
|
-
*
|
|
43
|
-
*
|
|
64
|
+
* Namespace containing the configuration variants for `LibsqlClient`.
|
|
65
|
+
*
|
|
66
|
+
* @since 4.0.0
|
|
44
67
|
*/
|
|
45
68
|
export declare namespace LibsqlClientConfig {
|
|
46
69
|
/**
|
|
70
|
+
* Shared libSQL client options for span attributes and query/result name transformations.
|
|
71
|
+
*
|
|
47
72
|
* @category models
|
|
48
|
-
* @since
|
|
73
|
+
* @since 4.0.0
|
|
49
74
|
*/
|
|
50
75
|
interface Base {
|
|
51
76
|
readonly spanAttributes?: Record<string, unknown> | undefined;
|
|
@@ -53,11 +78,16 @@ export declare namespace LibsqlClientConfig {
|
|
|
53
78
|
readonly transformQueryNames?: ((str: string) => string) | undefined;
|
|
54
79
|
}
|
|
55
80
|
/**
|
|
81
|
+
* Connection-based libSQL configuration used to create a managed client, including URL, credentials, sync, integer mode, TLS, and concurrency options.
|
|
82
|
+
*
|
|
56
83
|
* @category models
|
|
57
|
-
* @since
|
|
84
|
+
* @since 4.0.0
|
|
58
85
|
*/
|
|
59
86
|
interface Full extends Base {
|
|
60
|
-
/**
|
|
87
|
+
/**
|
|
88
|
+
* The database URL.
|
|
89
|
+
*
|
|
90
|
+
* **Details**
|
|
61
91
|
*
|
|
62
92
|
* The client supports `libsql:`, `http:`/`https:`, `ws:`/`wss:` and `file:` URL. For more infomation,
|
|
63
93
|
* please refer to the project README:
|
|
@@ -73,12 +103,18 @@ export declare namespace LibsqlClientConfig {
|
|
|
73
103
|
readonly syncUrl?: string | URL | undefined;
|
|
74
104
|
/** Sync interval in seconds. */
|
|
75
105
|
readonly syncInterval?: number | undefined;
|
|
76
|
-
/**
|
|
106
|
+
/**
|
|
107
|
+
* Enables or disables TLS for `libsql:` URLs.
|
|
108
|
+
*
|
|
109
|
+
* **Details**
|
|
77
110
|
*
|
|
78
111
|
* By default, `libsql:` URLs use TLS. You can set this option to `false` to disable TLS.
|
|
79
112
|
*/
|
|
80
113
|
readonly tls?: boolean | undefined;
|
|
81
|
-
/**
|
|
114
|
+
/**
|
|
115
|
+
* How to convert SQLite integers to JavaScript values.
|
|
116
|
+
*
|
|
117
|
+
* **Details**
|
|
82
118
|
*
|
|
83
119
|
* - `"number"` (default): returns SQLite integers as JavaScript `number`-s (double precision floats).
|
|
84
120
|
* `number` cannot precisely represent integers larger than 2^53-1 in absolute value, so attempting to read
|
|
@@ -88,7 +124,10 @@ export declare namespace LibsqlClientConfig {
|
|
|
88
124
|
* - `"string"`: returns SQLite integers as strings.
|
|
89
125
|
*/
|
|
90
126
|
readonly intMode?: "number" | "bigint" | "string" | undefined;
|
|
91
|
-
/**
|
|
127
|
+
/**
|
|
128
|
+
* Concurrency limit.
|
|
129
|
+
*
|
|
130
|
+
* **Details**
|
|
92
131
|
*
|
|
93
132
|
* By default, the client performs up to 20 concurrent requests. You can set this option to a higher
|
|
94
133
|
* number to increase the concurrency limit or set it to 0 to disable concurrency limits completely.
|
|
@@ -96,26 +135,34 @@ export declare namespace LibsqlClientConfig {
|
|
|
96
135
|
readonly concurrency?: number | undefined;
|
|
97
136
|
}
|
|
98
137
|
/**
|
|
138
|
+
* Configuration that uses an existing libSQL client. The supplied `liveClient` is caller-owned and is not closed by the Effect client.
|
|
139
|
+
*
|
|
99
140
|
* @category models
|
|
100
|
-
* @since
|
|
141
|
+
* @since 4.0.0
|
|
101
142
|
*/
|
|
102
143
|
interface Live extends Base {
|
|
103
144
|
readonly liveClient: Libsql.Client;
|
|
104
145
|
}
|
|
105
146
|
}
|
|
106
147
|
/**
|
|
107
|
-
*
|
|
108
|
-
*
|
|
148
|
+
* Creates a scoped libSQL SQL client with transaction support. When given connection options it creates and closes the SDK client; when given `liveClient`, the caller retains ownership.
|
|
149
|
+
*
|
|
150
|
+
* @category constructors
|
|
151
|
+
* @since 4.0.0
|
|
109
152
|
*/
|
|
110
153
|
export declare const make: (options: LibsqlClientConfig) => Effect.Effect<LibsqlClient, never, Scope.Scope | Reactivity.Reactivity>;
|
|
111
154
|
/**
|
|
155
|
+
* Creates a layer from a `Config`-wrapped libSQL client configuration, providing both `LibsqlClient` and `SqlClient`.
|
|
156
|
+
*
|
|
112
157
|
* @category layers
|
|
113
|
-
* @since
|
|
158
|
+
* @since 4.0.0
|
|
114
159
|
*/
|
|
115
160
|
export declare const layerConfig: (config: Config.Wrap<LibsqlClientConfig>) => Layer.Layer<LibsqlClient | Client.SqlClient, Config.ConfigError>;
|
|
116
161
|
/**
|
|
162
|
+
* Creates a layer from a concrete libSQL client configuration, providing both `LibsqlClient` and `SqlClient`.
|
|
163
|
+
*
|
|
117
164
|
* @category layers
|
|
118
|
-
* @since
|
|
165
|
+
* @since 4.0.0
|
|
119
166
|
*/
|
|
120
167
|
export declare const layer: (config: LibsqlClientConfig) => Layer.Layer<LibsqlClient | Client.SqlClient>;
|
|
121
168
|
//# sourceMappingURL=LibsqlClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LibsqlClient.d.ts","sourceRoot":"","sources":["../src/LibsqlClient.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"LibsqlClient.d.ts","sourceRoot":"","sources":["../src/LibsqlClient.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,MAAM,MAAM,gBAAgB,CAAA;AACxC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAGrC,OAAO,KAAK,UAAU,MAAM,uCAAuC,CAAA;AACnE,OAAO,KAAK,MAAM,MAAM,+BAA+B,CAAA;AAUvD;;;;;GAKG;AACH,eAAO,MAAM,MAAM,EAAE,MAA2C,CAAA;AAEhE;;;;;GAKG;AACH,MAAM,MAAM,MAAM,GAAG,kCAAkC,CAAA;AAEvD;;;;;GAKG;AACH,MAAM,WAAW,YAAa,SAAQ,MAAM,CAAC,SAAS;IACpD,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAA;CACpC;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,YAAY,6CAAmE,CAAA;AAM5F;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAA;AAElF;;;;GAIG;AACH,MAAM,CAAC,OAAO,WAAW,kBAAkB,CAAC;IAC1C;;;;;OAKG;IACH,UAAiB,IAAI;QACnB,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAA;QAC7D,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,CAAA;QACrE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC,GAAG,SAAS,CAAA;KACrE;IAED;;;;;OAKG;IACH,UAAiB,IAAK,SAAQ,IAAI;QAChC;;;;;;;;;WASG;QACH,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;QAC1B,6CAA6C;QAC7C,QAAQ,CAAC,SAAS,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;QAClD,uCAAuC;QACvC,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,QAAQ,GAAG,SAAS,CAAA;QACtD,2DAA2D;QAC3D,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,GAAG,GAAG,SAAS,CAAA;QAC3C,gCAAgC;QAChC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QAC1C;;;;;;WAMG;QACH,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;QAClC;;;;;;;;;;;WAWG;QACH,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAA;QAC7D;;;;;;;WAOG;QACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAC1C;IAED;;;;;OAKG;IACH,UAAiB,IAAK,SAAQ,IAAI;QAChC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,MAAM,CAAA;KACnC;CACF;AAQD;;;;;GAKG;AACH,eAAO,MAAM,IAAI,YACN,kBAAkB,KAC1B,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,UAAU,CAAC,UAAU,CAiKrE,CAAA;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,WAAW,EAAE,CACxB,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,KACpC,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,WAAW,CAY3B,CAAA;AAEzC;;;;;GAKG;AACH,eAAO,MAAM,KAAK,WACR,kBAAkB,KACzB,KAAK,CAAC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC,SAAS,CAML,CAAA"}
|
package/dist/LibsqlClient.js
CHANGED
|
@@ -1,34 +1,57 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* libSQL adapter for Effect SQL, backed by `@libsql/client`.
|
|
3
|
+
*
|
|
4
|
+
* This module provides a {@link LibsqlClient} and the generic SQL client
|
|
5
|
+
* service for `@libsql/client`. It uses Effect SQL's SQLite compiler, supports
|
|
6
|
+
* managed SDK clients or caller-owned live clients, classifies libSQL and
|
|
7
|
+
* SQLite failures as `SqlError`s, and provides transaction support with
|
|
8
|
+
* savepoints. Streaming queries are not implemented by this driver.
|
|
9
|
+
*
|
|
10
|
+
* @since 4.0.0
|
|
3
11
|
*/
|
|
4
12
|
import * as Libsql from "@libsql/client";
|
|
5
13
|
import * as Config from "effect/Config";
|
|
14
|
+
import * as Context from "effect/Context";
|
|
6
15
|
import * as Effect from "effect/Effect";
|
|
7
16
|
import * as Layer from "effect/Layer";
|
|
8
17
|
import * as Option from "effect/Option";
|
|
9
18
|
import * as Redacted from "effect/Redacted";
|
|
10
19
|
import * as Scope from "effect/Scope";
|
|
11
|
-
import * as
|
|
20
|
+
import * as Semaphore from "effect/Semaphore";
|
|
12
21
|
import * as Stream from "effect/Stream";
|
|
13
22
|
import * as Reactivity from "effect/unstable/reactivity/Reactivity";
|
|
14
23
|
import * as Client from "effect/unstable/sql/SqlClient";
|
|
15
|
-
import { SqlError } from "effect/unstable/sql/SqlError";
|
|
24
|
+
import { classifySqliteError, SqlError } from "effect/unstable/sql/SqlError";
|
|
16
25
|
import * as Statement from "effect/unstable/sql/Statement";
|
|
17
26
|
const ATTR_DB_SYSTEM_NAME = "db.system.name";
|
|
27
|
+
const classifyError = (cause, message, operation) => classifySqliteError(cause, {
|
|
28
|
+
message,
|
|
29
|
+
operation
|
|
30
|
+
});
|
|
18
31
|
/**
|
|
19
|
-
*
|
|
20
|
-
*
|
|
32
|
+
* Runtime type identifier used to mark `LibsqlClient` values.
|
|
33
|
+
*
|
|
34
|
+
* @category type IDs
|
|
35
|
+
* @since 4.0.0
|
|
21
36
|
*/
|
|
22
37
|
export const TypeId = "~@effect/sql-libsql/LibsqlClient";
|
|
23
38
|
/**
|
|
24
|
-
*
|
|
25
|
-
*
|
|
39
|
+
* Service tag for the libSQL client service.
|
|
40
|
+
*
|
|
41
|
+
* **When to use**
|
|
42
|
+
*
|
|
43
|
+
* Use to access or provide a libSQL client through the Effect context.
|
|
44
|
+
*
|
|
45
|
+
* @category services
|
|
46
|
+
* @since 4.0.0
|
|
26
47
|
*/
|
|
27
|
-
export const LibsqlClient = /*#__PURE__*/
|
|
28
|
-
const LibsqlTransaction = /*#__PURE__*/
|
|
48
|
+
export const LibsqlClient = /*#__PURE__*/Context.Service("@effect/sql-libsql/LibsqlClient");
|
|
49
|
+
const LibsqlTransaction = /*#__PURE__*/Context.Service("@effect/sql-libsql/LibsqlClient/LibsqlTransaction");
|
|
29
50
|
/**
|
|
30
|
-
*
|
|
31
|
-
*
|
|
51
|
+
* Creates a scoped libSQL SQL client with transaction support. When given connection options it creates and closes the SDK client; when given `liveClient`, the caller retains ownership.
|
|
52
|
+
*
|
|
53
|
+
* @category constructors
|
|
54
|
+
* @since 4.0.0
|
|
32
55
|
*/
|
|
33
56
|
export const make = options => Effect.gen(function* () {
|
|
34
57
|
const compiler = Statement.makeCompilerSqlite(options.transformQueryNames);
|
|
@@ -46,8 +69,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
46
69
|
args: params
|
|
47
70
|
}),
|
|
48
71
|
catch: cause => new SqlError({
|
|
49
|
-
cause,
|
|
50
|
-
message: "Failed to execute statement"
|
|
72
|
+
reason: classifyError(cause, "Failed to execute statement", "execute")
|
|
51
73
|
})
|
|
52
74
|
}), results => results.rows);
|
|
53
75
|
}
|
|
@@ -58,8 +80,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
58
80
|
args: params
|
|
59
81
|
}),
|
|
60
82
|
catch: cause => new SqlError({
|
|
61
|
-
cause,
|
|
62
|
-
message: "Failed to execute statement"
|
|
83
|
+
reason: classifyError(cause, "Failed to execute statement", "execute")
|
|
63
84
|
})
|
|
64
85
|
});
|
|
65
86
|
}
|
|
@@ -72,6 +93,9 @@ export const make = options => Effect.gen(function* () {
|
|
|
72
93
|
executeValues(sql, params) {
|
|
73
94
|
return Effect.map(this.run(sql, params), rows => rows.map(row => Array.from(row)));
|
|
74
95
|
}
|
|
96
|
+
executeValuesUnprepared(sql, params) {
|
|
97
|
+
return this.executeValues(sql, params);
|
|
98
|
+
}
|
|
75
99
|
executeUnprepared(sql, params, transformRows) {
|
|
76
100
|
return this.execute(sql, params, transformRows);
|
|
77
101
|
}
|
|
@@ -82,8 +106,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
82
106
|
return Effect.map(Effect.tryPromise({
|
|
83
107
|
try: () => this.sdk.transaction("write"),
|
|
84
108
|
catch: cause => new SqlError({
|
|
85
|
-
cause,
|
|
86
|
-
message: "Failed to begin transaction"
|
|
109
|
+
reason: classifyError(cause, "Failed to begin transaction", "beginTransaction")
|
|
87
110
|
})
|
|
88
111
|
}), tx => new LibsqlConnectionImpl(tx));
|
|
89
112
|
}
|
|
@@ -91,8 +114,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
91
114
|
return Effect.tryPromise({
|
|
92
115
|
try: () => this.sdk.commit(),
|
|
93
116
|
catch: cause => new SqlError({
|
|
94
|
-
cause,
|
|
95
|
-
message: "Failed to commit transaction"
|
|
117
|
+
reason: classifyError(cause, "Failed to commit transaction", "commitTransaction")
|
|
96
118
|
})
|
|
97
119
|
});
|
|
98
120
|
}
|
|
@@ -100,8 +122,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
100
122
|
return Effect.tryPromise({
|
|
101
123
|
try: () => this.sdk.rollback(),
|
|
102
124
|
catch: cause => new SqlError({
|
|
103
|
-
cause,
|
|
104
|
-
message: "Failed to rollback transaction"
|
|
125
|
+
reason: classifyError(cause, "Failed to rollback transaction", "rollbackTransaction")
|
|
105
126
|
})
|
|
106
127
|
});
|
|
107
128
|
}
|
|
@@ -113,7 +134,7 @@ export const make = options => Effect.gen(function* () {
|
|
|
113
134
|
url: options.url.toString(),
|
|
114
135
|
syncUrl: options.syncUrl?.toString()
|
|
115
136
|
})), sdk => Effect.sync(() => sdk.close())), sdk => new LibsqlConnectionImpl(sdk));
|
|
116
|
-
const semaphore = yield*
|
|
137
|
+
const semaphore = yield* Semaphore.make(1);
|
|
117
138
|
const withTransaction = Client.makeWithTransaction({
|
|
118
139
|
transactionService: LibsqlTransaction,
|
|
119
140
|
spanAttributes,
|
|
@@ -148,13 +169,17 @@ export const make = options => Effect.gen(function* () {
|
|
|
148
169
|
});
|
|
149
170
|
});
|
|
150
171
|
/**
|
|
172
|
+
* Creates a layer from a `Config`-wrapped libSQL client configuration, providing both `LibsqlClient` and `SqlClient`.
|
|
173
|
+
*
|
|
151
174
|
* @category layers
|
|
152
|
-
* @since
|
|
175
|
+
* @since 4.0.0
|
|
153
176
|
*/
|
|
154
|
-
export const layerConfig = config => Layer.
|
|
177
|
+
export const layerConfig = config => Layer.effectContext(Config.unwrap(config).pipe(Effect.flatMap(make), Effect.map(client => Context.make(LibsqlClient, client).pipe(Context.add(Client.SqlClient, client))))).pipe(Layer.provide(Reactivity.layer));
|
|
155
178
|
/**
|
|
179
|
+
* Creates a layer from a concrete libSQL client configuration, providing both `LibsqlClient` and `SqlClient`.
|
|
180
|
+
*
|
|
156
181
|
* @category layers
|
|
157
|
-
* @since
|
|
182
|
+
* @since 4.0.0
|
|
158
183
|
*/
|
|
159
|
-
export const layer = config => Layer.
|
|
184
|
+
export const layer = config => Layer.effectContext(Effect.map(make(config), client => Context.make(LibsqlClient, client).pipe(Context.add(Client.SqlClient, client)))).pipe(Layer.provide(Reactivity.layer));
|
|
160
185
|
//# sourceMappingURL=LibsqlClient.js.map
|
package/dist/LibsqlClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LibsqlClient.js","names":["Libsql","Config","Effect","Layer","Option","Redacted","Scope","
|
|
1
|
+
{"version":3,"file":"LibsqlClient.js","names":["Libsql","Config","Context","Effect","Layer","Option","Redacted","Scope","Semaphore","Stream","Reactivity","Client","classifySqliteError","SqlError","Statement","ATTR_DB_SYSTEM_NAME","classifyError","cause","message","operation","TypeId","LibsqlClient","Service","LibsqlTransaction","make","options","gen","compiler","makeCompilerSqlite","transformQueryNames","transformRows","transformResultNames","defaultTransforms","array","undefined","spanAttributes","Object","entries","LibsqlConnectionImpl","sdk","constructor","run","sql","params","map","tryPromise","try","execute","args","catch","reason","results","rows","runRaw","executeRaw","executeValues","row","Array","from","executeValuesUnprepared","executeUnprepared","executeStream","die","beginTransaction","transaction","tx","commit","rollback","connection","liveClient","acquireRelease","sync","createClient","authToken","isRedacted","value","encryptionKey","url","toString","syncUrl","close","semaphore","withTransaction","makeWithTransaction","transactionService","acquireConnection","uninterruptibleMask","fnUntraced","restore","scope","makeUnsafe","take","addFinalizer","release","conn","begin","void","savepoint","id","rollbackSavepoint","acquirer","flatMap","serviceOption","match","onNone","withPermits","succeed","onSome","assign","config","layerConfig","effectContext","unwrap","pipe","client","add","SqlClient","provide","layer"],"sources":["../src/LibsqlClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/LibsqlMigrator.d.ts
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* libSQL migration support for Effect SQL applications.
|
|
3
|
+
*
|
|
4
|
+
* This module adapts the shared SQL migrator to libSQL. It re-exports the
|
|
5
|
+
* common migration loaders and errors, then provides {@link run} and
|
|
6
|
+
* {@link layer} helpers that apply pending migrations with the current
|
|
7
|
+
* libSQL-backed `SqlClient`. `run` returns the applied migration IDs and names,
|
|
8
|
+
* while `layer` runs migrations during layer construction and provides no
|
|
9
|
+
* services.
|
|
10
|
+
*
|
|
11
|
+
* @since 4.0.0
|
|
3
12
|
*/
|
|
4
13
|
import type * as Effect from "effect/Effect";
|
|
5
14
|
import * as Layer from "effect/Layer";
|
|
@@ -7,17 +16,21 @@ import * as Migrator from "effect/unstable/sql/Migrator";
|
|
|
7
16
|
import type * as Client from "effect/unstable/sql/SqlClient";
|
|
8
17
|
import type { SqlError } from "effect/unstable/sql/SqlError";
|
|
9
18
|
/**
|
|
10
|
-
* @since
|
|
19
|
+
* @since 4.0.0
|
|
11
20
|
*/
|
|
12
21
|
export * from "effect/unstable/sql/Migrator";
|
|
13
22
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
23
|
+
* Runs SQL migrations using the configured `SqlClient`, returning the migrations that were applied.
|
|
24
|
+
*
|
|
25
|
+
* @category constructors
|
|
26
|
+
* @since 4.0.0
|
|
16
27
|
*/
|
|
17
28
|
export declare const run: <R2 = never>(options: Migrator.MigratorOptions<R2>) => Effect.Effect<ReadonlyArray<readonly [id: number, name: string]>, Migrator.MigrationError | SqlError, Client.SqlClient | R2>;
|
|
18
29
|
/**
|
|
19
|
-
*
|
|
20
|
-
*
|
|
30
|
+
* Creates a layer that runs the configured SQL migrations during layer construction.
|
|
31
|
+
*
|
|
32
|
+
* @category constructors
|
|
33
|
+
* @since 4.0.0
|
|
21
34
|
*/
|
|
22
35
|
export declare const layer: <R>(options: Migrator.MigratorOptions<R>) => Layer.Layer<never, Migrator.MigrationError | SqlError, Client.SqlClient | R>;
|
|
23
36
|
//# sourceMappingURL=LibsqlMigrator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LibsqlMigrator.d.ts","sourceRoot":"","sources":["../src/LibsqlMigrator.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"LibsqlMigrator.d.ts","sourceRoot":"","sources":["../src/LibsqlMigrator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;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,EAAE,GAAG,KAAK,EAC3B,OAAO,EAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,KAClC,MAAM,CAAC,MAAM,CAChB,aAAa,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,EAClD,QAAQ,CAAC,cAAc,GAAG,QAAQ,EAClC,MAAM,CAAC,SAAS,GAAG,EAAE,CACF,CAAA;AAErB;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,WACZ,QAAQ,CAAC,eAAe,CAAC,CAAC,CAAC,KACnC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,cAAc,GAAG,QAAQ,EAAE,MAAM,CAAC,SAAS,GAAG,CAAC,CAAsC,CAAA"}
|
package/dist/LibsqlMigrator.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
|
/**
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
+
* Creates a layer that runs the configured SQL migrations during layer construction.
|
|
16
|
+
*
|
|
17
|
+
* @category constructors
|
|
18
|
+
* @since 4.0.0
|
|
15
19
|
*/
|
|
16
20
|
export const layer = options => Layer.effectDiscard(run(options));
|
|
17
21
|
//# sourceMappingURL=LibsqlMigrator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LibsqlMigrator.js","names":["Layer","Migrator","run","make","layer","options","effectDiscard"],"sources":["../src/LibsqlMigrator.ts"],"sourcesContent":[null],"mappings":"
|
|
1
|
+
{"version":3,"file":"LibsqlMigrator.js","names":["Layer","Migrator","run","make","layer","options","effectDiscard"],"sources":["../src/LibsqlMigrator.ts"],"sourcesContent":[null],"mappings":"AAaA,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":[]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @since
|
|
2
|
+
* @since 4.0.0
|
|
3
3
|
*/
|
|
4
4
|
/**
|
|
5
|
-
* @since
|
|
5
|
+
* @since 4.0.0
|
|
6
6
|
*/
|
|
7
7
|
export * as LibsqlClient from "./LibsqlClient.ts";
|
|
8
8
|
/**
|
|
9
|
-
* @since
|
|
9
|
+
* @since 4.0.0
|
|
10
10
|
*/
|
|
11
11
|
export * as LibsqlMigrator from "./LibsqlMigrator.ts";
|
|
12
12
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @since
|
|
2
|
+
* @since 4.0.0
|
|
3
3
|
*/
|
|
4
4
|
// @barrel: Auto-generated exports. Do not edit manually.
|
|
5
5
|
/**
|
|
6
|
-
* @since
|
|
6
|
+
* @since 4.0.0
|
|
7
7
|
*/
|
|
8
8
|
export * as LibsqlClient from "./LibsqlClient.js";
|
|
9
9
|
/**
|
|
10
|
-
* @since
|
|
10
|
+
* @since 4.0.0
|
|
11
11
|
*/
|
|
12
12
|
export * as LibsqlMigrator from "./LibsqlMigrator.js";
|
|
13
13
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/sql-libsql",
|
|
3
|
-
"version": "4.0.0-beta.
|
|
3
|
+
"version": "4.0.0-beta.100",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"description": "A libSQL toolkit for Effect",
|
|
7
7
|
"homepage": "https://effect.website",
|
|
8
8
|
"repository": {
|
|
9
9
|
"type": "git",
|
|
10
|
-
"url": "https://github.com/Effect-TS/effect
|
|
10
|
+
"url": "https://github.com/Effect-TS/effect.git",
|
|
11
11
|
"directory": "packages/sql/libsql"
|
|
12
12
|
},
|
|
13
13
|
"bugs": {
|
|
14
|
-
"url": "https://github.com/Effect-TS/effect
|
|
14
|
+
"url": "https://github.com/Effect-TS/effect/issues"
|
|
15
15
|
},
|
|
16
16
|
"tags": [
|
|
17
17
|
"typescript",
|
|
@@ -45,19 +45,18 @@
|
|
|
45
45
|
"provenance": true
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|
|
48
|
-
"testcontainers": "^11.
|
|
49
|
-
"effect": "^4.0.0-beta.
|
|
48
|
+
"testcontainers": "^11.14.0",
|
|
49
|
+
"effect": "^4.0.0-beta.100"
|
|
50
50
|
},
|
|
51
51
|
"peerDependencies": {
|
|
52
|
-
"effect": "^4.0.0-beta.
|
|
52
|
+
"effect": "^4.0.0-beta.100"
|
|
53
53
|
},
|
|
54
54
|
"dependencies": {
|
|
55
|
-
"@libsql/client": "^0.17.
|
|
55
|
+
"@libsql/client": "^0.17.4"
|
|
56
56
|
},
|
|
57
57
|
"scripts": {
|
|
58
58
|
"codegen": "effect-utils codegen",
|
|
59
59
|
"build": "tsc -b tsconfig.json && pnpm babel",
|
|
60
|
-
"build:tsgo": "tsgo -b tsconfig.json && pnpm babel",
|
|
61
60
|
"babel": "babel dist --plugins annotate-pure-calls --out-dir dist --source-maps",
|
|
62
61
|
"check": "tsc -b tsconfig.json",
|
|
63
62
|
"test": "vitest",
|
package/src/LibsqlClient.ts
CHANGED
|
@@ -1,38 +1,56 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* libSQL adapter for Effect SQL, backed by `@libsql/client`.
|
|
3
|
+
*
|
|
4
|
+
* This module provides a {@link LibsqlClient} and the generic SQL client
|
|
5
|
+
* service for `@libsql/client`. It uses Effect SQL's SQLite compiler, supports
|
|
6
|
+
* managed SDK clients or caller-owned live clients, classifies libSQL and
|
|
7
|
+
* SQLite failures as `SqlError`s, and provides transaction support with
|
|
8
|
+
* savepoints. Streaming queries are not implemented by this driver.
|
|
9
|
+
*
|
|
10
|
+
* @since 4.0.0
|
|
3
11
|
*/
|
|
4
12
|
import * as Libsql from "@libsql/client"
|
|
5
13
|
import * as Config from "effect/Config"
|
|
14
|
+
import * as Context from "effect/Context"
|
|
6
15
|
import * as Effect from "effect/Effect"
|
|
7
16
|
import * as Layer from "effect/Layer"
|
|
8
17
|
import * as Option from "effect/Option"
|
|
9
18
|
import * as Redacted from "effect/Redacted"
|
|
10
19
|
import * as Scope from "effect/Scope"
|
|
11
|
-
import * as
|
|
20
|
+
import * as Semaphore from "effect/Semaphore"
|
|
12
21
|
import * as Stream from "effect/Stream"
|
|
13
22
|
import * as Reactivity from "effect/unstable/reactivity/Reactivity"
|
|
14
23
|
import * as Client from "effect/unstable/sql/SqlClient"
|
|
15
24
|
import type { Connection } from "effect/unstable/sql/SqlConnection"
|
|
16
|
-
import { SqlError } from "effect/unstable/sql/SqlError"
|
|
25
|
+
import { classifySqliteError, SqlError } from "effect/unstable/sql/SqlError"
|
|
17
26
|
import * as Statement from "effect/unstable/sql/Statement"
|
|
18
27
|
|
|
19
28
|
const ATTR_DB_SYSTEM_NAME = "db.system.name"
|
|
20
29
|
|
|
30
|
+
const classifyError = (cause: unknown, message: string, operation: string) =>
|
|
31
|
+
classifySqliteError(cause, { message, operation })
|
|
32
|
+
|
|
21
33
|
/**
|
|
22
|
-
*
|
|
23
|
-
*
|
|
34
|
+
* Runtime type identifier used to mark `LibsqlClient` values.
|
|
35
|
+
*
|
|
36
|
+
* @category type IDs
|
|
37
|
+
* @since 4.0.0
|
|
24
38
|
*/
|
|
25
39
|
export const TypeId: TypeId = "~@effect/sql-libsql/LibsqlClient"
|
|
26
40
|
|
|
27
41
|
/**
|
|
28
|
-
*
|
|
29
|
-
*
|
|
42
|
+
* Type-level identifier used to mark `LibsqlClient` values.
|
|
43
|
+
*
|
|
44
|
+
* @category type IDs
|
|
45
|
+
* @since 4.0.0
|
|
30
46
|
*/
|
|
31
47
|
export type TypeId = "~@effect/sql-libsql/LibsqlClient"
|
|
32
48
|
|
|
33
49
|
/**
|
|
50
|
+
* libSQL-backed SQL client service, extending `SqlClient` with its runtime type marker and client configuration.
|
|
51
|
+
*
|
|
34
52
|
* @category models
|
|
35
|
-
* @since
|
|
53
|
+
* @since 4.0.0
|
|
36
54
|
*/
|
|
37
55
|
export interface LibsqlClient extends Client.SqlClient {
|
|
38
56
|
readonly [TypeId]: TypeId
|
|
@@ -40,29 +58,40 @@ export interface LibsqlClient extends Client.SqlClient {
|
|
|
40
58
|
}
|
|
41
59
|
|
|
42
60
|
/**
|
|
43
|
-
*
|
|
44
|
-
*
|
|
61
|
+
* Service tag for the libSQL client service.
|
|
62
|
+
*
|
|
63
|
+
* **When to use**
|
|
64
|
+
*
|
|
65
|
+
* Use to access or provide a libSQL client through the Effect context.
|
|
66
|
+
*
|
|
67
|
+
* @category services
|
|
68
|
+
* @since 4.0.0
|
|
45
69
|
*/
|
|
46
|
-
export const LibsqlClient =
|
|
70
|
+
export const LibsqlClient = Context.Service<LibsqlClient>("@effect/sql-libsql/LibsqlClient")
|
|
47
71
|
|
|
48
|
-
const LibsqlTransaction =
|
|
72
|
+
const LibsqlTransaction = Context.Service<readonly [LibsqlConnection, counter: number]>(
|
|
49
73
|
"@effect/sql-libsql/LibsqlClient/LibsqlTransaction"
|
|
50
74
|
)
|
|
51
75
|
|
|
52
76
|
/**
|
|
77
|
+
* Configuration for a libSQL client, either by supplying connection options or an existing live libSQL client.
|
|
78
|
+
*
|
|
53
79
|
* @category models
|
|
54
|
-
* @since
|
|
80
|
+
* @since 4.0.0
|
|
55
81
|
*/
|
|
56
82
|
export type LibsqlClientConfig = LibsqlClientConfig.Full | LibsqlClientConfig.Live
|
|
57
83
|
|
|
58
84
|
/**
|
|
59
|
-
*
|
|
60
|
-
*
|
|
85
|
+
* Namespace containing the configuration variants for `LibsqlClient`.
|
|
86
|
+
*
|
|
87
|
+
* @since 4.0.0
|
|
61
88
|
*/
|
|
62
89
|
export declare namespace LibsqlClientConfig {
|
|
63
90
|
/**
|
|
91
|
+
* Shared libSQL client options for span attributes and query/result name transformations.
|
|
92
|
+
*
|
|
64
93
|
* @category models
|
|
65
|
-
* @since
|
|
94
|
+
* @since 4.0.0
|
|
66
95
|
*/
|
|
67
96
|
export interface Base {
|
|
68
97
|
readonly spanAttributes?: Record<string, unknown> | undefined
|
|
@@ -71,11 +100,16 @@ export declare namespace LibsqlClientConfig {
|
|
|
71
100
|
}
|
|
72
101
|
|
|
73
102
|
/**
|
|
103
|
+
* Connection-based libSQL configuration used to create a managed client, including URL, credentials, sync, integer mode, TLS, and concurrency options.
|
|
104
|
+
*
|
|
74
105
|
* @category models
|
|
75
|
-
* @since
|
|
106
|
+
* @since 4.0.0
|
|
76
107
|
*/
|
|
77
108
|
export interface Full extends Base {
|
|
78
|
-
/**
|
|
109
|
+
/**
|
|
110
|
+
* The database URL.
|
|
111
|
+
*
|
|
112
|
+
* **Details**
|
|
79
113
|
*
|
|
80
114
|
* The client supports `libsql:`, `http:`/`https:`, `ws:`/`wss:` and `file:` URL. For more infomation,
|
|
81
115
|
* please refer to the project README:
|
|
@@ -91,12 +125,18 @@ export declare namespace LibsqlClientConfig {
|
|
|
91
125
|
readonly syncUrl?: string | URL | undefined
|
|
92
126
|
/** Sync interval in seconds. */
|
|
93
127
|
readonly syncInterval?: number | undefined
|
|
94
|
-
/**
|
|
128
|
+
/**
|
|
129
|
+
* Enables or disables TLS for `libsql:` URLs.
|
|
130
|
+
*
|
|
131
|
+
* **Details**
|
|
95
132
|
*
|
|
96
133
|
* By default, `libsql:` URLs use TLS. You can set this option to `false` to disable TLS.
|
|
97
134
|
*/
|
|
98
135
|
readonly tls?: boolean | undefined
|
|
99
|
-
/**
|
|
136
|
+
/**
|
|
137
|
+
* How to convert SQLite integers to JavaScript values.
|
|
138
|
+
*
|
|
139
|
+
* **Details**
|
|
100
140
|
*
|
|
101
141
|
* - `"number"` (default): returns SQLite integers as JavaScript `number`-s (double precision floats).
|
|
102
142
|
* `number` cannot precisely represent integers larger than 2^53-1 in absolute value, so attempting to read
|
|
@@ -106,7 +146,10 @@ export declare namespace LibsqlClientConfig {
|
|
|
106
146
|
* - `"string"`: returns SQLite integers as strings.
|
|
107
147
|
*/
|
|
108
148
|
readonly intMode?: "number" | "bigint" | "string" | undefined
|
|
109
|
-
/**
|
|
149
|
+
/**
|
|
150
|
+
* Concurrency limit.
|
|
151
|
+
*
|
|
152
|
+
* **Details**
|
|
110
153
|
*
|
|
111
154
|
* By default, the client performs up to 20 concurrent requests. You can set this option to a higher
|
|
112
155
|
* number to increase the concurrency limit or set it to 0 to disable concurrency limits completely.
|
|
@@ -115,8 +158,10 @@ export declare namespace LibsqlClientConfig {
|
|
|
115
158
|
}
|
|
116
159
|
|
|
117
160
|
/**
|
|
161
|
+
* Configuration that uses an existing libSQL client. The supplied `liveClient` is caller-owned and is not closed by the Effect client.
|
|
162
|
+
*
|
|
118
163
|
* @category models
|
|
119
|
-
* @since
|
|
164
|
+
* @since 4.0.0
|
|
120
165
|
*/
|
|
121
166
|
export interface Live extends Base {
|
|
122
167
|
readonly liveClient: Libsql.Client
|
|
@@ -130,8 +175,10 @@ interface LibsqlConnection extends Connection {
|
|
|
130
175
|
}
|
|
131
176
|
|
|
132
177
|
/**
|
|
133
|
-
*
|
|
134
|
-
*
|
|
178
|
+
* Creates a scoped libSQL SQL client with transaction support. When given connection options it creates and closes the SDK client; when given `liveClient`, the caller retains ownership.
|
|
179
|
+
*
|
|
180
|
+
* @category constructors
|
|
181
|
+
* @since 4.0.0
|
|
135
182
|
*/
|
|
136
183
|
export const make = (
|
|
137
184
|
options: LibsqlClientConfig
|
|
@@ -162,7 +209,7 @@ export const make = (
|
|
|
162
209
|
return Effect.map(
|
|
163
210
|
Effect.tryPromise({
|
|
164
211
|
try: () => this.sdk.execute({ sql, args: params as Array<any> }),
|
|
165
|
-
catch: (cause) => new SqlError({ cause,
|
|
212
|
+
catch: (cause) => new SqlError({ reason: classifyError(cause, "Failed to execute statement", "execute") })
|
|
166
213
|
}),
|
|
167
214
|
(results) => results.rows
|
|
168
215
|
)
|
|
@@ -174,7 +221,7 @@ export const make = (
|
|
|
174
221
|
) {
|
|
175
222
|
return Effect.tryPromise({
|
|
176
223
|
try: () => this.sdk.execute({ sql, args: params as Array<any> }),
|
|
177
|
-
catch: (cause) => new SqlError({ cause,
|
|
224
|
+
catch: (cause) => new SqlError({ reason: classifyError(cause, "Failed to execute statement", "execute") })
|
|
178
225
|
})
|
|
179
226
|
}
|
|
180
227
|
|
|
@@ -193,6 +240,9 @@ export const make = (
|
|
|
193
240
|
executeValues(sql: string, params: ReadonlyArray<unknown>) {
|
|
194
241
|
return Effect.map(this.run(sql, params), (rows) => rows.map((row) => Array.from(row) as Array<any>))
|
|
195
242
|
}
|
|
243
|
+
executeValuesUnprepared(sql: string, params: ReadonlyArray<unknown>) {
|
|
244
|
+
return this.executeValues(sql, params)
|
|
245
|
+
}
|
|
196
246
|
executeUnprepared(
|
|
197
247
|
sql: string,
|
|
198
248
|
params: ReadonlyArray<unknown>,
|
|
@@ -207,7 +257,8 @@ export const make = (
|
|
|
207
257
|
return Effect.map(
|
|
208
258
|
Effect.tryPromise({
|
|
209
259
|
try: () => (this.sdk as Libsql.Client).transaction("write"),
|
|
210
|
-
catch: (cause) =>
|
|
260
|
+
catch: (cause) =>
|
|
261
|
+
new SqlError({ reason: classifyError(cause, "Failed to begin transaction", "beginTransaction") })
|
|
211
262
|
}),
|
|
212
263
|
(tx) => new LibsqlConnectionImpl(tx)
|
|
213
264
|
)
|
|
@@ -215,13 +266,15 @@ export const make = (
|
|
|
215
266
|
get commit() {
|
|
216
267
|
return Effect.tryPromise({
|
|
217
268
|
try: () => (this.sdk as Libsql.Transaction).commit(),
|
|
218
|
-
catch: (cause) =>
|
|
269
|
+
catch: (cause) =>
|
|
270
|
+
new SqlError({ reason: classifyError(cause, "Failed to commit transaction", "commitTransaction") })
|
|
219
271
|
})
|
|
220
272
|
}
|
|
221
273
|
get rollback() {
|
|
222
274
|
return Effect.tryPromise({
|
|
223
275
|
try: () => (this.sdk as Libsql.Transaction).rollback(),
|
|
224
|
-
catch: (cause) =>
|
|
276
|
+
catch: (cause) =>
|
|
277
|
+
new SqlError({ reason: classifyError(cause, "Failed to rollback transaction", "rollbackTransaction") })
|
|
225
278
|
})
|
|
226
279
|
}
|
|
227
280
|
}
|
|
@@ -249,7 +302,7 @@ export const make = (
|
|
|
249
302
|
),
|
|
250
303
|
(sdk) => new LibsqlConnectionImpl(sdk)
|
|
251
304
|
)
|
|
252
|
-
const semaphore = yield*
|
|
305
|
+
const semaphore = yield* Semaphore.make(1)
|
|
253
306
|
|
|
254
307
|
const withTransaction = Client.makeWithTransaction({
|
|
255
308
|
transactionService: LibsqlTransaction,
|
|
@@ -293,35 +346,39 @@ export const make = (
|
|
|
293
346
|
})
|
|
294
347
|
|
|
295
348
|
/**
|
|
349
|
+
* Creates a layer from a `Config`-wrapped libSQL client configuration, providing both `LibsqlClient` and `SqlClient`.
|
|
350
|
+
*
|
|
296
351
|
* @category layers
|
|
297
|
-
* @since
|
|
352
|
+
* @since 4.0.0
|
|
298
353
|
*/
|
|
299
354
|
export const layerConfig: (
|
|
300
355
|
config: Config.Wrap<LibsqlClientConfig>
|
|
301
356
|
) => Layer.Layer<LibsqlClient | Client.SqlClient, Config.ConfigError> = (
|
|
302
357
|
config: Config.Wrap<LibsqlClientConfig>
|
|
303
358
|
): Layer.Layer<LibsqlClient | Client.SqlClient, Config.ConfigError> =>
|
|
304
|
-
Layer.
|
|
305
|
-
Config.unwrap(config).
|
|
359
|
+
Layer.effectContext(
|
|
360
|
+
Config.unwrap(config).pipe(
|
|
306
361
|
Effect.flatMap(make),
|
|
307
362
|
Effect.map((client) =>
|
|
308
|
-
|
|
309
|
-
|
|
363
|
+
Context.make(LibsqlClient, client).pipe(
|
|
364
|
+
Context.add(Client.SqlClient, client)
|
|
310
365
|
)
|
|
311
366
|
)
|
|
312
367
|
)
|
|
313
368
|
).pipe(Layer.provide(Reactivity.layer))
|
|
314
369
|
|
|
315
370
|
/**
|
|
371
|
+
* Creates a layer from a concrete libSQL client configuration, providing both `LibsqlClient` and `SqlClient`.
|
|
372
|
+
*
|
|
316
373
|
* @category layers
|
|
317
|
-
* @since
|
|
374
|
+
* @since 4.0.0
|
|
318
375
|
*/
|
|
319
376
|
export const layer = (
|
|
320
377
|
config: LibsqlClientConfig
|
|
321
378
|
): Layer.Layer<LibsqlClient | Client.SqlClient> =>
|
|
322
|
-
Layer.
|
|
379
|
+
Layer.effectContext(
|
|
323
380
|
Effect.map(make(config), (client) =>
|
|
324
|
-
|
|
325
|
-
|
|
381
|
+
Context.make(LibsqlClient, client).pipe(
|
|
382
|
+
Context.add(Client.SqlClient, client)
|
|
326
383
|
))
|
|
327
384
|
).pipe(Layer.provide(Reactivity.layer))
|
package/src/LibsqlMigrator.ts
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* libSQL migration support for Effect SQL applications.
|
|
3
|
+
*
|
|
4
|
+
* This module adapts the shared SQL migrator to libSQL. It re-exports the
|
|
5
|
+
* common migration loaders and errors, then provides {@link run} and
|
|
6
|
+
* {@link layer} helpers that apply pending migrations with the current
|
|
7
|
+
* libSQL-backed `SqlClient`. `run` returns the applied migration IDs and names,
|
|
8
|
+
* while `layer` runs migrations during layer construction and provides no
|
|
9
|
+
* services.
|
|
10
|
+
*
|
|
11
|
+
* @since 4.0.0
|
|
3
12
|
*/
|
|
4
13
|
import type * as Effect from "effect/Effect"
|
|
5
14
|
import * as Layer from "effect/Layer"
|
|
@@ -8,13 +17,15 @@ import type * as Client from "effect/unstable/sql/SqlClient"
|
|
|
8
17
|
import type { SqlError } from "effect/unstable/sql/SqlError"
|
|
9
18
|
|
|
10
19
|
/**
|
|
11
|
-
* @since
|
|
20
|
+
* @since 4.0.0
|
|
12
21
|
*/
|
|
13
22
|
export * from "effect/unstable/sql/Migrator"
|
|
14
23
|
|
|
15
24
|
/**
|
|
16
|
-
*
|
|
17
|
-
*
|
|
25
|
+
* Runs SQL migrations using the configured `SqlClient`, returning the migrations that were applied.
|
|
26
|
+
*
|
|
27
|
+
* @category constructors
|
|
28
|
+
* @since 4.0.0
|
|
18
29
|
*/
|
|
19
30
|
export const run: <R2 = never>(
|
|
20
31
|
options: Migrator.MigratorOptions<R2>
|
|
@@ -25,8 +36,10 @@ export const run: <R2 = never>(
|
|
|
25
36
|
> = Migrator.make({})
|
|
26
37
|
|
|
27
38
|
/**
|
|
28
|
-
*
|
|
29
|
-
*
|
|
39
|
+
* Creates a layer that runs the configured SQL migrations during layer construction.
|
|
40
|
+
*
|
|
41
|
+
* @category constructors
|
|
42
|
+
* @since 4.0.0
|
|
30
43
|
*/
|
|
31
44
|
export const layer = <R>(
|
|
32
45
|
options: Migrator.MigratorOptions<R>
|
package/src/index.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @since
|
|
2
|
+
* @since 4.0.0
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
// @barrel: Auto-generated exports. Do not edit manually.
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
|
-
* @since
|
|
8
|
+
* @since 4.0.0
|
|
9
9
|
*/
|
|
10
10
|
export * as LibsqlClient from "./LibsqlClient.ts"
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
|
-
* @since
|
|
13
|
+
* @since 4.0.0
|
|
14
14
|
*/
|
|
15
15
|
export * as LibsqlMigrator from "./LibsqlMigrator.ts"
|