@simitgroup/simpleapp-generator 1.0.16 → 1.0.20

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 (68) hide show
  1. package/README.md +28 -18
  2. package/backend1/.eslintrc.js +25 -0
  3. package/backend1/.prettierrc +4 -0
  4. package/backend1/README.md +73 -0
  5. package/backend1/nest-cli.json +8 -0
  6. package/backend1/package.json +69 -0
  7. package/backend1/pnpm-lock.yaml +5208 -0
  8. package/backend1/src/app.controller.js +71 -0
  9. package/backend1/src/app.controller.js.map +1 -0
  10. package/backend1/src/app.controller.spec.js +21 -0
  11. package/backend1/src/app.controller.spec.js.map +1 -0
  12. package/backend1/src/app.controller.spec.ts +22 -0
  13. package/backend1/src/app.controller.ts +12 -0
  14. package/backend1/src/app.module.js +67 -0
  15. package/backend1/src/app.module.js.map +1 -0
  16. package/backend1/src/app.module.ts +10 -0
  17. package/backend1/src/app.service.js +64 -0
  18. package/backend1/src/app.service.js.map +1 -0
  19. package/backend1/src/app.service.ts +8 -0
  20. package/backend1/src/main.js +10 -0
  21. package/backend1/src/main.js.map +1 -0
  22. package/backend1/src/main.ts +8 -0
  23. package/backend1/test/app.e2e-spec.js +45 -0
  24. package/backend1/test/app.e2e-spec.js.map +1 -0
  25. package/backend1/test/app.e2e-spec.ts +24 -0
  26. package/backend1/test/jest-e2e.json +9 -0
  27. package/backend1/tsconfig.build.json +4 -0
  28. package/backend1/tsconfig.json +21 -0
  29. package/definations/category.cat.jsonschema.json +1 -0
  30. package/definations/product.prd.jsonschema.json +40 -0
  31. package/dist/createproject.js +13 -3
  32. package/dist/createproject.js.map +1 -1
  33. package/dist/generate.js +3 -3
  34. package/dist/generate.js.map +1 -1
  35. package/dist/index.js +36 -51
  36. package/dist/index.js.map +1 -1
  37. package/dist/index2.js +118 -0
  38. package/dist/index2.js.map +1 -0
  39. package/dist/installdependency.js +20 -0
  40. package/dist/installdependency.js.map +1 -0
  41. package/dist/installnest.js +2 -0
  42. package/dist/installnest.js.map +1 -0
  43. package/dist/installnuxt.js +2 -0
  44. package/dist/installnuxt.js.map +1 -0
  45. package/dist/processors/jsonschemabuilder.js +1 -1
  46. package/dist/processors/jsonschemabuilder.js.map +1 -1
  47. package/dist/validation.js +2 -0
  48. package/dist/validation.js.map +1 -0
  49. package/openapitools.json +0 -0
  50. package/package.json +5 -1
  51. package/sampleconfig.json +2 -2
  52. package/src/createproject.ts +17 -4
  53. package/src/generate.ts +3 -3
  54. package/src/index.ts +56 -60
  55. package/src/index2.ts +132 -0
  56. package/src/installdependency.sh +5 -0
  57. package/src/installdependency.ts +4 -0
  58. package/src/installnest.ts +0 -0
  59. package/src/installnuxt.ts +0 -0
  60. package/src/processors/jsonschemabuilder.ts +1 -1
  61. package/src/validation.ts +0 -0
  62. package/templates/SimpleAppService.eta +3 -0
  63. package/templates/basic/pageindex.vue.eta +13 -9
  64. package/templates/nuxt/components.crudsimple.vue.eta +24 -7
  65. package/templates/nuxt/nuxt.config.ts.eta +6 -0
  66. package/templates/nuxt/plugins.simpleapp.ts.eta +8 -3
  67. package/tsconfig.json +1 -1
  68. package/dist/app.module.ts +0 -14
package/dist/index.js CHANGED
@@ -1,12 +1,14 @@
1
1
  #! /usr/bin/env node
2
2
  "use strict";
