@trainstar/synchro-react-native 0.4.0-rc.1 → 0.4.0-rc.2

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 (30) hide show
  1. package/README.md +59 -8
  2. package/SynchroReactNative.podspec +12 -1
  3. package/android/build.gradle +1 -1
  4. package/android/src/androidTest/kotlin/com/trainstar/synchro/rn/SynchroModuleTransactionTest.kt +3 -1
  5. package/android/src/main/kotlin/com/trainstar/synchro/rn/SynchroModule.kt +22 -2
  6. package/ios/SynchroModule.swift +23 -5
  7. package/ios-test-host/main.m +48 -0
  8. package/ios-tests/SynchroModuleTransactionTests.swift +3 -1
  9. package/lib/module/SynchroClient.js +26 -0
  10. package/lib/module/SynchroClient.js.map +1 -1
  11. package/lib/module/inspection.js +69 -6
  12. package/lib/module/inspection.js.map +1 -1
  13. package/lib/typescript/example/e2e/schema-check.test.d.ts +2 -0
  14. package/lib/typescript/example/e2e/schema-check.test.d.ts.map +1 -0
  15. package/lib/typescript/example/src/conformance/runner.d.ts +16 -2
  16. package/lib/typescript/example/src/conformance/runner.d.ts.map +1 -1
  17. package/lib/typescript/src/SynchroClient.d.ts.map +1 -1
  18. package/lib/typescript/src/inspection.d.ts +11 -4
  19. package/lib/typescript/src/inspection.d.ts.map +1 -1
  20. package/lib/typescript/src/types.d.ts +18 -0
  21. package/lib/typescript/src/types.d.ts.map +1 -1
  22. package/package.json +19 -5
  23. package/src/SynchroClient.ts +32 -0
  24. package/src/inspection.ts +95 -8
  25. package/src/types.ts +21 -0
  26. package/tooling-patches/apply.cjs +163 -0
  27. package/tooling-patches/cli-clean-20.2.0.patch +21 -0
  28. package/tooling-patches/cli-config-android-20.2.0.patch +13 -0
  29. package/tooling-patches/react-native-builder-bob-0.40.18.patch +74 -0
  30. package/tooling-patches/stream-json-1.9.1.patch +40 -0
package/README.md CHANGED
@@ -4,28 +4,79 @@ React Native TurboModule bridge for Synchro. The package wraps the native Swift
4
4
 
5
5
  ## Requirements
6
6
 
