@bifold/core 2.4.6 → 2.6.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.
Files changed (461) hide show
  1. package/lib/commonjs/components/listItems/ContactCredentialListItem.js +9 -8
  2. package/lib/commonjs/components/listItems/ContactCredentialListItem.js.map +1 -1
  3. package/lib/commonjs/components/misc/CredentialCard11Logo.js +8 -7
  4. package/lib/commonjs/components/misc/CredentialCard11Logo.js.map +1 -1
  5. package/lib/commonjs/components/misc/PINHeader.js +5 -3
  6. package/lib/commonjs/components/misc/PINHeader.js.map +1 -1
  7. package/lib/commonjs/contexts/network.js +10 -9
  8. package/lib/commonjs/contexts/network.js.map +1 -1
  9. package/lib/commonjs/contexts/reducers/store.js +3 -2
  10. package/lib/commonjs/contexts/reducers/store.js.map +1 -1
  11. package/lib/commonjs/contexts/theme.js +7 -6
  12. package/lib/commonjs/contexts/theme.js.map +1 -1
  13. package/lib/commonjs/index.js +127 -104
  14. package/lib/commonjs/index.js.map +1 -1
  15. package/lib/commonjs/modules/openid/components/CredentialRowCard.js +9 -7
  16. package/lib/commonjs/modules/openid/components/CredentialRowCard.js.map +1 -1
  17. package/lib/commonjs/modules/openid/context/OpenIDCredentialRecordProvider.js +9 -8
  18. package/lib/commonjs/modules/openid/context/OpenIDCredentialRecordProvider.js.map +1 -1
  19. package/lib/commonjs/screens/AttemptLockout.js +27 -35
  20. package/lib/commonjs/screens/AttemptLockout.js.map +1 -1
  21. package/lib/commonjs/screens/ConfigureMediator.js +22 -21
  22. package/lib/commonjs/screens/ConfigureMediator.js.map +1 -1
  23. package/lib/commonjs/screens/JSONDetails.js +16 -15
  24. package/lib/commonjs/screens/JSONDetails.js.map +1 -1
  25. package/lib/commonjs/screens/MobileVerifierLoading.js +4 -3
  26. package/lib/commonjs/screens/MobileVerifierLoading.js.map +1 -1
  27. package/lib/commonjs/screens/PINCreate.js +3 -10
  28. package/lib/commonjs/screens/PINCreate.js.map +1 -1
  29. package/lib/commonjs/screens/WhatAreContacts.js +3 -2
  30. package/lib/commonjs/screens/WhatAreContacts.js.map +1 -1
  31. package/lib/commonjs/services/logger.js +35 -27
  32. package/lib/commonjs/services/logger.js.map +1 -1
  33. package/lib/module/components/listItems/ContactCredentialListItem.js +3 -3
  34. package/lib/module/components/listItems/ContactCredentialListItem.js.map +1 -1
  35. package/lib/module/components/misc/CredentialCard11Logo.js +5 -4
  36. package/lib/module/components/misc/CredentialCard11Logo.js.map +1 -1
  37. package/lib/module/components/misc/PINHeader.js +2 -1
  38. package/lib/module/components/misc/PINHeader.js.map +1 -1
  39. package/lib/module/contexts/network.js +3 -3
  40. package/lib/module/contexts/network.js.map +1 -1
  41. package/lib/module/contexts/reducers/store.js +3 -2
  42. package/lib/module/contexts/reducers/store.js.map +1 -1
  43. package/lib/module/contexts/theme.js +2 -2
  44. package/lib/module/contexts/theme.js.map +1 -1
  45. package/lib/module/index.js +43 -45
  46. package/lib/module/index.js.map +1 -1
  47. package/lib/module/modules/openid/components/CredentialRowCard.js +2 -1
  48. package/lib/module/modules/openid/components/CredentialRowCard.js.map +1 -1
  49. package/lib/module/modules/openid/context/OpenIDCredentialRecordProvider.js +5 -5
  50. package/lib/module/modules/openid/context/OpenIDCredentialRecordProvider.js.map +1 -1
  51. package/lib/module/screens/AttemptLockout.js +28 -36
  52. package/lib/module/screens/AttemptLockout.js.map +1 -1
  53. package/lib/module/screens/ConfigureMediator.js +10 -10
  54. package/lib/module/screens/ConfigureMediator.js.map +1 -1
  55. package/lib/module/screens/JSONDetails.js +9 -8
  56. package/lib/module/screens/JSONDetails.js.map +1 -1
  57. package/lib/module/screens/MobileVerifierLoading.js +4 -3
  58. package/lib/module/screens/MobileVerifierLoading.js.map +1 -1
  59. package/lib/module/screens/PINCreate.js +3 -10
  60. package/lib/module/screens/PINCreate.js.map +1 -1
  61. package/lib/module/screens/WhatAreContacts.js +3 -2
  62. package/lib/module/screens/WhatAreContacts.js.map +1 -1
  63. package/lib/module/services/logger.js +37 -28
  64. package/lib/module/services/logger.js.map +1 -1
  65. package/lib/typescript/src/components/listItems/ContactCredentialListItem.d.ts +2 -1
  66. package/lib/typescript/src/components/listItems/ContactCredentialListItem.d.ts.map +1 -1
  67. package/lib/typescript/src/components/misc/CredentialCard11Logo.d.ts +1 -0
  68. package/lib/typescript/src/components/misc/CredentialCard11Logo.d.ts.map +1 -1
  69. package/lib/typescript/src/components/misc/PINHeader.d.ts +2 -1
  70. package/lib/typescript/src/components/misc/PINHeader.d.ts.map +1 -1
  71. package/lib/typescript/src/contexts/network.d.ts +3 -3
  72. package/lib/typescript/src/contexts/network.d.ts.map +1 -1
  73. package/lib/typescript/src/contexts/reducers/store.d.ts.map +1 -1
  74. package/lib/typescript/src/contexts/theme.d.ts +2 -1
  75. package/lib/typescript/src/contexts/theme.d.ts.map +1 -1
  76. package/lib/typescript/src/index.d.ts +58 -61
  77. package/lib/typescript/src/index.d.ts.map +1 -1
  78. package/lib/typescript/src/modules/openid/components/CredentialRowCard.d.ts +2 -1
  79. package/lib/typescript/src/modules/openid/components/CredentialRowCard.d.ts.map +1 -1
  80. package/lib/typescript/src/modules/openid/context/OpenIDCredentialRecordProvider.d.ts +3 -3
  81. package/lib/typescript/src/modules/openid/context/OpenIDCredentialRecordProvider.d.ts.map +1 -1
  82. package/lib/typescript/src/screens/AttemptLockout.d.ts.map +1 -1
  83. package/lib/typescript/src/screens/ConfigureMediator.d.ts +2 -1
  84. package/lib/typescript/src/screens/ConfigureMediator.d.ts.map +1 -1
  85. package/lib/typescript/src/screens/JSONDetails.d.ts +2 -1
  86. package/lib/typescript/src/screens/JSONDetails.d.ts.map +1 -1
  87. package/lib/typescript/src/screens/MobileVerifierLoading.d.ts.map +1 -1
  88. package/lib/typescript/src/screens/PINCreate.d.ts.map +1 -1
  89. package/lib/typescript/src/screens/WhatAreContacts.d.ts.map +1 -1
  90. package/lib/typescript/src/services/logger.d.ts +7 -8
  91. package/lib/typescript/src/services/logger.d.ts.map +1 -1
  92. package/package.json +5 -6
  93. package/src/App.tsx +0 -79
  94. package/src/animated-components.ts +0 -30
  95. package/src/assets/fonts/MaterialIcons.ttf +0 -0
  96. package/src/assets/icons/code.svg +0 -4
  97. package/src/assets/icons/large-arrow.svg +0 -5
  98. package/src/assets/icons/pencil.svg +0 -15
  99. package/src/assets/icons/trash.svg +0 -31
  100. package/src/assets/img/Artwork_1024x1024.png +0 -0
  101. package/src/assets/img/HistoryCardAcceptedIcon.svg +0 -4
  102. package/src/assets/img/HistoryCardExpiredIcon.svg +0 -4
  103. package/src/assets/img/HistoryCardRevokedIcon.svg +0 -4
  104. package/src/assets/img/HistoryInformationSentIcon.svg +0 -4
  105. package/src/assets/img/HistoryPinUpdatedIcon.svg +0 -4
  106. package/src/assets/img/IconChevronRight.svg +0 -5
  107. package/src/assets/img/activity-indicator-circle.svg +0 -90
  108. package/src/assets/img/app-lockout.svg +0 -1
  109. package/src/assets/img/biometrics.svg +0 -74
  110. package/src/assets/img/chat-loading.svg +0 -1
  111. package/src/assets/img/check-in-circle.svg +0 -18
  112. package/src/assets/img/connection-pending.svg +0 -112
  113. package/src/assets/img/contact-book.svg +0 -21
  114. package/src/assets/img/credential-card.svg +0 -18
  115. package/src/assets/img/credential-declined.svg +0 -28
  116. package/src/assets/img/credential-in-hand.svg +0 -48
  117. package/src/assets/img/credential-list.svg +0 -60
  118. package/src/assets/img/credential-pending.svg +0 -96
  119. package/src/assets/img/credential-success.svg +0 -48
  120. package/src/assets/img/delete-notification.svg +0 -1
  121. package/src/assets/img/empty-wallet.svg +0 -23
  122. package/src/assets/img/error-filled.svg +0 -12
  123. package/src/assets/img/exclamation-mark.svg +0 -17
  124. package/src/assets/img/home-center-img.svg +0 -71
  125. package/src/assets/img/icon-credential-offer-dark.svg +0 -7
  126. package/src/assets/img/icon-credential-offer-light.svg +0 -7
  127. package/src/assets/img/icon-info-recieved-dark.svg +0 -8
  128. package/src/assets/img/icon-info-recieved-light.svg +0 -8
  129. package/src/assets/img/icon-info-sent-dark.svg +0 -8
  130. package/src/assets/img/icon-info-sent-light.svg +0 -8
  131. package/src/assets/img/icon-proof-request-dark.svg +0 -11
  132. package/src/assets/img/icon-proof-request-light.svg +0 -11
  133. package/src/assets/img/information-received.svg +0 -1
  134. package/src/assets/img/logo-large.png +0 -0
  135. package/src/assets/img/logo-large@2x.png +0 -0
  136. package/src/assets/img/logo-large@3x.png +0 -0
  137. package/src/assets/img/logo.svg +0 -15
  138. package/src/assets/img/message-text-icon-outline.svg +0 -1
  139. package/src/assets/img/message-text-icon.svg +0 -1
  140. package/src/assets/img/no_information_shared.svg +0 -36
  141. package/src/assets/img/preface.svg +0 -15
  142. package/src/assets/img/proof-declined.svg +0 -66
  143. package/src/assets/img/proof-pending.svg +0 -61
  144. package/src/assets/img/proof-success.svg +0 -72
  145. package/src/assets/img/push-notifications.svg +0 -1
  146. package/src/assets/img/qrcode-scan-icon.svg +0 -1
  147. package/src/assets/img/scan-share.svg +0 -102
  148. package/src/assets/img/secure-check.svg +0 -4
  149. package/src/assets/img/secure-image.svg +0 -64
  150. package/src/assets/img/update-available.svg +0 -26
  151. package/src/assets/img/verifier-request-declined.svg +0 -34
  152. package/src/assets/img/wallet-back.svg +0 -20
  153. package/src/assets/img/wallet-front.svg +0 -32
  154. package/src/assets/img/wallet-icon-outline.svg +0 -1
  155. package/src/assets/img/wallet-icon.svg +0 -1
  156. package/src/assets/img/wallet.svg +0 -43
  157. package/src/assets/oca-bundles.json +0 -174
  158. package/src/components/animated/ButtonLoading.tsx +0 -32
  159. package/src/components/animated/ConnectionLoading.tsx +0 -53
  160. package/src/components/animated/CredentialAdded.tsx +0 -72
  161. package/src/components/animated/CredentialPending.tsx +0 -63
  162. package/src/components/animated/LoadingIndicator.tsx +0 -49
  163. package/src/components/animated/PresentationLoading.tsx +0 -52
  164. package/src/components/animated/RecordLoading.tsx +0 -75
  165. package/src/components/animated/SendingProof.tsx +0 -53
  166. package/src/components/animated/SentProof.tsx +0 -72
  167. package/src/components/buttons/Button-api.tsx +0 -46
  168. package/src/components/buttons/Button.tsx +0 -125
  169. package/src/components/buttons/HeaderHome.tsx +0 -25
  170. package/src/components/buttons/IconButton.tsx +0 -93
  171. package/src/components/buttons/InfoIcon.tsx +0 -35
  172. package/src/components/buttons/SettingsMenu.tsx +0 -26
  173. package/src/components/buttons/ToggleButton.tsx +0 -93
  174. package/src/components/buttons/index.ts +0 -4
  175. package/src/components/chat/ActionSlider.tsx +0 -104
  176. package/src/components/chat/ChatActions.tsx +0 -33
  177. package/src/components/chat/ChatBubble.tsx +0 -20
  178. package/src/components/chat/ChatEvent.tsx +0 -31
  179. package/src/components/chat/ChatMessage.tsx +0 -142
  180. package/src/components/chat/MessageInput.tsx +0 -46
  181. package/src/components/chat/index.ts +0 -4
  182. package/src/components/forms/WalletNameForm.tsx +0 -148
  183. package/src/components/index.ts +0 -4
  184. package/src/components/inputs/BiometryControl.tsx +0 -190
  185. package/src/components/inputs/BulletPoint.tsx +0 -32
  186. package/src/components/inputs/CheckBoxRow.tsx +0 -67
  187. package/src/components/inputs/InlineErrorText.tsx +0 -60
  188. package/src/components/inputs/LimitedTextInput.tsx +0 -71
  189. package/src/components/inputs/PINInput.tsx +0 -175
  190. package/src/components/inputs/SingleSelectBlock.tsx +0 -53
  191. package/src/components/listItems/ContactCredentialListItem.tsx +0 -79
  192. package/src/components/listItems/ContactListItem.tsx +0 -121
  193. package/src/components/listItems/NotificationListItem.tsx +0 -514
  194. package/src/components/misc/AvatarView.tsx +0 -33
  195. package/src/components/misc/CardWatermark.tsx +0 -52
  196. package/src/components/misc/ConnectionAlert.tsx +0 -123
  197. package/src/components/misc/ConnectionImage.tsx +0 -45
  198. package/src/components/misc/ContentGradient.tsx +0 -40
  199. package/src/components/misc/CredentialCard.tsx +0 -161
  200. package/src/components/misc/CredentialCard10.tsx +0 -329
  201. package/src/components/misc/CredentialCard11.tsx +0 -701
  202. package/src/components/misc/CredentialCard11ActionFooter.tsx +0 -55
  203. package/src/components/misc/CredentialCard11Issuer.tsx +0 -74
  204. package/src/components/misc/CredentialCard11Logo.tsx +0 -61
  205. package/src/components/misc/EmptyList.tsx +0 -27
  206. package/src/components/misc/EmptyListContacts.tsx +0 -55
  207. package/src/components/misc/ErrorBoundary.tsx +0 -200
  208. package/src/components/misc/FauxHeader.tsx +0 -75
  209. package/src/components/misc/InfoBox.tsx +0 -283
  210. package/src/components/misc/NoNewUpdates.tsx +0 -38
  211. package/src/components/misc/PINHeader.tsx +0 -25
  212. package/src/components/misc/PINValidationHelper.tsx +0 -48
  213. package/src/components/misc/Pagination.tsx +0 -114
  214. package/src/components/misc/QRRenderer.tsx +0 -53
  215. package/src/components/misc/QRScanner.tsx +0 -395
  216. package/src/components/misc/QRScannerTorch.tsx +0 -74
  217. package/src/components/misc/ScanCamera.tsx +0 -86
  218. package/src/components/misc/ScanTab.tsx +0 -45
  219. package/src/components/misc/SharedProofData.tsx +0 -98
  220. package/src/components/misc/UnorderedList.tsx +0 -28
  221. package/src/components/misc/VerifierCredentialCard.tsx +0 -378
  222. package/src/components/misc/index.ts +0 -2
  223. package/src/components/modals/AlertModal.tsx +0 -42
  224. package/src/components/modals/AppGuideModal.tsx +0 -142
  225. package/src/components/modals/CameraDisclosureModal.tsx +0 -126
  226. package/src/components/modals/CommonRemoveModal.tsx +0 -337
  227. package/src/components/modals/DeveloperModal.tsx +0 -32
  228. package/src/components/modals/DismissiblePopupModal.tsx +0 -169
  229. package/src/components/modals/ErrorModal.tsx +0 -107
  230. package/src/components/modals/ImageModal.tsx +0 -80
  231. package/src/components/modals/NetInfoModal.tsx +0 -35
  232. package/src/components/modals/PopupModal.tsx +0 -56
  233. package/src/components/modals/ProofCancelModal.tsx +0 -79
  234. package/src/components/modals/SafeAreaModal.tsx +0 -17
  235. package/src/components/record/Record.tsx +0 -100
  236. package/src/components/record/RecordBinaryField.tsx +0 -55
  237. package/src/components/record/RecordDateIntField.tsx +0 -63
  238. package/src/components/record/RecordField.tsx +0 -154
  239. package/src/components/record/RecordFooter.tsx +0 -17
  240. package/src/components/record/RecordHeader.tsx +0 -17
  241. package/src/components/record/RecordRemove.tsx +0 -66
  242. package/src/components/texts/HeaderTitle.tsx +0 -25
  243. package/src/components/texts/HighlightTextBox.tsx +0 -41
  244. package/src/components/texts/InfoTextBox.tsx +0 -129
  245. package/src/components/texts/Link.tsx +0 -41
  246. package/src/components/texts/Text.tsx +0 -21
  247. package/src/components/texts/ThemedText.tsx +0 -24
  248. package/src/components/toast/BaseToast.tsx +0 -128
  249. package/src/components/toast/ToastConfig.tsx +0 -21
  250. package/src/components/tour/AttachTourStep.tsx +0 -73
  251. package/src/components/tour/CredentialOfferTourSteps.tsx +0 -41
  252. package/src/components/tour/CredentialsTourSteps.tsx +0 -41
  253. package/src/components/tour/HomeTourSteps.tsx +0 -104
  254. package/src/components/tour/ProofRequestTourSteps.tsx +0 -41
  255. package/src/components/tour/SpotCutout.tsx +0 -65
  256. package/src/components/tour/TourBox.tsx +0 -255
  257. package/src/components/tour/TourOverlay.tsx +0 -134
  258. package/src/components/views/Banner.tsx +0 -181
  259. package/src/components/views/CredentialCardLogo.tsx +0 -77
  260. package/src/components/views/CredentialDetailPrimaryHeader.tsx +0 -107
  261. package/src/components/views/CredentialDetailSecondaryHeader.tsx +0 -60
  262. package/src/components/views/HeaderWithBanner.tsx +0 -17
  263. package/src/components/views/HomeFooterView.tsx +0 -110
  264. package/src/components/views/HomeHeaderView.tsx +0 -12
  265. package/src/components/views/KeyboardView.tsx +0 -41
  266. package/src/components/views/LoadingPlaceholder.tsx +0 -168
  267. package/src/components/views/LoadingView.tsx +0 -29
  268. package/src/components/views/ProgressBar.tsx +0 -53
  269. package/src/components/views/PushNotificationsContent.tsx +0 -51
  270. package/src/components/views/PushNotificationsDisabledContent.tsx +0 -47
  271. package/src/configs/ledgers/indy/index.ts +0 -8
  272. package/src/configs/ledgers/indy/ledgers.json +0 -51
  273. package/src/constants.ts +0 -107
  274. package/src/container-api.ts +0 -247
  275. package/src/container-impl.ts +0 -243
  276. package/src/contexts/activity.tsx +0 -145
  277. package/src/contexts/animated-components.ts +0 -9
  278. package/src/contexts/auth.tsx +0 -240
  279. package/src/contexts/index.ts +0 -3
  280. package/src/contexts/navigation.tsx +0 -19
  281. package/src/contexts/network.tsx +0 -125
  282. package/src/contexts/reducers/index.ts +0 -3
  283. package/src/contexts/reducers/store.ts +0 -754
  284. package/src/contexts/store.tsx +0 -103
  285. package/src/contexts/theme.tsx +0 -51
  286. package/src/contexts/tour/tour-context.tsx +0 -160
  287. package/src/contexts/tour/tour-provider.tsx +0 -160
  288. package/src/hooks/bundle-resolver.ts +0 -95
  289. package/src/hooks/chat-messages.tsx +0 -263
  290. package/src/hooks/connections.ts +0 -37
  291. package/src/hooks/credential-card-styles.ts +0 -144
  292. package/src/hooks/credentials.ts +0 -11
  293. package/src/hooks/deep-links.ts +0 -49
  294. package/src/hooks/developer-mode.ts +0 -25
  295. package/src/hooks/lockout.ts +0 -77
  296. package/src/hooks/notifications.ts +0 -108
  297. package/src/hooks/oob.ts +0 -17
  298. package/src/hooks/proof-request-templates.ts +0 -40
  299. package/src/hooks/proofs.ts +0 -32
  300. package/src/hooks/screen-capture.ts +0 -52
  301. package/src/hooks/useBifoldAgentSetup.ts +0 -169
  302. package/src/hooks/useOnboardingState.ts +0 -53
  303. package/src/hooks/usePINValidation.ts +0 -98
  304. package/src/index.ts +0 -239
  305. package/src/layout/ScreenLayout.tsx +0 -53
  306. package/src/localization/en/en.json +0 -951
  307. package/src/localization/en/index.ts +0 -3
  308. package/src/localization/fr/fr.json +0 -933
  309. package/src/localization/fr/index.ts +0 -3
  310. package/src/localization/index.ts +0 -66
  311. package/src/localization/pt-br/index.ts +0 -3
  312. package/src/localization/pt-br/pt-br.json +0 -911
  313. package/src/modules/history/context/historyManager.tsx +0 -247
  314. package/src/modules/history/index.ts +0 -2
  315. package/src/modules/history/navigation/HistoryStack.tsx +0 -29
  316. package/src/modules/history/services/queue.service.tsx +0 -31
  317. package/src/modules/history/types/index.ts +0 -92
  318. package/src/modules/history/ui/HistoryPage.tsx +0 -133
  319. package/src/modules/history/ui/HistorySettings.tsx +0 -183
  320. package/src/modules/history/ui/assets/img/HistoryCardAcceptedIcon.svg +0 -4
  321. package/src/modules/history/ui/assets/img/HistoryCardExpiredIcon.svg +0 -4
  322. package/src/modules/history/ui/assets/img/HistoryCardRevokedIcon.svg +0 -4
  323. package/src/modules/history/ui/assets/img/HistoryInformationSentIcon.svg +0 -4
  324. package/src/modules/history/ui/assets/img/HistoryPinUpdatedIcon.svg +0 -4
  325. package/src/modules/history/ui/assets/img/IconChevronRight.svg +0 -3
  326. package/src/modules/history/ui/components/BulletPoint.tsx +0 -49
  327. package/src/modules/history/ui/components/HistoryListItem.tsx +0 -251
  328. package/src/modules/history/ui/components/HistoryMenu.tsx +0 -25
  329. package/src/modules/history/ui/components/SingleSelectBlock.tsx +0 -72
  330. package/src/modules/openid/components/CredentialRowCard.tsx +0 -64
  331. package/src/modules/openid/components/OpenIDCredentialCard.tsx +0 -276
  332. package/src/modules/openid/context/OpenIDCredentialRecordProvider.tsx +0 -296
  333. package/src/modules/openid/display.tsx +0 -467
  334. package/src/modules/openid/displayProof.tsx +0 -86
  335. package/src/modules/openid/hooks/openid.tsx +0 -111
  336. package/src/modules/openid/metadata.tsx +0 -59
  337. package/src/modules/openid/offerResolve.tsx +0 -281
  338. package/src/modules/openid/resolverProof.tsx +0 -286
  339. package/src/modules/openid/screens/OpenIDCredentialDetails.tsx +0 -214
  340. package/src/modules/openid/screens/OpenIDCredentialOffer.tsx +0 -192
  341. package/src/modules/openid/screens/OpenIDProofChangeCredential.tsx +0 -133
  342. package/src/modules/openid/screens/OpenIDProofPresentation.tsx +0 -423
  343. package/src/modules/openid/types.tsx +0 -111
  344. package/src/modules/openid/utils/utils.tsx +0 -119
  345. package/src/navigators/ConnectStack.tsx +0 -68
  346. package/src/navigators/ContactStack.tsx +0 -91
  347. package/src/navigators/CredentialStack.tsx +0 -48
  348. package/src/navigators/DeliveryStack.tsx +0 -76
  349. package/src/navigators/HomeStack.tsx +0 -37
  350. package/src/navigators/MainStack.tsx +0 -146
  351. package/src/navigators/NotificationStack.tsx +0 -56
  352. package/src/navigators/OnboardingScreens.ts +0 -142
  353. package/src/navigators/OnboardingStack.tsx +0 -205
  354. package/src/navigators/ProofRequestStack.tsx +0 -113
  355. package/src/navigators/RootStack.tsx +0 -71
  356. package/src/navigators/SettingStack.tsx +0 -174
  357. package/src/navigators/TabStack.tsx +0 -304
  358. package/src/navigators/defaultLayoutOptions.tsx +0 -17
  359. package/src/navigators/defaultStackOptions.tsx +0 -102
  360. package/src/navigators/index.ts +0 -27
  361. package/src/onboarding.ts +0 -90
  362. package/src/screens/AttemptLockout.tsx +0 -153
  363. package/src/screens/AutoLock.tsx +0 -140
  364. package/src/screens/Biometry.tsx +0 -54
  365. package/src/screens/Chat.tsx +0 -141
  366. package/src/screens/ConfigureMediator.tsx +0 -160
  367. package/src/screens/Connection.tsx +0 -394
  368. package/src/screens/ContactDetails.tsx +0 -350
  369. package/src/screens/CredentialDetails.tsx +0 -473
  370. package/src/screens/CredentialOffer.tsx +0 -334
  371. package/src/screens/CredentialOfferAccept.tsx +0 -189
  372. package/src/screens/DataRetention.tsx +0 -91
  373. package/src/screens/Developer.tsx +0 -289
  374. package/src/screens/Home.tsx +0 -173
  375. package/src/screens/JSONDetails.tsx +0 -104
  376. package/src/screens/Language.tsx +0 -97
  377. package/src/screens/ListContacts.tsx +0 -112
  378. package/src/screens/ListCredentials.tsx +0 -135
  379. package/src/screens/ListProofRequests.tsx +0 -148
  380. package/src/screens/MobileVerifierLoading.tsx +0 -106
  381. package/src/screens/NameWallet.tsx +0 -9
  382. package/src/screens/Onboarding.tsx +0 -162
  383. package/src/screens/OnboardingPages.tsx +0 -160
  384. package/src/screens/PINChange.tsx +0 -249
  385. package/src/screens/PINCreate.tsx +0 -185
  386. package/src/screens/PINEnter.tsx +0 -432
  387. package/src/screens/PINExplainer.tsx +0 -85
  388. package/src/screens/PINVerify.tsx +0 -195
  389. package/src/screens/PasteUrl.tsx +0 -140
  390. package/src/screens/Preface.tsx +0 -78
  391. package/src/screens/ProofChangeCredential.tsx +0 -179
  392. package/src/screens/ProofDetails.tsx +0 -348
  393. package/src/screens/ProofRequest.tsx +0 -999
  394. package/src/screens/ProofRequestAccept.tsx +0 -133
  395. package/src/screens/ProofRequestDetails.tsx +0 -270
  396. package/src/screens/ProofRequestUsageHistory.tsx +0 -152
  397. package/src/screens/ProofRequesting.tsx +0 -245
  398. package/src/screens/PushNotifications.tsx +0 -59
  399. package/src/screens/RenameContact.tsx +0 -155
  400. package/src/screens/RenameWallet.tsx +0 -26
  401. package/src/screens/Scan.tsx +0 -145
  402. package/src/screens/ScanHelp.tsx +0 -48
  403. package/src/screens/Settings.tsx +0 -415
  404. package/src/screens/Splash.tsx +0 -80
  405. package/src/screens/Terms.tsx +0 -127
  406. package/src/screens/ToggleBiometry.tsx +0 -153
  407. package/src/screens/TogglePushNotifications.tsx +0 -118
  408. package/src/screens/Tours.tsx +0 -93
  409. package/src/screens/UpdateAvailable.tsx +0 -119
  410. package/src/screens/WhatAreContacts.tsx +0 -71
  411. package/src/services/bifoldLogger.ts +0 -3
  412. package/src/services/keychain.ts +0 -184
  413. package/src/services/logger.ts +0 -89
  414. package/src/services/storage.ts +0 -136
  415. package/src/theme-builder.ts +0 -157
  416. package/src/theme.interface.ts +0 -580
  417. package/src/theme.ts +0 -1346
  418. package/src/types/attempt-lockout-config.ts +0 -8
  419. package/src/types/attestation.ts +0 -17
  420. package/src/types/chat.ts +0 -4
  421. package/src/types/config.ts +0 -64
  422. package/src/types/contact-details.ts +0 -5
  423. package/src/types/credential-list-footer.ts +0 -3
  424. package/src/types/credential-status.ts +0 -3
  425. package/src/types/credentials.ts +0 -7
  426. package/src/types/decline.ts +0 -5
  427. package/src/types/error.ts +0 -40
  428. package/src/types/fn.ts +0 -2
  429. package/src/types/genesis.ts +0 -35
  430. package/src/types/index.ts +0 -2
  431. package/src/types/metadata.ts +0 -16
  432. package/src/types/navigators.ts +0 -239
  433. package/src/types/notification.ts +0 -24
  434. package/src/types/permissions.ts +0 -2
  435. package/src/types/proof-items.ts +0 -32
  436. package/src/types/react-i18next.d.ts +0 -10
  437. package/src/types/remove.ts +0 -8
  438. package/src/types/security.ts +0 -32
  439. package/src/types/settings.ts +0 -28
  440. package/src/types/state.ts +0 -97
  441. package/src/types/tour.ts +0 -20
  442. package/src/types/version-check.ts +0 -18
  443. package/src/utils/PINValidation.ts +0 -98
  444. package/src/utils/agent.ts +0 -128
  445. package/src/utils/anonCredsProofRequestMapper.ts +0 -205
  446. package/src/utils/contacts.ts +0 -59
  447. package/src/utils/cred-def.ts +0 -33
  448. package/src/utils/credential.ts +0 -37
  449. package/src/utils/crypto.ts +0 -12
  450. package/src/utils/fileCache.ts +0 -152
  451. package/src/utils/helpers.ts +0 -1292
  452. package/src/utils/ledger.ts +0 -212
  453. package/src/utils/luminance.ts +0 -40
  454. package/src/utils/mediatorhelpers.ts +0 -71
  455. package/src/utils/migration.ts +0 -40
  456. package/src/utils/network.tsx +0 -55
  457. package/src/utils/oca.ts +0 -173
  458. package/src/utils/parsers.tsx +0 -111
  459. package/src/utils/proofBundle.ts +0 -220
  460. package/src/utils/schema.ts +0 -28
  461. package/src/utils/testable.ts +0 -17
