keycloakify 4.7.6 → 4.8.0

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.
Files changed (44) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +37 -10
  3. package/bin/build-keycloak-theme/build-keycloak-theme.d.ts +1 -0
  4. package/bin/build-keycloak-theme/build-keycloak-theme.js +7 -5
  5. package/bin/build-keycloak-theme/build-keycloak-theme.js.map +1 -1
  6. package/bin/build-keycloak-theme/generateJavaStackFiles.d.ts +1 -0
  7. package/bin/build-keycloak-theme/generateJavaStackFiles.js +27 -2
  8. package/bin/build-keycloak-theme/generateJavaStackFiles.js.map +1 -1
  9. package/bin/build-keycloak-theme/generateKeycloakThemeResources.d.ts +4 -1
  10. package/bin/build-keycloak-theme/generateKeycloakThemeResources.js +18 -1
  11. package/bin/build-keycloak-theme/generateKeycloakThemeResources.js.map +1 -1
  12. package/bin/create-keycloak-theme-email-directory.d.ts +1 -0
  13. package/bin/create-keycloak-theme-email-directory.js +93 -0
  14. package/bin/create-keycloak-theme-email-directory.js.map +1 -0
  15. package/bin/download-builtin-keycloak-theme.js +54 -13
  16. package/bin/download-builtin-keycloak-theme.js.map +1 -1
  17. package/bin/promptKeycloakVersion.d.ts +3 -0
  18. package/bin/promptKeycloakVersion.js +91 -0
  19. package/bin/promptKeycloakVersion.js.map +1 -0
  20. package/bin/tools/NpmModuleVersion.d.ts +22 -0
  21. package/bin/tools/NpmModuleVersion.js +103 -0
  22. package/bin/tools/NpmModuleVersion.js.map +1 -0
  23. package/bin/tools/createOctokit.d.ts +5 -0
  24. package/bin/tools/createOctokit.js +21 -0
  25. package/bin/tools/createOctokit.js.map +1 -0
  26. package/bin/tools/octokit-addons/getLatestsSemVersionedTag.d.ts +15 -0
  27. package/bin/tools/octokit-addons/getLatestsSemVersionedTag.js +112 -0
  28. package/bin/tools/octokit-addons/getLatestsSemVersionedTag.js.map +1 -0
  29. package/bin/tools/octokit-addons/listTags.d.ts +13 -0
  30. package/bin/tools/octokit-addons/listTags.js +154 -0
  31. package/bin/tools/octokit-addons/listTags.js.map +1 -0
  32. package/lib/i18n/KcLanguageTag.d.ts +1 -1
  33. package/lib/i18n/useKcLanguageTag.d.ts +1 -1
  34. package/package.json +31 -4
  35. package/src/bin/build-keycloak-theme/build-keycloak-theme.ts +6 -3
  36. package/src/bin/build-keycloak-theme/generateJavaStackFiles.ts +9 -3
  37. package/src/bin/build-keycloak-theme/generateKeycloakThemeResources.ts +27 -1
  38. package/src/bin/create-keycloak-theme-email-directory.ts +34 -0
  39. package/src/bin/download-builtin-keycloak-theme.ts +10 -15
  40. package/src/bin/promptKeycloakVersion.ts +44 -0
  41. package/src/bin/tools/NpmModuleVersion.ts +73 -0
  42. package/src/bin/tools/createOctokit.ts +7 -0
  43. package/src/bin/tools/octokit-addons/getLatestsSemVersionedTag.ts +40 -0
  44. package/src/bin/tools/octokit-addons/listTags.ts +49 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ## **4.8.0** (2022-04-20)
