@bifold/core 1.0.0 → 2.0.1

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 (373) hide show
  1. package/lib/commonjs/App.js +26 -22
  2. package/lib/commonjs/App.js.map +1 -1
  3. package/lib/commonjs/components/inputs/BiometryControl.js +176 -0
  4. package/lib/commonjs/components/inputs/BiometryControl.js.map +1 -0
  5. package/lib/commonjs/components/misc/ConnectionAlert.js +2 -2
  6. package/lib/commonjs/components/misc/ConnectionAlert.js.map +1 -1
  7. package/lib/commonjs/components/misc/InfoBox.js +3 -2
  8. package/lib/commonjs/components/misc/InfoBox.js.map +1 -1
  9. package/lib/commonjs/components/misc/{PINCreateHeader.js → PINHeader.js} +4 -4
  10. package/lib/commonjs/components/misc/PINHeader.js.map +1 -0
  11. package/lib/commonjs/components/misc/PINValidationHelper.js +50 -0
  12. package/lib/commonjs/components/misc/PINValidationHelper.js.map +1 -0
  13. package/lib/commonjs/components/views/PushNotificationsContent.js +52 -0
  14. package/lib/commonjs/components/views/PushNotificationsContent.js.map +1 -0
  15. package/lib/commonjs/components/views/PushNotificationsDisabledContent.js +47 -0
  16. package/lib/commonjs/components/views/PushNotificationsDisabledContent.js.map +1 -0
  17. package/lib/commonjs/container-api.js +8 -3
  18. package/lib/commonjs/container-api.js.map +1 -1
  19. package/lib/commonjs/container-impl.js +25 -21
  20. package/lib/commonjs/container-impl.js.map +1 -1
  21. package/lib/commonjs/contexts/activity.js +17 -41
  22. package/lib/commonjs/contexts/activity.js.map +1 -1
  23. package/lib/commonjs/contexts/auth.js +16 -6
  24. package/lib/commonjs/contexts/auth.js.map +1 -1
  25. package/lib/commonjs/contexts/navigation.js +24 -0
  26. package/lib/commonjs/contexts/navigation.js.map +1 -0
  27. package/lib/commonjs/contexts/reducers/store.js +14 -0
  28. package/lib/commonjs/contexts/reducers/store.js.map +1 -1
  29. package/lib/commonjs/contexts/theme.js +36 -3
  30. package/lib/commonjs/contexts/theme.js.map +1 -1
  31. package/lib/commonjs/hooks/deep-links.js +2 -4
  32. package/lib/commonjs/hooks/deep-links.js.map +1 -1
  33. package/lib/commonjs/hooks/{initialize-agent.js → useBifoldAgentSetup.js} +24 -44
  34. package/lib/commonjs/hooks/useBifoldAgentSetup.js.map +1 -0
  35. package/lib/commonjs/hooks/useOnboardingState.js +3 -3
  36. package/lib/commonjs/hooks/useOnboardingState.js.map +1 -1
  37. package/lib/commonjs/hooks/usePINValidation.js +82 -0
  38. package/lib/commonjs/hooks/usePINValidation.js.map +1 -0
  39. package/lib/commonjs/index.js +34 -33
  40. package/lib/commonjs/index.js.map +1 -1
  41. package/lib/commonjs/localization/en/index.js +31 -25
  42. package/lib/commonjs/localization/en/index.js.map +1 -1
  43. package/lib/commonjs/localization/fr/index.js +18 -6
  44. package/lib/commonjs/localization/fr/index.js.map +1 -1
  45. package/lib/commonjs/localization/pt-br/index.js +43 -37
  46. package/lib/commonjs/localization/pt-br/index.js.map +1 -1
  47. package/lib/commonjs/navigators/MainStack.js +31 -8
  48. package/lib/commonjs/navigators/MainStack.js.map +1 -1
  49. package/lib/commonjs/navigators/OnboardingScreens.js +8 -8
  50. package/lib/commonjs/navigators/OnboardingScreens.js.map +1 -1
  51. package/lib/commonjs/navigators/OnboardingStack.js +20 -12
  52. package/lib/commonjs/navigators/OnboardingStack.js.map +1 -1
  53. package/lib/commonjs/navigators/RootStack.js +27 -30
  54. package/lib/commonjs/navigators/RootStack.js.map +1 -1
  55. package/lib/commonjs/navigators/SettingStack.js +14 -15
  56. package/lib/commonjs/navigators/SettingStack.js.map +1 -1
  57. package/lib/commonjs/navigators/defaultStackOptions.js +13 -2
  58. package/lib/commonjs/navigators/defaultStackOptions.js.map +1 -1
  59. package/lib/commonjs/onboarding.js +12 -5
  60. package/lib/commonjs/onboarding.js.map +1 -1
  61. package/lib/commonjs/screens/Biometry.js +62 -0
  62. package/lib/commonjs/screens/Biometry.js.map +1 -0
  63. package/lib/commonjs/screens/CredentialOffer.js +2 -2
  64. package/lib/commonjs/screens/CredentialOffer.js.map +1 -1
  65. package/lib/commonjs/screens/Onboarding.js.map +1 -1
  66. package/lib/commonjs/screens/PINChange.js +212 -0
  67. package/lib/commonjs/screens/PINChange.js.map +1 -0
  68. package/lib/commonjs/screens/PINCreate.js +47 -224
  69. package/lib/commonjs/screens/PINCreate.js.map +1 -1
  70. package/lib/commonjs/screens/Preface.js.map +1 -1
  71. package/lib/commonjs/screens/ProofRequest.js +112 -33
  72. package/lib/commonjs/screens/ProofRequest.js.map +1 -1
  73. package/lib/commonjs/screens/PushNotifications.js +71 -0
  74. package/lib/commonjs/screens/PushNotifications.js.map +1 -0
  75. package/lib/commonjs/screens/Settings.js +8 -24
  76. package/lib/commonjs/screens/Settings.js.map +1 -1
  77. package/lib/commonjs/screens/Splash.js +7 -23
  78. package/lib/commonjs/screens/Splash.js.map +1 -1
  79. package/lib/commonjs/screens/Terms.js.map +1 -1
  80. package/lib/commonjs/screens/ToggleBiometry.js +135 -0
  81. package/lib/commonjs/screens/ToggleBiometry.js.map +1 -0
  82. package/lib/commonjs/screens/{PushNotification.js → TogglePushNotifications.js} +41 -99
  83. package/lib/commonjs/screens/TogglePushNotifications.js.map +1 -0
  84. package/lib/commonjs/theme.js +4 -2
  85. package/lib/commonjs/theme.js.map +1 -1
  86. package/lib/commonjs/types/navigators.js +5 -2
  87. package/lib/commonjs/types/navigators.js.map +1 -1
  88. package/lib/commonjs/utils/{PINCreationValidation.js → PINValidation.js} +4 -4
  89. package/lib/commonjs/utils/PINValidation.js.map +1 -0
  90. package/lib/commonjs/utils/agent.js.map +1 -1
  91. package/lib/commonjs/utils/helpers.js +2 -0
  92. package/lib/commonjs/utils/helpers.js.map +1 -1
  93. package/lib/module/App.js +24 -20
  94. package/lib/module/App.js.map +1 -1
  95. package/lib/module/components/inputs/BiometryControl.js +167 -0
  96. package/lib/module/components/inputs/BiometryControl.js.map +1 -0
  97. package/lib/module/components/misc/ConnectionAlert.js +2 -2
  98. package/lib/module/components/misc/ConnectionAlert.js.map +1 -1
  99. package/lib/module/components/misc/InfoBox.js +3 -2
  100. package/lib/module/components/misc/InfoBox.js.map +1 -1
  101. package/lib/module/components/misc/{PINCreateHeader.js → PINHeader.js} +4 -4
  102. package/lib/module/components/misc/PINHeader.js.map +1 -0
  103. package/lib/module/components/misc/PINValidationHelper.js +43 -0
  104. package/lib/module/components/misc/PINValidationHelper.js.map +1 -0
  105. package/lib/module/components/views/PushNotificationsContent.js +45 -0
  106. package/lib/module/components/views/PushNotificationsContent.js.map +1 -0
  107. package/lib/module/components/views/PushNotificationsDisabledContent.js +40 -0
  108. package/lib/module/components/views/PushNotificationsDisabledContent.js.map +1 -0
  109. package/lib/module/container-api.js +7 -2
  110. package/lib/module/container-api.js.map +1 -1
  111. package/lib/module/container-impl.js +25 -21
  112. package/lib/module/container-impl.js.map +1 -1
  113. package/lib/module/contexts/activity.js +17 -41
  114. package/lib/module/contexts/activity.js.map +1 -1
  115. package/lib/module/contexts/auth.js +16 -6
  116. package/lib/module/contexts/auth.js.map +1 -1
  117. package/lib/module/contexts/navigation.js +17 -0
  118. package/lib/module/contexts/navigation.js.map +1 -0
  119. package/lib/module/contexts/reducers/store.js +14 -0
  120. package/lib/module/contexts/reducers/store.js.map +1 -1
  121. package/lib/module/contexts/theme.js +36 -4
  122. package/lib/module/contexts/theme.js.map +1 -1
  123. package/lib/module/hooks/deep-links.js +2 -4
  124. package/lib/module/hooks/deep-links.js.map +1 -1
  125. package/lib/module/hooks/{initialize-agent.js → useBifoldAgentSetup.js} +25 -45
  126. package/lib/module/hooks/useBifoldAgentSetup.js.map +1 -0
  127. package/lib/module/hooks/useOnboardingState.js +3 -3
  128. package/lib/module/hooks/useOnboardingState.js.map +1 -1
  129. package/lib/module/hooks/usePINValidation.js +75 -0
  130. package/lib/module/hooks/usePINValidation.js.map +1 -0
  131. package/lib/module/index.js +6 -6
  132. package/lib/module/index.js.map +1 -1
  133. package/lib/module/localization/en/index.js +31 -25
  134. package/lib/module/localization/en/index.js.map +1 -1
  135. package/lib/module/localization/fr/index.js +18 -6
  136. package/lib/module/localization/fr/index.js.map +1 -1
  137. package/lib/module/localization/pt-br/index.js +43 -37
  138. package/lib/module/localization/pt-br/index.js.map +1 -1
  139. package/lib/module/navigators/MainStack.js +32 -9
  140. package/lib/module/navigators/MainStack.js.map +1 -1
  141. package/lib/module/navigators/OnboardingScreens.js +8 -8
  142. package/lib/module/navigators/OnboardingScreens.js.map +1 -1
  143. package/lib/module/navigators/OnboardingStack.js +21 -12
  144. package/lib/module/navigators/OnboardingStack.js.map +1 -1
  145. package/lib/module/navigators/RootStack.js +26 -29
  146. package/lib/module/navigators/RootStack.js.map +1 -1
  147. package/lib/module/navigators/SettingStack.js +14 -15
  148. package/lib/module/navigators/SettingStack.js.map +1 -1
  149. package/lib/module/navigators/defaultStackOptions.js +13 -2
  150. package/lib/module/navigators/defaultStackOptions.js.map +1 -1
  151. package/lib/module/onboarding.js +10 -4
  152. package/lib/module/onboarding.js.map +1 -1
  153. package/lib/module/screens/Biometry.js +53 -0
  154. package/lib/module/screens/Biometry.js.map +1 -0
  155. package/lib/module/screens/CredentialOffer.js +2 -2
  156. package/lib/module/screens/CredentialOffer.js.map +1 -1
  157. package/lib/module/screens/Onboarding.js.map +1 -1
  158. package/lib/module/screens/PINChange.js +203 -0
  159. package/lib/module/screens/PINChange.js.map +1 -0
  160. package/lib/module/screens/PINCreate.js +49 -226
  161. package/lib/module/screens/PINCreate.js.map +1 -1
  162. package/lib/module/screens/Preface.js.map +1 -1
  163. package/lib/module/screens/ProofRequest.js +113 -34
  164. package/lib/module/screens/ProofRequest.js.map +1 -1
  165. package/lib/module/screens/PushNotifications.js +63 -0
  166. package/lib/module/screens/PushNotifications.js.map +1 -0
  167. package/lib/module/screens/Settings.js +9 -25
  168. package/lib/module/screens/Settings.js.map +1 -1
  169. package/lib/module/screens/Splash.js +7 -23
  170. package/lib/module/screens/Splash.js.map +1 -1
  171. package/lib/module/screens/Terms.js.map +1 -1
  172. package/lib/module/screens/ToggleBiometry.js +126 -0
  173. package/lib/module/screens/ToggleBiometry.js.map +1 -0
  174. package/lib/module/screens/TogglePushNotifications.js +112 -0
  175. package/lib/module/screens/TogglePushNotifications.js.map +1 -0
  176. package/lib/module/theme.js +3 -1
  177. package/lib/module/theme.js.map +1 -1
  178. package/lib/module/types/navigators.js +5 -2
  179. package/lib/module/types/navigators.js.map +1 -1
  180. package/lib/module/utils/{PINCreationValidation.js → PINValidation.js} +2 -2
  181. package/lib/module/utils/PINValidation.js.map +1 -0
  182. package/lib/module/utils/agent.js.map +1 -1
  183. package/lib/module/utils/helpers.js +2 -0
  184. package/lib/module/utils/helpers.js.map +1 -1
  185. package/lib/typescript/src/App.d.ts +3 -3
  186. package/lib/typescript/src/App.d.ts.map +1 -1
  187. package/lib/typescript/src/components/inputs/BiometryControl.d.ts +9 -0
  188. package/lib/typescript/src/components/inputs/BiometryControl.d.ts.map +1 -0
  189. package/lib/typescript/src/components/misc/ConnectionAlert.d.ts +1 -1
  190. package/lib/typescript/src/components/misc/ConnectionAlert.d.ts.map +1 -1
  191. package/lib/typescript/src/components/misc/InfoBox.d.ts +1 -0
  192. package/lib/typescript/src/components/misc/InfoBox.d.ts.map +1 -1
  193. package/lib/typescript/src/components/misc/PINHeader.d.ts +6 -0
  194. package/lib/typescript/src/components/misc/PINHeader.d.ts.map +1 -0
  195. package/lib/typescript/src/components/misc/PINValidationHelper.d.ts +8 -0
  196. package/lib/typescript/src/components/misc/PINValidationHelper.d.ts.map +1 -0
  197. package/lib/typescript/src/components/views/PushNotificationsContent.d.ts +4 -0
  198. package/lib/typescript/src/components/views/PushNotificationsContent.d.ts.map +1 -0
  199. package/lib/typescript/src/components/views/PushNotificationsDisabledContent.d.ts +4 -0
  200. package/lib/typescript/src/components/views/PushNotificationsDisabledContent.d.ts.map +1 -0
  201. package/lib/typescript/src/container-api.d.ts +24 -13
  202. package/lib/typescript/src/container-api.d.ts.map +1 -1
  203. package/lib/typescript/src/container-impl.d.ts +4 -2
  204. package/lib/typescript/src/container-impl.d.ts.map +1 -1
  205. package/lib/typescript/src/contexts/activity.d.ts.map +1 -1
  206. package/lib/typescript/src/contexts/auth.d.ts +3 -1
  207. package/lib/typescript/src/contexts/auth.d.ts.map +1 -1
  208. package/lib/typescript/src/contexts/navigation.d.ts +8 -0
  209. package/lib/typescript/src/contexts/navigation.d.ts.map +1 -0
  210. package/lib/typescript/src/contexts/reducers/store.d.ts +3 -1
  211. package/lib/typescript/src/contexts/reducers/store.d.ts.map +1 -1
  212. package/lib/typescript/src/contexts/theme.d.ts +9 -3
  213. package/lib/typescript/src/contexts/theme.d.ts.map +1 -1
  214. package/lib/typescript/src/hooks/deep-links.d.ts.map +1 -1
  215. package/lib/typescript/src/hooks/useBifoldAgentSetup.d.ts +10 -0
  216. package/lib/typescript/src/hooks/useBifoldAgentSetup.d.ts.map +1 -0
  217. package/lib/typescript/src/hooks/useOnboardingState.d.ts +2 -1
  218. package/lib/typescript/src/hooks/useOnboardingState.d.ts.map +1 -1
  219. package/lib/typescript/src/hooks/usePINValidation.d.ts +20 -0
  220. package/lib/typescript/src/hooks/usePINValidation.d.ts.map +1 -0
  221. package/lib/typescript/src/index.d.ts +9 -7
  222. package/lib/typescript/src/index.d.ts.map +1 -1
  223. package/lib/typescript/src/localization/en/index.d.ts +23 -17
  224. package/lib/typescript/src/localization/en/index.d.ts.map +1 -1
  225. package/lib/typescript/src/localization/fr/index.d.ts +14 -2
  226. package/lib/typescript/src/localization/fr/index.d.ts.map +1 -1
  227. package/lib/typescript/src/localization/pt-br/index.d.ts +23 -17
  228. package/lib/typescript/src/localization/pt-br/index.d.ts.map +1 -1
  229. package/lib/typescript/src/navigators/MainStack.d.ts.map +1 -1
  230. package/lib/typescript/src/navigators/OnboardingScreens.d.ts +3 -3
  231. package/lib/typescript/src/navigators/OnboardingScreens.d.ts.map +1 -1
  232. package/lib/typescript/src/navigators/OnboardingStack.d.ts +7 -1
  233. package/lib/typescript/src/navigators/OnboardingStack.d.ts.map +1 -1
  234. package/lib/typescript/src/navigators/RootStack.d.ts.map +1 -1
  235. package/lib/typescript/src/navigators/SettingStack.d.ts.map +1 -1
  236. package/lib/typescript/src/navigators/defaultStackOptions.d.ts.map +1 -1
  237. package/lib/typescript/src/onboarding.d.ts +4 -2
  238. package/lib/typescript/src/onboarding.d.ts.map +1 -1
  239. package/lib/typescript/src/screens/Biometry.d.ts +4 -0
  240. package/lib/typescript/src/screens/Biometry.d.ts.map +1 -0
  241. package/lib/typescript/src/screens/{PushNotification.d.ts → PINChange.d.ts} +3 -3
  242. package/lib/typescript/src/screens/PINChange.d.ts.map +1 -0
  243. package/lib/typescript/src/screens/PINCreate.d.ts.map +1 -1
  244. package/lib/typescript/src/screens/ProofRequest.d.ts.map +1 -1
  245. package/lib/typescript/src/screens/PushNotifications.d.ts +4 -0
  246. package/lib/typescript/src/screens/PushNotifications.d.ts.map +1 -0
  247. package/lib/typescript/src/screens/Settings.d.ts.map +1 -1
  248. package/lib/typescript/src/screens/Splash.d.ts +7 -4
  249. package/lib/typescript/src/screens/Splash.d.ts.map +1 -1
  250. package/lib/typescript/src/screens/ToggleBiometry.d.ts +4 -0
  251. package/lib/typescript/src/screens/ToggleBiometry.d.ts.map +1 -0
  252. package/lib/typescript/src/screens/TogglePushNotifications.d.ts +4 -0
  253. package/lib/typescript/src/screens/TogglePushNotifications.d.ts.map +1 -0
  254. package/lib/typescript/src/theme.d.ts +3 -1
  255. package/lib/typescript/src/theme.d.ts.map +1 -1
  256. package/lib/typescript/src/types/navigators.d.ts +11 -13
  257. package/lib/typescript/src/types/navigators.d.ts.map +1 -1
  258. package/lib/typescript/src/types/state.d.ts +1 -0
  259. package/lib/typescript/src/types/state.d.ts.map +1 -1
  260. package/lib/typescript/src/utils/{PINCreationValidation.d.ts → PINValidation.d.ts} +2 -2
  261. package/lib/typescript/src/utils/PINValidation.d.ts.map +1 -0
  262. package/lib/typescript/src/utils/agent.d.ts +1 -2
  263. package/lib/typescript/src/utils/agent.d.ts.map +1 -1
  264. package/lib/typescript/src/utils/helpers.d.ts.map +1 -1
  265. package/package.json +5 -5
  266. package/src/App.tsx +41 -40
  267. package/src/components/inputs/BiometryControl.tsx +176 -0
  268. package/src/components/misc/ConnectionAlert.tsx +3 -3
  269. package/src/components/misc/InfoBox.tsx +3 -1
  270. package/src/components/misc/{PINCreateHeader.tsx → PINHeader.tsx} +4 -4
  271. package/src/components/misc/PINValidationHelper.tsx +48 -0
  272. package/src/components/views/PushNotificationsContent.tsx +51 -0
  273. package/src/components/views/PushNotificationsDisabledContent.tsx +47 -0
  274. package/src/container-api.ts +27 -11
  275. package/src/container-impl.ts +31 -27
  276. package/src/contexts/activity.tsx +17 -42
  277. package/src/contexts/auth.tsx +18 -6
  278. package/src/contexts/navigation.tsx +19 -0
  279. package/src/contexts/reducers/store.ts +12 -0
  280. package/src/contexts/theme.tsx +51 -0
  281. package/src/hooks/deep-links.ts +2 -4
  282. package/src/hooks/{initialize-agent.ts → useBifoldAgentSetup.ts} +32 -54
  283. package/src/hooks/useOnboardingState.ts +10 -3
  284. package/src/hooks/usePINValidation.ts +98 -0
  285. package/src/index.ts +12 -14
  286. package/src/localization/en/index.ts +26 -20
  287. package/src/localization/fr/index.ts +32 -20
  288. package/src/localization/pt-br/index.ts +39 -33
  289. package/src/navigators/MainStack.tsx +29 -8
  290. package/src/navigators/OnboardingScreens.ts +11 -11
  291. package/src/navigators/OnboardingStack.tsx +26 -14
  292. package/src/navigators/RootStack.tsx +31 -25
  293. package/src/navigators/SettingStack.tsx +15 -16
  294. package/src/navigators/defaultStackOptions.tsx +13 -2
  295. package/src/onboarding.ts +12 -5
  296. package/src/screens/Biometry.tsx +57 -0
  297. package/src/screens/CredentialOffer.tsx +2 -2
  298. package/src/screens/Onboarding.tsx +2 -2
  299. package/src/screens/PINChange.tsx +250 -0
  300. package/src/screens/PINCreate.tsx +51 -267
  301. package/src/screens/Preface.tsx +2 -2
  302. package/src/screens/ProofRequest.tsx +140 -48
  303. package/src/screens/PushNotifications.tsx +59 -0
  304. package/src/screens/Settings.tsx +5 -10
  305. package/src/screens/Splash.tsx +10 -22
  306. package/src/screens/Terms.tsx +2 -2
  307. package/src/screens/ToggleBiometry.tsx +167 -0
  308. package/src/screens/TogglePushNotifications.tsx +118 -0
  309. package/src/theme.ts +5 -1
  310. package/src/types/navigators.ts +11 -12
  311. package/src/types/state.ts +1 -0
  312. package/src/utils/{PINCreationValidation.ts → PINValidation.ts} +1 -1
  313. package/src/utils/agent.ts +1 -2
  314. package/src/utils/helpers.ts +2 -0
  315. package/lib/commonjs/components/misc/ActivityLogLink.js +0 -44
  316. package/lib/commonjs/components/misc/ActivityLogLink.js.map +0 -1
  317. package/lib/commonjs/components/misc/PINCreateHeader.js.map +0 -1
  318. package/lib/commonjs/components/modals/NotificationModal.js +0 -121
  319. package/lib/commonjs/components/modals/NotificationModal.js.map +0 -1
  320. package/lib/commonjs/components/texts/Label.js +0 -57
  321. package/lib/commonjs/components/texts/Label.js.map +0 -1
  322. package/lib/commonjs/components/texts/Title.js +0 -29
  323. package/lib/commonjs/components/texts/Title.js.map +0 -1
  324. package/lib/commonjs/components/views/ModularView.js +0 -41
  325. package/lib/commonjs/components/views/ModularView.js.map +0 -1
  326. package/lib/commonjs/hooks/initialize-agent.js.map +0 -1
  327. package/lib/commonjs/screens/PushNotification.js.map +0 -1
  328. package/lib/commonjs/screens/UseBiometry.js +0 -315
  329. package/lib/commonjs/screens/UseBiometry.js.map +0 -1
  330. package/lib/commonjs/utils/PINCreationValidation.js.map +0 -1
  331. package/lib/module/components/misc/ActivityLogLink.js +0 -37
  332. package/lib/module/components/misc/ActivityLogLink.js.map +0 -1
  333. package/lib/module/components/misc/PINCreateHeader.js.map +0 -1
  334. package/lib/module/components/modals/NotificationModal.js +0 -112
  335. package/lib/module/components/modals/NotificationModal.js.map +0 -1
  336. package/lib/module/components/texts/Label.js +0 -50
  337. package/lib/module/components/texts/Label.js.map +0 -1
  338. package/lib/module/components/texts/Title.js +0 -22
  339. package/lib/module/components/texts/Title.js.map +0 -1
  340. package/lib/module/components/views/ModularView.js +0 -34
  341. package/lib/module/components/views/ModularView.js.map +0 -1
  342. package/lib/module/hooks/initialize-agent.js.map +0 -1
  343. package/lib/module/screens/PushNotification.js +0 -170
  344. package/lib/module/screens/PushNotification.js.map +0 -1
  345. package/lib/module/screens/UseBiometry.js +0 -306
  346. package/lib/module/screens/UseBiometry.js.map +0 -1
  347. package/lib/module/utils/PINCreationValidation.js.map +0 -1
  348. package/lib/typescript/src/components/misc/ActivityLogLink.d.ts +0 -4
  349. package/lib/typescript/src/components/misc/ActivityLogLink.d.ts.map +0 -1
  350. package/lib/typescript/src/components/misc/PINCreateHeader.d.ts +0 -6
  351. package/lib/typescript/src/components/misc/PINCreateHeader.d.ts.map +0 -1
  352. package/lib/typescript/src/components/modals/NotificationModal.d.ts +0 -17
  353. package/lib/typescript/src/components/modals/NotificationModal.d.ts.map +0 -1
  354. package/lib/typescript/src/components/texts/Label.d.ts +0 -9
  355. package/lib/typescript/src/components/texts/Label.d.ts.map +0 -1
  356. package/lib/typescript/src/components/texts/Title.d.ts +0 -8
  357. package/lib/typescript/src/components/texts/Title.d.ts.map +0 -1
  358. package/lib/typescript/src/components/views/ModularView.d.ts +0 -9
  359. package/lib/typescript/src/components/views/ModularView.d.ts.map +0 -1
  360. package/lib/typescript/src/hooks/initialize-agent.d.ts +0 -7
  361. package/lib/typescript/src/hooks/initialize-agent.d.ts.map +0 -1
  362. package/lib/typescript/src/screens/PushNotification.d.ts.map +0 -1
  363. package/lib/typescript/src/screens/UseBiometry.d.ts +0 -4
  364. package/lib/typescript/src/screens/UseBiometry.d.ts.map +0 -1
  365. package/lib/typescript/src/utils/PINCreationValidation.d.ts.map +0 -1
  366. package/src/components/misc/ActivityLogLink.tsx +0 -34
  367. package/src/components/modals/NotificationModal.tsx +0 -127
  368. package/src/components/texts/Label.tsx +0 -51
  369. package/src/components/texts/Title.tsx +0 -25
  370. package/src/components/views/ModularView.tsx +0 -35
  371. package/src/contexts/theme.ts +0 -9
  372. package/src/screens/PushNotification.tsx +0 -186
  373. package/src/screens/UseBiometry.tsx +0 -357
