@magento/venia-ui 9.5.0-alpha.2 → 9.6.0-beta.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 (28) hide show
  1. package/i18n/en_US.json +1 -0
  2. package/lib/components/AccountInformationPage/__tests__/__snapshots__/editForm.spec.js.snap +3 -0
  3. package/lib/components/CartPage/ProductListing/__tests__/__snapshots__/product.spec.js.snap +59 -4
  4. package/lib/components/CategoryTree/categoryBranch.js +4 -2
  5. package/lib/components/CategoryTree/categoryLeaf.js +3 -1
  6. package/lib/components/CategoryTree/categoryTree.js +11 -2
  7. package/lib/components/CheckoutPage/OrderConfirmationPage/__tests__/__snapshots__/createAccount.spec.js.snap +2 -0
  8. package/lib/components/CheckoutPage/ShippingInformation/AddressForm/__tests__/__snapshots__/guestForm.spec.js.snap +40 -4
  9. package/lib/components/CheckoutPage/ShippingInformation/AddressForm/guestForm.js +40 -1
  10. package/lib/components/CreateAccount/__tests__/__snapshots__/createAccount.spec.js.snap +32 -16
  11. package/lib/components/CreateAccount/createAccount.js +7 -0
  12. package/lib/components/HomePage/homePage.module.css +0 -1
  13. package/lib/components/LegacyMiniCart/__tests__/__snapshots__/kebab.spec.js.snap +6 -2
  14. package/lib/components/LegacyMiniCart/__tests__/__snapshots__/section.spec.js.snap +64 -4
  15. package/lib/components/LegacyMiniCart/kebab.js +3 -1
  16. package/lib/components/LegacyMiniCart/kebab.module.css +2 -1
  17. package/lib/components/LegacyMiniCart/section.js +11 -2
  18. package/lib/components/MyAccount/ResetPassword/__tests__/__snapshots__/resetPassword.spec.js.snap +6 -2
  19. package/lib/components/Navigation/__tests__/navigation.spec.js +11 -0
  20. package/lib/components/Navigation/navigation.js +39 -30
  21. package/lib/components/Password/__tests__/__snapshots__/password.spec.js.snap +9 -3
  22. package/lib/components/Password/password.js +1 -1
  23. package/lib/components/SearchBar/autocomplete.js +6 -2
  24. package/lib/components/SearchBar/searchField.js +1 -0
  25. package/lib/components/SignIn/__tests__/__snapshots__/signIn.spec.js.snap +9 -3
  26. package/lib/components/SignIn/signIn.js +3 -0
  27. package/lib/tokens.module.css +1 -1
  28. package/package.json +4 -4
package/i18n/en_US.json CHANGED
@@ -403,6 +403,7 @@
403
403
  "shippingForm.getShippingOptions": "Get Shipping Options",
404
404
  "shippingForm.loading": "Loading Methods...",
405
405
  "shippingForm.zip": "ZIP",
406
+ "shippingForm.shippingEmail":"Shipping Email",
406
407
  "shippingInformation.cardTitle": "Shipping Information",
407
408
  "shippingInformation.editTitle": "1. Shipping Information",
408
409
  "shippingInformation.loading": "Fetching Shipping Information...",
@@ -152,6 +152,7 @@ exports[`renders form when shouldShowNewPassword is false 1`] = `
152
152
  >
153
153
  <label
154
154
  className="label"
155
+ htmlFor="Password"
155
156
  >
156
157
  Password
157
158
  </label>
@@ -420,6 +421,7 @@ exports[`renders form when shouldShowNewPassword is true 1`] = `
420
421
  >
421
422
  <label
422
423
  className="label"
424
+ htmlFor="Password"
423
425
  >
424
426
  Current Password
425
427
  </label>
@@ -510,6 +512,7 @@ exports[`renders form when shouldShowNewPassword is true 1`] = `
510
512
  >
511
513
  <label
512
514
  className="label"
515
+ htmlFor="Password"
513
516
  >
514
517
  New Password
515
518
  </label>
@@ -260,14 +260,28 @@ exports[`renders configurable product with options 1`] = `
260
260
  </span>
261
261
  </button>
262
262
  <ul
263
+ aria-hidden="true"
263
264
  className="dropdown"
264
265
  >
265
266
  <li
266
267
  className="menuItem"
267
268
  >
268
269
  <button
270
+ aria-label="Edit item"
269
271
  className="button"
