keycloakify 11.8.46 → 11.8.47-rc.2

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.
Files changed (43) hide show
  1. package/bin/254.index.js +283 -0
  2. package/bin/30.index.js +25 -0
  3. package/bin/{864.index.js → 309.index.js} +6944 -28439
  4. package/bin/311.index.js +198 -0
  5. package/bin/{313.index.js → 355.index.js} +148 -172
  6. package/bin/{84.index.js → 502.index.js} +151 -103
  7. package/bin/626.index.js +216 -0
  8. package/bin/656.index.js +274 -0
  9. package/bin/675.index.js +177 -0
  10. package/bin/69.index.js +1 -1
  11. package/bin/762.index.js +1475 -0
  12. package/bin/780.index.js +4 -2
  13. package/bin/786.index.js +115 -0
  14. package/bin/895.index.js +21501 -0
  15. package/bin/{618.index.js → 932.index.js} +117 -163
  16. package/bin/949.index.js +1 -1
  17. package/bin/97.index.js +539 -4
  18. package/bin/init/index.d.ts +1 -0
  19. package/bin/init/init.d.ts +3 -0
  20. package/bin/init/setupEslint.d.ts +4 -0
  21. package/bin/init/setupVitePluginIfNeeded.d.ts +4 -0
  22. package/bin/initialize-login-theme.d.ts +4 -0
  23. package/bin/main.js +42 -49
  24. package/bin/shared/customHandler.d.ts +1 -1
  25. package/bin/shared/customHandler.js.map +1 -1
  26. package/package.json +23 -7
  27. package/src/bin/init/index.ts +1 -0
  28. package/src/bin/init/init.ts +354 -0
  29. package/src/bin/init/setupEslint.ts +80 -0
  30. package/src/bin/init/setupVitePluginIfNeeded.ts +143 -0
  31. package/src/bin/initialize-account-theme/initialize-account-theme.ts +4 -0
  32. package/src/bin/initialize-login-theme.ts +323 -0
  33. package/src/bin/main.ts +14 -0
  34. package/src/bin/shared/buildContext.ts +28 -59
  35. package/src/bin/shared/customHandler.ts +3 -1
  36. package/src/bin/shared/initializeSpa.ts +28 -0
  37. package/src/bin/sync-extensions/extensionModuleMeta.ts +89 -73
  38. package/src/bin/sync-extensions/managedGitignoreFiles.ts +32 -2
  39. package/src/bin/tools/fetchProxyOptions.ts +2 -1
  40. package/src/bin/tools/npmInstall.ts +13 -6
  41. package/vite-plugin/index.js +24 -43
  42. package/bin/433.index.js +0 -140
  43. package/bin/698.index.js +0 -298
@@ -1,8 +1,60 @@
1
1
  "use strict";
2
- exports.id = 84;
3
- exports.ids = [84];
2
+ exports.id = 502;
3
+ exports.ids = [502];
4
4
  exports.modules = {
5
5
 
6
+ /***/ 80339:
7
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
8
+
9
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
10
+ /* harmony export */ "N": () => (/* binding */ addSyncExtensionsToPostinstallScript)
11
+ /* harmony export */ });
12
+ /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71017);
13
+ /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);
14
+ /* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(29041);
15
+
16
+
17
+ (0,tsafe_assert__WEBPACK_IMPORTED_MODULE_1__/* .assert */ .h)();
18
+ function addSyncExtensionsToPostinstallScript(params) {
19
+ var _a;
20
+ const { parsedPackageJson, buildContext } = params;
21
+ const cmd_base = "keycloakify sync-extensions";
22
+ const projectCliOptionValue = (() => {
23
+ const packageJsonDirPath = (0,path__WEBPACK_IMPORTED_MODULE_0__.dirname)(buildContext.packageJsonFilePath);
24
+ const relativePath = (0,path__WEBPACK_IMPORTED_MODULE_0__.relative)(packageJsonDirPath, buildContext.projectDirPath);
25
+ if (relativePath === "") {
26
+ return undefined;
27
+ }
28
+ return relativePath.split(path__WEBPACK_IMPORTED_MODULE_0__.sep).join("/");
29
+ })();
30
+ const generateCmd = (params) => {
31
+ const { cmd_preexisting } = params;
32
+ let cmd = cmd_preexisting === undefined ? "" : `${cmd_preexisting} && `;
33
+ cmd += cmd_base;
34
+ if (projectCliOptionValue !== undefined) {
35
+ cmd += ` -p ${projectCliOptionValue}`;
36
+ }
37
+ return cmd;
38
+ };
39
+ {
40
+ const scripts = ((_a = parsedPackageJson.scripts) !== null && _a !== void 0 ? _a : (parsedPackageJson.scripts = {}));
41
+ for (const scriptName of ["postinstall", "prepare"]) {
42
+ const cmd_preexisting = scripts[scriptName];
43
+ if (cmd_preexisting === undefined) {
44
+ continue;
45
+ }
46
+ if (!cmd_preexisting.includes(cmd_base)) {
47
+ scripts[scriptName] = generateCmd({ cmd_preexisting });
48
+ return;
49
+ }
50
+ }
51
+ }
52
+ parsedPackageJson.scripts = Object.assign({ postinstall: generateCmd({ cmd_preexisting: undefined }) }, parsedPackageJson.scripts);
53
+ }
54
+ //# sourceMappingURL=addSyncExtensionsToPostinstallScript.js.map
55
+
56
+ /***/ }),
57
+
6
58
  /***/ 12171:
