@framers/sql-storage-adapter 0.7.5 → 0.7.7
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 +12 -5
- package/dist/adapters/supabase.d.ts +8 -0
- package/dist/adapters/supabase.d.ts.map +1 -1
- package/dist/adapters/supabase.js +38 -11
- package/dist/adapters/supabase.js.map +1 -1
- package/dist/cjs/adapters/supabase.d.ts +8 -0
- package/dist/cjs/adapters/supabase.js +29 -11
- package/dist/cjs/core/database.d.ts +7 -0
- package/dist/cjs/core/database.js +2 -1
- package/dist/cjs/core/portable.d.ts +1 -0
- package/dist/cjs/core/portable.js +4 -1
- package/dist/cjs/core/resolver.js +1 -1
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.js +4 -1
- package/dist/cjs/shared/withHooks.d.ts +17 -0
- package/dist/cjs/shared/withHooks.js +115 -0
- package/dist/core/database.d.ts +7 -0
- package/dist/core/database.d.ts.map +1 -1
- package/dist/core/database.js +2 -1
- package/dist/core/database.js.map +1 -1
- package/dist/core/portable.d.ts +1 -0
- package/dist/core/portable.d.ts.map +1 -1
- package/dist/core/portable.js +1 -0
- package/dist/core/portable.js.map +1 -1
- package/dist/core/resolver.js +1 -1
- package/dist/core/resolver.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/shared/withHooks.d.ts +17 -0
- package/dist/shared/withHooks.d.ts.map +1 -0
- package/dist/shared/withHooks.js +108 -0
- package/dist/shared/withHooks.js.map +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -92,6 +92,7 @@ import { createStorageFeatures, runSchemaMigrations, isUniqueViolation } from '@
|
|
|
92
92
|
| `@framers/sql-storage-adapter` | Everything, with `createDatabase` and the resolver |
|
|
93
93
|
| `./core` | Contracts and errors, dialects, full-text search, codecs, exporters, `createStorageFeatures`, the schema-migration runner, `isUniqueViolation`, the logger. No adapter |
|
|
94
94
|
| `./postgres`, `./better-sqlite3`, `./sqljs`, `./indexeddb`, `./capacitor` | One adapter each |
|
|
95
|
+
| `SupabaseAdapter` (root) | Deprecated: use `./postgres` with the Supabase connection string |
|
|
95
96
|
| `./backup` | S3-compatible backups (`@aws-sdk/client-s3`) |
|
|
96
97
|
| `./authjs` | The Auth.js database adapter (also in `./core`) |
|
|
97
98
|
| `./electron`, `./electron/renderer`, `./electron/preload` | The Electron adapters. `./electron/renderer` holds only what a window uses; `require('./electron/preload')` gives one bundled CommonJS file for a sandboxed preload |
|
|
@@ -627,10 +628,17 @@ See [**guides/OPTIMIZATION_GUIDE.md**](./guides/OPTIMIZATION_GUIDE.md) for detai
|
|
|
627
628
|
|
|
628
629
|
## Lifecycle Hooks
|
|
629
630
|
|
|
630
|
-
|
|
631
|
+
`createDatabase({ hooks })`, or `withHooks(adapter, hooks)` on any adapter, puts lifecycle hooks around each query, write, transaction and error.
|
|
632
|
+
- A `before` hook returns the context, changed or not, to go on, or undefined to stop the call. A stopped `get` returns null, `all` an empty list, and `run` no changes.
|
|
633
|
+
- `onAfterQuery` can replace the result.
|
|
634
|
+
- `onError` returns the error to throw, or undefined to swallow it.
|
|
635
|
+
- The statements inside a transaction pass through the hooks too, and `onAfterTransaction` sees `outcome: 'committed'` or `'rolled_back'`.
|
|
636
|
+
- The adapter keeps its kind, its own methods and its class.
|
|
637
|
+
|
|
638
|
+
`combineHooks()` and `filterHooks()` compose hook sets.
|
|
631
639
|
|
|
632
640
|
```typescript
|
|
633
|
-
import { combineHooks, type StorageHooks } from '@framers/sql-storage-adapter';
|
|
641
|
+
import { createDatabase, combineHooks, type StorageHooks } from '@framers/sql-storage-adapter';
|
|
634
642
|
|
|
635
643
|
const myHooks: StorageHooks = {
|
|
636
644
|
// Log all writes
|
|
@@ -656,8 +664,7 @@ const myHooks: StorageHooks = {
|
|
|
656
664
|
}
|
|
657
665
|
};
|
|
658
666
|
|
|
659
|
-
|
|
660
|
-
const hooks = combineHooks(myHooks);
|
|
667
|
+
const db = await createDatabase({ url: process.env.DATABASE_URL, strict: true, hooks: combineHooks(myHooks) });
|
|
661
668
|
```
|
|
662
669
|
|
|
663
670
|
### Available Hooks
|
|
@@ -735,7 +742,7 @@ const ddl = `CREATE TABLE notes (id ${d.columnType('uuid')} PRIMARY KEY DEFAULT
|
|
|
735
742
|
`createStorageFeatures` gives each engine the full-text search it has:
|
|
736
743
|
- FTS5 on better-sqlite3;
|
|
737
744
|
- FTS4 on sql.js and IndexedDB, whose stock sql.js build compiles FTS3 and FTS4 and no FTS5;
|
|
738
|
-
- a tsvector column with a GIN index on PostgreSQL, the Supabase adapter included.
|
|
745
|
+
- a tsvector column with a GIN index on PostgreSQL, the Supabase adapter included. (`SupabaseAdapter` is deprecated: reach Supabase with `createPostgresAdapter({ connectionString })`, which gives it the same features.)
|
|
739
746
|
|
|
740
747
|
The same calls return the same rows on all three, and `tests/fts.parity.spec.ts` runs them on each.
|
|
741
748
|
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Supabase Postgres Storage Adapter
|
|
3
3
|
* Provides full Postgres capabilities with Supabase's managed infrastructure
|
|
4
|
+
*
|
|
5
|
+
* @deprecated Use the PostgreSQL adapter with the Supabase connection string:
|
|
6
|
+
* `createPostgresAdapter({ connectionString, ssl: { rejectUnauthorized: true, ca } })`
|
|
7
|
+
* from `@framers/sql-storage-adapter/postgres`. It reaches Supabase the same
|
|
8
|
+
* way, with pool control, transaction error handling and `strict` resolution.
|
|
4
9
|
*/
|
|
5
10
|
import type { StorageAdapter, StorageCapability, StorageOpenOptions, StorageParameters, StorageRunResult, BatchResult } from '../core/contracts/index.js';
|
|
6
11
|
import type { StorageAdapterExtensions, ExtendedBatchOperation, Migration, PerformanceMetrics, StreamOptions } from '../core/contracts/extensions.js';
|
|
@@ -12,10 +17,13 @@ export interface SupabaseAdapterOptions extends StorageOpenOptions {
|
|
|
12
17
|
idleTimeoutMillis?: number;
|
|
13
18
|
connectionTimeoutMillis?: number;
|
|
14
19
|
};
|
|
20
|
+
/** TLS: false turns it off; an object (with `ca` to verify Supabase's certificate) is passed to pg; otherwise TLS without verification. */
|
|
15
21
|
ssl?: boolean | {
|
|
16
22
|
rejectUnauthorized: boolean;
|
|
23
|
+
ca?: string;
|
|
17
24
|
};
|
|
18
25
|
}
|
|
26
|
+
/** @deprecated Use `createPostgresAdapter` from `@framers/sql-storage-adapter/postgres` with the Supabase connection string. */
|
|
19
27
|
export declare class SupabaseAdapter implements StorageAdapter, StorageAdapterExtensions {
|
|
20
28
|
readonly kind = "supabase-postgres";
|
|
21
29
|
readonly capabilities: ReadonlySet<StorageCapability>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supabase.d.ts","sourceRoot":"","sources":["../../src/adapters/supabase.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"supabase.d.ts","sourceRoot":"","sources":["../../src/adapters/supabase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,30 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Supabase Postgres Storage Adapter
|
|
3
3
|
* Provides full Postgres capabilities with Supabase's managed infrastructure
|
|
4
|
+
*
|
|
5
|
+
* @deprecated Use the PostgreSQL adapter with the Supabase connection string:
|
|
6
|
+
* `createPostgresAdapter({ connectionString, ssl: { rejectUnauthorized: true, ca } })`
|
|
7
|
+
* from `@framers/sql-storage-adapter/postgres`. It reaches Supabase the same
|
|
8
|
+
* way, with pool control, transaction error handling and `strict` resolution.
|
|
4
9
|
*/
|
|
10
|
+
import { toPostgresStatement } from '../shared/sqlPlaceholders.js';
|
|
11
|
+
import { getStorageLogger } from '../shared/logger.js';
|
|
12
|
+
/** Whether this process has been told the adapter is deprecated. */
|
|
13
|
+
let deprecationLogged = false;
|
|
14
|
+
/** A statement and its parameters for pg: `?` and `@name` rewritten to `$n`, as the PostgreSQL adapter does. */
|
|
15
|
+
const prepare = (statement, parameters) => {
|
|
16
|
+
const { text, values } = toPostgresStatement(statement, parameters);
|
|
17
|
+
return [text, values];
|
|
18
|
+
};
|
|
19
|
+
/** An error with `message`, keeping the database error as `cause` and its PostgreSQL error `code`. */
|
|
20
|
+
const failure = (message, error) => {
|
|
21
|
+
const wrapped = new Error(message);
|
|
22
|
+
wrapped.cause = error;
|
|
23
|
+
if (error && typeof error === 'object' && 'code' in error)
|
|
24
|
+
wrapped.code = error.code;
|
|
25
|
+
return wrapped;
|
|
26
|
+
};
|
|
27
|
+
/** @deprecated Use `createPostgresAdapter` from `@framers/sql-storage-adapter/postgres` with the Supabase connection string. */
|
|
5
28
|
export class SupabaseAdapter {
|
|
6
29
|
constructor() {
|
|
7
30
|
this.kind = 'supabase-postgres';
|
|
@@ -27,6 +50,10 @@ export class SupabaseAdapter {
|
|
|
27
50
|
}
|
|
28
51
|
async open(options) {
|
|
29
52
|
this.options = options;
|
|
53
|
+
if (!deprecationLogged) {
|
|
54
|
+
deprecationLogged = true;
|
|
55
|
+
getStorageLogger().warn({ adapter: 'supabase-postgres' }, 'SupabaseAdapter is deprecated: use createPostgresAdapter({ connectionString }) from @framers/sql-storage-adapter/postgres, which reaches Supabase the same way. SupabaseAdapter does not verify the server certificate unless ssl is { rejectUnauthorized: true, ca }.');
|
|
56
|
+
}
|
|
30
57
|
// Dynamic import to avoid bundling pg when not needed
|
|
31
58
|
const pg = await import('pg');
|
|
32
59
|
const { Pool } = pg;
|
|
@@ -47,7 +74,7 @@ export class SupabaseAdapter {
|
|
|
47
74
|
min: options?.poolConfig?.min || 2,
|
|
48
75
|
idleTimeoutMillis: options?.poolConfig?.idleTimeoutMillis || 30000,
|
|
49
76
|
connectionTimeoutMillis: options?.poolConfig?.connectionTimeoutMillis || 5000,
|
|
50
|
-
ssl: options?.ssl
|
|
77
|
+
ssl: options?.ssl === false ? undefined : typeof options?.ssl === 'object' ? options.ssl : { rejectUnauthorized: false }
|
|
51
78
|
});
|
|
52
79
|
// Test connection
|
|
53
80
|
try {
|
|
@@ -95,7 +122,7 @@ export class SupabaseAdapter {
|
|
|
95
122
|
throw new Error('Storage adapter not opened');
|
|
96
123
|
const startTime = Date.now();
|
|
97
124
|
try {
|
|
98
|
-
const result = await this.pool.query(statement,
|
|
125
|
+
const result = await this.pool.query(...prepare(statement, parameters));
|
|
99
126
|
this.trackQuery(statement, startTime);
|
|
100
127
|
return {
|
|
101
128
|
changes: result.rowCount || 0,
|
|
@@ -103,7 +130,7 @@ export class SupabaseAdapter {
|
|
|
103
130
|
};
|
|
104
131
|
}
|
|
105
132
|
catch (error) {
|
|
106
|
-
throw
|
|
133
|
+
throw failure(`Query failed: ${error}`, error);
|
|
107
134
|
}
|
|
108
135
|
}
|
|
109
136
|
async get(statement, parameters) {
|
|
@@ -125,7 +152,7 @@ export class SupabaseAdapter {
|
|
|
125
152
|
}
|
|
126
153
|
const startTime = Date.now();
|
|
127
154
|
try {
|
|
128
|
-
const result = await this.pool.query(statement,
|
|
155
|
+
const result = await this.pool.query(...prepare(statement, parameters));
|
|
129
156
|
this.trackQuery(statement, startTime);
|
|
130
157
|
const value = result.rows[0] || null;
|
|
131
158
|
// Update cache
|
|
@@ -143,7 +170,7 @@ export class SupabaseAdapter {
|
|
|
143
170
|
return value;
|
|
144
171
|
}
|
|
145
172
|
catch (error) {
|
|
146
|
-
throw
|
|
173
|
+
throw failure(`Query failed: ${error}`, error);
|
|
147
174
|
}
|
|
148
175
|
}
|
|
149
176
|
async all(statement, parameters) {
|
|
@@ -167,7 +194,7 @@ export class SupabaseAdapter {
|
|
|
167
194
|
}
|
|
168
195
|
const startTime = Date.now();
|
|
169
196
|
try {
|
|
170
|
-
const result = await this.pool.query(statement,
|
|
197
|
+
const result = await this.pool.query(...prepare(statement, parameters));
|
|
171
198
|
this.trackQuery(statement, startTime);
|
|
172
199
|
const rows = result.rows;
|
|
173
200
|
// Update cache
|
|
@@ -185,7 +212,7 @@ export class SupabaseAdapter {
|
|
|
185
212
|
return rows;
|
|
186
213
|
}
|
|
187
214
|
catch (error) {
|
|
188
|
-
throw
|
|
215
|
+
throw failure(`Query failed: ${error}`, error);
|
|
189
216
|
}
|
|
190
217
|
}
|
|
191
218
|
async exec(script) {
|
|
@@ -197,7 +224,7 @@ export class SupabaseAdapter {
|
|
|
197
224
|
this.trackQuery(script, startTime);
|
|
198
225
|
}
|
|
199
226
|
catch (error) {
|
|
200
|
-
throw
|
|
227
|
+
throw failure(`Script execution failed: ${error}`, error);
|
|
201
228
|
}
|
|
202
229
|
}
|
|
203
230
|
async transaction(fn) {
|
|
@@ -213,15 +240,15 @@ export class SupabaseAdapter {
|
|
|
213
240
|
open: async () => { },
|
|
214
241
|
close: async () => { },
|
|
215
242
|
run: async (stmt, params) => {
|
|
216
|
-
const result = await client.query(stmt,
|
|
243
|
+
const result = await client.query(...prepare(stmt, params));
|
|
217
244
|
return { changes: result.rowCount || 0, lastInsertRowid: 0 };
|
|
218
245
|
},
|
|
219
246
|
get: async (stmt, params) => {
|
|
220
|
-
const result = await client.query(stmt,
|
|
247
|
+
const result = await client.query(...prepare(stmt, params));
|
|
221
248
|
return result.rows[0] || null;
|
|
222
249
|
},
|
|
223
250
|
all: async (stmt, params) => {
|
|
224
|
-
const result = await client.query(stmt,
|
|
251
|
+
const result = await client.query(...prepare(stmt, params));
|
|
225
252
|
return result.rows;
|
|
226
253
|
},
|
|
227
254
|
exec: async (script) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supabase.js","sourceRoot":"","sources":["../../src/adapters/supabase.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"supabase.js","sourceRoot":"","sources":["../../src/adapters/supabase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Supabase Postgres Storage Adapter
|
|
3
3
|
* Provides full Postgres capabilities with Supabase's managed infrastructure
|
|
4
|
+
*
|
|
5
|
+
* @deprecated Use the PostgreSQL adapter with the Supabase connection string:
|
|
6
|
+
* `createPostgresAdapter({ connectionString, ssl: { rejectUnauthorized: true, ca } })`
|
|
7
|
+
* from `@framers/sql-storage-adapter/postgres`. It reaches Supabase the same
|
|
8
|
+
* way, with pool control, transaction error handling and `strict` resolution.
|
|
4
9
|
*/
|
|
5
10
|
import type { StorageAdapter, StorageCapability, StorageOpenOptions, StorageParameters, StorageRunResult, BatchResult } from '../core/contracts/index.js';
|
|
6
11
|
import type { StorageAdapterExtensions, ExtendedBatchOperation, Migration, PerformanceMetrics, StreamOptions } from '../core/contracts/extensions.js';
|
|
@@ -12,10 +17,13 @@ export interface SupabaseAdapterOptions extends StorageOpenOptions {
|
|
|
12
17
|
idleTimeoutMillis?: number;
|
|
13
18
|
connectionTimeoutMillis?: number;
|
|
14
19
|
};
|
|
20
|
+
/** TLS: false turns it off; an object (with `ca` to verify Supabase's certificate) is passed to pg; otherwise TLS without verification. */
|
|
15
21
|
ssl?: boolean | {
|
|
16
22
|
rejectUnauthorized: boolean;
|
|
23
|
+
ca?: string;
|
|
17
24
|
};
|
|
18
25
|
}
|
|
26
|
+
/** @deprecated Use `createPostgresAdapter` from `@framers/sql-storage-adapter/postgres` with the Supabase connection string. */
|
|
19
27
|
export declare class SupabaseAdapter implements StorageAdapter, StorageAdapterExtensions {
|
|
20
28
|
readonly kind = "supabase-postgres";
|
|
21
29
|
readonly capabilities: ReadonlySet<StorageCapability>;
|
|
@@ -30,6 +30,20 @@ __export(supabase_exports, {
|
|
|
30
30
|
SupabaseAdapter: () => SupabaseAdapter
|
|
31
31
|
});
|
|
32
32
|
module.exports = __toCommonJS(supabase_exports);
|
|
33
|
+
var import_sqlPlaceholders = require("../shared/sqlPlaceholders.js");
|
|
34
|
+
var import_logger = require("../shared/logger.js");
|
|
35
|
+
let deprecationLogged = false;
|
|
36
|
+
const prepare = (statement, parameters) => {
|
|
37
|
+
const { text, values } = (0, import_sqlPlaceholders.toPostgresStatement)(statement, parameters);
|
|
38
|
+
return [text, values];
|
|
39
|
+
};
|
|
40
|
+
const failure = (message, error) => {
|
|
41
|
+
const wrapped = new Error(message);
|
|
42
|
+
wrapped.cause = error;
|
|
43
|
+
if (error && typeof error === "object" && "code" in error)
|
|
44
|
+
wrapped.code = error.code;
|
|
45
|
+
return wrapped;
|
|
46
|
+
};
|
|
33
47
|
class SupabaseAdapter {
|
|
34
48
|
constructor() {
|
|
35
49
|
this.kind = "supabase-postgres";
|
|
@@ -55,6 +69,10 @@ class SupabaseAdapter {
|
|
|
55
69
|
}
|
|
56
70
|
async open(options) {
|
|
57
71
|
this.options = options;
|
|
72
|
+
if (!deprecationLogged) {
|
|
73
|
+
deprecationLogged = true;
|
|
74
|
+
(0, import_logger.getStorageLogger)().warn({ adapter: "supabase-postgres" }, "SupabaseAdapter is deprecated: use createPostgresAdapter({ connectionString }) from @framers/sql-storage-adapter/postgres, which reaches Supabase the same way. SupabaseAdapter does not verify the server certificate unless ssl is { rejectUnauthorized: true, ca }.");
|
|
75
|
+
}
|
|
58
76
|
const pg = await Promise.resolve().then(() => __toESM(require("pg")));
|
|
59
77
|
const { Pool } = pg;
|
|
60
78
|
const getEnv = (key) => {
|
|
@@ -73,7 +91,7 @@ class SupabaseAdapter {
|
|
|
73
91
|
min: options?.poolConfig?.min || 2,
|
|
74
92
|
idleTimeoutMillis: options?.poolConfig?.idleTimeoutMillis || 3e4,
|
|
75
93
|
connectionTimeoutMillis: options?.poolConfig?.connectionTimeoutMillis || 5e3,
|
|
76
|
-
ssl: options?.ssl
|
|
94
|
+
ssl: options?.ssl === false ? void 0 : typeof options?.ssl === "object" ? options.ssl : { rejectUnauthorized: false }
|
|
77
95
|
});
|
|
78
96
|
try {
|
|
79
97
|
const client = await this.pool.connect();
|
|
@@ -118,14 +136,14 @@ class SupabaseAdapter {
|
|
|
118
136
|
throw new Error("Storage adapter not opened");
|
|
119
137
|
const startTime = Date.now();
|
|
120
138
|
try {
|
|
121
|
-
const result = await this.pool.query(statement,
|
|
139
|
+
const result = await this.pool.query(...prepare(statement, parameters));
|
|
122
140
|
this.trackQuery(statement, startTime);
|
|
123
141
|
return {
|
|
124
142
|
changes: result.rowCount || 0,
|
|
125
143
|
lastInsertRowid: result.rows[0]?.id || 0
|
|
126
144
|
};
|
|
127
145
|
} catch (error) {
|
|
128
|
-
throw
|
|
146
|
+
throw failure(`Query failed: ${error}`, error);
|
|
129
147
|
}
|
|
130
148
|
}
|
|
131
149
|
async get(statement, parameters) {
|
|
@@ -146,7 +164,7 @@ class SupabaseAdapter {
|
|
|
146
164
|
}
|
|
147
165
|
const startTime = Date.now();
|
|
148
166
|
try {
|
|
149
|
-
const result = await this.pool.query(statement,
|
|
167
|
+
const result = await this.pool.query(...prepare(statement, parameters));
|
|
150
168
|
this.trackQuery(statement, startTime);
|
|
151
169
|
const value = result.rows[0] || null;
|
|
152
170
|
if (this.cacheEnabled && value !== null) {
|
|
@@ -161,7 +179,7 @@ class SupabaseAdapter {
|
|
|
161
179
|
}
|
|
162
180
|
return value;
|
|
163
181
|
} catch (error) {
|
|
164
|
-
throw
|
|
182
|
+
throw failure(`Query failed: ${error}`, error);
|
|
165
183
|
}
|
|
166
184
|
}
|
|
167
185
|
async all(statement, parameters) {
|
|
@@ -184,7 +202,7 @@ class SupabaseAdapter {
|
|
|
184
202
|
}
|
|
185
203
|
const startTime = Date.now();
|
|
186
204
|
try {
|
|
187
|
-
const result = await this.pool.query(statement,
|
|
205
|
+
const result = await this.pool.query(...prepare(statement, parameters));
|
|
188
206
|
this.trackQuery(statement, startTime);
|
|
189
207
|
const rows = result.rows;
|
|
190
208
|
if (this.cacheEnabled) {
|
|
@@ -199,7 +217,7 @@ class SupabaseAdapter {
|
|
|
199
217
|
}
|
|
200
218
|
return rows;
|
|
201
219
|
} catch (error) {
|
|
202
|
-
throw
|
|
220
|
+
throw failure(`Query failed: ${error}`, error);
|
|
203
221
|
}
|
|
204
222
|
}
|
|
205
223
|
async exec(script) {
|
|
@@ -210,7 +228,7 @@ class SupabaseAdapter {
|
|
|
210
228
|
await this.pool.query(script);
|
|
211
229
|
this.trackQuery(script, startTime);
|
|
212
230
|
} catch (error) {
|
|
213
|
-
throw
|
|
231
|
+
throw failure(`Script execution failed: ${error}`, error);
|
|
214
232
|
}
|
|
215
233
|
}
|
|
216
234
|
async transaction(fn) {
|
|
@@ -227,15 +245,15 @@ class SupabaseAdapter {
|
|
|
227
245
|
close: async () => {
|
|
228
246
|
},
|
|
229
247
|
run: async (stmt, params) => {
|
|
230
|
-
const result2 = await client.query(stmt,
|
|
248
|
+
const result2 = await client.query(...prepare(stmt, params));
|
|
231
249
|
return { changes: result2.rowCount || 0, lastInsertRowid: 0 };
|
|
232
250
|
},
|
|
233
251
|
get: async (stmt, params) => {
|
|
234
|
-
const result2 = await client.query(stmt,
|
|
252
|
+
const result2 = await client.query(...prepare(stmt, params));
|
|
235
253
|
return result2.rows[0] || null;
|
|
236
254
|
},
|
|
237
255
|
all: async (stmt, params) => {
|
|
238
|
-
const result2 = await client.query(stmt,
|
|
256
|
+
const result2 = await client.query(...prepare(stmt, params));
|
|
239
257
|
return result2.rows;
|
|
240
258
|
},
|
|
241
259
|
exec: async (script) => {
|
|
@@ -12,6 +12,7 @@ import type { PostgresAdapterOptions } from '../adapters/postgresAdapter.js';
|
|
|
12
12
|
import type { CapacitorAdapterOptions } from '../adapters/capacitorSqliteAdapter.js';
|
|
13
13
|
import type { IndexedDbAdapterOptions } from '../adapters/indexedDbAdapter.js';
|
|
14
14
|
import type { StorageLogger } from '../shared/logger.js';
|
|
15
|
+
import type { StorageHooks } from './contracts/hooks.js';
|
|
15
16
|
/**
|
|
16
17
|
* Database connection options.
|
|
17
18
|
*/
|
|
@@ -111,6 +112,12 @@ export interface DatabaseOptions {
|
|
|
111
112
|
* `setStorageLogger()` set, else the console.
|
|
112
113
|
*/
|
|
113
114
|
logger?: StorageLogger;
|
|
115
|
+
/**
|
|
116
|
+
* Lifecycle hooks around every call of the adapter returned (see withHooks):
|
|
117
|
+
* each query, write, transaction and error, with the power to change a
|
|
118
|
+
* statement or a result, or to stop a call by returning undefined.
|
|
119
|
+
*/
|
|
120
|
+
hooks?: StorageHooks;
|
|
114
121
|
}
|
|
115
122
|
/**
|
|
116
123
|
* Create a database connection.
|
|
@@ -28,6 +28,7 @@ var import_contracts = require("./contracts/index.js");
|
|
|
28
28
|
var import_resolver = require("./resolver.js");
|
|
29
29
|
var import_postgresTarget = require("../shared/postgresTarget.js");
|
|
30
30
|
var import_segment = require("../shared/segment.js");
|
|
31
|
+
var import_withHooks = require("../shared/withHooks.js");
|
|
31
32
|
var import_resolver2 = require("./resolver.js");
|
|
32
33
|
const configuredPostgresOptions = (options) => {
|
|
33
34
|
const named = [];
|
|
@@ -112,7 +113,7 @@ async function createDatabase(options = {}) {
|
|
|
112
113
|
}
|
|
113
114
|
const adapter = await (0, import_resolver.resolveStorageAdapter)(resolverOptions);
|
|
114
115
|
await adapter.open(resolverOptions.openOptions);
|
|
115
|
-
return adapter;
|
|
116
|
+
return options.hooks ? (0, import_withHooks.withHooks)(adapter, options.hooks) : adapter;
|
|
116
117
|
}
|
|
117
118
|
async function connectDatabase(config) {
|
|
118
119
|
if (typeof config === "string") {
|
|
@@ -18,6 +18,7 @@ export { SqliteFileExporter } from '../exporters/SqliteFileExporter.js';
|
|
|
18
18
|
export { PostgresExporter } from '../exporters/PostgresExporter.js';
|
|
19
19
|
export { createStorageFeatures } from './contracts/features.js';
|
|
20
20
|
export { isUniqueViolation } from '../shared/errors.js';
|
|
21
|
+
export { withHooks } from '../shared/withHooks.js';
|
|
21
22
|
export { setStorageLogger, getStorageLogger, type StorageLogger } from '../shared/logger.js';
|
|
22
23
|
export * from '../features/migrations/schemaMigrations.js';
|
|
23
24
|
export * from '../features/auth/authJsAdapter.js';
|
|
@@ -30,7 +30,8 @@ __export(portable_exports, {
|
|
|
30
30
|
createStorageFeatures: () => import_features.createStorageFeatures,
|
|
31
31
|
getStorageLogger: () => import_logger.getStorageLogger,
|
|
32
32
|
isUniqueViolation: () => import_errors.isUniqueViolation,
|
|
33
|
-
setStorageLogger: () => import_logger.setStorageLogger
|
|
33
|
+
setStorageLogger: () => import_logger.setStorageLogger,
|
|
34
|
+
withHooks: () => import_withHooks.withHooks
|
|
34
35
|
});
|
|
35
36
|
module.exports = __toCommonJS(portable_exports);
|
|
36
37
|
__reExport(portable_exports, require("../types/index.js"), module.exports);
|
|
@@ -45,6 +46,7 @@ var import_SqliteFileExporter = require("../exporters/SqliteFileExporter.js");
|
|
|
45
46
|
var import_PostgresExporter = require("../exporters/PostgresExporter.js");
|
|
46
47
|
var import_features = require("./contracts/features.js");
|
|
47
48
|
var import_errors = require("../shared/errors.js");
|
|
49
|
+
var import_withHooks = require("../shared/withHooks.js");
|
|
48
50
|
var import_logger = require("../shared/logger.js");
|
|
49
51
|
__reExport(portable_exports, require("../features/migrations/schemaMigrations.js"), module.exports);
|
|
50
52
|
__reExport(portable_exports, require("../features/auth/authJsAdapter.js"), module.exports);
|
|
@@ -64,6 +66,7 @@ __reExport(portable_exports, require("../shared/parameterUtils.js"), module.expo
|
|
|
64
66
|
getStorageLogger,
|
|
65
67
|
isUniqueViolation,
|
|
66
68
|
setStorageLogger,
|
|
69
|
+
withHooks,
|
|
67
70
|
...require("../types/index.js"),
|
|
68
71
|
...require("../features/migrations/schemaMigrations.js"),
|
|
69
72
|
...require("../features/auth/authJsAdapter.js"),
|
|
@@ -87,7 +87,7 @@ const unsupportedKind = (kind) => {
|
|
|
87
87
|
case "electron-renderer":
|
|
88
88
|
return new Error(`The resolver cannot build adapter kind "${kind}". Create it with createElectronRendererAdapter from '@framers/sql-storage-adapter/electron'.`);
|
|
89
89
|
case "supabase":
|
|
90
|
-
return new Error(`The resolver cannot build adapter kind "${kind}". Use kind "postgres" with the Supabase connection string
|
|
90
|
+
return new Error(`The resolver cannot build adapter kind "${kind}". Use kind "postgres" with the Supabase connection string (SupabaseAdapter is deprecated).`);
|
|
91
91
|
default:
|
|
92
92
|
return new Error(`Unknown adapter kind "${kind}". The resolver builds postgres, better-sqlite3, capacitor, indexeddb, sqljs and memory.`);
|
|
93
93
|
}
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -28,5 +28,6 @@ export { SqliteFileExporter } from './exporters/SqliteFileExporter.js';
|
|
|
28
28
|
export { PostgresExporter } from './exporters/PostgresExporter.js';
|
|
29
29
|
export { createStorageFeatures } from './core/contracts/features.js';
|
|
30
30
|
export { isUniqueViolation } from './shared/errors.js';
|
|
31
|
+
export { withHooks } from './shared/withHooks.js';
|
|
31
32
|
export { setStorageLogger, getStorageLogger, type StorageLogger } from './shared/logger.js';
|
|
32
33
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/cjs/index.js
CHANGED
|
@@ -33,7 +33,8 @@ __export(dist_exports, {
|
|
|
33
33
|
segmentFilePath: () => import_segment.segmentFilePath,
|
|
34
34
|
segmentName: () => import_segment.segmentName,
|
|
35
35
|
setStorageLogger: () => import_logger.setStorageLogger,
|
|
36
|
-
validateSegment: () => import_segment.validateSegment
|
|
36
|
+
validateSegment: () => import_segment.validateSegment,
|
|
37
|
+
withHooks: () => import_withHooks.withHooks
|
|
37
38
|
});
|
|
38
39
|
module.exports = __toCommonJS(dist_exports);
|
|
39
40
|
__reExport(dist_exports, require("./types/index.js"), module.exports);
|
|
@@ -66,6 +67,7 @@ var import_SqliteFileExporter = require("./exporters/SqliteFileExporter.js");
|
|
|
66
67
|
var import_PostgresExporter = require("./exporters/PostgresExporter.js");
|
|
67
68
|
var import_features = require("./core/contracts/features.js");
|
|
68
69
|
var import_errors = require("./shared/errors.js");
|
|
70
|
+
var import_withHooks = require("./shared/withHooks.js");
|
|
69
71
|
var import_logger = require("./shared/logger.js");
|
|
70
72
|
// Annotate the CommonJS export names for ESM import in node:
|
|
71
73
|
0 && (module.exports = {
|
|
@@ -85,6 +87,7 @@ var import_logger = require("./shared/logger.js");
|
|
|
85
87
|
segmentName,
|
|
86
88
|
setStorageLogger,
|
|
87
89
|
validateSegment,
|
|
90
|
+
withHooks,
|
|
88
91
|
...require("./types/index.js"),
|
|
89
92
|
...require("./core/database.js"),
|
|
90
93
|
...require("./core/resolver.js"),
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { StorageAdapter } from '../core/contracts/index.js';
|
|
2
|
+
import { type StorageHooks } from '../core/contracts/hooks.js';
|
|
3
|
+
/**
|
|
4
|
+
* The adapter with lifecycle hooks around its calls, on any adapter.
|
|
5
|
+
*
|
|
6
|
+
* - `onBeforeQuery` (get, all, exec) and `onBeforeWrite` (run) see the call's context, and return it, changed or
|
|
7
|
+
* not, to go on, or undefined to stop the call: a stopped get returns null, all an empty list, run no changes.
|
|
8
|
+
* - `onAfterQuery` can replace the result, and `onAfterWrite` sees it.
|
|
9
|
+
* - `onBeforeTransaction` can stop a transaction, and `onAfterTransaction` sees its outcome. The statements inside a
|
|
10
|
+
* transaction pass through the hooks too.
|
|
11
|
+
* - `onError` sees each failure and returns the error to throw, or undefined to swallow it.
|
|
12
|
+
*
|
|
13
|
+
* Everything else, the adapter's kind and its own methods (`withConnection` on PostgreSQL), reaches the adapter
|
|
14
|
+
* itself, and `instanceof` still names its class.
|
|
15
|
+
*/
|
|
16
|
+
export declare function withHooks<A extends StorageAdapter>(adapter: A, hooks: StorageHooks): A;
|
|
17
|
+
//# sourceMappingURL=withHooks.d.ts.map
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
4
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
|
+
var __export = (target, all) => {
|
|
6
|
+
for (var name in all)
|
|
7
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
8
|
+
};
|
|
9
|
+
var __copyProps = (to, from, except, desc) => {
|
|
10
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
11
|
+
for (let key of __getOwnPropNames(from))
|
|
12
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
13
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
14
|
+
}
|
|
15
|
+
return to;
|
|
16
|
+
};
|
|
17
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
18
|
+
var withHooks_exports = {};
|
|
19
|
+
__export(withHooks_exports, {
|
|
20
|
+
withHooks: () => withHooks
|
|
21
|
+
});
|
|
22
|
+
module.exports = __toCommonJS(withHooks_exports);
|
|
23
|
+
var import_hooks = require("../core/contracts/hooks.js");
|
|
24
|
+
const handled = /* @__PURE__ */ new WeakSet();
|
|
25
|
+
const EMPTY_WRITE = { changes: 0, lastInsertRowid: null };
|
|
26
|
+
function withHooks(adapter, hooks) {
|
|
27
|
+
const context = (operation) => ({
|
|
28
|
+
operationId: (0, import_hooks.generateOperationId)(),
|
|
29
|
+
operation,
|
|
30
|
+
startTime: Date.now(),
|
|
31
|
+
adapterKind: adapter.kind
|
|
32
|
+
});
|
|
33
|
+
const fail = async (error, at) => {
|
|
34
|
+
const err = error instanceof Error ? error : new Error(String(error));
|
|
35
|
+
if (!hooks.onError || handled.has(err))
|
|
36
|
+
throw err;
|
|
37
|
+
const replaced = await hooks.onError(err, at);
|
|
38
|
+
if (!replaced)
|
|
39
|
+
return;
|
|
40
|
+
handled.add(replaced);
|
|
41
|
+
throw replaced;
|
|
42
|
+
};
|
|
43
|
+
const query = async (operation, statement, parameters, call, stopped) => {
|
|
44
|
+
let at = { ...context(operation), statement, parameters };
|
|
45
|
+
if (hooks.onBeforeQuery) {
|
|
46
|
+
const next = await hooks.onBeforeQuery(at);
|
|
47
|
+
if (!next)
|
|
48
|
+
return stopped;
|
|
49
|
+
at = next;
|
|
50
|
+
}
|
|
51
|
+
try {
|
|
52
|
+
const result = await call(at.statement, at.parameters);
|
|
53
|
+
if (!hooks.onAfterQuery)
|
|
54
|
+
return result;
|
|
55
|
+
const replaced = await hooks.onAfterQuery(at, result);
|
|
56
|
+
return replaced === void 0 ? result : replaced;
|
|
57
|
+
} catch (error) {
|
|
58
|
+
await fail(error, at);
|
|
59
|
+
return stopped;
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
const overrides = {
|
|
63
|
+
get: (statement, parameters) => query("get", statement, parameters, (s, p) => adapter.get(s, p), null),
|
|
64
|
+
all: (statement, parameters) => query("all", statement, parameters, (s, p) => adapter.all(s, p), []),
|
|
65
|
+
exec: (script) => query("exec", script, void 0, (s) => adapter.exec(s), void 0),
|
|
66
|
+
run: async (statement, parameters) => {
|
|
67
|
+
let at = { ...context("run"), statement, parameters };
|
|
68
|
+
if (hooks.onBeforeWrite) {
|
|
69
|
+
const next = await hooks.onBeforeWrite(at);
|
|
70
|
+
if (!next)
|
|
71
|
+
return EMPTY_WRITE;
|
|
72
|
+
at = next;
|
|
73
|
+
}
|
|
74
|
+
try {
|
|
75
|
+
const result = await adapter.run(at.statement, at.parameters);
|
|
76
|
+
await hooks.onAfterWrite?.(at, result);
|
|
77
|
+
return result;
|
|
78
|
+
} catch (error) {
|
|
79
|
+
await fail(error, at);
|
|
80
|
+
return EMPTY_WRITE;
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
transaction: async (fn) => {
|
|
84
|
+
let at = { ...context("transaction") };
|
|
85
|
+
if (hooks.onBeforeTransaction) {
|
|
86
|
+
const next = await hooks.onBeforeTransaction(at);
|
|
87
|
+
if (!next)
|
|
88
|
+
return void 0;
|
|
89
|
+
at = next;
|
|
90
|
+
}
|
|
91
|
+
try {
|
|
92
|
+
const result = await adapter.transaction((trx) => fn(withHooks(trx, hooks)));
|
|
93
|
+
await hooks.onAfterTransaction?.({ ...at, outcome: "committed" });
|
|
94
|
+
return result;
|
|
95
|
+
} catch (error) {
|
|
96
|
+
await hooks.onAfterTransaction?.({ ...at, outcome: "rolled_back" });
|
|
97
|
+
await fail(error, at);
|
|
98
|
+
return void 0;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
return new Proxy(adapter, {
|
|
103
|
+
get(target, property) {
|
|
104
|
+
if (Object.prototype.hasOwnProperty.call(overrides, property)) {
|
|
105
|
+
return overrides[property];
|
|
106
|
+
}
|
|
107
|
+
const value = Reflect.get(target, property, target);
|
|
108
|
+
return typeof value === "function" ? value.bind(target) : value;
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
113
|
+
0 && (module.exports = {
|
|
114
|
+
withHooks
|
|
115
|
+
});
|
package/dist/core/database.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ import type { PostgresAdapterOptions } from '../adapters/postgresAdapter.js';
|
|
|
12
12
|
import type { CapacitorAdapterOptions } from '../adapters/capacitorSqliteAdapter.js';
|
|
13
13
|
import type { IndexedDbAdapterOptions } from '../adapters/indexedDbAdapter.js';
|
|
14
14
|
import type { StorageLogger } from '../shared/logger.js';
|
|
15
|
+
import type { StorageHooks } from './contracts/hooks.js';
|
|
15
16
|
/**
|
|
16
17
|
* Database connection options.
|
|
17
18
|
*/
|
|
@@ -111,6 +112,12 @@ export interface DatabaseOptions {
|
|
|
111
112
|
* `setStorageLogger()` set, else the console.
|
|
112
113
|
*/
|
|
113
114
|
logger?: StorageLogger;
|
|
115
|
+
/**
|
|
116
|
+
* Lifecycle hooks around every call of the adapter returned (see withHooks):
|
|
117
|
+
* each query, write, transaction and error, with the power to change a
|
|
118
|
+
* statement or a result, or to stop a call by returning undefined.
|
|
119
|
+
*/
|
|
120
|
+
hooks?: StorageHooks;
|
|
114
121
|
}
|
|
115
122
|
/**
|
|
116
123
|
* Create a database connection.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/core/database.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAA0B,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,EAAwD,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAGpG,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../src/core/database.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAA0B,KAAK,cAAc,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,EAAwD,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAGpG,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAC1E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AActD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,sBAAsB,CAAC;IAElC;;;OAGG;IACH,MAAM,CAAC,EAAE,uBAAuB,CAAC;IAEjC;;;;;;;;;;;;;;;;;OAiBG;IACH,SAAS,CAAC,EAAE,uBAAuB,CAAC;IAEpC;;;OAGG;IACH,IAAI,CAAC,EAAE,UAAU,GAAG,QAAQ,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAE/D;;;OAGG;IACH,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IAEzB;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,MAAM,CAAC,EAAE,aAAa,CAAC;IAEvB;;;;OAIG;IACH,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB;AASD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,cAAc,CAAC,OAAO,GAAE,eAAoB,GAAG,OAAO,CAAC,cAAc,CAAC,CAyG3F;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,GAAG,sBAAsB,GACtC,OAAO,CAAC,cAAc,CAAC,CAKzB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAE5E;AAED;;;;;;;;;GASG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,cAAc,CAAC,CAEpE;AAGD,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC"}
|
package/dist/core/database.js
CHANGED
|
@@ -10,6 +10,7 @@ import { StorageResolutionError } from './contracts/index.js';
|
|
|
10
10
|
import { resolveStorageAdapter } from './resolver.js';
|
|
11
11
|
import { namesPostgresServer } from '../shared/postgresTarget.js';
|
|
12
12
|
import { namesInMemoryDatabase } from '../shared/segment.js';
|
|
13
|
+
import { withHooks } from '../shared/withHooks.js';
|
|
13
14
|
/**
|
|
14
15
|
* The options that configure Postgres: `url` when the caller set the key, even
|
|
15
16
|
* to undefined (`{ url: process.env.DATABASE_URL }`), and `postgres`.
|
|
@@ -184,7 +185,7 @@ export async function createDatabase(options = {}) {
|
|
|
184
185
|
}
|
|
185
186
|
const adapter = await resolveStorageAdapter(resolverOptions);
|
|
186
187
|
await adapter.open(resolverOptions.openOptions);
|
|
187
|
-
return adapter;
|
|
188
|
+
return options.hooks ? withHooks(adapter, options.hooks) : adapter;
|
|
188
189
|
}
|
|
189
190
|
/**
|
|
190
191
|
* Connect to a remote database.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/core/database.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,sBAAsB,EAAuB,MAAM,aAAa,CAAC;AAC1E,OAAO,EAAE,qBAAqB,EAAmD,MAAM,YAAY,CAAC;AACpG,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAM1D;;;GAGG;AACH,MAAM,yBAAyB,GAAG,CAAC,OAAwB,EAA6B,EAAE;IACxF,MAAM,KAAK,GAA8B,EAAE,CAAC;IAC5C,IAAI,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5E,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC3D,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/core/database.ts"],"names":[],"mappings":"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"}
|
package/dist/core/portable.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ export { SqliteFileExporter } from '../exporters/SqliteFileExporter.js';
|
|
|
18
18
|
export { PostgresExporter } from '../exporters/PostgresExporter.js';
|
|
19
19
|
export { createStorageFeatures } from './contracts/features.js';
|
|
20
20
|
export { isUniqueViolation } from '../shared/errors.js';
|
|
21
|
+
export { withHooks } from '../shared/withHooks.js';
|
|
21
22
|
export { setStorageLogger, getStorageLogger, type StorageLogger } from '../shared/logger.js';
|
|
22
23
|
export * from '../features/migrations/schemaMigrations.js';
|
|
23
24
|
export * from '../features/auth/authJsAdapter.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portable.d.ts","sourceRoot":"","sources":["../../src/core/portable.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC1F,cAAc,yCAAyC,CAAC;AACxD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"portable.d.ts","sourceRoot":"","sources":["../../src/core/portable.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAC1F,cAAc,yCAAyC,CAAC;AACxD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC"}
|
package/dist/core/portable.js
CHANGED
|
@@ -18,6 +18,7 @@ export { SqliteFileExporter } from '../exporters/SqliteFileExporter.js';
|
|
|
18
18
|
export { PostgresExporter } from '../exporters/PostgresExporter.js';
|
|
19
19
|
export { createStorageFeatures } from './contracts/features.js';
|
|
20
20
|
export { isUniqueViolation } from '../shared/errors.js';
|
|
21
|
+
export { withHooks } from '../shared/withHooks.js';
|
|
21
22
|
export { setStorageLogger, getStorageLogger } from '../shared/logger.js';
|
|
22
23
|
export * from '../features/migrations/schemaMigrations.js';
|
|
23
24
|
export * from '../features/auth/authJsAdapter.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"portable.js","sourceRoot":"","sources":["../../src/core/portable.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAsB,MAAM,kBAAkB,CAAC;AAC1F,cAAc,yCAAyC,CAAC;AACxD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC"}
|
|
1
|
+
{"version":3,"file":"portable.js","sourceRoot":"","sources":["../../src/core/portable.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAsB,MAAM,kBAAkB,CAAC;AAC1F,cAAc,yCAAyC,CAAC;AACxD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC"}
|
package/dist/core/resolver.js
CHANGED
|
@@ -77,7 +77,7 @@ const unsupportedKind = (kind) => {
|
|
|
77
77
|
case 'electron-renderer':
|
|
78
78
|
return new Error(`The resolver cannot build adapter kind "${kind}". Create it with createElectronRendererAdapter from '@framers/sql-storage-adapter/electron'.`);
|
|
79
79
|
case 'supabase':
|
|
80
|
-
return new Error(`The resolver cannot build adapter kind "${kind}". Use kind "postgres" with the Supabase connection string
|
|
80
|
+
return new Error(`The resolver cannot build adapter kind "${kind}". Use kind "postgres" with the Supabase connection string (SupabaseAdapter is deprecated).`);
|
|
81
81
|
default:
|
|
82
82
|
return new Error(`Unknown adapter kind "${kind}". The resolver builds postgres, better-sqlite3, capacitor, indexeddb, sqljs and memory.`);
|
|
83
83
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/core/resolver.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/core/resolver.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -28,5 +28,6 @@ export { SqliteFileExporter } from './exporters/SqliteFileExporter.js';
|
|
|
28
28
|
export { PostgresExporter } from './exporters/PostgresExporter.js';
|
|
29
29
|
export { createStorageFeatures } from './core/contracts/features.js';
|
|
30
30
|
export { isUniqueViolation } from './shared/errors.js';
|
|
31
|
+
export { withHooks } from './shared/withHooks.js';
|
|
31
32
|
export { setStorageLogger, getStorageLogger, type StorageLogger } from './shared/logger.js';
|
|
32
33
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,SAAS,CAAC;AAGxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAGhC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAQ9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAM5C,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAMjF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,cAAc,SAAS,CAAC;AAGxB,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAGhC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAQ9C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAM5C,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAMjF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -42,5 +42,6 @@ export { SqliteFileExporter } from './exporters/SqliteFileExporter.js';
|
|
|
42
42
|
export { PostgresExporter } from './exporters/PostgresExporter.js';
|
|
43
43
|
export { createStorageFeatures } from './core/contracts/features.js';
|
|
44
44
|
export { isUniqueViolation } from './shared/errors.js';
|
|
45
|
+
export { withHooks } from './shared/withHooks.js';
|
|
45
46
|
export { setStorageLogger, getStorageLogger } from './shared/logger.js';
|
|
46
47
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,cAAc,SAAS,CAAC;AAExB,8EAA8E;AAC9E,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAEhC,+EAA+E;AAC/E,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAE9C,wEAAwE;AACxE,yDAAyD;AACzD,2HAA2H;AAC3H,mEAAmE;AAEnE,+EAA+E;AAC/E,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAE5C,uFAAuF;AACvF,sFAAsF;AAEtF,+EAA+E;AAC/E,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEjF,6FAA6F;AAC7F,uGAAuG;AAEvG,iFAAiF;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAsB,MAAM,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,cAAc,SAAS,CAAC;AAExB,8EAA8E;AAC9E,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAEhC,+EAA+E;AAC/E,cAAc,gCAAgC,CAAC;AAC/C,cAAc,yBAAyB,CAAC;AACxC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,mCAAmC,CAAC;AAClD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAE9C,wEAAwE;AACxE,yDAAyD;AACzD,2HAA2H;AAC3H,mEAAmE;AAEnE,+EAA+E;AAC/E,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,wCAAwC,CAAC;AACvD,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAE5C,uFAAuF;AACvF,sFAAsF;AAEtF,+EAA+E;AAC/E,cAAc,yBAAyB,CAAC;AACxC,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEjF,6FAA6F;AAC7F,uGAAuG;AAEvG,iFAAiF;AACjF,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAsB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { StorageAdapter } from '../core/contracts/index.js';
|
|
2
|
+
import { type StorageHooks } from '../core/contracts/hooks.js';
|
|
3
|
+
/**
|
|
4
|
+
* The adapter with lifecycle hooks around its calls, on any adapter.
|
|
5
|
+
*
|
|
6
|
+
* - `onBeforeQuery` (get, all, exec) and `onBeforeWrite` (run) see the call's context, and return it, changed or
|
|
7
|
+
* not, to go on, or undefined to stop the call: a stopped get returns null, all an empty list, run no changes.
|
|
8
|
+
* - `onAfterQuery` can replace the result, and `onAfterWrite` sees it.
|
|
9
|
+
* - `onBeforeTransaction` can stop a transaction, and `onAfterTransaction` sees its outcome. The statements inside a
|
|
10
|
+
* transaction pass through the hooks too.
|
|
11
|
+
* - `onError` sees each failure and returns the error to throw, or undefined to swallow it.
|
|
12
|
+
*
|
|
13
|
+
* Everything else, the adapter's kind and its own methods (`withConnection` on PostgreSQL), reaches the adapter
|
|
14
|
+
* itself, and `instanceof` still names its class.
|
|
15
|
+
*/
|
|
16
|
+
export declare function withHooks<A extends StorageAdapter>(adapter: A, hooks: StorageHooks): A;
|
|
17
|
+
//# sourceMappingURL=withHooks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"withHooks.d.ts","sourceRoot":"","sources":["../../src/shared/withHooks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAuC,MAAM,mBAAmB,CAAC;AAC7F,OAAO,EAIL,KAAK,YAAY,EAGlB,MAAM,yBAAyB,CAAC;AAOjC;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,cAAc,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,GAAG,CAAC,CAgGtF"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { generateOperationId, } from '../core/contracts/hooks.js';
|
|
2
|
+
/** Errors the hooks of an inner call already handed to onError, so the transaction around it does not hand them again. */
|
|
3
|
+
const handled = new WeakSet();
|
|
4
|
+
const EMPTY_WRITE = { changes: 0, lastInsertRowid: null };
|
|
5
|
+
/**
|
|
6
|
+
* The adapter with lifecycle hooks around its calls, on any adapter.
|
|
7
|
+
*
|
|
8
|
+
* - `onBeforeQuery` (get, all, exec) and `onBeforeWrite` (run) see the call's context, and return it, changed or
|
|
9
|
+
* not, to go on, or undefined to stop the call: a stopped get returns null, all an empty list, run no changes.
|
|
10
|
+
* - `onAfterQuery` can replace the result, and `onAfterWrite` sees it.
|
|
11
|
+
* - `onBeforeTransaction` can stop a transaction, and `onAfterTransaction` sees its outcome. The statements inside a
|
|
12
|
+
* transaction pass through the hooks too.
|
|
13
|
+
* - `onError` sees each failure and returns the error to throw, or undefined to swallow it.
|
|
14
|
+
*
|
|
15
|
+
* Everything else, the adapter's kind and its own methods (`withConnection` on PostgreSQL), reaches the adapter
|
|
16
|
+
* itself, and `instanceof` still names its class.
|
|
17
|
+
*/
|
|
18
|
+
export function withHooks(adapter, hooks) {
|
|
19
|
+
const context = (operation) => ({
|
|
20
|
+
operationId: generateOperationId(),
|
|
21
|
+
operation,
|
|
22
|
+
startTime: Date.now(),
|
|
23
|
+
adapterKind: adapter.kind,
|
|
24
|
+
});
|
|
25
|
+
/** Hands `error` to onError; throws what it returns, or returns when it swallows the error. */
|
|
26
|
+
const fail = async (error, at) => {
|
|
27
|
+
const err = error instanceof Error ? error : new Error(String(error));
|
|
28
|
+
if (!hooks.onError || handled.has(err))
|
|
29
|
+
throw err;
|
|
30
|
+
const replaced = await hooks.onError(err, at);
|
|
31
|
+
if (!replaced)
|
|
32
|
+
return;
|
|
33
|
+
handled.add(replaced);
|
|
34
|
+
throw replaced;
|
|
35
|
+
};
|
|
36
|
+
const query = async (operation, statement, parameters, call, stopped) => {
|
|
37
|
+
let at = { ...context(operation), statement, parameters };
|
|
38
|
+
if (hooks.onBeforeQuery) {
|
|
39
|
+
const next = await hooks.onBeforeQuery(at);
|
|
40
|
+
if (!next)
|
|
41
|
+
return stopped;
|
|
42
|
+
at = next;
|
|
43
|
+
}
|
|
44
|
+
try {
|
|
45
|
+
const result = await call(at.statement, at.parameters);
|
|
46
|
+
if (!hooks.onAfterQuery)
|
|
47
|
+
return result;
|
|
48
|
+
const replaced = await hooks.onAfterQuery(at, result);
|
|
49
|
+
return replaced === undefined ? result : replaced;
|
|
50
|
+
}
|
|
51
|
+
catch (error) {
|
|
52
|
+
await fail(error, at);
|
|
53
|
+
return stopped;
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
const overrides = {
|
|
57
|
+
get: (statement, parameters) => query('get', statement, parameters, (s, p) => adapter.get(s, p), null),
|
|
58
|
+
all: (statement, parameters) => query('all', statement, parameters, (s, p) => adapter.all(s, p), []),
|
|
59
|
+
exec: (script) => query('exec', script, undefined, (s) => adapter.exec(s), undefined),
|
|
60
|
+
run: async (statement, parameters) => {
|
|
61
|
+
let at = { ...context('run'), statement, parameters };
|
|
62
|
+
if (hooks.onBeforeWrite) {
|
|
63
|
+
const next = await hooks.onBeforeWrite(at);
|
|
64
|
+
if (!next)
|
|
65
|
+
return EMPTY_WRITE;
|
|
66
|
+
at = next;
|
|
67
|
+
}
|
|
68
|
+
try {
|
|
69
|
+
const result = await adapter.run(at.statement, at.parameters);
|
|
70
|
+
await hooks.onAfterWrite?.(at, result);
|
|
71
|
+
return result;
|
|
72
|
+
}
|
|
73
|
+
catch (error) {
|
|
74
|
+
await fail(error, at);
|
|
75
|
+
return EMPTY_WRITE;
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
transaction: async (fn) => {
|
|
79
|
+
let at = { ...context('transaction') };
|
|
80
|
+
if (hooks.onBeforeTransaction) {
|
|
81
|
+
const next = await hooks.onBeforeTransaction(at);
|
|
82
|
+
if (!next)
|
|
83
|
+
return undefined;
|
|
84
|
+
at = next;
|
|
85
|
+
}
|
|
86
|
+
try {
|
|
87
|
+
const result = await adapter.transaction((trx) => fn(withHooks(trx, hooks)));
|
|
88
|
+
await hooks.onAfterTransaction?.({ ...at, outcome: 'committed' });
|
|
89
|
+
return result;
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
await hooks.onAfterTransaction?.({ ...at, outcome: 'rolled_back' });
|
|
93
|
+
await fail(error, at);
|
|
94
|
+
return undefined;
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
};
|
|
98
|
+
return new Proxy(adapter, {
|
|
99
|
+
get(target, property) {
|
|
100
|
+
if (Object.prototype.hasOwnProperty.call(overrides, property)) {
|
|
101
|
+
return overrides[property];
|
|
102
|
+
}
|
|
103
|
+
const value = Reflect.get(target, property, target);
|
|
104
|
+
return typeof value === 'function' ? value.bind(target) : value;
|
|
105
|
+
},
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
//# sourceMappingURL=withHooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"withHooks.js","sourceRoot":"","sources":["../../src/shared/withHooks.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED