@bifold/core 2.4.5 → 2.5.0
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/lib/commonjs/contexts/reducers/store.js +3 -2
- package/lib/commonjs/contexts/reducers/store.js.map +1 -1
- package/lib/commonjs/index.js +119 -104
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/screens/AttemptLockout.js +27 -35
- package/lib/commonjs/screens/AttemptLockout.js.map +1 -1
- package/lib/commonjs/screens/ContactDetails.js +1 -1
- package/lib/commonjs/screens/ContactDetails.js.map +1 -1
- package/lib/commonjs/screens/CredentialDetails.js +1 -1
- package/lib/commonjs/screens/CredentialDetails.js.map +1 -1
- package/lib/commonjs/screens/JSONDetails.js +6 -3
- package/lib/commonjs/screens/JSONDetails.js.map +1 -1
- package/lib/commonjs/screens/MobileVerifierLoading.js +4 -3
- package/lib/commonjs/screens/MobileVerifierLoading.js.map +1 -1
- package/lib/commonjs/screens/PINCreate.js +3 -10
- package/lib/commonjs/screens/PINCreate.js.map +1 -1
- package/lib/commonjs/screens/WhatAreContacts.js +3 -2
- package/lib/commonjs/screens/WhatAreContacts.js.map +1 -1
- package/lib/module/contexts/reducers/store.js +3 -2
- package/lib/module/contexts/reducers/store.js.map +1 -1
- package/lib/module/index.js +42 -45
- package/lib/module/index.js.map +1 -1
- package/lib/module/screens/AttemptLockout.js +28 -36
- package/lib/module/screens/AttemptLockout.js.map +1 -1
- package/lib/module/screens/ContactDetails.js +1 -1
- package/lib/module/screens/ContactDetails.js.map +1 -1
- package/lib/module/screens/CredentialDetails.js +1 -1
- package/lib/module/screens/CredentialDetails.js.map +1 -1
- package/lib/module/screens/JSONDetails.js +6 -3
- package/lib/module/screens/JSONDetails.js.map +1 -1
- package/lib/module/screens/MobileVerifierLoading.js +4 -3
- package/lib/module/screens/MobileVerifierLoading.js.map +1 -1
- package/lib/module/screens/PINCreate.js +3 -10
- package/lib/module/screens/PINCreate.js.map +1 -1
- package/lib/module/screens/WhatAreContacts.js +3 -2
- package/lib/module/screens/WhatAreContacts.js.map +1 -1
- package/lib/typescript/src/contexts/reducers/store.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +57 -61
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/screens/AttemptLockout.d.ts.map +1 -1
- package/lib/typescript/src/screens/JSONDetails.d.ts.map +1 -1
- package/lib/typescript/src/screens/MobileVerifierLoading.d.ts.map +1 -1
- package/lib/typescript/src/screens/PINCreate.d.ts.map +1 -1
- package/lib/typescript/src/screens/WhatAreContacts.d.ts.map +1 -1
- package/lib/typescript/src/types/navigators.d.ts +1 -1
- package/lib/typescript/src/types/navigators.d.ts.map +1 -1
- package/package.json +3 -4
- package/src/App.tsx +0 -79
- package/src/animated-components.ts +0 -30
- package/src/assets/fonts/MaterialIcons.ttf +0 -0
- package/src/assets/icons/code.svg +0 -4
- package/src/assets/icons/large-arrow.svg +0 -5
- package/src/assets/icons/pencil.svg +0 -15
- package/src/assets/icons/trash.svg +0 -31
- package/src/assets/img/Artwork_1024x1024.png +0 -0
- package/src/assets/img/HistoryCardAcceptedIcon.svg +0 -4
- package/src/assets/img/HistoryCardExpiredIcon.svg +0 -4
- package/src/assets/img/HistoryCardRevokedIcon.svg +0 -4
- package/src/assets/img/HistoryInformationSentIcon.svg +0 -4
- package/src/assets/img/HistoryPinUpdatedIcon.svg +0 -4
- package/src/assets/img/IconChevronRight.svg +0 -5
- package/src/assets/img/activity-indicator-circle.svg +0 -90
- package/src/assets/img/app-lockout.svg +0 -1
- package/src/assets/img/biometrics.svg +0 -74
- package/src/assets/img/chat-loading.svg +0 -1
- package/src/assets/img/check-in-circle.svg +0 -18
- package/src/assets/img/connection-pending.svg +0 -112
- package/src/assets/img/contact-book.svg +0 -21
- package/src/assets/img/credential-card.svg +0 -18
- package/src/assets/img/credential-declined.svg +0 -28
- package/src/assets/img/credential-in-hand.svg +0 -48
- package/src/assets/img/credential-list.svg +0 -60
- package/src/assets/img/credential-pending.svg +0 -96
- package/src/assets/img/credential-success.svg +0 -48
- package/src/assets/img/delete-notification.svg +0 -1
- package/src/assets/img/empty-wallet.svg +0 -23
- package/src/assets/img/error-filled.svg +0 -12
- package/src/assets/img/exclamation-mark.svg +0 -17
- package/src/assets/img/home-center-img.svg +0 -71
- package/src/assets/img/icon-credential-offer-dark.svg +0 -7
- package/src/assets/img/icon-credential-offer-light.svg +0 -7
- package/src/assets/img/icon-info-recieved-dark.svg +0 -8
- package/src/assets/img/icon-info-recieved-light.svg +0 -8
- package/src/assets/img/icon-info-sent-dark.svg +0 -8
- package/src/assets/img/icon-info-sent-light.svg +0 -8
- package/src/assets/img/icon-proof-request-dark.svg +0 -11
- package/src/assets/img/icon-proof-request-light.svg +0 -11
- package/src/assets/img/information-received.svg +0 -1
- package/src/assets/img/logo-large.png +0 -0
- package/src/assets/img/logo-large@2x.png +0 -0
- package/src/assets/img/logo-large@3x.png +0 -0
- package/src/assets/img/logo.svg +0 -15
- package/src/assets/img/message-text-icon-outline.svg +0 -1
- package/src/assets/img/message-text-icon.svg +0 -1
- package/src/assets/img/no_information_shared.svg +0 -36
- package/src/assets/img/preface.svg +0 -15
- package/src/assets/img/proof-declined.svg +0 -66
- package/src/assets/img/proof-pending.svg +0 -61
- package/src/assets/img/proof-success.svg +0 -72
- package/src/assets/img/push-notifications.svg +0 -1
- package/src/assets/img/qrcode-scan-icon.svg +0 -1
- package/src/assets/img/scan-share.svg +0 -102
- package/src/assets/img/secure-check.svg +0 -4
- package/src/assets/img/secure-image.svg +0 -64
- package/src/assets/img/update-available.svg +0 -26
- package/src/assets/img/verifier-request-declined.svg +0 -34
- package/src/assets/img/wallet-back.svg +0 -20
- package/src/assets/img/wallet-front.svg +0 -32
- package/src/assets/img/wallet-icon-outline.svg +0 -1
- package/src/assets/img/wallet-icon.svg +0 -1
- package/src/assets/img/wallet.svg +0 -43
- package/src/assets/oca-bundles.json +0 -174
- package/src/components/animated/ButtonLoading.tsx +0 -32
- package/src/components/animated/ConnectionLoading.tsx +0 -53
- package/src/components/animated/CredentialAdded.tsx +0 -72
- package/src/components/animated/CredentialPending.tsx +0 -63
- package/src/components/animated/LoadingIndicator.tsx +0 -49
- package/src/components/animated/PresentationLoading.tsx +0 -52
- package/src/components/animated/RecordLoading.tsx +0 -75
- package/src/components/animated/SendingProof.tsx +0 -53
- package/src/components/animated/SentProof.tsx +0 -72
- package/src/components/buttons/Button-api.tsx +0 -46
- package/src/components/buttons/Button.tsx +0 -125
- package/src/components/buttons/HeaderHome.tsx +0 -25
- package/src/components/buttons/IconButton.tsx +0 -93
- package/src/components/buttons/InfoIcon.tsx +0 -35
- package/src/components/buttons/SettingsMenu.tsx +0 -26
- package/src/components/buttons/ToggleButton.tsx +0 -93
- package/src/components/buttons/index.ts +0 -4
- package/src/components/chat/ActionSlider.tsx +0 -104
- package/src/components/chat/ChatActions.tsx +0 -33
- package/src/components/chat/ChatBubble.tsx +0 -20
- package/src/components/chat/ChatEvent.tsx +0 -31
- package/src/components/chat/ChatMessage.tsx +0 -142
- package/src/components/chat/MessageInput.tsx +0 -46
- package/src/components/chat/index.ts +0 -4
- package/src/components/forms/WalletNameForm.tsx +0 -148
- package/src/components/index.ts +0 -4
- package/src/components/inputs/BiometryControl.tsx +0 -190
- package/src/components/inputs/BulletPoint.tsx +0 -32
- package/src/components/inputs/CheckBoxRow.tsx +0 -67
- package/src/components/inputs/InlineErrorText.tsx +0 -60
- package/src/components/inputs/LimitedTextInput.tsx +0 -71
- package/src/components/inputs/PINInput.tsx +0 -175
- package/src/components/inputs/SingleSelectBlock.tsx +0 -53
- package/src/components/listItems/ContactCredentialListItem.tsx +0 -79
- package/src/components/listItems/ContactListItem.tsx +0 -121
- package/src/components/listItems/NotificationListItem.tsx +0 -514
- package/src/components/misc/AvatarView.tsx +0 -33
- package/src/components/misc/CardWatermark.tsx +0 -52
- package/src/components/misc/ConnectionAlert.tsx +0 -123
- package/src/components/misc/ConnectionImage.tsx +0 -45
- package/src/components/misc/ContentGradient.tsx +0 -40
- package/src/components/misc/CredentialCard.tsx +0 -161
- package/src/components/misc/CredentialCard10.tsx +0 -329
- package/src/components/misc/CredentialCard11.tsx +0 -701
- package/src/components/misc/CredentialCard11ActionFooter.tsx +0 -55
- package/src/components/misc/CredentialCard11Issuer.tsx +0 -74
- package/src/components/misc/CredentialCard11Logo.tsx +0 -61
- package/src/components/misc/EmptyList.tsx +0 -27
- package/src/components/misc/EmptyListContacts.tsx +0 -55
- package/src/components/misc/ErrorBoundary.tsx +0 -200
- package/src/components/misc/FauxHeader.tsx +0 -75
- package/src/components/misc/InfoBox.tsx +0 -283
- package/src/components/misc/NoNewUpdates.tsx +0 -38
- package/src/components/misc/PINHeader.tsx +0 -25
- package/src/components/misc/PINValidationHelper.tsx +0 -48
- package/src/components/misc/Pagination.tsx +0 -114
- package/src/components/misc/QRRenderer.tsx +0 -53
- package/src/components/misc/QRScanner.tsx +0 -395
- package/src/components/misc/QRScannerTorch.tsx +0 -74
- package/src/components/misc/ScanCamera.tsx +0 -86
- package/src/components/misc/ScanTab.tsx +0 -45
- package/src/components/misc/SharedProofData.tsx +0 -98
- package/src/components/misc/UnorderedList.tsx +0 -28
- package/src/components/misc/VerifierCredentialCard.tsx +0 -378
- package/src/components/misc/index.ts +0 -2
- package/src/components/modals/AlertModal.tsx +0 -42
- package/src/components/modals/AppGuideModal.tsx +0 -142
- package/src/components/modals/CameraDisclosureModal.tsx +0 -126
- package/src/components/modals/CommonRemoveModal.tsx +0 -337
- package/src/components/modals/DeveloperModal.tsx +0 -32
- package/src/components/modals/DismissiblePopupModal.tsx +0 -169
- package/src/components/modals/ErrorModal.tsx +0 -107
- package/src/components/modals/ImageModal.tsx +0 -80
- package/src/components/modals/NetInfoModal.tsx +0 -35
- package/src/components/modals/PopupModal.tsx +0 -56
- package/src/components/modals/ProofCancelModal.tsx +0 -79
- package/src/components/modals/SafeAreaModal.tsx +0 -17
- package/src/components/record/Record.tsx +0 -100
- package/src/components/record/RecordBinaryField.tsx +0 -55
- package/src/components/record/RecordDateIntField.tsx +0 -63
- package/src/components/record/RecordField.tsx +0 -154
- package/src/components/record/RecordFooter.tsx +0 -17
- package/src/components/record/RecordHeader.tsx +0 -17
- package/src/components/record/RecordRemove.tsx +0 -66
- package/src/components/texts/HeaderTitle.tsx +0 -25
- package/src/components/texts/HighlightTextBox.tsx +0 -41
- package/src/components/texts/InfoTextBox.tsx +0 -129
- package/src/components/texts/Link.tsx +0 -41
- package/src/components/texts/Text.tsx +0 -21
- package/src/components/texts/ThemedText.tsx +0 -24
- package/src/components/toast/BaseToast.tsx +0 -128
- package/src/components/toast/ToastConfig.tsx +0 -21
- package/src/components/tour/AttachTourStep.tsx +0 -73
- package/src/components/tour/CredentialOfferTourSteps.tsx +0 -41
- package/src/components/tour/CredentialsTourSteps.tsx +0 -41
- package/src/components/tour/HomeTourSteps.tsx +0 -104
- package/src/components/tour/ProofRequestTourSteps.tsx +0 -41
- package/src/components/tour/SpotCutout.tsx +0 -65
- package/src/components/tour/TourBox.tsx +0 -255
- package/src/components/tour/TourOverlay.tsx +0 -134
- package/src/components/views/Banner.tsx +0 -181
- package/src/components/views/CredentialCardLogo.tsx +0 -77
- package/src/components/views/CredentialDetailPrimaryHeader.tsx +0 -107
- package/src/components/views/CredentialDetailSecondaryHeader.tsx +0 -60
- package/src/components/views/HeaderWithBanner.tsx +0 -17
- package/src/components/views/HomeFooterView.tsx +0 -110
- package/src/components/views/HomeHeaderView.tsx +0 -12
- package/src/components/views/KeyboardView.tsx +0 -41
- package/src/components/views/LoadingPlaceholder.tsx +0 -168
- package/src/components/views/LoadingView.tsx +0 -29
- package/src/components/views/ProgressBar.tsx +0 -53
- package/src/components/views/PushNotificationsContent.tsx +0 -51
- package/src/components/views/PushNotificationsDisabledContent.tsx +0 -47
- package/src/configs/ledgers/indy/index.ts +0 -8
- package/src/configs/ledgers/indy/ledgers.json +0 -51
- package/src/constants.ts +0 -107
- package/src/container-api.ts +0 -247
- package/src/container-impl.ts +0 -243
- package/src/contexts/activity.tsx +0 -145
- package/src/contexts/animated-components.ts +0 -9
- package/src/contexts/auth.tsx +0 -240
- package/src/contexts/index.ts +0 -3
- package/src/contexts/navigation.tsx +0 -19
- package/src/contexts/network.tsx +0 -125
- package/src/contexts/reducers/index.ts +0 -3
- package/src/contexts/reducers/store.ts +0 -754
- package/src/contexts/store.tsx +0 -103
- package/src/contexts/theme.tsx +0 -51
- package/src/contexts/tour/tour-context.tsx +0 -160
- package/src/contexts/tour/tour-provider.tsx +0 -160
- package/src/hooks/bundle-resolver.ts +0 -95
- package/src/hooks/chat-messages.tsx +0 -263
- package/src/hooks/connections.ts +0 -37
- package/src/hooks/credential-card-styles.ts +0 -144
- package/src/hooks/credentials.ts +0 -11
- package/src/hooks/deep-links.ts +0 -49
- package/src/hooks/developer-mode.ts +0 -25
- package/src/hooks/lockout.ts +0 -77
- package/src/hooks/notifications.ts +0 -108
- package/src/hooks/oob.ts +0 -17
- package/src/hooks/proof-request-templates.ts +0 -40
- package/src/hooks/proofs.ts +0 -32
- package/src/hooks/screen-capture.ts +0 -52
- package/src/hooks/useBifoldAgentSetup.ts +0 -169
- package/src/hooks/useOnboardingState.ts +0 -53
- package/src/hooks/usePINValidation.ts +0 -98
- package/src/index.ts +0 -239
- package/src/layout/ScreenLayout.tsx +0 -53
- package/src/localization/en/en.json +0 -951
- package/src/localization/en/index.ts +0 -3
- package/src/localization/fr/fr.json +0 -933
- package/src/localization/fr/index.ts +0 -3
- package/src/localization/index.ts +0 -66
- package/src/localization/pt-br/index.ts +0 -3
- package/src/localization/pt-br/pt-br.json +0 -911
- package/src/modules/history/context/historyManager.tsx +0 -247
- package/src/modules/history/index.ts +0 -2
- package/src/modules/history/navigation/HistoryStack.tsx +0 -29
- package/src/modules/history/services/queue.service.tsx +0 -31
- package/src/modules/history/types/index.ts +0 -92
- package/src/modules/history/ui/HistoryPage.tsx +0 -133
- package/src/modules/history/ui/HistorySettings.tsx +0 -183
- package/src/modules/history/ui/assets/img/HistoryCardAcceptedIcon.svg +0 -4
- package/src/modules/history/ui/assets/img/HistoryCardExpiredIcon.svg +0 -4
- package/src/modules/history/ui/assets/img/HistoryCardRevokedIcon.svg +0 -4
- package/src/modules/history/ui/assets/img/HistoryInformationSentIcon.svg +0 -4
- package/src/modules/history/ui/assets/img/HistoryPinUpdatedIcon.svg +0 -4
- package/src/modules/history/ui/assets/img/IconChevronRight.svg +0 -3
- package/src/modules/history/ui/components/BulletPoint.tsx +0 -49
- package/src/modules/history/ui/components/HistoryListItem.tsx +0 -251
- package/src/modules/history/ui/components/HistoryMenu.tsx +0 -25
- package/src/modules/history/ui/components/SingleSelectBlock.tsx +0 -72
- package/src/modules/openid/components/CredentialRowCard.tsx +0 -64
- package/src/modules/openid/components/OpenIDCredentialCard.tsx +0 -276
- package/src/modules/openid/context/OpenIDCredentialRecordProvider.tsx +0 -296
- package/src/modules/openid/display.tsx +0 -467
- package/src/modules/openid/displayProof.tsx +0 -86
- package/src/modules/openid/hooks/openid.tsx +0 -111
- package/src/modules/openid/metadata.tsx +0 -59
- package/src/modules/openid/offerResolve.tsx +0 -281
- package/src/modules/openid/resolverProof.tsx +0 -286
- package/src/modules/openid/screens/OpenIDCredentialDetails.tsx +0 -214
- package/src/modules/openid/screens/OpenIDCredentialOffer.tsx +0 -192
- package/src/modules/openid/screens/OpenIDProofChangeCredential.tsx +0 -133
- package/src/modules/openid/screens/OpenIDProofPresentation.tsx +0 -423
- package/src/modules/openid/types.tsx +0 -111
- package/src/modules/openid/utils/utils.tsx +0 -119
- package/src/navigators/ConnectStack.tsx +0 -68
- package/src/navigators/ContactStack.tsx +0 -91
- package/src/navigators/CredentialStack.tsx +0 -48
- package/src/navigators/DeliveryStack.tsx +0 -76
- package/src/navigators/HomeStack.tsx +0 -37
- package/src/navigators/MainStack.tsx +0 -146
- package/src/navigators/NotificationStack.tsx +0 -56
- package/src/navigators/OnboardingScreens.ts +0 -142
- package/src/navigators/OnboardingStack.tsx +0 -205
- package/src/navigators/ProofRequestStack.tsx +0 -113
- package/src/navigators/RootStack.tsx +0 -71
- package/src/navigators/SettingStack.tsx +0 -174
- package/src/navigators/TabStack.tsx +0 -304
- package/src/navigators/defaultLayoutOptions.tsx +0 -17
- package/src/navigators/defaultStackOptions.tsx +0 -102
- package/src/navigators/index.ts +0 -27
- package/src/onboarding.ts +0 -90
- package/src/screens/AttemptLockout.tsx +0 -153
- package/src/screens/AutoLock.tsx +0 -140
- package/src/screens/Biometry.tsx +0 -54
- package/src/screens/Chat.tsx +0 -141
- package/src/screens/ConfigureMediator.tsx +0 -160
- package/src/screens/Connection.tsx +0 -394
- package/src/screens/ContactDetails.tsx +0 -350
- package/src/screens/CredentialDetails.tsx +0 -473
- package/src/screens/CredentialOffer.tsx +0 -334
- package/src/screens/CredentialOfferAccept.tsx +0 -189
- package/src/screens/DataRetention.tsx +0 -91
- package/src/screens/Developer.tsx +0 -289
- package/src/screens/Home.tsx +0 -173
- package/src/screens/JSONDetails.tsx +0 -102
- package/src/screens/Language.tsx +0 -97
- package/src/screens/ListContacts.tsx +0 -112
- package/src/screens/ListCredentials.tsx +0 -135
- package/src/screens/ListProofRequests.tsx +0 -148
- package/src/screens/MobileVerifierLoading.tsx +0 -106
- package/src/screens/NameWallet.tsx +0 -9
- package/src/screens/Onboarding.tsx +0 -162
- package/src/screens/OnboardingPages.tsx +0 -160
- package/src/screens/PINChange.tsx +0 -249
- package/src/screens/PINCreate.tsx +0 -185
- package/src/screens/PINEnter.tsx +0 -432
- package/src/screens/PINExplainer.tsx +0 -85
- package/src/screens/PINVerify.tsx +0 -195
- package/src/screens/PasteUrl.tsx +0 -140
- package/src/screens/Preface.tsx +0 -78
- package/src/screens/ProofChangeCredential.tsx +0 -179
- package/src/screens/ProofDetails.tsx +0 -348
- package/src/screens/ProofRequest.tsx +0 -999
- package/src/screens/ProofRequestAccept.tsx +0 -133
- package/src/screens/ProofRequestDetails.tsx +0 -270
- package/src/screens/ProofRequestUsageHistory.tsx +0 -152
- package/src/screens/ProofRequesting.tsx +0 -245
- package/src/screens/PushNotifications.tsx +0 -59
- package/src/screens/RenameContact.tsx +0 -155
- package/src/screens/RenameWallet.tsx +0 -26
- package/src/screens/Scan.tsx +0 -145
- package/src/screens/ScanHelp.tsx +0 -48
- package/src/screens/Settings.tsx +0 -415
- package/src/screens/Splash.tsx +0 -80
- package/src/screens/Terms.tsx +0 -127
- package/src/screens/ToggleBiometry.tsx +0 -153
- package/src/screens/TogglePushNotifications.tsx +0 -118
- package/src/screens/Tours.tsx +0 -93
- package/src/screens/UpdateAvailable.tsx +0 -119
- package/src/screens/WhatAreContacts.tsx +0 -71
- package/src/services/bifoldLogger.ts +0 -3
- package/src/services/keychain.ts +0 -184
- package/src/services/logger.ts +0 -89
- package/src/services/storage.ts +0 -136
- package/src/theme-builder.ts +0 -157
- package/src/theme.interface.ts +0 -580
- package/src/theme.ts +0 -1346
- package/src/types/attempt-lockout-config.ts +0 -8
- package/src/types/attestation.ts +0 -17
- package/src/types/chat.ts +0 -4
- package/src/types/config.ts +0 -64
- package/src/types/contact-details.ts +0 -5
- package/src/types/credential-list-footer.ts +0 -3
- package/src/types/credential-status.ts +0 -3
- package/src/types/credentials.ts +0 -7
- package/src/types/decline.ts +0 -5
- package/src/types/error.ts +0 -40
- package/src/types/fn.ts +0 -2
- package/src/types/genesis.ts +0 -35
- package/src/types/index.ts +0 -2
- package/src/types/metadata.ts +0 -16
- package/src/types/navigators.ts +0 -239
- package/src/types/notification.ts +0 -24
- package/src/types/permissions.ts +0 -2
- package/src/types/proof-items.ts +0 -32
- package/src/types/react-i18next.d.ts +0 -10
- package/src/types/remove.ts +0 -8
- package/src/types/security.ts +0 -32
- package/src/types/settings.ts +0 -28
- package/src/types/state.ts +0 -97
- package/src/types/tour.ts +0 -20
- package/src/types/version-check.ts +0 -18
- package/src/utils/PINValidation.ts +0 -98
- package/src/utils/agent.ts +0 -128
- package/src/utils/anonCredsProofRequestMapper.ts +0 -205
- package/src/utils/contacts.ts +0 -59
- package/src/utils/cred-def.ts +0 -33
- package/src/utils/credential.ts +0 -37
- package/src/utils/crypto.ts +0 -12
- package/src/utils/fileCache.ts +0 -152
- package/src/utils/helpers.ts +0 -1292
- package/src/utils/ledger.ts +0 -212
- package/src/utils/luminance.ts +0 -40
- package/src/utils/mediatorhelpers.ts +0 -71
- package/src/utils/migration.ts +0 -40
- package/src/utils/network.tsx +0 -55
- package/src/utils/oca.ts +0 -173
- package/src/utils/parsers.tsx +0 -111
- package/src/utils/proofBundle.ts +0 -220
- package/src/utils/schema.ts +0 -28
- package/src/utils/testable.ts +0 -17
|
@@ -1,754 +0,0 @@
|
|
|
1
|
-
import { LocalStorageKeys } from '../../constants'
|
|
2
|
-
import { storeLoginAttempt } from '../../services/keychain'
|
|
3
|
-
import {
|
|
4
|
-
Preferences as PreferencesState,
|
|
5
|
-
Tours as ToursState,
|
|
6
|
-
Onboarding as OnboardingState,
|
|
7
|
-
Authentication as AuthenticationState,
|
|
8
|
-
Lockout as LockoutState,
|
|
9
|
-
LoginAttempt as LoginAttemptState,
|
|
10
|
-
Migration as MigrationState,
|
|
11
|
-
State,
|
|
12
|
-
Preferences,
|
|
13
|
-
} from '../../types/state'
|
|
14
|
-
import { generateRandomWalletName } from '../../utils/helpers'
|
|
15
|
-
import { PersistentStorage } from '../../services/storage'
|
|
16
|
-
import Config from 'react-native-config'
|
|
17
|
-
|
|
18
|
-
enum StateDispatchAction {
|
|
19
|
-
STATE_DISPATCH = 'state/stateDispatch',
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
enum OnboardingDispatchAction {
|
|
23
|
-
ONBOARDING_UPDATED = 'onboarding/onboardingStateLoaded',
|
|
24
|
-
DID_SEE_PREFACE = 'onboarding/didSeePreface',
|
|
25
|
-
DID_COMPLETE_TUTORIAL = 'onboarding/didCompleteTutorial',
|
|
26
|
-
DID_AGREE_TO_TERMS = 'onboarding/didAgreeToTerms',
|
|
27
|
-
DID_CREATE_PIN = 'onboarding/didCreatePIN',
|
|
28
|
-
DID_NAME_WALLET = 'onboarding/didNameWallet',
|
|
29
|
-
DID_COMPLETE_ONBOARDING = 'onboarding/didCompleteOnboarding',
|
|
30
|
-
ONBOARDING_VERSION = 'onboarding/onboardingVersion',
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
enum MigrationDispatchAction {
|
|
34
|
-
DID_MIGRATE_TO_ASKAR = 'migration/didMigrateToAskar',
|
|
35
|
-
MIGRATION_UPDATED = 'migration/migrationStateLoaded',
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
enum LockoutDispatchAction {
|
|
39
|
-
LOCKOUT_UPDATED = 'lockout/lockoutUpdated',
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
enum LoginAttemptDispatchAction {
|
|
43
|
-
ATTEMPT_UPDATED = 'loginAttempt/loginAttemptUpdated',
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
enum PreferencesDispatchAction {
|
|
47
|
-
ENABLE_DEVELOPER_MODE = 'preferences/enableDeveloperMode',
|
|
48
|
-
USE_BIOMETRY = 'preferences/useBiometry',
|
|
49
|
-
USE_PUSH_NOTIFICATIONS = 'preferences/usePushNotifications',
|
|
50
|
-
PREFERENCES_UPDATED = 'preferences/preferencesStateLoaded',
|
|
51
|
-
USE_VERIFIER_CAPABILITY = 'preferences/useVerifierCapability',
|
|
52
|
-
USE_CONNECTION_INVITER_CAPABILITY = 'preferences/useConnectionInviterCapability',
|
|
53
|
-
USE_DEV_VERIFIER_TEMPLATES = 'preferences/useDevVerifierTemplates',
|
|
54
|
-
ENABLE_WALLET_NAMING = 'preferences/enableWalletNaming',
|
|
55
|
-
UPDATE_WALLET_NAME = 'preferences/updateWalletName',
|
|
56
|
-
ACCEPT_DEV_CREDENTIALS = 'preferences/acceptDevCredentials',
|
|
57
|
-
USE_DATA_RETENTION = 'preferences/useDataRetention',
|
|
58
|
-
PREVENT_AUTO_LOCK = 'preferences/preventAutoLock',
|
|
59
|
-
USE_SHAREABLE_LINK = 'preferences/useShareableLink',
|
|
60
|
-
UPDATE_ALTERNATE_CONTACT_NAMES = 'preferences/updateAlternateContactNames',
|
|
61
|
-
AUTO_LOCK_TIME = 'preferences/autoLockTime',
|
|
62
|
-
SET_THEME = 'preferences/setTheme',
|
|
63
|
-
SET_SELECTED_MEDIATOR = 'preferences/setSelectedMediator',
|
|
64
|
-
ADD_AVAILABLE_MEDIATOR = 'preferences/addAvailableMediator',
|
|
65
|
-
RESET_MEDIATORS = 'preferences/resetMediators',
|
|
66
|
-
BANNER_MESSAGES = 'preferences/bannerMessages',
|
|
67
|
-
REMOVE_BANNER_MESSAGE = 'REMOVE_BANNER_MESSAGE',
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
enum ToursDispatchAction {
|
|
71
|
-
TOUR_DATA_UPDATED = 'tours/tourDataUpdated',
|
|
72
|
-
UPDATE_SEEN_TOUR_PROMPT = 'tours/seenTourPrompt',
|
|
73
|
-
ENABLE_TOURS = 'tours/enableTours',
|
|
74
|
-
UPDATE_SEEN_HOME_TOUR = 'tours/seenHomeTour',
|
|
75
|
-
UPDATE_SEEN_CREDENTIALS_TOUR = 'tours/seenCredentialsTour',
|
|
76
|
-
UPDATE_SEEN_CREDENTIAL_OFFER_TOUR = 'tours/seenCredentialOfferTour',
|
|
77
|
-
UPDATE_SEEN_PROOF_REQUEST_TOUR = 'tours/seenProofRequestTour',
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
enum AuthenticationDispatchAction {
|
|
81
|
-
DID_AUTHENTICATE = 'authentication/didAuthenticate',
|
|
82
|
-
}
|
|
83
|
-
|
|
84
|
-
enum DeepLinkDispatchAction {
|
|
85
|
-
ACTIVE_DEEP_LINK = 'deepLink/activeDeepLink',
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
enum AppStatusDispatchAction {
|
|
89
|
-
SET_VERSION_INFO = 'appStatus/checkVersionUpdate',
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
export type DispatchAction =
|
|
93
|
-
| StateDispatchAction
|
|
94
|
-
| OnboardingDispatchAction
|
|
95
|
-
| LoginAttemptDispatchAction
|
|
96
|
-
| LockoutDispatchAction
|
|
97
|
-
| PreferencesDispatchAction
|
|
98
|
-
| ToursDispatchAction
|
|
99
|
-
| AuthenticationDispatchAction
|
|
100
|
-
| DeepLinkDispatchAction
|
|
101
|
-
| MigrationDispatchAction
|
|
102
|
-
| AppStatusDispatchAction
|
|
103
|
-
|
|
104
|
-
export const DispatchAction = {
|
|
105
|
-
...StateDispatchAction,
|
|
106
|
-
...OnboardingDispatchAction,
|
|
107
|
-
...LoginAttemptDispatchAction,
|
|
108
|
-
...LockoutDispatchAction,
|
|
109
|
-
...PreferencesDispatchAction,
|
|
110
|
-
...ToursDispatchAction,
|
|
111
|
-
...AuthenticationDispatchAction,
|
|
112
|
-
...DeepLinkDispatchAction,
|
|
113
|
-
...MigrationDispatchAction,
|
|
114
|
-
...AppStatusDispatchAction,
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
export interface ReducerAction<R> {
|
|
118
|
-
type: R
|
|
119
|
-
payload?: Array<any>
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
export const reducer = <S extends State>(state: S, action: ReducerAction<DispatchAction>): S => {
|
|
123
|
-
switch (action.type) {
|
|
124
|
-
case AppStatusDispatchAction.SET_VERSION_INFO: {
|
|
125
|
-
const info = (action.payload || []).pop()
|
|
126
|
-
const versionInfo = { ...state.versionInfo, ...info }
|
|
127
|
-
|
|
128
|
-
return { ...state, versionInfo }
|
|
129
|
-
}
|
|
130
|
-
case StateDispatchAction.STATE_DISPATCH: {
|
|
131
|
-
const newState: State = (action?.payload || []).pop()
|
|
132
|
-
return { ...state, ...newState, stateLoaded: true }
|
|
133
|
-
}
|
|
134
|
-
case PreferencesDispatchAction.ENABLE_DEVELOPER_MODE: {
|
|
135
|
-
const choice = (action?.payload ?? []).pop() ?? false
|
|
136
|
-
const preferences = { ...state.preferences, developerModeEnabled: choice }
|
|
137
|
-
|
|
138
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
139
|
-
|
|
140
|
-
return {
|
|
141
|
-
...state,
|
|
142
|
-
preferences,
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
case PreferencesDispatchAction.USE_BIOMETRY: {
|
|
146
|
-
const choice = (action?.payload ?? []).pop() ?? false
|
|
147
|
-
const preferences = {
|
|
148
|
-
...state.preferences,
|
|
149
|
-
useBiometry: choice,
|
|
150
|
-
}
|
|
151
|
-
const onboarding = {
|
|
152
|
-
...state.onboarding,
|
|
153
|
-
didConsiderBiometry: true,
|
|
154
|
-
}
|
|
155
|
-
const newState = {
|
|
156
|
-
...state,
|
|
157
|
-
onboarding,
|
|
158
|
-
preferences,
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Onboarding, onboarding)
|
|
162
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
163
|
-
|
|
164
|
-
return newState
|
|
165
|
-
}
|
|
166
|
-
case PreferencesDispatchAction.USE_PUSH_NOTIFICATIONS: {
|
|
167
|
-
const choice = (action?.payload ?? []).pop() ?? false
|
|
168
|
-
const preferences = {
|
|
169
|
-
...state.preferences,
|
|
170
|
-
usePushNotifications: choice,
|
|
171
|
-
}
|
|
172
|
-
const onboarding = {
|
|
173
|
-
...state.onboarding,
|
|
174
|
-
didConsiderPushNotifications: true,
|
|
175
|
-
}
|
|
176
|
-
const newState = {
|
|
177
|
-
...state,
|
|
178
|
-
onboarding,
|
|
179
|
-
preferences,
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Onboarding, onboarding)
|
|
183
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
184
|
-
|
|
185
|
-
return newState
|
|
186
|
-
}
|
|
187
|
-
case PreferencesDispatchAction.USE_VERIFIER_CAPABILITY: {
|
|
188
|
-
const choice = (action?.payload ?? []).pop() ?? false
|
|
189
|
-
const preferences = {
|
|
190
|
-
...state.preferences,
|
|
191
|
-
useVerifierCapability: choice,
|
|
192
|
-
}
|
|
193
|
-
const newState = {
|
|
194
|
-
...state,
|
|
195
|
-
preferences,
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
199
|
-
|
|
200
|
-
return newState
|
|
201
|
-
}
|
|
202
|
-
case PreferencesDispatchAction.USE_CONNECTION_INVITER_CAPABILITY: {
|
|
203
|
-
const choice = (action?.payload ?? []).pop() ?? false
|
|
204
|
-
const preferences = {
|
|
205
|
-
...state.preferences,
|
|
206
|
-
useConnectionInviterCapability: choice,
|
|
207
|
-
}
|
|
208
|
-
const newState = {
|
|
209
|
-
...state,
|
|
210
|
-
preferences,
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
214
|
-
|
|
215
|
-
return newState
|
|
216
|
-
}
|
|
217
|
-
case PreferencesDispatchAction.USE_DEV_VERIFIER_TEMPLATES: {
|
|
218
|
-
const choice = (action?.payload ?? []).pop() ?? false
|
|
219
|
-
const preferences = {
|
|
220
|
-
...state.preferences,
|
|
221
|
-
useDevVerifierTemplates: choice,
|
|
222
|
-
}
|
|
223
|
-
const newState = {
|
|
224
|
-
...state,
|
|
225
|
-
preferences,
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
229
|
-
|
|
230
|
-
return newState
|
|
231
|
-
}
|
|
232
|
-
case PreferencesDispatchAction.ACCEPT_DEV_CREDENTIALS: {
|
|
233
|
-
const choice = (action?.payload ?? []).pop() ?? false
|
|
234
|
-
const preferences = {
|
|
235
|
-
...state.preferences,
|
|
236
|
-
acceptDevCredentials: choice,
|
|
237
|
-
}
|
|
238
|
-
const newState = {
|
|
239
|
-
...state,
|
|
240
|
-
preferences,
|
|
241
|
-
}
|
|
242
|
-
|
|
243
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
244
|
-
|
|
245
|
-
return newState
|
|
246
|
-
}
|
|
247
|
-
case PreferencesDispatchAction.USE_DATA_RETENTION: {
|
|
248
|
-
const choice = (action?.payload ?? []).pop() ?? false
|
|
249
|
-
const preferences = {
|
|
250
|
-
...state.preferences,
|
|
251
|
-
useDataRetention: choice,
|
|
252
|
-
}
|
|
253
|
-
const newState = {
|
|
254
|
-
...state,
|
|
255
|
-
preferences,
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
259
|
-
|
|
260
|
-
return newState
|
|
261
|
-
}
|
|
262
|
-
case PreferencesDispatchAction.PREFERENCES_UPDATED: {
|
|
263
|
-
const preferences: PreferencesState = (action?.payload || []).pop()
|
|
264
|
-
// For older wallets that haven't explicitly named their wallet yet
|
|
265
|
-
if (!preferences.walletName) {
|
|
266
|
-
preferences.walletName = generateRandomWalletName()
|
|
267
|
-
}
|
|
268
|
-
// For older wallets initialized before data retention option was created
|
|
269
|
-
if (preferences.useDataRetention === undefined) {
|
|
270
|
-
preferences.useDataRetention = true
|
|
271
|
-
}
|
|
272
|
-
|
|
273
|
-
if (!preferences.alternateContactNames) {
|
|
274
|
-
preferences.alternateContactNames = {}
|
|
275
|
-
}
|
|
276
|
-
|
|
277
|
-
return {
|
|
278
|
-
...state,
|
|
279
|
-
preferences,
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
case PreferencesDispatchAction.ENABLE_WALLET_NAMING: {
|
|
283
|
-
const choice = (action?.payload ?? []).pop() ?? false
|
|
284
|
-
const preferences = { ...state.preferences, enableWalletNaming: choice }
|
|
285
|
-
|
|
286
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
287
|
-
|
|
288
|
-
return {
|
|
289
|
-
...state,
|
|
290
|
-
preferences,
|
|
291
|
-
}
|
|
292
|
-
}
|
|
293
|
-
case PreferencesDispatchAction.UPDATE_WALLET_NAME: {
|
|
294
|
-
// We should never see 'My Wallet - 123', that's just there to let us know something went wrong while saving the wallet name
|
|
295
|
-
const name = (action?.payload ?? []).pop() ?? 'My Wallet - 123'
|
|
296
|
-
const preferences = {
|
|
297
|
-
...state.preferences,
|
|
298
|
-
walletName: name,
|
|
299
|
-
}
|
|
300
|
-
const newState = {
|
|
301
|
-
...state,
|
|
302
|
-
preferences,
|
|
303
|
-
}
|
|
304
|
-
|
|
305
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
306
|
-
|
|
307
|
-
return newState
|
|
308
|
-
}
|
|
309
|
-
case PreferencesDispatchAction.PREVENT_AUTO_LOCK: {
|
|
310
|
-
const choice = (action?.payload ?? []).pop() ?? false
|
|
311
|
-
const preferences = { ...state.preferences, preventAutoLock: choice }
|
|
312
|
-
|
|
313
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
314
|
-
|
|
315
|
-
return {
|
|
316
|
-
...state,
|
|
317
|
-
preferences,
|
|
318
|
-
}
|
|
319
|
-
}
|
|
320
|
-
case PreferencesDispatchAction.USE_SHAREABLE_LINK: {
|
|
321
|
-
const choice = (action?.payload ?? []).pop() ?? false
|
|
322
|
-
const preferences = { ...state.preferences, enableShareableLink: choice }
|
|
323
|
-
|
|
324
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
325
|
-
|
|
326
|
-
return {
|
|
327
|
-
...state,
|
|
328
|
-
preferences,
|
|
329
|
-
}
|
|
330
|
-
}
|
|
331
|
-
case PreferencesDispatchAction.UPDATE_ALTERNATE_CONTACT_NAMES: {
|
|
332
|
-
const idNamePair = (action?.payload ?? []).pop() ?? {}
|
|
333
|
-
const preferences = {
|
|
334
|
-
...state.preferences,
|
|
335
|
-
alternateContactNames: {
|
|
336
|
-
...state.preferences.alternateContactNames,
|
|
337
|
-
...idNamePair,
|
|
338
|
-
},
|
|
339
|
-
}
|
|
340
|
-
const newState = {
|
|
341
|
-
...state,
|
|
342
|
-
preferences,
|
|
343
|
-
}
|
|
344
|
-
|
|
345
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
346
|
-
|
|
347
|
-
return newState
|
|
348
|
-
}
|
|
349
|
-
case PreferencesDispatchAction.SET_THEME: {
|
|
350
|
-
const theme = (action?.payload ?? []).pop() ?? ''
|
|
351
|
-
const preferences = { ...state.preferences, theme }
|
|
352
|
-
|
|
353
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
354
|
-
|
|
355
|
-
return {
|
|
356
|
-
...state,
|
|
357
|
-
preferences,
|
|
358
|
-
}
|
|
359
|
-
}
|
|
360
|
-
case ToursDispatchAction.UPDATE_SEEN_TOUR_PROMPT: {
|
|
361
|
-
const seenToursPrompt: ToursState = (action?.payload ?? []).pop() ?? false
|
|
362
|
-
const tours = {
|
|
363
|
-
...state.tours,
|
|
364
|
-
seenToursPrompt,
|
|
365
|
-
}
|
|
366
|
-
const newState = {
|
|
367
|
-
...state,
|
|
368
|
-
tours,
|
|
369
|
-
}
|
|
370
|
-
|
|
371
|
-
return newState
|
|
372
|
-
}
|
|
373
|
-
case ToursDispatchAction.TOUR_DATA_UPDATED: {
|
|
374
|
-
const tourData: ToursState = (action?.payload ?? []).pop() ?? {}
|
|
375
|
-
const tours = {
|
|
376
|
-
...state.tours,
|
|
377
|
-
...tourData,
|
|
378
|
-
}
|
|
379
|
-
const newState = {
|
|
380
|
-
...state,
|
|
381
|
-
tours,
|
|
382
|
-
}
|
|
383
|
-
|
|
384
|
-
return newState
|
|
385
|
-
}
|
|
386
|
-
case ToursDispatchAction.ENABLE_TOURS: {
|
|
387
|
-
const enableTours = (action?.payload ?? []).pop() ?? false
|
|
388
|
-
const tours = {
|
|
389
|
-
...state.tours,
|
|
390
|
-
}
|
|
391
|
-
if (enableTours) {
|
|
392
|
-
tours.enableTours = enableTours
|
|
393
|
-
tours.seenHomeTour = false
|
|
394
|
-
tours.seenCredentialsTour = false
|
|
395
|
-
tours.seenCredentialOfferTour = false
|
|
396
|
-
tours.seenProofRequestTour = false
|
|
397
|
-
} else {
|
|
398
|
-
tours.enableTours = enableTours
|
|
399
|
-
}
|
|
400
|
-
const newState = {
|
|
401
|
-
...state,
|
|
402
|
-
tours,
|
|
403
|
-
}
|
|
404
|
-
|
|
405
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Tours, tours)
|
|
406
|
-
|
|
407
|
-
return newState
|
|
408
|
-
}
|
|
409
|
-
case ToursDispatchAction.UPDATE_SEEN_HOME_TOUR: {
|
|
410
|
-
const seenHomeTour = (action?.payload ?? []).pop() ?? false
|
|
411
|
-
const tours = {
|
|
412
|
-
...state.tours,
|
|
413
|
-
seenHomeTour,
|
|
414
|
-
}
|
|
415
|
-
|
|
416
|
-
if (seenHomeTour && tours.seenCredentialsTour && tours.seenCredentialOfferTour && tours.seenProofRequestTour) {
|
|
417
|
-
tours.enableTours = false
|
|
418
|
-
}
|
|
419
|
-
|
|
420
|
-
const newState = {
|
|
421
|
-
...state,
|
|
422
|
-
tours,
|
|
423
|
-
}
|
|
424
|
-
|
|
425
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Tours, tours)
|
|
426
|
-
|
|
427
|
-
return newState
|
|
428
|
-
}
|
|
429
|
-
case ToursDispatchAction.UPDATE_SEEN_CREDENTIALS_TOUR: {
|
|
430
|
-
const seenCredentialsTour = (action?.payload ?? []).pop() ?? false
|
|
431
|
-
const tours = {
|
|
432
|
-
...state.tours,
|
|
433
|
-
seenCredentialsTour,
|
|
434
|
-
}
|
|
435
|
-
|
|
436
|
-
if (seenCredentialsTour && tours.seenHomeTour && tours.seenCredentialOfferTour && tours.seenProofRequestTour) {
|
|
437
|
-
tours.enableTours = false
|
|
438
|
-
}
|
|
439
|
-
|
|
440
|
-
const newState = {
|
|
441
|
-
...state,
|
|
442
|
-
tours,
|
|
443
|
-
}
|
|
444
|
-
|
|
445
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Tours, tours)
|
|
446
|
-
|
|
447
|
-
return newState
|
|
448
|
-
}
|
|
449
|
-
case ToursDispatchAction.UPDATE_SEEN_CREDENTIAL_OFFER_TOUR: {
|
|
450
|
-
const seenCredentialOfferTour = (action?.payload ?? []).pop() ?? false
|
|
451
|
-
const tours = {
|
|
452
|
-
...state.tours,
|
|
453
|
-
seenCredentialOfferTour,
|
|
454
|
-
}
|
|
455
|
-
|
|
456
|
-
if (seenCredentialOfferTour && tours.seenHomeTour && tours.seenCredentialsTour && tours.seenProofRequestTour) {
|
|
457
|
-
tours.enableTours = false
|
|
458
|
-
}
|
|
459
|
-
|
|
460
|
-
const newState = {
|
|
461
|
-
...state,
|
|
462
|
-
tours,
|
|
463
|
-
}
|
|
464
|
-
|
|
465
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Tours, tours)
|
|
466
|
-
|
|
467
|
-
return newState
|
|
468
|
-
}
|
|
469
|
-
case ToursDispatchAction.UPDATE_SEEN_PROOF_REQUEST_TOUR: {
|
|
470
|
-
const seenProofRequestTour = (action?.payload ?? []).pop() ?? false
|
|
471
|
-
const tours = {
|
|
472
|
-
...state.tours,
|
|
473
|
-
seenProofRequestTour,
|
|
474
|
-
}
|
|
475
|
-
|
|
476
|
-
if (seenProofRequestTour && tours.seenHomeTour && tours.seenCredentialOfferTour && tours.seenCredentialsTour) {
|
|
477
|
-
tours.enableTours = false
|
|
478
|
-
}
|
|
479
|
-
|
|
480
|
-
const newState = {
|
|
481
|
-
...state,
|
|
482
|
-
tours,
|
|
483
|
-
}
|
|
484
|
-
|
|
485
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Tours, tours)
|
|
486
|
-
|
|
487
|
-
return newState
|
|
488
|
-
}
|
|
489
|
-
|
|
490
|
-
case LoginAttemptDispatchAction.ATTEMPT_UPDATED: {
|
|
491
|
-
const loginAttempt: LoginAttemptState = (action?.payload || []).pop()
|
|
492
|
-
const newState = {
|
|
493
|
-
...state,
|
|
494
|
-
loginAttempt,
|
|
495
|
-
}
|
|
496
|
-
storeLoginAttempt(loginAttempt)
|
|
497
|
-
return newState
|
|
498
|
-
}
|
|
499
|
-
case LockoutDispatchAction.LOCKOUT_UPDATED: {
|
|
500
|
-
const { displayNotification }: LockoutState = (action?.payload ?? []).pop() ?? { displayNotification: false }
|
|
501
|
-
const lockout: LockoutState = {
|
|
502
|
-
...state.lockout,
|
|
503
|
-
displayNotification,
|
|
504
|
-
}
|
|
505
|
-
|
|
506
|
-
return {
|
|
507
|
-
...state,
|
|
508
|
-
lockout,
|
|
509
|
-
}
|
|
510
|
-
}
|
|
511
|
-
case PreferencesDispatchAction.AUTO_LOCK_TIME: {
|
|
512
|
-
const autoLockTime = (action?.payload ?? []).pop() ?? 5
|
|
513
|
-
const preferences: Preferences = {
|
|
514
|
-
...state.preferences,
|
|
515
|
-
autoLockTime,
|
|
516
|
-
}
|
|
517
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
518
|
-
return {
|
|
519
|
-
...state,
|
|
520
|
-
preferences,
|
|
521
|
-
}
|
|
522
|
-
}
|
|
523
|
-
case PreferencesDispatchAction.SET_SELECTED_MEDIATOR: {
|
|
524
|
-
const selectedMediator = (action?.payload ?? []).pop() ?? state.preferences.selectedMediator
|
|
525
|
-
const preferences: Preferences = {
|
|
526
|
-
...state.preferences,
|
|
527
|
-
selectedMediator,
|
|
528
|
-
}
|
|
529
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
530
|
-
return {
|
|
531
|
-
...state,
|
|
532
|
-
preferences,
|
|
533
|
-
}
|
|
534
|
-
}
|
|
535
|
-
case PreferencesDispatchAction.ADD_AVAILABLE_MEDIATOR: {
|
|
536
|
-
const mediatorToAdd = (action?.payload ?? []).pop() ?? ''
|
|
537
|
-
if (!state.preferences.availableMediators.includes(mediatorToAdd)) {
|
|
538
|
-
const updatedAvailableMediators = [...state.preferences.availableMediators, mediatorToAdd]
|
|
539
|
-
const preferences: Preferences = {
|
|
540
|
-
...state.preferences,
|
|
541
|
-
availableMediators: updatedAvailableMediators,
|
|
542
|
-
}
|
|
543
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
544
|
-
return {
|
|
545
|
-
...state,
|
|
546
|
-
preferences,
|
|
547
|
-
}
|
|
548
|
-
}
|
|
549
|
-
return state
|
|
550
|
-
}
|
|
551
|
-
case PreferencesDispatchAction.RESET_MEDIATORS: {
|
|
552
|
-
const preferences: Preferences = {
|
|
553
|
-
...state.preferences,
|
|
554
|
-
availableMediators: [Config.MEDIATOR_URL as string],
|
|
555
|
-
selectedMediator: Config.MEDIATOR_URL as string,
|
|
556
|
-
}
|
|
557
|
-
|
|
558
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
559
|
-
return {
|
|
560
|
-
...state,
|
|
561
|
-
preferences,
|
|
562
|
-
}
|
|
563
|
-
}
|
|
564
|
-
|
|
565
|
-
case PreferencesDispatchAction.BANNER_MESSAGES: {
|
|
566
|
-
const bannerMessageToAdd = action?.payload ?? []
|
|
567
|
-
const newBannerMessages = [...state.preferences.bannerMessages, ...bannerMessageToAdd]
|
|
568
|
-
const uniqueBannerMessages = Array.from(new Set(newBannerMessages))
|
|
569
|
-
|
|
570
|
-
const preferences: Preferences = {
|
|
571
|
-
...state.preferences,
|
|
572
|
-
bannerMessages: uniqueBannerMessages,
|
|
573
|
-
}
|
|
574
|
-
|
|
575
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
576
|
-
return {
|
|
577
|
-
...state,
|
|
578
|
-
preferences,
|
|
579
|
-
}
|
|
580
|
-
}
|
|
581
|
-
|
|
582
|
-
case PreferencesDispatchAction.REMOVE_BANNER_MESSAGE: {
|
|
583
|
-
const keysToRemove = action?.payload ?? []
|
|
584
|
-
const newBannerMessages = state.preferences.bannerMessages.filter((msg) => !keysToRemove.includes(msg.id))
|
|
585
|
-
const preferences: Preferences = {
|
|
586
|
-
...state.preferences,
|
|
587
|
-
bannerMessages: newBannerMessages,
|
|
588
|
-
}
|
|
589
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Preferences, preferences)
|
|
590
|
-
return {
|
|
591
|
-
...state,
|
|
592
|
-
preferences,
|
|
593
|
-
}
|
|
594
|
-
}
|
|
595
|
-
|
|
596
|
-
case OnboardingDispatchAction.ONBOARDING_VERSION: {
|
|
597
|
-
const version = (action?.payload || []).pop()
|
|
598
|
-
const onboarding = {
|
|
599
|
-
...state.onboarding,
|
|
600
|
-
onboardingVersion: version,
|
|
601
|
-
}
|
|
602
|
-
const newState = {
|
|
603
|
-
...state,
|
|
604
|
-
onboarding,
|
|
605
|
-
}
|
|
606
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Onboarding, newState.onboarding)
|
|
607
|
-
return newState
|
|
608
|
-
}
|
|
609
|
-
case OnboardingDispatchAction.DID_COMPLETE_ONBOARDING: {
|
|
610
|
-
const onboarding = {
|
|
611
|
-
...state.onboarding,
|
|
612
|
-
didCompleteOnboarding: true,
|
|
613
|
-
}
|
|
614
|
-
const newState = {
|
|
615
|
-
...state,
|
|
616
|
-
onboarding,
|
|
617
|
-
}
|
|
618
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Onboarding, newState.onboarding)
|
|
619
|
-
return newState
|
|
620
|
-
}
|
|
621
|
-
case OnboardingDispatchAction.ONBOARDING_UPDATED: {
|
|
622
|
-
const onboarding: OnboardingState = (action?.payload || []).pop()
|
|
623
|
-
return {
|
|
624
|
-
...state,
|
|
625
|
-
onboarding,
|
|
626
|
-
}
|
|
627
|
-
}
|
|
628
|
-
case OnboardingDispatchAction.DID_SEE_PREFACE: {
|
|
629
|
-
const onboarding = {
|
|
630
|
-
...state.onboarding,
|
|
631
|
-
didSeePreface: true,
|
|
632
|
-
}
|
|
633
|
-
const newState = {
|
|
634
|
-
...state,
|
|
635
|
-
onboarding,
|
|
636
|
-
}
|
|
637
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Onboarding, newState.onboarding)
|
|
638
|
-
return newState
|
|
639
|
-
}
|
|
640
|
-
case OnboardingDispatchAction.DID_COMPLETE_TUTORIAL: {
|
|
641
|
-
const onboarding = {
|
|
642
|
-
...state.onboarding,
|
|
643
|
-
didCompleteTutorial: true,
|
|
644
|
-
}
|
|
645
|
-
const newState = {
|
|
646
|
-
...state,
|
|
647
|
-
onboarding,
|
|
648
|
-
}
|
|
649
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Onboarding, newState.onboarding)
|
|
650
|
-
return newState
|
|
651
|
-
}
|
|
652
|
-
case OnboardingDispatchAction.DID_AGREE_TO_TERMS: {
|
|
653
|
-
const terms = (action?.payload || []).pop()
|
|
654
|
-
const version = terms?.DidAgreeToTerms
|
|
655
|
-
const onboarding: OnboardingState = {
|
|
656
|
-
...state.onboarding,
|
|
657
|
-
didAgreeToTerms: version ?? true,
|
|
658
|
-
}
|
|
659
|
-
const newState = {
|
|
660
|
-
...state,
|
|
661
|
-
onboarding,
|
|
662
|
-
}
|
|
663
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Onboarding, newState.onboarding)
|
|
664
|
-
return newState
|
|
665
|
-
}
|
|
666
|
-
case OnboardingDispatchAction.DID_CREATE_PIN: {
|
|
667
|
-
const onboarding: OnboardingState = {
|
|
668
|
-
...state.onboarding,
|
|
669
|
-
didCreatePIN: true,
|
|
670
|
-
}
|
|
671
|
-
// If the pin is created with this version (that includes Askar), we
|
|
672
|
-
// we can assume that a wallet using Indy SDK was never created. This
|
|
673
|
-
// allows us to skip the migration step. For wallets initialized using
|
|
674
|
-
// the indy sdk this won't be called, so the migration will be performed
|
|
675
|
-
const migration: MigrationState = {
|
|
676
|
-
...state.migration,
|
|
677
|
-
didMigrateToAskar: true,
|
|
678
|
-
}
|
|
679
|
-
|
|
680
|
-
// Reset any login attempts and penalty in keychain
|
|
681
|
-
// Since the app is being reinstalled, we can erase the login attempts from keychain
|
|
682
|
-
// in the previous installation
|
|
683
|
-
const loginAttempt: LoginAttemptState = {
|
|
684
|
-
loginAttempts: 0,
|
|
685
|
-
servedPenalty: true,
|
|
686
|
-
}
|
|
687
|
-
|
|
688
|
-
const newState = {
|
|
689
|
-
...state,
|
|
690
|
-
onboarding,
|
|
691
|
-
migration,
|
|
692
|
-
loginAttempt,
|
|
693
|
-
}
|
|
694
|
-
storeLoginAttempt(loginAttempt)
|
|
695
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Onboarding, newState.onboarding)
|
|
696
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Migration, newState.migration)
|
|
697
|
-
return newState
|
|
698
|
-
}
|
|
699
|
-
case OnboardingDispatchAction.DID_NAME_WALLET: {
|
|
700
|
-
const onboarding = {
|
|
701
|
-
...state.onboarding,
|
|
702
|
-
didNameWallet: true,
|
|
703
|
-
}
|
|
704
|
-
const newState = {
|
|
705
|
-
...state,
|
|
706
|
-
onboarding,
|
|
707
|
-
}
|
|
708
|
-
|
|
709
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Onboarding, onboarding)
|
|
710
|
-
|
|
711
|
-
return newState
|
|
712
|
-
}
|
|
713
|
-
case MigrationDispatchAction.DID_MIGRATE_TO_ASKAR: {
|
|
714
|
-
const migration: MigrationState = {
|
|
715
|
-
...state.migration,
|
|
716
|
-
didMigrateToAskar: true,
|
|
717
|
-
}
|
|
718
|
-
const newState = {
|
|
719
|
-
...state,
|
|
720
|
-
migration,
|
|
721
|
-
}
|
|
722
|
-
PersistentStorage.storeValueForKey(LocalStorageKeys.Migration, newState.migration)
|
|
723
|
-
return newState
|
|
724
|
-
}
|
|
725
|
-
case MigrationDispatchAction.MIGRATION_UPDATED: {
|
|
726
|
-
const migration: MigrationState = (action?.payload || []).pop()
|
|
727
|
-
return {
|
|
728
|
-
...state,
|
|
729
|
-
migration,
|
|
730
|
-
}
|
|
731
|
-
}
|
|
732
|
-
case AuthenticationDispatchAction.DID_AUTHENTICATE: {
|
|
733
|
-
const didAuthenticate: boolean = (action?.payload || []).pop() ?? true
|
|
734
|
-
const authentication: AuthenticationState = {
|
|
735
|
-
didAuthenticate,
|
|
736
|
-
}
|
|
737
|
-
return {
|
|
738
|
-
...state,
|
|
739
|
-
authentication,
|
|
740
|
-
}
|
|
741
|
-
}
|
|
742
|
-
case DeepLinkDispatchAction.ACTIVE_DEEP_LINK: {
|
|
743
|
-
const value: string = (action?.payload || []).pop()
|
|
744
|
-
return {
|
|
745
|
-
...state,
|
|
746
|
-
deepLink: value,
|
|
747
|
-
}
|
|
748
|
-
}
|
|
749
|
-
default:
|
|
750
|
-
return state
|
|
751
|
-
}
|
|
752
|
-
}
|
|
753
|
-
|
|
754
|
-
export default reducer
|