keycloakify 4.5.0 → 4.5.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/CHANGELOG.md +22 -0
- package/README.md +4 -5
- package/bin/KeycloakVersion.d.ts +1 -1
- package/bin/KeycloakVersion.js +1 -1
- package/bin/KeycloakVersion.js.map +1 -1
- package/bin/build-keycloak-theme/build-keycloak-theme.js +4 -3
- package/bin/build-keycloak-theme/build-keycloak-theme.js.map +1 -1
- package/bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.d.ts +2 -1
- package/bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.js.map +1 -1
- package/bin/build-keycloak-theme/generateDebugFiles/standalone-ha_16.1.0.xml +652 -0
- package/bin/build-keycloak-theme/generateFtl/ftl_object_to_js_code_declaring_an_object.ftl +8 -0
- package/bin/build-keycloak-theme/generateKeycloakThemeResources.d.ts +2 -1
- package/bin/build-keycloak-theme/generateKeycloakThemeResources.js +5 -5
- package/bin/build-keycloak-theme/generateKeycloakThemeResources.js.map +1 -1
- package/bin/download-builtin-keycloak-theme.js +1 -1
- package/lib/getKcContext/getKcContext.js +9 -1
- package/lib/getKcContext/getKcContext.js.map +1 -1
- package/lib/getKcContext/kcContextMocks/urlResourcesPath.js +1 -1
- package/lib/getKcContext/kcContextMocks/urlResourcesPath.js.map +1 -1
- package/lib/tools/pathBasename.d.ts +1 -0
- package/lib/tools/pathBasename.js +8 -0
- package/lib/tools/pathBasename.js.map +1 -0
- package/package.json +7 -1
- package/src/bin/KeycloakVersion.ts +1 -1
- package/src/bin/build-keycloak-theme/build-keycloak-theme.ts +4 -3
- package/src/bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.ts +2 -1
- package/src/bin/build-keycloak-theme/generateDebugFiles/standalone-ha_16.1.0.xml +652 -0
- package/src/bin/build-keycloak-theme/generateFtl/ftl_object_to_js_code_declaring_an_object.ftl +8 -0
- package/src/bin/build-keycloak-theme/generateKeycloakThemeResources.ts +10 -7
- package/src/bin/download-builtin-keycloak-theme.ts +1 -1
- package/src/lib/getKcContext/getKcContext.ts +12 -1
- package/src/lib/getKcContext/kcContextMocks/urlResourcesPath.ts +1 -1
- package/src/lib/tools/pathBasename.ts +3 -0
package/CHANGELOG.md
CHANGED
@@ -1,3 +1,25 @@
|
|
1
|
+
### **4.5.3** (2022-01-26)
|
2
|
+
|
3
|
+
- Themes no longer have to break on minor Keycloakify update
|
4
|
+
|
5
|
+
### **4.5.2** (2022-01-20)
|
6
|
+
|
7
|
+
- Test container uses Keycloak 16.1.0
|
8
|
+
- Merge pull request #78 from InseeFrLab/Ann2827/pull
|
9
|
+
|
10
|
+
Ann2827/pull
|
11
|
+
- Refactor #78
|
12
|
+
- Compat with Keycloak 16 (and probably 17, 18) #79
|
13
|
+
- Warning about compat issues with Keycloak 16
|
14
|
+
- fix: changes
|
15
|
+
- fix: Errors on pages login-idp-link-confirm and login-idp-link-email
|
16
|
+
|
17
|
+
ref: https://github.com/InseeFrLab/keycloakify/issues/75
|
18
|
+
|
19
|
+
### **4.5.1** (2022-01-18)
|
20
|
+
|
21
|
+
- fix previous version
|
22
|
+
|
1
23
|
## **4.5.0** (2022-01-18)
|
2
24
|
|
3
25
|
- Read public/CNAME for domain name in --externel-assets mode
|
package/README.md
CHANGED
@@ -30,9 +30,9 @@
|
|
30
30
|
<img src="https://user-images.githubusercontent.com/6702424/110260457-a1c3d380-7fac-11eb-853a-80459b65626b.png">
|
31
31
|
</p>
|
32
32
|
|
33
|
-
>
|
34
|
-
>
|
35
|
-
>
|
33
|
+
> There is a new recommended way to setup highly customized theme. See [here](https://github.com/garronej/keycloakify-demo-app/blob/look_and_feel/src/KcApp/KcApp.tsx).
|
34
|
+
> Unlike with [the previous recommended method](https://github.com/garronej/keycloakify-demo-app/blob/a51660578bea15fb3e506b8a2b78e1056c6d68bb/src/KcApp/KcApp.tsx),
|
35
|
+
> with this new method your theme wont break on minor Keycloakify update.
|
36
36
|
|
37
37
|
# Motivations
|
38
38
|
|
@@ -103,6 +103,7 @@ Tested with the following Keycloak versions:
|
|
103
103
|
- [11.0.3](https://hub.docker.com/layers/jboss/keycloak/11.0.3/images/sha256-4438f1e51c1369371cb807dffa526e1208086b3ebb9cab009830a178de949782?context=explore)
|
104
104
|
- [12.0.4](https://hub.docker.com/layers/jboss/keycloak/12.0.4/images/sha256-67e0c88e69bd0c7aef972c40bdeb558a974013a28b3668ca790ed63a04d70584?context=explore)
|
105
105
|
- [15.0.2](https://hub.docker.com/layers/jboss/keycloak/15.0.2/images/sha256-d8ed1ee5df42a178c341f924377da75db49eab08ea9f058ff39a8ed7ee05ec93?context=explore)
|
106
|
+
- [16.1.0](https://hub.docker.com/layers/jboss/keycloak/16.1.0/images/sha256-6ecb9492224c6cfbb55d43f64a5ab634145d8cc1eba14eae8c37e3afde89546e?context=explore)
|
106
107
|
|
107
108
|
This tool will be maintained to stay compatible with Keycloak v11 and up, however, the default pages you will get
|
108
109
|
(before you customize it) will always be the ones of Keycloak v11.
|
@@ -256,8 +257,6 @@ WARNING: If you chose to go this way use:
|
|
256
257
|
}
|
257
258
|
```
|
258
259
|
|
259
|
-
in your `package.json` instead of `^X.Y.Z`. A minor update of Keycloakify might break your app.
|
260
|
-
|
261
260
|
### Hot reload
|
262
261
|
|
263
262
|
Rebuild the theme each time you make a change to see the result is not practical.
|
package/bin/KeycloakVersion.d.ts
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
export declare const keycloakVersions: readonly ["11.0.3", "15.0.2"];
|
1
|
+
export declare const keycloakVersions: readonly ["11.0.3", "15.0.2", "16.1.0"];
|
2
2
|
export declare type KeycloakVersion = typeof keycloakVersions[number];
|
package/bin/KeycloakVersion.js
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
3
|
exports.keycloakVersions = void 0;
|
4
|
-
exports.keycloakVersions = ["11.0.3", "15.0.2"];
|
4
|
+
exports.keycloakVersions = ["11.0.3", "15.0.2", "16.1.0"];
|
5
5
|
//# sourceMappingURL=KeycloakVersion.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"KeycloakVersion.js","sourceRoot":"","sources":["../src/bin/KeycloakVersion.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAU,CAAC"}
|
1
|
+
{"version":3,"file":"KeycloakVersion.js","sourceRoot":"","sources":["../src/bin/KeycloakVersion.ts"],"names":[],"mappings":";;;AAAa,QAAA,gBAAgB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAU,CAAC"}
|
@@ -63,7 +63,7 @@ function main() {
|
|
63
63
|
}
|
64
64
|
var cnameFilePath = (0, path_1.join)(reactProjectDirPath, "public", "CNAME");
|
65
65
|
if (fs.existsSync(cnameFilePath)) {
|
66
|
-
return new url_1.URL(fs.readFileSync(cnameFilePath).toString("utf8").replace(/\s+$/, ""));
|
66
|
+
return new url_1.URL("https://" + fs.readFileSync(cnameFilePath).toString("utf8").replace(/\s+$/, ""));
|
67
67
|
}
|
68
68
|
return undefined;
|
69
69
|
})();
|
@@ -81,7 +81,7 @@ function main() {
|
|
81
81
|
};
|
82
82
|
})()), { extraPagesId: extraPagesId, extraThemeProperties: extraThemeProperties,
|
83
83
|
//We have to leave it at that otherwise we break our default theme.
|
84
|
-
//Problem is that we can't guarantee that the the old resources
|
84
|
+
//Problem is that we can't guarantee that the the old resources
|
85
85
|
//will still be available on the newer keycloak version.
|
86
86
|
"keycloakVersion": "11.0.3" }));
|
87
87
|
var jarFilePath = (0, generateJavaStackFiles_1.generateJavaStackFiles)({
|
@@ -96,7 +96,8 @@ function main() {
|
|
96
96
|
(0, generateDebugFiles_1.generateDebugFiles)({
|
97
97
|
keycloakThemeBuildingDirPath: exports.keycloakThemeBuildingDirPath,
|
98
98
|
themeName: themeName,
|
99
|
-
|
99
|
+
//We want, however to test in a container running the latest Keycloak version
|
100
|
+
"keycloakVersion": "16.1.0",
|
100
101
|
});
|
101
102
|
console.log([
|
102
103
|
"",
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"build-keycloak-theme.js","sourceRoot":"","sources":["../../src/bin/build-keycloak-theme/build-keycloak-theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,mFAAkF;AAClF,mEAAkE;AAClE,6BAA4F;AAC5F,2DAA+C;AAC/C,2DAAyF;AACzF,2BAA0B;AAC1B,qCAAyB;AAQzB,IAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAE1C,IAAM,mBAAmB,GAAG,CAAA,MAAA,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,0CAAE,WAAW,EAAE,MAAK,mBAAmB,CAAC;AAEnF,IAAM,iBAAiB,GAAsB,OAAO,CAAC,IAAA,WAAQ,EAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC,CAAC;AAEvF,QAAA,4BAA4B,GAAG,IAAA,WAAQ,EAAC,mBAAmB,EAAE,gBAAgB,CAAC,CAAC;AAE5F,SAAS,iBAAiB,CAAC,IAAY;IACnC,OAAO,IAAI;SACN,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC;SACvB,KAAK,CAAC,GAAG,CAAC;SACV,IAAI,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC;AAED,SAAgB,IAAI;;IAChB,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;IAElD,IAAM,YAAY,GAAa,MAAA,MAAC,iBAAyB,CAAC,aAAa,CAAC,0CAAG,YAAY,CAAC,mCAAI,EAAE,CAAC;IAC/F,IAAM,oBAAoB,GAAa,MAAA,MAAC,iBAAyB,CAAC,aAAa,CAAC,0CAAG,sBAAsB,CAAC,mCAAI,EAAE,CAAC;IACjH,IAAM,SAAS,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAE5D,IAAA,+DAA8B,sBAC1B,4BAA4B,sCAAA,EAC5B,sBAAsB,EAAE,IAAA,WAAQ,EAAC,mBAAmB,EAAE,OAAO,CAAC,EAC9D,SAAS,WAAA,IACN,CAAC;QACA,IAAM,GAAG,GAAG,CAAC;YACD,IAAA,QAAQ,GAAK,iBAAiB,SAAtB,CAAuB;YAEvC,IAAI,QAAQ,KAAK,SAAS,EAAE;gBACxB,OAAO,IAAI,SAAG,CAAC,QAAQ,CAAC,CAAC;aAC5B;YAED,IAAM,aAAa,GAAG,IAAA,WAAQ,EAAC,mBAAmB,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YAEvE,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE;gBAC9B,OAAO,IAAI,SAAG,CAAC,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,
|
1
|
+
{"version":3,"file":"build-keycloak-theme.js","sourceRoot":"","sources":["../../src/bin/build-keycloak-theme/build-keycloak-theme.ts"],"names":[],"mappings":"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"}
|
@@ -1,7 +1,8 @@
|
|
1
|
+
import type { KeycloakVersion } from "../../KeycloakVersion";
|
1
2
|
export declare const containerLaunchScriptBasename = "start_keycloak_testing_container.sh";
|
2
3
|
/** Files for being able to run a hot reload keycloak container */
|
3
4
|
export declare function generateDebugFiles(params: {
|
4
|
-
keycloakVersion:
|
5
|
+
keycloakVersion: KeycloakVersion;
|
5
6
|
themeName: string;
|
6
7
|
keycloakThemeBuildingDirPath: string;
|
7
8
|
}): void;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"generateDebugFiles.js","sourceRoot":"","sources":["../../../src/bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAyB;AACzB,6BAAgE;
|
1
|
+
{"version":3,"file":"generateDebugFiles.js","sourceRoot":"","sources":["../../../src/bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAyB;AACzB,6BAAgE;AAGnD,QAAA,6BAA6B,GAAG,qCAAqC,CAAC;AAEnF,kEAAkE;AAClE,SAAgB,kBAAkB,CAAC,MAAqG;IAC5H,IAAA,SAAS,GAAoD,MAAM,UAA1D,EAAE,4BAA4B,GAAsB,MAAM,6BAA5B,EAAE,eAAe,GAAK,MAAM,gBAAX,CAAY;IAE5E,EAAE,CAAC,aAAa,CACZ,IAAA,WAAQ,EAAC,4BAA4B,EAAE,YAAY,CAAC,EACpD,MAAM,CAAC,IAAI,CACP;QACI,yBAAuB,eAAiB;QACxC,EAAE;QACF,WAAW;QACX,EAAE;QACF,WAAW;QACX,EAAE;QACF,iEAAiE;QACjE,EAAE;QACF,wDAAwD;KAC3D,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,MAAM,CACT,CACJ,CAAC;IAEF,IAAM,WAAW,GAAM,SAAS,yBAAsB,CAAC;IACvD,IAAM,aAAa,GAAG,4BAA4B,CAAC;IAEnD,EAAE,CAAC,aAAa,CACZ,IAAA,WAAQ,EAAC,4BAA4B,EAAE,qCAA6B,CAAC,EACrE,MAAM,CAAC,IAAI,CACP;QACI,aAAa;QACb,EAAE;QACF,QAAM,4BAA8B;QACpC,EAAE;QACF,eAAa,aAAa,aAAU;QACpC,EAAE;QACF,uBAAqB,WAAa;QAClC,EAAE;QACF,eAAe;QACf,oBAAoB;QACpB,eAAa,aAAa,QAAK;QAC/B,8BAA8B;QAC9B,kCAAkC;QAClC,+CAA+C;QAC/C,WAAS,IAAA,WAAQ,EACb,4BAA4B,EAC5B,KAAK,EACL,MAAM,EACN,WAAW,EACX,OAAO,EACP,SAAS,CACZ,oCAA+B,SAAS,WAAQ;QACjD,YAAU,WAAW,YAAS;QAC9B,EAAE;KACL,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,MAAM,CACT,EACD,EAAE,MAAM,EAAE,GAAK,EAAE,CACpB,CAAC;IAEF,IAAM,oBAAoB,GAAG,IAAA,WAAQ,EAAC,4BAA4B,EAAE,eAAe,EAAE,mBAAmB,CAAC,CAAC;IAE1G,IAAI;QACA,EAAE,CAAC,SAAS,CAAC,IAAA,cAAW,EAAC,oBAAoB,CAAC,CAAC,CAAC;KACnD;IAAC,WAAM,GAAE;IAEV,EAAE,CAAC,aAAa,CACZ,oBAAoB,EACpB,EAAE;SACG,YAAY,CAAC,IAAA,WAAQ,EAAC,SAAS,EAAE,mBAAiB,eAAe,SAAM,CAAC,CAAC;SACzE,QAAQ,CAAC,MAAM,CAAC;SAChB,OAAO,CACJ,IAAI,MAAM,CACN,CAAC,sCAAsC,EAAE,iCAAiC,EAAE,uCAAuC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EACjI,GAAG,CACN,EACD,CAAC,iCAAiC,EAAE,kCAAkC,EAAE,wCAAwC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAC/H,CACR,CAAC;AACN,CAAC;AA7ED,gDA6EC"}
|