@aws-amplify/ui-react-native 1.2.18 → 1.2.19

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 (45) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/Authenticator/Authenticator.d.ts +6 -12
  3. package/dist/Authenticator/Defaults/ConfirmResetPassword/ConfirmResetPassword.js +15 -4
  4. package/dist/Authenticator/Defaults/ConfirmSignIn/ConfirmSignIn.js +13 -3
  5. package/dist/Authenticator/Defaults/ConfirmSignUp/ConfirmSignUp.js +13 -3
  6. package/dist/Authenticator/Defaults/ConfirmVerifyUser/ConfirmVerifyUser.js +13 -3
  7. package/dist/Authenticator/Defaults/ForceNewPassword/ForceNewPassword.js +15 -4
  8. package/dist/Authenticator/Defaults/ResetPassword/ResetPassword.js +13 -3
  9. package/dist/Authenticator/Defaults/SetupTOTP/SetupTOTP.js +13 -3
  10. package/dist/Authenticator/Defaults/SignIn/SignIn.js +3 -2
  11. package/dist/Authenticator/Defaults/SignUp/SignUp.js +9 -3
  12. package/dist/Authenticator/Defaults/VerifyUser/VerifyUser.js +3 -3
  13. package/dist/Authenticator/common/DefaultContent/DefaultContent.js +2 -2
  14. package/dist/primitives/Radio/styles.js +2 -1
  15. package/dist/version.d.ts +1 -1
  16. package/dist/version.js +1 -1
  17. package/package.json +4 -4
  18. package/src/Authenticator/Defaults/ConfirmResetPassword/ConfirmResetPassword.tsx +19 -3
  19. package/src/Authenticator/Defaults/ConfirmResetPassword/__tests__/ConfirmResetPassword.spec.tsx +1 -0
  20. package/src/Authenticator/Defaults/ConfirmResetPassword/__tests__/__snapshots__/ConfirmResetPassword.spec.tsx.snap +13 -0
  21. package/src/Authenticator/Defaults/ConfirmSignIn/ConfirmSignIn.tsx +17 -3
  22. package/src/Authenticator/Defaults/ConfirmSignIn/__tests__/__snapshots__/ConfirmSignIn.spec.tsx.snap +13 -0
  23. package/src/Authenticator/Defaults/ConfirmSignUp/ConfirmSignUp.tsx +17 -3
  24. package/src/Authenticator/Defaults/ConfirmSignUp/__tests__/__snapshots__/ConfirmSignUp.spec.tsx.snap +19 -0
  25. package/src/Authenticator/Defaults/ConfirmVerifyUser/ConfirmVerifyUser.tsx +17 -3
  26. package/src/Authenticator/Defaults/ConfirmVerifyUser/__tests__/__snapshots__/ConfirmVerifyUser.spec.tsx.snap +19 -0
  27. package/src/Authenticator/Defaults/ForceNewPassword/ForceNewPassword.tsx +19 -3
  28. package/src/Authenticator/Defaults/ForceNewPassword/__tests__/ForceNewPassword.spec.tsx +1 -0
  29. package/src/Authenticator/Defaults/ForceNewPassword/__tests__/__snapshots__/ForceNewPassword.spec.tsx.snap +19 -0
  30. package/src/Authenticator/Defaults/ResetPassword/ResetPassword.tsx +17 -3
  31. package/src/Authenticator/Defaults/ResetPassword/__tests__/__snapshots__/ResetPassword.spec.tsx.snap +13 -0
  32. package/src/Authenticator/Defaults/SetupTOTP/SetupTOTP.tsx +17 -3
  33. package/src/Authenticator/Defaults/SetupTOTP/__tests__/__snapshots__/SetupTOTP.spec.tsx.snap +13 -0
  34. package/src/Authenticator/Defaults/SignIn/SignIn.tsx +7 -2
  35. package/src/Authenticator/Defaults/SignIn/__tests__/__snapshots__/SignIn.spec.tsx.snap +19 -0
  36. package/src/Authenticator/Defaults/SignUp/SignUp.tsx +13 -2
  37. package/src/Authenticator/Defaults/SignUp/__tests__/SignUp.spec.tsx +1 -0
  38. package/src/Authenticator/Defaults/SignUp/__tests__/__snapshots__/SignUp.spec.tsx.snap +31 -0
  39. package/src/Authenticator/Defaults/VerifyUser/VerifyUser.tsx +7 -3
  40. package/src/Authenticator/Defaults/VerifyUser/__tests__/__snapshots__/VerifyUser.spec.tsx.snap +19 -0
  41. package/src/Authenticator/common/DefaultContent/DefaultContent.tsx +2 -0
  42. package/src/primitives/Radio/__tests__/__snapshots__/Radio.spec.tsx.snap +9 -0
  43. package/src/primitives/Radio/styles.ts +2 -1
  44. package/src/primitives/RadioGroup/__tests__/__snapshots__/RadioGroup.spec.tsx.snap +24 -0
  45. package/src/version.ts +1 -1