270
- onMouseDown={[MockFunction]}
272
+ onClick={[Function]}
273
+ onDragStart={[Function]}
274
+ onKeyDown={[Function]}
275
+ onKeyUp={[Function]}
276
+ onMouseDown={[Function]}
277
+ onMouseEnter={[Function]}
278
+ onMouseLeave={[Function]}
279
+ onMouseUp={[Function]}
280
+ onTouchCancel={[Function]}
281
+ onTouchEnd={[Function]}
282
+ onTouchMove={[Function]}
283
+ onTouchStart={[Function]}
284
+ type="button"
271
285
  >
272
286
  <span
273
287
  className="root"
@@ -300,8 +314,21 @@ exports[`renders configurable product with options 1`] = `
300
314
  className="menuItem"
301
315
  >
302
316
  <button
317
+ aria-label="Remove from cart"
303
318
  className="button"
304
- onMouseDown={[MockFunction]}
319
+ onClick={[Function]}
320
+ onDragStart={[Function]}
321
+ onKeyDown={[Function]}
322
+ onKeyUp={[Function]}
323
+ onMouseDown={[Function]}
324
+ onMouseEnter={[Function]}
325
+ onMouseLeave={[Function]}
326
+ onMouseUp={[Function]}
327
+ onTouchCancel={[Function]}
328
+ onTouchEnd={[Function]}
329
+ onTouchMove={[Function]}
330
+ onTouchStart={[Function]}
331
+ type="button"
305
332
  >
306
333
  <span
307
334
  className="root"
@@ -593,14 +620,28 @@ exports[`renders out of stock product 1`] = `
593
620
  </span>
594
621
  </button>
595
622
  <ul
623
+ aria-hidden="true"
596
624
  className="dropdown"
597
625
  >
598
626
  <li
599
627
  className="menuItem"
600
628
  >
601
629
  <button
630
+ aria-label="Remove from cart"
602
631
  className="button"
603
- onMouseDown={[MockFunction]}
632
+ onClick={[Function]}
633
+ onDragStart={[Function]}
634
+ onKeyDown={[Function]}
635
+ onKeyUp={[Function]}
636
+ onMouseDown={[Function]}
637
+ onMouseEnter={[Function]}
638
+ onMouseLeave={[Function]}
639
+ onMouseUp={[Function]}
640
+ onTouchCancel={[Function]}
641
+ onTouchEnd={[Function]}
642
+ onTouchMove={[Function]}
643
+ onTouchStart={[Function]}
644
+ type="button"
604
645
  >
605
646
  <span
606
647
  className="root"
