mirror of
https://gitcode.com/gh_mirrors/re/react-native-pushy.git
synced 2025-09-16 07:01:38 +08:00
add onpackageexpired
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "react-native-update",
|
||||
"version": "10.28.1",
|
||||
"version": "10.29.0",
|
||||
"description": "react-native hot update",
|
||||
"main": "src/index",
|
||||
"scripts": {
|
||||
|
@@ -171,7 +171,7 @@ export const UpdateProvider = ({
|
||||
return;
|
||||
}
|
||||
const rollout = info.config?.rollout?.[packageVersion];
|
||||
if (rollout) {
|
||||
if (info.update && rollout) {
|
||||
if (!isInRollout(rollout)) {
|
||||
log(`not in ${rollout}% rollout, ignored`);
|
||||
return;
|
||||
@@ -182,6 +182,13 @@ export const UpdateProvider = ({
|
||||
updateInfoRef.current = info;
|
||||
setUpdateInfo(info);
|
||||
if (info.expired) {
|
||||
if (
|
||||
options.onPackageExpired &&
|
||||
(await options.onPackageExpired(info)) === false
|
||||
) {
|
||||
log('onPackageExpired returned false, skipping');
|
||||
return;
|
||||
}
|
||||
const { downloadUrl } = info;
|
||||
if (downloadUrl && Pushy.apkStatus === null) {
|
||||
if (options.updateStrategy === 'silentAndNow') {
|
||||
|
@@ -92,6 +92,7 @@ export interface ClientOptions {
|
||||
beforeCheckUpdate?: () => Promise<boolean>;
|
||||
beforeDownloadUpdate?: (info: CheckResult) => Promise<boolean>;
|
||||
afterDownloadUpdate?: (info: CheckResult) => Promise<boolean>;
|
||||
onPackageExpired?: (info: CheckResult) => Promise<boolean>;
|
||||
}
|
||||
|
||||
export interface UpdateTestPayload {
|
||||
|
Reference in New Issue
Block a user