@effect/sql-pg 0.46.0 → 0.48.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/PgClient.js +143 -100
- package/dist/cjs/PgClient.js.map +1 -1
- package/dist/dts/PgClient.d.ts +11 -62
- package/dist/dts/PgClient.d.ts.map +1 -1
- package/dist/esm/PgClient.js +143 -100
- package/dist/esm/PgClient.js.map +1 -1
- package/package.json +7 -6
- package/src/PgClient.ts +155 -183
package/dist/cjs/PgClient.js
CHANGED
|
@@ -8,15 +8,21 @@ var Reactivity = _interopRequireWildcard(require("@effect/experimental/Reactivit
|
|
|
8
8
|
var Client = _interopRequireWildcard(require("@effect/sql/SqlClient"));
|
|
9
9
|
var _SqlError = require("@effect/sql/SqlError");
|
|
10
10
|
var Statement = _interopRequireWildcard(require("@effect/sql/Statement"));
|
|
11
|
+
var Arr = _interopRequireWildcard(require("effect/Array"));
|
|
11
12
|
var Chunk = _interopRequireWildcard(require("effect/Chunk"));
|
|
12
13
|
var Config = _interopRequireWildcard(require("effect/Config"));
|
|
13
14
|
var Context = _interopRequireWildcard(require("effect/Context"));
|
|
14
15
|
var Duration = _interopRequireWildcard(require("effect/Duration"));
|
|
15
16
|
var Effect = _interopRequireWildcard(require("effect/Effect"));
|
|
17
|
+
var Fiber = _interopRequireWildcard(require("effect/Fiber"));
|
|
16
18
|
var Layer = _interopRequireWildcard(require("effect/Layer"));
|
|
19
|
+
var Option = _interopRequireWildcard(require("effect/Option"));
|
|
20
|
+
var RcRef = _interopRequireWildcard(require("effect/RcRef"));
|
|
17
21
|
var Redacted = _interopRequireWildcard(require("effect/Redacted"));
|
|
22
|
+
var Scope = _interopRequireWildcard(require("effect/Scope"));
|
|
18
23
|
var Stream = _interopRequireWildcard(require("effect/Stream"));
|
|
19
|
-
var
|
|
24
|
+
var Pg = _interopRequireWildcard(require("pg"));
|
|
25
|
+
var _pgCursor = _interopRequireDefault(require("pg-cursor"));
|
|
20
26
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
21
27
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
22
28
|
/**
|
|
@@ -31,7 +37,7 @@ const ATTR_SERVER_PORT = "server.port";
|
|
|
31
37
|
* @category type ids
|
|
32
38
|
* @since 1.0.0
|
|
33
39
|
*/
|
|
34
|
-
const TypeId = exports.TypeId =
|
|
40
|
+
const TypeId = exports.TypeId = "~@effect/sql-pg/PgClient";
|
|
35
41
|
/**
|
|
36
42
|
* @category tags
|
|
37
43
|
* @since 1.0.0
|
|
@@ -44,36 +50,30 @@ const PgClient = exports.PgClient = /*#__PURE__*/Context.GenericTag("@effect/sql
|
|
|
44
50
|
const make = options => Effect.gen(function* () {
|
|
45
51
|
const compiler = makeCompiler(options.transformQueryNames, options.transformJson);
|
|
46
52
|
const transformRows = options.transformResultNames ? Statement.defaultTransforms(options.transformResultNames, options.transformJson).array : undefined;
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
idle_timeout: options.idleTimeout ? Math.round(Duration.toMillis(Duration.decode(options.idleTimeout)) / 1000) : undefined,
|
|
51
|
-
connect_timeout: options.connectTimeout ? Math.round(Duration.toMillis(Duration.decode(options.connectTimeout)) / 1000) : undefined,
|
|
53
|
+
const pool = new Pg.Pool({
|
|
54
|
+
connectionString: options.url ? Redacted.value(options.url) : undefined,
|
|
55
|
+
user: options.username,
|
|
52
56
|
host: options.host,
|
|
53
|
-
port: options.port,
|
|
54
|
-
ssl: options.ssl,
|
|
55
|
-
path: options.path,
|
|
56
57
|
database: options.database,
|
|
57
|
-
username: options.username,
|
|
58
58
|
password: options.password ? Redacted.value(options.password) : undefined,
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
};
|
|
69
|
-
|
|
59
|
+
ssl: options.ssl,
|
|
60
|
+
port: options.port,
|
|
61
|
+
connectionTimeoutMillis: options.connectTimeout ? Duration.toMillis(options.connectTimeout) : undefined,
|
|
62
|
+
idleTimeoutMillis: options.idleTimeout ? Duration.toMillis(options.idleTimeout) : undefined,
|
|
63
|
+
max: options.maxConnections,
|
|
64
|
+
min: options.minConnections,
|
|
65
|
+
maxLifetimeSeconds: options.connectionTTL ? Duration.toSeconds(options.connectionTTL) : undefined,
|
|
66
|
+
application_name: options.applicationName ?? "@effect/sql-pg",
|
|
67
|
+
types: options.types
|
|
68
|
+
});
|
|
69
|
+
pool.on("error", _err => {});
|
|
70
70
|
yield* Effect.acquireRelease(Effect.tryPromise({
|
|
71
|
-
try: () =>
|
|
71
|
+
try: () => pool.query("SELECT 1"),
|
|
72
72
|
catch: cause => new _SqlError.SqlError({
|
|
73
73
|
cause,
|
|
74
74
|
message: "PgClient: Failed to connect"
|
|
75
75
|
})
|
|
76
|
-
}), () => Effect.promise(() =>
|
|
76
|
+
}), () => Effect.promise(() => pool.end()).pipe(Effect.interruptible, Effect.timeoutOption(1000))).pipe(Effect.timeoutFail({
|
|
77
77
|
duration: options.connectTimeout ?? Duration.seconds(5),
|
|
78
78
|
onTimeout: () => new _SqlError.SqlError({
|
|
79
79
|
cause: new Error("Connection timed out"),
|
|
@@ -85,76 +85,150 @@ const make = options => Effect.gen(function* () {
|
|
|
85
85
|
constructor(pg) {
|
|
86
86
|
this.pg = pg;
|
|
87
87
|
}
|
|
88
|
-
run(query) {
|
|
88
|
+
run(query, params) {
|
|
89
89
|
return Effect.async(resume => {
|
|
90
|
-
query
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
90
|
+
this.pg.query(query, params, (err, result) => {
|
|
91
|
+
if (err) {
|
|
92
|
+
resume(Effect.fail(new _SqlError.SqlError({
|
|
93
|
+
cause: err,
|
|
94
|
+
message: "Failed to execute statement"
|
|
95
|
+
})));
|
|
96
|
+
} else {
|
|
97
|
+
resume(Effect.succeed(result.rows));
|
|
98
|
+
}
|
|
99
|
+
});
|
|
95
100
|
});
|
|
96
101
|
}
|
|
97
102
|
execute(sql, params, transformRows) {
|
|
98
|
-
return transformRows ? Effect.map(this.run(
|
|
103
|
+
return transformRows ? Effect.map(this.run(sql, params), transformRows) : this.run(sql, params);
|
|
99
104
|
}
|
|
100
105
|
executeRaw(sql, params) {
|
|
101
|
-
return
|
|
106
|
+
return Effect.async(resume => {
|
|
107
|
+
this.pg.query(sql, params, (err, result) => {
|
|
108
|
+
if (err) {
|
|
109
|
+
resume(Effect.fail(new _SqlError.SqlError({
|
|
110
|
+
cause: err,
|
|
111
|
+
message: "Failed to execute statement"
|
|
112
|
+
})));
|
|
113
|
+
} else {
|
|
114
|
+
resume(Effect.succeed(result));
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
});
|
|
102
118
|
}
|
|
103
119
|
executeWithoutTransform(sql, params) {
|
|
104
|
-
return this.run(
|
|
120
|
+
return this.run(sql, params);
|
|
105
121
|
}
|
|
106
122
|
executeValues(sql, params) {
|
|
107
|
-
return
|
|
123
|
+
return Effect.async(resume => {
|
|
124
|
+
this.pg.query({
|
|
125
|
+
text: sql,
|
|
126
|
+
rowMode: "array",
|
|
127
|
+
values: params
|
|
128
|
+
}, (err, result) => {
|
|
129
|
+
if (err) {
|
|
130
|
+
resume(Effect.fail(new _SqlError.SqlError({
|
|
131
|
+
cause: err,
|
|
132
|
+
message: "Failed to execute statement"
|
|
133
|
+
})));
|
|
134
|
+
} else {
|
|
135
|
+
resume(Effect.succeed(result.rows));
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
});
|
|
108
139
|
}
|
|
109
140
|
executeUnprepared(sql, params, transformRows) {
|
|
110
141
|
return this.execute(sql, params, transformRows);
|
|
111
142
|
}
|
|
112
143
|
executeStream(sql, params, transformRows) {
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
144
|
+
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
145
|
+
const self = this;
|
|
146
|
+
return Effect.gen(function* () {
|
|
147
|
+
const cursor = yield* Effect.acquireRelease(Effect.sync(() => self.pg.query(new _pgCursor.default(sql, params))), cursor => Effect.sync(() => cursor.close()));
|
|
148
|
+
const pull = Effect.async(resume => {
|
|
149
|
+
cursor.read(128, (err, rows) => {
|
|
150
|
+
if (err) {
|
|
151
|
+
resume(Effect.fail(Option.some(new _SqlError.SqlError({
|
|
152
|
+
cause: err,
|
|
153
|
+
message: "Failed to execute statement"
|
|
154
|
+
}))));
|
|
155
|
+
} else if (Arr.isNonEmptyArray(rows)) {
|
|
156
|
+
resume(Effect.succeed(Chunk.unsafeFromArray(transformRows ? transformRows(rows) : rows)));
|
|
157
|
+
} else {
|
|
158
|
+
resume(Effect.fail(Option.none()));
|
|
159
|
+
}
|
|
160
|
+
});
|
|
161
|
+
});
|
|
162
|
+
return Stream.repeatEffectChunkOption(pull);
|
|
163
|
+
}).pipe(Stream.unwrapScoped);
|
|
117
164
|
}
|
|
118
165
|
}
|
|
166
|
+
const reserveRaw = Effect.async(resume => {
|
|
167
|
+
const fiber = Option.getOrThrow(Fiber.getCurrentFiber());
|
|
168
|
+
const scope = Context.unsafeGet(fiber.currentContext, Scope.Scope);
|
|
169
|
+
pool.connect((err, client, release) => {
|
|
170
|
+
if (err) {
|
|
171
|
+
resume(Effect.fail(new _SqlError.SqlError({
|
|
172
|
+
cause: err,
|
|
173
|
+
message: "Failed to acquire connection for transaction"
|
|
174
|
+
})));
|
|
175
|
+
} else {
|
|
176
|
+
resume(Effect.as(Scope.addFinalizer(scope, Effect.sync(release)), client));
|
|
177
|
+
}
|
|
178
|
+
});
|
|
179
|
+
});
|
|
180
|
+
const reserve = Effect.map(reserveRaw, client => new ConnectionImpl(client));
|
|
181
|
+
const listenClient = yield* RcRef.make({
|
|
182
|
+
acquire: reserveRaw
|
|
183
|
+
});
|
|
119
184
|
return Object.assign(yield* Client.make({
|
|
120
|
-
acquirer: Effect.succeed(new ConnectionImpl(
|
|
121
|
-
transactionAcquirer:
|
|
122
|
-
try: () => client.reserve(),
|
|
123
|
-
catch: cause => new _SqlError.SqlError({
|
|
124
|
-
cause,
|
|
125
|
-
message: "Failed to reserve connection"
|
|
126
|
-
})
|
|
127
|
-
}), pg => Effect.sync(() => pg.release())), _ => new ConnectionImpl(_)),
|
|
185
|
+
acquirer: Effect.succeed(new ConnectionImpl(pool)),
|
|
186
|
+
transactionAcquirer: reserve,
|
|
128
187
|
compiler,
|
|
129
|
-
spanAttributes: [...(options.spanAttributes ? Object.entries(options.spanAttributes) : []), [ATTR_DB_SYSTEM_NAME, "postgresql"], [ATTR_DB_NAMESPACE,
|
|
188
|
+
spanAttributes: [...(options.spanAttributes ? Object.entries(options.spanAttributes) : []), [ATTR_DB_SYSTEM_NAME, "postgresql"], [ATTR_DB_NAMESPACE, options.database ?? options.username ?? "postgres"], [ATTR_SERVER_ADDRESS, options.host ?? "localhost"], [ATTR_SERVER_PORT, options.port ?? 5432]],
|
|
130
189
|
transformRows
|
|
131
190
|
}), {
|
|
132
191
|
[TypeId]: TypeId,
|
|
133
192
|
config: {
|
|
134
193
|
...options,
|
|
135
|
-
host:
|
|
136
|
-
port:
|
|
137
|
-
username:
|
|
138
|
-
password:
|
|
139
|
-
database:
|
|
194
|
+
host: pool.options.host,
|
|
195
|
+
port: pool.options.port,
|
|
196
|
+
username: pool.options.user,
|
|
197
|
+
password: typeof pool.options.password === "string" ? Redacted.make(pool.options.password) : undefined,
|
|
198
|
+
database: pool.options.database
|
|
140
199
|
},
|
|
141
200
|
json: _ => PgJson(_),
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
cause
|
|
156
|
-
|
|
157
|
-
|
|
201
|
+
listen: channel => Stream.asyncPush(Effect.fnUntraced(function* (emit) {
|
|
202
|
+
const client = yield* RcRef.get(listenClient);
|
|
203
|
+
function onNotification(msg) {
|
|
204
|
+
if (msg.channel === channel && msg.payload) {
|
|
205
|
+
emit.single(msg.payload);
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
yield* Effect.addFinalizer(() => Effect.promise(() => {
|
|
209
|
+
client.off("notification", onNotification);
|
|
210
|
+
return client.query(`UNLISTEN ${Pg.escapeIdentifier(channel)}`);
|
|
211
|
+
}));
|
|
212
|
+
yield* Effect.tryPromise({
|
|
213
|
+
try: () => client.query(`LISTEN ${Pg.escapeIdentifier(channel)}`),
|
|
214
|
+
catch: cause => new _SqlError.SqlError({
|
|
215
|
+
cause,
|
|
216
|
+
message: "Failed to listen"
|
|
217
|
+
})
|
|
218
|
+
});
|
|
219
|
+
client.on("notification", onNotification);
|
|
220
|
+
})),
|
|
221
|
+
notify: (channel, payload) => Effect.async(resume => {
|
|
222
|
+
pool.query(`NOTIFY ${Pg.escapeIdentifier(channel)}, $1`, [payload], err => {
|
|
223
|
+
if (err) {
|
|
224
|
+
resume(Effect.fail(new _SqlError.SqlError({
|
|
225
|
+
cause: err,
|
|
226
|
+
message: "Failed to notify"
|
|
227
|
+
})));
|
|
228
|
+
} else {
|
|
229
|
+
resume(Effect.void);
|
|
230
|
+
}
|
|
231
|
+
});
|
|
158
232
|
})
|
|
159
233
|
});
|
|
160
234
|
});
|
|
@@ -176,9 +250,6 @@ const layer = config => Layer.scopedContext(Effect.map(make(config), client => C
|
|
|
176
250
|
*/
|
|
177
251
|
exports.layer = layer;
|
|
178
252
|
const makeCompiler = (transform, transformJson = true) => {
|
|
179
|
-
const pg = (0, _postgres.default)({
|
|
180
|
-
max: 0
|
|
181
|
-
});
|
|
182
253
|
const transformValue = transformJson && transform ? Statement.defaultTransforms(transform).value : undefined;
|
|
183
254
|
return Statement.makeCompiler({
|
|
184
255
|
dialect: "pg",
|
|
@@ -195,30 +266,7 @@ const makeCompiler = (transform, transformJson = true) => {
|
|
|
195
266
|
switch (type.kind) {
|
|
196
267
|
case "PgJson":
|
|
197
268
|
{
|
|
198
|
-
return [placeholder(undefined), [
|
|
199
|
-
}
|
|
200
|
-
case "PgArray":
|
|
201
|
-
{
|
|
202
|
-
const param = pg.array(type.i0);
|
|
203
|
-
const first = type.i0[0];
|
|
204
|
-
switch (typeof first) {
|
|
205
|
-
case "boolean":
|
|
206
|
-
{
|
|
207
|
-
param.type = 1000;
|
|
208
|
-
break;
|
|
209
|
-
}
|
|
210
|
-
case "number":
|
|
211
|
-
{
|
|
212
|
-
param.type = 1022;
|
|
213
|
-
break;
|
|
214
|
-
}
|
|
215
|
-
default:
|
|
216
|
-
{
|
|
217
|
-
param.type = 1009;
|
|
218
|
-
break;
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
return [placeholder(undefined), [param]];
|
|
269
|
+
return [placeholder(undefined), [withoutTransform || transformValue === undefined ? type.i0 : transformValue(type.i0)]];
|
|
222
270
|
}
|
|
223
271
|
}
|
|
224
272
|
}
|
|
@@ -231,9 +279,4 @@ const escape = /*#__PURE__*/Statement.defaultEscape("\"");
|
|
|
231
279
|
* @since 1.0.0
|
|
232
280
|
*/
|
|
233
281
|
const PgJson = /*#__PURE__*/Statement.custom("PgJson");
|
|
234
|
-
/**
|
|
235
|
-
* @category custom types
|
|
236
|
-
* @since 1.0.0
|
|
237
|
-
*/
|
|
238
|
-
const PgArray = /*#__PURE__*/Statement.custom("PgArray");
|
|
239
282
|
//# sourceMappingURL=PgClient.js.map
|
package/dist/cjs/PgClient.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PgClient.js","names":["Reactivity","_interopRequireWildcard","require","Client","_SqlError","Statement","Chunk","Config","Context","Duration","Effect","Layer","Redacted","Stream","_postgres","_interopRequireDefault","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","TypeId","exports","Symbol","for","PgClient","GenericTag","make","options","gen","compiler","makeCompiler","transformQueryNames","transformJson","transformRows","transformResultNames","defaultTransforms","array","undefined","opts","max","maxConnections","max_lifetime","connectionTTL","Math","round","toMillis","decode","idle_timeout","idleTimeout","connect_timeout","connectTimeout","host","port","ssl","path","database","username","password","value","fetch_types","fetchTypes","prepare","onnotice","types","debug","connection","application_name","applicationName","socket","client","url","postgres","acquireRelease","tryPromise","try","catch","cause","SqlError","message","promise","end","pipe","interruptible","timeoutOption","timeoutFail","duration","seconds","onTimeout","Error","ConnectionImpl","pg","constructor","run","query","async","resume","then","_","succeed","sync","cancel","execute","sql","params","map","unsafe","executeRaw","executeWithoutTransform","executeValues","values","executeUnprepared","executeStream","mapChunks","fromAsyncIterable","cursor","flatMap","rows","unsafeFromArray","assign","acquirer","transactionAcquirer","reserve","release","spanAttributes","entries","config","user","pass","json","PgJson","PgArray","listen","channel","asyncPush","emit","payload","single","unlisten","notify","layerConfig","scopedContext","unwrap","add","SqlClient","provide","layer","transform","transformValue","dialect","placeholder","onIdentifier","withoutTransform","escape","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","flat","concat","onCustom","type","kind","i0","param","first","defaultEscape","custom"],"sources":["../../src/PgClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"PgClient.js","names":["Reactivity","_interopRequireWildcard","require","Client","_SqlError","Statement","Arr","Chunk","Config","Context","Duration","Effect","Fiber","Layer","Option","RcRef","Redacted","Scope","Stream","Pg","_pgCursor","_interopRequireDefault","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ATTR_DB_SYSTEM_NAME","ATTR_DB_NAMESPACE","ATTR_SERVER_ADDRESS","ATTR_SERVER_PORT","TypeId","exports","PgClient","GenericTag","make","options","gen","compiler","makeCompiler","transformQueryNames","transformJson","transformRows","transformResultNames","defaultTransforms","array","undefined","pool","Pool","connectionString","url","value","user","username","host","database","password","ssl","port","connectionTimeoutMillis","connectTimeout","toMillis","idleTimeoutMillis","idleTimeout","max","maxConnections","min","minConnections","maxLifetimeSeconds","connectionTTL","toSeconds","application_name","applicationName","types","on","_err","acquireRelease","tryPromise","try","query","catch","cause","SqlError","message","promise","end","pipe","interruptible","timeoutOption","timeoutFail","duration","seconds","onTimeout","Error","ConnectionImpl","pg","constructor","run","params","async","resume","err","result","fail","succeed","rows","execute","sql","map","executeRaw","executeWithoutTransform","executeValues","text","rowMode","values","executeUnprepared","executeStream","self","cursor","sync","Cursor","close","pull","read","some","isNonEmptyArray","unsafeFromArray","none","repeatEffectChunkOption","unwrapScoped","reserveRaw","fiber","getOrThrow","getCurrentFiber","scope","unsafeGet","currentContext","connect","client","release","as","addFinalizer","reserve","listenClient","acquire","assign","acquirer","transactionAcquirer","spanAttributes","entries","config","json","_","PgJson","listen","channel","asyncPush","fnUntraced","emit","onNotification","msg","payload","single","off","escapeIdentifier","notify","void","layerConfig","scopedContext","unwrap","flatMap","add","SqlClient","provide","layer","transform","transformValue","dialect","placeholder","onIdentifier","withoutTransform","escape","onRecordUpdate","placeholders","valueAlias","valueColumns","returning","flat","concat","onCustom","type","kind","i0","defaultEscape","custom"],"sources":["../../src/PgClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/dist/dts/PgClient.d.ts
CHANGED
|
@@ -4,30 +4,29 @@
|
|
|
4
4
|
import * as Reactivity from "@effect/experimental/Reactivity";
|
|
5
5
|
import * as Client from "@effect/sql/SqlClient";
|
|
6
6
|
import { SqlError } from "@effect/sql/SqlError";
|
|
7
|
-
import type { Custom, Fragment
|
|
7
|
+
import type { Custom, Fragment } from "@effect/sql/Statement";
|
|
8
8
|
import * as Statement from "@effect/sql/Statement";
|
|
9
9
|
import * as Config from "effect/Config";
|
|
10
|
-
import type
|
|
10
|
+
import type * as ConfigError from "effect/ConfigError";
|
|
11
11
|
import * as Context from "effect/Context";
|
|
12
12
|
import * as Duration from "effect/Duration";
|
|
13
13
|
import * as Effect from "effect/Effect";
|
|
14
14
|
import * as Layer from "effect/Layer";
|
|
15
15
|
import * as Redacted from "effect/Redacted";
|
|
16
|
-
import
|
|
16
|
+
import * as Scope from "effect/Scope";
|
|
17
17
|
import * as Stream from "effect/Stream";
|
|
18
|
-
import type * as NodeStream from "node:stream";
|
|
19
18
|
import type { ConnectionOptions } from "node:tls";
|
|
20
|
-
import
|
|
19
|
+
import * as Pg from "pg";
|
|
21
20
|
/**
|
|
22
21
|
* @category type ids
|
|
23
22
|
* @since 1.0.0
|
|
24
23
|
*/
|
|
25
|
-
export declare const TypeId:
|
|
24
|
+
export declare const TypeId: TypeId;
|
|
26
25
|
/**
|
|
27
26
|
* @category type ids
|
|
28
27
|
* @since 1.0.0
|
|
29
28
|
*/
|
|
30
|
-
export type TypeId =
|
|
29
|
+
export type TypeId = "~@effect/sql-pg/PgClient";
|
|
31
30
|
/**
|
|
32
31
|
* @category models
|
|
33
32
|
* @since 1.0.0
|
|
@@ -36,7 +35,6 @@ export interface PgClient extends Client.SqlClient {
|
|
|
36
35
|
readonly [TypeId]: TypeId;
|
|
37
36
|
readonly config: PgClientConfig;
|
|
38
37
|
readonly json: (_: unknown) => Fragment;
|
|
39
|
-
readonly array: (_: ReadonlyArray<Primitive>) => Fragment;
|
|
40
38
|
readonly listen: (channel: string) => Stream.Stream<string, SqlError>;
|
|
41
39
|
readonly notify: (channel: string, payload: string) => Effect.Effect<void, SqlError>;
|
|
42
40
|
}
|
|
@@ -58,55 +56,17 @@ export interface PgClientConfig {
|
|
|
58
56
|
readonly database?: string | undefined;
|
|
59
57
|
readonly username?: string | undefined;
|
|
60
58
|
readonly password?: Redacted.Redacted | undefined;
|
|
61
|
-
/**
|
|
62
|
-
* A function returning a custom socket to use. This parameter is not documented
|
|
63
|
-
* in the postgres.js's type signature. See their
|
|
64
|
-
* [readme](https://github.com/porsager/postgres?tab=readme-ov-file#connection-details) instead.
|
|
65
|
-
*
|
|
66
|
-
* @example
|
|
67
|
-
* ```ts
|
|
68
|
-
* import { AuthTypes, Connector } from "@google-cloud/cloud-sql-connector";
|
|
69
|
-
* import { PgClient } from "@effect/sql-pg";
|
|
70
|
-
* import { Config, Effect, Layer } from "effect"
|
|
71
|
-
*
|
|
72
|
-
* const layer = Effect.gen(function*() {
|
|
73
|
-
* const connector = new Connector();
|
|
74
|
-
* const clientOpts = yield* Effect.promise(() => connector.getOptions({
|
|
75
|
-
* instanceConnectionName: "project:region:instance",
|
|
76
|
-
* authType: AuthTypes.IAM,
|
|
77
|
-
* }));
|
|
78
|
-
* return PgClient.layer({ socket: clientOpts.stream, username: "iam-user" });
|
|
79
|
-
* }).pipe(Layer.unwrapEffect)
|
|
80
|
-
* ```
|
|
81
|
-
*/
|
|
82
|
-
readonly socket?: (() => NodeStream.Duplex) | undefined;
|
|
83
59
|
readonly idleTimeout?: Duration.DurationInput | undefined;
|
|
84
60
|
readonly connectTimeout?: Duration.DurationInput | undefined;
|
|
85
61
|
readonly maxConnections?: number | undefined;
|
|
62
|
+
readonly minConnections?: number | undefined;
|
|
86
63
|
readonly connectionTTL?: Duration.DurationInput | undefined;
|
|
87
64
|
readonly applicationName?: string | undefined;
|
|
88
65
|
readonly spanAttributes?: Record<string, unknown> | undefined;
|
|
89
66
|
readonly transformResultNames?: ((str: string) => string) | undefined;
|
|
90
67
|
readonly transformQueryNames?: ((str: string) => string) | undefined;
|
|
91
68
|
readonly transformJson?: boolean | undefined;
|
|
92
|
-
readonly
|
|
93
|
-
readonly prepare?: boolean | undefined;
|
|
94
|
-
/**
|
|
95
|
-
* A callback when postgres has a notice, see
|
|
96
|
-
* [readme](https://github.com/porsager/postgres?tab=readme-ov-file#connection-details).
|
|
97
|
-
* By default, postgres.js logs these with console.log.
|
|
98
|
-
* To silence notices, see the following example:
|
|
99
|
-
* @example
|
|
100
|
-
* ```ts
|
|
101
|
-
* import { PgClient } from "@effect/sql-pg";
|
|
102
|
-
* import { Config, Layer } from "effect"
|
|
103
|
-
*
|
|
104
|
-
* const layer = PgClient.layer({ onnotice: Config.succeed(() => {}) })
|
|
105
|
-
* ```
|
|
106
|
-
*/
|
|
107
|
-
readonly onnotice?: (notice: postgres.Notice) => void;
|
|
108
|
-
readonly types?: Record<string, postgres.PostgresType> | undefined;
|
|
109
|
-
readonly debug?: postgres.Options<{}>["debug"] | undefined;
|
|
69
|
+
readonly types?: Pg.CustomTypesConfig | undefined;
|
|
110
70
|
}
|
|
111
71
|
/**
|
|
112
72
|
* @category constructors
|
|
@@ -117,12 +77,12 @@ export declare const make: (options: PgClientConfig) => Effect.Effect<PgClient,
|
|
|
117
77
|
* @category layers
|
|
118
78
|
* @since 1.0.0
|
|
119
79
|
*/
|
|
120
|
-
export declare const layerConfig: (config: Config.Config.Wrap<PgClientConfig>) => Layer.Layer<PgClient | Client.SqlClient, ConfigError | SqlError>;
|
|
80
|
+
export declare const layerConfig: (config: Config.Config.Wrap<PgClientConfig>) => Layer.Layer<PgClient | Client.SqlClient, ConfigError.ConfigError | SqlError>;
|
|
121
81
|
/**
|
|
122
82
|
* @category layers
|
|
123
83
|
* @since 1.0.0
|
|
124
84
|
*/
|
|
125
|
-
export declare const layer: (config: PgClientConfig) => Layer.Layer<PgClient | Client.SqlClient,
|
|
85
|
+
export declare const layer: (config: PgClientConfig) => Layer.Layer<PgClient | Client.SqlClient, SqlError>;
|
|
126
86
|
/**
|
|
127
87
|
* @category constructor
|
|
128
88
|
* @since 1.0.0
|
|
@@ -132,7 +92,7 @@ export declare const makeCompiler: (transform?: (_: string) => string, transform
|
|
|
132
92
|
* @category custom types
|
|
133
93
|
* @since 1.0.0
|
|
134
94
|
*/
|
|
135
|
-
export type PgCustom = PgJson
|
|
95
|
+
export type PgCustom = PgJson;
|
|
136
96
|
/**
|
|
137
97
|
* @category custom types
|
|
138
98
|
* @since 1.0.0
|
|
@@ -144,16 +104,5 @@ interface PgJson extends Custom<"PgJson", unknown> {
|
|
|
144
104
|
* @since 1.0.0
|
|
145
105
|
*/
|
|
146
106
|
declare const PgJson: (i0: unknown, i1: void, i2: void) => Fragment;
|
|
147
|
-
/**
|
|
148
|
-
* @category custom types
|
|
149
|
-
* @since 1.0.0
|
|
150
|
-
*/
|
|
151
|
-
interface PgArray extends Custom<"PgArray", ReadonlyArray<Primitive>> {
|
|
152
|
-
}
|
|
153
|
-
/**
|
|
154
|
-
* @category custom types
|
|
155
|
-
* @since 1.0.0
|
|
156
|
-
*/
|
|
157
|
-
declare const PgArray: (i0: readonly Primitive[], i1: void, i2: void) => Fragment;
|
|
158
107
|
export {};
|
|
159
108
|
//# sourceMappingURL=PgClient.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PgClient.d.ts","sourceRoot":"","sources":["../../src/PgClient.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iCAAiC,CAAA;AAC7D,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAA;AAE/C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"PgClient.d.ts","sourceRoot":"","sources":["../../src/PgClient.ts"],"names":[],"mappings":"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"}
|