keycloakify 11.13.4 → 11.13.6
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/README.md +1 -0
- package/bin/97.index.js +26 -2
- package/login/pages/Info.js +1 -1
- package/login/pages/Info.js.map +1 -1
- package/login/pages/UpdateEmail.js +1 -1
- package/login/pages/UpdateEmail.js.map +1 -1
- package/package.json +1 -1
- package/src/bin/sync-extensions/extensionModuleMeta.ts +49 -3
- package/src/login/pages/Info.tsx +1 -1
- package/src/login/pages/UpdateEmail.tsx +1 -1
package/README.md
CHANGED
|
@@ -139,6 +139,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
|
|
|
139
139
|
<td align="center" valign="top" width="14.28%"><a href="https://waynekirimi.netlify.app/"><img src="https://avatars.githubusercontent.com/u/37283450?v=4?s=100" width="100px;" alt="Wayne Kirimi"/><br /><sub><b>Wayne Kirimi</b></sub></a><br /><a href="https://github.com/keycloakify/keycloakify/commits?author=waynemorphic" title="Code">💻</a></td>
|
|
140
140
|
<td align="center" valign="top" width="14.28%"><a href="https://github.com/discostur"><img src="https://avatars.githubusercontent.com/u/2615420?v=4?s=100" width="100px;" alt="Kilian Ries"/><br /><sub><b>Kilian Ries</b></sub></a><br /><a href="https://github.com/keycloakify/keycloakify/commits?author=discostur" title="Code">💻</a></td>
|
|
141
141
|
<td align="center" valign="top" width="14.28%"><a href="https://phasetwo.io/"><img src="https://avatars.githubusercontent.com/u/93841792?v=4?s=100" width="100px;" alt="pnzrr"/><br /><sub><b>pnzrr</b></sub></a><br /><a href="https://github.com/keycloakify/keycloakify/commits?author=pnzrr" title="Code">💻</a></td>
|
|
142
|
+
<td align="center" valign="top" width="14.28%"><a href="http://www.aaronwong.se"><img src="https://avatars.githubusercontent.com/u/450741?v=4?s=100" width="100px;" alt="Aaron Wong"/><br /><sub><b>Aaron Wong</b></sub></a><br /><a href="https://github.com/keycloakify/keycloakify/commits?author=acreations" title="Code">💻</a></td>
|
|
142
143
|
</tr>
|
|
143
144
|
</tbody>
|
|
144
145
|
</table>
|
package/bin/97.index.js
CHANGED
|
@@ -144,16 +144,40 @@ async function getExtensionModuleMetas(params) {
|
|
|
144
144
|
return configHash;
|
|
145
145
|
})();
|
|
146
146
|
const installedExtensionModules = await (async () => {
|
|
147
|
-
|
|
147
|
+
let installedExtensionModules = await (0,listInstalledModules/* listInstalledModules */.P)({
|
|
148
148
|
packageJsonFilePath: buildContext.packageJsonFilePath,
|
|
149
149
|
filter: ({ moduleName }) => moduleName.includes("keycloakify") && moduleName !== "keycloakify"
|
|
150
150
|
});
|
|
151
|
-
|
|
151
|
+
installedExtensionModules = (await Promise.all(installedExtensionModules.map(async (entry) => {
|
|
152
152
|
if (!(await (0,fs_existsAsync/* existsAsync */.o)((0,external_path_.join)(entry.dirPath, constants/* KEYCLOAK_THEME */.PC)))) {
|
|
153
153
|
return undefined;
|
|
154
154
|
}
|
|
155
155
|
return entry;
|
|
156
156
|
}))).filter((0,exclude/* exclude */.D)(undefined));
|
|
157
|
+
maybe_exclude_login_ui: {
|
|
158
|
+
const LOGIN_UI_MODULE_NAME = "@keycloakify/login-ui";
|
|
159
|
+
if (!installedExtensionModules
|
|
160
|
+
.map(({ moduleName }) => moduleName)
|
|
161
|
+
.includes(LOGIN_UI_MODULE_NAME)) {
|
|
162
|
+
break maybe_exclude_login_ui;
|
|
163
|
+
}
|
|
164
|
+
const shouldExcludeLoginUi = await (async () => {
|
|
165
|
+
for (const entry of installedExtensionModules) {
|
|
166
|
+
if (entry.moduleName === LOGIN_UI_MODULE_NAME) {
|
|
167
|
+
continue;
|
|
168
|
+
}
|
|
169
|
+
if (await (0,fs_existsAsync/* existsAsync */.o)((0,external_path_.join)(entry.dirPath, constants/* KEYCLOAK_THEME */.PC, "login", "pages", "login"))) {
|
|
170
|
+
return true;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
return false;
|
|
174
|
+
})();
|
|
175
|
+
if (!shouldExcludeLoginUi) {
|
|
176
|
+
break maybe_exclude_login_ui;
|
|
177
|
+
}
|
|
178
|
+
installedExtensionModules = installedExtensionModules.filter(({ moduleName }) => moduleName !== LOGIN_UI_MODULE_NAME);
|
|
179
|
+
}
|
|
180
|
+
return installedExtensionModules;
|
|
157
181
|
})();
|
|
158
182
|
const cacheContent = await (async () => {
|
|
159
183
|
if (!(await (0,fs_existsAsync/* existsAsync */.o)(cacheFilePath))) {
|
package/login/pages/Info.js
CHANGED
|
@@ -5,7 +5,7 @@ export default function Info(props) {
|
|
|
5
5
|
const { advancedMsgStr, msg } = i18n;
|
|
6
6
|
const { messageHeader, message, requiredActions, skipLink, pageRedirectUri, actionUri, client } = kcContext;
|
|
7
7
|
return (_jsx(Template, Object.assign({ kcContext: kcContext, i18n: i18n, doUseDefaultCss: doUseDefaultCss, classes: classes, displayMessage: false, headerNode: _jsx("span", { dangerouslySetInnerHTML: {
|
|
8
|
-
__html: kcSanitize(messageHeader
|
|
8
|
+
__html: kcSanitize(messageHeader ? advancedMsgStr(messageHeader) : message.summary)
|
|
9
9
|
} }) }, { children: _jsxs("div", Object.assign({ id: "kc-info-message" }, { children: [_jsx("p", { className: "instruction", dangerouslySetInnerHTML: {
|
|
10
10
|
__html: kcSanitize((() => {
|
|
11
11
|
var _a;
|
package/login/pages/Info.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Info.js","sourceRoot":"","sources":["../../src/login/pages/Info.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAIxD,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,KAAkE;IAC3F,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAEtE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAErC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAE5G,OAAO,CACH,KAAC,QAAQ,kBACL,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,KAAK,EACrB,UAAU,EACN,eACI,uBAAuB,EAAE;gBACrB,MAAM,EAAE,UAAU,CAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"Info.js","sourceRoot":"","sources":["../../src/login/pages/Info.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAIxD,MAAM,CAAC,OAAO,UAAU,IAAI,CAAC,KAAkE;IAC3F,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAEtE,MAAM,EAAE,cAAc,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;IAErC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IAE5G,OAAO,CACH,KAAC,QAAQ,kBACL,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,KAAK,EACrB,UAAU,EACN,eACI,uBAAuB,EAAE;gBACrB,MAAM,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;aACtF,GACH,gBAGN,6BAAK,EAAE,EAAC,iBAAiB,iBACrB,YACI,SAAS,EAAC,aAAa,EACvB,uBAAuB,EAAE;wBACrB,MAAM,EAAE,UAAU,CACd,CAAC,GAAG,EAAE;;4BACF,IAAI,IAAI,GAAG,MAAA,OAAO,CAAC,OAAO,0CAAE,IAAI,EAAE,CAAC;4BAEnC,IAAI,eAAe,EAAE;gCACjB,IAAI,IAAI,MAAM,CAAC;gCAEf,IAAI,IAAI,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,cAAc,CAAC,kBAAkB,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gCAE7G,IAAI,IAAI,MAAM,CAAC;6BAClB;4BAED,OAAO,IAAI,CAAC;wBAChB,CAAC,CAAC,EAAE,CACP;qBACJ,GACH,EACD,CAAC,GAAG,EAAE;oBACH,IAAI,QAAQ,EAAE;wBACV,OAAO,IAAI,CAAC;qBACf;oBAED,IAAI,eAAe,EAAE;wBACjB,OAAO,CACH,sBACI,0BAAG,IAAI,EAAE,eAAe,gBAAG,GAAG,CAAC,mBAAmB,CAAC,IAAK,GACxD,CACP,CAAC;qBACL;oBACD,IAAI,SAAS,EAAE;wBACX,OAAO,CACH,sBACI,0BAAG,IAAI,EAAE,SAAS,gBAAG,GAAG,CAAC,mBAAmB,CAAC,IAAK,GAClD,CACP,CAAC;qBACL;oBAED,IAAI,MAAM,CAAC,OAAO,EAAE;wBAChB,OAAO,CACH,sBACI,0BAAG,IAAI,EAAE,MAAM,CAAC,OAAO,gBAAG,GAAG,CAAC,mBAAmB,CAAC,IAAK,GACvD,CACP,CAAC;qBACL;gBACL,CAAC,CAAC,EAAE,KACF,IACC,CACd,CAAC;AACN,CAAC"}
|
|
@@ -10,7 +10,7 @@ export default function UpdateEmail(props) {
|
|
|
10
10
|
const { msg, msgStr } = i18n;
|
|
11
11
|
const [isFormSubmittable, setIsFormSubmittable] = useState(false);
|
|
12
12
|
const { url, messagesPerField, isAppInitiatedAction } = kcContext;
|
|
13
|
-
return (_jsx(Template, Object.assign({ kcContext: kcContext, i18n: i18n, doUseDefaultCss: doUseDefaultCss, classes: classes, displayMessage: messagesPerField.exists("global"), displayRequiredFields: true, headerNode: msg("updateEmailTitle") }, { children: _jsxs("form", Object.assign({ id: "kc-update-email-form", className: kcClsx("kcFormClass"), action: url.loginAction, method: "post" }, { children: [_jsx(UserProfileFormFields, { kcContext: kcContext, i18n: i18n, kcClsx: kcClsx, onIsFormSubmittableValueChange: setIsFormSubmittable, doMakeUserConfirmPassword: doMakeUserConfirmPassword }), _jsxs("div", Object.assign({ className: kcClsx("kcFormGroupClass") }, { children: [_jsx("div", Object.assign({ id: "kc-form-options", className: kcClsx("kcFormOptionsClass") }, { children: _jsx("div", { className: kcClsx("kcFormOptionsWrapperClass") }) })), _jsx(LogoutOtherSessions, { kcClsx: kcClsx, i18n: i18n }), _jsxs("div", Object.assign({ id: "kc-form-buttons", className: kcClsx("kcFormButtonsClass") }, { children: [_jsx("input", { disabled: !isFormSubmittable, className: kcClsx("kcButtonClass", "kcButtonPrimaryClass",
|
|
13
|
+
return (_jsx(Template, Object.assign({ kcContext: kcContext, i18n: i18n, doUseDefaultCss: doUseDefaultCss, classes: classes, displayMessage: messagesPerField.exists("global"), displayRequiredFields: true, headerNode: msg("updateEmailTitle") }, { children: _jsxs("form", Object.assign({ id: "kc-update-email-form", className: kcClsx("kcFormClass"), action: url.loginAction, method: "post" }, { children: [_jsx(UserProfileFormFields, { kcContext: kcContext, i18n: i18n, kcClsx: kcClsx, onIsFormSubmittableValueChange: setIsFormSubmittable, doMakeUserConfirmPassword: doMakeUserConfirmPassword }), _jsxs("div", Object.assign({ className: kcClsx("kcFormGroupClass") }, { children: [_jsx("div", Object.assign({ id: "kc-form-options", className: kcClsx("kcFormOptionsClass") }, { children: _jsx("div", { className: kcClsx("kcFormOptionsWrapperClass") }) })), _jsx(LogoutOtherSessions, { kcClsx: kcClsx, i18n: i18n }), _jsxs("div", Object.assign({ id: "kc-form-buttons", className: kcClsx("kcFormButtonsClass") }, { children: [_jsx("input", { disabled: !isFormSubmittable, className: kcClsx("kcButtonClass", "kcButtonPrimaryClass", !isAppInitiatedAction && "kcButtonBlockClass", "kcButtonLargeClass"), type: "submit", value: msgStr("doSubmit") }), isAppInitiatedAction && (_jsx("button", Object.assign({ className: kcClsx("kcButtonClass", "kcButtonDefaultClass", "kcButtonLargeClass"), type: "submit", name: "cancel-aia", value: "true" }, { children: msg("doCancel") })))] }))] }))] })) })));
|
|
14
14
|
}
|
|
15
15
|
function LogoutOtherSessions(props) {
|
|
16
16
|
const { kcClsx, i18n } = props;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UpdateEmail.js","sourceRoot":"","sources":["../../src/login/pages/UpdateEmail.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEjC,OAAO,EAAE,SAAS,EAAe,MAAM,8BAA8B,CAAC;AAWtE,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAuB;IACvD,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,OAAO,EAAE,qBAAqB,EAAE,yBAAyB,EAAE,GAAG,KAAK,CAAC;IAExH,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;QACzB,eAAe;QACf,OAAO;KACV,CAAC,CAAC;IAEH,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAE7B,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAElE,MAAM,EAAE,GAAG,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,GAAG,SAAS,CAAC;IAElE,OAAO,CACH,KAAC,QAAQ,kBACL,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,eAAe,EAChC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,EACjD,qBAAqB,QACrB,UAAU,EAAE,GAAG,CAAC,kBAAkB,CAAC,gBAEnC,8BAAM,EAAE,EAAC,sBAAsB,EAAC,SAAS,EAAE,MAAM,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,WAAW,EAAE,MAAM,EAAC,MAAM,iBACpG,KAAC,qBAAqB,IAClB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,MAAM,EACd,8BAA8B,EAAE,oBAAoB,EACpD,yBAAyB,EAAE,yBAAyB,GACtD,EAEF,6BAAK,SAAS,EAAE,MAAM,CAAC,kBAAkB,CAAC,iBACtC,4BAAK,EAAE,EAAC,iBAAiB,EAAC,SAAS,EAAE,MAAM,CAAC,oBAAoB,CAAC,gBAC7D,cAAK,SAAS,EAAE,MAAM,CAAC,2BAA2B,CAAC,GAAI,IACrD,EAEN,KAAC,mBAAmB,IAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,GAAI,EAEnD,6BAAK,EAAE,EAAC,iBAAiB,EAAC,SAAS,EAAE,MAAM,CAAC,oBAAoB,CAAC,iBAC7D,gBACI,QAAQ,EAAE,CAAC,iBAAiB,EAC5B,SAAS,EAAE,MAAM,CACb,eAAe,EACf,sBAAsB,EACtB,CAAC,
|
|
1
|
+
{"version":3,"file":"UpdateEmail.js","sourceRoot":"","sources":["../../src/login/pages/UpdateEmail.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -114,15 +114,15 @@ export async function getExtensionModuleMetas(params: {
|
|
|
114
114
|
})();
|
|
115
115
|
|
|
116
116
|
const installedExtensionModules = await (async () => {
|
|
117
|
-
|
|
117
|
+
let installedExtensionModules = await listInstalledModules({
|
|
118
118
|
packageJsonFilePath: buildContext.packageJsonFilePath,
|
|
119
119
|
filter: ({ moduleName }) =>
|
|
120
120
|
moduleName.includes("keycloakify") && moduleName !== "keycloakify"
|
|
121
121
|
});
|
|
122
122
|
|
|
123
|
-
|
|
123
|
+
installedExtensionModules = (
|
|
124
124
|
await Promise.all(
|
|
125
|
-
|
|
125
|
+
installedExtensionModules.map(async entry => {
|
|
126
126
|
if (!(await existsAsync(pathJoin(entry.dirPath, KEYCLOAK_THEME)))) {
|
|
127
127
|
return undefined;
|
|
128
128
|
}
|
|
@@ -130,6 +130,52 @@ export async function getExtensionModuleMetas(params: {
|
|
|
130
130
|
})
|
|
131
131
|
)
|
|
132
132
|
).filter(exclude(undefined));
|
|
133
|
+
|
|
134
|
+
maybe_exclude_login_ui: {
|
|
135
|
+
const LOGIN_UI_MODULE_NAME = "@keycloakify/login-ui";
|
|
136
|
+
|
|
137
|
+
if (
|
|
138
|
+
!installedExtensionModules
|
|
139
|
+
.map(({ moduleName }) => moduleName)
|
|
140
|
+
.includes(LOGIN_UI_MODULE_NAME)
|
|
141
|
+
) {
|
|
142
|
+
break maybe_exclude_login_ui;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
const shouldExcludeLoginUi = await (async () => {
|
|
146
|
+
for (const entry of installedExtensionModules) {
|
|
147
|
+
if (entry.moduleName === LOGIN_UI_MODULE_NAME) {
|
|
148
|
+
continue;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
if (
|
|
152
|
+
await existsAsync(
|
|
153
|
+
pathJoin(
|
|
154
|
+
entry.dirPath,
|
|
155
|
+
KEYCLOAK_THEME,
|
|
156
|
+
"login",
|
|
157
|
+
"pages",
|
|
158
|
+
"login"
|
|
159
|
+
)
|
|
160
|
+
)
|
|
161
|
+
) {
|
|
162
|
+
return true;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
return false;
|
|
167
|
+
})();
|
|
168
|
+
|
|
169
|
+
if (!shouldExcludeLoginUi) {
|
|
170
|
+
break maybe_exclude_login_ui;
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
installedExtensionModules = installedExtensionModules.filter(
|
|
174
|
+
({ moduleName }) => moduleName !== LOGIN_UI_MODULE_NAME
|
|
175
|
+
);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
return installedExtensionModules;
|
|
133
179
|
})();
|
|
134
180
|
|
|
135
181
|
const cacheContent = await (async () => {
|
package/src/login/pages/Info.tsx
CHANGED
|
@@ -20,7 +20,7 @@ export default function Info(props: PageProps<Extract<KcContext, { pageId: "info
|
|
|
20
20
|
headerNode={
|
|
21
21
|
<span
|
|
22
22
|
dangerouslySetInnerHTML={{
|
|
23
|
-
__html: kcSanitize(messageHeader
|
|
23
|
+
__html: kcSanitize(messageHeader ? advancedMsgStr(messageHeader) : message.summary)
|
|
24
24
|
}}
|
|
25
25
|
/>
|
|
26
26
|
}
|
|
@@ -58,7 +58,7 @@ export default function UpdateEmail(props: UpdateEmailProps) {
|
|
|
58
58
|
className={kcClsx(
|
|
59
59
|
"kcButtonClass",
|
|
60
60
|
"kcButtonPrimaryClass",
|
|
61
|
-
|
|
61
|
+
!isAppInitiatedAction && "kcButtonBlockClass",
|
|
62
62
|
"kcButtonLargeClass"
|
|
63
63
|
)}
|
|
64
64
|
type="submit"
|