{{-- Reset password — reached from the emailed link, which carries the token in the path and the address in the query string. Both are echoed straight back to Fortify: the token hidden, the address readonly (a reset is only valid for the address the link was issued for). Everything is escaped, so a tampered link renders as text rather than markup. Readonly keys off the *presence of the query parameter*, not off the field having a value. Keying it off the value locked a user who typed their own address and mistyped it into the typo, with no way to correct it. The new-password field is built from rather than so the group's `hint` prop can carry the policy line inside the field wrapper, between the control and the error — the escape hatch that component's docblock describes. Everything else is the ordinary library input. $request is supplied by Fortify's ResetPasswordViewResponse. --}} @extends('layouts.guest') @section('title', __('auth_pages.reset.title')) @section('content') @php $token = (string) $request->route('token'); // The link's address, when it carried one. Old input still wins for // display (form_input_value does that) so a failed submit keeps what // the user typed; only the lock is query-driven. $linkedEmail = $request->query('email'); $passwordDescribedBy = $errors->has('password') ? 'password_error password_hint' : 'password_hint'; @endphp

{{ __('auth_pages.reset.heading') }}

{{ __('auth_pages.reset.intro') }}

$errors->has('password')]) id="password" type="password" name="password" autocomplete="new-password" aria-describedby="{{ $passwordDescribedBy }}" @error('password') aria-invalid="true" @enderror required autofocus /> @endsection