@comet/upgrade 1.115.0 → 1.117.0

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 (77) hide show
  1. package/bin/index.js +1 -1
  2. package/lib/index.js +33 -73
  3. package/lib/util/execute-command.util.js +3 -6
  4. package/lib/util/format-code.util.js +3 -6
  5. package/lib/util/get-latest-package-version.js +3 -9
  6. package/lib/util/package-json.util.js +5 -9
  7. package/lib/util/update-dependency-version.util.js +5 -8
  8. package/lib/v4/remove-clear-types-script.js +7 -13
  9. package/lib/v6/rename-build-runtime.js +7 -10
  10. package/lib/v6/rename-job-status-enum.js +7 -10
  11. package/lib/v6/rename-subject-entity-decorator.js +7 -10
  12. package/lib/v7/add-site-preview-secret.js +26 -65
  13. package/lib/v7/hide-graphql-field-suggestions.js +6 -9
  14. package/lib/v7/import-admin-theme-types.js +7 -13
  15. package/lib/v7/rename-date-filter-to-date-time-filter.js +7 -10
  16. package/lib/v7/replace-exception-interceptor-with-exception-filter.js +8 -11
  17. package/lib/v7/replace-gridcoldef-import.js +7 -10
  18. package/lib/v7/replace-roboto-with-roboto-flex.js +11 -14
  19. package/lib/v7/use-graphql-scalars.js +11 -14
  20. package/lib/v8/admin/after-install/add-dialog-content-to-edit-dialog.js +14 -17
  21. package/lib/v8/admin/after-install/clipboard-helpers.js +7 -10
  22. package/lib/v8/admin/after-install/comet-config-provider.js +66 -69
  23. package/lib/v8/admin/after-install/merge-admin-theme-into-admin.js +10 -13
  24. package/lib/v8/admin/after-install/merge-blocks-admin-into-cms-admin.js +8 -11
  25. package/lib/v8/admin/after-install/mui-codemods.js +9 -12
  26. package/lib/v8/admin/after-install/mui-data-grid-remove-error-prop.js +6 -9
  27. package/lib/v8/admin/after-install/mui-grid-sort-to-gql.js +6 -9
  28. package/lib/v8/admin/after-install/mui-x-codemods.js +4 -7
  29. package/lib/v8/admin/after-install/rename-menu-components-in-admin.js +7 -10
  30. package/lib/v8/admin/after-install/replace-mui-button-with-comet-admin-button.js +3 -6
  31. package/lib/v8/admin/after-install/tooltip-1-update-import.js +5 -8
  32. package/lib/v8/admin/after-install/tooltip-2-remove-trigger-prop.js +6 -9
  33. package/lib/v8/admin/after-install/update-import-of-dialog.js +5 -8
  34. package/lib/v8/admin/before-install/remove-admin-theme-package.js +6 -10
  35. package/lib/v8/admin/before-install/remove-blocks-packages-admin.js +6 -10
  36. package/lib/v8/admin/before-install/remove-comet-admin-react-select-dependency.js +6 -10
  37. package/lib/v8/admin/before-install/remove-v8-eslint-disable-comments-admin.js +4 -8
  38. package/lib/v8/admin/before-install/update-graphql-admin.js +6 -10
  39. package/lib/v8/admin/before-install/update-mui-dependencies.js +6 -10
  40. package/lib/v8/admin/before-install/update-mui-x-dependencies.js +6 -10
  41. package/lib/v8/admin/before-install/update-react-dependencies.js +6 -10
  42. package/lib/v8/admin/before-install/update-swc-dependencies.js +6 -10
  43. package/lib/v8/admin/before-install/use-mui-date-picker-in-grid.js +10 -14
  44. package/lib/v8/api/after-install/merge-blocks-api-into-cms-api.js +8 -11
  45. package/lib/v8/api/after-install/mikro-orm-base-entity-generic.js +6 -9
  46. package/lib/v8/api/after-install/mikro-orm-create-request-context.js +7 -10
  47. package/lib/v8/api/after-install/mikro-orm-custom-type.js +6 -9
  48. package/lib/v8/api/after-install/mikro-orm-delete-rule.js +6 -9
  49. package/lib/v8/api/after-install/mikro-orm-dotenv.js +5 -8
  50. package/lib/v8/api/after-install/mikro-orm-imports.js +6 -9
  51. package/lib/v8/api/after-install/mikro-orm-ormconfig.js +5 -8
  52. package/lib/v8/api/after-install/move-maxSrcResolution-in-comet-config.js +7 -13
  53. package/lib/v8/api/after-install/replace-playground-with-graphiql.js +12 -15
  54. package/lib/v8/api/after-install/update-dam-configuration.js +13 -16
  55. package/lib/v8/api/after-install/update-graphql-format-error.js +4 -7
  56. package/lib/v8/api/after-install/update-s3-config.js +8 -11
  57. package/lib/v8/api/before-install/nest-peer-dependencies.js +6 -10
  58. package/lib/v8/api/before-install/remove-blocks-packages-api.js +6 -10
  59. package/lib/v8/api/before-install/remove-passport.js +6 -10
  60. package/lib/v8/api/before-install/replace-nestjs-console-with-nest-commander.js +6 -10
  61. package/lib/v8/api/before-install/update-class-validator.js +7 -11
  62. package/lib/v8/api/before-install/update-kubernetes-client-node.js +6 -10
  63. package/lib/v8/api/before-install/update-mikro-orm-dependencies.js +6 -10
  64. package/lib/v8/api/before-install/update-nest-dependencies.js +6 -10
  65. package/lib/v8/api/before-install/update-sentry.js +9 -13
  66. package/lib/v8/eslint-dev-dependencies.js +22 -26
  67. package/lib/v8/ignore-restricted-imports-admin.js +4 -8
  68. package/lib/v8/prettier-dev-dependencies.js +12 -16
  69. package/lib/v8/remove-react-barrel-imports-admin.js +5 -8
  70. package/lib/v8/remove-react-barrel-imports-site.js +5 -8
  71. package/lib/v8/replace-node-with-v22-in-gitlab-ci-files.js +6 -43
  72. package/lib/v8/replace-node-with-v22-locally.js +9 -13
  73. package/lib/v8/site/after-install/remove-graphql-client-from-site-preview-handlers.js +7 -10
  74. package/lib/v8/site/before-install/update-graphql-site.js +6 -10
  75. package/lib/v9/admin/after-install/tooltip-replace-variant-prop.js +13 -16
  76. package/lib/v9/site/before-install/update-next-dependencies.js +6 -10
  77. package/package.json +4 -3
