react-native-ota-hot-update 2.1.2 → 2.1.4

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 (34) hide show
  1. package/android/generated/java/com/otahotupdate/NativeOtaHotUpdateSpec.java +8 -0
  2. package/android/generated/jni/RNOtaHotUpdateSpec-generated.cpp +12 -0
  3. package/android/generated/jni/react/renderer/components/RNOtaHotUpdateSpec/RNOtaHotUpdateSpecJSI-generated.cpp +14 -0
  4. package/android/generated/jni/react/renderer/components/RNOtaHotUpdateSpec/RNOtaHotUpdateSpecJSI.h +18 -0
  5. package/android/src/main/java/com/otahotupdate/OtaHotUpdateModule.kt +20 -0
  6. package/android/src/main/java/com/otahotupdate/SharedPrefs.kt +1 -0
  7. package/android/src/oldarch/OtaHotUpdateSpec.kt +2 -0
  8. package/ios/OtaHotUpdate.mm +27 -0
  9. package/ios/generated/RNOtaHotUpdateSpec/RNOtaHotUpdateSpec-generated.mm +14 -0
  10. package/ios/generated/RNOtaHotUpdateSpec/RNOtaHotUpdateSpec.h +6 -0
  11. package/ios/generated/RNOtaHotUpdateSpecJSI-generated.cpp +14 -0
  12. package/ios/generated/RNOtaHotUpdateSpecJSI.h +18 -0
  13. package/lib/commonjs/NativeOtaHotUpdate.js.map +1 -1
  14. package/lib/commonjs/index.js +23 -1
  15. package/lib/commonjs/index.js.map +1 -1
  16. package/lib/module/NativeOtaHotUpdate.js.map +1 -1
  17. package/lib/module/index.js +23 -1
  18. package/lib/module/index.js.map +1 -1
  19. package/lib/typescript/commonjs/src/NativeOtaHotUpdate.d.ts +2 -0
  20. package/lib/typescript/commonjs/src/NativeOtaHotUpdate.d.ts.map +1 -1
  21. package/lib/typescript/commonjs/src/index.d.ts +4 -0
  22. package/lib/typescript/commonjs/src/index.d.ts.map +1 -1
  23. package/lib/typescript/commonjs/src/type.d.ts +10 -0
  24. package/lib/typescript/commonjs/src/type.d.ts.map +1 -1
  25. package/lib/typescript/module/src/NativeOtaHotUpdate.d.ts +2 -0
  26. package/lib/typescript/module/src/NativeOtaHotUpdate.d.ts.map +1 -1
  27. package/lib/typescript/module/src/index.d.ts +4 -0
  28. package/lib/typescript/module/src/index.d.ts.map +1 -1
  29. package/lib/typescript/module/src/type.d.ts +10 -0
  30. package/lib/typescript/module/src/type.d.ts.map +1 -1
  31. package/package.json +1 -1
  32. package/src/NativeOtaHotUpdate.ts +2 -0
  33. package/src/index.tsx +24 -1
  34. package/src/type.ts +12 -0
@@ -52,10 +52,18 @@ public abstract class NativeOtaHotUpdateSpec extends ReactContextBaseJavaModule
52
52
  @DoNotStrip
53
53
  public abstract void getCurrentVersion(double a, Promise promise);
54
54
 
55
+ @ReactMethod
56
+ @DoNotStrip
57
+ public abstract void getUpdateMetadata(double a, Promise promise);
58
+
55
59
  @ReactMethod
56
60
  @DoNotStrip
57
61
  public abstract void setCurrentVersion(String version, Promise promise);
58
62
 
63
+ @ReactMethod
64
+ @DoNotStrip
65
+ public abstract void setUpdateMetadata(String metadata, Promise promise);
66
+
59
67
  @ReactMethod
60
68
  @DoNotStrip
61
69
  public abstract void rollbackToPreviousBundle(double a, Promise promise);
@@ -37,11 +37,21 @@ static facebook::jsi::Value __hostFunction_NativeOtaHotUpdateSpecJSI_getCurrentV
37
37
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, PromiseKind, "getCurrentVersion", "(DLcom/facebook/react/bridge/Promise;)V", args, count, cachedMethodId);
38
38
  }
39
39
 
40
+ static facebook::jsi::Value __hostFunction_NativeOtaHotUpdateSpecJSI_getUpdateMetadata(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
41
+ static jmethodID cachedMethodId = nullptr;
42
+ return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, PromiseKind, "getUpdateMetadata", "(DLcom/facebook/react/bridge/Promise;)V", args, count, cachedMethodId);
43
+ }
44
+
40
45
  static facebook::jsi::Value __hostFunction_NativeOtaHotUpdateSpecJSI_setCurrentVersion(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
41
46
  static jmethodID cachedMethodId = nullptr;
42
47
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, PromiseKind, "setCurrentVersion", "(Ljava/lang/String;Lcom/facebook/react/bridge/Promise;)V", args, count, cachedMethodId);
43
48
  }
44
49
 
50
+ static facebook::jsi::Value __hostFunction_NativeOtaHotUpdateSpecJSI_setUpdateMetadata(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
51
+ static jmethodID cachedMethodId = nullptr;
52
+ return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, PromiseKind, "setUpdateMetadata", "(Ljava/lang/String;Lcom/facebook/react/bridge/Promise;)V", args, count, cachedMethodId);
53
+ }
54
+
45
55
  static facebook::jsi::Value __hostFunction_NativeOtaHotUpdateSpecJSI_rollbackToPreviousBundle(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
46
56
  static jmethodID cachedMethodId = nullptr;
47
57
  return static_cast<JavaTurboModule &>(turboModule).invokeJavaMethod(rt, PromiseKind, "rollbackToPreviousBundle", "(DLcom/facebook/react/bridge/Promise;)V", args, count, cachedMethodId);
@@ -54,7 +64,9 @@ NativeOtaHotUpdateSpecJSI::NativeOtaHotUpdateSpecJSI(const JavaTurboModule::Init
54
64
  methodMap_["deleteBundle"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateSpecJSI_deleteBundle};
55
65
  methodMap_["restart"] = MethodMetadata {0, __hostFunction_NativeOtaHotUpdateSpecJSI_restart};
56
66
  methodMap_["getCurrentVersion"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateSpecJSI_getCurrentVersion};
67
+ methodMap_["getUpdateMetadata"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateSpecJSI_getUpdateMetadata};
57
68
  methodMap_["setCurrentVersion"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateSpecJSI_setCurrentVersion};
69
+ methodMap_["setUpdateMetadata"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateSpecJSI_setUpdateMetadata};
58
70
  methodMap_["rollbackToPreviousBundle"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateSpecJSI_rollbackToPreviousBundle};
59
71
  }
60
72
 
@@ -42,12 +42,24 @@ static jsi::Value __hostFunction_NativeOtaHotUpdateCxxSpecJSI_getCurrentVersion(
42
42
  count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asNumber()
43
43
  );
44
44
  }
45
+ static jsi::Value __hostFunction_NativeOtaHotUpdateCxxSpecJSI_getUpdateMetadata(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
46
+ return static_cast<NativeOtaHotUpdateCxxSpecJSI *>(&turboModule)->getUpdateMetadata(
47
+ rt,
48
+ count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asNumber()
49
+ );
50
+ }
45
51
  static jsi::Value __hostFunction_NativeOtaHotUpdateCxxSpecJSI_setCurrentVersion(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
46
52
  return static_cast<NativeOtaHotUpdateCxxSpecJSI *>(&turboModule)->setCurrentVersion(
47
53
  rt,
48
54
  count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt)
49
55
  );
50
56
  }
