54 lines
1.3 KiB
JavaScript
54 lines
1.3 KiB
JavaScript
#!/usr/bin/env node
|
|
|
|
import { keycloakThemeBuildingDirPath } from "./build-keycloak-theme";
|
|
import { join as pathJoin } from "path";
|
|
import { downloadAndUnzip } from "./tools/downloadAndUnzip"
|
|
import type { KeycloakVersion } from "./KeycloakVersion";
|
|
|
|
export function downloadBuiltinKeycloakTheme(
|
|
params: {
|
|
keycloakVersion: KeycloakVersion;
|
|
destDirPath: string;
|
|
}
|
|
) {
|
|
|
|
const { keycloakVersion, destDirPath } = params;
|
|
|
|
for (const ext of ["", "-community"]) {
|
|
|
|
downloadAndUnzip({
|
|
"destDirPath": destDirPath,
|
|
"url": `https://github.com/keycloak/keycloak/archive/refs/tags/${keycloakVersion}.zip`,
|
|
"pathOfDirToExtractInArchive": `keycloak-${keycloakVersion}/themes/src/main/resources${ext}/theme`
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (require.main === module) {
|
|
|
|
const keycloakVersion = (() => {
|
|
|
|
const keycloakVersion = process.argv[2] as (KeycloakVersion | undefined);
|
|
|
|
if (keycloakVersion === undefined) {
|
|
return "15.0.2";
|
|
}
|
|
|
|
return keycloakVersion;
|
|
|
|
})();
|
|
|
|
const destDirPath = pathJoin(keycloakThemeBuildingDirPath, "src", "main", "resources", "theme");
|
|
|
|
console.log(`Downloading builtins theme of Keycloak ${keycloakVersion} here ${destDirPath}`);
|
|
|
|
downloadBuiltinKeycloakTheme({
|
|
keycloakVersion,
|
|
destDirPath
|
|
});
|
|
|
|
}
|
|
|