@framers/sql-storage-adapter 0.6.15 → 0.7.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.
Files changed (94) hide show
  1. package/README.md +174 -3
  2. package/dist/adapters/baseStorageAdapter.d.ts.map +1 -1
  3. package/dist/adapters/baseStorageAdapter.js +4 -2
  4. package/dist/adapters/baseStorageAdapter.js.map +1 -1
  5. package/dist/adapters/betterSqliteAdapter.d.ts +18 -2
  6. package/dist/adapters/betterSqliteAdapter.d.ts.map +1 -1
  7. package/dist/adapters/betterSqliteAdapter.js +23 -7
  8. package/dist/adapters/betterSqliteAdapter.js.map +1 -1
  9. package/dist/adapters/capacitorSqliteAdapter.d.ts +8 -0
  10. package/dist/adapters/capacitorSqliteAdapter.d.ts.map +1 -1
  11. package/dist/adapters/capacitorSqliteAdapter.js +11 -1
  12. package/dist/adapters/capacitorSqliteAdapter.js.map +1 -1
  13. package/dist/adapters/electron/electronMainAdapter.d.ts +10 -0
  14. package/dist/adapters/electron/electronMainAdapter.d.ts.map +1 -1
  15. package/dist/adapters/electron/electronMainAdapter.js +21 -12
  16. package/dist/adapters/electron/electronMainAdapter.js.map +1 -1
  17. package/dist/adapters/indexedDbAdapter.d.ts +202 -54
  18. package/dist/adapters/indexedDbAdapter.d.ts.map +1 -1
  19. package/dist/adapters/indexedDbAdapter.js +560 -123
  20. package/dist/adapters/indexedDbAdapter.js.map +1 -1
  21. package/dist/adapters/postgresAdapter.d.ts +159 -3
  22. package/dist/adapters/postgresAdapter.d.ts.map +1 -1
  23. package/dist/adapters/postgresAdapter.js +667 -140
  24. package/dist/adapters/postgresAdapter.js.map +1 -1
  25. package/dist/adapters/sqlJsAdapter.d.ts +21 -3
  26. package/dist/adapters/sqlJsAdapter.d.ts.map +1 -1
  27. package/dist/adapters/sqlJsAdapter.js +29 -26
  28. package/dist/adapters/sqlJsAdapter.js.map +1 -1
  29. package/dist/core/contracts/index.d.ts +9 -0
  30. package/dist/core/contracts/index.d.ts.map +1 -1
  31. package/dist/core/contracts/index.js.map +1 -1
  32. package/dist/core/database.d.ts +43 -8
  33. package/dist/core/database.d.ts.map +1 -1
  34. package/dist/core/database.js +40 -5
  35. package/dist/core/database.js.map +1 -1
  36. package/dist/core/resolver.d.ts +20 -1
  37. package/dist/core/resolver.d.ts.map +1 -1
  38. package/dist/core/resolver.js +33 -11
  39. package/dist/core/resolver.js.map +1 -1
  40. package/dist/features/kv/idb.d.ts +79 -0
  41. package/dist/features/kv/idb.d.ts.map +1 -0
  42. package/dist/features/kv/idb.js +14 -0
  43. package/dist/features/kv/idb.js.map +1 -0
  44. package/dist/features/kv/index.d.ts +14 -0
  45. package/dist/features/kv/index.d.ts.map +1 -0
  46. package/dist/features/kv/index.js +14 -0
  47. package/dist/features/kv/index.js.map +1 -0
  48. package/dist/features/kv/indexedDbKeyValueStore.d.ts +77 -0
  49. package/dist/features/kv/indexedDbKeyValueStore.d.ts.map +1 -0
  50. package/dist/features/kv/indexedDbKeyValueStore.js +127 -0
  51. package/dist/features/kv/indexedDbKeyValueStore.js.map +1 -0
  52. package/dist/features/kv/keyValueStore.d.ts +48 -0
  53. package/dist/features/kv/keyValueStore.d.ts.map +1 -0
  54. package/dist/features/kv/keyValueStore.js +54 -0
  55. package/dist/features/kv/keyValueStore.js.map +1 -0
  56. package/dist/features/kv/sqlKeyValueStore.d.ts +34 -0
  57. package/dist/features/kv/sqlKeyValueStore.d.ts.map +1 -0
  58. package/dist/features/kv/sqlKeyValueStore.js +91 -0
  59. package/dist/features/kv/sqlKeyValueStore.js.map +1 -0
  60. package/dist/features/kv/valueCodec.d.ts +35 -0
  61. package/dist/features/kv/valueCodec.d.ts.map +1 -0
  62. package/dist/features/kv/valueCodec.js +462 -0
  63. package/dist/features/kv/valueCodec.js.map +1 -0
  64. package/dist/features/migrations/dataExport.js +9 -6
  65. package/dist/features/migrations/dataExport.js.map +1 -1
  66. package/dist/index.d.ts +3 -0
  67. package/dist/index.d.ts.map +1 -1
  68. package/dist/index.js +5 -0
  69. package/dist/index.js.map +1 -1
  70. package/dist/shared/errors.d.ts +23 -0
  71. package/dist/shared/errors.d.ts.map +1 -0
  72. package/dist/shared/errors.js +44 -0
  73. package/dist/shared/errors.js.map +1 -0
  74. package/dist/shared/logger.d.ts +26 -0
  75. package/dist/shared/logger.d.ts.map +1 -0
  76. package/dist/shared/logger.js +26 -0
  77. package/dist/shared/logger.js.map +1 -0
  78. package/dist/shared/parameterUtils.d.ts +7 -0
  79. package/dist/shared/parameterUtils.d.ts.map +1 -1
  80. package/dist/shared/parameterUtils.js +25 -0
  81. package/dist/shared/parameterUtils.js.map +1 -1
  82. package/dist/shared/postgresTarget.d.ts +4 -3
  83. package/dist/shared/postgresTarget.d.ts.map +1 -1
  84. package/dist/shared/postgresTarget.js +6 -4
  85. package/dist/shared/postgresTarget.js.map +1 -1
  86. package/dist/shared/segment.d.ts +43 -0
  87. package/dist/shared/segment.d.ts.map +1 -0
  88. package/dist/shared/segment.js +77 -0
  89. package/dist/shared/segment.js.map +1 -0
  90. package/dist/shared/sqlPlaceholders.d.ts +40 -0
  91. package/dist/shared/sqlPlaceholders.d.ts.map +1 -0
  92. package/dist/shared/sqlPlaceholders.js +276 -0
  93. package/dist/shared/sqlPlaceholders.js.map +1 -0
  94. package/package.json +10 -2