57
+ static jsi::Value __hostFunction_NativeOtaHotUpdateCxxSpecJSI_setUpdateMetadata(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
58
+ return static_cast<NativeOtaHotUpdateCxxSpecJSI *>(&turboModule)->setUpdateMetadata(
59
+ rt,
60
+ count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt)
61
+ );
62
+ }
51
63
  static jsi::Value __hostFunction_NativeOtaHotUpdateCxxSpecJSI_rollbackToPreviousBundle(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
52
64
  return static_cast<NativeOtaHotUpdateCxxSpecJSI *>(&turboModule)->rollbackToPreviousBundle(
53
65
  rt,
@@ -62,7 +74,9 @@ NativeOtaHotUpdateCxxSpecJSI::NativeOtaHotUpdateCxxSpecJSI(std::shared_ptr<CallI
62
74
  methodMap_["deleteBundle"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_deleteBundle};
63
75
  methodMap_["restart"] = MethodMetadata {0, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_restart};
64
76
  methodMap_["getCurrentVersion"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_getCurrentVersion};
77
+ methodMap_["getUpdateMetadata"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_getUpdateMetadata};
65
78
  methodMap_["setCurrentVersion"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_setCurrentVersion};
79
+ methodMap_["setUpdateMetadata"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_setUpdateMetadata};
66
80
  methodMap_["rollbackToPreviousBundle"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_rollbackToPreviousBundle};
67
81
  }
68
82
 
@@ -25,7 +25,9 @@ public:
25
25
  virtual jsi::Value deleteBundle(jsi::Runtime &rt, double i) = 0;
26
26
  virtual void restart(jsi::Runtime &rt) = 0;
27
27
  virtual jsi::Value getCurrentVersion(jsi::Runtime &rt, double a) = 0;
28
+ virtual jsi::Value getUpdateMetadata(jsi::Runtime &rt, double a) = 0;
28
29
  virtual jsi::Value setCurrentVersion(jsi::Runtime &rt, jsi::String version) = 0;
30
+ virtual jsi::Value setUpdateMetadata(jsi::Runtime &rt, jsi::String metadata) = 0;
29
31
  virtual jsi::Value rollbackToPreviousBundle(jsi::Runtime &rt, double a) = 0;
30
32
 
31
33
  };
@@ -93,6 +95,14 @@ private:
93
95
  return bridging::callFromJs<jsi::Value>(
94
96
  rt, &T::getCurrentVersion, jsInvoker_, instance_, std::move(a));
95
97
  }
98
+ jsi::Value getUpdateMetadata(jsi::Runtime &rt, double a) override {
99
+ static_assert(
100
+ bridging::getParameterCount(&T::getUpdateMetadata) == 2,
101
+ "Expected getUpdateMetadata(...) to have 2 parameters");
102
+
103
+ return bridging::callFromJs<jsi::Value>(
104
+ rt, &T::getUpdateMetadata, jsInvoker_, instance_, std::move(a));
105
+ }
96
106
  jsi::Value setCurrentVersion(jsi::Runtime &rt, jsi::String version) override {
97
107
  static_assert(
98
108
  bridging::getParameterCount(&T::setCurrentVersion) == 2,
@@ -101,6 +111,14 @@ private:
101
111
  return bridging::callFromJs<jsi::Value>(
102
112
  rt, &T::setCurrentVersion, jsInvoker_, instance_, std::move(version));
103
113
  }
114
+ jsi::Value setUpdateMetadata(jsi::Runtime &rt, jsi::String metadata) override {
115
+ static_assert(
116
+ bridging::getParameterCount(&T::setUpdateMetadata) == 2,
117
+ "Expected setUpdateMetadata(...) to have 2 parameters");
118
+
119
+ return bridging::callFromJs<jsi::Value>(
120
+ rt, &T::setUpdateMetadata, jsInvoker_, instance_, std::move(metadata));
121
+ }
104
122
  jsi::Value rollbackToPreviousBundle(jsi::Runtime &rt, double a) override {
105
123
  static_assert(
106
124
  bridging::getParameterCount(&T::rollbackToPreviousBundle) == 2,
@@ -12,6 +12,7 @@ import com.rnhotupdate.Common.CURRENT_VERSION_NAME
12
12
  import com.rnhotupdate.Common.PATH
13
13
  import com.rnhotupdate.Common.PREVIOUS_PATH
14
14
  import com.rnhotupdate.Common.VERSION
15
+ import com.rnhotupdate.Common.METADATA
15
16
  import com.rnhotupdate.SharedPrefs
16
17
  import java.io.File
17
18
  import java.util.Date
@@ -171,6 +172,25 @@ class OtaHotUpdateModule internal constructor(context: ReactApplicationContext)
171
172
  promise.resolve(true)
172
173
  }
173
174
 
175
+ @ReactMethod
176
+ override fun getUpdateMetadata(a: Double, promise: Promise) {
177
+ val sharedPrefs = SharedPrefs(reactApplicationContext)
178
+ val metadata = sharedPrefs.getString(METADATA)
179
+ if (metadata != "") {
180
+ promise.resolve(metadata);
181
+ } else {
182
+ promise.resolve(null);
183
+ }
184
+ }
185
+
186
+ @ReactMethod
187
+ override fun setUpdateMetadata(metadata: String?, promise: Promise) {
188
+ val sharedPrefs = SharedPrefs(reactApplicationContext)
189
+ sharedPrefs.putString(METADATA, metadata)
190
+ promise.resolve(true)
191
+ }
192
+
193
+
174
194
  @ReactMethod
175
195
  override fun setExactBundlePath(path: String?, promise: Promise) {
176
196
  val sharedPrefs = SharedPrefs(reactApplicationContext)
@@ -30,4 +30,5 @@ object Common {
30
30
  val CURRENT_VERSION_NAME = "CURRENT_VERSION_NAME"
31
31
  val SHARED_PREFERENCE_NAME = "HOT-UPDATE-REACT_NATIVE"
32
32
  val DEFAULT_BUNDLE = "assets://index.android.bundle"
33
+ val METADATA = "METADATA"
33
34
  }
@@ -14,4 +14,6 @@ abstract class OtaHotUpdateSpec internal constructor(context: ReactApplicationCo
14
14
  abstract fun setCurrentVersion(version: String?, promise: Promise)
15
15
  abstract fun setExactBundlePath(path: String?, promise: Promise)
16
16
  abstract fun rollbackToPreviousBundle(a: Double, promise: Promise)
17
+ abstract fun getUpdateMetadata(a: Double, promise: Promise)
18
+ abstract fun setUpdateMetadata(metadata: String?, promise: Promise)
17
19
  }
@@ -282,6 +282,33 @@ RCT_EXPORT_METHOD(setCurrentVersion:(NSString *)version
282
282
  }
283
283
  }
284
284
 
285
+ RCT_EXPORT_METHOD(setUpdateMetadata:(NSString *)metadataString
286
+ resolve:(RCTPromiseResolveBlock)resolve
287
+ reject:(RCTPromiseRejectBlock)reject) {
288
+ if (metadataString) {
289
+ NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
290
+ [defaults setObject:metadataString forKey:@"METADATA"];
291
+ [defaults synchronize];
292
+ resolve(@(YES));
293
+ } else {
294
+ resolve(@(NO));
295
+ }
296
+ }
297
+
298
+ RCT_EXPORT_METHOD(getUpdateMetadata:(double)a
299
+ resolve:(RCTPromiseResolveBlock)resolve
300
+ reject:(RCTPromiseRejectBlock)reject)
301
+ {
302
+ NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
303
+ NSString *metadata = [defaults stringForKey:@"METADATA"];
304
+
305
+ if (metadata) {
306
+ resolve(metadata);
307
+ } else {
308
+ resolve(nil);
309
+ }
310
+ }
311
+
285
312
  RCT_EXPORT_METHOD(setExactBundlePath:(NSString *)path
286
313
  resolve:(RCTPromiseResolveBlock)resolve
287
314
  reject:(RCTPromiseRejectBlock)reject) {
@@ -46,10 +46,18 @@ namespace facebook::react {
46
46
  return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "getCurrentVersion", @selector(getCurrentVersion:resolve:reject:), args, count);
47
47
  }
48
48
 
49
+ static facebook::jsi::Value __hostFunction_NativeOtaHotUpdateSpecJSI_getUpdateMetadata(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
50
+ return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "getUpdateMetadata", @selector(getUpdateMetadata:resolve:reject:), args, count);
51
+ }
52
+
49
53
  static facebook::jsi::Value __hostFunction_NativeOtaHotUpdateSpecJSI_setCurrentVersion(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
50
54
  return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "setCurrentVersion", @selector(setCurrentVersion:resolve:reject:), args, count);
51
55
  }