@@ -0,0 +1,167 @@
1
+ import { Header, HeaderBackButton, useHeaderHeight } from '@react-navigation/elements'
2
+ import React, { useCallback, useState } from 'react'
3
+ import { useTranslation } from 'react-i18next'
4
+
5
+ import BiometryControl from '../components/inputs/BiometryControl'
6
+ import SafeAreaModal from '../components/modals/SafeAreaModal'
7
+ import { TOKENS, useServices } from '../container-api'
8
+ import { useAuth } from '../contexts/auth'
9
+ import { DispatchAction } from '../contexts/reducers/store'
10
+ import { useStore } from '../contexts/store'
11
+ import { useTheme } from '../contexts/theme'
12
+ import { HistoryCardType, HistoryRecord } from '../modules/history/types'
13
+ import { useAppAgent } from '../utils/agent'
14
+ import PINEnter, { PINEntryUsage } from './PINEnter'
15
+
16
+ interface BackButtonProps {
17
+ setCanSeeCheckPIN: (value: boolean) => void
18
+ }
19
+
20
+ const BackButton: React.FC<BackButtonProps> = ({ setCanSeeCheckPIN }) => (
21
+ <HeaderBackButton onPress={() => setCanSeeCheckPIN(false)} tintColor="white" labelVisible={false} />
22
+ )
23
+
24
+ const ToggleBiometry: React.FC = () => {
25
+ const [store, dispatch] = useStore()
26
+ const { agent } = useAppAgent()
27
+ const { t } = useTranslation()
28
+ const [logger, historyManagerCurried, historyEnabled, historyEventsLogger] = useServices([
29
+ TOKENS.UTIL_LOGGER,
30
+ TOKENS.FN_LOAD_HISTORY,
31
+ TOKENS.HISTORY_ENABLED,
32
+ TOKENS.HISTORY_EVENTS_LOGGER,
33
+ ])
34
+ const { commitWalletToKeychain, disableBiometrics } = useAuth()
35
+ const [biometryEnabled, setBiometryEnabled] = useState(store.preferences.useBiometry)
36
+ const [canSeeCheckPIN, setCanSeeCheckPIN] = useState<boolean>(false)
37
+ const { TextTheme, ColorPallet } = useTheme()
38
+ const headerHeight = useHeaderHeight()
39
+
40
+ const logHistoryRecord = useCallback(
41
+ (type: HistoryCardType) => {
42
+ try {
43
+ if (!(agent && historyEnabled)) {
44
+ logger.trace(
45
+ `[${ToggleBiometry.name}]:[logHistoryRecord] Skipping history log, either history function disabled or agent undefined!`
46
+ )
47
+ return
48
+ }
49
+ const historyManager = historyManagerCurried(agent)
50
+
51
+ /** Save history record for card accepted */
52
+ const recordData: HistoryRecord = {
53
+ type: type,
54
+ message: type,
55
+ createdAt: new Date(),
56
+ }
57
+ historyManager.saveHistory(recordData)
58
+ } catch (err: unknown) {
59
+ logger.error(`[${ToggleBiometry.name}]:[logHistoryRecord] Error saving history: ${err}`)
60
+ }
61
+ },
62
+ [agent, historyEnabled, logger, historyManagerCurried]
63
+ )
64
+
65
+ const onSwitchToggleAllowed = useCallback(() => {
66
+ setCanSeeCheckPIN(true)
67
+ if (
68
+ historyEventsLogger.logToggleBiometry &&
69
+ store.onboarding.didAgreeToTerms &&
70
+ store.onboarding.didConsiderBiometry
71
+ ) {
72
+ const type = HistoryCardType.ActivateBiometry
73
+ logHistoryRecord(type)
74
+ }
75
+ }, [
76
+ historyEventsLogger.logToggleBiometry,
77
+ logHistoryRecord,
78
+ store.onboarding.didAgreeToTerms,
79
+ store.onboarding.didConsiderBiometry,
80
+ ])
81
+
82
+ const handleBiometryToggle = useCallback((newValue: boolean) => {
83
+ if (newValue === biometryEnabled) return
84
+
85
+ onSwitchToggleAllowed()
86
+ }, [biometryEnabled, onSwitchToggleAllowed])
87
+
88
+ const onAuthenticationComplete = useCallback(
89
+ (status: boolean) => {
90
+ // If successfully authenticated the toggle may proceed.
91
+ if (status) {
92
+ const newValue = !biometryEnabled
93
+ setBiometryEnabled(newValue)
94
+
95
+ if (newValue) {
96
+ commitWalletToKeychain(newValue).then(() => {
97
+ dispatch({
98
+ type: DispatchAction.USE_BIOMETRY,
99
+ payload: [newValue],
100
+ })
101
+ })
102
+ } else {
103
+ disableBiometrics().then(() => {
104
+ dispatch({
105
+ type: DispatchAction.USE_BIOMETRY,
106
+ payload: [newValue],
107
+ })
108
+ })
109
+ }
110
+
111
+ if (
112
+ historyEventsLogger.logToggleBiometry &&
113
+ store.onboarding.didAgreeToTerms &&
114
+ store.onboarding.didConsiderBiometry
115
+ ) {
116
+ const type = HistoryCardType.DeactivateBiometry
117
+ logHistoryRecord(type)
118
+ }
119
+ }
120
+ setCanSeeCheckPIN(false)
121
+ },
122
+ [
123
+ biometryEnabled,
124
+ commitWalletToKeychain,
125
+ disableBiometrics,
126
+ dispatch,
127
+ historyEventsLogger.logToggleBiometry,
128
+ logHistoryRecord,
129
+ store.onboarding.didAgreeToTerms,
130
+ store.onboarding.didConsiderBiometry,
131
+ ]
132
+ )
133
+
134
+ const renderHeaderLeft = useCallback(
135
+ () => <BackButton setCanSeeCheckPIN={() => setCanSeeCheckPIN(false)} />,
136
+ [setCanSeeCheckPIN]
137
+ )
138
+
139
+ return (
140
+ <BiometryControl
141
+ biometryEnabled={biometryEnabled}
142
+ onBiometryToggle={handleBiometryToggle}
143
+ >
144
+ <SafeAreaModal
145
+ style={{ backgroundColor: ColorPallet.brand.primaryBackground }}
146
+ visible={canSeeCheckPIN}
147
+ transparent={false}
148
+ animationType={'slide'}
149
+ presentationStyle="fullScreen"
150
+ >
151
+ <Header
152
+ title={t('Screens.EnterPIN')}
153
+ headerTitleStyle={TextTheme.headerTitle}
154
+ headerStyle={{ height: headerHeight }}
155
+ headerLeft={renderHeaderLeft}
156
+ />
157
+ <PINEnter
158
+ usage={PINEntryUsage.ChangeBiometrics}
159
+ setAuthenticated={onAuthenticationComplete}
160
+ onCancelAuth={setCanSeeCheckPIN}
161
+ />
162
+ </SafeAreaModal>
163
+ </BiometryControl>
164
+ )
165
+ }
166
+
167
+ export default ToggleBiometry
@@ -0,0 +1,118 @@
1
+ import { useAgent } from '@credo-ts/react-hooks'
2
+ import React, { useEffect, useState } from 'react'
3
+ import { useTranslation } from 'react-i18next'
4
+ import { AppState, Linking, ScrollView, StyleSheet, Switch, View } from 'react-native'
5
+ import { SafeAreaView } from 'react-native-safe-area-context'
6
+
7
+ import Button, { ButtonType } from '../components/buttons/Button'
8
+ import { ThemedText } from '../components/texts/ThemedText'
9
+ import PushNotificationsContent from '../components/views/PushNotificationsContent'
10
+ import PushNotificationsDisabledContent from '../components/views/PushNotificationsDisabledContent'
11
+ import { TOKENS, useServices } from '../container-api'
12
+ import { DispatchAction } from '../contexts/reducers/store'
13
+ import { useStore } from '../contexts/store'
14
+ import { useTheme } from '../contexts/theme'
15
+ import { testIdWithKey } from '../utils/testable'
16
+
17
+ // Screen accesible through settings that allows the user to
18
+ // enable or disable push notifications
19
+ const TogglePushNotifications: React.FC = () => {
20
+ const { t } = useTranslation()
21
+ const [store, dispatch] = useStore()
22
+ const { agent } = useAgent()
23
+ const { ColorPallet } = useTheme()
24
+ const [{ enablePushNotifications }] = useServices([TOKENS.CONFIG])
25
+ const [notificationState, setNotificationState] = useState<boolean>(store.preferences.usePushNotifications)
26
+ const [notificationStatus, setNotificationStatus] = useState<'denied' | 'granted' | 'unknown'>('unknown')
27
+
28
+ if (!enablePushNotifications) {
29
+ throw new Error('Push notification configuration not found')
30
+ }
31
+
32
+ const styles = StyleSheet.create({
33
+ screenContainer: {
34
+ flex: 1,
35
+ padding: 30,
36
+ },
37
+ toggleContainer: {
38
+ marginTop: 25,
39
+ display: 'flex',
40
+ flexDirection: 'row',
41
+ justifyContent: 'space-between',
42
+ },
43
+ controlsContainer: {
44
+ marginTop: 'auto',
45
+ },
46
+ })
47
+
48
+ useEffect(() => {
49
+ const updateNotificationState = async () => {
50
+ const status = await enablePushNotifications.status()
51
+ setNotificationStatus(status)
52
+ }
53
+
54
+ updateNotificationState()
55
+ const subscription = AppState.addEventListener('change', updateNotificationState)
56
+
57
+ return () => subscription.remove()
58
+ }, [enablePushNotifications])
59
+
60
+ const hasNotificationsDisabled = notificationStatus === 'denied' && store.onboarding.didConsiderPushNotifications
61
+
62
+ const toggleSwitch = async () => {
63
+ if (!notificationState) {
64
+ const res = await enablePushNotifications.setup()
65
+ if (res === 'denied') {
66
+ return
67
+ }
68
+ }
69
+
70
+ dispatch({ type: DispatchAction.USE_PUSH_NOTIFICATIONS, payload: [!notificationState] })
71
+
72
+ enablePushNotifications.toggle(!notificationState, agent)
73
+
74
+ setNotificationState(!notificationState)
75
+ }
76
+
77
+ return (
78
+ <SafeAreaView style={{ flex: 1 }} edges={['left', 'right', 'bottom']}>
79
+ <ScrollView contentContainerStyle={{ flexGrow: 1 }}>
80
+ <View style={styles.screenContainer}>
81
+ {hasNotificationsDisabled ? (
82
+ <>
83
+ <PushNotificationsDisabledContent />
84
+ <View style={styles.controlsContainer}>
85
+ <Button
86
+ buttonType={ButtonType.Primary}
87
+ title={t('PushNotifications.OpenSettings')}
88
+ accessibilityLabel={t('PushNotifications.OpenSettings')}
89
+ testID={testIdWithKey('PushNotificationSettings')}
90
+ onPress={() => Linking.openSettings()}
91
+ />
92
+ </View>
93
+ </>
94
+ ) : (
95
+ <>
96
+ <PushNotificationsContent />
97
+ <View style={styles.toggleContainer}>
98
+ <ThemedText>{t('PushNotifications.ReceiveNotifications')}</ThemedText>
99
+ <Switch
100
+ trackColor={{ false: ColorPallet.grayscale.lightGrey, true: ColorPallet.brand.primaryDisabled }}
101
+ thumbColor={notificationState ? ColorPallet.brand.primary : ColorPallet.grayscale.mediumGrey}
102
+ ios_backgroundColor={ColorPallet.grayscale.lightGrey}
103
+ onValueChange={toggleSwitch}
104
+ accessibilityLabel={t('PushNotifications.ReceiveNotifications')}
105
+ accessibilityRole="switch"
106
+ testID={testIdWithKey('PushNotificationSwitch')}
107
+ value={notificationState}
108
+ />
109
+ </View>
110
+ </>
111
+ )}
112
+ </View>
113
+ </ScrollView>
114
+ </SafeAreaView>
115
+ )
116
+ }
117
+
118
+ export default TogglePushNotifications
package/src/theme.ts CHANGED
@@ -1090,6 +1090,7 @@ const InputInlineMessage: IInlineInputMessage = {
1090
1090
  }
