keycloakify 8.0.0-rc.1 → 8.0.0-rc.3
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 +8 -3
- package/bin/download-builtin-keycloak-theme.js +1 -3
- package/bin/download-builtin-keycloak-theme.js.map +1 -1
- package/bin/keycloakify/generateFtl/ftl_object_to_js_code_declaring_an_object.ftl +11 -0
- package/package.json +1 -1
- package/src/bin/download-builtin-keycloak-theme.ts +0 -4
- package/src/bin/keycloakify/generateFtl/ftl_object_to_js_code_declaring_an_object.ftl +11 -0
package/README.md
CHANGED
@@ -125,7 +125,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
|
|
125
125
|
|
126
126
|
# Changelog highlights
|
127
127
|
|
128
|
-
##
|
128
|
+
## 8.0 (candidate)
|
129
129
|
|
130
130
|
- Much smaller .jar size. 70.2 MB -> 7.8 MB.
|
131
131
|
Keycloakify now detects which of the static resources from the default theme are actually used by your theme and only include those in the .jar.
|
@@ -138,11 +138,15 @@ There are very few breaking changes in this major version.
|
|
138
138
|
- The [`--external-assets` build option has been removed](https://docs.keycloakify.dev/v/v7/build-options#external-assets-deprecated) it was a performance optimization that is no longer relevant now that
|
139
139
|
we have lazy loading.
|
140
140
|
|
141
|
+
- `kcContext.usernameEditDisabled` is now `kcContext.usernameHidden`, the type was lying, it has been updated to reflect what's actually on the `kcContext` at runtime.
|
142
|
+
If you want to see in detail what should be updated [see issue](https://github.com/keycloakify/keycloakify/pull/399), or you can search and replace `usernameEditDisabled` -> `usernameHidden` it'll do the trick.
|
143
|
+
|
141
144
|
- The `usePrepareTemplate` prototype has been changed, you can search and replace:
|
142
145
|
|
143
146
|
`src/keycloak-theme/login/Template.tsx`
|
144
147
|
|
145
148
|
```ts
|
149
|
+
url,
|
146
150
|
"stylesCommon": [
|
147
151
|
"node_modules/patternfly/dist/css/patternfly.min.css",
|
148
152
|
"node_modules/patternfly/dist/css/patternfly-additions.min.css",
|
@@ -167,6 +171,7 @@ and
|
|
167
171
|
`src/keycloak-theme/account/Template.css`
|
168
172
|
|
169
173
|
```ts
|
174
|
+
url,
|
170
175
|
"stylesCommon": ["node_modules/patternfly/dist/css/patternfly.min.css", "node_modules/patternfly/dist/css/patternfly-additions.min.css"],
|
171
176
|
"styles": ["css/account.css"],
|
172
177
|
```
|
@@ -186,10 +191,10 @@ by
|
|
186
191
|
- The i18n messages you defines in your theme are now also maid available to Keycloak.
|
187
192
|
In practice this mean that you can now customize the `kcContext.message.summary` that
|
188
193
|
display a general alert and the values returned by `kcContext.messagesPerField.get()` that
|
189
|
-
are used to display specific error on some field of the form.
|
194
|
+
are used to display specific error on some field of the form.
|
190
195
|
[See video](https://youtu.be/D6tZcemReTI)
|
191
196
|
|
192
|
-
##
|
197
|
+
## 7.14
|
193
198
|
|
194
199
|
- Deprecate the `extraPages` build option. Keycloakify is now able to analyze your code to detect extra pages.
|
195
200
|
|
@@ -70,13 +70,12 @@ var child_process = __importStar(require("child_process"));
|
|
70
70
|
var fs = __importStar(require("fs"));
|
71
71
|
function downloadBuiltinKeycloakTheme(params) {
|
72
72
|
return __awaiter(this, void 0, void 0, function () {
|
73
|
-
var projectDirPath, keycloakVersion, destDirPath
|
73
|
+
var projectDirPath, keycloakVersion, destDirPath;
|
74
74
|
var _this = this;
|
75
75
|
return __generator(this, function (_a) {
|
76
76
|
switch (_a.label) {
|
77
77
|
case 0:
|
78
78
|
projectDirPath = params.projectDirPath, keycloakVersion = params.keycloakVersion, destDirPath = params.destDirPath;
|
79
|
-
start = Date.now();
|
80
79
|
return [4 /*yield*/, (0, downloadAndUnzip_1.downloadAndUnzip)({
|
81
80
|
"doUseCache": true,
|
82
81
|
projectDirPath: projectDirPath,
|
@@ -131,7 +130,6 @@ function downloadBuiltinKeycloakTheme(params) {
|
|
131
130
|
})];
|
132
131
|
case 1:
|
133
132
|
_a.sent();
|
134
|
-
console.log("Downloaded Keycloak theme in", Date.now() - start, "ms");
|
135
133
|
return [2 /*return*/];
|
136
134
|
}
|
137
135
|
});
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"download-builtin-keycloak-theme.js","sourceRoot":"","sources":["../src/bin/download-builtin-keycloak-theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,6BAAwC;AACxC,6DAA4D;AAC5D,iEAAgE;AAChE,yCAA2C;AAC3C,2DAA8D;AAC9D,2DAA+C;AAC/C,qCAAyB;AAEzB,SAAsB,4BAA4B,CAAC,MAAgF;;;;;;;oBACvH,cAAc,GAAmC,MAAM,eAAzC,EAAE,eAAe,GAAkB,MAAM,gBAAxB,EAAE,WAAW,GAAK,MAAM,YAAX,CAAY;
|
1
|
+
{"version":3,"file":"download-builtin-keycloak-theme.js","sourceRoot":"","sources":["../src/bin/download-builtin-keycloak-theme.ts"],"names":[],"mappings":"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"}
|
@@ -483,6 +483,17 @@
|
|
483
483
|
<#local out_seq += ["/*If you need '" + key + "' on " + pageId + ", please submit an issue to the Keycloakify repo*/"]>
|
484
484
|
<#continue>
|
485
485
|
</#if>
|
486
|
+
|
487
|
+
<#if pageId == "register.ftl" && key == "attemptedUsername" && are_same_path(path, ["auth"])>
|
488
|
+
<#attempt>
|
489
|
+
<#-- https://github.com/keycloak/keycloak/blob/3a2bf0c04bcde185e497aaa32d0bb7ab7520cf4a/themes/src/main/resources/theme/base/login/template.ftl#L63 -->
|
490
|
+
<#-- https://github.com/keycloakify/keycloakify/discussions/406 -->
|
491
|
+
<#if !(auth?has_content && auth.showUsername() && !auth.showResetCredentials())>
|
492
|
+
<#continue>
|
493
|
+
</#if>
|
494
|
+
<#recover>
|
495
|
+
</#attempt>
|
496
|
+
</#if>
|
486
497
|
|
487
498
|
<#attempt>
|
488
499
|
<#if !object[key]??>
|
package/package.json
CHANGED
@@ -10,8 +10,6 @@ import * as fs from "fs";
|
|
10
10
|
export async function downloadBuiltinKeycloakTheme(params: { projectDirPath: string; keycloakVersion: string; destDirPath: string }) {
|
11
11
|
const { projectDirPath, keycloakVersion, destDirPath } = params;
|
12
12
|
|
13
|
-
const start = Date.now();
|
14
|
-
|
15
13
|
await downloadAndUnzip({
|
16
14
|
"doUseCache": true,
|
17
15
|
projectDirPath,
|
@@ -72,8 +70,6 @@ export async function downloadBuiltinKeycloakTheme(params: { projectDirPath: str
|
|
72
70
|
}
|
73
71
|
}
|
74
72
|
});
|
75
|
-
|
76
|
-
console.log("Downloaded Keycloak theme in", Date.now() - start, "ms");
|
77
73
|
}
|
78
74
|
|
79
75
|
async function main() {
|
@@ -483,6 +483,17 @@
|
|
483
483
|
<#local out_seq += ["/*If you need '" + key + "' on " + pageId + ", please submit an issue to the Keycloakify repo*/"]>
|
484
484
|
<#continue>
|
485
485
|
</#if>
|
486
|
+
|
487
|
+
<#if pageId == "register.ftl" && key == "attemptedUsername" && are_same_path(path, ["auth"])>
|
488
|
+
<#attempt>
|
489
|
+
<#-- https://github.com/keycloak/keycloak/blob/3a2bf0c04bcde185e497aaa32d0bb7ab7520cf4a/themes/src/main/resources/theme/base/login/template.ftl#L63 -->
|
490
|
+
<#-- https://github.com/keycloakify/keycloakify/discussions/406 -->
|
491
|
+
<#if !(auth?has_content && auth.showUsername() && !auth.showResetCredentials())>
|
492
|
+
<#continue>
|
493
|
+
</#if>
|
494
|
+
<#recover>
|
495
|
+
</#attempt>
|
496
|
+
</#if>
|
486
497
|
|
487
498
|
<#attempt>
|
488
499
|
<#if !object[key]??>
|