@@ -892,14 +933,28 @@ exports[`renders simple product correctly 1`] = `
892
933
  </span>
893
934
  </button>
894
935
  <ul
936
+ aria-hidden="true"
895
937
  className="dropdown"
896
938
  >
897
939
  <li
898
940
  className="menuItem"
899
941
  >
900
942
  <button
943
+ aria-label="Remove from cart"
901
944
  className="button"
902
- onMouseDown={[MockFunction]}
945
+ onClick={[Function]}
946
+ onDragStart={[Function]}
947
+ onKeyDown={[Function]}
948
+ onKeyUp={[Function]}
949
+ onMouseDown={[Function]}
950
+ onMouseEnter={[Function]}
951
+ onMouseLeave={[Function]}
952
+ onMouseUp={[Function]}
953
+ onTouchCancel={[Function]}
954
+ onTouchEnd={[Function]}
955
+ onTouchMove={[Function]}
956
+ onTouchStart={[Function]}
957
+ type="button"
903
958
  >
904
959
  <span
905
960
  className="root"
@@ -6,7 +6,7 @@ import { useStyle } from '../../classify';
6
6
  import defaultClasses from './categoryBranch.module.css';
7
7
 
8
8
  const Branch = props => {
9
- const { category, setCategoryId } = props;
9
+ const { category, setCategoryId, tabindex } = props;
10
10
  const { name } = category;
11
11
  const classes = useStyle(defaultClasses, props.classes);
12
12
 
@@ -20,6 +20,7 @@ const Branch = props => {
20
20
  return (
21
21
  <li className={classes.root}>
22
22
  <button
23
+ tabindex={tabindex}
23
24
  className={classes.target}
24
25
  data-cy="CategoryTree-Branch-target"
25
26
  type="button"
@@ -44,5 +45,6 @@ Branch.propTypes = {
44
45
  target: string,
45
46
  text: string
46
47
  }),
47
- setCategoryId: func.isRequired
48
+ setCategoryId: func.isRequired,
49
+ tabindex: func.isRequired
48
50
  };
@@ -9,7 +9,7 @@ import { useStyle } from '../../classify';
9
9
  import defaultClasses from './categoryLeaf.module.css';
10
10
 
11
11
  const Leaf = props => {
12
- const { category, onNavigate, categoryUrlSuffix } = props;
12
+ const { category, onNavigate, categoryUrlSuffix, tabindex } = props;
13
13
  const { name, url_path, children } = category;
14
14
  const classes = useStyle(defaultClasses, props.classes);
15
15
  const { handleClick } = useCategoryLeaf({ onNavigate });
@@ -35,6 +35,7 @@ const Leaf = props => {
35
35
  data-cy="CategoryTree-Leaf-target"
36
36
  to={destination}
37
37
  onClick={handleClick}
38
+ tabIndex={tabindex}
38
39
  >
39
40
  <span className={classes.text}>{leafLabel}</span>
40
41
  </Link>
@@ -55,5 +56,6 @@ Leaf.propTypes = {
55
56
  text: string
56
57
  }),
57
58
  onNavigate: func.isRequired,
59
+ tabindex: func.isRequired,
58
60
  categoryUrlSuffix: string
59
61
  };
@@ -8,7 +8,13 @@ import Leaf from './categoryLeaf';
8
8
  import defaultClasses from './categoryTree.module.css';
9
9
 
10
10
  const Tree = props => {
11
- const { categoryId, onNavigate, setCategoryId, updateCategories } = props;
11
+ const {
12
+ categoryId,
13
+ onNavigate,
14
+ setCategoryId,
15
+ updateCategories,
16
+ tabindex
17
+ } = props;
12
18
 
13
19
  const talonProps = useCategoryTree({
14
20
  categoryId,
@@ -29,12 +35,14 @@ const Tree = props => {
29
35
  category={category}
30
36
  onNavigate={onNavigate}
31
37
  categoryUrlSuffix={categoryUrlSuffix}
38
+ tabindex={tabindex}
32
39
  />
33
40
  ) : (
34
41
  <Branch
35
42
  key={id}
36
43
  category={category}
37
44
  setCategoryId={setCategoryId}
45
+ tabindex={tabindex}
38
46
  />
39
47
  );
40
48
  })
@@ -57,5 +65,6 @@ Tree.propTypes = {
57
65
  }),
58
66
  onNavigate: func.isRequired,
59
67
  setCategoryId: func.isRequired,
60
- updateCategories: func.isRequired
68
+ updateCategories: func.isRequired,
69
+ tabindex: func.isRequired
61
70
  };
@@ -153,6 +153,7 @@ exports[`CreateAccount renders CreateAccount component 1`] = `
153
153
  >
154
154
  <label
155
155
  className="label"
156
+ htmlFor="Password"
156
157
  >
157
158
  Password
158
159
  </label>
