keycloakify 10.0.0-rc.101 → 10.0.0-rc.103

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/31.index.js CHANGED
@@ -137,7 +137,7 @@ var __rest = (undefined && undefined.__rest) || function (s, e) {
137
137
 
138
138
 
139
139
  function getBuildContext(params) {
140
- var _a, _b, _c, _d, _e, _f;
140
+ var _a, _b, _c, _d, _e, _f, _g;
141
141
  const { cliCommandOptions } = params;
142
142
  const projectDirPath = cliCommandOptions.projectDirPath !== undefined
143
143
  ? (0,getAbsoluteAndInOsFormatPath/* getAbsoluteAndInOsFormatPath */.c)({
@@ -268,7 +268,8 @@ function getBuildContext(params) {
268
268
  (0,assert.assert)();
269
269
  }
270
270
  return zKeycloakVersionTargets;
271
- })()).optional()
271
+ })()).optional(),
272
+ doUseAccountV3: lib.z.boolean().optional()
272
273
  });
273
274
  {
274
275
  (0,assert.assert)();
@@ -326,6 +327,7 @@ function getBuildContext(params) {
326
327
  return (0,external_path_.join)(projectDirPath, resolvedViteConfig.buildDir);
327
328
  })();
328
329
  const bundler = resolvedViteConfig !== undefined ? "vite" : "webpack";
330
+ const doUseAccountV3 = (_a = buildOptions.doUseAccountV3) !== null && _a !== void 0 ? _a : false;
329
331
  return {
330
332
  bundler: resolvedViteConfig !== undefined
331
333
  ? { type: "vite" }
@@ -340,7 +342,7 @@ function getBuildContext(params) {
340
342
  packageJsonScripts: scripts !== null && scripts !== void 0 ? scripts : {}
341
343
  };
342
344
  })(),
343
- themeVersion: (_b = (_a = buildOptions.themeVersion) !== null && _a !== void 0 ? _a : parsedPackageJson.version) !== null && _b !== void 0 ? _b : "0.0.0",
345
+ themeVersion: (_c = (_b = buildOptions.themeVersion) !== null && _b !== void 0 ? _b : parsedPackageJson.version) !== null && _c !== void 0 ? _c : "0.0.0",
344
346
  themeNames,
345
347
  extraThemeProperties: buildOptions.extraThemeProperties,
346
348
  groupId: (() => {
@@ -351,8 +353,8 @@ function getBuildContext(params) {
351
353
  : (_e = (_d = (_c = (0,external_url_.parse)(parsedPackageJson.homepage)
352
354
  .host) === null || _c === void 0 ? void 0 : _c.replace(/:[0-9]+$/, "")) === null || _d === void 0 ? void 0 : _d.split(".").reverse().join(".")) !== null && _e !== void 0 ? _e : fallbackGroupId) + ".keycloak");
353
355
  })(),
354
- artifactId: (_d = (_c = process.env.KEYCLOAKIFY_ARTIFACT_ID) !== null && _c !== void 0 ? _c : buildOptions.artifactId) !== null && _d !== void 0 ? _d : `${themeNames[0]}-keycloak-theme`,
355
- loginThemeResourcesFromKeycloakVersion: (_e = buildOptions.loginThemeResourcesFromKeycloakVersion) !== null && _e !== void 0 ? _e : "24.0.4",
356
+ artifactId: (_e = (_d = process.env.KEYCLOAKIFY_ARTIFACT_ID) !== null && _d !== void 0 ? _d : buildOptions.artifactId) !== null && _e !== void 0 ? _e : `${themeNames[0]}-keycloak-theme`,
357
+ loginThemeResourcesFromKeycloakVersion: (_f = buildOptions.loginThemeResourcesFromKeycloakVersion) !== null && _f !== void 0 ? _f : "24.0.4",
356
358
  projectDirPath,
357
359
  projectBuildDirPath,
358
360
  keycloakifyBuildDirPath: (() => {
@@ -445,7 +447,7 @@ function getBuildContext(params) {
445
447
  }
446
448
  return buildOptions.kcContextExclusionsFtl;
447
449
  })(),
448
- environmentVariables: (_f = buildOptions.environmentVariables) !== null && _f !== void 0 ? _f : [],
450
+ environmentVariables: (_g = buildOptions.environmentVariables) !== null && _g !== void 0 ? _g : [],
449
451
  recordIsImplementedByThemeType,
450
452
  themeSrcDirPath,
