@common-stack/generate-plugin 6.0.2-alpha.1 → 6.0.2-alpha.10

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 (60) hide show
  1. package/CHANGELOG.md +36 -0
  2. package/lib/generators/add-backend/files/config.json +0 -1
  3. package/lib/generators/add-backend/files/package.json +79 -114
  4. package/lib/generators/add-backend/files/src/api/root-schema.graphqls +9 -0
  5. package/lib/generators/add-backend/files/src/config/env-config.ts.template +2 -24
  6. package/lib/generators/add-backend/files/src/service.ts.template +4 -5
  7. package/lib/generators/add-browser-package/files/package.json +47 -47
  8. package/lib/generators/add-client-package/files/package.json +28 -28
  9. package/lib/generators/add-core-package/files/package.json +28 -28
  10. package/lib/generators/add-frontend/frameworks/chakraui/entry.client.tsx.template +30 -24
  11. package/lib/generators/add-frontend/frameworks/chakraui/entry.server.tsx.template +5 -8
  12. package/lib/generators/add-frontend/frameworks/chakraui/root.tsx.template +3 -3
  13. package/lib/generators/add-frontend/templates/Dockerfile +1 -1
  14. package/lib/generators/add-frontend/templates/package.json +4 -22
  15. package/lib/generators/add-frontend/templates/src/config/public-config.ts.template +6 -0
  16. package/lib/generators/add-fullstack/files/Jenkinsfile +4 -7
  17. package/lib/generators/add-fullstack/files/package.json +346 -358
  18. package/lib/generators/add-fullstack/files/tools/deploy-cli/updateYamlSettings.js +14 -15
  19. package/lib/generators/add-fullstack/files/tools/sortPackageJson.mjs +8 -1
  20. package/lib/generators/add-fullstack/generator.cjs +22 -25
  21. package/lib/generators/add-fullstack/generator.cjs.map +1 -1
  22. package/lib/generators/add-fullstack/generator.mjs +20 -23
  23. package/lib/generators/add-fullstack/generator.mjs.map +1 -1
  24. package/lib/generators/add-fullstack/schema.json +5 -0
  25. package/lib/generators/add-fullstack/updates/index.d.ts +2 -0
  26. package/lib/generators/add-fullstack/updates/jenkinsfileUpdate.cjs +36 -0
  27. package/lib/generators/add-fullstack/updates/jenkinsfileUpdate.cjs.map +1 -0
  28. package/lib/generators/add-fullstack/updates/jenkinsfileUpdate.d.ts +1 -0
  29. package/lib/generators/add-fullstack/updates/jenkinsfileUpdate.mjs +36 -0
  30. package/lib/generators/add-fullstack/updates/jenkinsfileUpdate.mjs.map +1 -0
  31. package/lib/generators/add-fullstack/updates/packageJsonUpdate.cjs +8 -0
  32. package/lib/generators/add-fullstack/updates/packageJsonUpdate.cjs.map +1 -0
  33. package/lib/generators/add-fullstack/updates/packageJsonUpdate.d.ts +2 -0
  34. package/lib/generators/add-fullstack/updates/packageJsonUpdate.mjs +8 -0
  35. package/lib/generators/add-fullstack/updates/packageJsonUpdate.mjs.map +1 -0
  36. package/lib/generators/add-moleculer/files/Dockerfile +1 -1
  37. package/lib/generators/add-moleculer/files/package.json +6 -25
  38. package/lib/generators/add-server-package/files/package.json +3 -3
  39. package/package.json +3 -3
  40. package/src/generators/add-frontend/frameworks/chakraui/entry.client.tsx.template +30 -24
  41. package/src/generators/add-frontend/frameworks/chakraui/entry.server.tsx.template +5 -8
  42. package/src/generators/add-frontend/frameworks/chakraui/root.tsx.template +3 -3
  43. package/src/generators/add-fullstack/files/Jenkinsfile +4 -7
  44. package/src/generators/add-fullstack/files/package.json +6 -18
  45. package/src/generators/add-fullstack/files/tools/deploy-cli/updateYamlSettings.js +14 -15
  46. package/src/generators/add-fullstack/files/tools/sortPackageJson.mjs +8 -1
  47. package/src/generators/add-fullstack/generator.ts +41 -35
  48. package/src/generators/add-fullstack/schema.d.ts +2 -1
  49. package/src/generators/add-fullstack/schema.json +5 -0
  50. package/src/generators/add-fullstack/updates/index.ts +2 -0
  51. package/src/generators/add-fullstack/updates/jenkinsfileUpdate.ts +47 -0
  52. package/src/generators/add-fullstack/updates/packageJsonUpdate.ts +11 -0
  53. package/src/generators/add-moleculer/files/Dockerfile +1 -1
  54. package/src/generators/add-moleculer/files/package.json +6 -25
  55. package/lib/generators/add-backend/files/generated-schema.graphql +0 -235
  56. package/lib/generators/add-frontend/templates/public/css/dashboard.css +0 -491
  57. package/lib/generators/add-fullstack/files/jest.config copy.js +0 -27
  58. package/lib/generators/add-fullstack/files/tools/html-plugin-template.ejs +0 -28
  59. package/src/generators/add-fullstack/files/jest.config copy.js +0 -27
  60. package/src/generators/add-fullstack/files/tools/html-plugin-template.ejs +0 -28
@@ -3,6 +3,9 @@ const fs = require('fs');
3
3
 
4
4
  // Function to update the configuration file
