keycloakify 11.8.46 → 11.8.47-rc.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/254.index.js +283 -0
- package/bin/30.index.js +25 -0
- package/bin/{864.index.js → 309.index.js} +6944 -28439
- package/bin/311.index.js +198 -0
- package/bin/{313.index.js → 355.index.js} +148 -172
- package/bin/{84.index.js → 502.index.js} +151 -103
- package/bin/626.index.js +216 -0
- package/bin/656.index.js +274 -0
- package/bin/675.index.js +177 -0
- package/bin/69.index.js +1 -1
- package/bin/762.index.js +1475 -0
- package/bin/780.index.js +4 -2
- package/bin/786.index.js +115 -0
- package/bin/895.index.js +21501 -0
- package/bin/{618.index.js → 932.index.js} +117 -163
- package/bin/949.index.js +1 -1
- package/bin/97.index.js +539 -4
- package/bin/init/index.d.ts +1 -0
- package/bin/init/init.d.ts +3 -0
- package/bin/init/setupEslint.d.ts +4 -0
- package/bin/init/setupVitePluginIfNeeded.d.ts +4 -0
- package/bin/initialize-login-theme.d.ts +4 -0
- package/bin/main.js +42 -49
- package/bin/shared/customHandler.d.ts +1 -1
- package/bin/shared/customHandler.js.map +1 -1
- package/package.json +23 -7
- package/src/bin/init/index.ts +1 -0
- package/src/bin/init/init.ts +354 -0
- package/src/bin/init/setupEslint.ts +80 -0
- package/src/bin/init/setupVitePluginIfNeeded.ts +143 -0
- package/src/bin/initialize-account-theme/initialize-account-theme.ts +4 -0
- package/src/bin/initialize-login-theme.ts +323 -0
- package/src/bin/main.ts +14 -0
- package/src/bin/shared/buildContext.ts +28 -59
- package/src/bin/shared/customHandler.ts +3 -1
- package/src/bin/shared/initializeSpa.ts +28 -0
- package/src/bin/sync-extensions/extensionModuleMeta.ts +89 -73
- package/src/bin/sync-extensions/managedGitignoreFiles.ts +32 -2
- package/src/bin/tools/fetchProxyOptions.ts +2 -1
- package/src/bin/tools/npmInstall.ts +13 -6
- package/vite-plugin/index.js +24 -43
- package/bin/433.index.js +0 -140
- package/bin/698.index.js +0 -298
package/bin/656.index.js
ADDED
@@ -0,0 +1,274 @@
|
|
1
|
+
"use strict";
|
2
|
+
exports.id = 656;
|
3
|
+
exports.ids = [656,30];
|
4
|
+
exports.modules = {
|
5
|
+
|
6
|
+
/***/ 98656:
|
7
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
8
|
+
|
9
|
+
__webpack_require__.r(__webpack_exports__);
|
10
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
11
|
+
/* harmony export */ "initializeSpa": () => (/* binding */ initializeSpa)
|
12
|
+
/* harmony export */ });
|
13
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71017);
|
14
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);
|
15
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(57147);
|
16
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_1__);
|
17
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(73292);
|
18
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(fs_promises__WEBPACK_IMPORTED_MODULE_2__);
|
19
|
+
/* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29041);
|
20
|
+
/* harmony import */ var tsafe_id__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(38469);
|
21
|
+
/* harmony import */ var _addSyncExtensionsToPostinstallScript__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(80339);
|
22
|
+
/* harmony import */ var _tools_runPrettier__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(48433);
|
23
|
+
/* harmony import */ var _tools_npmInstall__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(63046);
|
24
|
+
/* harmony import */ var child_process__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(32081);
|
25
|
+
/* harmony import */ var child_process__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(child_process__WEBPACK_IMPORTED_MODULE_7__);
|
26
|
+
/* harmony import */ var zod__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(52300);
|
27
|
+
/* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(78818);
|
28
|
+
/* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(chalk__WEBPACK_IMPORTED_MODULE_8__);
|
29
|
+
/* harmony import */ var _tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(43765);
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
|
42
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h)();
|
43
|
+
async function initializeSpa(params) {
|
44
|
+
var _a;
|
45
|
+
const { themeType, buildContext } = params;
|
46
|
+
{
|
47
|
+
const themeTypeSrcDirPath = (0,path__WEBPACK_IMPORTED_MODULE_0__.join)(buildContext.themeSrcDirPath, themeType);
|
48
|
+
if (fs__WEBPACK_IMPORTED_MODULE_1__.existsSync(themeTypeSrcDirPath) &&
|
49
|
+
fs__WEBPACK_IMPORTED_MODULE_1__.readdirSync(themeTypeSrcDirPath).length > 0) {
|
50
|
+
console.warn(chalk__WEBPACK_IMPORTED_MODULE_8___default().red(`There is already a ${(0,path__WEBPACK_IMPORTED_MODULE_0__.relative)(process.cwd(), themeTypeSrcDirPath)} directory in your project. Aborting.`));
|
51
|
+
process.exit(-1);
|
52
|
+
}
|
53
|
+
}
|
54
|
+
const parsedPackageJson = (() => {
|
55
|
+
const zParsedPackageJson = (() => {
|
56
|
+
const zTargetType = zod__WEBPACK_IMPORTED_MODULE_10__.z.object({
|
57
|
+
scripts: zod__WEBPACK_IMPORTED_MODULE_10__.z.record(zod__WEBPACK_IMPORTED_MODULE_10__.z.union([zod__WEBPACK_IMPORTED_MODULE_10__.z.string(), zod__WEBPACK_IMPORTED_MODULE_10__.z.undefined()])).optional(),
|
58
|
+
dependencies: zod__WEBPACK_IMPORTED_MODULE_10__.z.record(zod__WEBPACK_IMPORTED_MODULE_10__.z.union([zod__WEBPACK_IMPORTED_MODULE_10__.z.string(), zod__WEBPACK_IMPORTED_MODULE_10__.z.undefined()])).optional(),
|
59
|
+
devDependencies: zod__WEBPACK_IMPORTED_MODULE_10__.z.record(zod__WEBPACK_IMPORTED_MODULE_10__.z.union([zod__WEBPACK_IMPORTED_MODULE_10__.z.string(), zod__WEBPACK_IMPORTED_MODULE_10__.z.undefined()])).optional()
|
60
|
+
});
|
61
|
+
tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h;
|
62
|
+
return (0,tsafe_id__WEBPACK_IMPORTED_MODULE_11__.id)(zTargetType);
|
63
|
+
})();
|
64
|
+
const parsedPackageJson = JSON.parse(fs__WEBPACK_IMPORTED_MODULE_1__.readFileSync(buildContext.packageJsonFilePath).toString("utf8"));
|
65
|
+
zParsedPackageJson.parse(parsedPackageJson);
|
66
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h)((0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__.is)(parsedPackageJson));
|
67
|
+
return parsedPackageJson;
|
68
|
+
})();
|
69
|
+
(0,_addSyncExtensionsToPostinstallScript__WEBPACK_IMPORTED_MODULE_4__/* .addSyncExtensionsToPostinstallScript */ .N)({
|
70
|
+
parsedPackageJson,
|
71
|
+
buildContext
|
72
|
+
});
|
73
|
+
await disableVerbatimModuleSyntax({
|
74
|
+
projectDirPath: buildContext.projectDirPath
|
75
|
+
});
|
76
|
+
const uiSharedMajor = (() => {
|
77
|
+
const dependencies = Object.assign(Object.assign({}, parsedPackageJson.devDependencies), parsedPackageJson.dependencies);
|
78
|
+
const version = dependencies["@keycloakify/keycloak-ui-shared"];
|
79
|
+
if (version === undefined) {
|
80
|
+
return undefined;
|
81
|
+
}
|
82
|
+
const match = version.match(/^[^~]?(\d+)\./);
|
83
|
+
if (match === null) {
|
84
|
+
return undefined;
|
85
|
+
}
|
86
|
+
return match[1];
|
87
|
+
})();
|
88
|
+
const moduleName = `@keycloakify/keycloak-${themeType}-ui`;
|
89
|
+
const version = (() => {
|
90
|
+
const cmdOutput = child_process__WEBPACK_IMPORTED_MODULE_7__.execSync(`npm show ${moduleName} versions --json`)
|
91
|
+
.toString("utf8")
|
92
|
+
.trim();
|
93
|
+
const versions = JSON.parse(cmdOutput);
|
94
|
+
// NOTE: Bug in some older npm versions
|
95
|
+
if (typeof versions === "string") {
|
96
|
+
return [versions];
|
97
|
+
}
|
98
|
+
return versions;
|
99
|
+
})()
|
100
|
+
.reverse()
|
101
|
+
.filter(version => !version.includes("-"))
|
102
|
+
.find(version => uiSharedMajor === undefined ? true : version.startsWith(`${uiSharedMajor}.`));
|
103
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h)(version !== undefined);
|
104
|
+
((_a = parsedPackageJson.dependencies) !== null && _a !== void 0 ? _a : (parsedPackageJson.dependencies = {}))[moduleName] = `~${version}`;
|
105
|
+
if (parsedPackageJson.devDependencies !== undefined) {
|
106
|
+
delete parsedPackageJson.devDependencies[moduleName];
|
107
|
+
}
|
108
|
+
{
|
109
|
+
let sourceCode = JSON.stringify(parsedPackageJson, undefined, 2);
|
110
|
+
if (await (0,_tools_runPrettier__WEBPACK_IMPORTED_MODULE_5__/* .getIsPrettierAvailable */ .MT)()) {
|
111
|
+
sourceCode = await (0,_tools_runPrettier__WEBPACK_IMPORTED_MODULE_5__/* .runPrettier */ .eY)({
|
112
|
+
sourceCode,
|
113
|
+
filePath: buildContext.packageJsonFilePath
|
114
|
+
});
|
115
|
+
}
|
116
|
+
fs__WEBPACK_IMPORTED_MODULE_1__.writeFileSync(buildContext.packageJsonFilePath, Buffer.from(sourceCode, "utf8"));
|
117
|
+
}
|
118
|
+
await (0,_tools_npmInstall__WEBPACK_IMPORTED_MODULE_6__/* .npmInstall */ .c)({
|
119
|
+
packageJsonDirPath: (0,path__WEBPACK_IMPORTED_MODULE_0__.dirname)(buildContext.packageJsonFilePath)
|
120
|
+
});
|
121
|
+
}
|
122
|
+
async function disableVerbatimModuleSyntax(params) {
|
123
|
+
const { projectDirPath } = params;
|
124
|
+
const filePath = (0,path__WEBPACK_IMPORTED_MODULE_0__.join)(projectDirPath, "tsconfig.app.json");
|
125
|
+
if (!(await (0,_tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_9__/* .existsAsync */ .o)(filePath))) {
|
126
|
+
return;
|
127
|
+
}
|
128
|
+
let content = (await fs_promises__WEBPACK_IMPORTED_MODULE_2__.readFile(filePath)).toString("utf8");
|
129
|
+
const regExp = /"verbatimModuleSyntax"\s*:\s*true\s*(,?)/m;
|
130
|
+
if (!regExp.test(content)) {
|
131
|
+
return;
|
132
|
+
}
|
133
|
+
content = content.replace(regExp, `"verbatimModuleSyntax": false$1`);
|
134
|
+
await fs_promises__WEBPACK_IMPORTED_MODULE_2__.writeFile(filePath, Buffer.from(content, "utf8"));
|
135
|
+
}
|
136
|
+
//# sourceMappingURL=initializeSpa.js.map
|
137
|
+
|
138
|
+
/***/ }),
|
139
|
+
|
140
|
+
/***/ 48433:
|
141
|
+
/***/ ((module, __webpack_exports__, __webpack_require__) => {
|
142
|
+
|
143
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
144
|
+
/* harmony export */ "LG": () => (/* binding */ getPrettier),
|
145
|
+
/* harmony export */ "MT": () => (/* binding */ getIsPrettierAvailable),
|
146
|
+
/* harmony export */ "eY": () => (/* binding */ runPrettier)
|
147
|
+
/* harmony export */ });
|
148
|
+
/* harmony import */ var _nodeModulesBinDirPath__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(73776);
|
149
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71017);
|
150
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_1__);
|
151
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(73292);
|
152
|
+
/* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(fs_promises__WEBPACK_IMPORTED_MODULE_2__);
|
153
|
+
/* harmony import */ var tsafe_id__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(38469);
|
154
|
+
/* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29041);
|
155
|
+
/* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(78818);
|
156
|
+
/* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(chalk__WEBPACK_IMPORTED_MODULE_4__);
|
157
|
+
/* harmony import */ var crypto__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(6113);
|
158
|
+
/* harmony import */ var crypto__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(crypto__WEBPACK_IMPORTED_MODULE_5__);
|
159
|
+
/* harmony import */ var tsafe_symToStr__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(76030);
|
160
|
+
/* harmony import */ var _readThisNpmPackageVersion__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(64795);
|
161
|
+
/* module decorator */ module = __webpack_require__.hmd(module);
|
162
|
+
|
163
|
+
|
164
|
+
|
165
|
+
|
166
|
+
|
167
|
+
|
168
|
+
|
169
|
+
|
170
|
+
|
171
|
+
getIsPrettierAvailable.cache = (0,tsafe_id__WEBPACK_IMPORTED_MODULE_7__.id)(undefined);
|
172
|
+
async function getIsPrettierAvailable() {
|
173
|
+
var _a;
|
174
|
+
if (getIsPrettierAvailable.cache !== undefined) {
|
175
|
+
return getIsPrettierAvailable.cache;
|
176
|
+
}
|
177
|
+
const nodeModulesBinDirPath = (0,_nodeModulesBinDirPath__WEBPACK_IMPORTED_MODULE_0__/* .getNodeModulesBinDirPath */ .K)({
|
178
|
+
packageJsonFilePath: undefined
|
179
|
+
});
|
180
|
+
const prettierBinPath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(nodeModulesBinDirPath, "prettier");
|
181
|
+
const stats = await fs_promises__WEBPACK_IMPORTED_MODULE_2__.stat(prettierBinPath).catch(() => undefined);
|
182
|
+
const isPrettierAvailable = (_a = stats === null || stats === void 0 ? void 0 : stats.isFile()) !== null && _a !== void 0 ? _a : false;
|
183
|
+
getIsPrettierAvailable.cache = isPrettierAvailable;
|
184
|
+
return isPrettierAvailable;
|
185
|
+
}
|
186
|
+
getPrettier.cache = (0,tsafe_id__WEBPACK_IMPORTED_MODULE_7__.id)(undefined);
|
187
|
+
async function getPrettier() {
|
188
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h)(getIsPrettierAvailable());
|
189
|
+
if (getPrettier.cache !== undefined) {
|
190
|
+
return getPrettier.cache;
|
191
|
+
}
|
192
|
+
let prettier = (0,tsafe_id__WEBPACK_IMPORTED_MODULE_7__.id)(undefined);
|
193
|
+
import_prettier: {
|
194
|
+
// NOTE: When module is linked we want to make sure we import the correct version
|
195
|
+
// of prettier, that is the one of the project, not the one of this repo.
|
196
|
+
// So we do a sketchy eval to bypass ncc.
|
197
|
+
// We make sure to only do that when linking, otherwise we import properly.
|
198
|
+
if ((0,_readThisNpmPackageVersion__WEBPACK_IMPORTED_MODULE_6__/* .readThisNpmPackageVersion */ .K)().startsWith("0.0.0")) {
|
199
|
+
const prettierDirPath = (0,path__WEBPACK_IMPORTED_MODULE_1__.resolve)((0,path__WEBPACK_IMPORTED_MODULE_1__.join)((0,_nodeModulesBinDirPath__WEBPACK_IMPORTED_MODULE_0__/* .getNodeModulesBinDirPath */ .K)({ packageJsonFilePath: undefined }), "..", "prettier"));
|
200
|
+
const isCJS = true && module.exports;
|
201
|
+
if (isCJS) {
|
202
|
+
eval(`${(0,tsafe_symToStr__WEBPACK_IMPORTED_MODULE_8__/* .symToStr */ .r)({ prettier })} = require("${prettierDirPath}")`);
|
203
|
+
}
|
204
|
+
else {
|
205
|
+
prettier = await new Promise(_resolve => {
|
206
|
+
eval(`import("file:///${(0,path__WEBPACK_IMPORTED_MODULE_1__.join)(prettierDirPath, "index.mjs").replace(/\\/g, "/")}").then(prettier => _resolve(prettier))`);
|
207
|
+
});
|
208
|
+
}
|
209
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h)(!(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__.is)(prettier));
|
210
|
+
break import_prettier;
|
211
|
+
}
|
212
|
+
prettier = await Promise.resolve(/* import() */).then(__webpack_require__.t.bind(__webpack_require__, 79421, 23));
|
213
|
+
}
|
214
|
+
const configHash = await (async () => {
|
215
|
+
const configFilePath = await prettier.resolveConfigFile((0,path__WEBPACK_IMPORTED_MODULE_1__.join)((0,_nodeModulesBinDirPath__WEBPACK_IMPORTED_MODULE_0__/* .getNodeModulesBinDirPath */ .K)({ packageJsonFilePath: undefined }), "..", ".."));
|
216
|
+
if (configFilePath === null) {
|
217
|
+
return "";
|
218
|
+
}
|
219
|
+
const data = await fs_promises__WEBPACK_IMPORTED_MODULE_2__.readFile(configFilePath);
|
220
|
+
return crypto__WEBPACK_IMPORTED_MODULE_5__.createHash("sha256").update(data).digest("hex");
|
221
|
+
})();
|
222
|
+
const prettierAndConfig = {
|
223
|
+
prettier,
|
224
|
+
configHash
|
225
|
+
};
|
226
|
+
getPrettier.cache = prettierAndConfig;
|
227
|
+
return prettierAndConfig;
|
228
|
+
}
|
229
|
+
async function runPrettier(params) {
|
230
|
+
const { sourceCode, filePath } = params;
|
231
|
+
let formattedSourceCode;
|
232
|
+
try {
|
233
|
+
const { prettier } = await getPrettier();
|
234
|
+
const { ignored, inferredParser } = await prettier.getFileInfo(filePath, {
|
235
|
+
resolveConfig: true
|
236
|
+
});
|
237
|
+
if (ignored || inferredParser === null) {
|
238
|
+
return sourceCode;
|
239
|
+
}
|
240
|
+
const config = await prettier.resolveConfig(filePath);
|
241
|
+
formattedSourceCode = await prettier.format(typeof sourceCode === "string" ? sourceCode : sourceCode.toString("utf8"), Object.assign(Object.assign({}, config), { filePath, parser: inferredParser }));
|
242
|
+
}
|
243
|
+
catch (error) {
|
244
|
+
console.log(chalk__WEBPACK_IMPORTED_MODULE_4___default().red(`You probably need to upgrade the version of prettier in your project`));
|
245
|
+
throw error;
|
246
|
+
}
|
247
|
+
return typeof sourceCode === "string"
|
248
|
+
? formattedSourceCode
|
249
|
+
: Buffer.from(formattedSourceCode, "utf8");
|
250
|
+
}
|
251
|
+
//# sourceMappingURL=runPrettier.js.map
|
252
|
+
|
253
|
+
/***/ }),
|
254
|
+
|
255
|
+
/***/ 76030:
|
256
|
+
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
257
|
+
|
258
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
259
|
+
/* harmony export */ "r": () => (/* binding */ symToStr)
|
260
|
+
/* harmony export */ });
|
261
|
+
/** @see <https://docs.tsafe.dev/main/symtostr> */
|
262
|
+
function symToStr(wrap) {
|
263
|
+
// @ts-expect-error: We know better
|
264
|
+
return Object.keys(wrap)[0];
|
265
|
+
}
|
266
|
+
|
267
|
+
|
268
|
+
//# sourceMappingURL=symToStr.mjs.map
|
269
|
+
|
270
|
+
|
271
|
+
/***/ })
|
272
|
+
|
273
|
+
};
|
274
|
+
;
|
package/bin/675.index.js
ADDED
@@ -0,0 +1,177 @@
|
|
1
|
+
"use strict";
|
2
|
+
exports.id = 675;
|
3
|
+
exports.ids = [675];
|
4
|
+
exports.modules = {
|
5
|
+
|
6
|
+
/***/ 16932:
|
7
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
8
|
+
|
9
|
+
__webpack_require__.r(__webpack_exports__);
|
10
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
11
|
+
/* harmony export */ "command": () => (/* binding */ command)
|
12
|
+
/* harmony export */ });
|
13
|
+
/* harmony import */ var cli_select__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(99398);
|
14
|
+
/* harmony import */ var cli_select__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(cli_select__WEBPACK_IMPORTED_MODULE_0__);
|
15
|
+
/* harmony import */ var _shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(72138);
|
16
|
+
/* harmony import */ var _shared_exitIfUncommittedChanges__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(22058);
|
17
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(71017);
|
18
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_3__);
|
19
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(57147);
|
20
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_4__);
|
21
|
+
/* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(29041);
|
22
|
+
/* harmony import */ var tsafe_id__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(38469);
|
23
|
+
/* harmony import */ var _shared_addSyncExtensionsToPostinstallScript__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(80339);
|
24
|
+
/* harmony import */ var _tools_runPrettier__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(48433);
|
25
|
+
/* harmony import */ var _tools_npmInstall__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(63046);
|
26
|
+
/* harmony import */ var child_process__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(32081);
|
27
|
+
/* harmony import */ var child_process__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(child_process__WEBPACK_IMPORTED_MODULE_9__);
|
28
|
+
/* harmony import */ var zod__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(52300);
|
29
|
+
/* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(78818);
|
30
|
+
/* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(chalk__WEBPACK_IMPORTED_MODULE_10__);
|
31
|
+
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
|
44
|
+
async function command(params) {
|
45
|
+
var _a;
|
46
|
+
const { buildContext } = params;
|
47
|
+
const { hasBeenHandled } = await (0,_shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_1__/* .maybeDelegateCommandToCustomHandler */ .q)({
|
48
|
+
commandName: "initialize-email-theme",
|
49
|
+
buildContext
|
50
|
+
});
|
51
|
+
if (hasBeenHandled) {
|
52
|
+
return;
|
53
|
+
}
|
54
|
+
(0,_shared_exitIfUncommittedChanges__WEBPACK_IMPORTED_MODULE_2__/* .exitIfUncommittedChanges */ .l)({
|
55
|
+
projectDirPath: buildContext.projectDirPath
|
56
|
+
});
|
57
|
+
const emailThemeSrcDirPath = (0,path__WEBPACK_IMPORTED_MODULE_3__.join)(buildContext.themeSrcDirPath, "email");
|
58
|
+
if (fs__WEBPACK_IMPORTED_MODULE_4__.existsSync(emailThemeSrcDirPath) &&
|
59
|
+
fs__WEBPACK_IMPORTED_MODULE_4__.readdirSync(emailThemeSrcDirPath).length > 0) {
|
60
|
+
console.warn(chalk__WEBPACK_IMPORTED_MODULE_10___default().red(`There is already a ${(0,path__WEBPACK_IMPORTED_MODULE_3__.relative)(process.cwd(), emailThemeSrcDirPath)} directory in your project. Aborting.`));
|
61
|
+
process.exit(-1);
|
62
|
+
}
|
63
|
+
const { value: emailThemeType } = await cli_select__WEBPACK_IMPORTED_MODULE_0___default()({
|
64
|
+
values: [
|
65
|
+
"native (FreeMarker)",
|
66
|
+
"Another email templating solution"
|
67
|
+
]
|
68
|
+
}).catch(() => {
|
69
|
+
process.exit(-1);
|
70
|
+
});
|
71
|
+
if (emailThemeType === "Another email templating solution") {
|
72
|
+
console.log([
|
73
|
+
"There is currently no automated support for keycloakify-email, it has to be done manually, see documentation:",
|
74
|
+
"https://docs.keycloakify.dev/theme-types/email-theme"
|
75
|
+
].join("\n"));
|
76
|
+
process.exit(0);
|
77
|
+
}
|
78
|
+
const parsedPackageJson = (() => {
|
79
|
+
const zParsedPackageJson = (() => {
|
80
|
+
const zTargetType = zod__WEBPACK_IMPORTED_MODULE_11__.z.object({
|
81
|
+
scripts: zod__WEBPACK_IMPORTED_MODULE_11__.z.record(zod__WEBPACK_IMPORTED_MODULE_11__.z.union([zod__WEBPACK_IMPORTED_MODULE_11__.z.string(), zod__WEBPACK_IMPORTED_MODULE_11__.z.undefined()])).optional(),
|
82
|
+
dependencies: zod__WEBPACK_IMPORTED_MODULE_11__.z.record(zod__WEBPACK_IMPORTED_MODULE_11__.z.union([zod__WEBPACK_IMPORTED_MODULE_11__.z.string(), zod__WEBPACK_IMPORTED_MODULE_11__.z.undefined()])).optional(),
|
83
|
+
devDependencies: zod__WEBPACK_IMPORTED_MODULE_11__.z.record(zod__WEBPACK_IMPORTED_MODULE_11__.z.union([zod__WEBPACK_IMPORTED_MODULE_11__.z.string(), zod__WEBPACK_IMPORTED_MODULE_11__.z.undefined()])).optional()
|
84
|
+
});
|
85
|
+
tsafe_assert__WEBPACK_IMPORTED_MODULE_5__/* .assert */ .h;
|
86
|
+
return (0,tsafe_id__WEBPACK_IMPORTED_MODULE_12__.id)(zTargetType);
|
87
|
+
})();
|
88
|
+
const parsedPackageJson = JSON.parse(fs__WEBPACK_IMPORTED_MODULE_4__.readFileSync(buildContext.packageJsonFilePath).toString("utf8"));
|
89
|
+
zParsedPackageJson.parse(parsedPackageJson);
|
90
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_5__/* .assert */ .h)((0,tsafe_assert__WEBPACK_IMPORTED_MODULE_5__.is)(parsedPackageJson));
|
91
|
+
return parsedPackageJson;
|
92
|
+
})();
|
93
|
+
(0,_shared_addSyncExtensionsToPostinstallScript__WEBPACK_IMPORTED_MODULE_6__/* .addSyncExtensionsToPostinstallScript */ .N)({
|
94
|
+
parsedPackageJson,
|
95
|
+
buildContext
|
96
|
+
});
|
97
|
+
const moduleName = `@keycloakify/email-native`;
|
98
|
+
const [version] = (() => {
|
99
|
+
const cmdOutput = child_process__WEBPACK_IMPORTED_MODULE_9__.execSync(`npm show ${moduleName} versions --json`)
|
100
|
+
.toString("utf8")
|
101
|
+
.trim();
|
102
|
+
const versions = JSON.parse(cmdOutput);
|
103
|
+
// NOTE: Bug in some older npm versions
|
104
|
+
if (typeof versions === "string") {
|
105
|
+
return [versions];
|
106
|
+
}
|
107
|
+
return versions;
|
108
|
+
})()
|
109
|
+
.reverse()
|
110
|
+
.filter(version => !version.includes("-"));
|
111
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_5__/* .assert */ .h)(version !== undefined);
|
112
|
+
((_a = parsedPackageJson.dependencies) !== null && _a !== void 0 ? _a : (parsedPackageJson.dependencies = {}))[moduleName] = `~${version}`;
|
113
|
+
if (parsedPackageJson.devDependencies !== undefined) {
|
114
|
+
delete parsedPackageJson.devDependencies[moduleName];
|
115
|
+
}
|
116
|
+
{
|
117
|
+
let sourceCode = JSON.stringify(parsedPackageJson, undefined, 2);
|
118
|
+
if (await (0,_tools_runPrettier__WEBPACK_IMPORTED_MODULE_7__/* .getIsPrettierAvailable */ .MT)()) {
|
119
|
+
sourceCode = await (0,_tools_runPrettier__WEBPACK_IMPORTED_MODULE_7__/* .runPrettier */ .eY)({
|
120
|
+
sourceCode,
|
121
|
+
filePath: buildContext.packageJsonFilePath
|
122
|
+
});
|
123
|
+
}
|
124
|
+
fs__WEBPACK_IMPORTED_MODULE_4__.writeFileSync(buildContext.packageJsonFilePath, Buffer.from(sourceCode, "utf8"));
|
125
|
+
}
|
126
|
+
await (0,_tools_npmInstall__WEBPACK_IMPORTED_MODULE_8__/* .npmInstall */ .c)({
|
127
|
+
packageJsonDirPath: (0,path__WEBPACK_IMPORTED_MODULE_3__.dirname)(buildContext.packageJsonFilePath)
|
128
|
+
});
|
129
|
+
console.log(chalk__WEBPACK_IMPORTED_MODULE_10___default().green("Email theme initialized."));
|
130
|
+
}
|
131
|
+
//# sourceMappingURL=initialize-email-theme.js.map
|
132
|
+
|
133
|
+
/***/ }),
|
134
|
+
|
135
|
+
/***/ 22058:
|
136
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
137
|
+
|
138
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
139
|
+
/* harmony export */ "l": () => (/* binding */ exitIfUncommittedChanges)
|
140
|
+
/* harmony export */ });
|
141
|
+
/* harmony import */ var child_process__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(32081);
|
142
|
+
/* harmony import */ var child_process__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(child_process__WEBPACK_IMPORTED_MODULE_0__);
|
143
|
+
/* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(78818);
|
144
|
+
/* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(chalk__WEBPACK_IMPORTED_MODULE_1__);
|
145
|
+
|
146
|
+
|
147
|
+
function exitIfUncommittedChanges(params) {
|
148
|
+
const { projectDirPath } = params;
|
149
|
+
let hasUncommittedChanges = undefined;
|
150
|
+
try {
|
151
|
+
hasUncommittedChanges =
|
152
|
+
child_process__WEBPACK_IMPORTED_MODULE_0___default().execSync(`git status --porcelain`, {
|
153
|
+
cwd: projectDirPath
|
154
|
+
})
|
155
|
+
.toString()
|
156
|
+
.trim() !== "";
|
157
|
+
}
|
158
|
+
catch (_a) {
|
159
|
+
// Probably not a git repository
|
160
|
+
return;
|
161
|
+
}
|
162
|
+
if (!hasUncommittedChanges) {
|
163
|
+
return;
|
164
|
+
}
|
165
|
+
console.warn([
|
166
|
+
chalk__WEBPACK_IMPORTED_MODULE_1___default().red("Please commit or stash your changes before running this command.\n"),
|
167
|
+
"This command will modify your project's files so it's better to have a clean working directory",
|
168
|
+
"so that you can easily see what has been changed and revert if needed."
|
169
|
+
].join(" "));
|
170
|
+
process.exit(-1);
|
171
|
+
}
|
172
|
+
//# sourceMappingURL=exitIfUncommittedChanges.js.map
|
173
|
+
|
174
|
+
/***/ })
|
175
|
+
|
176
|
+
};
|
177
|
+
;
|