keycloakify 10.0.0-rc.105 → 10.0.0-rc.107
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/31.index.js +1 -1
- package/bin/shared/buildContext.js.map +1 -1
- package/login/KcContext/KcContext.d.ts +7 -9
- package/login/KcContext/KcContext.js.map +1 -1
- package/login/KcContext/kcContextMocks.js +1 -2
- package/login/KcContext/kcContextMocks.js.map +1 -1
- package/login/i18n/i18n.d.ts +3 -4
- package/login/i18n/i18n.js +15 -12
- package/login/i18n/i18n.js.map +1 -1
- package/login/i18n/useI18n.d.ts +2 -2
- package/login/pages/Info.js +2 -2
- package/login/pages/Info.js.map +1 -1
- package/login/pages/SelectAuthenticator.js +2 -2
- package/login/pages/SelectAuthenticator.js.map +1 -1
- package/login/pages/WebauthnAuthenticate.js +3 -3
- package/login/pages/WebauthnAuthenticate.js.map +1 -1
- package/package.json +1 -5
- package/src/bin/keycloakify/generateFtl/kcContextDeclarationTemplate.ftl +91 -28
- package/src/bin/shared/buildContext.ts +1 -1
- package/src/login/KcContext/KcContext.ts +7 -26
- package/src/login/KcContext/kcContextMocks.ts +1 -2
- package/src/login/i18n/i18n.tsx +19 -17
- package/src/login/pages/Info.tsx +2 -2
- package/src/login/pages/SelectAuthenticator.tsx +4 -4
- package/src/login/pages/WebauthnAuthenticate.tsx +5 -5
- package/stories/login/pages/Info.stories.tsx +7 -2
- package/stories/login/pages/Register.stories.tsx +5 -3
- package/stories/login/pages/SelectAuthenticator.stories.tsx +26 -0
- package/stories/login/pages/Terms.stories.tsx +6 -2
- package/vite-plugin/index.js +1 -1
- package/src/tools/ExtractAfterStartingWith.ts +0 -4
- package/tools/ExtractAfterStartingWith.d.ts +0 -1
- package/tools/ExtractAfterStartingWith.js +0 -2
- package/tools/ExtractAfterStartingWith.js.map +0 -1
@@ -8,7 +8,7 @@ export default function SelectAuthenticator(props: PageProps<Extract<KcContext,
|
|
8
8
|
const { url, auth } = kcContext;
|
9
9
|
|
10
10
|
const { kcClsx } = getKcClsx({ doUseDefaultCss, classes });
|
11
|
-
const { msg } = i18n;
|
11
|
+
const { msg, advancedMsg } = i18n;
|
12
12
|
|
13
13
|
return (
|
14
14
|
<Template
|
@@ -30,11 +30,11 @@ export default function SelectAuthenticator(props: PageProps<Extract<KcContext,
|
|
30
30
|
value={authenticationSelection.authExecId}
|
31
31
|
>
|
32
32
|
<div className={kcClsx("kcSelectAuthListItemIconClass")}>
|
33
|
-
<i className={kcClsx(authenticationSelection.iconCssClass
|
33
|
+
<i className={kcClsx("kcSelectAuthListItemIconPropertyClass", authenticationSelection.iconCssClass)} />
|
34
34
|
</div>
|
35
35
|
<div className={kcClsx("kcSelectAuthListItemBodyClass")}>
|
36
|
-
<div className={kcClsx("kcSelectAuthListItemHeadingClass")}>{
|
37
|
-
<div className={kcClsx("kcSelectAuthListItemDescriptionClass")}>{
|
36
|
+
<div className={kcClsx("kcSelectAuthListItemHeadingClass")}>{advancedMsg(authenticationSelection.displayName)}</div>
|
37
|
+
<div className={kcClsx("kcSelectAuthListItemDescriptionClass")}>{advancedMsg(authenticationSelection.helpText)}</div>
|
38
38
|
</div>
|
39
39
|
<div className={kcClsx("kcSelectAuthListItemFillClass")} />
|
40
40
|
<div className={kcClsx("kcSelectAuthListItemArrowClass")}>
|
@@ -204,13 +204,13 @@ export default function WebauthnAuthenticate(props: PageProps<Extract<KcContext,
|
|
204
204
|
className={kcClsx("kcSelectAuthListItemDescriptionClass")}
|
205
205
|
>
|
206
206
|
{authenticator.transports.displayNameProperties
|
207
|
-
.map((
|
208
|
-
|
207
|
+
.map((displayNameProperty, i, arr) => ({
|
208
|
+
displayNameProperty,
|
209
209
|
hasNext: i !== arr.length - 1
|
210
210
|
}))
|
211
|
-
.map(({
|
212
|
-
<Fragment key={
|
213
|
-
|
211
|
+
.map(({ displayNameProperty, hasNext }) => (
|
212
|
+
<Fragment key={displayNameProperty}>
|
213
|
+
{advancedMsg(displayNameProperty)}
|
214
214
|
{hasNext && <span>, </span>}
|
215
215
|
</Fragment>
|
216
216
|
))}
|
@@ -43,9 +43,14 @@ export const WithRequiredActions: Story = {
|
|
43
43
|
<KcPageStory
|
44
44
|
kcContext={{
|
45
45
|
message: {
|
46
|
-
summary: "
|
46
|
+
summary: "Required actions: "
|
47
47
|
},
|
48
|
-
requiredActions: ["CONFIGURE_TOTP", "UPDATE_PROFILE", "VERIFY_EMAIL"]
|
48
|
+
requiredActions: ["CONFIGURE_TOTP", "UPDATE_PROFILE", "VERIFY_EMAIL", "CUSTOM_ACTION"],
|
49
|
+
"x-keycloakify": {
|
50
|
+
messages: {
|
51
|
+
"requiredAction.CUSTOM_ACTION": "Custom action"
|
52
|
+
}
|
53
|
+
}
|
49
54
|
}}
|
50
55
|
/>
|
51
56
|
)
|
@@ -69,7 +69,7 @@ export const WithRestrictedToMITStudents: Story = {
|
|
69
69
|
}
|
70
70
|
},
|
71
71
|
"x-keycloakify": {
|
72
|
-
|
72
|
+
messages: {
|
73
73
|
"${profile.attributes.email.inputHelperTextBefore}": "Please use your MIT or Berkeley email.",
|
74
74
|
"${profile.attributes.email.pattern.error}":
|
75
75
|
"This is not an MIT (<strong>@mit.edu</strong>) nor a Berkeley (<strong>@berkeley.edu</strong>) email."
|
@@ -103,7 +103,7 @@ export const WithFavoritePet: Story = {
|
|
103
103
|
}
|
104
104
|
},
|
105
105
|
"x-keycloakify": {
|
106
|
-
|
106
|
+
messages: {
|
107
107
|
"${profile.attributes.favoritePet}": "Favorite Pet",
|
108
108
|
"${profile.attributes.favoritePet.options.cat}": "Fluffy Cat",
|
109
109
|
"${profile.attributes.favoritePet.options.dog}": "Loyal Dog",
|
@@ -177,7 +177,9 @@ export const WithTermsAcceptance: Story = {
|
|
177
177
|
kcContext={{
|
178
178
|
termsAcceptanceRequired: true,
|
179
179
|
"x-keycloakify": {
|
180
|
-
|
180
|
+
messages: {
|
181
|
+
termsText: "<a href='https://example.com/terms'>Service Terms of Use</a>"
|
182
|
+
}
|
181
183
|
}
|
182
184
|
}}
|
183
185
|
/>
|
@@ -41,3 +41,29 @@ export const WithDifferentAuthenticationMethods: Story = {
|
|
41
41
|
/>
|
42
42
|
)
|
43
43
|
};
|
44
|
+
|
45
|
+
export const WithRealmTranslations: Story = {
|
46
|
+
render: () => (
|
47
|
+
<KcPageStory
|
48
|
+
kcContext={{
|
49
|
+
auth: {
|
50
|
+
authenticationSelections: [
|
51
|
+
{
|
52
|
+
authExecId: "f0c22855-eda7-4092-8565-0c22f77d2ffb",
|
53
|
+
displayName: "home-idp-discovery-display-name",
|
54
|
+
helpText: "home-idp-discovery-help-text",
|
55
|
+
iconCssClass: "kcAuthenticatorDefaultClass"
|
56
|
+
}
|
57
|
+
]
|
58
|
+
},
|
59
|
+
["x-keycloakify"]: {
|
60
|
+
messages: {
|
61
|
+
"${home-idp-discovery-display-name}": "Home identity provider",
|
62
|
+
"${home-idp-discovery-help-text}":
|
63
|
+
"Sign in via your home identity provider which will be automatically determined based on your provided email address."
|
64
|
+
}
|
65
|
+
}
|
66
|
+
}}
|
67
|
+
/>
|
68
|
+
)
|
69
|
+
};
|
@@ -18,7 +18,9 @@ export const Default: Story = {
|
|
18
18
|
<KcPageStory
|
19
19
|
kcContext={{
|
20
20
|
"x-keycloakify": {
|
21
|
-
|
21
|
+
messages: {
|
22
|
+
termsText: "<p>My terms in <strong>English</strong></p>"
|
23
|
+
}
|
22
24
|
}
|
23
25
|
}}
|
24
26
|
/>
|
@@ -34,7 +36,9 @@ export const French: Story = {
|
|
34
36
|
},
|
35
37
|
"x-keycloakify": {
|
36
38
|
// cSpell: disable
|
37
|
-
|
39
|
+
messages: {
|
40
|
+
termsText: "<p>Mes terme en <strong>Français</strong></p>"
|
41
|
+
}
|
38
42
|
// cSpell: enable
|
39
43
|
}
|
40
44
|
}}
|
package/vite-plugin/index.js
CHANGED
@@ -1 +0,0 @@
|
|
1
|
-
export type ExtractAfterStartingWith<Prefix extends string, StrEnum> = StrEnum extends `${Prefix}${infer U}` ? U : never;
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"ExtractAfterStartingWith.js","sourceRoot":"","sources":["../src/tools/ExtractAfterStartingWith.ts"],"names":[],"mappings":""}
|