@hot-updater/react-native 0.17.0 → 0.18.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/HotUpdater.podspec +7 -11
- package/android/src/main/java/com/hotupdater/BundleFileStorageService.kt +200 -0
- package/android/src/main/java/com/hotupdater/FileManagerService.kt +104 -0
- package/android/src/main/java/com/hotupdater/HotUpdater.kt +62 -305
- package/android/src/main/java/com/hotupdater/HotUpdaterFactory.kt +49 -0
- package/android/src/main/java/com/hotupdater/HotUpdaterImpl.kt +176 -0
- package/android/src/main/java/com/hotupdater/HttpDownloadService.kt +98 -0
- package/android/src/main/java/com/hotupdater/VersionedPreferencesService.kt +69 -0
- package/android/src/main/java/com/hotupdater/ZipFileUnzipService.kt +52 -0
- package/android/src/newarch/HotUpdaterModule.kt +31 -34
- package/android/src/oldarch/HotUpdaterModule.kt +32 -34
- package/android/src/oldarch/HotUpdaterSpec.kt +2 -9
- package/ios/HotUpdater/Internal/BundleFileStorageService.swift +593 -0
- package/ios/HotUpdater/Internal/FileManagerService.swift +97 -0
- package/ios/HotUpdater/Internal/HotUpdater-Bridging-Header.h +8 -0
- package/ios/HotUpdater/Internal/HotUpdater.mm +241 -0
- package/ios/HotUpdater/Internal/HotUpdaterFactory.swift +24 -0
- package/ios/HotUpdater/Internal/HotUpdaterImpl.swift +143 -0
- package/ios/HotUpdater/Internal/NotificationExtension.swift +6 -0
- package/ios/HotUpdater/Internal/SSZipArchiveUnzipService.swift +25 -0
- package/ios/HotUpdater/Internal/URLSessionDownloadService.swift +101 -0
- package/ios/HotUpdater/Internal/VersionedPreferencesService.swift +82 -0
- package/ios/HotUpdater/Public/HotUpdater.h +29 -0
- package/lib/commonjs/checkForUpdate.js +70 -0
- package/lib/commonjs/checkForUpdate.js.map +1 -0
- package/lib/commonjs/error.js +14 -0
- package/lib/commonjs/error.js.map +1 -0
- package/lib/commonjs/fetchUpdateInfo.js +74 -0
- package/lib/commonjs/fetchUpdateInfo.js.map +1 -0
- package/lib/commonjs/hooks/useEventCallback.js +17 -0
- package/lib/commonjs/hooks/useEventCallback.js.map +1 -0
- package/lib/commonjs/index.js +234 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/native.js +132 -0
- package/lib/commonjs/native.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/runUpdateProcess.js +69 -0
- package/lib/commonjs/runUpdateProcess.js.map +1 -0
- package/lib/commonjs/specs/NativeHotUpdater.js +9 -0
- package/lib/commonjs/specs/NativeHotUpdater.js.map +1 -0
- package/lib/commonjs/store.js +48 -0
- package/lib/commonjs/store.js.map +1 -0
- package/lib/commonjs/wrap.js +98 -0
- package/lib/commonjs/wrap.js.map +1 -0
- package/lib/module/checkForUpdate.js +64 -0
- package/lib/module/checkForUpdate.js.map +1 -0
- package/lib/module/error.js +9 -0
- package/lib/module/error.js.map +1 -0
- package/lib/module/fetchUpdateInfo.js +69 -0
- package/lib/module/fetchUpdateInfo.js.map +1 -0
- package/lib/module/hooks/useEventCallback.js +13 -0
- package/lib/module/hooks/useEventCallback.js.map +1 -0
- package/lib/module/index.js +211 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/native.js +119 -0
- package/lib/module/native.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/runUpdateProcess.js +64 -0
- package/lib/module/runUpdateProcess.js.map +1 -0
- package/lib/module/specs/NativeHotUpdater.js +5 -0
- package/lib/module/specs/NativeHotUpdater.js.map +1 -0
- package/lib/module/store.js +42 -0
- package/lib/module/store.js.map +1 -0
- package/lib/module/wrap.js +94 -0
- package/lib/module/wrap.js.map +1 -0
- package/lib/typescript/commonjs/checkForUpdate.d.ts +22 -0
- package/lib/typescript/commonjs/checkForUpdate.d.ts.map +1 -0
- package/{dist → lib/typescript/commonjs}/error.d.ts +1 -0
- package/lib/typescript/commonjs/error.d.ts.map +1 -0
- package/lib/typescript/commonjs/fetchUpdateInfo.d.ts +4 -0
- package/lib/typescript/commonjs/fetchUpdateInfo.d.ts.map +1 -0
- package/{dist → lib/typescript/commonjs}/hooks/useEventCallback.d.ts +1 -0
- package/lib/typescript/commonjs/hooks/useEventCallback.d.ts.map +1 -0
- package/{dist → lib/typescript/commonjs}/index.d.ts +38 -12
- package/lib/typescript/commonjs/index.d.ts.map +1 -0
- package/lib/typescript/commonjs/native.d.ts +64 -0
- package/lib/typescript/commonjs/native.d.ts.map +1 -0
- package/lib/typescript/commonjs/package.json +1 -0
- package/{dist → lib/typescript/commonjs}/runUpdateProcess.d.ts +1 -0
- package/lib/typescript/commonjs/runUpdateProcess.d.ts.map +1 -0
- package/{dist → lib/typescript/commonjs}/specs/NativeHotUpdater.d.ts +8 -9
- package/lib/typescript/commonjs/specs/NativeHotUpdater.d.ts.map +1 -0
- package/{dist → lib/typescript/commonjs}/store.d.ts +1 -0
- package/lib/typescript/commonjs/store.d.ts.map +1 -0
- package/{dist → lib/typescript/commonjs}/wrap.d.ts +3 -2
- package/lib/typescript/commonjs/wrap.d.ts.map +1 -0
- package/lib/typescript/module/checkForUpdate.d.ts +22 -0
- package/lib/typescript/module/checkForUpdate.d.ts.map +1 -0
- package/lib/typescript/module/error.d.ts +4 -0
- package/lib/typescript/module/error.d.ts.map +1 -0
- package/lib/typescript/module/fetchUpdateInfo.d.ts +4 -0
- package/lib/typescript/module/fetchUpdateInfo.d.ts.map +1 -0
- package/lib/typescript/module/hooks/useEventCallback.d.ts +5 -0
- package/lib/typescript/module/hooks/useEventCallback.d.ts.map +1 -0
- package/lib/typescript/module/index.d.ts +202 -0
- package/lib/typescript/module/index.d.ts.map +1 -0
- package/lib/typescript/module/native.d.ts +64 -0
- package/lib/typescript/module/native.d.ts.map +1 -0
- package/lib/typescript/module/package.json +1 -0
- package/lib/typescript/module/runUpdateProcess.d.ts +49 -0
- package/lib/typescript/module/runUpdateProcess.d.ts.map +1 -0
- package/lib/typescript/module/specs/NativeHotUpdater.d.ts +19 -0
- package/lib/typescript/module/specs/NativeHotUpdater.d.ts.map +1 -0
- package/lib/typescript/module/store.d.ts +11 -0
- package/lib/typescript/module/store.d.ts.map +1 -0
- package/lib/typescript/module/wrap.d.ts +51 -0
- package/lib/typescript/module/wrap.d.ts.map +1 -0
- package/package.json +59 -30
- package/src/checkForUpdate.ts +59 -9
- package/src/fetchUpdateInfo.ts +40 -12
- package/src/index.ts +37 -11
- package/src/native.ts +87 -41
- package/src/runUpdateProcess.ts +2 -2
- package/src/specs/NativeHotUpdater.ts +8 -10
- package/src/wrap.tsx +9 -13
- package/android/generated/java/com/hotupdater/NativeHotUpdaterSpec.java +0 -93
- package/android/generated/jni/CMakeLists.txt +0 -36
- package/android/generated/jni/HotUpdaterSpec-generated.cpp +0 -68
- package/android/generated/jni/HotUpdaterSpec.h +0 -31
- package/android/generated/jni/react/renderer/components/HotUpdaterSpec/HotUpdaterSpecJSI-generated.cpp +0 -70
- package/android/generated/jni/react/renderer/components/HotUpdaterSpec/HotUpdaterSpecJSI.h +0 -121
- package/android/src/main/java/com/hotupdater/HotUpdaterPrefs.kt +0 -42
- package/dist/checkForUpdate.d.ts +0 -12
- package/dist/fetchUpdateInfo.d.ts +0 -3
- package/dist/index.js +0 -341
- package/dist/index.mjs +0 -301
- package/dist/native.d.ts +0 -41
- package/ios/HotUpdater/HotUpdater.h +0 -15
- package/ios/HotUpdater/HotUpdater.mm +0 -468
- package/ios/HotUpdater/HotUpdater.modulemap +0 -6
- package/ios/HotUpdater/HotUpdaterPrefs.h +0 -9
- package/ios/HotUpdater/HotUpdaterPrefs.mm +0 -45
- package/ios/generated/HotUpdaterSpec/HotUpdaterSpec-generated.mm +0 -81
- package/ios/generated/HotUpdaterSpec/HotUpdaterSpec.h +0 -112
- package/ios/generated/HotUpdaterSpecJSI-generated.cpp +0 -70
- package/ios/generated/HotUpdaterSpecJSI.h +0 -121
- package/react-native.config.js +0 -12
- package/src/global.d.ts +0 -3
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
|
|
3
|
-
*
|
|
4
|
-
* Do not edit this file as changes may cause incorrect behavior and will be lost
|
|
5
|
-
* once the code is regenerated.
|
|
6
|
-
*
|
|
7
|
-
* @generated by codegen project: GenerateModuleObjCpp
|
|
8
|
-
*
|
|
9
|
-
* We create an umbrella header (and corresponding implementation) here since
|
|
10
|
-
* Cxx compilation in BUCK has a limitation: source-code producing genrule()s
|
|
11
|
-
* must have a single output. More files => more genrule()s => slower builds.
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
#ifndef __cplusplus
|
|
15
|
-
#error This file must be compiled as Obj-C++. If you are importing it, you must change your file extension to .mm.
|
|
16
|
-
#endif
|
|
17
|
-
|
|
18
|
-
// Avoid multiple includes of HotUpdaterSpec symbols
|
|
19
|
-
#ifndef HotUpdaterSpec_H
|
|
20
|
-
#define HotUpdaterSpec_H
|
|
21
|
-
|
|
22
|
-
#import <Foundation/Foundation.h>
|
|
23
|
-
#import <RCTRequired/RCTRequired.h>
|
|
24
|
-
#import <RCTTypeSafety/RCTConvertHelpers.h>
|
|
25
|
-
#import <RCTTypeSafety/RCTTypedModuleConstants.h>
|
|
26
|
-
#import <React/RCTBridgeModule.h>
|
|
27
|
-
#import <React/RCTCxxConvert.h>
|
|
28
|
-
#import <React/RCTManagedPointer.h>
|
|
29
|
-
#import <ReactCommon/RCTTurboModule.h>
|
|
30
|
-
#import <optional>
|
|
31
|
-
#import <vector>
|
|
32
|
-
|
|
33
|
-
namespace JS {
|
|
34
|
-
namespace NativeHotUpdater {
|
|
35
|
-
struct Constants {
|
|
36
|
-
|
|
37
|
-
struct Builder {
|
|
38
|
-
struct Input {
|
|
39
|
-
RCTRequired<NSString *> MIN_BUNDLE_ID;
|
|
40
|
-
RCTRequired<NSString *> APP_VERSION;
|
|
41
|
-
RCTRequired<NSString *> CHANNEL;
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
/** Initialize with a set of values */
|
|
45
|
-
Builder(const Input i);
|
|
46
|
-
/** Initialize with an existing Constants */
|
|
47
|
-
Builder(Constants i);
|
|
48
|
-
/** Builds the object. Generally used only by the infrastructure. */
|
|
49
|
-
NSDictionary *buildUnsafeRawValue() const { return _factory(); };
|
|
50
|
-
private:
|
|
51
|
-
NSDictionary *(^_factory)(void);
|
|
52
|
-
};
|
|
53
|
-
|
|
54
|
-
static Constants fromUnsafeRawValue(NSDictionary *const v) { return {v}; }
|
|
55
|
-
NSDictionary *unsafeRawValue() const { return _v; }
|
|
56
|
-
private:
|
|
57
|
-
Constants(NSDictionary *const v) : _v(v) {}
|
|
58
|
-
NSDictionary *_v;
|
|
59
|
-
};
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
@protocol NativeHotUpdaterSpec <RCTBridgeModule, RCTTurboModule>
|
|
63
|
-
|
|
64
|
-
- (void)reload;
|
|
65
|
-
- (void)updateBundle:(NSString *)bundleId
|
|
66
|
-
zipUrl:(NSString * _Nullable)zipUrl
|
|
67
|
-
resolve:(RCTPromiseResolveBlock)resolve
|
|
68
|
-
reject:(RCTPromiseRejectBlock)reject;
|
|
69
|
-
- (void)getAppVersion:(RCTPromiseResolveBlock)resolve
|
|
70
|
-
reject:(RCTPromiseRejectBlock)reject;
|
|
71
|
-
- (void)setChannel:(NSString *)channel
|
|
72
|
-
resolve:(RCTPromiseResolveBlock)resolve
|
|
73
|
-
reject:(RCTPromiseRejectBlock)reject;
|
|
74
|
-
- (void)addListener:(NSString *)eventName;
|
|
75
|
-
- (void)removeListeners:(double)count;
|
|
76
|
-
- (facebook::react::ModuleConstants<JS::NativeHotUpdater::Constants::Builder>)constantsToExport;
|
|
77
|
-
- (facebook::react::ModuleConstants<JS::NativeHotUpdater::Constants::Builder>)getConstants;
|
|
78
|
-
|
|
79
|
-
@end
|
|
80
|
-
|
|
81
|
-
@interface NativeHotUpdaterSpecBase : NSObject {
|
|
82
|
-
@protected
|
|
83
|
-
facebook::react::EventEmitterCallback _eventEmitterCallback;
|
|
84
|
-
}
|
|
85
|
-
- (void)setEventEmitterCallback:(EventEmitterCallbackWrapper *)eventEmitterCallbackWrapper;
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
@end
|
|
89
|
-
|
|
90
|
-
namespace facebook::react {
|
|
91
|
-
/**
|
|
92
|
-
* ObjC++ class for module 'NativeHotUpdater'
|
|
93
|
-
*/
|
|
94
|
-
class JSI_EXPORT NativeHotUpdaterSpecJSI : public ObjCTurboModule {
|
|
95
|
-
public:
|
|
96
|
-
NativeHotUpdaterSpecJSI(const ObjCTurboModule::InitParams ¶ms);
|
|
97
|
-
};
|
|
98
|
-
} // namespace facebook::react
|
|
99
|
-
inline JS::NativeHotUpdater::Constants::Builder::Builder(const Input i) : _factory(^{
|
|
100
|
-
NSMutableDictionary *d = [NSMutableDictionary new];
|
|
101
|
-
auto MIN_BUNDLE_ID = i.MIN_BUNDLE_ID.get();
|
|
102
|
-
d[@"MIN_BUNDLE_ID"] = MIN_BUNDLE_ID;
|
|
103
|
-
auto APP_VERSION = i.APP_VERSION.get();
|
|
104
|
-
d[@"APP_VERSION"] = APP_VERSION;
|
|
105
|
-
auto CHANNEL = i.CHANNEL.get();
|
|
106
|
-
d[@"CHANNEL"] = CHANNEL;
|
|
107
|
-
return d;
|
|
108
|
-
}) {}
|
|
109
|
-
inline JS::NativeHotUpdater::Constants::Builder::Builder(Constants i) : _factory(^{
|
|
110
|
-
return i.unsafeRawValue();
|
|
111
|
-
}) {}
|
|
112
|
-
#endif // HotUpdaterSpec_H
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
|
|
3
|
-
*
|
|
4
|
-
* Do not edit this file as changes may cause incorrect behavior and will be lost
|
|
5
|
-
* once the code is regenerated.
|
|
6
|
-
*
|
|
7
|
-
* @generated by codegen project: GenerateModuleCpp.js
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
#include "HotUpdaterSpecJSI.h"
|
|
11
|
-
|
|
12
|
-
namespace facebook::react {
|
|
13
|
-
|
|
14
|
-
static jsi::Value __hostFunction_NativeHotUpdaterCxxSpecJSI_reload(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
|
|
15
|
-
static_cast<NativeHotUpdaterCxxSpecJSI *>(&turboModule)->reload(
|
|
16
|
-
rt
|
|
17
|
-
);
|
|
18
|
-
return jsi::Value::undefined();
|
|
19
|
-
}
|
|
20
|
-
static jsi::Value __hostFunction_NativeHotUpdaterCxxSpecJSI_updateBundle(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
|
|
21
|
-
return static_cast<NativeHotUpdaterCxxSpecJSI *>(&turboModule)->updateBundle(
|
|
22
|
-
rt,
|
|
23
|
-
count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt),
|
|
24
|
-
count <= 1 || args[1].isNull() || args[1].isUndefined() ? std::nullopt : std::make_optional(args[1].asString(rt))
|
|
25
|
-
);
|
|
26
|
-
}
|
|
27
|
-
static jsi::Value __hostFunction_NativeHotUpdaterCxxSpecJSI_getAppVersion(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
|
|
28
|
-
return static_cast<NativeHotUpdaterCxxSpecJSI *>(&turboModule)->getAppVersion(
|
|
29
|
-
rt
|
|
30
|
-
);
|
|
31
|
-
}
|
|
32
|
-
static jsi::Value __hostFunction_NativeHotUpdaterCxxSpecJSI_setChannel(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
|
|
33
|
-
return static_cast<NativeHotUpdaterCxxSpecJSI *>(&turboModule)->setChannel(
|
|
34
|
-
rt,
|
|
35
|
-
count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt)
|
|
36
|
-
);
|
|
37
|
-
}
|
|
38
|
-
static jsi::Value __hostFunction_NativeHotUpdaterCxxSpecJSI_addListener(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
|
|
39
|
-
static_cast<NativeHotUpdaterCxxSpecJSI *>(&turboModule)->addListener(
|
|
40
|
-
rt,
|
|
41
|
-
count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asString(rt)
|
|
42
|
-
);
|
|
43
|
-
return jsi::Value::undefined();
|
|
44
|
-
}
|
|
45
|
-
static jsi::Value __hostFunction_NativeHotUpdaterCxxSpecJSI_removeListeners(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
|
|
46
|
-
static_cast<NativeHotUpdaterCxxSpecJSI *>(&turboModule)->removeListeners(
|
|
47
|
-
rt,
|
|
48
|
-
count <= 0 ? throw jsi::JSError(rt, "Expected argument in position 0 to be passed") : args[0].asNumber()
|
|
49
|
-
);
|
|
50
|
-
return jsi::Value::undefined();
|
|
51
|
-
}
|
|
52
|
-
static jsi::Value __hostFunction_NativeHotUpdaterCxxSpecJSI_getConstants(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* args, size_t count) {
|
|
53
|
-
return static_cast<NativeHotUpdaterCxxSpecJSI *>(&turboModule)->getConstants(
|
|
54
|
-
rt
|
|
55
|
-
);
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
NativeHotUpdaterCxxSpecJSI::NativeHotUpdaterCxxSpecJSI(std::shared_ptr<CallInvoker> jsInvoker)
|
|
59
|
-
: TurboModule("HotUpdater", jsInvoker) {
|
|
60
|
-
methodMap_["reload"] = MethodMetadata {0, __hostFunction_NativeHotUpdaterCxxSpecJSI_reload};
|
|
61
|
-
methodMap_["updateBundle"] = MethodMetadata {2, __hostFunction_NativeHotUpdaterCxxSpecJSI_updateBundle};
|
|
62
|
-
methodMap_["getAppVersion"] = MethodMetadata {0, __hostFunction_NativeHotUpdaterCxxSpecJSI_getAppVersion};
|
|
63
|
-
methodMap_["setChannel"] = MethodMetadata {1, __hostFunction_NativeHotUpdaterCxxSpecJSI_setChannel};
|
|
64
|
-
methodMap_["addListener"] = MethodMetadata {1, __hostFunction_NativeHotUpdaterCxxSpecJSI_addListener};
|
|
65
|
-
methodMap_["removeListeners"] = MethodMetadata {1, __hostFunction_NativeHotUpdaterCxxSpecJSI_removeListeners};
|
|
66
|
-
methodMap_["getConstants"] = MethodMetadata {0, __hostFunction_NativeHotUpdaterCxxSpecJSI_getConstants};
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
} // namespace facebook::react
|
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
|
|
3
|
-
*
|
|
4
|
-
* Do not edit this file as changes may cause incorrect behavior and will be lost
|
|
5
|
-
* once the code is regenerated.
|
|
6
|
-
*
|
|
7
|
-
* @generated by codegen project: GenerateModuleH.js
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
#pragma once
|
|
11
|
-
|
|
12
|
-
#include <ReactCommon/TurboModule.h>
|
|
13
|
-
#include <react/bridging/Bridging.h>
|
|
14
|
-
|
|
15
|
-
namespace facebook::react {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
class JSI_EXPORT NativeHotUpdaterCxxSpecJSI : public TurboModule {
|
|
19
|
-
protected:
|
|
20
|
-
NativeHotUpdaterCxxSpecJSI(std::shared_ptr<CallInvoker> jsInvoker);
|
|
21
|
-
|
|
22
|
-
public:
|
|
23
|
-
virtual void reload(jsi::Runtime &rt) = 0;
|
|
24
|
-
virtual jsi::Value updateBundle(jsi::Runtime &rt, jsi::String bundleId, std::optional<jsi::String> zipUrl) = 0;
|
|
25
|
-
virtual jsi::Value getAppVersion(jsi::Runtime &rt) = 0;
|
|
26
|
-
virtual jsi::Value setChannel(jsi::Runtime &rt, jsi::String channel) = 0;
|
|
27
|
-
virtual void addListener(jsi::Runtime &rt, jsi::String eventName) = 0;
|
|
28
|
-
virtual void removeListeners(jsi::Runtime &rt, double count) = 0;
|
|
29
|
-
virtual jsi::Object getConstants(jsi::Runtime &rt) = 0;
|
|
30
|
-
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
template <typename T>
|
|
34
|
-
class JSI_EXPORT NativeHotUpdaterCxxSpec : public TurboModule {
|
|
35
|
-
public:
|
|
36
|
-
jsi::Value get(jsi::Runtime &rt, const jsi::PropNameID &propName) override {
|
|
37
|
-
return delegate_.get(rt, propName);
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
static constexpr std::string_view kModuleName = "HotUpdater";
|
|
41
|
-
|
|
42
|
-
protected:
|
|
43
|
-
NativeHotUpdaterCxxSpec(std::shared_ptr<CallInvoker> jsInvoker)
|
|
44
|
-
: TurboModule(std::string{NativeHotUpdaterCxxSpec::kModuleName}, jsInvoker),
|
|
45
|
-
delegate_(reinterpret_cast<T*>(this), jsInvoker) {}
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
private:
|
|
49
|
-
class Delegate : public NativeHotUpdaterCxxSpecJSI {
|
|
50
|
-
public:
|
|
51
|
-
Delegate(T *instance, std::shared_ptr<CallInvoker> jsInvoker) :
|
|
52
|
-
NativeHotUpdaterCxxSpecJSI(std::move(jsInvoker)), instance_(instance) {
|
|
53
|
-
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
void reload(jsi::Runtime &rt) override {
|
|
57
|
-
static_assert(
|
|
58
|
-
bridging::getParameterCount(&T::reload) == 1,
|
|
59
|
-
"Expected reload(...) to have 1 parameters");
|
|
60
|
-
|
|
61
|
-
return bridging::callFromJs<void>(
|
|
62
|
-
rt, &T::reload, jsInvoker_, instance_);
|
|
63
|
-
}
|
|
64
|
-
jsi::Value updateBundle(jsi::Runtime &rt, jsi::String bundleId, std::optional<jsi::String> zipUrl) override {
|
|
65
|
-
static_assert(
|
|
66
|
-
bridging::getParameterCount(&T::updateBundle) == 3,
|
|
67
|
-
"Expected updateBundle(...) to have 3 parameters");
|
|
68
|
-
|
|
69
|
-
return bridging::callFromJs<jsi::Value>(
|
|
70
|
-
rt, &T::updateBundle, jsInvoker_, instance_, std::move(bundleId), std::move(zipUrl));
|
|
71
|
-
}
|
|
72
|
-
jsi::Value getAppVersion(jsi::Runtime &rt) override {
|
|
73
|
-
static_assert(
|
|
74
|
-
bridging::getParameterCount(&T::getAppVersion) == 1,
|
|
75
|
-
"Expected getAppVersion(...) to have 1 parameters");
|
|
76
|
-
|
|
77
|
-
return bridging::callFromJs<jsi::Value>(
|
|
78
|
-
rt, &T::getAppVersion, jsInvoker_, instance_);
|
|
79
|
-
}
|
|
80
|
-
jsi::Value setChannel(jsi::Runtime &rt, jsi::String channel) override {
|
|
81
|
-
static_assert(
|
|
82
|
-
bridging::getParameterCount(&T::setChannel) == 2,
|
|
83
|
-
"Expected setChannel(...) to have 2 parameters");
|
|
84
|
-
|
|
85
|
-
return bridging::callFromJs<jsi::Value>(
|
|
86
|
-
rt, &T::setChannel, jsInvoker_, instance_, std::move(channel));
|
|
87
|
-
}
|
|
88
|
-
void addListener(jsi::Runtime &rt, jsi::String eventName) override {
|
|
89
|
-
static_assert(
|
|
90
|
-
bridging::getParameterCount(&T::addListener) == 2,
|
|
91
|
-
"Expected addListener(...) to have 2 parameters");
|
|
92
|
-
|
|
93
|
-
return bridging::callFromJs<void>(
|
|
94
|
-
rt, &T::addListener, jsInvoker_, instance_, std::move(eventName));
|
|
95
|
-
}
|
|
96
|
-
void removeListeners(jsi::Runtime &rt, double count) override {
|
|
97
|
-
static_assert(
|
|
98
|
-
bridging::getParameterCount(&T::removeListeners) == 2,
|
|
99
|
-
"Expected removeListeners(...) to have 2 parameters");
|
|
100
|
-
|
|
101
|
-
return bridging::callFromJs<void>(
|
|
102
|
-
rt, &T::removeListeners, jsInvoker_, instance_, std::move(count));
|
|
103
|
-
}
|
|
104
|
-
jsi::Object getConstants(jsi::Runtime &rt) override {
|
|
105
|
-
static_assert(
|
|
106
|
-
bridging::getParameterCount(&T::getConstants) == 1,
|
|
107
|
-
"Expected getConstants(...) to have 1 parameters");
|
|
108
|
-
|
|
109
|
-
return bridging::callFromJs<jsi::Object>(
|
|
110
|
-
rt, &T::getConstants, jsInvoker_, instance_);
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
private:
|
|
114
|
-
friend class NativeHotUpdaterCxxSpec;
|
|
115
|
-
T *instance_;
|
|
116
|
-
};
|
|
117
|
-
|
|
118
|
-
Delegate delegate_;
|
|
119
|
-
};
|
|
120
|
-
|
|
121
|
-
} // namespace facebook::react
|
package/react-native.config.js
DELETED
package/src/global.d.ts
DELETED