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