@@ -1,154 +0,0 @@
1
- import { CaptureBaseAttributeType } from '@bifold/oca'
2
- import { Attribute, BrandingOverlayType, Field } from '@bifold/oca/build/legacy'
3
- import startCase from 'lodash.startcase'
4
- import React from 'react'
5
- import { useTranslation } from 'react-i18next'
6
- import { StyleSheet, TouchableOpacity, View } from 'react-native'
7
-
8
- import { hiddenFieldValue } from '../../constants'
9
- import { useTheme } from '../../contexts/theme'
10
- import { isDataUrl } from '../../utils/helpers'
11
- import { testIdWithKey } from '../../utils/testable'
12
-
13
- import RecordBinaryField from './RecordBinaryField'
14
- import RecordDateIntField from './RecordDateIntField'
15
- import { useServices, TOKENS } from '../../container-api'
16
- import { ThemedText } from '../texts/ThemedText'
17
-
18
- interface RecordFieldProps {
19
- field: Field
20
- hideFieldValue?: boolean
21
- hideBottomBorder?: boolean
22
- shown?: boolean
23
- onToggleViewPressed?: () => void
24
- fieldLabel?: (field: Field) => React.ReactElement | null
25
- fieldValue?: (field: Field) => React.ReactElement | null
26
- }
27
-
28
- export const validEncoding = 'base64'
29
- export const validFormat = new RegExp('^image/(jpeg|png|jpg)')
30
-
31
- interface AttributeValueParams {
32
- field: Attribute
33
- shown?: boolean
34
- style?: Record<string, unknown>
35
- }
36
-
37
- export const AttributeValue: React.FC<AttributeValueParams> = ({ field, style, shown }) => {
38
- const { ListItems } = useTheme()
39
- const styles = StyleSheet.create({
40
- text: {
41
- ...ListItems.recordAttributeText,
42
- },
43
- })
44
- if (
45
- (field.encoding == validEncoding && field.format && validFormat.test(field.format) && field.value) ||
46
- isDataUrl(field.value)
47
- ) {
48
- return <RecordBinaryField attributeValue={field.value as string} style={style} shown={shown} />
49
- }
50
- if (field.type == CaptureBaseAttributeType.DateInt || field.type == CaptureBaseAttributeType.DateTime) {
51
- return <RecordDateIntField field={field} style={style} shown={shown} />
52
- }
53
- return (
54
- <ThemedText style={style || styles.text} testID={testIdWithKey('AttributeValue')}>
55
- {shown ? field.value : hiddenFieldValue}
56
- </ThemedText>
57
- )
58
- }
59
-
60
- const RecordField: React.FC<RecordFieldProps> = ({
61
- field,
62
- hideFieldValue = false,
63
- hideBottomBorder = false,
64
- shown = !hideFieldValue,
65
- onToggleViewPressed = () => undefined,
66
- fieldLabel = null,
67
- fieldValue = null,
68
- }) => {
69
- const { t } = useTranslation()
70
- const { ListItems } = useTheme()
71
- const [bundleResolver] = useServices([TOKENS.UTIL_OCA_RESOLVER])
72
- const styles = StyleSheet.create({
73
- container: {
74
- ...ListItems.recordContainer,
75
- paddingHorizontal: bundleResolver.getBrandingOverlayType() === BrandingOverlayType.Branding10 ? 25 : 16,
76
- paddingTop: 16,
77
- },
78
- border: {
79
- ...ListItems.recordBorder,
80
- borderBottomWidth: 2,
81
- paddingTop: 12,
82
- },
83
- link: {
84
- ...ListItems.recordLink,
85
- paddingVertical: 2,
86
- },
87
- valueContainer: {
88
- flexDirection: 'row',
89
- justifyContent: 'space-between',
90
- paddingTop: 5,
91
- },
92
- fieldLabel: {
93
- flex: 3,
94
- },
95
- fieldValue: {
96
- flex: 1,
97
- flexDirection: 'row',
98
- justifyContent: 'flex-end',
99
- },
100
- valueText: {
101
- ...ListItems.recordAttributeText,
102
- paddingVertical: 4,
103
- },
104
- })
105
-
106
- return (
107
- <View style={styles.container}>
108
- <View style={styles.valueContainer}>
109
- <View style={styles.fieldLabel}>
110
- {fieldLabel ? (
111
- fieldLabel(field)
112
- ) : (
113
- <ThemedText style={ListItems.recordAttributeLabel} testID={testIdWithKey('AttributeName')}>
114
- {field.label ?? startCase(field.name || '')}
115
- </ThemedText>
116
- )}
117
- </View>
118
-
119
- <View style={styles.fieldValue}>
120
- {hideFieldValue ? (
121
- <TouchableOpacity
122
- accessible={true}
123
- accessibilityLabel={shown ? t('Record.Hide') : t('Record.Show')}
124
- accessibilityRole="button"
125
- testID={testIdWithKey('ShowHide')}
126
- activeOpacity={1}
127
- onPress={onToggleViewPressed}
128
- style={styles.link}
129
- >
130
- <ThemedText maxFontSizeMultiplier={1.2} style={ListItems.recordLink}>
131
- {shown ? t('Record.Hide') : t('Record.Show')}
132
- </ThemedText>
133
- </TouchableOpacity>
134
- ) : null}
135
- </View>
136
- </View>
137
-
138
- <View style={styles.valueContainer}>
139
- {fieldValue ? (
140
- fieldValue(field)
141
- ) : (
142
- <>
143
- <View style={styles.valueText}>
144
- <AttributeValue field={field as Attribute} shown={shown} />
145
- </View>
146
- </>
147
- )}
148
- </View>
149
- {<View style={[styles.border, hideBottomBorder && { borderBottomWidth: 0 }]} />}
150
- </View>
151
- )
152
- }
153
-
154
- export default RecordField
@@ -1,17 +0,0 @@
1
- import React from 'react'
2
- import { StyleSheet, View } from 'react-native'
3
-
4
- import { useTheme } from '../../contexts/theme'
5
-
6
- const RecordFooter: React.FC<React.PropsWithChildren> = ({ children }) => {
7
- const { ColorPalette } = useTheme()
8
- const styles = StyleSheet.create({
9
- container: {
10
- backgroundColor: ColorPalette.brand.primaryBackground,
11
- height: '100%',
12
- },
13
- })
14
- return <View style={styles.container}>{children}</View>
15
- }
16
-
17
- export default RecordFooter
@@ -1,17 +0,0 @@
1
- import React from 'react'
2
- import { StyleSheet, View } from 'react-native'
3
-
4
- import { useTheme } from '../../contexts/theme'
5
-
6
- const RecordHeader: React.FC<React.PropsWithChildren> = ({ children }) => {
7
- const { ColorPalette } = useTheme()
8
- const styles = StyleSheet.create({
9
- container: {
10
- backgroundColor: ColorPalette.brand.primaryBackground,
11
- },
12
- })
13
-
14
- return <View style={styles.container}>{children}</View>
15
- }
16
-
17
- export default RecordHeader
@@ -1,66 +0,0 @@
1
- import React from 'react'
2
- import { useTranslation } from 'react-i18next'
3
- import { StyleSheet, TouchableOpacity, View } from 'react-native'
4
-
5
- import { useTheme } from '../../contexts/theme'
6
- import { GenericFn } from '../../types/fn'
7
- import { testIdWithKey } from '../../utils/testable'
8
- import { TOKENS, useServices } from '../../container-api'
9
- import { BrandingOverlayType } from '@bifold/oca/build/legacy'
10
- import { ThemedText } from '../texts/ThemedText'
11
-
12
- interface RecordRemoveProps {
13
- onRemove?: GenericFn
14
- }
15
-
16
- const RecordRemove: React.FC<RecordRemoveProps> = ({ onRemove = () => null }) => {
17
- const { t } = useTranslation()
18
- const { TextTheme, ColorPalette, Assets } = useTheme()
19
- const [bundleResolver] = useServices([TOKENS.UTIL_OCA_RESOLVER])
20
-
21
- const styles = StyleSheet.create({
22
- headerText: {
23
- ...TextTheme.normal,
24
- },
25
- footerText: {
26
- color: ColorPalette.brand.link,
27
- },
28
- linkContainer: {
29
- minHeight: TextTheme.normal.fontSize,
30
- paddingVertical: 2,
31
- },
32
- credentialRemoveContainer: {
33
- flexDirection: 'row',
34
- alignItems: 'center',
35
- gap: 8,
36
- },
37
- })
38
-
39
- return (
40
- <View
41
- style={{
42
- backgroundColor: ColorPalette.brand.secondaryBackground,
43
- marginTop: 16,
44
- paddingHorizontal: bundleResolver.getBrandingOverlayType() === BrandingOverlayType.Branding10 ? 25 : 16,
45
- paddingVertical: 16,
46
- }}
47
- >
48
- <TouchableOpacity
49
- style={styles.credentialRemoveContainer}
50
- accessible={true}
51
- accessibilityLabel={t('CredentialDetails.RemoveFromWallet')}
52
- accessibilityRole={'button'}
53
- testID={testIdWithKey('RemoveFromWallet')}
54
- activeOpacity={1}
55
- onPress={onRemove}
56
- >
57
- <Assets.svg.iconDelete width={20} height={20} color={ColorPalette.semantic.error} />
58
- <ThemedText style={[styles.footerText, { color: ColorPalette.semantic.error }]}>
59
- {t('CredentialDetails.RemoveFromWallet')}
60
- </ThemedText>
61
- </TouchableOpacity>
62
- </View>
63
- )
64
- }
65
-
66
- export default RecordRemove
@@ -1,25 +0,0 @@
1
- import React from 'react'
2
- import { ThemedText } from './ThemedText'
3
-
4
- interface Props {
5
- children: React.ReactNode
6
- }
7
-
8
- // this component is used to create a custom header title that doesn't become oversized
9
- // https://reactnavigation.org/docs/native-stack-navigator#headertitle
10
- const HeaderTitle: React.FC<Props> = ({ children }) => {
11
- return (
12
- <ThemedText
13
- adjustsFontSizeToFit
14
- variant="headerTitle"
15
- accessibilityRole="header"
16
- numberOfLines={1}
17
- ellipsizeMode="tail"
18
- style={{ textAlign: 'center' }}
19
- >
20
- {children}
21
- </ThemedText>
22
- )
23
- }
24
-
25
- export default HeaderTitle
@@ -1,41 +0,0 @@
1
- import React from 'react'
2
- import { StyleSheet, View } from 'react-native'
3
-
4
- import { useTheme } from '../../contexts/theme'
5
- import { ThemedText } from './ThemedText'
6
-
7
- export interface TextBoxProps {
8
- children: string
9
- }
10
-
11
- const offset = 10
12
-
13
- const HighlightTextBox: React.FC<TextBoxProps> = ({ children }) => {
14
- const { ColorPalette, OnboardingTheme } = useTheme()
15
- const style = StyleSheet.create({
16
- icon: {
17
- marginRight: offset,
18
- },
19
- container: {
20
- flexDirection: 'row',
21
- backgroundColor: ColorPalette.brand.primaryBackground,
22
- },
23
- accentBox: {
24
- marginRight: offset,
25
- backgroundColor: ColorPalette.brand.highlight,
26
- width: 8,
27
- },
28
- headerText: {
29
- ...OnboardingTheme.bodyText,
30
- flexShrink: 1,
31
- },
32
- })
33
- return (
34
- <View style={style.container}>
35
- <View style={style.accentBox} />
36
- <ThemedText style={[style.headerText, { paddingTop: offset, paddingBottom: offset }]}>{children}</ThemedText>
37
- </View>
38
- )
39
- }
40
-
41
- export default HighlightTextBox
@@ -1,129 +0,0 @@
1
- import React from 'react'
2
- import { StyleSheet, TextStyle, View, ViewStyle } from 'react-native'
3
- import Icon from 'react-native-vector-icons/MaterialIcons'
4
-
5
- import { useTheme } from '../../contexts/theme'
6
- import { InfoBoxType } from '../misc/InfoBox'
7
- import { ThemedText } from './ThemedText'
8
-
9
- export interface TextBoxProps {
10
- children: React.ReactElement | string
11
- type?: InfoBoxType
12
- iconVerticalPosition?: 'high' | 'middle'
13
- iconHorizontalPosition?: 'left' | 'right'
14
- style?: ViewStyle
15
- textStyle?: TextStyle
16
- }
17
-
18
- const iconSize = 30
19
- const offset = 10
20
-
21
- const InfoTextBox: React.FC<TextBoxProps> = ({
22
- children,
23
- type = InfoBoxType.Info,
24
- iconVerticalPosition = 'high',
25
- iconHorizontalPosition = 'left',
26
- style = {},
27
- textStyle = {},
28
- }) => {
29
- const { ColorPalette } = useTheme()
30
- const styles = StyleSheet.create({
31
- container: {
32
- padding: 10,
33
- borderRadius: 5,
34
- borderWidth: 1,
35
- backgroundColor: ColorPalette.notification.info,
36
- borderColor: ColorPalette.notification.infoBorder,
37
- ...style,
38
- },
39
- row: {
40
- flexDirection: iconHorizontalPosition === 'left' ? 'row' : 'row-reverse',
41
- alignItems: 'center',
42
- justifyContent: 'space-between',
43
- },
44
- text: {
45
- alignSelf: 'center',
46
- flex: 1,
47
- flexWrap: 'wrap',
48
- color: ColorPalette.notification.infoText,
49
- ...textStyle,
50
- },
51
- iconContainer: {
52
- marginRight: iconHorizontalPosition === 'left' ? offset : 0,
53
- marginLeft: iconHorizontalPosition === 'right' ? offset : 0,
54
- alignSelf: iconVerticalPosition === 'high' ? 'flex-start' : 'center',
55
- },
56
- })
57
-
58
- let iconName = 'info'
59
- let iconColor = ColorPalette.notification.infoIcon
60
-
61
- switch (type) {
62
- case InfoBoxType.Info:
63
- break
64
-
65
- case InfoBoxType.Success:
66
- iconName = 'check-circle'
67
- iconColor = ColorPalette.notification.successIcon
68
- styles.container = {
69
- ...styles.container,
70
- backgroundColor: ColorPalette.notification.success,
71
- borderColor: ColorPalette.notification.successBorder,
72
- }
73
- styles.text = {
74
- ...styles.text,
75
- color: ColorPalette.notification.successText,
76
- }
77
- break
78
-
79
- case InfoBoxType.Warn:
80
- iconName = 'warning'
81
- iconColor = ColorPalette.notification.warnIcon
82
- styles.container = {
83
- ...styles.container,
84
- backgroundColor: ColorPalette.notification.warn,
85
- borderColor: ColorPalette.notification.warnBorder,
86
- }
87
- styles.text = {
88
- ...styles.text,
89
- color: ColorPalette.notification.warnText,
90
- }
91
- break
92
-
93
- case InfoBoxType.Error:
94
- iconName = 'error'
95
- iconColor = ColorPalette.notification.errorIcon
96
- styles.container = {
97
- ...styles.container,
98
- backgroundColor: ColorPalette.notification.error,
99
- borderColor: ColorPalette.notification.errorBorder,
100
- }
101
- styles.text = {
102
- ...styles.text,
103
- color: ColorPalette.notification.errorText,
104
- }
105
- break
106
-
107
- default:
108
- throw new Error('InfoTextBox type needs to be set correctly')
109
- }
110
-
111
- return (
112
- <View style={styles.container}>
113
- <View style={styles.row}>
114
- <View style={styles.iconContainer}>
115
- <Icon name={iconName} size={iconSize} color={iconColor} />
116
- </View>
117
- {typeof children === 'string' ? (
118
- <ThemedText variant="bold" style={styles.text}>
119
- {children}
120
- </ThemedText>
121
- ) : (
122
- <>{children}</>
123
- )}
124
- </View>
125
- </View>
126
- )
127
- }
128
-
129
- export default InfoTextBox
@@ -1,41 +0,0 @@
1
- import React from 'react'
2
- import { StyleSheet, TextStyle, TextProps } from 'react-native'
3
-
4
- import { useTheme } from '../../contexts/theme'
5
- import { testIdForAccessabilityLabel, testIdWithKey } from '../../utils/testable'
6
- import { ThemedText } from './ThemedText'
7
-
8
- interface LinkProps {
9
- linkText: string
10
- style?: TextStyle
11
- textProps?: TextProps
12
- onPress: () => void
13
- testID?: string
14
- }
15
-
16
- const Link: React.FC<LinkProps> = ({ linkText, onPress, style = {}, testID, ...textProps }) => {
17
- const { ColorPalette } = useTheme()
18
- const styles = StyleSheet.create({
19
- link: {
20
- color: ColorPalette.brand.link,
21
- textDecorationLine: 'underline',
22
- alignSelf: 'flex-start',
23
- },
24
- })
25
-
26
- return (
27
- <ThemedText
28
- style={[styles.link, style]}
29
- accessibilityLabel={linkText}
30
- accessible
31
- accessibilityRole={'link'}
32
- testID={testID ? testID : testIdWithKey(testIdForAccessabilityLabel(linkText))}
33
- onPress={onPress}
34
- {...textProps}
35
- >
36
- {linkText}
37
- </ThemedText>
38
- )
39
- }
40
-
41
- export default Link
@@ -1,21 +0,0 @@
1
- import React from 'react'
2
- import { Text as T, StyleSheet, TextStyle } from 'react-native'
3
-
4
- import { useTheme } from '../../contexts/theme'
5
-
6
- interface Props {
7
- children: React.ReactNode
8
- style?: TextStyle
9
- }
10
-
11
- const Text: React.FC<Props> = ({ children, style }) => {
12
- const { TextTheme } = useTheme()
13
- const styles = StyleSheet.create({
14
- text: {
15
- color: TextTheme.normal.color,
16
- },
17
- })
18
- return <T style={[styles.text, style]}>{children}</T>
19
- }
20
-
21
- export default Text
@@ -1,24 +0,0 @@
1
- import { ITextTheme } from '../../theme'
2
- import { useTheme } from '../../contexts/theme'
3
- import { Text, type TextProps } from 'react-native'
4
- import React from 'react'
5
-
6
- export type ThemedTextProps = TextProps & {
7
- variant?: keyof ITextTheme
8
- }
9
-
10
- /**
11
- *
12
- * @param {variant} variant - A key of the TextTheme object that is defined in the theme file
13
- * @param {maxFontSizeMultiplier} maxFontSizeMultiplier - It allows to override the maxFontSizeMultiplier. Default value is 2
14
- * @param {style} style - It allows to add extra styles to the component in addition to the one coming from the variant option
15
- * @param {rest} rest - It allows to pass the rest of the props to the Text component
16
- * @returns
17
- */
18
- export function ThemedText({ variant = 'normal', maxFontSizeMultiplier, style, ...rest }: ThemedTextProps) {
19
- const { TextTheme, maxFontSizeMultiplier: maxFontSize } = useTheme()
20
-
21
- return (
22
- <Text maxFontSizeMultiplier={maxFontSizeMultiplier ?? maxFontSize} style={[TextTheme[variant], style]} {...rest} />
23
- )
24
- }
@@ -1,128 +0,0 @@
1
- import React from 'react'
2
- import { View, useWindowDimensions, StyleSheet, TouchableOpacity } from 'react-native'
3
- import Icon from 'react-native-vector-icons/MaterialIcons'
4
-
5
- import { useTheme } from '../../contexts/theme'
6
- import { GenericFn } from '../../types/fn'
7
- import { testIdWithKey } from '../../utils/testable'
8
- import Toast from 'react-native-toast-message'
9
- import { ThemedText } from '../texts/ThemedText'
10
-
11
- interface BaseToastProps {
12
- title?: string
13
- body?: string
14
- toastType: string
15
- onPress?: GenericFn
16
- onShow?: GenericFn
17
- onHide?: GenericFn
18
- }
19
-
20
- export enum ToastType {
21
- Success = 'success',
22
- Info = 'info',
23
- Warn = 'warn',
24
- Error = 'error',
25
- }
26
-
27
- const BaseToast: React.FC<BaseToastProps> = ({ title, body, toastType, onPress = () => null }) => {
28
- const { TextTheme, borderRadius, borderWidth, ColorPalette } = useTheme()
29
- const { width } = useWindowDimensions()
30
- const iconSize = 24
31
- let iconName = ''
32
- let backgroundColor = ''
33
- let borderColor = ''
34
- let iconColor = ''
35
- let textColor = ''
36
- const styles = StyleSheet.create({
37
- container: {
38
- flex: 1,
39
- alignItems: 'flex-start',
40
- flexDirection: 'row',
41
- marginTop: 25,
42
- borderWidth,
43
- borderRadius,
44
- },
45
- textContainer: {
46
- flexShrink: 1,
47
- marginVertical: 15,
48
- marginRight: 10,
49
- },
50
- icon: {
51
- marginTop: 15,
52
- marginHorizontal: 15,
53
- },
54
- title: {
55
- fontWeight: TextTheme.bold.fontWeight,
56
- },
57
- body: {
58
- marginTop: 10,
59
- },
60
- })
61
- switch (toastType) {
62
- case ToastType.Success:
63
- iconName = 'check-circle'
64
- backgroundColor = ColorPalette.notification.success
65
- borderColor = ColorPalette.notification.successBorder
66
- iconColor = ColorPalette.notification.successIcon
67
- textColor = ColorPalette.notification.successText
68
- break
69
-
70
- case ToastType.Info:
71
- iconName = 'info'
72
- backgroundColor = ColorPalette.notification.info
73
- borderColor = ColorPalette.notification.infoBorder
74
- iconColor = ColorPalette.notification.infoIcon
75
- textColor = ColorPalette.notification.infoText
76
- break
77
-
78
- case ToastType.Warn:
79
- iconName = 'report-problem'
80
- backgroundColor = ColorPalette.notification.warn
81
- borderColor = ColorPalette.notification.warnBorder
82
- iconColor = ColorPalette.notification.warnIcon
83
- textColor = ColorPalette.notification.warnText
84
- break
85
-
86
- case ToastType.Error:
87
- iconName = 'error'
88
- backgroundColor = ColorPalette.notification.error
89
- borderColor = ColorPalette.notification.errorBorder
90
- iconColor = ColorPalette.notification.errorIcon
91
- textColor = ColorPalette.notification.errorText
92
- break
93
-
94
- default:
95
- throw new Error('ToastType was not set correctly.')
96
- }
97
-
98
- return (
99
- <TouchableOpacity activeOpacity={1} onPress={() => onPress()}>
100
- <View style={[styles.container, { backgroundColor, borderColor, width: width - width * 0.1 }]}>
101
- <View style={{ flex: 1, flexDirection: 'row' }}>
102
- <Icon style={styles.icon} name={iconName} color={iconColor} size={iconSize} />
103
- <View style={styles.textContainer}>
104
- <ThemedText style={[styles.title, { color: textColor }]} testID={testIdWithKey('ToastTitle')}>
105
- {title}
106
- </ThemedText>
107
- {body && (
108
- <ThemedText style={[styles.body, { color: textColor }]} testID={testIdWithKey('ToastBody')}>
109
- {body}
110
- </ThemedText>
111
- )}
112
- </View>
113
- </View>
114
- <View>
115
- <TouchableOpacity
116
- onPress={() => {
117
- Toast.hide()
118
- }}
119
- >
120
- <Icon style={styles.icon} name={'close'} color={iconColor} size={iconSize} />
121
- </TouchableOpacity>
122
- </View>
123
- </View>
124
- </TouchableOpacity>
125
- )
126
- }
127
-
128
- export default BaseToast
@@ -1,21 +0,0 @@
1
- import React from 'react'
2
- import { ToastShowParams } from 'react-native-toast-message'
3
-
4
- import BaseToast, { ToastType } from './BaseToast'
5
-
6
- export const Config = {
7
- success: (props: ToastShowParams) => (
8
- <BaseToast title={props?.text1} body={props?.text2} toastType={ToastType.Success} />
9
- ),
10
- warn: (props: ToastShowParams) => (
11
- <BaseToast title={props?.text1} body={props?.text2} toastType={ToastType.Warn} onPress={props?.onPress} />
12
- ),
13
- error: (props: ToastShowParams) => (
14
- <BaseToast title={props?.text1} body={props?.text2} toastType={ToastType.Error} onPress={props?.onPress} />
15
- ),
16
- info: (props: ToastShowParams) => (
17
- <BaseToast title={props?.text1} body={props?.text2} toastType={ToastType.Info} onPress={props?.onPress} />
18
- ),
19
- }
20
-
21
- export default Config