keycloakify 7.0.0-rc.6 → 7.0.0-rc.7
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/bin/eject-keycloak-page.js +1 -1
- package/bin/eject-keycloak-page.js.map +1 -1
- package/bin/initialize-email-theme.js +6 -2
- package/bin/initialize-email-theme.js.map +1 -1
- package/login/Template.js +2 -2
- package/login/Template.js.map +1 -1
- package/login/TemplateProps.d.ts +1 -1
- package/login/TemplateProps.js.map +1 -1
- package/login/pages/Error.js +1 -1
- package/login/pages/Error.js.map +1 -1
- package/login/pages/IdpReviewUserProfile.js +1 -1
- package/login/pages/IdpReviewUserProfile.js.map +1 -1
- package/login/pages/Info.js +2 -2
- package/login/pages/Info.js.map +1 -1
- package/login/pages/Login.js +4 -4
- package/login/pages/Login.js.map +1 -1
- package/login/pages/LoginConfigTotp.js +1 -1
- package/login/pages/LoginConfigTotp.js.map +1 -1
- package/login/pages/LoginIdpLinkConfirm.js +1 -1
- package/login/pages/LoginIdpLinkConfirm.js.map +1 -1
- package/login/pages/LoginIdpLinkEmail.js +2 -2
- package/login/pages/LoginIdpLinkEmail.js.map +1 -1
- package/login/pages/LoginOtp.js +1 -1
- package/login/pages/LoginOtp.js.map +1 -1
- package/login/pages/LoginPageExpired.js +2 -2
- package/login/pages/LoginPageExpired.js.map +1 -1
- package/login/pages/LoginPassword.js +1 -1
- package/login/pages/LoginPassword.js.map +1 -1
- package/login/pages/LoginResetPassword.js +2 -2
- package/login/pages/LoginResetPassword.js.map +1 -1
- package/login/pages/LoginUpdatePassword.js +1 -1
- package/login/pages/LoginUpdatePassword.js.map +1 -1
- package/login/pages/LoginUpdateProfile.js +1 -1
- package/login/pages/LoginUpdateProfile.js.map +1 -1
- package/login/pages/LoginUsername.js +4 -4
- package/login/pages/LoginUsername.js.map +1 -1
- package/login/pages/LoginVerifyEmail.js +2 -2
- package/login/pages/LoginVerifyEmail.js.map +1 -1
- package/login/pages/LogoutConfirm.js +2 -2
- package/login/pages/LogoutConfirm.js.map +1 -1
- package/login/pages/Register.js +1 -1
- package/login/pages/Register.js.map +1 -1
- package/login/pages/RegisterUserProfile.js +1 -1
- package/login/pages/RegisterUserProfile.js.map +1 -1
- package/login/pages/Terms.js +2 -2
- package/login/pages/Terms.js.map +1 -1
- package/login/pages/UpdateUserProfile.js +1 -1
- package/login/pages/UpdateUserProfile.js.map +1 -1
- package/login/pages/WebauthnAuthenticate.js +1 -1
- package/login/pages/WebauthnAuthenticate.js.map +1 -1
- package/package.json +1 -1
- package/src/bin/eject-keycloak-page.ts +1 -1
- package/src/bin/initialize-email-theme.ts +9 -1
- package/src/login/Template.tsx +3 -3
- package/src/login/TemplateProps.ts +2 -1
- package/src/login/pages/Error.tsx +12 -17
- package/src/login/pages/IdpReviewUserProfile.tsx +27 -31
- package/src/login/pages/Info.tsx +22 -23
- package/src/login/pages/Login.tsx +143 -144
- package/src/login/pages/LoginConfigTotp.tsx +135 -143
- package/src/login/pages/LoginIdpLinkConfirm.tsx +34 -38
- package/src/login/pages/LoginIdpLinkEmail.tsx +11 -17
- package/src/login/pages/LoginOtp.tsx +44 -48
- package/src/login/pages/LoginPageExpired.tsx +14 -21
- package/src/login/pages/LoginPassword.tsx +50 -54
- package/src/login/pages/LoginResetPassword.tsx +44 -45
- package/src/login/pages/LoginUpdatePassword.tsx +96 -100
- package/src/login/pages/LoginUpdateProfile.tsx +100 -107
- package/src/login/pages/LoginUsername.tsx +108 -109
- package/src/login/pages/LoginVerifyEmail.tsx +10 -17
- package/src/login/pages/LogoutConfirm.tsx +33 -40
- package/src/login/pages/Register.tsx +120 -127
- package/src/login/pages/RegisterUserProfile.tsx +36 -37
- package/src/login/pages/Terms.tsx +26 -33
- package/src/login/pages/UpdateUserProfile.tsx +46 -50
- package/src/login/pages/WebauthnAuthenticate.tsx +87 -96
@@ -94,111 +94,102 @@ export default function WebauthnAuthenticate(props: PageProps<Extract<KcContext,
|
|
94
94
|
const [error, setError] = useState("");
|
95
95
|
|
96
96
|
return (
|
97
|
-
<Template
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
<
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
97
|
+
<Template {...{ kcContext, i18n, doUseDefaultCss, classes }} headerNode={msg("webauthn-login-title")}>
|
98
|
+
<div id="kc-form-webauthn" className={getClassName("kcFormClass")}>
|
99
|
+
<form id="webauth" action={url.loginAction} ref={webAuthForm} method="post">
|
100
|
+
<input type="hidden" id="clientDataJSON" name="clientDataJSON" value={clientDataJSON} />
|
101
|
+
<input type="hidden" id="authenticatorData" name="authenticatorData" value={authenticatorData} />
|
102
|
+
<input type="hidden" id="signature" name="signature" value={signature} />
|
103
|
+
<input type="hidden" id="credentialId" name="credentialId" value={credentialId} />
|
104
|
+
<input type="hidden" id="userHandle" name="userHandle" value={userHandle} />
|
105
|
+
<input type="hidden" id="error" name="error" value={error} />
|
106
|
+
</form>
|
107
|
+
<div className={getClassName("kcFormGroupClass")}>
|
108
|
+
{authenticators &&
|
109
|
+
(() => (
|
110
|
+
<form id="authn_select" className={getClassName("kcFormClass")}>
|
111
|
+
{authenticators.authenticators.map(authenticator => (
|
112
|
+
<input type="hidden" name="authn_use_chk" value={authenticator.credentialId} key={authenticator.credentialId} />
|
113
|
+
))}
|
114
|
+
</form>
|
115
|
+
))()}
|
116
|
+
{authenticators &&
|
117
|
+
shouldDisplayAuthenticators &&
|
118
|
+
(() => (
|
119
|
+
<>
|
120
|
+
{authenticators.authenticators.length > 1 && (
|
121
|
+
<p className={getClassName("kcSelectAuthListItemTitle")}>{msg("webauthn-available-authenticators")}</p>
|
122
|
+
)}
|
123
|
+
<div className={getClassName("kcFormClass")}>
|
114
124
|
{authenticators.authenticators.map(authenticator => (
|
115
|
-
<
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
<i
|
136
|
-
className={clsx(
|
137
|
-
(() => {
|
138
|
-
const className = getClassName(authenticator.transports.iconClass as any);
|
139
|
-
return className.includes(" ")
|
140
|
-
? className
|
141
|
-
: [className, getClassName("kcWebAuthnDefaultIcon")];
|
142
|
-
})(),
|
143
|
-
getClassName("kcSelectAuthListItemIconPropertyClass")
|
144
|
-
)}
|
145
|
-
/>
|
125
|
+
<div id="kc-webauthn-authenticator" className={getClassName("kcSelectAuthListItemClass")}>
|
126
|
+
<div className={getClassName("kcSelectAuthListItemIconClass")}>
|
127
|
+
<i
|
128
|
+
className={clsx(
|
129
|
+
(() => {
|
130
|
+
const className = getClassName(authenticator.transports.iconClass as any);
|
131
|
+
return className.includes(" ")
|
132
|
+
? className
|
133
|
+
: [className, getClassName("kcWebAuthnDefaultIcon")];
|
134
|
+
})(),
|
135
|
+
getClassName("kcSelectAuthListItemIconPropertyClass")
|
136
|
+
)}
|
137
|
+
/>
|
138
|
+
</div>
|
139
|
+
<div className={getClassName("kcSelectAuthListItemBodyClass")}>
|
140
|
+
<div
|
141
|
+
id="kc-webauthn-authenticator-label"
|
142
|
+
className={getClassName("kcSelectAuthListItemHeadingClass")}
|
143
|
+
>
|
144
|
+
{authenticator.label}
|
146
145
|
</div>
|
147
|
-
|
146
|
+
|
147
|
+
{authenticator.transports && authenticator.transports.displayNameProperties.length && (
|
148
148
|
<div
|
149
|
-
id="kc-webauthn-authenticator-
|
150
|
-
className={getClassName("
|
149
|
+
id="kc-webauthn-authenticator-transport"
|
150
|
+
className={getClassName("kcSelectAuthListItemDescriptionClass")}
|
151
151
|
>
|
152
|
-
{authenticator.
|
152
|
+
{authenticator.transports.displayNameProperties.map(
|
153
|
+
(transport: MessageKey, index: number) => (
|
154
|
+
<>
|
155
|
+
<span>{msg(transport)}</span>
|
156
|
+
{index < authenticator.transports.displayNameProperties.length - 1 && (
|
157
|
+
<span>{", "}</span>
|
158
|
+
)}
|
159
|
+
</>
|
160
|
+
)
|
161
|
+
)}
|
153
162
|
</div>
|
163
|
+
)}
|
154
164
|
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
className={getClassName("kcSelectAuthListItemDescriptionClass")}
|
159
|
-
>
|
160
|
-
{authenticator.transports.displayNameProperties.map(
|
161
|
-
(transport: MessageKey, index: number) => (
|
162
|
-
<>
|
163
|
-
<span>{msg(transport)}</span>
|
164
|
-
{index < authenticator.transports.displayNameProperties.length - 1 && (
|
165
|
-
<span>{", "}</span>
|
166
|
-
)}
|
167
|
-
</>
|
168
|
-
)
|
169
|
-
)}
|
170
|
-
</div>
|
171
|
-
)}
|
172
|
-
|
173
|
-
<div className={getClassName("kcSelectAuthListItemDescriptionClass")}>
|
174
|
-
<span id="kc-webauthn-authenticator-created-label">{msg("webauthn-createdAt-label")}</span>
|
175
|
-
<span id="kc-webauthn-authenticator-created">{authenticator.createdAt}</span>
|
176
|
-
</div>
|
165
|
+
<div className={getClassName("kcSelectAuthListItemDescriptionClass")}>
|
166
|
+
<span id="kc-webauthn-authenticator-created-label">{msg("webauthn-createdAt-label")}</span>
|
167
|
+
<span id="kc-webauthn-authenticator-created">{authenticator.createdAt}</span>
|
177
168
|
</div>
|
178
|
-
<div className={getClassName("kcSelectAuthListItemFillClass")} />
|
179
169
|
</div>
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
)
|
197
|
-
|
198
|
-
|
170
|
+
<div className={getClassName("kcSelectAuthListItemFillClass")} />
|
171
|
+
</div>
|
172
|
+
))}
|
173
|
+
</div>
|
174
|
+
</>
|
175
|
+
))()}
|
176
|
+
<div id="kc-form-buttons" className={getClassName("kcFormButtonsClass")}>
|
177
|
+
<input
|
178
|
+
id="authenticateWebAuthnButton"
|
179
|
+
type="button"
|
180
|
+
onClick={webAuthnAuthenticate}
|
181
|
+
autoFocus={true}
|
182
|
+
value={msgStr("webauthn-doAuthenticate")}
|
183
|
+
className={clsx(
|
184
|
+
getClassName("kcButtonClass"),
|
185
|
+
getClassName("kcButtonPrimaryClass"),
|
186
|
+
getClassName("kcButtonBlockClass"),
|
187
|
+
getClassName("kcButtonLargeClass")
|
188
|
+
)}
|
189
|
+
/>
|
199
190
|
</div>
|
200
191
|
</div>
|
201
|
-
|
202
|
-
|
192
|
+
</div>
|
193
|
+
</Template>
|
203
194
|
);
|
204
195
|
}
|