@office-iss/react-native-win32 0.71.11 → 0.71.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.json +31 -1
- package/CHANGELOG.md +20 -4
- package/Libraries/Components/TextInput/TextInput.d.ts +121 -86
- package/Libraries/Components/TextInput/TextInput.flow.js +121 -135
- package/Libraries/Components/TextInput/TextInput.js +165 -154
- package/Libraries/Components/TextInput/TextInput.win32.js +121 -137
- package/Libraries/Components/View/View.js +34 -16
- package/Libraries/Components/View/View.win32.js +34 -16
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/Libraries/Image/Image.android.js +1 -1
- package/Libraries/Lists/VirtualizedList.js +3 -0
- package/Libraries/LogBox/Data/parseLogBoxLog.js +50 -20
- package/Libraries/Pressability/Pressability.win32.js +28 -6
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +1 -0
- package/Libraries/Text/Text.js +49 -41
- package/flow-typed/npm/ansi-regex_v5.x.x.js +14 -0
- package/overrides.json +7 -7
- package/package.json +7 -7
|
@@ -229,36 +229,6 @@ export type enterKeyHintType =
|
|
|
229
229
|
type PasswordRules = string;
|
|
230
230
|
|
|
231
231
|
type IOSProps = $ReadOnly<{|
|
|
232
|
-
/**
|
|
233
|
-
* Give the keyboard and the system information about the
|
|
234
|
-
* expected semantic meaning for the content that users enter.
|
|
235
|
-
* @platform ios
|
|
236
|
-
*/
|
|
237
|
-
autoComplete?: ?(
|
|
238
|
-
| 'address-line1'
|
|
239
|
-
| 'address-line2'
|
|
240
|
-
| 'cc-number'
|
|
241
|
-
| 'current-password'
|
|
242
|
-
| 'country'
|
|
243
|
-
| 'email'
|
|
244
|
-
| 'name'
|
|
245
|
-
| 'additional-name'
|
|
246
|
-
| 'family-name'
|
|
247
|
-
| 'given-name'
|
|
248
|
-
| 'nickname'
|
|
249
|
-
| 'honorific-prefix'
|
|
250
|
-
| 'honorific-suffix'
|
|
251
|
-
| 'new-password'
|
|
252
|
-
| 'off'
|
|
253
|
-
| 'one-time-code'
|
|
254
|
-
| 'organization'
|
|
255
|
-
| 'organization-title'
|
|
256
|
-
| 'postal-code'
|
|
257
|
-
| 'street-address'
|
|
258
|
-
| 'tel'
|
|
259
|
-
| 'url'
|
|
260
|
-
| 'username'
|
|
261
|
-
),
|
|
262
232
|
/**
|
|
263
233
|
* When the clear button should appear on the right side of the text view.
|
|
264
234
|
* This property is supported only for single-line TextInput component.
|
|
@@ -364,111 +334,6 @@ type IOSProps = $ReadOnly<{|
|
|
|
364
334
|
|}>;
|
|
365
335
|
|
|
366
336
|
type AndroidProps = $ReadOnly<{|
|
|
367
|
-
/**
|
|
368
|
-
* Specifies autocomplete hints for the system, so it can provide autofill. On Android, the system will always attempt to offer autofill by using heuristics to identify the type of content.
|
|
369
|
-
* To disable autocomplete, set `autoComplete` to `off`.
|
|
370
|
-
*
|
|
371
|
-
* *Android Only*
|
|
372
|
-
*
|
|
373
|
-
* Possible values for `autoComplete` are:
|
|
374
|
-
*
|
|
375
|
-
* - `birthdate-day`
|
|
376
|
-
* - `birthdate-full`
|
|
377
|
-
* - `birthdate-month`
|
|
378
|
-
* - `birthdate-year`
|
|
379
|
-
* - `cc-csc`
|
|
380
|
-
* - `cc-exp`
|
|
381
|
-
* - `cc-exp-day`
|
|
382
|
-
* - `cc-exp-month`
|
|
383
|
-
* - `cc-exp-year`
|
|
384
|
-
* - `cc-number`
|
|
385
|
-
* - `email`
|
|
386
|
-
* - `gender`
|
|
387
|
-
* - `name`
|
|
388
|
-
* - `name-family`
|
|
389
|
-
* - `name-given`
|
|
390
|
-
* - `name-middle`
|
|
391
|
-
* - `name-middle-initial`
|
|
392
|
-
* - `name-prefix`
|
|
393
|
-
* - `name-suffix`
|
|
394
|
-
* - `password`
|
|
395
|
-
* - `password-new`
|
|
396
|
-
* - `postal-address`
|
|
397
|
-
* - `postal-address-country`
|
|
398
|
-
* - `postal-address-extended`
|
|
399
|
-
* - `postal-address-extended-postal-code`
|
|
400
|
-
* - `postal-address-locality`
|
|
401
|
-
* - `postal-address-region`
|
|
402
|
-
* - `postal-code`
|
|
403
|
-
* - `street-address`
|
|
404
|
-
* - `sms-otp`
|
|
405
|
-
* - `tel`
|
|
406
|
-
* - `tel-country-code`
|
|
407
|
-
* - `tel-national`
|
|
408
|
-
* - `tel-device`
|
|
409
|
-
* - `username`
|
|
410
|
-
* - `username-new`
|
|
411
|
-
* - `off`
|
|
412
|
-
*
|
|
413
|
-
* @platform android
|
|
414
|
-
*/
|
|
415
|
-
autoComplete?: ?(
|
|
416
|
-
| 'birthdate-day'
|
|
417
|
-
| 'birthdate-full'
|
|
418
|
-
| 'birthdate-month'
|
|
419
|
-
| 'birthdate-year'
|
|
420
|
-
| 'cc-csc'
|
|
421
|
-
| 'cc-exp'
|
|
422
|
-
| 'cc-exp-day'
|
|
423
|
-
| 'cc-exp-month'
|
|
424
|
-
| 'cc-exp-year'
|
|
425
|
-
| 'cc-number'
|
|
426
|
-
| 'email'
|
|
427
|
-
| 'gender'
|
|
428
|
-
| 'name'
|
|
429
|
-
| 'name-family'
|
|
430
|
-
| 'name-given'
|
|
431
|
-
| 'name-middle'
|
|
432
|
-
| 'name-middle-initial'
|
|
433
|
-
| 'name-prefix'
|
|
434
|
-
| 'name-suffix'
|
|
435
|
-
| 'password'
|
|
436
|
-
| 'password-new'
|
|
437
|
-
| 'postal-address'
|
|
438
|
-
| 'postal-address-country'
|
|
439
|
-
| 'postal-address-extended'
|
|
440
|
-
| 'postal-address-extended-postal-code'
|
|
441
|
-
| 'postal-address-locality'
|
|
442
|
-
| 'postal-address-region'
|
|
443
|
-
| 'postal-code'
|
|
444
|
-
| 'street-address'
|
|
445
|
-
| 'sms-otp'
|
|
446
|
-
| 'tel'
|
|
447
|
-
| 'tel-country-code'
|
|
448
|
-
| 'tel-national'
|
|
449
|
-
| 'tel-device'
|
|
450
|
-
| 'username'
|
|
451
|
-
| 'username-new'
|
|
452
|
-
| 'off'
|
|
453
|
-
// additional HTML autocomplete values
|
|
454
|
-
| 'address-line1'
|
|
455
|
-
| 'address-line2'
|
|
456
|
-
| 'bday'
|
|
457
|
-
| 'bday-day'
|
|
458
|
-
| 'bday-month'
|
|
459
|
-
| 'bday-year'
|
|
460
|
-
| 'country'
|
|
461
|
-
| 'current-password'
|
|
462
|
-
| 'honorific-prefix'
|
|
463
|
-
| 'honorific-suffix'
|
|
464
|
-
| 'additional-name'
|
|
465
|
-
| 'family-name'
|
|
466
|
-
| 'given-name'
|
|
467
|
-
| 'new-password'
|
|
468
|
-
| 'one-time-code'
|
|
469
|
-
| 'sex'
|
|
470
|
-
),
|
|
471
|
-
|
|
472
337
|
/**
|
|
473
338
|
* When provided it will set the color of the cursor (or "caret") in the component.
|
|
474
339
|
* Unlike the behavior of `selectionColor` the cursor color will be set independently
|
|
@@ -569,6 +434,127 @@ export type Props = $ReadOnly<{|
|
|
|
569
434
|
*/
|
|
570
435
|
autoCapitalize?: ?AutoCapitalize,
|
|
571
436
|
|
|
437
|
+
/**
|
|
438
|
+
* Specifies autocomplete hints for the system, so it can provide autofill.
|
|
439
|
+
* On Android, the system will always attempt to offer autofill by using heuristics to identify the type of content.
|
|
440
|
+
* To disable autocomplete, set autoComplete to off.
|
|
441
|
+
*
|
|
442
|
+
* The following values work across platforms:
|
|
443
|
+
*
|
|
444
|
+
* - `additional-name`
|
|
445
|
+
* - `address-line1`
|
|
446
|
+
* - `address-line2`
|
|
447
|
+
* - `cc-number`
|
|
448
|
+
* - `country`
|
|
449
|
+
* - `current-password`
|
|
450
|
+
* - `email`
|
|
451
|
+
* - `family-name`
|
|
452
|
+
* - `given-name`
|
|
453
|
+
* - `honorific-prefix`
|
|
454
|
+
* - `honorific-suffix`
|
|
455
|
+
* - `name`
|
|
456
|
+
* - `new-password`
|
|
457
|
+
* - `off`
|
|
458
|
+
* - `one-time-code`
|
|
459
|
+
* - `postal-code`
|
|
460
|
+
* - `street-address`
|
|
461
|
+
* - `tel`
|
|
462
|
+
* - `username`
|
|
463
|
+
*
|
|
464
|
+
* The following values work on iOS only:
|
|
465
|
+
*
|
|
466
|
+
* - `nickname`
|
|
467
|
+
* - `organization`
|
|
468
|
+
* - `organization-title`
|
|
469
|
+
* - `url`
|
|
470
|
+
*
|
|
471
|
+
* The following values work on Android only:
|
|
472
|
+
*
|
|
473
|
+
* - `birthdate-day`
|
|
474
|
+
* - `birthdate-full`
|
|
475
|
+
* - `birthdate-month`
|
|
476
|
+
* - `birthdate-year`
|
|
477
|
+
* - `cc-csc`
|
|
478
|
+
* - `cc-exp`
|
|
479
|
+
* - `cc-exp-day`
|
|
480
|
+
* - `cc-exp-month`
|
|
481
|
+
* - `cc-exp-year`
|
|
482
|
+
* - `gender`
|
|
483
|
+
* - `name-family`
|
|
484
|
+
* - `name-given`
|
|
485
|
+
* - `name-middle`
|
|
486
|
+
* - `name-middle-initial`
|
|
487
|
+
* - `name-prefix`
|
|
488
|
+
* - `name-suffix`
|
|
489
|
+
* - `password`
|
|
490
|
+
* - `password-new`
|
|
491
|
+
* - `postal-address`
|
|
492
|
+
* - `postal-address-country`
|
|
493
|
+
* - `postal-address-extended`
|
|
494
|
+
* - `postal-address-extended-postal-code`
|
|
495
|
+
* - `postal-address-locality`
|
|
496
|
+
* - `postal-address-region`
|
|
497
|
+
* - `sms-otp`
|
|
498
|
+
* - `tel-country-code`
|
|
499
|
+
* - `tel-national`
|
|
500
|
+
* - `tel-device`
|
|
501
|
+
* - `username-new`
|
|
502
|
+
*/
|
|
503
|
+
autoComplete?: ?(
|
|
504
|
+
| 'additional-name'
|
|
505
|
+
| 'address-line1'
|
|
506
|
+
| 'address-line2'
|
|
507
|
+
| 'birthdate-day'
|
|
508
|
+
| 'birthdate-full'
|
|
509
|
+
| 'birthdate-month'
|
|
510
|
+
| 'birthdate-year'
|
|
511
|
+
| 'cc-csc'
|
|
512
|
+
| 'cc-exp'
|
|
513
|
+
| 'cc-exp-day'
|
|
514
|
+
| 'cc-exp-month'
|
|
515
|
+
| 'cc-exp-year'
|
|
516
|
+
| 'cc-number'
|
|
517
|
+
| 'country'
|
|
518
|
+
| 'current-password'
|
|
519
|
+
| 'email'
|
|
520
|
+
| 'family-name'
|
|
521
|
+
| 'gender'
|
|
522
|
+
| 'given-name'
|
|
523
|
+
| 'honorific-prefix'
|
|
524
|
+
| 'honorific-suffix'
|
|
525
|
+
| 'name'
|
|
526
|
+
| 'name-family'
|
|
527
|
+
| 'name-given'
|
|
528
|
+
| 'name-middle'
|
|
529
|
+
| 'name-middle-initial'
|
|
530
|
+
| 'name-prefix'
|
|
531
|
+
| 'name-suffix'
|
|
532
|
+
| 'new-password'
|
|
533
|
+
| 'nickname'
|
|
534
|
+
| 'one-time-code'
|
|
535
|
+
| 'organization'
|
|
536
|
+
| 'organization-title'
|
|
537
|
+
| 'password'
|
|
538
|
+
| 'password-new'
|
|
539
|
+
| 'postal-address'
|
|
540
|
+
| 'postal-address-country'
|
|
541
|
+
| 'postal-address-extended'
|
|
542
|
+
| 'postal-address-extended-postal-code'
|
|
543
|
+
| 'postal-address-locality'
|
|
544
|
+
| 'postal-address-region'
|
|
545
|
+
| 'postal-code'
|
|
546
|
+
| 'street-address'
|
|
547
|
+
| 'sms-otp'
|
|
548
|
+
| 'tel'
|
|
549
|
+
| 'tel-country-code'
|
|
550
|
+
| 'tel-national'
|
|
551
|
+
| 'tel-device'
|
|
552
|
+
| 'url'
|
|
553
|
+
| 'username'
|
|
554
|
+
| 'username-new'
|
|
555
|
+
| 'off'
|
|
556
|
+
),
|
|
557
|
+
|
|
572
558
|
/**
|
|
573
559
|
* If `false`, disables auto-correct. The default value is `true`.
|
|
574
560
|
*/
|
|
@@ -1075,6 +1061,18 @@ const emptyFunctionThatReturnsTrue = () => true;
|
|
|
1075
1061
|
*
|
|
1076
1062
|
*/
|
|
1077
1063
|
function InternalTextInput(props: Props): React.Node {
|
|
1064
|
+
const {
|
|
1065
|
+
'aria-busy': ariaBusy,
|
|
1066
|
+
'aria-checked': ariaChecked,
|
|
1067
|
+
'aria-disabled': ariaDisabled,
|
|
1068
|
+
'aria-expanded': ariaExpanded,
|
|
1069
|
+
'aria-selected': ariaSelected,
|
|
1070
|
+
accessibilityState,
|
|
1071
|
+
id,
|
|
1072
|
+
tabIndex,
|
|
1073
|
+
...otherProps
|
|
1074
|
+
} = props;
|
|
1075
|
+
|
|
1078
1076
|
const inputRef = useRef<null | React.ElementRef<HostComponent<mixed>>>(null);
|
|
1079
1077
|
|
|
1080
1078
|
// Android sends a "onTextChanged" event followed by a "onSelectionChanged" event, for
|
|
@@ -1395,13 +1393,25 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1395
1393
|
// so omitting onBlur and onFocus pressability handlers here.
|
|
1396
1394
|
const {onBlur, onFocus, ...eventHandlers} = usePressability(config) || {};
|
|
1397
1395
|
|
|
1398
|
-
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
|
|
1403
|
-
|
|
1404
|
-
|
|
1396
|
+
let _accessibilityState;
|
|
1397
|
+
if (
|
|
1398
|
+
accessibilityState != null ||
|
|
1399
|
+
ariaBusy != null ||
|
|
1400
|
+
ariaChecked != null ||
|
|
1401
|
+
ariaDisabled != null ||
|
|
1402
|
+
ariaExpanded != null ||
|
|
1403
|
+
ariaSelected != null
|
|
1404
|
+
) {
|
|
1405
|
+
_accessibilityState = {
|
|
1406
|
+
busy: ariaBusy ?? accessibilityState?.busy,
|
|
1407
|
+
checked: ariaChecked ?? accessibilityState?.checked,
|
|
1408
|
+
disabled: ariaDisabled ?? accessibilityState?.disabled,
|
|
1409
|
+
expanded: ariaExpanded ?? accessibilityState?.expanded,
|
|
1410
|
+
selected: ariaSelected ?? accessibilityState?.selected,
|
|
1411
|
+
};
|
|
1412
|
+
}
|
|
1413
|
+
|
|
1414
|
+
let style = flattenStyle(props.style);
|
|
1405
1415
|
|
|
1406
1416
|
if (Platform.OS === 'ios') {
|
|
1407
1417
|
const RCTTextInputView =
|
|
@@ -1409,10 +1419,7 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1409
1419
|
? RCTMultilineTextInputView
|
|
1410
1420
|
: RCTSinglelineTextInputView;
|
|
1411
1421
|
|
|
1412
|
-
|
|
1413
|
-
props.multiline === true
|
|
1414
|
-
? StyleSheet.flatten([styles.multilineInput, props.style])
|
|
1415
|
-
: props.style;
|
|
1422
|
+
style = props.multiline === true ? [styles.multilineInput, style] : style;
|
|
1416
1423
|
|
|
1417
1424
|
const useOnChangeSync =
|
|
1418
1425
|
(props.unstable_onChangeSync || props.unstable_onChangeTextSync) &&
|
|
@@ -1421,15 +1428,16 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1421
1428
|
textInput = (
|
|
1422
1429
|
<RCTTextInputView
|
|
1423
1430
|
ref={_setNativeRef}
|
|
1424
|
-
{...
|
|
1431
|
+
{...otherProps}
|
|
1425
1432
|
{...eventHandlers}
|
|
1426
|
-
accessible={accessible}
|
|
1427
1433
|
accessibilityState={_accessibilityState}
|
|
1434
|
+
accessible={accessible}
|
|
1428
1435
|
submitBehavior={submitBehavior}
|
|
1429
1436
|
caretHidden={caretHidden}
|
|
1430
1437
|
dataDetectorTypes={props.dataDetectorTypes}
|
|
1431
|
-
focusable={focusable}
|
|
1438
|
+
focusable={tabIndex !== undefined ? !tabIndex : focusable}
|
|
1432
1439
|
mostRecentEventCount={mostRecentEventCount}
|
|
1440
|
+
nativeID={id ?? props.nativeID}
|
|
1433
1441
|
onBlur={_onBlur}
|
|
1434
1442
|
onKeyPressSync={props.unstable_onKeyPressSync}
|
|
1435
1443
|
onChange={_onChange}
|
|
@@ -1445,7 +1453,6 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1445
1453
|
/>
|
|
1446
1454
|
);
|
|
1447
1455
|
} else if (Platform.OS === 'android') {
|
|
1448
|
-
const style = [props.style];
|
|
1449
1456
|
const autoCapitalize = props.autoCapitalize || 'sentences';
|
|
1450
1457
|
const _accessibilityLabelledBy =
|
|
1451
1458
|
props?.['aria-labelledby'] ?? props?.accessibilityLabelledBy;
|
|
@@ -1471,18 +1478,19 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1471
1478
|
* fixed */
|
|
1472
1479
|
<AndroidTextInput
|
|
1473
1480
|
ref={_setNativeRef}
|
|
1474
|
-
{...
|
|
1481
|
+
{...otherProps}
|
|
1475
1482
|
{...eventHandlers}
|
|
1476
|
-
accessible={accessible}
|
|
1477
1483
|
accessibilityState={_accessibilityState}
|
|
1478
1484
|
accessibilityLabelledBy={_accessibilityLabelledBy}
|
|
1485
|
+
accessible={accessible}
|
|
1479
1486
|
autoCapitalize={autoCapitalize}
|
|
1480
1487
|
submitBehavior={submitBehavior}
|
|
1481
1488
|
caretHidden={caretHidden}
|
|
1482
1489
|
children={children}
|
|
1483
1490
|
disableFullscreenUI={props.disableFullscreenUI}
|
|
1484
|
-
focusable={focusable}
|
|
1491
|
+
focusable={tabIndex !== undefined ? !tabIndex : focusable}
|
|
1485
1492
|
mostRecentEventCount={mostRecentEventCount}
|
|
1493
|
+
nativeID={id ?? props.nativeID}
|
|
1486
1494
|
numberOfLines={props.rows ?? props.numberOfLines}
|
|
1487
1495
|
onBlur={_onBlur}
|
|
1488
1496
|
onChange={_onChange}
|
|
@@ -1612,11 +1620,12 @@ const ExportedForwardRef: React.AbstractComponent<
|
|
|
1612
1620
|
React.ElementRef<HostComponent<mixed>> & ImperativeMethods,
|
|
1613
1621
|
>,
|
|
1614
1622
|
) {
|
|
1615
|
-
|
|
1623
|
+
let style = flattenStyle(restProps.style);
|
|
1616
1624
|
|
|
1617
1625
|
if (style?.verticalAlign != null) {
|
|
1618
1626
|
style.textAlignVertical =
|
|
1619
1627
|
verticalAlignToTextAlignVerticalMap[style.verticalAlign];
|
|
1628
|
+
delete style.verticalAlign;
|
|
1620
1629
|
}
|
|
1621
1630
|
|
|
1622
1631
|
return (
|
|
@@ -1657,6 +1666,8 @@ const ExportedForwardRef: React.AbstractComponent<
|
|
|
1657
1666
|
);
|
|
1658
1667
|
});
|
|
1659
1668
|
|
|
1669
|
+
ExportedForwardRef.displayName = 'TextInput';
|
|
1670
|
+
|
|
1660
1671
|
/**
|
|
1661
1672
|
* Switch to `deprecated-react-native-prop-types` for compatibility with future
|
|
1662
1673
|
* releases. This is deprecated and will be removed in the future.
|
|
@@ -245,36 +245,6 @@ export type enterKeyHintType =
|
|
|
245
245
|
type PasswordRules = string;
|
|
246
246
|
|
|
247
247
|
type IOSProps = $ReadOnly<{|
|
|
248
|
-
/**
|
|
249
|
-
* Give the keyboard and the system information about the
|
|
250
|
-
* expected semantic meaning for the content that users enter.
|
|
251
|
-
* @platform ios
|
|
252
|
-
*/
|
|
253
|
-
autoComplete?: ?(
|
|
254
|
-
| 'address-line1'
|
|
255
|
-
| 'address-line2'
|
|
256
|
-
| 'cc-number'
|
|
257
|
-
| 'current-password'
|
|
258
|
-
| 'country'
|
|
259
|
-
| 'email'
|
|
260
|
-
| 'name'
|
|
261
|
-
| 'additional-name'
|
|
262
|
-
| 'family-name'
|
|
263
|
-
| 'given-name'
|
|
264
|
-
| 'nickname'
|
|
265
|
-
| 'honorific-prefix'
|
|
266
|
-
| 'honorific-suffix'
|
|
267
|
-
| 'new-password'
|
|
268
|
-
| 'off'
|
|
269
|
-
| 'one-time-code'
|
|
270
|
-
| 'organization'
|
|
271
|
-
| 'organization-title'
|
|
272
|
-
| 'postal-code'
|
|
273
|
-
| 'street-address'
|
|
274
|
-
| 'tel'
|
|
275
|
-
| 'url'
|
|
276
|
-
| 'username'
|
|
277
|
-
),
|
|
278
248
|
/**
|
|
279
249
|
* When the clear button should appear on the right side of the text view.
|
|
280
250
|
* This property is supported only for single-line TextInput component.
|
|
@@ -380,111 +350,6 @@ type IOSProps = $ReadOnly<{|
|
|
|
380
350
|
|}>;
|
|
381
351
|
|
|
382
352
|
type AndroidProps = $ReadOnly<{|
|
|
383
|
-
/**
|
|
384
|
-
* Specifies autocomplete hints for the system, so it can provide autofill. On Android, the system will always attempt to offer autofill by using heuristics to identify the type of content.
|
|
385
|
-
* To disable autocomplete, set `autoComplete` to `off`.
|
|
386
|
-
*
|
|
387
|
-
* *Android Only*
|
|
388
|
-
*
|
|
389
|
-
* Possible values for `autoComplete` are:
|
|
390
|
-
*
|
|
391
|
-
* - `birthdate-day`
|
|
392
|
-
* - `birthdate-full`
|
|
393
|
-
* - `birthdate-month`
|
|
394
|
-
* - `birthdate-year`
|
|
395
|
-
* - `cc-csc`
|
|
396
|
-
* - `cc-exp`
|
|
397
|
-
* - `cc-exp-day`
|
|
398
|
-
* - `cc-exp-month`
|
|
399
|
-
* - `cc-exp-year`
|
|
400
|
-
* - `cc-number`
|
|
401
|
-
* - `email`
|
|
402
|
-
* - `gender`
|
|
403
|
-
* - `name`
|
|
404
|
-
* - `name-family`
|
|
405
|
-
* - `name-given`
|
|
406
|
-
* - `name-middle`
|
|
407
|
-
* - `name-middle-initial`
|
|
408
|
-
* - `name-prefix`
|
|
409
|
-
* - `name-suffix`
|
|
410
|
-
* - `password`
|
|
411
|
-
* - `password-new`
|
|
412
|
-
* - `postal-address`
|
|
413
|
-
* - `postal-address-country`
|
|
414
|
-
* - `postal-address-extended`
|
|
415
|
-
* - `postal-address-extended-postal-code`
|
|
416
|
-
* - `postal-address-locality`
|
|
417
|
-
* - `postal-address-region`
|
|
418
|
-
* - `postal-code`
|
|
419
|
-
* - `street-address`
|
|
420
|
-
* - `sms-otp`
|
|
421
|
-
* - `tel`
|
|
422
|
-
* - `tel-country-code`
|
|
423
|
-
* - `tel-national`
|
|
424
|
-
* - `tel-device`
|
|
425
|
-
* - `username`
|
|
426
|
-
* - `username-new`
|
|
427
|
-
* - `off`
|
|
428
|
-
*
|
|
429
|
-
* @platform android
|
|
430
|
-
*/
|
|
431
|
-
autoComplete?: ?(
|
|
432
|
-
| 'birthdate-day'
|
|
433
|
-
| 'birthdate-full'
|
|
434
|
-
| 'birthdate-month'
|
|
435
|
-
| 'birthdate-year'
|
|
436
|
-
| 'cc-csc'
|
|
437
|
-
| 'cc-exp'
|
|
438
|
-
| 'cc-exp-day'
|
|
439
|
-
| 'cc-exp-month'
|
|
440
|
-
| 'cc-exp-year'
|
|
441
|
-
| 'cc-number'
|
|
442
|
-
| 'email'
|
|
443
|
-
| 'gender'
|
|
444
|
-
| 'name'
|
|
445
|
-
| 'name-family'
|
|
446
|
-
| 'name-given'
|
|
447
|
-
| 'name-middle'
|
|
448
|
-
| 'name-middle-initial'
|
|
449
|
-
| 'name-prefix'
|
|
450
|
-
| 'name-suffix'
|
|
451
|
-
| 'password'
|
|
452
|
-
| 'password-new'
|
|
453
|
-
| 'postal-address'
|
|
454
|
-
| 'postal-address-country'
|
|
455
|
-
| 'postal-address-extended'
|
|
456
|
-
| 'postal-address-extended-postal-code'
|
|
457
|
-
| 'postal-address-locality'
|
|
458
|
-
| 'postal-address-region'
|
|
459
|
-
| 'postal-code'
|
|
460
|
-
| 'street-address'
|
|
461
|
-
| 'sms-otp'
|
|
462
|
-
| 'tel'
|
|
463
|
-
| 'tel-country-code'
|
|
464
|
-
| 'tel-national'
|
|
465
|
-
| 'tel-device'
|
|
466
|
-
| 'username'
|
|
467
|
-
| 'username-new'
|
|
468
|
-
| 'off'
|
|
469
|
-
// additional HTML autocomplete values
|
|
470
|
-
| 'address-line1'
|
|
471
|
-
| 'address-line2'
|
|
472
|
-
| 'bday'
|
|
473
|
-
| 'bday-day'
|
|
474
|
-
| 'bday-month'
|
|
475
|
-
| 'bday-year'
|
|
476
|
-
| 'country'
|
|
477
|
-
| 'current-password'
|
|
478
|
-
| 'honorific-prefix'
|
|
479
|
-
| 'honorific-suffix'
|
|
480
|
-
| 'additional-name'
|
|
481
|
-
| 'family-name'
|
|
482
|
-
| 'given-name'
|
|
483
|
-
| 'new-password'
|
|
484
|
-
| 'one-time-code'
|
|
485
|
-
| 'sex'
|
|
486
|
-
),
|
|
487
|
-
|
|
488
353
|
/**
|
|
489
354
|
* When provided it will set the color of the cursor (or "caret") in the component.
|
|
490
355
|
* Unlike the behavior of `selectionColor` the cursor color will be set independently
|
|
@@ -612,6 +477,127 @@ export type Props = $ReadOnly<{|
|
|
|
612
477
|
*/
|
|
613
478
|
autoCapitalize?: ?AutoCapitalize,
|
|
614
479
|
|
|
480
|
+
/**
|
|
481
|
+
* Specifies autocomplete hints for the system, so it can provide autofill.
|
|
482
|
+
* On Android, the system will always attempt to offer autofill by using heuristics to identify the type of content.
|
|
483
|
+
* To disable autocomplete, set autoComplete to off.
|
|
484
|
+
*
|
|
485
|
+
* The following values work across platforms:
|
|
486
|
+
*
|
|
487
|
+
* - `additional-name`
|
|
488
|
+
* - `address-line1`
|
|
489
|
+
* - `address-line2`
|
|
490
|
+
* - `cc-number`
|
|
491
|
+
* - `country`
|
|
492
|
+
* - `current-password`
|
|
493
|
+
* - `email`
|
|
494
|
+
* - `family-name`
|
|
495
|
+
* - `given-name`
|
|
496
|
+
* - `honorific-prefix`
|
|
497
|
+
* - `honorific-suffix`
|
|
498
|
+
* - `name`
|
|
499
|
+
* - `new-password`
|
|
500
|
+
* - `off`
|
|
501
|
+
* - `one-time-code`
|
|
502
|
+
* - `postal-code`
|
|
503
|
+
* - `street-address`
|
|
504
|
+
* - `tel`
|
|
505
|
+
* - `username`
|
|
506
|
+
*
|
|
507
|
+
* The following values work on iOS only:
|
|
508
|
+
*
|
|
509
|
+
* - `nickname`
|
|
510
|
+
* - `organization`
|
|
511
|
+
* - `organization-title`
|
|
512
|
+
* - `url`
|
|
513
|
+
*
|
|
514
|
+
* The following values work on Android only:
|
|
515
|
+
*
|
|
516
|
+
* - `birthdate-day`
|
|
517
|
+
* - `birthdate-full`
|
|
518
|
+
* - `birthdate-month`
|
|
519
|
+
* - `birthdate-year`
|
|
520
|
+
* - `cc-csc`
|
|
521
|
+
* - `cc-exp`
|
|
522
|
+
* - `cc-exp-day`
|
|
523
|
+
* - `cc-exp-month`
|
|
524
|
+
* - `cc-exp-year`
|
|
525
|
+
* - `gender`
|
|
526
|
+
* - `name-family`
|
|
527
|
+
* - `name-given`
|
|
528
|
+
* - `name-middle`
|
|
529
|
+
* - `name-middle-initial`
|
|
530
|
+
* - `name-prefix`
|
|
531
|
+
* - `name-suffix`
|
|
532
|
+
* - `password`
|
|
533
|
+
* - `password-new`
|
|
534
|
+
* - `postal-address`
|
|
535
|
+
* - `postal-address-country`
|
|
536
|
+
* - `postal-address-extended`
|
|
537
|
+
* - `postal-address-extended-postal-code`
|
|
538
|
+
* - `postal-address-locality`
|
|
539
|
+
* - `postal-address-region`
|
|
540
|
+
* - `sms-otp`
|
|
541
|
+
* - `tel-country-code`
|
|
542
|
+
* - `tel-national`
|
|
543
|
+
* - `tel-device`
|
|
544
|
+
* - `username-new`
|
|
545
|
+
*/
|
|
546
|
+
autoComplete?: ?(
|
|
547
|
+
| 'additional-name'
|
|
548
|
+
| 'address-line1'
|
|
549
|
+
| 'address-line2'
|
|
550
|
+
| 'birthdate-day'
|
|
551
|
+
| 'birthdate-full'
|
|
552
|
+
| 'birthdate-month'
|
|
553
|
+
| 'birthdate-year'
|
|
554
|
+
| 'cc-csc'
|
|
555
|
+
| 'cc-exp'
|
|
556
|
+
| 'cc-exp-day'
|
|
557
|
+
| 'cc-exp-month'
|
|
558
|
+
| 'cc-exp-year'
|
|
559
|
+
| 'cc-number'
|
|
560
|
+
| 'country'
|
|
561
|
+
| 'current-password'
|
|
562
|
+
| 'email'
|
|
563
|
+
| 'family-name'
|
|
564
|
+
| 'gender'
|
|
565
|
+
| 'given-name'
|
|
566
|
+
| 'honorific-prefix'
|
|
567
|
+
| 'honorific-suffix'
|
|
568
|
+
| 'name'
|
|
569
|
+
| 'name-family'
|
|
570
|
+
| 'name-given'
|
|
571
|
+
| 'name-middle'
|
|
572
|
+
| 'name-middle-initial'
|
|
573
|
+
| 'name-prefix'
|
|
574
|
+
| 'name-suffix'
|
|
575
|
+
| 'new-password'
|
|
576
|
+
| 'nickname'
|
|
577
|
+
| 'one-time-code'
|
|
578
|
+
| 'organization'
|
|
579
|
+
| 'organization-title'
|
|
580
|
+
| 'password'
|
|
581
|
+
| 'password-new'
|
|
582
|
+
| 'postal-address'
|
|
583
|
+
| 'postal-address-country'
|
|
584
|
+
| 'postal-address-extended'
|
|
585
|
+
| 'postal-address-extended-postal-code'
|
|
586
|
+
| 'postal-address-locality'
|
|
587
|
+
| 'postal-address-region'
|
|
588
|
+
| 'postal-code'
|
|
589
|
+
| 'street-address'
|
|
590
|
+
| 'sms-otp'
|
|
591
|
+
| 'tel'
|
|
592
|
+
| 'tel-country-code'
|
|
593
|
+
| 'tel-national'
|
|
594
|
+
| 'tel-device'
|
|
595
|
+
| 'url'
|
|
596
|
+
| 'username'
|
|
597
|
+
| 'username-new'
|
|
598
|
+
| 'off'
|
|
599
|
+
),
|
|
600
|
+
|
|
615
601
|
/**
|
|
616
602
|
* If `false`, disables auto-correct. The default value is `true`.
|
|
617
603
|
*/
|
|
@@ -1516,7 +1502,6 @@ function InternalTextInput(props: Props): React.Node {
|
|
|
1516
1502
|
};
|
|
1517
1503
|
}
|
|
1518
1504
|
|
|
1519
|
-
// $FlowFixMe[underconstrained-implicit-instantiation]
|
|
1520
1505
|
let style = flattenStyle(props.style);
|
|
1521
1506
|
|
|
1522
1507
|
if (Platform.OS === 'ios') {
|
|
@@ -1753,7 +1738,6 @@ const ExportedForwardRef: React.AbstractComponent<
|
|
|
1753
1738
|
},
|
|
1754
1739
|
forwardedRef: ReactRefSetter<TextInputInstance>,
|
|
1755
1740
|
) {
|
|
1756
|
-
// $FlowFixMe[underconstrained-implicit-instantiation]
|
|
1757
1741
|
let style = flattenStyle(restProps.style);
|
|
1758
1742
|
|
|
1759
1743
|
if (style?.verticalAlign != null) {
|