@@ -475,6 +476,7 @@ exports[`CreateAccount renders errors 1`] = `
475
476
  >
476
477
  <label
477
478
  className="label"
479
+ htmlFor="Password"
478
480
  >
479
481
  Password
480
482
  </label>
@@ -36,7 +36,7 @@ Array [
36
36
  className="input"
37
37
  >
38
38
  <input
39
- autoComplete="off"
39
+ autoComplete="Shipping Email"
40
40
  className="input"
41
41
  id="email"
42
42
  name="email"
@@ -91,6 +91,7 @@ Array [
91
91
  className="input"
92
92
  >
93
93
  <input
94
+ autoComplete="First Name"
94
95
  className="input"
95
96
  id="firstname"
96
97
  name="firstname"
@@ -136,6 +137,7 @@ Array [
136
137
  className="input"
137
138
  >
138
139
  <input
140
+ autoComplete="Last Name"
139
141
  className="input"
140
142
  id="lastname"
141
143
  name="lastname"
@@ -160,6 +162,7 @@ Array [
160
162
  className="country"
161
163
  >
162
164
  <Country
165
+ autoComplete="Country"
163
166
  validate={[Function]}
164
167
  />
165
168
  </div>
@@ -188,6 +191,7 @@ Array [
188
191
  className="input"
189
192
  >
190
193
  <input
194
+ autoComplete="Street Address"
191
195
  className="input"
192
196
  id="street0"
193
197
  name="street[0]"
@@ -241,6 +245,7 @@ Array [
241
245
  className="input"
242
246
  >
243
247
  <input
248
+ autoComplete="Street Address 2"
244
249
  className="input"
245
250
  id="street1"
246
251
  name="street[1]"
@@ -286,6 +291,7 @@ Array [
286
291
  className="input"
287
292
  >
288
293
  <input
294
+ autoComplete="City"
289
295
  className="input"
290
296
  id="city"
291
297
  name="city"
@@ -310,6 +316,7 @@ Array [
310
316
  className="region"
311
317
  >
312
318
  <Region
319
+ autoComplete="State"
313
320
  fieldInput="region[region]"
314
321
  fieldSelect="region[region_id]"
315
322
  optionValueKey="id"
@@ -341,6 +348,7 @@ Array [
341
348
  className="input"
342
349
  >
343
350
  <input
351
+ autoComplete="ZIP / Postal Code"
344
352
  className="input"
345
353
  id="root"
346
354
  name="postcode"
@@ -386,6 +394,7 @@ Array [
386
394
  className="input"
387
395
  >
388
396
  <input
397
+ autoComplete="Phone Number"
389
398
  className="input"
390
399
  id="telephone"
391
400
  name="telephone"
@@ -477,7 +486,7 @@ Array [
477
486
  className="input"
478
487
  >
479
488
  <input
480
- autoComplete="off"
489
+ autoComplete="Shipping Email"
481
490
  className="input"
482
491
  id="email"
483
492
  name="email"
@@ -532,6 +541,7 @@ Array [
532
541
  className="input"
533
542
  >
534
543
  <input
544
+ autoComplete="First Name"
535
545
  className="input"
536
546
  id="firstname"
537
547
  name="firstname"
@@ -577,6 +587,7 @@ Array [
577
587
  className="input"
578
588
  >
579
589
  <input
590
+ autoComplete="Last Name"
580
591
  className="input"
581
592
  id="lastname"
582
593
  name="lastname"
@@ -601,6 +612,7 @@ Array [
601
612
  className="country"
602
613
  >
603
614
  <Country
615
+ autoComplete="Country"
604
616
  validate={[Function]}
605
617
  />
606
618
  </div>
@@ -629,6 +641,7 @@ Array [
629
641
  className="input"
630
642
  >
631
643
  <input
644
+ autoComplete="Street Address"
632
645
  className="input"
633
646
  id="street0"
634
647
  name="street[0]"
@@ -682,6 +695,7 @@ Array [
682
695
  className="input"
683
696
  >
684
697
  <input
698
+ autoComplete="Street Address 2"
685
699
  className="input"
686
700
  id="street1"
687
701
  name="street[1]"
@@ -727,6 +741,7 @@ Array [
727
741
  className="input"
728
742
  >
729
743
  <input
744
+ autoComplete="City"
730
745
  className="input"
731
746
  id="city"
732
747
  name="city"
@@ -751,6 +766,7 @@ Array [
751
766
  className="region"
752
767
  >
753
768
  <Region
769
+ autoComplete="State"
754
770
  fieldInput="region[region]"
755
771
  fieldSelect="region[region_id]"
756
772
  optionValueKey="id"
@@ -782,6 +798,7 @@ Array [
782
798
  className="input"
783
799
  >
784
800
  <input
801
+ autoComplete="ZIP / Postal Code"
785
802
  className="input"
786
803
  id="root"
787
804
  name="postcode"
@@ -827,6 +844,7 @@ Array [
827
844
  className="input"
828
845
  >
829
846
  <input
847
+ autoComplete="Phone Number"
830
848
  className="input"
831
849
  id="telephone"
832
850
  name="telephone"
@@ -914,7 +932,7 @@ Array [
914
932
  className="input"
915
933
  >
916
934
  <input
917
- autoComplete="off"
935
+ autoComplete="Shipping Email"
918
936
  className="input"
919
937
  id="email"
920
938
  name="email"
@@ -961,6 +979,7 @@ Array [
961
979
  className="input"
962
980
  >
963
981
  <input
982
+ autoComplete="First Name"
964
983
  className="input"
965
984
  id="firstname"
966
985
  name="firstname"
@@ -1006,6 +1025,7 @@ Array [
1006
1025
  className="input"
1007
1026
  >
1008
1027
  <input
1028
+ autoComplete="Last Name"
1009
1029
  className="input"
1010
1030
  id="lastname"
1011
1031
  name="lastname"
@@ -1030,6 +1050,7 @@ Array [
1030
1050
  className="country"
1031
1051
  >
1032
1052
  <Country
1053
+ autoComplete="Country"
1033
1054
  validate={[Function]}
1034
1055
  />
1035
1056
  </div>
@@ -1058,6 +1079,7 @@ Array [
1058
1079
  className="input"
1059
1080
  >
1060
1081
  <input
1082
+ autoComplete="Street Address"
1061
1083
  className="input"
1062
1084
  id="street0"
1063
1085
  name="street[0]"
@@ -1111,6 +1133,7 @@ Array [
1111
1133
  className="input"
1112
1134
  >
1113
1135
  <input
1136
+ autoComplete="Street Address 2"
1114
1137
  className="input"
1115
1138
  id="street1"
1116
1139
  name="street[1]"
@@ -1156,6 +1179,7 @@ Array [
1156
1179
  className="input"
1157
1180
  >
1158
1181
  <input
1182
+ autoComplete="City"
1159
1183
  className="input"
1160
1184
  id="city"
1161
1185
  name="city"
@@ -1180,6 +1204,7 @@ Array [
1180
1204
  className="region"
1181
1205
  >
1182
1206
  <Region
1207
+ autoComplete="State"
1183
1208
  fieldInput="region[region]"
1184
1209
  fieldSelect="region[region_id]"
1185
1210
  optionValueKey="id"
@@ -1211,6 +1236,7 @@ Array [
1211
1236
  className="input"
1212
1237
  >
1213
1238
  <input
1239
+ autoComplete="ZIP / Postal Code"
1214
1240
  className="input"
1215
1241
  id="root"
1216
1242
  name="postcode"
@@ -1256,6 +1282,7 @@ Array [
1256
1282
  className="input"
1257
1283
  >
1258
1284
  <input
1285
+ autoComplete="Phone Number"
1259
1286
  className="input"
1260
1287
  id="telephone"
1261
1288
  name="telephone"
@@ -1369,7 +1396,7 @@ Array [
1369
1396
  className="input"
1370
1397
  >
1371
1398
  <input
1372
- autoComplete="off"
1399
+ autoComplete="Shipping Email"
1373
1400
  className="input"
1374
1401
  id="email"
1375
1402
  name="email"
@@ -1416,6 +1443,7 @@ Array [
1416
1443
  className="input"
1417
1444
  >
1418
1445
  <input
1446
+ autoComplete="First Name"
1419
1447
  className="input"
1420
1448
  id="firstname"
1421
1449
  name="firstname"
@@ -1461,6 +1489,7 @@ Array [
1461
1489
  className="input"
1462
1490
  >
1463
1491
  <input
1492
+ autoComplete="Last Name"
1464
1493
  className="input"
1465
1494
  id="lastname"
1466
1495
  name="lastname"
@@ -1485,6 +1514,7 @@ Array [
1485
1514
  className="country"
1486
1515
  >
1487
1516
  <Country
1517
+ autoComplete="Country"
1488
1518
  validate={[Function]}
1489
1519
  />
1490
1520
  </div>
@@ -1513,6 +1543,7 @@ Array [
1513
1543
  className="input"
1514
1544
  >
1515
1545
  <input
1546
+ autoComplete="Street Address"
1516
1547
  className="input"
1517
1548
  id="street0"
1518
1549
  name="street[0]"
@@ -1566,6 +1597,7 @@ Array [
1566
1597
  className="input"
1567
1598
  >
1568
1599
  <input
1600
+ autoComplete="Street Address 2"
1569
1601
  className="input"
1570
1602
  id="street1"
1571
1603
  name="street[1]"
@@ -1611,6 +1643,7 @@ Array [
1611
1643
  className="input"
1612
1644
  >
1613
1645
  <input
1646
+ autoComplete="City"
1614
1647
  className="input"
1615
1648
  id="city"
1616
1649
  name="city"
@@ -1635,6 +1668,7 @@ Array [
1635
1668
  className="region"
1636
1669
  >
1637
1670
  <Region
1671
+ autoComplete="State"
1638
1672
  fieldInput="region[region]"
1639
1673
  fieldSelect="region[region_id]"
1640
1674
  optionValueKey="id"
@@ -1666,6 +1700,7 @@ Array [
1666
1700
  className="input"
1667
1701
  >
1668
1702
  <input
1703
+ autoComplete="ZIP / Postal Code"
1669
1704
  className="input"
1670
1705
  id="root"
1671
1706
  name="postcode"
@@ -1711,6 +1746,7 @@ Array [
1711
1746
  className="input"
1712
1747
  >
1713
1748
  <input
1749
+ autoComplete="Phone Number"
1714
1750
  className="input"
1715
1751
  id="telephone"
1716
1752
  name="telephone"
@@ -145,7 +145,10 @@ const GuestForm = props => {
145
145
  })}
146
146
  >
147
147
  <TextInput
148
- autoComplete="off"
148
+ autoComplete={formatMessage({
149
+ id: 'shippingForm.shippingEmail',
150
+ defaultMessage: 'Shipping Email'
151
+ })}
149
152
  field="email"
150
153
  id="email"
151
154
  data-cy="GuestForm-email"
@@ -174,6 +177,10 @@ const GuestForm = props => {
174
177
  })}
175
178
  >
176
179
  <TextInput
180
+ autoComplete={formatMessage({
181
+ id: 'global.firstName',
182
+ defaultMessage: 'First Name'
183
+ })}
177
184
  field="firstname"
178
185
  id="firstname"
179
186
  data-cy="GuestForm-firstName"
@@ -190,6 +197,10 @@ const GuestForm = props => {
190
197
  })}
191
198
  >
192
199
  <TextInput
200
+ autoComplete={formatMessage({
201
+ id: 'global.lastName',
202
+ defaultMessage: 'Last Name'
203
+ })}
193
204
  field="lastname"
194
205
  id="lastname"
195
206
  data-cy="GuestForm-lastName"
@@ -199,6 +210,10 @@ const GuestForm = props => {
199
210
  </div>
200
211
  <div className={classes.country}>
201
212
  <Country
213
+ autoComplete={formatMessage({
214
+ id: 'country.label',
215
+ defaultMessage: 'Country'
216
+ })}
202
217
  validate={isRequired}
203
218
  data-cy="GuestForm-country"
204
219
  />
@@ -212,6 +227,10 @@ const GuestForm = props => {
212
227
  })}
213
228
  >
214
229
  <TextInput
230
+ autoComplete={formatMessage({
231
+ id: 'global.streetAddress',
232
+ defaultMessage: 'Street Address'
233
+ })}
215
234
  field="street[0]"
216
235
  id="street0"
217
236
  data-cy="GuestForm-street0"
@@ -229,6 +248,10 @@ const GuestForm = props => {
229
248
  optional={true}
230
249
  >
231
250
  <TextInput
251
+ autoComplete={formatMessage({
252
+ id: 'global.streetAddress2',
253
+ defaultMessage: 'Street Address 2'
254
+ })}
232
255
  field="street[1]"
233
256
  id="street1"
234
257
  data-cy="GuestForm-street1"
@@ -244,6 +267,10 @@ const GuestForm = props => {
244
267
  })}
245
268
  >
246
269
  <TextInput
270
+ autoComplete={formatMessage({
271
+ id: 'global.city',
272
+ defaultMessage: 'City'
273
+ })}
247
274
  field="city"
248
275
  id="city"
249
276
  data-cy="GuestForm-city"
@@ -253,6 +280,10 @@ const GuestForm = props => {
253
280
  </div>
254
281
  <div className={classes.region}>
255
282
  <Region
283
+ autoComplete={formatMessage({
284
+ id: 'region.label',
285
+ defaultMessage: 'State'
286
+ })}
256
287
  validate={isRequired}
257
288
  fieldInput={'region[region]'}
258
289
  fieldSelect={'region[region_id]'}
@@ -262,6 +293,10 @@ const GuestForm = props => {
262
293
  </div>
263
294
  <div className={classes.postcode}>
264
295
  <Postcode
296
+ autoComplete={formatMessage({
297
+ id: 'postcode.label',
298
+ defaultMessage: 'ZIP / Postal Code'
299
+ })}
265
300
  validate={isRequired}
266
301
  data-cy="GuestForm-postcode"
267
302
  />
@@ -275,6 +310,10 @@ const GuestForm = props => {
275
310
  })}
276
311
  >
277
312
  <TextInput
313
+ autoComplete={formatMessage({
314
+ id: 'global.phoneNumber',
315
+ defaultMessage: 'Phone Number'
316
+ })}
278
317
  field="telephone"
279
318
  id="telephone"
280
319
  data-cy="GuestForm-telephone"