@@ -31,7 +31,11 @@ const ConfirmSignUp: DefaultConfirmSignUpComponent = ({
31
31
  resendCode,
32
32
  ...rest
33
33
  }) => {
34
- const { fields: fieldsWithHandlers, handleFormSubmit } = useFieldValues({
34
+ const {
35
+ disableFormSubmit: disabled,
36
+ fields: fieldsWithHandlers,
37
+ handleFormSubmit,
38
+ } = useFieldValues({
35
39
  componentName: COMPONENT_NAME,
36
40
  fields,
37
41
  handleBlur,
@@ -46,10 +50,20 @@ const ConfirmSignUp: DefaultConfirmSignUpComponent = ({
46
50
 
47
51
  const buttons = useMemo(
48
52
  () => ({
49
- primary: { children: primaryButtonText, onPress: handleFormSubmit },
53
+ primary: {
54
+ children: primaryButtonText,
55
+ disabled,
56
+ onPress: handleFormSubmit,
57
+ },
50
58
  secondary: { children: secondaryButtonText, onPress: resendCode },
51
59
  }),
52
- [handleFormSubmit, primaryButtonText, resendCode, secondaryButtonText]
60
+ [
61
+ disabled,
62
+ handleFormSubmit,
63
+ primaryButtonText,
64
+ resendCode,
65
+ secondaryButtonText,
66
+ ]
53
67
  );
54
68
 
55
69
  return (
@@ -53,6 +53,11 @@ Array [
53
53
  />,
54
54
  <View
55
55
  accessibilityRole="button"
56
+ accessibilityState={
57
+ Object {
58
+ "disabled": false,
59
+ }
60
+ }
56
61
  accessible={true}
57
62
  collapsable={false}
58
63
  focusable={true}
@@ -82,6 +87,7 @@ Array [
82
87
  },
83
88
  ]
84
89
  }
90
+ testID="amplify__button"
85
91
  >
86
92
  <Text
87
93
  style={
@@ -204,6 +210,11 @@ Array [
204
210
  />,
205
211
  <View
206
212
  accessibilityRole="button"
213
+ accessibilityState={
214
+ Object {
215
+ "disabled": false,
216
+ }
217
+ }
207
218
  accessible={true}
208
219
  collapsable={false}
209
220
  focusable={true}
@@ -233,6 +244,7 @@ Array [
233
244
  },
234
245
  ]
235
246
  }
247
+ testID="amplify__button"
236
248
  >
237
249
  <Text
238
250
  style={
@@ -369,6 +381,7 @@ Array [
369
381
  },
370
382
  ]
371
383
  }
384
+ testID="amplify__error-message"
372
385
  >
373
386
  <Image
374
387
  accessibilityRole="image"
@@ -413,6 +426,11 @@ Array [
413
426
  </View>,
414
427
  <View
415
428
  accessibilityRole="button"
429
+ accessibilityState={
430
+ Object {
431
+ "disabled": false,
432
+ }
433
+ }
416
434
  accessible={true}
417
435
  collapsable={false}
418
436
  focusable={true}
@@ -442,6 +460,7 @@ Array [
442
460
  },
443
461
  ]
444
462
  }
463
+ testID="amplify__button"
445
464
  >
446
465
  <Text
447
466
  style={
@@ -29,7 +29,11 @@ const ConfirmVerifyUser: DefaultConfirmVerifyUserComponent = ({
29
29
  skipVerification,
30
30
  ...rest
31
31
  }) => {
32
- const { fields: fieldsWithHandlers, handleFormSubmit } = useFieldValues({
32
+ const {
33
+ disableFormSubmit: disabled,
34
+ fields: fieldsWithHandlers,
35
+ handleFormSubmit,
36
+ } = useFieldValues({
33
37
  componentName: COMPONENT_NAME,
34
38
  fields,
35
39
  handleBlur,
@@ -43,10 +47,20 @@ const ConfirmVerifyUser: DefaultConfirmVerifyUserComponent = ({
43
47
 
44
48
  const buttons = useMemo(
45
49
  () => ({
46
- primary: { children: primaryButtonText, onPress: handleFormSubmit },
50
+ primary: {
51
+ children: primaryButtonText,
52
+ disabled,
53
+ onPress: handleFormSubmit,
54
+ },
47
55
  links: [{ children: secondaryButtonText, onPress: skipVerification }],
48
56
  }),
49
- [handleFormSubmit, primaryButtonText, skipVerification, secondaryButtonText]
57
+ [
58
+ disabled,
59
+ handleFormSubmit,
60
+ primaryButtonText,
61
+ skipVerification,
62
+ secondaryButtonText,
63
+ ]
50
64
  );
51
65
 
52
66
  return (
@@ -32,6 +32,11 @@ Array [
32
32
  />,
33
33
  <View
34
34
  accessibilityRole="button"
35
+ accessibilityState={
36
+ Object {
37
+ "disabled": false,
38
+ }
39
+ }
35
40
  accessible={true}
36
41
  collapsable={false}
37
42
  focusable={true}
@@ -61,6 +66,7 @@ Array [
61
66
  },
62
67
  ]
63
68
  }
69
+ testID="amplify__button"
64
70
  >
65
71
  <Text
66
72
  style={
@@ -171,6 +177,11 @@ Array [
171
177
  />,
172
178
  <View
173
179
  accessibilityRole="button"
180
+ accessibilityState={
181
+ Object {
182
+ "disabled": false,
183
+ }
184
+ }
174
185
  accessible={true}
175
186
  collapsable={false}
176
187
  focusable={true}
@@ -200,6 +211,7 @@ Array [
200
211
  },
201
212
  ]
202
213
  }
214
+ testID="amplify__button"
203
215
  >
204
216
  <Text
205
217
  style={
@@ -324,6 +336,7 @@ Array [
324
336
  },
325
337
  ]
326
338
  }
339
+ testID="amplify__error-message"
327
340
  >
328
341
  <Image
329
342
  accessibilityRole="image"
@@ -368,6 +381,11 @@ Array [
368
381
  </View>,
369
382
  <View
370
383
  accessibilityRole="button"
384
+ accessibilityState={
385
+ Object {
386
+ "disabled": false,
387
+ }
388
+ }
371
389
  accessible={true}
372
390
  collapsable={false}
373
391
  focusable={true}
@@ -397,6 +415,7 @@ Array [
397
415
  },
398
416
  ]
399
417
  }
418
+ testID="amplify__button"
400
419
  >
401
420
  <Text
402
421
  style={
@@ -21,11 +21,16 @@ const ForceNewPassword: DefaultForceNewPasswordComponent = ({
21
21
  handleBlur,
22
22
  handleChange,
23
23
  handleSubmit,
24
+ hasValidationErrors,
24
25
  isPending,
25
26
  toSignIn,
26
27
  ...rest
27
28
  }) => {
28
- const { fields: fieldsWithHandlers, handleFormSubmit } = useFieldValues({
29
+ const {
30
+ disableFormSubmit,
31
+ fields: fieldsWithHandlers,
32
+ handleFormSubmit,
33
+ } = useFieldValues({
29
34
  componentName: COMPONENT_NAME,
30
35
  fields,
31
36
  handleBlur,
@@ -33,6 +38,7 @@ const ForceNewPassword: DefaultForceNewPasswordComponent = ({
33
38
  handleSubmit,
34
39
  });
35
40
 
41
+ const disabled = hasValidationErrors || disableFormSubmit;
36
42
  const headerText = getChangePasswordText();
37
43
  const primaryButtonText = isPending
38
44
  ? getChangingText()
@@ -41,10 +47,20 @@ const ForceNewPassword: DefaultForceNewPasswordComponent = ({
41
47
 
42
48
  const buttons = useMemo(
43
49
  () => ({
44
- primary: { children: primaryButtonText, onPress: handleFormSubmit },
50
+ primary: {
51
+ children: primaryButtonText,
52
+ disabled,
53
+ onPress: handleFormSubmit,
54
+ },
45
55
  links: [{ children: secondaryButtonText, onPress: toSignIn }],
46
56
  }),
47
- [handleFormSubmit, primaryButtonText, secondaryButtonText, toSignIn]
57
+ [
58
+ disabled,
59
+ handleFormSubmit,
60
+ primaryButtonText,
61
+ secondaryButtonText,
62
+ toSignIn,
63
+ ]
48
64
  );
49
65
 
50
66
  return (
@@ -13,6 +13,7 @@ const props = {
13
13
  handleBlur: jest.fn(),
14
14
  handleChange: jest.fn(),
15
15
  handleSubmit: jest.fn(),
16
+ hasValidationErrors: false,
16
17
  Header: ForceNewPassword.Header,
17
18
  isPending: false,
18
19
  toSignIn: jest.fn(),
@@ -168,6 +168,7 @@ Array [
168
168
  },
169
169
  ]
170
170
  }
171
+ testID="amplify__error-message"
171
172
  >
172
173
  <Image
173
174
  accessibilityRole="image"
@@ -212,6 +213,11 @@ Array [
212
213
  </View>,
213
214
  <View
214
215
  accessibilityRole="button"
216
+ accessibilityState={
217
+ Object {
218
+ "disabled": false,
219
+ }
220
+ }
215
221
  accessible={true}
216
222
  collapsable={false}
217
223
  focusable={true}
@@ -241,6 +247,7 @@ Array [
241
247
  },
242
248
  ]
243
249
  }
250
+ testID="amplify__button"
244
251
  >
245
252
  <Text
246
253
  style={
@@ -473,6 +480,11 @@ Array [
473
480
  </View>,
474
481
  <View
475
482
  accessibilityRole="button"
483
+ accessibilityState={
484
+ Object {
485
+ "disabled": false,
486
+ }
487
+ }
476
488
  accessible={true}
477
489
  collapsable={false}
478
490
  focusable={true}
@@ -502,6 +514,7 @@ Array [
502
514
  },
503
515
  ]
504
516
  }
517
+ testID="amplify__button"
505
518
  >
506
519
  <Text
507
520
  style={
@@ -766,6 +779,11 @@ Array [
766
779
  </View>,
767
780
  <View
768
781
  accessibilityRole="button"
782
+ accessibilityState={
783
+ Object {
784
+ "disabled": false,
785
+ }
786
+ }
769
787
  accessible={true}
770
788
  collapsable={false}
771
789
  focusable={true}
@@ -795,6 +813,7 @@ Array [
795
813
  },
796
814
  ]
797
815
  }
816
+ testID="amplify__button"
798
817
  >
799
818
  <Text
800
819
  style={
@@ -28,7 +28,11 @@ const ResetPassword: DefaultResetPasswordComponent = ({
28
28
  toSignIn,
29
29
  ...rest
30
30
  }) => {
31
- const { fields: fieldsWithHandlers, handleFormSubmit } = useFieldValues({
31
+ const {
32
+ disableFormSubmit: disabled,
33
+ fields: fieldsWithHandlers,
34
+ handleFormSubmit,
35
+ } = useFieldValues({
32
36
  componentName: COMPONENT_NAME,
33
37
  fields,
34
38
  handleBlur,
@@ -42,10 +46,20 @@ const ResetPassword: DefaultResetPasswordComponent = ({
42
46
 
43
47
  const buttons = useMemo(
44
48
  () => ({
45
- primary: { children: primaryButtonText, onPress: handleFormSubmit },
49
+ primary: {
50
+ children: primaryButtonText,
51
+ disabled,
52
+ onPress: handleFormSubmit,
53
+ },
46
54
  links: [{ children: secondaryButtonText, onPress: toSignIn }],
47
55
  }),
48
- [handleFormSubmit, primaryButtonText, secondaryButtonText, toSignIn]
56
+ [
57
+ disabled,
58
+ handleFormSubmit,
59
+ primaryButtonText,
60
+ secondaryButtonText,
61
+ toSignIn,
62
+ ]
49
63
  );
50
64
 
51
65
  return (
@@ -127,6 +127,7 @@ Array [
127
127
  },
128
128
  ]
129
129
  }
130
+ testID="amplify__error-message"
130
131
  >
131
132
  <Image
132
133
  accessibilityRole="image"
@@ -171,6 +172,11 @@ Array [
171
172
  </View>,
172
173
  <View
173
174
  accessibilityRole="button"
175
+ accessibilityState={
176
+ Object {
177
+ "disabled": false,
178
+ }
179
+ }
174
180
  accessible={true}
175
181
  collapsable={false}
176
182
  focusable={true}
@@ -200,6 +206,7 @@ Array [
200
206
  },
201
207
  ]
202
208
  }
209
+ testID="amplify__button"
203
210
  >
204
211
  <Text
205
212
  style={
@@ -391,6 +398,11 @@ Array [
391
398
  </View>,
392
399
  <View
393
400
  accessibilityRole="button"
401
+ accessibilityState={
402
+ Object {
403
+ "disabled": false,
404
+ }
405
+ }
394
406
  accessible={true}
395
407
  collapsable={false}
396
408
  focusable={true}
@@ -420,6 +432,7 @@ Array [
420
432
  },
421
433
  ]
422
434
  }
435
+ testID="amplify__button"
423
436
  >
424
437
  <Text
425
438
  style={
@@ -35,7 +35,11 @@ const SetupTOTP: DefaultSetupTOTPComponent = ({
35
35
  totpSecretCode,
36
36
  ...rest
37
37
  }) => {
38
- const { fields: fieldsWithHandlers, handleFormSubmit } = useFieldValues({
38
+ const {
39
+ disableFormSubmit: disabled,
40
+ fields: fieldsWithHandlers,
41
+ handleFormSubmit,
42
+ } = useFieldValues({
39
43
  componentName: COMPONENT_NAME,
40
44
  fields,
41
45
  handleBlur,
@@ -60,10 +64,20 @@ const SetupTOTP: DefaultSetupTOTPComponent = ({
60
64
 
61
65
  const buttons = useMemo(
62
66
  () => ({
63
- primary: { children: primaryButtonText, onPress: handleFormSubmit },
67
+ primary: {
68
+ children: primaryButtonText,
69
+ disabled,
70
+ onPress: handleFormSubmit,
71
+ },
64
72
  links: [{ children: secondaryButtonText, onPress: toSignIn }],
65
73
  }),
66
- [handleFormSubmit, primaryButtonText, secondaryButtonText, toSignIn]
74
+ [
75
+ disabled,
76
+ handleFormSubmit,
77
+ primaryButtonText,
78
+ secondaryButtonText,
79
+ toSignIn,
80
+ ]
67
81
  );
68
82
 
69
83
  return (
@@ -172,6 +172,7 @@ Array [
172
172
  },
173
173
  ]
174
174
  }
175
+ testID="amplify__error-message"
175
176
  >
176
177
  <Image
177
178
  accessibilityRole="image"
@@ -216,6 +217,11 @@ Array [
216
217
  </View>,
217
218
  <View
218
219
  accessibilityRole="button"
220
+ accessibilityState={
221
+ Object {
222
+ "disabled": false,
223
+ }
224
+ }
219
225
  accessible={true}
220
226
  collapsable={false}
221
227
  focusable={true}
@@ -245,6 +251,7 @@ Array [
245
251
  },
246
252
  ]
247
253
  }
254
+ testID="amplify__button"
248
255
  >
249
256
  <Text
250
257
  style={
@@ -481,6 +488,11 @@ Array [
481
488
  </View>,
482
489
  <View
483
490
  accessibilityRole="button"
491
+ accessibilityState={
492
+ Object {
493
+ "disabled": false,
494
+ }
495
+ }
484
496
  accessible={true}
485
497
  collapsable={false}
486
498
  focusable={true}
@@ -510,6 +522,7 @@ Array [
510
522
  },
511
523
  ]
512
524
  }
525
+ testID="amplify__button"
513
526
  >
514
527
  <Text
515
528
  style={
@@ -30,7 +30,11 @@ const SignIn: DefaultSignInComponent = ({
30
30
  getForgotPasswordText,
31
31
  } = authenticatorTextUtil;
32
32
 
33
- const { fields: fieldsWithHandlers, handleFormSubmit } = useFieldValues({
33
+ const {
34
+ disableFormSubmit: disabled,
35
+ fields: fieldsWithHandlers,
36
+ handleFormSubmit,
37
+ } = useFieldValues({
34
38
  componentName: COMPONENT_NAME,
35
39
  fields,
36
40
  handleBlur,
@@ -49,12 +53,13 @@ const SignIn: DefaultSignInComponent = ({
49
53
  onPress: toResetPassword,
50
54
  };
51
55
  return {
52
- primary: { children: signInText, onPress: handleFormSubmit },
56
+ primary: { children: signInText, disabled, onPress: handleFormSubmit },
53
57
  links: hideSignUp
54
58
  ? [forgotPassword]
55
59
  : [forgotPassword, { children: signUpText, onPress: toSignUp }],
56
60
  };
57
61
  }, [
62
+ disabled,
58
63
  forgotPasswordText,
59
64
  handleFormSubmit,
60
65
  hideSignUp,
@@ -261,6 +261,11 @@ Array [
261
261
  </View>,
262
262
  <View
263
263
  accessibilityRole="button"
264
+ accessibilityState={
265
+ Object {
266
+ "disabled": false,
267
+ }
268
+ }
264
269
  accessible={true}
265
270
  collapsable={false}
266
271
  focusable={true}
@@ -290,6 +295,7 @@ Array [
290
295
  },
291
296
  ]
292
297
  }
298
+ testID="amplify__button"
293
299
  >
294
300
  <Text
295
301
  style={
@@ -677,6 +683,11 @@ Array [
677
683
  </View>,
678
684
  <View
679
685
  accessibilityRole="button"
686
+ accessibilityState={
687
+ Object {
688
+ "disabled": false,
689
+ }
690
+ }
680
691
  accessible={true}
681
692
  collapsable={false}
682
693
  focusable={true}
@@ -706,6 +717,7 @@ Array [
706
717
  },
707
718
  ]
708
719
  }
720
+ testID="amplify__button"
709
721
  >
710
722
  <Text
711
723
  style={
@@ -1059,6 +1071,7 @@ Array [
1059
1071
  },
1060
1072
  ]
1061
1073
  }
1074
+ testID="amplify__error-message"
1062
1075
  >
1063
1076
  <Image
1064
1077
  accessibilityRole="image"
@@ -1103,6 +1116,11 @@ Array [
1103
1116
  </View>,
1104
1117
  <View
1105
1118
  accessibilityRole="button"
1119
+ accessibilityState={
1120
+ Object {
1121
+ "disabled": false,
1122
+ }
1123
+ }
1106
1124
  accessible={true}
1107
1125
  collapsable={false}
1108
1126
  focusable={true}
@@ -1132,6 +1150,7 @@ Array [
1132
1150
  },
1133
1151
  ]
1134
1152
  }
1153
+ testID="amplify__button"
1135
1154
  >
1136
1155
  <Text
1137
1156
  style={
@@ -25,12 +25,17 @@ const SignUp: DefaultSignUpComponent = ({
25
25
  handleBlur,
26
26
  handleChange,
27
27
  handleSubmit,
28
+ hasValidationErrors,
28
29
  hideSignIn,
29
30
  isPending,
30
31
  toSignIn,
31
32
  ...rest
32
33
  }) => {
33
- const { fields: fieldsWithHandlers, handleFormSubmit } = useFieldValues({
34
+ const {
35
+ disableFormSubmit,
36
+ fields: fieldsWithHandlers,
37
+ handleFormSubmit,
38
+ } = useFieldValues({
34
39
  componentName: COMPONENT_NAME,
35
40
  fields,
36
41
  handleBlur,
@@ -38,6 +43,7 @@ const SignUp: DefaultSignUpComponent = ({
38
43
  handleSubmit,
39
44
  });
40
45
 
46
+ const disabled = hasValidationErrors || disableFormSubmit;
41
47
  const headerText = getSignUpTabText();
42
48
  const primaryButtonText = isPending
43
49
  ? getCreatingAccountText()
@@ -46,12 +52,17 @@ const SignUp: DefaultSignUpComponent = ({
46
52
 
47
53
  const buttons = useMemo(
48
54
  () => ({
49
- primary: { children: primaryButtonText, onPress: handleFormSubmit },
55
+ primary: {
56
+ children: primaryButtonText,
57
+ disabled,
58
+ onPress: handleFormSubmit,
59
+ },
50
60
  links: hideSignIn
51
61
  ? undefined
52
62
  : [{ children: secondaryButtonText, onPress: toSignIn }],
53
63
  }),
54
64
  [
65
+ disabled,
55
66
  handleFormSubmit,
56
67
  hideSignIn,
57
68
  primaryButtonText,
@@ -39,6 +39,7 @@ const props = {
39
39
  handleBlur: jest.fn(),
40
40
  handleChange: jest.fn(),
41
41
  handleSubmit: jest.fn(),
42
+ hasValidationErrors: false,
42
43
  Header: SignUp.Header,
43
44
  isPending: false,
44
45
  socialProviders: [],