52
56
 
57
+ static facebook::jsi::Value __hostFunction_NativeOtaHotUpdateSpecJSI_setUpdateMetadata(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
58
+ return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "setUpdateMetadata", @selector(setUpdateMetadata:resolve:reject:), args, count);
59
+ }
60
+
53
61
  static facebook::jsi::Value __hostFunction_NativeOtaHotUpdateSpecJSI_rollbackToPreviousBundle(facebook::jsi::Runtime& rt, TurboModule &turboModule, const facebook::jsi::Value* args, size_t count) {
54
62
  return static_cast<ObjCTurboModule&>(turboModule).invokeObjCMethod(rt, PromiseKind, "rollbackToPreviousBundle", @selector(rollbackToPreviousBundle:resolve:reject:), args, count);
55
63
  }
@@ -72,9 +80,15 @@ namespace facebook::react {
72
80
  methodMap_["getCurrentVersion"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateSpecJSI_getCurrentVersion};
73
81
 
74
82
 
83
+ methodMap_["getUpdateMetadata"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateSpecJSI_getUpdateMetadata};
84
+
85
+
75
86
  methodMap_["setCurrentVersion"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateSpecJSI_setCurrentVersion};
76
87
 
77
88
 
89
+ methodMap_["setUpdateMetadata"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateSpecJSI_setUpdateMetadata};
90
+
91
+
78
92
  methodMap_["rollbackToPreviousBundle"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateSpecJSI_rollbackToPreviousBundle};
79
93
 
80
94
  }
@@ -47,9 +47,15 @@
47
47
  - (void)getCurrentVersion:(double)a
48
48
  resolve:(RCTPromiseResolveBlock)resolve
49
49
  reject:(RCTPromiseRejectBlock)reject;
50
+ - (void)getUpdateMetadata:(double)a
51
+ resolve:(RCTPromiseResolveBlock)resolve
52
+ reject:(RCTPromiseRejectBlock)reject;
50
53
  - (void)setCurrentVersion:(NSString *)version
51
54
  resolve:(RCTPromiseResolveBlock)resolve
52
55
  reject:(RCTPromiseRejectBlock)reject;
56
+ - (void)setUpdateMetadata:(NSString *)metadata
57
+ resolve:(RCTPromiseResolveBlock)resolve
58
+ reject:(RCTPromiseRejectBlock)reject;
53
59
  - (void)rollbackToPreviousBundle:(double)a
54
60
  resolve:(RCTPromiseResolveBlock)resolve
55
61
  reject:(RCTPromiseRejectBlock)reject;
@@ -42,12 +42,24 @@ static jsi::Value __hostFunction_NativeOtaHotUpdateCxxSpecJSI_getCurrentVersion(
42
42
  count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asNumber()
43
43
  );
44
44
  }
45
+ static jsi::Value __hostFunction_NativeOtaHotUpdateCxxSpecJSI_getUpdateMetadata(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
46
+ return static_cast<NativeOtaHotUpdateCxxSpecJSI *>(&turboModule)->getUpdateMetadata(
47
+ rt,
48
+ count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asNumber()
49
+ );
50
+ }
45
51
  static jsi::Value __hostFunction_NativeOtaHotUpdateCxxSpecJSI_setCurrentVersion(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
46
52
  return static_cast<NativeOtaHotUpdateCxxSpecJSI *>(&turboModule)->setCurrentVersion(
47
53
  rt,
48
54
  count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt)
49
55
  );
50
56
  }
57
+ static jsi::Value __hostFunction_NativeOtaHotUpdateCxxSpecJSI_setUpdateMetadata(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
58
+ return static_cast<NativeOtaHotUpdateCxxSpecJSI *>(&turboModule)->setUpdateMetadata(
59
+ rt,
60
+ count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt)
61
+ );
62
+ }
51
63
  static jsi::Value __hostFunction_NativeOtaHotUpdateCxxSpecJSI_rollbackToPreviousBundle(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
52
64
  return static_cast<NativeOtaHotUpdateCxxSpecJSI *>(&turboModule)->rollbackToPreviousBundle(
53
65
  rt,
@@ -62,7 +74,9 @@ NativeOtaHotUpdateCxxSpecJSI::NativeOtaHotUpdateCxxSpecJSI(std::shared_ptr<CallI
62
74
  methodMap_["deleteBundle"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_deleteBundle};
63
75
  methodMap_["restart"] = MethodMetadata {0, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_restart};
64
76
  methodMap_["getCurrentVersion"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_getCurrentVersion};
77
+ methodMap_["getUpdateMetadata"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_getUpdateMetadata};
65
78
  methodMap_["setCurrentVersion"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_setCurrentVersion};
79
+ methodMap_["setUpdateMetadata"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_setUpdateMetadata};
66
80
  methodMap_["rollbackToPreviousBundle"] = MethodMetadata {1, __hostFunction_NativeOtaHotUpdateCxxSpecJSI_rollbackToPreviousBundle};
67
81
  }
68
82
 
@@ -25,7 +25,9 @@ public:
25
25
  virtual jsi::Value deleteBundle(jsi::Runtime &rt, double i) = 0;
26
26
  virtual void restart(jsi::Runtime &rt) = 0;
27
27
  virtual jsi::Value getCurrentVersion(jsi::Runtime &rt, double a) = 0;
28
+ virtual jsi::Value getUpdateMetadata(jsi::Runtime &rt, double a) = 0;
28
29
  virtual jsi::Value setCurrentVersion(jsi::Runtime &rt, jsi::String version) = 0;
30
+ virtual jsi::Value setUpdateMetadata(jsi::Runtime &rt, jsi::String metadata) = 0;
29
31
  virtual jsi::Value rollbackToPreviousBundle(jsi::Runtime &rt, double a) = 0;
30
32
 
31
33
  };
@@ -93,6 +95,14 @@ private:
93
95
  return bridging::callFromJs<jsi::Value>(
94
96
  rt, &T::getCurrentVersion, jsInvoker_, instance_, std::move(a));
95
97
  }
