Remove the doBuildRetrocompatAccountTheme and the retrocompat_ option in dropdown
This commit is contained in:
@ -3,7 +3,6 @@ export const resources_common = "resources-common";
|
||||
export const lastKeycloakVersionWithAccountV1 = "21.1.2";
|
||||
|
||||
export const themeTypes = ["login", "account"] as const;
|
||||
export const retrocompatPostfix = "_retrocompat";
|
||||
export const accountV1 = "account-v1";
|
||||
|
||||
export type ThemeType = (typeof themeTypes)[number];
|
||||
|
@ -24,7 +24,6 @@ export type BuildOptions = {
|
||||
/** If your app is hosted under a subpath, it's the case in CRA if you have "homepage": "https://example.com/my-app" in your package.json
|
||||
* In this case the urlPathname will be "/my-app/" */
|
||||
urlPathname: string | undefined;
|
||||
doBuildRetrocompatAccountTheme: boolean;
|
||||
};
|
||||
|
||||
export function readBuildOptions(params: { reactAppRootDirPath: string; processArgv: string[] }): BuildOptions {
|
||||
@ -151,7 +150,6 @@ export function readBuildOptions(params: { reactAppRootDirPath: string; processA
|
||||
|
||||
const out = url.pathname.replace(/([^/])$/, "$1/");
|
||||
return out === "/" ? undefined : out;
|
||||
})(),
|
||||
"doBuildRetrocompatAccountTheme": parsedPackageJson.keycloakify?.doBuildRetrocompatAccountTheme ?? true
|
||||
})()
|
||||
};
|
||||
}
|
||||
|
@ -3,7 +3,7 @@ import { join as pathJoin, dirname as pathDirname } from "path";
|
||||
import { assert } from "tsafe/assert";
|
||||
import { Reflect } from "tsafe/Reflect";
|
||||
import type { BuildOptions } from "../BuildOptions";
|
||||
import { type ThemeType, retrocompatPostfix, accountV1 } from "../../constants";
|
||||
import { type ThemeType, accountV1 } from "../../constants";
|
||||
import { bringInAccountV1 } from "./bringInAccountV1";
|
||||
|
||||
export type BuildOptionsLike = {
|
||||
@ -13,7 +13,6 @@ export type BuildOptionsLike = {
|
||||
cacheDirPath: string;
|
||||
keycloakifyBuildDirPath: string;
|
||||
themeNames: string[];
|
||||
doBuildRetrocompatAccountTheme: boolean;
|
||||
};
|
||||
|
||||
{
|
||||
@ -114,15 +113,7 @@ export async function generateJavaStackFiles(params: {
|
||||
"types": Object.entries(implementedThemeTypes)
|
||||
.filter(([, isImplemented]) => isImplemented)
|
||||
.map(([themeType]) => themeType)
|
||||
},
|
||||
...(!implementedThemeTypes.account || !buildOptions.doBuildRetrocompatAccountTheme
|
||||
? []
|
||||
: [
|
||||
{
|
||||
"name": `${themeName}${retrocompatPostfix}`,
|
||||
"types": ["account"]
|
||||
}
|
||||
])
|
||||
}
|
||||
])
|
||||
.flat()
|
||||
]
|
||||
|
@ -1,10 +1,10 @@
|
||||
import { transformCodebase } from "../../tools/transformCodebase";
|
||||
import * as fs from "fs";
|
||||
import { join as pathJoin, basename as pathBasename, resolve as pathResolve } from "path";
|
||||
import { join as pathJoin, resolve as pathResolve } from "path";
|
||||
import { replaceImportsFromStaticInJsCode } from "../replacers/replaceImportsFromStaticInJsCode";
|
||||
import { replaceImportsInCssCode } from "../replacers/replaceImportsInCssCode";
|
||||
import { generateFtlFilesCodeFactory, loginThemePageIds, accountThemePageIds } from "../generateFtl";
|
||||
import { themeTypes, type ThemeType, lastKeycloakVersionWithAccountV1, keycloak_resources, retrocompatPostfix, accountV1 } from "../../constants";
|
||||
import { themeTypes, type ThemeType, lastKeycloakVersionWithAccountV1, keycloak_resources, accountV1 } from "../../constants";
|
||||
import { isInside } from "../../tools/isInside";
|
||||
import type { BuildOptions } from "../BuildOptions";
|
||||
import { assert, type Equals } from "tsafe/assert";
|
||||
@ -22,7 +22,6 @@ export type BuildOptionsLike = {
|
||||
keycloakifyBuildDirPath: string;
|
||||
reactAppBuildDirPath: string;
|
||||
cacheDirPath: string;
|
||||
doBuildRetrocompatAccountTheme: boolean;
|
||||
};
|
||||
|
||||
assert<BuildOptions extends BuildOptionsLike ? true : false>();
|
||||
@ -36,17 +35,9 @@ export async function generateTheme(params: {
|
||||
}): Promise<void> {
|
||||
const { themeName, themeSrcDirPath, keycloakifySrcDirPath, buildOptions, keycloakifyVersion } = params;
|
||||
|
||||
const getThemeTypeDirPath = (params: { themeType: ThemeType | "email"; isRetrocompat?: true }) => {
|
||||
const { themeType, isRetrocompat = false } = params;
|
||||
return pathJoin(
|
||||
buildOptions.keycloakifyBuildDirPath,
|
||||
"src",
|
||||
"main",
|
||||
"resources",
|
||||
"theme",
|
||||
`${themeName}${isRetrocompat ? retrocompatPostfix : ""}`,
|
||||
themeType
|
||||
);
|
||||
const getThemeTypeDirPath = (params: { themeType: ThemeType | "email" }) => {
|
||||
const { themeType } = params;
|
||||
return pathJoin(buildOptions.keycloakifyBuildDirPath, "src", "main", "resources", "theme", themeName, themeType);
|
||||
};
|
||||
|
||||
let allCssGlobalsToDefine: Record<string, string> = {};
|
||||
@ -201,22 +192,6 @@ export async function generateTheme(params: {
|
||||
"utf8"
|
||||
)
|
||||
);
|
||||
|
||||
if (themeType === "account" && buildOptions.doBuildRetrocompatAccountTheme) {
|
||||
transformCodebase({
|
||||
"srcDirPath": themeTypeDirPath,
|
||||
"destDirPath": getThemeTypeDirPath({ themeType, "isRetrocompat": true }),
|
||||
"transformSourceCode": ({ filePath, sourceCode }) => {
|
||||
if (pathBasename(filePath) === "theme.properties") {
|
||||
return {
|
||||
"modifiedSourceCode": Buffer.from(sourceCode.toString("utf8").replace(`parent=${accountV1}`, "parent=keycloak"), "utf8")
|
||||
};
|
||||
}
|
||||
|
||||
return { "modifiedSourceCode": sourceCode };
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
email: {
|
||||
|
Reference in New Issue
Block a user