keycloakify 10.0.0-rc.44 → 10.0.0-rc.46
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/{322.index.js → 190.index.js} +58 -61
- package/bin/193.index.js +0 -51
- package/bin/3.index.js +93 -96
- package/bin/526.index.js +80 -49
- package/bin/538.index.js +5 -3
- package/bin/932.index.js +535 -1
- package/bin/98.index.js +5 -3
- package/bin/{944.index.js → 991.index.js} +74 -5
- package/bin/main.js +4 -16
- package/bin/shared/buildContext.d.ts +1 -1
- package/bin/shared/constants.d.ts +1 -1
- package/bin/shared/constants.js +1 -1
- package/bin/shared/constants.js.map +1 -1
- package/package.json +3 -6
- package/src/bin/keycloakify/buildJars/buildJar.ts +9 -21
- package/src/bin/keycloakify/buildJars/buildJars.ts +15 -4
- package/src/bin/keycloakify/buildJars/extensionVersions.ts +1 -1
- package/src/bin/keycloakify/buildJars/getKeycloakVersionRangeForJar.ts +9 -2
- package/src/bin/keycloakify/generateSrcMainResources/bringInAccountV1.ts +6 -7
- package/src/bin/keycloakify/generateSrcMainResources/generateSrcMainResources.ts +11 -3
- package/src/bin/keycloakify/generateSrcMainResources/generateSrcMainResourcesForMainTheme.ts +6 -18
- package/src/bin/keycloakify/generateSrcMainResources/generateSrcMainResourcesForThemeVariant.ts +9 -15
- package/src/bin/keycloakify/keycloakify.ts +20 -9
- package/src/bin/main.ts +0 -14
- package/src/bin/shared/KeycloakVersionRange.ts +1 -1
- package/src/bin/shared/buildContext.ts +7 -3
- package/src/bin/shared/constants.ts +1 -1
- package/src/bin/shared/metaInfKeycloakThemes.ts +37 -14
- package/src/bin/start-keycloak/keycloakifyBuild.ts +4 -4
- package/src/bin/start-keycloak/start-keycloak.ts +62 -67
- package/src/vite-plugin/vite-plugin.ts +4 -0
- package/vite-plugin/index.js +6 -3
- package/bin/961.index.js +0 -263
- package/src/bin/download-keycloak-default-theme.ts +0 -63
- package/src/bin/keycloakify/generateStartKeycloakTestingContainer.ts +0 -74
package/bin/526.index.js
CHANGED
@@ -22,31 +22,53 @@ function getJarFileBasename(params) {
|
|
22
22
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
23
23
|
|
24
24
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
25
|
-
/* harmony export */ "
|
25
|
+
/* harmony export */ "IS": () => (/* binding */ readMetaInfKeycloakThemes_fromJar),
|
26
26
|
/* harmony export */ "JJ": () => (/* binding */ writeMetaInfKeycloakThemes),
|
27
|
+
/* harmony export */ "Ju": () => (/* binding */ readMetaInfKeycloakThemes_fromResourcesDirPath),
|
27
28
|
/* harmony export */ "KQ": () => (/* binding */ getMetaInfKeycloakThemesJsonFilePath)
|
28
29
|
/* harmony export */ });
|
29
30
|
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71017);
|
30
31
|
/* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);
|
31
32
|
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(57147);
|
32
33
|
/* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_1__);
|
34
|
+
/* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(88078);
|
35
|
+
/* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(tsafe_assert__WEBPACK_IMPORTED_MODULE_2__);
|
36
|
+
/* harmony import */ var _tools_extractArchive__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29121);
|
37
|
+
|
38
|
+
|
33
39
|
|
34
40
|
|
35
41
|
function getMetaInfKeycloakThemesJsonFilePath(params) {
|
36
|
-
const {
|
37
|
-
return (0,path__WEBPACK_IMPORTED_MODULE_0__.join)(
|
42
|
+
const { resourcesDirPath } = params;
|
43
|
+
return (0,path__WEBPACK_IMPORTED_MODULE_0__.join)(resourcesDirPath === "." ? "" : resourcesDirPath, "META-INF", "keycloak-themes.json");
|
38
44
|
}
|
39
|
-
function
|
40
|
-
const {
|
45
|
+
function readMetaInfKeycloakThemes_fromResourcesDirPath(params) {
|
46
|
+
const { resourcesDirPath } = params;
|
41
47
|
return JSON.parse(fs__WEBPACK_IMPORTED_MODULE_1__.readFileSync(getMetaInfKeycloakThemesJsonFilePath({
|
42
|
-
|
48
|
+
resourcesDirPath
|
43
49
|
}))
|
44
50
|
.toString("utf8"));
|
45
51
|
}
|
52
|
+
async function readMetaInfKeycloakThemes_fromJar(params) {
|
53
|
+
const { jarFilePath } = params;
|
54
|
+
let metaInfKeycloakThemes = undefined;
|
55
|
+
await (0,_tools_extractArchive__WEBPACK_IMPORTED_MODULE_3__/* .extractArchive */ .N)({
|
56
|
+
archiveFilePath: jarFilePath,
|
57
|
+
onArchiveFile: async ({ relativeFilePathInArchive, readFile, earlyExit }) => {
|
58
|
+
if (relativeFilePathInArchive ===
|
59
|
+
getMetaInfKeycloakThemesJsonFilePath({ resourcesDirPath: "." })) {
|
60
|
+
metaInfKeycloakThemes = JSON.parse((await readFile()).toString("utf8"));
|
61
|
+
earlyExit();
|
62
|
+
}
|
63
|
+
}
|
64
|
+
});
|
65
|
+
(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_2__.assert)(metaInfKeycloakThemes !== undefined);
|
66
|
+
return metaInfKeycloakThemes;
|
67
|
+
}
|
46
68
|
function writeMetaInfKeycloakThemes(params) {
|
47
|
-
const {
|
69
|
+
const { resourcesDirPath, metaInfKeycloakThemes } = params;
|
48
70
|
const metaInfKeycloakThemesJsonPath = getMetaInfKeycloakThemesJsonFilePath({
|
49
|
-
|
71
|
+
resourcesDirPath
|
50
72
|
});
|
51
73
|
{
|
52
74
|
const dirPath = (0,path__WEBPACK_IMPORTED_MODULE_0__.dirname)(metaInfKeycloakThemesJsonPath);
|
@@ -409,11 +431,11 @@ async function appBuild(params) {
|
|
409
431
|
|
410
432
|
(0,assert.assert)();
|
411
433
|
async function keycloakifyBuild(params) {
|
412
|
-
const { buildContext,
|
434
|
+
const { buildContext, onlyBuildJarFileBasename } = params;
|
413
435
|
const dResult = new Deferred.Deferred();
|
414
436
|
const child = external_child_process_.spawn("npx", ["keycloakify", "build"], {
|
415
437
|
cwd: buildContext.projectDirPath,
|
416
|
-
env: Object.assign(Object.assign({}, process.env),
|
438
|
+
env: Object.assign(Object.assign({}, process.env), { [constants/* onlyBuildJarFileBasenameEnvName */.Dv]: onlyBuildJarFileBasename })
|
417
439
|
});
|
418
440
|
child.stdout.on("data", data => process.stdout.write(data));
|
419
441
|
child.stderr.on("data", data => process.stderr.write(data));
|
@@ -422,6 +444,12 @@ async function keycloakifyBuild(params) {
|
|
422
444
|
return { isKeycloakifyBuildSuccess: isSuccess };
|
423
445
|
}
|
424
446
|
//# sourceMappingURL=keycloakifyBuild.js.map
|
447
|
+
// EXTERNAL MODULE: ./dist/bin/tools/isInside.js
|
448
|
+
var isInside = __webpack_require__(90665);
|
449
|
+
// EXTERNAL MODULE: ./dist/bin/tools/fs.existsAsync.js
|
450
|
+
var fs_existsAsync = __webpack_require__(43765);
|
451
|
+
// EXTERNAL MODULE: ./dist/bin/tools/fs.rm.js
|
452
|
+
var fs_rm = __webpack_require__(8699);
|
425
453
|
;// CONCATENATED MODULE: ./dist/bin/start-keycloak/start-keycloak.js
|
426
454
|
|
427
455
|
|
@@ -440,6 +468,9 @@ async function keycloakifyBuild(params) {
|
|
440
468
|
|
441
469
|
|
442
470
|
|
471
|
+
|
472
|
+
|
473
|
+
|
443
474
|
|
444
475
|
|
445
476
|
|
@@ -492,7 +523,7 @@ async function command(params) {
|
|
492
523
|
process.exit(1);
|
493
524
|
}
|
494
525
|
const { isKeycloakifyBuildSuccess } = await keycloakifyBuild({
|
495
|
-
|
526
|
+
onlyBuildJarFileBasename: undefined,
|
496
527
|
buildContext
|
497
528
|
});
|
498
529
|
if (!isKeycloakifyBuildSuccess) {
|
@@ -500,10 +531,20 @@ async function command(params) {
|
|
500
531
|
process.exit(1);
|
501
532
|
}
|
502
533
|
}
|
503
|
-
const
|
504
|
-
|
505
|
-
|
506
|
-
|
534
|
+
const { doesImplementAccountTheme } = await (async () => {
|
535
|
+
const latestJarFilePath = external_fs_.readdirSync(buildContext.keycloakifyBuildDirPath)
|
536
|
+
.filter(fileBasename => fileBasename.endsWith(".jar"))
|
537
|
+
.map(fileBasename => (0,external_path_.join)(buildContext.keycloakifyBuildDirPath, fileBasename))
|
538
|
+
.sort((a, b) => external_fs_.statSync(b).mtimeMs - external_fs_.statSync(a).mtimeMs)[0];
|
539
|
+
(0,assert.assert)(latestJarFilePath !== undefined);
|
540
|
+
const metaInfKeycloakThemes = await (0,shared_metaInfKeycloakThemes/* readMetaInfKeycloakThemes_fromJar */.IS)({
|
541
|
+
jarFilePath: latestJarFilePath
|
542
|
+
});
|
543
|
+
const mainThemeEntry = metaInfKeycloakThemes.themes.find(({ name }) => name === buildContext.themeNames[0]);
|
544
|
+
(0,assert.assert)(mainThemeEntry !== undefined);
|
545
|
+
const doesImplementAccountTheme = mainThemeEntry.types.includes("account");
|
546
|
+
return { doesImplementAccountTheme };
|
547
|
+
})();
|
507
548
|
const { keycloakVersion, keycloakMajorNumber: keycloakMajorVersionNumber } = await (async function getKeycloakMajor() {
|
508
549
|
if (cliCommandOptions.keycloakVersion !== undefined) {
|
509
550
|
return {
|
@@ -538,7 +579,10 @@ async function command(params) {
|
|
538
579
|
if (keycloakMajorVersionNumber === 23) {
|
539
580
|
return "23";
|
540
581
|
}
|
541
|
-
|
582
|
+
if (keycloakMajorVersionNumber === 24) {
|
583
|
+
return "24";
|
584
|
+
}
|
585
|
+
return "25-and-above";
|
542
586
|
})();
|
543
587
|
(0,assert.assert)();
|
544
588
|
return keycloakVersionRange;
|
@@ -586,40 +630,25 @@ async function command(params) {
|
|
586
630
|
return (0,external_path_.join)(dirPath, value);
|
587
631
|
})();
|
588
632
|
const jarFilePath = (0,external_path_.join)(buildContext.keycloakifyBuildDirPath, jarFileBasename);
|
589
|
-
|
590
|
-
let doUseBuiltInAccountV1Theme = false;
|
633
|
+
async function extractThemeResourcesFromJar() {
|
591
634
|
await (0,extractArchive/* extractArchive */.N)({
|
592
635
|
archiveFilePath: jarFilePath,
|
593
|
-
onArchiveFile: async ({ relativeFilePathInArchive,
|
594
|
-
|
595
|
-
|
596
|
-
(0,external_path_.join)(
|
597
|
-
|
598
|
-
.toString("utf8")
|
599
|
-
.includes("parent=keycloak")) {
|
600
|
-
doUseBuiltInAccountV1Theme = true;
|
601
|
-
}
|
602
|
-
earlyExit();
|
603
|
-
}
|
636
|
+
onArchiveFile: async ({ relativeFilePathInArchive, writeFile }) => {
|
637
|
+
if ((0,isInside/* isInside */.V)({ dirPath: "theme", filePath: relativeFilePathInArchive })) {
|
638
|
+
await writeFile({
|
639
|
+
filePath: (0,external_path_.join)(buildContext.keycloakifyBuildDirPath, relativeFilePathInArchive)
|
640
|
+
});
|
604
641
|
}
|
605
642
|
}
|
606
643
|
});
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
|
612
|
-
|
613
|
-
|
614
|
-
|
615
|
-
const modifiedSourceCode = Buffer.from(sourceCode
|
616
|
-
.toString("utf8")
|
617
|
-
.replace(`parent=${constants/* accountV1ThemeName */.y_}`, "parent=keycloak"), "utf8");
|
618
|
-
(0,assert.assert)(Buffer.compare(modifiedSourceCode, sourceCode) !== 0);
|
619
|
-
external_fs_.writeFileSync(filePath, modifiedSourceCode);
|
620
|
-
}
|
621
|
-
};
|
622
|
-
accountThemePropertyPatch === null || accountThemePropertyPatch === void 0 ? void 0 : accountThemePropertyPatch();
|
644
|
+
}
|
645
|
+
{
|
646
|
+
const destDirPath = (0,external_path_.join)(buildContext.keycloakifyBuildDirPath, "theme");
|
647
|
+
if (await (0,fs_existsAsync/* existsAsync */.o)(destDirPath)) {
|
648
|
+
await (0,fs_rm.rm)(destDirPath, { recursive: true });
|
649
|
+
}
|
650
|
+
}
|
651
|
+
await extractThemeResourcesFromJar();
|
623
652
|
try {
|
624
653
|
external_child_process_.execSync(`docker rm --force ${constants/* containerName */.h6}`, {
|
625
654
|
stdio: "ignore"
|
@@ -646,10 +675,12 @@ async function command(params) {
|
|
646
675
|
: []),
|
647
676
|
...[
|
648
677
|
...buildContext.themeNames,
|
649
|
-
...(
|
678
|
+
...(external_fs_.existsSync((0,external_path_.join)(buildContext.keycloakifyBuildDirPath, "theme", constants/* accountV1ThemeName */.y_))
|
679
|
+
? [constants/* accountV1ThemeName */.y_]
|
680
|
+
: [])
|
650
681
|
]
|
651
682
|
.map(themeName => ({
|
652
|
-
localDirPath: (0,external_path_.join)(buildContext.keycloakifyBuildDirPath, "
|
683
|
+
localDirPath: (0,external_path_.join)(buildContext.keycloakifyBuildDirPath, "theme", themeName),
|
653
684
|
containerDirPath: `/opt/keycloak/themes/${themeName}`
|
654
685
|
}))
|
655
686
|
.map(({ localDirPath, containerDirPath }) => [
|
@@ -718,13 +749,13 @@ async function command(params) {
|
|
718
749
|
return;
|
719
750
|
}
|
720
751
|
const { isKeycloakifyBuildSuccess } = await keycloakifyBuild({
|
721
|
-
|
752
|
+
onlyBuildJarFileBasename: jarFileBasename,
|
722
753
|
buildContext
|
723
754
|
});
|
724
755
|
if (!isKeycloakifyBuildSuccess) {
|
725
756
|
return;
|
726
757
|
}
|
727
|
-
|
758
|
+
await extractThemeResourcesFromJar();
|
728
759
|
console.log(source_default().green("Theme rebuilt and updated in Keycloak."));
|
729
760
|
});
|
730
761
|
const { waitForDebounce } = (0,tools_waitForDebounce/* waitForDebounceFactory */.z)({ delay: 400 });
|
package/bin/538.index.js
CHANGED
@@ -156,7 +156,9 @@ function getBuildContext(params) {
|
|
156
156
|
if (typeof buildOptions.themeName === "string") {
|
157
157
|
return [buildOptions.themeName];
|
158
158
|
}
|
159
|
-
|
159
|
+
const [mainThemeName, ...themeVariantNames] = buildOptions.themeName;
|
160
|
+
(0,tsafe.assert)(mainThemeName !== undefined);
|
161
|
+
return [mainThemeName, ...themeVariantNames];
|
160
162
|
})();
|
161
163
|
const projectBuildDirPath = (() => {
|
162
164
|
var _a;
|
@@ -285,6 +287,7 @@ function getBuildContext(params) {
|
|
285
287
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
286
288
|
|
287
289
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
290
|
+
/* harmony export */ "Dv": () => (/* binding */ onlyBuildJarFileBasenameEnvName),
|
288
291
|
/* harmony export */ "M": () => (/* binding */ basenameOfTheKeycloakifyResourcesDir),
|
289
292
|
/* harmony export */ "N$": () => (/* binding */ keycloak_resources),
|
290
293
|
/* harmony export */ "UX": () => (/* binding */ accountThemePageIds),
|
@@ -294,7 +297,6 @@ function getBuildContext(params) {
|
|
294
297
|
/* harmony export */ "lg": () => (/* binding */ nameOfTheLocalizationRealmOverridesUserProfileProperty),
|
295
298
|
/* harmony export */ "rO": () => (/* binding */ themeTypes),
|
296
299
|
/* harmony export */ "sj": () => (/* binding */ loginThemePageIds),
|
297
|
-
/* harmony export */ "uo": () => (/* binding */ skipBuildJarsEnvName),
|
298
300
|
/* harmony export */ "v$": () => (/* binding */ lastKeycloakVersionWithAccountV1),
|
299
301
|
/* harmony export */ "y_": () => (/* binding */ accountV1ThemeName),
|
300
302
|
/* harmony export */ "z0": () => (/* binding */ resources_common)
|
@@ -311,7 +313,7 @@ const vitePluginSubScriptEnvNames = {
|
|
311
313
|
runPostBuildScript: "KEYCLOAKIFY_RUN_POST_BUILD_SCRIPT",
|
312
314
|
resolveViteConfig: "KEYCLOAKIFY_RESOLVE_VITE_CONFIG"
|
313
315
|
};
|
314
|
-
const
|
316
|
+
const onlyBuildJarFileBasenameEnvName = "KEYCLOAKIFY_ONLY_BUILD_JAR_FILE_BASENAME";
|
315
317
|
const loginThemePageIds = [
|
316
318
|
"login.ftl",
|
317
319
|
"login-username.ftl",
|