7
59
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
8
60
 
@@ -247,20 +299,22 @@ async function npmInstall(params) {
247
299
  async function runPackageManagerInstall(params) {
248
300
  const { packageManagerBinName, cwd } = params;
249
301
  const dCompleted = new Deferred.Deferred();
250
- const child = external_child_process_.spawn(packageManagerBinName, ["install"], {
302
+ const child = external_child_process_.spawn(packageManagerBinName, ["install", ...(packageManagerBinName !== "npm" ? [] : ["--force"])], {
251
303
  cwd,
252
304
  env: process.env,
253
305
  shell: true
254
306
  });
255
307
  child.stdout.on("data", data => process.stdout.write(data));
308
+ let errorLog = "";
256
309
  child.stderr.on("data", data => {
257
310
  if (data.toString("utf8").includes("peer dependency")) {
258
311
  return;
259
312
  }
260
- process.stderr.write(data);
313
+ errorLog += data.toString("utf8");
261
314
  });
262
315
  child.on("exit", code => {
263
316
  if (code !== 0) {
317
+ console.log(errorLog);
264
318
  dCompleted.reject(new Error(`Failed with code ${code}`));
265
319
  return;
266
320
  }
@@ -504,118 +558,112 @@ async function installWithoutBreakingLinks(params) {
504
558
 
505
559
  /***/ }),
506
560
 
507
- /***/ 48433:
508
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
509
-
510
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
511
- /* harmony export */ "LG": () => (/* binding */ getPrettier),
512
- /* harmony export */ "MT": () => (/* binding */ getIsPrettierAvailable),
513
- /* harmony export */ "eY": () => (/* binding */ runPrettier)
514
- /* harmony export */ });
515
- /* harmony import */ var _nodeModulesBinDirPath__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(73776);
516
- /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(71017);
517
- /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_1__);
518
- /* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(73292);
519
- /* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(fs_promises__WEBPACK_IMPORTED_MODULE_2__);
520
- /* harmony import */ var tsafe_id__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(38469);
521
- /* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29041);
522
- /* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(78818);
523
- /* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(chalk__WEBPACK_IMPORTED_MODULE_4__);
524
- /* harmony import */ var crypto__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(6113);
525
- /* harmony import */ var crypto__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(crypto__WEBPACK_IMPORTED_MODULE_5__);
526
- /* harmony import */ var tsafe_symToStr__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(76030);
527
- /* harmony import */ var _readThisNpmPackageVersion__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(64795);
528
- /* module decorator */ module = __webpack_require__.hmd(module);
529
-
530
-
531
-
561
+ /***/ 50689:
562
+ /***/ (function(__unused_webpack_module, exports, __webpack_require__) {
532
563
 
533
564
 
565
+ var __extends = (this && this.__extends) || (function () {
566
+ var extendStatics = function (d, b) {
567
+ extendStatics = Object.setPrototypeOf ||
568
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
569
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
570
+ return extendStatics(d, b);
571
+ };
572
+ return function (d, b) {
573
+ if (typeof b !== "function" && b !== null)
574
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
575
+ extendStatics(d, b);
576
+ function __() { this.constructor = d; }
577
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
578
+ };
579
+ })();
580
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
581
+ exports.VoidDeferred = exports.Deferred = void 0;
582
+ var overwriteReadonlyProp_1 = __webpack_require__(47803);
583
+ var Deferred = /** @class */ (function () {
584
+ function Deferred() {
585
+ var _this_1 = this;
586
+ this.isPending = true;
587
+ var resolve;
588
+ var reject;
589
+ this.pr = new Promise(function (resolve_, reject_) {
590
+ resolve = function (value) {
591
+ (0, overwriteReadonlyProp_1.overwriteReadonlyProp)(_this_1, "isPending", false);
592
+ resolve_(value);
593
+ };
594
+ reject = function (error) {
595
+ (0, overwriteReadonlyProp_1.overwriteReadonlyProp)(_this_1, "isPending", false);
596
+ reject_(error);
597
+ };
598
+ });
599
+ this.resolve = resolve;
600
+ this.reject = reject;
601
+ }
602
+ return Deferred;
603
+ }());
604
+ exports.Deferred = Deferred;
605
+ var VoidDeferred = /** @class */ (function (_super) {
606
+ __extends(VoidDeferred, _super);
607
+ function VoidDeferred() {
608
+ return _super !== null && _super.apply(this, arguments) || this;
609
+ }
610
+ return VoidDeferred;
611
+ }(Deferred));
612
+ exports.VoidDeferred = VoidDeferred;
613
+ //# sourceMappingURL=Deferred.js.map
534
614
 
615
+ /***/ }),
535
616
 
617
+ /***/ 47803:
618
+ /***/ (function(__unused_webpack_module, exports) {
536
619
 
537
620
 
538
- getIsPrettierAvailable.cache = (0,tsafe_id__WEBPACK_IMPORTED_MODULE_7__.id)(undefined);
539
- async function getIsPrettierAvailable() {
540
- var _a;
541
- if (getIsPrettierAvailable.cache !== undefined) {
542
- return getIsPrettierAvailable.cache;
543
- }
544
- const nodeModulesBinDirPath = (0,_nodeModulesBinDirPath__WEBPACK_IMPORTED_MODULE_0__/* .getNodeModulesBinDirPath */ .K)({
545
- packageJsonFilePath: undefined
546
- });
547
- const prettierBinPath = (0,path__WEBPACK_IMPORTED_MODULE_1__.join)(nodeModulesBinDirPath, "prettier");
548
- const stats = await fs_promises__WEBPACK_IMPORTED_MODULE_2__.stat(prettierBinPath).catch(() => undefined);
549
- const isPrettierAvailable = (_a = stats === null || stats === void 0 ? void 0 : stats.isFile()) !== null && _a !== void 0 ? _a : false;
550
- getIsPrettierAvailable.cache = isPrettierAvailable;
551
- return isPrettierAvailable;
552
- }
553
- getPrettier.cache = (0,tsafe_id__WEBPACK_IMPORTED_MODULE_7__.id)(undefined);
554
- async function getPrettier() {
555
- (0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h)(getIsPrettierAvailable());
556
- if (getPrettier.cache !== undefined) {
557
- return getPrettier.cache;
558
- }
559
- let prettier = (0,tsafe_id__WEBPACK_IMPORTED_MODULE_7__.id)(undefined);
560
- import_prettier: {
561
- // NOTE: When module is linked we want to make sure we import the correct version
562
- // of prettier, that is the one of the project, not the one of this repo.
563
- // So we do a sketchy eval to bypass ncc.
564
- // We make sure to only do that when linking, otherwise we import properly.
565
- if ((0,_readThisNpmPackageVersion__WEBPACK_IMPORTED_MODULE_6__/* .readThisNpmPackageVersion */ .K)().startsWith("0.0.0")) {
566
- const prettierDirPath = (0,path__WEBPACK_IMPORTED_MODULE_1__.resolve)((0,path__WEBPACK_IMPORTED_MODULE_1__.join)((0,_nodeModulesBinDirPath__WEBPACK_IMPORTED_MODULE_0__/* .getNodeModulesBinDirPath */ .K)({ packageJsonFilePath: undefined }), "..", "prettier"));
567
- const isCJS = true && module.exports;
568
- if (isCJS) {
569
- eval(`${(0,tsafe_symToStr__WEBPACK_IMPORTED_MODULE_8__/* .symToStr */ .r)({ prettier })} = require("${prettierDirPath}")`);
570
- }
571
- else {
572
- prettier = await new Promise(_resolve => {
573
- eval(`import("file:///${(0,path__WEBPACK_IMPORTED_MODULE_1__.join)(prettierDirPath, "index.mjs").replace(/\\/g, "/")}").then(prettier => _resolve(prettier))`);
574
- });
575
- }
576
- (0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h)(!(0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__.is)(prettier));
577
- break import_prettier;
621
+ var __assign = (this && this.__assign) || function () {
622
+ __assign = Object.assign || function(t) {
623
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
624
+ s = arguments[i];
625
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
626
+ t[p] = s[p];
578
627
  }
579
- prettier = await Promise.resolve(/* import() */).then(__webpack_require__.t.bind(__webpack_require__, 79421, 23));
628
+ return t;
629
+ };
630
+ return __assign.apply(this, arguments);
631
+ };
632
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
633
+ exports.overwriteReadonlyProp = void 0;
634
+ /**
635
+ * Assign a value to a property even if the object is freezed or if the property is not writable
636
+ * Throw if the assignation fail ( for example if the property is non configurable write: false )
637
+ * */
638
+ var overwriteReadonlyProp = function (obj, propertyName, value) {
639
+ try {
640
+ obj[propertyName] = value;
580
641
  }
581
- const configHash = await (async () => {
582
- const configFilePath = await prettier.resolveConfigFile((0,path__WEBPACK_IMPORTED_MODULE_1__.join)((0,_nodeModulesBinDirPath__WEBPACK_IMPORTED_MODULE_0__/* .getNodeModulesBinDirPath */ .K)({ packageJsonFilePath: undefined }), "..", ".."));
583
- if (configFilePath === null) {
584
- return "";
585
- }
586
- const data = await fs_promises__WEBPACK_IMPORTED_MODULE_2__.readFile(configFilePath);
587
- return crypto__WEBPACK_IMPORTED_MODULE_5__.createHash("sha256").update(data).digest("hex");
588
- })();
589
- const prettierAndConfig = {
590
- prettier,
591
- configHash
642
+ catch (_a) { }
643
+ if (obj[propertyName] === value) {
644
+ return value;
645
+ }
646
+ var errorDefineProperty = undefined;
647
+ var propertyDescriptor = Object.getOwnPropertyDescriptor(obj, propertyName) || {
648
+ "enumerable": true,
649
+ "configurable": true,
592
650
  };
593
- getPrettier.cache = prettierAndConfig;
594
- return prettierAndConfig;
595
- }
596
- async function runPrettier(params) {
597
- const { sourceCode, filePath } = params;
598
- let formattedSourceCode;
651
+ if (!!propertyDescriptor.get) {
652
+ throw new Error("Probably a wrong ides to overwrite ".concat(String(propertyName), " getter"));
653
+ }
599
654
  try {
600
- const { prettier } = await getPrettier();
601
- const { ignored, inferredParser } = await prettier.getFileInfo(filePath, {
602
- resolveConfig: true
603
- });
604
- if (ignored || inferredParser === null) {
605
- return sourceCode;
606
- }
607
- const config = await prettier.resolveConfig(filePath);
608
- formattedSourceCode = await prettier.format(typeof sourceCode === "string" ? sourceCode : sourceCode.toString("utf8"), Object.assign(Object.assign({}, config), { filePath, parser: inferredParser }));
655
+ Object.defineProperty(obj, propertyName, __assign(__assign({}, propertyDescriptor), { value: value }));
609
656
  }
610
657
  catch (error) {
611
- console.log(chalk__WEBPACK_IMPORTED_MODULE_4___default().red(`You probably need to upgrade the version of prettier in your project`));
612
- throw error;
658
+ errorDefineProperty = error;
613
659
  }
614
- return typeof sourceCode === "string"
615
- ? formattedSourceCode
616
- : Buffer.from(formattedSourceCode, "utf8");
617
- }
618
- //# sourceMappingURL=runPrettier.js.map
660
+ if (obj[propertyName] !== value) {
661
+ throw errorDefineProperty || new Error("Can't assign");
662
+ }
663
+ return value;
664
+ };
665
+ exports.overwriteReadonlyProp = overwriteReadonlyProp;
666
+ //# sourceMappingURL=overwriteReadonlyProp.js.map
619
667
 
620
668
  /***/ })
621
669
 
@@ -0,0 +1,216 @@
1
+ "use strict";
2
+ exports.id = 626;
3
+ exports.ids = [626];
4
+ exports.modules = {
5
+
6
+ /***/ 60355:
7
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
8
+
9
+ __webpack_require__.r(__webpack_exports__);
10
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
11
+ /* harmony export */ "command": () => (/* binding */ command)
12
+ /* harmony export */ });
13
+ /* harmony import */ var _shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(72138);
14
+ /* harmony import */ var _shared_initializeSpa__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(98656);
15
+ /* harmony import */ var _shared_exitIfUncommittedChanges__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(22058);
16
+
17
+
18
+
19
+ async function command(params) {
20
+ const { buildContext } = params;
21
+ const { hasBeenHandled } = await (0,_shared_customHandler_delegate__WEBPACK_IMPORTED_MODULE_0__/* .maybeDelegateCommandToCustomHandler */ .q)({
22
+ commandName: "initialize-admin-theme",
23
+ buildContext
24
+ });
25
+ if (hasBeenHandled) {
26
+ return;
27
+ }
28
+ (0,_shared_exitIfUncommittedChanges__WEBPACK_IMPORTED_MODULE_2__/* .exitIfUncommittedChanges */ .l)({
29
+ projectDirPath: buildContext.projectDirPath
30
+ });
31
+ await (0,_shared_initializeSpa__WEBPACK_IMPORTED_MODULE_1__.initializeSpa)({
32
+ themeType: "admin",
33
+ buildContext
34
+ });
35
+ }
36
+ //# sourceMappingURL=initialize-admin-theme.js.map
37
+
38
+ /***/ }),
39
+
40
+ /***/ 22058:
41
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
42
+
43
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
44
+ /* harmony export */ "l": () => (/* binding */ exitIfUncommittedChanges)
45
+ /* harmony export */ });
46
+ /* harmony import */ var child_process__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(32081);
47
+ /* harmony import */ var child_process__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(child_process__WEBPACK_IMPORTED_MODULE_0__);
48
+ /* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(78818);
49
+ /* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(chalk__WEBPACK_IMPORTED_MODULE_1__);
50
+
51
+
52
+ function exitIfUncommittedChanges(params) {
53
+ const { projectDirPath } = params;
54
+ let hasUncommittedChanges = undefined;
55
+ try {
56
+ hasUncommittedChanges =
57
+ child_process__WEBPACK_IMPORTED_MODULE_0___default().execSync(`git status --porcelain`, {
58
+ cwd: projectDirPath
59
+ })
60
+ .toString()
61
+ .trim() !== "";
62
+ }
63
+ catch (_a) {
64
+ // Probably not a git repository
65
+ return;
66
+ }
67
+ if (!hasUncommittedChanges) {
68
+ return;
69
+ }
70
+ console.warn([
71
+ chalk__WEBPACK_IMPORTED_MODULE_1___default().red("Please commit or stash your changes before running this command.\n"),
72
+ "This command will modify your project's files so it's better to have a clean working directory",
73
+ "so that you can easily see what has been changed and revert if needed."
74
+ ].join(" "));
75
+ process.exit(-1);
76
+ }
77
+ //# sourceMappingURL=exitIfUncommittedChanges.js.map
78
+
79
+ /***/ }),
80
+
81
+ /***/ 98656:
82
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
83
+
84
+ __webpack_require__.r(__webpack_exports__);
85
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
86
+ /* harmony export */ "initializeSpa": () => (/* binding */ initializeSpa)
87
+ /* harmony export */ });
88
+ /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71017);
89
+ /* harmony import */ var path__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(path__WEBPACK_IMPORTED_MODULE_0__);
90
+ /* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(57147);
91
+ /* harmony import */ var fs__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(fs__WEBPACK_IMPORTED_MODULE_1__);
92
+ /* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(73292);
93
+ /* harmony import */ var fs_promises__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(fs_promises__WEBPACK_IMPORTED_MODULE_2__);
94
+ /* harmony import */ var tsafe_assert__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(29041);
95
+ /* harmony import */ var tsafe_id__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(38469);
96
+ /* harmony import */ var _addSyncExtensionsToPostinstallScript__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(80339);
97
+ /* harmony import */ var _tools_runPrettier__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(48433);
98
+ /* harmony import */ var _tools_npmInstall__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(63046);
99
+ /* harmony import */ var child_process__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(32081);
100
+ /* harmony import */ var child_process__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(child_process__WEBPACK_IMPORTED_MODULE_7__);
101
+ /* harmony import */ var zod__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(52300);
102
+ /* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(78818);
103
+ /* harmony import */ var chalk__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(chalk__WEBPACK_IMPORTED_MODULE_8__);
104
+ /* harmony import */ var _tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(43765);
105
+
106
+
107
+
108
+
109
+
110
+
111
+
112
+
113
+
114
+
115
+
116
+
117
+ (0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h)();
118
+ async function initializeSpa(params) {
119
+ var _a;
120
+ const { themeType, buildContext } = params;
121
+ {
122
+ const themeTypeSrcDirPath = (0,path__WEBPACK_IMPORTED_MODULE_0__.join)(buildContext.themeSrcDirPath, themeType);
123
+ if (fs__WEBPACK_IMPORTED_MODULE_1__.existsSync(themeTypeSrcDirPath) &&
124
+ fs__WEBPACK_IMPORTED_MODULE_1__.readdirSync(themeTypeSrcDirPath).length > 0) {
125
+ console.warn(chalk__WEBPACK_IMPORTED_MODULE_8___default().red(`There is already a ${(0,path__WEBPACK_IMPORTED_MODULE_0__.relative)(process.cwd(), themeTypeSrcDirPath)} directory in your project. Aborting.`));
126
+ process.exit(-1);
127
+ }
128
+ }
129
+ const parsedPackageJson = (() => {
130
+ const zParsedPackageJson = (() => {
131
+ const zTargetType = zod__WEBPACK_IMPORTED_MODULE_10__.z.object({
132
+ scripts: zod__WEBPACK_IMPORTED_MODULE_10__.z.record(zod__WEBPACK_IMPORTED_MODULE_10__.z.union([zod__WEBPACK_IMPORTED_MODULE_10__.z.string(), zod__WEBPACK_IMPORTED_MODULE_10__.z.undefined()])).optional(),
133
+ dependencies: zod__WEBPACK_IMPORTED_MODULE_10__.z.record(zod__WEBPACK_IMPORTED_MODULE_10__.z.union([zod__WEBPACK_IMPORTED_MODULE_10__.z.string(), zod__WEBPACK_IMPORTED_MODULE_10__.z.undefined()])).optional(),
134
+ devDependencies: zod__WEBPACK_IMPORTED_MODULE_10__.z.record(zod__WEBPACK_IMPORTED_MODULE_10__.z.union([zod__WEBPACK_IMPORTED_MODULE_10__.z.string(), zod__WEBPACK_IMPORTED_MODULE_10__.z.undefined()])).optional()
135
+ });
136
+ tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h;
137
+ return (0,tsafe_id__WEBPACK_IMPORTED_MODULE_11__.id)(zTargetType);
138
+ })();
139
+ const parsedPackageJson = JSON.parse(fs__WEBPACK_IMPORTED_MODULE_1__.readFileSync(buildContext.packageJsonFilePath).toString("utf8"));
140
+ zParsedPackageJson.parse(parsedPackageJson);
141
+ (0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h)((0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__.is)(parsedPackageJson));
142
+ return parsedPackageJson;
143
+ })();
144
+ (0,_addSyncExtensionsToPostinstallScript__WEBPACK_IMPORTED_MODULE_4__/* .addSyncExtensionsToPostinstallScript */ .N)({
145
+ parsedPackageJson,
146
+ buildContext
147
+ });
148
+ await disableVerbatimModuleSyntax({
149
+ projectDirPath: buildContext.projectDirPath
150
+ });
151
+ const uiSharedMajor = (() => {
152
+ const dependencies = Object.assign(Object.assign({}, parsedPackageJson.devDependencies), parsedPackageJson.dependencies);
153
+ const version = dependencies["@keycloakify/keycloak-ui-shared"];
154
+ if (version === undefined) {
155
+ return undefined;
156
+ }
157
+ const match = version.match(/^[^~]?(\d+)\./);
158
+ if (match === null) {
159
+ return undefined;
160
+ }
161
+ return match[1];
162
+ })();
163
+ const moduleName = `@keycloakify/keycloak-${themeType}-ui`;
164
+ const version = (() => {
165
+ const cmdOutput = child_process__WEBPACK_IMPORTED_MODULE_7__.execSync(`npm show ${moduleName} versions --json`)
166
+ .toString("utf8")
167
+ .trim();
168
+ const versions = JSON.parse(cmdOutput);
169
+ // NOTE: Bug in some older npm versions
170
+ if (typeof versions === "string") {
171
+ return [versions];
172
+ }
173
+ return versions;
174
+ })()
175
+ .reverse()
176
+ .filter(version => !version.includes("-"))
177
+ .find(version => uiSharedMajor === undefined ? true : version.startsWith(`${uiSharedMajor}.`));
178
+ (0,tsafe_assert__WEBPACK_IMPORTED_MODULE_3__/* .assert */ .h)(version !== undefined);
179
+ ((_a = parsedPackageJson.dependencies) !== null && _a !== void 0 ? _a : (parsedPackageJson.dependencies = {}))[moduleName] = `~${version}`;
180
+ if (parsedPackageJson.devDependencies !== undefined) {
181
+ delete parsedPackageJson.devDependencies[moduleName];
182
+ }
183
+ {
184
+ let sourceCode = JSON.stringify(parsedPackageJson, undefined, 2);
185
+ if (await (0,_tools_runPrettier__WEBPACK_IMPORTED_MODULE_5__/* .getIsPrettierAvailable */ .MT)()) {
186
+ sourceCode = await (0,_tools_runPrettier__WEBPACK_IMPORTED_MODULE_5__/* .runPrettier */ .eY)({
187
+ sourceCode,
188
+ filePath: buildContext.packageJsonFilePath
189
+ });
190
+ }
191
+ fs__WEBPACK_IMPORTED_MODULE_1__.writeFileSync(buildContext.packageJsonFilePath, Buffer.from(sourceCode, "utf8"));
192
+ }
193
+ await (0,_tools_npmInstall__WEBPACK_IMPORTED_MODULE_6__/* .npmInstall */ .c)({
194
+ packageJsonDirPath: (0,path__WEBPACK_IMPORTED_MODULE_0__.dirname)(buildContext.packageJsonFilePath)
195
+ });
196
+ }
197
+ async function disableVerbatimModuleSyntax(params) {
198
+ const { projectDirPath } = params;
199
+ const filePath = (0,path__WEBPACK_IMPORTED_MODULE_0__.join)(projectDirPath, "tsconfig.app.json");
200
+ if (!(await (0,_tools_fs_existsAsync__WEBPACK_IMPORTED_MODULE_9__/* .existsAsync */ .o)(filePath))) {
201
+ return;
202
+ }
203
+ let content = (await fs_promises__WEBPACK_IMPORTED_MODULE_2__.readFile(filePath)).toString("utf8");
204
+ const regExp = /"verbatimModuleSyntax"\s*:\s*true\s*(,?)/m;
205
+ if (!regExp.test(content)) {
206
+ return;
207
+ }
208
+ content = content.replace(regExp, `"verbatimModuleSyntax": false$1`);
209
+ await fs_promises__WEBPACK_IMPORTED_MODULE_2__.writeFile(filePath, Buffer.from(content, "utf8"));
210
+ }
211
+ //# sourceMappingURL=initializeSpa.js.map
212
+
213
+ /***/ })
214
+
215
+ };
216
+ ;