utils.tsx 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import moment from 'moment';
  2. import {t} from 'app/locale';
  3. import {AppStoreConnectValidationData} from 'app/types/debugFiles';
  4. export const appStoreConnectAlertMessage = {
  5. iTunesSessionInvalid: t(
  6. 'The iTunes session of your configured App Store Connect has expired.'
  7. ),
  8. appStoreCredentialsInvalid: t(
  9. 'The credentials of your configured App Store Connect are invalid.'
  10. ),
  11. isTodayAfterItunesSessionRefreshAt: t(
  12. 'The iTunes session of your configured App Store Connect will likely expire soon.'
  13. ),
  14. };
  15. export function getAppConnectStoreUpdateAlertMessage(
  16. appConnectValidationData: AppStoreConnectValidationData
  17. ) {
  18. if (appConnectValidationData.itunesSessionValid === false) {
  19. return appStoreConnectAlertMessage.iTunesSessionInvalid;
  20. }
  21. if (appConnectValidationData.appstoreCredentialsValid === false) {
  22. return appStoreConnectAlertMessage.appStoreCredentialsInvalid;
  23. }
  24. const itunesSessionRefreshAt = appConnectValidationData.itunesSessionRefreshAt;
  25. if (!itunesSessionRefreshAt) {
  26. return undefined;
  27. }
  28. const isTodayAfterItunesSessionRefreshAt = moment().isAfter(
  29. moment(itunesSessionRefreshAt)
  30. );
  31. if (!isTodayAfterItunesSessionRefreshAt) {
  32. return undefined;
  33. }
  34. return appStoreConnectAlertMessage.isTodayAfterItunesSessionRefreshAt;
  35. }