keycloakify 11.3.0 → 11.3.2
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/bin/{193.index.js → 40.index.js} +41 -62
- package/bin/453.index.js +86 -5
- package/bin/780.index.js +11 -5
- package/bin/786.index.js +7 -4
- package/bin/932.index.js +7 -4
- package/bin/main.js +1 -1
- package/bin/shared/customHandler_delegate.d.ts +3 -1
- package/package.json +2 -4
- package/src/bin/copy-keycloak-resources-to-public.ts +85 -5
- package/src/bin/eject-page.ts +12 -2
- package/src/bin/initialize-account-theme/initialize-account-theme.ts +5 -1
- package/src/bin/initialize-email-theme.ts +5 -1
- package/src/bin/shared/customHandler_delegate.ts +4 -4
- package/src/bin/update-kc-gen.ts +5 -1
- package/src/vite-plugin/vite-plugin.ts +2 -2
- package/vite-plugin/index.js +257 -229
- package/bin/shared/copyKeycloakResourcesToPublic.d.ts +0 -6
- package/src/bin/shared/copyKeycloakResourcesToPublic.ts +0 -95
@@ -1,36 +1,25 @@
|
|
1
1
|
"use strict";
|
2
|
-
exports.id =
|
3
|
-
exports.ids = [
|
2
|
+
exports.id = 40;
|
3
|
+
exports.ids = [40];
|
4
4
|
exports.modules = {
|
5
5
|
|
6
|
-
/***/
|
6
|
+
/***/ 18040:
|
7
7
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
8
8
|
|
9
|
-
// ESM COMPAT FLAG
|
10
9
|
__webpack_require__.r(__webpack_exports__);
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
var
|
19
|
-
|
20
|
-
var
|
21
|
-
|
22
|
-
var
|
23
|
-
|
24
|
-
var assert = __webpack_require__(29041);
|
25
|
-
// EXTERNAL MODULE: external "fs"
|
26
|
-
var external_fs_ = __webpack_require__(57147);
|
27
|
-
// EXTERNAL MODULE: ./dist/bin/tools/fs.rmSync.js
|
28
|
-
var fs_rmSync = __webpack_require__(89693);
|
29
|
-
// EXTERNAL MODULE: ./dist/bin/tools/transformCodebase.js
|
30
|
-
var transformCodebase = __webpack_require__(60332);
|
31
|
-
// EXTERNAL MODULE: ./dist/bin/tools/getThisCodebaseRootDirPath.js
|
32
|
-
var getThisCodebaseRootDirPath = __webpack_require__(58822);
|
33
|
-
;// CONCATENATED MODULE: ./dist/bin/shared/copyKeycloakResourcesToPublic.js
|
10
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
11
|
+
/* harmony export */ "command": () => (/* binding */ command)
|
12
|
+
/* harmony export */ });
|
13
|
+
/* harmony import */ var _shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(72138);
|
14
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71017);
|
15
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_1__);
|
16
|
+
/* harmony import */ var _shared_constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(173);
|
17
|
+
/* harmony import */ var _tools_readThisNpmPackageVersion__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(64795);
|
18
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(57147);
|
19
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_4__);
|
20
|
+
/* harmony import */ var _tools_fs_rmSync__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(89693);
|
21
|
+
/* harmony import */ var _tools_transformCodebase__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(60332);
|
22
|
+
/* harmony import */ var _tools_getThisCodebaseRootDirPath__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(58822);
|
34
23
|
|
35
24
|
|
36
25
|
|
@@ -39,65 +28,55 @@ var getThisCodebaseRootDirPath = __webpack_require__(58822);
|
|
39
28
|
|
40
29
|
|
41
30
|
|
42
|
-
|
43
|
-
function copyKeycloakResourcesToPublic(params) {
|
31
|
+
async function command(params) {
|
44
32
|
const { buildContext } = params;
|
45
|
-
const
|
46
|
-
|
33
|
+
const { hasBeenHandled } = (0,_shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_0__/* .maybeDelegateCommandToCustomHandler */ .q)({
|
34
|
+
commandName: "copy-keycloak-resources-to-public",
|
35
|
+
buildContext
|
36
|
+
});
|
37
|
+
if (hasBeenHandled) {
|
38
|
+
return;
|
39
|
+
}
|
40
|
+
const destDirPath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(buildContext.publicDirPath, _shared_constants__WEBPACK_IMPORTED_MODULE_2__/* .WELL_KNOWN_DIRECTORY_BASE_NAME.KEYCLOAKIFY_DEV_RESOURCES */ .Ju.KEYCLOAKIFY_DEV_RESOURCES);
|
41
|
+
const keycloakifyBuildinfoFilePath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(destDirPath, "keycloakify.buildinfo");
|
47
42
|
const keycloakifyBuildinfoRaw = JSON.stringify({
|
48
|
-
keycloakifyVersion: (0,
|
43
|
+
keycloakifyVersion: (0,_tools_readThisNpmPackageVersion__WEBPACK_IMPORTED_MODULE_3__/* .readThisNpmPackageVersion */ .K)()
|
49
44
|
}, null, 2);
|
50
45
|
skip_if_already_done: {
|
51
|
-
if (!
|
46
|
+
if (!fs__WEBPACK_IMPORTED_MODULE_4__.existsSync(keycloakifyBuildinfoFilePath)) {
|
52
47
|
break skip_if_already_done;
|
53
48
|
}
|
54
|
-
const keycloakifyBuildinfoRaw_previousRun =
|
49
|
+
const keycloakifyBuildinfoRaw_previousRun = fs__WEBPACK_IMPORTED_MODULE_4__.readFileSync(keycloakifyBuildinfoFilePath)
|
55
50
|
.toString("utf8");
|
56
51
|
if (keycloakifyBuildinfoRaw_previousRun !== keycloakifyBuildinfoRaw) {
|
57
52
|
break skip_if_already_done;
|
58
53
|
}
|
59
54
|
return;
|
60
55
|
}
|
61
|
-
(0,
|
56
|
+
(0,_tools_fs_rmSync__WEBPACK_IMPORTED_MODULE_5__/* .rmSync */ .a)(destDirPath, { force: true, recursive: true });
|
62
57
|
// NOTE: To remove in a while, remove the legacy keycloak-resources directory
|
63
|
-
(0,
|
58
|
+
(0,_tools_fs_rmSync__WEBPACK_IMPORTED_MODULE_5__/* .rmSync */ .a)((0,path__WEBPACK_IMPORTED_MODULE_1__.join)((0,path__WEBPACK_IMPORTED_MODULE_1__.dirname)(destDirPath), "keycloak-resources"), {
|
64
59
|
force: true,
|
65
60
|
recursive: true
|
66
61
|
});
|
67
|
-
(0,
|
62
|
+
(0,_tools_fs_rmSync__WEBPACK_IMPORTED_MODULE_5__/* .rmSync */ .a)((0,path__WEBPACK_IMPORTED_MODULE_1__.join)((0,path__WEBPACK_IMPORTED_MODULE_1__.dirname)(destDirPath), ".keycloakify"), {
|
68
63
|
force: true,
|
69
64
|
recursive: true
|
70
65
|
});
|
71
|
-
|
72
|
-
|
73
|
-
(0,
|
74
|
-
srcDirPath: (0,
|
66
|
+
fs__WEBPACK_IMPORTED_MODULE_4__.mkdirSync(destDirPath, { recursive: true });
|
67
|
+
fs__WEBPACK_IMPORTED_MODULE_4__.writeFileSync((0,path__WEBPACK_IMPORTED_MODULE_1__.join)(destDirPath, ".gitignore"), Buffer.from("*", "utf8"));
|
68
|
+
(0,_tools_transformCodebase__WEBPACK_IMPORTED_MODULE_6__/* .transformCodebase */ .N)({
|
69
|
+
srcDirPath: (0,path__WEBPACK_IMPORTED_MODULE_1__.join)((0,_tools_getThisCodebaseRootDirPath__WEBPACK_IMPORTED_MODULE_7__/* .getThisCodebaseRootDirPath */ .e)(), "res", "public", _shared_constants__WEBPACK_IMPORTED_MODULE_2__/* .WELL_KNOWN_DIRECTORY_BASE_NAME.KEYCLOAKIFY_DEV_RESOURCES */ .Ju.KEYCLOAKIFY_DEV_RESOURCES),
|
75
70
|
destDirPath
|
76
71
|
});
|
77
|
-
|
72
|
+
fs__WEBPACK_IMPORTED_MODULE_4__.writeFileSync((0,path__WEBPACK_IMPORTED_MODULE_1__.join)(destDirPath, "README.txt"), Buffer.from(
|
78
73
|
// prettier-ignore
|
79
74
|
[
|
80
75
|
"This directory is only used in dev mode by Keycloakify",
|
81
76
|
"It won't be included in your final build.",
|
82
77
|
"Do not modify anything in this directory.",
|
83
78
|
].join("\n")));
|
84
|
-
|
85
|
-
}
|
86
|
-
//# sourceMappingURL=copyKeycloakResourcesToPublic.js.map
|
87
|
-
// EXTERNAL MODULE: ./dist/bin/shared/customHandler_delegate.js + 1 modules
|
88
|
-
var customHandler_delegate = __webpack_require__(72138);
|
89
|
-
;// CONCATENATED MODULE: ./dist/bin/copy-keycloak-resources-to-public.js
|
90
|
-
|
91
|
-
|
92
|
-
async function command(params) {
|
93
|
-
const { buildContext } = params;
|
94
|
-
(0,customHandler_delegate/* maybeDelegateCommandToCustomHandler */.q)({
|
95
|
-
commandName: "copy-keycloak-resources-to-public",
|
96
|
-
buildContext
|
97
|
-
});
|
98
|
-
copyKeycloakResourcesToPublic({
|
99
|
-
buildContext
|
100
|
-
});
|
79
|
+
fs__WEBPACK_IMPORTED_MODULE_4__.writeFileSync(keycloakifyBuildinfoFilePath, Buffer.from(keycloakifyBuildinfoRaw, "utf8"));
|
101
80
|
}
|
102
81
|
//# sourceMappingURL=copy-keycloak-resources-to-public.js.map
|
103
82
|
|
@@ -154,7 +133,7 @@ var external_fs_ = __webpack_require__(57147);
|
|
154
133
|
function maybeDelegateCommandToCustomHandler(params) {
|
155
134
|
const { commandName, buildContext } = params;
|
156
135
|
if (!external_fs_.readdirSync((0,external_path_.dirname)(process.argv[1])).includes(BIN_NAME)) {
|
157
|
-
return;
|
136
|
+
return { hasBeenHandled: false };
|
158
137
|
}
|
159
138
|
try {
|
160
139
|
external_child_process_.execSync(`npx ${BIN_NAME}`, {
|
@@ -165,11 +144,11 @@ function maybeDelegateCommandToCustomHandler(params) {
|
|
165
144
|
catch (error) {
|
166
145
|
const status = error.status;
|
167
146
|
if (status === NOT_IMPLEMENTED_EXIT_CODE) {
|
168
|
-
return;
|
147
|
+
return { hasBeenHandled: false };
|
169
148
|
}
|
170
149
|
process.exit(status);
|
171
150
|
}
|
172
|
-
|
151
|
+
return { hasBeenHandled: true };
|
173
152
|
}
|
174
153
|
//# sourceMappingURL=customHandler_delegate.js.map
|
175
154
|
|
package/bin/453.index.js
CHANGED
@@ -14,15 +14,17 @@ __webpack_require__.r(__webpack_exports__);
|
|
14
14
|
/* harmony import */ var cli_select__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(99398);
|
15
15
|
/* harmony import */ var cli_select__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(cli_select__WEBPACK_IMPORTED_MODULE_1__);
|
16
16
|
/* harmony import */ var _shared_constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(173);
|
17
|
-
/* harmony import */ var
|
17
|
+
/* harmony import */ var tsafe_capitalize__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(14899);
|
18
18
|
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(57147);
|
19
19
|
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_3__);
|
20
20
|
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(71017);
|
21
21
|
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_4__);
|
22
|
-
/* harmony import */ var
|
22
|
+
/* harmony import */ var _tools_kebabCaseToSnakeCase__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(17192);
|
23
23
|
/* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(29041);
|
24
24
|
/* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(78818);
|
25
25
|
/* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(chalk__WEBPACK_IMPORTED_MODULE_6__);
|
26
|
+
/* harmony import */ var _shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(72138);
|
27
|
+
|
26
28
|
|
27
29
|
|
28
30
|
|
@@ -34,6 +36,13 @@ __webpack_require__.r(__webpack_exports__);
|
|
34
36
|
|
35
37
|
async function command(params) {
|
36
38
|
const { buildContext } = params;
|
39
|
+
const { hasBeenHandled } = (0,_shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_7__/* .maybeDelegateCommandToCustomHandler */ .q)({
|
40
|
+
commandName: "eject-page",
|
41
|
+
buildContext
|
42
|
+
});
|
43
|
+
if (hasBeenHandled) {
|
44
|
+
return;
|
45
|
+
}
|
37
46
|
console.log(chalk__WEBPACK_IMPORTED_MODULE_6___default().cyan("Theme type:"));
|
38
47
|
const themeType = await (async () => {
|
39
48
|
const values = _shared_constants__WEBPACK_IMPORTED_MODULE_2__/* .THEME_TYPES.filter */ .Jh.filter(themeType => {
|
@@ -121,7 +130,7 @@ async function command(params) {
|
|
121
130
|
if (pageIdOrComponent === userProfileFormFieldsValue) {
|
122
131
|
return "UserProfileFormFields.tsx";
|
123
132
|
}
|
124
|
-
return (0,
|
133
|
+
return (0,tsafe_capitalize__WEBPACK_IMPORTED_MODULE_8__/* .capitalize */ .k)((0,_tools_kebabCaseToSnakeCase__WEBPACK_IMPORTED_MODULE_9__/* .kebabCaseToCamelCase */ .A)(pageIdOrComponent)).replace(/ftl$/, "tsx");
|
125
134
|
})();
|
126
135
|
const pagesOrDot = (() => {
|
127
136
|
if (pageIdOrComponent === templateValue ||
|
@@ -145,10 +154,10 @@ async function command(params) {
|
|
145
154
|
}
|
146
155
|
fs__WEBPACK_IMPORTED_MODULE_3__.writeFileSync(targetFilePath, Buffer.from(componentCode, "utf8"));
|
147
156
|
console.log(`${chalk__WEBPACK_IMPORTED_MODULE_6___default().green("✓")} ${chalk__WEBPACK_IMPORTED_MODULE_6___default().bold((0,path__WEBPACK_IMPORTED_MODULE_4__.join)(".", (0,path__WEBPACK_IMPORTED_MODULE_4__.relative)(process.cwd(), targetFilePath)))} copy pasted from the Keycloakify source code into your project`);
|
148
|
-
|
157
|
+
edit_KcPage: {
|
149
158
|
if (pageIdOrComponent !== templateValue &&
|
150
159
|
pageIdOrComponent !== userProfileFormFieldsValue) {
|
151
|
-
break
|
160
|
+
break edit_KcPage;
|
152
161
|
}
|
153
162
|
const kcAppTsxPath = (0,path__WEBPACK_IMPORTED_MODULE_4__.join)(buildContext.themeSrcDirPath, themeType, "KcPage.tsx");
|
154
163
|
const kcAppTsxCode = fs__WEBPACK_IMPORTED_MODULE_3__.readFileSync(kcAppTsxPath).toString("utf8");
|
@@ -226,6 +235,78 @@ async function command(params) {
|
|
226
235
|
|
227
236
|
/***/ }),
|
228
237
|
|
238
|
+
/***/ 72138:
|
239
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
240
|
+
|
241
|
+
|
242
|
+
// EXPORTS
|
243
|
+
__webpack_require__.d(__webpack_exports__, {
|
244
|
+
"q": () => (/* binding */ maybeDelegateCommandToCustomHandler)
|
245
|
+
});
|
246
|
+
|
247
|
+
// EXTERNAL MODULE: ./node_modules/tsafe/esm/assert.mjs + 1 modules
|
248
|
+
var esm_assert = __webpack_require__(29041);
|
249
|
+
// EXTERNAL MODULE: ./dist/bin/shared/constants.js
|
250
|
+
var constants = __webpack_require__(173);
|
251
|
+
;// CONCATENATED MODULE: ./dist/bin/shared/customHandler.js
|
252
|
+
|
253
|
+
|
254
|
+
const BIN_NAME = "_keycloakify-custom-handler";
|
255
|
+
const NOT_IMPLEMENTED_EXIT_CODE = 78;
|
256
|
+
function readParams(params) {
|
257
|
+
const { apiVersion } = params;
|
258
|
+
assert(apiVersion === "v1");
|
259
|
+
const commandName = (() => {
|
260
|
+
const envValue = process.env[CUSTOM_HANDLER_ENV_NAMES.COMMAND_NAME];
|
261
|
+
assert(envValue !== undefined);
|
262
|
+
return envValue;
|
263
|
+
})();
|
264
|
+
const buildContext = (() => {
|
265
|
+
const envValue = process.env[CUSTOM_HANDLER_ENV_NAMES.BUILD_CONTEXT];
|
266
|
+
assert(envValue !== undefined);
|
267
|
+
return JSON.parse(envValue);
|
268
|
+
})();
|
269
|
+
return { commandName, buildContext };
|
270
|
+
}
|
271
|
+
//# sourceMappingURL=customHandler.js.map
|
272
|
+
// EXTERNAL MODULE: external "child_process"
|
273
|
+
var external_child_process_ = __webpack_require__(32081);
|
274
|
+
// EXTERNAL MODULE: external "path"
|
275
|
+
var external_path_ = __webpack_require__(71017);
|
276
|
+
// EXTERNAL MODULE: external "fs"
|
277
|
+
var external_fs_ = __webpack_require__(57147);
|
278
|
+
;// CONCATENATED MODULE: ./dist/bin/shared/customHandler_delegate.js
|
279
|
+
|
280
|
+
|
281
|
+
|
282
|
+
|
283
|
+
|
284
|
+
|
285
|
+
(0,esm_assert/* assert */.h)();
|
286
|
+
function maybeDelegateCommandToCustomHandler(params) {
|
287
|
+
const { commandName, buildContext } = params;
|
288
|
+
if (!external_fs_.readdirSync((0,external_path_.dirname)(process.argv[1])).includes(BIN_NAME)) {
|
289
|
+
return { hasBeenHandled: false };
|
290
|
+
}
|
291
|
+
try {
|
292
|
+
external_child_process_.execSync(`npx ${BIN_NAME}`, {
|
293
|
+
stdio: "inherit",
|
294
|
+
env: Object.assign(Object.assign({}, process.env), { [constants/* CUSTOM_HANDLER_ENV_NAMES.COMMAND_NAME */._S.COMMAND_NAME]: commandName, [constants/* CUSTOM_HANDLER_ENV_NAMES.BUILD_CONTEXT */._S.BUILD_CONTEXT]: JSON.stringify(buildContext) })
|
295
|
+
});
|
296
|
+
}
|
297
|
+
catch (error) {
|
298
|
+
const status = error.status;
|
299
|
+
if (status === NOT_IMPLEMENTED_EXIT_CODE) {
|
300
|
+
return { hasBeenHandled: false };
|
301
|
+
}
|
302
|
+
process.exit(status);
|
303
|
+
}
|
304
|
+
return { hasBeenHandled: true };
|
305
|
+
}
|
306
|
+
//# sourceMappingURL=customHandler_delegate.js.map
|
307
|
+
|
308
|
+
/***/ }),
|
309
|
+
|
229
310
|
/***/ 17192:
|
230
311
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
231
312
|
|
package/bin/780.index.js
CHANGED
@@ -98,10 +98,13 @@ var customHandler_delegate = __webpack_require__(72138);
|
|
98
98
|
|
99
99
|
async function command(params) {
|
100
100
|
const { buildContext } = params;
|
101
|
-
(0,customHandler_delegate/* maybeDelegateCommandToCustomHandler */.q)({
|
101
|
+
const { hasBeenHandled } = (0,customHandler_delegate/* maybeDelegateCommandToCustomHandler */.q)({
|
102
102
|
commandName: "initialize-account-theme",
|
103
103
|
buildContext
|
104
104
|
});
|
105
|
+
if (hasBeenHandled) {
|
106
|
+
return;
|
107
|
+
}
|
105
108
|
const accountThemeSrcDirPath = (0,external_path_.join)(buildContext.themeSrcDirPath, "account");
|
106
109
|
if (external_fs_.existsSync(accountThemeSrcDirPath) &&
|
107
110
|
external_fs_.readdirSync(accountThemeSrcDirPath).length > 0) {
|
@@ -222,7 +225,7 @@ var external_fs_ = __webpack_require__(57147);
|
|
222
225
|
function maybeDelegateCommandToCustomHandler(params) {
|
223
226
|
const { commandName, buildContext } = params;
|
224
227
|
if (!external_fs_.readdirSync((0,external_path_.dirname)(process.argv[1])).includes(BIN_NAME)) {
|
225
|
-
return;
|
228
|
+
return { hasBeenHandled: false };
|
226
229
|
}
|
227
230
|
try {
|
228
231
|
external_child_process_.execSync(`npx ${BIN_NAME}`, {
|
@@ -233,11 +236,11 @@ function maybeDelegateCommandToCustomHandler(params) {
|
|
233
236
|
catch (error) {
|
234
237
|
const status = error.status;
|
235
238
|
if (status === NOT_IMPLEMENTED_EXIT_CODE) {
|
236
|
-
return;
|
239
|
+
return { hasBeenHandled: false };
|
237
240
|
}
|
238
241
|
process.exit(status);
|
239
242
|
}
|
240
|
-
|
243
|
+
return { hasBeenHandled: true };
|
241
244
|
}
|
242
245
|
//# sourceMappingURL=customHandler_delegate.js.map
|
243
246
|
|
@@ -286,10 +289,13 @@ __webpack_require__.r(__webpack_exports__);
|
|
286
289
|
|
287
290
|
async function command(params) {
|
288
291
|
const { buildContext } = params;
|
289
|
-
(0,_shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_3__/* .maybeDelegateCommandToCustomHandler */ .q)({
|
292
|
+
const { hasBeenHandled } = (0,_shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_3__/* .maybeDelegateCommandToCustomHandler */ .q)({
|
290
293
|
commandName: "update-kc-gen",
|
291
294
|
buildContext
|
292
295
|
});
|
296
|
+
if (hasBeenHandled) {
|
297
|
+
return;
|
298
|
+
}
|
293
299
|
const filePath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(buildContext.themeSrcDirPath, `kc.gen.tsx`);
|
294
300
|
const currentContent = (await (0,_tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_2__/* .existsAsync */ .o)(filePath))
|
295
301
|
? await fs_promises__WEBPACK_IMPORTED_MODULE_0__.readFile(filePath)
|
package/bin/786.index.js
CHANGED
@@ -54,7 +54,7 @@ var external_fs_ = __webpack_require__(57147);
|
|
54
54
|
function maybeDelegateCommandToCustomHandler(params) {
|
55
55
|
const { commandName, buildContext } = params;
|
56
56
|
if (!external_fs_.readdirSync((0,external_path_.dirname)(process.argv[1])).includes(BIN_NAME)) {
|
57
|
-
return;
|
57
|
+
return { hasBeenHandled: false };
|
58
58
|
}
|
59
59
|
try {
|
60
60
|
external_child_process_.execSync(`npx ${BIN_NAME}`, {
|
@@ -65,11 +65,11 @@ function maybeDelegateCommandToCustomHandler(params) {
|
|
65
65
|
catch (error) {
|
66
66
|
const status = error.status;
|
67
67
|
if (status === NOT_IMPLEMENTED_EXIT_CODE) {
|
68
|
-
return;
|
68
|
+
return { hasBeenHandled: false };
|
69
69
|
}
|
70
70
|
process.exit(status);
|
71
71
|
}
|
72
|
-
|
72
|
+
return { hasBeenHandled: true };
|
73
73
|
}
|
74
74
|
//# sourceMappingURL=customHandler_delegate.js.map
|
75
75
|
|
@@ -118,10 +118,13 @@ __webpack_require__.r(__webpack_exports__);
|
|
118
118
|
|
119
119
|
async function command(params) {
|
120
120
|
const { buildContext } = params;
|
121
|
-
(0,_shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_3__/* .maybeDelegateCommandToCustomHandler */ .q)({
|
121
|
+
const { hasBeenHandled } = (0,_shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_3__/* .maybeDelegateCommandToCustomHandler */ .q)({
|
122
122
|
commandName: "update-kc-gen",
|
123
123
|
buildContext
|
124
124
|
});
|
125
|
+
if (hasBeenHandled) {
|
126
|
+
return;
|
127
|
+
}
|
125
128
|
const filePath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(buildContext.themeSrcDirPath, `kc.gen.tsx`);
|
126
129
|
const currentContent = (await (0,_tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_2__/* .existsAsync */ .o)(filePath))
|
127
130
|
? await fs_promises__WEBPACK_IMPORTED_MODULE_0__.readFile(filePath)
|
package/bin/932.index.js
CHANGED
@@ -26,10 +26,13 @@ __webpack_require__.r(__webpack_exports__);
|
|
26
26
|
|
27
27
|
async function command(params) {
|
28
28
|
const { buildContext } = params;
|
29
|
-
(0,_shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_5__/* .maybeDelegateCommandToCustomHandler */ .q)({
|
29
|
+
const { hasBeenHandled } = (0,_shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_5__/* .maybeDelegateCommandToCustomHandler */ .q)({
|
30
30
|
commandName: "initialize-email-theme",
|
31
31
|
buildContext
|
32
32
|
});
|
33
|
+
if (hasBeenHandled) {
|
34
|
+
return;
|
35
|
+
}
|
33
36
|
const emailThemeSrcDirPath = (0,path__WEBPACK_IMPORTED_MODULE_0__.join)(buildContext.themeSrcDirPath, "email");
|
34
37
|
if (fs__WEBPACK_IMPORTED_MODULE_3__.existsSync(emailThemeSrcDirPath) &&
|
35
38
|
fs__WEBPACK_IMPORTED_MODULE_3__.readdirSync(emailThemeSrcDirPath).length > 0) {
|
@@ -126,7 +129,7 @@ var external_fs_ = __webpack_require__(57147);
|
|
126
129
|
function maybeDelegateCommandToCustomHandler(params) {
|
127
130
|
const { commandName, buildContext } = params;
|
128
131
|
if (!external_fs_.readdirSync((0,external_path_.dirname)(process.argv[1])).includes(BIN_NAME)) {
|
129
|
-
return;
|
132
|
+
return { hasBeenHandled: false };
|
130
133
|
}
|
131
134
|
try {
|
132
135
|
external_child_process_.execSync(`npx ${BIN_NAME}`, {
|
@@ -137,11 +140,11 @@ function maybeDelegateCommandToCustomHandler(params) {
|
|
137
140
|
catch (error) {
|
138
141
|
const status = error.status;
|
139
142
|
if (status === NOT_IMPLEMENTED_EXIT_CODE) {
|
140
|
-
return;
|
143
|
+
return { hasBeenHandled: false };
|
141
144
|
}
|
142
145
|
process.exit(status);
|
143
146
|
}
|
144
|
-
|
147
|
+
return { hasBeenHandled: true };
|
145
148
|
}
|
146
149
|
//# sourceMappingURL=customHandler_delegate.js.map
|
147
150
|
|
package/bin/main.js
CHANGED
@@ -16274,7 +16274,7 @@ program
|
|
16274
16274
|
.task({
|
16275
16275
|
skip,
|
16276
16276
|
handler: async ({ projectDirPath }) => {
|
16277
|
-
const { command } = await __nccwpck_require__.e(/* import() */
|
16277
|
+
const { command } = await __nccwpck_require__.e(/* import() */ 40).then(__nccwpck_require__.bind(__nccwpck_require__, 18040));
|
16278
16278
|
await command({ buildContext: getBuildContext({ projectDirPath }) });
|
16279
16279
|
}
|
16280
16280
|
});
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "keycloakify",
|
3
|
-
"version": "11.3.
|
3
|
+
"version": "11.3.2",
|
4
4
|
"description": "Framework to create custom Keycloak UIs",
|
5
5
|
"repository": {
|
6
6
|
"type": "git",
|
@@ -677,7 +677,6 @@
|
|
677
677
|
"src/bin/shared/KeycloakVersionRange.ts",
|
678
678
|
"src/bin/shared/buildContext.ts",
|
679
679
|
"src/bin/shared/constants.ts",
|
680
|
-
"src/bin/shared/copyKeycloakResourcesToPublic.ts",
|
681
680
|
"src/bin/shared/customHandler.ts",
|
682
681
|
"src/bin/shared/customHandler_delegate.ts",
|
683
682
|
"src/bin/shared/getLatestsSemVersionedTag.ts",
|
@@ -1011,7 +1010,6 @@
|
|
1011
1010
|
"bin/main.d.ts",
|
1012
1011
|
"bin/shared/buildContext.d.ts",
|
1013
1012
|
"bin/shared/constants.d.ts",
|
1014
|
-
"bin/shared/copyKeycloakResourcesToPublic.d.ts",
|
1015
1013
|
"bin/shared/customHandler_delegate.d.ts",
|
1016
1014
|
"bin/shared/customHandler.d.ts",
|
1017
1015
|
"bin/shared/getLatestsSemVersionedTag.d.ts",
|
@@ -1050,12 +1048,12 @@
|
|
1050
1048
|
"bin/tools/trimIndent.d.ts",
|
1051
1049
|
"bin/update-kc-gen.d.ts",
|
1052
1050
|
"bin/main.js",
|
1053
|
-
"bin/193.index.js",
|
1054
1051
|
"bin/20.index.js",
|
1055
1052
|
"bin/266.index.js",
|
1056
1053
|
"bin/304.index.js",
|
1057
1054
|
"bin/33.index.js",
|
1058
1055
|
"bin/36.index.js",
|
1056
|
+
"bin/40.index.js",
|
1059
1057
|
"bin/453.index.js",
|
1060
1058
|
"bin/526.index.js",
|
1061
1059
|
"bin/573.index.js",
|
@@ -1,16 +1,96 @@
|
|
1
|
-
import { copyKeycloakResourcesToPublic } from "./shared/copyKeycloakResourcesToPublic";
|
2
|
-
import type { BuildContext } from "./shared/buildContext";
|
3
1
|
import { maybeDelegateCommandToCustomHandler } from "./shared/customHandler_delegate";
|
2
|
+
import { join as pathJoin, dirname as pathDirname } from "path";
|
3
|
+
import { WELL_KNOWN_DIRECTORY_BASE_NAME } from "./shared/constants";
|
4
|
+
import { readThisNpmPackageVersion } from "./tools/readThisNpmPackageVersion";
|
5
|
+
import * as fs from "fs";
|
6
|
+
import { rmSync } from "./tools/fs.rmSync";
|
7
|
+
import type { BuildContext } from "./shared/buildContext";
|
8
|
+
import { transformCodebase } from "./tools/transformCodebase";
|
9
|
+
import { getThisCodebaseRootDirPath } from "./tools/getThisCodebaseRootDirPath";
|
4
10
|
|
5
11
|
export async function command(params: { buildContext: BuildContext }) {
|
6
12
|
const { buildContext } = params;
|
7
13
|
|
8
|
-
maybeDelegateCommandToCustomHandler({
|
14
|
+
const { hasBeenHandled } = maybeDelegateCommandToCustomHandler({
|
9
15
|
commandName: "copy-keycloak-resources-to-public",
|
10
16
|
buildContext
|
11
17
|
});
|
12
18
|
|
13
|
-
|
14
|
-
|
19
|
+
if (hasBeenHandled) {
|
20
|
+
return;
|
21
|
+
}
|
22
|
+
|
23
|
+
const destDirPath = pathJoin(
|
24
|
+
buildContext.publicDirPath,
|
25
|
+
WELL_KNOWN_DIRECTORY_BASE_NAME.KEYCLOAKIFY_DEV_RESOURCES
|
26
|
+
);
|
27
|
+
|
28
|
+
const keycloakifyBuildinfoFilePath = pathJoin(destDirPath, "keycloakify.buildinfo");
|
29
|
+
|
30
|
+
const keycloakifyBuildinfoRaw = JSON.stringify(
|
31
|
+
{
|
32
|
+
keycloakifyVersion: readThisNpmPackageVersion()
|
33
|
+
},
|
34
|
+
null,
|
35
|
+
2
|
36
|
+
);
|
37
|
+
|
38
|
+
skip_if_already_done: {
|
39
|
+
if (!fs.existsSync(keycloakifyBuildinfoFilePath)) {
|
40
|
+
break skip_if_already_done;
|
41
|
+
}
|
42
|
+
|
43
|
+
const keycloakifyBuildinfoRaw_previousRun = fs
|
44
|
+
.readFileSync(keycloakifyBuildinfoFilePath)
|
45
|
+
.toString("utf8");
|
46
|
+
|
47
|
+
if (keycloakifyBuildinfoRaw_previousRun !== keycloakifyBuildinfoRaw) {
|
48
|
+
break skip_if_already_done;
|
49
|
+
}
|
50
|
+
|
51
|
+
return;
|
52
|
+
}
|
53
|
+
|
54
|
+
rmSync(destDirPath, { force: true, recursive: true });
|
55
|
+
|
56
|
+
// NOTE: To remove in a while, remove the legacy keycloak-resources directory
|
57
|
+
rmSync(pathJoin(pathDirname(destDirPath), "keycloak-resources"), {
|
58
|
+
force: true,
|
59
|
+
recursive: true
|
60
|
+
});
|
61
|
+
rmSync(pathJoin(pathDirname(destDirPath), ".keycloakify"), {
|
62
|
+
force: true,
|
63
|
+
recursive: true
|
15
64
|
});
|
65
|
+
|
66
|
+
fs.mkdirSync(destDirPath, { recursive: true });
|
67
|
+
|
68
|
+
fs.writeFileSync(pathJoin(destDirPath, ".gitignore"), Buffer.from("*", "utf8"));
|
69
|
+
|
70
|
+
transformCodebase({
|
71
|
+
srcDirPath: pathJoin(
|
72
|
+
getThisCodebaseRootDirPath(),
|
73
|
+
"res",
|
74
|
+
"public",
|
75
|
+
WELL_KNOWN_DIRECTORY_BASE_NAME.KEYCLOAKIFY_DEV_RESOURCES
|
76
|
+
),
|
77
|
+
destDirPath
|
78
|
+
});
|
79
|
+
|
80
|
+
fs.writeFileSync(
|
81
|
+
pathJoin(destDirPath, "README.txt"),
|
82
|
+
Buffer.from(
|
83
|
+
// prettier-ignore
|
84
|
+
[
|
85
|
+
"This directory is only used in dev mode by Keycloakify",
|
86
|
+
"It won't be included in your final build.",
|
87
|
+
"Do not modify anything in this directory.",
|
88
|
+
].join("\n")
|
89
|
+
)
|
90
|
+
);
|
91
|
+
|
92
|
+
fs.writeFileSync(
|
93
|
+
keycloakifyBuildinfoFilePath,
|
94
|
+
Buffer.from(keycloakifyBuildinfoRaw, "utf8")
|
95
|
+
);
|
16
96
|
}
|
package/src/bin/eject-page.ts
CHANGED
@@ -22,10 +22,20 @@ import { kebabCaseToCamelCase } from "./tools/kebabCaseToSnakeCase";
|
|
22
22
|
import { assert, Equals } from "tsafe/assert";
|
23
23
|
import type { BuildContext } from "./shared/buildContext";
|
24
24
|
import chalk from "chalk";
|
25
|
+
import { maybeDelegateCommandToCustomHandler } from "./shared/customHandler_delegate";
|
25
26
|
|
26
27
|
export async function command(params: { buildContext: BuildContext }) {
|
27
28
|
const { buildContext } = params;
|
28
29
|
|
30
|
+
const { hasBeenHandled } = maybeDelegateCommandToCustomHandler({
|
31
|
+
commandName: "eject-page",
|
32
|
+
buildContext
|
33
|
+
});
|
34
|
+
|
35
|
+
if (hasBeenHandled) {
|
36
|
+
return;
|
37
|
+
}
|
38
|
+
|
29
39
|
console.log(chalk.cyan("Theme type:"));
|
30
40
|
|
31
41
|
const themeType = await (async () => {
|
@@ -239,12 +249,12 @@ export async function command(params: { buildContext: BuildContext }) {
|
|
239
249
|
)} copy pasted from the Keycloakify source code into your project`
|
240
250
|
);
|
241
251
|
|
242
|
-
|
252
|
+
edit_KcPage: {
|
243
253
|
if (
|
244
254
|
pageIdOrComponent !== templateValue &&
|
245
255
|
pageIdOrComponent !== userProfileFormFieldsValue
|
246
256
|
) {
|
247
|
-
break
|
257
|
+
break edit_KcPage;
|
248
258
|
}
|
249
259
|
|
250
260
|
const kcAppTsxPath = pathJoin(
|
@@ -11,11 +11,15 @@ import { maybeDelegateCommandToCustomHandler } from "../shared/customHandler_del
|
|
11
11
|
export async function command(params: { buildContext: BuildContext }) {
|
12
12
|
const { buildContext } = params;
|
13
13
|
|
14
|
-
maybeDelegateCommandToCustomHandler({
|
14
|
+
const { hasBeenHandled } = maybeDelegateCommandToCustomHandler({
|
15
15
|
commandName: "initialize-account-theme",
|
16
16
|
buildContext
|
17
17
|
});
|
18
18
|
|
19
|
+
if (hasBeenHandled) {
|
20
|
+
return;
|
21
|
+
}
|
22
|
+
|
19
23
|
const accountThemeSrcDirPath = pathJoin(buildContext.themeSrcDirPath, "account");
|
20
24
|
|
21
25
|
if (
|
@@ -9,11 +9,15 @@ import { maybeDelegateCommandToCustomHandler } from "./shared/customHandler_dele
|
|
9
9
|
export async function command(params: { buildContext: BuildContext }) {
|
10
10
|
const { buildContext } = params;
|
11
11
|
|
12
|
-
maybeDelegateCommandToCustomHandler({
|
12
|
+
const { hasBeenHandled } = maybeDelegateCommandToCustomHandler({
|
13
13
|
commandName: "initialize-email-theme",
|
14
14
|
buildContext
|
15
15
|
});
|
16
16
|
|
17
|
+
if (hasBeenHandled) {
|
18
|
+
return;
|
19
|
+
}
|
20
|
+
|
17
21
|
const emailThemeSrcDirPath = pathJoin(buildContext.themeSrcDirPath, "email");
|
18
22
|
|
19
23
|
if (
|