pulse-updates 1.0.1 → 1.0.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.
- package/android/src/main/java/app/pulse/updates/PulseController.kt +20 -2
- package/ios/PulseUpdates/PulseController.swift +10 -1
- package/lib/commonjs/PulseUpdates.js +16 -28
- package/lib/commonjs/PulseUpdates.js.map +1 -1
- package/lib/module/PulseUpdates.js +16 -28
- package/lib/module/PulseUpdates.js.map +1 -1
- package/lib/typescript/PulseUpdates.d.ts.map +1 -1
- package/lib/typescript/types.d.ts +1 -0
- package/lib/typescript/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/react-native.config.js +1 -3
- package/src/PulseUpdates.ts +11 -25
- package/src/types.ts +1 -0
|
@@ -99,6 +99,13 @@ class PulseController private constructor() {
|
|
|
99
99
|
private var embeddedManifest: EmbeddedManifest? = null
|
|
100
100
|
private val executor = Executors.newSingleThreadExecutor()
|
|
101
101
|
|
|
102
|
+
// Embedded asset hashes set for download optimization
|
|
103
|
+
internal val embeddedAssetHashes: Set<String>
|
|
104
|
+
get() = embeddedManifest?.assets
|
|
105
|
+
?.filter { !it.isLaunchAsset }
|
|
106
|
+
?.map { it.hash.lowercase() }
|
|
107
|
+
?.toSet() ?: emptySet()
|
|
108
|
+
|
|
102
109
|
// Native runtime version (from config, embedded manifest, or app version)
|
|
103
110
|
private val nativeRuntimeVersion: String
|
|
104
111
|
get() {
|
|
@@ -1251,12 +1258,23 @@ object PulseRemoteLoader {
|
|
|
1251
1258
|
}
|
|
1252
1259
|
|
|
1253
1260
|
// Download assets and link them to the update
|
|
1261
|
+
val embeddedHashes = PulseController.getInstance().embeddedAssetHashes
|
|
1262
|
+
|
|
1254
1263
|
for (asset in manifest.assets) {
|
|
1255
1264
|
val assetHash = asset.hash.lowercase()
|
|
1256
1265
|
val assetDest = File(directory, "assets/sha256/$assetHash")
|
|
1257
1266
|
|
|
1258
|
-
//
|
|
1259
|
-
if (
|
|
1267
|
+
// Skip download if already cached
|
|
1268
|
+
if (assetDest.exists()) {
|
|
1269
|
+
// Asset already in cache, just link it
|
|
1270
|
+
}
|
|
1271
|
+
// Skip download if exists in embedded assets
|
|
1272
|
+
else if (embeddedHashes.contains(assetHash)) {
|
|
1273
|
+
pulseLog(TAG, "Asset ${assetHash.take(16)}... exists in embedded, skipping download")
|
|
1274
|
+
// Don't download - will use embedded fallback at runtime
|
|
1275
|
+
}
|
|
1276
|
+
// Download if not exists anywhere
|
|
1277
|
+
else {
|
|
1260
1278
|
try {
|
|
1261
1279
|
downloadFile(asset.url, assetDest, stagingDir)
|
|
1262
1280
|
|
|
@@ -62,7 +62,8 @@ public final class PulseController {
|
|
|
62
62
|
|
|
63
63
|
// Embedded manifest cache
|
|
64
64
|
private var embeddedManifest: PulseEmbeddedManifest?
|
|
65
|
-
|
|
65
|
+
/// Embedded asset hashes map (hash -> file URL) - internal for download optimization
|
|
66
|
+
internal var embeddedAssetHashes: [String: URL] = [:]
|
|
66
67
|
private var embeddedBundleHash: String?
|
|
67
68
|
|
|
68
69
|
// MARK: - Native Config (from Info.plist, like expo-updates)
|
|
@@ -1134,6 +1135,14 @@ final class PulseRemoteLoader {
|
|
|
1134
1135
|
continue
|
|
1135
1136
|
}
|
|
1136
1137
|
|
|
1138
|
+
// Already exists in embedded assets? Skip download and use embedded
|
|
1139
|
+
if PulseController.shared.embeddedAssetHashes[assetHash] != nil {
|
|
1140
|
+
pulseLog("Asset \(assetHash.prefix(16))... exists in embedded, skipping download")
|
|
1141
|
+
storeAssetInDatabase(asset: asset, hash: assetHash, database: database, updateId: updateId)
|
|
1142
|
+
group.leave()
|
|
1143
|
+
continue
|
|
1144
|
+
}
|
|
1145
|
+
|
|
1137
1146
|
guard let url = URL(string: asset.url) else {
|
|
1138
1147
|
group.leave()
|
|
1139
1148
|
continue
|
|
@@ -103,7 +103,7 @@ let localAssets = exports.localAssets = null;
|
|
|
103
103
|
* Configuration is loaded automatically from Info.plist/AndroidManifest.xml.
|
|
104
104
|
*/
|
|
105
105
|
async function refreshStateAsync() {
|
|
106
|
-
if (!PulseUpdatesModule) return;
|
|
106
|
+
if (__DEV__ || !PulseUpdatesModule) return;
|
|
107
107
|
try {
|
|
108
108
|
const state = await PulseUpdatesModule.getStateAsync();
|
|
109
109
|
|
|
@@ -150,15 +150,12 @@ async function refreshStateAsync() {
|
|
|
150
150
|
* Check the server for available updates.
|
|
151
151
|
*/
|
|
152
152
|
async function checkForUpdateAsync() {
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
// throw new Error('Cannot check for updates in development mode');
|
|
160
|
-
// }
|
|
161
|
-
|
|
153
|
+
if (__DEV__) {
|
|
154
|
+
return {
|
|
155
|
+
isAvailable: false,
|
|
156
|
+
reason: 'Updates disabled in development mode'
|
|
157
|
+
};
|
|
158
|
+
}
|
|
162
159
|
if (!PulseUpdatesModule) {
|
|
163
160
|
throw new Error('PulseUpdates native module not found');
|
|
164
161
|
}
|
|
@@ -182,15 +179,11 @@ async function checkForUpdateAsync() {
|
|
|
182
179
|
* Download the most recent update from the server.
|
|
183
180
|
*/
|
|
184
181
|
async function fetchUpdateAsync() {
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
// if (__DEV__) {
|
|
191
|
-
// throw new Error('Cannot fetch updates in development mode');
|
|
192
|
-
// }
|
|
193
|
-
|
|
182
|
+
if (__DEV__) {
|
|
183
|
+
return {
|
|
184
|
+
isNew: false
|
|
185
|
+
};
|
|
186
|
+
}
|
|
194
187
|
if (!PulseUpdatesModule) {
|
|
195
188
|
throw new Error('PulseUpdates native module not found');
|
|
196
189
|
}
|
|
@@ -210,15 +203,10 @@ async function fetchUpdateAsync() {
|
|
|
210
203
|
* Reload the app using the most recently downloaded update.
|
|
211
204
|
*/
|
|
212
205
|
async function reloadAsync() {
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
// TODO: uncomment after testing
|
|
218
|
-
// if (__DEV__) {
|
|
219
|
-
// throw new Error('Cannot reload in development mode');
|
|
220
|
-
// }
|
|
221
|
-
|
|
206
|
+
if (__DEV__) {
|
|
207
|
+
console.log('[PulseUpdates] Reload skipped in development mode');
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
222
210
|
if (!PulseUpdatesModule) {
|
|
223
211
|
throw new Error('PulseUpdates native module not found');
|
|
224
212
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_NativePulseUpdates","_interopRequireDefault","e","__esModule","default","PulseUpdatesModule","NativePulseUpdates","_isConfigured","_isEnabled","_updateId","_runtimeVersion","_channel","_isEmbeddedLaunch","_manifest","_createdAt","_localAssets","configure","config","console","warn","enabled","updateUrl","runtimeVersion","checkOnLaunch","launchWaitMs","channel","signingKeyId","signingPublicKey","isConfigured","getIsEnabled","isEnabled","exports","updateId","isEmbeddedLaunch","isUsingEmbeddedAssets","manifest","createdAt","localAssets","refreshStateAsync","state","getStateAsync","manifestString","JSON","parse","commitTime","Date","error","checkForUpdateAsync","
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_NativePulseUpdates","_interopRequireDefault","e","__esModule","default","PulseUpdatesModule","NativePulseUpdates","_isConfigured","_isEnabled","_updateId","_runtimeVersion","_channel","_isEmbeddedLaunch","_manifest","_createdAt","_localAssets","configure","config","console","warn","enabled","updateUrl","runtimeVersion","checkOnLaunch","launchWaitMs","channel","signingKeyId","signingPublicKey","isConfigured","getIsEnabled","isEnabled","exports","updateId","isEmbeddedLaunch","isUsingEmbeddedAssets","manifest","createdAt","localAssets","refreshStateAsync","__DEV__","state","getStateAsync","manifestString","JSON","parse","commitTime","Date","error","checkForUpdateAsync","isAvailable","reason","Error","result","isRollback","failedReason","fetchUpdateAsync","isNew","reloadAsync","log","markAppReady","reportLaunchFailure","getUpdateBuild","metadata","build","getDisplayVersion","appVersion","getLocalAssetPath","assetKey","getLocalAssets","eventEmitter","getEventEmitter","NativeEventEmitter","addUpdateListener","listener","emitter","subscription","addListener","remove"],"sourceRoot":"../../src","sources":["PulseUpdates.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -79,7 +79,7 @@ export let localAssets = null;
|
|
|
79
79
|
* Configuration is loaded automatically from Info.plist/AndroidManifest.xml.
|
|
80
80
|
*/
|
|
81
81
|
export async function refreshStateAsync() {
|
|
82
|
-
if (!PulseUpdatesModule) return;
|
|
82
|
+
if (__DEV__ || !PulseUpdatesModule) return;
|
|
83
83
|
try {
|
|
84
84
|
const state = await PulseUpdatesModule.getStateAsync();
|
|
85
85
|
|
|
@@ -126,15 +126,12 @@ export async function refreshStateAsync() {
|
|
|
126
126
|
* Check the server for available updates.
|
|
127
127
|
*/
|
|
128
128
|
export async function checkForUpdateAsync() {
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
// throw new Error('Cannot check for updates in development mode');
|
|
136
|
-
// }
|
|
137
|
-
|
|
129
|
+
if (__DEV__) {
|
|
130
|
+
return {
|
|
131
|
+
isAvailable: false,
|
|
132
|
+
reason: 'Updates disabled in development mode'
|
|
133
|
+
};
|
|
134
|
+
}
|
|
138
135
|
if (!PulseUpdatesModule) {
|
|
139
136
|
throw new Error('PulseUpdates native module not found');
|
|
140
137
|
}
|
|
@@ -158,15 +155,11 @@ export async function checkForUpdateAsync() {
|
|
|
158
155
|
* Download the most recent update from the server.
|
|
159
156
|
*/
|
|
160
157
|
export async function fetchUpdateAsync() {
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
// if (__DEV__) {
|
|
167
|
-
// throw new Error('Cannot fetch updates in development mode');
|
|
168
|
-
// }
|
|
169
|
-
|
|
158
|
+
if (__DEV__) {
|
|
159
|
+
return {
|
|
160
|
+
isNew: false
|
|
161
|
+
};
|
|
162
|
+
}
|
|
170
163
|
if (!PulseUpdatesModule) {
|
|
171
164
|
throw new Error('PulseUpdates native module not found');
|
|
172
165
|
}
|
|
@@ -186,15 +179,10 @@ export async function fetchUpdateAsync() {
|
|
|
186
179
|
* Reload the app using the most recently downloaded update.
|
|
187
180
|
*/
|
|
188
181
|
export async function reloadAsync() {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
// TODO: uncomment after testing
|
|
194
|
-
// if (__DEV__) {
|
|
195
|
-
// throw new Error('Cannot reload in development mode');
|
|
196
|
-
// }
|
|
197
|
-
|
|
182
|
+
if (__DEV__) {
|
|
183
|
+
console.log('[PulseUpdates] Reload skipped in development mode');
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
198
186
|
if (!PulseUpdatesModule) {
|
|
199
187
|
throw new Error('PulseUpdates native module not found');
|
|
200
188
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeEventEmitter","NativePulseUpdates","PulseUpdatesModule","_isConfigured","_isEnabled","_updateId","_runtimeVersion","_channel","_isEmbeddedLaunch","_manifest","_createdAt","_localAssets","configure","config","console","warn","enabled","updateUrl","runtimeVersion","checkOnLaunch","launchWaitMs","channel","signingKeyId","signingPublicKey","isConfigured","getIsEnabled","isEnabled","updateId","isEmbeddedLaunch","isUsingEmbeddedAssets","manifest","createdAt","localAssets","refreshStateAsync","state","getStateAsync","manifestString","JSON","parse","commitTime","Date","error","checkForUpdateAsync","
|
|
1
|
+
{"version":3,"names":["NativeEventEmitter","NativePulseUpdates","PulseUpdatesModule","_isConfigured","_isEnabled","_updateId","_runtimeVersion","_channel","_isEmbeddedLaunch","_manifest","_createdAt","_localAssets","configure","config","console","warn","enabled","updateUrl","runtimeVersion","checkOnLaunch","launchWaitMs","channel","signingKeyId","signingPublicKey","isConfigured","getIsEnabled","isEnabled","updateId","isEmbeddedLaunch","isUsingEmbeddedAssets","manifest","createdAt","localAssets","refreshStateAsync","__DEV__","state","getStateAsync","manifestString","JSON","parse","commitTime","Date","error","checkForUpdateAsync","isAvailable","reason","Error","result","isRollback","failedReason","fetchUpdateAsync","isNew","reloadAsync","log","markAppReady","reportLaunchFailure","getUpdateBuild","metadata","build","getDisplayVersion","appVersion","getLocalAssetPath","assetKey","getLocalAssets","eventEmitter","getEventEmitter","addUpdateListener","listener","emitter","subscription","addListener","remove"],"sourceRoot":"../../src","sources":["PulseUpdates.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PulseUpdates.d.ts","sourceRoot":"","sources":["../../src/PulseUpdates.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAiBvG;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAyB1D;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAGD,eAAO,IAAI,SAAS,SAAQ,CAAC;AAC7B,eAAO,IAAI,QAAQ,EAAE,MAAM,GAAG,IAAW,CAAC;AAC1C,eAAO,IAAI,cAAc,EAAE,MAAM,GAAG,IAAW,CAAC;AAChD,eAAO,IAAI,OAAO,EAAE,MAAM,GAAG,IAAW,CAAC;AACzC,eAAO,IAAI,gBAAgB,SAAO,CAAC;AAEnC,eAAO,IAAI,qBAAqB,SAAO,CAAC;AACxC,eAAO,IAAI,QAAQ,EAAE,aAAa,GAAG,IAAW,CAAC;AACjD,eAAO,IAAI,SAAS,EAAE,IAAI,GAAG,IAAW,CAAC;AAEzC;;;;;GAKG;AACH,eAAO,IAAI,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAW,CAAC;AAE7D;;;;GAIG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CA6CvD;AAED;;GAEG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"PulseUpdates.d.ts","sourceRoot":"","sources":["../../src/PulseUpdates.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAiBvG;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAyB1D;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAGD,eAAO,IAAI,SAAS,SAAQ,CAAC;AAC7B,eAAO,IAAI,QAAQ,EAAE,MAAM,GAAG,IAAW,CAAC;AAC1C,eAAO,IAAI,cAAc,EAAE,MAAM,GAAG,IAAW,CAAC;AAChD,eAAO,IAAI,OAAO,EAAE,MAAM,GAAG,IAAW,CAAC;AACzC,eAAO,IAAI,gBAAgB,SAAO,CAAC;AAEnC,eAAO,IAAI,qBAAqB,SAAO,CAAC;AACxC,eAAO,IAAI,QAAQ,EAAE,aAAa,GAAG,IAAW,CAAC;AACjD,eAAO,IAAI,SAAS,EAAE,IAAI,GAAG,IAAW,CAAC;AAEzC;;;;;GAKG;AACH,eAAO,IAAI,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAW,CAAC;AAE7D;;;;GAIG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CA6CvD;AAED;;GAEG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAyBtE;AAED;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAqBnE;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC,CAWjD;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAUlD;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAUvE;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,CAK9C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAM5D;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAKjE;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAEvD;AAYD,MAAM,MAAM,eAAe,GACvB,iBAAiB,GACjB,kBAAkB,GAClB,aAAa,GACb,mBAAmB,CAAC;AAExB,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,eAAe,CAAC;IACtB,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,GACrC;IAAE,MAAM,EAAE,MAAM,IAAI,CAAA;CAAE,CAMxB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,cAAc,CAAC;IAG3B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,MAAM,EAAE,UAAU,EAAE,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,SAAS,CAAC,EAAE,cAAc,CAAC;IAG3B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,aAAa,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,QAAQ,GAAG,WAAW,GAAG,OAAO,CAAC;IAChD,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,OAAO,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,aAAa,GAAG,IAAI,CAAC;IAC/B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,IAAI,GAAG,IAAI,CAAC;IACvB,aAAa,EAAE,IAAI,GAAG,IAAI,CAAC;IAC3B,eAAe,EAAE,aAAa,GAAG,IAAI,CAAC;IACtC,gBAAgB,EAAE,aAAa,GAAG,IAAI,CAAC;IACvC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;CAC5C"}
|
package/package.json
CHANGED
package/react-native.config.js
CHANGED
package/src/PulseUpdates.ts
CHANGED
|
@@ -93,7 +93,7 @@ export let localAssets: Record<string, string> | null = null;
|
|
|
93
93
|
* Configuration is loaded automatically from Info.plist/AndroidManifest.xml.
|
|
94
94
|
*/
|
|
95
95
|
export async function refreshStateAsync(): Promise<void> {
|
|
96
|
-
if (!PulseUpdatesModule) return;
|
|
96
|
+
if (__DEV__ || !PulseUpdatesModule) return;
|
|
97
97
|
|
|
98
98
|
try {
|
|
99
99
|
const state = await PulseUpdatesModule.getStateAsync();
|
|
@@ -143,14 +143,9 @@ export async function refreshStateAsync(): Promise<void> {
|
|
|
143
143
|
* Check the server for available updates.
|
|
144
144
|
*/
|
|
145
145
|
export async function checkForUpdateAsync(): Promise<UpdateCheckResult> {
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
// TODO: uncomment after testing
|
|
151
|
-
// if (__DEV__) {
|
|
152
|
-
// throw new Error('Cannot check for updates in development mode');
|
|
153
|
-
// }
|
|
146
|
+
if (__DEV__) {
|
|
147
|
+
return { isAvailable: false, reason: 'Updates disabled in development mode' };
|
|
148
|
+
}
|
|
154
149
|
|
|
155
150
|
if (!PulseUpdatesModule) {
|
|
156
151
|
throw new Error('PulseUpdates native module not found');
|
|
@@ -178,14 +173,9 @@ export async function checkForUpdateAsync(): Promise<UpdateCheckResult> {
|
|
|
178
173
|
* Download the most recent update from the server.
|
|
179
174
|
*/
|
|
180
175
|
export async function fetchUpdateAsync(): Promise<UpdateFetchResult> {
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
// TODO: uncomment after testing
|
|
186
|
-
// if (__DEV__) {
|
|
187
|
-
// throw new Error('Cannot fetch updates in development mode');
|
|
188
|
-
// }
|
|
176
|
+
if (__DEV__) {
|
|
177
|
+
return { isNew: false };
|
|
178
|
+
}
|
|
189
179
|
|
|
190
180
|
if (!PulseUpdatesModule) {
|
|
191
181
|
throw new Error('PulseUpdates native module not found');
|
|
@@ -209,14 +199,10 @@ export async function fetchUpdateAsync(): Promise<UpdateFetchResult> {
|
|
|
209
199
|
* Reload the app using the most recently downloaded update.
|
|
210
200
|
*/
|
|
211
201
|
export async function reloadAsync(): Promise<void> {
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
// TODO: uncomment after testing
|
|
217
|
-
// if (__DEV__) {
|
|
218
|
-
// throw new Error('Cannot reload in development mode');
|
|
219
|
-
// }
|
|
202
|
+
if (__DEV__) {
|
|
203
|
+
console.log('[PulseUpdates] Reload skipped in development mode');
|
|
204
|
+
return;
|
|
205
|
+
}
|
|
220
206
|
|
|
221
207
|
if (!PulseUpdatesModule) {
|
|
222
208
|
throw new Error('PulseUpdates native module not found');
|