451
453
  fetchOptions: getProxyFetchOptions({
@@ -483,8 +485,8 @@ function getBuildContext(params) {
483
485
  break build_for_specific_keycloak_major_version;
484
486
  }
485
487
  const keycloakVersionRange = (() => {
486
- const doesImplementAccountTheme = recordIsImplementedByThemeType.account;
487
- if (doesImplementAccountTheme) {
488
+ const doesImplementAccountV1Theme = !doUseAccountV3 && recordIsImplementedByThemeType.account;
489
+ if (doesImplementAccountV1Theme) {
488
490
  const keycloakVersionRange = (() => {
489
491
  if (buildForKeycloakMajorVersionNumber <= 21) {
490
492
  return "21-and-below";
@@ -539,7 +541,7 @@ function getBuildContext(params) {
539
541
  }
540
542
  const jarTargets_default = (() => {
541
543
  const jarTargets = [];
542
- if (recordIsImplementedByThemeType.account) {
544
+ if (!doUseAccountV3 && recordIsImplementedByThemeType.account) {
543
545
  for (const keycloakVersionRange of [
544
546
  "21-and-below",
545
547
  "23",
@@ -570,8 +572,9 @@ function getBuildContext(params) {
570
572
  if (buildOptions.keycloakVersionTargets === undefined) {
571
573
  return jarTargets_default;
572
574
  }
573
- if (buildOptions.keycloakVersionTargets.hasAccountTheme !==
574
- recordIsImplementedByThemeType.account) {
575
+ if (buildOptions.keycloakVersionTargets.hasAccountTheme !== doUseAccountV3
576
+ ? false
577
+ : recordIsImplementedByThemeType.account) {
575
578
  console.log(source_default().red((() => {
576
579
  const { keycloakVersionTargets } = buildOptions;
577
580
  let message = `Bad ${(0,symToStr/* symToStr */.r)({ keycloakVersionTargets })} configuration.\n`;
@@ -646,7 +649,8 @@ function getBuildContext(params) {
646
649
  process.exit(1);
647
650
  }
648
651
  return jarTargets;
649
- })()
652
+ })(),
653
+ doUseAccountV3
650
654
  };
651
655
  }
652
656
  //# sourceMappingURL=buildContext.js.map
package/bin/440.index.js CHANGED
@@ -354,7 +354,7 @@ const { readAssetsDirSync } = (() => {
354
354
 
355
355
  (0,assert.assert)();
356
356
  function replaceImportsInCssCode(params) {
357
- const { cssCode, cssFileRelativeDirPath, buildContext } = params;
357
+ const { cssCode, cssFileRelativeDirPath, buildContext, isAccountV3 } = params;
358
358
  const fixedCssCode = cssCode.replace(/url\(["']?(\/[^/][^)"']+)["']?\)/g, (match, assetFileAbsoluteUrlPathname) => {
359
359
  if (buildContext.urlPathname !== undefined) {
360
360
  if (!assetFileAbsoluteUrlPathname.startsWith(buildContext.urlPathname)) {
@@ -367,7 +367,7 @@ function replaceImportsInCssCode(params) {
367
367
  if (cssFileRelativeDirPath !== undefined) {
368
368
  break inline_style_in_html;
369
369
  }
370
- return `url(\${url.resourcesPath}/${constants/* basenameOfTheKeycloakifyResourcesDir */.M}${assetFileAbsoluteUrlPathname})`;
370
+ return `url(\${${!isAccountV3 ? "url.resourcesPath" : "resourceUrl"}}/${constants/* basenameOfTheKeycloakifyResourcesDir */.M}${assetFileAbsoluteUrlPathname})`;
371
371
  }
372
372
  const assetFileRelativeUrlPathname = external_path_.posix.relative(cssFileRelativeDirPath.replace(/\\/g, "/"), assetFileAbsoluteUrlPathname.replace(/^\//, ""));
373
373
  return `url(${assetFileRelativeUrlPathname})`;
@@ -391,7 +391,7 @@ var getThisCodebaseRootDirPath = __webpack_require__(58822);
391
391
  (0,assert.assert)();
392
392
  function generateFtlFilesCodeFactory(params) {
393
393
  var _a;
394
- const { themeName, indexHtmlCode, buildContext, keycloakifyVersion, themeType, fieldNames } = params;
394
+ const { themeName, indexHtmlCode, buildContext, keycloakifyVersion, themeType, fieldNames, isAccountV3 } = params;
395
395
  const $ = esm/* default.load */.ZP.load(indexHtmlCode);
396
396
  fix_imports_statements: {
397
397
  $("script:not([src])").each((...[, element]) => {
@@ -409,7 +409,8 @@ function generateFtlFilesCodeFactory(params) {
409
409
  const { fixedCssCode } = replaceImportsInCssCode({
410
410
  cssCode,
411
411
  cssFileRelativeDirPath: undefined,
412
- buildContext
412
+ buildContext,
413
+ isAccountV3
413
414
  });
414
415
  $(element).text(fixedCssCode);
415
416
  });
@@ -422,7 +423,7 @@ function generateFtlFilesCodeFactory(params) {
422
423
  if (href === undefined) {
423
424
  return;
424
425
  }
425
- $(element).attr(attrName, href.replace(new RegExp(`^${((_a = buildContext.urlPathname) !== null && _a !== void 0 ? _a : "/").replace(/\//g, "\\/")}`), `\${url.resourcesPath}/${constants/* basenameOfTheKeycloakifyResourcesDir */.M}/`));
426
+ $(element).attr(attrName, href.replace(new RegExp(`^${((_a = buildContext.urlPathname) !== null && _a !== void 0 ? _a : "/").replace(/\//g, "\\/")}`), `\${${!isAccountV3 ? "url.resourcesPath" : "resourceUrl"}}/${constants/* basenameOfTheKeycloakifyResourcesDir */.M}/`));
426
427
  }));
427
428
  }
428
429
  //FTL is no valid html, we can't insert with cheerio, we put placeholder for injecting later.
@@ -573,7 +574,7 @@ function readExtraPagesNames(params) {
573
574
  const extraPages = [];
574
575
  for (const candidateFilPath of candidateFilePaths) {
575
576
  const rawSourceFile = external_fs_.readFileSync(candidateFilPath).toString("utf8");
576
- extraPages.push(...Array.from(rawSourceFile.matchAll(/["']([^.\s]+.ftl)["']:/g), m => (console.log(m), m[1])));
577
+ extraPages.push(...Array.from(rawSourceFile.matchAll(/["']([^.\s]+.ftl)["']:/g), m => m[1]));
577
578
  }
578
579
  return extraPages.reduce(...(0,removeDuplicates.removeDuplicates)()).filter(pageId => {
579
580
  switch (themeType) {
@@ -702,6 +703,7 @@ async function generateResourcesForMainTheme(params) {
702
703
  return (0,external_path_.join)(resourcesDirPath, "theme", themeName, themeType);
703
704
  };
704
705
  for (const themeType of ["login", "account"]) {
706
+ const isAccountV3 = themeType === "account" && buildContext.doUseAccountV3;
705
707
  if (!buildContext.recordIsImplementedByThemeType[themeType]) {
706
708
  continue;
707
709
  }
@@ -742,7 +744,8 @@ async function generateResourcesForMainTheme(params) {
742
744
  const { fixedCssCode } = replaceImportsInCssCode({
743
745
  cssCode: sourceCode.toString("utf8"),
744
746
  cssFileRelativeDirPath: (0,external_path_.dirname)(fileRelativePath),
745
- buildContext
747
+ buildContext,
748
+ isAccountV3
746
749
  });
747
750
  return {
748
751
  modifiedSourceCode: Buffer.from(fixedCssCode, "utf8")
@@ -771,7 +774,8 @@ async function generateResourcesForMainTheme(params) {
771
774
  fieldNames: readFieldNameUsage({
772
775
  themeSrcDirPath: buildContext.themeSrcDirPath,
773
776
  themeType
774
- })
777
+ }),
778
+ isAccountV3
775
779
  });
776
780
  [
777
781
  ...(() => {
@@ -779,51 +783,64 @@ async function generateResourcesForMainTheme(params) {
779
783
  case "login":
780
784
  return constants/* loginThemePageIds */.MN;
781
785
  case "account":
782
- return constants/* accountThemePageIds */.UX;
786
+ return isAccountV3 ? ["index.ftl"] : constants/* accountThemePageIds */.UX;
783
787
  }
784
788
  })(),
785
- ...readExtraPagesNames({
786
- themeType,
787
- themeSrcDirPath: buildContext.themeSrcDirPath
788
- })
789
+ ...(isAccountV3
790
+ ? []
791
+ : readExtraPagesNames({
792
+ themeType,
793
+ themeSrcDirPath: buildContext.themeSrcDirPath
794
+ }))
789
795
  ].forEach(pageId => {
790
796
  const { ftlCode } = generateFtlFilesCode({ pageId });
791
797
  external_fs_.writeFileSync((0,external_path_.join)(themeTypeDirPath, pageId), Buffer.from(ftlCode, "utf8"));
792
798
  });
793
- (0,generateMessageProperties/* generateMessageProperties */.k)({
794
- themeSrcDirPath: buildContext.themeSrcDirPath,
795
- themeType
796
- }).forEach(({ languageTag, propertiesFileSource }) => {
797
- const messagesDirPath = (0,external_path_.join)(themeTypeDirPath, "messages");
798
- external_fs_.mkdirSync((0,external_path_.join)(themeTypeDirPath, "messages"), {
799
- recursive: true
799
+ i18n_messages_generation: {
800
+ if (isAccountV3) {
801
+ break i18n_messages_generation;
802
+ }
803
+ (0,generateMessageProperties/* generateMessageProperties */.k)({
804
+ themeSrcDirPath: buildContext.themeSrcDirPath,
805
+ themeType
806
+ }).forEach(({ languageTag, propertiesFileSource }) => {
807
+ const messagesDirPath = (0,external_path_.join)(themeTypeDirPath, "messages");
808
+ external_fs_.mkdirSync((0,external_path_.join)(themeTypeDirPath, "messages"), {
809
+ recursive: true
810
+ });
811
+ const propertiesFilePath = (0,external_path_.join)(messagesDirPath, `messages_${languageTag}.properties`);
812
+ external_fs_.writeFileSync(propertiesFilePath, Buffer.from(propertiesFileSource, "utf8"));
800
813
  });
801
- const propertiesFilePath = (0,external_path_.join)(messagesDirPath, `messages_${languageTag}.properties`);
802
- external_fs_.writeFileSync(propertiesFilePath, Buffer.from(propertiesFileSource, "utf8"));
803
- });
804
- await (0,downloadKeycloakStaticResources/* downloadKeycloakStaticResources */.p)({
805
- keycloakVersion: (() => {
806
- switch (themeType) {
807
- case "account":
808
- return constants/* lastKeycloakVersionWithAccountV1 */.v$;
809
- case "login":
810
- return buildContext.loginThemeResourcesFromKeycloakVersion;
811
- }
812
- })(),
813
- themeDirPath: (0,external_path_.resolve)((0,external_path_.join)(themeTypeDirPath, "..")),
814
- themeType,
815
- buildContext
816
- });
814
+ }
815
+ keycloak_static_resources: {
816
+ if (isAccountV3) {
817
+ break keycloak_static_resources;
818
+ }
819
+ await (0,downloadKeycloakStaticResources/* downloadKeycloakStaticResources */.p)({
820
+ keycloakVersion: (() => {
821
+ switch (themeType) {
822
+ case "account":
823
+ return constants/* lastKeycloakVersionWithAccountV1 */.v$;
824
+ case "login":
825
+ return buildContext.loginThemeResourcesFromKeycloakVersion;
826
+ }
827
+ })(),
828
+ themeDirPath: (0,external_path_.resolve)((0,external_path_.join)(themeTypeDirPath, "..")),
829
+ themeType,
830
+ buildContext
831
+ });
832
+ }
817
833
  external_fs_.writeFileSync((0,external_path_.join)(themeTypeDirPath, "theme.properties"), Buffer.from([
818
834
  `parent=${(() => {
819
835
  switch (themeType) {
820
836
  case "account":
821
- return constants/* accountV1ThemeName */.y_;
837
+ return isAccountV3 ? "base" : constants/* accountV1ThemeName */.y_;
822
838
  case "login":
823
839
  return "keycloak";
824
840
  }
825
841
  (0,assert.assert)(false);
826
842
  })()}`,
843
+ ...(isAccountV3 ? ["deprecatedMode=false"] : []),
827
844
  ...((_a = buildContext.extraThemeProperties) !== null && _a !== void 0 ? _a : []),
828
845
  ...buildContext.environmentVariables.map(({ name, default: defaultValue }) => `${name}=\${env.${name}:${(0,escapeStringForPropertiesFile/* escapeStringForPropertiesFile */.y)(defaultValue)}}`)
829
846
  ].join("\n\n"), "utf8"));
@@ -838,7 +855,13 @@ async function generateResourcesForMainTheme(params) {
838
855
  destDirPath: getThemeTypeDirPath({ themeType: "email" })
839
856
  });
840
857
  }
841
- if (buildContext.recordIsImplementedByThemeType.account) {
858
+ bring_in_account_v1: {
859
+ if (buildContext.doUseAccountV3) {
860
+ break bring_in_account_v1;
861
+ }
862
+ if (!buildContext.recordIsImplementedByThemeType.account) {
863
+ break bring_in_account_v1;
864
+ }
842
865
  await bringInAccountV1({
843
866
  resourcesDirPath,
844
867
  buildContext
@@ -950,8 +973,8 @@ const keycloakThemeAdditionalInfoExtensionVersions = [null, "1.1.5"];
950
973
  ;// CONCATENATED MODULE: ./dist/bin/keycloakify/buildJars/getKeycloakVersionRangeForJar.js
951
974
 
952
975
  function getKeycloakVersionRangeForJar(params) {
953
- const { keycloakAccountV1Version, keycloakThemeAdditionalInfoExtensionVersion, doesImplementAccountTheme } = params;
954
- if (doesImplementAccountTheme) {
976
+ const { keycloakAccountV1Version, keycloakThemeAdditionalInfoExtensionVersion, doesImplementAccountV1Theme } = params;
977
+ if (doesImplementAccountV1Theme) {
955
978
  const keycloakVersionRange = (() => {
956
979
  switch (keycloakAccountV1Version) {
957
980
  case null:
@@ -1097,14 +1120,14 @@ var isInside = __webpack_require__(90665);
1097
1120
 
1098
1121
  (0,assert.assert)();
1099
1122
  async function buildJar(params) {
1100
- const { jarFileBasename, keycloakAccountV1Version, keycloakThemeAdditionalInfoExtensionVersion, resourcesDirPath, buildContext } = params;
1123
+ const { jarFileBasename, keycloakAccountV1Version, keycloakThemeAdditionalInfoExtensionVersion, resourcesDirPath, doesImplementAccountV1Theme, buildContext } = params;
1101
1124
  const keycloakifyBuildTmpDirPath = (0,external_path_.join)(buildContext.cacheDirPath, jarFileBasename.replace(".jar", ""));
1102
1125
  (0,fs_rmSync/* rmSync */.a)(keycloakifyBuildTmpDirPath, { recursive: true, force: true });
1103
1126
  const tmpResourcesDirPath = (0,external_path_.join)(keycloakifyBuildTmpDirPath, "src", "main", "resources");
1104
1127
  (0,transformCodebase/* transformCodebase */.N)({
1105
1128
  srcDirPath: resourcesDirPath,
1106
1129
  destDirPath: tmpResourcesDirPath,
1107
- transformSourceCode: keycloakAccountV1Version !== null
1130
+ transformSourceCode: !doesImplementAccountV1Theme || keycloakAccountV1Version !== null
1108
1131
  ? undefined
1109
1132
  : (params) => {
1110
1133
  const { fileRelativePath, sourceCode } = params;
@@ -1127,7 +1150,15 @@ async function buildJar(params) {
1127
1150
  return { modifiedSourceCode: sourceCode };
1128
1151
  }
1129
1152
  });
1130
- if (keycloakAccountV1Version === null) {
1153
+ remove_account_v1_in_meta_inf: {
1154
+ if (!doesImplementAccountV1Theme) {
1155
+ // NOTE: We do not have account v1 anyway
1156
+ break remove_account_v1_in_meta_inf;
1157
+ }
1158
+ if (keycloakAccountV1Version !== null) {
1159
+ // NOTE: No, we need to keep account-v1 in meta-inf
1160
+ break remove_account_v1_in_meta_inf;
1161
+ }
1131
1162
  writeMetaInfKeycloakThemes({
1132
1163
  resourcesDirPath: tmpResourcesDirPath,
1133
1164
  getNewMetaInfKeycloakTheme: ({ metaInfKeycloakTheme }) => {
@@ -1151,6 +1182,7 @@ async function buildJar(params) {
1151
1182
  return true;
1152
1183
  }
1153
1184
  })();
1185
+ // TODO: Remove this optimization, it's a bit hacky.
1154
1186
  if (doBreak) {
1155
1187
  break route_legacy_pages;
1156
1188
  }
@@ -1203,10 +1235,11 @@ async function buildJar(params) {
1203
1235
  (0,assert.assert)();
1204
1236
  async function buildJars(params) {
1205
1237
  const { resourcesDirPath, buildContext } = params;
1206
- const doesImplementAccountTheme = buildContext.recordIsImplementedByThemeType.account;
1238
+ const doesImplementAccountV1Theme = buildContext.recordIsImplementedByThemeType.account &&
1239
+ !buildContext.doUseAccountV3;
1207
1240
  await Promise.all(keycloakAccountV1Versions.map(keycloakAccountV1Version => keycloakThemeAdditionalInfoExtensionVersions.map(keycloakThemeAdditionalInfoExtensionVersion => {
1208
1241
  const keycloakVersionRange = getKeycloakVersionRangeForJar({
1209
- doesImplementAccountTheme,
1242
+ doesImplementAccountV1Theme,
1210
1243
  keycloakAccountV1Version,
1211
1244
  keycloakThemeAdditionalInfoExtensionVersion
1212
1245
  });
@@ -1223,6 +1256,7 @@ async function buildJars(params) {
1223
1256
  keycloakAccountV1Version,
1224
1257
  keycloakThemeAdditionalInfoExtensionVersion,
1225
1258
  resourcesDirPath,
1259
+ doesImplementAccountV1Theme,
1226
1260
  buildContext
1227
1261
  });
1228
1262
  }))
@@ -1,5 +1,5 @@
1
- export type KeycloakVersionRange = KeycloakVersionRange.WithAccountTheme | KeycloakVersionRange.WithoutAccountTheme;
1
+ export type KeycloakVersionRange = KeycloakVersionRange.WithAccountV1Theme | KeycloakVersionRange.WithoutAccountV1Theme;
2
2
  export declare namespace KeycloakVersionRange {
3
- type WithoutAccountTheme = "21-and-below" | "22-and-above";
4
- type WithAccountTheme = "21-and-below" | "23" | "24" | "25-and-above";
3
+ type WithoutAccountV1Theme = "21-and-below" | "22-and-above";
4
+ type WithAccountV1Theme = "21-and-below" | "23" | "24" | "25-and-above";
5
5
  }
@@ -38,6 +38,7 @@ export type BuildContext = {
38
38
  packageJsonDirPath: string;
39
39
  packageJsonScripts: Record<string, string>;
40
40
  };
41
+ doUseAccountV3: boolean;
41
42
  };
42
43
  export type BuildOptions = {
43
44
  themeName?: string | string[];
@@ -54,13 +55,14 @@ export type BuildOptions = {
54
55
  kcContextExclusionsFtl?: string;
55
56
  /** https://docs.keycloakify.dev/v/v10/targetting-specific-keycloak-versions */
56
57
  keycloakVersionTargets?: BuildOptions.KeycloakVersionTargets;
58
+ doUseAccountV3?: boolean;
57
59
  };
58
60
  export declare namespace BuildOptions {
59
61
  type KeycloakVersionTargets = ({
60
62
  hasAccountTheme: true;
61
- } & Record<KeycloakVersionRange.WithAccountTheme, string | boolean>) | ({
63
+ } & Record<KeycloakVersionRange.WithAccountV1Theme, string | boolean>) | ({
62
64
  hasAccountTheme: false;
63
- } & Record<KeycloakVersionRange.WithoutAccountTheme, string | boolean>);
65
+ } & Record<KeycloakVersionRange.WithoutAccountV1Theme, string | boolean>);
64
66
  }
65
67
  export type ResolvedViteConfig = {
66
68
  buildDir: string;
@@ -1 +1 @@
1
- {"version":3,"file":"buildContext.js","sourceRoot":"","sources":["../../src/bin/shared/buildContext.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildContext.js","sourceRoot":"","sources":["../../src/bin/shared/buildContext.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,KAAK,IAAI,QAAQ,EAAE,MAAM,KAAK,CAAC;AACxC,OAAO,EACH,IAAI,IAAI,QAAQ,EAChB,GAAG,IAAI,OAAO,EACd,QAAQ,IAAI,YAAY,EACxB,OAAO,IAAI,WAAW,EACtB,OAAO,IAAI,WAAW,EACzB,MAAM,MAAM,CAAC;AACd,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAErF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,MAAM,EAAe,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,aAAa,MAAM,eAAe,CAAC;AAC/C,OAAO,EACH,2BAA2B,EAC3B,mCAAmC,EACtC,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,EAAE,EAAE,MAAM,UAAU,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAA0B,MAAM,4BAA4B,CAAC;AA2E1F,MAAM,UAAU,eAAe,CAAC,MAE/B;;IACG,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAAC;IAErC,MAAM,cAAc,GAChB,iBAAiB,CAAC,cAAc,KAAK,SAAS;QAC1C,CAAC,CAAC,4BAA4B,CAAC;YACzB,OAAO,EAAE,iBAAiB,CAAC,cAAc;YACzC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;SACrB,CAAC;QACJ,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IAExB,MAAM,EAAE,eAAe,EAAE,GAAG,CAAC,GAAG,EAAE;QAC9B,MAAM,UAAU,GAAG,QAAQ,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QAEnD,MAAM,eAAe,GAAuB,KAAK,CAAC;YAC9C,OAAO,EAAE,UAAU;YACnB,iBAAiB,EAAE,qBAAqB;SAC3C,CAAC;aACG,GAAG,CAAC,gBAAgB,CAAC,EAAE;YACpB,KAAK,MAAM,mBAAmB,IAAI,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,EAAE;gBACpE,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAC1D,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;oBACpB,OAAO,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC;iBAC/D;aACJ;YACD,OAAO,SAAS,CAAC;QACrB,CAAC,CAAC;aACD,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnC,IAAI,eAAe,KAAK,SAAS,EAAE;YAC/B,OAAO,EAAE,eAAe,EAAE,CAAC;SAC9B;QAED,KAAK,MAAM,SAAS,IAAI,CAAC,GAAG,UAAU,EAAE,OAAO,CAAC,EAAE;YAC9C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,EAAE;gBACjD,SAAS;aACZ;YACD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC;SAC1C;QAED,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,GAAG,CACL;YACI,yDAAyD,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,EAAE;YAC5G,qHAAqH;YACrH,uJAAuJ;SAC1J,CAAC,IAAI,CAAC,IAAI,CAAC,CACf,CACJ,CAAC;QAEF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,EAAE,kBAAkB,EAAE,GAAG,CAAC,GAAG,EAAE;QACjC,IACI,EAAE;aACG,WAAW,CAAC,cAAc,CAAC;aAC3B,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,YAAY,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;YACjE,SAAS,EACX;YACE,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC;SAC5C;QAED,MAAM,MAAM,GAAG,aAAa;aACvB,QAAQ,CAAC,UAAU,EAAE;YAClB,GAAG,EAAE,cAAc;YACnB,GAAG,kCACI,OAAO,CAAC,GAAG,KACd,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,EAAE,MAAM,GAC1D;SACJ,CAAC;aACD,QAAQ,CAAC,MAAM,CAAC,CAAC;QAEtB,MAAM,CACF,MAAM,CAAC,QAAQ,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,EAC9D,4DAA4D,CAC/D,CAAC;QAEF,MAAM,qBAAqB,GAAG,MAAM;aAC/B,KAAK,CAAC,2BAA2B,CAAC,iBAAiB,CAAC;aACpD,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QAElB,MAAM,kBAAkB,GAAuB,IAAI,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAEjF,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAClC,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,mBAAmB,GAAG,CAAC,SAAS,qBAAqB,CAAC,OAAe;;QACvE,MAAM,OAAO,GAAG,WAAW,CACvB,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAC9D,CAAC;QAEF,MAAM,CAAC,OAAO,KAAK,OAAO,EAAE,6BAA6B,CAAC,CAAC;QAE3D,OAAO,EAAE;YACL,MAAM,mBAAmB,GAAG,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;YAE9D,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE;gBACrC,MAAM,OAAO,CAAC;aACjB;YAED,MAAM,iBAAiB,GAAG,CAAC;iBACtB,MAAM,CAAC;gBACJ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;gBAC3B,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;gBAC7C,eAAe,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;aACnD,CAAC;iBACD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAE9E,IACI,CAAA,MAAA,iBAAiB,CAAC,YAAY,0CAAE,WAAW,MAAK,SAAS;gBACzD,CAAA,MAAA,iBAAiB,CAAC,eAAe,0CAAE,WAAW,MAAK,SAAS;gBAC5D,iBAAiB,CAAC,IAAI,KAAK,aAAa,CAAC,kCAAkC;cAC7E;gBACE,MAAM,OAAO,CAAC;aACjB;YAED,OAAO,mBAAmB,CAAC;SAC9B;QAED,OAAO,qBAAqB,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEN,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE;QAe5B,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;YAChC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC9B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC/B,WAAW,EAAE,EAAE,CACX,CAAC,GAAG,EAAE;gBACF,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;oBACvC,oBAAoB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;oBACpD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBACjC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBAC9B,sCAAsC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBAC7D,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBAC1C,uBAAuB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBAC9C,sBAAsB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBAC7C,oBAAoB,EAAE,CAAC;yBAClB,KAAK,CACF,CAAC,CAAC,MAAM,CAAC;wBACL,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;wBAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;qBACtB,CAAC,CACL;yBACA,QAAQ,EAAE;oBACf,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;oBAChE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBACnC,kCAAkC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBACzD,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;oBACpC,sBAAsB,EAAE,EAAE,CAGtB,CAAC,GAAG,EAAE;wBACF,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC;4BACpC,CAAC,CAAC,MAAM,CAAC;gCACL,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;gCAChC,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC;oCACpB,CAAC,CAAC,OAAO,EAAE;oCACX,CAAC,CAAC,MAAM,EAAE;iCACb,CAAC;gCACF,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;gCACxC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;gCACxC,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;6BACrD,CAAC;4BACF,CAAC,CAAC,MAAM,CAAC;gCACL,eAAe,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;gCACjC,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC;oCACpB,CAAC,CAAC,OAAO,EAAE;oCACX,CAAC,CAAC,MAAM,EAAE;iCACb,CAAC;gCACF,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;6BACrD,CAAC;yBACL,CAAC,CAAC;wBAEH;4BAGI,MAAM,EAAyB,CAAC;yBACnC;wBAED,OAAO,uBAAuB,CAAC;oBACnC,CAAC,CAAC,EAAE,CACP,CAAC,QAAQ,EAAE;oBACZ,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;iBACzC,CAAC,CAAC;gBAEH;oBAGI,MAAM,EAAyB,CAAC;iBACnC;gBAED,OAAO,yBAAyB,CAAC;YACrC,CAAC,CAAC,EAAE,CACP,CAAC,QAAQ,EAAE;SACf,CAAC,CAAC;QAEH;YAGI,MAAM,EAAyB,CAAC;SACnC;QAED,MAAM,gCAAgC,GAAG,CAAC,GAAG,EAAE;YAC3C,MAAM,uBAAuB,GAAG,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;YAEzE,OAAO,EAAE,CAAC,UAAU,CAAC,uBAAuB,CAAC;gBACzC,CAAC,CAAC,uBAAuB;gBACzB,CAAC,CAAC,mBAAmB,CAAC;QAC9B,CAAC,CAAC,EAAE,CAAC;QAEL,OAAO,kBAAkB,CAAC,KAAK,CAC3B,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,gCAAgC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CACjF,CAAC;IACN,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,YAAY,mCACX,iBAAiB,CAAC,WAAW,GAC7B,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,YAAY,CACtC,CAAC;IAEF,MAAM,8BAA8B,GAAG,iBAAiB,CACnD,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAW,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;QACtD,SAAS;QACT,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;KACtD,CAAC,CACL,CAAC;IAEF,MAAM,UAAU,GAAG,CAAC,GAA0B,EAAE;QAC5C,IAAI,YAAY,CAAC,SAAS,KAAK,SAAS,EAAE;YACtC,OAAO,iBAAiB,CAAC,IAAI,KAAK,SAAS;gBACvC,CAAC,CAAC,CAAC,aAAa,CAAC;gBACjB,CAAC,CAAC;oBACI,iBAAiB,CAAC,IAAI;yBACjB,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC;yBACvB,KAAK,CAAC,GAAG,CAAC;yBACV,IAAI,CAAC,GAAG,CAAC;iBACjB,CAAC;SACX;QAED,IAAI,OAAO,YAAY,CAAC,SAAS,KAAK,QAAQ,EAAE;YAC5C,OAAO,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;SACnC;QAED,MAAM,CAAC,aAAa,EAAE,GAAG,iBAAiB,CAAC,GAAG,YAAY,CAAC,SAAS,CAAC;QAErE,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC;QAEpC,OAAO,CAAC,aAAa,EAAE,GAAG,iBAAiB,CAAC,CAAC;IACjD,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,mBAAmB,GAAG,CAAC,GAAG,EAAE;QAC9B,OAAO,EAAE;YACL,IAAI,kBAAkB,KAAK,SAAS,EAAE;gBAClC,MAAM,OAAO,CAAC;aACjB;YAED,IAAI,YAAY,CAAC,mBAAmB,KAAK,SAAS,EAAE;gBAChD,OAAO,4BAA4B,CAAC;oBAChC,OAAO,EAAE,YAAY,CAAC,mBAAmB;oBACzC,GAAG,EAAE,cAAc;iBACtB,CAAC,CAAC;aACN;YAED,OAAO,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;SAC5C;QAED,OAAO,QAAQ,CAAC,cAAc,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACjE,CAAC,CAAC,EAAE,CAAC;IAEL,MAAM,OAAO,GAAG,kBAAkB,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAEtE,MAAM,cAAc,GAAG,MAAA,YAAY,CAAC,cAAc,mCAAI,KAAK,CAAC;IAE5D,OAAO;QACH,OAAO,EACH,kBAAkB,KAAK,SAAS;YAC5B,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;YAClB,CAAC,CAAC,CAAC,GAAG,EAAE;gBACF,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC;qBAChB,MAAM,CAAC;oBACJ,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE;iBAC3C,CAAC;qBACD,KAAK,CACF,IAAI,CAAC,KAAK,CACN,EAAE,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CACxD,CACJ,CAAC;gBAEN,OAAO;oBACH,IAAI,EAAE,SAAS;oBACf,kBAAkB,EAAE,WAAW,CAAC,mBAAmB,CAAC;oBACpD,kBAAkB,EAAE,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE;iBACpC,CAAC;YACN,CAAC,CAAC,EAAE;QACd,YAAY,EAAE,MAAA,MAAA,YAAY,CAAC,YAAY,mCAAI,iBAAiB,CAAC,OAAO,mCAAI,OAAO;QAC/E,UAAU;QACV,oBAAoB,EAAE,YAAY,CAAC,oBAAoB;QACvD,OAAO,EAAE,CAAC,GAAG,EAAE;;YACX,MAAM,eAAe,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC;YAEpD,OAAO,CACH,MAAA,MAAA,OAAO,CAAC,GAAG,CAAC,oBAAoB,mCAChC,YAAY,CAAC,OAAO,mCACpB,CAAC,iBAAiB,CAAC,QAAQ,KAAK,SAAS;gBACrC,CAAC,CAAC,eAAe;gBACjB,CAAC,CAAC,MAAA,MAAA,MAAA,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC;qBAC/B,IAAI,0CAAE,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,0CAC5B,KAAK,CAAC,GAAG,EACV,OAAO,GACP,IAAI,CAAC,GAAG,CAAC,mCAAI,eAAe,CAAC,GAAG,WAAW,CACzD,CAAC;QACN,CAAC,CAAC,EAAE;QACJ,UAAU,EACN,MAAA,MAAA,OAAO,CAAC,GAAG,CAAC,uBAAuB,mCACnC,YAAY,CAAC,UAAU,mCACvB,GAAG,UAAU,CAAC,CAAC,CAAC,iBAAiB;QACrC,sCAAsC,EAClC,MAAA,YAAY,CAAC,sCAAsC,mCAAI,QAAQ;QACnE,cAAc;QACd,mBAAmB;QACnB,uBAAuB,EAAE,CAAC,GAAG,EAAE;YAC3B,IAAI,YAAY,CAAC,uBAAuB,KAAK,SAAS,EAAE;gBACpD,OAAO,4BAA4B,CAAC;oBAChC,OAAO,EAAE,YAAY,CAAC,uBAAuB;oBAC7C,GAAG,EAAE,cAAc;iBACtB,CAAC,CAAC;aACN;YAED,OAAO,QAAQ,CACX,cAAc,EACd,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,QAAQ,MAAK,SAAS;gBACtC,CAAC,CAAC,gBAAgB;gBAClB,CAAC,CAAC,GAAG,kBAAkB,CAAC,QAAQ,WAAW,CAClD,CAAC;QACN,CAAC,CAAC,EAAE;QACJ,aAAa,EAAE,CAAC,GAAG,EAAE;YACjB,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,KAAK,SAAS,EAAE;gBAC3C,OAAO,4BAA4B,CAAC;oBAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;oBACpC,GAAG,EAAE,cAAc;iBACtB,CAAC,CAAC;aACN;YAED,OAAO,EAAE;gBACL,IAAI,kBAAkB,KAAK,SAAS,EAAE;oBAClC,MAAM,OAAO,CAAC;iBACjB;gBAED,IAAI,YAAY,CAAC,aAAa,KAAK,SAAS,EAAE;oBAC1C,OAAO,4BAA4B,CAAC;wBAChC,OAAO,EAAE,YAAY,CAAC,aAAa;wBACnC,GAAG,EAAE,cAAc;qBACtB,CAAC,CAAC;iBACN;gBAED,OAAO,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;aAC7C;YAED,OAAO,QAAQ,CAAC,cAAc,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAClE,CAAC,CAAC,EAAE;QACJ,YAAY,EAAE,CAAC,GAAG,EAAE;YAChB,MAAM,YAAY,GAAG,QAAQ,CACzB,CAAC,GAAG,EAAE;gBACF,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,KAAK,SAAS,EAAE;oBAC1C,OAAO,4BAA4B,CAAC;wBAChC,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;wBACnC,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;qBACrB,CAAC,CAAC;iBACN;gBAED,OAAO,QAAQ,CACX,WAAW,CAAC,mBAAmB,CAAC,EAChC,cAAc,EACd,QAAQ,CACX,CAAC;YACN,CAAC,CAAC,EAAE,EACJ,aAAa,CAChB,CAAC;YAEF,OAAO,YAAY,CAAC;QACxB,CAAC,CAAC,EAAE;QACJ,WAAW,EAAE,CAAC,GAAG,EAAE;YACf,OAAO,EAAE;gBACL,IAAI,kBAAkB,KAAK,SAAS,EAAE;oBAClC,MAAM,OAAO,CAAC;iBACjB;gBAED,MAAM,EAAE,QAAQ,EAAE,GAAG,iBAAiB,CAAC;gBAEvC,IAAI,GAAG,GAAoB,SAAS,CAAC;gBAErC,IAAI,QAAQ,KAAK,SAAS,EAAE;oBACxB,GAAG,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;iBAC3B;gBAED,IAAI,GAAG,KAAK,SAAS,EAAE;oBACnB,OAAO,SAAS,CAAC;iBACpB;gBAED,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBACnD,OAAO,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC;aACxC;YAED,OAAO,kBAAkB,CAAC,WAAW,CAAC;QAC1C,CAAC,CAAC,EAAE;QACJ,aAAa,EAAE,CAAC,GAAG,EAAE;YACjB,OAAO,EAAE;gBACL,IAAI,kBAAkB,KAAK,SAAS,EAAE;oBAClC,MAAM,OAAO,CAAC;iBACjB;gBAED,IAAI,YAAY,CAAC,kCAAkC,KAAK,SAAS,EAAE;oBAC/D,4BAA4B,CAAC;wBACzB,OAAO,EAAE,YAAY,CAAC,kCAAkC;wBACxD,GAAG,EAAE,mBAAmB;qBAC3B,CAAC,CAAC;iBACN;gBAED,OAAO,QAAQ,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAC;aAClD;YAED,OAAO,QAAQ,CAAC,mBAAmB,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC;QACvE,CAAC,CAAC,EAAE;QACJ,0BAA0B,EAAE,CAAC,GAAG,EAAE;YAC9B,IAAI,YAAY,CAAC,sBAAsB,KAAK,SAAS,EAAE;gBACnD,OAAO,SAAS,CAAC;aACpB;YAED,IAAI,YAAY,CAAC,sBAAsB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBACtD,MAAM,0BAA0B,GAAG,4BAA4B,CAAC;oBAC5D,OAAO,EAAE,YAAY,CAAC,sBAAsB;oBAC5C,GAAG,EAAE,cAAc;iBACtB,CAAC,CAAC;gBAEH,OAAO,EAAE,CAAC,YAAY,CAAC,0BAA0B,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;aACvE;YAED,OAAO,YAAY,CAAC,sBAAsB,CAAC;QAC/C,CAAC,CAAC,EAAE;QACJ,oBAAoB,EAAE,MAAA,YAAY,CAAC,oBAAoB,mCAAI,EAAE;QAC7D,8BAA8B;QAC9B,eAAe;QACf,YAAY,EAAE,oBAAoB,CAAC;YAC/B,eAAe,EAAE,CAAC,SAAS,MAAM,CAAC,OAAe;gBAC7C,MAAM,OAAO,GAAG,WAAW,CACvB,QAAQ,CAAC,GAAG,CAAC,cAAc,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAC9D,CAAC;gBAEF,MAAM,CACF,OAAO,KAAK,OAAO,EACnB,+CAA+C,CAClD,CAAC;gBAEF,IAAI;oBACA,aAAa,CAAC,QAAQ,CAAC,gBAAgB,EAAE;wBACrC,GAAG,EAAE,OAAO;wBACZ,KAAK,EAAE,QAAQ;qBAClB,CAAC,CAAC;iBACN;gBAAC,OAAO,KAAK,EAAE;oBACZ,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE;wBACzC,OAAO,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;qBAC9B;oBAED,MAAM,KAAK,CAAC;iBACf;gBAED,OAAO,OAAO,CAAC;YACnB,CAAC,CAAC,CAAC,CAAC,CAAC;SACR,CAAC;QACF,UAAU,EAAE,CAAC,GAAG,EAAE;YACd,MAAM,yBAAyB,GAAG,CAAC,KAAa,EAAE,EAAE,CAChD,yBAAyB,KAAK,MAAM,CAAC;YAEzC,yCAAyC,EAAE;gBACvC,MAAM,kCAAkC,GAAG,CAAC,GAAG,EAAE;oBAC7C,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;oBAElE,IAAI,QAAQ,KAAK,SAAS,EAAE;wBACxB,OAAO,SAAS,CAAC;qBACpB;oBAED,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBAEjC,MAAM,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;oBAEtB,OAAO,KAAK,CAAC;gBACjB,CAAC,CAAC,EAAE,CAAC;gBAEL,IAAI,kCAAkC,KAAK,SAAS,EAAE;oBAClD,MAAM,yCAAyC,CAAC;iBACnD;gBAED,MAAM,oBAAoB,GAAyB,CAAC,GAAG,EAAE;oBACrD,MAAM,2BAA2B,GAC7B,CAAC,cAAc,IAAI,8BAA8B,CAAC,OAAO,CAAC;oBAE9D,IAAI,2BAA2B,EAAE;wBAC7B,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE;4BAC/B,IAAI,kCAAkC,IAAI,EAAE,EAAE;gCAC1C,OAAO,cAAuB,CAAC;6BAClC;4BAED,MAAM,CAAC,kCAAkC,KAAK,EAAE,CAAC,CAAC;4BAElD,IAAI,kCAAkC,KAAK,EAAE,EAAE;gCAC3C,OAAO,IAAa,CAAC;6BACxB;4BAED,IAAI,kCAAkC,KAAK,EAAE,EAAE;gCAC3C,OAAO,IAAa,CAAC;6BACxB;4BAED,OAAO,cAAuB,CAAC;wBACnC,CAAC,CAAC,EAAE,CAAC;wBAEL,MAAM,EAKH,CAAC;wBAEJ,OAAO,oBAAoB,CAAC;qBAC/B;yBAAM;wBACH,MAAM,oBAAoB,GAAG,CAAC,GAAG,EAAE;4BAC/B,IAAI,kCAAkC,IAAI,EAAE,EAAE;gCAC1C,OAAO,cAAuB,CAAC;6BAClC;4BAED,OAAO,cAAuB,CAAC;wBACnC,CAAC,CAAC,EAAE,CAAC;wBAEL,MAAM,EAKH,CAAC;wBAEJ,OAAO,oBAAoB,CAAC;qBAC/B;gBACL,CAAC,CAAC,EAAE,CAAC;gBAEL,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE;oBAC1B,uBAAuB,EAAE;wBACrB,MAAM,EAAE,sBAAsB,EAAE,GAAG,YAAY,CAAC;wBAEhD,IAAI,sBAAsB,KAAK,SAAS,EAAE;4BACtC,MAAM,uBAAuB,CAAC;yBACjC;wBAED,MAAM,KAAK,GAAG,aAAa,CAAC,sBAAsB,CAAC,CAAC,IAAI,CACpD,CAAC,CAAC,0BAA0B,CAAC,EAAE,EAAE,CAC7B,0BAA0B,KAAK,oBAAoB,CAC1D,CAAC;wBAEF,IAAI,KAAK,KAAK,SAAS,EAAE;4BACrB,MAAM,uBAAuB,CAAC;yBACjC;wBAED,MAAM,oBAAoB,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;wBAEtC,IAAI,OAAO,oBAAoB,KAAK,QAAQ,EAAE;4BAC1C,MAAM,uBAAuB,CAAC;yBACjC;wBAED,OAAO,oBAAoB,CAAC;qBAC/B;oBAED,OAAO,yBAAyB,CAAC,oBAAoB,CAAC,CAAC;gBAC3D,CAAC,CAAC,EAAE,CAAC;gBAEL,OAAO;oBACH;wBACI,oBAAoB;wBACpB,eAAe;qBAClB;iBACJ,CAAC;aACL;YAED,MAAM,kBAAkB,GAAG,CAAC,GAAG,EAAE;gBAC7B,MAAM,UAAU,GAA+B,EAAE,CAAC;gBAElD,IAAI,CAAC,cAAc,IAAI,8BAA8B,CAAC,OAAO,EAAE;oBAC3D,KAAK,MAAM,oBAAoB,IAAI;wBAC/B,cAAc;wBACd,IAAI;wBACJ,IAAI;wBACJ,cAAc;qBACR,EAAE;wBACR,MAAM,CAKJ,IAAI,CAAC,CAAC;wBACR,UAAU,CAAC,IAAI,CAAC;4BACZ,oBAAoB;4BACpB,eAAe,EACX,yBAAyB,CAAC,oBAAoB,CAAC;yBACtD,CAAC,CAAC;qBACN;iBACJ;qBAAM;oBACH,KAAK,MAAM,oBAAoB,IAAI;wBAC/B,cAAc;wBACd,cAAc;qBACR,EAAE;wBACR,MAAM,CAKJ,IAAI,CAAC,CAAC;wBACR,UAAU,CAAC,IAAI,CAAC;4BACZ,oBAAoB;4BACpB,eAAe,EACX,yBAAyB,CAAC,oBAAoB,CAAC;yBACtD,CAAC,CAAC;qBACN;iBACJ;gBAED,OAAO,UAAU,CAAC;YACtB,CAAC,CAAC,EAAE,CAAC;YAEL,IAAI,YAAY,CAAC,sBAAsB,KAAK,SAAS,EAAE;gBACnD,OAAO,kBAAkB,CAAC;aAC7B;YAED,IACI,YAAY,CAAC,sBAAsB,CAAC,eAAe,KAAK,cAAc;gBAClE,CAAC,CAAC,KAAK;gBACP,CAAC,CAAC,8BAA8B,CAAC,OAAO,EAC9C;gBACE,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,GAAG,CACL,CAAC,GAAG,EAAE;oBACF,MAAM,EAAE,sBAAsB,EAAE,GAAG,YAAY,CAAC;oBAEhD,IAAI,OAAO,GAAG,OAAO,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC,mBAAmB,CAAC;oBAE7E,IAAI,sBAAsB,CAAC,eAAe,EAAE;wBACxC,OAAO;4BACH,4DAA4D,CAAC;qBACpE;yBAAM;wBACH,OAAO,IAAI,4CAA4C,CAAC;qBAC3D;oBAED,MAAM,EAAE,eAAe,EAAE,GAAG,sBAAsB,CAAC;oBAEnD,OAAO,IAAI,oBAAoB,QAAQ,CAAC,EAAE,sBAAsB,EAAE,CAAC,IAAI,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC;oBACvG,OAAO,IAAI,OAAO,eAAe,WAAW,CAAC;oBAC7C,OAAO,IAAI,CAAC,GAAG,EAAE;wBACb,QAAQ,OAAO,EAAE;4BACb,KAAK,MAAM;gCACP,OAAO,gBAAgB,CAAC;4BAC5B,KAAK,SAAS;gCACV,OAAO,cAAc,CAAC;yBAC7B;wBACD,MAAM,CAAgC,KAAK,CAAC,CAAC;oBACjD,CAAC,CAAC,EAAE,CAAC;oBACL,OAAO,IAAI,sBAAsB,CAAC,eAAe,GAAG,CAAC;oBACrD,OAAO;wBACH,qDAAqD,CAAC;oBAC1D,OAAO,IAAI,YAAY,CAAC;oBACxB,OAAO,IAAI,IAAI,CAAC,SAAS,CACrB,EAAE,CAA+C;wBAC7C,sBAAsB,kBAClB,eAAe,EACX,8BAA8B,CAAC,OAAO,IACvC,iBAAiB,CAChB,kBAAkB,CAAC,GAAG,CAClB,CAAC,EACG,oBAAoB,EACpB,eAAe,EAClB,EAAE,EAAE,CAAC;4BACF,oBAAoB;4BACpB,eAAe;yBAClB,CACJ,CACJ,CACJ;qBACJ,CAAC,EACF,IAAI,EACJ,CAAC,CACJ,CAAC;oBACF,OAAO;wBACH,iFAAiF,CAAC;oBAEtF,OAAO,OAAO,CAAC;gBACnB,CAAC,CAAC,EAAE,CACP,CACJ,CAAC;gBAEF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACnB;YAED,MAAM,UAAU,GAA+B,EAAE,CAAC;YAElD,MAAM,KAA+B,YAAY,CAAC,sBAAsB,EAAlE,EAAE,eAAe,OAAiD,EAA5C,IAAI,cAA1B,mBAA4B,CAAsC,CAAC;YAEzE,KAAK,MAAM,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE;gBACxE,IAAI,gBAAgB,KAAK,KAAK,EAAE;oBAC5B,SAAS;iBACZ;gBAED,IAAI,gBAAgB,KAAK,IAAI,EAAE;oBAC3B,UAAU,CAAC,IAAI,CAAC;wBACZ,oBAAoB,EAAE,oBAAoB;wBAC1C,eAAe,EAAE,yBAAyB,CAAC,oBAAoB,CAAC;qBACnE,CAAC,CAAC;oBACH,SAAS;iBACZ;gBAED,MAAM,eAAe,GAAG,gBAAgB,CAAC;gBAEzC,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;oBACnC,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,GAAG,CAAC,OAAO,eAAe,2BAA2B,CAAC,CAC/D,CAAC;oBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;iBACnB;gBAED,IAAI,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;oBACjE,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,GAAG,CACL;wBACI,WAAW,eAAe,mCAAmC;wBAC7D,gDAAgD;wBAChD,6BAA6B;qBAChC,CAAC,IAAI,CAAC,GAAG,CAAC,CACd,CACJ,CAAC;oBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;iBACnB;gBAED,UAAU,CAAC,IAAI,CAAC;oBACZ,oBAAoB,EAAE,oBAAoB;oBAC1C,eAAe,EAAE,gBAAgB;iBACpC,CAAC,CAAC;aACN;YAED,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;gBACzB,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,GAAG,CACL,sEAAsE,CACzE,CACJ,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACnB;YAED,OAAO,UAAU,CAAC;QACtB,CAAC,CAAC,EAAE;QACJ,cAAc;KACjB,CAAC;AACN,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "keycloakify",
3
- "version": "10.0.0-rc.101",
3
+ "version": "10.0.0-rc.103",
4
4
  "description": "Create Keycloak themes using React",
5
5
  "repository": {
6
6
  "type": "git",
@@ -33,6 +33,7 @@ export async function buildJar(params: {
33
33
  keycloakAccountV1Version: KeycloakAccountV1Version;
34
34
  keycloakThemeAdditionalInfoExtensionVersion: KeycloakThemeAdditionalInfoExtensionVersion;
35
35
  resourcesDirPath: string;
36
+ doesImplementAccountV1Theme: boolean;
36
37
  buildContext: BuildContextLike;
37
38
  }): Promise<void> {
38
39
  const {
@@ -40,6 +41,7 @@ export async function buildJar(params: {
40
41
  keycloakAccountV1Version,
41
42
  keycloakThemeAdditionalInfoExtensionVersion,
42
43
  resourcesDirPath,
44
+ doesImplementAccountV1Theme,
43
45
  buildContext
44
46
  } = params;
45
47
 
@@ -61,7 +63,7 @@ export async function buildJar(params: {
61
63
  srcDirPath: resourcesDirPath,
62
64
  destDirPath: tmpResourcesDirPath,
63
65
  transformSourceCode:
64
- keycloakAccountV1Version !== null
66
+ !doesImplementAccountV1Theme || keycloakAccountV1Version !== null
65
67
  ? undefined
66
68
  : (params: {
67
69
  fileRelativePath: string;
@@ -105,7 +107,17 @@ export async function buildJar(params: {
105
107
  }
106
108
  });
107
109
 
108
- if (keycloakAccountV1Version === null) {
110
+ remove_account_v1_in_meta_inf: {
111
+ if (!doesImplementAccountV1Theme) {
112
+ // NOTE: We do not have account v1 anyway
113
+ break remove_account_v1_in_meta_inf;
114
+ }
115
+
116
+ if (keycloakAccountV1Version !== null) {
117
+ // NOTE: No, we need to keep account-v1 in meta-inf
118
+ break remove_account_v1_in_meta_inf;
119
+ }
120
+
109
121
  writeMetaInfKeycloakThemes({
110
122
  resourcesDirPath: tmpResourcesDirPath,
111
123
  getNewMetaInfKeycloakTheme: ({ metaInfKeycloakTheme }) => {
@@ -135,6 +147,7 @@ export async function buildJar(params: {
135
147
  }
136
148
  })();
137
149
 
150
+ // TODO: Remove this optimization, it's a bit hacky.
138
151
  if (doBreak) {
139
152
  break route_legacy_pages;
140
153
  }
@@ -12,6 +12,7 @@ export type BuildContextLike = BuildContextLike_buildJar & {
12
12
  keycloakifyBuildDirPath: string;
13
13
  recordIsImplementedByThemeType: BuildContext["recordIsImplementedByThemeType"];
14
14
  jarTargets: BuildContext["jarTargets"];
15
+ doUseAccountV3: boolean;
15
16
  };
16
17
 
17
18
  assert<BuildContext extends BuildContextLike ? true : false>();
@@ -22,7 +23,9 @@ export async function buildJars(params: {
22
23
  }): Promise<void> {
23
24
  const { resourcesDirPath, buildContext } = params;
24
25
 
25
- const doesImplementAccountTheme = buildContext.recordIsImplementedByThemeType.account;
26
+ const doesImplementAccountV1Theme =
27
+ buildContext.recordIsImplementedByThemeType.account &&
28
+ !buildContext.doUseAccountV3;
26
29
 
27
30
  await Promise.all(
28
31
  keycloakAccountV1Versions
@@ -30,7 +33,7 @@ export async function buildJars(params: {
30
33
  keycloakThemeAdditionalInfoExtensionVersions.map(
31
34
  keycloakThemeAdditionalInfoExtensionVersion => {
32
35
  const keycloakVersionRange = getKeycloakVersionRangeForJar({
33
- doesImplementAccountTheme,
36
+ doesImplementAccountV1Theme,
34
37
  keycloakAccountV1Version,
35
38
  keycloakThemeAdditionalInfoExtensionVersion
36
39
  });
@@ -55,6 +58,7 @@ export async function buildJars(params: {
55
58
  keycloakAccountV1Version,
56
59
  keycloakThemeAdditionalInfoExtensionVersion,
57
60
  resourcesDirPath,
61
+ doesImplementAccountV1Theme,
58
62
  buildContext
59
63
  });
60
64
  }
@@ -6,17 +6,17 @@ import type {
6
6
  import type { KeycloakVersionRange } from "../../shared/KeycloakVersionRange";
7
7
 
8
8
  export function getKeycloakVersionRangeForJar(params: {
9
- doesImplementAccountTheme: boolean;
9
+ doesImplementAccountV1Theme: boolean;
10
10
  keycloakAccountV1Version: KeycloakAccountV1Version;
11
11
  keycloakThemeAdditionalInfoExtensionVersion: KeycloakThemeAdditionalInfoExtensionVersion;
12
12
  }): KeycloakVersionRange | undefined {
13
13
  const {
14
14
  keycloakAccountV1Version,
15
15
  keycloakThemeAdditionalInfoExtensionVersion,
16
- doesImplementAccountTheme
16
+ doesImplementAccountV1Theme
17
17
  } = params;
18
18
 
19
- if (doesImplementAccountTheme) {
19
+ if (doesImplementAccountV1Theme) {
20
20
  const keycloakVersionRange = (() => {
21
21
  switch (keycloakAccountV1Version) {
22
22
  case null:
@@ -63,7 +63,7 @@ export function getKeycloakVersionRangeForJar(params: {
63
63
  assert<
64
64
  Equals<
65
65
  typeof keycloakVersionRange,
66
- KeycloakVersionRange.WithAccountTheme | undefined
66
+ KeycloakVersionRange.WithAccountV1Theme | undefined
67
67
  >
68
68
  >();
69
69
 
@@ -87,7 +87,7 @@ export function getKeycloakVersionRangeForJar(params: {
87
87
  assert<
88
88
  Equals<
89
89
  typeof keycloakVersionRange,
90
- KeycloakVersionRange.WithoutAccountTheme | undefined
90
+ KeycloakVersionRange.WithoutAccountV1Theme | undefined
91
91
  >
92
92
  >();
93
93
 
@@ -34,6 +34,7 @@ export function generateFtlFilesCodeFactory(params: {
34
34
  keycloakifyVersion: string;
35
35
  themeType: ThemeType;
36
36
  fieldNames: string[];
37
+ isAccountV3: boolean;
37
38
  }) {
38
39
  const {
39
40
  themeName,
@@ -41,7 +42,8 @@ export function generateFtlFilesCodeFactory(params: {
41
42
  buildContext,
42
43
  keycloakifyVersion,
43
44
  themeType,
44
- fieldNames
45
+ fieldNames,
46
+ isAccountV3
45
47
  } = params;
46
48
 
47
49
  const $ = cheerio.load(indexHtmlCode);
@@ -68,7 +70,8 @@ export function generateFtlFilesCodeFactory(params: {
68
70
  const { fixedCssCode } = replaceImportsInCssCode({
69
71
  cssCode,
70
72
  cssFileRelativeDirPath: undefined,
71
- buildContext
73
+ buildContext,
74
+ isAccountV3
72
75
  });
73
76
 
74
77
  $(element).text(fixedCssCode);
@@ -93,7 +96,7 @@ export function generateFtlFilesCodeFactory(params: {
93
96
  new RegExp(
94
97
  `^${(buildContext.urlPathname ?? "/").replace(/\//g, "\\/")}`
95
98
  ),
96
- `\${url.resourcesPath}/${basenameOfTheKeycloakifyResourcesDir}/`
99
+ `\${${!isAccountV3 ? "url.resourcesPath" : "resourceUrl"}}/${basenameOfTheKeycloakifyResourcesDir}/`
97
100
  )
98
101
  );
99
102
  })
@@ -1,4 +1,5 @@
1
1
  <#assign pageId="PAGE_ID_xIgLsPgGId9D8e">
2
+ <#assign themeType="KEYCLOAKIFY_THEME_TYPE_dExKd3xEdr">
2
3
  const kcContext = ${ftl_object_to_js_code_declaring_an_object(.data_model, [])?no_esc};
3
4
  if( kcContext.messagesPerField ){
4
5
  var existsError_singleFieldName = kcContext.messagesPerField.existsError;
@@ -27,7 +28,7 @@ if( kcContext.messagesPerField ){
27
28
  }
28
29
  kcContext.keycloakifyVersion = "KEYCLOAKIFY_VERSION_xEdKd3xEdr";
29
30
  kcContext.themeVersion = "KEYCLOAKIFY_THEME_VERSION_sIgKd3xEdr3dx";
30
- kcContext.themeType = "KEYCLOAKIFY_THEME_TYPE_dExKd3xEdr";
31
+ kcContext.themeType = "${themeType}";
31
32
  kcContext.themeName = "KEYCLOAKIFY_THEME_NAME_cXxKd3xEer";
32
33
  kcContext.pageId = "${pageId}";
33
34
  if( kcContext.url && kcContext.url.resourcesPath ){
@@ -54,6 +54,7 @@ export type BuildContextLike = BuildContextLike_kcContextExclusionsFtlCode &
54
54
  recordIsImplementedByThemeType: BuildContext["recordIsImplementedByThemeType"];
55
55
  themeSrcDirPath: string;
56
56
  bundler: { type: "vite" } | { type: "webpack" };
57
+ doUseAccountV3: boolean;
57
58
  };
58
59
 
59
60
  assert<BuildContext extends BuildContextLike ? true : false>();
@@ -71,6 +72,7 @@ export async function generateResourcesForMainTheme(params: {
71
72
  };
72
73
 
73
74
  for (const themeType of ["login", "account"] as const) {
75
+ const isAccountV3 = themeType === "account" && buildContext.doUseAccountV3;
74
76
  if (!buildContext.recordIsImplementedByThemeType[themeType]) {
75
77
  continue;
76
78
  }
@@ -136,7 +138,8 @@ export async function generateResourcesForMainTheme(params: {
136
138
  const { fixedCssCode } = replaceImportsInCssCode({
137
139
  cssCode: sourceCode.toString("utf8"),
138
140
  cssFileRelativeDirPath: pathDirname(fileRelativePath),
139
- buildContext
141
+ buildContext,
142
+ isAccountV3
140
143
  });
141
144
 
142
145
  return {
@@ -171,7 +174,8 @@ export async function generateResourcesForMainTheme(params: {
171
174
  fieldNames: readFieldNameUsage({
172
175
  themeSrcDirPath: buildContext.themeSrcDirPath,
173
176
  themeType
174
- })
177
+ }),
178
+ isAccountV3
175
179
  });
176
180
 
177
181
  [
@@ -180,13 +184,15 @@ export async function generateResourcesForMainTheme(params: {
180
184
  case "login":
181
185
  return loginThemePageIds;
182
186
  case "account":
183
- return accountThemePageIds;
187
+ return isAccountV3 ? ["index.ftl"] : accountThemePageIds;
184
188
  }
185
189
  })(),
186
- ...readExtraPagesNames({
187
- themeType,
188
- themeSrcDirPath: buildContext.themeSrcDirPath
189
- })
190
+ ...(isAccountV3
191
+ ? []
192
+ : readExtraPagesNames({
193
+ themeType,
194
+ themeSrcDirPath: buildContext.themeSrcDirPath
195
+ }))
190
196
  ].forEach(pageId => {
191
197
  const { ftlCode } = generateFtlFilesCode({ pageId });
192
198
 
@@ -196,40 +202,52 @@ export async function generateResourcesForMainTheme(params: {
196
202
  );
197
203
  });
198
204
 
199
- generateMessageProperties({
200
- themeSrcDirPath: buildContext.themeSrcDirPath,
201
- themeType
202
- }).forEach(({ languageTag, propertiesFileSource }) => {
203
- const messagesDirPath = pathJoin(themeTypeDirPath, "messages");
205
+ i18n_messages_generation: {
206
+ if (isAccountV3) {
207
+ break i18n_messages_generation;
208
+ }
204
209
 
205
- fs.mkdirSync(pathJoin(themeTypeDirPath, "messages"), {
206
- recursive: true
207
- });
210
+ generateMessageProperties({
211
+ themeSrcDirPath: buildContext.themeSrcDirPath,
212
+ themeType
213
+ }).forEach(({ languageTag, propertiesFileSource }) => {
214
+ const messagesDirPath = pathJoin(themeTypeDirPath, "messages");
208
215
 
209
- const propertiesFilePath = pathJoin(
210
- messagesDirPath,
211
- `messages_${languageTag}.properties`
212
- );
216
+ fs.mkdirSync(pathJoin(themeTypeDirPath, "messages"), {
217
+ recursive: true
218
+ });
213
219
 
214
- fs.writeFileSync(
215
- propertiesFilePath,
216
- Buffer.from(propertiesFileSource, "utf8")
217
- );
218
- });
220
+ const propertiesFilePath = pathJoin(
221
+ messagesDirPath,
222
+ `messages_${languageTag}.properties`
223
+ );
219
224
 
220
- await downloadKeycloakStaticResources({
221
- keycloakVersion: (() => {
222
- switch (themeType) {
223
- case "account":
224
- return lastKeycloakVersionWithAccountV1;
225
- case "login":
226
- return buildContext.loginThemeResourcesFromKeycloakVersion;
227
- }
228
- })(),
229
- themeDirPath: pathResolve(pathJoin(themeTypeDirPath, "..")),
230
- themeType,
231
- buildContext
232
- });
225
+ fs.writeFileSync(
226
+ propertiesFilePath,
227
+ Buffer.from(propertiesFileSource, "utf8")
228
+ );
229
+ });
230
+ }
231
+
232
+ keycloak_static_resources: {
233
+ if (isAccountV3) {
234
+ break keycloak_static_resources;
235
+ }
236
+
237
+ await downloadKeycloakStaticResources({
238
+ keycloakVersion: (() => {
239
+ switch (themeType) {
240
+ case "account":
241
+ return lastKeycloakVersionWithAccountV1;
242
+ case "login":
243
+ return buildContext.loginThemeResourcesFromKeycloakVersion;
244
+ }
245
+ })(),
246
+ themeDirPath: pathResolve(pathJoin(themeTypeDirPath, "..")),
247
+ themeType,
248
+ buildContext
249
+ });
250
+ }
233
251
 
234
252
  fs.writeFileSync(
235
253
  pathJoin(themeTypeDirPath, "theme.properties"),
@@ -238,12 +256,13 @@ export async function generateResourcesForMainTheme(params: {
238
256
  `parent=${(() => {
239
257
  switch (themeType) {
240
258
  case "account":
241
- return accountV1ThemeName;
259
+ return isAccountV3 ? "base" : accountV1ThemeName;
242
260
  case "login":
243
261
  return "keycloak";
244
262
  }
245
263
  assert<Equals<typeof themeType, never>>(false);
246
264
  })()}`,
265
+ ...(isAccountV3 ? ["deprecatedMode=false"] : []),
247
266
  ...(buildContext.extraThemeProperties ?? []),
248
267
  ...buildContext.environmentVariables.map(
249
268
  ({ name, default: defaultValue }) =>
@@ -268,7 +287,15 @@ export async function generateResourcesForMainTheme(params: {
268
287
  });
269
288
  }
270
289
 
271
- if (buildContext.recordIsImplementedByThemeType.account) {
290
+ bring_in_account_v1: {
291
+ if (buildContext.doUseAccountV3) {
292
+ break bring_in_account_v1;
293
+ }
294
+
295
+ if (!buildContext.recordIsImplementedByThemeType.account) {
296
+ break bring_in_account_v1;
297
+ }
298
+
272
299
  await bringInAccountV1({
273
300
  resourcesDirPath,
274
301
  buildContext
@@ -34,10 +34,7 @@ export function readExtraPagesNames(params: {
34
34
  const rawSourceFile = fs.readFileSync(candidateFilPath).toString("utf8");
35
35
 
36
36
  extraPages.push(
37
- ...Array.from(
38
- rawSourceFile.matchAll(/["']([^.\s]+.ftl)["']:/g),
39
- m => (console.log(m), m[1])
40
- )
37
+ ...Array.from(rawSourceFile.matchAll(/["']([^.\s]+.ftl)["']:/g), m => m[1])
41
38
  );
42
39
  }
43
40
 
@@ -12,11 +12,12 @@ assert<BuildContext extends BuildContextLike ? true : false>();
12
12
  export function replaceImportsInCssCode(params: {
13
13
  cssCode: string;
14
14
  cssFileRelativeDirPath: string | undefined;
15
+ isAccountV3: boolean;
15
16
  buildContext: BuildContextLike;
16
17
  }): {
17
18
  fixedCssCode: string;
18
19
  } {
19
- const { cssCode, cssFileRelativeDirPath, buildContext } = params;
20
+ const { cssCode, cssFileRelativeDirPath, buildContext, isAccountV3 } = params;
20
21
 
21
22
  const fixedCssCode = cssCode.replace(
22
23
  /url\(["']?(\/[^/][^)"']+)["']?\)/g,
@@ -37,7 +38,7 @@ export function replaceImportsInCssCode(params: {
37
38
  break inline_style_in_html;
38
39
  }
39
40
 
40
- return `url(\${url.resourcesPath}/${basenameOfTheKeycloakifyResourcesDir}${assetFileAbsoluteUrlPathname})`;
41
+ return `url(\${${!isAccountV3 ? "url.resourcesPath" : "resourceUrl"}}/${basenameOfTheKeycloakifyResourcesDir}${assetFileAbsoluteUrlPathname})`;
41
42
  }
42
43
 
43
44
  const assetFileRelativeUrlPathname = posix.relative(
@@ -1,9 +1,9 @@
1
1
  export type KeycloakVersionRange =
2
- | KeycloakVersionRange.WithAccountTheme
3
- | KeycloakVersionRange.WithoutAccountTheme;
2
+ | KeycloakVersionRange.WithAccountV1Theme
3
+ | KeycloakVersionRange.WithoutAccountV1Theme;
4
4
 
5
5
  export namespace KeycloakVersionRange {
6
- export type WithoutAccountTheme = "21-and-below" | "22-and-above";
6
+ export type WithoutAccountV1Theme = "21-and-below" | "22-and-above";
7
7
 
8
- export type WithAccountTheme = "21-and-below" | "23" | "24" | "25-and-above";
8
+ export type WithAccountV1Theme = "21-and-below" | "23" | "24" | "25-and-above";
9
9
  }
@@ -63,6 +63,7 @@ export type BuildContext = {
63
63
  packageJsonDirPath: string;
64
64
  packageJsonScripts: Record<string, string>;
65
65
  };
66
+ doUseAccountV3: boolean;
66
67
  };
67
68
 
68
69
  export type BuildOptions = {
@@ -77,16 +78,17 @@ export type BuildOptions = {
77
78
  kcContextExclusionsFtl?: string;
78
79
  /** https://docs.keycloakify.dev/v/v10/targetting-specific-keycloak-versions */
79
80
  keycloakVersionTargets?: BuildOptions.KeycloakVersionTargets;
81
+ doUseAccountV3?: boolean;
80
82
  };
81
83
 
82
84
  export namespace BuildOptions {
83
85
  export type KeycloakVersionTargets =
84
86
  | ({ hasAccountTheme: true } & Record<
85
- KeycloakVersionRange.WithAccountTheme,
87
+ KeycloakVersionRange.WithAccountV1Theme,
86
88
  string | boolean
87
89
  >)
88
90
  | ({ hasAccountTheme: false } & Record<
89
- KeycloakVersionRange.WithoutAccountTheme,
91
+ KeycloakVersionRange.WithoutAccountV1Theme,
90
92
  string | boolean
91
93
  >);
92
94
  }
@@ -229,6 +231,7 @@ export function getBuildContext(params: {
229
231
  projectBuildDirPath?: string;
230
232
  staticDirPathInProjectBuildDirPath?: string;
231
233
  publicDirPath?: string;
234
+ doUseAccountV3?: boolean;
232
235
  };
233
236
 
234
237
  type ParsedPackageJson = {
@@ -297,7 +300,8 @@ export function getBuildContext(params: {
297
300
 
298
301
  return zKeycloakVersionTargets;
299
302
  })()
300
- ).optional()
303
+ ).optional(),
304
+ doUseAccountV3: z.boolean().optional()
301
305
  });
302
306
 
303
307
  {
@@ -386,6 +390,8 @@ export function getBuildContext(params: {
386
390
 
387
391
  const bundler = resolvedViteConfig !== undefined ? "vite" : "webpack";
388
392
 
393
+ const doUseAccountV3 = buildOptions.doUseAccountV3 ?? false;
394
+
389
395
  return {
390
396
  bundler:
391
397
  resolvedViteConfig !== undefined
@@ -606,10 +612,10 @@ export function getBuildContext(params: {
606
612
  }
607
613
 
608
614
  const keycloakVersionRange: KeycloakVersionRange = (() => {
609
- const doesImplementAccountTheme =
610
- recordIsImplementedByThemeType.account;
615
+ const doesImplementAccountV1Theme =
616
+ !doUseAccountV3 && recordIsImplementedByThemeType.account;
611
617
 
612
- if (doesImplementAccountTheme) {
618
+ if (doesImplementAccountV1Theme) {
613
619
  const keycloakVersionRange = (() => {
614
620
  if (buildForKeycloakMajorVersionNumber <= 21) {
615
621
  return "21-and-below" as const;
@@ -631,7 +637,7 @@ export function getBuildContext(params: {
631
637
  assert<
632
638
  Equals<
633
639
  typeof keycloakVersionRange,
634
- KeycloakVersionRange.WithAccountTheme
640
+ KeycloakVersionRange.WithAccountV1Theme
635
641
  >
636
642
  >();
637
643
 
@@ -648,7 +654,7 @@ export function getBuildContext(params: {
648
654
  assert<
649
655
  Equals<
650
656
  typeof keycloakVersionRange,
651
- KeycloakVersionRange.WithoutAccountTheme
657
+ KeycloakVersionRange.WithoutAccountV1Theme
652
658
  >
653
659
  >();
654
660
 
@@ -696,7 +702,7 @@ export function getBuildContext(params: {
696
702
  const jarTargets_default = (() => {
697
703
  const jarTargets: BuildContext["jarTargets"] = [];
698
704
 
699
- if (recordIsImplementedByThemeType.account) {
705
+ if (!doUseAccountV3 && recordIsImplementedByThemeType.account) {
700
706
  for (const keycloakVersionRange of [
701
707
  "21-and-below",
702
708
  "23",
@@ -706,7 +712,7 @@ export function getBuildContext(params: {
706
712
  assert<
707
713
  Equals<
708
714
  typeof keycloakVersionRange,
709
- KeycloakVersionRange.WithAccountTheme
715
+ KeycloakVersionRange.WithAccountV1Theme
710
716
  >
711
717
  >(true);
712
718
  jarTargets.push({
@@ -723,7 +729,7 @@ export function getBuildContext(params: {
723
729
  assert<
724
730
  Equals<
725
731
  typeof keycloakVersionRange,
726
- KeycloakVersionRange.WithoutAccountTheme
732
+ KeycloakVersionRange.WithoutAccountV1Theme
727
733
  >
728
734
  >(true);
729
735
  jarTargets.push({
@@ -742,8 +748,9 @@ export function getBuildContext(params: {
742
748
  }
743
749
 
744
750
  if (
745
- buildOptions.keycloakVersionTargets.hasAccountTheme !==
746
- recordIsImplementedByThemeType.account
751
+ buildOptions.keycloakVersionTargets.hasAccountTheme !== doUseAccountV3
752
+ ? false
753
+ : recordIsImplementedByThemeType.account
747
754
  ) {
748
755
  console.log(
749
756
  chalk.red(
@@ -863,6 +870,7 @@ export function getBuildContext(params: {
863
870
  }
864
871
 
865
872
  return jarTargets;
866
- })()
873
+ })(),
874
+ doUseAccountV3
867
875
  };
868
876
  }
@@ -4109,7 +4109,7 @@ var __rest = (undefined && undefined.__rest) || function (s, e) {
4109
4109
 
4110
4110
 
4111
4111
  function getBuildContext(params) {
4112
- var _a, _b, _c, _d, _e, _f;
4112
+ var _a, _b, _c, _d, _e, _f, _g;
4113
4113
  const { cliCommandOptions } = params;
4114
4114
  const projectDirPath = cliCommandOptions.projectDirPath !== undefined
4115
4115
  ? getAbsoluteAndInOsFormatPath({
@@ -4240,7 +4240,8 @@ function getBuildContext(params) {
4240
4240
  (0,assert.assert)();
4241
4241
  }
4242
4242
  return zKeycloakVersionTargets;
4243
- })()).optional()
4243
+ })()).optional(),
4244
+ doUseAccountV3: z.boolean().optional()
4244
4245
  });
4245
4246
  {
4246
4247
  (0,assert.assert)();
@@ -4298,6 +4299,7 @@ function getBuildContext(params) {
4298
4299
  return (0,external_path_.join)(projectDirPath, resolvedViteConfig.buildDir);
4299
4300
  })();
4300
4301
  const bundler = resolvedViteConfig !== undefined ? "vite" : "webpack";
4302
+ const doUseAccountV3 = (_a = buildOptions.doUseAccountV3) !== null && _a !== void 0 ? _a : false;
4301
4303
  return {
4302
4304
  bundler: resolvedViteConfig !== undefined
4303
4305
  ? { type: "vite" }
@@ -4312,7 +4314,7 @@ function getBuildContext(params) {
4312
4314
  packageJsonScripts: scripts !== null && scripts !== void 0 ? scripts : {}
4313
4315
  };
4314
4316
  })(),
4315
- themeVersion: (_b = (_a = buildOptions.themeVersion) !== null && _a !== void 0 ? _a : parsedPackageJson.version) !== null && _b !== void 0 ? _b : "0.0.0",
4317
+ themeVersion: (_c = (_b = buildOptions.themeVersion) !== null && _b !== void 0 ? _b : parsedPackageJson.version) !== null && _c !== void 0 ? _c : "0.0.0",
4316
4318
  themeNames,
4317
4319
  extraThemeProperties: buildOptions.extraThemeProperties,
4318
4320
  groupId: (() => {
@@ -4323,8 +4325,8 @@ function getBuildContext(params) {
4323
4325
  : (_e = (_d = (_c = (0,external_url_.parse)(parsedPackageJson.homepage)
4324
4326
  .host) === null || _c === void 0 ? void 0 : _c.replace(/:[0-9]+$/, "")) === null || _d === void 0 ? void 0 : _d.split(".").reverse().join(".")) !== null && _e !== void 0 ? _e : fallbackGroupId) + ".keycloak");
4325
4327
  })(),
4326
- artifactId: (_d = (_c = process.env.KEYCLOAKIFY_ARTIFACT_ID) !== null && _c !== void 0 ? _c : buildOptions.artifactId) !== null && _d !== void 0 ? _d : `${themeNames[0]}-keycloak-theme`,
4327
- loginThemeResourcesFromKeycloakVersion: (_e = buildOptions.loginThemeResourcesFromKeycloakVersion) !== null && _e !== void 0 ? _e : "24.0.4",
4328
+ artifactId: (_e = (_d = process.env.KEYCLOAKIFY_ARTIFACT_ID) !== null && _d !== void 0 ? _d : buildOptions.artifactId) !== null && _e !== void 0 ? _e : `${themeNames[0]}-keycloak-theme`,
4329
+ loginThemeResourcesFromKeycloakVersion: (_f = buildOptions.loginThemeResourcesFromKeycloakVersion) !== null && _f !== void 0 ? _f : "24.0.4",
4328
4330
  projectDirPath,
4329
4331
  projectBuildDirPath,
4330
4332
  keycloakifyBuildDirPath: (() => {
@@ -4417,7 +4419,7 @@ function getBuildContext(params) {
4417
4419
  }
4418
4420
  return buildOptions.kcContextExclusionsFtl;
4419
4421
  })(),
4420
- environmentVariables: (_f = buildOptions.environmentVariables) !== null && _f !== void 0 ? _f : [],
4422
+ environmentVariables: (_g = buildOptions.environmentVariables) !== null && _g !== void 0 ? _g : [],
4421
4423
  recordIsImplementedByThemeType,
4422
4424
  themeSrcDirPath,
4423
4425
  fetchOptions: getProxyFetchOptions({
@@ -4455,8 +4457,8 @@ function getBuildContext(params) {
4455
4457
  break build_for_specific_keycloak_major_version;
4456
4458
  }
4457
4459
  const keycloakVersionRange = (() => {
4458
- const doesImplementAccountTheme = recordIsImplementedByThemeType.account;
4459
- if (doesImplementAccountTheme) {
4460
+ const doesImplementAccountV1Theme = !doUseAccountV3 && recordIsImplementedByThemeType.account;
4461
+ if (doesImplementAccountV1Theme) {
4460
4462
  const keycloakVersionRange = (() => {
4461
4463
  if (buildForKeycloakMajorVersionNumber <= 21) {
4462
4464
  return "21-and-below";
@@ -4511,7 +4513,7 @@ function getBuildContext(params) {
4511
4513
  }
4512
4514
  const jarTargets_default = (() => {
4513
4515
  const jarTargets = [];
4514
- if (recordIsImplementedByThemeType.account) {
4516
+ if (!doUseAccountV3 && recordIsImplementedByThemeType.account) {
4515
4517
  for (const keycloakVersionRange of [
4516
4518
  "21-and-below",
4517
4519
  "23",
@@ -4542,8 +4544,9 @@ function getBuildContext(params) {
4542
4544
  if (buildOptions.keycloakVersionTargets === undefined) {
4543
4545
  return jarTargets_default;
4544
4546
  }
4545
- if (buildOptions.keycloakVersionTargets.hasAccountTheme !==
4546
- recordIsImplementedByThemeType.account) {
4547
+ if (buildOptions.keycloakVersionTargets.hasAccountTheme !== doUseAccountV3
4548
+ ? false
4549
+ : recordIsImplementedByThemeType.account) {
4547
4550
  console.log(source_default().red((() => {
4548
4551
  const { keycloakVersionTargets } = buildOptions;
4549
4552
  let message = `Bad ${(0,symToStr/* symToStr */.r)({ keycloakVersionTargets })} configuration.\n`;
@@ -4618,7 +4621,8 @@ function getBuildContext(params) {
4618
4621
  process.exit(1);
4619
4622
  }
4620
4623
  return jarTargets;
4621
- })()
4624
+ })(),
4625
+ doUseAccountV3
4622
4626
  };
4623
4627
  }
4624
4628
  //# sourceMappingURL=buildContext.js.map