@trainstar/synchro-react-native 0.1.1 → 0.3.1
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 +103 -24
- package/SynchroReactNative.podspec +3 -2
- package/android/build.gradle +8 -3
- package/android/src/main/kotlin/com/trainstar/synchro/rn/SynchroModule.kt +1105 -238
- package/ios/SynchroModule.mm +178 -51
- package/ios/SynchroModule.swift +1382 -295
- package/lib/module/NativeSynchro.js +5 -0
- package/lib/module/NativeSynchro.js.map +1 -1
- package/lib/module/SynchroClient.js +637 -65
- package/lib/module/SynchroClient.js.map +1 -1
- package/lib/module/digest.js +82 -0
- package/lib/module/digest.js.map +1 -0
- package/lib/module/errors.js +165 -22
- package/lib/module/errors.js.map +1 -1
- package/lib/module/hooks/useQuery.js +37 -3
- package/lib/module/hooks/useQuery.js.map +1 -1
- package/lib/module/hooks/useSyncStatus.js +51 -6
- package/lib/module/hooks/useSyncStatus.js.map +1 -1
- package/lib/module/index.js +2 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/inspection.js +121 -0
- package/lib/module/inspection.js.map +1 -0
- package/lib/module/sqliteValues.js +87 -0
- package/lib/module/sqliteValues.js.map +1 -0
- package/lib/module/types.js +10 -0
- package/lib/module/types.js.map +1 -1
- package/lib/typescript/example/e2e/corpus-harness.d.ts +34 -0
- package/lib/typescript/example/e2e/corpus-harness.d.ts.map +1 -0
- package/lib/typescript/example/src/conformance/runner.d.ts +125 -0
- package/lib/typescript/example/src/conformance/runner.d.ts.map +1 -0
- package/lib/typescript/example/src/conformance/types.d.ts +71 -0
- package/lib/typescript/example/src/conformance/types.d.ts.map +1 -0
- package/lib/typescript/src/NativeSynchro.d.ts +59 -17
- package/lib/typescript/src/NativeSynchro.d.ts.map +1 -1
- package/lib/typescript/src/SynchroClient.d.ts +27 -10
- package/lib/typescript/src/SynchroClient.d.ts.map +1 -1
- package/lib/typescript/src/digest.d.ts +3 -0
- package/lib/typescript/src/digest.d.ts.map +1 -0
- package/lib/typescript/src/errors.d.ts +37 -9
- package/lib/typescript/src/errors.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useQuery.d.ts +2 -2
- package/lib/typescript/src/hooks/useQuery.d.ts.map +1 -1
- package/lib/typescript/src/hooks/useSyncStatus.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +4 -3
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/inspection.d.ts +43 -0
- package/lib/typescript/src/inspection.d.ts.map +1 -0
- package/lib/typescript/src/sqliteValues.d.ts +8 -0
- package/lib/typescript/src/sqliteValues.d.ts.map +1 -0
- package/lib/typescript/src/types.d.ts +203 -11
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/package.json +20 -8
- package/src/NativeSynchro.ts +93 -26
- package/src/SynchroClient.ts +899 -120
- package/src/digest.ts +93 -0
- package/src/errors.ts +273 -33
- package/src/hooks/useQuery.ts +59 -16
- package/src/hooks/useSyncStatus.ts +40 -7
- package/src/index.ts +44 -3
- package/src/inspection.ts +226 -0
- package/src/sqliteValues.ts +105 -0
- package/src/types.ts +317 -16
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","NativeSynchro","mapNativeError","observerCounter","nextObserverID","Date","now","SynchroClient","native","authSubscription","constructor","config","onAuthRequest","event","authProvider","then","token","resolveAuthRequest","requestID","catch","err","rejectAuthRequest","Error","message","String","initialize","dbPath","serverURL","clientID","platform","OS","appVersion","syncInterval","pushDebounce","maxRetryAttempts","pullPageSize","pushBatchSize","snapshotPageSize","error","query","sql","params","json","JSON","stringify","parse","queryOne","execute","executeBatch","statements","payload","map","s","writeTransaction","callback","txID","beginWriteTransaction","tx","txQuery","txQueryOne","txExecute","result","commitTransaction","rollbackTransaction","readTransaction","beginReadTransaction","createTable","name","columns","options","alterTable","addColumns","createIndex","table","unique","onChange","tables","observerID","subscription","addChangeObserver","remove","removeObserver","watch","onQueryResult","rowsJson","addQueryObserver","checkpoint","mode","close","getPath","pendingChangeCount","start","stop","syncNow","onStatusChange","status","retryAt","onConflict","recordID","clientData","clientDataJson","serverData","serverDataJson","onSnapshotRequired","handler","approved","resolveSnapshotRequest"],"sourceRoot":"../../src","sources":["SynchroClient.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["Platform","NativeSynchro","InvalidResponseError","SynchroError","mapNativeError","parseSyncFailure","assertValidSQLiteBindParams","SYNC_OPERATION_KINDS","SYNC_STATUS_TYPES","observerCounter","activeNativeOwner","inspectionOwners","WeakMap","inspectionCapacities","inspectionRequireNewDatabases","nextObserverID","Date","now","nullableRow","row","SYNC_EVENT_TYPES","SCHEMA_ACTIONS","MUTATION_STATUSES","MUTATION_REJECTION_CODES","MUTATION_OPERATIONS","LOCAL_MUTATION_STATUSES","TRANSPORT_OPERATION_CLASSES","LEGAL_SYNC_STATUS_TRANSITIONS","uninitialized","local_ready","connecting","schema_applying","ready","pushing","pulling","rebuilding","backoff","error","stopped","isRecord","value","Array","isArray","requiredString","name","nullableString","requiredSafeInteger","Number","isSafeInteger","requiredNonnegativeSafeInteger","integer","nullableSafeInteger","parseDate","stringValue","date","isNaN","getTime","parseStatus","status","includes","retryAt","operationValue","operation","failure","parseSchemaRef","version","hash","parseMutationStatus","parseRejectionCode","parseSchemaAction","parseSyncEvent","type","from","to","attempt","source","target","action","mutationID","tableID","mutationStatus","rejectionCode","scopeID","rebuildID","parseNativeDTO","json","JSON","parse","parseNativeArray","parsePendingMutationInspection","index","authoredFields","map","field","fieldIndex","Object","prototype","hasOwnProperty","call","fieldID","logicalType","localOrder","tableName","recordID","primaryKeyFieldID","primaryKeyLogicalType","authoredSchema","baseVersion","clientVersion","sourceKind","dependsOnMutationID","normalizedMutationID","sealedBatchID","sealedOrdinal","parseRejectedMutationInspection","code","message","serverRowJSON","serverVersion","mutationJSON","rejectionJSON","createdAt","updatedAt","parseScopeStateInspection","scope_id","cursor","checksum","localChecksum","local_checksum","generation","parseScopeRowInspection","table_name","record_id","parseRebuildAttemptInspection","rebuild_id","clientGeneration","client_generation","schemaVersion","schema_version","schemaHash","schema_hash","pageLimit","page_limit","parseClientStateInspection","schema","scope_states","scope_rows","rebuild_attempts","scopeStates","scopeRows","rebuildAttempts","applicationRowCount","application_row_count","mutationLedgerCount","mutation_ledger_count","mutationOutcomeCount","mutation_outcome_count","sealedBatchCount","sealed_batch_count","rejectedMutationCount","rejected_mutation_count","scopeStateCount","scope_state_count","scopeRowCount","scope_row_count","provenanceCount","provenance_count","rowMetadataCount","row_metadata_count","rebuildAttemptCount","rebuild_attempt_count","rebuildReceiptCount","rebuild_receipt_count","provenanceMaintenanceWorkCursor","requiredNonnegativeInt64String","provenance_maintenance_work_cursor","maximum","test","length","optionalTransportFacts","undefined","optionalTransportRequestFacts","facts","mutationCount","mutation_count","parseTransportObservation","operation_class","cursorFingerprints","cursor_fingerprints","every","item","cursorFingerprintsComplete","cursor_fingerprints_complete","sequence","operationClass","statusCode","status_code","durationNanoseconds","duration_nanoseconds","request_facts","requestFacts","rebuild_response_facts","rebuildResponseFacts","pull_response_facts","pullResponseFacts","parseTransportObservationSnapshot","observations","overflowed","sequenceCheckpoint","sequence_checkpoint","checkedParams","params","SynchroClient","nativeOwner","authSubscription","constructor","config","set","native","installAuthSubscription","remove","owner","onAuthRequest","event","authProvider","then","token","resolveAuthRequest","requestID","catch","err","rejectAuthRequest","Error","String","releaseNativeOwnership","initialize","dbPath","serverURL","clientID","platform","OS","appVersion","syncInterval","pushDebounce","maxRetryAttempts","pullPageSize","pushBatchSize","seedDatabasePath","transportObservationCapacity","get","requireNewDatabase","query","sql","queryOne","execute","executeAuthoredWrite","columnNames","values","executeBatch","statements","payload","s","writeTransaction","callback","txID","beginWriteTransaction","tx","txQuery","txQueryOne","txExecute","result","commitTransaction","rollbackTransaction","readTransaction","beginReadTransaction","createTable","columns","options","stringify","alterTable","addColumns","createIndex","table","unique","onChange","tables","observerID","subscription","addChangeObserver","removeObserver","watch","onQueryResult","rows","addQueryObserver","close","getPath","pendingChangeCount","getSyncStatus","parsed","inspectPendingMutations","inspectRetainedMutations","inspectRejectedMutations","clearRejectedMutations","start","stop","enterBackground","enterForeground","retryAfterError","resetSchemaAndStart","syncNow","onStatusChange","onSyncEvent","onConflict","clientData","clientDataJson","serverData","serverDataJson","configureInspection","client","nativeForInspection"],"sourceRoot":"../../src","sources":["SynchroClient.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/** Return the SHA-256 digest of a string as lowercase hexadecimal. */
|
|
4
|
+
export function sha256Hex(value) {
|
|
5
|
+
const bytes = utf8(value);
|
|
6
|
+
const bitLength = bytes.length * 8;
|
|
7
|
+
bytes.push(0x80);
|
|
8
|
+
while ((bytes.length + 8) % 64 !== 0) {
|
|
9
|
+
bytes.push(0);
|
|
10
|
+
}
|
|
11
|
+
for (let shift = 56; shift >= 0; shift -= 8) {
|
|
12
|
+
bytes.push(Math.floor(bitLength / 2 ** shift) & 0xff);
|
|
13
|
+
}
|
|
14
|
+
const hash = [0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19];
|
|
15
|
+
const constants = [0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5, 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967, 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2];
|
|
16
|
+
for (let offset = 0; offset < bytes.length; offset += 64) {
|
|
17
|
+
const words = new Array(64).fill(0);
|
|
18
|
+
for (let index = 0; index < 16; index += 1) {
|
|
19
|
+
words[index] = (bytes[offset + index * 4] << 24 | bytes[offset + index * 4 + 1] << 16 | bytes[offset + index * 4 + 2] << 8 | bytes[offset + index * 4 + 3]) >>> 0;
|
|
20
|
+
}
|
|
21
|
+
for (let index = 16; index < 64; index += 1) {
|
|
22
|
+
const a = words[index - 15];
|
|
23
|
+
const b = words[index - 2];
|
|
24
|
+
const s0 = rotateRight(a, 7) ^ rotateRight(a, 18) ^ a >>> 3;
|
|
25
|
+
const s1 = rotateRight(b, 17) ^ rotateRight(b, 19) ^ b >>> 10;
|
|
26
|
+
words[index] = words[index - 16] + s0 + words[index - 7] + s1 >>> 0;
|
|
27
|
+
}
|
|
28
|
+
let [a, b, c, d, e, f, g, h] = hash;
|
|
29
|
+
for (let index = 0; index < 64; index += 1) {
|
|
30
|
+
const s1 = rotateRight(e, 6) ^ rotateRight(e, 11) ^ rotateRight(e, 25);
|
|
31
|
+
const choice = e & f ^ ~e & g;
|
|
32
|
+
const temp1 = h + s1 + choice + constants[index] + words[index] >>> 0;
|
|
33
|
+
const s0 = rotateRight(a, 2) ^ rotateRight(a, 13) ^ rotateRight(a, 22);
|
|
34
|
+
const majority = a & b ^ a & c ^ b & c;
|
|
35
|
+
const temp2 = s0 + majority >>> 0;
|
|
36
|
+
h = g;
|
|
37
|
+
g = f;
|
|
38
|
+
f = e;
|
|
39
|
+
e = d + temp1 >>> 0;
|
|
40
|
+
d = c;
|
|
41
|
+
c = b;
|
|
42
|
+
b = a;
|
|
43
|
+
a = temp1 + temp2 >>> 0;
|
|
44
|
+
}
|
|
45
|
+
hash[0] = hash[0] + a >>> 0;
|
|
46
|
+
hash[1] = hash[1] + b >>> 0;
|
|
47
|
+
hash[2] = hash[2] + c >>> 0;
|
|
48
|
+
hash[3] = hash[3] + d >>> 0;
|
|
49
|
+
hash[4] = hash[4] + e >>> 0;
|
|
50
|
+
hash[5] = hash[5] + f >>> 0;
|
|
51
|
+
hash[6] = hash[6] + g >>> 0;
|
|
52
|
+
hash[7] = hash[7] + h >>> 0;
|
|
53
|
+
}
|
|
54
|
+
return hash.map(word => word.toString(16).padStart(8, '0')).join('');
|
|
55
|
+
}
|
|
56
|
+
function rotateRight(value, shift) {
|
|
57
|
+
return value >>> shift | value << 32 - shift;
|
|
58
|
+
}
|
|
59
|
+
function utf8(value) {
|
|
60
|
+
const bytes = [];
|
|
61
|
+
for (let index = 0; index < value.length; index += 1) {
|
|
62
|
+
let code = value.charCodeAt(index);
|
|
63
|
+
if (code >= 0xd800 && code <= 0xdbff && index + 1 < value.length) {
|
|
64
|
+
const low = value.charCodeAt(index + 1);
|
|
65
|
+
if (low >= 0xdc00 && low <= 0xdfff) {
|
|
66
|
+
code = 0x10000 + (code - 0xd800 << 10) + low - 0xdc00;
|
|
67
|
+
index += 1;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
if (code < 0x80) {
|
|
71
|
+
bytes.push(code);
|
|
72
|
+
} else if (code < 0x800) {
|
|
73
|
+
bytes.push(0xc0 | code >> 6, 0x80 | code & 0x3f);
|
|
74
|
+
} else if (code < 0x10000) {
|
|
75
|
+
bytes.push(0xe0 | code >> 12, 0x80 | code >> 6 & 0x3f, 0x80 | code & 0x3f);
|
|
76
|
+
} else {
|
|
77
|
+
bytes.push(0xf0 | code >> 18, 0x80 | code >> 12 & 0x3f, 0x80 | code >> 6 & 0x3f, 0x80 | code & 0x3f);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
return bytes;
|
|
81
|
+
}
|
|
82
|
+
//# sourceMappingURL=digest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["sha256Hex","value","bytes","utf8","bitLength","length","push","shift","Math","floor","hash","constants","offset","words","Array","fill","index","a","b","s0","rotateRight","s1","c","d","e","f","g","h","choice","temp1","majority","temp2","map","word","toString","padStart","join","code","charCodeAt","low"],"sourceRoot":"../../src","sources":["digest.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/errors.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
import { PROTOCOL_ERROR_CODES, SYNC_FAILURE_CODES, SYNC_OPERATION_KINDS, SYNC_RECOVERY_ACTIONS, SYNC_STATUS_TYPES } from "./types.js";
|
|
4
|
+
export const NATIVE_ERROR_CODES = ['NOT_CONNECTED', 'SCHEMA_NOT_LOADED', 'TABLE_NOT_SYNCED', 'UPGRADE_REQUIRED', 'SCHEMA_MISMATCH', 'PUSH_REJECTED', 'NETWORK_ERROR', 'SERVER_ERROR', 'PROTOCOL_ERROR', 'DATABASE_ERROR', 'INVALID_RESPONSE', 'INVALID_SEED', 'SYNC_BLOCKED', 'UNSUPPORTED_SCHEMA', 'INVALID_STATE_TRANSITION', 'ALREADY_STARTED', 'NOT_STARTED', 'TRANSACTION_TIMEOUT', 'INVALID_CONFIG', 'CLIENT_ALREADY_ACTIVE', 'UNKNOWN'];
|
|
3
5
|
export class SynchroError extends Error {
|
|
4
6
|
constructor(code, message) {
|
|
5
7
|
super(message);
|
|
@@ -42,15 +44,9 @@ export class SchemaMismatchError extends SynchroError {
|
|
|
42
44
|
this.serverHash = serverHash;
|
|
43
45
|
}
|
|
44
46
|
}
|
|
45
|
-
export class SnapshotRequiredError extends SynchroError {
|
|
46
|
-
constructor() {
|
|
47
|
-
super('SNAPSHOT_REQUIRED', 'Full snapshot required');
|
|
48
|
-
this.name = 'SnapshotRequiredError';
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
47
|
export class PushRejectedError extends SynchroError {
|
|
52
48
|
constructor(results) {
|
|
53
|
-
super('PUSH_REJECTED', `Push rejected: ${results.length}
|
|
49
|
+
super('PUSH_REJECTED', `Push rejected: ${results.length} mutation(s)`);
|
|
54
50
|
this.name = 'PushRejectedError';
|
|
55
51
|
this.results = results;
|
|
56
52
|
}
|
|
@@ -80,6 +76,43 @@ export class InvalidResponseError extends SynchroError {
|
|
|
80
76
|
this.name = 'InvalidResponseError';
|
|
81
77
|
}
|
|
82
78
|
}
|
|
79
|
+
export const SCHEMA_UNSUPPORTED_REASONS = ['unknown_schema_lineage', 'incompatible_schema_transition'];
|
|
80
|
+
export class ProtocolError extends SynchroError {
|
|
81
|
+
constructor(status, protocolCode, message) {
|
|
82
|
+
super('PROTOCOL_ERROR', `Protocol error ${status} ${protocolCode}: ${message}`);
|
|
83
|
+
this.name = 'ProtocolError';
|
|
84
|
+
this.status = status;
|
|
85
|
+
this.protocolCode = protocolCode;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
export class SyncBlockedError extends SynchroError {
|
|
89
|
+
constructor(failure) {
|
|
90
|
+
super('SYNC_BLOCKED', failure.message);
|
|
91
|
+
this.name = 'SyncBlockedError';
|
|
92
|
+
this.failure = failure;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
export class UnsupportedSchemaError extends SynchroError {
|
|
96
|
+
constructor(reason) {
|
|
97
|
+
super('UNSUPPORTED_SCHEMA', `Schema recovery is required: ${reason}`);
|
|
98
|
+
this.name = 'UnsupportedSchemaError';
|
|
99
|
+
this.reason = reason;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
export class InvalidStateTransitionError extends SynchroError {
|
|
103
|
+
constructor(from, to) {
|
|
104
|
+
super('INVALID_STATE_TRANSITION', `Invalid sync state transition from ${from} to ${to}`);
|
|
105
|
+
this.name = 'InvalidStateTransitionError';
|
|
106
|
+
this.from = from;
|
|
107
|
+
this.to = to;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
export class InvalidSeedError extends SynchroError {
|
|
111
|
+
constructor() {
|
|
112
|
+
super('INVALID_SEED', 'Seed database failed validation');
|
|
113
|
+
this.name = 'InvalidSeedError';
|
|
114
|
+
}
|
|
115
|
+
}
|
|
83
116
|
export class AlreadyStartedError extends SynchroError {
|
|
84
117
|
constructor() {
|
|
85
118
|
super('ALREADY_STARTED', 'Sync has already been started');
|
|
@@ -98,6 +131,88 @@ export class TransactionTimeoutError extends SynchroError {
|
|
|
98
131
|
this.name = 'TransactionTimeoutError';
|
|
99
132
|
}
|
|
100
133
|
}
|
|
134
|
+
function isRecord(value) {
|
|
135
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
136
|
+
}
|
|
137
|
+
function parseJSONValue(value, name) {
|
|
138
|
+
if (typeof value !== 'string') {
|
|
139
|
+
return value;
|
|
140
|
+
}
|
|
141
|
+
try {
|
|
142
|
+
return JSON.parse(value);
|
|
143
|
+
} catch {
|
|
144
|
+
throw new InvalidResponseError(`Native bridge returned invalid ${name}`);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
function requiredString(value, name) {
|
|
148
|
+
if (typeof value !== 'string' || value.length === 0) {
|
|
149
|
+
throw new InvalidResponseError(`Native bridge returned an invalid ${name}`);
|
|
150
|
+
}
|
|
151
|
+
return value;
|
|
152
|
+
}
|
|
153
|
+
function requiredBoolean(value, name) {
|
|
154
|
+
if (typeof value === 'boolean') {
|
|
155
|
+
return value;
|
|
156
|
+
}
|
|
157
|
+
if (value === 'true') {
|
|
158
|
+
return true;
|
|
159
|
+
}
|
|
160
|
+
if (value === 'false') {
|
|
161
|
+
return false;
|
|
162
|
+
}
|
|
163
|
+
throw new InvalidResponseError(`Native bridge returned an invalid ${name}`);
|
|
164
|
+
}
|
|
165
|
+
function optionalString(value) {
|
|
166
|
+
return typeof value === 'string' ? value : '';
|
|
167
|
+
}
|
|
168
|
+
function requiredEnum(value, values, name) {
|
|
169
|
+
if (typeof value === 'string' && values.includes(value)) {
|
|
170
|
+
return value;
|
|
171
|
+
}
|
|
172
|
+
throw new InvalidResponseError(`Native bridge returned an invalid ${name}`);
|
|
173
|
+
}
|
|
174
|
+
export function parseSyncFailure(value) {
|
|
175
|
+
const parsed = parseJSONValue(value, 'sync failure');
|
|
176
|
+
if (!isRecord(parsed)) {
|
|
177
|
+
throw new InvalidResponseError('Native bridge returned an invalid sync failure');
|
|
178
|
+
}
|
|
179
|
+
const message = requiredString(parsed.message, 'sync failure message');
|
|
180
|
+
if (message.length > 256) {
|
|
181
|
+
throw new InvalidResponseError('Native bridge returned an invalid sync failure message');
|
|
182
|
+
}
|
|
183
|
+
const metadataValue = parsed.metadata == null ? {} : parseJSONValue(parsed.metadata, 'sync failure metadata');
|
|
184
|
+
if (!isRecord(metadataValue) || Object.keys(metadataValue).length > 8) {
|
|
185
|
+
throw new InvalidResponseError('Native bridge returned invalid sync failure metadata');
|
|
186
|
+
}
|
|
187
|
+
const metadata = {};
|
|
188
|
+
Object.entries(metadataValue).forEach(([key, item]) => {
|
|
189
|
+
if (key.length === 0 || key.length > 64 || typeof item !== 'string' || item.length > 128) {
|
|
190
|
+
throw new InvalidResponseError('Native bridge returned invalid sync failure metadata');
|
|
191
|
+
}
|
|
192
|
+
metadata[key] = item;
|
|
193
|
+
});
|
|
194
|
+
return {
|
|
195
|
+
operation: requiredEnum(parsed.operation, SYNC_OPERATION_KINDS, 'sync failure operation'),
|
|
196
|
+
code: requiredEnum(parsed.code, SYNC_FAILURE_CODES, 'sync failure code'),
|
|
197
|
+
retryable: requiredBoolean(parsed.retryable, 'sync failure retry flag'),
|
|
198
|
+
message,
|
|
199
|
+
recoveryAction: requiredEnum(parsed.recoveryAction, SYNC_RECOVERY_ACTIONS, 'sync failure recovery action'),
|
|
200
|
+
metadata
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
function syncFailureFromUserInfo(userInfo, fallbackMessage) {
|
|
204
|
+
if (userInfo.failure != null) {
|
|
205
|
+
return parseSyncFailure(userInfo.failure);
|
|
206
|
+
}
|
|
207
|
+
return parseSyncFailure({
|
|
208
|
+
operation: userInfo.failureOperation,
|
|
209
|
+
code: userInfo.failureCode,
|
|
210
|
+
retryable: userInfo.failureRetryable,
|
|
211
|
+
message: userInfo.failureMessage ?? fallbackMessage,
|
|
212
|
+
recoveryAction: userInfo.failureRecoveryAction,
|
|
213
|
+
metadata: userInfo.failureMetadata ?? {}
|
|
214
|
+
});
|
|
215
|
+
}
|
|
101
216
|
export function mapNativeError(error) {
|
|
102
217
|
if (error instanceof SynchroError) {
|
|
103
218
|
return error;
|
|
@@ -112,39 +227,67 @@ export function mapNativeError(error) {
|
|
|
112
227
|
case 'SCHEMA_NOT_LOADED':
|
|
113
228
|
return new SchemaNotLoadedError();
|
|
114
229
|
case 'TABLE_NOT_SYNCED':
|
|
115
|
-
return new TableNotSyncedError(userInfo.table
|
|
230
|
+
return new TableNotSyncedError(optionalString(userInfo.table));
|
|
116
231
|
case 'UPGRADE_REQUIRED':
|
|
117
|
-
return new UpgradeRequiredError(userInfo.currentVersion
|
|
232
|
+
return new UpgradeRequiredError(optionalString(userInfo.currentVersion), optionalString(userInfo.minimumVersion));
|
|
118
233
|
case 'SCHEMA_MISMATCH':
|
|
119
|
-
return new SchemaMismatchError(parseInt(userInfo.serverVersion
|
|
120
|
-
case 'SNAPSHOT_REQUIRED':
|
|
121
|
-
return new SnapshotRequiredError();
|
|
234
|
+
return new SchemaMismatchError(parseInt(optionalString(userInfo.serverVersion), 10), optionalString(userInfo.serverHash));
|
|
122
235
|
case 'PUSH_REJECTED':
|
|
123
236
|
{
|
|
124
|
-
let results = [];
|
|
125
237
|
try {
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
238
|
+
const parsed = parseJSONValue(userInfo.results ?? [], 'push rejection results');
|
|
239
|
+
if (!Array.isArray(parsed)) {
|
|
240
|
+
return new InvalidResponseError('Native bridge returned invalid push rejection results');
|
|
241
|
+
}
|
|
242
|
+
return new PushRejectedError(parsed);
|
|
243
|
+
} catch (parseError) {
|
|
244
|
+
return parseError instanceof SynchroError ? parseError : new InvalidResponseError('Native bridge returned invalid push rejection results');
|
|
129
245
|
}
|
|
130
|
-
return new PushRejectedError(results);
|
|
131
246
|
}
|
|
132
247
|
case 'NETWORK_ERROR':
|
|
133
|
-
return new NetworkError(userInfo.message
|
|
248
|
+
return new NetworkError(typeof userInfo.message === 'string' ? userInfo.message : message);
|
|
134
249
|
case 'SERVER_ERROR':
|
|
135
|
-
return new ServerError(parseInt(userInfo.status ?? '0', 10), userInfo.message
|
|
250
|
+
return new ServerError(Number.parseInt(String(userInfo.status ?? '0'), 10), typeof userInfo.message === 'string' ? userInfo.message : message);
|
|
251
|
+
case 'PROTOCOL_ERROR':
|
|
252
|
+
{
|
|
253
|
+
const status = Number.parseInt(String(userInfo.status ?? '0'), 10);
|
|
254
|
+
const protocolCode = requiredEnum(userInfo.protocolCode, PROTOCOL_ERROR_CODES, 'protocol error code');
|
|
255
|
+
return new ProtocolError(status, protocolCode, typeof userInfo.message === 'string' ? userInfo.message : message);
|
|
256
|
+
}
|
|
136
257
|
case 'DATABASE_ERROR':
|
|
137
|
-
return new DatabaseError(userInfo.message
|
|
258
|
+
return new DatabaseError(typeof userInfo.message === 'string' ? userInfo.message : message);
|
|
138
259
|
case 'INVALID_RESPONSE':
|
|
139
|
-
return new InvalidResponseError(userInfo.message
|
|
260
|
+
return new InvalidResponseError(typeof userInfo.message === 'string' ? userInfo.message : message);
|
|
261
|
+
case 'INVALID_SEED':
|
|
262
|
+
return new InvalidSeedError();
|
|
263
|
+
case 'SYNC_BLOCKED':
|
|
264
|
+
try {
|
|
265
|
+
return new SyncBlockedError(syncFailureFromUserInfo(userInfo, message));
|
|
266
|
+
} catch (parseError) {
|
|
267
|
+
return parseError instanceof SynchroError ? parseError : new InvalidResponseError('Native bridge returned invalid blocking failure details');
|
|
268
|
+
}
|
|
269
|
+
case 'UNSUPPORTED_SCHEMA':
|
|
270
|
+
try {
|
|
271
|
+
return new UnsupportedSchemaError(requiredEnum(userInfo.reason, SCHEMA_UNSUPPORTED_REASONS, 'unsupported schema reason'));
|
|
272
|
+
} catch (parseError) {
|
|
273
|
+
return parseError instanceof SynchroError ? parseError : new InvalidResponseError('Native bridge returned invalid unsupported schema details');
|
|
274
|
+
}
|
|
275
|
+
case 'INVALID_STATE_TRANSITION':
|
|
276
|
+
try {
|
|
277
|
+
return new InvalidStateTransitionError(requiredEnum(userInfo.from, SYNC_STATUS_TYPES, 'state transition source'), requiredEnum(userInfo.to, SYNC_STATUS_TYPES, 'state transition target'));
|
|
278
|
+
} catch (parseError) {
|
|
279
|
+
return parseError instanceof SynchroError ? parseError : new InvalidResponseError('Native bridge returned invalid state transition details');
|
|
280
|
+
}
|
|
140
281
|
case 'ALREADY_STARTED':
|
|
141
282
|
return new AlreadyStartedError();
|
|
142
283
|
case 'NOT_STARTED':
|
|
143
284
|
return new NotStartedError();
|
|
144
285
|
case 'TRANSACTION_TIMEOUT':
|
|
145
286
|
return new TransactionTimeoutError();
|
|
287
|
+
case 'INVALID_CONFIG':
|
|
288
|
+
return new SynchroError('INVALID_CONFIG', message);
|
|
146
289
|
default:
|
|
147
|
-
return new SynchroError(
|
|
290
|
+
return new SynchroError('UNKNOWN', message);
|
|
148
291
|
}
|
|
149
292
|
}
|
|
150
293
|
//# sourceMappingURL=errors.js.map
|
package/lib/module/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["SynchroError","Error","constructor","code","message","name","NotConnectedError","SchemaNotLoadedError","TableNotSyncedError","table","UpgradeRequiredError","currentVersion","minimumVersion","SchemaMismatchError","serverVersion","serverHash","SnapshotRequiredError","PushRejectedError","results","length","NetworkError","ServerError","status","DatabaseError","InvalidResponseError","AlreadyStartedError","NotStartedError","TransactionTimeoutError","mapNativeError","error","nativeError","userInfo","parseInt","JSON","parse"],"sourceRoot":"../../src","sources":["errors.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["PROTOCOL_ERROR_CODES","SYNC_FAILURE_CODES","SYNC_OPERATION_KINDS","SYNC_RECOVERY_ACTIONS","SYNC_STATUS_TYPES","NATIVE_ERROR_CODES","SynchroError","Error","constructor","code","message","name","NotConnectedError","SchemaNotLoadedError","TableNotSyncedError","table","UpgradeRequiredError","currentVersion","minimumVersion","SchemaMismatchError","serverVersion","serverHash","PushRejectedError","results","length","NetworkError","ServerError","status","DatabaseError","InvalidResponseError","SCHEMA_UNSUPPORTED_REASONS","ProtocolError","protocolCode","SyncBlockedError","failure","UnsupportedSchemaError","reason","InvalidStateTransitionError","from","to","InvalidSeedError","AlreadyStartedError","NotStartedError","TransactionTimeoutError","isRecord","value","Array","isArray","parseJSONValue","JSON","parse","requiredString","requiredBoolean","optionalString","requiredEnum","values","includes","parseSyncFailure","parsed","metadataValue","metadata","Object","keys","entries","forEach","key","item","operation","retryable","recoveryAction","syncFailureFromUserInfo","userInfo","fallbackMessage","failureOperation","failureCode","failureRetryable","failureMessage","failureRecoveryAction","failureMetadata","mapNativeError","error","nativeError","parseInt","parseError","Number","String"],"sourceRoot":"../../src","sources":["errors.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,7 +6,22 @@ function arraysEqual(a, b) {
|
|
|
6
6
|
if (!a || !b) return !a && !b;
|
|
7
7
|
if (a.length !== b.length) return false;
|
|
8
8
|
for (let i = 0; i < a.length; i += 1) {
|
|
9
|
-
|
|
9
|
+
const left = a[i];
|
|
10
|
+
const right = b[i];
|
|
11
|
+
if (left === right) continue;
|
|
12
|
+
if (typeof left !== 'object' || left === null || typeof right !== 'object' || right === null) return false;
|
|
13
|
+
const leftKeys = Object.keys(left);
|
|
14
|
+
const rightKeys = Object.keys(right);
|
|
15
|
+
if (leftKeys.length !== 2 || rightKeys.length !== 2 || !leftKeys.includes('type') || !rightKeys.includes('type')) return false;
|
|
16
|
+
if (left.type === 'int64' && right.type === 'int64') {
|
|
17
|
+
if (!leftKeys.includes('value') || !rightKeys.includes('value')) return false;
|
|
18
|
+
if (typeof left.value !== 'string' || left.value !== right.value) return false;
|
|
19
|
+
} else if (left.type === 'bytes' && right.type === 'bytes') {
|
|
20
|
+
if (!leftKeys.includes('base64') || !rightKeys.includes('base64')) return false;
|
|
21
|
+
if (typeof left.base64 !== 'string' || left.base64 !== right.base64) return false;
|
|
22
|
+
} else {
|
|
23
|
+
return false;
|
|
24
|
+
}
|
|
10
25
|
}
|
|
11
26
|
return true;
|
|
12
27
|
}
|
|
@@ -34,15 +49,34 @@ export function useQuery(client, sql, params, tables) {
|
|
|
34
49
|
// Reactive mode: use watch()
|
|
35
50
|
setLoading(true);
|
|
36
51
|
let firstResult = true;
|
|
37
|
-
|
|
52
|
+
let disposed = false;
|
|
53
|
+
let unsubscribe = null;
|
|
54
|
+
client.watch(sql, stableParams, stableTables, rows => {
|
|
55
|
+
if (disposed) return;
|
|
38
56
|
setData(rows);
|
|
39
57
|
setError(null);
|
|
40
58
|
if (firstResult) {
|
|
41
59
|
setLoading(false);
|
|
42
60
|
firstResult = false;
|
|
43
61
|
}
|
|
62
|
+
}).then(remove => {
|
|
63
|
+
if (disposed) {
|
|
64
|
+
void remove().catch(() => {});
|
|
65
|
+
} else {
|
|
66
|
+
unsubscribe = remove;
|
|
67
|
+
}
|
|
68
|
+
}).catch(err => {
|
|
69
|
+
if (!disposed) {
|
|
70
|
+
setError(err);
|
|
71
|
+
setLoading(false);
|
|
72
|
+
}
|
|
44
73
|
});
|
|
45
|
-
return
|
|
74
|
+
return () => {
|
|
75
|
+
disposed = true;
|
|
76
|
+
if (unsubscribe) {
|
|
77
|
+
void unsubscribe().catch(() => {});
|
|
78
|
+
}
|
|
79
|
+
};
|
|
46
80
|
} else {
|
|
47
81
|
// One-shot mode: use query()
|
|
48
82
|
let cancelled = false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useState","useEffect","useCallback","useRef","arraysEqual","a","b","length","i","
|
|
1
|
+
{"version":3,"names":["useState","useEffect","useCallback","useRef","arraysEqual","a","b","length","i","left","right","leftKeys","Object","keys","rightKeys","includes","type","value","base64","useStableArray","ref","current","useQuery","client","sql","params","tables","data","setData","loading","setLoading","error","setError","refreshCounter","setRefreshTrigger","stableParams","stableTables","refresh","firstResult","disposed","unsubscribe","watch","rows","then","remove","catch","err","cancelled","query"],"sourceRoot":"../../../src","sources":["hooks/useQuery.ts"],"mappings":"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","ignoreList":[]}
|