package/bin/index.js CHANGED
@@ -1,3 +1,3 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- require("../lib/index");
3
+ import "../lib/index.js";
package/lib/index.js CHANGED
@@ -1,52 +1,14 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- const util = __importStar(require("node:util"));
40
- const chalk_1 = __importDefault(require("chalk"));
41
- const fs_1 = __importDefault(require("fs"));
42
- const glob_1 = require("glob");
43
- const path_1 = __importDefault(require("path"));
44
- const semver_1 = __importDefault(require("semver"));
45
- const execute_command_util_1 = require("./util/execute-command.util");
46
- const get_latest_package_version_1 = require("./util/get-latest-package-version");
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
+ import * as util from "node:util";
4
+ import chalk from "chalk";
5
+ import { globSync } from "glob";
6
+ import semver from "semver";
7
+ import { executeCommand } from "./util/execute-command.util.js";
8
+ import { getLatestPackageVersion } from "./util/get-latest-package-version.js";
47
9
  const microservices = ["api", "admin", "site"];
48
10
  function microserviceExists(microservice) {
49
- return fs_1.default.existsSync(`${microservice}/package.json`);
11
+ return fs.existsSync(`${microservice}/package.json`);
50
12
  }
51
13
  const isLocalDevelopment = !process.argv[1].includes("_npx");
52
14
  const skipLint = process.argv.includes("--skip-lint");