2
+
3
+ - Document email template customization feature #9
4
+ - Add mention of download-builtin-keycloak-theme
5
+ - Let the choice of kc version be auto in GH Action
6
+ - Only test on node v15 and v14 (bellow is no longer supported (rmSync)
7
+ - Feature email customization #9
8
+
1
9
  ### **4.7.6** (2022-04-12)
2
10
 
3
11
  - Fix bugs with language switch #85
package/README.md CHANGED
@@ -72,6 +72,7 @@ If you already have a Keycloak custom theme, it can be easily ported to Keycloak
72
72
  - [Advanced pages configuration](#advanced-pages-configuration)
73
73
  - [Hot reload](#hot-reload)
74
74
  - [Enable loading in a blink of an eye of login pages ⚡ (--external-assets)](#enable-loading-in-a-blink-of-an-eye-of-login-pages----external-assets)
75
+ - [Email template customization.](#email-template-customization)
75
76
  - [User profile and frontend form validation](#user-profile-and-frontend-form-validation)
76
77
  - [Support for Terms and conditions](#support-for-terms-and-conditions)
77
78
  - [Some pages still have the default theme. Why?](#some-pages-still-have-the-default-theme-why)
@@ -85,8 +86,15 @@ If you already have a Keycloak custom theme, it can be easily ported to Keycloak
85
86
  - [Kickstart video](#kickstart-video)
86
87
  - [FTL errors related to `ftl_object_to_js_code_declaring_an_object` in Keycloak logs.](#ftl-errors-related-to-ftl_object_to_js_code_declaring_an_object-in-keycloak-logs)
87
88
  - [Adding custom message (to `i18n/useKcMessage.tsx`)](#adding-custom-message-to-i18nusekcmessagetsx)
89
+ - [Downloading builtin theme resource files](#downloading-builtin-theme-resource-files)
88
90
  - [Email domain whitelist](#email-domain-whitelist)
89
91
  - [Changelog highlights](#changelog-highlights)
92
+ - [v4.7.4](#v474)
93
+ - [v4.7.2](#v472)
94
+ - [v4.7.0](#v470)
95
+ - [v4.6.0](#v460)
96
+ - [v4.5.3](#v453)
97
+ - [v4.3.0](#v430)
90
98
  - [v4](#v4)
91
99
  - [v3](#v3)
92
100
  - [v2.5](#v25)
@@ -94,7 +102,7 @@ If you already have a Keycloak custom theme, it can be easily ported to Keycloak
94
102
 
95
103
  # Requirements
96
104
 
97
- On Windows OS you'll have to use [WSL](https://docs.microsoft.com/en-us/windows/wsl/install-win10). More info [here](https://github.com/InseeFrLab/keycloakify/issues/54%23issuecomment-984834217)
105
+ On Windows OS you'll have to use [WSL](https://docs.microsoft.com/en-us/windows/wsl/install-win10). More info [here](https://github.com/InseeFrLab/keycloakify/issues/54#issuecomment-984834217)
98
106
 
99
107
  Tested with the following Keycloak versions:
100
108
 
@@ -102,6 +110,7 @@ Tested with the following Keycloak versions:
102
110
  - [12.0.4](https://hub.docker.com/layers/jboss/keycloak/12.0.4/images/sha256-67e0c88e69bd0c7aef972c40bdeb558a974013a28b3668ca790ed63a04d70584?context=explore)
103
111
  - [15.0.2](https://hub.docker.com/layers/jboss/keycloak/15.0.2/images/sha256-d8ed1ee5df42a178c341f924377da75db49eab08ea9f058ff39a8ed7ee05ec93?context=explore)
104
112
  - [16.1.0](https://hub.docker.com/layers/jboss/keycloak/16.1.0/images/sha256-6ecb9492224c6cfbb55d43f64a5ab634145d8cc1eba14eae8c37e3afde89546e?context=explore)
113
+ - 17.0.1
105
114
 
106
115
  This tool will be maintained to stay compatible with Keycloak v11 and up, however, the default pages you will get
107
116
  (before you customize it) will always be the ones of Keycloak v11.
@@ -111,20 +120,20 @@ It assumes there is a `build/` directory at the root of your react project direc
111
120
  and a `build/static/` directory generated by webpack.
112
121
  For more information see [this issue](https://github.com/InseeFrLab/keycloakify/issues/5#issuecomment-832296432)
113
122
 
114
- **All this is defaults with [`create-react-app`](https://create-react-app.dev)** (tested with 4.0.3)
123
+ **All this is defaults with [`create-react-app`](https://create-react-app.dev)** (tested with 5.0.0, 4.0.3)
115
124
 
116
125
  - `mvn` ([Maven](https://maven.apache.org/)), `rm`, `mkdir`, `curl`, `unzip` are assumed to be available.
117
126
  - `docker` must be up and running when running `start_keycloak_testing_container.sh` (Instructions provided after running `yarn keycloak`).
118
127
 
119
128
  ## My framework doesn’t seem to be supported, what can I do?
120
129
 
121
- Currently Keycloakify is only compatible with `create-react-app` apps.
130
+ Currently Keycloakify is only compatible with SPA React apps.
122
131
  It doesn’t mean that you can't use Keycloakify if you are using Next.js, Express or any other
123
- framework that involves SSR but your Keycloak theme will need to be a standalone project.
132
+ framework that involves a server but your Keycloak theme will need to be a standalone project.
124
133
  Find specific instructions about how to get started [**here**](https://github.com/garronej/keycloakify-demo-app#keycloak-theme-only).
125
134
 
126
135
  To share your styles between your main app and your login pages you will need to externalize your design system by making it a
127
- separate module. Checkout [ts_ci](https://github.com/garronej/ts_ci), it can help with that.
136
+ separate module. Checkout [ts_ci](https://github.com/garronej/ts_ci), it can help with that (example with [our design system](https://github.com/InseeFrLab/onyxia-ui)).
128
137
 
129
138
  # How to use
130
139
 
@@ -301,6 +310,19 @@ performance boost if you jump through those hoops:
301
310
 
302
311
  Checkout a complete setup [here](https://github.com/garronej/keycloakify-demo-app#about-keycloakify)
303
312
 
313
+ # Email template customization.
314
+
315
+ _Introduced in [v4.8.0](https://github.com/InseeFrLab/keycloakify/releases/tag/v4.8.0)_
316
+
317
+ It is now possible to customize the emails sent to your users to confirm their email address ect.
318
+ Just run `npx create-keycloak-theme-email-directory`, it will create a `keycloak_theme_email` directory
319
+ at the root of your project.
320
+ This directory should be tracked by Git (`yarn add -A`)
321
+ You can start hacking the default template.
322
+ When `npx build-keycloak-theme` (`yarn keycloak`) is run. If the directory `keycloak_theme_email` exists
323
+ at the root of your project, it will be bundled into your `.jar` file and you will be able to select
324
+ it [in the Keycloak administration pages](https://user-images.githubusercontent.com/6702424/164299589-75f8008b-b24e-4836-ad6b-72149bb55621.png).
325
+
304
326
  # User profile and frontend form validation
305
327
 
306
328
  <p align="center">
@@ -356,7 +378,7 @@ the building and publishing of the theme (the .jar file).
356
378
 
357
379
  ## `process.env.PUBLIC_URL` not supported.
358
380
 
359
- You won't be able to [import things from your public directory **in your JavaScript code**](https://create-react-app.dev/docs/using-the-public-folder/#adding-assets-outside-of-the-module-system).
381
+ You won't be able to [import things from your public directory **in your JavaScript code** (it's supported in `public/index.html`)](https://create-react-app.dev/docs/using-the-public-folder/#adding-assets-outside-of-the-module-system).
360
382
  (This isn't recommended anyway).
361
383
 
362
384
  ## `@font-face` importing fonts from the `src/` dir
@@ -466,6 +488,11 @@ You can reproduce [this approach](https://github.com/garronej/keycloakify-demo-a
466
488
  ( don't forget to [evaluate the code](https://github.com/garronej/keycloakify-demo-app/blob/0a6d349dba89a5702f98ba48bca6c76ac7265e1f/src/index.tsx#L15) ).
467
489
  This approach is a bit hacky as it doesn't provide type safety but it works.
468
490
 
491
+ # Downloading builtin theme resource files
492
+
493
+ Running `npx download-builtin-keycloak-theme` will let you download the themes that comes by default with
494
+ a Keycloak version of your choosing.
495
+
469
496
  # Email domain whitelist
470
497
 
471
498
  NOTE: This have been kind of deprecated by [user attribute](#user-profile-and-frontend-form-validation) you could
@@ -476,22 +503,22 @@ and `kcRegisterContext["authorizedMailDomains"]` to validate on.
476
503
 
477
504
  # Changelog highlights
478
505
 
479
- # v4.7.4
506
+ ## v4.7.4
480
507
 
481
508
  **M1 Mac** support (for testing locally with a dockerized Keycloak).
482
509
 
483
- # v4.7.2
510
+ ## v4.7.2
484
511
 
485
512
  > WARNING: This is broken.
486
513
  > Testing with local Keycloak container working with M1 Mac. Thanks to [@eduardosanzb](https://github.com/InseeFrLab/keycloakify/issues/43#issuecomment-975699658).
487
514
  > Be aware: When running M1s you are testing with Keycloak v15 else the local container spun will be a Keycloak v16.1.0.
488
515
 
489
- # v4.7.0
516
+ ## v4.7.0
490
517
 
491
518
  Register with user profile enabled: Out of the box `options` validator support.
492
519
  [Example](https://user-images.githubusercontent.com/6702424/158911163-81e6bbe8-feb0-4dc8-abff-de199d7a678e.mov)
493
520
 
494
- # v4.6.0
521
+ ## v4.6.0
495
522
 
496
523
  `tss-react` and `powerhooks` are no longer peer dependencies of `keycloakify`.
497
524
  After updating Keycloakify you can remove `tss-react` and `powerhooks` from your dependencies if you don't use them explicitly.
@@ -1,2 +1,3 @@
1
1
  export declare const keycloakThemeBuildingDirPath: string;
2
+ export declare const keycloakThemeEmailDirPath: string;
2
3
  export declare function main(): void;
@@ -31,7 +31,7 @@ var __importStar = (this && this.__importStar) || function (mod) {
31
31
  };
32
32
  var _a;
33
33
  Object.defineProperty(exports, "__esModule", { value: true });
34
- exports.main = exports.keycloakThemeBuildingDirPath = void 0;
34
+ exports.main = exports.keycloakThemeEmailDirPath = exports.keycloakThemeBuildingDirPath = void 0;
35
35
  var generateKeycloakThemeResources_1 = require("./generateKeycloakThemeResources");
36
36
  var generateJavaStackFiles_1 = require("./generateJavaStackFiles");
37
37
  var path_1 = require("path");
@@ -43,6 +43,7 @@ var reactProjectDirPath = process.cwd();
43
43
  var doUseExternalAssets = ((_a = process.argv[2]) === null || _a === void 0 ? void 0 : _a.toLowerCase()) === "--external-assets";
44
44
  var parsedPackageJson = require((0, path_1.join)(reactProjectDirPath, "package.json"));
45
45
  exports.keycloakThemeBuildingDirPath = (0, path_1.join)(reactProjectDirPath, "build_keycloak");
46
+ exports.keycloakThemeEmailDirPath = (0, path_1.join)(exports.keycloakThemeBuildingDirPath, "..", "keycloak_theme_email");
46
47
  function sanitizeThemeName(name) {
47
48
  return name
48
49
  .replace(/^@(.*)/, "$1")
@@ -55,7 +56,7 @@ function main() {
55
56
  var extraPagesId = (_b = (_a = parsedPackageJson["keycloakify"]) === null || _a === void 0 ? void 0 : _a["extraPages"]) !== null && _b !== void 0 ? _b : [];
56
57
  var extraThemeProperties = (_d = (_c = parsedPackageJson["keycloakify"]) === null || _c === void 0 ? void 0 : _c["extraThemeProperties"]) !== null && _d !== void 0 ? _d : [];
57
58
  var themeName = sanitizeThemeName(parsedPackageJson.name);
58
- (0, generateKeycloakThemeResources_1.generateKeycloakThemeResources)(__assign(__assign({ keycloakThemeBuildingDirPath: exports.keycloakThemeBuildingDirPath, "reactAppBuildDirPath": (0, path_1.join)(reactProjectDirPath, "build"), themeName: themeName }, (function () {
59
+ var doBundleEmailTemplate = (0, generateKeycloakThemeResources_1.generateKeycloakThemeResources)(__assign(__assign({ keycloakThemeBuildingDirPath: exports.keycloakThemeBuildingDirPath, keycloakThemeEmailDirPath: exports.keycloakThemeEmailDirPath, "reactAppBuildDirPath": (0, path_1.join)(reactProjectDirPath, "build"), themeName: themeName }, (function () {
59
60
  var url = (function () {
60
61
  var homepage = parsedPackageJson.homepage;
61
62
  if (homepage !== undefined) {
@@ -83,12 +84,13 @@ function main() {
83
84
  //We have to leave it at that otherwise we break our default theme.
84
85
  //Problem is that we can't guarantee that the the old resources
85
86
  //will still be available on the newer keycloak version.
86
- "keycloakVersion": "11.0.3" }));
87
+ "keycloakVersion": "11.0.3" })).doBundleEmailTemplate;
87
88
  var jarFilePath = (0, generateJavaStackFiles_1.generateJavaStackFiles)({
88
- version: parsedPackageJson.version,
89
+ "version": parsedPackageJson.version,
89
90
  themeName: themeName,
90
- homepage: parsedPackageJson.homepage,
91
+ "homepage": parsedPackageJson.homepage,
91
92
  keycloakThemeBuildingDirPath: exports.keycloakThemeBuildingDirPath,
93
+ doBundleEmailTemplate: doBundleEmailTemplate,
92
94
  }).jarFilePath;
93
95
  child_process.execSync("mvn package", {
94
96
  "cwd": exports.keycloakThemeBuildingDirPath,
@@ -1 +1 @@
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
+ {"version":3,"file":"build-keycloak-theme.js","sourceRoot":"","sources":["../../src/bin/build-keycloak-theme/build-keycloak-theme.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ export declare function generateJavaStackFiles(params: {
3
3
  themeName: string;
4
4
  homepage?: string;
5
5
  keycloakThemeBuildingDirPath: string;
6
+ doBundleEmailTemplate: boolean;
6
7
  }): {
7
8
  jarFilePath: string;
8
9
  };
@@ -18,13 +18,38 @@ var __importStar = (this && this.__importStar) || function (mod) {
18
18
  __setModuleDefault(result, mod);
19
19
  return result;
20
20
  };
21
+ var __read = (this && this.__read) || function (o, n) {
22
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
23
+ if (!m) return o;
24
+ var i = m.call(o), r, ar = [], e;
25
+ try {
26
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
27
+ }
28
+ catch (error) { e = { error: error }; }
29
+ finally {
30
+ try {
31
+ if (r && !r.done && (m = i["return"])) m.call(i);
32
+ }
33
+ finally { if (e) throw e.error; }
34
+ }
35
+ return ar;
36
+ };
37
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
38
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
39
+ if (ar || !(i in from)) {
40
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
41
+ ar[i] = from[i];
42
+ }
43
+ }
44
+ return to.concat(ar || Array.prototype.slice.call(from));
45
+ };
21
46
  Object.defineProperty(exports, "__esModule", { value: true });
22
47
  exports.generateJavaStackFiles = void 0;
23
48
  var url = __importStar(require("url"));
24
49
  var fs = __importStar(require("fs"));
25
50
  var path_1 = require("path");
26
51
  function generateJavaStackFiles(params) {
27
- var themeName = params.themeName, version = params.version, homepage = params.homepage, keycloakThemeBuildingDirPath = params.keycloakThemeBuildingDirPath;
52
+ var themeName = params.themeName, version = params.version, homepage = params.homepage, keycloakThemeBuildingDirPath = params.keycloakThemeBuildingDirPath, doBundleEmailTemplate = params.doBundleEmailTemplate;
28
53
  {
29
54
  var pomFileCode = (function generatePomFileCode() {
30
55
  var groupId = (function () {
@@ -64,7 +89,7 @@ function generateJavaStackFiles(params) {
64
89
  "themes": [
65
90
  {
66
91
  "name": themeName,
67
- "types": ["login"],
92
+ "types": __spreadArray(["login"], __read((doBundleEmailTemplate ? ["email"] : [])), false),
68
93
  },
69
94
  ],
70
95
  }, null, 2), "utf8"));
@@ -1 +1 @@
1
- {"version":3,"file":"generateJavaStackFiles.js","sourceRoot":"","sources":["../../src/bin/build-keycloak-theme/generateJavaStackFiles.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,uCAA2B;AAC3B,qCAAyB;AACzB,6BAAgE;AAEhE,SAAgB,sBAAsB,CAAC,MAAuG;IAGlI,IAAA,SAAS,GAAsD,MAAM,UAA5D,EAAE,OAAO,GAA6C,MAAM,QAAnD,EAAE,QAAQ,GAAmC,MAAM,SAAzC,EAAE,4BAA4B,GAAK,MAAM,6BAAX,CAAY;IAE9E;QACY,IAAA,WAAW,GAAK,CAAC,SAAS,mBAAmB;YAGjD,IAAM,OAAO,GAAG,CAAC;;gBACb,IAAM,eAAe,GAAG,qDAAmD,SAAW,CAAC;gBAEvF,OAAO,CACH,CAAC,CAAC,QAAQ;oBACN,CAAC,CAAC,eAAe;oBACjB,CAAC,CAAC,MAAA,MAAA,MAAA,GAAG;yBACE,KAAK,CAAC,QAAQ,CAAC;yBACf,IAAI,0CAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,0CAC5B,KAAK,CAAC,GAAG,EACV,OAAO,GACP,IAAI,CAAC,GAAG,CAAC,mCAAI,eAAe,CAAC,GAAG,WAAW,CACzD,CAAC;YACN,CAAC,CAAC,EAAE,CAAC;YAEL,IAAM,UAAU,GAAM,SAAS,oBAAiB,CAAC;YAEjD,IAAM,WAAW,GAAG;gBAChB,yBAAuB;gBACvB,sDAAoD;gBACpD,2DAAwD;gBACxD,sGAAmG;gBACnG,sCAAqC;gBACrC,gBAAa,OAAO,eAAY;gBAChC,mBAAgB,UAAU,kBAAe;gBACzC,gBAAa,OAAO,eAAY;gBAChC,aAAU,UAAU,YAAS;gBAC7B,mBAAkB;gBAClB,YAAY;aACf,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEb,OAAO,EAAE,WAAW,aAAA,EAAE,CAAC;QAC3B,CAAC,CAAC,EAAE,YAnCe,CAmCd;QAEL,EAAE,CAAC,aAAa,CAAC,IAAA,WAAQ,EAAC,4BAA4B,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;KACzG;IAED;QACI,IAAM,qBAAqB,GAAG,IAAA,WAAQ,EAAC,4BAA4B,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,sBAAsB,CAAC,CAAC;QAErI,IAAI;YACA,EAAE,CAAC,SAAS,CAAC,IAAA,cAAW,EAAC,qBAAqB,CAAC,CAAC,CAAC;SACpD;QAAC,WAAM,GAAE;QAEV,EAAE,CAAC,aAAa,CACZ,qBAAqB,EACrB,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,SAAS,CACV;YACI,QAAQ,EAAE;gBACN;oBACI,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE,CAAC,OAAO,CAAC;iBACrB;aACJ;SACJ,EACD,IAAI,EACJ,CAAC,CACJ,EACD,MAAM,CACT,CACJ,CAAC;KACL;IAED,OAAO;QACH,aAAa,EAAE,IAAA,WAAQ,EAAC,4BAA4B,EAAE,QAAQ,EAAK,SAAS,SAAI,OAAO,SAAM,CAAC;KACjG,CAAC;AACN,CAAC;AA5ED,wDA4EC"}
1
+ {"version":3,"file":"generateJavaStackFiles.js","sourceRoot":"","sources":["../../src/bin/build-keycloak-theme/generateJavaStackFiles.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAA2B;AAC3B,qCAAyB;AACzB,6BAAgE;AAEhE,SAAgB,sBAAsB,CAAC,MAMtC;IAGW,IAAA,SAAS,GAA6E,MAAM,UAAnF,EAAE,OAAO,GAAoE,MAAM,QAA1E,EAAE,QAAQ,GAA0D,MAAM,SAAhE,EAAE,4BAA4B,GAA4B,MAAM,6BAAlC,EAAE,qBAAqB,GAAK,MAAM,sBAAX,CAAY;IAErG;QACY,IAAA,WAAW,GAAK,CAAC,SAAS,mBAAmB;YAGjD,IAAM,OAAO,GAAG,CAAC;;gBACb,IAAM,eAAe,GAAG,qDAAmD,SAAW,CAAC;gBAEvF,OAAO,CACH,CAAC,CAAC,QAAQ;oBACN,CAAC,CAAC,eAAe;oBACjB,CAAC,CAAC,MAAA,MAAA,MAAA,GAAG;yBACE,KAAK,CAAC,QAAQ,CAAC;yBACf,IAAI,0CAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,0CAC5B,KAAK,CAAC,GAAG,EACV,OAAO,GACP,IAAI,CAAC,GAAG,CAAC,mCAAI,eAAe,CAAC,GAAG,WAAW,CACzD,CAAC;YACN,CAAC,CAAC,EAAE,CAAC;YAEL,IAAM,UAAU,GAAM,SAAS,oBAAiB,CAAC;YAEjD,IAAM,WAAW,GAAG;gBAChB,yBAAuB;gBACvB,sDAAoD;gBACpD,2DAAwD;gBACxD,sGAAmG;gBACnG,sCAAqC;gBACrC,gBAAa,OAAO,eAAY;gBAChC,mBAAgB,UAAU,kBAAe;gBACzC,gBAAa,OAAO,eAAY;gBAChC,aAAU,UAAU,YAAS;gBAC7B,mBAAkB;gBAClB,YAAY;aACf,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEb,OAAO,EAAE,WAAW,aAAA,EAAE,CAAC;QAC3B,CAAC,CAAC,EAAE,YAnCe,CAmCd;QAEL,EAAE,CAAC,aAAa,CAAC,IAAA,WAAQ,EAAC,4BAA4B,EAAE,SAAS,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;KACzG;IAED;QACI,IAAM,qBAAqB,GAAG,IAAA,WAAQ,EAAC,4BAA4B,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,sBAAsB,CAAC,CAAC;QAErI,IAAI;YACA,EAAE,CAAC,SAAS,CAAC,IAAA,cAAW,EAAC,qBAAqB,CAAC,CAAC,CAAC;SACpD;QAAC,WAAM,GAAE;QAEV,EAAE,CAAC,aAAa,CACZ,qBAAqB,EACrB,MAAM,CAAC,IAAI,CACP,IAAI,CAAC,SAAS,CACV;YACI,QAAQ,EAAE;gBACN;oBACI,MAAM,EAAE,SAAS;oBACjB,OAAO,iBAAG,OAAO,UAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,SAAC;iBAClE;aACJ;SACJ,EACD,IAAI,EACJ,CAAC,CACJ,EACD,MAAM,CACT,CACJ,CAAC;KACL;IAED,OAAO;QACH,aAAa,EAAE,IAAA,WAAQ,EAAC,4BAA4B,EAAE,QAAQ,EAAK,SAAS,SAAI,OAAO,SAAM,CAAC;KACjG,CAAC;AACN,CAAC;AAlFD,wDAkFC"}
@@ -2,9 +2,12 @@ export declare function generateKeycloakThemeResources(params: {
2
2
  themeName: string;
3
3
  reactAppBuildDirPath: string;
4
4
  keycloakThemeBuildingDirPath: string;
5
+ keycloakThemeEmailDirPath: string;
5
6
  urlPathname: string;
6
7
  urlOrigin: undefined | string;
7
8
  extraPagesId: string[];
8
9
  extraThemeProperties: string[];
9
10
  keycloakVersion: string;
10
- }): void;
11
+ }): {
12
+ doBundleEmailTemplate: boolean;
13
+ };
@@ -66,7 +66,7 @@ var child_process = __importStar(require("child_process"));
66
66
  var urlResourcesPath_1 = require("../../lib/getKcContext/kcContextMocks/urlResourcesPath");
67
67
  var isInside_1 = require("../tools/isInside");
68
68
  function generateKeycloakThemeResources(params) {
69
- var themeName = params.themeName, reactAppBuildDirPath = params.reactAppBuildDirPath, keycloakThemeBuildingDirPath = params.keycloakThemeBuildingDirPath, urlPathname = params.urlPathname, urlOrigin = params.urlOrigin, extraPagesId = params.extraPagesId, extraThemeProperties = params.extraThemeProperties, keycloakVersion = params.keycloakVersion;
69
+ var themeName = params.themeName, reactAppBuildDirPath = params.reactAppBuildDirPath, keycloakThemeBuildingDirPath = params.keycloakThemeBuildingDirPath, keycloakThemeEmailDirPath = params.keycloakThemeEmailDirPath, urlPathname = params.urlPathname, urlOrigin = params.urlOrigin, extraPagesId = params.extraPagesId, extraThemeProperties = params.extraThemeProperties, keycloakVersion = params.keycloakVersion;
70
70
  var themeDirPath = (0, path_1.join)(keycloakThemeBuildingDirPath, "src", "main", "resources", "theme", themeName, "login");
71
71
  var allCssGlobalsToDefine = {};
72
72
  (0, transformCodebase_1.transformCodebase)({
@@ -103,6 +103,22 @@ function generateKeycloakThemeResources(params) {
103
103
  return urlOrigin === undefined ? { "modifiedSourceCode": sourceCode } : undefined;
104
104
  },
105
105
  });
106
+ var doBundleEmailTemplate;
107
+ email: {
108
+ if (!fs.existsSync(keycloakThemeEmailDirPath)) {
109
+ console.log([
110
+ "Not bundling email template because " + (0, path_1.basename)(keycloakThemeEmailDirPath) + " does not exist",
111
+ "To start customizing the email template, run: \uD83D\uDC49 npx create-keycloak-theme-email-directory \uD83D\uDC48",
112
+ ].join("\n"));
113
+ doBundleEmailTemplate = false;
114
+ break email;
115
+ }
116
+ doBundleEmailTemplate = true;
117
+ (0, transformCodebase_1.transformCodebase)({
118
+ "srcDirPath": keycloakThemeEmailDirPath,
119
+ "destDirPath": (0, path_1.join)(themeDirPath, "..", "email"),
120
+ });
121
+ }
106
122
  var generateFtlFilesCode = (0, generateFtl_1.generateFtlFilesCodeFactory)({
107
123
  "cssGlobalsToDefine": allCssGlobalsToDefine,
108
124
  "indexHtmlCode": fs.readFileSync((0, path_1.join)(reactAppBuildDirPath, "index.html")).toString("utf8"),
@@ -140,6 +156,7 @@ function generateKeycloakThemeResources(params) {
140
156
  child_process.execSync("rm -r " + tmpDirPath);
141
157
  }
142
158
  fs.writeFileSync((0, path_1.join)(themeDirPath, "theme.properties"), Buffer.from("parent=keycloak".concat("\n\n", extraThemeProperties.join("\n\n")), "utf8"));
159
+ return { doBundleEmailTemplate: doBundleEmailTemplate };
143
160
  }
144
161
  exports.generateKeycloakThemeResources = generateKeycloakThemeResources;
145
162
  //# sourceMappingURL=generateKeycloakThemeResources.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"generateKeycloakThemeResources.js","sourceRoot":"","sources":["../../src/bin/build-keycloak-theme/generateKeycloakThemeResources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generateKeycloakThemeResources.js","sourceRoot":"","sources":["../../src/bin/build-keycloak-theme/generateKeycloakThemeResources.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,93 @@
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
22
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
23
+ return new (P || (P = Promise))(function (resolve, reject) {
24
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
25
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
26
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
27
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
28
+ });
29
+ };
30
+ var __generator = (this && this.__generator) || function (thisArg, body) {
31
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
32
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
33
+ function verb(n) { return function (v) { return step([n, v]); }; }
34
+ function step(op) {
35
+ if (f) throw new TypeError("Generator is already executing.");
36
+ while (_) try {
37
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
38
+ if (y = 0, t) op = [op[0] & 2, t.value];
39
+ switch (op[0]) {
40
+ case 0: case 1: t = op; break;
41
+ case 4: _.label++; return { value: op[1], done: false };
42
+ case 5: _.label++; y = op[1]; op = [0]; continue;
43
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
44
+ default:
45
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
46
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
47
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
48
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
49
+ if (t[2]) _.ops.pop();
50
+ _.trys.pop(); continue;
51
+ }
52
+ op = body.call(thisArg, _);
53
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
54
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
55
+ }
56
+ };
57
+ Object.defineProperty(exports, "__esModule", { value: true });
58
+ var download_builtin_keycloak_theme_1 = require("./download-builtin-keycloak-theme");
59
+ var build_keycloak_theme_1 = require("./build-keycloak-theme");
60
+ var path_1 = require("path");
61
+ var transformCodebase_1 = require("./tools/transformCodebase");
62
+ var promptKeycloakVersion_1 = require("./promptKeycloakVersion");
63
+ var fs = __importStar(require("fs"));
64
+ if (require.main === module) {
65
+ (function () { return __awaiter(void 0, void 0, void 0, function () {
66
+ var keycloakVersion, builtinKeycloakThemeTmpDirPath;
67
+ return __generator(this, function (_a) {
68
+ switch (_a.label) {
69
+ case 0:
70
+ if (fs.existsSync(build_keycloak_theme_1.keycloakThemeEmailDirPath)) {
71
+ console.log("There is already a ./" + (0, path_1.basename)(build_keycloak_theme_1.keycloakThemeEmailDirPath) + " directory in your project. Aborting.");
72
+ process.exit(-1);
73
+ }
74
+ return [4 /*yield*/, (0, promptKeycloakVersion_1.promptKeycloakVersion)()];
75
+ case 1:
76
+ keycloakVersion = (_a.sent()).keycloakVersion;
77
+ builtinKeycloakThemeTmpDirPath = (0, path_1.join)(build_keycloak_theme_1.keycloakThemeEmailDirPath, "..", "tmp_xIdP3_builtin_keycloak_theme");
78
+ (0, download_builtin_keycloak_theme_1.downloadBuiltinKeycloakTheme)({
79
+ keycloakVersion: keycloakVersion,
80
+ "destDirPath": builtinKeycloakThemeTmpDirPath,
81
+ });
82
+ (0, transformCodebase_1.transformCodebase)({
83
+ "srcDirPath": (0, path_1.join)(builtinKeycloakThemeTmpDirPath, "base", "email"),
84
+ "destDirPath": build_keycloak_theme_1.keycloakThemeEmailDirPath,
85
+ });
86
+ console.log("./" + (0, path_1.basename)(build_keycloak_theme_1.keycloakThemeEmailDirPath) + " ready to be customized");
87
+ fs.rmSync(builtinKeycloakThemeTmpDirPath, { "recursive": true, "force": true });
88
+ return [2 /*return*/];
89
+ }
90
+ });
91
+ }); })();
92
+ }
93
+ //# sourceMappingURL=create-keycloak-theme-email-directory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-keycloak-theme-email-directory.js","sourceRoot":"","sources":["../src/bin/create-keycloak-theme-email-directory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qFAAiF;AACjF,+DAAmE;AACnE,6BAAkE;AAClE,+DAA8D;AAC9D,iEAAgE;AAChE,qCAAyB;AAEzB,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;IACzB,CAAC;;;;;oBACG,IAAI,EAAE,CAAC,UAAU,CAAC,gDAAyB,CAAC,EAAE;wBAC1C,OAAO,CAAC,GAAG,CAAC,0BAAwB,IAAA,eAAY,EAAC,gDAAyB,CAAC,0CAAuC,CAAC,CAAC;wBAEpH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;qBACpB;oBAE2B,qBAAM,IAAA,6CAAqB,GAAE,EAAA;;oBAAjD,eAAe,GAAK,CAAA,SAA6B,CAAA,gBAAlC;oBAEjB,8BAA8B,GAAG,IAAA,WAAQ,EAAC,gDAAyB,EAAE,IAAI,EAAE,kCAAkC,CAAC,CAAC;oBAErH,IAAA,8DAA4B,EAAC;wBACzB,eAAe,iBAAA;wBACf,aAAa,EAAE,8BAA8B;qBAChD,CAAC,CAAC;oBAEH,IAAA,qCAAiB,EAAC;wBACd,YAAY,EAAE,IAAA,WAAQ,EAAC,8BAA8B,EAAE,MAAM,EAAE,OAAO,CAAC;wBACvE,aAAa,EAAE,gDAAyB;qBAC3C,CAAC,CAAC;oBAEH,OAAO,CAAC,GAAG,CAAC,OAAK,IAAA,eAAY,EAAC,gDAAyB,CAAC,4BAAyB,CAAC,CAAC;oBAEnF,EAAE,CAAC,MAAM,CAAC,8BAA8B,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;;;;SACnF,CAAC,EAAE,CAAC;CACR"}
@@ -1,5 +1,41 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
4
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
5
+ return new (P || (P = Promise))(function (resolve, reject) {
6
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
7
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
8
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
9
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
10
+ });
11
+ };
12
+ var __generator = (this && this.__generator) || function (thisArg, body) {
13
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
14
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
15
+ function verb(n) { return function (v) { return step([n, v]); }; }
16
+ function step(op) {
17
+ if (f) throw new TypeError("Generator is already executing.");
18
+ while (_) try {
19
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
20
+ if (y = 0, t) op = [op[0] & 2, t.value];
21
+ switch (op[0]) {
22
+ case 0: case 1: t = op; break;
23
+ case 4: _.label++; return { value: op[1], done: false };
24
+ case 5: _.label++; y = op[1]; op = [0]; continue;
25
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
26
+ default:
27
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
28
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
29
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
30
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
31
+ if (t[2]) _.ops.pop();
32
+ _.trys.pop(); continue;
33
+ }
34
+ op = body.call(thisArg, _);
35
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
36
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
37
+ }
38
+ };
3
39
  var __values = (this && this.__values) || function(o) {
4
40
  var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
5
41
  if (m) return m.call(o);
@@ -16,6 +52,7 @@ exports.downloadBuiltinKeycloakTheme = void 0;
16
52
  var build_keycloak_theme_1 = require("./build-keycloak-theme");
17
53
  var path_1 = require("path");
18
54
  var downloadAndUnzip_1 = require("./tools/downloadAndUnzip");
55
+ var promptKeycloakVersion_1 = require("./promptKeycloakVersion");
19
56
  function downloadBuiltinKeycloakTheme(params) {
20
57
  var e_1, _a;
21
58
  var keycloakVersion = params.keycloakVersion, destDirPath = params.destDirPath;
@@ -39,18 +76,22 @@ function downloadBuiltinKeycloakTheme(params) {
39
76
  }
40
77
  exports.downloadBuiltinKeycloakTheme = downloadBuiltinKeycloakTheme;
41
78
  if (require.main === module) {
42
- var keycloakVersion = (function () {
43
- var keycloakVersion = process.argv[2];
44
- if (keycloakVersion === undefined) {
45
- return "11.0.3";
46
- }
47
- return keycloakVersion;
48
- })();
49
- var destDirPath = (0, path_1.join)(build_keycloak_theme_1.keycloakThemeBuildingDirPath, "src", "main", "resources", "theme");
50
- console.log("Downloading builtins theme of Keycloak " + keycloakVersion + " here " + destDirPath);
51
- downloadBuiltinKeycloakTheme({
52
- keycloakVersion: keycloakVersion,
53
- destDirPath: destDirPath,
54
- });
79
+ (function () { return __awaiter(void 0, void 0, void 0, function () {
80
+ var keycloakVersion, destDirPath;
81
+ return __generator(this, function (_a) {
82
+ switch (_a.label) {
83
+ case 0: return [4 /*yield*/, (0, promptKeycloakVersion_1.promptKeycloakVersion)()];
84
+ case 1:
85
+ keycloakVersion = (_a.sent()).keycloakVersion;
86
+ destDirPath = (0, path_1.join)(build_keycloak_theme_1.keycloakThemeBuildingDirPath, "src", "main", "resources", "theme");
87
+ console.log("Downloading builtins theme of Keycloak " + keycloakVersion + " here " + destDirPath);
88
+ downloadBuiltinKeycloakTheme({
89
+ keycloakVersion: keycloakVersion,
90
+ destDirPath: destDirPath,
91
+ });
92
+ return [2 /*return*/];
93
+ }
94
+ });
95
+ }); })();
55
96
  }
56
97
  //# sourceMappingURL=download-builtin-keycloak-theme.js.map
@@ -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;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"}
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;AAC5D,iEAAgE;AAEhE,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,CAAC;;;;wBAC+B,qBAAM,IAAA,6CAAqB,GAAE,EAAA;;oBAAjD,eAAe,GAAK,CAAA,SAA6B,CAAA,gBAAlC;oBAEjB,WAAW,GAAG,IAAA,WAAQ,EAAC,mDAA4B,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;oBAEhG,OAAO,CAAC,GAAG,CAAC,4CAA0C,eAAe,cAAS,WAAa,CAAC,CAAC;oBAE7F,4BAA4B,CAAC;wBACzB,eAAe,iBAAA;wBACf,WAAW,aAAA;qBACd,CAAC,CAAC;;;;SACN,CAAC,EAAE,CAAC;CACR"}
@@ -0,0 +1,3 @@
1
+ export declare function promptKeycloakVersion(): Promise<{
2
+ keycloakVersion: string;
3
+ }>;