7
- - React Native `0.83.x`. Use `0.83.5` or later with Xcode `26.4` or later.
8
- - iOS `16.0+`
7
+ - React Native `>=0.82.1 <0.84.0`, with its compatible React version.
8
+ - React Native `0.82.1` needs the [fmt 12.1.0 backport](https://trainstar.github.io/synchro/reference/support-policy/#react-native-0821-fmt-backport) with Xcode 27.
9
+ - React Native `0.83.10` contains the fmt correction.
10
+ - Applications built with Xcode 27 must adopt the [UIKit scene lifecycle](https://developer.apple.com/documentation/uikit/transitioning-to-the-uikit-scene-based-life-cycle).
11
+ - iOS `17.0+`
9
12
  - Android `minSdk 24`
10
13
  - Node `20.19.4+`
11
14
  - Android development and CI should use JDK `17`
12
15
 
13
16
  ## Installation
14
17
 
15
- Install the published package only after Synchro `0.4.0-rc.1` is available. Before that,
18
+ Install the published package only after Synchro `0.4.0-rc.2` is available. Before that,
16
19
  use the local artifact flow in
17
20
  [Client Consumption](https://trainstar.github.io/synchro/clients/consumption/).
18
21
 
19
22
  ```sh
20
- npm install @trainstar/synchro-react-native@0.4.0-rc.1
23
+ npm install @trainstar/synchro-react-native@0.4.0-rc.2
21
24
  ```
22
25
 
23
- Before you run `pod install`, add these published Synchro `0.4.0-rc.1` dependencies to the
26
+ Apply the delivered React Native CLI correction after each fresh npm install and
27
+ before you run Codegen, bundle, or native build commands:
28
+
29
+ ```sh
30
+ npm install --save-dev --save-exact \
31
+ @react-native-community/cli@20.2.0 \
32
+ @react-native-community/cli-platform-android@20.2.0 \
33
+ @react-native-community/cli-platform-ios@20.2.0
34
+ ```
35
+
36
+ Pin these CLI packages before the patch command. Default React Native templates
37
+ can install an older CLI.
38
+
39
+ ```sh
40
+ node node_modules/@trainstar/synchro-react-native/tooling-patches/apply.cjs cli
41
+ ```
42
+
43
+ The command resolves the CLI from the application that calls it. It verifies
44
+ the expected `20.2.0` source and post-patch SHA-256 values. It rejects another
45
+ version, a missing target, or a target outside the application installation.
46
+ The correction escapes the documented `jsSrcsDir` directory before the CLI
47
+ adds its fixed source-extension glob. It also preserves the CLI's authored
48
+ temporary-cache suffix patterns while treating the host temporary directory as
49
+ a literal prefix. It does not change the upstream version.
50
+
51
+ Applications that use `bunyamin` 1.6.3 with `stream-json` 1.9.1 must also apply
52
+ the delivered correction before they run that tooling:
53
+
54
+ ```sh
55
+ node node_modules/@trainstar/synchro-react-native/tooling-patches/apply.cjs stream-json
56
+ ```
57
+
58
+ This correction backports upstream commit
59
+ `2f2d35bbb547306991ded6487a279154d865a358` for both Assembler writes. It
60
+ preserves the installed `stream-json` version and its 1.9.1 reviver behavior.
61
+
62
+ Library projects that run `bob build` must apply the delivered Bob correction
63
+ after each fresh npm installation and before they build:
64
+
65
+ ```sh
66
+ node node_modules/@trainstar/synchro-react-native/tooling-patches/apply.cjs bob
67
+ ```
68
+
69
+ The correction replaces Bob's glob-based removal of its resolved output and
70
+ TypeScript build-info paths with its installed `fs-extra` literal operation.
71
+ It rejects the current project directory and paths outside it before removal.
72
+ It does not change compilation or TypeScript generation.
73
+
74
+ Before you run `pod install`, add these published Synchro `0.4.0-rc.2` dependencies to the
24
75
  application `ios/Podfile`:
25
76
 
26
77
  ```ruby
27
- pod 'Synchro', :git => 'https://github.com/trainstar/synchro.git', :tag => 'v0.4.0-rc.1'
28
- pod 'GRDB.swift', :git => 'https://github.com/groue/GRDB.swift.git', :tag => 'v7.0.0'
78
+ pod 'Synchro', :git => 'https://github.com/trainstar/synchro.git', :tag => 'v0.4.0-rc.2'
79
+ pod 'GRDB.swift', :git => 'https://github.com/groue/GRDB.swift.git', :tag => 'v7.8.0'
29
80
  ```
30
81
 
31
82
  Then install the pods:
@@ -214,7 +265,7 @@ When one mutation in a group does not apply, the server applies no mutation of t
214
265
 
215
266
  After a failed group with a conflict, local state holds the server row for the conflicting member. It holds local values for every other member. The SDK does not revert those local values. Use `inspectRejectedMutations()` to find them and write new intent.
216
267
 
217
- The atomic API requires the Synchro `0.4.0-rc.1` extension and adapter. Use this deployment order:
268
+ The atomic API requires the Synchro `0.4.0-rc.2` extension and adapter. Use this deployment order:
218
269
 
219
270
  1. Install the `0.4.0` extension and adapter on the server.
220
271
  2. Release the client code that calls `atomicWriteTransaction()`.
@@ -10,7 +10,7 @@ Pod::Spec.new do |s|
10
10
  s.license = package["license"]
11
11
  s.authors = package["author"]
12
12
 
13
- s.platforms = { :ios => "16.0" }
13
+ s.platforms = { :ios => "17.0" }
14
14
  s.source = { :git => "https://github.com/trainstar/synchro.git", :tag => "v#{s.version}" }
15
15
 
16
16
  s.source_files = "ios/**/*.{h,m,mm,swift,cpp}"
@@ -21,9 +21,20 @@ Pod::Spec.new do |s|
21
21
 
22
22
  install_modules_dependencies(s)
23
23
 
24
+ s.app_spec "TestHost" do |app_spec|
25
+ app_spec.source_files = "ios-test-host/main.m"
26
+ app_spec.info_plist = {
27
+ "UIApplicationSceneManifest" => {
28
+ "UIApplicationSupportsMultipleScenes" => false
29
+ }
30
+ }
31
+ end
32
+
24
33
  # Test sources stay outside source_files, so production targets never compile them.
25
34
  s.test_spec "Tests" do |test_spec|
26
35
  test_spec.source_files = "ios-tests/**/*.swift"
27
36
  test_spec.requires_app_host = true
37
+ test_spec.app_host_name = "SynchroReactNative/TestHost"
38
+ test_spec.dependency "SynchroReactNative/TestHost"
28
39
  end
29
40
  end
@@ -32,7 +32,7 @@ apply plugin: "kotlin-android"
32
32
 
33
33
  apply plugin: "com.facebook.react"
34
34
 
35
- def defaultSynchroVersion = "0.4.0-rc.1"
35
+ def defaultSynchroVersion = "0.4.0-rc.2"
36
36
  def resolvedSynchroVersion = findProperty("synchroVersion")?.toString() ?: defaultSynchroVersion
37
37
 
38
38
  android {
@@ -268,7 +268,9 @@ class SynchroModuleTransactionTest {
268
268
  assertEquals("first", rows.getMap(0)!!.getString("name"))
269
269
  val inspection = JSONObject(result.getString("inspection")!!)
270
270
  assertEquals(
271
- setOf("client_state", "retained_mutations", "rejected_mutations"),
271
+ setOf("client_state", "retained_mutations", "rejected_mutations", "migration_journal",
272
+ "migration_journal_truncated", "physical_schema", "physical_schema_truncated",
273
+ "accepted_mutation_outcomes", "accepted_mutation_outcomes_truncated"),
272
274
  inspection.keys().asSequence().toSet(),
273
275
  )
274
276
  // bridge_items is a local table, so the mutation ledger stays empty.
@@ -13,6 +13,9 @@ import com.trainstar.synchro.inspection.SynchroInspection
13
13
  import com.trainstar.synchro.inspection.TransportObservationCollector
14
14
  import com.trainstar.synchro.inspection.TransportObservationSnapshot
15
15
  import com.trainstar.synchro.inspection.TransportOperationClass
16
+ import com.trainstar.synchro.inspection.MigrationCheckpoint
17
+ import com.trainstar.synchro.inspection.MigrationJournalInspection
18
+ import com.trainstar.synchro.inspection.PhysicalSchemaColumnInspection
16
19
  import com.trainstar.synchro.inspection.withTransportObservation
17
20
  import kotlinx.coroutines.ExperimentalCoroutinesApi
18
21
  import kotlinx.coroutines.*
@@ -1127,6 +1130,16 @@ class SynchroModule(reactContext: ReactApplicationContext) :
1127
1130
  }
1128
1131
  val inspection = JSONObject().apply {
1129
1132
  put("client_state", clientStateJson(snapshot.capture))
1133
+ put("migration_journal", snapshot.capture.migrationJournal?.let {
1134
+ JSONObject(Json.encodeToString(MigrationJournalInspection.serializer(), it))
1135
+ } ?: JSONObject.NULL)
1136
+ put("migration_journal_truncated", snapshot.capture.migrationJournalTruncated)
1137
+ put("physical_schema", JSONArray(snapshot.capture.physicalSchema.map {
1138
+ JSONObject(Json.encodeToString(PhysicalSchemaColumnInspection.serializer(), it))
1139
+ }))
1140
+ put("physical_schema_truncated", snapshot.capture.physicalSchemaTruncated)
1141
+ put("accepted_mutation_outcomes", JSONObject(snapshot.capture.acceptedMutationOutcomes))
1142
+ put("accepted_mutation_outcomes_truncated", snapshot.capture.acceptedMutationOutcomesTruncated)
1130
1143
  put("retained_mutations", snapshot.retainedMutations?.let { JSONArray(it.map(::retainedMutationJson)) } ?: JSONObject.NULL)
1131
1144
  put("rejected_mutations", snapshot.rejectedMutations?.let { JSONArray(it.map(::retainedRejectionJson)) } ?: JSONObject.NULL)
1132
1145
  }
@@ -1202,7 +1215,8 @@ class SynchroModule(reactContext: ReactApplicationContext) :
1202
1215
  override fun armTransportPause(operationClass: String, promise: Promise) {
1203
1216
  try {
1204
1217
  val collector = transportObservationCollector ?: error("Transport observation is not configured")
1205
- collector.armPause(transportOperationClass(operationClass))
1218
+ val checkpoint = MigrationCheckpoint.fromWire(operationClass)
1219
+ if (checkpoint != null) collector.armPause(checkpoint) else collector.armPause(transportOperationClass(operationClass))
1206
1220
  promise.resolve(null)
1207
1221
  } catch (error: Exception) {
1208
1222
  rejectWithError(promise, error)
@@ -1220,7 +1234,12 @@ class SynchroModule(reactContext: ReactApplicationContext) :
1220
1234
  timeoutMs % 1.0 == 0.0,
1221
1235
  ) { "Transport pause timeout is invalid" }
1222
1236
  val collector = transportObservationCollector ?: error("Transport observation is not configured")
1223
- collector.awaitPause(transportOperationClass(operationClass), timeoutMs.toLong())
1237
+ val checkpoint = MigrationCheckpoint.fromWire(operationClass)
1238
+ if (checkpoint != null) {
1239
+ collector.awaitPause(checkpoint, timeoutMs.toLong())
1240
+ } else {
1241
+ collector.awaitPause(transportOperationClass(operationClass), timeoutMs.toLong())
1242
+ }
1224
1243
  promise.resolve(null)
1225
1244
  } catch (error: Exception) {
1226
1245
  rejectWithError(promise, error)
@@ -1532,6 +1551,7 @@ class SynchroModule(reactContext: ReactApplicationContext) :
1532
1551
  put("row_metadata_count", capture.rowMetadataCount)
1533
1552
  put("rebuild_attempt_count", capture.rebuildAttemptCount)
1534
1553
  put("rebuild_receipt_count", capture.rebuildReceiptCount)
1554
+ put("capture_overflowed", capture.overflowed)
1535
1555
  put(
1536
1556
  "provenance_maintenance_work_cursor",
1537
1557
  capture.provenanceMaintenanceWorkCursor.toString(),
@@ -1635,6 +1635,14 @@ public class SynchroModuleImpl: NSObject {
1635
1635
  }
1636
1636
  let inspection: [String: Any] = [
1637
1637
  "client_state": clientStatePayload(snapshot.capture),
1638
+ "migration_journal": try snapshot.capture.migrationJournal.map {
1639
+ try JSONSerialization.jsonObject(with: JSONEncoder().encode($0))
1640
+ } ?? NSNull(),
1641
+ "migration_journal_truncated": snapshot.capture.migrationJournalTruncated,
1642
+ "physical_schema": try JSONSerialization.jsonObject(with: JSONEncoder().encode(snapshot.capture.physicalSchema)),
1643
+ "physical_schema_truncated": snapshot.capture.physicalSchemaTruncated,
1644
+ "accepted_mutation_outcomes": snapshot.capture.acceptedMutationOutcomes,
1645
+ "accepted_mutation_outcomes_truncated": snapshot.capture.acceptedMutationOutcomesTruncated,
1638
1646
  "retained_mutations": snapshot.retainedMutations.map { $0.map(retainedMutationPayload) } ?? NSNull(),
1639
1647
  "rejected_mutations": snapshot.rejectedMutations.map { $0.map(retainedRejectionPayload) } ?? NSNull(),
1640
1648
  ]
@@ -1724,13 +1732,18 @@ public class SynchroModuleImpl: NSObject {
1724
1732
  resolve: @escaping RCTPromiseResolveBlock,
1725
1733
  reject: @escaping RCTPromiseRejectBlock
1726
1734
  ) {
1727
- guard let collector = transportObservations,
1728
- let operation = TransportOperationClass(rawValue: operationClass) else {
1735
+ guard let collector = transportObservations else {
1729
1736
  reject("INVALID_CONFIG", "Transport pause operation is invalid", nil)
1730
1737
  return
1731
1738
  }
1732
1739
  do {
1733
- try collector.armPause(for: operation)
1740
+ if let checkpoint = MigrationCheckpoint(rawValue: operationClass) {
1741
+ try collector.armPause(for: checkpoint)
1742
+ } else if let operation = TransportOperationClass(rawValue: operationClass) {
1743
+ try collector.armPause(for: operation)
1744
+ } else {
1745
+ throw SynchroError.invalidResponse(message: "pause target is invalid")
1746
+ }
1734
1747
  resolve(nil)
1735
1748
  } catch {
1736
1749
  rejectWithError(reject, error)
@@ -1745,14 +1758,19 @@ public class SynchroModuleImpl: NSObject {
1745
1758
  reject: @escaping RCTPromiseRejectBlock
1746
1759
  ) {
1747
1760
  guard let collector = transportObservations,
1748
- let operation = TransportOperationClass(rawValue: operationClass),
1749
1761
  timeoutMs.isFinite, timeoutMs >= 1, timeoutMs <= 60_000 else {
1750
1762
  reject("INVALID_CONFIG", "Transport pause wait is invalid", nil)
1751
1763
  return
1752
1764
  }
1753
1765
  Task {
1754
1766
  do {
1755
- try await collector.awaitPause(for: operation, timeout: timeoutMs / 1_000)
1767
+ if let checkpoint = MigrationCheckpoint(rawValue: operationClass) {
1768
+ try await collector.awaitPause(for: checkpoint, timeout: timeoutMs / 1_000)
1769
+ } else if let operation = TransportOperationClass(rawValue: operationClass) {
1770
+ try await collector.awaitPause(for: operation, timeout: timeoutMs / 1_000)
1771
+ } else {
1772
+ throw SynchroError.invalidResponse(message: "pause target is invalid")
1773
+ }
1756
1774
  DispatchQueue.main.async { resolve(nil) }
1757
1775
  } catch {
1758
1776
  DispatchQueue.main.async { self.rejectWithError(reject, error) }
@@ -0,0 +1,48 @@
1
+ #import <UIKit/UIKit.h>
2
+
3
+ @interface SynchroTestHostSceneDelegate : UIResponder <UIWindowSceneDelegate>
4
+ @property (nonatomic, strong) UIWindow *window;
5
+ @end
6
+
7
+ @implementation SynchroTestHostSceneDelegate
8
+
9
+ - (void)scene:(UIScene *)scene
10
+ willConnectToSession:(UISceneSession *)session
11
+ options:(UISceneConnectionOptions *)connectionOptions
12
+ {
13
+ if (![scene isKindOfClass:[UIWindowScene class]]) {
14
+ return;
15
+ }
16
+
17
+ self.window = [[UIWindow alloc] initWithWindowScene:(UIWindowScene *)scene];
18
+ self.window.rootViewController = [UIViewController new];
19
+ [self.window makeKeyAndVisible];
20
+ }
21
+
22
+ @end
23
+
24
+ @interface SynchroTestHostAppDelegate : UIResponder <UIApplicationDelegate>
25
+ @end
26
+
27
+ @implementation SynchroTestHostAppDelegate
28
+
29
+ - (UISceneConfiguration *)application:(UIApplication *)application
30
+ configurationForConnectingSceneSession:(UISceneSession *)connectingSceneSession
31
+ options:(UISceneConnectionOptions *)options
32
+ {
33
+ UISceneConfiguration *configuration = [[UISceneConfiguration alloc]
34
+ initWithName:@"Default Configuration"
35
+ sessionRole:connectingSceneSession.role];
36
+ configuration.sceneClass = [UIWindowScene class];
37
+ configuration.delegateClass = [SynchroTestHostSceneDelegate class];
38
+ return configuration;
39
+ }
40
+
41
+ @end
42
+
43
+ int main(int argc, char *argv[])
44
+ {
45
+ @autoreleasepool {
46
+ return UIApplicationMain(argc, argv, nil, NSStringFromClass([SynchroTestHostAppDelegate class]));
47
+ }
48
+ }
@@ -467,7 +467,9 @@ final class SynchroModuleTransactionTests: XCTestCase {
467
467
  let inspection = try XCTUnwrap(try JSONSerialization.jsonObject(with: json) as? [String: Any])
468
468
  XCTAssertEqual(
469
469
  Set(inspection.keys),
470
- ["client_state", "retained_mutations", "rejected_mutations"]
470
+ ["client_state", "retained_mutations", "rejected_mutations", "migration_journal",
471
+ "migration_journal_truncated", "physical_schema", "physical_schema_truncated",
472
+ "accepted_mutation_outcomes", "accepted_mutation_outcomes_truncated"]
471
473
  )
472
474
  // bridge_items is a local table, so the mutation ledger stays empty.
473
475
  for member in ["retained_mutations", "rejected_mutations"] {
@@ -482,6 +482,14 @@ function parseTransportObservation(value, index) {
482
482
  if (!isRecord(value) || !TRANSPORT_OPERATION_CLASSES.includes(value.operation_class)) {
483
483
  throw new InvalidResponseError(`Native bridge returned an invalid ${name}`);
484
484
  }
485
+ const errorCode = value.error_code;
486
+ if (errorCode !== undefined && typeof errorCode !== 'string') {
487
+ throw new InvalidResponseError(`Native bridge returned invalid ${name} error code`);
488
+ }
489
+ const retryable = value.retryable;
490
+ if (retryable !== undefined && typeof retryable !== 'boolean') {
491
+ throw new InvalidResponseError(`Native bridge returned invalid ${name} retryability`);
492
+ }
485
493
  const cursorFingerprints = value.cursor_fingerprints;
486
494
  if (cursorFingerprints !== undefined && (!Array.isArray(cursorFingerprints) || !cursorFingerprints.every(item => typeof item === 'string'))) {
487
495
  throw new InvalidResponseError(`Native bridge returned invalid ${name} cursor fingerprints`);
@@ -490,10 +498,25 @@ function parseTransportObservation(value, index) {
490
498
  if (cursorFingerprintsComplete !== undefined && typeof cursorFingerprintsComplete !== 'boolean') {
491
499
  throw new InvalidResponseError(`Native bridge returned invalid ${name} cursor completeness`);
492
500
  }
501
+ const connectFacts = optionalTransportFacts(value.connect_response_facts, `${name} connect response facts`);
502
+ if (connectFacts !== undefined) {
503
+ const affected = connectFacts.affected_scope_fingerprints;
504
+ const updates = connectFacts.scope_cursor_updates;
505
+ const hashPattern = /^[0-9a-f]{64}$/;
506
+ if (value.operation_class !== 'connect' || value.status_code !== 200 || Object.keys(connectFacts).length !== 7 || !['none', 'replace', 'rebuild_local', 'unsupported'].includes(connectFacts.action) || typeof connectFacts.schema_version !== 'number' || !Number.isSafeInteger(connectFacts.schema_version) || connectFacts.schema_version <= 0 || typeof connectFacts.schema_hash !== 'string' || !hashPattern.test(connectFacts.schema_hash) || !Array.isArray(affected) || affected.length > 16 || !affected.every((item, position) => typeof item === 'string' && hashPattern.test(item) && (position === 0 || affected[position - 1] < item)) || typeof connectFacts.affected_scopes_complete !== 'boolean' || !isRecord(updates) || Object.keys(updates).length > 16 || !Object.entries(updates).every(([scope, cursor]) => hashPattern.test(scope) && (cursor === null || typeof cursor === 'string' && hashPattern.test(cursor))) || typeof connectFacts.scope_cursor_updates_complete !== 'boolean') {
507
+ throw new InvalidResponseError(`Native bridge returned invalid ${name} connect response facts`);
508
+ }
509
+ }
493
510
  return {
494
511
  sequence: requiredSafeInteger(value.sequence, `${name} sequence`),
495
512
  operationClass: value.operation_class,
496
513
  statusCode: requiredSafeInteger(value.status_code, `${name} status code`),
514
+ ...(errorCode === undefined ? {} : {
515
+ errorCode
516
+ }),
517
+ ...(retryable === undefined ? {} : {
518
+ retryable
519
+ }),
497
520
  durationNanoseconds: requiredSafeInteger(value.duration_nanoseconds, `${name} duration`),
498
521
  ...(cursorFingerprints === undefined ? {} : {
499
522
  cursorFingerprints: [...cursorFingerprints]
@@ -509,6 +532,9 @@ function parseTransportObservation(value, index) {
509
532
  }),
510
533
  ...(value.pull_response_facts == null ? {} : {
511
534
  pullResponseFacts: optionalTransportFacts(value.pull_response_facts, `${name} pull response facts`)
535
+ }),
536
+ ...(connectFacts === undefined ? {} : {
537
+ connectResponseFacts: connectFacts
512
538
  })
513
539
  };
514
540
  }
@@ -1 +1 @@
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","parseRetainedMutationInspection","representation","parseRejectedMutationInspection","code","message","serverRowJSON","serverVersion","mutationJSON","rejectionJSON","createdAt","updatedAt","parseRetainedRejectionInspection","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","runWriteTransaction","beginWriteTransaction","atomicWriteTransaction","beginAtomicWriteTransaction","begin","txID","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","inspectRetainedMutationRecords","inspectRejectedMutations","inspectRejectedMutationRecords","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":[]}
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","parseRetainedMutationInspection","representation","parseRejectedMutationInspection","code","message","serverRowJSON","serverVersion","mutationJSON","rejectionJSON","createdAt","updatedAt","parseRetainedRejectionInspection","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","errorCode","error_code","retryable","cursorFingerprints","cursor_fingerprints","every","item","cursorFingerprintsComplete","cursor_fingerprints_complete","connectFacts","connect_response_facts","affected","affected_scope_fingerprints","updates","scope_cursor_updates","hashPattern","status_code","keys","position","affected_scopes_complete","entries","scope","scope_cursor_updates_complete","sequence","operationClass","statusCode","durationNanoseconds","duration_nanoseconds","request_facts","requestFacts","rebuild_response_facts","rebuildResponseFacts","pull_response_facts","pullResponseFacts","connectResponseFacts","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","runWriteTransaction","beginWriteTransaction","atomicWriteTransaction","beginAtomicWriteTransaction","begin","txID","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","inspectRetainedMutationRecords","inspectRejectedMutations","inspectRejectedMutationRecords","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":[]}