Fix build expiration reporting
This commit is contained in:
parent
1fbc1079c9
commit
a5a6b74f98
2 changed files with 22 additions and 9 deletions
|
@ -18,12 +18,17 @@ const SIXTY_DAYS = 60 * DAY;
|
||||||
export const getExpiration = (state: StateType): ExpirationStateType =>
|
export const getExpiration = (state: StateType): ExpirationStateType =>
|
||||||
state.expiration;
|
state.expiration;
|
||||||
|
|
||||||
export const getExpirationTimestamp = createSelector(
|
const getPackagedBuildExpiration = createSelector(
|
||||||
getExpiration,
|
getExpiration,
|
||||||
|
({ buildExpiration }) => buildExpiration
|
||||||
|
);
|
||||||
|
|
||||||
|
export const getExpirationTimestamp = createSelector(
|
||||||
|
getPackagedBuildExpiration,
|
||||||
getRemoteBuildExpiration,
|
getRemoteBuildExpiration,
|
||||||
getAutoDownloadUpdate,
|
getAutoDownloadUpdate,
|
||||||
(
|
(
|
||||||
{ buildExpiration }: Readonly<ExpirationStateType>,
|
buildExpiration: number,
|
||||||
remoteBuildExpiration: number | undefined,
|
remoteBuildExpiration: number | undefined,
|
||||||
autoDownloadUpdate: boolean
|
autoDownloadUpdate: boolean
|
||||||
): number => {
|
): number => {
|
||||||
|
@ -31,11 +36,19 @@ export const getExpirationTimestamp = createSelector(
|
||||||
? buildExpiration
|
? buildExpiration
|
||||||
: buildExpiration - SIXTY_DAYS;
|
: buildExpiration - SIXTY_DAYS;
|
||||||
|
|
||||||
if (remoteBuildExpiration) {
|
// Log the expiration date in this selector because it invalidates only
|
||||||
return Math.min(remoteBuildExpiration, localBuildExpiration);
|
// if one of the arguments changes.
|
||||||
|
let result: number;
|
||||||
|
let type: string;
|
||||||
|
if (remoteBuildExpiration && remoteBuildExpiration < localBuildExpiration) {
|
||||||
|
type = 'remote';
|
||||||
|
result = remoteBuildExpiration;
|
||||||
|
} else {
|
||||||
|
type = 'local';
|
||||||
|
result = localBuildExpiration;
|
||||||
}
|
}
|
||||||
|
log.info(`Build expires (${type}): ${new Date(result).toISOString()}`);
|
||||||
return localBuildExpiration;
|
return result;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
@ -52,8 +65,6 @@ export const hasExpired = createSelector(
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
log.info('Build expires: ', new Date(buildExpiration).toISOString());
|
|
||||||
|
|
||||||
if (isInPast(buildExpiration)) {
|
if (isInPast(buildExpiration)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -193,7 +193,9 @@ export const getHasStoryViewReceiptSetting = createSelector(
|
||||||
export const getRemoteBuildExpiration = createSelector(
|
export const getRemoteBuildExpiration = createSelector(
|
||||||
getItems,
|
getItems,
|
||||||
(state: ItemsStateType): number | undefined =>
|
(state: ItemsStateType): number | undefined =>
|
||||||
Number(state.remoteBuildExpiration)
|
state.remoteBuildExpiration === undefined
|
||||||
|
? undefined
|
||||||
|
: Number(state.remoteBuildExpiration)
|
||||||
);
|
);
|
||||||
|
|
||||||
export const getAutoDownloadUpdate = createSelector(
|
export const getAutoDownloadUpdate = createSelector(
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue