сохранение пароля в safari на ios

почемуто в сафари на ios не сохраняет password credentials, когда на macos в сафари все работает как нужно. Логика такая: есть модальное окно регистрации, куда пользователь вбивает данные, далее оно закрывается и показывается модальное окно ввода ключа подтверждения, который отправлялся на введенный email. В таком сценарии почемуто не сохраняет пароль в браузере на ios. В сценарии авторизации, где пропускается этап с окном ввода ключа, safari сохраняет пароль авторизации. Попробовал добавить в окно ввода ключа input с display: none, но это не дало никаких результатов

вот пример кода формы ввода ключа, где на ios не сохраняет данные авторизации:

            <Input
              value={email}
              style={{
                display: 'none',
              }}
              name="email"
              autoComplete="email"
            />
            <Input
              value={currentUserPassword}
              style={{
                display: 'none',
              }}
              name="email"
              autoComplete="password"
            />

            <Controller
              name="code"
              control={control}
              render={({ field }) => (
                <Input
                  {...field}
                  status={errors.code && 'error'}
                  placeholder="Введите код"
                  className={cn(styles.input)}
                  }
                  size="large"
                />
              )}
            />

использую yup, компонент Controller предоставляется этой библиотекой

вот пример формы авторизации, где сохранение данных работает корректно:

<Controller
              name="email"
              control={control}
              defaultValue={(JSON.parse(localStorage.getItem('loginState') || '{}') as { email: string })?.email || ''}
              render={({ field }) => (
                <Input
                  {...field}
                  status={errors.email && 'error'}
                  placeholder="Введите почту"
                  className={styles.input}
                  size="large"
                  autoComplete="username"
                />
              )}
            />

<Controller
              name="password"
              control={control}
              defaultValue={(JSON.parse(localStorage.getItem('loginState') || '{}') as { password: string })?.password || ''}
              render={({ field }) => (
                <Input.Password
                  {...field}
                  status={errors.password && 'error'}
                  placeholder="Пароль"
                  className={styles.input}
                  prefix={
                    <RiLock2Line
                      className={cn('text-accent text-[24px]', {
                        ['text-red-500']: !!errors.password,
                      })}
                      fill="#757575"
                    />
                  }
                  size="large"
                  autoComplete="password"
                />
              )}
            />

после того, как пользователь успешно вошел в систему, страничка перезагружается. После перезагрузки возникает запрос на сохранение данных для входа

Буду признателен за любую помощь, заранее спасибо


Ответы (0 шт):