98
+ jsi::Value getUpdateMetadata(jsi::Runtime &rt, double a) override {
99
+ static_assert(
100
+ bridging::getParameterCount(&T::getUpdateMetadata) == 2,
101
+ "Expected getUpdateMetadata(...) to have 2 parameters");
102
+
103
+ return bridging::callFromJs<jsi::Value>(
104
+ rt, &T::getUpdateMetadata, jsInvoker_, instance_, std::move(a));
105
+ }
96
106
  jsi::Value setCurrentVersion(jsi::Runtime &rt, jsi::String version) override {
97
107
  static_assert(
98
108
  bridging::getParameterCount(&T::setCurrentVersion) == 2,
@@ -101,6 +111,14 @@ private:
101
111
  return bridging::callFromJs<jsi::Value>(
102
112
  rt, &T::setCurrentVersion, jsInvoker_, instance_, std::move(version));
103
113
  }
114
+ jsi::Value setUpdateMetadata(jsi::Runtime &rt, jsi::String metadata) override {
115
+ static_assert(
116
+ bridging::getParameterCount(&T::setUpdateMetadata) == 2,
117
+ "Expected setUpdateMetadata(...) to have 2 parameters");
118
+
119
+ return bridging::callFromJs<jsi::Value>(
120
+ rt, &T::setUpdateMetadata, jsInvoker_, instance_, std::move(metadata));
121
+ }
104
122
  jsi::Value rollbackToPreviousBundle(jsi::Runtime &rt, double a) override {
105
123
  static_assert(
106
124
  bridging::getParameterCount(&T::rollbackToPreviousBundle) == 2,
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeOtaHotUpdate.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAAmD,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAYpCC,gCAAmB,CAACC,YAAY,CAAO,cAAc,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_default","exports","default","TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeOtaHotUpdate.ts"],"mappings":";;;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAAmD,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAcpCC,gCAAmB,CAACC,YAAY,CAAO,cAAc,CAAC","ignoreList":[]}
@@ -44,6 +44,15 @@ function deleteBundlePath() {
44
44
  function getCurrentVersion() {
45
45
  return RNhotupdate.getCurrentVersion(0);
46
46
  }
47
+ function getUpdateMetadata() {
48
+ return RNhotupdate.getUpdateMetadata(0).then(metadataString => {
49
+ try {
50
+ return metadataString ? JSON.parse(metadataString) : null;
51
+ } catch (error) {
52
+ return Promise.reject(new Error('Error parsing metadata'));
53
+ }
54
+ });
55
+ }
47
56
  function rollbackToPreviousBundle() {
48
57
  return RNhotupdate.rollbackToPreviousBundle(0);
49
58
  }
@@ -54,6 +63,14 @@ async function getVersionAsNumber() {
54
63
  function setCurrentVersion(version) {
55
64
  return RNhotupdate.setCurrentVersion(version + '');
56
65
  }
66
+ function setUpdateMetadata(metadata) {
67
+ try {
68
+ const metadataString = JSON.stringify(metadata);
69
+ return RNhotupdate.setUpdateMetadata(metadataString);
70
+ } catch (error) {
71
+ return Promise.reject(new Error('Failed to stringify metadata'));
72
+ }
73
+ }
57
74
  async function resetApp() {
58
75
  RNhotupdate.restart();
59
76
  }
@@ -94,11 +111,14 @@ async function downloadBundleUri(downloadManager, uri, version, option) {
94
111
  return installFail(option);
95
112
  }
96
113
  setCurrentVersion(version);
114
+ if (option?.metadata) {
115
+ setUpdateMetadata(option.metadata);
116
+ }
97
117
  option?.updateSuccess?.();
98
118
  if (option?.restartAfterInstall) {
99
119
  setTimeout(() => {
100
120
  resetApp();
101
- }, 300);
121
+ }, option?.restartDelay || 300);
102
122
  }
103
123
  } catch (e) {
104
124
  installFail(option, e);
@@ -160,6 +180,8 @@ var _default = exports.default = {
160
180
  resetApp,
161
181
  getCurrentVersion: getVersionAsNumber,
162
182
  setCurrentVersion,
183
+ getUpdateMetadata,
184
+ setUpdateMetadata,
163
185
  rollbackToPreviousBundle,
164
186
  git: {
165
187
  checkForGitUpdate,
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNative","require","_index","_interopRequireDefault","e","__esModule","default","LINKING_ERROR","Platform","select","ios","isTurboModuleEnabled","global","__turboModuleProxy","OtaHotUpdateModule","NativeModules","OtaHotUpdate","RNhotupdate","Proxy","get","Error","downloadBundleFile","downloadManager","uri","headers","callback","res","config","fileCache","OS","fetch","progress","received","total","path","setupBundlePath","extension","setupExactBundlePath","setExactBundlePath","deleteBundlePath","deleteBundle","getCurrentVersion","rollbackToPreviousBundle","getVersionAsNumber","rawVersion","setCurrentVersion","version","resetApp","restart","removeBundle","restartAfterRemoved","then","data","setTimeout","installFail","option","updateFail","JSON","stringify","console","error","downloadBundleUri","currentVersion","success","extensionBundle","updateSuccess","restartAfterInstall","checkForGitUpdate","options","url","bundlePath","branch","Promise","all","git","getConfig","getBranchName","pull","pullUpdate","onProgress","folderName","onPullSuccess","onPullFailed","msg","clone","cloneRepo","bundle","onCloneSuccess","onCloneFailed","toString","onFinishProgress","_default","exports","removeUpdate","removeGitUpdate","folder"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNative","require","_index","_interopRequireDefault","e","__esModule","default","LINKING_ERROR","Platform","select","ios","isTurboModuleEnabled","global","__turboModuleProxy","OtaHotUpdateModule","NativeModules","OtaHotUpdate","RNhotupdate","Proxy","get","Error","downloadBundleFile","downloadManager","uri","headers","callback","res","config","fileCache","OS","fetch","progress","received","total","path","setupBundlePath","extension","setupExactBundlePath","setExactBundlePath","deleteBundlePath","deleteBundle","getCurrentVersion","getUpdateMetadata","then","metadataString","JSON","parse","error","Promise","reject","rollbackToPreviousBundle","getVersionAsNumber","rawVersion","setCurrentVersion","version","setUpdateMetadata","metadata","stringify","resetApp","restart","removeBundle","restartAfterRemoved","data","setTimeout","installFail","option","updateFail","console","downloadBundleUri","currentVersion","success","extensionBundle","updateSuccess","restartAfterInstall","restartDelay","checkForGitUpdate","options","url","bundlePath","branch","all","git","getConfig","getBranchName","pull","pullUpdate","onProgress","folderName","onPullSuccess","onPullFailed","msg","clone","cloneRepo","bundle","onCloneSuccess","onCloneFailed","toString","onFinishProgress","_default","exports","removeUpdate","removeGitUpdate","folder"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeOtaHotUpdate.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AAYlD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,cAAc,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["TurboModuleRegistry","getEnforcing"],"sourceRoot":"../../src","sources":["NativeOtaHotUpdate.ts"],"mappings":";;AACA,SAASA,mBAAmB,QAAQ,cAAc;AAclD,eAAeA,mBAAmB,CAACC,YAAY,CAAO,cAAc,CAAC","ignoreList":[]}
@@ -39,6 +39,15 @@ function deleteBundlePath() {
39
39
  function getCurrentVersion() {
40
40
  return RNhotupdate.getCurrentVersion(0);
41
41
  }
42
+ function getUpdateMetadata() {
43
+ return RNhotupdate.getUpdateMetadata(0).then(metadataString => {
44
+ try {
45
+ return metadataString ? JSON.parse(metadataString) : null;
46
+ } catch (error) {
47
+ return Promise.reject(new Error('Error parsing metadata'));
48
+ }
49
+ });
50
+ }
42
51
  function rollbackToPreviousBundle() {
43
52
  return RNhotupdate.rollbackToPreviousBundle(0);
44
53
  }
@@ -49,6 +58,14 @@ async function getVersionAsNumber() {
49
58
  function setCurrentVersion(version) {
50
59
  return RNhotupdate.setCurrentVersion(version + '');
51
60
  }
61
+ function setUpdateMetadata(metadata) {
62
+ try {
63
+ const metadataString = JSON.stringify(metadata);
64
+ return RNhotupdate.setUpdateMetadata(metadataString);
65
+ } catch (error) {
66
+ return Promise.reject(new Error('Failed to stringify metadata'));
67
+ }
68
+ }
52
69
  async function resetApp() {
53
70
  RNhotupdate.restart();
54
71
  }
@@ -89,11 +106,14 @@ async function downloadBundleUri(downloadManager, uri, version, option) {
89
106
  return installFail(option);
90
107
  }
91
108
  setCurrentVersion(version);
109
+ if (option?.metadata) {
110
+ setUpdateMetadata(option.metadata);
111
+ }
92
112
  option?.updateSuccess?.();
93
113
  if (option?.restartAfterInstall) {
94
114
  setTimeout(() => {
95
115
  resetApp();
96
- }, 300);
116
+ }, option?.restartDelay || 300);
97
117
  }
98
118
  } catch (e) {
99
119
  installFail(option, e);
@@ -155,6 +175,8 @@ export default {
155
175
  resetApp,
156
176
  getCurrentVersion: getVersionAsNumber,
157
177
  setCurrentVersion,
178
+ getUpdateMetadata,
179
+ setUpdateMetadata,
158
180
  rollbackToPreviousBundle,
159
181
  git: {
160
182
  checkForGitUpdate,
@@ -1 +1 @@
1
- {"version":3,"names":["NativeModules","Platform","git","LINKING_ERROR","select","ios","default","isTurboModuleEnabled","global","__turboModuleProxy","OtaHotUpdateModule","require","OtaHotUpdate","RNhotupdate","Proxy","get","Error","downloadBundleFile","downloadManager","uri","headers","callback","res","config","fileCache","OS","fetch","progress","received","total","path","setupBundlePath","extension","setupExactBundlePath","setExactBundlePath","deleteBundlePath","deleteBundle","getCurrentVersion","rollbackToPreviousBundle","getVersionAsNumber","rawVersion","setCurrentVersion","version","resetApp","restart","removeBundle","restartAfterRemoved","then","data","setTimeout","installFail","option","e","updateFail","JSON","stringify","console","error","downloadBundleUri","currentVersion","success","extensionBundle","updateSuccess","restartAfterInstall","checkForGitUpdate","options","url","bundlePath","branch","Promise","all","getConfig","getBranchName","pull","pullUpdate","onProgress","folderName","onPullSuccess","onPullFailed","msg","clone","cloneRepo","bundle","onCloneSuccess","onCloneFailed","toString","onFinishProgress","removeUpdate","removeGitUpdate","folder"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAGtD,OAAOC,GAAG,MAAM,iBAAQ;AAExB,MAAMC,aAAa,GACjB,sFAAsF,GACtFF,QAAQ,CAACG,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;;AAEjC;AACA,MAAMC,oBAAoB,GAAGC,MAAM,CAACC,kBAAkB,IAAI,IAAI;AAE9D,MAAMC,kBAAkB,GAAGH,oBAAoB,GAC3CI,OAAO,CAAC,sBAAsB,CAAC,CAACL,OAAO,GACvCN,aAAa,CAACY,YAAY;AAE9B,MAAMC,WAAW,GAAGH,kBAAkB,GAClCA,kBAAkB,GAClB,IAAII,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACb,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAEL,MAAMc,kBAAkB,GAAG,MAAAA,CACzBC,eAAgC,EAChCC,GAAW,EACXC,OAAgB,EAChBC,QAAoD,KACjD;EACH,MAAMC,GAAG,GAAG,MAAMJ,eAAe,CAC9BK,MAAM,CAAC;IACNC,SAAS,EAAEvB,QAAQ,CAACwB,EAAE,KAAK;EAC7B,CAAC,CAAC,CACDC,KAAK,CAAC,KAAK,EAAEP,GAAG,EAAE;IACjB,GAAGC;EACL,CAAC,CAAC,CACDO,QAAQ,CAAC,CAACC,QAAQ,EAAEC,KAAK,KAAK;IAC7B,IAAIR,QAAQ,EAAE;MACZA,QAAQ,CAACO,QAAQ,EAAEC,KAAK,CAAC;IAC3B;EACF,CAAC,CAAC;EACJ,OAAOP,GAAG,CAACQ,IAAI,CAAC,CAAC;AACnB,CAAC;AACD,SAASC,eAAeA,CAACD,IAAY,EAAEE,SAAkB,EAAoB;EAC3E,OAAOnB,WAAW,CAACkB,eAAe,CAACD,IAAI,EAAEE,SAAS,CAAC;AACrD;AACA,SAASC,oBAAoBA,CAACH,IAAY,EAAoB;EAC5D,OAAOjB,WAAW,CAACqB,kBAAkB,CAACJ,IAAI,CAAC;AAC7C;AACA,SAASK,gBAAgBA,CAAA,EAAqB;EAC5C,OAAOtB,WAAW,CAACuB,YAAY,CAAC,CAAC,CAAC;AACpC;AACA,SAASC,iBAAiBA,CAAA,EAAoB;EAC5C,OAAOxB,WAAW,CAACwB,iBAAiB,CAAC,CAAC,CAAC;AACzC;AACA,SAASC,wBAAwBA,CAAA,EAAqB;EACpD,OAAOzB,WAAW,CAACyB,wBAAwB,CAAC,CAAC,CAAC;AAChD;AACA,eAAeC,kBAAkBA,CAAA,EAAG;EAClC,MAAMC,UAAU,GAAG,MAAMH,iBAAiB,CAAC,CAAC;EAC5C,OAAO,CAACG,UAAU;AACpB;AACA,SAASC,iBAAiBA,CAACC,OAAe,EAAoB;EAC5D,OAAO7B,WAAW,CAAC4B,iBAAiB,CAACC,OAAO,GAAG,EAAE,CAAC;AACpD;AACA,eAAeC,QAAQA,CAAA,EAAG;EACxB9B,WAAW,CAAC+B,OAAO,CAAC,CAAC;AACvB;AACA,SAASC,YAAYA,CAACC,mBAA6B,EAAE;EACnDX,gBAAgB,CAAC,CAAC,CAACY,IAAI,CAAEC,IAAI,IAAK;IAChC,IAAIA,IAAI,IAAIF,mBAAmB,EAAE;MAC/BG,UAAU,CAAC,MAAM;QACfN,QAAQ,CAAC,CAAC;MACZ,CAAC,EAAE,GAAG,CAAC;MACP,IAAIK,IAAI,EAAE;QACRP,iBAAiB,CAAC,CAAC,CAAC;MACtB;IACF;EACF,CAAC,CAAC;AACJ;AACA,MAAMS,WAAW,GAAGA,CAACC,MAAqB,EAAEC,CAAO,KAAK;EACtDD,MAAM,EAAEE,UAAU,GAAGC,IAAI,CAACC,SAAS,CAACH,CAAC,CAAC,CAAC;EACvCI,OAAO,CAACC,KAAK,CAAC,sBAAsB,EAAEH,IAAI,CAACC,SAAS,CAACH,CAAC,CAAC,CAAC;AAC1D,CAAC;AACD,eAAeM,iBAAiBA,CAC9BxC,eAAgC,EAChCC,GAAW,EACXuB,OAAe,EACfS,MAAqB,EACrB;EACA,IAAI,CAAChC,GAAG,EAAE;IACR,OAAO+B,WAAW,CAACC,MAAM,EAAE,0BAA0B,CAAC;EACxD;EACA,IAAI,CAACT,OAAO,EAAE;IACZ,OAAOQ,WAAW,CAACC,MAAM,EAAE,8BAA8B,CAAC;EAC5D;EAEA,MAAMQ,cAAc,GAAG,MAAMpB,kBAAkB,CAAC,CAAC;EACjD,IAAIG,OAAO,IAAIiB,cAAc,EAAE;IAC7B,OAAOT,WAAW,CAChBC,MAAM,EACN,gGAAgG,GAC9FQ,cACJ,CAAC;EACH;EAEA,IAAI;IACF,MAAM7B,IAAI,GAAG,MAAMb,kBAAkB,CACnCC,eAAe,EACfC,GAAG,EACHgC,MAAM,EAAE/B,OAAO,EACf+B,MAAM,EAAExB,QACV,CAAC;IAED,IAAI,CAACG,IAAI,EAAE;MACT,OAAOoB,WAAW,CAACC,MAAM,CAAC;IAC5B;IAEA,MAAMS,OAAO,GAAG,MAAM7B,eAAe,CAACD,IAAI,EAAEqB,MAAM,EAAEU,eAAe,CAAC;IACpE,IAAI,CAACD,OAAO,EAAE;MACZ,OAAOV,WAAW,CAACC,MAAM,CAAC;IAC5B;IAEAV,iBAAiB,CAACC,OAAO,CAAC;IAC1BS,MAAM,EAAEW,aAAa,GAAG,CAAC;IAEzB,IAAIX,MAAM,EAAEY,mBAAmB,EAAE;MAC/Bd,UAAU,CAAC,MAAM;QACfN,QAAQ,CAAC,CAAC;MACZ,CAAC,EAAE,GAAG,CAAC;IACT;EACF,CAAC,CAAC,OAAOS,CAAC,EAAE;IACVF,WAAW,CAACC,MAAM,EAAEC,CAAC,CAAC;EACxB;AACF;AACA,MAAMY,iBAAiB,GAAG,MAAOC,OAAwB,IAAK;EAC5D,IAAI;IACF,IAAI,CAACA,OAAO,CAACC,GAAG,IAAI,CAACD,OAAO,CAACE,UAAU,EAAE;MACvC,MAAM,IAAInD,KAAK,CAAC,sCAAsC,CAAC;IACzD;IACA,MAAM,CAACO,MAAM,EAAE6C,MAAM,CAAC,GAAG,MAAMC,OAAO,CAACC,GAAG,CAAC,CACzCpE,GAAG,CAACqE,SAAS,CAAC,CAAC,EACfrE,GAAG,CAACsE,aAAa,CAAC,CAAC,CACpB,CAAC;IACF,IAAIJ,MAAM,IAAI7C,MAAM,EAAE;MACpB,MAAMkD,IAAI,GAAG,MAAMvE,GAAG,CAACwE,UAAU,CAAC;QAChCN,MAAM;QACNO,UAAU,EAAEV,OAAO,EAAEU,UAAU;QAC/BC,UAAU,EAAEX,OAAO,EAAEW;MACvB,CAAC,CAAC;MACF,IAAIH,IAAI,CAACb,OAAO,EAAE;QAChBK,OAAO,EAAEY,aAAa,GAAG,CAAC;QAC1B,IAAIZ,OAAO,EAAEF,mBAAmB,EAAE;UAChCd,UAAU,CAAC,MAAM;YACfN,QAAQ,CAAC,CAAC;UACZ,CAAC,EAAE,GAAG,CAAC;QACT;MACF,CAAC,MAAM;QACLsB,OAAO,EAAEa,YAAY,GAAGL,IAAI,CAACM,GAAG,CAAC;MACnC;IACF,CAAC,MAAM;MACL,MAAMC,KAAK,GAAG,MAAM9E,GAAG,CAAC+E,SAAS,CAAC;QAChCN,UAAU,EAAEV,OAAO,EAAEU,UAAU;QAC/BC,UAAU,EAAEX,OAAO,EAAEW,UAAU;QAC/BV,GAAG,EAAED,OAAO,CAACC,GAAG;QAChBE,MAAM,EAAEH,OAAO,EAAEG,MAAM;QACvBD,UAAU,EAAEF,OAAO,CAACE;MACtB,CAAC,CAAC;MACF,IAAIa,KAAK,CAACpB,OAAO,IAAIoB,KAAK,CAACE,MAAM,EAAE;QACjC,MAAMjD,oBAAoB,CAAC+C,KAAK,CAACE,MAAM,CAAC;QACxCjB,OAAO,EAAEkB,cAAc,GAAG,CAAC;QAC3B,IAAIlB,OAAO,EAAEF,mBAAmB,EAAE;UAChCd,UAAU,CAAC,MAAM;YACfN,QAAQ,CAAC,CAAC;UACZ,CAAC,EAAE,GAAG,CAAC;QACT;MACF,CAAC,MAAM;QACLsB,OAAO,EAAEmB,aAAa,GAAGJ,KAAK,CAACD,GAAG,CAAC;MACrC;IACF;EACF,CAAC,CAAC,OAAO3B,CAAM,EAAE;IACfa,OAAO,EAAEmB,aAAa,GAAGhC,CAAC,CAACiC,QAAQ,CAAC,CAAC,CAAC;EACxC,CAAC,SAAS;IACRpB,OAAO,EAAEqB,gBAAgB,GAAG,CAAC;EAC/B;AACF,CAAC;AACD,eAAe;EACbvD,eAAe;EACfE,oBAAoB;EACpBsD,YAAY,EAAE1C,YAAY;EAC1Ba,iBAAiB;EACjBf,QAAQ;EACRN,iBAAiB,EAAEE,kBAAkB;EACrCE,iBAAiB;EACjBH,wBAAwB;EACxBpC,GAAG,EAAE;IACH8D,iBAAiB;IACjB,GAAG9D,GAAG;IACNsF,eAAe,EAAGC,MAAe,IAAK;MACpC5E,WAAW,CAACqB,kBAAkB,CAAC,EAAE,CAAC;MAClChC,GAAG,CAACsF,eAAe,CAACC,MAAM,CAAC;IAC7B;EACF;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["NativeModules","Platform","git","LINKING_ERROR","select","ios","default","isTurboModuleEnabled","global","__turboModuleProxy","OtaHotUpdateModule","require","OtaHotUpdate","RNhotupdate","Proxy","get","Error","downloadBundleFile","downloadManager","uri","headers","callback","res","config","fileCache","OS","fetch","progress","received","total","path","setupBundlePath","extension","setupExactBundlePath","setExactBundlePath","deleteBundlePath","deleteBundle","getCurrentVersion","getUpdateMetadata","then","metadataString","JSON","parse","error","Promise","reject","rollbackToPreviousBundle","getVersionAsNumber","rawVersion","setCurrentVersion","version","setUpdateMetadata","metadata","stringify","resetApp","restart","removeBundle","restartAfterRemoved","data","setTimeout","installFail","option","e","updateFail","console","downloadBundleUri","currentVersion","success","extensionBundle","updateSuccess","restartAfterInstall","restartDelay","checkForGitUpdate","options","url","bundlePath","branch","all","getConfig","getBranchName","pull","pullUpdate","onProgress","folderName","onPullSuccess","onPullFailed","msg","clone","cloneRepo","bundle","onCloneSuccess","onCloneFailed","toString","onFinishProgress","removeUpdate","removeGitUpdate","folder"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"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","ignoreList":[]}
@@ -5,7 +5,9 @@ export interface Spec extends TurboModule {
5
5
  deleteBundle(i: number): Promise<boolean>;
6
6
  restart(): void;
7
7
  getCurrentVersion(a: number): Promise<string>;
8
+ getUpdateMetadata(a: number): Promise<string>;
8
9
  setCurrentVersion(version: string): Promise<boolean>;
10
+ setUpdateMetadata(metadata: string): Promise<boolean>;
9
11
  rollbackToPreviousBundle(a: number): Promise<boolean>;
10
12
  }
11
13
  declare const _default: Spec;
@@ -1 +1 @@
1
- {"version":3,"file":"NativeOtaHotUpdate.d.ts","sourceRoot":"","sources":["../../../../src/NativeOtaHotUpdate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,OAAO,IAAI,IAAI,CAAC;IAChB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,wBAAwB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACvD;;AAED,wBAAsE"}
1
+ {"version":3,"file":"NativeOtaHotUpdate.d.ts","sourceRoot":"","sources":["../../../../src/NativeOtaHotUpdate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,OAAO,IAAI,IAAI,CAAC;IAChB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtD,wBAAwB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACvD;;AAED,wBAAsE"}
@@ -2,9 +2,11 @@ import type { DownloadManager } from './download';
2
2
  import type { UpdateGitOption, UpdateOption } from './type';
3
3
  declare function setupBundlePath(path: string, extension?: string): Promise<boolean>;
4
4
  declare function setupExactBundlePath(path: string): Promise<boolean>;
5
+ declare function getUpdateMetadata(): Promise<object | null>;
5
6
  declare function rollbackToPreviousBundle(): Promise<boolean>;
6
7
  declare function getVersionAsNumber(): Promise<number>;
7
8
  declare function setCurrentVersion(version: number): Promise<boolean>;
9
+ declare function setUpdateMetadata(metadata: any): Promise<boolean>;
8
10
  declare function resetApp(): Promise<void>;
9
11
  declare function removeBundle(restartAfterRemoved?: boolean): void;
10
12
  declare function downloadBundleUri(downloadManager: DownloadManager, uri: string, version: number, option?: UpdateOption): Promise<void>;
@@ -16,6 +18,8 @@ declare const _default: {
16
18
  resetApp: typeof resetApp;
17
19
  getCurrentVersion: typeof getVersionAsNumber;
18
20
  setCurrentVersion: typeof setCurrentVersion;
21
+ getUpdateMetadata: typeof getUpdateMetadata;
22
+ setUpdateMetadata: typeof setUpdateMetadata;
19
23
  rollbackToPreviousBundle: typeof rollbackToPreviousBundle;
20
24
  git: {
21
25
  removeGitUpdate: (folder?: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AA+C5D,iBAAS,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE3E;AACD,iBAAS,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE5D;AAOD,iBAAS,wBAAwB,IAAI,OAAO,CAAC,OAAO,CAAC,CAEpD;AACD,iBAAe,kBAAkB,oBAGhC;AACD,iBAAS,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE5D;AACD,iBAAe,QAAQ,kBAEtB;AACD,iBAAS,YAAY,CAAC,mBAAmB,CAAC,EAAE,OAAO,QAWlD;AAKD,iBAAe,iBAAiB,CAC9B,eAAe,EAAE,eAAe,EAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,YAAY,iBA8CtB;;;;;;;;;;;mCAgE8B,MAAM;;;;;;;;;;;;;;;;oBA5LX,CAAC;iBAEd,CAAC;;;qCA2H4B,eAAe;;;AAmDzD,wBAiBE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AA+C5D,iBAAS,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE3E;AACD,iBAAS,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE5D;AAOD,iBAAS,iBAAiB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CASnD;AACD,iBAAS,wBAAwB,IAAI,OAAO,CAAC,OAAO,CAAC,CAEpD;AACD,iBAAe,kBAAkB,oBAGhC;AACD,iBAAS,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE5D;AACD,iBAAS,iBAAiB,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAO1D;AACD,iBAAe,QAAQ,kBAEtB;AACD,iBAAS,YAAY,CAAC,mBAAmB,CAAC,EAAE,OAAO,QAWlD;AAKD,iBAAe,iBAAiB,CAC9B,eAAe,EAAE,eAAe,EAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,YAAY,iBAiDtB;;;;;;;;;;;;;mCAkE8B,MAAM;;;;;;;;;;;;;;;;oBAnNX,CAAC;iBAEd,CAAC;;;qCAgJ4B,eAAe;;;AAmDzD,wBAmBE"}
@@ -24,11 +24,21 @@ export interface UpdateOption {
24
24
  * Default: `false`.
25
25
  */
26
26
  restartAfterInstall?: boolean;
27
+ /**
28
+ * Delay in milliseconds before restarting the app after installing the update.
29
+ * Default: 300ms.
30
+ */
31
+ restartDelay?: number;
27
32
  /**
28
33
  * Custom extension for the bundle file, if applicable.
29
34
  * For example: '.jsbundle'.
30
35
  */
31
36
  extensionBundle?: string;
37
+ /**
38
+ * Metadata for the update.
39
+ * Can contain information such as version details, description, etc.
40
+ */
41
+ metadata?: any;
32
42
  }
33
43
  /**
34
44
  * Options for updating a Git repository.
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../src/type.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC;;;;OAIG;IACH,QAAQ,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjD;;OAEG;IACH,aAAa,CAAC,IAAI,IAAI,CAAC;IAEvB;;;OAGG;IACH,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC;IAE5C;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;;OAIG;IACH,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,aAAa,CAAC,IAAI,IAAI,CAAC;IACvB;;OAEG;IACH,YAAY,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC;;OAEG;IACH,cAAc,CAAC,IAAI,IAAI,CAAC;IACxB;;OAEG;IACH,aAAa,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;OAEG;IACH,gBAAgB,CAAC,IAAI,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../src/type.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC;;;;OAIG;IACH,QAAQ,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjD;;OAEG;IACH,aAAa,CAAC,IAAI,IAAI,CAAC;IAEvB;;;OAGG;IACH,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC;IAE5C;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAA;CACf;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;;OAIG;IACH,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,aAAa,CAAC,IAAI,IAAI,CAAC;IACvB;;OAEG;IACH,YAAY,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC;;OAEG;IACH,cAAc,CAAC,IAAI,IAAI,CAAC;IACxB;;OAEG;IACH,aAAa,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;OAEG;IACH,gBAAgB,CAAC,IAAI,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB"}
@@ -5,7 +5,9 @@ export interface Spec extends TurboModule {
5
5
  deleteBundle(i: number): Promise<boolean>;
6
6
  restart(): void;
7
7
  getCurrentVersion(a: number): Promise<string>;
8
+ getUpdateMetadata(a: number): Promise<string>;
8
9
  setCurrentVersion(version: string): Promise<boolean>;
10
+ setUpdateMetadata(metadata: string): Promise<boolean>;
9
11
  rollbackToPreviousBundle(a: number): Promise<boolean>;
10
12
  }
11
13
  declare const _default: Spec;
@@ -1 +1 @@
1
- {"version":3,"file":"NativeOtaHotUpdate.d.ts","sourceRoot":"","sources":["../../../../src/NativeOtaHotUpdate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,OAAO,IAAI,IAAI,CAAC;IAChB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,wBAAwB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACvD;;AAED,wBAAsE"}
1
+ {"version":3,"file":"NativeOtaHotUpdate.d.ts","sourceRoot":"","sources":["../../../../src/NativeOtaHotUpdate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAGhD,MAAM,WAAW,IAAK,SAAQ,WAAW;IACvC,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnD,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,OAAO,IAAI,IAAI,CAAC;IAChB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9C,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACrD,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtD,wBAAwB,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACvD;;AAED,wBAAsE"}
@@ -2,9 +2,11 @@ import type { DownloadManager } from './download';
2
2
  import type { UpdateGitOption, UpdateOption } from './type';
3
3
  declare function setupBundlePath(path: string, extension?: string): Promise<boolean>;
4
4
  declare function setupExactBundlePath(path: string): Promise<boolean>;
5
+ declare function getUpdateMetadata(): Promise<object | null>;
5
6
  declare function rollbackToPreviousBundle(): Promise<boolean>;
6
7
  declare function getVersionAsNumber(): Promise<number>;
7
8
  declare function setCurrentVersion(version: number): Promise<boolean>;
9
+ declare function setUpdateMetadata(metadata: any): Promise<boolean>;
8
10
  declare function resetApp(): Promise<void>;
9
11
  declare function removeBundle(restartAfterRemoved?: boolean): void;
10
12
  declare function downloadBundleUri(downloadManager: DownloadManager, uri: string, version: number, option?: UpdateOption): Promise<void>;
@@ -16,6 +18,8 @@ declare const _default: {
16
18
  resetApp: typeof resetApp;
17
19
  getCurrentVersion: typeof getVersionAsNumber;
18
20
  setCurrentVersion: typeof setCurrentVersion;
21
+ getUpdateMetadata: typeof getUpdateMetadata;
22
+ setUpdateMetadata: typeof setUpdateMetadata;
19
23
  rollbackToPreviousBundle: typeof rollbackToPreviousBundle;
20
24
  git: {
21
25
  removeGitUpdate: (folder?: string) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AA+C5D,iBAAS,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE3E;AACD,iBAAS,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE5D;AAOD,iBAAS,wBAAwB,IAAI,OAAO,CAAC,OAAO,CAAC,CAEpD;AACD,iBAAe,kBAAkB,oBAGhC;AACD,iBAAS,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE5D;AACD,iBAAe,QAAQ,kBAEtB;AACD,iBAAS,YAAY,CAAC,mBAAmB,CAAC,EAAE,OAAO,QAWlD;AAKD,iBAAe,iBAAiB,CAC9B,eAAe,EAAE,eAAe,EAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,YAAY,iBA8CtB;;;;;;;;;;;mCAgE8B,MAAM;;;;;;;;;;;;;;;;oBA5LX,CAAC;iBAEd,CAAC;;;qCA2H4B,eAAe;;;AAmDzD,wBAiBE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AA+C5D,iBAAS,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE3E;AACD,iBAAS,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE5D;AAOD,iBAAS,iBAAiB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CASnD;AACD,iBAAS,wBAAwB,IAAI,OAAO,CAAC,OAAO,CAAC,CAEpD;AACD,iBAAe,kBAAkB,oBAGhC;AACD,iBAAS,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE5D;AACD,iBAAS,iBAAiB,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAO1D;AACD,iBAAe,QAAQ,kBAEtB;AACD,iBAAS,YAAY,CAAC,mBAAmB,CAAC,EAAE,OAAO,QAWlD;AAKD,iBAAe,iBAAiB,CAC9B,eAAe,EAAE,eAAe,EAChC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,YAAY,iBAiDtB;;;;;;;;;;;;;mCAkE8B,MAAM;;;;;;;;;;;;;;;;oBAnNX,CAAC;iBAEd,CAAC;;;qCAgJ4B,eAAe;;;AAmDzD,wBAmBE"}
@@ -24,11 +24,21 @@ export interface UpdateOption {
24
24
  * Default: `false`.
25
25
  */
26
26
  restartAfterInstall?: boolean;
27
+ /**
28
+ * Delay in milliseconds before restarting the app after installing the update.
29
+ * Default: 300ms.
30
+ */
31
+ restartDelay?: number;
27
32
  /**
28
33
  * Custom extension for the bundle file, if applicable.
29
34
  * For example: '.jsbundle'.
30
35
  */
31
36
  extensionBundle?: string;
37
+ /**
38
+ * Metadata for the update.
39
+ * Can contain information such as version details, description, etc.
40
+ */
41
+ metadata?: any;
32
42
  }
33
43
  /**
34
44
  * Options for updating a Git repository.
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../src/type.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC;;;;OAIG;IACH,QAAQ,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjD;;OAEG;IACH,aAAa,CAAC,IAAI,IAAI,CAAC;IAEvB;;;OAGG;IACH,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC;IAE5C;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;;OAIG;IACH,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,aAAa,CAAC,IAAI,IAAI,CAAC;IACvB;;OAEG;IACH,YAAY,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC;;OAEG;IACH,cAAc,CAAC,IAAI,IAAI,CAAC;IACxB;;OAEG;IACH,aAAa,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;OAEG;IACH,gBAAgB,CAAC,IAAI,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../src/type.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAEjC;;;;OAIG;IACH,QAAQ,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjD;;OAEG;IACH,aAAa,CAAC,IAAI,IAAI,CAAC;IAEvB;;;OAGG;IACH,UAAU,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC;IAE5C;;;OAGG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAE9B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAA;CACf;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;;OAIG;IACH,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,aAAa,CAAC,IAAI,IAAI,CAAC;IACvB;;OAEG;IACH,YAAY,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC;;OAEG;IACH,cAAc,CAAC,IAAI,IAAI,CAAC;IACxB;;OAEG;IACH,aAAa,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B;;OAEG;IACH,gBAAgB,CAAC,IAAI,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,UAAU;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnD;;;OAGG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native-ota-hot-update",
3
- "version": "2.1.2",
3
+ "version": "2.1.4",
4
4
  "description": "Hot update for react native",
5
5
  "source": "./src/index.tsx",
6
6
  "main": "./lib/commonjs/index.js",
@@ -7,7 +7,9 @@ export interface Spec extends TurboModule {
7
7
  deleteBundle(i: number): Promise<boolean>;
8
8
  restart(): void;
9
9
  getCurrentVersion(a: number): Promise<string>;
10
+ getUpdateMetadata(a: number): Promise<string>;
10
11
  setCurrentVersion(version: string): Promise<boolean>;
12
+ setUpdateMetadata(metadata: string): Promise<boolean>;
11
13
  rollbackToPreviousBundle(a: number): Promise<boolean>;
12
14
  }
13
15
 
package/src/index.tsx CHANGED
@@ -59,6 +59,16 @@ function deleteBundlePath(): Promise<boolean> {
59
59
  function getCurrentVersion(): Promise<string> {
60
60
  return RNhotupdate.getCurrentVersion(0);
61
61
  }
62
+ function getUpdateMetadata(): Promise<object | null> {
63
+ return RNhotupdate.getUpdateMetadata(0)
64
+ .then((metadataString: string | null) => {
65
+ try {
66
+ return metadataString ? JSON.parse(metadataString) : null;
67
+ } catch (error) {
68
+ return Promise.reject(new Error('Error parsing metadata'));
69
+ }
70
+ });
71
+ }
62
72
  function rollbackToPreviousBundle(): Promise<boolean> {
63
73
  return RNhotupdate.rollbackToPreviousBundle(0);
64
74
  }
@@ -69,6 +79,14 @@ async function getVersionAsNumber() {
69
79
  function setCurrentVersion(version: number): Promise<boolean> {
70
80
  return RNhotupdate.setCurrentVersion(version + '');
71
81
  }
82
+ function setUpdateMetadata(metadata: any): Promise<boolean> {
83
+ try {
84
+ const metadataString = JSON.stringify(metadata);
85
+ return RNhotupdate.setUpdateMetadata(metadataString);
86
+ } catch (error) {
87
+ return Promise.reject(new Error('Failed to stringify metadata'));
88
+ }
89
+ }
72
90
  async function resetApp() {
73
91
  RNhotupdate.restart();
74
92
  }
@@ -128,12 +146,15 @@ async function downloadBundleUri(
128
146
  }
129
147
 
130
148
  setCurrentVersion(version);
149
+ if (option?.metadata) {
150
+ setUpdateMetadata(option.metadata);
151
+ }
131
152
  option?.updateSuccess?.();
132
153
 
133
154
  if (option?.restartAfterInstall) {
134
155
  setTimeout(() => {
135
156
  resetApp();
136
- }, 300);
157
+ }, option?.restartDelay || 300);
137
158
  }
138
159
  } catch (e) {
139
160
  installFail(option, e);
@@ -198,6 +219,8 @@ export default {
198
219
  resetApp,
199
220
  getCurrentVersion: getVersionAsNumber,
200
221
  setCurrentVersion,
222
+ getUpdateMetadata,
223
+ setUpdateMetadata,
201
224
  rollbackToPreviousBundle,
202
225
  git: {
203
226
  checkForGitUpdate,
package/src/type.ts CHANGED
@@ -29,11 +29,23 @@ export interface UpdateOption {
29
29
  */
30
30
  restartAfterInstall?: boolean;
31
31
 
32
+ /**
33
+ * Delay in milliseconds before restarting the app after installing the update.
34
+ * Default: 300ms.
35
+ */
36
+ restartDelay?: number;
37
+
32
38
  /**
33
39
  * Custom extension for the bundle file, if applicable.
34
40
  * For example: '.jsbundle'.
35
41
  */
36
42
  extensionBundle?: string;
43
+
44
+ /**
45
+ * Metadata for the update.
46
+ * Can contain information such as version details, description, etc.
47
+ */
48
+ metadata?: any
37
49
  }
38
50
 
39
51
  /**