3
- var _a, _b, _c, _d;
3
+ var _a, _b, _c;
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ const console_1 = require("console");
4
6
  const program = require("commander"); // add this line
5
7
  const Fieldtypes = require('./type');
6
8
  const generator = require('./generate');
7
9
  const fs = require('fs');
8
- const { createNuxt, createNest } = require('./createproject');
9
- const { exec } = require("child_process");
10
+ const createproject = require('./createproject');
11
+ const ps = require("child_process");
10
12
  const capitalizeFirstLetter = require('./libs');
11
13
  const { Logger, ILogObj } = require("tslog");
12
14
  const log = new Logger();
@@ -18,69 +20,52 @@ program
18
20
  .version(version)
19
21
  .description("An simpleapp CLI tool for generate frontend (vuejs) and backend(nestjs) codes")
20
22
  .option("-c, --config-file <value>", 'configuration file content such as:{"definationsFolder":"./definations", "backendFolder":"./nestproject/src/docs", "frontendFolder":"./nuxt/server"}')
21
- // .option("-s, --definations-folder <value>", "load defination files from which folder")
22
- // .option("-b, --backend-folder <value>", "Create backend code at which folder")
23
- // .option("-f, --frontend-folder <value>", "Create frontend code at which folder")
24
- // .option("-i, --openapi3-yaml <value>", 'openapi3.yaml generated by backend server')
25
23
  .parse(process.argv);
24
+ let path = '';
26
25
  const options = program.opts();
27
26
  console.log(figlet.textSync(`SimpleApp Generator ${version}`));