@@ -0,0 +1,462 @@
1
+ /**
2
+ * @fileoverview The text the SQL key-value store keeps each value as. A value comes back as the structured clone,
3
+ * which IndexedDB applies to every value it stores, gives it back: the SQL store and the IndexedDB store then answer
4
+ * alike, and a copy from one into the other can be checked value by value.
5
+ *
6
+ * What comes back, as the structured clone gives it (V8's serializer, which Chrome and Node.js run, is the model):
7
+ * strings (lone surrogates too), numbers (`-0`, `NaN` and the infinities too), booleans, `null`, `undefined`,
8
+ * bigints; plain objects and class instances as plain objects with their own enumerable string-keyed properties, in
9
+ * order; arrays with their holes and their own properties; `Date`, `RegExp` (source and flags), `Map`, `Set`,
10
+ * `ArrayBuffer`, the typed arrays and `DataView` (a view keeps its buffer, its offset and its length, and two views of
11
+ * one buffer share it); `Number`, `String`, `Boolean` and `BigInt` objects; errors, as `Error`, `EvalError`,
12
+ * `RangeError`, `ReferenceError`, `SyntaxError`, `TypeError` or `URIError` by their name, with their message, stack
13
+ * and cause. An object reached twice comes back as one object, and a cycle as a cycle.
14
+ *
15
+ * Refused with a `DataCloneError`, as the structured clone refuses them: functions, symbols, `WeakMap`, `WeakSet`,
16
+ * `WeakRef`, promises, iterators, generators, `SharedArrayBuffer`. Refused too, though IndexedDB keeps them: `Blob`,
17
+ * `File`, `ImageData`, `CryptoKey` and the other host objects, which text cannot hold.
18
+ *
19
+ * The text is JSON: it holds no NUL character, which PostgreSQL's text type refuses, and no lone surrogate, which
20
+ * cannot be encoded as UTF-8.
21
+ * @module sql-storage-adapter/kv/valueCodec
22
+ */
23
+ /** The layout's version, the text's first element. */
24
+ const FORMAT = 1;
25
+ /** The error constructors a decoded error can have, by the name the structured clone reads. */
26
+ const ERROR_CONSTRUCTORS = {
27
+ EvalError,
28
+ RangeError,
29
+ ReferenceError,
30
+ SyntaxError,
31
+ TypeError,
32
+ URIError,
33
+ };
34
+ /** The typed arrays a decoded view can be. */
35
+ const TYPED_ARRAY_NAMES = new Set([
36
+ 'Int8Array',
37
+ 'Uint8Array',
38
+ 'Uint8ClampedArray',
39
+ 'Int16Array',
40
+ 'Uint16Array',
41
+ 'Int32Array',
42
+ 'Uint32Array',
43
+ 'Float16Array',
44
+ 'Float32Array',
45
+ 'Float64Array',
46
+ 'BigInt64Array',
47
+ 'BigUint64Array',
48
+ ]);
49
+ /**
50
+ * Objects the structured clone refuses, and host objects text cannot hold, by the tag `Object.prototype.toString`
51
+ * gives them.
52
+ */
53
+ const REFUSED_TAG = /^\[object (?:Promise|WeakMap|WeakSet|WeakRef|FinalizationRegistry|SharedArrayBuffer|Symbol|Arguments|Generator|AsyncGenerator|[A-Za-z ]+ Iterator|Blob|File|FileList|ImageData|ImageBitmap|OffscreenCanvas|CryptoKey|MessagePort|ReadableStream|WritableStream|TransformStream|VideoFrame|AudioData|RTCCertificate|FileSystemHandle|FileSystemFileHandle|FileSystemDirectoryHandle|GPUCompilationMessage|global|Window|Intl\.[A-Za-z]+)\]$/;
54
+ /** The getter `name` of `owner` has, which reads an internal slot and throws for an object without it. */
55
+ const getter = (owner, name) => {
56
+ const found = Object.getOwnPropertyDescriptor(owner, name)?.get;
57
+ if (!found)
58
+ throw new Error(`valueCodec: ${String(name)} has no getter`);
59
+ return found;
60
+ };
61
+ const MAP_SIZE = getter(Map.prototype, 'size');
62
+ const SET_SIZE = getter(Set.prototype, 'size');
63
+ const ARRAY_BUFFER_BYTE_LENGTH = getter(ArrayBuffer.prototype, 'byteLength');
64
+ const DATA_VIEW_BYTE_LENGTH = getter(DataView.prototype, 'byteLength');
65
+ const REGEXP_SOURCE = getter(RegExp.prototype, 'source');
66
+ const REGEXP_FLAGS = getter(RegExp.prototype, 'flags');
67
+ /** `%TypedArray%.prototype[Symbol.toStringTag]`: a typed array's name, or undefined for any other object. */
68
+ const TYPED_ARRAY_NAME = getter(Object.getPrototypeOf(Uint8Array.prototype), Symbol.toStringTag);
69
+ /** Whether `call` runs: a built-in's method that throws for an object without the built-in's internal slot. */
70
+ const holds = (call) => {
71
+ try {
72
+ call();
73
+ return true;
74
+ }
75
+ catch {
76
+ return false;
77
+ }
78
+ };
79
+ /** The error the structured clone throws for what it cannot copy. */
80
+ const cloneError = (what) => {
81
+ const message = `${what} could not be cloned.`;
82
+ const DomException = globalThis
83
+ .DOMException;
84
+ if (typeof DomException === 'function') {
85
+ return new DomException(message, 'DataCloneError');
86
+ }
87
+ const error = new Error(message);
88
+ error.name = 'DataCloneError';
89
+ return error;
90
+ };
91
+ const BASE64 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
92
+ const BASE64_VALUES = new Map([...BASE64].map((char, index) => [char, index]));
93
+ const toBase64 = (bytes) => {
94
+ const parts = [];
95
+ let i = 0;
96
+ for (; i + 2 < bytes.length; i += 3) {
97
+ const n = (bytes[i] << 16) | (bytes[i + 1] << 8) | bytes[i + 2];
98
+ parts.push(BASE64[(n >> 18) & 63] + BASE64[(n >> 12) & 63] + BASE64[(n >> 6) & 63] + BASE64[n & 63]);
99
+ }
100
+ const rest = bytes.length - i;
101
+ if (rest === 1) {
102
+ const n = bytes[i] << 16;
103
+ parts.push(`${BASE64[(n >> 18) & 63]}${BASE64[(n >> 12) & 63]}==`);
104
+ }
105
+ else if (rest === 2) {
106
+ const n = (bytes[i] << 16) | (bytes[i + 1] << 8);
107
+ parts.push(`${BASE64[(n >> 18) & 63]}${BASE64[(n >> 12) & 63]}${BASE64[(n >> 6) & 63]}=`);
108
+ }
109
+ return parts.join('');
110
+ };
111
+ const fromBase64 = (text) => {
112
+ const digits = text.replace(/=+$/, '');
113
+ const bytes = new Uint8Array(Math.floor((digits.length * 3) / 4));
114
+ let bits = 0;
115
+ let pending = 0;
116
+ let at = 0;
117
+ for (const char of digits) {
118
+ const value = BASE64_VALUES.get(char);
119
+ if (value === undefined)
120
+ throw new Error('valueCodec: the stored bytes are not base64.');
121
+ pending = ((pending << 6) | value) & 0xffffff;
122
+ bits += 6;
123
+ if (bits >= 8) {
124
+ bits -= 8;
125
+ bytes[at] = (pending >> bits) & 0xff;
126
+ at += 1;
127
+ }
128
+ }
129
+ return bytes;
130
+ };
131
+ /** A number as a node: JSON holds every number but `-0`, `NaN` and the infinities. */
132
+ const numberNode = (value) => {
133
+ if (Number.isNaN(value))
134
+ return ['n', 'NaN'];
135
+ if (value === Infinity)
136
+ return ['n', 'Infinity'];
137
+ if (value === -Infinity)
138
+ return ['n', '-Infinity'];
139
+ if (Object.is(value, -0))
140
+ return ['n', '-0'];
141
+ return value;
142
+ };
143
+ /**
144
+ * Encodes `value` as text the SQL store keeps.
145
+ *
146
+ * @throws {Error} A `DataCloneError` for a value the structured clone refuses, or one text cannot hold.
147
+ */
148
+ export function encodeValue(value) {
149
+ /** Each object met so far, by the order it was met in, which the decoder repeats. */
150
+ const ids = new Map();
151
+ const encode = (input) => {
152
+ switch (typeof input) {
153
+ case 'string':
154
+ case 'boolean':
155
+ return input;
156
+ case 'number':
157
+ return numberNode(input);
158
+ case 'undefined':
159
+ return ['u'];
160
+ case 'bigint':
161
+ return ['b', input.toString()];
162
+ case 'symbol':
163
+ throw cloneError('A symbol');
164
+ case 'function':
165
+ throw cloneError('A function');
166
+ }
167
+ if (input === null)
168
+ return null;
169
+ const object = input;
170
+ const seen = ids.get(object);
171
+ if (seen !== undefined)
172
+ return ['r', seen];
173
+ ids.set(object, ids.size);
174
+ return encodeObject(object);
175
+ };
176
+ /** Own enumerable string-keyed properties, in order, as key and value nodes. */
177
+ const properties = (object) => {
178
+ const entries = [];
179
+ for (const key of Object.keys(object)) {
180
+ entries.push(key, encode(object[key]));
181
+ }
182
+ return entries;
183
+ };
184
+ const encodeObject = (object) => {
185
+ if (Array.isArray(object)) {
186
+ return ['a', object.length, properties(object)];
187
+ }
188
+ if (holds(() => Date.prototype.getTime.call(object))) {
189
+ return ['D', numberNode(Date.prototype.getTime.call(object))];
190
+ }
191
+ if (object !== RegExp.prototype && holds(() => REGEXP_SOURCE.call(object))) {
192
+ return ['R', REGEXP_SOURCE.call(object), REGEXP_FLAGS.call(object)];
193
+ }
194
+ if (holds(() => MAP_SIZE.call(object))) {
195
+ const entries = [];
196
+ Map.prototype.forEach.call(object, (entryValue, entryKey) => {
197
+ entries.push(encode(entryKey), encode(entryValue));
198
+ });
199
+ return ['M', entries];
200
+ }
201
+ if (holds(() => SET_SIZE.call(object))) {
202
+ const members = [];
203
+ Set.prototype.forEach.call(object, (member) => {
204
+ members.push(encode(member));
205
+ });
206
+ return ['S', members];
207
+ }
208
+ if (holds(() => ARRAY_BUFFER_BYTE_LENGTH.call(object))) {
209
+ if (object.detached === true)
210
+ throw cloneError('A detached ArrayBuffer');
211
+ return ['B', toBase64(new Uint8Array(object))];
212
+ }
213
+ if (ArrayBuffer.isView(object)) {
214
+ if (holds(() => DATA_VIEW_BYTE_LENGTH.call(object))) {
215
+ const view = object;
216
+ return ['V', encode(view.buffer), view.byteOffset, view.byteLength];
217
+ }
218
+ const name = TYPED_ARRAY_NAME.call(object);
219
+ if (typeof name === 'string' && TYPED_ARRAY_NAMES.has(name)) {
220
+ const view = object;
221
+ return ['T', name, encode(view.buffer), view.byteOffset, view.length];
222
+ }
223
+ throw cloneError('An ArrayBuffer view');
224
+ }
225
+ if (holds(() => Number.prototype.valueOf.call(object))) {
226
+ return ['N', numberNode(Number.prototype.valueOf.call(object))];
227
+ }
228
+ if (holds(() => String.prototype.valueOf.call(object))) {
229
+ return ['Z', String.prototype.valueOf.call(object)];
230
+ }
231
+ if (holds(() => Boolean.prototype.valueOf.call(object))) {
232
+ return ['Q', Boolean.prototype.valueOf.call(object)];
233
+ }
234
+ if (typeof BigInt === 'function' && holds(() => BigInt.prototype.valueOf.call(object))) {
235
+ return ['G', BigInt.prototype.valueOf.call(object).toString()];
236
+ }
237
+ if (holds(() => Symbol.prototype.valueOf.call(object))) {
238
+ throw cloneError('A Symbol object');
239
+ }
240
+ const tag = Object.prototype.toString.call(object);
241
+ if (isError(object, tag)) {
242
+ return encodeError(object);
243
+ }
244
+ if (REFUSED_TAG.test(tag)) {
245
+ throw cloneError(tag.slice(8, -1));
246
+ }
247
+ return ['o', properties(object)];
248
+ };
249
+ /**
250
+ * An error as the structured clone writes it: the prototype its `name` picks, its own `message`, its `stack` and
251
+ * its own `cause`. Its other properties are not kept.
252
+ */
253
+ const encodeError = (error) => {
254
+ const name = String(error.name);
255
+ const prototypeName = Object.prototype.hasOwnProperty.call(ERROR_CONSTRUCTORS, name) ? name : 'Error';
256
+ const messageDescriptor = Object.getOwnPropertyDescriptor(error, 'message');
257
+ const message = messageDescriptor && 'value' in messageDescriptor ? String(messageDescriptor.value) : null;
258
+ const stack = error.stack;
259
+ const node = ['E', prototypeName, message, typeof stack === 'string' ? stack : null];
260
+ const causeDescriptor = Object.getOwnPropertyDescriptor(error, 'cause');
261
+ if (causeDescriptor && 'value' in causeDescriptor) {
262
+ node.push(encode(causeDescriptor.value));
263
+ }
264
+ return node;
265
+ };
266
+ return JSON.stringify([FORMAT, encode(value)]);
267
+ }
268
+ /** Whether `object` is an error: one made by an error constructor, as the structured clone tells them. */
269
+ const isError = (object, tag) => {
270
+ const errorIs = Error.isError;
271
+ return typeof errorIs === 'function' ? errorIs(object) : tag === '[object Error]';
272
+ };
273
+ /** Defines an own property as the structured clone's copy has it: writable, enumerable and configurable. */
274
+ const defineOwn = (target, key, value) => {
275
+ Object.defineProperty(target, key, { value, writable: true, enumerable: true, configurable: true });
276
+ };
277
+ /**
278
+ * Decodes text `encodeValue` wrote.
279
+ *
280
+ * @throws {Error} When the text is not one `encodeValue` writes.
281
+ */
282
+ export function decodeValue(text) {
283
+ const parsed = JSON.parse(text);
284
+ if (!Array.isArray(parsed) || parsed.length !== 2 || parsed[0] !== FORMAT) {
285
+ throw new Error('valueCodec: the stored value is not one the key-value store wrote.');
286
+ }
287
+ /** Each object made so far, by the order it was met in when encoded. */
288
+ const objects = [];
289
+ const malformed = () => new Error('valueCodec: the stored value is malformed.');
290
+ /** Reserves the next object's place, so the objects inside it come after it, as they did when encoded. */
291
+ const reserve = () => {
292
+ objects.push(undefined);
293
+ return objects.length - 1;
294
+ };
295
+ const register = (object) => {
296
+ objects.push(object);
297
+ return object;
298
+ };
299
+ const decodeNumber = (node) => {
300
+ const decoded = decode(node);
301
+ if (typeof decoded !== 'number')
302
+ throw malformed();
303
+ return decoded;
304
+ };
305
+ const decodeProperties = (target, entries) => {
306
+ if (!Array.isArray(entries) || entries.length % 2 !== 0)
307
+ throw malformed();
308
+ for (let i = 0; i < entries.length; i += 2) {
309
+ const key = entries[i];
310
+ if (typeof key !== 'string')
311
+ throw malformed();
312
+ defineOwn(target, key, decode(entries[i + 1]));
313
+ }
314
+ };
315
+ const decode = (node) => {
316
+ if (node === null || typeof node === 'string' || typeof node === 'number' || typeof node === 'boolean') {
317
+ return node;
318
+ }
319
+ if (!Array.isArray(node) || typeof node[0] !== 'string')
320
+ throw malformed();
321
+ switch (node[0]) {
322
+ case 'u':
323
+ return undefined;
324
+ case 'n':
325
+ switch (node[1]) {
326
+ case 'NaN':
327
+ return NaN;
328
+ case 'Infinity':
329
+ return Infinity;
330
+ case '-Infinity':
331
+ return -Infinity;
332
+ case '-0':
333
+ return -0;
334
+ default:
335
+ throw malformed();
336
+ }
337
+ case 'b':
338
+ return BigInt(String(node[1]));
339
+ case 'r': {
340
+ const id = node[1];
341
+ if (typeof id !== 'number' || id < 0 || id >= objects.length)
342
+ throw malformed();
343
+ return objects[id];
344
+ }
345
+ case 'o': {
346
+ const object = register({});
347
+ decodeProperties(object, node[1]);
348
+ return object;
349
+ }
350
+ case 'a': {
351
+ if (typeof node[1] !== 'number')
352
+ throw malformed();
353
+ const array = register(new Array(node[1]));
354
+ decodeProperties(array, node[2]);
355
+ return array;
356
+ }
357
+ case 'D': {
358
+ const id = reserve();
359
+ const date = new Date(decodeNumber(node[1]));
360
+ objects[id] = date;
361
+ return date;
362
+ }
363
+ case 'R':
364
+ return register(new RegExp(String(node[1]), String(node[2])));
365
+ case 'M': {
366
+ const map = register(new Map());
367
+ const entries = node[1];
368
+ if (!Array.isArray(entries) || entries.length % 2 !== 0)
369
+ throw malformed();
370
+ for (let i = 0; i < entries.length; i += 2) {
371
+ const key = decode(entries[i]);
372
+ map.set(key, decode(entries[i + 1]));
373
+ }
374
+ return map;
375
+ }
376
+ case 'S': {
377
+ const set = register(new Set());
378
+ const members = node[1];
379
+ if (!Array.isArray(members))
380
+ throw malformed();
381
+ for (const member of members)
382
+ set.add(decode(member));
383
+ return set;
384
+ }
385
+ case 'B': {
386
+ const bytes = fromBase64(String(node[1]));
387
+ return register(bytes.buffer);
388
+ }
389
+ case 'V': {
390
+ const id = reserve();
391
+ const buffer = decode(node[1]);
392
+ if (!(buffer instanceof ArrayBuffer))
393
+ throw malformed();
394
+ const view = new DataView(buffer, Number(node[2]), Number(node[3]));
395
+ objects[id] = view;
396
+ return view;
397
+ }
398
+ case 'T': {
399
+ const name = String(node[1]);
400
+ const Constructor = globalThis[name];
401
+ if (!TYPED_ARRAY_NAMES.has(name) || typeof Constructor !== 'function')
402
+ throw malformed();
403
+ const id = reserve();
404
+ const buffer = decode(node[2]);
405
+ if (!(buffer instanceof ArrayBuffer))
406
+ throw malformed();
407
+ const view = new Constructor(buffer, Number(node[3]), Number(node[4]));
408
+ objects[id] = view;
409
+ return view;
410
+ }
411
+ case 'N': {
412
+ const id = reserve();
413
+ const boxed = new Number(decodeNumber(node[1]));
414
+ objects[id] = boxed;
415
+ return boxed;
416
+ }
417
+ case 'Z':
418
+ return register(new String(String(node[1])));
419
+ case 'Q':
420
+ return register(new Boolean(node[1] === true));
421
+ case 'G':
422
+ return register(Object(BigInt(String(node[1]))));
423
+ case 'E':
424
+ return decodeError(node);
425
+ default:
426
+ throw malformed();
427
+ }
428
+ };
429
+ /** An error as the structured clone makes it: its prototype, message, stack and cause, nothing else. */
430
+ const decodeError = (node) => {
431
+ const name = String(node[1]);
432
+ const Constructor = Object.prototype.hasOwnProperty.call(ERROR_CONSTRUCTORS, name)
433
+ ? ERROR_CONSTRUCTORS[name]
434
+ : Error;
435
+ const message = node[2];
436
+ const error = typeof message === 'string' ? new Constructor(message) : new Constructor();
437
+ register(error);
438
+ const stack = node[3];
439
+ try {
440
+ if (typeof stack === 'string') {
441
+ Object.defineProperty(error, 'stack', { value: stack, writable: true, enumerable: false, configurable: true });
442
+ }
443
+ else {
444
+ delete error.stack;
445
+ }
446
+ }
447
+ catch {
448
+ // An engine whose stack property cannot be redefined keeps the one it made.
449
+ }
450
+ if (node.length > 4) {
451
+ Object.defineProperty(error, 'cause', {
452
+ value: decode(node[4]),
453
+ writable: true,
454
+ enumerable: false,
455
+ configurable: true,
456
+ });
457
+ }
458
+ return error;
459
+ };
460
+ return decode(parsed[1]);
461
+ }
462
+ //# sourceMappingURL=valueCodec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"valueCodec.js","sourceRoot":"","sources":["../../../src/features/kv/valueCodec.ts"],"names":[],"mappings":"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"}
@@ -103,9 +103,10 @@ async function getTables(adapter) {
103
103
  return rows.map(r => r.name);
104
104
  }