@@ -62,12 +24,12 @@ async function main() {
62
24
  const isUpgradeScript = targetVersionArg.endsWith(".ts");
63
25
  const isSubfolder = targetVersionArg.includes("/");
64
26
  if (isUpgradeScript) {
65
- if (fs_1.default.existsSync(path_1.default.join(__dirname, targetVersionArg.replace(/\.ts$/, ".js")))) {
66
- const module = await import(path_1.default.join(__dirname, targetVersionArg.replace(/\.ts$/, ".js")));
27
+ if (fs.existsSync(path.join(import.meta.dirname, targetVersionArg.replace(/\.ts$/, ".js")))) {
28
+ const module = await import(path.join(import.meta.dirname, targetVersionArg.replace(/\.ts$/, ".js")));
67
29
  await runUpgradeScript({
68
30
  name: targetVersionArg,
69
31
  stage: "before-install",
70
- script: module.default.default,
32
+ script: module.default,
71
33
  });
72
34
  if (!skipLint)
73
35
  await runEslintFix();
@@ -95,16 +57,16 @@ async function executeSubfolder(targetVersionArg) {
95
57
  }
96
58
  async function executeAll(targetVersionArg) {
97
59
  if (!targetVersionArg.includes(".")) {
98
- targetVersionArg = await (0, get_latest_package_version_1.getLatestPackageVersion)("@comet/admin", semver_1.default.coerce(targetVersionArg)?.major);
60
+ targetVersionArg = await getLatestPackageVersion("@comet/admin", semver.coerce(targetVersionArg)?.major);
99
61
  }
100
- const targetVersion = semver_1.default.coerce(targetVersionArg, { includePrerelease: true });
62
+ const targetVersion = semver.coerce(targetVersionArg, { includePrerelease: true });
101
63
  if (!targetVersion) {
102
64
  console.error("Can't parse version number. Example usage: npx @comet/upgrade v4");
103
65
  process.exit(-1);
104
66
  }
105
67
  const targetVersionFolder = `v${targetVersion.major}`;
106
- const scriptsFolder = path_1.default.join(__dirname, targetVersionFolder);
107
- if (!fs_1.default.existsSync(scriptsFolder)) {
68
+ const scriptsFolder = path.join(import.meta.dirname, targetVersionFolder);
69
+ if (!fs.existsSync(scriptsFolder)) {
108
70
  console.error(`Can't find upgrade scripts for target version '${targetVersionFolder}'`);
109
71
  listTargetVersions();
110
72
  process.exit(-1);
@@ -131,7 +93,7 @@ function getCurrentVersion() {
131
93
  console.error(`File 'admin/package.json' doesn't exist. Make sure to call the script in the root of your project`);
132
94
  process.exit(-1);
133
95
  }
134
- const packageJson = JSON.parse(fs_1.default.readFileSync("admin/package.json").toString());
96
+ const packageJson = JSON.parse(fs.readFileSync("admin/package.json").toString());
135
97
  const versionRange = packageJson.dependencies?.["@comet/admin"];
136
98
  if (versionRange === undefined) {
137
99
  console.error(`Package '@comet/admin' isn't listed as a dependency. Is this a Comet DXP project?`);
@@ -144,10 +106,10 @@ function getCurrentVersion() {
144
106
  process.exit(-1);
145
107
  }
146
108
  const version = versionMatches[0];
147
- return semver_1.default.major(version);
109
+ return semver.major(version);
148
110
  }
149
111
  async function updateDependencies(targetVersion, isMajorUpdate = false) {
150
- await (0, execute_command_util_1.executeCommand)("npm", ["install", "--no-audit", "--loglevel", "error", "--save-exact", `@comet/cli@${targetVersion.version}`]);
112
+ await executeCommand("npm", ["install", "--no-audit", "--loglevel", "error", "--save-exact", `@comet/cli@${targetVersion.version}`]);
151
113
  const packages = {
152
114
  api: ["@comet/blocks-api", "@comet/cms-api"],
153
115
  admin: [
@@ -168,7 +130,7 @@ async function updateDependencies(targetVersion, isMajorUpdate = false) {
168
130
  console.warn(`File '${microservice}/package.json' doesn't exist. Skipping microservice`);
169
131
  continue;
170
132
  }
171
- const packageJson = JSON.parse(fs_1.default.readFileSync(`${microservice}/package.json`).toString());
133
+ const packageJson = JSON.parse(fs.readFileSync(`${microservice}/package.json`).toString());
172
134
  const dependencies = packages[microservice].filter((packageName) => packageJson.dependencies?.[packageName] !== undefined);
173
135
  const devDependencies = [
174
136
  "@comet/cli",
@@ -182,14 +144,14 @@ async function updateDependencies(targetVersion, isMajorUpdate = false) {
182
144
  continue;
183
145
  }
184
146
  if (isMajorUpdate) {
185
- if (fs_1.default.existsSync(`${microservice}/node_modules`)) {
186
- fs_1.default.rmSync(`${microservice}/node_modules`, { recursive: true, force: true });
147
+ if (fs.existsSync(`${microservice}/node_modules`)) {
148
+ fs.rmSync(`${microservice}/node_modules`, { recursive: true, force: true });
187
149
  }
188
- if (fs_1.default.existsSync(`${microservice}/package-lock.json`)) {
189
- fs_1.default.rmSync(`${microservice}/package-lock.json`);
150
+ if (fs.existsSync(`${microservice}/package-lock.json`)) {
151
+ fs.rmSync(`${microservice}/package-lock.json`);
190
152
  }
191
153
  }
192
- await (0, execute_command_util_1.executeCommand)("npm", [
154
+ await executeCommand("npm", [
193
155
  "install",
194
156
  "--prefix",
195
157
  microservice,
@@ -204,18 +166,16 @@ async function updateDependencies(targetVersion, isMajorUpdate = false) {
204
166
  }
205
167
  async function findUpgradeScripts(targetVersionFolder) {
206
168
  const scripts = [];
207
- const scriptsFolder = path_1.default.join(__dirname, targetVersionFolder);
208
- const files = (0, glob_1.globSync)("**/*.js", { cwd: scriptsFolder, nodir: true });
169
+ const scriptsFolder = path.join(import.meta.dirname, targetVersionFolder);
170
+ const files = globSync("**/*.js", { cwd: scriptsFolder, nodir: true });
209
171
  for (const relativePath of files) {
210
- const module = await import(path_1.default.join(scriptsFolder, relativePath));
172
+ const module = await import(path.join(scriptsFolder, relativePath));
211
173
  const folders = relativePath.split("/");
212
174
  const stage = folders.length >= 3 ? folders[1] : module.stage;
213
175
  scripts.push({
214
176
  name: relativePath,
215
177
  stage: stage ?? "after-install",
216
- // Need default.default because of ESM interoperability with CommonJS.
217
- // See https://www.typescriptlang.org/docs/handbook/modules/reference.html#node16-nodenext.
218
- script: module.default.default,
178
+ script: module.default,
219
179
  });
220
180
  }
221
181
  return scripts;
@@ -246,7 +206,7 @@ async function runEslintFix() {
246
206
  continue;
247
207
  }
248
208
  try {
249
- await (0, execute_command_util_1.executeCommand)("npm", ["run", "--prefix", microservice, "--no-audit", "--loglevel", "error", "lint:eslint", "--", "--fix"], {
209
+ await executeCommand("npm", ["run", "--prefix", microservice, "--no-audit", "--loglevel", "error", "lint:eslint", "--", "--fix"], {
250
210
  silent: true,
251
211
  });
252
212
  }
@@ -257,17 +217,17 @@ async function runEslintFix() {
257
217
  }
258
218
  function listTargetVersions() {
259
219
  console.info("Available target versions");
260
- const targetVersions = fs_1.default.readdirSync(__dirname).filter((entry) => entry.startsWith("v"));
220
+ const targetVersions = fs.readdirSync(import.meta.dirname).filter((entry) => entry.startsWith("v"));
261
221
  console.info(targetVersions.map((version) => `- ${version}`).join("\n"));
262
222
  }
263
223
  const originalError = console.error;
264
224
  const originalWarn = console.warn;
265
225
  console.error = (...args) => {
266
- const formattedArgs = args.map((arg) => (typeof arg === "object" ? util.inspect(arg, { depth: null, colors: true }) : chalk_1.default.red(arg)));
226
+ const formattedArgs = args.map((arg) => (typeof arg === "object" ? util.inspect(arg, { depth: null, colors: true }) : chalk.red(arg)));
267
227
  originalError(...formattedArgs);
268
228
  };
269
229
  console.warn = (...args) => {
270
- const formattedArgs = args.map((arg) => (typeof arg === "object" ? util.inspect(arg, { depth: null, colors: true }) : chalk_1.default.yellow(arg)));
230
+ const formattedArgs = args.map((arg) => (typeof arg === "object" ? util.inspect(arg, { depth: null, colors: true }) : chalk.yellow(arg)));
271
231
  originalWarn(...formattedArgs);
272
232
  };
273
233
  main();
@@ -1,13 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.executeCommand = executeCommand;
4
- const child_process_1 = require("child_process");
1
+ import { spawn } from "node:child_process";
5
2
  // Inspired by https://github.com/facebook/create-react-app/blob/main/packages/create-react-app/createReactApp.js#L383
6
- function executeCommand(command, args = [], options) {
3
+ export function executeCommand(command, args = [], options) {
7
4
  return new Promise((resolve, reject) => {
8
5
  console.debug("Executing command: ", command, args.join(" "));
9
6
  const stdio = options?.silent ? "ignore" : "inherit";
10
- const child = (0, child_process_1.spawn)(command, args, { stdio });
7
+ const child = spawn(command, args, { stdio });
11
8
  child.on("close", (code) => {
12
9
  if (code !== 0) {
13
10
  reject({
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.formatCode = formatCode;
4
- const eslint_1 = require("eslint");
5
- async function formatCode(code, filePath) {
6
- const eslint = new eslint_1.ESLint({ cwd: process.cwd(), fix: true });
1
+ import { ESLint } from "eslint";
2
+ export async function formatCode(code, filePath) {
3
+ const eslint = new ESLint({ cwd: process.cwd(), fix: true });
7
4
  const lintResult = await eslint.lintText(code, { filePath });
8
5
  return lintResult[0]?.output ?? lintResult[0]?.source ?? code;
9
6
  }
@@ -1,11 +1,5 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getLatestPackageVersion = getLatestPackageVersion;
7
- const semver_1 = __importDefault(require("semver"));
8
- async function getLatestPackageVersion(packageName, majorVersion) {
1
+ import semver from "semver";
2
+ export async function getLatestPackageVersion(packageName, majorVersion) {
9
3
  const url = `https://registry.npmjs.org/${packageName}`;
10
4
  try {
11
5
  const response = await fetch(url);
@@ -17,7 +11,7 @@ async function getLatestPackageVersion(packageName, majorVersion) {
17
11
  return packageInfo.version;
18
12
  }
19
13
  const versions = Object.keys(packageInfo.versions);
20
- const latestForMajor = versions.filter((version) => semver_1.default.satisfies(version, `^${majorVersion}.0.0`)).sort(semver_1.default.rcompare)[0];
14
+ const latestForMajor = versions.filter((version) => semver.satisfies(version, `^${majorVersion}.0.0`)).sort(semver.rcompare)[0];
21
15
  return latestForMajor;
22
16
  }
23
17
  catch (error) {
@@ -1,16 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PackageJson = void 0;
4
- const fs_1 = require("fs");
5
- class PackageJson {
1
+ import { existsSync, readFileSync, writeFileSync } from "node:fs";
2
+ export class PackageJson {
6
3
  path;
7
4
  json;
8
5
  constructor(path) {
9
- if (!(0, fs_1.existsSync)(path)) {
6
+ if (!existsSync(path)) {
10
7
  throw new Error("File does not exist");
11
8
  }
12
9
  this.path = path;
13
- this.json = JSON.parse((0, fs_1.readFileSync)(path, "utf-8"));
10
+ this.json = JSON.parse(readFileSync(path, "utf-8"));
14
11
  }
15
12
  addDependency(name, version, dev = false) {
16
13
  if (dev) {
@@ -41,7 +38,7 @@ class PackageJson {
41
38
  return !!(this.json.dependencies?.[name] || this.json.devDependencies?.[name]);
42
39
  }
43
40
  save() {
44
- (0, fs_1.writeFileSync)(this.path, `${JSON.stringify(this.json, null, 4)}\n`);
41
+ writeFileSync(this.path, `${JSON.stringify(this.json, null, 4)}\n`);
45
42
  }
46
43
  addScript(name, script) {
47
44
  this.json.scripts ??= {};
@@ -51,4 +48,3 @@ class PackageJson {
51
48
  delete this.json.scripts?.[name];
52
49
  }
53
50
  }
54
- exports.PackageJson = PackageJson;
@@ -1,14 +1,11 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.updateDependencyVersion = updateDependencyVersion;
4
- const promises_1 = require("fs/promises");
5
- const format_code_util_1 = require("./format-code.util");
6
- async function updateDependencyVersion(packageJsonPath, packageName, newVersion) {
7
- const fileContent = (await (0, promises_1.readFile)(packageJsonPath)).toString();
1
+ import { readFile, writeFile } from "node:fs/promises";
2
+ import { formatCode } from "./format-code.util.js";
3
+ export async function updateDependencyVersion(packageJsonPath, packageName, newVersion) {
4
+ const fileContent = (await readFile(packageJsonPath)).toString();
8
5
  const packageJson = JSON.parse(fileContent);
9
6
  if (packageJson.dependencies && packageJson.dependencies[packageName]) {
10
7
  packageJson.dependencies[packageName] = newVersion;
11
8
  }
12
9
  const updatedContent = JSON.stringify(packageJson, null, 4);
13
- await (0, promises_1.writeFile)(packageJsonPath, await (0, format_code_util_1.formatCode)(updatedContent, packageJsonPath));
10
+ await writeFile(packageJsonPath, await formatCode(updatedContent, packageJsonPath));
14
11
  }
@@ -1,19 +1,13 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.default = removeClearTypesScript;
7
- const fs_1 = __importDefault(require("fs"));
8
- const prettier_1 = __importDefault(require("prettier"));
1
+ import fs from "node:fs";
2
+ import prettier from "prettier";
9
3
  /**
10
4
  * Removes unnecessary clear:types script before GraphQL code generation that interferes with block code generation.
11
5
  */
12
- async function removeClearTypesScript() {
13
- if (!fs_1.default.existsSync("site/package.json")) {
6
+ export default async function removeClearTypesScript() {
7
+ if (!fs.existsSync("site/package.json")) {
14
8
  return;
15
9
  }
16
- const sitePackageJson = JSON.parse(fs_1.default.readFileSync("site/package.json").toString());
10
+ const sitePackageJson = JSON.parse(fs.readFileSync("site/package.json").toString());
17
11
  if (sitePackageJson.scripts["clear:types"]) {
18
12
  delete sitePackageJson.scripts["clear:types"];
19
13
  }
@@ -23,6 +17,6 @@ async function removeClearTypesScript() {
23
17
  if (sitePackageJson.scripts["gql:watch"]) {
24
18
  sitePackageJson.scripts["gql:watch"] = sitePackageJson.scripts["gql:watch"].replace("npm run clear:types && ", "");
25
19
  }
26
- const prettierConfig = await prettier_1.default.resolveConfig(process.cwd());
27
- fs_1.default.writeFileSync("site/package.json", await prettier_1.default.format(JSON.stringify(sitePackageJson), { ...prettierConfig, parser: "json" }));
20
+ const prettierConfig = await prettier.resolveConfig(process.cwd());
21
+ fs.writeFileSync("site/package.json", await prettier.format(JSON.stringify(sitePackageJson), { ...prettierConfig, parser: "json" }));
28
22
  }
@@ -1,20 +1,17 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = renameBuildRuntime;
4
- const promises_1 = require("fs/promises");
5
- const glob_1 = require("glob");
6
- const format_code_util_1 = require("../util/format-code.util");
1
+ import { readFile, writeFile } from "node:fs/promises";
2
+ import { glob } from "glob";
3
+ import { formatCode } from "../util/format-code.util.js";
7
4
  /**
8
5
  * Renames BuildRuntime component to JobRuntime.
9
6
  */
10
- async function renameBuildRuntime() {
11
- const files = glob_1.glob.sync(["admin/src/**/*.tsx"]);
7
+ export default async function renameBuildRuntime() {
8
+ const files = glob.sync(["admin/src/**/*.tsx"]);
12
9
  for (const filePath of files) {
13
- let fileContent = (await (0, promises_1.readFile)(filePath)).toString();
10
+ let fileContent = (await readFile(filePath)).toString();
14
11
  if (!fileContent.includes("BuildRuntime")) {
15
12
  continue;
16
13
  }
17
14
  fileContent = fileContent.replace(/BuildRuntime/g, "JobRuntime");
18
- await (0, promises_1.writeFile)(filePath, await (0, format_code_util_1.formatCode)(fileContent, filePath));
15
+ await writeFile(filePath, await formatCode(fileContent, filePath));
19
16
  }
20
17
  }
@@ -1,21 +1,18 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = renameJobStatusEnum;
4
- const promises_1 = require("fs/promises");
5
- const glob_1 = require("glob");
6
- const format_code_util_1 = require("../util/format-code.util");
1
+ import { readFile, writeFile } from "node:fs/promises";
2
+ import { glob } from "glob";
3
+ import { formatCode } from "../util/format-code.util.js";
7
4
  /**
8
5
  * Renames JobStatus enum to KubernetesJobStatus.
9
6
  */
10
- async function renameJobStatusEnum() {
11
- const files = glob_1.glob.sync(["api/src/**/*.ts"]);
7
+ export default async function renameJobStatusEnum() {
8
+ const files = glob.sync(["api/src/**/*.ts"]);
12
9
  for (const filePath of files) {
13
- let fileContent = (await (0, promises_1.readFile)(filePath)).toString();
10
+ let fileContent = (await readFile(filePath)).toString();
14
11
  // Some of our projects have a custom JobStatus enum, so we need to check for that.
15
12
  if (!/import { .*JobStatus.*} from "@comet\/cms-api";/.test(fileContent)) {
16
13
  continue;
17
14
  }
18
15
  fileContent = fileContent.replace(/JobStatus/g, "KubernetesJobStatus");
19
- await (0, promises_1.writeFile)(filePath, await (0, format_code_util_1.formatCode)(fileContent, filePath));
16
+ await writeFile(filePath, await formatCode(fileContent, filePath));
20
17
  }
21
18
  }
@@ -1,20 +1,17 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = renameSubjectEntityDecorator;
4
- const promises_1 = require("fs/promises");
5
- const glob_1 = require("glob");
6
- const format_code_util_1 = require("../util/format-code.util");
1
+ import { readFile, writeFile } from "node:fs/promises";
2
+ import { glob } from "glob";
3
+ import { formatCode } from "../util/format-code.util.js";
7
4
  /**
8
5
  * Renames @SubjectEntity() decorator to @AffectedEntity().
9
6
  */
10
- async function renameSubjectEntityDecorator() {
11
- const files = glob_1.glob.sync(["api/src/**/*.ts"]);
7
+ export default async function renameSubjectEntityDecorator() {
8
+ const files = glob.sync(["api/src/**/*.ts"]);
12
9
  for (const filePath of files) {
13
- let fileContent = (await (0, promises_1.readFile)(filePath)).toString();
10
+ let fileContent = (await readFile(filePath)).toString();
14
11
  if (!fileContent.includes("SubjectEntity")) {
15
12
  continue;
16
13
  }
17
14
  fileContent = fileContent.replace(/SubjectEntity/g, "AffectedEntity");
18
- await (0, promises_1.writeFile)(filePath, await (0, format_code_util_1.formatCode)(fileContent, filePath));
15
+ await writeFile(filePath, await formatCode(fileContent, filePath));
19
16
  }
20
17
  }
@@ -1,47 +1,8 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.default = addSitePreviewSecret;
40
- const crypto = __importStar(require("node:crypto"));
41
- const fs_1 = __importDefault(require("fs"));
42
- const ts_morph_1 = require("ts-morph");
43
- const execute_command_util_1 = require("../util/execute-command.util");
44
- async function addSitePreviewSecret() {
1
+ import * as crypto from "node:crypto";
2
+ import fs from "node:fs";
3
+ import { Project, SyntaxKind } from "ts-morph";
4
+ import { executeCommand } from "../util/execute-command.util.js";
5
+ export default async function addSitePreviewSecret() {
45
6
  updateApiFiles1();
46
7
  await updateApiFiles2();
47
8
  await updateApiFiles3();
@@ -51,7 +12,7 @@ async function addSitePreviewSecret() {
51
12
  await executeHelmDependencyUpdate();
52
13
  }
53
14
  function updateApiFiles1() {
54
- const project = new ts_morph_1.Project({ tsConfigFilePath: "./api/tsconfig.json" });
15
+ const project = new Project({ tsConfigFilePath: "./api/tsconfig.json" });
55
16
  const sourceFile = project.getSourceFile("api/src/config/environment-variables.ts");
56
17
  if (!sourceFile) {
57
18
  console.error(" Could not file file, make sure to add SITE_PREVIEW_SECRET");
@@ -71,7 +32,7 @@ function updateApiFiles1() {
71
32
  console.log(" finished");
72
33
  }
73
34
  async function updateApiFiles2() {
74
- const project = new ts_morph_1.Project({ tsConfigFilePath: "./api/tsconfig.json" });
35
+ const project = new Project({ tsConfigFilePath: "./api/tsconfig.json" });
75
36
  const sourceFile = project.getSourceFile("api/src/config/config.ts");
76
37
  if (!sourceFile) {
77
38
  console.error(" Could not file file, make sure to add sitePreviewSecret: envVars.SITE_PREVIEW_SECRET");
@@ -80,8 +41,8 @@ async function updateApiFiles2() {
80
41
  if (sourceFile
81
42
  .getFunction("createConfig")
82
43
  ?.getBody()
83
- ?.getDescendantsOfKind(ts_morph_1.SyntaxKind.ReturnStatement)[0]
84
- .getChildrenOfKind(ts_morph_1.SyntaxKind.ObjectLiteralExpression)[0]
44
+ ?.getDescendantsOfKind(SyntaxKind.ReturnStatement)[0]
45
+ .getChildrenOfKind(SyntaxKind.ObjectLiteralExpression)[0]
85
46
  .getProperty("sitePreviewSecret")) {
86
47
  return;
87
48
  }
@@ -89,14 +50,14 @@ async function updateApiFiles2() {
89
50
  sourceFile
90
51
  .getFunction("createConfig")
91
52
  ?.getBody()
92
- ?.getDescendantsOfKind(ts_morph_1.SyntaxKind.ReturnStatement)[0]
93
- .getChildrenOfKind(ts_morph_1.SyntaxKind.ObjectLiteralExpression)[0]
53
+ ?.getDescendantsOfKind(SyntaxKind.ReturnStatement)[0]
54
+ .getChildrenOfKind(SyntaxKind.ObjectLiteralExpression)[0]
94
55
  .addProperty("sitePreviewSecret: envVars.SITE_PREVIEW_SECRET,");
95
56
  sourceFile.saveSync();
96
57
  console.log(" finished");
97
58
  }
98
59
  async function updateApiFiles3() {
99
- const project = new ts_morph_1.Project({ tsConfigFilePath: "./api/tsconfig.json" });
60
+ const project = new Project({ tsConfigFilePath: "./api/tsconfig.json" });
100
61
  const sourceFile = project.getSourceFile("api/src/app.module.ts");
101
62
  if (!sourceFile) {
102
63
  console.error(" Could not file file, make sure to add sitePreviewSecret to PageTreeModule");
@@ -106,9 +67,9 @@ async function updateApiFiles3() {
106
67
  .getClassOrThrow("AppModule")
107
68
  .getMethodOrThrow("forRoot")
108
69
  .getBody()
109
- ?.getDescendantsOfKind(ts_morph_1.SyntaxKind.CallExpression)
70
+ ?.getDescendantsOfKind(SyntaxKind.CallExpression)
110
71
  .find((call) => call.getText().includes("PageTreeModule.forRoot"))
111
- ?.getChildrenOfKind(ts_morph_1.SyntaxKind.ObjectLiteralExpression)[0]
72
+ ?.getChildrenOfKind(SyntaxKind.ObjectLiteralExpression)[0]
112
73
  .getProperty("sitePreviewSecret")) {
113
74
  return;
114
75
  }
@@ -117,33 +78,33 @@ async function updateApiFiles3() {
117
78
  .getClassOrThrow("AppModule")
118
79
  .getMethodOrThrow("forRoot")
119
80
  .getBody()
120
- ?.getDescendantsOfKind(ts_morph_1.SyntaxKind.CallExpression)
81
+ ?.getDescendantsOfKind(SyntaxKind.CallExpression)
121
82
  .find((call) => call.getText().includes("PageTreeModule.forRoot"))
122
- ?.getChildrenOfKind(ts_morph_1.SyntaxKind.ObjectLiteralExpression)[0]
83
+ ?.getChildrenOfKind(SyntaxKind.ObjectLiteralExpression)[0]
123
84
  .addProperty("sitePreviewSecret: config.sitePreviewSecret,");
124
85
  sourceFile.saveSync();
125
86
  console.log(" finished");
126
87
  }
127
88
  function updateDotEnvFile() {
128
- if (!fs_1.default.existsSync(".env")) {
89
+ if (!fs.existsSync(".env")) {
129
90
  console.error(" could not find file, please make sure to add SITE_PREVIEW_SECRET manually");
130
91
  return;
131
92
  }
132
- if (fs_1.default.readFileSync(".env").includes("SITE_PREVIEW_SECRET")) {
93
+ if (fs.readFileSync(".env").includes("SITE_PREVIEW_SECRET")) {
133
94
  return;
134
95
  }
135
96
  console.log("Update .env");
136
- fs_1.default.appendFileSync(".env", `\nSITE_PREVIEW_SECRET=${crypto.randomBytes(8).toString("hex")}\n`);
97
+ fs.appendFileSync(".env", `\nSITE_PREVIEW_SECRET=${crypto.randomBytes(8).toString("hex")}\n`);
137
98
  console.log(" finished");
138
99
  }
139
100
  function updateValuesTplFile() {
140
101
  const valuesFileName = "deployment/helm/values.tpl.yaml";
141
102
  console.log(`Update ${valuesFileName}`);
142
- if (!fs_1.default.existsSync(valuesFileName)) {
103
+ if (!fs.existsSync(valuesFileName)) {
143
104
  console.error(" could not find file, please make sure to add SITE_PREVIEW_SECRET to api and remove authproxy-preview.");
144
105
  return;
145
106
  }
146
- const file = fs_1.default.readFileSync(valuesFileName, "utf8");
107
+ const file = fs.readFileSync(valuesFileName, "utf8");
147
108
  const lines = file.split(/\n/);
148
109
  let currentSection = "";
149
110
  let sitePreviewLine = 0;
@@ -184,17 +145,17 @@ function updateValuesTplFile() {
184
145
  console.error(" Could not find authproxy-preview. Please make sure to remove it from deployment manually.");
185
146
  }
186
147
  const content = lines.join("\n").replace(/oauth2-proxy-preview/g, "site");
187
- fs_1.default.writeFileSync(valuesFileName, content);
148
+ fs.writeFileSync(valuesFileName, content);
188
149
  console.log(" finished.");
189
150
  }
190
151
  function updateChart() {
191
152
  const filename = "deployment/helm/Chart.yaml";
192
153
  console.log(`Update ${filename}`);
193
- if (!fs_1.default.existsSync(filename)) {
154
+ if (!fs.existsSync(filename)) {
194
155
  console.error(" could not find file, please make sure to remove authproxy-preview and execute helm dependency update.");
195
156
  return;
196
157
  }
197
- const file = fs_1.default.readFileSync(filename, "utf8");
158
+ const file = fs.readFileSync(filename, "utf8");
198
159
  const lines = file.split(/\n/);
199
160
  let startingLine = 0;
200
161
  let isAuthproxyPreview = false;
@@ -214,10 +175,10 @@ function updateChart() {
214
175
  }
215
176
  });
216
177
  const content = lines.join("\n").replace(/oauth2-proxy-preview/g, "site");
217
- fs_1.default.writeFileSync(filename, content);
178
+ fs.writeFileSync(filename, content);
218
179
  console.log(" finished.");
219
180
  }
220
181
  async function executeHelmDependencyUpdate() {
221
182
  console.log('Execute "helm dependency update deployment/helm" ...');
222
- await (0, execute_command_util_1.executeCommand)("helm", ["dependency", "update", "deployment/helm"]);
183
+ await executeCommand("helm", ["dependency", "update", "deployment/helm"]);
223
184
  }