keycloakify 10.0.0-rc.62 → 10.0.0-rc.64
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 +552 -0
- package/bin/{991.index.js → 240.index.js} +40 -2
- package/bin/{952.index.js → 363.index.js} +702 -154
- package/bin/{214.index.js → 430.index.js} +2 -161
- package/bin/526.index.js +111 -93
- package/bin/538.index.js +37 -28
- package/bin/{98.index.js → 827.index.js} +39 -187
- package/bin/{941.index.js → 890.index.js} +159 -2
- package/bin/932.index.js +37 -66
- package/bin/97.index.js +1 -1
- package/bin/main.js +7 -7
- package/package.json +9 -9
- package/src/bin/add-story.ts +1 -1
- package/src/bin/keycloakify/buildJars/buildJar.ts +24 -27
- package/src/bin/keycloakify/buildJars/buildJars.ts +5 -5
- package/src/bin/keycloakify/generateResources/generateResourcesForMainTheme.ts +33 -32
- package/src/bin/keycloakify/generateResources/generateResourcesForThemeVariant.ts +22 -26
- package/src/bin/shared/getImplementedThemeTypes.ts +23 -0
- package/src/bin/shared/getThemeSrcDirPath.ts +44 -32
- package/src/bin/shared/metaInfKeycloakThemes.ts +16 -60
- package/src/bin/start-keycloak/appBuild.ts +1 -1
- package/src/bin/start-keycloak/keycloakifyBuild.ts +3 -2
- package/src/bin/start-keycloak/start-keycloak.ts +37 -71
- package/vite-plugin/index.js +1848 -30
- package/bin/190.index.js +0 -597
package/bin/193.index.js
CHANGED
@@ -103,6 +103,558 @@ async function command(params) {
|
|
103
103
|
}
|
104
104
|
//# sourceMappingURL=copy-keycloak-resources-to-public.js.map
|
105
105
|
|
106
|
+
/***/ }),
|
107
|
+
|
108
|
+
/***/ 47802:
|
109
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
110
|
+
|
111
|
+
|
112
|
+
// EXPORTS
|
113
|
+
__webpack_require__.d(__webpack_exports__, {
|
114
|
+
"x": () => (/* binding */ downloadKeycloakDefaultTheme)
|
115
|
+
});
|
116
|
+
|
117
|
+
// EXTERNAL MODULE: external "path"
|
118
|
+
var external_path_ = __webpack_require__(71017);
|
119
|
+
// EXTERNAL MODULE: ./node_modules/tsafe/assert.js
|
120
|
+
var assert = __webpack_require__(88078);
|
121
|
+
// EXTERNAL MODULE: ./dist/bin/shared/constants.js
|
122
|
+
var constants = __webpack_require__(173);
|
123
|
+
// EXTERNAL MODULE: ./node_modules/make-fetch-happen/lib/index.js
|
124
|
+
var lib = __webpack_require__(9525);
|
125
|
+
var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
|
126
|
+
// EXTERNAL MODULE: external "fs/promises"
|
127
|
+
var promises_ = __webpack_require__(73292);
|
128
|
+
// EXTERNAL MODULE: ./dist/bin/tools/extractArchive.js
|
129
|
+
var extractArchive = __webpack_require__(29121);
|
130
|
+
// EXTERNAL MODULE: ./dist/bin/tools/fs.existsAsync.js
|
131
|
+
var fs_existsAsync = __webpack_require__(43765);
|
132
|
+
// EXTERNAL MODULE: external "child_process"
|
133
|
+
var external_child_process_ = __webpack_require__(32081);
|
134
|
+
// EXTERNAL MODULE: external "util"
|
135
|
+
var external_util_ = __webpack_require__(73837);
|
136
|
+
;// CONCATENATED MODULE: ./dist/bin/tools/downloadAndExtractArchive/fetchProxyOptions.js
|
137
|
+
|
138
|
+
|
139
|
+
|
140
|
+
function ensureArray(arg0) {
|
141
|
+
return Array.isArray(arg0) ? arg0 : typeof arg0 === "undefined" ? [] : [arg0];
|
142
|
+
}
|
143
|
+
function ensureSingleOrNone(arg0) {
|
144
|
+
if (!Array.isArray(arg0))
|
145
|
+
return arg0;
|
146
|
+
if (arg0.length === 0)
|
147
|
+
return undefined;
|
148
|
+
if (arg0.length === 1)
|
149
|
+
return arg0[0];
|
150
|
+
throw new Error("Illegal configuration, expected a single value but found multiple: " +
|
151
|
+
arg0.map(String).join(", "));
|
152
|
+
}
|
153
|
+
/**
|
154
|
+
* Get npm configuration as map
|
155
|
+
*/
|
156
|
+
async function getNmpConfig(params) {
|
157
|
+
const { npmWorkspaceRootDirPath } = params;
|
158
|
+
const exec = (0,external_util_.promisify)(external_child_process_.exec);
|
159
|
+
const stdout = await exec("npm config get", {
|
160
|
+
encoding: "utf8",
|
161
|
+
cwd: npmWorkspaceRootDirPath
|
162
|
+
}).then(({ stdout }) => stdout);
|
163
|
+
const npmConfigReducer = (cfg, [key, value]) => key in cfg
|
164
|
+
? Object.assign(Object.assign({}, cfg), { [key]: [...ensureArray(cfg[key]), value] }) : Object.assign(Object.assign({}, cfg), { [key]: value });
|
165
|
+
return stdout
|
166
|
+
.split("\n")
|
167
|
+
.filter(line => !line.startsWith(";"))
|
168
|
+
.map(line => line.trim())
|
169
|
+
.map(line => line.split("=", 2))
|
170
|
+
.reduce(npmConfigReducer, {});
|
171
|
+
}
|
172
|
+
async function getProxyFetchOptions(params) {
|
173
|
+
var _a, _b, _c;
|
174
|
+
const { npmWorkspaceRootDirPath } = params;
|
175
|
+
const cfg = await getNmpConfig({ npmWorkspaceRootDirPath });
|
176
|
+
const proxy = ensureSingleOrNone((_a = cfg["https-proxy"]) !== null && _a !== void 0 ? _a : cfg["proxy"]);
|
177
|
+
const noProxy = (_b = cfg["noproxy"]) !== null && _b !== void 0 ? _b : cfg["no-proxy"];
|
178
|
+
function maybeBoolean(arg0) {
|
179
|
+
return typeof arg0 === "undefined" ? undefined : Boolean(arg0);
|
180
|
+
}
|
181
|
+
const strictSSL = maybeBoolean(ensureSingleOrNone(cfg["strict-ssl"]));
|
182
|
+
const cert = cfg["cert"];
|
183
|
+
const ca = ensureArray((_c = cfg["ca"]) !== null && _c !== void 0 ? _c : cfg["ca[]"]);
|
184
|
+
const cafile = ensureSingleOrNone(cfg["cafile"]);
|
185
|
+
if (typeof cafile !== "undefined" && cafile !== "null") {
|
186
|
+
ca.push(...(await (async () => {
|
187
|
+
function chunks(arr, size = 2) {
|
188
|
+
return arr
|
189
|
+
.map((_, i) => i % size == 0 && arr.slice(i, i + size))
|
190
|
+
.filter(Boolean);
|
191
|
+
}
|
192
|
+
const cafileContent = await (0,promises_.readFile)(cafile, "utf-8");
|
193
|
+
const newLinePlaceholder = "NEW_LINE_PLACEHOLDER_xIsPsK23svt";
|
194
|
+
return chunks(cafileContent.split(/(-----END CERTIFICATE-----)/), 2).map(ca => ca
|
195
|
+
.join("")
|
196
|
+
.replace(/\r?\n/g, newLinePlaceholder)
|
197
|
+
.replace(new RegExp(`^${newLinePlaceholder}`), "")
|
198
|
+
.replace(new RegExp(newLinePlaceholder, "g"), "\\n"));
|
199
|
+
})()));
|
200
|
+
}
|
201
|
+
return {
|
202
|
+
proxy,
|
203
|
+
noProxy,
|
204
|
+
strictSSL,
|
205
|
+
cert,
|
206
|
+
ca: ca.length === 0 ? undefined : ca
|
207
|
+
};
|
208
|
+
}
|
209
|
+
//# sourceMappingURL=fetchProxyOptions.js.map
|
210
|
+
// EXTERNAL MODULE: external "crypto"
|
211
|
+
var external_crypto_ = __webpack_require__(6113);
|
212
|
+
// EXTERNAL MODULE: ./dist/bin/tools/fs.rm.js
|
213
|
+
var fs_rm = __webpack_require__(8699);
|
214
|
+
;// CONCATENATED MODULE: ./dist/bin/tools/downloadAndExtractArchive/downloadAndExtractArchive.js
|
215
|
+
|
216
|
+
|
217
|
+
|
218
|
+
|
219
|
+
|
220
|
+
|
221
|
+
|
222
|
+
|
223
|
+
|
224
|
+
async function downloadAndExtractArchive(params) {
|
225
|
+
var _a;
|
226
|
+
const { url, uniqueIdOfOnOnArchiveFile, onArchiveFile, cacheDirPath, npmWorkspaceRootDirPath } = params;
|
227
|
+
const archiveFileBasename = url.split("?")[0].split("/").reverse()[0];
|
228
|
+
const archiveFilePath = (0,external_path_.join)(cacheDirPath, archiveFileBasename);
|
229
|
+
download: {
|
230
|
+
if (await (0,fs_existsAsync/* existsAsync */.o)(archiveFilePath)) {
|
231
|
+
const isDownloaded = await SuccessTracker.getIsDownloaded({
|
232
|
+
cacheDirPath,
|
233
|
+
archiveFileBasename
|
234
|
+
});
|
235
|
+
if (isDownloaded) {
|
236
|
+
break download;
|
237
|
+
}
|
238
|
+
await (0,promises_.unlink)(archiveFilePath);
|
239
|
+
await SuccessTracker.removeFromDownloaded({
|
240
|
+
cacheDirPath,
|
241
|
+
archiveFileBasename
|
242
|
+
});
|
243
|
+
}
|
244
|
+
await (0,promises_.mkdir)((0,external_path_.dirname)(archiveFilePath), { recursive: true });
|
245
|
+
const response = await lib_default()(url, await getProxyFetchOptions({ npmWorkspaceRootDirPath }));
|
246
|
+
(_a = response.body) === null || _a === void 0 ? void 0 : _a.setMaxListeners(Number.MAX_VALUE);
|
247
|
+
(0,assert.assert)(typeof response.body !== "undefined" && response.body != null);
|
248
|
+
await (0,promises_.writeFile)(archiveFilePath, response.body);
|
249
|
+
await SuccessTracker.markAsDownloaded({
|
250
|
+
cacheDirPath,
|
251
|
+
archiveFileBasename
|
252
|
+
});
|
253
|
+
}
|
254
|
+
const extractDirBasename = `${archiveFileBasename.split(".")[0]}_${uniqueIdOfOnOnArchiveFile}_${external_crypto_.createHash("sha256")
|
255
|
+
.update(onArchiveFile.toString())
|
256
|
+
.digest("hex")
|
257
|
+
.substring(0, 5)}`;
|
258
|
+
await Promise.all((await (0,promises_.readdir)(cacheDirPath))
|
259
|
+
.filter((() => {
|
260
|
+
const prefix = extractDirBasename
|
261
|
+
.split("_")
|
262
|
+
.reverse()
|
263
|
+
.slice(1)
|
264
|
+
.reverse()
|
265
|
+
.join("_");
|
266
|
+
return basename => basename !== extractDirBasename && basename.startsWith(prefix);
|
267
|
+
})())
|
268
|
+
.map(async (extractDirBasename) => {
|
269
|
+
await (0,fs_rm.rm)((0,external_path_.join)(cacheDirPath, extractDirBasename), { recursive: true });
|
270
|
+
await SuccessTracker.removeFromExtracted({
|
271
|
+
cacheDirPath,
|
272
|
+
extractDirBasename
|
273
|
+
});
|
274
|
+
}));
|
275
|
+
const extractedDirPath = (0,external_path_.join)(cacheDirPath, extractDirBasename);
|
276
|
+
extract_and_transform: {
|
277
|
+
if (await (0,fs_existsAsync/* existsAsync */.o)(extractedDirPath)) {
|
278
|
+
const isExtracted = await SuccessTracker.getIsExtracted({
|
279
|
+
cacheDirPath,
|
280
|
+
extractDirBasename
|
281
|
+
});
|
282
|
+
if (isExtracted) {
|
283
|
+
break extract_and_transform;
|
284
|
+
}
|
285
|
+
await (0,fs_rm.rm)(extractedDirPath, { recursive: true });
|
286
|
+
await SuccessTracker.removeFromExtracted({
|
287
|
+
cacheDirPath,
|
288
|
+
extractDirBasename
|
289
|
+
});
|
290
|
+
}
|
291
|
+
await (0,extractArchive/* extractArchive */.N)({
|
292
|
+
archiveFilePath,
|
293
|
+
onArchiveFile: async ({ relativeFilePathInArchive, readFile, writeFile }) => onArchiveFile({
|
294
|
+
fileRelativePath: relativeFilePathInArchive,
|
295
|
+
readFile,
|
296
|
+
writeFile: ({ fileRelativePath, modifiedData }) => writeFile({
|
297
|
+
filePath: (0,external_path_.join)(extractedDirPath, fileRelativePath),
|
298
|
+
modifiedData
|
299
|
+
})
|
300
|
+
})
|
301
|
+
});
|
302
|
+
await SuccessTracker.markAsExtracted({
|
303
|
+
cacheDirPath,
|
304
|
+
extractDirBasename
|
305
|
+
});
|
306
|
+
}
|
307
|
+
return { extractedDirPath };
|
308
|
+
}
|
309
|
+
var SuccessTracker;
|
310
|
+
(function (SuccessTracker) {
|
311
|
+
async function read(params) {
|
312
|
+
const { cacheDirPath } = params;
|
313
|
+
const filePath = (0,external_path_.join)(cacheDirPath, "downloadAndExtractArchive.json");
|
314
|
+
if (!(await (0,fs_existsAsync/* existsAsync */.o)(filePath))) {
|
315
|
+
return { archiveFileBasenames: [], extractDirBasenames: [] };
|
316
|
+
}
|
317
|
+
return JSON.parse((await (0,promises_.readFile)(filePath)).toString("utf8"));
|
318
|
+
}
|
319
|
+
async function write(params) {
|
320
|
+
const { cacheDirPath, successTracker } = params;
|
321
|
+
const filePath = (0,external_path_.join)(cacheDirPath, "downloadAndExtractArchive.json");
|
322
|
+
{
|
323
|
+
const dirPath = (0,external_path_.dirname)(filePath);
|
324
|
+
if (!(await (0,fs_existsAsync/* existsAsync */.o)(dirPath))) {
|
325
|
+
await (0,promises_.mkdir)(dirPath, { recursive: true });
|
326
|
+
}
|
327
|
+
}
|
328
|
+
await (0,promises_.writeFile)(filePath, JSON.stringify(successTracker));
|
329
|
+
}
|
330
|
+
async function markAsDownloaded(params) {
|
331
|
+
const { cacheDirPath, archiveFileBasename } = params;
|
332
|
+
const successTracker = await read({ cacheDirPath });
|
333
|
+
successTracker.archiveFileBasenames.push(archiveFileBasename);
|
334
|
+
await write({ cacheDirPath, successTracker });
|
335
|
+
}
|
336
|
+
SuccessTracker.markAsDownloaded = markAsDownloaded;
|
337
|
+
async function getIsDownloaded(params) {
|
338
|
+
const { cacheDirPath, archiveFileBasename } = params;
|
339
|
+
const successTracker = await read({ cacheDirPath });
|
340
|
+
return successTracker.archiveFileBasenames.includes(archiveFileBasename);
|
341
|
+
}
|
342
|
+
SuccessTracker.getIsDownloaded = getIsDownloaded;
|
343
|
+
async function removeFromDownloaded(params) {
|
344
|
+
const { cacheDirPath, archiveFileBasename } = params;
|
345
|
+
const successTracker = await read({ cacheDirPath });
|
346
|
+
successTracker.archiveFileBasenames = successTracker.archiveFileBasenames.filter(basename => basename !== archiveFileBasename);
|
347
|
+
await write({ cacheDirPath, successTracker });
|
348
|
+
}
|
349
|
+
SuccessTracker.removeFromDownloaded = removeFromDownloaded;
|
350
|
+
async function markAsExtracted(params) {
|
351
|
+
const { cacheDirPath, extractDirBasename } = params;
|
352
|
+
const successTracker = await read({ cacheDirPath });
|
353
|
+
successTracker.extractDirBasenames.push(extractDirBasename);
|
354
|
+
await write({ cacheDirPath, successTracker });
|
355
|
+
}
|
356
|
+
SuccessTracker.markAsExtracted = markAsExtracted;
|
357
|
+
async function getIsExtracted(params) {
|
358
|
+
const { cacheDirPath, extractDirBasename } = params;
|
359
|
+
const successTracker = await read({ cacheDirPath });
|
360
|
+
return successTracker.extractDirBasenames.includes(extractDirBasename);
|
361
|
+
}
|
362
|
+
SuccessTracker.getIsExtracted = getIsExtracted;
|
363
|
+
async function removeFromExtracted(params) {
|
364
|
+
const { cacheDirPath, extractDirBasename } = params;
|
365
|
+
const successTracker = await read({ cacheDirPath });
|
366
|
+
successTracker.extractDirBasenames = successTracker.extractDirBasenames.filter(basename => basename !== extractDirBasename);
|
367
|
+
await write({ cacheDirPath, successTracker });
|
368
|
+
}
|
369
|
+
SuccessTracker.removeFromExtracted = removeFromExtracted;
|
370
|
+
})(SuccessTracker || (SuccessTracker = {}));
|
371
|
+
//# sourceMappingURL=downloadAndExtractArchive.js.map
|
372
|
+
;// CONCATENATED MODULE: ./dist/bin/tools/downloadAndExtractArchive/index.js
|
373
|
+
|
374
|
+
//# sourceMappingURL=index.js.map
|
375
|
+
// EXTERNAL MODULE: ./dist/bin/tools/isInside.js
|
376
|
+
var isInside = __webpack_require__(90665);
|
377
|
+
;// CONCATENATED MODULE: ./dist/bin/shared/downloadKeycloakDefaultTheme.js
|
378
|
+
|
379
|
+
|
380
|
+
|
381
|
+
|
382
|
+
|
383
|
+
(0,assert.assert)();
|
384
|
+
async function downloadKeycloakDefaultTheme(params) {
|
385
|
+
const { keycloakVersion, buildContext } = params;
|
386
|
+
const { extractedDirPath } = await downloadAndExtractArchive({
|
387
|
+
url: `https://repo1.maven.org/maven2/org/keycloak/keycloak-themes/${keycloakVersion}/keycloak-themes-${keycloakVersion}.jar`,
|
388
|
+
cacheDirPath: buildContext.cacheDirPath,
|
389
|
+
npmWorkspaceRootDirPath: buildContext.npmWorkspaceRootDirPath,
|
390
|
+
uniqueIdOfOnOnArchiveFile: "downloadKeycloakDefaultTheme",
|
391
|
+
onArchiveFile: async (params) => {
|
392
|
+
if (!(0,isInside/* isInside */.V)({ dirPath: "theme", filePath: params.fileRelativePath })) {
|
393
|
+
return;
|
394
|
+
}
|
395
|
+
const { readFile, writeFile } = params;
|
396
|
+
const fileRelativePath = (0,external_path_.relative)("theme", params.fileRelativePath);
|
397
|
+
skip_keycloak_v2: {
|
398
|
+
if (!(0,isInside/* isInside */.V)({
|
399
|
+
dirPath: (0,external_path_.join)("keycloak.v2"),
|
400
|
+
filePath: fileRelativePath
|
401
|
+
})) {
|
402
|
+
break skip_keycloak_v2;
|
403
|
+
}
|
404
|
+
return;
|
405
|
+
}
|
406
|
+
last_account_v1_transformations: {
|
407
|
+
if (constants/* lastKeycloakVersionWithAccountV1 */.v$ !== keycloakVersion) {
|
408
|
+
break last_account_v1_transformations;
|
409
|
+
}
|
410
|
+
patch_account_css: {
|
411
|
+
if (fileRelativePath !==
|
412
|
+
(0,external_path_.join)("keycloak", "account", "resources", "css", "account.css")) {
|
413
|
+
break patch_account_css;
|
414
|
+
}
|
415
|
+
await writeFile({
|
416
|
+
fileRelativePath,
|
417
|
+
modifiedData: Buffer.from((await readFile())
|
418
|
+
.toString("utf8")
|
419
|
+
.replace("top: -34px;", "top: -34px !important;"), "utf8")
|
420
|
+
});
|
421
|
+
return;
|
422
|
+
}
|
423
|
+
skip_web_modules: {
|
424
|
+
if (!(0,isInside/* isInside */.V)({
|
425
|
+
dirPath: (0,external_path_.join)("keycloak", "common", "resources", "web_modules"),
|
426
|
+
filePath: fileRelativePath
|
427
|
+
})) {
|
428
|
+
break skip_web_modules;
|
429
|
+
}
|
430
|
+
return;
|
431
|
+
}
|
432
|
+
skip_unused_node_modules: {
|
433
|
+
const nodeModulesDirPath = (0,external_path_.join)("keycloak", "common", "resources", "node_modules");
|
434
|
+
if (!(0,isInside/* isInside */.V)({
|
435
|
+
dirPath: nodeModulesDirPath,
|
436
|
+
filePath: fileRelativePath
|
437
|
+
})) {
|
438
|
+
break skip_unused_node_modules;
|
439
|
+
}
|
440
|
+
const toKeepPrefixes = [
|
441
|
+
...[
|
442
|
+
"patternfly.min.css",
|
443
|
+
"patternfly-additions.min.css",
|
444
|
+
"patternfly-additions.min.css"
|
445
|
+
].map(fileBasename => (0,external_path_.join)(nodeModulesDirPath, "patternfly", "dist", "css", fileBasename)),
|
446
|
+
(0,external_path_.join)(nodeModulesDirPath, "patternfly", "dist", "fonts")
|
447
|
+
];
|
448
|
+
if (toKeepPrefixes.find(prefix => fileRelativePath.startsWith(prefix)) !== undefined) {
|
449
|
+
break skip_unused_node_modules;
|
450
|
+
}
|
451
|
+
return;
|
452
|
+
}
|
453
|
+
}
|
454
|
+
skip_unused_resources: {
|
455
|
+
if (keycloakVersion !== "24.0.4") {
|
456
|
+
break skip_unused_resources;
|
457
|
+
}
|
458
|
+
for (const dirBasename of [
|
459
|
+
"@patternfly-v5",
|
460
|
+
"@rollup",
|
461
|
+
"rollup",
|
462
|
+
"react",
|
463
|
+
"react-dom",
|
464
|
+
"shx",
|
465
|
+
".pnpm"
|
466
|
+
]) {
|
467
|
+
if ((0,isInside/* isInside */.V)({
|
468
|
+
dirPath: (0,external_path_.join)("keycloak", "common", "resources", "node_modules", dirBasename),
|
469
|
+
filePath: fileRelativePath
|
470
|
+
})) {
|
471
|
+
return;
|
472
|
+
}
|
473
|
+
}
|
474
|
+
for (const dirBasename of ["react", "react-dom"]) {
|
475
|
+
if ((0,isInside/* isInside */.V)({
|
476
|
+
dirPath: (0,external_path_.join)("keycloak", "common", "resources", "vendor", dirBasename),
|
477
|
+
filePath: fileRelativePath
|
478
|
+
})) {
|
479
|
+
return;
|
480
|
+
}
|
481
|
+
}
|
482
|
+
if ((0,isInside/* isInside */.V)({
|
483
|
+
dirPath: (0,external_path_.join)("keycloak", "common", "resources", "node_modules", "@patternfly", "react-core"),
|
484
|
+
filePath: fileRelativePath
|
485
|
+
})) {
|
486
|
+
return;
|
487
|
+
}
|
488
|
+
}
|
489
|
+
await writeFile({ fileRelativePath });
|
490
|
+
}
|
491
|
+
});
|
492
|
+
return { defaultThemeDirPath: extractedDirPath };
|
493
|
+
}
|
494
|
+
//# sourceMappingURL=downloadKeycloakDefaultTheme.js.map
|
495
|
+
|
496
|
+
/***/ }),
|
497
|
+
|
498
|
+
/***/ 62190:
|
499
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
500
|
+
|
501
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
502
|
+
/* harmony export */ "p": () => (/* binding */ downloadKeycloakStaticResources)
|
503
|
+
/* harmony export */ });
|
504
|
+
/* harmony import */ var _tools_transformCodebase__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(60332);
|
505
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71017);
|
506
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_1__);
|
507
|
+
/* harmony import */ var _downloadKeycloakDefaultTheme__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(47802);
|
508
|
+
/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(173);
|
509
|
+
/* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(88078);
|
510
|
+
/* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(tsafe_assert__WEBPACK_IMPORTED_MODULE_4__);
|
511
|
+
/* harmony import */ var _tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(43765);
|
512
|
+
|
513
|
+
|
514
|
+
|
515
|
+
|
516
|
+
|
517
|
+
|
518
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_4__.assert)();
|
519
|
+
async function downloadKeycloakStaticResources(params) {
|
520
|
+
const { themeType, themeDirPath, keycloakVersion, buildContext } = params;
|
521
|
+
const { defaultThemeDirPath } = await (0,_downloadKeycloakDefaultTheme__WEBPACK_IMPORTED_MODULE_2__/* .downloadKeycloakDefaultTheme */ .x)({
|
522
|
+
keycloakVersion,
|
523
|
+
buildContext
|
524
|
+
});
|
525
|
+
const resourcesDirPath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(themeDirPath, themeType, "resources");
|
526
|
+
repatriate_base_resources: {
|
527
|
+
const srcDirPath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(defaultThemeDirPath, "base", themeType, "resources");
|
528
|
+
if (!(await (0,_tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_5__/* .existsAsync */ .o)(srcDirPath))) {
|
529
|
+
break repatriate_base_resources;
|
530
|
+
}
|
531
|
+
(0,_tools_transformCodebase__WEBPACK_IMPORTED_MODULE_0__/* .transformCodebase */ .N)({
|
532
|
+
srcDirPath,
|
533
|
+
destDirPath: resourcesDirPath
|
534
|
+
});
|
535
|
+
}
|
536
|
+
(0,_tools_transformCodebase__WEBPACK_IMPORTED_MODULE_0__/* .transformCodebase */ .N)({
|
537
|
+
srcDirPath: (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(defaultThemeDirPath, "keycloak", themeType, "resources"),
|
538
|
+
destDirPath: resourcesDirPath
|
539
|
+
});
|
540
|
+
(0,_tools_transformCodebase__WEBPACK_IMPORTED_MODULE_0__/* .transformCodebase */ .N)({
|
541
|
+
srcDirPath: (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(defaultThemeDirPath, "keycloak", "common", "resources"),
|
542
|
+
destDirPath: (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(resourcesDirPath, _constants__WEBPACK_IMPORTED_MODULE_3__/* .resources_common */ .z0)
|
543
|
+
});
|
544
|
+
}
|
545
|
+
//# sourceMappingURL=downloadKeycloakStaticResources.js.map
|
546
|
+
|
547
|
+
/***/ }),
|
548
|
+
|
549
|
+
/***/ 89693:
|
550
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
551
|
+
|
552
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
553
|
+
/* harmony export */ "a": () => (/* binding */ rmSync)
|
554
|
+
/* harmony export */ });
|
555
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(57147);
|
556
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_0__);
|
557
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71017);
|
558
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_1__);
|
559
|
+
/* harmony import */ var _SemVer__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12171);
|
560
|
+
|
561
|
+
|
562
|
+
|
563
|
+
/**
|
564
|
+
* Polyfill of fs.rmSync(dirPath, { "recursive": true })
|
565
|
+
* For older version of Node
|
566
|
+
*/
|
567
|
+
function rmSync(dirPath, options) {
|
568
|
+
if (_SemVer__WEBPACK_IMPORTED_MODULE_2__/* .SemVer.compare */ .h.compare(_SemVer__WEBPACK_IMPORTED_MODULE_2__/* .SemVer.parse */ .h.parse(process.version), _SemVer__WEBPACK_IMPORTED_MODULE_2__/* .SemVer.parse */ .h.parse("14.14.0")) > 0) {
|
569
|
+
fs__WEBPACK_IMPORTED_MODULE_0__.rmSync(dirPath, options);
|
570
|
+
return;
|
571
|
+
}
|
572
|
+
const { force = true } = options;
|
573
|
+
if (force && !fs__WEBPACK_IMPORTED_MODULE_0__.existsSync(dirPath)) {
|
574
|
+
return;
|
575
|
+
}
|
576
|
+
const removeDir_rec = (dirPath) => fs__WEBPACK_IMPORTED_MODULE_0__.readdirSync(dirPath).forEach(basename => {
|
577
|
+
const fileOrDirPath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(dirPath, basename);
|
578
|
+
if (fs__WEBPACK_IMPORTED_MODULE_0__.lstatSync(fileOrDirPath).isDirectory()) {
|
579
|
+
removeDir_rec(fileOrDirPath);
|
580
|
+
return;
|
581
|
+
}
|
582
|
+
else {
|
583
|
+
fs__WEBPACK_IMPORTED_MODULE_0__.unlinkSync(fileOrDirPath);
|
584
|
+
}
|
585
|
+
});
|
586
|
+
removeDir_rec(dirPath);
|
587
|
+
}
|
588
|
+
//# sourceMappingURL=fs.rmSync.js.map
|
589
|
+
|
590
|
+
/***/ }),
|
591
|
+
|
592
|
+
/***/ 60332:
|
593
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
594
|
+
|
595
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
596
|
+
/* harmony export */ "N": () => (/* binding */ transformCodebase)
|
597
|
+
/* harmony export */ });
|
598
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(57147);
|
599
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_0__);
|
600
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71017);
|
601
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_1__);
|
602
|
+
/* harmony import */ var _crawl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(73036);
|
603
|
+
/* harmony import */ var _tools_fs_rmSync__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(89693);
|
604
|
+
|
605
|
+
|
606
|
+
|
607
|
+
|
608
|
+
/**
|
609
|
+
* Apply a transformation function to every file of directory
|
610
|
+
* If source and destination are the same this function can be used to apply the transformation in place
|
611
|
+
* like filtering out some files or modifying them.
|
612
|
+
* */
|
613
|
+
function transformCodebase(params) {
|
614
|
+
const { srcDirPath, transformSourceCode } = params;
|
615
|
+
const isTargetSameAsSource = path__WEBPACK_IMPORTED_MODULE_1__.relative(srcDirPath, params.destDirPath) === "";
|
616
|
+
const destDirPath = isTargetSameAsSource
|
617
|
+
? path__WEBPACK_IMPORTED_MODULE_1__.join(srcDirPath, "..", "tmp_xOsPdkPsTdzPs34sOkHs")
|
618
|
+
: params.destDirPath;
|
619
|
+
fs__WEBPACK_IMPORTED_MODULE_0__.mkdirSync(destDirPath, {
|
620
|
+
recursive: true
|
621
|
+
});
|
622
|
+
for (const fileRelativePath of (0,_crawl__WEBPACK_IMPORTED_MODULE_2__/* .crawl */ .J)({
|
623
|
+
dirPath: srcDirPath,
|
624
|
+
returnedPathsType: "relative to dirPath"
|
625
|
+
})) {
|
626
|
+
const filePath = path__WEBPACK_IMPORTED_MODULE_1__.join(srcDirPath, fileRelativePath);
|
627
|
+
const destFilePath = path__WEBPACK_IMPORTED_MODULE_1__.join(destDirPath, fileRelativePath);
|
628
|
+
// NOTE: Optimization, if we don't need to transform the file, just copy
|
629
|
+
// it using the lower level implementation.
|
630
|
+
if (transformSourceCode === undefined) {
|
631
|
+
fs__WEBPACK_IMPORTED_MODULE_0__.mkdirSync(path__WEBPACK_IMPORTED_MODULE_1__.dirname(destFilePath), {
|
632
|
+
recursive: true
|
633
|
+
});
|
634
|
+
fs__WEBPACK_IMPORTED_MODULE_0__.copyFileSync(filePath, destFilePath);
|
635
|
+
continue;
|
636
|
+
}
|
637
|
+
const transformSourceCodeResult = transformSourceCode({
|
638
|
+
sourceCode: fs__WEBPACK_IMPORTED_MODULE_0__.readFileSync(filePath),
|
639
|
+
filePath,
|
640
|
+
fileRelativePath
|
641
|
+
});
|
642
|
+
if (transformSourceCodeResult === undefined) {
|
643
|
+
continue;
|
644
|
+
}
|
645
|
+
fs__WEBPACK_IMPORTED_MODULE_0__.mkdirSync(path__WEBPACK_IMPORTED_MODULE_1__.dirname(destFilePath), {
|
646
|
+
recursive: true
|
647
|
+
});
|
648
|
+
const { newFileName, modifiedSourceCode } = transformSourceCodeResult;
|
649
|
+
fs__WEBPACK_IMPORTED_MODULE_0__.writeFileSync(path__WEBPACK_IMPORTED_MODULE_1__.join(path__WEBPACK_IMPORTED_MODULE_1__.dirname(destFilePath), newFileName !== null && newFileName !== void 0 ? newFileName : path__WEBPACK_IMPORTED_MODULE_1__.basename(destFilePath)), modifiedSourceCode);
|
650
|
+
}
|
651
|
+
if (isTargetSameAsSource) {
|
652
|
+
(0,_tools_fs_rmSync__WEBPACK_IMPORTED_MODULE_3__/* .rmSync */ .a)(srcDirPath, { recursive: true });
|
653
|
+
fs__WEBPACK_IMPORTED_MODULE_0__.renameSync(destDirPath, srcDirPath);
|
654
|
+
}
|
655
|
+
}
|
656
|
+
//# sourceMappingURL=transformCodebase.js.map
|
657
|
+
|
106
658
|
/***/ })
|
107
659
|
|
108
660
|
};
|
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
|
-
exports.id =
|
3
|
-
exports.ids = [
|
2
|
+
exports.id = 240;
|
3
|
+
exports.ids = [240];
|
4
4
|
exports.modules = {
|
5
5
|
|
6
6
|
/***/ 87751:
|
@@ -455,6 +455,44 @@ var SemVer;
|
|
455
455
|
|
456
456
|
/***/ }),
|
457
457
|
|
458
|
+
/***/ 73036:
|
459
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
460
|
+
|
461
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
462
|
+
/* harmony export */ "J": () => (/* binding */ crawl)
|
463
|
+
/* harmony export */ });
|
464
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(57147);
|
465
|
+
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_0__);
|
466
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71017);
|
467
|
+
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_1__);
|
468
|
+
|
469
|
+
|
470
|
+
const crawlRec = (dirPath, filePaths) => {
|
471
|
+
for (const basename of fs__WEBPACK_IMPORTED_MODULE_0__.readdirSync(dirPath)) {
|
472
|
+
const fileOrDirPath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(dirPath, basename);
|
473
|
+
if (fs__WEBPACK_IMPORTED_MODULE_0__.lstatSync(fileOrDirPath).isDirectory()) {
|
474
|
+
crawlRec(fileOrDirPath, filePaths);
|
475
|
+
continue;
|
476
|
+
}
|
477
|
+
filePaths.push(fileOrDirPath);
|
478
|
+
}
|
479
|
+
};
|
480
|
+
/** List all files in a given directory return paths relative to the dir_path */
|
481
|
+
function crawl(params) {
|
482
|
+
const { dirPath, returnedPathsType } = params;
|
483
|
+
const filePaths = [];
|
484
|
+
crawlRec(dirPath, filePaths);
|
485
|
+
switch (returnedPathsType) {
|
486
|
+
case "absolute":
|
487
|
+
return filePaths;
|
488
|
+
case "relative to dirPath":
|
489
|
+
return filePaths.map(filePath => (0,path__WEBPACK_IMPORTED_MODULE_1__.relative)(dirPath, filePath));
|
490
|
+
}
|
491
|
+
}
|
492
|
+
//# sourceMappingURL=crawl.js.map
|
493
|
+
|
494
|
+
/***/ }),
|
495
|
+
|
458
496
|
/***/ 29121:
|
459
497
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
460
498
|
|