From b05ec451637e19f60446524c680fca0bd9f448f2 Mon Sep 17 00:00:00 2001 From: pnikytynskyi Date: Fri, 1 Aug 2025 15:51:15 +0200 Subject: [PATCH 1/3] fix for [OneTimePasswordField] autoComplete not working in Chrome on iOS - Context: https://github.com/radix-ui/primitives/issues/3641 --- .../one-time-password-field/src/one-time-password-field.tsx | 1 - 1 file changed, 1 deletion(-) diff --git a/packages/react/one-time-password-field/src/one-time-password-field.tsx b/packages/react/one-time-password-field/src/one-time-password-field.tsx index 791d80a7f..c733acd5d 100644 --- a/packages/react/one-time-password-field/src/one-time-password-field.tsx +++ b/packages/react/one-time-password-field/src/one-time-password-field.tsx @@ -647,7 +647,6 @@ const OneTimePasswordFieldInput = React.forwardRef< data-protonpass-ignore={supportsAutoComplete ? undefined : 'true'} data-bwignore={supportsAutoComplete ? undefined : 'true'} inputMode={validation?.inputMode} - maxLength={1} pattern={validation?.pattern} readOnly={context.readOnly} value={char} From 40142cf8f1de507685c39ef19ee7ac9573ae7734 Mon Sep 17 00:00:00 2001 From: pnikytynskyi Date: Fri, 1 Aug 2025 15:55:54 +0200 Subject: [PATCH 2/3] add logs to .changeset --- .changeset/kind-icons-tan.md | 1 + 1 file changed, 1 insertion(+) diff --git a/.changeset/kind-icons-tan.md b/.changeset/kind-icons-tan.md index 520189dbb..a0cb3675a 100644 --- a/.changeset/kind-icons-tan.md +++ b/.changeset/kind-icons-tan.md @@ -3,3 +3,4 @@ --- Fix: disable otp input +Fix: one-time-password-field autoComplete not working in Chrome on iOS From 377ed223a4682cc6eb8911e500310a45bf03d524 Mon Sep 17 00:00:00 2001 From: pnikytynskyi Date: Fri, 1 Aug 2025 16:02:15 +0200 Subject: [PATCH 3/3] add a new .changeset file --- .changeset/kind-icons-tan.md | 1 - .changeset/ready-rules-doubt.md | 5 +++++ .../one-time-password-field/src/one-time-password-field.tsx | 2 ++ 3 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 .changeset/ready-rules-doubt.md diff --git a/.changeset/kind-icons-tan.md b/.changeset/kind-icons-tan.md index a0cb3675a..520189dbb 100644 --- a/.changeset/kind-icons-tan.md +++ b/.changeset/kind-icons-tan.md @@ -3,4 +3,3 @@ --- Fix: disable otp input -Fix: one-time-password-field autoComplete not working in Chrome on iOS diff --git a/.changeset/ready-rules-doubt.md b/.changeset/ready-rules-doubt.md new file mode 100644 index 000000000..33709e1b2 --- /dev/null +++ b/.changeset/ready-rules-doubt.md @@ -0,0 +1,5 @@ +--- +'@radix-ui/react-one-time-password-field': patch +--- + +fix for [OneTimePasswordField] autoComplete not working in Chrome on iOS diff --git a/packages/react/one-time-password-field/src/one-time-password-field.tsx b/packages/react/one-time-password-field/src/one-time-password-field.tsx index c733acd5d..381034e45 100644 --- a/packages/react/one-time-password-field/src/one-time-password-field.tsx +++ b/packages/react/one-time-password-field/src/one-time-password-field.tsx @@ -567,6 +567,7 @@ const OneTimePasswordFieldInput = React.forwardRef< __scopeOneTimePasswordField, onInvalidChange, index: indexProp, + maxLength = 1, ...props }: ScopedProps, forwardedRef @@ -647,6 +648,7 @@ const OneTimePasswordFieldInput = React.forwardRef< data-protonpass-ignore={supportsAutoComplete ? undefined : 'true'} data-bwignore={supportsAutoComplete ? undefined : 'true'} inputMode={validation?.inputMode} + maxLength={maxLength} pattern={validation?.pattern} readOnly={context.readOnly} value={char}