keycloakify 4.7.1 → 4.7.4
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 +12 -0
- package/README.md +12 -4
- package/bin/build-keycloak-theme/build-keycloak-theme.js +5 -5
- package/bin/build-keycloak-theme/build-keycloak-theme.js.map +1 -1
- package/bin/build-keycloak-theme/generateKeycloakThemeResources.d.ts +1 -2
- package/bin/build-keycloak-theme/generateKeycloakThemeResources.js.map +1 -1
- package/bin/build-keycloak-theme/generateStartKeycloakTestingContainer.d.ts +9 -0
- package/bin/build-keycloak-theme/generateStartKeycloakTestingContainer.js +50 -0
- package/bin/build-keycloak-theme/generateStartKeycloakTestingContainer.js.map +1 -0
- package/bin/download-builtin-keycloak-theme.d.ts +1 -2
- package/bin/download-builtin-keycloak-theme.js.map +1 -1
- package/bin/generate-i18n-messages.js +3 -4
- package/bin/generate-i18n-messages.js.map +1 -1
- package/package.json +5 -19
- package/src/bin/build-keycloak-theme/build-keycloak-theme.ts +5 -5
- package/src/bin/build-keycloak-theme/generateKeycloakThemeResources.ts +1 -2
- package/src/bin/build-keycloak-theme/generateStartKeycloakTestingContainer.ts +44 -0
- package/src/bin/download-builtin-keycloak-theme.ts +2 -3
- package/src/bin/generate-i18n-messages.ts +1 -2
- package/bin/KeycloakVersion.d.ts +0 -2
- package/bin/KeycloakVersion.js +0 -5
- package/bin/KeycloakVersion.js.map +0 -1
- package/bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.d.ts +0 -8
- package/bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.js +0 -72
- package/bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.js.map +0 -1
- package/bin/build-keycloak-theme/generateDebugFiles/index.d.ts +0 -1
- package/bin/build-keycloak-theme/generateDebugFiles/index.js +0 -14
- package/bin/build-keycloak-theme/generateDebugFiles/index.js.map +0 -1
- package/bin/build-keycloak-theme/generateDebugFiles/standalone-ha_11.0.3.xml +0 -666
- package/bin/build-keycloak-theme/generateDebugFiles/standalone-ha_15.0.2.xml +0 -693
- package/bin/build-keycloak-theme/generateDebugFiles/standalone-ha_16.1.0.xml +0 -652
- package/src/bin/KeycloakVersion.ts +0 -3
- package/src/bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.ts +0 -85
- package/src/bin/build-keycloak-theme/generateDebugFiles/index.ts +0 -1
- package/src/bin/build-keycloak-theme/generateDebugFiles/standalone-ha_11.0.3.xml +0 -666
- package/src/bin/build-keycloak-theme/generateDebugFiles/standalone-ha_15.0.2.xml +0 -693
- package/src/bin/build-keycloak-theme/generateDebugFiles/standalone-ha_16.1.0.xml +0 -652
package/CHANGELOG.md
CHANGED
@@ -1,3 +1,15 @@
|
|
1
|
+
### **4.7.4** (2022-04-09)
|
2
|
+
|
3
|
+
- M1 Mac compat (for real this time)
|
4
|
+
|
5
|
+
### **4.7.3** (2022-04-08)
|
6
|
+
|
7
|
+
- Mention that there is still problems with M1 Mac
|
8
|
+
|
9
|
+
### **4.7.2** (2022-04-06)
|
10
|
+
|
11
|
+
- #43: M1 Mac support
|
12
|
+
|
1
13
|
### **4.7.1** (2022-03-30)
|
2
14
|
|
3
15
|
- Improve browser autofill
|
package/README.md
CHANGED
@@ -25,15 +25,13 @@
|
|
25
25
|
</a>
|
26
26
|
</p>
|
27
27
|
|
28
|
+
> New with v4.7.4: **M1 Mac** support (for testing locally with a dockerized Keycloak).
|
29
|
+
|
28
30
|
<p align="center">
|
29
31
|
<i>Ultimately this build tool generates a Keycloak theme</i>
|
30
32
|
<img src="https://user-images.githubusercontent.com/6702424/110260457-a1c3d380-7fac-11eb-853a-80459b65626b.png">
|
31
33
|
</p>
|
32
34
|
|
33
|
-
> New in v4.7:
|
34
|
-
> Register with user profile enabled: Out of the box `options` validator support.
|
35
|
-
> [Example](https://user-images.githubusercontent.com/6702424/158911163-81e6bbe8-feb0-4dc8-abff-de199d7a678e.mov)
|
36
|
-
|
37
35
|
# Motivations
|
38
36
|
|
39
37
|
Keycloak provides [theme support](https://www.keycloak.org/docs/latest/server_development/#_themes) for web pages. This allows customizing the look and feel of end-user facing pages so they can be integrated with your applications.
|
@@ -478,6 +476,16 @@ and `kcRegisterContext["authorizedMailDomains"]` to validate on.
|
|
478
476
|
|
479
477
|
# Changelog highlights
|
480
478
|
|
479
|
+
# v4.7.4
|
480
|
+
|
481
|
+
**M1 Mac** support (for testing locally with a dockerized Keycloak).
|
482
|
+
|
483
|
+
# v4.7.2
|
484
|
+
|
485
|
+
> WARNING: This is broken.
|
486
|
+
> Testing with local Keycloak container working with M1 Mac. Thanks to [@eduardosanzb](https://github.com/InseeFrLab/keycloakify/issues/43#issuecomment-975699658).
|
487
|
+
> Be aware: When running M1s you are testing with Keycloak v15 else the local container spun will be a Keycloak v16.1.0.
|
488
|
+
|
481
489
|
# v4.7.0
|
482
490
|
|
483
491
|
Register with user profile enabled: Out of the box `options` validator support.
|
@@ -36,7 +36,7 @@ var generateKeycloakThemeResources_1 = require("./generateKeycloakThemeResources
|
|
36
36
|
var generateJavaStackFiles_1 = require("./generateJavaStackFiles");
|
37
37
|
var path_1 = require("path");
|
38
38
|
var child_process = __importStar(require("child_process"));
|
39
|
-
var
|
39
|
+
var generateStartKeycloakTestingContainer_1 = require("./generateStartKeycloakTestingContainer");
|
40
40
|
var url_1 = require("url");
|
41
41
|
var fs = __importStar(require("fs"));
|
42
42
|
var reactProjectDirPath = process.cwd();
|
@@ -93,11 +93,11 @@ function main() {
|
|
93
93
|
child_process.execSync("mvn package", {
|
94
94
|
"cwd": exports.keycloakThemeBuildingDirPath,
|
95
95
|
});
|
96
|
-
(0,
|
96
|
+
(0, generateStartKeycloakTestingContainer_1.generateStartKeycloakTestingContainer)({
|
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": "
|
100
|
+
"keycloakVersion": "17.0.1",
|
101
101
|
});
|
102
102
|
console.log([
|
103
103
|
"",
|
@@ -134,10 +134,10 @@ function main() {
|
|
134
134
|
"",
|
135
135
|
"To test your theme locally, with hot reloading, you can spin up a Keycloak container image with the theme loaded by running:",
|
136
136
|
"",
|
137
|
-
"\uD83D\uDC49 $ ./" + (0, path_1.relative)(reactProjectDirPath, (0, path_1.join)(exports.keycloakThemeBuildingDirPath,
|
137
|
+
"\uD83D\uDC49 $ ./" + (0, path_1.relative)(reactProjectDirPath, (0, path_1.join)(exports.keycloakThemeBuildingDirPath, generateStartKeycloakTestingContainer_1.generateStartKeycloakTestingContainer.basename)) + " \uD83D\uDC48",
|
138
138
|
"",
|
139
139
|
"Once your container is up and running: ",
|
140
|
-
"- Log into the admin console 👉 http://localhost:8080 username: admin, password: admin 👈",
|
140
|
+
"- Log into the admin console 👉 http://localhost:8080/admin username: admin, password: admin 👈",
|
141
141
|
'- Create a realm named "myrealm"',
|
142
142
|
'- Create a client with id "myclient" and root url: "https://www.keycloak.org/app/"',
|
143
143
|
"- Select Login Theme: " + themeName + " (don't forget to save at the bottom of the page)",
|
@@ -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,
|
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,iGAAgG;AAChG,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,aAAW,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAG,CAAC,CAAC;aACpG;YAED,OAAO,SAAS,CAAC;QACrB,CAAC,CAAC,EAAE,CAAC;QAEL,OAAO;YACH,aAAa,EAAE,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC;YAC/E,WAAW,EAAE,CAAC,mBAAmB;gBAC7B,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,CAAC;oBACG,IAAI,GAAG,KAAK,SAAS,EAAE;wBACnB,OAAO,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAC;wBACzE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;qBACpB;oBAED,OAAO,GAAG,CAAC,MAAM,CAAC;gBACtB,CAAC,CAAC,EAAE;SACb,CAAC;IACN,CAAC,CAAC,EAAE,KACJ,YAAY,cAAA,EACZ,oBAAoB,sBAAA;QACpB,mEAAmE;QACnE,+DAA+D;QAC/D,wDAAwD;QACxD,iBAAiB,EAAE,QAAQ,IAC7B,CAAC;IAEK,IAAA,WAAW,GAAK,IAAA,+CAAsB,EAAC;QAC3C,OAAO,EAAE,iBAAiB,CAAC,OAAO;QAClC,SAAS,WAAA;QACT,QAAQ,EAAE,iBAAiB,CAAC,QAAQ;QACpC,4BAA4B,sCAAA;KAC/B,CAAC,YALiB,CAKhB;IAEH,aAAa,CAAC,QAAQ,CAAC,aAAa,EAAE;QAClC,KAAK,EAAE,oCAA4B;KACtC,CAAC,CAAC;IAEH,IAAA,6EAAqC,EAAC;QAClC,4BAA4B,sCAAA;QAC5B,SAAS,WAAA;QACT,6EAA6E;QAC7E,iBAAiB,EAAE,QAAQ;KAC9B,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,CACP;QACI,EAAE;QACF,sEAA+D,IAAA,eAAY,EAAC,mBAAmB,EAAE,WAAW,CAAC,kBAAK;QAClH,8HAA4H;QAC5H,EAAE;QACF,2EAA2E;QAC3E,EAAE;QACF,cAAc;QACd,4BAA4B;QAC5B,oCAAoC;QACpC,kCAAkC;QAClC,yCAAyC;QACzC,oBAAoB;QACpB,kBAAkB;QAClB,iBAAiB;QACjB,kBAAkB;QAClB,gDAA8C,IAAA,eAAY,EAAC,WAAW,CAAC,4BAAuB,IAAA,eAAY,EAAC,WAAW,CAAG;QACzH,yBAAyB;QACzB,gCAAgC;QAChC,sCAAsC;QACtC,UAAU;QACV,8BAA8B;QAC9B,gCAAgC;QAChC,qEAAqE;QACrE,iBAAiB;QACjB,2BAA2B;QAC3B,oBAAoB;QACpB,+BAA+B;QAC/B,wBAAwB;QACxB,uBAAuB;QACvB,yCAAyC;QACzC,EAAE;QACF,EAAE;QACF,8HAA8H;QAC9H,EAAE;QACF,sBAAU,IAAA,eAAY,EAAC,mBAAmB,EAAE,IAAA,WAAQ,EAAC,oCAA4B,EAAE,6EAAqC,CAAC,QAAQ,CAAC,CAAC,kBAAK;QACxI,EAAE;QACF,yCAAyC;QACzC,iGAAiG;QACjG,kCAAkC;QAClC,oFAAoF;QACpF,2BAAyB,SAAS,sDAAmD;QACrF,iIAAyG;QACzG,EAAE;QACF,0DAA0D;QAC1D,EAAE;KACL,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CAAC;AACN,CAAC;AArHD,oBAqHC"}
|
@@ -1,4 +1,3 @@
|
|
1
|
-
import type { KeycloakVersion } from "../KeycloakVersion";
|
2
1
|
export declare function generateKeycloakThemeResources(params: {
|
3
2
|
themeName: string;
|
4
3
|
reactAppBuildDirPath: string;
|
@@ -7,5 +6,5 @@ export declare function generateKeycloakThemeResources(params: {
|
|
7
6
|
urlOrigin: undefined | string;
|
8
7
|
extraPagesId: string[];
|
9
8
|
extraThemeProperties: string[];
|
10
|
-
keycloakVersion:
|
9
|
+
keycloakVersion: string;
|
11
10
|
}): void;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"generateKeycloakThemeResources.js","sourceRoot":"","sources":["../../src/bin/build-keycloak-theme/generateKeycloakThemeResources.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gEAA+D;AAC/D,qCAAyB;AACzB,6BAAkE;AAClE,qEAAsG;AACtG,6CAAqE;AACrE,sFAAkF;AAClF,2DAA+C;AAC/C,2FAAuI;AACvI,8CAA6C;
|
1
|
+
{"version":3,"file":"generateKeycloakThemeResources.js","sourceRoot":"","sources":["../../src/bin/build-keycloak-theme/generateKeycloakThemeResources.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
/** Files for being able to run a hot reload keycloak container */
|
2
|
+
export declare function generateStartKeycloakTestingContainer(params: {
|
3
|
+
keycloakVersion: string;
|
4
|
+
themeName: string;
|
5
|
+
keycloakThemeBuildingDirPath: string;
|
6
|
+
}): void;
|
7
|
+
export declare namespace generateStartKeycloakTestingContainer {
|
8
|
+
var basename: string;
|
9
|
+
}
|
@@ -0,0 +1,50 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
+
if (k2 === undefined) k2 = k;
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
5
|
+
}) : (function(o, m, k, k2) {
|
6
|
+
if (k2 === undefined) k2 = k;
|
7
|
+
o[k2] = m[k];
|
8
|
+
}));
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
11
|
+
}) : function(o, v) {
|
12
|
+
o["default"] = v;
|
13
|
+
});
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
15
|
+
if (mod && mod.__esModule) return mod;
|
16
|
+
var result = {};
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
18
|
+
__setModuleDefault(result, mod);
|
19
|
+
return result;
|
20
|
+
};
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
22
|
+
exports.generateStartKeycloakTestingContainer = void 0;
|
23
|
+
var fs = __importStar(require("fs"));
|
24
|
+
var path_1 = require("path");
|
25
|
+
generateStartKeycloakTestingContainer.basename = "start_keycloak_testing_container.sh";
|
26
|
+
var containerName = "keycloak-testing-container";
|
27
|
+
/** Files for being able to run a hot reload keycloak container */
|
28
|
+
function generateStartKeycloakTestingContainer(params) {
|
29
|
+
var themeName = params.themeName, keycloakThemeBuildingDirPath = params.keycloakThemeBuildingDirPath, keycloakVersion = params.keycloakVersion;
|
30
|
+
fs.writeFileSync((0, path_1.join)(keycloakThemeBuildingDirPath, generateStartKeycloakTestingContainer.basename), Buffer.from([
|
31
|
+
"#!/bin/bash",
|
32
|
+
"",
|
33
|
+
"docker rm " + containerName + " || true",
|
34
|
+
"",
|
35
|
+
"cd " + keycloakThemeBuildingDirPath,
|
36
|
+
"",
|
37
|
+
"docker run \\",
|
38
|
+
" -p 8080:8080 \\",
|
39
|
+
" --name " + containerName + " \\",
|
40
|
+
" -e KEYCLOAK_ADMIN=admin \\",
|
41
|
+
" -e KEYCLOAK_ADMIN_PASSWORD=admin \\",
|
42
|
+
" -e JAVA_OPTS=-Dkeycloak.profile=preview \\",
|
43
|
+
" -v " + (0, path_1.join)(keycloakThemeBuildingDirPath, "src", "main", "resources", "theme", themeName) + ":/opt/keycloak/themes/" + themeName + ":rw \\",
|
44
|
+
" -it quay.io/keycloak/keycloak:" + keycloakVersion + " \\",
|
45
|
+
" start-dev",
|
46
|
+
"",
|
47
|
+
].join("\n"), "utf8"), { "mode": 493 });
|
48
|
+
}
|
49
|
+
exports.generateStartKeycloakTestingContainer = generateStartKeycloakTestingContainer;
|
50
|
+
//# sourceMappingURL=generateStartKeycloakTestingContainer.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"generateStartKeycloakTestingContainer.js","sourceRoot":"","sources":["../../src/bin/build-keycloak-theme/generateStartKeycloakTestingContainer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAyB;AACzB,6BAAwC;AAExC,qCAAqC,CAAC,QAAQ,GAAG,qCAAqC,CAAC;AAEvF,IAAM,aAAa,GAAG,4BAA4B,CAAC;AAEnD,kEAAkE;AAClE,SAAgB,qCAAqC,CAAC,MAA4F;IACtI,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,qCAAqC,CAAC,QAAQ,CAAC,EACtF,MAAM,CAAC,IAAI,CACP;QACI,aAAa;QACb,EAAE;QACF,eAAa,aAAa,aAAU;QACpC,EAAE;QACF,QAAM,4BAA8B;QACpC,EAAE;QACF,eAAe;QACf,oBAAoB;QACpB,eAAa,aAAa,QAAK;QAC/B,+BAA+B;QAC/B,wCAAwC;QACxC,+CAA+C;QAC/C,WAAS,IAAA,WAAQ,EACb,4BAA4B,EAC5B,KAAK,EACL,MAAM,EACN,WAAW,EACX,OAAO,EACP,SAAS,CACZ,8BAAyB,SAAS,WAAQ;QAC3C,sCAAoC,eAAe,QAAK;QACxD,cAAc;QACd,EAAE;KACL,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,MAAM,CACT,EACD,EAAE,MAAM,EAAE,GAAK,EAAE,CACpB,CAAC;AACN,CAAC;AAnCD,sFAmCC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"download-builtin-keycloak-theme.js","sourceRoot":"","sources":["../src/bin/download-builtin-keycloak-theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,+DAAsE;AACtE,6BAAwC;AACxC,6DAA4D;
|
1
|
+
{"version":3,"file":"download-builtin-keycloak-theme.js","sourceRoot":"","sources":["../src/bin/download-builtin-keycloak-theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAEA,+DAAsE;AACtE,6BAAwC;AACxC,6DAA4D;AAE5D,SAAgB,4BAA4B,CAAC,MAAwD;;IACzF,IAAA,eAAe,GAAkB,MAAM,gBAAxB,EAAE,WAAW,GAAK,MAAM,YAAX,CAAY;;QAEhD,KAAkB,IAAA,KAAA,SAAA,CAAC,EAAE,EAAE,YAAY,CAAC,CAAA,gBAAA,4BAAE;YAAjC,IAAM,GAAG,WAAA;YACV,IAAA,mCAAgB,EAAC;gBACb,aAAa,EAAE,WAAW;gBAC1B,KAAK,EAAE,4DAA0D,eAAe,SAAM;gBACtF,6BAA6B,EAAE,cAAY,eAAe,kCAA6B,GAAG,WAAQ;aACrG,CAAC,CAAC;SACN;;;;;;;;;AACL,CAAC;AAVD,oEAUC;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;IACzB,IAAM,eAAe,GAAG,CAAC;QACrB,IAAM,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAuB,CAAC;QAE9D,IAAI,eAAe,KAAK,SAAS,EAAE;YAC/B,OAAO,QAAQ,CAAC;SACnB;QAED,OAAO,eAAe,CAAC;IAC3B,CAAC,CAAC,EAAE,CAAC;IAEL,IAAM,WAAW,GAAG,IAAA,WAAQ,EAAC,mDAA4B,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IAEhG,OAAO,CAAC,GAAG,CAAC,4CAA0C,eAAe,cAAS,WAAa,CAAC,CAAC;IAE7F,4BAA4B,CAAC;QACzB,eAAe,iBAAA;QACf,WAAW,aAAA;KACd,CAAC,CAAC;CACN"}
|
@@ -54,7 +54,6 @@ var crawl_1 = require("./tools/crawl");
|
|
54
54
|
var download_builtin_keycloak_theme_1 = require("./download-builtin-keycloak-theme");
|
55
55
|
var getProjectRoot_1 = require("./tools/getProjectRoot");
|
56
56
|
var rm_1 = require("./tools/rm");
|
57
|
-
var KeycloakVersion_1 = require("./KeycloakVersion");
|
58
57
|
//@ts-ignore
|
59
58
|
var propertiesParser = require("properties-parser");
|
60
59
|
var _loop_1 = function (keycloakVersion) {
|
@@ -98,15 +97,15 @@ var _loop_1 = function (keycloakVersion) {
|
|
98
97
|
});
|
99
98
|
};
|
100
99
|
try {
|
101
|
-
for (var
|
102
|
-
var keycloakVersion =
|
100
|
+
for (var _b = __values(["11.0.3", "15.0.2", "16.1.0"]), _c = _b.next(); !_c.done; _c = _b.next()) {
|
101
|
+
var keycloakVersion = _c.value;
|
103
102
|
_loop_1(keycloakVersion);
|
104
103
|
}
|
105
104
|
}
|
106
105
|
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
107
106
|
finally {
|
108
107
|
try {
|
109
|
-
if (
|
108
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
110
109
|
}
|
111
110
|
finally { if (e_1) throw e_1.error; }
|
112
111
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"generate-i18n-messages.js","sourceRoot":"","sources":["../src/bin/generate-i18n-messages.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA8C;AAC9C,qCAAyB;AACzB,6BAAkE;AAClE,uCAAsC;AACtC,qFAAiF;AACjF,yDAAwD;AACxD,iCAAyC;
|
1
|
+
{"version":3,"file":"generate-i18n-messages.js","sourceRoot":"","sources":["../src/bin/generate-i18n-messages.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "keycloakify",
|
3
|
-
"version": "4.7.
|
3
|
+
"version": "4.7.4",
|
4
4
|
"description": "Keycloak theme generator for Reacts app",
|
5
5
|
"repository": {
|
6
6
|
"type": "git",
|
@@ -25,19 +25,14 @@
|
|
25
25
|
"author": "u/garronej",
|
26
26
|
"license": "MIT",
|
27
27
|
"files": [
|
28
|
-
"src/bin/KeycloakVersion.ts",
|
29
28
|
"src/bin/build-keycloak-theme/build-keycloak-theme.ts",
|
30
29
|
"src/bin/build-keycloak-theme/ftlValuesGlobalName.ts",
|
31
|
-
"src/bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.ts",
|
32
|
-
"src/bin/build-keycloak-theme/generateDebugFiles/index.ts",
|
33
|
-
"src/bin/build-keycloak-theme/generateDebugFiles/standalone-ha_11.0.3.xml",
|
34
|
-
"src/bin/build-keycloak-theme/generateDebugFiles/standalone-ha_15.0.2.xml",
|
35
|
-
"src/bin/build-keycloak-theme/generateDebugFiles/standalone-ha_16.1.0.xml",
|
36
30
|
"src/bin/build-keycloak-theme/generateFtl/ftl_object_to_js_code_declaring_an_object.ftl",
|
37
31
|
"src/bin/build-keycloak-theme/generateFtl/generateFtl.ts",
|
38
32
|
"src/bin/build-keycloak-theme/generateFtl/index.ts",
|
39
33
|
"src/bin/build-keycloak-theme/generateJavaStackFiles.ts",
|
40
34
|
"src/bin/build-keycloak-theme/generateKeycloakThemeResources.ts",
|
35
|
+
"src/bin/build-keycloak-theme/generateStartKeycloakTestingContainer.ts",
|
41
36
|
"src/bin/build-keycloak-theme/index.ts",
|
42
37
|
"src/bin/build-keycloak-theme/replaceImportFromStatic.ts",
|
43
38
|
"src/bin/download-builtin-keycloak-theme.ts",
|
@@ -101,24 +96,12 @@
|
|
101
96
|
"src/lib/tools/pathBasename.ts",
|
102
97
|
"src/lib/tools/pathJoin.ts",
|
103
98
|
"src/lib/useFormValidationSlice.tsx",
|
104
|
-
"bin/KeycloakVersion.d.ts",
|
105
|
-
"bin/KeycloakVersion.js",
|
106
|
-
"bin/KeycloakVersion.js.map",
|
107
99
|
"bin/build-keycloak-theme/build-keycloak-theme.d.ts",
|
108
100
|
"bin/build-keycloak-theme/build-keycloak-theme.js",
|
109
101
|
"bin/build-keycloak-theme/build-keycloak-theme.js.map",
|
110
102
|
"bin/build-keycloak-theme/ftlValuesGlobalName.d.ts",
|
111
103
|
"bin/build-keycloak-theme/ftlValuesGlobalName.js",
|
112
104
|
"bin/build-keycloak-theme/ftlValuesGlobalName.js.map",
|
113
|
-
"bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.d.ts",
|
114
|
-
"bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.js",
|
115
|
-
"bin/build-keycloak-theme/generateDebugFiles/generateDebugFiles.js.map",
|
116
|
-
"bin/build-keycloak-theme/generateDebugFiles/index.d.ts",
|
117
|
-
"bin/build-keycloak-theme/generateDebugFiles/index.js",
|
118
|
-
"bin/build-keycloak-theme/generateDebugFiles/index.js.map",
|
119
|
-
"bin/build-keycloak-theme/generateDebugFiles/standalone-ha_11.0.3.xml",
|
120
|
-
"bin/build-keycloak-theme/generateDebugFiles/standalone-ha_15.0.2.xml",
|
121
|
-
"bin/build-keycloak-theme/generateDebugFiles/standalone-ha_16.1.0.xml",
|
122
105
|
"bin/build-keycloak-theme/generateFtl/ftl_object_to_js_code_declaring_an_object.ftl",
|
123
106
|
"bin/build-keycloak-theme/generateFtl/generateFtl.d.ts",
|
124
107
|
"bin/build-keycloak-theme/generateFtl/generateFtl.js",
|
@@ -132,6 +115,9 @@
|
|
132
115
|
"bin/build-keycloak-theme/generateKeycloakThemeResources.d.ts",
|
133
116
|
"bin/build-keycloak-theme/generateKeycloakThemeResources.js",
|
134
117
|
"bin/build-keycloak-theme/generateKeycloakThemeResources.js.map",
|
118
|
+
"bin/build-keycloak-theme/generateStartKeycloakTestingContainer.d.ts",
|
119
|
+
"bin/build-keycloak-theme/generateStartKeycloakTestingContainer.js",
|
120
|
+
"bin/build-keycloak-theme/generateStartKeycloakTestingContainer.js.map",
|
135
121
|
"bin/build-keycloak-theme/index.d.ts",
|
136
122
|
"bin/build-keycloak-theme/index.js",
|
137
123
|
"bin/build-keycloak-theme/index.js.map",
|
@@ -2,7 +2,7 @@ import { generateKeycloakThemeResources } from "./generateKeycloakThemeResources
|
|
2
2
|
import { generateJavaStackFiles } from "./generateJavaStackFiles";
|
3
3
|
import { join as pathJoin, relative as pathRelative, basename as pathBasename } from "path";
|
4
4
|
import * as child_process from "child_process";
|
5
|
-
import {
|
5
|
+
import { generateStartKeycloakTestingContainer } from "./generateStartKeycloakTestingContainer";
|
6
6
|
import { URL } from "url";
|
7
7
|
import * as fs from "fs";
|
8
8
|
|
@@ -88,11 +88,11 @@ export function main() {
|
|
88
88
|
"cwd": keycloakThemeBuildingDirPath,
|
89
89
|
});
|
90
90
|
|
91
|
-
|
91
|
+
generateStartKeycloakTestingContainer({
|
92
92
|
keycloakThemeBuildingDirPath,
|
93
93
|
themeName,
|
94
94
|
//We want, however to test in a container running the latest Keycloak version
|
95
|
-
"keycloakVersion": "
|
95
|
+
"keycloakVersion": "17.0.1",
|
96
96
|
});
|
97
97
|
|
98
98
|
console.log(
|
@@ -131,10 +131,10 @@ export function main() {
|
|
131
131
|
"",
|
132
132
|
"To test your theme locally, with hot reloading, you can spin up a Keycloak container image with the theme loaded by running:",
|
133
133
|
"",
|
134
|
-
`👉 $ ./${pathRelative(reactProjectDirPath, pathJoin(keycloakThemeBuildingDirPath,
|
134
|
+
`👉 $ ./${pathRelative(reactProjectDirPath, pathJoin(keycloakThemeBuildingDirPath, generateStartKeycloakTestingContainer.basename))} 👈`,
|
135
135
|
"",
|
136
136
|
"Once your container is up and running: ",
|
137
|
-
"- Log into the admin console 👉 http://localhost:8080 username: admin, password: admin 👈",
|
137
|
+
"- Log into the admin console 👉 http://localhost:8080/admin username: admin, password: admin 👈",
|
138
138
|
'- Create a realm named "myrealm"',
|
139
139
|
'- Create a client with id "myclient" and root url: "https://www.keycloak.org/app/"',
|
140
140
|
`- Select Login Theme: ${themeName} (don't forget to save at the bottom of the page)`,
|
@@ -7,7 +7,6 @@ import { downloadBuiltinKeycloakTheme } from "../download-builtin-keycloak-theme
|
|
7
7
|
import * as child_process from "child_process";
|
8
8
|
import { resourcesCommonPath, resourcesPath, subDirOfPublicDirBasename } from "../../lib/getKcContext/kcContextMocks/urlResourcesPath";
|
9
9
|
import { isInside } from "../tools/isInside";
|
10
|
-
import type { KeycloakVersion } from "../KeycloakVersion";
|
11
10
|
|
12
11
|
export function generateKeycloakThemeResources(params: {
|
13
12
|
themeName: string;
|
@@ -18,7 +17,7 @@ export function generateKeycloakThemeResources(params: {
|
|
18
17
|
urlOrigin: undefined | string;
|
19
18
|
extraPagesId: string[];
|
20
19
|
extraThemeProperties: string[];
|
21
|
-
keycloakVersion:
|
20
|
+
keycloakVersion: string;
|
22
21
|
}) {
|
23
22
|
const {
|
24
23
|
themeName,
|
@@ -0,0 +1,44 @@
|
|
1
|
+
import * as fs from "fs";
|
2
|
+
import { join as pathJoin } from "path";
|
3
|
+
|
4
|
+
generateStartKeycloakTestingContainer.basename = "start_keycloak_testing_container.sh";
|
5
|
+
|
6
|
+
const containerName = "keycloak-testing-container";
|
7
|
+
|
8
|
+
/** Files for being able to run a hot reload keycloak container */
|
9
|
+
export function generateStartKeycloakTestingContainer(params: { keycloakVersion: string; themeName: string; keycloakThemeBuildingDirPath: string }) {
|
10
|
+
const { themeName, keycloakThemeBuildingDirPath, keycloakVersion } = params;
|
11
|
+
|
12
|
+
fs.writeFileSync(
|
13
|
+
pathJoin(keycloakThemeBuildingDirPath, generateStartKeycloakTestingContainer.basename),
|
14
|
+
Buffer.from(
|
15
|
+
[
|
16
|
+
"#!/bin/bash",
|
17
|
+
"",
|
18
|
+
`docker rm ${containerName} || true`,
|
19
|
+
"",
|
20
|
+
`cd ${keycloakThemeBuildingDirPath}`,
|
21
|
+
"",
|
22
|
+
"docker run \\",
|
23
|
+
" -p 8080:8080 \\",
|
24
|
+
` --name ${containerName} \\`,
|
25
|
+
" -e KEYCLOAK_ADMIN=admin \\",
|
26
|
+
" -e KEYCLOAK_ADMIN_PASSWORD=admin \\",
|
27
|
+
" -e JAVA_OPTS=-Dkeycloak.profile=preview \\",
|
28
|
+
` -v ${pathJoin(
|
29
|
+
keycloakThemeBuildingDirPath,
|
30
|
+
"src",
|
31
|
+
"main",
|
32
|
+
"resources",
|
33
|
+
"theme",
|
34
|
+
themeName,
|
35
|
+
)}:/opt/keycloak/themes/${themeName}:rw \\`,
|
36
|
+
` -it quay.io/keycloak/keycloak:${keycloakVersion} \\`,
|
37
|
+
` start-dev`,
|
38
|
+
"",
|
39
|
+
].join("\n"),
|
40
|
+
"utf8",
|
41
|
+
),
|
42
|
+
{ "mode": 0o755 },
|
43
|
+
);
|
44
|
+
}
|
@@ -3,9 +3,8 @@
|
|
3
3
|
import { keycloakThemeBuildingDirPath } from "./build-keycloak-theme";
|
4
4
|
import { join as pathJoin } from "path";
|
5
5
|
import { downloadAndUnzip } from "./tools/downloadAndUnzip";
|
6
|
-
import type { KeycloakVersion } from "./KeycloakVersion";
|
7
6
|
|
8
|
-
export function downloadBuiltinKeycloakTheme(params: { keycloakVersion:
|
7
|
+
export function downloadBuiltinKeycloakTheme(params: { keycloakVersion: string; destDirPath: string }) {
|
9
8
|
const { keycloakVersion, destDirPath } = params;
|
10
9
|
|
11
10
|
for (const ext of ["", "-community"]) {
|
@@ -19,7 +18,7 @@ export function downloadBuiltinKeycloakTheme(params: { keycloakVersion: Keycloak
|
|
19
18
|
|
20
19
|
if (require.main === module) {
|
21
20
|
const keycloakVersion = (() => {
|
22
|
-
const keycloakVersion = process.argv[2] as
|
21
|
+
const keycloakVersion = process.argv[2] as string | undefined;
|
23
22
|
|
24
23
|
if (keycloakVersion === undefined) {
|
25
24
|
return "11.0.3";
|
@@ -5,12 +5,11 @@ import { crawl } from "./tools/crawl";
|
|
5
5
|
import { downloadBuiltinKeycloakTheme } from "./download-builtin-keycloak-theme";
|
6
6
|
import { getProjectRoot } from "./tools/getProjectRoot";
|
7
7
|
import { rm_rf, rm_r } from "./tools/rm";
|
8
|
-
import { keycloakVersions } from "./KeycloakVersion";
|
9
8
|
|
10
9
|
//@ts-ignore
|
11
10
|
const propertiesParser = require("properties-parser");
|
12
11
|
|
13
|
-
for (const keycloakVersion of
|
12
|
+
for (const keycloakVersion of ["11.0.3", "15.0.2", "16.1.0"]) {
|
14
13
|
console.log({ keycloakVersion });
|
15
14
|
|
16
15
|
const tmpDirPath = pathJoin(getProjectRoot(), "tmp_xImOef9dOd44");
|
package/bin/KeycloakVersion.d.ts
DELETED
package/bin/KeycloakVersion.js
DELETED
@@ -1 +0,0 @@
|
|
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"}
|
@@ -1,8 +0,0 @@
|
|
1
|
-
import type { KeycloakVersion } from "../../KeycloakVersion";
|
2
|
-
export declare const containerLaunchScriptBasename = "start_keycloak_testing_container.sh";
|
3
|
-
/** Files for being able to run a hot reload keycloak container */
|
4
|
-
export declare function generateDebugFiles(params: {
|
5
|
-
keycloakVersion: KeycloakVersion;
|
6
|
-
themeName: string;
|
7
|
-
keycloakThemeBuildingDirPath: string;
|
8
|
-
}): void;
|
@@ -1,72 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
-
if (k2 === undefined) k2 = k;
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
5
|
-
}) : (function(o, m, k, k2) {
|
6
|
-
if (k2 === undefined) k2 = k;
|
7
|
-
o[k2] = m[k];
|
8
|
-
}));
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
11
|
-
}) : function(o, v) {
|
12
|
-
o["default"] = v;
|
13
|
-
});
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
15
|
-
if (mod && mod.__esModule) return mod;
|
16
|
-
var result = {};
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
18
|
-
__setModuleDefault(result, mod);
|
19
|
-
return result;
|
20
|
-
};
|
21
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
22
|
-
exports.generateDebugFiles = exports.containerLaunchScriptBasename = void 0;
|
23
|
-
var fs = __importStar(require("fs"));
|
24
|
-
var path_1 = require("path");
|
25
|
-
exports.containerLaunchScriptBasename = "start_keycloak_testing_container.sh";
|
26
|
-
/** Files for being able to run a hot reload keycloak container */
|
27
|
-
function generateDebugFiles(params) {
|
28
|
-
var themeName = params.themeName, keycloakThemeBuildingDirPath = params.keycloakThemeBuildingDirPath, keycloakVersion = params.keycloakVersion;
|
29
|
-
fs.writeFileSync((0, path_1.join)(keycloakThemeBuildingDirPath, "Dockerfile"), Buffer.from([
|
30
|
-
"FROM jboss/keycloak:" + keycloakVersion,
|
31
|
-
"",
|
32
|
-
"USER root",
|
33
|
-
"",
|
34
|
-
"WORKDIR /",
|
35
|
-
"",
|
36
|
-
"ADD configuration /opt/jboss/keycloak/standalone/configuration/",
|
37
|
-
"",
|
38
|
-
'ENTRYPOINT [ "/opt/jboss/tools/docker-entrypoint.sh" ]',
|
39
|
-
].join("\n"), "utf8"));
|
40
|
-
var dockerImage = themeName + "/keycloak-hot-reload";
|
41
|
-
var containerName = "keycloak-testing-container";
|
42
|
-
fs.writeFileSync((0, path_1.join)(keycloakThemeBuildingDirPath, exports.containerLaunchScriptBasename), Buffer.from([
|
43
|
-
"#!/bin/bash",
|
44
|
-
"",
|
45
|
-
"cd " + keycloakThemeBuildingDirPath,
|
46
|
-
"",
|
47
|
-
"docker rm " + containerName + " || true",
|
48
|
-
"",
|
49
|
-
"docker build . -t " + dockerImage,
|
50
|
-
"",
|
51
|
-
"docker run \\",
|
52
|
-
" -p 8080:8080 \\",
|
53
|
-
" --name " + containerName + " \\",
|
54
|
-
" -e KEYCLOAK_USER=admin \\",
|
55
|
-
" -e KEYCLOAK_PASSWORD=admin \\",
|
56
|
-
" -e JAVA_OPTS=-Dkeycloak.profile=preview \\",
|
57
|
-
" -v " + (0, path_1.join)(keycloakThemeBuildingDirPath, "src", "main", "resources", "theme", themeName) + ":/opt/jboss/keycloak/themes/" + themeName + ":rw \\",
|
58
|
-
" -it " + dockerImage + ":latest",
|
59
|
-
"",
|
60
|
-
].join("\n"), "utf8"), { "mode": 493 });
|
61
|
-
var standaloneHaFilePath = (0, path_1.join)(keycloakThemeBuildingDirPath, "configuration", "standalone-ha.xml");
|
62
|
-
try {
|
63
|
-
fs.mkdirSync((0, path_1.dirname)(standaloneHaFilePath));
|
64
|
-
}
|
65
|
-
catch (_a) { }
|
66
|
-
fs.writeFileSync(standaloneHaFilePath, fs
|
67
|
-
.readFileSync((0, path_1.join)(__dirname, "standalone-ha_" + keycloakVersion + ".xml"))
|
68
|
-
.toString("utf8")
|
69
|
-
.replace(new RegExp(["<staticMaxAge>2592000</staticMaxAge>", "<cacheThemes>true</cacheThemes>", "<cacheTemplates>true</cacheTemplates>"].join("\\s*"), "g"), ["<staticMaxAge>-1</staticMaxAge>", "<cacheThemes>false</cacheThemes>", "<cacheTemplates>false</cacheTemplates>"].join("\n")));
|
70
|
-
}
|
71
|
-
exports.generateDebugFiles = generateDebugFiles;
|
72
|
-
//# sourceMappingURL=generateDebugFiles.js.map
|
@@ -1 +0,0 @@
|
|
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"}
|
@@ -1 +0,0 @@
|
|
1
|
-
export * from "./generateDebugFiles";
|
@@ -1,14 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
3
|
-
if (k2 === undefined) k2 = k;
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
5
|
-
}) : (function(o, m, k, k2) {
|
6
|
-
if (k2 === undefined) k2 = k;
|
7
|
-
o[k2] = m[k];
|
8
|
-
}));
|
9
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
10
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
11
|
-
};
|
12
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
13
|
-
__exportStar(require("./generateDebugFiles"), exports);
|
14
|
-
//# sourceMappingURL=index.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/bin/build-keycloak-theme/generateDebugFiles/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,uDAAqC"}
|