1091
1091
 
1092
1092
  export interface ITheme {
1093
+ themeName: string
1093
1094
  Spacing: ISpacing
1094
1095
  ColorPallet: IColorPallet
1095
1096
  TextTheme: ITextTheme
@@ -1116,7 +1117,8 @@ export interface ITheme {
1116
1117
  Assets: IAssets
1117
1118
  }
1118
1119
 
1119
- export const theme: ITheme = {
1120
+ export const bifoldTheme: ITheme = {
1121
+ themeName: 'bifold',
1120
1122
  Spacing,
1121
1123
  ColorPallet,
1122
1124
  TextTheme,
@@ -1142,3 +1144,5 @@ export const theme: ITheme = {
1142
1144
  maxFontSizeMultiplier,
1143
1145
  Assets,
1144
1146
  }
1147
+
1148
+ export const themes: ITheme[] = [bifoldTheme]
@@ -11,6 +11,7 @@ export enum Screens {
11
11
  Terms = 'Terms',
12
12
  Preface = 'Preface',
13
13
  CreatePIN = 'Create a PIN',
14
+ ChangePIN = 'Change PIN',
14
15
  EnterPIN = 'Enter PIN',
15
16
  Home = 'Home',
16
17
  Scan = 'Scan',
@@ -36,8 +37,10 @@ export enum Screens {
36
37
  MobileVerifierLoading = 'Mobile Verifier Loading',
37
38
  OnTheWay = 'On The Way',
38
39
  Declined = 'Declined',
39
- UseBiometry = 'Use Biometry',
40
- UsePushNotifications = 'Use Push Notifications',
40
+ Biometry = 'Biometry',
41
+ ToggleBiometry = 'Toggle Biometry',
42
+ PushNotifications = 'Push Notifications',
43
+ TogglePushNotifications = 'Toggle Push Notifications',
41
44
  Developer = 'Developer',
42
45
  CustomNotification = 'Custom Notification',
43
46
  ProofChangeCredential = 'Choose a credential',
@@ -95,20 +98,16 @@ export type TabStackParams = {
95
98
  [TabStacks.CredentialStack]: NavigatorScreenParams<CredentialStackParams>
96
99
  }
97
100
 
98
- export type AuthenticateStackParams = {
101
+ export type OnboardingStackParams = {
99
102
  [Screens.Preface]: undefined
100
103
  [Screens.Onboarding]: undefined
101
104
  [Screens.Terms]: undefined
102
105
  [Screens.AttemptLockout]: undefined
103
106
  [Screens.CreatePIN]: { setAuthenticated: (status: boolean) => void } | undefined
104
107
  [Screens.EnterPIN]: { setAuthenticated: (status: boolean) => void } | undefined
105
- [Screens.UseBiometry]: undefined
108
+ [Screens.Biometry]: undefined
106
109
  [Screens.NameWallet]: undefined
107
- [Screens.UsePushNotifications]: undefined
108
- }
109
-
110
- export type OnboardingStackParams = {
111
- [Screens.Onboarding]: undefined
110
+ [Screens.PushNotifications]: undefined
112
111
  [Screens.Developer]: undefined
113
112
  }
114
113
 
@@ -160,12 +159,12 @@ export type SettingStackParams = {
160
159
  [Screens.Language]: undefined
161
160
  [Screens.DataRetention]: undefined
162
161
  [Screens.Tours]: undefined
163
- [Screens.UseBiometry]: undefined
164
- [Screens.CreatePIN]: undefined
162
+ [Screens.ToggleBiometry]: undefined
163
+ [Screens.ChangePIN]: undefined
165
164
  [Screens.Terms]: undefined
166
165
  [Screens.Onboarding]: undefined
167
166
  [Screens.Developer]: undefined
168
- [Screens.UsePushNotifications]: { isMenu?: boolean }
167
+ [Screens.TogglePushNotifications]: undefined
169
168
  [Screens.HistorySettings]: undefined
170
169
  [Screens.AutoLock]: undefined
171
170
  }
@@ -32,6 +32,7 @@ export interface Preferences {
32
32
  enableShareableLink: boolean
33
33
  alternateContactNames: Record<string, string>
34
34
  autoLockTime: number
35
+ theme?: string
35
36
  }
36
37
 
37
38
  export interface Tours {
@@ -25,7 +25,7 @@ export interface PINValidationsType {
25
25
  errorTextAddition?: Record<string, string>
26
26
  }
27
27
 
28
- export const PINCreationValidations = (PIN: string, PINRules: PINValidationRules) => {
28
+ export const createPINValidations = (PIN: string, PINRules: PINValidationRules) => {
29
29
  const PINValidations: PINValidationsType[] = []
30
30
 
31
31
  if (PINRules.no_cross_pattern) {
@@ -110,8 +110,7 @@ export function getAgentModules({ indyNetworks, mediatorInvitationUrl, txnCache
110
110
 
111
111
  interface MyAgentContextInterface {
112
112
  loading: boolean
113
- agent?: BifoldAgent
114
- setAgent: (agent?: BifoldAgent) => void
113
+ agent: BifoldAgent
115
114
  }
116
115
 
117
116
  export const useAppAgent = useAgent as () => MyAgentContextInterface
@@ -742,6 +742,8 @@ export const retrieveCredentialsForProof = async (
742
742
  ): Promise<CredentialDataForProof | undefined> => {
743
743
  // This is the only valid state to retrieve credentials for a proof
744
744
  // `getCredentialsForRequest` will fail otherwise.
745
+ // if a proof is declined, it will move out of a RequestReceived state
746
+ // and this will fail because it is running against a declined proof
745
747
  if (proof.state !== ProofState.RequestReceived) {
746
748
  return
747
749
  }
@@ -1,44 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _react = _interopRequireDefault(require("react"));
8
- var _reactI18next = require("react-i18next");
9
- var _reactNative = require("react-native");
10
- var _theme = require("../../contexts/theme");
11
- var _testable = require("../../utils/testable");
12
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
- const ActivityLogLink = () => {
14
- const {
15
- ColorPallet
16
- } = (0, _theme.useTheme)();
17
- const {
18
- t
19
- } = (0, _reactI18next.useTranslation)();
20
- const styles = _reactNative.StyleSheet.create({
21
- textContainer: {
22
- flexDirection: 'row'
23
- },
24
- text: {
25
- color: ColorPallet.notification.infoText
26
- },
27
- link: {
28
- color: ColorPallet.notification.infoText,
29
- textDecorationLine: 'underline'
30
- }
31
- });
32
- return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
33
- style: styles.textContainer,
34
- testID: (0, _testable.testIdWithKey)('ActivityLogLink')
35
- }, /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
36
- style: styles.text
37
- }, t('ActivityLog.Your')), /*#__PURE__*/_react.default.createElement(_reactNative.Text, null, " "), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
38
- style: styles.link
39
- }, t('ActivityLog.Activity')), /*#__PURE__*/_react.default.createElement(_reactNative.Text, null, " "), /*#__PURE__*/_react.default.createElement(_reactNative.Text, {
40
- style: styles.text
41
- }, t('ActivityLog.Updated')));
42
- };
43
- var _default = exports.default = ActivityLogLink;
44
- //# sourceMappingURL=ActivityLogLink.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactI18next","_reactNative","_theme","_testable","e","__esModule","default","ActivityLogLink","ColorPallet","useTheme","t","useTranslation","styles","StyleSheet","create","textContainer","flexDirection","text","color","notification","infoText","link","textDecorationLine","createElement","View","style","testID","testIdWithKey","Text","_default","exports"],"sourceRoot":"../../../../src","sources":["components/misc/ActivityLogLink.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,aAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AAEA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,SAAA,GAAAJ,OAAA;AAAoD,SAAAD,uBAAAM,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEpD,MAAMG,eAAyB,GAAGA,CAAA,KAAM;EACtC,MAAM;IAAEC;EAAY,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC;EAClC,MAAM;IAAEC;EAAE,CAAC,GAAG,IAAAC,4BAAc,EAAC,CAAC;EAC9B,MAAMC,MAAM,GAAGC,uBAAU,CAACC,MAAM,CAAC;IAC/BC,aAAa,EAAE;MACbC,aAAa,EAAE;IACjB,CAAC;IACDC,IAAI,EAAE;MACJC,KAAK,EAAEV,WAAW,CAACW,YAAY,CAACC;IAClC,CAAC;IACDC,IAAI,EAAE;MACJH,KAAK,EAAEV,WAAW,CAACW,YAAY,CAACC,QAAQ;MACxCE,kBAAkB,EAAE;IACtB;EACF,CAAC,CAAC;EACF,oBACEzB,MAAA,CAAAS,OAAA,CAAAiB,aAAA,CAACtB,YAAA,CAAAuB,IAAI;IAACC,KAAK,EAAEb,MAAM,CAACG,aAAc;IAACW,MAAM,EAAE,IAAAC,uBAAa,EAAC,iBAAiB;EAAE,gBAC1E9B,MAAA,CAAAS,OAAA,CAAAiB,aAAA,CAACtB,YAAA,CAAA2B,IAAI;IAACH,KAAK,EAAEb,MAAM,CAACK;EAAK,GAAEP,CAAC,CAAC,kBAAkB,CAAQ,CAAC,eACxDb,MAAA,CAAAS,OAAA,CAAAiB,aAAA,CAACtB,YAAA,CAAA2B,IAAI,QAAC,GAAO,CAAC,eACd/B,MAAA,CAAAS,OAAA,CAAAiB,aAAA,CAACtB,YAAA,CAAA2B,IAAI;IAACH,KAAK,EAAEb,MAAM,CAACS;EAAK,GAAEX,CAAC,CAAC,sBAAsB,CAAQ,CAAC,eAC5Db,MAAA,CAAAS,OAAA,CAAAiB,aAAA,CAACtB,YAAA,CAAA2B,IAAI,QAAC,GAAO,CAAC,eACd/B,MAAA,CAAAS,OAAA,CAAAiB,aAAA,CAACtB,YAAA,CAAA2B,IAAI;IAACH,KAAK,EAAEb,MAAM,CAACK;EAAK,GAAEP,CAAC,CAAC,qBAAqB,CAAQ,CACtD,CAAC;AAEX,CAAC;AAAA,IAAAmB,QAAA,GAAAC,OAAA,CAAAxB,OAAA,GAEcC,eAAe","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["_reactI18next","require","_theme","_reactNative","_ThemedText","PINCreateHeader","updatePin","TextTheme","useTheme","t","useTranslation","React","createElement","View","ThemedText","style","marginBottom","fontWeight","bold","_default","exports","default"],"sourceRoot":"../../../../src","sources":["components/misc/PINCreateHeader.tsx"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,YAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AAMA,MAAMI,eAAe,GAAGA,CAAC;EAAEC;AAAgC,CAAC,KAAK;EAC/D,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC;EAChC,MAAM;IAAEC;EAAE,CAAC,GAAG,IAAAC,4BAAc,EAAC,CAAC;EAC9B,oBACEC,KAAA,CAAAC,aAAA,CAACT,YAAA,CAAAU,IAAI,qBACHF,KAAA,CAAAC,aAAA,CAACR,WAAA,CAAAU,UAAU;IAACC,KAAK,EAAE;MAAEC,YAAY,EAAE;IAAG;EAAE,gBACtCL,KAAA,CAAAC,aAAA,CAACR,WAAA,CAAAU,UAAU;IAACC,KAAK,EAAE;MAAEE,UAAU,EAAEV,SAAS,CAACW,IAAI,CAACD;IAAW;EAAE,GAC1DX,SAAS,GAAGG,CAAC,CAAC,6BAA6B,CAAC,GAAGA,CAAC,CAAC,uBAAuB,CAC/D,CAAC,EAAC,GAAG,EAChBA,CAAC,CAAC,yBAAyB,CAClB,CACR,CAAC;AAEX,CAAC;AAAA,IAAAU,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEchB,eAAe","ignoreList":[]}
@@ -1,121 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _native = require("@react-navigation/native");
8
- var _react = _interopRequireWildcard(require("react"));
9
- var _reactI18next = require("react-i18next");
10
- var _reactNative = require("react-native");
11
- var _reactNativeSafeAreaContext = require("react-native-safe-area-context");
12
- var _MaterialIcons = _interopRequireDefault(require("react-native-vector-icons/MaterialIcons"));
13
- var _constants = require("../../constants");
14
- var _theme = require("../../contexts/theme");
15
- var _navigators = require("../../types/navigators");
16
- var _testable = require("../../utils/testable");
17
- var _Button = _interopRequireWildcard(require("../buttons/Button"));
18
- var _ThemedText = require("../texts/ThemedText");
19
- var _SafeAreaModal = _interopRequireDefault(require("./SafeAreaModal"));
20
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
21
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
22
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
23
- const NotificationModal = ({
24
- title,
25
- doneTitle,
26
- doneType = _Button.ButtonType.Primary,
27
- doneAccessibilityLabel,
28
- onDone,
29
- onHome,
30
- doneVisible = true,
31
- homeVisible = true,
32
- testID,
33
- visible,
34
- children
35
- }) => {
36
- const {
37
- t
38
- } = (0, _reactI18next.useTranslation)();
39
- const navigation = (0, _native.useNavigation)();
40
- const [modalVisible, setModalVisible] = (0, _react.useState)(true);
41
- const {
42
- ColorPallet,
43
- TextTheme
44
- } = (0, _theme.useTheme)();
45
- const styles = _reactNative.StyleSheet.create({
46
- container: {
47
- flex: 1,
48
- backgroundColor: ColorPallet.brand.primaryBackground
49
- },
50
- childContainer: {
51
- flexGrow: 1,
52
- justifyContent: 'center',
53
- alignItems: 'center',
54
- padding: 25
55
- },
56
- buttonContainer: {
57
- marginBottom: 35,
58
- marginHorizontal: 20
59
- },
60
- iconContainer: {
61
- width: '100%',
62
- flexDirection: 'row',
63
- justifyContent: 'flex-end'
64
- },
65
- iconButton: {
66
- padding: 20,
67
- paddingVertical: 28
68
- }
69
- });
70
- (0, _react.useEffect)(() => {
71
- if (visible !== undefined) {
72
- setModalVisible(visible);
73
- }
74
- }, [visible]);
75
- const close = () => {
76
- setModalVisible(false);
77
- };
78
- const closeHome = () => {
79
- close();
80
- navigation.navigate(_navigators.Screens.Home);
81
- };
82
- return /*#__PURE__*/_react.default.createElement(_SafeAreaModal.default, {
83
- testID: testID,
84
- visible: modalVisible,
85
- transparent: true
86
- }, /*#__PURE__*/_react.default.createElement(_reactNativeSafeAreaContext.SafeAreaView, {
87
- style: styles.container
88
- }, homeVisible ? /*#__PURE__*/_react.default.createElement(_reactNative.View, {
89
- style: styles.iconContainer
90
- }, /*#__PURE__*/_react.default.createElement(_reactNative.TouchableOpacity, {
91
- accessible: true,
92
- accessibilityLabel: t('Global.Home'),
93
- accessibilityRole: 'button',
94
- testID: (0, _testable.testIdWithKey)('Home'),
95
- style: styles.iconButton,
96
- onPress: onHome || closeHome,
97
- hitSlop: _constants.hitSlop
98
- }, /*#__PURE__*/_react.default.createElement(_MaterialIcons.default, {
99
- name: "home",
100
- size: 24,
101
- color: ColorPallet.notification.infoText
102
- }))) : null, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
103
- style: styles.childContainer
104
- }, /*#__PURE__*/_react.default.createElement(_ThemedText.ThemedText, {
105
- variant: "headingThree",
106
- style: {
107
- fontWeight: TextTheme.normal.fontWeight,
108
- textAlign: 'center'
109
- }
110
- }, title), children), doneVisible ? /*#__PURE__*/_react.default.createElement(_reactNative.View, {
111
- style: styles.buttonContainer
112
- }, /*#__PURE__*/_react.default.createElement(_Button.default, {
113
- title: doneTitle || t('Global.Done'),
114
- accessibilityLabel: doneAccessibilityLabel || t('Global.Done'),
115
- testID: (0, _testable.testIdWithKey)('Done'),
116
- buttonType: doneType,
117
- onPress: onDone || close
118
- })) : null));
119
- };
120
- var _default = exports.default = NotificationModal;
121
- //# sourceMappingURL=NotificationModal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_native","require","_react","_interopRequireWildcard","_reactI18next","_reactNative","_reactNativeSafeAreaContext","_MaterialIcons","_interopRequireDefault","_constants","_theme","_navigators","_testable","_Button","_ThemedText","_SafeAreaModal","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","NotificationModal","title","doneTitle","doneType","ButtonType","Primary","doneAccessibilityLabel","onDone","onHome","doneVisible","homeVisible","testID","visible","children","useTranslation","navigation","useNavigation","modalVisible","setModalVisible","useState","ColorPallet","TextTheme","useTheme","styles","StyleSheet","create","container","flex","backgroundColor","brand","primaryBackground","childContainer","flexGrow","justifyContent","alignItems","padding","buttonContainer","marginBottom","marginHorizontal","iconContainer","width","flexDirection","iconButton","paddingVertical","useEffect","undefined","close","closeHome","navigate","Screens","Home","createElement","transparent","SafeAreaView","style","View","TouchableOpacity","accessible","accessibilityLabel","accessibilityRole","testIdWithKey","onPress","hitSlop","name","size","color","notification","infoText","ThemedText","variant","fontWeight","normal","textAlign","buttonType","_default","exports"],"sourceRoot":"../../../../src","sources":["components/modals/NotificationModal.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,57 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _react = _interopRequireDefault(require("react"));
8
- var _reactNative = require("react-native");
9
- var _theme = require("../../contexts/theme");
10
- var _Text = _interopRequireDefault(require("./Text"));
11
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
- const Label = ({
13
- title,
14
- subtitle,
15
- label
16
- }) => {
17
- const {
18
- TextTheme
19
- } = (0, _theme.useTheme)();
20
- const styles = _reactNative.StyleSheet.create({
21
- container: {
22
- flexDirection: 'row',
23
- justifyContent: 'space-between',
24
- alignItems: 'center',
25
- width: '90%',
26
- marginTop: 10
27
- },
28
- titleContainer: {
29
- flexDirection: 'row',
30
- alignItems: 'center'
31
- },
32
- title: {
33
- ...TextTheme.labelTitle,
34
- marginRight: 7
35
- },
36
- subtitle: {
37
- ...TextTheme.labelSubtitle
38
- },
39
- label: {
40
- marginLeft: 10,
41
- ...TextTheme.labelText
42
- }
43
- });
44
- return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
45
- style: styles.container
46
- }, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
47
- style: styles.titleContainer
48
- }, /*#__PURE__*/_react.default.createElement(_Text.default, {
49
- style: styles.title
50
- }, title, ":"), /*#__PURE__*/_react.default.createElement(_Text.default, {
51
- style: styles.subtitle
52
- }, subtitle)), /*#__PURE__*/_react.default.createElement(_Text.default, {
53
- style: styles.label
54
- }, label));
55
- };
56
- var _default = exports.default = Label;
57
- //# sourceMappingURL=Label.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactNative","_theme","_Text","e","__esModule","default","Label","title","subtitle","label","TextTheme","useTheme","styles","StyleSheet","create","container","flexDirection","justifyContent","alignItems","width","marginTop","titleContainer","labelTitle","marginRight","labelSubtitle","marginLeft","labelText","createElement","View","style","_default","exports"],"sourceRoot":"../../../../src","sources":["components/texts/Label.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,IAAAE,MAAA,GAAAF,OAAA;AAEA,IAAAG,KAAA,GAAAJ,sBAAA,CAAAC,OAAA;AAAyB,SAAAD,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAQzB,MAAMG,KAAsB,GAAGA,CAAC;EAAEC,KAAK;EAAEC,QAAQ;EAAEC;AAAM,CAAC,KAAK;EAC7D,MAAM;IAAEC;EAAU,CAAC,GAAG,IAAAC,eAAQ,EAAC,CAAC;EAChC,MAAMC,MAAM,GAAGC,uBAAU,CAACC,MAAM,CAAC;IAC/BC,SAAS,EAAE;MACTC,aAAa,EAAE,KAAK;MACpBC,cAAc,EAAE,eAAe;MAC/BC,UAAU,EAAE,QAAQ;MACpBC,KAAK,EAAE,KAAK;MACZC,SAAS,EAAE;IACb,CAAC;IACDC,cAAc,EAAE;MACdL,aAAa,EAAE,KAAK;MACpBE,UAAU,EAAE;IACd,CAAC;IACDX,KAAK,EAAE;MACL,GAAGG,SAAS,CAACY,UAAU;MACvBC,WAAW,EAAE;IACf,CAAC;IACDf,QAAQ,EAAE;MACR,GAAGE,SAAS,CAACc;IACf,CAAC;IACDf,KAAK,EAAE;MACLgB,UAAU,EAAE,EAAE;MACd,GAAGf,SAAS,CAACgB;IACf;EACF,CAAC,CAAC;EACF,oBACE7B,MAAA,CAAAQ,OAAA,CAAAsB,aAAA,CAAC3B,YAAA,CAAA4B,IAAI;IAACC,KAAK,EAAEjB,MAAM,CAACG;EAAU,gBAC5BlB,MAAA,CAAAQ,OAAA,CAAAsB,aAAA,CAAC3B,YAAA,CAAA4B,IAAI;IAACC,KAAK,EAAEjB,MAAM,CAACS;EAAe,gBACjCxB,MAAA,CAAAQ,OAAA,CAAAsB,aAAA,CAACzB,KAAA,CAAAG,OAAI;IAACwB,KAAK,EAAEjB,MAAM,CAACL;EAAM,GAAEA,KAAK,EAAC,GAAO,CAAC,eAC1CV,MAAA,CAAAQ,OAAA,CAAAsB,aAAA,CAACzB,KAAA,CAAAG,OAAI;IAACwB,KAAK,EAAEjB,MAAM,CAACJ;EAAS,GAAEA,QAAe,CAC1C,CAAC,eACPX,MAAA,CAAAQ,OAAA,CAAAsB,aAAA,CAACzB,KAAA,CAAAG,OAAI;IAACwB,KAAK,EAAEjB,MAAM,CAACH;EAAM,GAAEA,KAAY,CACpC,CAAC;AAEX,CAAC;AAAA,IAAAqB,QAAA,GAAAC,OAAA,CAAA1B,OAAA,GAEcC,KAAK","ignoreList":[]}