@common-stack/generate-plugin 5.0.6-alpha.4 → 5.0.6-alpha.7
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.
- package/CHANGELOG.md +8 -0
- package/README.md +280 -10
- package/cde-config.json +86 -0
- package/lib/constants/index.cjs +2 -1
- package/lib/constants/index.cjs.map +1 -1
- package/lib/constants/index.d.ts +1 -0
- package/lib/constants/index.mjs +2 -1
- package/lib/constants/index.mjs.map +1 -1
- package/lib/generators/add-backend/files/Dockerfile +1 -1
- package/lib/generators/add-backend/files/package.json +1 -60
- package/lib/generators/add-backend/generator.cjs +21 -17
- package/lib/generators/add-backend/generator.cjs.map +1 -1
- package/lib/generators/add-backend/generator.d.ts +1 -0
- package/lib/generators/add-backend/generator.mjs +21 -17
- package/lib/generators/add-backend/generator.mjs.map +1 -1
- package/lib/generators/add-browser-package/generator.cjs +14 -16
- package/lib/generators/add-browser-package/generator.cjs.map +1 -1
- package/lib/generators/add-browser-package/generator.d.ts +1 -0
- package/lib/generators/add-browser-package/generator.mjs +14 -16
- package/lib/generators/add-browser-package/generator.mjs.map +1 -1
- package/lib/generators/add-client-package/generator.cjs +14 -16
- package/lib/generators/add-client-package/generator.cjs.map +1 -1
- package/lib/generators/add-client-package/generator.d.ts +1 -0
- package/lib/generators/add-client-package/generator.mjs +14 -16
- package/lib/generators/add-client-package/generator.mjs.map +1 -1
- package/lib/generators/add-core-package/generator.cjs +14 -16
- package/lib/generators/add-core-package/generator.cjs.map +1 -1
- package/lib/generators/add-core-package/generator.d.ts +1 -0
- package/lib/generators/add-core-package/generator.mjs +14 -16
- package/lib/generators/add-core-package/generator.mjs.map +1 -1
- package/lib/generators/add-frontend/frameworks/tailwindui/entry.client.tsx.template +90 -0
- package/lib/generators/add-frontend/frameworks/tailwindui/entry.server.tsx.template +238 -0
- package/lib/generators/add-frontend/frameworks/tailwindui/root.tsx.template +117 -0
- package/lib/generators/add-frontend/frameworks/tailwindui/tailwind.css +3 -0
- package/lib/generators/add-frontend/generator.cjs +60 -42
- package/lib/generators/add-frontend/generator.cjs.map +1 -1
- package/lib/generators/add-frontend/generator.d.ts +1 -0
- package/lib/generators/add-frontend/generator.mjs +60 -42
- package/lib/generators/add-frontend/generator.mjs.map +1 -1
- package/lib/generators/add-frontend/schema.json +1 -1
- package/lib/generators/add-frontend/templates/package.json +17 -76
- package/lib/generators/add-frontend/templates/postcss.config.js +6 -0
- package/lib/generators/add-frontend/templates/tailwind.config.ts.template +12 -0
- package/lib/generators/add-fullstack/files/jest-mongodb-config.js +3 -2
- package/lib/generators/add-fullstack/files/jest.config copy.js +27 -0
- package/lib/generators/add-fullstack/files/jest.config.base.js +43 -4
- package/lib/generators/add-fullstack/files/jest.config.base.mjs +99 -0
- package/lib/generators/add-fullstack/files/jest.config.mongodb.mjs +3 -0
- package/lib/generators/add-fullstack/files/lint-staged.config.js +4 -1
- package/lib/generators/add-fullstack/files/nx.json +18 -13
- package/lib/generators/add-fullstack/files/tools/cli/helpers/util.js +1 -1
- package/lib/generators/add-fullstack/files/tools/deploy-cli/updateLernaVersion.js +1 -1
- package/lib/generators/add-fullstack/files/tools/html-plugin-template.ejs +28 -0
- package/lib/generators/add-fullstack/files/tools/prettier.config.js +8 -0
- package/lib/generators/add-fullstack/files/tools/rollup/rollupPluginGenerateJson.mjs +48 -0
- package/lib/generators/add-fullstack/files/tools/rollup/rollupPluginModifyLibFiles.mjs +410 -0
- package/lib/generators/add-fullstack/files/tools/runLint.mjs +15 -0
- package/lib/generators/add-fullstack/files/tools/sortPackageJson.mjs +0 -1
- package/lib/generators/add-fullstack/files/tools/update-dependencies.mjs +95 -0
- package/lib/generators/add-fullstack/files/tools/update-dependency-link.mjs +138 -0
- package/lib/generators/add-fullstack/files/tools/update-dependency-version.js +104 -89
- package/lib/generators/add-fullstack/files/tools/updateUtils.mjs +77 -0
- package/lib/generators/add-fullstack/generator.cjs +63 -2
- package/lib/generators/add-fullstack/generator.cjs.map +1 -1
- package/lib/generators/add-fullstack/generator.mjs +63 -2
- package/lib/generators/add-fullstack/generator.mjs.map +1 -1
- package/lib/generators/add-fullstack/schema.json +4 -0
- package/lib/generators/add-moleculer/generator.cjs +14 -16
- package/lib/generators/add-moleculer/generator.cjs.map +1 -1
- package/lib/generators/add-moleculer/generator.d.ts +1 -0
- package/lib/generators/add-moleculer/generator.mjs +14 -16
- package/lib/generators/add-moleculer/generator.mjs.map +1 -1
- package/lib/generators/add-server-package/generator.cjs +14 -16
- package/lib/generators/add-server-package/generator.cjs.map +1 -1
- package/lib/generators/add-server-package/generator.d.ts +1 -0
- package/lib/generators/add-server-package/generator.mjs +14 -16
- package/lib/generators/add-server-package/generator.mjs.map +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.mjs +1 -1
- package/package.json +3 -2
- package/src/constants/index.ts +2 -1
- package/src/generators/add-backend/generator.ts +8 -4
- package/src/generators/add-browser-package/generator.ts +7 -6
- package/src/generators/add-client-package/generator.ts +7 -6
- package/src/generators/add-core-package/generator.ts +7 -6
- package/src/generators/add-frontend/frameworks/tailwindui/entry.client.tsx.template +90 -0
- package/src/generators/add-frontend/frameworks/tailwindui/entry.server.tsx.template +238 -0
- package/src/generators/add-frontend/frameworks/tailwindui/root.tsx.template +117 -0
- package/src/generators/add-frontend/frameworks/tailwindui/tailwind.css +3 -0
- package/src/generators/add-frontend/generator.ts +24 -2
- package/src/generators/add-frontend/schema.json +1 -1
- package/src/generators/add-fullstack/files/jest-mongodb-config.js +3 -2
- package/src/generators/add-fullstack/files/jest.config copy.js +27 -0
- package/src/generators/add-fullstack/files/jest.config.base.js +43 -4
- package/src/generators/add-fullstack/files/jest.config.base.mjs +99 -0
- package/src/generators/add-fullstack/files/jest.config.mongodb.mjs +3 -0
- package/src/generators/add-fullstack/files/lint-staged.config.js +4 -1
- package/src/generators/add-fullstack/files/nx.json +18 -13
- package/src/generators/add-fullstack/files/tools/cli/helpers/util.js +1 -1
- package/src/generators/add-fullstack/files/tools/deploy-cli/updateLernaVersion.js +1 -1
- package/src/generators/add-fullstack/files/tools/html-plugin-template.ejs +28 -0
- package/src/generators/add-fullstack/files/tools/prettier.config.js +8 -0
- package/src/generators/add-fullstack/files/tools/rollup/rollupPluginGenerateJson.mjs +48 -0
- package/src/generators/add-fullstack/files/tools/rollup/rollupPluginModifyLibFiles.mjs +410 -0
- package/src/generators/add-fullstack/files/tools/runLint.mjs +15 -0
- package/src/generators/add-fullstack/files/tools/sortPackageJson.mjs +0 -1
- package/src/generators/add-fullstack/files/tools/update-dependencies.mjs +95 -0
- package/src/generators/add-fullstack/files/tools/update-dependency-link.mjs +138 -0
- package/src/generators/add-fullstack/files/tools/update-dependency-version.js +104 -89
- package/src/generators/add-fullstack/files/tools/updateUtils.mjs +77 -0
- package/src/generators/add-fullstack/generator.ts +83 -1
- package/src/generators/add-fullstack/schema.d.ts +1 -0
- package/src/generators/add-fullstack/schema.json +4 -0
- package/src/generators/add-moleculer/generator.ts +7 -6
- package/src/generators/add-server-package/generator.ts +7 -6
- package/lib/generators/add-backend/files/CHANGELOG.md +0 -196
- package/lib/generators/add-fullstack/files/tools/update-dependency-link.js +0 -107
- package/src/generators/add-fullstack/files/tools/update-dependency-link.js +0 -107
|
@@ -1,106 +1,121 @@
|
|
|
1
|
-
/* eslint-disable jest/require-hook */
|
|
2
|
-
/* eslint-disable no-loop-func */
|
|
3
|
-
/* eslint-disable no-undef */
|
|
4
|
-
/* eslint-disable @typescript-eslint/no-var-requires */
|
|
5
|
-
/* eslint-disable @typescript-eslint/no-floating-promises */
|
|
6
|
-
/* eslint-disable no-restricted-syntax */
|
|
7
|
-
/* eslint-disable @typescript-eslint/no-unsafe-member-access */
|
|
8
|
-
/* eslint-disable @typescript-eslint/no-unsafe-call */
|
|
9
|
-
/* eslint-disable @typescript-eslint/no-unsafe-assignment */
|
|
10
|
-
/* eslint-disable @typescript-eslint/no-shadow */
|
|
11
|
-
/* eslint-disable no-console */
|
|
12
|
-
/* eslint-disable @typescript-eslint/restrict-template-expressions */
|
|
13
|
-
/* eslint-disable consistent-return */
|
|
14
|
-
const glob = require('glob');
|
|
15
1
|
const path = require('path');
|
|
16
2
|
const fs = require('fs');
|
|
17
|
-
|
|
18
|
-
const SERVER_FOLDER = './servers';
|
|
19
3
|
const simpleGit = require('simple-git');
|
|
4
|
+
const glob = require('glob');
|
|
20
5
|
|
|
21
6
|
const git = simpleGit();
|
|
7
|
+
const monorepoRoot = path.resolve(__dirname, '..');
|
|
8
|
+
|
|
9
|
+
// matching prettier format
|
|
10
|
+
const JSON_SPACING = 4;
|
|
11
|
+
const ADD_END_NEWLINE = true; // Set to true to add a newline at the end of the file
|
|
12
|
+
|
|
13
|
+
const findPackageJsonFiles = () => {
|
|
14
|
+
return new Promise((resolve, reject) => {
|
|
15
|
+
glob(
|
|
16
|
+
`${monorepoRoot}/+(servers|portable-devices|packages|packages-modules)/**/package.json`,
|
|
17
|
+
{ onlyFiles: true, ignore: '**/node_modules/**' },
|
|
18
|
+
(err, files) => {
|
|
19
|
+
if (err) reject(`Unable to scan directory: ${err}`);
|
|
20
|
+
resolve(files);
|
|
21
|
+
},
|
|
22
|
+
);
|
|
23
|
+
});
|
|
24
|
+
};
|
|
25
|
+
|
|
26
|
+
const buildPackageMap = async () => {
|
|
27
|
+
const packageJsonFiles = await findPackageJsonFiles();
|
|
28
|
+
const packageMap = new Map();
|
|
29
|
+
|
|
30
|
+
packageJsonFiles.forEach((file) => {
|
|
31
|
+
const packageJson = JSON.parse(fs.readFileSync(file, 'utf8'));
|
|
32
|
+
if (packageJson.name) {
|
|
33
|
+
packageMap.set(packageJson.name, {
|
|
34
|
+
path: path.dirname(file),
|
|
35
|
+
version: packageJson.version,
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
return packageMap;
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
const searchAndUpdate = (dependencies, filePath, obj, packageMap) => {
|
|
44
|
+
let modified = false;
|
|
22
45
|
|
|
23
|
-
const searchAndUpdate = (dependencies, filePath, obj) => {
|
|
24
|
-
const fileWrie = filePath;
|
|
25
|
-
const packageDir = path.dirname(filePath);
|
|
26
|
-
console.log('---PACKAGE DIR', packageDir);
|
|
27
46
|
for (const key in dependencies) {
|
|
28
|
-
if (dependencies[key].
|
|
47
|
+
if (dependencies[key].startsWith('link:')) {
|
|
29
48
|
const relativeDepFolder = dependencies[key].split('link:')[1];
|
|
30
|
-
|
|
31
|
-
|
|
49
|
+
const dependencyFolder = path.join(path.dirname(filePath), relativeDepFolder);
|
|
50
|
+
|
|
32
51
|
try {
|
|
33
|
-
|
|
52
|
+
const packageJsonPath = path.join(dependencyFolder, 'package.json');
|
|
53
|
+
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
|
|
54
|
+
if (dependencies[key] !== packageJson.version) {
|
|
55
|
+
dependencies[key] = packageJson.version;
|
|
56
|
+
modified = true;
|
|
57
|
+
}
|
|
34
58
|
} catch (err) {
|
|
35
|
-
|
|
36
|
-
console.log(`--- err ${err.message}`);
|
|
37
|
-
console.log(
|
|
38
|
-
`err Search for dependency of ${filePath} with package path ${relativeDepFolder} not found`,
|
|
39
|
-
);
|
|
59
|
+
console.error(`Error updating ${key} in ${filePath}: ${err.message}`);
|
|
40
60
|
throw err;
|
|
41
61
|
}
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
throw (err);
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
});
|
|
60
|
-
});
|
|
61
|
-
});
|
|
62
|
+
} else if (packageMap.has(key)) {
|
|
63
|
+
const version = packageMap.get(key).version;
|
|
64
|
+
if (dependencies[key] !== version) {
|
|
65
|
+
dependencies[key] = version;
|
|
66
|
+
modified = true;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
if (modified) {
|
|
72
|
+
// Write the updated package.json back to disk with or without a newline at the end
|
|
73
|
+
let formattedJson = JSON.stringify(obj, null, JSON_SPACING);
|
|
74
|
+
if (ADD_END_NEWLINE) {
|
|
75
|
+
formattedJson += '\n';
|
|
62
76
|
}
|
|
77
|
+
fs.writeFileSync(filePath, formattedJson, 'utf8');
|
|
63
78
|
}
|
|
79
|
+
|
|
80
|
+
return modified;
|
|
64
81
|
};
|
|
65
82
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
}
|
|
83
|
+
const updateDependencies = async () => {
|
|
84
|
+
const packageMap = await buildPackageMap();
|
|
85
|
+
const packageJsonFiles = await findPackageJsonFiles();
|
|
86
|
+
const modifiedFiles = [];
|
|
87
|
+
|
|
88
|
+
packageJsonFiles.forEach((file) => {
|
|
89
|
+
if (!file.includes('node_modules')) {
|
|
90
|
+
try {
|
|
91
|
+
const data = fs.readFileSync(file, 'utf8');
|
|
92
|
+
const obj = JSON.parse(data);
|
|
93
|
+
const { dependencies, peerDependencies, devDependencies } = obj;
|
|
94
|
+
|
|
95
|
+
let modified = false;
|
|
96
|
+
modified = searchAndUpdate(dependencies, file, obj, packageMap) || modified;
|
|
97
|
+
modified = searchAndUpdate(peerDependencies, file, obj, packageMap) || modified;
|
|
98
|
+
modified = searchAndUpdate(devDependencies, file, obj, packageMap) || modified;
|
|
99
|
+
|
|
100
|
+
if (modified) {
|
|
101
|
+
modifiedFiles.push(file);
|
|
102
|
+
}
|
|
103
|
+
} catch (err) {
|
|
104
|
+
console.error(`Unable to read file ${file}: ${err.message}`);
|
|
86
105
|
}
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
})
|
|
104
|
-
.catch((err) => console.error(err));
|
|
105
|
-
},
|
|
106
|
-
);
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
|
|
109
|
+
if (modifiedFiles.length > 0) {
|
|
110
|
+
await git.add(modifiedFiles);
|
|
111
|
+
await git.commit('Updated packages to use correct versions and linked dependencies');
|
|
112
|
+
} else {
|
|
113
|
+
console.log('No changes detected');
|
|
114
|
+
}
|
|
115
|
+
};
|
|
116
|
+
|
|
117
|
+
updateDependencies()
|
|
118
|
+
.then(() => {
|
|
119
|
+
console.log('Dependencies updated successfully.');
|
|
120
|
+
})
|
|
121
|
+
.catch((err) => console.error(`Error in updateDependencies: ${err.message}`));
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { resolve, dirname, join } from 'path';
|
|
2
|
+
import { readFileSync, writeFileSync } from 'fs';
|
|
3
|
+
import glob from 'glob';
|
|
4
|
+
|
|
5
|
+
export const JSON_SPACING = 4;
|
|
6
|
+
export const ADD_END_NEWLINE = true; // Set to true to add a newline at the end of the file
|
|
7
|
+
|
|
8
|
+
export const monorepoRoot = resolve(dirname(import.meta.url), '..');
|
|
9
|
+
|
|
10
|
+
export const findPackageJsonFiles = () => {
|
|
11
|
+
return new Promise((resolve, reject) => {
|
|
12
|
+
glob(
|
|
13
|
+
`${monorepoRoot}/+(servers|portable-devices|packages|packages-modules)/**/package.json`,
|
|
14
|
+
{ onlyFiles: true, ignore: '**/node_modules/**' },
|
|
15
|
+
(err, files) => {
|
|
16
|
+
if (err) reject(`Unable to scan directory: ${err}`);
|
|
17
|
+
resolve(files);
|
|
18
|
+
},
|
|
19
|
+
);
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export const buildPackageMap = async () => {
|
|
24
|
+
const packageJsonFiles = await findPackageJsonFiles();
|
|
25
|
+
const packageMap = new Map();
|
|
26
|
+
|
|
27
|
+
packageJsonFiles.forEach((file) => {
|
|
28
|
+
const packageJson = JSON.parse(readFileSync(file, 'utf8'));
|
|
29
|
+
if (packageJson.name) {
|
|
30
|
+
packageMap.set(packageJson.name, {
|
|
31
|
+
path: dirname(file),
|
|
32
|
+
version: packageJson.version,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
|
|
37
|
+
return packageMap;
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
export const searchAndUpdate = (dependencies, filePath, obj, packageMap) => {
|
|
41
|
+
let modified = false;
|
|
42
|
+
|
|
43
|
+
for (const key in dependencies) {
|
|
44
|
+
if (dependencies[key].startsWith('link:')) {
|
|
45
|
+
const relativeDepFolder = dependencies[key].split('link:')[1];
|
|
46
|
+
const dependencyFolder = join(dirname(filePath), relativeDepFolder);
|
|
47
|
+
|
|
48
|
+
try {
|
|
49
|
+
const packageJsonPath = join(dependencyFolder, 'package.json');
|
|
50
|
+
const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf8'));
|
|
51
|
+
if (dependencies[key] !== packageJson.version) {
|
|
52
|
+
dependencies[key] = packageJson.version;
|
|
53
|
+
modified = true;
|
|
54
|
+
}
|
|
55
|
+
} catch (err) {
|
|
56
|
+
console.error(`Error updating ${key} in ${filePath}: ${err.message}`);
|
|
57
|
+
throw err;
|
|
58
|
+
}
|
|
59
|
+
} else if (packageMap.has(key)) {
|
|
60
|
+
const version = packageMap.get(key).version;
|
|
61
|
+
if (dependencies[key] !== version) {
|
|
62
|
+
dependencies[key] = version;
|
|
63
|
+
modified = true;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
if (modified) {
|
|
69
|
+
let formattedJson = JSON.stringify(obj, null, JSON_SPACING);
|
|
70
|
+
if (ADD_END_NEWLINE) {
|
|
71
|
+
formattedJson += '\n';
|
|
72
|
+
}
|
|
73
|
+
writeFileSync(filePath, formattedJson, 'utf8');
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
return modified;
|
|
77
|
+
};
|
|
@@ -1,7 +1,17 @@
|
|
|
1
1
|
import { addProjectConfiguration, formatFiles, generateFiles, Tree, updateJson } from '@nx/devkit';
|
|
2
2
|
import * as path from 'path';
|
|
3
|
+
import fs from 'fs';
|
|
3
4
|
import { AddFullstackGeneratorSchema } from './schema';
|
|
4
|
-
import { getValid } from '../../utils';
|
|
5
|
+
import { getValid, isValid } from '../../utils';
|
|
6
|
+
import {
|
|
7
|
+
generateBackend,
|
|
8
|
+
generateFrontend,
|
|
9
|
+
generateMoleculer,
|
|
10
|
+
generateBrowserPackage,
|
|
11
|
+
generateClientPackage,
|
|
12
|
+
generateCorePackage,
|
|
13
|
+
generateServerPackage,
|
|
14
|
+
} from '../../index';
|
|
5
15
|
|
|
6
16
|
export async function addFullstackGenerator(tree: Tree, options: AddFullstackGeneratorSchema) {
|
|
7
17
|
const projectRoot = getValid(options.name) ?? 'fullstack-pro';
|
|
@@ -17,6 +27,78 @@ export async function addFullstackGenerator(tree: Tree, options: AddFullstackGen
|
|
|
17
27
|
return packageJson;
|
|
18
28
|
});
|
|
19
29
|
await formatFiles(tree);
|
|
30
|
+
|
|
31
|
+
if (isValid(options.config)) {
|
|
32
|
+
const configPath = getValid(options.config);
|
|
33
|
+
if (fs.existsSync(configPath)) {
|
|
34
|
+
try {
|
|
35
|
+
const content = String(fs.readFileSync(configPath));
|
|
36
|
+
const configs = JSON.parse(content);
|
|
37
|
+
configs.parent = projectRoot;
|
|
38
|
+
|
|
39
|
+
await processConfigs(tree, configs);
|
|
40
|
+
} catch(error) {
|
|
41
|
+
console.error('Error while reading config.', error);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
const processConfigs = async (tree: Tree, configs: any) => {
|
|
48
|
+
if (configs.servers) {
|
|
49
|
+
await generateServers(tree, configs.parent, configs.servers);
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
if (configs.packages && configs.packages.modules) {
|
|
53
|
+
await generatePackages(tree, configs.parent, configs.packages.modules);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
const generateServers = async (tree: Tree, parent: string, servers: any) => {
|
|
58
|
+
for (const [serverName, serverConfig] of Object.entries(servers)) {
|
|
59
|
+
const configs: any = serverConfig;
|
|
60
|
+
configs.name = serverName;
|
|
61
|
+
configs.directory = `${parent}/servers`;
|
|
62
|
+
|
|
63
|
+
switch(configs?.type) {
|
|
64
|
+
case 'frontend':
|
|
65
|
+
await generateFrontend(tree, configs);
|
|
66
|
+
break;
|
|
67
|
+
case 'backend':
|
|
68
|
+
await generateBackend(tree, configs);
|
|
69
|
+
break;
|
|
70
|
+
case 'moleculer':
|
|
71
|
+
await generateMoleculer(tree, configs);
|
|
72
|
+
break;
|
|
73
|
+
default:
|
|
74
|
+
break;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
const generatePackages = async (tree: Tree, parent: string, packages: any) => {
|
|
80
|
+
for (const [packageName, packageConfig] of Object.entries(packages)) {
|
|
81
|
+
const configs: any = packageConfig;
|
|
82
|
+
configs.name = packageName;
|
|
83
|
+
configs.directory = `${parent}/packages`;
|
|
84
|
+
|
|
85
|
+
switch((packageConfig as any)?.type) {
|
|
86
|
+
case 'packages-core':
|
|
87
|
+
await generateCorePackage(tree, configs);
|
|
88
|
+
break;
|
|
89
|
+
case 'packages-browser':
|
|
90
|
+
await generateBrowserPackage(tree, configs);
|
|
91
|
+
break;
|
|
92
|
+
case 'packages-client':
|
|
93
|
+
await generateClientPackage(tree, configs);
|
|
94
|
+
break;
|
|
95
|
+
case 'packages-server':
|
|
96
|
+
await generateServerPackage(tree, configs);
|
|
97
|
+
break;
|
|
98
|
+
default:
|
|
99
|
+
break;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
20
102
|
}
|
|
21
103
|
|
|
22
104
|
export default addFullstackGenerator;
|
|
@@ -4,19 +4,20 @@ import { AddMoleculerGeneratorSchema } from './schema';
|
|
|
4
4
|
import { isValid, getValid } from '../../utils';
|
|
5
5
|
|
|
6
6
|
export async function addMoleculerGenerator(tree: Tree, options: AddMoleculerGeneratorSchema) {
|
|
7
|
+
const configs: any = {...options};
|
|
8
|
+
return await generateMoleculer(tree, configs);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const generateMoleculer = async (tree: Tree, options: any) => {
|
|
7
12
|
const projectName = getValid(options.name) ?? 'moleculer-server';
|
|
8
13
|
const projectRoot = isValid(options.directory) ? `${getValid(options.directory)}/${projectName}` : projectName;
|
|
9
|
-
|
|
10
|
-
// root: projectRoot,
|
|
11
|
-
// projectType: 'library',
|
|
12
|
-
// sourceRoot: `${projectRoot}/src`,
|
|
13
|
-
// targets: {},
|
|
14
|
-
// });
|
|
14
|
+
|
|
15
15
|
generateFiles(tree, path.join(__dirname, 'files'), projectRoot, options);
|
|
16
16
|
updateJson(tree, `${projectRoot}/package.json`, (packageJson) => {
|
|
17
17
|
packageJson['name'] = options.name;
|
|
18
18
|
return packageJson;
|
|
19
19
|
});
|
|
20
|
+
|
|
20
21
|
await formatFiles(tree);
|
|
21
22
|
}
|
|
22
23
|
|
|
@@ -4,19 +4,20 @@ import { AddServerPackageGeneratorSchema } from './schema';
|
|
|
4
4
|
import { isValid, getValid } from '../../utils';
|
|
5
5
|
|
|
6
6
|
export async function addServerPackageGenerator(tree: Tree, options: AddServerPackageGeneratorSchema) {
|
|
7
|
+
const configs: any = {...options};
|
|
8
|
+
return await generateServerPackage(tree, configs);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const generateServerPackage = async (tree: Tree, options: any) => {
|
|
7
12
|
const projectName = getValid(options.name) ?? 'server-package';
|
|
8
13
|
const projectRoot = isValid(options.directory) ? `${getValid(options.directory)}/${projectName}` : projectName;
|
|
9
|
-
|
|
10
|
-
// root: projectRoot,
|
|
11
|
-
// projectType: 'library',
|
|
12
|
-
// sourceRoot: `${projectRoot}/src`,
|
|
13
|
-
// targets: {},
|
|
14
|
-
// });
|
|
14
|
+
|
|
15
15
|
generateFiles(tree, path.join(__dirname, 'files'), projectRoot, options);
|
|
16
16
|
updateJson(tree, `${projectRoot}/package.json`, (packageJson) => {
|
|
17
17
|
packageJson['name'] = projectName;
|
|
18
18
|
return packageJson;
|
|
19
19
|
});
|
|
20
|
+
|
|
20
21
|
await formatFiles(tree);
|
|
21
22
|
}
|
|
22
23
|
|
|
@@ -1,196 +0,0 @@
|
|
|
1
|
-
# Change Log
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file.
|
|
4
|
-
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
|
-
|
|
6
|
-
## [3.1.1-alpha.5](https://github.com/cdmbase/fullstack-pro/compare/v3.1.1-alpha.4...v3.1.1-alpha.5) (2023-01-23)
|
|
7
|
-
|
|
8
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
9
|
-
|
|
10
|
-
## [3.1.1-alpha.4](https://github.com/cdmbase/fullstack-pro/compare/v3.1.1-alpha.3...v3.1.1-alpha.4) (2023-01-22)
|
|
11
|
-
|
|
12
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
13
|
-
|
|
14
|
-
## [2.0.1-alpha.13](https://github.com/cdmbase/fullstack-pro/compare/v2.0.1-alpha.12...v2.0.1-alpha.13) (2023-01-11)
|
|
15
|
-
|
|
16
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
17
|
-
|
|
18
|
-
## [2.0.1-alpha.11](https://github.com/cdmbase/fullstack-pro/compare/v2.0.1-alpha.10...v2.0.1-alpha.11) (2023-01-05)
|
|
19
|
-
|
|
20
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
21
|
-
|
|
22
|
-
## [2.0.1-alpha.7](https://github.com/cdmbase/fullstack-pro/compare/v2.0.1-alpha.6...v2.0.1-alpha.7) (2022-12-29)
|
|
23
|
-
|
|
24
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
25
|
-
|
|
26
|
-
## [2.0.1-alpha.5](https://github.com/cdmbase/fullstack-pro/compare/v2.0.1-alpha.4...v2.0.1-alpha.5) (2022-12-27)
|
|
27
|
-
|
|
28
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
29
|
-
|
|
30
|
-
## [2.0.1-alpha.3](https://github.com/cdmbase/fullstack-pro/compare/v2.0.1-alpha.2...v2.0.1-alpha.3) (2022-12-27)
|
|
31
|
-
|
|
32
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
33
|
-
|
|
34
|
-
## [2.0.1-alpha.2](https://github.com/cdmbase/fullstack-pro/compare/v2.0.1-alpha.0...v2.0.1-alpha.2) (2022-12-27)
|
|
35
|
-
|
|
36
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
37
|
-
|
|
38
|
-
## [2.0.1-alpha.0](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.201...v2.0.1-alpha.0) (2022-12-25)
|
|
39
|
-
|
|
40
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
41
|
-
|
|
42
|
-
## [1.1.3-alpha.201](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.200...v1.1.3-alpha.201) (2022-12-22)
|
|
43
|
-
|
|
44
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
45
|
-
|
|
46
|
-
## [1.1.3-alpha.198](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.197...v1.1.3-alpha.198) (2022-12-18)
|
|
47
|
-
|
|
48
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
49
|
-
|
|
50
|
-
## [1.1.3-alpha.193](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.192...v1.1.3-alpha.193) (2022-12-17)
|
|
51
|
-
|
|
52
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
53
|
-
|
|
54
|
-
## [1.1.3-alpha.191](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.190...v1.1.3-alpha.191) (2022-12-15)
|
|
55
|
-
|
|
56
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
57
|
-
|
|
58
|
-
## [1.1.3-alpha.190](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.189...v1.1.3-alpha.190) (2022-12-13)
|
|
59
|
-
|
|
60
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
61
|
-
|
|
62
|
-
## [1.1.3-alpha.188](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.187...v1.1.3-alpha.188) (2022-12-11)
|
|
63
|
-
|
|
64
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
65
|
-
|
|
66
|
-
## [1.1.3-alpha.186](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.185...v1.1.3-alpha.186) (2022-12-10)
|
|
67
|
-
|
|
68
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
69
|
-
|
|
70
|
-
## [1.1.3-alpha.185](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.184...v1.1.3-alpha.185) (2022-12-10)
|
|
71
|
-
|
|
72
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
73
|
-
|
|
74
|
-
## [1.1.3-alpha.182](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.181...v1.1.3-alpha.182) (2022-12-09)
|
|
75
|
-
|
|
76
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
77
|
-
|
|
78
|
-
## [1.1.3-alpha.181](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.180...v1.1.3-alpha.181) (2022-12-09)
|
|
79
|
-
|
|
80
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
81
|
-
|
|
82
|
-
## [1.1.3-alpha.180](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.179...v1.1.3-alpha.180) (2022-12-09)
|
|
83
|
-
|
|
84
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
85
|
-
|
|
86
|
-
## [1.1.3-alpha.179](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.178...v1.1.3-alpha.179) (2022-12-09)
|
|
87
|
-
|
|
88
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
89
|
-
|
|
90
|
-
## [1.1.3-alpha.178](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.177...v1.1.3-alpha.178) (2022-12-09)
|
|
91
|
-
|
|
92
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
93
|
-
|
|
94
|
-
## [1.1.3-alpha.177](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.176...v1.1.3-alpha.177) (2022-12-07)
|
|
95
|
-
|
|
96
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
97
|
-
|
|
98
|
-
## [1.1.3-alpha.176](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.175...v1.1.3-alpha.176) (2022-12-07)
|
|
99
|
-
|
|
100
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
101
|
-
|
|
102
|
-
## [1.1.3-alpha.175](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.174...v1.1.3-alpha.175) (2022-12-06)
|
|
103
|
-
|
|
104
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
105
|
-
|
|
106
|
-
## [1.1.3-alpha.174](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.173...v1.1.3-alpha.174) (2022-12-04)
|
|
107
|
-
|
|
108
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
109
|
-
|
|
110
|
-
## [1.1.3-alpha.173](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.172...v1.1.3-alpha.173) (2022-12-01)
|
|
111
|
-
|
|
112
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
113
|
-
|
|
114
|
-
## [1.1.3-alpha.170](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.169...v1.1.3-alpha.170) (2022-12-01)
|
|
115
|
-
|
|
116
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
117
|
-
|
|
118
|
-
## [1.1.3-alpha.169](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.168...v1.1.3-alpha.169) (2022-12-01)
|
|
119
|
-
|
|
120
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
121
|
-
|
|
122
|
-
## [1.1.3-alpha.164](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.163...v1.1.3-alpha.164) (2022-11-17)
|
|
123
|
-
|
|
124
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
125
|
-
|
|
126
|
-
## [1.1.3-alpha.162](https://github.com/cdmbase/fullstack-pro/compare/v1.1.3-alpha.161...v1.1.3-alpha.162) (2022-11-15)
|
|
127
|
-
|
|
128
|
-
**Note:** Version bump only for package adminide-stack-backend-server
|
|
129
|
-
|
|
130
|
-
## [1.1.3-alpha.161](https://github.com/cdmbase/fullstack-pro/compare/v0.0.16-3...v1.1.3-alpha.161) (2022-11-15)
|
|
131
|
-
|
|
132
|
-
### Bug Fixes
|
|
133
|
-
|
|
134
|
-
- **backend-server:** fix shield issues of reporting every error as UnAuthorised error ([c0a0605](https://github.com/cdmbase/fullstack-pro/commit/c0a0605984de37a139ada757b4ca39365e64b211))
|
|
135
|
-
- **backend-server:** sequence of stripe and template migrations ([2ce7bfd](https://github.com/cdmbase/fullstack-pro/commit/2ce7bfdc09b72b4a85780beda6c8dd7b437dd989))
|
|
136
|
-
- **billing-api:** make description unique for all rules ([f31e717](https://github.com/cdmbase/fullstack-pro/commit/f31e717f0de7ae7ae99f28d3ec087faf3a10ea70))
|
|
137
|
-
- **billing-server:** multiple small fixes ([34d4d55](https://github.com/cdmbase/fullstack-pro/commit/34d4d5575de143314d1ede0ec3afad2a44ea0e19))
|
|
138
|
-
- **billing:** stripe connect resolvers and services ([4719f00](https://github.com/cdmbase/fullstack-pro/commit/4719f00103821649e07413d3784463f13ae1a5e4))
|
|
139
|
-
- call moleculer service for stripe migrations ([96a33bb](https://github.com/cdmbase/fullstack-pro/commit/96a33bb366bb9c40cf784facf7698c2aaed3cb25)), closes [#1116](https://github.com/cdmbase/fullstack-pro/issues/1116)
|
|
140
|
-
- handled mobile authentication with and password renew ([34b2027](https://github.com/cdmbase/fullstack-pro/commit/34b2027ef977912458c107e8a435012677f796c8))
|
|
141
|
-
- header of undefined issue ([4f2a224](https://github.com/cdmbase/fullstack-pro/commit/4f2a224314023a357a3fff03ecc7f1e60d7ca777))
|
|
142
|
-
- refactored account model and populated countries using county service ([1811396](https://github.com/cdmbase/fullstack-pro/commit/1811396ba1c4b2f8500b1f5660a0a4453c677f15))
|
|
143
|
-
- resolved package.json ([802574c](https://github.com/cdmbase/fullstack-pro/commit/802574c93bd946d3bdfa45f7730e9c6a51341334))
|
|
144
|
-
- restrict mongoose version ([3f00cbe](https://github.com/cdmbase/fullstack-pro/commit/3f00cbe642655bf6aa7e2459e03bd61c9c7e7a80))
|
|
145
|
-
- **workspaces:** fix status icon on workspaces list screen, ([4cb7d5e](https://github.com/cdmbase/fullstack-pro/commit/4cb7d5efc946ff282762984802ebeb05b8b17f49))
|
|
146
|
-
|
|
147
|
-
- refactor(Added Preference Settings Component): ([7883533](https://github.com/cdmbase/fullstack-pro/commit/78835339ba1e36fce24a53a1e3fa3735d769f2a5))
|
|
148
|
-
|
|
149
|
-
### Features
|
|
150
|
-
|
|
151
|
-
- :sparkles: Role Based Configuration ([f623ad0](https://github.com/cdmbase/fullstack-pro/commit/f623ad0ab5394685ba335f44d64cc94f28f2acc7))
|
|
152
|
-
- **add lifecycle and extension:** Added setup for invoking services in the browser side resolvers ([d536d7d](https://github.com/cdmbase/fullstack-pro/commit/d536d7d757a19b011c106d7fd33290286d2f17c5))
|
|
153
|
-
- add roles and abilities for both teams and workspaces/projects ([fb3e899](https://github.com/cdmbase/fullstack-pro/commit/fb3e899abfe3bb24df697ce8abc58a5b03a0f499))
|
|
154
|
-
- **Better streamline of code and use molecuer service:** Moleculer Service and app fixes ([6555252](https://github.com/cdmbase/fullstack-pro/commit/6555252275514c7e72598e03ff0775cb5d9fa04e))
|
|
155
|
-
- **billing:** add payment profiles & stripe connect integration ([5836c0b](https://github.com/cdmbase/fullstack-pro/commit/5836c0b0d43611908d13c929f0de18be351f5e1e))
|
|
156
|
-
- **billing:** move billing module from user to organization ([c2c5abb](https://github.com/cdmbase/fullstack-pro/commit/c2c5abb80886df20cac11a5756c6fa02ce8fde27))
|
|
157
|
-
- read rules from single module ([52eb42c](https://github.com/cdmbase/fullstack-pro/commit/52eb42c2c4a058850fbac26fbae8648ac7ad80e9))
|
|
158
|
-
- **registry-api:** add api management backend ([a0f3921](https://github.com/cdmbase/fullstack-pro/commit/a0f392153b686e1bdfaae4f3823ab17085684067)), closes [#1003](https://github.com/cdmbase/fullstack-pro/issues/1003)
|
|
159
|
-
- updated common-stack version ([70a2b93](https://github.com/cdmbase/fullstack-pro/commit/70a2b939a35763ddb8fabdec59757d2c17841d39))
|
|
160
|
-
|
|
161
|
-
### Reverts
|
|
162
|
-
|
|
163
|
-
- Revert "udpate redis typefix" ([a262508](https://github.com/cdmbase/fullstack-pro/commit/a262508a6fc45236ffd14622fc23dd689698c435))
|
|
164
|
-
|
|
165
|
-
### BREAKING CHANGES
|
|
166
|
-
|
|
167
|
-
-
|
|
168
|
-
|
|
169
|
-
# Change Log
|
|
170
|
-
|
|
171
|
-
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
172
|
-
|
|
173
|
-
<a name="0.2.0"></a>
|
|
174
|
-
|
|
175
|
-
# [0.2.0](https://github.com/DxCx/webpack-apollo-server/compare/v0.1.0...v0.2.0) (2017-01-25)
|
|
176
|
-
|
|
177
|
-
### Bug Fixes
|
|
178
|
-
|
|
179
|
-
- **schema:** Fixed connector test ([cfbe262](https://github.com/DxCx/webpack-apollo-server/commit/cfbe262))
|
|
180
|
-
- **tests:** replace mocha/chai/istanbul with jest ([f8f9527](https://github.com/DxCx/webpack-apollo-server/commit/f8f9527))
|
|
181
|
-
|
|
182
|
-
### Features
|
|
183
|
-
|
|
184
|
-
- **compilers:** Removed babel ([39275e9](https://github.com/DxCx/webpack-apollo-server/commit/39275e9))
|
|
185
|
-
- **formatting:** Added editor config and applied style throughout the project. ([1aa8016](https://github.com/DxCx/webpack-apollo-server/commit/1aa8016))
|
|
186
|
-
- **schema:** Passing connectors through context ([1bd1ac7](https://github.com/DxCx/webpack-apollo-server/commit/1bd1ac7))
|
|
187
|
-
|
|
188
|
-
<a name="0.1.0"></a>
|
|
189
|
-
|
|
190
|
-
# 0.1.0 (2016-09-09)
|
|
191
|
-
|
|
192
|
-
### Features
|
|
193
|
-
|
|
194
|
-
- **graphql-tools:** changed vanilla graphql to graphql-tools ([#9](https://github.com/DxCx/webpack-apollo-server/issues/9)) ([b8435b1](https://github.com/DxCx/webpack-apollo-server/commit/b8435b1)), closes [graphql-tools/#121](https://github.com/DxCx/webpack-apollo-server/issues/121)
|
|
195
|
-
- **standard-version:** Added standard-version for auto SemVer ([e311e3e](https://github.com/DxCx/webpack-apollo-server/commit/e311e3e))
|
|
196
|
-
- **tests:** Added testing using mocha & istanbul ([#7](https://github.com/DxCx/webpack-apollo-server/issues/7)) ([0463daa](https://github.com/DxCx/webpack-apollo-server/commit/0463daa))
|