105
105
  catch {
106
- // Try PostgreSQL
106
+ // Try PostgreSQL: the tables of the schema unqualified names are created
107
+ // in, which is the segment on a segmented adapter and public otherwise.
107
108
  try {
108
- const rows = await adapter.all(`SELECT tablename AS name FROM pg_tables WHERE schemaname = 'public'`);
109
+ const rows = await adapter.all(`SELECT tablename AS name FROM pg_tables WHERE schemaname = current_schema() ORDER BY tablename`);
109
110
  return rows.map(r => r.name);
110
111
  }
111
112
  catch {
@@ -131,11 +132,13 @@ async function getTableSchema(adapter, table) {
131
132
  };
132
133
  }
133
134
  catch {
134
- // Try PostgreSQL information_schema
135
+ // Try PostgreSQL information_schema: the columns of the table in the
136
+ // current schema alone, in their order, not of every table of that name.
135
137
  try {
136
- const columns = await adapter.all(`SELECT column_name, data_type, is_nullable, column_default
137
- FROM information_schema.columns
138
- WHERE table_name = $1`, [table]);
138
+ const columns = await adapter.all(`SELECT column_name, data_type, is_nullable, column_default
139
+ FROM information_schema.columns
140
+ WHERE table_schema = current_schema() AND table_name = $1
141
+ ORDER BY ordinal_position`, [table]);
139
142
  return {
140
143
  name: table,
141
144
  columns: columns.map(col => ({
@@ -1 +1 @@
1
- {"version":3,"file":"dataExport.js","sourceRoot":"","sources":["../../../src/features/migrations/dataExport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dataExport.js","sourceRoot":"","sources":["../../../src/features/migrations/dataExport.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -14,6 +14,7 @@ export * from './features/migrations/dataImport.js';
14
14
  export * from './features/migrations/migration.js';
15
15
  export * from './features/sync/syncManager.js';
16
16
  export * from './shared/parameterUtils.js';
17
+ export { segmentFilePath, segmentName, validateSegment } from './shared/segment.js';
17
18
  export { SqliteDialect } from './dialects/SqliteDialect.js';
18
19
  export { PostgresDialect } from './dialects/PostgresDialect.js';
19
20
  export { SqliteFts5 } from './fts/SqliteFts5.js';
@@ -23,4 +24,6 @@ export { BrowserBlobCodec } from './codecs/BrowserBlobCodec.js';
23
24
  export { SqliteFileExporter } from './exporters/SqliteFileExporter.js';
24
25
  export { PostgresExporter } from './exporters/PostgresExporter.js';
25
26
  export { createStorageFeatures } from './core/contracts/features.js';
27
+ export { isUniqueViolation } from './shared/errors.js';
28
+ export { setStorageLogger, getStorageLogger, type StorageLogger } from './shared/logger.js';
26
29
  //# sourceMappingURL=index.d.ts.map
@@ -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,6BAA6B,CAAC;AAM5C,cAAc,yBAAyB,CAAC;AAGxC,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,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"}
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,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,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"}
package/dist/index.js CHANGED
@@ -25,6 +25,9 @@ export * from './features/sync/syncManager.js';
25
25
  // Usage: import { createCrossPlatformSync } from '@framers/sql-storage-adapter/sync';
26
26
  // Shared utilities -----------------------------------------------------------
27
27
  export * from './shared/parameterUtils.js';
28
+ export { segmentFilePath, segmentName, validateSegment } from './shared/segment.js';
29
+ // Note: the key-value store is available via a separate entry point, which loads no adapter.
30
+ // Usage: import { createSqlKeyValueStore, openIndexedDbStore } from '@framers/sql-storage-adapter/kv';
28
31
  // Dialect & feature abstractions -----------------------------------------------
29
32
  export { SqliteDialect } from './dialects/SqliteDialect.js';
30
33
  export { PostgresDialect } from './dialects/PostgresDialect.js';
@@ -35,4 +38,6 @@ export { BrowserBlobCodec } from './codecs/BrowserBlobCodec.js';
35
38
  export { SqliteFileExporter } from './exporters/SqliteFileExporter.js';
36
39
  export { PostgresExporter } from './exporters/PostgresExporter.js';
37
40
  export { createStorageFeatures } from './core/contracts/features.js';
41
+ export { isUniqueViolation } from './shared/errors.js';
42
+ export { setStorageLogger, getStorageLogger } from './shared/logger.js';
38
43
  //# 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,6BAA6B,CAAC;AAE5C,uFAAuF;AACvF,sFAAsF;AAEtF,+EAA+E;AAC/E,cAAc,yBAAyB,CAAC;AAExC,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,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"}
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,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,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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Error checks that read the same failure from every adapter.
3
+ */
4
+ /**
5
+ * Whether `error` is a unique or primary-key violation, from any adapter:
6
+ * PostgreSQL's SQLSTATE `23505` (`unique_violation`, pg's `code`),
7
+ * better-sqlite3's `SQLITE_CONSTRAINT_UNIQUE` and
8
+ * `SQLITE_CONSTRAINT_PRIMARYKEY`, and the "UNIQUE constraint failed" message
9
+ * that sql.js, the IndexedDB adapter and the Capacitor plugin give. An error
10
+ * that wraps one as its `cause`, to any depth up to ten, counts too.
11
+ *
12
+ * @example
13
+ * ```typescript
14
+ * try {
15
+ * await db.run('INSERT INTO users (email) VALUES (?)', [email]);
16
+ * } catch (error) {
17
+ * if (isUniqueViolation(error)) return { taken: true };
18
+ * throw error;
19
+ * }
20
+ * ```
21
+ */
22
+ export declare const isUniqueViolation: (error: unknown) => boolean;
23
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/shared/errors.ts"],"names":[],"mappings":"AAAA;;GAEG;AAWH;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,iBAAiB,UAAW,OAAO,KAAG,OAYlD,CAAC"}