@effect/sql-mysql2 0.1.16 → 0.2.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/cjs/Client.js +24 -9
- package/dist/cjs/Client.js.map +1 -1
- package/dist/cjs/Migrator.js +3 -14
- package/dist/cjs/Migrator.js.map +1 -1
- package/dist/cjs/index.js +1 -9
- package/dist/dts/Client.d.ts +12 -1
- package/dist/dts/Client.d.ts.map +1 -1
- package/dist/dts/Migrator.d.ts +4 -3
- package/dist/dts/Migrator.d.ts.map +1 -1
- package/dist/dts/index.d.ts +0 -16
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/esm/Client.js +23 -8
- package/dist/esm/Client.js.map +1 -1
- package/dist/esm/Migrator.js +3 -14
- package/dist/esm/Migrator.js.map +1 -1
- package/dist/esm/index.js +0 -16
- package/dist/esm/index.js.map +1 -1
- package/package.json +4 -4
- package/src/Client.ts +45 -14
- package/src/Migrator.ts +10 -20
- package/src/index.ts +0 -20
package/dist/cjs/Client.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.makeCompiler = exports.make = exports.layer = exports.MysqlClient = void 0;
|
|
6
|
+
exports.makeCompiler = exports.make = exports.layer = exports.TypeId = exports.MysqlClient = void 0;
|
|
7
7
|
var Client = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/sql/Client"));
|
|
8
8
|
var _Error = /*#__PURE__*/require("@effect/sql/Error");
|
|
9
9
|
var Statement = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/sql/Statement"));
|
|
@@ -46,19 +46,23 @@ function _interopRequireWildcard(e, r) {
|
|
|
46
46
|
* @since 1.0.0
|
|
47
47
|
*/
|
|
48
48
|
|
|
49
|
+
/**
|
|
50
|
+
* @category type ids
|
|
51
|
+
* @since 1.0.0
|
|
52
|
+
*/
|
|
53
|
+
const TypeId = exports.TypeId = /*#__PURE__*/Symbol.for("@effect/sql-mysql2/Client");
|
|
49
54
|
/**
|
|
50
55
|
* @category tags
|
|
51
56
|
* @since 1.0.0
|
|
52
57
|
*/
|
|
53
|
-
const MysqlClient = exports.MysqlClient = /*#__PURE__*/Context.GenericTag("
|
|
54
|
-
const escape = /*#__PURE__*/Statement.defaultEscape("`");
|
|
58
|
+
const MysqlClient = exports.MysqlClient = /*#__PURE__*/Context.GenericTag("@effect/sql-mysql2/Client");
|
|
55
59
|
/**
|
|
56
60
|
* @category constructors
|
|
57
61
|
* @since 1.0.0
|
|
58
62
|
*/
|
|
59
63
|
const make = options => Effect.gen(function* (_) {
|
|
60
64
|
const compiler = makeCompiler(options.transformQueryNames);
|
|
61
|
-
const transformRows =
|
|
65
|
+
const transformRows = Statement.defaultTransforms(options.transformResultNames).array;
|
|
62
66
|
class ConnectionImpl {
|
|
63
67
|
conn;
|
|
64
68
|
constructor(conn) {
|
|
@@ -136,6 +140,7 @@ const make = options => Effect.gen(function* (_) {
|
|
|
136
140
|
compiler,
|
|
137
141
|
spanAttributes
|
|
138
142
|
}), {
|
|
143
|
+
[TypeId]: TypeId,
|
|
139
144
|
config: options
|
|
140
145
|
});
|
|
141
146
|
});
|
|
@@ -144,19 +149,29 @@ const make = options => Effect.gen(function* (_) {
|
|
|
144
149
|
* @since 1.0.0
|
|
145
150
|
*/
|
|
146
151
|
exports.make = make;
|
|
147
|
-
const layer = config => Layer.
|
|
152
|
+
const layer = config => Layer.scopedContext(Config.unwrap(config).pipe(Effect.flatMap(make), Effect.map(client => Context.make(MysqlClient, client).pipe(Context.add(Client.Client, client)))));
|
|
148
153
|
/**
|
|
149
154
|
* @category compiler
|
|
150
155
|
* @since 1.0.0
|
|
151
156
|
*/
|
|
152
157
|
exports.layer = layer;
|
|
153
158
|
const makeCompiler = transform => Statement.makeCompiler({
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
159
|
+
dialect: "mysql",
|
|
160
|
+
placeholder(_) {
|
|
161
|
+
return `?`;
|
|
162
|
+
},
|
|
163
|
+
onIdentifier: transform ? function (value, withoutTransform) {
|
|
164
|
+
return withoutTransform ? escape(value) : escape(transform(value));
|
|
165
|
+
} : escape,
|
|
166
|
+
onCustom() {
|
|
167
|
+
return ["", []];
|
|
168
|
+
},
|
|
169
|
+
onRecordUpdate() {
|
|
170
|
+
return ["", []];
|
|
171
|
+
}
|
|
158
172
|
});
|
|
159
173
|
exports.makeCompiler = makeCompiler;
|
|
174
|
+
const escape = /*#__PURE__*/Statement.defaultEscape("`");
|
|
160
175
|
function queryStream(conn, sql, params) {
|
|
161
176
|
return (0, _Stream.asyncPauseResume)(emit => {
|
|
162
177
|
const query = conn.query(sql, params).stream();
|
package/dist/cjs/Client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Client.js","names":["Client","_interopRequireWildcard","require","_Error","Statement","_Stream","Chunk","Config","Context","Duration","Effect","Layer","Secret","Stream","Mysql","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","
|
|
1
|
+
{"version":3,"file":"Client.js","names":["Client","_interopRequireWildcard","require","_Error","Statement","_Stream","Chunk","Config","Context","Duration","Effect","Layer","Secret","Stream","Mysql","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","MysqlClient","GenericTag","make","options","gen","_","compiler","makeCompiler","transformQueryNames","transformRows","defaultTransforms","transformResultNames","array","ConnectionImpl","conn","constructor","run","sql","values","transform","rowsAsArray","method","async","resume","error","results","_fields","fail","SqlError","succeed","execute","params","executeWithoutTransform","executeValues","executeRaw","executeStream","stream","queryStream","mapChunks","unsafeFromArray","toReadonlyArray","pool","url","createPool","value","poolConfig","host","port","database","user","username","password","undefined","connectionLimit","maxConnections","idleTimeout","connectionTTL","toMillis","addFinalizer","end","void","poolConnection","acquireConn","acquireRelease","getConnection","sync","release","transactionAcquirer","map","spanAttributes","push","assign","acquirer","config","layer","scopedContext","unwrap","pipe","flatMap","client","add","dialect","placeholder","onIdentifier","withoutTransform","escape","onCustom","onRecordUpdate","defaultEscape","asyncPauseResume","emit","query","buffer","taskPending","on","row","queueMicrotask","items","onInterrupt","destroy","onPause","pause","onResume"],"sources":["../../src/Client.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/Migrator.js
CHANGED
|
@@ -26,7 +26,7 @@ Object.keys(Migrator).forEach(function (key) {
|
|
|
26
26
|
var Effect = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Effect"));
|
|
27
27
|
var Layer = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Layer"));
|
|
28
28
|
var Secret = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Secret"));
|
|
29
|
-
var
|
|
29
|
+
var _Client = /*#__PURE__*/require("./Client.js");
|
|
30
30
|
function _getRequireWildcardCache(e) {
|
|
31
31
|
if ("function" != typeof WeakMap) return null;
|
|
32
32
|
var r = new WeakMap(),
|
|
@@ -65,20 +65,9 @@ function _interopRequireWildcard(e, r) {
|
|
|
65
65
|
* @since 1.0.0
|
|
66
66
|
*/
|
|
67
67
|
const run = exports.run = /*#__PURE__*/Migrator.make({
|
|
68
|
-
|
|
69
|
-
ensureTable(sql, table) {
|
|
70
|
-
return sql`CREATE TABLE IF NOT EXISTS ${sql(table)} (
|
|
71
|
-
migration_id INTEGER UNSIGNED NOT NULL,
|
|
72
|
-
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
73
|
-
name VARCHAR(255) NOT NULL,
|
|
74
|
-
PRIMARY KEY (migration_id)
|
|
75
|
-
)`;
|
|
76
|
-
},
|
|
77
|
-
lockTable(sql, table) {
|
|
78
|
-
return sql`LOCK TABLE ${sql(table)} IN ACCESS EXCLUSIVE MODE`;
|
|
79
|
-
},
|
|
80
|
-
dumpSchema(sql, path, table) {
|
|
68
|
+
dumpSchema(path, table) {
|
|
81
69
|
const mysqlDump = args => Effect.gen(function* (_) {
|
|
70
|
+
const sql = yield* _Client.MysqlClient;
|
|
82
71
|
const dump = yield* _(Command.make("mysqldump", ...(sql.config.username ? ["-u", sql.config.username] : []), ...(sql.config.database ? [sql.config.database] : []), "--skip-comments", "--compact", ...args), Command.env({
|
|
83
72
|
PATH: globalThis.process?.env.PATH,
|
|
84
73
|
MYSQL_HOST: sql.config.host,
|
package/dist/cjs/Migrator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Migrator.js","names":["Command","_interopRequireWildcard","require","_FileSystem","_Path","Migrator","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","Effect","Layer","Secret","
|
|
1
|
+
{"version":3,"file":"Migrator.js","names":["Command","_interopRequireWildcard","require","_FileSystem","_Path","Migrator","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","Effect","Layer","Secret","_Client","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","n","__proto__","a","getOwnPropertyDescriptor","u","i","set","run","make","dumpSchema","path","table","mysqlDump","args","gen","_","sql","MysqlClient","dump","config","username","database","env","PATH","globalThis","process","MYSQL_HOST","host","MYSQL_TCP_PORT","port","toString","MYSQL_PWD","password","value","undefined","string","replace","trim","pipe","mapError","error","MigrationError","reason","message","dumpMigrations","dumpAll","map","all","concurrency","schema","migrations","dumpFile","file","fs","FileSystem","Path","makeDirectory","dirname","recursive","writeFileString","layer","options","effectDiscard"],"sources":["../../src/Migrator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/cjs/index.js
CHANGED
|
@@ -3,19 +3,11 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.migrator = exports.client = void 0;
|
|
7
7
|
var _client = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./Client.js"));
|
|
8
8
|
exports.client = _client;
|
|
9
|
-
var _error = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/sql/Error"));
|
|
10
|
-
exports.error = _error;
|
|
11
9
|
var _migrator = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./Migrator.js"));
|
|
12
10
|
exports.migrator = _migrator;
|
|
13
|
-
var _resolver = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/sql/Resolver"));
|
|
14
|
-
exports.resolver = _resolver;
|
|
15
|
-
var _schema = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/sql/Schema"));
|
|
16
|
-
exports.schema = _schema;
|
|
17
|
-
var _statement = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@effect/sql/Statement"));
|
|
18
|
-
exports.statement = _statement;
|
|
19
11
|
function _getRequireWildcardCache(e) {
|
|
20
12
|
if ("function" != typeof WeakMap) return null;
|
|
21
13
|
var r = new WeakMap(),
|
package/dist/dts/Client.d.ts
CHANGED
|
@@ -12,11 +12,22 @@ import * as Layer from "effect/Layer";
|
|
|
12
12
|
import type { Scope } from "effect/Scope";
|
|
13
13
|
import * as Secret from "effect/Secret";
|
|
14
14
|
import * as Mysql from "mysql2";
|
|
15
|
+
/**
|
|
16
|
+
* @category type ids
|
|
17
|
+
* @since 1.0.0
|
|
18
|
+
*/
|
|
19
|
+
export declare const TypeId: unique symbol;
|
|
20
|
+
/**
|
|
21
|
+
* @category type ids
|
|
22
|
+
* @since 1.0.0
|
|
23
|
+
*/
|
|
24
|
+
export type TypeId = typeof TypeId;
|
|
15
25
|
/**
|
|
16
26
|
* @category models
|
|
17
27
|
* @since 1.0.0
|
|
18
28
|
*/
|
|
19
29
|
export interface MysqlClient extends Client.Client {
|
|
30
|
+
readonly [TypeId]: TypeId;
|
|
20
31
|
readonly config: MysqlClientConfig;
|
|
21
32
|
}
|
|
22
33
|
/**
|
|
@@ -53,7 +64,7 @@ export declare const make: (options: MysqlClientConfig) => Effect.Effect<MysqlCl
|
|
|
53
64
|
* @category layers
|
|
54
65
|
* @since 1.0.0
|
|
55
66
|
*/
|
|
56
|
-
export declare const layer: (config: Config.Config.Wrap<MysqlClientConfig>) => Layer.Layer<MysqlClient, ConfigError>;
|
|
67
|
+
export declare const layer: (config: Config.Config.Wrap<MysqlClientConfig>) => Layer.Layer<MysqlClient | Client.Client, ConfigError>;
|
|
57
68
|
/**
|
|
58
69
|
* @category compiler
|
|
59
70
|
* @since 1.0.0
|
package/dist/dts/Client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Client.d.ts","sourceRoot":"","sources":["../../src/Client.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAA;AAG5C,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAGlD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,QAAQ,CAAA;AAE/B;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,MAAM,CAAC,MAAM;IAChD,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAA;CACnC;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"Client.d.ts","sourceRoot":"","sources":["../../src/Client.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,oBAAoB,CAAA;AAG5C,OAAO,KAAK,SAAS,MAAM,uBAAuB,CAAA;AAGlD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,QAAQ,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AACrC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,QAAQ,CAAA;AAE/B;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAgD,CAAA;AAE5E;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAA;AAElC;;;GAGG;AACH,MAAM,WAAW,WAAY,SAAQ,MAAM,CAAC,MAAM;IAChD,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAA;CACnC;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,uCAA+D,CAAA;AAEvF;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,CAAA;IAE5B,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,CAAA;IAEjC,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,aAAa,CAAC,EAAE,QAAQ,CAAC,aAAa,CAAA;IAE/C,QAAQ,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,WAAW,CAAA;IAEvC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;IACvD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAA;CACvD;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI,YACN,iBAAiB,KACzB,OAAO,MAAM,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,CAuHtC,CAAA;AAEJ;;;GAGG;AACH,eAAO,MAAM,KAAK,WACR,OAAO,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAC5C,MAAM,KAAK,CAAC,WAAW,GAAG,OAAO,MAAM,EAAE,WAAW,CAUpD,CAAA;AAEH;;;GAGG;AACH,eAAO,MAAM,YAAY,eAAgB,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,uBAiB1D,CAAA"}
|
package/dist/dts/Migrator.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import type { CommandExecutor } from "@effect/platform/CommandExecutor";
|
|
2
2
|
import { FileSystem } from "@effect/platform/FileSystem";
|
|
3
3
|
import { Path } from "@effect/platform/Path";
|
|
4
|
+
import type * as Client from "@effect/sql/Client";
|
|
4
5
|
import type { SqlError } from "@effect/sql/Error";
|
|
5
6
|
import * as Migrator from "@effect/sql/Migrator";
|
|
6
7
|
import * as Effect from "effect/Effect";
|
|
7
8
|
import * as Layer from "effect/Layer";
|
|
8
|
-
import
|
|
9
|
+
import { MysqlClient } from "./Client.js";
|
|
9
10
|
/**
|
|
10
11
|
* @since 1.0.0
|
|
11
12
|
*/
|
|
@@ -14,10 +15,10 @@ export * from "@effect/sql/Migrator";
|
|
|
14
15
|
* @category constructor
|
|
15
16
|
* @since 1.0.0
|
|
16
17
|
*/
|
|
17
|
-
export declare const run: <
|
|
18
|
+
export declare const run: <R2 = never>(options: Migrator.MigratorOptions<R2>) => Effect.Effect<ReadonlyArray<readonly [id: number, name: string]>, Migrator.MigrationError | SqlError, FileSystem | Path | MysqlClient | Client.Client | CommandExecutor | R2>;
|
|
18
19
|
/**
|
|
19
20
|
* @category layers
|
|
20
21
|
* @since 1.0.0
|
|
21
22
|
*/
|
|
22
|
-
export declare const layer: <R>(options: Migrator.MigratorOptions<R>) => Layer.Layer<never,
|
|
23
|
+
export declare const layer: <R>(options: Migrator.MigratorOptions<R>) => Layer.Layer<never, Migrator.MigrationError | SqlError, MysqlClient | Client.Client | CommandExecutor | FileSystem | Path | R>;
|
|
23
24
|
//# sourceMappingURL=Migrator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Migrator.d.ts","sourceRoot":"","sources":["../../src/Migrator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AAC5C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAA;AAChD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,
|
|
1
|
+
{"version":3,"file":"Migrator.d.ts","sourceRoot":"","sources":["../../src/Migrator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAA;AACvE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AAC5C,OAAO,KAAK,KAAK,MAAM,MAAM,oBAAoB,CAAA;AACjD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AACjD,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAA;AAChD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AACvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEzC;;GAEG;AACH,cAAc,sBAAsB,CAAA;AAEpC;;;GAGG;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,UAAU,GAAG,IAAI,GAAG,WAAW,GAAG,MAAM,CAAC,MAAM,GAAG,eAAe,GAAG,EAAE,CAuDtE,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,KAAK,eACP,SAAS,eAAe,CAAC,CAAC,CAAC,KACnC,MAAM,KAAK,CACZ,KAAK,EACL,SAAS,cAAc,GAAG,QAAQ,EAClC,WAAW,GAAG,OAAO,MAAM,GAAG,eAAe,GAAG,UAAU,GAAG,IAAI,GAAG,CAAC,CACjC,CAAA"}
|
package/dist/dts/index.d.ts
CHANGED
|
@@ -5,24 +5,8 @@
|
|
|
5
5
|
* @since 1.0.0
|
|
6
6
|
*/
|
|
7
7
|
export * as client from "./Client.js";
|
|
8
|
-
/**
|
|
9
|
-
* @since 1.0.0
|
|
10
|
-
*/
|
|
11
|
-
export * as error from "@effect/sql/Error";
|
|
12
8
|
/**
|
|
13
9
|
* @since 1.0.0
|
|
14
10
|
*/
|
|
15
11
|
export * as migrator from "./Migrator.js";
|
|
16
|
-
/**
|
|
17
|
-
* @since 1.0.0
|
|
18
|
-
*/
|
|
19
|
-
export * as resolver from "@effect/sql/Resolver";
|
|
20
|
-
/**
|
|
21
|
-
* @since 1.0.0
|
|
22
|
-
*/
|
|
23
|
-
export * as schema from "@effect/sql/Schema";
|
|
24
|
-
/**
|
|
25
|
-
* @since 1.0.0
|
|
26
|
-
*/
|
|
27
|
-
export * as statement from "@effect/sql/Statement";
|
|
28
12
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/dts/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;GAEG;AACH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA"}
|
package/dist/esm/Client.js
CHANGED
|
@@ -14,19 +14,23 @@ import * as Layer from "effect/Layer";
|
|
|
14
14
|
import * as Secret from "effect/Secret";
|
|
15
15
|
import * as Stream from "effect/Stream";
|
|
16
16
|
import * as Mysql from "mysql2";
|
|
17
|
+
/**
|
|
18
|
+
* @category type ids
|
|
19
|
+
* @since 1.0.0
|
|
20
|
+
*/
|
|
21
|
+
export const TypeId = /*#__PURE__*/Symbol.for("@effect/sql-mysql2/Client");
|
|
17
22
|
/**
|
|
18
23
|
* @category tags
|
|
19
24
|
* @since 1.0.0
|
|
20
25
|
*/
|
|
21
|
-
export const MysqlClient = /*#__PURE__*/Context.GenericTag("
|
|
22
|
-
const escape = /*#__PURE__*/Statement.defaultEscape("`");
|
|
26
|
+
export const MysqlClient = /*#__PURE__*/Context.GenericTag("@effect/sql-mysql2/Client");
|
|
23
27
|
/**
|
|
24
28
|
* @category constructors
|
|
25
29
|
* @since 1.0.0
|
|
26
30
|
*/
|
|
27
31
|
export const make = options => Effect.gen(function* (_) {
|
|
28
32
|
const compiler = makeCompiler(options.transformQueryNames);
|
|
29
|
-
const transformRows =
|
|
33
|
+
const transformRows = Statement.defaultTransforms(options.transformResultNames).array;
|
|
30
34
|
class ConnectionImpl {
|
|
31
35
|
conn;
|
|
32
36
|
constructor(conn) {
|
|
@@ -104,6 +108,7 @@ export const make = options => Effect.gen(function* (_) {
|
|
|
104
108
|
compiler,
|
|
105
109
|
spanAttributes
|
|
106
110
|
}), {
|
|
111
|
+
[TypeId]: TypeId,
|
|
107
112
|
config: options
|
|
108
113
|
});
|
|
109
114
|
});
|
|
@@ -111,17 +116,27 @@ export const make = options => Effect.gen(function* (_) {
|
|
|
111
116
|
* @category layers
|
|
112
117
|
* @since 1.0.0
|
|
113
118
|
*/
|
|
114
|
-
export const layer = config => Layer.
|
|
119
|
+
export const layer = config => Layer.scopedContext(Config.unwrap(config).pipe(Effect.flatMap(make), Effect.map(client => Context.make(MysqlClient, client).pipe(Context.add(Client.Client, client)))));
|
|
115
120
|
/**
|
|
116
121
|
* @category compiler
|
|
117
122
|
* @since 1.0.0
|
|
118
123
|
*/
|
|
119
124
|
export const makeCompiler = transform => Statement.makeCompiler({
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
125
|
+
dialect: "mysql",
|
|
126
|
+
placeholder(_) {
|
|
127
|
+
return `?`;
|
|
128
|
+
},
|
|
129
|
+
onIdentifier: transform ? function (value, withoutTransform) {
|
|
130
|
+
return withoutTransform ? escape(value) : escape(transform(value));
|
|
131
|
+
} : escape,
|
|
132
|
+
onCustom() {
|
|
133
|
+
return ["", []];
|
|
134
|
+
},
|
|
135
|
+
onRecordUpdate() {
|
|
136
|
+
return ["", []];
|
|
137
|
+
}
|
|
124
138
|
});
|
|
139
|
+
const escape = /*#__PURE__*/Statement.defaultEscape("`");
|
|
125
140
|
function queryStream(conn, sql, params) {
|
|
126
141
|
return asyncPauseResume(emit => {
|
|
127
142
|
const query = conn.query(sql, params).stream();
|
package/dist/esm/Client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Client.js","names":["Client","SqlError","Statement","asyncPauseResume","Chunk","Config","Context","Duration","Effect","Layer","Secret","Stream","Mysql","
|
|
1
|
+
{"version":3,"file":"Client.js","names":["Client","SqlError","Statement","asyncPauseResume","Chunk","Config","Context","Duration","Effect","Layer","Secret","Stream","Mysql","TypeId","Symbol","for","MysqlClient","GenericTag","make","options","gen","_","compiler","makeCompiler","transformQueryNames","transformRows","defaultTransforms","transformResultNames","array","ConnectionImpl","conn","constructor","run","sql","values","transform","rowsAsArray","method","async","resume","error","results","_fields","fail","succeed","execute","params","executeWithoutTransform","executeValues","executeRaw","executeStream","stream","queryStream","mapChunks","unsafeFromArray","toReadonlyArray","pool","url","createPool","value","poolConfig","host","port","database","user","username","password","undefined","connectionLimit","maxConnections","idleTimeout","connectionTTL","toMillis","addFinalizer","end","void","poolConnection","acquireConn","acquireRelease","getConnection","sync","release","transactionAcquirer","map","spanAttributes","push","Object","assign","acquirer","config","layer","scopedContext","unwrap","pipe","flatMap","client","add","dialect","placeholder","onIdentifier","withoutTransform","escape","onCustom","onRecordUpdate","defaultEscape","emit","query","buffer","taskPending","on","row","queueMicrotask","items","onInterrupt","destroy","onPause","pause","onResume"],"sources":["../../src/Client.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/Migrator.js
CHANGED
|
@@ -8,7 +8,7 @@ import * as Migrator from "@effect/sql/Migrator";
|
|
|
8
8
|
import * as Effect from "effect/Effect";
|
|
9
9
|
import * as Layer from "effect/Layer";
|
|
10
10
|
import * as Secret from "effect/Secret";
|
|
11
|
-
import
|
|
11
|
+
import { MysqlClient } from "./Client.js";
|
|
12
12
|
/**
|
|
13
13
|
* @since 1.0.0
|
|
14
14
|
*/
|
|
@@ -18,20 +18,9 @@ export * from "@effect/sql/Migrator";
|
|
|
18
18
|
* @since 1.0.0
|
|
19
19
|
*/
|
|
20
20
|
export const run = /*#__PURE__*/Migrator.make({
|
|
21
|
-
|
|
22
|
-
ensureTable(sql, table) {
|
|
23
|
-
return sql`CREATE TABLE IF NOT EXISTS ${sql(table)} (
|
|
24
|
-
migration_id INTEGER UNSIGNED NOT NULL,
|
|
25
|
-
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
26
|
-
name VARCHAR(255) NOT NULL,
|
|
27
|
-
PRIMARY KEY (migration_id)
|
|
28
|
-
)`;
|
|
29
|
-
},
|
|
30
|
-
lockTable(sql, table) {
|
|
31
|
-
return sql`LOCK TABLE ${sql(table)} IN ACCESS EXCLUSIVE MODE`;
|
|
32
|
-
},
|
|
33
|
-
dumpSchema(sql, path, table) {
|
|
21
|
+
dumpSchema(path, table) {
|
|
34
22
|
const mysqlDump = args => Effect.gen(function* (_) {
|
|
23
|
+
const sql = yield* MysqlClient;
|
|
35
24
|
const dump = yield* _(Command.make("mysqldump", ...(sql.config.username ? ["-u", sql.config.username] : []), ...(sql.config.database ? [sql.config.database] : []), "--skip-comments", "--compact", ...args), Command.env({
|
|
36
25
|
PATH: globalThis.process?.env.PATH,
|
|
37
26
|
MYSQL_HOST: sql.config.host,
|
package/dist/esm/Migrator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Migrator.js","names":["Command","FileSystem","Path","Migrator","Effect","Layer","Secret","
|
|
1
|
+
{"version":3,"file":"Migrator.js","names":["Command","FileSystem","Path","Migrator","Effect","Layer","Secret","MysqlClient","run","make","dumpSchema","path","table","mysqlDump","args","gen","_","sql","dump","config","username","database","env","PATH","globalThis","process","MYSQL_HOST","host","MYSQL_TCP_PORT","port","toString","MYSQL_PWD","password","value","undefined","string","replace","trim","pipe","mapError","error","MigrationError","reason","message","dumpMigrations","dumpAll","map","all","concurrency","schema","migrations","dumpFile","file","fs","makeDirectory","dirname","recursive","writeFileString","layer","options","effectDiscard"],"sources":["../../src/Migrator.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/esm/index.js
CHANGED
|
@@ -5,24 +5,8 @@
|
|
|
5
5
|
* @since 1.0.0
|
|
6
6
|
*/
|
|
7
7
|
export * as client from "./Client.js";
|
|
8
|
-
/**
|
|
9
|
-
* @since 1.0.0
|
|
10
|
-
*/
|
|
11
|
-
export * as error from "@effect/sql/Error";
|
|
12
8
|
/**
|
|
13
9
|
* @since 1.0.0
|
|
14
10
|
*/
|
|
15
11
|
export * as migrator from "./Migrator.js";
|
|
16
|
-
/**
|
|
17
|
-
* @since 1.0.0
|
|
18
|
-
*/
|
|
19
|
-
export * as resolver from "@effect/sql/Resolver";
|
|
20
|
-
/**
|
|
21
|
-
* @since 1.0.0
|
|
22
|
-
*/
|
|
23
|
-
export * as schema from "@effect/sql/Schema";
|
|
24
|
-
/**
|
|
25
|
-
* @since 1.0.0
|
|
26
|
-
*/
|
|
27
|
-
export * as statement from "@effect/sql/Statement";
|
|
28
12
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["client","
|
|
1
|
+
{"version":3,"file":"index.js","names":["client","migrator"],"sources":["../../src/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;;;AAGA,OAAO,KAAKA,MAAM,MAAM,aAAa;AAErC;;;AAGA,OAAO,KAAKC,QAAQ,MAAM,eAAe","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect/sql-mysql2",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "A MySQL toolkit for Effect",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
"mysql2": "^3.9.7"
|
|
14
14
|
},
|
|
15
15
|
"peerDependencies": {
|
|
16
|
-
"@effect/platform": "^0.52.
|
|
17
|
-
"@effect/sql": "^0.
|
|
18
|
-
"effect": "^3.1.
|
|
16
|
+
"@effect/platform": "^0.52.2",
|
|
17
|
+
"@effect/sql": "^0.2.0",
|
|
18
|
+
"effect": "^3.1.2"
|
|
19
19
|
},
|
|
20
20
|
"publishConfig": {
|
|
21
21
|
"provenance": true
|
package/src/Client.ts
CHANGED
|
@@ -18,11 +18,24 @@ import * as Secret from "effect/Secret"
|
|
|
18
18
|
import * as Stream from "effect/Stream"
|
|
19
19
|
import * as Mysql from "mysql2"
|
|
20
20
|
|
|
21
|
+
/**
|
|
22
|
+
* @category type ids
|
|
23
|
+
* @since 1.0.0
|
|
24
|
+
*/
|
|
25
|
+
export const TypeId: unique symbol = Symbol.for("@effect/sql-mysql2/Client")
|
|
26
|
+
|
|
27
|
+
/**
|
|
28
|
+
* @category type ids
|
|
29
|
+
* @since 1.0.0
|
|
30
|
+
*/
|
|
31
|
+
export type TypeId = typeof TypeId
|
|
32
|
+
|
|
21
33
|
/**
|
|
22
34
|
* @category models
|
|
23
35
|
* @since 1.0.0
|
|
24
36
|
*/
|
|
25
37
|
export interface MysqlClient extends Client.Client {
|
|
38
|
+
readonly [TypeId]: TypeId
|
|
26
39
|
readonly config: MysqlClientConfig
|
|
27
40
|
}
|
|
28
41
|
|
|
@@ -30,7 +43,7 @@ export interface MysqlClient extends Client.Client {
|
|
|
30
43
|
* @category tags
|
|
31
44
|
* @since 1.0.0
|
|
32
45
|
*/
|
|
33
|
-
export const MysqlClient = Context.GenericTag<MysqlClient>("
|
|
46
|
+
export const MysqlClient = Context.GenericTag<MysqlClient>("@effect/sql-mysql2/Client")
|
|
34
47
|
|
|
35
48
|
/**
|
|
36
49
|
* @category models
|
|
@@ -57,8 +70,6 @@ export interface MysqlClientConfig {
|
|
|
57
70
|
readonly transformQueryNames?: (str: string) => string
|
|
58
71
|
}
|
|
59
72
|
|
|
60
|
-
const escape = Statement.defaultEscape("`")
|
|
61
|
-
|
|
62
73
|
/**
|
|
63
74
|
* @category constructors
|
|
64
75
|
* @since 1.0.0
|
|
@@ -68,8 +79,7 @@ export const make = (
|
|
|
68
79
|
): Effect.Effect<MysqlClient, never, Scope> =>
|
|
69
80
|
Effect.gen(function*(_) {
|
|
70
81
|
const compiler = makeCompiler(options.transformQueryNames)
|
|
71
|
-
|
|
72
|
-
const transformRows = Client.defaultTransforms(
|
|
82
|
+
const transformRows = Statement.defaultTransforms(
|
|
73
83
|
options.transformResultNames!
|
|
74
84
|
).array
|
|
75
85
|
|
|
@@ -183,7 +193,7 @@ export const make = (
|
|
|
183
193
|
compiler,
|
|
184
194
|
spanAttributes
|
|
185
195
|
}),
|
|
186
|
-
{ config: options }
|
|
196
|
+
{ [TypeId]: TypeId as TypeId, config: options }
|
|
187
197
|
)
|
|
188
198
|
})
|
|
189
199
|
|
|
@@ -191,11 +201,19 @@ export const make = (
|
|
|
191
201
|
* @category layers
|
|
192
202
|
* @since 1.0.0
|
|
193
203
|
*/
|
|
194
|
-
export const layer
|
|
195
|
-
config: Config.Config.Wrap<MysqlClientConfig>
|
|
196
|
-
) => Layer.Layer<MysqlClient, ConfigError> = (
|
|
204
|
+
export const layer = (
|
|
197
205
|
config: Config.Config.Wrap<MysqlClientConfig>
|
|
198
|
-
)
|
|
206
|
+
): Layer.Layer<MysqlClient | Client.Client, ConfigError> =>
|
|
207
|
+
Layer.scopedContext(
|
|
208
|
+
Config.unwrap(config).pipe(
|
|
209
|
+
Effect.flatMap(make),
|
|
210
|
+
Effect.map((client) =>
|
|
211
|
+
Context.make(MysqlClient, client).pipe(
|
|
212
|
+
Context.add(Client.Client, client)
|
|
213
|
+
)
|
|
214
|
+
)
|
|
215
|
+
)
|
|
216
|
+
)
|
|
199
217
|
|
|
200
218
|
/**
|
|
201
219
|
* @category compiler
|
|
@@ -203,12 +221,25 @@ export const layer: (
|
|
|
203
221
|
*/
|
|
204
222
|
export const makeCompiler = (transform?: (_: string) => string) =>
|
|
205
223
|
Statement.makeCompiler({
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
224
|
+
dialect: "mysql",
|
|
225
|
+
placeholder(_) {
|
|
226
|
+
return `?`
|
|
227
|
+
},
|
|
228
|
+
onIdentifier: transform ?
|
|
229
|
+
function(value, withoutTransform) {
|
|
230
|
+
return withoutTransform ? escape(value) : escape(transform(value))
|
|
231
|
+
} :
|
|
232
|
+
escape,
|
|
233
|
+
onCustom() {
|
|
234
|
+
return ["", []]
|
|
235
|
+
},
|
|
236
|
+
onRecordUpdate() {
|
|
237
|
+
return ["", []]
|
|
238
|
+
}
|
|
210
239
|
})
|
|
211
240
|
|
|
241
|
+
const escape = Statement.defaultEscape("`")
|
|
242
|
+
|
|
212
243
|
function queryStream(
|
|
213
244
|
conn: Mysql.PoolConnection,
|
|
214
245
|
sql: string,
|
package/src/Migrator.ts
CHANGED
|
@@ -5,12 +5,13 @@ import * as Command from "@effect/platform/Command"
|
|
|
5
5
|
import type { CommandExecutor } from "@effect/platform/CommandExecutor"
|
|
6
6
|
import { FileSystem } from "@effect/platform/FileSystem"
|
|
7
7
|
import { Path } from "@effect/platform/Path"
|
|
8
|
+
import type * as Client from "@effect/sql/Client"
|
|
8
9
|
import type { SqlError } from "@effect/sql/Error"
|
|
9
10
|
import * as Migrator from "@effect/sql/Migrator"
|
|
10
11
|
import * as Effect from "effect/Effect"
|
|
11
12
|
import * as Layer from "effect/Layer"
|
|
12
13
|
import * as Secret from "effect/Secret"
|
|
13
|
-
import
|
|
14
|
+
import { MysqlClient } from "./Client.js"
|
|
14
15
|
|
|
15
16
|
/**
|
|
16
17
|
* @since 1.0.0
|
|
@@ -21,28 +22,17 @@ export * from "@effect/sql/Migrator"
|
|
|
21
22
|
* @category constructor
|
|
22
23
|
* @since 1.0.0
|
|
23
24
|
*/
|
|
24
|
-
export const run: <
|
|
25
|
-
options: Migrator.MigratorOptions<
|
|
25
|
+
export const run: <R2 = never>(
|
|
26
|
+
options: Migrator.MigratorOptions<R2>
|
|
26
27
|
) => Effect.Effect<
|
|
27
28
|
ReadonlyArray<readonly [id: number, name: string]>,
|
|
28
|
-
|
|
29
|
-
|
|
29
|
+
Migrator.MigrationError | SqlError,
|
|
30
|
+
FileSystem | Path | MysqlClient | Client.Client | CommandExecutor | R2
|
|
30
31
|
> = Migrator.make({
|
|
31
|
-
|
|
32
|
-
ensureTable(sql, table) {
|
|
33
|
-
return sql`CREATE TABLE IF NOT EXISTS ${sql(table)} (
|
|
34
|
-
migration_id INTEGER UNSIGNED NOT NULL,
|
|
35
|
-
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
|
36
|
-
name VARCHAR(255) NOT NULL,
|
|
37
|
-
PRIMARY KEY (migration_id)
|
|
38
|
-
)`
|
|
39
|
-
},
|
|
40
|
-
lockTable(sql, table) {
|
|
41
|
-
return sql`LOCK TABLE ${sql(table)} IN ACCESS EXCLUSIVE MODE`
|
|
42
|
-
},
|
|
43
|
-
dumpSchema(sql, path, table) {
|
|
32
|
+
dumpSchema(path, table) {
|
|
44
33
|
const mysqlDump = (args: Array<string>) =>
|
|
45
34
|
Effect.gen(function*(_) {
|
|
35
|
+
const sql = yield* MysqlClient
|
|
46
36
|
const dump = yield* _(
|
|
47
37
|
Command.make(
|
|
48
38
|
"mysqldump",
|
|
@@ -102,6 +92,6 @@ export const layer = <R>(
|
|
|
102
92
|
options: Migrator.MigratorOptions<R>
|
|
103
93
|
): Layer.Layer<
|
|
104
94
|
never,
|
|
105
|
-
|
|
106
|
-
Client.
|
|
95
|
+
Migrator.MigrationError | SqlError,
|
|
96
|
+
MysqlClient | Client.Client | CommandExecutor | FileSystem | Path | R
|
|
107
97
|
> => Layer.effectDiscard(run(options))
|
package/src/index.ts
CHANGED
|
@@ -7,27 +7,7 @@
|
|
|
7
7
|
*/
|
|
8
8
|
export * as client from "./Client.js"
|
|
9
9
|
|
|
10
|
-
/**
|
|
11
|
-
* @since 1.0.0
|
|
12
|
-
*/
|
|
13
|
-
export * as error from "@effect/sql/Error"
|
|
14
|
-
|
|
15
10
|
/**
|
|
16
11
|
* @since 1.0.0
|
|
17
12
|
*/
|
|
18
13
|
export * as migrator from "./Migrator.js"
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* @since 1.0.0
|
|
22
|
-
*/
|
|
23
|
-
export * as resolver from "@effect/sql/Resolver"
|
|
24
|
-
|
|
25
|
-
/**
|
|
26
|
-
* @since 1.0.0
|
|
27
|
-
*/
|
|
28
|
-
export * as schema from "@effect/sql/Schema"
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* @since 1.0.0
|
|
32
|
-
*/
|
|
33
|
-
export * as statement from "@effect/sql/Statement"
|