5
5
  function updateConfiguration(filePath, newVersion) {
6
+ // Convert the version from vMajor.Minor to vMajor-Minor for URL
7
+ const versionForUrl = newVersion.replace('.', '-');
8
+
6
9
  // Read the configuration file
7
10
  fs.readFile(filePath, 'utf8', (err, data) => {
8
11
  if (err) {
@@ -10,24 +13,20 @@ function updateConfiguration(filePath, newVersion) {
10
13
  return;
11
14
  }
12
15
 
13
- // Replace VERSION and CONNECTION_ID with newVersion
16
+ // Replace only the specific VERSION and CONNECTION_ID fields, preserving leading whitespace
14
17
  let updatedData = data
15
- .replace(/VERSION: v\d+(\.\d+)?/g, `VERSION: ${newVersion}`)
16
- .replace(/CONNECTION_ID: v\d+(\.\d+)?/g, `CONNECTION_ID: ${newVersion}`);
18
+ .replace(/^(\s*)VERSION:\s*v\d+(\.\d+)?/gm, `$1VERSION: ${newVersion}`)
19
+ .replace(/^(\s*)CONNECTION_ID:\s*v\d+(\.\d+)?/gm, `$1CONNECTION_ID: ${newVersion}`);
17
20
 
18
- // Update CLIENT_URL
21
+ // Update CLIENT_URL, preserving leading whitespace, and replacing the version with the hyphenated version
19
22
  updatedData = updatedData.replace(
20
- /CLIENT_URL: "https:\/\/[\w-]+-v\d+(\.\d+)?\.[\w-]+(\.\w+)?\/?"/g,
21
- (match) => {
22
- const domainParts = match.match(/https:\/\/[\w-]+-v\d+(\.\d+)?(\.[\w-]+)+/g);
23
- if (domainParts && domainParts.length > 0) {
24
- const domain = domainParts[0];
25
- const newDomain = domain.replace(/-v\d+(\.\d+)?/, `-${newVersion}`);
26
- return match.replace(domain, newDomain);
27
- }
28
- return match;
23
+ /^(\s*)CLIENT_URL:\s*"https:\/\/([\w-]+)-v\d+(-\d+)?(\.[\w-]+(\.\w+)?)\/?"/gm,
24
+ (match, p1, p2, p3, p4) => {
25
+ const newDomain = `${p2}-${versionForUrl}${p4}`;
26
+ return `${p1}CLIENT_URL: "https://${newDomain}"`;
29
27
  },
30
28
  );
29
+
31
30
  // Write the updated configuration back to the file
32
31
  fs.writeFile(filePath, updatedData, 'utf8', (err) => {
33
32
  if (err) {
@@ -35,7 +34,7 @@ function updateConfiguration(filePath, newVersion) {
35
34
  return;
36
35
  }
37
36
  console.log(`Configuration file updated successfully.`);
38
- console.log(`Manually update CLIENT_URL in values-dev.yaml and values-prod.yaml`)
37
+ console.log(`Manually update CLIENT_URL in values-dev.yaml and values-prod.yaml`);
39
38
  });
40
39
  });
41
40
  }
@@ -45,7 +44,7 @@ const filePath = process.argv[2];
45
44
  const versionArg = process.argv[3];
46
45
 
47
46
  if (!filePath || !versionArg || !versionArg.match(/^v\d+(\.\d+)?$/)) {
48
- console.error('Usage: node updateConfiguration.js v[Major].[Minor]');
47
+ console.error('Usage: node updateConfiguration.js <path-to-config> v[Major].[Minor]');
49
48
  process.exit(1);
50
49
  }
51
50
 
@@ -11,23 +11,28 @@ const sortPackageJson = await import('sort-package-json').then(module => module.
11
11
 
12
12
  // Directories to process
13
13
  const directories = [
14
+ path.join(__dirname, '../'),
15
+ path.join(__dirname, '../packages-modules'),
14
16
  path.join(__dirname, '../packages'),
15
17
  path.join(__dirname, '../servers'),
16
18
  path.join(__dirname, '../portable-devices')
17
19
  ];
18
20
 
21
+ // Function to sort a single package.json file
19
22
  async function sortPackageJsonFile(filePath) {
20
23
  const packageJson = JSON.parse(await fsPromises.readFile(filePath, 'utf8'));
21
24
  const sortedPackageJson = sortPackageJson(packageJson);
22
25
  await fsPromises.writeFile(filePath, JSON.stringify(sortedPackageJson, null, 2) + '\n');
23
26
  }
24
27
 
28
+ // Recursive function to sort all package.json files in a directory, skipping node_modules
25
29
  async function sortAllPackageJsonFiles(dir) {
26
30
  const files = await fsPromises.readdir(dir);
27
31
  for (const file of files) {
28
32
  const fullPath = path.join(dir, file);
29
33
  const stat = await fsPromises.lstat(fullPath);
30
- if (stat.isDirectory()) {
34
+
35
+ if (stat.isDirectory() && file !== 'node_modules') {
31
36
  await sortAllPackageJsonFiles(fullPath);
32
37
  } else if (file === 'package.json') {
33
38
  await sortPackageJsonFile(fullPath);
@@ -36,10 +41,12 @@ async function sortAllPackageJsonFiles(dir) {
36
41
  }
37
42
  }
38
43
 
44
+ // Function to process all directories
39
45
  async function processDirectories(dirs) {
40
46
  for (const dir of dirs) {
41
47
  await sortAllPackageJsonFiles(dir);
42
48
  }
43
49
  }
44
50
 
51
+ // Execute the sorting process
45
52
  await processDirectories(directories);
@@ -1,24 +1,21 @@
1
- 'use strict';Object.defineProperty(exports,'__esModule',{value:true});var tslib=require('tslib'),devkit=require('@nx/devkit'),path=require('path'),fs=require('fs'),index=require('../../utils/index.cjs'),generator$2=require('../add-frontend/generator.cjs'),generator$1=require('../add-backend/generator.cjs'),generator=require('../add-moleculer/generator.cjs'),generator$5=require('../add-browser-package/generator.cjs'),generator$4=require('../add-client-package/generator.cjs'),generator$6=require('../add-core-package/generator.cjs'),generator$3=require('../add-server-package/generator.cjs');require('../../executors/update-deploy-version/executor.cjs');function _interopNamespaceDefault(e){var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var path__namespace=/*#__PURE__*/_interopNamespaceDefault(path);function addFullstackGenerator(tree, options) {
1
+ 'use strict';Object.defineProperty(exports,'__esModule',{value:true});var tslib=require('tslib'),devkit=require('@nx/devkit'),path=require('path'),fs=require('fs'),index=require('../../utils/index.cjs'),jenkinsfileUpdate=require('./updates/jenkinsfileUpdate.cjs'),packageJsonUpdate=require('./updates/packageJsonUpdate.cjs'),generator$2=require('../add-frontend/generator.cjs'),generator$1=require('../add-backend/generator.cjs'),generator=require('../add-moleculer/generator.cjs'),generator$5=require('../add-browser-package/generator.cjs'),generator$4=require('../add-client-package/generator.cjs'),generator$6=require('../add-core-package/generator.cjs'),generator$3=require('../add-server-package/generator.cjs');require('../../executors/update-deploy-version/executor.cjs');function _interopNamespaceDefault(e){var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var path__namespace=/*#__PURE__*/_interopNamespaceDefault(path);var fs__namespace=/*#__PURE__*/_interopNamespaceDefault(fs);function addFullstackGenerator(tree, options) {
2
2
  return tslib.__awaiter(this, void 0, void 0, function* () {
3
3
  var _a;
4
- const projectRoot = (_a = index.getValid(options.name)) !== null && _a !== void 0 ? _a : 'fullstack-pro';
5
- // addProjectConfiguration(tree, projectRoot, {
6
- // root: projectRoot,
7
- // projectType: 'library',
8
- // sourceRoot: `${projectRoot}/src`,
9
- // targets: {},
10
- // });
4
+ const basePath = options.path || '';
5
+ const projectRoot = path__namespace.join(basePath, (_a = index.getValid(options.name)) !== null && _a !== void 0 ? _a : 'fullstack-pro');
6
+ console.log(`basePath: ${basePath}`);
11
7
  devkit.generateFiles(tree, path__namespace.join(__dirname, 'files'), projectRoot, options);
12
- devkit.updateJson(tree, `${projectRoot}/package.json`, (packageJson) => {
13
- packageJson['name'] = projectRoot;
14
- return packageJson;
15
- });
8
+ // Update Jenkinsfile with dynamic values
9
+ const jenkinsFilePath = path__namespace.join(projectRoot, 'Jenkinsfile');
10
+ jenkinsfileUpdate.updateJenkinsFile(jenkinsFilePath, options.name);
11
+ // Update package.json with the project name
12
+ packageJsonUpdate.updatePackageJson(tree, projectRoot, index.getValid(options.name));
16
13
  yield devkit.formatFiles(tree);
17
14
  if (index.isValid(options.config)) {
18
- const configPath = index.getValid(options.config);
19
- if (fs.existsSync(configPath)) {
15
+ const configPath = path__namespace.resolve(basePath, index.getValid(options.config));
16
+ if (fs__namespace.existsSync(configPath)) {
20
17
  try {
21
- const content = String(fs.readFileSync(configPath));
18
+ const content = String(fs__namespace.readFileSync(configPath));
22
19
  const configs = JSON.parse(content);
23
20
  configs.parent = projectRoot;
24
21
  yield processConfigs(tree, configs);
@@ -30,19 +27,11 @@
30
27
  }
31
28
  });
32
29
  }
33
- const processConfigs = (tree, configs) => tslib.__awaiter(void 0, void 0, void 0, function* () {
34
- if (configs.servers) {
35
- yield generateServers(tree, configs.parent, configs.servers);
36
- }
37
- if (configs.packages && configs.packages.modules) {
38
- yield generatePackages(tree, configs.parent, configs.packages.modules);
39
- }
40
- });
41
30
  const generateServers = (tree, parent, servers) => tslib.__awaiter(void 0, void 0, void 0, function* () {
42
31
  for (const [serverName, serverConfig] of Object.entries(servers)) {
43
32
  const configs = serverConfig;
44
33
  configs.name = serverName;
45
- configs.directory = `${parent}/servers`;
34
+ configs.directory = path__namespace.join(parent, 'servers');
46
35
  switch (configs === null || configs === void 0 ? void 0 : configs.type) {
47
36
  case 'frontend':
48
37
  yield generator$2.generateFrontend(tree, configs);
@@ -60,7 +49,7 @@ const generatePackages = (tree, parent, packages) => tslib.__awaiter(void 0, voi
60
49
  for (const [packageName, packageConfig] of Object.entries(packages)) {
61
50
  const configs = packageConfig;
62
51
  configs.name = packageName;
63
- configs.directory = `${parent}/packages`;
52
+ configs.directory = path__namespace.join(parent, 'packages');
64
53
  switch (packageConfig === null || packageConfig === void 0 ? void 0 : packageConfig.type) {
65
54
  case 'packages-core':
66
55
  yield generator$6.generateCorePackage(tree, configs);
@@ -76,4 +65,12 @@ const generatePackages = (tree, parent, packages) => tslib.__awaiter(void 0, voi
76
65
  break;
77
66
  }
78
67
  }
68
+ });
69
+ const processConfigs = (tree, configs) => tslib.__awaiter(void 0, void 0, void 0, function* () {
70
+ if (configs.servers) {
71
+ yield generateServers(tree, configs.parent, configs.servers);
72
+ }
73
+ if (configs.packages && configs.packages.modules) {
74
+ yield generatePackages(tree, configs.parent, configs.packages.modules);
75
+ }
79
76
  });exports.addFullstackGenerator=addFullstackGenerator;exports.default=addFullstackGenerator;//# sourceMappingURL=generator.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"generator.cjs","sources":["../../../src/generators/add-fullstack/generator.ts"],"sourcesContent":[null],"names":["getValid","generateFiles","path","updateJson","formatFiles","isValid","__awaiter","generateFrontend","generateBackend","generateMoleculer","generateCorePackage","generateBrowserPackage","generateClientPackage","generateServerPackage"],"mappings":"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"}
1
+ {"version":3,"file":"generator.cjs","sources":["../../../src/generators/add-fullstack/generator.ts"],"sourcesContent":[null],"names":["path","getValid","generateFiles","updateJenkinsFile","updatePackageJson","formatFiles","isValid","fs","__awaiter","generateFrontend","generateBackend","generateMoleculer","generateCorePackage","generateBrowserPackage","generateClientPackage","generateServerPackage"],"mappings":"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"}
@@ -1,21 +1,18 @@
1
- import {__awaiter}from'tslib';import {generateFiles,updateJson,formatFiles}from'@nx/devkit';import*as path from'path';import fs from'fs';import {getValid,isValid}from'../../utils/index.mjs';import {generateFrontend}from'../add-frontend/generator.mjs';import {generateBackend}from'../add-backend/generator.mjs';import {generateMoleculer}from'../add-moleculer/generator.mjs';import {generateBrowserPackage}from'../add-browser-package/generator.mjs';import {generateClientPackage}from'../add-client-package/generator.mjs';import {generateCorePackage}from'../add-core-package/generator.mjs';import {generateServerPackage}from'../add-server-package/generator.mjs';import'../../executors/update-deploy-version/executor.mjs';function addFullstackGenerator(tree, options) {
1
+ import {__awaiter}from'tslib';import {generateFiles,formatFiles}from'@nx/devkit';import*as path from'path';import*as fs from'fs';import {getValid,isValid}from'../../utils/index.mjs';import {updateJenkinsFile}from'./updates/jenkinsfileUpdate.mjs';import {updatePackageJson}from'./updates/packageJsonUpdate.mjs';import {generateFrontend}from'../add-frontend/generator.mjs';import {generateBackend}from'../add-backend/generator.mjs';import {generateMoleculer}from'../add-moleculer/generator.mjs';import {generateBrowserPackage}from'../add-browser-package/generator.mjs';import {generateClientPackage}from'../add-client-package/generator.mjs';import {generateCorePackage}from'../add-core-package/generator.mjs';import {generateServerPackage}from'../add-server-package/generator.mjs';import'../../executors/update-deploy-version/executor.mjs';function addFullstackGenerator(tree, options) {
2
2
  return __awaiter(this, void 0, void 0, function* () {
3
3
  var _a;
4
- const projectRoot = (_a = getValid(options.name)) !== null && _a !== void 0 ? _a : 'fullstack-pro';
5
- // addProjectConfiguration(tree, projectRoot, {
6
- // root: projectRoot,
7
- // projectType: 'library',
8
- // sourceRoot: `${projectRoot}/src`,
9
- // targets: {},
10
- // });
4
+ const basePath = options.path || '';
5
+ const projectRoot = path.join(basePath, (_a = getValid(options.name)) !== null && _a !== void 0 ? _a : 'fullstack-pro');
6
+ console.log(`basePath: ${basePath}`);
11
7
  generateFiles(tree, path.join(__dirname, 'files'), projectRoot, options);
12
- updateJson(tree, `${projectRoot}/package.json`, (packageJson) => {
13
- packageJson['name'] = projectRoot;
14
- return packageJson;
15
- });
8
+ // Update Jenkinsfile with dynamic values
9
+ const jenkinsFilePath = path.join(projectRoot, 'Jenkinsfile');
10
+ updateJenkinsFile(jenkinsFilePath, options.name);
11
+ // Update package.json with the project name
12
+ updatePackageJson(tree, projectRoot, getValid(options.name));
16
13
  yield formatFiles(tree);
17
14
  if (isValid(options.config)) {
18
- const configPath = getValid(options.config);
15
+ const configPath = path.resolve(basePath, getValid(options.config));
19
16
  if (fs.existsSync(configPath)) {
20
17
  try {
21
18
  const content = String(fs.readFileSync(configPath));
@@ -30,19 +27,11 @@ import {__awaiter}from'tslib';import {generateFiles,updateJson,formatFiles}from'
30
27
  }
31
28
  });
32
29
  }
33
- const processConfigs = (tree, configs) => __awaiter(void 0, void 0, void 0, function* () {
34
- if (configs.servers) {
35
- yield generateServers(tree, configs.parent, configs.servers);
36
- }
37
- if (configs.packages && configs.packages.modules) {
38
- yield generatePackages(tree, configs.parent, configs.packages.modules);
39
- }
40
- });
41
30
  const generateServers = (tree, parent, servers) => __awaiter(void 0, void 0, void 0, function* () {
42
31
  for (const [serverName, serverConfig] of Object.entries(servers)) {
43
32
  const configs = serverConfig;
44
33
  configs.name = serverName;
45
- configs.directory = `${parent}/servers`;
34
+ configs.directory = path.join(parent, 'servers');
46
35
  switch (configs === null || configs === void 0 ? void 0 : configs.type) {
47
36
  case 'frontend':
48
37
  yield generateFrontend(tree, configs);
@@ -60,7 +49,7 @@ const generatePackages = (tree, parent, packages) => __awaiter(void 0, void 0, v
60
49
  for (const [packageName, packageConfig] of Object.entries(packages)) {
61
50
  const configs = packageConfig;
62
51
  configs.name = packageName;
63
- configs.directory = `${parent}/packages`;
52
+ configs.directory = path.join(parent, 'packages');
64
53
  switch (packageConfig === null || packageConfig === void 0 ? void 0 : packageConfig.type) {
65
54
  case 'packages-core':
66
55
  yield generateCorePackage(tree, configs);
@@ -76,4 +65,12 @@ const generatePackages = (tree, parent, packages) => __awaiter(void 0, void 0, v
76
65
  break;
77
66
  }
78
67
  }
68
+ });
69
+ const processConfigs = (tree, configs) => __awaiter(void 0, void 0, void 0, function* () {
70
+ if (configs.servers) {
71
+ yield generateServers(tree, configs.parent, configs.servers);
72
+ }
73
+ if (configs.packages && configs.packages.modules) {
74
+ yield generatePackages(tree, configs.parent, configs.packages.modules);
75
+ }
79
76
  });export{addFullstackGenerator,addFullstackGenerator as default};//# sourceMappingURL=generator.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"generator.mjs","sources":["../../../src/generators/add-fullstack/generator.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.mjs","sources":["../../../src/generators/add-fullstack/generator.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -12,6 +12,11 @@
12
12
  "config": {
13
13
  "type": "string",
14
14
  "description": "The absolute path of config file"
15
+ },
16
+ "path": {
17
+ "type": "string",
18
+ "description": "The base path where the project will be created or updated",
19
+ "x-prompt": "Where do you want to create or update the project? (Leave empty for the current directory)"
15
20
  }
16
21
  },
17
22
  "required": ["name"]
@@ -0,0 +1,2 @@
1
+ export * from './jenkinsfileUpdate';
2
+ export * from './packageJsonUpdate';
@@ -0,0 +1,36 @@
1
+ 'use strict';var fs=require('fs');function updateJenkinsFile(filePath, name) {
2
+ const paramsToUpdate = {
3
+ BASE_NAMESPACE: name,
4
+ CONNECTION_ID: name,
5
+ WORKSPACE_ID: name,
6
+ UNIQUE_NAME: name,
7
+ };
8
+ let jenkinsFileContent = '';
9
+ if (fs.existsSync(filePath)) {
10
+ jenkinsFileContent = fs.readFileSync(filePath, 'utf-8');
11
+ }
12
+ let labelExists = false;
13
+ const updatedContent = jenkinsFileContent.split('\n').map(line => {
14
+ // Check if the label is already defined and skip modifying it
15
+ if (line.includes('label') && line.includes('kubernetes')) {
16
+ labelExists = true;
17
+ }
18
+ // Update only the specified parameters
19
+ for (const param in paramsToUpdate) {
20
+ if (line.includes(`string(name: '${param}'`)) {
21
+ return line.replace(/defaultValue: '.*'/, `defaultValue: '${paramsToUpdate[param]}'`);
22
+ }
23
+ }
24
+ return line;
25
+ }).join('\n');
26
+ // Add missing parameters if they don't exist
27
+ Object.keys(paramsToUpdate).forEach(param => {
28
+ if (!updatedContent.includes(`string(name: '${param}'`)) {
29
+ updatedContent.concat(`string(name: '${param}', defaultValue: '${paramsToUpdate[param]}', description: '${param.replace(/_/g, ' ').toLowerCase()}')\n`);
30
+ }
31
+ });
32
+ // Only write back to the file if we have made changes
33
+ if (!labelExists || Object.keys(paramsToUpdate).some(param => !updatedContent.includes(`string(name: '${param}'`))) {
34
+ fs.writeFileSync(filePath, updatedContent, 'utf-8');
35
+ }
36
+ }exports.updateJenkinsFile=updateJenkinsFile;//# sourceMappingURL=jenkinsfileUpdate.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jenkinsfileUpdate.cjs","sources":["../../../../src/generators/add-fullstack/updates/jenkinsfileUpdate.ts"],"sourcesContent":[null],"names":[],"mappings":"kCAGgB,SAAA,iBAAiB,CAAC,QAAgB,EAAE,IAAY,EAAA;AAC5D,IAAA,MAAM,cAAc,GAAG;AACnB,QAAA,cAAc,EAAE,IAAI;AACpB,QAAA,aAAa,EAAE,IAAI;AACnB,QAAA,YAAY,EAAE,IAAI;AAClB,QAAA,WAAW,EAAE,IAAI;KACpB,CAAC;IAEF,IAAI,kBAAkB,GAAG,EAAE,CAAC;AAC5B,IAAA,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QACzB,kBAAkB,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;KAC3D;IAED,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB,IAAA,MAAM,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAG;;AAE7D,QAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;YACvD,WAAW,GAAG,IAAI,CAAC;SACtB;;AAGD,QAAA,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE;YAChC,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,KAAK,CAAA,CAAA,CAAG,CAAC,EAAE;AAC1C,gBAAA,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAkB,eAAA,EAAA,cAAc,CAAC,KAAK,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC;aACzF;SACJ;AACD,QAAA,OAAO,IAAI,CAAC;AAChB,KAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;IAGd,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,KAAK,IAAG;QACxC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,iBAAiB,KAAK,CAAA,CAAA,CAAG,CAAC,EAAE;YACrD,cAAc,CAAC,MAAM,CACjB,CAAiB,cAAA,EAAA,KAAK,qBAAqB,cAAc,CAAC,KAAK,CAAC,CAAoB,iBAAA,EAAA,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAM,IAAA,CAAA,CACnI,CAAC;SACL;AACL,KAAC,CAAC,CAAC;;IAGH,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAiB,cAAA,EAAA,KAAK,CAAG,CAAA,CAAA,CAAC,CAAC,EAAE;QAChH,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;KACvD;AACL"}
@@ -0,0 +1 @@
1
+ export declare function updateJenkinsFile(filePath: string, name: string): void;
@@ -0,0 +1,36 @@
1
+ import fs__default from'fs';function updateJenkinsFile(filePath, name) {
2
+ const paramsToUpdate = {
3
+ BASE_NAMESPACE: name,
4
+ CONNECTION_ID: name,
5
+ WORKSPACE_ID: name,
6
+ UNIQUE_NAME: name,
7
+ };
8
+ let jenkinsFileContent = '';
9
+ if (fs__default.existsSync(filePath)) {
10
+ jenkinsFileContent = fs__default.readFileSync(filePath, 'utf-8');
11
+ }
12
+ let labelExists = false;
13
+ const updatedContent = jenkinsFileContent.split('\n').map(line => {
14
+ // Check if the label is already defined and skip modifying it
15
+ if (line.includes('label') && line.includes('kubernetes')) {
16
+ labelExists = true;
17
+ }
18
+ // Update only the specified parameters
19
+ for (const param in paramsToUpdate) {
20
+ if (line.includes(`string(name: '${param}'`)) {
21
+ return line.replace(/defaultValue: '.*'/, `defaultValue: '${paramsToUpdate[param]}'`);
22
+ }
23
+ }
24
+ return line;
25
+ }).join('\n');
26
+ // Add missing parameters if they don't exist
27
+ Object.keys(paramsToUpdate).forEach(param => {
28
+ if (!updatedContent.includes(`string(name: '${param}'`)) {
29
+ updatedContent.concat(`string(name: '${param}', defaultValue: '${paramsToUpdate[param]}', description: '${param.replace(/_/g, ' ').toLowerCase()}')\n`);
30
+ }
31
+ });
32
+ // Only write back to the file if we have made changes
33
+ if (!labelExists || Object.keys(paramsToUpdate).some(param => !updatedContent.includes(`string(name: '${param}'`))) {
34
+ fs__default.writeFileSync(filePath, updatedContent, 'utf-8');
35
+ }
36
+ }export{updateJenkinsFile};//# sourceMappingURL=jenkinsfileUpdate.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jenkinsfileUpdate.mjs","sources":["../../../../src/generators/add-fullstack/updates/jenkinsfileUpdate.ts"],"sourcesContent":[null],"names":["fs"],"mappings":"4BAGgB,SAAA,iBAAiB,CAAC,QAAgB,EAAE,IAAY,EAAA;AAC5D,IAAA,MAAM,cAAc,GAAG;AACnB,QAAA,cAAc,EAAE,IAAI;AACpB,QAAA,aAAa,EAAE,IAAI;AACnB,QAAA,YAAY,EAAE,IAAI;AAClB,QAAA,WAAW,EAAE,IAAI;KACpB,CAAC;IAEF,IAAI,kBAAkB,GAAG,EAAE,CAAC;AAC5B,IAAA,IAAIA,WAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;QACzB,kBAAkB,GAAGA,WAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;KAC3D;IAED,IAAI,WAAW,GAAG,KAAK,CAAC;AAExB,IAAA,MAAM,cAAc,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAG;;AAE7D,QAAA,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE;YACvD,WAAW,GAAG,IAAI,CAAC;SACtB;;AAGD,QAAA,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE;YAChC,IAAI,IAAI,CAAC,QAAQ,CAAC,iBAAiB,KAAK,CAAA,CAAA,CAAG,CAAC,EAAE;AAC1C,gBAAA,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAkB,eAAA,EAAA,cAAc,CAAC,KAAK,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC;aACzF;SACJ;AACD,QAAA,OAAO,IAAI,CAAC;AAChB,KAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;IAGd,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,CAAC,KAAK,IAAG;QACxC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,iBAAiB,KAAK,CAAA,CAAA,CAAG,CAAC,EAAE;YACrD,cAAc,CAAC,MAAM,CACjB,CAAiB,cAAA,EAAA,KAAK,qBAAqB,cAAc,CAAC,KAAK,CAAC,CAAoB,iBAAA,EAAA,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAM,IAAA,CAAA,CACnI,CAAC;SACL;AACL,KAAC,CAAC,CAAC;;IAGH,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAiB,cAAA,EAAA,KAAK,CAAG,CAAA,CAAA,CAAC,CAAC,EAAE;QAChHA,WAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;KACvD;AACL"}
@@ -0,0 +1,8 @@
1
+ 'use strict';var devkit=require('@nx/devkit'),path=require('path');function _interopNamespaceDefault(e){var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var path__namespace=/*#__PURE__*/_interopNamespaceDefault(path);function updatePackageJson(tree, projectRoot, name) {
2
+ const packageJsonPath = path__namespace.join(projectRoot, 'package.json');
3
+ devkit.updateJson(tree, packageJsonPath, (packageJson) => {
4
+ packageJson['name'] = name;
5
+ // You can add more custom logic here if needed
6
+ return packageJson;
7
+ });
8
+ }exports.updatePackageJson=updatePackageJson;//# sourceMappingURL=packageJsonUpdate.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageJsonUpdate.cjs","sources":["../../../../src/generators/add-fullstack/updates/packageJsonUpdate.ts"],"sourcesContent":[null],"names":["path","updateJson"],"mappings":"0aAGgB,iBAAiB,CAAC,IAAU,EAAE,WAAmB,EAAE,IAAY,EAAA;IAC3E,MAAM,eAAe,GAAGA,eAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC/DC,iBAAU,CAAC,IAAI,EAAE,eAAe,EAAE,CAAC,WAAW,KAAI;AAC9C,QAAA,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;;AAE3B,QAAA,OAAO,WAAW,CAAC;AACvB,KAAC,CAAC,CAAC;AACP"}
@@ -0,0 +1,2 @@
1
+ import { Tree } from '@nx/devkit';
2
+ export declare function updatePackageJson(tree: Tree, projectRoot: string, name: string): void;
@@ -0,0 +1,8 @@
1
+ import {updateJson}from'@nx/devkit';import*as path from'path';function updatePackageJson(tree, projectRoot, name) {
2
+ const packageJsonPath = path.join(projectRoot, 'package.json');
3
+ updateJson(tree, packageJsonPath, (packageJson) => {
4
+ packageJson['name'] = name;
5
+ // You can add more custom logic here if needed
6
+ return packageJson;
7
+ });
8
+ }export{updatePackageJson};//# sourceMappingURL=packageJsonUpdate.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageJsonUpdate.mjs","sources":["../../../../src/generators/add-fullstack/updates/packageJsonUpdate.ts"],"sourcesContent":[null],"names":[],"mappings":"uEAGgB,iBAAiB,CAAC,IAAU,EAAE,WAAmB,EAAE,IAAY,EAAA;IAC3E,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC/D,UAAU,CAAC,IAAI,EAAE,eAAe,EAAE,CAAC,WAAW,KAAI;AAC9C,QAAA,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;;AAE3B,QAAA,OAAO,WAAW,CAAC;AACvB,KAAC,CAAC,CAAC;AACP"}
@@ -1,4 +1,4 @@
1
- FROM node:18.20-alpine
1
+ FROM node:20:16-alpine
2
2
 
3
3
  # Copy package.json only to temp folder, install its dependencies,
4
4
  # set workdir and copy the dependnecies there
@@ -25,33 +25,14 @@
25
25
  "watch": "npm run start:dev"
26
26
  },
27
27
  "dependencies": {
28
- "@casl/ability": "^4.1.5",
29
- "@cdm-logger/client": "^9.0.3",
30
- "@cdm-logger/server": "^9.0.3",
31
- "@common-stack/client-core": "6.0.1-alpha.0",
32
- "@common-stack/core": "6.0.1-alpha.0",
33
- "@common-stack/server-core": "6.0.1-alpha.0",
34
- "@common-stack/server-stack": "6.0.1-alpha.0",
35
- "@common-stack/store-mongo": "6.0.1-alpha.0",
28
+ "@common-stack/client-core": "6.0.2-alpha.2",
29
+ "@common-stack/core": "6.0.2-alpha.2",
30
+ "@common-stack/server-core": "6.0.2-alpha.2",
31
+ "@common-stack/server-stack": "6.0.2-alpha.2",
32
+ "@common-stack/store-mongo": "6.0.2-alpha.2",
36
33
  "@container-stack/mailing-api": "5.2.1-alpha.1",
37
- "app-root-path": "^3.0.0",
38
- "body-parser": "^1.19.0",
39
- "cors": "^2.8.5",
40
- "dataloader": "^2.0.0",
41
- "dotenv": "^7.0.0",
42
- "envalid": "~7.2.2",
43
- "esm": "^3.2.25",
44
- "graphql-tools": "^9.0.0",
45
34
  "helmet": "^3.21.2",
46
- "inversify": "^6.0.2",
47
- "ioredis": "^4.14.1",
48
- "lodash": "^4.17.15",
49
- "moleculer": "^0.14.2",
50
- "mongoose": "^6.3.3",
51
- "mongoose-execution-time": "^1.1.0",
52
- "react": "18.0.0",
53
- "redux": "^4.0.1",
54
- "reflect-metadata": "^0.1.13",
35
+ "react": "18.2.0",
55
36
  "rxjs": "^6.5.3",
56
37
  "rxjs-compat": "^6.5.3"
57
38
  },
@@ -62,9 +62,9 @@
62
62
  "peerDependencies": {
63
63
  "@apollo/client": ">=3.0.0",
64
64
  "@cdm-logger/server": ">=9.0.3",
65
- "@common-stack/core": "6.0.1-alpha.0",
66
- "@common-stack/server-core": "6.0.1-alpha.0",
67
- "@common-stack/store-mongo": "6.0.1-alpha.0",
65
+ "@common-stack/core": "6.0.2-alpha.2",
66
+ "@common-stack/server-core": "6.0.2-alpha.2",
67
+ "@common-stack/store-mongo": "6.0.2-alpha.2",
68
68
  "@container-stack/mailing-api": ">=0.0.35-alpha.1",
69
69
  "@vscode-alt/monaco-editor": "^0.21.4",
70
70
  "inversify": "^5.0.1",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@common-stack/generate-plugin",
3
- "version": "6.0.2-alpha.1",
3
+ "version": "6.0.2-alpha.10",
4
4
  "type": "module",
5
5
  "main": "./lib/index.mjs",
6
6
  "typings": "./lib/index.d.ts",
@@ -17,7 +17,7 @@
17
17
  "watch": "yarn build:lib:watch"
18
18
  },
19
19
  "dependencies": {
20
- "@common-stack/rollup-vite-utils": "6.0.2-alpha.1",
20
+ "@common-stack/rollup-vite-utils": "6.0.2-alpha.2",
21
21
  "@nx/devkit": "19.5.1",
22
22
  "tslib": "^2.3.0"
23
23
  },
@@ -26,5 +26,5 @@
26
26
  },
27
27
  "executors": "./executors.json",
28
28
  "generators": "./generators.json",
29
- "gitHead": "c13fa6b22a45926ce70f69b5d1215bad58bf40bb"
29
+ "gitHead": "221a1452444ac422b694b7e3225e529fe513a6e3"
30
30
  }
@@ -1,4 +1,4 @@
1
- import React, { useState, startTransition, StrictMode } from 'react';
1
+ import React, { useState, startTransition, StrictMode, useMemo, createContext, useContext } from 'react';
2
2
  import 'reflect-metadata';
3
3
  import { RemixBrowser } from '@remix-run/react';
4
4
  import { hydrateRoot } from 'react-dom/client';
@@ -27,7 +27,8 @@ import Backend from 'i18next-http-backend';
27
27
  import { getInitialNamespaces } from 'remix-i18next/client';
28
28
  import config from '@app/cde-webconfig.json';
29
29
  // @ts-ignore
30
- import { ClientStyleContext } from '@app/frontend-stack-react/entries/chakraui/context.js';
30
+ // import { ClientStyleContext } from '@app/frontend-stack-react/entries/chakraui/context.js';
31
+ import { ClientStyleContext } from './context';
31
32
 
32
33
  const { apolloClient: client, container, serviceFunc } = createClientContainer();
33
34
  const { store } = createReduxStore(client, serviceFunc(), container);
@@ -40,16 +41,21 @@ interface ClientCacheProviderProps {
40
41
  children: React.ReactNode;
41
42
  }
42
43
 
44
+ export function useClientStyleContext() {
45
+ return useContext(ClientStyleContext);
46
+ }
47
+
43
48
  function ClientCacheProvider({ children }: ClientCacheProviderProps) {
44
- const [cache, setCache] = useState(defaultCache);
49
+ const [count, setCount] = useState(0);
50
+ const defaultCache = useMemo(() => createEmotionCache(), [count]);
45
51
 
46
- function reset() {
47
- setCache(createEmotionCache());
48
- }
52
+ const reset = () => {
53
+ setCount((prev) => prev + 1);
54
+ };
49
55
 
50
56
  return (
51
57
  <ClientStyleContext.Provider value={{ reset }}>
52
- <CacheProvider value={cache}>{children}</CacheProvider>
58
+ <CacheProvider value={defaultCache}>{children}</CacheProvider>
53
59
  </ClientStyleContext.Provider>
54
60
  );
55
61
  }
@@ -75,23 +81,23 @@ async function hydrate() {
75
81
  }
76
82
  hydrateRoot(
77
83
  document.getElementById('root')!,
78
- <StrictMode>
79
- <I18nextProvider i18n={i18next}>
80
- <ClientCacheProvider>
81
- <ApolloProvider client={client}>
82
- <ReduxProvider store={store}>
83
- <SlotFillProvider>
84
- <InversifyProvider container={container} modules={clientModules}>
85
- <PersistGate loading={null} persistor={persistor}>
86
- {() => <RemixBrowser />}
87
- </PersistGate>
88
- </InversifyProvider>
89
- </SlotFillProvider>
90
- </ReduxProvider>
91
- </ApolloProvider>
92
- </ClientCacheProvider>
93
- </I18nextProvider>
94
- </StrictMode>,
84
+ // <StrictMode>
85
+ <I18nextProvider i18n={i18next}>
86
+ <ClientCacheProvider>
87
+ <ApolloProvider client={client}>
88
+ <ReduxProvider store={store}>
89
+ <SlotFillProvider>
90
+ <InversifyProvider container={container} modules={clientModules}>
91
+ <PersistGate loading={null} persistor={persistor}>
92
+ {() => <RemixBrowser />}
93
+ </PersistGate>
94
+ </InversifyProvider>
95
+ </SlotFillProvider>
96
+ </ReduxProvider>
97
+ </ApolloProvider>
98
+ </ClientCacheProvider>
99
+ </I18nextProvider>,
100
+ // </StrictMode>,
95
101
  );
96
102
  // });
97
103
  }