keycloakify 7.2.1 → 7.2.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.
@@ -74,8 +74,9 @@ var fs_1 = require("fs");
74
74
  var path_1 = require("path");
75
75
  var kebabCaseToSnakeCase_1 = require("./tools/kebabCaseToSnakeCase");
76
76
  var assert_1 = require("tsafe/assert");
77
+ var getThemeSrcDirPath_1 = require("./getThemeSrcDirPath");
77
78
  (function () { return __awaiter(void 0, void 0, void 0, function () {
78
- var projectRootDir, themeType, pageId, pageBasename, targetFilePath, _a, _b;
79
+ var projectRootDir, themeType, pageId, pageBasename, themeSrcDirPath, targetFilePath, _a, _b;
79
80
  return __generator(this, function (_c) {
80
81
  switch (_c.label) {
81
82
  case 0:
@@ -107,7 +108,11 @@ var assert_1 = require("tsafe/assert");
107
108
  case 2:
108
109
  pageId = (_c.sent()).value;
109
110
  pageBasename = (0, capitalize_1.capitalize)((0, kebabCaseToSnakeCase_1.kebabCaseToCamelCase)(pageId)).replace(/ftl$/, "tsx");
110
- targetFilePath = (0, path_1.join)(process.cwd(), "src", "keycloak-theme", themeType, "pages", pageBasename);
111
+ themeSrcDirPath = (0, getThemeSrcDirPath_1.getThemeSrcDirPath)().themeSrcDirPath;
112
+ if (themeSrcDirPath === undefined) {
113
+ throw new Error("Couldn't locate your theme sources");
114
+ }
115
+ targetFilePath = (0, path_1.join)(themeSrcDirPath, themeType, "pages", pageBasename);
111
116
  if ((0, fs_1.existsSync)(targetFilePath)) {
112
117
  console.log("".concat(pageId, " is already ejected, ").concat((0, path_1.relative)(process.cwd(), targetFilePath), " already exists"));
113
118
  process.exit(-1);
@@ -1 +1 @@
1
- {"version":3,"file":"eject-keycloak-page.js","sourceRoot":"","sources":["../src/bin/eject-keycloak-page.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,yDAAwD;AACxD,0DAAmC;AACnC,qEAO+C;AAC/C,+CAA8C;AAC9C,wCAAkD;AAClD,yBAAgC;AAChC,6BAAkE;AAClE,qEAAoE;AACpE,uCAA8C;AAE9C,CAAC;;;;;gBACS,cAAc,GAAG,IAAA,+BAAc,GAAE,CAAC;gBAExC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;gBAEN,qBAAM,IAAA,oBAAS,EAAY;wBACpD,QAAQ,2BAAM,wBAAU,SAAC;qBAC5B,CAAC,CAAC,KAAK,CAAC;wBACL,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;wBAExB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACrB,CAAC,CAAC,EAAA;;gBANa,SAAS,GAAK,CAAA,SAM3B,CAAA,MANsB;gBAQxB,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;gBAE3B,qBAAM,IAAA,oBAAS,EAAwC;wBAC7E,QAAQ,EAAE,CAAC;4BACP,QAAQ,SAAS,EAAE;gCACf,KAAK,OAAO;oCACR,gCAAW,+BAAiB,UAAE;gCAClC,KAAK,SAAS;oCACV,gCAAW,iCAAmB,UAAE;6BACvC;4BACD,IAAA,eAAM,EAAkC,KAAK,CAAC,CAAC;wBACnD,CAAC,CAAC,EAAE;qBACP,CAAC,CAAC,KAAK,CAAC;wBACL,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;wBAExB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACrB,CAAC,CAAC,EAAA;;gBAda,MAAM,GAAK,CAAA,SAcxB,CAAA,MAdmB;gBAgBf,YAAY,GAAG,IAAA,uBAAU,EAAC,IAAA,2CAAoB,EAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAE/E,cAAc,GAAG,IAAA,WAAQ,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;gBAE1G,IAAI,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE;oBAC5B,OAAO,CAAC,GAAG,CAAC,UAAG,MAAM,kCAAwB,IAAA,eAAY,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,oBAAiB,CAAC,CAAC;oBAE3G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;iBACpB;gBAED,KAAA,oBAAS,CAAA;sBAAC,cAAc;gBAAE,qBAAM,IAAA,mBAAQ,EAAC,IAAA,WAAQ,EAAC,cAAc,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,EAAA;;gBAA3G,4BAA0B,SAAiF,GAAC,CAAC;gBAE7G,OAAO,CAAC,GAAG,CAAC,UAAG,IAAA,eAAY,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,aAAU,CAAC,CAAC;;;;KACzE,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"eject-keycloak-page.js","sourceRoot":"","sources":["../src/bin/eject-keycloak-page.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,yDAAwD;AACxD,0DAAmC;AACnC,qEAO+C;AAC/C,+CAA8C;AAC9C,wCAAkD;AAClD,yBAAgC;AAChC,6BAAkE;AAClE,qEAAoE;AACpE,uCAA8C;AAC9C,2DAA0D;AAE1D,CAAC;;;;;gBACS,cAAc,GAAG,IAAA,+BAAc,GAAE,CAAC;gBAExC,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;gBAEN,qBAAM,IAAA,oBAAS,EAAY;wBACpD,QAAQ,2BAAM,wBAAU,SAAC;qBAC5B,CAAC,CAAC,KAAK,CAAC;wBACL,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;wBAExB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACrB,CAAC,CAAC,EAAA;;gBANa,SAAS,GAAK,CAAA,SAM3B,CAAA,MANsB;gBAQxB,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAC;gBAE3B,qBAAM,IAAA,oBAAS,EAAwC;wBAC7E,QAAQ,EAAE,CAAC;4BACP,QAAQ,SAAS,EAAE;gCACf,KAAK,OAAO;oCACR,gCAAW,+BAAiB,UAAE;gCAClC,KAAK,SAAS;oCACV,gCAAW,iCAAmB,UAAE;6BACvC;4BACD,IAAA,eAAM,EAAkC,KAAK,CAAC,CAAC;wBACnD,CAAC,CAAC,EAAE;qBACP,CAAC,CAAC,KAAK,CAAC;wBACL,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;wBAExB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBACrB,CAAC,CAAC,EAAA;;gBAda,MAAM,GAAK,CAAA,SAcxB,CAAA,MAdmB;gBAgBf,YAAY,GAAG,IAAA,uBAAU,EAAC,IAAA,2CAAoB,EAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;gBAE7E,eAAe,GAAK,IAAA,uCAAkB,GAAE,gBAAzB,CAA0B;gBAEjD,IAAI,eAAe,KAAK,SAAS,EAAE;oBAC/B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;iBACzD;gBAEK,cAAc,GAAG,IAAA,WAAQ,EAAC,eAAe,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;gBAEnF,IAAI,IAAA,eAAU,EAAC,cAAc,CAAC,EAAE;oBAC5B,OAAO,CAAC,GAAG,CAAC,UAAG,MAAM,kCAAwB,IAAA,eAAY,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,oBAAiB,CAAC,CAAC;oBAE3G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;iBACpB;gBAED,KAAA,oBAAS,CAAA;sBAAC,cAAc;gBAAE,qBAAM,IAAA,mBAAQ,EAAC,IAAA,WAAQ,EAAC,cAAc,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC,EAAA;;gBAA3G,4BAA0B,SAAiF,GAAC,CAAC;gBAE7G,OAAO,CAAC,GAAG,CAAC,UAAG,IAAA,eAAY,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC,aAAU,CAAC,CAAC;;;;KACzE,CAAC,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare function getThemeSrcDirPath(): {
2
+ themeSrcDirPath: string;
3
+ } | {
4
+ themeSrcDirPath: undefined;
5
+ };
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.getThemeSrcDirPath = void 0;
27
+ var path_1 = require("path");
28
+ var fs = __importStar(require("fs"));
29
+ var crawl_1 = require("./tools/crawl");
30
+ var exclude_1 = require("tsafe/exclude");
31
+ var reactProjectDirPath = process.cwd();
32
+ var themeSrcDirBasename = "keycloak-theme";
33
+ function getThemeSrcDirPath() {
34
+ var srcDirPath = (0, path_1.join)(reactProjectDirPath, "src");
35
+ var themeSrcDirPath = (0, crawl_1.crawl)(srcDirPath)
36
+ .map(function (fileRelativePath) {
37
+ var split = fileRelativePath.split(themeSrcDirBasename);
38
+ if (split.length !== 2) {
39
+ return undefined;
40
+ }
41
+ return (0, path_1.join)(srcDirPath, split[0] + themeSrcDirBasename);
42
+ })
43
+ .filter((0, exclude_1.exclude)(undefined))[0];
44
+ if (themeSrcDirPath === undefined) {
45
+ if (fs.existsSync((0, path_1.join)(srcDirPath, "login")) || fs.existsSync((0, path_1.join)(srcDirPath, "account"))) {
46
+ return { "themeSrcDirPath": srcDirPath };
47
+ }
48
+ return { "themeSrcDirPath": undefined };
49
+ }
50
+ return { themeSrcDirPath: themeSrcDirPath };
51
+ }
52
+ exports.getThemeSrcDirPath = getThemeSrcDirPath;
53
+ //# sourceMappingURL=getThemeSrcDirPath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getThemeSrcDirPath.js","sourceRoot":"","sources":["../src/bin/getThemeSrcDirPath.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAAwC;AACxC,qCAAyB;AACzB,uCAAsC;AACtC,yCAAwC;AAExC,IAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAE1C,IAAM,mBAAmB,GAAG,gBAAgB,CAAC;AAE7C,SAAgB,kBAAkB;IAC9B,IAAM,UAAU,GAAG,IAAA,WAAQ,EAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;IAExD,IAAM,eAAe,GAAuB,IAAA,aAAK,EAAC,UAAU,CAAC;SACxD,GAAG,CAAC,UAAA,gBAAgB;QACjB,IAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAE1D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,OAAO,SAAS,CAAC;SACpB;QAED,OAAO,IAAA,WAAQ,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC;IAChE,CAAC,CAAC;SACD,MAAM,CAAC,IAAA,iBAAO,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnC,IAAI,eAAe,KAAK,SAAS,EAAE;QAC/B,IAAI,EAAE,CAAC,UAAU,CAAC,IAAA,WAAQ,EAAC,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAA,WAAQ,EAAC,UAAU,EAAE,SAAS,CAAC,CAAC,EAAE;YAChG,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC;SAC5C;QACD,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC;KAC3C;IAED,OAAO,EAAE,eAAe,iBAAA,EAAE,CAAC;AAC/B,CAAC;AAvBD,gDAuBC"}
@@ -68,31 +68,9 @@ var promptKeycloakVersion_1 = require("./promptKeycloakVersion");
68
68
  var fs = __importStar(require("fs"));
69
69
  var cliOptions_1 = require("./tools/cliOptions");
70
70
  var logger_1 = require("./tools/logger");
71
- var crawl_1 = require("./tools/crawl");
72
- var exclude_1 = require("tsafe/exclude");
73
- var reactProjectDirPath = process.cwd();
74
- var themeSrcDirBasename = "keycloak-theme";
75
- function getThemeSrcDirPath() {
76
- var srcDirPath = (0, path_1.join)(reactProjectDirPath, "src");
77
- var themeSrcDirPath = (0, crawl_1.crawl)(srcDirPath)
78
- .map(function (fileRelativePath) {
79
- var split = fileRelativePath.split(themeSrcDirBasename);
80
- if (split.length !== 2) {
81
- return undefined;
82
- }
83
- return (0, path_1.join)(srcDirPath, split[0] + themeSrcDirBasename);
84
- })
85
- .filter((0, exclude_1.exclude)(undefined))[0];
86
- if (themeSrcDirBasename === undefined) {
87
- if (fs.existsSync((0, path_1.join)(srcDirPath, "login")) || fs.existsSync((0, path_1.join)(srcDirPath, "account"))) {
88
- return { "themeSrcDirPath": srcDirPath };
89
- }
90
- return { "themeSrcDirPath": undefined };
91
- }
92
- return { themeSrcDirPath: themeSrcDirPath };
93
- }
71
+ var getThemeSrcDirPath_1 = require("./getThemeSrcDirPath");
94
72
  function getEmailThemeSrcDirPath() {
95
- var themeSrcDirPath = getThemeSrcDirPath().themeSrcDirPath;
73
+ var themeSrcDirPath = (0, getThemeSrcDirPath_1.getThemeSrcDirPath)().themeSrcDirPath;
96
74
  var emailThemeSrcDirPath = themeSrcDirPath === undefined ? undefined : (0, path_1.join)(themeSrcDirPath, "email");
97
75
  return { emailThemeSrcDirPath: emailThemeSrcDirPath };
98
76
  }
@@ -107,7 +85,7 @@ function main() {
107
85
  logger = (0, logger_1.getLogger)({ isSilent: isSilent });
108
86
  emailThemeSrcDirPath = getEmailThemeSrcDirPath().emailThemeSrcDirPath;
109
87
  if (emailThemeSrcDirPath === undefined) {
110
- logger.warn("Couldn't locate you ".concat(themeSrcDirBasename, " directory"));
88
+ logger.warn("Couldn't locate your theme source directory");
111
89
  process.exit(-1);
112
90
  }
113
91
  if (fs.existsSync(emailThemeSrcDirPath)) {
@@ -1 +1 @@
1
- {"version":3,"file":"initialize-email-theme.js","sourceRoot":"","sources":["../src/bin/initialize-email-theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,qFAAiF;AACjF,6BAAkE;AAClE,+DAA8D;AAC9D,iEAAgE;AAChE,qCAAyB;AACzB,iDAAmD;AACnD,yCAA2C;AAC3C,uCAAsC;AACtC,yCAAwC;AAExC,IAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAE1C,IAAM,mBAAmB,GAAG,gBAAgB,CAAC;AAE7C,SAAS,kBAAkB;IACvB,IAAM,UAAU,GAAG,IAAA,WAAQ,EAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;IAExD,IAAM,eAAe,GAAuB,IAAA,aAAK,EAAC,UAAU,CAAC;SACxD,GAAG,CAAC,UAAA,gBAAgB;QACjB,IAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAE1D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACpB,OAAO,SAAS,CAAC;SACpB;QAED,OAAO,IAAA,WAAQ,EAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC;IAChE,CAAC,CAAC;SACD,MAAM,CAAC,IAAA,iBAAO,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnC,IAAI,mBAAmB,KAAK,SAAS,EAAE;QACnC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAA,WAAQ,EAAC,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAA,WAAQ,EAAC,UAAU,EAAE,SAAS,CAAC,CAAC,EAAE;YAChG,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC;SAC5C;QACD,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC;KAC3C;IAED,OAAO,EAAE,eAAe,iBAAA,EAAE,CAAC;AAC/B,CAAC;AAED,SAAgB,uBAAuB;IAC3B,IAAA,eAAe,GAAK,kBAAkB,EAAE,gBAAzB,CAA0B;IAEjD,IAAM,oBAAoB,GAAG,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,WAAQ,EAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAE5G,OAAO,EAAE,oBAAoB,sBAAA,EAAE,CAAC;AACpC,CAAC;AAND,0DAMC;AAED,SAAe,IAAI;;;;;;oBACP,QAAQ,GAAK,IAAA,0BAAa,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAzC,CAA0C;oBACpD,MAAM,GAAG,IAAA,kBAAS,EAAC,EAAE,QAAQ,UAAA,EAAE,CAAC,CAAC;oBAE/B,oBAAoB,GAAK,uBAAuB,EAAE,qBAA9B,CAA+B;oBAE3D,IAAI,oBAAoB,KAAK,SAAS,EAAE;wBACpC,MAAM,CAAC,IAAI,CAAC,8BAAuB,mBAAmB,eAAY,CAAC,CAAC;wBAEpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;qBACpB;oBAED,IAAI,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE;wBACrC,MAAM,CAAC,IAAI,CAAC,6BAAsB,IAAA,eAAY,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,oBAAoB,CAAC,0CAAuC,CAAC,CAAC;wBAE5H,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,oBAAoB,EAAE,IAAI,EAAE,kCAAkC,CAAC,CAAC;oBAEhH,qBAAM,IAAA,8DAA4B,EAAC;4BAC/B,eAAe,iBAAA;4BACf,aAAa,EAAE,8BAA8B;4BAC7C,QAAQ,UAAA;yBACX,CAAC,EAAA;;oBAJF,SAIE,CAAC;oBAEH,IAAA,qCAAiB,EAAC;wBACd,YAAY,EAAE,IAAA,WAAQ,EAAC,8BAA8B,EAAE,MAAM,EAAE,OAAO,CAAC;wBACvE,aAAa,EAAE,oBAAoB;qBACtC,CAAC,CAAC;oBAEH;wBACU,qBAAqB,GAAG,IAAA,WAAQ,EAAC,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;wBAEjF,EAAE,CAAC,aAAa,CAAC,qBAAqB,EAAE,MAAM,CAAC,IAAI,CAAC,uBAAgB,EAAE,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAE,EAAE,MAAM,CAAC,CAAC,CAAC;qBAC3I;oBAED,MAAM,CAAC,GAAG,CAAC,UAAG,IAAA,eAAY,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,oBAAoB,CAAC,iFAA8E,CAAC,CAAC;oBAE/I,EAAE,CAAC,MAAM,CAAC,8BAA8B,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;;;;;CACnF;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;IACzB,IAAI,EAAE,CAAC;CACV"}
1
+ {"version":3,"file":"initialize-email-theme.js","sourceRoot":"","sources":["../src/bin/initialize-email-theme.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,qFAAiF;AACjF,6BAAkE;AAClE,+DAA8D;AAC9D,iEAAgE;AAChE,qCAAyB;AACzB,iDAAmD;AACnD,yCAA2C;AAC3C,2DAA0D;AAE1D,SAAgB,uBAAuB;IAC3B,IAAA,eAAe,GAAK,IAAA,uCAAkB,GAAE,gBAAzB,CAA0B;IAEjD,IAAM,oBAAoB,GAAG,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAA,WAAQ,EAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IAE5G,OAAO,EAAE,oBAAoB,sBAAA,EAAE,CAAC;AACpC,CAAC;AAND,0DAMC;AAED,SAAe,IAAI;;;;;;oBACP,QAAQ,GAAK,IAAA,0BAAa,EAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAzC,CAA0C;oBACpD,MAAM,GAAG,IAAA,kBAAS,EAAC,EAAE,QAAQ,UAAA,EAAE,CAAC,CAAC;oBAE/B,oBAAoB,GAAK,uBAAuB,EAAE,qBAA9B,CAA+B;oBAE3D,IAAI,oBAAoB,KAAK,SAAS,EAAE;wBACpC,MAAM,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;wBAE3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;qBACpB;oBAED,IAAI,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE;wBACrC,MAAM,CAAC,IAAI,CAAC,6BAAsB,IAAA,eAAY,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,oBAAoB,CAAC,0CAAuC,CAAC,CAAC;wBAE5H,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,oBAAoB,EAAE,IAAI,EAAE,kCAAkC,CAAC,CAAC;oBAEhH,qBAAM,IAAA,8DAA4B,EAAC;4BAC/B,eAAe,iBAAA;4BACf,aAAa,EAAE,8BAA8B;4BAC7C,QAAQ,UAAA;yBACX,CAAC,EAAA;;oBAJF,SAIE,CAAC;oBAEH,IAAA,qCAAiB,EAAC;wBACd,YAAY,EAAE,IAAA,WAAQ,EAAC,8BAA8B,EAAE,MAAM,EAAE,OAAO,CAAC;wBACvE,aAAa,EAAE,oBAAoB;qBACtC,CAAC,CAAC;oBAEH;wBACU,qBAAqB,GAAG,IAAA,WAAQ,EAAC,oBAAoB,EAAE,kBAAkB,CAAC,CAAC;wBAEjF,EAAE,CAAC,aAAa,CAAC,qBAAqB,EAAE,MAAM,CAAC,IAAI,CAAC,uBAAgB,EAAE,CAAC,YAAY,CAAC,qBAAqB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAE,EAAE,MAAM,CAAC,CAAC,CAAC;qBAC3I;oBAED,MAAM,CAAC,GAAG,CAAC,UAAG,IAAA,eAAY,EAAC,OAAO,CAAC,GAAG,EAAE,EAAE,oBAAoB,CAAC,iFAA8E,CAAC,CAAC;oBAE/I,EAAE,CAAC,MAAM,CAAC,8BAA8B,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;;;;;CACnF;AAED,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE;IACzB,IAAI,EAAE,CAAC;CACV"}
package/bin/tools/tee.js CHANGED
@@ -6,6 +6,7 @@ function tee(input) {
6
6
  var b = new stream_1.PassThrough();
7
7
  var aFull = false;
8
8
  var bFull = false;
9
+ a.setMaxListeners(Infinity);
9
10
  a.on("drain", function () {
10
11
  aFull = false;
11
12
  if (!aFull && !bFull)
@@ -1 +1 @@
1
- {"version":3,"file":"tee.js","sourceRoot":"","sources":["../../src/bin/tools/tee.ts"],"names":[],"mappings":";;AAAA,iCAA+C;AAE/C,SAAwB,GAAG,CAAC,KAAe;IACvC,IAAM,CAAC,GAAG,IAAI,oBAAW,EAAE,CAAC;IAC5B,IAAM,CAAC,GAAG,IAAI,oBAAW,EAAE,CAAC;IAE5B,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,KAAK,GAAG,KAAK,CAAC;IAElB,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE;QACV,KAAK,GAAG,KAAK,CAAC;QACd,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK;YAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE;QACV,KAAK,GAAG,KAAK,CAAC;QACd,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK;YAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,UAAA,CAAC;QACf,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,UAAA,KAAK;QAClB,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACxB,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAExB,IAAI,KAAK,IAAI,KAAK;YAAE,KAAK,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE;QACZ,CAAC,CAAC,GAAG,EAAE,CAAC;QACR,CAAC,CAAC,GAAG,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,CAAC,EAAE,CAAC,CAAU,CAAC;AAC3B,CAAC;AAlCD,sBAkCC"}
1
+ {"version":3,"file":"tee.js","sourceRoot":"","sources":["../../src/bin/tools/tee.ts"],"names":[],"mappings":";;AAAA,iCAA+C;AAE/C,SAAwB,GAAG,CAAC,KAAe;IACvC,IAAM,CAAC,GAAG,IAAI,oBAAW,EAAE,CAAC;IAC5B,IAAM,CAAC,GAAG,IAAI,oBAAW,EAAE,CAAC;IAE5B,IAAI,KAAK,GAAG,KAAK,CAAC;IAClB,IAAI,KAAK,GAAG,KAAK,CAAC;IAElB,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IAE5B,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE;QACV,KAAK,GAAG,KAAK,CAAC;QACd,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK;YAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE;QACV,KAAK,GAAG,KAAK,CAAC;QACd,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK;YAAE,KAAK,CAAC,MAAM,EAAE,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,UAAA,CAAC;QACf,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACnB,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,UAAA,KAAK;QAClB,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACxB,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAExB,IAAI,KAAK,IAAI,KAAK;YAAE,KAAK,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE;QACZ,CAAC,CAAC,GAAG,EAAE,CAAC;QACR,CAAC,CAAC,GAAG,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,CAAC,EAAE,CAAC,CAAU,CAAC;AAC3B,CAAC;AApCD,sBAoCC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "keycloakify",
3
- "version": "7.2.1",
3
+ "version": "7.2.3",
4
4
  "description": "Create Keycloak themes using React",
5
5
  "repository": {
6
6
  "type": "git",
@@ -68,6 +68,7 @@
68
68
  "src/account/pages/Password.tsx",
69
69
  "src/bin/download-builtin-keycloak-theme.ts",
70
70
  "src/bin/eject-keycloak-page.ts",
71
+ "src/bin/getThemeSrcDirPath.ts",
71
72
  "src/bin/initialize-email-theme.ts",
72
73
  "src/bin/keycloakify/BuildOptions.ts",
73
74
  "src/bin/keycloakify/ftlValuesGlobalName.ts",
@@ -308,6 +309,9 @@
308
309
  "bin/eject-keycloak-page.d.ts",
309
310
  "bin/eject-keycloak-page.js",
310
311
  "bin/eject-keycloak-page.js.map",
312
+ "bin/getThemeSrcDirPath.d.ts",
313
+ "bin/getThemeSrcDirPath.js",
314
+ "bin/getThemeSrcDirPath.js.map",
311
315
  "bin/initialize-email-theme.d.ts",
312
316
  "bin/initialize-email-theme.js",
313
317
  "bin/initialize-email-theme.js.map",
@@ -16,6 +16,7 @@ import { existsSync } from "fs";
16
16
  import { join as pathJoin, relative as pathRelative } from "path";
17
17
  import { kebabCaseToCamelCase } from "./tools/kebabCaseToSnakeCase";
18
18
  import { assert, Equals } from "tsafe/assert";
19
+ import { getThemeSrcDirPath } from "./getThemeSrcDirPath";
19
20
 
20
21
  (async () => {
21
22
  const projectRootDir = getProjectRoot();
@@ -50,7 +51,13 @@ import { assert, Equals } from "tsafe/assert";
50
51
 
51
52
  const pageBasename = capitalize(kebabCaseToCamelCase(pageId)).replace(/ftl$/, "tsx");
52
53
 
53
- const targetFilePath = pathJoin(process.cwd(), "src", "keycloak-theme", themeType, "pages", pageBasename);
54
+ const { themeSrcDirPath } = getThemeSrcDirPath();
55
+
56
+ if (themeSrcDirPath === undefined) {
57
+ throw new Error("Couldn't locate your theme sources");
58
+ }
59
+
60
+ const targetFilePath = pathJoin(themeSrcDirPath, themeType, "pages", pageBasename);
54
61
 
55
62
  if (existsSync(targetFilePath)) {
56
63
  console.log(`${pageId} is already ejected, ${pathRelative(process.cwd(), targetFilePath)} already exists`);
@@ -0,0 +1,33 @@
1
+ import { join as pathJoin } from "path";
2
+ import * as fs from "fs";
3
+ import { crawl } from "./tools/crawl";
4
+ import { exclude } from "tsafe/exclude";
5
+
6
+ const reactProjectDirPath = process.cwd();
7
+
8
+ const themeSrcDirBasename = "keycloak-theme";
9
+
10
+ export function getThemeSrcDirPath() {
11
+ const srcDirPath = pathJoin(reactProjectDirPath, "src");
12
+
13
+ const themeSrcDirPath: string | undefined = crawl(srcDirPath)
14
+ .map(fileRelativePath => {
15
+ const split = fileRelativePath.split(themeSrcDirBasename);
16
+
17
+ if (split.length !== 2) {
18
+ return undefined;
19
+ }
20
+
21
+ return pathJoin(srcDirPath, split[0] + themeSrcDirBasename);
22
+ })
23
+ .filter(exclude(undefined))[0];
24
+
25
+ if (themeSrcDirPath === undefined) {
26
+ if (fs.existsSync(pathJoin(srcDirPath, "login")) || fs.existsSync(pathJoin(srcDirPath, "account"))) {
27
+ return { "themeSrcDirPath": srcDirPath };
28
+ }
29
+ return { "themeSrcDirPath": undefined };
30
+ }
31
+
32
+ return { themeSrcDirPath };
33
+ }
@@ -7,37 +7,7 @@ import { promptKeycloakVersion } from "./promptKeycloakVersion";
7
7
  import * as fs from "fs";
8
8
  import { getCliOptions } from "./tools/cliOptions";
9
9
  import { getLogger } from "./tools/logger";
10
- import { crawl } from "./tools/crawl";
11
- import { exclude } from "tsafe/exclude";
12
-
13
- const reactProjectDirPath = process.cwd();
14
-
15
- const themeSrcDirBasename = "keycloak-theme";
16
-
17
- function getThemeSrcDirPath() {
18
- const srcDirPath = pathJoin(reactProjectDirPath, "src");
19
-
20
- const themeSrcDirPath: string | undefined = crawl(srcDirPath)
21
- .map(fileRelativePath => {
22
- const split = fileRelativePath.split(themeSrcDirBasename);
23
-
24
- if (split.length !== 2) {
25
- return undefined;
26
- }
27
-
28
- return pathJoin(srcDirPath, split[0] + themeSrcDirBasename);
29
- })
30
- .filter(exclude(undefined))[0];
31
-
32
- if (themeSrcDirBasename === undefined) {
33
- if (fs.existsSync(pathJoin(srcDirPath, "login")) || fs.existsSync(pathJoin(srcDirPath, "account"))) {
34
- return { "themeSrcDirPath": srcDirPath };
35
- }
36
- return { "themeSrcDirPath": undefined };
37
- }
38
-
39
- return { themeSrcDirPath };
40
- }
10
+ import { getThemeSrcDirPath } from "./getThemeSrcDirPath";
41
11
 
42
12
  export function getEmailThemeSrcDirPath() {
43
13
  const { themeSrcDirPath } = getThemeSrcDirPath();
@@ -54,7 +24,7 @@ async function main() {
54
24
  const { emailThemeSrcDirPath } = getEmailThemeSrcDirPath();
55
25
 
56
26
  if (emailThemeSrcDirPath === undefined) {
57
- logger.warn(`Couldn't locate you ${themeSrcDirBasename} directory`);
27
+ logger.warn("Couldn't locate your theme source directory");
58
28
 
59
29
  process.exit(-1);
60
30
  }
@@ -7,6 +7,8 @@ export default function tee(input: Readable) {
7
7
  let aFull = false;
8
8
  let bFull = false;
9
9
 
10
+ a.setMaxListeners(Infinity);
11
+
10
12
  a.on("drain", () => {
11
13
  aFull = false;
12
14
  if (!aFull && !bFull) input.resume();