28
- // console.log(options)
29
- let path = '';
30
- if (options.configFile[0] == '.') {
27
+ if (!options.configFile) {
28
+ log.error("Config file parameter is required. Example: simpleapp-generator -c ./config.json");
29
+ throw "Undefine configuration file";
30
+ }
31
+ else if (options.configFile && options.configFile[0] == '/') {
32
+ path = options.configFile;
33
+ }
34
+ else if (options.configFile) {
31
35
  path = process.cwd() + '/' + options.configFile;
32
36
  }
33
37
  else {
34
- path = options.configFile;
38
+ log.error("undefine configuration file, use command simpleapp-generator -c <configfilename.json>");
39
+ throw console_1.error;
35
40
  }
36
41
  const configs = require(path);
37
42
  console.log("configurations: ", configs);
38
43
  const definationsFolder = (_a = configs.definationsFolder) !== null && _a !== void 0 ? _a : options.definationsFolder;
39
44
  const backendFolder = (_b = configs.backendFolder) !== null && _b !== void 0 ? _b : options.backendFolder;
40
45
  const frontendFolder = (_c = configs.frontendFolder) !== null && _c !== void 0 ? _c : options.frontendFolder;
41
- const openapi3Yaml = (_d = configs.openapi3Yaml) !== null && _d !== void 0 ? _d : options.openapi3Yaml;
42
- const runGenNext = (callback) => {
46
+ const runGenerator = async () => {
43
47
  if (!fs.existsSync(backendFolder)) {
44
- log.error(`${backendFolder} does not exists, please run "nest new -p pnpm ${backendFolder}"`);
48
+ // npm install -g
49
+ const child = ps.spawn('npm', ['install', 'pnpm', '@nestjs/cli', '@openapitools/openapi-generator-cli', 'nuxi'], { stdio: 'inherit', });
50
+ child.on('exit', (a, b) => {
51
+ console.log("install dependency ", a, b);
52
+ const child2 = ps.spawn('nest', ['new', '-p', 'pnpm', backendFolder], { stdio: 'inherit', });
53
+ });
45
54
  }
46
- else if (!fs.existsSync(`${backendFolder}/.env`)) {
47
- log.info(`initial nest configuratoin for simpleapp generator`);
48
- createNest(backendFolder, callback);
49
- }
50
- else {
51
- log.warn(`.env file exists, skip nest initialization`);
52
- callback();
53
- }
54
- };
55
- const runGenNuxt = (callback) => {
56
55
  if (!fs.existsSync(frontendFolder)) {
57
- log.error(`${frontendFolder} does not exists, please run "npx nuxi@latest init ${frontendFolder}"`);
58
- }
59
- else if (!fs.existsSync(`${frontendFolder}/.env`)) {
60
- log.info(`initial nuxt configuratoin for simpleapp generator`);
61
- createNuxt(frontendFolder, callback);
62
- }
63
- else {
64
- log.warn(`.env file exists, skip nuxt initialization`);
65
- callback();
56
+ // const child3 = ps.spawn('npx',['nuxi@latest','init',frontendFolder],{ stdio: 'inherit',})
66
57
  }
58
+ //
59
+ // child.stdout.on('data', (data) => {
60
+ // console.log(`child stdout:\n${data}`);
61
+ // });
62
+ // process.stdin.pipe(child.stdin)
63
+ // const installnest=()=>{}
64
+ // const installnuxt=()=>{}
65
+ // const installdependency=()=>{}
66
+ // Promise.all([installdependency(),installnuxt(),installnest()]).then(()=>{
67
+ // //run generate source code
68
+ // })
67
69
  };
68
- runGenNext(() => {
69
- log.info("runGenNext (backen) done");
70
- runGenNuxt(() => {
71
- log.info("runGenNuxt (frontend) done");
72
- generator.initialize(definationsFolder, backendFolder, frontendFolder);
73
- exec(`cd ${frontendFolder};npx prettier --write "./pages/**/*.vue" "./simpleapp/**/*" `);
74
- exec(`cd ${backendFolder};npx run format `);
75
- if (openapi3Yaml != '') {
76
- exec(`openapi-generator generate -i ${openapi3Yaml} -o ${frontendFolder}/simpleapp/openapi -g typescript-axios --skip-validate-spec`, (error, stdout, stderr) => {
77
- if (error) {
78
- log.error(stderr);
79
- }
80
- });
81
- }
82
- });
83
- });
84
- // pnpm exec prettier ./src/docs --write
85
- // pnpm exec prettier ./apiclients --write
70
+ runGenerator();
86
71
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index2.js ADDED
@@ -0,0 +1,118 @@
1
+ #! /usr/bin/env node
2
+ "use strict";
3
+ var _a, _b, _c, _d;
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ const console_1 = require("console");
6
+ const program = require("commander"); // add this line
7
+ const Fieldtypes = require('./type');
8
+ const generator = require('./generate');
9
+ const fs = require('fs');
10
+ const createproject = require('./createproject');
11
+ const { exec } = require("child_process");
12
+ const capitalizeFirstLetter = require('./libs');
13
+ const { Logger, ILogObj } = require("tslog");
14
+ const log = new Logger();
15
+ const figlet = require("figlet");
16
+ // const program = new Command();
17
+ const pj = require('../package.json');
18
+ let version = pj.version;
19
+ program
20
+ .version(version)
21
+ .description("An simpleapp CLI tool for generate frontend (vuejs) and backend(nestjs) codes")
22
+ .option("-c, --config-file <value>", 'configuration file content such as:{"definationsFolder":"./definations", "backendFolder":"./nestproject/src/docs", "frontendFolder":"./nuxt/server"}')
23
+ // .option("-s, --definations-folder <value>", "load defination files from which folder")
24
+ // .option("-b, --backend-folder <value>", "Create backend code at which folder")
25
+ // .option("-f, --frontend-folder <value>", "Create frontend code at which folder")
26
+ // .option("-i, --openapi3-yaml <value>", 'openapi3.yaml generated by backend server')
27
+ .parse(process.argv);
28
+ const options = program.opts();
29
+ console.log(figlet.textSync(`SimpleApp Generator ${version}`));
30
+ // console.log(options)
31
+ let path = '';
32
+ if (!options.configFile) {
33
+ log.error("Config file parameter is required. Example: simpleapp-generator -c ./config.json");
34
+ throw "Undefine configuration file";
35
+ }
36
+ else if (options.configFile && options.configFile[0] == '/') {
37
+ path = options.configFile;
38
+ }
39
+ else if (options.configFile) {
40
+ path = process.cwd() + '/' + options.configFile;
41
+ }
42
+ else {
43
+ log.error("undefine configuration file, use command simpleapp-generator -c <configfilename.json>");
44
+ throw console_1.error;
45
+ }
46
+ const configs = require(path);
47
+ console.log("configurations: ", configs);
48
+ const definationsFolder = (_a = configs.definationsFolder) !== null && _a !== void 0 ? _a : options.definationsFolder;
49
+ const backendFolder = (_b = configs.backendFolder) !== null && _b !== void 0 ? _b : options.backendFolder;
50
+ const frontendFolder = (_c = configs.frontendFolder) !== null && _c !== void 0 ? _c : options.frontendFolder;
51
+ const openapi3Yaml = (_d = configs.openapi3Yaml) !== null && _d !== void 0 ? _d : options.openapi3Yaml;
52
+ const runGenNext = async (callback) => {
53
+ let isnestready = false;
54
+ if (!fs.existsSync(backendFolder)) {
55
+ console.log("Nest does not exists, begin install nodejs environment tools: [pnpm, @nestjs/cli, @openapitools/openapi-generator-cli, nuxi]");
56
+ isnestready = await exec("npm install -g pnpm @nestjs/cli @openapitools/openapi-generator-cli nuxi", async (a, b, c) => {
57
+ console.log("result of environment tools:", a, b, c);
58
+ console.log(`Install new nest backend: 'nest new -p pnpm ${backendFolder}'`);
59
+ return await exec(`nest new -p pnpm ${backendFolder}`, (a, b, c) => {
60
+ console.log("new nest result", a, b, c);
61
+ return true;
62
+ });
63
+ });
64
+ }
65
+ else {
66
+ isnestready = true;
67
+ }
68
+ if (isnestready) {
69
+ if (!fs.existsSync(`${backendFolder}/.env`)) {
70
+ log.info(`initial nest configuratoin for simpleapp generator`);
71
+ await createNest(backendFolder, callback);
72
+ }
73
+ else {
74
+ log.warn(`.env file exists, skip nest initialization`);
75
+ callback();
76
+ }
77
+ }
78
+ else {
79
+ log.error('nest not ready, which shouldnot continue');
80
+ throw console_1.error;
81
+ }
82
+ };
83
+ const runGenNuxt = async (callback) => {
84
+ if (!fs.existsSync(frontendFolder)) {
85
+ log.error(`${frontendFolder} does not exists, please run "npx nuxi@latest init ${frontendFolder}"`);
86
+ }
87
+ else if (!fs.existsSync(`${frontendFolder}/.env`)) {
88
+ log.info(`initial nuxt configuratoin for simpleapp generator`);
89
+ createNuxt(frontendFolder, callback);
90
+ }
91
+ else {
92
+ log.warn(`.env file exists, skip nuxt initialization`);
93
+ callback();
94
+ }
95
+ };
96
+ const generateCode = async () => {
97
+ await runGenNext(async () => {
98
+ log.info("runGenNext (backen) done");
99
+ await runGenNuxt(async () => {
100
+ log.info("runGenNuxt (frontend) done");
101
+ generator.initialize(definationsFolder, backendFolder, frontendFolder);
102
+ exec(`cd ${frontendFolder};npx prettier --write "./pages/**/*.vue" "./simpleapp/**/*" `);
103
+ exec(`cd ${backendFolder};npx run format `);
104
+ if (openapi3Yaml != '') {
105
+ exec(`openapi-generator-cli generate -i ${openapi3Yaml} -o ${frontendFolder}/simpleapp/openapi -g typescript-axios --skip-validate-spec`, (error, stdout, stderr) => {
106
+ if (error) {
107
+ log.error(stderr);
108
+ }
109
+ });
110
+ }
111
+ });
112
+ });
113
+ };
114
+ log.info("generate code: ");
115
+ generateCode();
116
+ // pnpm exec prettier ./src/docs --write
117
+ // pnpm exec prettier ./apiclients --write
118
+ //# sourceMappingURL=index2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index2.js","sourceRoot":"","sources":["../src/index2.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ #!/bin/bash
2
+ "use strict";
3
+ npm;
4
+ install - g;
5
+ pnpm;
6
+ /cli @openapitools/openapi - generator - cli;
7
+ nuxi;
8
+ nest;
9
+ new - p;
10
+ pnpm;
11
+ $backendFolder;
12
+ npx;
13
+ nuxi;
14
+ init;
15
+ $;
16
+ {
17
+ frontendFolder;
18
+ }
19
+ ";
20
+ //# sourceMappingURL=installdependency.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"installdependency.js","sourceRoot":"","sources":["../src/installdependency.ts"],"names":[],"mappings":";;AACA,GAAG,CAAA;AAAC,OAAO,GAAE,CAAC,CAAA;AAAC,IAAI,CAAA;AAAQ,0BAA0B,GAAC,SAAS,GAAC,GAAG,CAAA;AAAC,IAAI,CAAA;AACxE,IAAI,CAAA;AAAC,IAAI,AAAD,GAAE,CAAC,CAAA;AAAC,IAAI,CAAA;AAAC,cAAc,CAAA;AAC/B,GAAG,CAAA;AAAC,IAAI,CAAA;AAAQ,IAAI,CAAA;AAAC,CAAC,CAAA;AAAA;IAAC,cAAc,CAAA;CAAC;AAAA,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=installnest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"installnest.js","sourceRoot":"","sources":["../src/installnest.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=installnuxt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"installnuxt.js","sourceRoot":"","sources":["../src/installnuxt.ts"],"names":[],"mappings":""}
@@ -96,7 +96,7 @@ requiredlist) => {
96
96
  // else
97
97
  if (obj.type == 'object') {
98
98
  if (obj[FOREIGNKEY_PROPERTY]) {
99
- console.warn("FOREIGNKEY_PROPERTY exists", FOREIGNKEY_PROPERTY, obj[FOREIGNKEY_PROPERTY]);
99
+ // console.warn("FOREIGNKEY_PROPERTY exists",FOREIGNKEY_PROPERTY,obj[FOREIGNKEY_PROPERTY])
100
100
  const masterdatacollection = obj[FOREIGNKEY_PROPERTY];
101
101
  const clientdatacollection = docname.toLowerCase();
102
102
  const foreignkeyidentity = key + '._id';
@@ -1 +1 @@
1
- {"version":3,"file":"jsonschemabuilder.js","sourceRoot":"","sources":["../../src/processors/jsonschemabuilder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jsonschemabuilder.js","sourceRoot":"","sources":["../../src/processors/jsonschemabuilder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=validation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":""}
File without changes
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@simitgroup/simpleapp-generator",
3
- "version": "1.0.16",
3
+ "version": "1.0.20",
4
4
  "description": "frontend nuxtjs and backend nests code generator using jsonschema",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -20,9 +20,11 @@
20
20
  },
21
21
  "dependencies": {
22
22
  "@apidevtools/json-schema-ref-parser": "^10.1.0",
23
+ "@nestjs/cli": "^10.1.17",
23
24
  "@nestjs/config": "^3.0.0",
24
25
  "@nestjs/mongoose": "^10.0.1",
25
26
  "@nestjs/swagger": "^7.1.8",
27
+ "@openapitools/openapi-generator-cli": "^2.7.0",
26
28
  "ajv": "^8.12.0",
27
29
  "ajv-formats": "^2.1.1",
28
30
  "axios": "^1.4.0",
@@ -35,7 +37,9 @@
35
37
  "json-schema": "^0.4.0",
36
38
  "json-schema-ref-parser": "^9.0.9",
37
39
  "mongoose": "^7.4.4",
40
+ "nuxi": "^3.8.0",
38
41
  "path": "^0.12.7",
42
+ "pnpm": "^8.7.4",
39
43
  "tslog": "^4.9.1"
40
44
  },
41
45
  "bin": {
package/sampleconfig.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "definationsFolder":"./definations",
3
- "backendFolder":"../backend1",
4
- "frontendFolder":"../frontend1",
3
+ "backendFolder":"./backend1",
4
+ "frontendFolder":"./frontend1",
5
5
  "openapi3Yaml":"../openapi.yaml"
6
6
  }
@@ -4,6 +4,7 @@ import * as constants from './constant'
4
4
  import { Logger, ILogObj } from "tslog";
5
5
  const log: Logger<ILogObj> = new Logger();
6
6
 
7
+
7
8
  const { Eta } = require('eta');
8
9
 
9
10
  const checkNodeJS= (callback)=>{
@@ -28,14 +29,19 @@ const checkNestCli = (callback)=>{
28
29
  }
29
30
  })
30
31
  }
32
+
33
+ export const installDependency = async () =>{
34
+ log.info("installDependency 'npm install -g pnpm @nestjs/cli @openapitools/openapi-generator-cli nuxi'")
35
+ return await exec("npm install -g pnpm @nestjs/cli @openapitools/openapi-generator-cli nuxi")
36
+ }
31
37
  export const createNuxt= (targetfolder:string,callback)=>{
32
38
  log.info("setting up nuxt frontend ${targetfolder}")
33
39
 
34
40
  log.info(`frontend nuxt project "${targetfolder}" created, installing module`)
35
- exec(`cd ${targetfolder};pnpm install;pnpm install -D @types/node prettier @nuxtjs/tailwindcss`, (error, stdout, stderr)=>{
41
+ exec(`cd ${targetfolder};pnpm install;pnpm install -D @types/node @vueuse/nuxt @sidebase/nuxt-auth @vueuse/core nuxt-security prettier @nuxtjs/tailwindcss`, (error, stdout, stderr)=>{
36
42
  //;pnpm install
37
43
  console.log(error, stdout, stderr)
38
- exec(`cd ${targetfolder};pnpm install --save ajv ajv-formats primeflex primeicons prettier primevue axios json-schema mitt @simitgroup/simpleapp-vue-component@latest`, (error, stdout, stderr)=>{
44
+ exec(`cd ${targetfolder};pnpm install --save ajv dotenv @fullcalendar/core @fullcalendar/vue3 quill uuid ajv-formats primeflex primeicons prettier primevue axios json-schema mitt @simitgroup/simpleapp-vue-component@latest`, (error, stdout, stderr)=>{
39
45
  console.log(error, stdout, stderr)
40
46
 
41
47
  mkdirSync(`${targetfolder}/assets/css/`,{recursive:true})
@@ -91,9 +97,16 @@ export const createNest= (targetfolder:string,callback)=>{
91
97
  const eta = new Eta({views: constants.templatedir});
92
98
  const variables=[]
93
99
  const txtEnv = eta.render('./nest.env.eta', variables);
94
- const txtMain = eta.render('./nest.main.eta', variables);
100
+ const txtMain = eta.render('./nest.main.eta', variables);
101
+
95
102
  writeFileSync(`${targetfolder}/.env`, txtEnv);
96
- writeFileSync(`${targetfolder}/src/main.ts`, txtMain);
103
+ writeFileSync(`${targetfolder}/src/main.ts`, txtMain);
104
+ const tsconfigpath = process.cwd()+'/'+`${targetfolder}/tsconfig.json`
105
+ const tsconfig = require(tsconfigpath)
106
+ tsconfig.compilerOptions.esModuleInterop=true
107
+ tsconfig.compilerOptions.resolveJsonModule=true
108
+ writeFileSync(tsconfigpath, JSON.stringify(tsconfig));
109
+
97
110
  log.info("nest project completed")
98
111
  callback()
99
112
  })
package/src/generate.ts CHANGED
@@ -55,7 +55,7 @@ export const initialize = async (defFolder:string,backendfolder:string,frontend
55
55
  }
56
56
  }
57
57
  // log.warn("foreignkeys---",foreignkeys)
58
- log.info("Activated backend modules: ",activatemodules)
58
+ log.info("Activated backend modules: ",JSON.stringify(activatemodules))
59
59
  // log.info(activatemodules)
60
60
  finalize(activatemodules,backendfolder,frontendfolder)
61
61
  return Promise.resolve(true)
@@ -266,7 +266,7 @@ const prepareEnvironments = (backendfolder:string,frontendfolder:string)=>{
266
266
 
267
267
 
268
268
  const finalize=(modules:ModuleObject[],backendfolder:string,frontendfolder:string)=>{
269
- log.info("Finalizing foreignkey:",foreignkeys)
269
+ log.info("Finalizing foreignkey:",JSON.stringify(foreignkeys))
270
270
  mkdirSync(`${backendfolder}/src/dicts/`,{ recursive: true });
271
271
  mkdirSync(`${frontendfolder}/composables/`,{ recursive: true });
272
272
 
@@ -276,7 +276,7 @@ const finalize=(modules:ModuleObject[],backendfolder:string,frontendfolder:strin
276
276
 
277
277
  const foreignkeyfile =`${backendfolder}/src/dicts/foreignkeys.json`
278
278
  writeFileSync(foreignkeyfile, JSON.stringify(foreignkeys));
279
- console.log("write to foreignkey file ",foreignkeyfile)
279
+ log.info("write to foreignkey file ",foreignkeyfile)
280
280
 
281
281
  const txtCatalogue = eta.render('./nuxt/composables.getautocomplete.ts.eta', modules);
282
282
  writeFileSync(`${frontendfolder}/composables/getAutocomplete.ts`, txtCatalogue);
package/src/index.ts CHANGED
@@ -1,11 +1,11 @@
1
1
  #! /usr/bin/env node
2
+ import { error } from "console"
2
3
  const program = require("commander") // add this line
3
4
  const Fieldtypes= require( './type')
4
5
  const generator= require( './generate')
5
6
  const fs = require( 'fs')
6
- const {createNuxt,createNest} =require( './createproject')
7
- const {exec} = require( "child_process")
8
-
7
+ const createproject =require( './createproject')
8
+ const ps = require( "child_process")
9
9
  const capitalizeFirstLetter= require( './libs')
10
10
  const {Logger, ILogObj} = require( "tslog");
11
11
 
@@ -20,72 +20,68 @@ program
20
20
  .version(version)
21
21
  .description("An simpleapp CLI tool for generate frontend (vuejs) and backend(nestjs) codes")
22
22
  .option("-c, --config-file <value>", 'configuration file content such as:{"definationsFolder":"./definations", "backendFolder":"./nestproject/src/docs", "frontendFolder":"./nuxt/server"}')
23
- // .option("-s, --definations-folder <value>", "load defination files from which folder")
24
- // .option("-b, --backend-folder <value>", "Create backend code at which folder")
25
- // .option("-f, --frontend-folder <value>", "Create frontend code at which folder")
26
- // .option("-i, --openapi3-yaml <value>", 'openapi3.yaml generated by backend server')
27
23
  .parse(process.argv);
28
24
 
29
-
25
+ let path=''
30
26
  const options = program.opts();
31
27
  console.log(figlet.textSync(`SimpleApp Generator ${version}`));
32
- // console.log(options)
33
- let path=''
34
- if(options.configFile[0]=='.'){
35
- path=process.cwd()+'/'+options.configFile
36
- }else{
37
- path=options.configFile
38
- }
39
- const configs = require(path)
40
- console.log("configurations: ",configs)
41
- const definationsFolder = configs.definationsFolder ?? options.definationsFolder
42
- const backendFolder = configs.backendFolder ?? options.backendFolder
43
- const frontendFolder = configs.frontendFolder ?? options.frontendFolder
44
- const openapi3Yaml:string = configs.openapi3Yaml ?? options.openapi3Yaml
45
-
46
- const runGenNext = (callback)=>{
47
- if(!fs.existsSync(backendFolder)){
48
- log.error(`${backendFolder} does not exists, please run "nest new -p pnpm ${backendFolder}"`)
49
- }else if(!fs.existsSync(`${backendFolder}/.env`)){
50
- log.info(`initial nest configuratoin for simpleapp generator`)
51
- createNest(backendFolder,callback)
52
- }else{
53
- log.warn(`.env file exists, skip nest initialization`)
54
- callback()
28
+ if(!options.configFile){
29
+ log.error("Config file parameter is required. Example: simpleapp-generator -c ./config.json")
30
+ throw "Undefine configuration file"
55
31
  }
56
- }
57
- const runGenNuxt = (callback)=>{
58
- if(!fs.existsSync(frontendFolder)){
59
- log.error(`${frontendFolder} does not exists, please run "npx nuxi@latest init ${frontendFolder}"`)
60
- }else if(!fs.existsSync(`${frontendFolder}/.env`)){
61
- log.info(`initial nuxt configuratoin for simpleapp generator`)
62
- createNuxt(frontendFolder,callback)
32
+ else if(options.configFile && options.configFile[0]=='/'){
33
+ path=options.configFile
34
+ }
35
+ else if(options.configFile){
36
+ path=process.cwd()+'/'+options.configFile
63
37
  }else{
64
- log.warn(`.env file exists, skip nuxt initialization`)
65
- callback()
66
-
38
+ log.error("undefine configuration file, use command simpleapp-generator -c <configfilename.json>")
39
+ throw error
67
40
  }
68
- }
69
- runGenNext(()=>{
41
+ const configs = require(path)
42
+ console.log("configurations: ",configs)
43
+ const definationsFolder = configs.definationsFolder ?? options.definationsFolder
44
+ const backendFolder = configs.backendFolder ?? options.backendFolder
45
+ const frontendFolder = configs.frontendFolder ?? options.frontendFolder
46
+
70
47
 
71
- log.info("runGenNext (backen) done")
72
- runGenNuxt(()=>{
73
- log.info("runGenNuxt (frontend) done")
74
- generator.initialize(definationsFolder,backendFolder,frontendFolder)
75
- exec(`cd ${frontendFolder};npx prettier --write "./pages/**/*.vue" "./simpleapp/**/*" `)
76
- exec(`cd ${backendFolder};npx run format `)
77
- if(openapi3Yaml !=''){
78
-
79
- exec(`openapi-generator generate -i ${openapi3Yaml} -o ${frontendFolder}/simpleapp/openapi -g typescript-axios --skip-validate-spec`,(error, stdout, stderr)=>{
80
- if(error){
81
- log.error(stderr);
82
- }
83
- });
48
+
49
+
50
+
51
+
52
+
53
+
54
+ const runGenerator = async () =>{
55
+
56
+ if(!fs.existsSync(backendFolder)){
57
+ // npm install -g
58
+ const child = ps.spawn('npm',['install','pnpm', '@nestjs/cli', '@openapitools/openapi-generator-cli', 'nuxi'],
59
+ { stdio: 'inherit',})
60
+
61
+ child.on('exit',(a,b)=>{
62
+ console.log("install dependency ",a,b)
63
+ const child2 = ps.spawn('nest',['new', '-p', 'pnpm', backendFolder],{ stdio: 'inherit',})
64
+ })
65
+
66
+ }
67
+ if(!fs.existsSync(frontendFolder)){
68
+ // const child3 = ps.spawn('npx',['nuxi@latest','init',frontendFolder],{ stdio: 'inherit',})
84
69
  }
85
- })
86
- })
70
+ //
87
71
 
72
+ // child.stdout.on('data', (data) => {
73
+ // console.log(`child stdout:\n${data}`);
74
+ // });
75
+ // process.stdin.pipe(child.stdin)
76
+
77
+ // const installnest=()=>{}
78
+ // const installnuxt=()=>{}
79
+ // const installdependency=()=>{}
80
+ // Promise.all([installdependency(),installnuxt(),installnest()]).then(()=>{
81
+ // //run generate source code
82
+
83
+ // })
84
+ }
88
85
 
89
86
 
90
- // pnpm exec prettier ./src/docs --write
91
- // pnpm exec prettier ./apiclients --write
87
+ runGenerator()